@courthive/i18n 0.11.0 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/locales/ar.json +171 -15
- package/dist/locales/cs.json +171 -15
- package/dist/locales/de.json +171 -15
- package/dist/locales/en.json +39 -2
- package/dist/locales/es.json +171 -15
- package/dist/locales/fr.json +171 -15
- package/dist/locales/hr.json +171 -15
- package/dist/locales/pt-BR.json +171 -15
- package/dist/locales/zh-CN.json +171 -15
- package/dist/manifest.json +37 -37
- package/package.json +2 -2
package/dist/locales/zh-CN.json
CHANGED
|
@@ -303,6 +303,30 @@
|
|
|
303
303
|
"none": "无 — 系统默认",
|
|
304
304
|
"custom": "自定义策略",
|
|
305
305
|
"attached": "已附加 — {{name}}"
|
|
306
|
+
},
|
|
307
|
+
"pipelineFeatures": {
|
|
308
|
+
"title": "流水线功能",
|
|
309
|
+
"intro": "仅用于测试。更改此锦标赛中结果在签表间的传递方式。在未登录时可用,或用于生成的(模拟)锦标赛,该锦标赛随后在此设备上本地运行。",
|
|
310
|
+
"disabled": "此锦标赛有自己的计分策略,由其决定这些选项。流水线功能已关闭。",
|
|
311
|
+
"perCall": "应用于每次录入的结果",
|
|
312
|
+
"policy": "附加到此锦标赛",
|
|
313
|
+
"progressionLocked": "此锦标赛有自己的晋级策略,由其决定这些选项。",
|
|
314
|
+
"default": "默认",
|
|
315
|
+
"on": "开",
|
|
316
|
+
"off": "关",
|
|
317
|
+
"badge": "流水线功能",
|
|
318
|
+
"badgeTitle": "此锦标赛的结果按修改后的流水线规则录入(设置 → 流水线功能)",
|
|
319
|
+
"options": {
|
|
320
|
+
"propagateExitStatus": "传递退出状态(弃权/判负跟随负者)",
|
|
321
|
+
"propagateRetirementAsExit": "将退赛视同退出处理",
|
|
322
|
+
"allowChangePropagation": "允许在后续轮次中替换已更改的胜者",
|
|
323
|
+
"disableScoreValidation": "跳过比分验证",
|
|
324
|
+
"requireParticipantsForScoring": "记分前要求双方参赛者均已确定",
|
|
325
|
+
"doubleExitPropagateBye": "双方退出时在负者的下一个位置放置轮空",
|
|
326
|
+
"autoPlaceQualifiers": "资格赛完成后自动安排晋级选手",
|
|
327
|
+
"autoReplaceQualifiers": "资格赛结果更改时自动替换晋级选手",
|
|
328
|
+
"autoRemoveQualifiers": "删除资格赛结果时自动移除晋级选手"
|
|
329
|
+
}
|
|
306
330
|
}
|
|
307
331
|
},
|
|
308
332
|
"system": {
|
|
@@ -468,7 +492,14 @@
|
|
|
468
492
|
},
|
|
469
493
|
"inviteFailed": "无法发送邀请。请重试。",
|
|
470
494
|
"manageAsProvisioner": "以此供应方身份管理",
|
|
471
|
-
"nowManagingProvisioner": "当前以“{{name}}”身份操作"
|
|
495
|
+
"nowManagingProvisioner": "当前以“{{name}}”身份操作",
|
|
496
|
+
"associateExistingUser": "关联现有用户",
|
|
497
|
+
"associateExistingUserHint": "添加已有账户的用户。只能找到您有权管理的用户。",
|
|
498
|
+
"userAssociated": "用户已关联到服务商",
|
|
499
|
+
"userAlreadyAssociated": "用户已关联;角色已更新",
|
|
500
|
+
"associateUserNotFound": "没有您可以添加的使用该邮箱的用户。请改为创建该用户。",
|
|
501
|
+
"associateEmailAmbiguous": "有多个账户使用该邮箱。必须由超级管理员处理。",
|
|
502
|
+
"lastProviderAdmin": "服务商必须保留至少一名服务商管理员"
|
|
472
503
|
},
|
|
473
504
|
"round_names": {
|
|
474
505
|
"F": "决赛",
|
|
@@ -673,7 +704,8 @@
|
|
|
673
704
|
"existing": "现有锦标赛记录",
|
|
674
705
|
"publishtime": "发布时间",
|
|
675
706
|
"replacelocal": "替换本地副本?",
|
|
676
|
-
"unpublish": "取消发布锦标赛?"
|
|
707
|
+
"unpublish": "取消发布锦标赛?",
|
|
708
|
+
"exampleClockUnavailable": "未生成示例 {{name}}:比赛时钟未提供可用的时间。请修复或移除比赛时钟(dev.setCompetitionClock)后重试。"
|
|
677
709
|
},
|
|
678
710
|
"ddlb": {
|
|
679
711
|
"singles": "单打锦标赛排名:",
|
|
@@ -1255,7 +1287,23 @@
|
|
|
1255
1287
|
"ended": "结束",
|
|
1256
1288
|
"scored": "录入比分"
|
|
1257
1289
|
},
|
|
1258
|
-
"clockUnavailable": "比赛时钟未提供可用的时间,因此未叫该比赛上场。"
|
|
1290
|
+
"clockUnavailable": "比赛时钟未提供可用的时间,因此未叫该比赛上场。",
|
|
1291
|
+
"presentation": {
|
|
1292
|
+
"layout": "布局",
|
|
1293
|
+
"layoutLabel": "排程布局",
|
|
1294
|
+
"catalogPlacement": "目录位置",
|
|
1295
|
+
"inspectorPlacement": "检查面板位置",
|
|
1296
|
+
"catalogLeft": "目录:左侧",
|
|
1297
|
+
"catalogBottom": "目录:底部",
|
|
1298
|
+
"inspectorDocked": "检查面板:停靠",
|
|
1299
|
+
"inspectorFloating": "检查面板:浮动",
|
|
1300
|
+
"previousCards": "上一组卡片",
|
|
1301
|
+
"nextCards": "下一组卡片"
|
|
1302
|
+
},
|
|
1303
|
+
"collapseAllGroups": "折叠所有分组",
|
|
1304
|
+
"expandAllGroups": "展开所有分组",
|
|
1305
|
+
"live": "实时",
|
|
1306
|
+
"liveTooltip": "实时比分 — 在录入结果前为非官方比分"
|
|
1259
1307
|
},
|
|
1260
1308
|
"penalties": {
|
|
1261
1309
|
"AUDIBLE_OBSCENITY": "言语猥亵",
|
|
@@ -1365,7 +1413,10 @@
|
|
|
1365
1413
|
"schedule2": "日程页面 2",
|
|
1366
1414
|
"options": "选项",
|
|
1367
1415
|
"officialsBoard": "官员看板",
|
|
1368
|
-
"linkedTournaments": "关联的锦标赛"
|
|
1416
|
+
"linkedTournaments": "关联的锦标赛",
|
|
1417
|
+
"themeMode": "模式",
|
|
1418
|
+
"lightPalette": "浅色模式主题",
|
|
1419
|
+
"darkPalette": "深色模式主题"
|
|
1369
1420
|
},
|
|
1370
1421
|
"editTournamentName": {
|
|
1371
1422
|
"title": "编辑锦标赛名称",
|
|
@@ -1546,7 +1597,11 @@
|
|
|
1546
1597
|
"offline": "离线",
|
|
1547
1598
|
"online": "在线",
|
|
1548
1599
|
"uploadWarning": "警告:此操作将替换服务器上的锦标赛记录",
|
|
1549
|
-
"scopedAccess": "范围权限"
|
|
1600
|
+
"scopedAccess": "范围权限",
|
|
1601
|
+
"saveConflict": "服务器上有此锦标赛的更新版本。未保存任何内容,已保留您的本地副本。加载服务器副本将替换本地副本。",
|
|
1602
|
+
"saveExists": "此锦标赛已存在于服务器上。未保存任何内容,已保留您的本地副本。",
|
|
1603
|
+
"saveUncertain": "无法确认保存已到达服务器。已保留您的本地副本;请重试。",
|
|
1604
|
+
"loadServerCopy": "加载服务器副本"
|
|
1550
1605
|
},
|
|
1551
1606
|
"inviteUser": {
|
|
1552
1607
|
"title": "邀请用户",
|
|
@@ -2143,7 +2198,8 @@
|
|
|
2143
2198
|
"providerLabel": "服务商",
|
|
2144
2199
|
"continue": "继续",
|
|
2145
2200
|
"signOut": "退出登录",
|
|
2146
|
-
"failed": "无法打开该服务商"
|
|
2201
|
+
"failed": "无法打开该服务商",
|
|
2202
|
+
"consoleIntro": "您的账户属于多个服务商。请选择您当前为之工作的服务商;之后可以切换。"
|
|
2147
2203
|
},
|
|
2148
2204
|
"exitBeforeArrival": {
|
|
2149
2205
|
"title": "弃权或判负",
|
|
@@ -2350,14 +2406,22 @@
|
|
|
2350
2406
|
"invalidStartTime": "开始时间未保存:它必须早于已记录的结束时间。",
|
|
2351
2407
|
"invalidTime": "无法记录该时间。",
|
|
2352
2408
|
"courtNotFound": "该球场已不存在。请刷新锦标赛后重试。",
|
|
2353
|
-
"notSaved": "赛程更改未保存:{{reason}}"
|
|
2409
|
+
"notSaved": "赛程更改未保存:{{reason}}",
|
|
2410
|
+
"beforePlayedSource": "未排程:它依赖于已进行的 {{matchUp}}({{when}})。如果那场比赛的时间有误,请先移动那场比赛。",
|
|
2411
|
+
"afterDependent": "未移动:已进行的比赛不能排在依赖它的 {{matchUp}}({{when}})之后。",
|
|
2412
|
+
"moreBlocking": "(另有 {{count}} 项)",
|
|
2413
|
+
"roundLabel": "第 {{roundNumber}} 轮的一场比赛"
|
|
2354
2414
|
},
|
|
2355
2415
|
"tournamentsTruncated": "显示 {{total}} 项锦标赛中的前 {{loaded}} 项。请筛选或搜索以缩小列表。",
|
|
2356
2416
|
"tournamentSearchFailed": "锦标赛搜索暂不可用。仅显示已加载的锦标赛。",
|
|
2357
2417
|
"statusOutOfScope": "此比赛不可使用该状态",
|
|
2358
2418
|
"clearRefused": "无法清除此结果:后续比赛依赖于它。请先清除那场比赛。",
|
|
2359
2419
|
"scoreDiscardedByFormat": "将赛制更改为 {{matchUpFormat}} 后丢弃了 {{count}} 盘:{{sets}}",
|
|
2360
|
-
"offlineChangeRejected": "离线期间所做的更改被服务器拒绝"
|
|
2420
|
+
"offlineChangeRejected": "离线期间所做的更改被服务器拒绝",
|
|
2421
|
+
"scoreRefused": "此比赛目前无法记分或更正:签表未对其提供记分。",
|
|
2422
|
+
"durableChangeNeedsReview": "之前的更改需要审核。请先刷新锦标赛再继续。",
|
|
2423
|
+
"durableCommandNotStored": "无法为此会话存储持久命令",
|
|
2424
|
+
"durableQueueFailed": "无法将更改持久地加入队列;请保持此页面打开"
|
|
2361
2425
|
},
|
|
2362
2426
|
"loginMenu": {
|
|
2363
2427
|
"authorization": "授权",
|
|
@@ -3055,7 +3119,14 @@
|
|
|
3055
3119
|
"md": "中(16px)",
|
|
3056
3120
|
"lg": "大(18px)",
|
|
3057
3121
|
"xl": "超大(20px)"
|
|
3058
|
-
}
|
|
3122
|
+
},
|
|
3123
|
+
"select": "主题",
|
|
3124
|
+
"mode": "模式",
|
|
3125
|
+
"light": "浅色",
|
|
3126
|
+
"dark": "深色",
|
|
3127
|
+
"system": "跟随系统",
|
|
3128
|
+
"lightPalette": "浅色模式主题",
|
|
3129
|
+
"darkPalette": "深色模式主题"
|
|
3059
3130
|
},
|
|
3060
3131
|
"language": {
|
|
3061
3132
|
"select": "选择语言"
|
|
@@ -3677,13 +3748,19 @@
|
|
|
3677
3748
|
"tooltip": {
|
|
3678
3749
|
"liveTracker": "通过实时跟踪器上报比分",
|
|
3679
3750
|
"unconfirmed": "未确认的委托比分 — 确认后即为官方比分",
|
|
3680
|
-
"unconfirmedAria": "未确认的委托比分,等待确认"
|
|
3751
|
+
"unconfirmedAria": "未确认的委托比分,等待确认",
|
|
3752
|
+
"liveScore": "来自跟踪器的实时比分 — 在录入结果前为非官方比分",
|
|
3753
|
+
"crowdSessions_one": "本场比赛有 {{count}} 名众包记分员 — 点击查看",
|
|
3754
|
+
"crowdSessions_other": "本场比赛有 {{count}} 名众包记分员 — 点击查看",
|
|
3755
|
+
"crowdTrusted_one": "{{count}} 名众包记分员,已提升 — 其比分正在实时显示。点击查看",
|
|
3756
|
+
"crowdTrusted_other": "{{count}} 名众包记分员,其中一名已提升 — 其比分正在实时显示。点击查看"
|
|
3681
3757
|
},
|
|
3682
3758
|
"accept": "接受",
|
|
3683
3759
|
"nominateScorekeeper": "提名记分员",
|
|
3684
3760
|
"removeScorekeeper": "移除已提名的记分员",
|
|
3685
3761
|
"approveScorekeeper": "批准为记分员",
|
|
3686
|
-
"removeScorekeeperApproval": "撤销记分员批准"
|
|
3762
|
+
"removeScorekeeperApproval": "撤销记分员批准",
|
|
3763
|
+
"live": "实时"
|
|
3687
3764
|
},
|
|
3688
3765
|
"providerSetup": {
|
|
3689
3766
|
"wizardTitle": "设置您的服务商",
|
|
@@ -4285,7 +4362,13 @@
|
|
|
4285
4362
|
"saved": "配置已保存。",
|
|
4286
4363
|
"noRounds": "当日计划中没有轮次。请先将轮次从目录拖入场馆泳道。",
|
|
4287
4364
|
"failed": "排程失败。详情请查看控制台。",
|
|
4288
|
-
"gridFailed": "网格排程失败。"
|
|
4365
|
+
"gridFailed": "网格排程失败。",
|
|
4366
|
+
"repairTitle": "排程配置需要修复",
|
|
4367
|
+
"repairIntro": "排程配置中有 {{count}} 个轮次的场馆、项目或签表已不存在。未排程任何比赛。是否修复配置(移除这些轮次)并重新应用?",
|
|
4368
|
+
"repair": "修复配置",
|
|
4369
|
+
"repaired": "配置已修复。请重新应用以进行排程。",
|
|
4370
|
+
"repairFailed": "配置修复失败。",
|
|
4371
|
+
"planGuardRefused": "未排程任何比赛:该方案将 {{count}} 场比赛安排在已进行的比赛之前。请报告此问题。"
|
|
4289
4372
|
},
|
|
4290
4373
|
"topology": {
|
|
4291
4374
|
"clearCanvas": "清空画布",
|
|
@@ -4398,7 +4481,12 @@
|
|
|
4398
4481
|
"tournamentChat": "锦标赛聊天",
|
|
4399
4482
|
"noRecentActivity": "近期没有聊天活动。",
|
|
4400
4483
|
"monitorTitle": "聊天监控 — 所有锦标赛",
|
|
4401
|
-
"selectGroup": "选择一个分组标签以在该锦标赛中回复"
|
|
4484
|
+
"selectGroup": "选择一个分组标签以在该锦标赛中回复",
|
|
4485
|
+
"sending": "发送中",
|
|
4486
|
+
"delivered": "已送达",
|
|
4487
|
+
"notDelivered": "未送达",
|
|
4488
|
+
"retry": "重试",
|
|
4489
|
+
"clickToRetry": "点击重新发送。"
|
|
4402
4490
|
},
|
|
4403
4491
|
"drawActions": {
|
|
4404
4492
|
"pagePlayoff": "Page 附加赛",
|
|
@@ -4563,7 +4651,11 @@
|
|
|
4563
4651
|
"scheduleResults": {
|
|
4564
4652
|
"title": "排程结果",
|
|
4565
4653
|
"noActivity": "该日期没有排程器活动。",
|
|
4566
|
-
"noPerDate": "排程器已完成,但未报告按日期的活动。"
|
|
4654
|
+
"noPerDate": "排程器已完成,但未报告按日期的活动。",
|
|
4655
|
+
"noFormat": "无赛制",
|
|
4656
|
+
"playedOrder": "已推迟 — 按实际比赛顺序",
|
|
4657
|
+
"playedOrderDetail": "{{matchUp}} 已于 {{when}} 进行",
|
|
4658
|
+
"dailyLimitWarnings": "超出每日上限的安排"
|
|
4567
4659
|
},
|
|
4568
4660
|
"schedulingTab": {
|
|
4569
4661
|
"availability": "可用性",
|
|
@@ -4611,7 +4703,9 @@
|
|
|
4611
4703
|
"modify": "要修改吗?",
|
|
4612
4704
|
"impersonate": "以其他用户身份操作?",
|
|
4613
4705
|
"rejected": "服务器拒绝了此次更改",
|
|
4614
|
-
"sessionExpired": "会话已过期"
|
|
4706
|
+
"sessionExpired": "会话已过期",
|
|
4707
|
+
"tournamentChangedBeforeApply": "在应用更改之前锦标赛已发生变化",
|
|
4708
|
+
"tournamentChangedAwaitingAck": "等待确认期间锦标赛已发生变化"
|
|
4615
4709
|
},
|
|
4616
4710
|
"queueService": {
|
|
4617
4711
|
"saved": "已保存"
|
|
@@ -4677,5 +4771,67 @@
|
|
|
4677
4771
|
"standings": "个人排名",
|
|
4678
4772
|
"unresolved": "未结算的结果:{{count}}"
|
|
4679
4773
|
}
|
|
4774
|
+
},
|
|
4775
|
+
"demoClock": {
|
|
4776
|
+
"title": "演示时钟",
|
|
4777
|
+
"launch": "打开演示时钟",
|
|
4778
|
+
"cannotStart": "演示时钟无法启动:此锦标赛需要开始日期和场馆时区。",
|
|
4779
|
+
"launchHint": "加载一个全新的 Scheduling Lab,包含 Garman、Pro 及组合演练和演示时钟。时钟仅在 Scheduling Lab 中运行:只要有一个处于打开状态,“打开演示时钟”即可将时钟调回。仅在未登录时可用。",
|
|
4780
|
+
"collapse": "隐藏控件",
|
|
4781
|
+
"expand": "时钟控件",
|
|
4782
|
+
"exit": "退出时钟",
|
|
4783
|
+
"time": "演示时间",
|
|
4784
|
+
"date": "演示日期",
|
|
4785
|
+
"setTime": "演示实际时间",
|
|
4786
|
+
"set": "设置时间",
|
|
4787
|
+
"paused": "已暂停",
|
|
4788
|
+
"step": "+{{minutes}} 分钟",
|
|
4789
|
+
"forwardOnly": "请选择不早于当前演示时间的有效时间。叫上场和比赛结果无法回退。",
|
|
4790
|
+
"boundary": "下一个:{{kind}} · {{time}}",
|
|
4791
|
+
"noBoundary": "没有即将到来的时间节点",
|
|
4792
|
+
"boundaries": {
|
|
4793
|
+
"scheduled": "计划开始",
|
|
4794
|
+
"blockStart": "球场时段开始",
|
|
4795
|
+
"blockEnd": "球场时段结束"
|
|
4796
|
+
},
|
|
4797
|
+
"openDay": "打开当天",
|
|
4798
|
+
"garman": "应用 Garman 时间",
|
|
4799
|
+
"pro": "应用 Pro 网格",
|
|
4800
|
+
"saveFirst": "运行排程器前,请保存或放弃排程编辑。",
|
|
4801
|
+
"notOpened": "排程演示已保存但未打开。请从锦标赛列表中打开。",
|
|
4802
|
+
"failed": "排程失败。请检查赛程后重试。",
|
|
4803
|
+
"applied": "已应用排程器。请在网格中查看当天以比较结果。",
|
|
4804
|
+
"hint": "时间已暂停。使用常规锦标赛控件开始比赛、记分并结束比赛。打开之后的某一天会推进到 09:55;可以查看之前的日期而无需回退历史。退出后恢复真实时间。",
|
|
4805
|
+
"days": {
|
|
4806
|
+
"day1": {
|
|
4807
|
+
"title": "第 1 天 · Garman",
|
|
4808
|
+
"description": "将时间应用到单打。查看基于策略的开始时间、恢复间隔和球场可用性。"
|
|
4809
|
+
},
|
|
4810
|
+
"day2": {
|
|
4811
|
+
"title": "第 2 天 · Pro",
|
|
4812
|
+
"description": "将网格应用到双打。查看没有计划时间的球场顺序。使用常规网格控件添加“不早于”和“接下来”标注。"
|
|
4813
|
+
},
|
|
4814
|
+
"day3": {
|
|
4815
|
+
"title": "第 3 天 · 组合",
|
|
4816
|
+
"description": "先应用 Garman 时间,再将 Pro 网格应用到相同的单打和双打签表。确认在添加球场位置时时间保持不变。"
|
|
4817
|
+
}
|
|
4818
|
+
},
|
|
4819
|
+
"shortLabel": "演示时间",
|
|
4820
|
+
"bottomBar": "演示时钟底部栏",
|
|
4821
|
+
"mode": "演示模式",
|
|
4822
|
+
"modes": {
|
|
4823
|
+
"clock": "自由时钟",
|
|
4824
|
+
"script": "引导式排程演示"
|
|
4825
|
+
},
|
|
4826
|
+
"loadScript": "加载引导式排程演示",
|
|
4827
|
+
"loadFailed": "无法加载排程演示。请重试。",
|
|
4828
|
+
"freeHint": "时间已暂停。使用常规控件浏览此锦标赛,向前推进时间,并可选择录制您的操作。退出后恢复真实时间。",
|
|
4829
|
+
"startCapture": "开始录制",
|
|
4830
|
+
"stopCapture": "停止录制",
|
|
4831
|
+
"exportCapture": "导出录制",
|
|
4832
|
+
"capturing": "录制中 · {{count}} 个步骤",
|
|
4833
|
+
"captureReady": "录制就绪 · {{count}} 个步骤",
|
|
4834
|
+
"captureLimit": "录制已在捕获上限处停止。请导出已录制的步骤。",
|
|
4835
|
+
"captureFailed": "无法开始录制。请检查演示时钟控制是否处于活动状态。"
|
|
4680
4836
|
}
|
|
4681
4837
|
}
|
package/dist/manifest.json
CHANGED
|
@@ -1,44 +1,44 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "@courthive/i18n@0.
|
|
3
|
-
"generatedAt": "2026-10-
|
|
2
|
+
"version": "@courthive/i18n@0.12.0",
|
|
3
|
+
"generatedAt": "2026-10-26T23:44:54.668Z",
|
|
4
4
|
"locales": [
|
|
5
5
|
{
|
|
6
6
|
"code": "ar",
|
|
7
7
|
"label": "Arabic",
|
|
8
8
|
"nativeLabel": "العربية",
|
|
9
|
-
"version": "sha256-
|
|
10
|
-
"size":
|
|
11
|
-
"keyCount":
|
|
12
|
-
"completeness": 0.
|
|
9
|
+
"version": "sha256-bebf9647d162315b419c645fc22d3b27727d922ed397eb5650448eb576fec760",
|
|
10
|
+
"size": 251942,
|
|
11
|
+
"keyCount": 4268,
|
|
12
|
+
"completeness": 0.9592314901593252,
|
|
13
13
|
"rtl": true
|
|
14
14
|
},
|
|
15
15
|
{
|
|
16
16
|
"code": "cs",
|
|
17
17
|
"label": "Czech",
|
|
18
18
|
"nativeLabel": "Čeština",
|
|
19
|
-
"version": "sha256-
|
|
20
|
-
"size":
|
|
21
|
-
"keyCount":
|
|
22
|
-
"completeness": 0.
|
|
19
|
+
"version": "sha256-29e750dcc9a9fa93e3e8a3bc054995db02dc698f2f1012c5f524d4a502271573",
|
|
20
|
+
"size": 209269,
|
|
21
|
+
"keyCount": 4198,
|
|
22
|
+
"completeness": 0.9752262982372558,
|
|
23
23
|
"rtl": false
|
|
24
24
|
},
|
|
25
25
|
{
|
|
26
26
|
"code": "de",
|
|
27
27
|
"label": "German",
|
|
28
28
|
"nativeLabel": "Deutsch",
|
|
29
|
-
"version": "sha256-
|
|
30
|
-
"size":
|
|
31
|
-
"keyCount":
|
|
32
|
-
"completeness": 0.
|
|
29
|
+
"version": "sha256-edb01f918390ea56d2b4b0eb06b06a22b7b49292a5fc4c5dce7feca6cfea11cc",
|
|
30
|
+
"size": 213647,
|
|
31
|
+
"keyCount": 4128,
|
|
32
|
+
"completeness": 0.9917635658914729,
|
|
33
33
|
"rtl": false
|
|
34
34
|
},
|
|
35
35
|
{
|
|
36
36
|
"code": "en",
|
|
37
37
|
"label": "English",
|
|
38
38
|
"nativeLabel": "English",
|
|
39
|
-
"version": "sha256-
|
|
40
|
-
"size":
|
|
41
|
-
"keyCount":
|
|
39
|
+
"version": "sha256-3132e1887cae02d55ec46f3ae1ad2dad21abca96d4af60b815caad4e0d9f0cfb",
|
|
40
|
+
"size": 194754,
|
|
41
|
+
"keyCount": 4128,
|
|
42
42
|
"completeness": 1,
|
|
43
43
|
"rtl": false
|
|
44
44
|
},
|
|
@@ -46,50 +46,50 @@
|
|
|
46
46
|
"code": "es",
|
|
47
47
|
"label": "Spanish",
|
|
48
48
|
"nativeLabel": "Español",
|
|
49
|
-
"version": "sha256-
|
|
50
|
-
"size":
|
|
51
|
-
"keyCount":
|
|
52
|
-
"completeness": 0.
|
|
49
|
+
"version": "sha256-9284edc5233991f2b6e7de0433658d47e942d845ad6e24676f828d73e17b04b5",
|
|
50
|
+
"size": 213695,
|
|
51
|
+
"keyCount": 4163,
|
|
52
|
+
"completeness": 0.9834254143646409,
|
|
53
53
|
"rtl": false
|
|
54
54
|
},
|
|
55
55
|
{
|
|
56
56
|
"code": "fr",
|
|
57
57
|
"label": "French",
|
|
58
58
|
"nativeLabel": "Français",
|
|
59
|
-
"version": "sha256-
|
|
60
|
-
"size":
|
|
61
|
-
"keyCount":
|
|
62
|
-
"completeness": 0.
|
|
59
|
+
"version": "sha256-0c90409a9bb757988a0c2fcca22e975ba2395c6e87542ef041c3c84f2ed73930",
|
|
60
|
+
"size": 219789,
|
|
61
|
+
"keyCount": 4163,
|
|
62
|
+
"completeness": 0.9834254143646409,
|
|
63
63
|
"rtl": false
|
|
64
64
|
},
|
|
65
65
|
{
|
|
66
66
|
"code": "hr",
|
|
67
67
|
"label": "Croatian",
|
|
68
68
|
"nativeLabel": "Hrvatski",
|
|
69
|
-
"version": "sha256-
|
|
70
|
-
"size":
|
|
71
|
-
"keyCount":
|
|
72
|
-
"completeness": 0.
|
|
69
|
+
"version": "sha256-b5d0f9c0c283fab0ae365cf2d7a599a692ee64b53dc8397e59d38bf8dd9f9491",
|
|
70
|
+
"size": 205175,
|
|
71
|
+
"keyCount": 4163,
|
|
72
|
+
"completeness": 0.9834254143646409,
|
|
73
73
|
"rtl": false
|
|
74
74
|
},
|
|
75
75
|
{
|
|
76
76
|
"code": "pt-BR",
|
|
77
77
|
"label": "Portuguese (Brazil)",
|
|
78
78
|
"nativeLabel": "Português (Brasil)",
|
|
79
|
-
"version": "sha256-
|
|
80
|
-
"size":
|
|
81
|
-
"keyCount":
|
|
82
|
-
"completeness": 0.
|
|
79
|
+
"version": "sha256-05121411d61d5fe5e8d6665599baa4ae98d78075a7118f35acbc48fa9b8fe30d",
|
|
80
|
+
"size": 212209,
|
|
81
|
+
"keyCount": 4163,
|
|
82
|
+
"completeness": 0.9834254143646409,
|
|
83
83
|
"rtl": false
|
|
84
84
|
},
|
|
85
85
|
{
|
|
86
86
|
"code": "zh-CN",
|
|
87
87
|
"label": "Chinese (Simplified)",
|
|
88
88
|
"nativeLabel": "简体中文",
|
|
89
|
-
"version": "sha256-
|
|
90
|
-
"size":
|
|
91
|
-
"keyCount":
|
|
92
|
-
"completeness": 0.
|
|
89
|
+
"version": "sha256-b65b4438422da9ac233d23ed754195c55c5cd7b915db193b6a272e548e264ef1",
|
|
90
|
+
"size": 189855,
|
|
91
|
+
"keyCount": 4128,
|
|
92
|
+
"completeness": 0.9917635658914729,
|
|
93
93
|
"rtl": false
|
|
94
94
|
}
|
|
95
95
|
]
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@courthive/i18n",
|
|
3
3
|
"packageManager": "pnpm@12.14.0",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.12.0",
|
|
5
5
|
"description": "Translation locales for the CourtHive ecosystem. Source-of-truth bundle served at runtime by competition-factory-server to TMX clients.",
|
|
6
6
|
"author": "Charles Allen <charles@CourtHive.com> (CourtHive.com)",
|
|
7
7
|
"license": "MIT",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"lint": "eslint . --max-warnings 0",
|
|
43
43
|
"lint:fix": "eslint . --fix",
|
|
44
44
|
"format": "prettier --write \"src/**/*.{ts,json}\"",
|
|
45
|
-
"test": "node scripts/compare-keys.cjs && echo 'OK'",
|
|
45
|
+
"test": "node scripts/compare-keys.cjs && node scripts/check-placeholders.cjs && echo 'OK'",
|
|
46
46
|
"todo-report": "node scripts/todo-report.cjs",
|
|
47
47
|
"commitlint": "commitlint --edit",
|
|
48
48
|
"prepare": "husky && node scripts/install-husky-hooks.cjs",
|