Translate E4 ****************
62 strings. **************** **************** keys.
Translate E3 ****************
74 strings. **************** domainManager,caldavPersonal}.* keys.
Translate E2 ****************
92 strings. **************** **************** keys.
翻译电子邮件模板编辑( 114 字符串)
邮件批量中最大的文件 。 模块级别 法律文本选项常数为: 运行时间翻译 。 内电子邮件Frame组件得到自己的t.
翻译 P5 (6个中标签)
96个字符串横跨了垂直区域, 约定Tab, 零售Tab, 零售客户端、销售商端、签名端端。 用途 t( ) 与 **************** **************** 键.
翻译 P3 (应用程序+磁盘) + P4
7个档案. P3 部分——恢复承诺(速率限制杀中选), 应用程序和Dashboard 以0审计命中率进行抢救. P4级完成 (服务请求、零售、产品、库存、租赁资产)。 使用 t () 与 QQ **************** * 密钥.
Translate WorkOrders + Procurement tabs
116 strings. Reused existing **************** procurementTab keys aggressively plus common.fields/actions/states.
Translate Bookings + Orders tabs
101 strings. Reused existing **************** keys plus common.* (status, dates, fields, actions).
Translate 5 essential settings managers
206 strings across DepartmentManager, JobTitleManager, LabelManager, SecurityRoleManager, SubdomainBranchesDialog. Uses t() with **************** **************...
Translate 6 security settings tabs
195 strings across APIManager, AccessBlockManager, OAuth2Manager, SuspiciousManager, SystemAccessLogsManager, SystemDebug. Uses t() with **************** access...
Translate 7 account settings components
130 strings across BranchSetupManager, DefaultRoleTemplatesSection, FeaturesManager, RelationshipManager, **************** **************** StatsManager. Uses t...
Translate 6 AI settings tabs
98 strings across AiGeneralSettings, McpServersTab, ProviderSetupTab, SalesAgentSetupTab, SecurityModelsTab, UsageOverviewTab. Uses t() with **************** us...
Translate all 4 webinar files
LeadWebinarsSection, MyWebinarsTab, WebinarScheduleWizard, settings/ WebinarSettingsTab. Uses t() with **************** scheduleWizard,settings}.* keys. Reused ...
Translate OrderWizard
42 strings. Uses t() with **************** keys. Reused common.actions/states/fields. Existing tUi placeholder hook preserved alongside new top-level t.
Translate ****************
3 files (94 strings). Extracted agreement template defaults (HTML body, sample data, type colors, helper) into a sibling .ts file so the audit no longer flags t...
Translate AddOns/Bundles/VolumeDiscounts
3 files (57 strings). Uses t() with **************** bundles,volumeDiscounts}.* keys. Reused common.actions/fields/states.
Translate MatrixCell + DashboardCards
Partial start of subscription batch — 2 small files (5 strings): MatrixCell "Unlimited" pill labels in ReadMode and NumericEditor; SubscriptionDashboardCards ti...
翻译 UI
30个文件:线索(商业卡/头条/经理);工具(ai-chat 5个文件, 计算器 6 文件, 媒体播放器, 消息 2 文件, sms 2 文件 ; 图像到svg QQ 文档 **************** 电子邮件/块(图像/列表/) 分离器/表渲染器+块Preview. 有组件的用途t()*。 按文件角色分组的密钥...
翻译 UI 字符串
27个文件 : **************** **************** 管理 sourcesDialog}; QQ **************** **************** 信件/{汇编ListView, **************** 虚拟信息列表 + **************** ***...
Translate settings features components
12 files in **************** meets: **************** settings tabs. phone: multi/AggregatedTabs **************** and multi/ProvidersTab. docs: AssocConfigPanel,...
Translate CRM settings components
11 files in **************** CustomFormManager, FieldMappingInterface, LeadAutoImportManager, LeadManualImportManager, LeadMarketManager, LeadStatusLabelManager...
Translate small components subdirs
24 files across **************** **************** hardcoded UI strings now use t() with keys grouped by directory under components.* namespace. SmsChatTab.tsx d...
Translate error/loading/not-found pages
Use t() for ERROR badge, headline, subtitle, action buttons, and support link on error.tsx; loading message on loading.tsx; random message and description array...
Translate hardcoded UI
commerce (10 files): applications, bookings, commitments, orders, procurement, requests, service, service-requests, signups, subscriptions detail pages. setting...
Defects C/D/E — title display name, toolbar layout, header lift
Defect C: Add GET proxy for /sessions/{guid}/members so ChatBox.loadMembers() can populate the SessionMember.name field. ChatTool already uses members[0].name f...
Derive and dispatch tool window title from session members
Adds onMembersChange callback to ChatBox; ChatTool derives the title (single name for 1-on-1, or '<name> (+N more)' for groups) and dispatches tool:title to upd...
Collapse toolbar, remove ChatHeader, add members intro row
- Delete ChatHeader row from embedded chat; move Add Member icon into unified toolbar - Toolbar: search input on left, VideoCall icon + PersonAdd icon + scroll-...
Lift search above tab strip, share query across Members and Chats tabs
Moves the search TextField from MemberList into NavTopPanel above the Tabs. Passes searchQuery as a prop to both MemberList and ChatsList so a single field filt...
Show upload error toast in Composer when attachments fail
Catches errors thrown by uploadAll() and renders an MUI Alert above the input row. Root cause of Defect 4 was the missing MinIO bucket (imaging-chat-attachments...
Empty Chats tab — frontend already expects {rows} paged shape (no change needed)
The ChatsList component already reads data.rows. Backend fix (shared-lib + MediaService) is the root cause: HAVING CAST(null AS TIMESTAMP) IS NULL did not work ...
丢弃冗余聊天头按钮; 将成员/聊天标签与面板设计整合
Chatheader 有自己的最小值/ 关闭图标按钮, 但聊天工具窗口 铬已经提供了这些价格——当 内嵌。 Chatheader现在只曝光了相机堆栈,标题弹出,以及 添加成员动作。 成员/聊天标签条是一个平坦的MUI标签条,带有bgcolor: "背景. 纸"通过互动打出一个不透明的白盒子 中心受霜分级板. 由透明条...
将未使用的@ ts- expect- error 丢入流取器中
`as requestInit ' 已经使类型错误沉默;指令是 在TS严格模式下冗余,并打破了生产建设.
用于查找或创建、成员、附件、成像代理、哑音、撤销的代理路径
提取共享 QQ 帮助 app/lib/mediaServiceUrls.ts 。 添加代理路由 : find- or- create, 成员, 收据, 附件( 流出), mutes, 撤销 ,
Distinguish actively-translating vs queued messages
The streaming queue was already strictly sequential (one fetch at a time), but every queued message rendered "Translating…" because they all shared the same pen...
Show error icon when a message fails to translate
When the per-message translate call returns translated:false, errors out, or times out, the chat bubble now renders a small red ErrorOutline icon in place of th...
