mirror of
https://github.com/chillpadclub/bedolaga-cabinet.git
synced 2026-07-30 02:23:47 +00:00
clarify(locales): sweep em-dashes from copy across 4 locales
Audit P1: 40 em-dash hits in src/locales/. Impeccable rule:
'No em dashes. Use commas, colons, semicolons, periods, or
parentheses.' Sentence-level em-dashes obscure structure;
explicit punctuation parses faster.
30 em-dashes replaced across en/ru/zh/fa:
• 'X — Y' joining a clause → 'X, Y'
• 'X — Y' introducing value/detail → 'X: Y' ('X:Y' in zh)
• 'X — Y' sentence-ending fragment → 'X. Y' ('X。Y' in zh)
Affected keys (same in all 4 locales unless noted):
telegramReopenHint (ru only)
freeDesc
searchResults
openUrlDirectHint
deleteSuccessWithSubscriptions
promoGroupsHint
activePaidWarning (ru only)
errors.title
activateSuccessDesc
noBonusDescription (en, zh, fa — no ru key)
campaignRegistrations (en, zh, fa)
10 em-dashes kept intentionally (not copy violations):
• noTariff: '—' (4 locales) — IS the value
placeholder, not text
• previewEmpty: '— empty —' (ru + en) — decorative
brackets framing 'empty'
• statusLegend: '✅ — X • ➕ — Y …' (4 locales) — legend
convention, icon→label
separator; switching to ':'
would need a wider rework
of the visual rhythm
All 4 JSON files parse cleanly; TSC/lint/build green.
This commit is contained in:
@@ -1286,7 +1286,7 @@
|
||||
"methodEnabled": "方法已启用",
|
||||
"providerNotConfigured": "提供商未在env中配置",
|
||||
"openUrlDirect": "直接打开支付页面",
|
||||
"openUrlDirectHint": "跳过链接面板 — 点击后提供商在 MiniApp/标签页内直接打开。支付完成后用户返回 /balance/top-up/result。Stars/CryptoBot 和其他 t.me/ 链接忽略此标志。",
|
||||
"openUrlDirectHint": "跳过链接面板:点击后提供商在 MiniApp/标签页内直接打开。支付完成后用户返回 /balance/top-up/result。Stars/CryptoBot 和其他 t.me/ 链接忽略此标志。",
|
||||
"displayName": "显示名称",
|
||||
"displayNameHint": "留空以使用默认名称",
|
||||
"subOptions": "支付选项",
|
||||
@@ -1338,7 +1338,7 @@
|
||||
"description": "搜索和管理支付",
|
||||
"searchPlaceholder": "搜索:发票、TG ID、@用户名、邮箱...",
|
||||
"searchHint": "示例:SP-78291、@username、123456789、user@mail.ru",
|
||||
"searchResults": "搜索结果:{{query}} — 找到 {{count}} 条",
|
||||
"searchResults": "搜索结果:{{query}}。找到 {{count}} 条",
|
||||
"resetSearch": "重置",
|
||||
"statusAll": "全部",
|
||||
"statusPending": "待处理",
|
||||
@@ -1955,7 +1955,7 @@
|
||||
"confirmDeleteText": "此操作不可撤销。套餐将被永久删除。",
|
||||
"confirmDeleteWithSubscriptions": "此套餐有 {{count}} 个活跃订阅。删除后,用户续订时需要选择新套餐。",
|
||||
"deleteSuccess": "套餐删除成功",
|
||||
"deleteSuccessWithSubscriptions": "套餐已删除。{{count}} 个订阅已重置 — 用户续订时将选择新套餐。",
|
||||
"deleteSuccessWithSubscriptions": "套餐已删除。{{count}} 个订阅已重置。用户续订时将选择新套餐。",
|
||||
"saveOrder": "保存排序",
|
||||
"orderSaved": "排序已保存",
|
||||
"dragToReorder": "拖动以重新排序",
|
||||
@@ -2162,7 +2162,7 @@
|
||||
"notSelected": "未选择",
|
||||
"tariffOption": "{{traffic}} GB,{{devices}} 台设备",
|
||||
"durationDays": "时长(天)",
|
||||
"noBonusDescription": "无奖励活动——仅用于跟踪点击和注册。",
|
||||
"noBonusDescription": "无奖励活动:仅用于跟踪点击和注册。",
|
||||
"active": "启用",
|
||||
"cancel": "取消",
|
||||
"save": "保存",
|
||||
@@ -2210,7 +2210,7 @@
|
||||
},
|
||||
"users": {
|
||||
"title": "活动用户",
|
||||
"campaignRegistrations": "{{name}} — {{count}} 次注册",
|
||||
"campaignRegistrations": "{{name}}:{{count}} 次注册",
|
||||
"noUsers": "没有注册用户",
|
||||
"user": "用户",
|
||||
"bonus": "奖励",
|
||||
@@ -3632,7 +3632,7 @@
|
||||
"summaryErrors": "{{count}} 错误"
|
||||
},
|
||||
"errors": {
|
||||
"title": "{{count}} 个错误 — 显示详情"
|
||||
"title": "{{count}} 个错误。显示详情"
|
||||
},
|
||||
"filters": {
|
||||
"search": "按ID、用户名、邮箱搜索",
|
||||
|
||||
Reference in New Issue
Block a user