@dsh-workbench/shared 0.3.10 → 0.3.11
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/api/dsh-client.d.ts +1 -0
- package/dist/api/dsh.d.ts +18 -0
- package/dist/api/host-write.d.ts +0 -15
- package/dist/api/host-write.js +1 -35
- package/dist/api/unit-board.d.ts +0 -21
- package/dist/api/unit-board.js +1 -45
- package/dist/components/icons.d.ts +0 -6
- package/dist/components/icons.js +0 -12
- package/dist/config/storage.d.ts +0 -4
- package/dist/config/storage.js +0 -11
- package/dist/host/browser-find.js +1 -1
- package/dist/host/browser-read.js +5 -5
- package/dist/host/tool-approval.d.ts +12 -0
- package/dist/host/tool-approval.js +4 -0
- package/dist/i18n/en.js +39 -19
- package/dist/i18n/index.d.ts +40 -20
- package/dist/i18n/zh.d.ts +39 -19
- package/dist/i18n/zh.js +39 -19
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/lib/blocker-action.d.ts +0 -15
- package/dist/lib/blocker-action.js +1 -25
- package/dist/lib/react-types.d.ts +5 -0
- package/dist/lib/react-types.js +1 -0
- package/dist/lib/react.d.ts +14 -13
- package/dist/lib/react.js +11 -11
- package/package.json +1 -1
- package/src/api/dsh-client.ts +4 -1
- package/src/api/dsh.ts +16 -0
- package/src/api/host-write.ts +0 -42
- package/src/api/unit-board.ts +0 -45
- package/src/components/icons.tsx +0 -16
- package/src/config/storage.test.ts +1 -25
- package/src/config/storage.ts +0 -12
- package/src/host/__tests__/browser-find.test.ts +1 -1
- package/src/host/__tests__/browser-read.test.ts +1 -1
- package/src/host/browser-find.ts +1 -1
- package/src/host/browser-read.ts +5 -5
- package/src/host/tool-approval.ts +17 -0
- package/src/i18n/en.ts +41 -19
- package/src/i18n/zh.ts +41 -19
- package/src/index.ts +1 -1
- package/src/lib/blocker-action.ts +0 -27
- package/src/lib/react-types.ts +5 -0
- package/src/lib/react.ts +14 -13
- package/src/api/__tests__/host-write.test.ts +0 -75
- package/src/api/__tests__/unit-board.test.ts +0 -76
- package/src/lib/blocker-action.test.ts +0 -40
package/dist/i18n/index.d.ts
CHANGED
|
@@ -89,7 +89,7 @@ export declare const dictionaries: {
|
|
|
89
89
|
readonly 'panels.buildModule': "造一个模块";
|
|
90
90
|
readonly 'panels.failed': "改配置失败了,再试一次。";
|
|
91
91
|
readonly 'panels.dragHint': "拖动调整顺序";
|
|
92
|
-
readonly 'panels.unknownStep': "
|
|
92
|
+
readonly 'panels.unknownStep': "这一块还没有面板";
|
|
93
93
|
readonly 'panels.labelWithHint': "{label}({hint})";
|
|
94
94
|
readonly 'panels.hintJoin': ";";
|
|
95
95
|
readonly 'panels.dep.failed': "⚠ 起不来";
|
|
@@ -124,6 +124,14 @@ export declare const dictionaries: {
|
|
|
124
124
|
readonly 'panels.market.install': "安装";
|
|
125
125
|
readonly 'panels.market.update': "更新";
|
|
126
126
|
readonly 'panels.market.swapSlow': "还没换上:可能网慢或没装上。再点一次「更新」;一直这样就把 dsh 重启一遍。";
|
|
127
|
+
readonly 'panels.market.updateNoChange': "没换成:点下去是 {from},跑完盘上还是这一版;源上最新是 {latest}。";
|
|
128
|
+
readonly 'panels.market.updateUnknownVersion': "(问不到)";
|
|
129
|
+
readonly 'panels.market.updateGone': "没换成:更新跑完盘上读不到这个模块。";
|
|
130
|
+
readonly 'panels.market.updateRestored': "没换成:盘上已经读不到新版本,已把 {version} 装回去。";
|
|
131
|
+
readonly 'panels.market.updateBehind': "装上了 {installed},但源上最新是 {latest} —— 没更到最新,可以再点一次。";
|
|
132
|
+
readonly 'panels.market.selfUpdateFailed': "自更新没成:{reason}";
|
|
133
|
+
readonly 'panels.market.selfUpdateUnknown': "外部进程没留下原因(看 ~/.dsh/workbench/self-update.log)";
|
|
134
|
+
readonly 'panels.market.selfUpdateRolledBack': "没换成,已回滚到 {version}。";
|
|
127
135
|
readonly 'panels.market.uninstall': "卸载";
|
|
128
136
|
readonly 'panels.market.uninstallLabel': "卸载 {name}";
|
|
129
137
|
readonly 'panels.market.installing': "正在安装…";
|
|
@@ -154,7 +162,7 @@ export declare const dictionaries: {
|
|
|
154
162
|
readonly 'panels.market.pluginKeptUnsure': "文件先留着:这台机器上还有模块看不出用了什么,说不准谁在用它。";
|
|
155
163
|
readonly 'panels.market.pluginKeptHeld': "文件留着:你自己装的那一份,模块放手不动它。";
|
|
156
164
|
readonly 'panels.market.pluginKeptUnnamed': "文件先留着:看不出这是哪个插件,说不准谁在用它。";
|
|
157
|
-
readonly 'panels.market.pluginBroken': "
|
|
165
|
+
readonly 'panels.market.pluginBroken': "这份插件装坏了:认不出它是什么。可以先卸载,再让 agent 按包名重装一次。";
|
|
158
166
|
readonly 'panels.market.restartNeeded': "新版装好了,重启一次才生效。";
|
|
159
167
|
readonly 'panels.market.foot': "装好后到那个项目的面板页勾选它,模块才会出现。";
|
|
160
168
|
readonly 'panels.market.recheck': "重新检查更新";
|
|
@@ -199,7 +207,7 @@ export declare const dictionaries: {
|
|
|
199
207
|
readonly 'panels.market.add.cancelledTitle': "已取消";
|
|
200
208
|
readonly 'panels.market.add.failureNetworkHost': "无法连接 {host}。Git 地址和 .tgz 直链不经过安装源,需要本机能直接访问它或配置代理;如果这个模块也发布到了 npm,请改填包名。";
|
|
201
209
|
readonly 'panels.market.add.problemInvalid': "无法识别这个包名或地址:{reason}";
|
|
202
|
-
readonly 'panels.market.add.problemInstalled': "
|
|
210
|
+
readonly 'panels.market.add.problemInstalled': "这个模块已经装过了(要换版本请带上 @版本)";
|
|
203
211
|
readonly 'panels.market.add.problemNotFound': "未找到相关模块";
|
|
204
212
|
readonly 'panels.market.add.problemNotPackage': "该路径不存在或不是有效的模块包";
|
|
205
213
|
readonly 'panels.market.add.problemNotBundle': "这个包装不进这里:{reason}。这个入口按包名认工作台模块和 opencli 插件,两种都能装;但 git 地址和 tarball 判断不出它是什么 —— 要是它其实是这两样之一,请改填包名或本地目录。";
|
|
@@ -220,7 +228,7 @@ export declare const dictionaries: {
|
|
|
220
228
|
readonly 'panels.market.add.failureIntegrity': "下载的安装包校验失败";
|
|
221
229
|
readonly 'panels.market.add.failureTimeout': "安装超时";
|
|
222
230
|
readonly 'panels.market.add.failurePnpmMissing': "没有找到 pnpm,无法安装";
|
|
223
|
-
readonly 'panels.market.add.failureInstalled': "
|
|
231
|
+
readonly 'panels.market.add.failureInstalled': "它已经装在这份工作台里了。同一个包不能就地覆盖,得先卸载再装;这次卸载也没成功。";
|
|
224
232
|
readonly 'panels.market.add.failureGeneric': "安装过程中出错,原因见安装详情";
|
|
225
233
|
readonly 'panels.market.add.approveTitle': "需要你允许安装脚本";
|
|
226
234
|
readonly 'panels.market.add.approveCaution': "只允许你信得过的包:安装脚本会以你的权限在这台机器上运行。";
|
|
@@ -258,7 +266,7 @@ export declare const dictionaries: {
|
|
|
258
266
|
readonly 'panels.market.add.doneApplied': "装好了,已经生效。";
|
|
259
267
|
readonly 'panels.market.add.doneRestart': "装好了,重启一次才生效。";
|
|
260
268
|
readonly 'panels.market.add.restartWhy': "为什么这一版要重启:{reason}";
|
|
261
|
-
readonly 'panels.market.add.restartWhy.no-hmr': "
|
|
269
|
+
readonly 'panels.market.add.restartWhy.no-hmr': "这个配置只在启动时应用改动(没开热更新)";
|
|
262
270
|
readonly 'panels.market.add.restartWhy.package-moved': "某个已经装着的包换到了新的目录,或者这一下换掉了 dsh 自己提供的那份";
|
|
263
271
|
readonly 'panels.market.add.restartWhy.host-module': "这一下动到了 dsh 自己加载的模块";
|
|
264
272
|
readonly 'panels.market.add.restartWhy.unmanaged-plugin': "这一下动到了插件清单之外正在跑的插件";
|
|
@@ -273,17 +281,17 @@ export declare const dictionaries: {
|
|
|
273
281
|
readonly 'panels.market.add.remove': "移除它";
|
|
274
282
|
readonly 'panels.market.add.problem.invalidSpec': "这个写法不认:不能是空的,也不能以横杠开头。";
|
|
275
283
|
readonly 'panels.market.add.problem.alreadyInstalled': "这个包已经在 profile 里了(要换版本请带上 @版本)。";
|
|
276
|
-
readonly 'panels.market.add.problem.notFound': "
|
|
277
|
-
readonly 'panels.market.add.problem.notAPackage': "
|
|
278
|
-
readonly 'panels.market.add.problem.notABundle': "它是一个 npm 包,但不是 dsh
|
|
279
|
-
readonly 'panels.market.add.problem.network': "
|
|
280
|
-
readonly 'panels.market.add.problem.unknown': "
|
|
284
|
+
readonly 'panels.market.add.problem.notFound': "源上没有这个包。换个包名或版本再试。";
|
|
285
|
+
readonly 'panels.market.add.problem.notAPackage': "这个位置没有包。选一个包含 package.json 的目录。";
|
|
286
|
+
readonly 'panels.market.add.problem.notABundle': "它是一个 npm 包,但不是 dsh 插件包(缺 dsh 的接线声明)。";
|
|
287
|
+
readonly 'panels.market.add.problem.network': "源连不上。检查网络后重试。";
|
|
288
|
+
readonly 'panels.market.add.problem.unknown': "预检没通过(原因未知)。展开安装详情看原始输出,或重试。";
|
|
281
289
|
readonly 'panels.market.add.reason.invalidSpec': "写法不认";
|
|
282
290
|
readonly 'panels.market.add.reason.incompatible': "它要的 dsh 版本和这台机器上的不一致";
|
|
283
291
|
readonly 'panels.market.add.reason.notBundle': "它不是一个 dsh 插件包";
|
|
284
292
|
readonly 'panels.market.add.reason.notRemovable': "它是安装自带的组合包,不能卸";
|
|
285
293
|
readonly 'panels.market.add.reason.bundleInUse': "还有东西在用它,卸不掉";
|
|
286
|
-
readonly 'panels.market.add.reason.stopProfile': "
|
|
294
|
+
readonly 'panels.market.add.reason.stopProfile': "这个配置没开热更新,得先停掉进程";
|
|
287
295
|
readonly 'panels.market.add.reason.staleApproval': "要允许的安装脚本已经变了,重新来一次";
|
|
288
296
|
readonly 'panels.market.add.reason.operationError': "pnpm 执行出错(详情见安装输出)";
|
|
289
297
|
readonly 'panels.market.add.reason.buildBlocked': "pnpm 拦下了安装脚本";
|
|
@@ -338,11 +346,11 @@ export declare const dictionaries: {
|
|
|
338
346
|
readonly 'env.bridge.extensionLink': "去 Chrome 应用商店装扩展";
|
|
339
347
|
readonly 'env.bridge.profile': "连上了多个浏览器 profile,但没选默认的那个:先看有哪些(下面这条命令),再选一个。";
|
|
340
348
|
readonly 'env.bridge.stale': "默认的浏览器 profile 已经失效(它记的是上一次的扩展实例):重新选一个。";
|
|
341
|
-
readonly 'env.bridge.unknown': "
|
|
349
|
+
readonly 'env.bridge.unknown': "没认出是哪种问题:展开原始输出,按里面的步骤处理。";
|
|
342
350
|
readonly 'env.fix.title': "怎么解决";
|
|
343
351
|
readonly 'env.fix.why': "工作台用它自己那份 opencli(与你在终端里那套分开装,互不影响),这台机器上还没装好它。";
|
|
344
352
|
readonly 'env.fix.whyPath': "opencli 装上了,但当前环境还找不到它 —— 通常是 PATH 或终端会话的问题。";
|
|
345
|
-
readonly 'env.fix.whyShell': "工作台拿不到执行命令的通道,所以取不了数据 ——
|
|
353
|
+
readonly 'env.fix.whyShell': "工作台拿不到执行命令的通道,所以取不了数据 —— 这一步你装不了,需要有人处理后台环境。";
|
|
346
354
|
readonly 'env.fix.step': "在终端里运行下面这条命令,装好之后点「重试」:";
|
|
347
355
|
readonly 'env.fix.stepPath': "新开一个终端窗口(或确认 npm 的全局 bin 目录在 PATH 里),然后点「重试」。";
|
|
348
356
|
readonly 'env.fix.stepShell': "重启一次工作台(或 dsh);如果反复出现,说明执行通道没配好。";
|
|
@@ -354,9 +362,9 @@ export declare const dictionaries: {
|
|
|
354
362
|
readonly 'env.diy.ok': "可用";
|
|
355
363
|
readonly 'env.diy.short': "挂不起来";
|
|
356
364
|
readonly 'env.diy.hold': "DIY 模式挂不起来 —— 升级 dsh 后点「重试」,也可以先进工作台。";
|
|
357
|
-
readonly 'env.diy.why': "
|
|
358
|
-
readonly 'env.diy.rows': "这一代 dsh
|
|
359
|
-
readonly 'env.diy.noRow': "体检没在 dsh
|
|
365
|
+
readonly 'env.diy.why': "这台机器上的 dsh 比工作台验过的旧,DIY 模式挂不起来;面板和其它功能不受影响。升级 dsh 后重启再试。";
|
|
366
|
+
readonly 'env.diy.rows': "这一代 dsh 缺这几项:{rows}";
|
|
367
|
+
readonly 'env.diy.noRow': "体检没在 dsh 的模式名单里看到「工作台 DIY 模式」—— 多半是工作台这份安装没带上对应的模式补丁。";
|
|
360
368
|
readonly 'env.diy.step': "升级 dsh,然后重启一次工作台:";
|
|
361
369
|
readonly 'env.diy.continue': "先进入工作台";
|
|
362
370
|
readonly 'env.copyCommand': "复制命令";
|
|
@@ -392,6 +400,18 @@ export declare const dictionaries: {
|
|
|
392
400
|
readonly 'board.title': "工作台面板";
|
|
393
401
|
readonly 'panel.conversation': "对话";
|
|
394
402
|
readonly 'panels.label': "全局面板";
|
|
403
|
+
readonly 'workbenchSettings.nav': "工作台设置";
|
|
404
|
+
readonly 'workbenchSettings.lead': "工作台自己这一侧的配置都收在这里。";
|
|
405
|
+
readonly 'sidebarEdition.nav': "会话列表";
|
|
406
|
+
readonly 'sidebarEdition.lead': "左栏整条用哪一套:官方 dsh 的,还是工作台自己的。";
|
|
407
|
+
readonly 'sidebarEdition.official': "官方";
|
|
408
|
+
readonly 'sidebarEdition.officialHint': "跟 dsh 官方一致、最稳:搜索、视图选项、显示更多、归档、添加工作区都齐,升级也不等我们适配。想省心就选它。";
|
|
409
|
+
readonly 'sidebarEdition.custom': "自定义";
|
|
410
|
+
readonly 'sidebarEdition.customHint': "为多项目工作流做的:项目下拉一屏一个项目,会话按最近更新排,两端淡出、跑马灯、工坊 DIY 新会话。项目多时更顺手。";
|
|
411
|
+
readonly 'sidebarEdition.saving': "配置中…";
|
|
412
|
+
readonly 'sidebarEdition.reloadRequired': "已写入。刷新页面后生效(不用重启工作台)。";
|
|
413
|
+
readonly 'sidebarEdition.reload': "刷新页面";
|
|
414
|
+
readonly 'sidebarEdition.failed': "这一档没写进去,再试一次。";
|
|
395
415
|
readonly 'configSync.nav': "配置同步";
|
|
396
416
|
readonly 'configSync.lead': "把另一个 profile 里显式配过的行搬过来 —— 来源随你选。";
|
|
397
417
|
readonly 'configSync.source': "来源";
|
|
@@ -414,8 +434,8 @@ export declare const dictionaries: {
|
|
|
414
434
|
readonly 'configSync.code.expandAria': "展开差异(还有 {count} 行)";
|
|
415
435
|
readonly 'configSync.code.expand': "展开剩余 {count} 行";
|
|
416
436
|
readonly 'configSync.missing': "{pkg} 还没装:这一行搬过来也不会生效 —— 先 `dsh plugin --profile {profile} add {pkg}`,或在模块市场里装";
|
|
417
|
-
readonly 'configSync.apply': "同步选中的 {count}
|
|
418
|
-
readonly 'configSync.applyNone': "
|
|
437
|
+
readonly 'configSync.apply': "同步选中的 {count} 项";
|
|
438
|
+
readonly 'configSync.applyNone': "请选择同步内容";
|
|
419
439
|
readonly 'configSync.applying': "正在写入…";
|
|
420
440
|
readonly 'configSync.applied': "已写入工作台配置 · 已生效";
|
|
421
441
|
readonly 'configSync.appliedIds': "这次写进去:{ids}";
|
|
@@ -423,7 +443,7 @@ export declare const dictionaries: {
|
|
|
423
443
|
readonly 'configSync.nothing': "没有需要同步的内容";
|
|
424
444
|
readonly 'configSync.unreadable': "读不到 {path}:{reason}";
|
|
425
445
|
readonly 'configSync.noSource': "这台机器上只有工作台这一个 profile,没有可同步的来源";
|
|
426
|
-
readonly 'configSync.emptyProviders': "工作台还没有任何模型供应商 —— 去「配置同步」从某个 profile
|
|
446
|
+
readonly 'configSync.emptyProviders': "工作台还没有任何模型供应商 —— 去「配置同步」从某个 profile 把模型供应商那几行搬过来,或自己去「模型」里配。";
|
|
427
447
|
readonly 'configSync.failed': "同步没成功,再试一次。";
|
|
428
448
|
readonly 'debug.workspace': "这个工作区";
|
|
429
449
|
readonly 'debug.status': "「{title}」调试中";
|
|
@@ -456,7 +476,7 @@ export declare const dictionaries: {
|
|
|
456
476
|
readonly 'approval.longTask.what': "要停的那一趟";
|
|
457
477
|
readonly 'approval.longTask.signal': "停了只是让外壳发出中断信号 —— 平台侧那趟活儿的收尾看模块自己";
|
|
458
478
|
};
|
|
459
|
-
en: Record<"time.now" | "time.ago" | "time.minutes" | "time.hours" | "time.days" | "blocker.retry" | "blocker.copy" | "blocker.unknown.title" | "blocker.login.go" | "blocker.login.titleGeneric" | "blocker.login.title" | "blocker.login.manual" | "blocker.login.hint" | "blocker.forbidden.open" | "blocker.forbidden.titleGeneric" | "blocker.forbidden.title" | "blocker.forbidden.hint" | "blocker.timeout.hint" | "blocker.exec.hint" | "blocker.fix.install" | "blocker.fix.update" | "blocker.market.open" | "env.unit.failed" | "env.unit.failedHint" | "env.unit.missingPlugin" | "env.unit.hint" | "env.unit.missingCommands" | "env.unit.missingCommandsHint" | "env.unit.unchecked" | "env.unit.uncheckedHint" | "brand.name" | "toggle.open" | "toggle.collapse" | "project.label" | "workspace.section" | "project.none" | "project.empty" | "project.add" | "project.add.busy" | "project.add.failed" | "project.search.label" | "project.search.placeholder" | "project.search.empty" | "project.group.workspaces" | "project.group.defaultWorkspace" | "project.group.workshop" | "project.rename.row" | "project.rename.current" | "project.rename.title" | "project.rename.description" | "project.rename.field" | "project.rename.placeholder" | "project.rename.hint" | "project.rename.save" | "project.rename.saving" | "project.rename.cancel" | "project.rename.failed" | "session.new" | "session.new.label" | "session.empty" | "session.noProject" | "session.list.label" | "session.copy" | "session.pinned" | "session.actions" | "status.idle" | "status.running" | "status.longTask" | "status.waitingApproval" | "status.planReview" | "status.waitingAnswer" | "status.compact.approval" | "status.compact.planReview" | "status.compact.answer" | "status.completed" | "status.subagentsRunning.one" | "status.subagentsRunning.other" | "project.attention.warning.one" | "project.attention.warning.other" | "project.attention.running.one" | "project.attention.running.other" | "project.attention.longTask.one" | "project.attention.longTask.other" | "project.attention.done.one" | "project.attention.done.other" | "project.attention.state.warning" | "project.attention.state.running" | "project.attention.state.done" | "hover.copied" | "time.short.minutes" | "time.short.hours" | "time.short.days" | "time.short.months" | "time.short.years" | "panels.title" | "panels.groupBoardless" | "panels.groupPlugins" | "panels.market.defaultHint" | "panels.market.defaultLabel" | "panels.market.defaultLocked" | "panels.followAll" | "panels.followAllConfirmTitle" | "panels.followAllConfirmDetail" | "panels.followAllConfirmAck" | "panels.followAllConfirmYes" | "panels.followAllConfirmNo" | "panels.enabled" | "panels.disabled" | "panels.choose" | "panels.buildModule" | "panels.failed" | "panels.dragHint" | "panels.unknownStep" | "panels.labelWithHint" | "panels.hintJoin" | "panels.dep.failed" | "panels.dep.missingPlugin" | "panels.dep.missingCommands" | "panels.dep.unchecked" | "panels.tab.modules" | "panels.tab.market" | "panels.browseMarket" | "panels.noneInstalled" | "panels.noneInstalledHint" | "panels.market.installed" | "panels.market.notActive" | "panels.market.notUsable" | "panels.market.broken" | "panels.market.hasNew" | "panels.market.hasProblem" | "panels.market.missing" | "panels.market.unchecked" | "panels.market.checking" | "panels.market.sectionInstalled" | "panels.market.sectionPending" | "panels.market.sectionShared" | "panels.market.sharedUsedBy" | "panels.market.listSeparator" | "panels.market.sharedMissing" | "panels.market.sharedOutdated" | "panels.market.sharedUnsatisfied" | "panels.market.sharedOk" | "panels.market.versionArrow" | "panels.market.lead" | "panels.market.install" | "panels.market.update" | "panels.market.swapSlow" | "panels.market.uninstall" | "panels.market.uninstallLabel" | "panels.market.installing" | "panels.market.updating" | "panels.market.uninstalling" | "panels.market.confirmUninstallTitle" | "panels.market.confirmUninstallDetail" | "panels.market.confirmUninstallAck" | "panels.market.confirmYes" | "panels.market.confirmNo" | "panels.market.failed" | "panels.market.needEnv" | "panels.market.needCommands" | "panels.market.localMark" | "panels.market.localHint" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.sectionPlugins" | "panels.market.moduleOutdated" | "panels.market.moduleRefused" | "panels.market.moduleRefusedDetail" | "panels.market.moduleRestartHint" | "panels.market.pendingRestart" | "panels.market.workbenchName" | "panels.market.workbenchLocal" | "panels.market.pluginKeptInUse" | "panels.market.pluginKeptUnsure" | "panels.market.pluginKeptHeld" | "panels.market.pluginKeptUnnamed" | "panels.market.pluginBroken" | "panels.market.restartNeeded" | "panels.market.foot" | "panels.market.recheck" | "panels.market.checkUpdates" | "panels.market.checkedAt" | "panels.market.justNow" | "panels.market.minutesAgo" | "panels.market.hoursAgo" | "panels.market.add.description" | "panels.market.add.specPlaceholder" | "panels.market.add.guideToggle" | "panels.market.add.guideHide" | "panels.market.add.guideIdTitle" | "panels.market.add.guideIdExample" | "panels.market.add.guideIdHint" | "panels.market.add.guideGitTitle" | "panels.market.add.guideGitExample" | "panels.market.add.guideGitHint" | "panels.market.add.guidePathTitle" | "panels.market.add.guidePathExample" | "panels.market.add.guidePathHint" | "panels.market.add.guideExampleLabel" | "panels.market.add.guideFill" | "panels.market.add.guideSafety" | "panels.market.add.registryLegend" | "panels.market.add.registryOfficial" | "panels.market.add.registryMirror" | "panels.market.add.registryWithHost" | "panels.market.add.registryToggle" | "panels.market.add.installVersion" | "panels.market.add.registryDefault" | "panels.market.add.registryCustom" | "panels.market.add.registryCustomPlaceholder" | "panels.market.add.registryCustomHint" | "panels.market.add.registryCustomInvalid" | "panels.market.add.run" | "panels.market.add.edit" | "panels.market.add.changeRegistry" | "panels.market.add.installingTitle" | "panels.market.add.installedTitle" | "panels.market.add.failedTitle" | "panels.market.add.cancelledTitle" | "panels.market.add.failureNetworkHost" | "panels.market.add.problemInvalid" | "panels.market.add.problemInstalled" | "panels.market.add.problemNotFound" | "panels.market.add.problemNotPackage" | "panels.market.add.problemNotBundle" | "panels.market.add.problemNotWorkbenchModule" | "panels.market.add.problemNotModuleOrPlugin" | "panels.market.add.failureNotModuleOrPlugin" | "panels.market.add.installedPlugin" | "panels.market.add.pluginPreview" | "panels.market.add.pluginAlias" | "panels.market.add.problemNetwork" | "panels.market.add.problemUnknown" | "panels.market.add.failureNetwork" | "panels.market.add.failureNotFound" | "panels.market.add.failureNoMatchingVersion" | "panels.market.add.failureDiskFull" | "panels.market.add.failurePermission" | "panels.market.add.failureBuildBlocked" | "panels.market.add.failureIntegrity" | "panels.market.add.failureTimeout" | "panels.market.add.failurePnpmMissing" | "panels.market.add.failureInstalled" | "panels.market.add.failureGeneric" | "panels.market.add.approveTitle" | "panels.market.add.approveCaution" | "panels.market.add.approveRun" | "panels.market.add.restart" | "panels.market.add.tookEffect" | "panels.market.add.details" | "panels.market.add.open" | "panels.market.add.title" | "panels.market.add.intro" | "panels.market.add.specLabel" | "panels.market.add.specHint" | "panels.market.add.exampleTitle" | "panels.market.add.exampleFill" | "panels.market.add.registryLabel" | "panels.market.add.registryProfile" | "panels.market.add.registryPnpm" | "panels.market.add.check" | "panels.market.add.checking" | "panels.market.add.classifying" | "panels.market.add.change" | "panels.market.add.previewTitle" | "panels.market.add.fieldName" | "panels.market.add.fieldVersion" | "panels.market.add.fieldDescription" | "panels.market.add.fieldSource" | "panels.market.add.install" | "panels.market.add.installing" | "panels.market.add.cancel" | "panels.market.add.close" | "panels.market.add.retry" | "panels.market.add.changeSource" | "panels.market.add.approveBuilds" | "panels.market.add.approveHint" | "panels.market.add.doneApplied" | "panels.market.add.doneRestart" | "panels.market.add.restartWhy" | "panels.market.add.restartWhy.no-hmr" | "panels.market.add.restartWhy.package-moved" | "panels.market.add.restartWhy.host-module" | "panels.market.add.restartWhy.unmanaged-plugin" | "panels.market.add.restartWhy.module-comparison" | "panels.market.add.cancelled" | "panels.market.add.failed" | "panels.market.add.removed" | "panels.market.add.supplyPending" | "panels.market.add.supplyFailed" | "panels.market.add.notModule" | "panels.market.add.removedRestart" | "panels.market.add.remove" | "panels.market.add.problem.invalidSpec" | "panels.market.add.problem.alreadyInstalled" | "panels.market.add.problem.notFound" | "panels.market.add.problem.notAPackage" | "panels.market.add.problem.notABundle" | "panels.market.add.problem.network" | "panels.market.add.problem.unknown" | "panels.market.add.reason.invalidSpec" | "panels.market.add.reason.incompatible" | "panels.market.add.reason.notBundle" | "panels.market.add.reason.notRemovable" | "panels.market.add.reason.bundleInUse" | "panels.market.add.reason.stopProfile" | "panels.market.add.reason.staleApproval" | "panels.market.add.reason.operationError" | "panels.market.add.reason.buildBlocked" | "panels.market.add.reason.pnpmMissing" | "panels.market.add.reason.noMatchingVersion" | "panels.market.add.reason.diskFull" | "panels.market.add.reason.permission" | "panels.market.add.reason.integrity" | "panels.market.add.reason.timeout" | "panels.market.add.reason.network" | "panels.market.add.reason.notFound" | "panels.market.add.reason.unknown" | "blocker.fix.running" | "blocker.fix.failed" | "blocker.retry.running" | "panels.reading" | "panels.cardBroken" | "panels.cardRetry" | "panels.empty" | "panels.emptyHint" | "env.title" | "env.checking" | "env.installing" | "env.failed" | "env.elapsed" | "env.stepFailed.install" | "env.stepFailed.path" | "env.stepFailed.shell" | "env.bridge.ok" | "env.bridge.short" | "env.bridge.why" | "env.bridge.hold" | "env.bridge.daemon" | "env.bridge.extension" | "env.bridge.extensionLink" | "env.bridge.profile" | "env.bridge.stale" | "env.bridge.unknown" | "env.fix.title" | "env.fix.why" | "env.fix.whyPath" | "env.fix.whyShell" | "env.fix.step" | "env.fix.stepPath" | "env.fix.stepShell" | "env.fix.permission" | "env.fix.network" | "env.fix.details" | "env.retry" | "env.bridge.continue" | "env.diy.ok" | "env.diy.short" | "env.diy.hold" | "env.diy.why" | "env.diy.rows" | "env.diy.noRow" | "env.diy.step" | "env.diy.continue" | "env.copyCommand" | "env.copied" | "env.step.opencli" | "env.step.codingPlugin" | "env.step.bridge" | "env.step.diy" | "env.step.warm" | "env.warm.done" | "env.warm.short" | "rightbar.label" | "rightbar.expand" | "rightbar.collapse" | "rightbar.column.label" | "rightbar.column.workbench" | "rightbar.column.dsh" | "rightbar.refresh" | "rightbar.refreshing" | "rightbar.updatedAt" | "rightbar.noProject" | "rightbar.openPlatform" | "coding.notARepo.title" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label" | "configSync.nav" | "configSync.lead" | "configSync.source" | "configSync.sourceBroken" | "configSync.sourceRows" | "configSync.sourceDead" | "configSync.refresh" | "configSync.loading" | "configSync.readHint" | "configSync.tag.new" | "configSync.tag.differs" | "configSync.conflictNote" | "configSync.code.lang" | "configSync.code.copy" | "configSync.code.copied" | "configSync.code.wrap" | "configSync.code.unwrap" | "configSync.code.collapse" | "configSync.code.collapseAria" | "configSync.code.expandAria" | "configSync.code.expand" | "configSync.missing" | "configSync.apply" | "configSync.applyNone" | "configSync.applying" | "configSync.applied" | "configSync.appliedIds" | "configSync.skippedIds" | "configSync.nothing" | "configSync.unreadable" | "configSync.noSource" | "configSync.emptyProviders" | "configSync.failed" | "debug.workspace" | "debug.status" | "debug.status.trouble" | "debug.stalled" | "debug.act.pause" | "debug.act.resume" | "debug.act.stop" | "debug.act.stop.ask" | "debug.card.here.title" | "debug.card.here.note" | "debug.card.away.note" | "debug.card.paused.note" | "debug.card.hidden.note" | "record.waiting" | "record.waiting.note" | "record.recording" | "record.recording.note" | "record.recording.shots" | "record.finished" | "record.finished.note" | "record.act.cancel" | "record.act.halt" | "approval.record.site" | "approval.record.what" | "approval.record.lands" | "approval.record.noUrl" | "approval.record.oneAction" | "approval.record.noSwitch" | "approval.longTask.what" | "approval.longTask.signal", string>;
|
|
479
|
+
en: Record<"time.now" | "time.ago" | "time.minutes" | "time.hours" | "time.days" | "blocker.retry" | "blocker.copy" | "blocker.unknown.title" | "blocker.login.go" | "blocker.login.titleGeneric" | "blocker.login.title" | "blocker.login.manual" | "blocker.login.hint" | "blocker.forbidden.open" | "blocker.forbidden.titleGeneric" | "blocker.forbidden.title" | "blocker.forbidden.hint" | "blocker.timeout.hint" | "blocker.exec.hint" | "blocker.fix.install" | "blocker.fix.update" | "blocker.market.open" | "env.unit.failed" | "env.unit.failedHint" | "env.unit.missingPlugin" | "env.unit.hint" | "env.unit.missingCommands" | "env.unit.missingCommandsHint" | "env.unit.unchecked" | "env.unit.uncheckedHint" | "brand.name" | "toggle.open" | "toggle.collapse" | "project.label" | "workspace.section" | "project.none" | "project.empty" | "project.add" | "project.add.busy" | "project.add.failed" | "project.search.label" | "project.search.placeholder" | "project.search.empty" | "project.group.workspaces" | "project.group.defaultWorkspace" | "project.group.workshop" | "project.rename.row" | "project.rename.current" | "project.rename.title" | "project.rename.description" | "project.rename.field" | "project.rename.placeholder" | "project.rename.hint" | "project.rename.save" | "project.rename.saving" | "project.rename.cancel" | "project.rename.failed" | "session.new" | "session.new.label" | "session.empty" | "session.noProject" | "session.list.label" | "session.copy" | "session.pinned" | "session.actions" | "status.idle" | "status.running" | "status.longTask" | "status.waitingApproval" | "status.planReview" | "status.waitingAnswer" | "status.compact.approval" | "status.compact.planReview" | "status.compact.answer" | "status.completed" | "status.subagentsRunning.one" | "status.subagentsRunning.other" | "project.attention.warning.one" | "project.attention.warning.other" | "project.attention.running.one" | "project.attention.running.other" | "project.attention.longTask.one" | "project.attention.longTask.other" | "project.attention.done.one" | "project.attention.done.other" | "project.attention.state.warning" | "project.attention.state.running" | "project.attention.state.done" | "hover.copied" | "time.short.minutes" | "time.short.hours" | "time.short.days" | "time.short.months" | "time.short.years" | "panels.title" | "panels.groupBoardless" | "panels.groupPlugins" | "panels.market.defaultHint" | "panels.market.defaultLabel" | "panels.market.defaultLocked" | "panels.followAll" | "panels.followAllConfirmTitle" | "panels.followAllConfirmDetail" | "panels.followAllConfirmAck" | "panels.followAllConfirmYes" | "panels.followAllConfirmNo" | "panels.enabled" | "panels.disabled" | "panels.choose" | "panels.buildModule" | "panels.failed" | "panels.dragHint" | "panels.unknownStep" | "panels.labelWithHint" | "panels.hintJoin" | "panels.dep.failed" | "panels.dep.missingPlugin" | "panels.dep.missingCommands" | "panels.dep.unchecked" | "panels.tab.modules" | "panels.tab.market" | "panels.browseMarket" | "panels.noneInstalled" | "panels.noneInstalledHint" | "panels.market.installed" | "panels.market.notActive" | "panels.market.notUsable" | "panels.market.broken" | "panels.market.hasNew" | "panels.market.hasProblem" | "panels.market.missing" | "panels.market.unchecked" | "panels.market.checking" | "panels.market.sectionInstalled" | "panels.market.sectionPending" | "panels.market.sectionShared" | "panels.market.sharedUsedBy" | "panels.market.listSeparator" | "panels.market.sharedMissing" | "panels.market.sharedOutdated" | "panels.market.sharedUnsatisfied" | "panels.market.sharedOk" | "panels.market.versionArrow" | "panels.market.lead" | "panels.market.install" | "panels.market.update" | "panels.market.swapSlow" | "panels.market.updateNoChange" | "panels.market.updateUnknownVersion" | "panels.market.updateGone" | "panels.market.updateRestored" | "panels.market.updateBehind" | "panels.market.selfUpdateFailed" | "panels.market.selfUpdateUnknown" | "panels.market.selfUpdateRolledBack" | "panels.market.uninstall" | "panels.market.uninstallLabel" | "panels.market.installing" | "panels.market.updating" | "panels.market.uninstalling" | "panels.market.confirmUninstallTitle" | "panels.market.confirmUninstallDetail" | "panels.market.confirmUninstallAck" | "panels.market.confirmYes" | "panels.market.confirmNo" | "panels.market.failed" | "panels.market.needEnv" | "panels.market.needCommands" | "panels.market.localMark" | "panels.market.localHint" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.sectionPlugins" | "panels.market.moduleOutdated" | "panels.market.moduleRefused" | "panels.market.moduleRefusedDetail" | "panels.market.moduleRestartHint" | "panels.market.pendingRestart" | "panels.market.workbenchName" | "panels.market.workbenchLocal" | "panels.market.pluginKeptInUse" | "panels.market.pluginKeptUnsure" | "panels.market.pluginKeptHeld" | "panels.market.pluginKeptUnnamed" | "panels.market.pluginBroken" | "panels.market.restartNeeded" | "panels.market.foot" | "panels.market.recheck" | "panels.market.checkUpdates" | "panels.market.checkedAt" | "panels.market.justNow" | "panels.market.minutesAgo" | "panels.market.hoursAgo" | "panels.market.add.description" | "panels.market.add.specPlaceholder" | "panels.market.add.guideToggle" | "panels.market.add.guideHide" | "panels.market.add.guideIdTitle" | "panels.market.add.guideIdExample" | "panels.market.add.guideIdHint" | "panels.market.add.guideGitTitle" | "panels.market.add.guideGitExample" | "panels.market.add.guideGitHint" | "panels.market.add.guidePathTitle" | "panels.market.add.guidePathExample" | "panels.market.add.guidePathHint" | "panels.market.add.guideExampleLabel" | "panels.market.add.guideFill" | "panels.market.add.guideSafety" | "panels.market.add.registryLegend" | "panels.market.add.registryOfficial" | "panels.market.add.registryMirror" | "panels.market.add.registryWithHost" | "panels.market.add.registryToggle" | "panels.market.add.installVersion" | "panels.market.add.registryDefault" | "panels.market.add.registryCustom" | "panels.market.add.registryCustomPlaceholder" | "panels.market.add.registryCustomHint" | "panels.market.add.registryCustomInvalid" | "panels.market.add.run" | "panels.market.add.edit" | "panels.market.add.changeRegistry" | "panels.market.add.installingTitle" | "panels.market.add.installedTitle" | "panels.market.add.failedTitle" | "panels.market.add.cancelledTitle" | "panels.market.add.failureNetworkHost" | "panels.market.add.problemInvalid" | "panels.market.add.problemInstalled" | "panels.market.add.problemNotFound" | "panels.market.add.problemNotPackage" | "panels.market.add.problemNotBundle" | "panels.market.add.problemNotWorkbenchModule" | "panels.market.add.problemNotModuleOrPlugin" | "panels.market.add.failureNotModuleOrPlugin" | "panels.market.add.installedPlugin" | "panels.market.add.pluginPreview" | "panels.market.add.pluginAlias" | "panels.market.add.problemNetwork" | "panels.market.add.problemUnknown" | "panels.market.add.failureNetwork" | "panels.market.add.failureNotFound" | "panels.market.add.failureNoMatchingVersion" | "panels.market.add.failureDiskFull" | "panels.market.add.failurePermission" | "panels.market.add.failureBuildBlocked" | "panels.market.add.failureIntegrity" | "panels.market.add.failureTimeout" | "panels.market.add.failurePnpmMissing" | "panels.market.add.failureInstalled" | "panels.market.add.failureGeneric" | "panels.market.add.approveTitle" | "panels.market.add.approveCaution" | "panels.market.add.approveRun" | "panels.market.add.restart" | "panels.market.add.tookEffect" | "panels.market.add.details" | "panels.market.add.open" | "panels.market.add.title" | "panels.market.add.intro" | "panels.market.add.specLabel" | "panels.market.add.specHint" | "panels.market.add.exampleTitle" | "panels.market.add.exampleFill" | "panels.market.add.registryLabel" | "panels.market.add.registryProfile" | "panels.market.add.registryPnpm" | "panels.market.add.check" | "panels.market.add.checking" | "panels.market.add.classifying" | "panels.market.add.change" | "panels.market.add.previewTitle" | "panels.market.add.fieldName" | "panels.market.add.fieldVersion" | "panels.market.add.fieldDescription" | "panels.market.add.fieldSource" | "panels.market.add.install" | "panels.market.add.installing" | "panels.market.add.cancel" | "panels.market.add.close" | "panels.market.add.retry" | "panels.market.add.changeSource" | "panels.market.add.approveBuilds" | "panels.market.add.approveHint" | "panels.market.add.doneApplied" | "panels.market.add.doneRestart" | "panels.market.add.restartWhy" | "panels.market.add.restartWhy.no-hmr" | "panels.market.add.restartWhy.package-moved" | "panels.market.add.restartWhy.host-module" | "panels.market.add.restartWhy.unmanaged-plugin" | "panels.market.add.restartWhy.module-comparison" | "panels.market.add.cancelled" | "panels.market.add.failed" | "panels.market.add.removed" | "panels.market.add.supplyPending" | "panels.market.add.supplyFailed" | "panels.market.add.notModule" | "panels.market.add.removedRestart" | "panels.market.add.remove" | "panels.market.add.problem.invalidSpec" | "panels.market.add.problem.alreadyInstalled" | "panels.market.add.problem.notFound" | "panels.market.add.problem.notAPackage" | "panels.market.add.problem.notABundle" | "panels.market.add.problem.network" | "panels.market.add.problem.unknown" | "panels.market.add.reason.invalidSpec" | "panels.market.add.reason.incompatible" | "panels.market.add.reason.notBundle" | "panels.market.add.reason.notRemovable" | "panels.market.add.reason.bundleInUse" | "panels.market.add.reason.stopProfile" | "panels.market.add.reason.staleApproval" | "panels.market.add.reason.operationError" | "panels.market.add.reason.buildBlocked" | "panels.market.add.reason.pnpmMissing" | "panels.market.add.reason.noMatchingVersion" | "panels.market.add.reason.diskFull" | "panels.market.add.reason.permission" | "panels.market.add.reason.integrity" | "panels.market.add.reason.timeout" | "panels.market.add.reason.network" | "panels.market.add.reason.notFound" | "panels.market.add.reason.unknown" | "blocker.fix.running" | "blocker.fix.failed" | "blocker.retry.running" | "panels.reading" | "panels.cardBroken" | "panels.cardRetry" | "panels.empty" | "panels.emptyHint" | "env.title" | "env.checking" | "env.installing" | "env.failed" | "env.elapsed" | "env.stepFailed.install" | "env.stepFailed.path" | "env.stepFailed.shell" | "env.bridge.ok" | "env.bridge.short" | "env.bridge.why" | "env.bridge.hold" | "env.bridge.daemon" | "env.bridge.extension" | "env.bridge.extensionLink" | "env.bridge.profile" | "env.bridge.stale" | "env.bridge.unknown" | "env.fix.title" | "env.fix.why" | "env.fix.whyPath" | "env.fix.whyShell" | "env.fix.step" | "env.fix.stepPath" | "env.fix.stepShell" | "env.fix.permission" | "env.fix.network" | "env.fix.details" | "env.retry" | "env.bridge.continue" | "env.diy.ok" | "env.diy.short" | "env.diy.hold" | "env.diy.why" | "env.diy.rows" | "env.diy.noRow" | "env.diy.step" | "env.diy.continue" | "env.copyCommand" | "env.copied" | "env.step.opencli" | "env.step.codingPlugin" | "env.step.bridge" | "env.step.diy" | "env.step.warm" | "env.warm.done" | "env.warm.short" | "rightbar.label" | "rightbar.expand" | "rightbar.collapse" | "rightbar.column.label" | "rightbar.column.workbench" | "rightbar.column.dsh" | "rightbar.refresh" | "rightbar.refreshing" | "rightbar.updatedAt" | "rightbar.noProject" | "rightbar.openPlatform" | "coding.notARepo.title" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label" | "workbenchSettings.nav" | "workbenchSettings.lead" | "sidebarEdition.nav" | "sidebarEdition.lead" | "sidebarEdition.official" | "sidebarEdition.officialHint" | "sidebarEdition.custom" | "sidebarEdition.customHint" | "sidebarEdition.saving" | "sidebarEdition.reloadRequired" | "sidebarEdition.reload" | "sidebarEdition.failed" | "configSync.nav" | "configSync.lead" | "configSync.source" | "configSync.sourceBroken" | "configSync.sourceRows" | "configSync.sourceDead" | "configSync.refresh" | "configSync.loading" | "configSync.readHint" | "configSync.tag.new" | "configSync.tag.differs" | "configSync.conflictNote" | "configSync.code.lang" | "configSync.code.copy" | "configSync.code.copied" | "configSync.code.wrap" | "configSync.code.unwrap" | "configSync.code.collapse" | "configSync.code.collapseAria" | "configSync.code.expandAria" | "configSync.code.expand" | "configSync.missing" | "configSync.apply" | "configSync.applyNone" | "configSync.applying" | "configSync.applied" | "configSync.appliedIds" | "configSync.skippedIds" | "configSync.nothing" | "configSync.unreadable" | "configSync.noSource" | "configSync.emptyProviders" | "configSync.failed" | "debug.workspace" | "debug.status" | "debug.status.trouble" | "debug.stalled" | "debug.act.pause" | "debug.act.resume" | "debug.act.stop" | "debug.act.stop.ask" | "debug.card.here.title" | "debug.card.here.note" | "debug.card.away.note" | "debug.card.paused.note" | "debug.card.hidden.note" | "record.waiting" | "record.waiting.note" | "record.recording" | "record.recording.note" | "record.recording.shots" | "record.finished" | "record.finished.note" | "record.act.cancel" | "record.act.halt" | "approval.record.site" | "approval.record.what" | "approval.record.lands" | "approval.record.noUrl" | "approval.record.oneAction" | "approval.record.noSwitch" | "approval.longTask.what" | "approval.longTask.signal", string>;
|
|
460
480
|
};
|
|
461
481
|
/** 中文词表的键类型(从 `zh.ts` 转出):`en` 与模块词表都得覆盖同一批键。 */
|
|
462
482
|
export type { WorkbenchMessages };
|
package/dist/i18n/zh.d.ts
CHANGED
|
@@ -87,7 +87,7 @@ export declare const zh: {
|
|
|
87
87
|
readonly 'panels.buildModule': "造一个模块";
|
|
88
88
|
readonly 'panels.failed': "改配置失败了,再试一次。";
|
|
89
89
|
readonly 'panels.dragHint': "拖动调整顺序";
|
|
90
|
-
readonly 'panels.unknownStep': "
|
|
90
|
+
readonly 'panels.unknownStep': "这一块还没有面板";
|
|
91
91
|
readonly 'panels.labelWithHint': "{label}({hint})";
|
|
92
92
|
readonly 'panels.hintJoin': ";";
|
|
93
93
|
readonly 'panels.dep.failed': "⚠ 起不来";
|
|
@@ -122,6 +122,14 @@ export declare const zh: {
|
|
|
122
122
|
readonly 'panels.market.install': "安装";
|
|
123
123
|
readonly 'panels.market.update': "更新";
|
|
124
124
|
readonly 'panels.market.swapSlow': "还没换上:可能网慢或没装上。再点一次「更新」;一直这样就把 dsh 重启一遍。";
|
|
125
|
+
readonly 'panels.market.updateNoChange': "没换成:点下去是 {from},跑完盘上还是这一版;源上最新是 {latest}。";
|
|
126
|
+
readonly 'panels.market.updateUnknownVersion': "(问不到)";
|
|
127
|
+
readonly 'panels.market.updateGone': "没换成:更新跑完盘上读不到这个模块。";
|
|
128
|
+
readonly 'panels.market.updateRestored': "没换成:盘上已经读不到新版本,已把 {version} 装回去。";
|
|
129
|
+
readonly 'panels.market.updateBehind': "装上了 {installed},但源上最新是 {latest} —— 没更到最新,可以再点一次。";
|
|
130
|
+
readonly 'panels.market.selfUpdateFailed': "自更新没成:{reason}";
|
|
131
|
+
readonly 'panels.market.selfUpdateUnknown': "外部进程没留下原因(看 ~/.dsh/workbench/self-update.log)";
|
|
132
|
+
readonly 'panels.market.selfUpdateRolledBack': "没换成,已回滚到 {version}。";
|
|
125
133
|
readonly 'panels.market.uninstall': "卸载";
|
|
126
134
|
readonly 'panels.market.uninstallLabel': "卸载 {name}";
|
|
127
135
|
readonly 'panels.market.installing': "正在安装…";
|
|
@@ -152,7 +160,7 @@ export declare const zh: {
|
|
|
152
160
|
readonly 'panels.market.pluginKeptUnsure': "文件先留着:这台机器上还有模块看不出用了什么,说不准谁在用它。";
|
|
153
161
|
readonly 'panels.market.pluginKeptHeld': "文件留着:你自己装的那一份,模块放手不动它。";
|
|
154
162
|
readonly 'panels.market.pluginKeptUnnamed': "文件先留着:看不出这是哪个插件,说不准谁在用它。";
|
|
155
|
-
readonly 'panels.market.pluginBroken': "
|
|
163
|
+
readonly 'panels.market.pluginBroken': "这份插件装坏了:认不出它是什么。可以先卸载,再让 agent 按包名重装一次。";
|
|
156
164
|
readonly 'panels.market.restartNeeded': "新版装好了,重启一次才生效。";
|
|
157
165
|
readonly 'panels.market.foot': "装好后到那个项目的面板页勾选它,模块才会出现。";
|
|
158
166
|
readonly 'panels.market.recheck': "重新检查更新";
|
|
@@ -197,7 +205,7 @@ export declare const zh: {
|
|
|
197
205
|
readonly 'panels.market.add.cancelledTitle': "已取消";
|
|
198
206
|
readonly 'panels.market.add.failureNetworkHost': "无法连接 {host}。Git 地址和 .tgz 直链不经过安装源,需要本机能直接访问它或配置代理;如果这个模块也发布到了 npm,请改填包名。";
|
|
199
207
|
readonly 'panels.market.add.problemInvalid': "无法识别这个包名或地址:{reason}";
|
|
200
|
-
readonly 'panels.market.add.problemInstalled': "
|
|
208
|
+
readonly 'panels.market.add.problemInstalled': "这个模块已经装过了(要换版本请带上 @版本)";
|
|
201
209
|
readonly 'panels.market.add.problemNotFound': "未找到相关模块";
|
|
202
210
|
readonly 'panels.market.add.problemNotPackage': "该路径不存在或不是有效的模块包";
|
|
203
211
|
readonly 'panels.market.add.problemNotBundle': "这个包装不进这里:{reason}。这个入口按包名认工作台模块和 opencli 插件,两种都能装;但 git 地址和 tarball 判断不出它是什么 —— 要是它其实是这两样之一,请改填包名或本地目录。";
|
|
@@ -218,7 +226,7 @@ export declare const zh: {
|
|
|
218
226
|
readonly 'panels.market.add.failureIntegrity': "下载的安装包校验失败";
|
|
219
227
|
readonly 'panels.market.add.failureTimeout': "安装超时";
|
|
220
228
|
readonly 'panels.market.add.failurePnpmMissing': "没有找到 pnpm,无法安装";
|
|
221
|
-
readonly 'panels.market.add.failureInstalled': "
|
|
229
|
+
readonly 'panels.market.add.failureInstalled': "它已经装在这份工作台里了。同一个包不能就地覆盖,得先卸载再装;这次卸载也没成功。";
|
|
222
230
|
readonly 'panels.market.add.failureGeneric': "安装过程中出错,原因见安装详情";
|
|
223
231
|
readonly 'panels.market.add.approveTitle': "需要你允许安装脚本";
|
|
224
232
|
readonly 'panels.market.add.approveCaution': "只允许你信得过的包:安装脚本会以你的权限在这台机器上运行。";
|
|
@@ -256,7 +264,7 @@ export declare const zh: {
|
|
|
256
264
|
readonly 'panels.market.add.doneApplied': "装好了,已经生效。";
|
|
257
265
|
readonly 'panels.market.add.doneRestart': "装好了,重启一次才生效。";
|
|
258
266
|
readonly 'panels.market.add.restartWhy': "为什么这一版要重启:{reason}";
|
|
259
|
-
readonly 'panels.market.add.restartWhy.no-hmr': "
|
|
267
|
+
readonly 'panels.market.add.restartWhy.no-hmr': "这个配置只在启动时应用改动(没开热更新)";
|
|
260
268
|
readonly 'panels.market.add.restartWhy.package-moved': "某个已经装着的包换到了新的目录,或者这一下换掉了 dsh 自己提供的那份";
|
|
261
269
|
readonly 'panels.market.add.restartWhy.host-module': "这一下动到了 dsh 自己加载的模块";
|
|
262
270
|
readonly 'panels.market.add.restartWhy.unmanaged-plugin': "这一下动到了插件清单之外正在跑的插件";
|
|
@@ -271,17 +279,17 @@ export declare const zh: {
|
|
|
271
279
|
readonly 'panels.market.add.remove': "移除它";
|
|
272
280
|
readonly 'panels.market.add.problem.invalidSpec': "这个写法不认:不能是空的,也不能以横杠开头。";
|
|
273
281
|
readonly 'panels.market.add.problem.alreadyInstalled': "这个包已经在 profile 里了(要换版本请带上 @版本)。";
|
|
274
|
-
readonly 'panels.market.add.problem.notFound': "
|
|
275
|
-
readonly 'panels.market.add.problem.notAPackage': "
|
|
276
|
-
readonly 'panels.market.add.problem.notABundle': "它是一个 npm 包,但不是 dsh
|
|
277
|
-
readonly 'panels.market.add.problem.network': "
|
|
278
|
-
readonly 'panels.market.add.problem.unknown': "
|
|
282
|
+
readonly 'panels.market.add.problem.notFound': "源上没有这个包。换个包名或版本再试。";
|
|
283
|
+
readonly 'panels.market.add.problem.notAPackage': "这个位置没有包。选一个包含 package.json 的目录。";
|
|
284
|
+
readonly 'panels.market.add.problem.notABundle': "它是一个 npm 包,但不是 dsh 插件包(缺 dsh 的接线声明)。";
|
|
285
|
+
readonly 'panels.market.add.problem.network': "源连不上。检查网络后重试。";
|
|
286
|
+
readonly 'panels.market.add.problem.unknown': "预检没通过(原因未知)。展开安装详情看原始输出,或重试。";
|
|
279
287
|
readonly 'panels.market.add.reason.invalidSpec': "写法不认";
|
|
280
288
|
readonly 'panels.market.add.reason.incompatible': "它要的 dsh 版本和这台机器上的不一致";
|
|
281
289
|
readonly 'panels.market.add.reason.notBundle': "它不是一个 dsh 插件包";
|
|
282
290
|
readonly 'panels.market.add.reason.notRemovable': "它是安装自带的组合包,不能卸";
|
|
283
291
|
readonly 'panels.market.add.reason.bundleInUse': "还有东西在用它,卸不掉";
|
|
284
|
-
readonly 'panels.market.add.reason.stopProfile': "
|
|
292
|
+
readonly 'panels.market.add.reason.stopProfile': "这个配置没开热更新,得先停掉进程";
|
|
285
293
|
readonly 'panels.market.add.reason.staleApproval': "要允许的安装脚本已经变了,重新来一次";
|
|
286
294
|
readonly 'panels.market.add.reason.operationError': "pnpm 执行出错(详情见安装输出)";
|
|
287
295
|
readonly 'panels.market.add.reason.buildBlocked': "pnpm 拦下了安装脚本";
|
|
@@ -336,11 +344,11 @@ export declare const zh: {
|
|
|
336
344
|
readonly 'env.bridge.extensionLink': "去 Chrome 应用商店装扩展";
|
|
337
345
|
readonly 'env.bridge.profile': "连上了多个浏览器 profile,但没选默认的那个:先看有哪些(下面这条命令),再选一个。";
|
|
338
346
|
readonly 'env.bridge.stale': "默认的浏览器 profile 已经失效(它记的是上一次的扩展实例):重新选一个。";
|
|
339
|
-
readonly 'env.bridge.unknown': "
|
|
347
|
+
readonly 'env.bridge.unknown': "没认出是哪种问题:展开原始输出,按里面的步骤处理。";
|
|
340
348
|
readonly 'env.fix.title': "怎么解决";
|
|
341
349
|
readonly 'env.fix.why': "工作台用它自己那份 opencli(与你在终端里那套分开装,互不影响),这台机器上还没装好它。";
|
|
342
350
|
readonly 'env.fix.whyPath': "opencli 装上了,但当前环境还找不到它 —— 通常是 PATH 或终端会话的问题。";
|
|
343
|
-
readonly 'env.fix.whyShell': "工作台拿不到执行命令的通道,所以取不了数据 ——
|
|
351
|
+
readonly 'env.fix.whyShell': "工作台拿不到执行命令的通道,所以取不了数据 —— 这一步你装不了,需要有人处理后台环境。";
|
|
344
352
|
readonly 'env.fix.step': "在终端里运行下面这条命令,装好之后点「重试」:";
|
|
345
353
|
readonly 'env.fix.stepPath': "新开一个终端窗口(或确认 npm 的全局 bin 目录在 PATH 里),然后点「重试」。";
|
|
346
354
|
readonly 'env.fix.stepShell': "重启一次工作台(或 dsh);如果反复出现,说明执行通道没配好。";
|
|
@@ -352,9 +360,9 @@ export declare const zh: {
|
|
|
352
360
|
readonly 'env.diy.ok': "可用";
|
|
353
361
|
readonly 'env.diy.short': "挂不起来";
|
|
354
362
|
readonly 'env.diy.hold': "DIY 模式挂不起来 —— 升级 dsh 后点「重试」,也可以先进工作台。";
|
|
355
|
-
readonly 'env.diy.why': "
|
|
356
|
-
readonly 'env.diy.rows': "这一代 dsh
|
|
357
|
-
readonly 'env.diy.noRow': "体检没在 dsh
|
|
363
|
+
readonly 'env.diy.why': "这台机器上的 dsh 比工作台验过的旧,DIY 模式挂不起来;面板和其它功能不受影响。升级 dsh 后重启再试。";
|
|
364
|
+
readonly 'env.diy.rows': "这一代 dsh 缺这几项:{rows}";
|
|
365
|
+
readonly 'env.diy.noRow': "体检没在 dsh 的模式名单里看到「工作台 DIY 模式」—— 多半是工作台这份安装没带上对应的模式补丁。";
|
|
358
366
|
readonly 'env.diy.step': "升级 dsh,然后重启一次工作台:";
|
|
359
367
|
readonly 'env.diy.continue': "先进入工作台";
|
|
360
368
|
readonly 'env.copyCommand': "复制命令";
|
|
@@ -390,6 +398,18 @@ export declare const zh: {
|
|
|
390
398
|
readonly 'board.title': "工作台面板";
|
|
391
399
|
readonly 'panel.conversation': "对话";
|
|
392
400
|
readonly 'panels.label': "全局面板";
|
|
401
|
+
readonly 'workbenchSettings.nav': "工作台设置";
|
|
402
|
+
readonly 'workbenchSettings.lead': "工作台自己这一侧的配置都收在这里。";
|
|
403
|
+
readonly 'sidebarEdition.nav': "会话列表";
|
|
404
|
+
readonly 'sidebarEdition.lead': "左栏整条用哪一套:官方 dsh 的,还是工作台自己的。";
|
|
405
|
+
readonly 'sidebarEdition.official': "官方";
|
|
406
|
+
readonly 'sidebarEdition.officialHint': "跟 dsh 官方一致、最稳:搜索、视图选项、显示更多、归档、添加工作区都齐,升级也不等我们适配。想省心就选它。";
|
|
407
|
+
readonly 'sidebarEdition.custom': "自定义";
|
|
408
|
+
readonly 'sidebarEdition.customHint': "为多项目工作流做的:项目下拉一屏一个项目,会话按最近更新排,两端淡出、跑马灯、工坊 DIY 新会话。项目多时更顺手。";
|
|
409
|
+
readonly 'sidebarEdition.saving': "配置中…";
|
|
410
|
+
readonly 'sidebarEdition.reloadRequired': "已写入。刷新页面后生效(不用重启工作台)。";
|
|
411
|
+
readonly 'sidebarEdition.reload': "刷新页面";
|
|
412
|
+
readonly 'sidebarEdition.failed': "这一档没写进去,再试一次。";
|
|
393
413
|
readonly 'configSync.nav': "配置同步";
|
|
394
414
|
readonly 'configSync.lead': "把另一个 profile 里显式配过的行搬过来 —— 来源随你选。";
|
|
395
415
|
readonly 'configSync.source': "来源";
|
|
@@ -412,8 +432,8 @@ export declare const zh: {
|
|
|
412
432
|
readonly 'configSync.code.expandAria': "展开差异(还有 {count} 行)";
|
|
413
433
|
readonly 'configSync.code.expand': "展开剩余 {count} 行";
|
|
414
434
|
readonly 'configSync.missing': "{pkg} 还没装:这一行搬过来也不会生效 —— 先 `dsh plugin --profile {profile} add {pkg}`,或在模块市场里装";
|
|
415
|
-
readonly 'configSync.apply': "同步选中的 {count}
|
|
416
|
-
readonly 'configSync.applyNone': "
|
|
435
|
+
readonly 'configSync.apply': "同步选中的 {count} 项";
|
|
436
|
+
readonly 'configSync.applyNone': "请选择同步内容";
|
|
417
437
|
readonly 'configSync.applying': "正在写入…";
|
|
418
438
|
readonly 'configSync.applied': "已写入工作台配置 · 已生效";
|
|
419
439
|
readonly 'configSync.appliedIds': "这次写进去:{ids}";
|
|
@@ -421,7 +441,7 @@ export declare const zh: {
|
|
|
421
441
|
readonly 'configSync.nothing': "没有需要同步的内容";
|
|
422
442
|
readonly 'configSync.unreadable': "读不到 {path}:{reason}";
|
|
423
443
|
readonly 'configSync.noSource': "这台机器上只有工作台这一个 profile,没有可同步的来源";
|
|
424
|
-
readonly 'configSync.emptyProviders': "工作台还没有任何模型供应商 —— 去「配置同步」从某个 profile
|
|
444
|
+
readonly 'configSync.emptyProviders': "工作台还没有任何模型供应商 —— 去「配置同步」从某个 profile 把模型供应商那几行搬过来,或自己去「模型」里配。";
|
|
425
445
|
readonly 'configSync.failed': "同步没成功,再试一次。";
|
|
426
446
|
readonly 'debug.workspace': "这个工作区";
|
|
427
447
|
readonly 'debug.status': "「{title}」调试中";
|
package/dist/i18n/zh.js
CHANGED
|
@@ -87,7 +87,7 @@ export const zh = {
|
|
|
87
87
|
'panels.buildModule': '造一个模块',
|
|
88
88
|
'panels.failed': '改配置失败了,再试一次。',
|
|
89
89
|
'panels.dragHint': '拖动调整顺序',
|
|
90
|
-
'panels.unknownStep': '
|
|
90
|
+
'panels.unknownStep': '这一块还没有面板',
|
|
91
91
|
'panels.labelWithHint': '{label}({hint})',
|
|
92
92
|
'panels.hintJoin': ';',
|
|
93
93
|
'panels.dep.failed': '⚠ 起不来',
|
|
@@ -122,6 +122,14 @@ export const zh = {
|
|
|
122
122
|
'panels.market.install': '安装',
|
|
123
123
|
'panels.market.update': '更新',
|
|
124
124
|
'panels.market.swapSlow': '还没换上:可能网慢或没装上。再点一次「更新」;一直这样就把 dsh 重启一遍。',
|
|
125
|
+
'panels.market.updateNoChange': '没换成:点下去是 {from},跑完盘上还是这一版;源上最新是 {latest}。',
|
|
126
|
+
'panels.market.updateUnknownVersion': '(问不到)',
|
|
127
|
+
'panels.market.updateGone': '没换成:更新跑完盘上读不到这个模块。',
|
|
128
|
+
'panels.market.updateRestored': '没换成:盘上已经读不到新版本,已把 {version} 装回去。',
|
|
129
|
+
'panels.market.updateBehind': '装上了 {installed},但源上最新是 {latest} —— 没更到最新,可以再点一次。',
|
|
130
|
+
'panels.market.selfUpdateFailed': '自更新没成:{reason}',
|
|
131
|
+
'panels.market.selfUpdateUnknown': '外部进程没留下原因(看 ~/.dsh/workbench/self-update.log)',
|
|
132
|
+
'panels.market.selfUpdateRolledBack': '没换成,已回滚到 {version}。',
|
|
125
133
|
'panels.market.uninstall': '卸载',
|
|
126
134
|
'panels.market.uninstallLabel': '卸载 {name}',
|
|
127
135
|
'panels.market.installing': '正在安装…',
|
|
@@ -152,7 +160,7 @@ export const zh = {
|
|
|
152
160
|
'panels.market.pluginKeptUnsure': '文件先留着:这台机器上还有模块看不出用了什么,说不准谁在用它。',
|
|
153
161
|
'panels.market.pluginKeptHeld': '文件留着:你自己装的那一份,模块放手不动它。',
|
|
154
162
|
'panels.market.pluginKeptUnnamed': '文件先留着:看不出这是哪个插件,说不准谁在用它。',
|
|
155
|
-
'panels.market.pluginBroken': '
|
|
163
|
+
'panels.market.pluginBroken': '这份插件装坏了:认不出它是什么。可以先卸载,再让 agent 按包名重装一次。',
|
|
156
164
|
'panels.market.restartNeeded': '新版装好了,重启一次才生效。',
|
|
157
165
|
'panels.market.foot': '装好后到那个项目的面板页勾选它,模块才会出现。',
|
|
158
166
|
'panels.market.recheck': '重新检查更新',
|
|
@@ -197,7 +205,7 @@ export const zh = {
|
|
|
197
205
|
'panels.market.add.cancelledTitle': '已取消',
|
|
198
206
|
'panels.market.add.failureNetworkHost': '无法连接 {host}。Git 地址和 .tgz 直链不经过安装源,需要本机能直接访问它或配置代理;如果这个模块也发布到了 npm,请改填包名。',
|
|
199
207
|
'panels.market.add.problemInvalid': '无法识别这个包名或地址:{reason}',
|
|
200
|
-
'panels.market.add.problemInstalled': '
|
|
208
|
+
'panels.market.add.problemInstalled': '这个模块已经装过了(要换版本请带上 @版本)',
|
|
201
209
|
'panels.market.add.problemNotFound': '未找到相关模块',
|
|
202
210
|
'panels.market.add.problemNotPackage': '该路径不存在或不是有效的模块包',
|
|
203
211
|
'panels.market.add.problemNotBundle': '这个包装不进这里:{reason}。这个入口按包名认工作台模块和 opencli 插件,两种都能装;但 git 地址和 tarball 判断不出它是什么 —— 要是它其实是这两样之一,请改填包名或本地目录。',
|
|
@@ -218,7 +226,7 @@ export const zh = {
|
|
|
218
226
|
'panels.market.add.failureIntegrity': '下载的安装包校验失败',
|
|
219
227
|
'panels.market.add.failureTimeout': '安装超时',
|
|
220
228
|
'panels.market.add.failurePnpmMissing': '没有找到 pnpm,无法安装',
|
|
221
|
-
'panels.market.add.failureInstalled': '
|
|
229
|
+
'panels.market.add.failureInstalled': '它已经装在这份工作台里了。同一个包不能就地覆盖,得先卸载再装;这次卸载也没成功。',
|
|
222
230
|
'panels.market.add.failureGeneric': '安装过程中出错,原因见安装详情',
|
|
223
231
|
'panels.market.add.approveTitle': '需要你允许安装脚本',
|
|
224
232
|
'panels.market.add.approveCaution': '只允许你信得过的包:安装脚本会以你的权限在这台机器上运行。',
|
|
@@ -256,7 +264,7 @@ export const zh = {
|
|
|
256
264
|
'panels.market.add.doneApplied': '装好了,已经生效。',
|
|
257
265
|
'panels.market.add.doneRestart': '装好了,重启一次才生效。',
|
|
258
266
|
'panels.market.add.restartWhy': '为什么这一版要重启:{reason}',
|
|
259
|
-
'panels.market.add.restartWhy.no-hmr': '
|
|
267
|
+
'panels.market.add.restartWhy.no-hmr': '这个配置只在启动时应用改动(没开热更新)',
|
|
260
268
|
'panels.market.add.restartWhy.package-moved': '某个已经装着的包换到了新的目录,或者这一下换掉了 dsh 自己提供的那份',
|
|
261
269
|
'panels.market.add.restartWhy.host-module': '这一下动到了 dsh 自己加载的模块',
|
|
262
270
|
'panels.market.add.restartWhy.unmanaged-plugin': '这一下动到了插件清单之外正在跑的插件',
|
|
@@ -271,17 +279,17 @@ export const zh = {
|
|
|
271
279
|
'panels.market.add.remove': '移除它',
|
|
272
280
|
'panels.market.add.problem.invalidSpec': '这个写法不认:不能是空的,也不能以横杠开头。',
|
|
273
281
|
'panels.market.add.problem.alreadyInstalled': '这个包已经在 profile 里了(要换版本请带上 @版本)。',
|
|
274
|
-
'panels.market.add.problem.notFound': '
|
|
275
|
-
'panels.market.add.problem.notAPackage': '
|
|
276
|
-
'panels.market.add.problem.notABundle': '它是一个 npm 包,但不是 dsh
|
|
277
|
-
'panels.market.add.problem.network': '
|
|
278
|
-
'panels.market.add.problem.unknown': '
|
|
282
|
+
'panels.market.add.problem.notFound': '源上没有这个包。换个包名或版本再试。',
|
|
283
|
+
'panels.market.add.problem.notAPackage': '这个位置没有包。选一个包含 package.json 的目录。',
|
|
284
|
+
'panels.market.add.problem.notABundle': '它是一个 npm 包,但不是 dsh 插件包(缺 dsh 的接线声明)。',
|
|
285
|
+
'panels.market.add.problem.network': '源连不上。检查网络后重试。',
|
|
286
|
+
'panels.market.add.problem.unknown': '预检没通过(原因未知)。展开安装详情看原始输出,或重试。',
|
|
279
287
|
'panels.market.add.reason.invalidSpec': '写法不认',
|
|
280
288
|
'panels.market.add.reason.incompatible': '它要的 dsh 版本和这台机器上的不一致',
|
|
281
289
|
'panels.market.add.reason.notBundle': '它不是一个 dsh 插件包',
|
|
282
290
|
'panels.market.add.reason.notRemovable': '它是安装自带的组合包,不能卸',
|
|
283
291
|
'panels.market.add.reason.bundleInUse': '还有东西在用它,卸不掉',
|
|
284
|
-
'panels.market.add.reason.stopProfile': '
|
|
292
|
+
'panels.market.add.reason.stopProfile': '这个配置没开热更新,得先停掉进程',
|
|
285
293
|
'panels.market.add.reason.staleApproval': '要允许的安装脚本已经变了,重新来一次',
|
|
286
294
|
'panels.market.add.reason.operationError': 'pnpm 执行出错(详情见安装输出)',
|
|
287
295
|
'panels.market.add.reason.buildBlocked': 'pnpm 拦下了安装脚本',
|
|
@@ -336,11 +344,11 @@ export const zh = {
|
|
|
336
344
|
'env.bridge.extensionLink': '去 Chrome 应用商店装扩展',
|
|
337
345
|
'env.bridge.profile': '连上了多个浏览器 profile,但没选默认的那个:先看有哪些(下面这条命令),再选一个。',
|
|
338
346
|
'env.bridge.stale': '默认的浏览器 profile 已经失效(它记的是上一次的扩展实例):重新选一个。',
|
|
339
|
-
'env.bridge.unknown': '
|
|
347
|
+
'env.bridge.unknown': '没认出是哪种问题:展开原始输出,按里面的步骤处理。',
|
|
340
348
|
'env.fix.title': '怎么解决',
|
|
341
349
|
'env.fix.why': '工作台用它自己那份 opencli(与你在终端里那套分开装,互不影响),这台机器上还没装好它。',
|
|
342
350
|
'env.fix.whyPath': 'opencli 装上了,但当前环境还找不到它 —— 通常是 PATH 或终端会话的问题。',
|
|
343
|
-
'env.fix.whyShell': '工作台拿不到执行命令的通道,所以取不了数据 ——
|
|
351
|
+
'env.fix.whyShell': '工作台拿不到执行命令的通道,所以取不了数据 —— 这一步你装不了,需要有人处理后台环境。',
|
|
344
352
|
'env.fix.step': '在终端里运行下面这条命令,装好之后点「重试」:',
|
|
345
353
|
'env.fix.stepPath': '新开一个终端窗口(或确认 npm 的全局 bin 目录在 PATH 里),然后点「重试」。',
|
|
346
354
|
'env.fix.stepShell': '重启一次工作台(或 dsh);如果反复出现,说明执行通道没配好。',
|
|
@@ -352,9 +360,9 @@ export const zh = {
|
|
|
352
360
|
'env.diy.ok': '可用',
|
|
353
361
|
'env.diy.short': '挂不起来',
|
|
354
362
|
'env.diy.hold': 'DIY 模式挂不起来 —— 升级 dsh 后点「重试」,也可以先进工作台。',
|
|
355
|
-
'env.diy.why': '
|
|
356
|
-
'env.diy.rows': '这一代 dsh
|
|
357
|
-
'env.diy.noRow': '体检没在 dsh
|
|
363
|
+
'env.diy.why': '这台机器上的 dsh 比工作台验过的旧,DIY 模式挂不起来;面板和其它功能不受影响。升级 dsh 后重启再试。',
|
|
364
|
+
'env.diy.rows': '这一代 dsh 缺这几项:{rows}',
|
|
365
|
+
'env.diy.noRow': '体检没在 dsh 的模式名单里看到「工作台 DIY 模式」—— 多半是工作台这份安装没带上对应的模式补丁。',
|
|
358
366
|
'env.diy.step': '升级 dsh,然后重启一次工作台:',
|
|
359
367
|
'env.diy.continue': '先进入工作台',
|
|
360
368
|
'env.copyCommand': '复制命令',
|
|
@@ -390,6 +398,18 @@ export const zh = {
|
|
|
390
398
|
'board.title': '工作台面板',
|
|
391
399
|
'panel.conversation': '对话',
|
|
392
400
|
'panels.label': '全局面板',
|
|
401
|
+
'workbenchSettings.nav': '工作台设置',
|
|
402
|
+
'workbenchSettings.lead': '工作台自己这一侧的配置都收在这里。',
|
|
403
|
+
'sidebarEdition.nav': '会话列表',
|
|
404
|
+
'sidebarEdition.lead': '左栏整条用哪一套:官方 dsh 的,还是工作台自己的。',
|
|
405
|
+
'sidebarEdition.official': '官方',
|
|
406
|
+
'sidebarEdition.officialHint': '跟 dsh 官方一致、最稳:搜索、视图选项、显示更多、归档、添加工作区都齐,升级也不等我们适配。想省心就选它。',
|
|
407
|
+
'sidebarEdition.custom': '自定义',
|
|
408
|
+
'sidebarEdition.customHint': '为多项目工作流做的:项目下拉一屏一个项目,会话按最近更新排,两端淡出、跑马灯、工坊 DIY 新会话。项目多时更顺手。',
|
|
409
|
+
'sidebarEdition.saving': '配置中…',
|
|
410
|
+
'sidebarEdition.reloadRequired': '已写入。刷新页面后生效(不用重启工作台)。',
|
|
411
|
+
'sidebarEdition.reload': '刷新页面',
|
|
412
|
+
'sidebarEdition.failed': '这一档没写进去,再试一次。',
|
|
393
413
|
'configSync.nav': '配置同步',
|
|
394
414
|
'configSync.lead': '把另一个 profile 里显式配过的行搬过来 —— 来源随你选。',
|
|
395
415
|
'configSync.source': '来源',
|
|
@@ -412,8 +432,8 @@ export const zh = {
|
|
|
412
432
|
'configSync.code.expandAria': '展开差异(还有 {count} 行)',
|
|
413
433
|
'configSync.code.expand': '展开剩余 {count} 行',
|
|
414
434
|
'configSync.missing': '{pkg} 还没装:这一行搬过来也不会生效 —— 先 `dsh plugin --profile {profile} add {pkg}`,或在模块市场里装',
|
|
415
|
-
'configSync.apply': '同步选中的 {count}
|
|
416
|
-
'configSync.applyNone': '
|
|
435
|
+
'configSync.apply': '同步选中的 {count} 项',
|
|
436
|
+
'configSync.applyNone': '请选择同步内容',
|
|
417
437
|
'configSync.applying': '正在写入…',
|
|
418
438
|
'configSync.applied': '已写入工作台配置 · 已生效',
|
|
419
439
|
'configSync.appliedIds': '这次写进去:{ids}',
|
|
@@ -421,7 +441,7 @@ export const zh = {
|
|
|
421
441
|
'configSync.nothing': '没有需要同步的内容',
|
|
422
442
|
'configSync.unreadable': '读不到 {path}:{reason}',
|
|
423
443
|
'configSync.noSource': '这台机器上只有工作台这一个 profile,没有可同步的来源',
|
|
424
|
-
'configSync.emptyProviders': '工作台还没有任何模型供应商 —— 去「配置同步」从某个 profile
|
|
444
|
+
'configSync.emptyProviders': '工作台还没有任何模型供应商 —— 去「配置同步」从某个 profile 把模型供应商那几行搬过来,或自己去「模型」里配。',
|
|
425
445
|
'configSync.failed': '同步没成功,再试一次。',
|
|
426
446
|
'debug.workspace': '这个工作区',
|
|
427
447
|
'debug.status': '「{title}」调试中',
|
package/dist/index.d.ts
CHANGED
|
@@ -50,6 +50,6 @@ export * from './lib/blocker-action.js';
|
|
|
50
50
|
export * from './lib/board-fact.js';
|
|
51
51
|
export * from './lib/busy.js';
|
|
52
52
|
export * from './lib/form-problem.js';
|
|
53
|
-
export * from './lib/react.js';
|
|
53
|
+
export * from './lib/react-types.js';
|
|
54
54
|
export * from './lib/text.js';
|
|
55
55
|
export * from './lib/ui.js';
|
package/dist/index.js
CHANGED
|
@@ -50,6 +50,6 @@ export * from './lib/blocker-action.js';
|
|
|
50
50
|
export * from './lib/board-fact.js';
|
|
51
51
|
export * from './lib/busy.js';
|
|
52
52
|
export * from './lib/form-problem.js';
|
|
53
|
-
export * from './lib/react.js';
|
|
53
|
+
export * from './lib/react-types.js';
|
|
54
54
|
export * from './lib/text.js';
|
|
55
55
|
export * from './lib/ui.js';
|
|
@@ -18,18 +18,3 @@ export interface BlockerLabelState {
|
|
|
18
18
|
readonly running: string | null;
|
|
19
19
|
readonly copied: string | null;
|
|
20
20
|
}
|
|
21
|
-
/**
|
|
22
|
-
* 这颗钮此刻该不该按成等待态:这一轮忙还没收,或有一支正在跑。
|
|
23
|
-
* @param busy - 这一轮忙是不是还在。
|
|
24
|
-
* @param running - 正在跑的那一支的 label;没有就给 `null`。
|
|
25
|
-
* @returns 该等待给 `true`,否则 `false`。
|
|
26
|
-
*/
|
|
27
|
-
export declare function blockerPending(busy: boolean, running: string | null): boolean;
|
|
28
|
-
/**
|
|
29
|
-
* 这颗钮此刻该显示什么字:正在重试说「重试中…」,正在跑的那一支说「修复中…」,刚复制过的说「已复制」,其余原样。
|
|
30
|
-
* @param action - 这颗钮的形状(行为 + 平时文案)。
|
|
31
|
-
* @param state - 此刻的运行态。
|
|
32
|
-
* @param t - i18n 取词函数。
|
|
33
|
-
* @returns 要显示的文案;三种临时态都不成立时就是 `action.label`。
|
|
34
|
-
*/
|
|
35
|
-
export declare function blockerActionLabel(action: BlockerActionShape, state: BlockerLabelState, t: BlockerLabelTranslate): string;
|