@dsh-workbench/shared 1.0.0-beta.0 → 1.0.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/components/FormNodes.js +5 -1
- package/dist/components/FormRows.css +1 -0
- package/dist/components/FormRows.d.ts +4 -2
- package/dist/components/FormRows.js +5 -4
- package/dist/config/constants.d.ts +0 -2
- package/dist/config/constants.js +0 -5
- package/dist/contract/command.d.ts +22 -0
- package/dist/contract/command.js +1 -0
- package/dist/contract/data.d.ts +2 -1
- package/dist/contract/extension.d.ts +14 -0
- package/dist/contract/extension.js +1 -0
- package/dist/contract/git.d.ts +38 -0
- package/dist/contract/git.js +1 -0
- package/dist/contract/lib.d.ts +4 -0
- package/dist/contract/lib.js +1 -0
- package/dist/contract/protocol/config-sync.d.ts +1 -21
- package/dist/contract/protocol/market-index.d.ts +1 -0
- package/dist/contract/protocol/profile-create.d.ts +0 -3
- package/dist/host/adapter-set.js +1 -0
- package/dist/host/adapters.d.ts +6 -0
- package/dist/host/extension.d.ts +7 -0
- package/dist/host/extension.js +39 -0
- package/dist/host/git.d.ts +2 -52
- package/dist/host/git.js +1 -64
- package/dist/host/http.js +1 -1
- package/dist/host/market-index.js +3 -44
- package/dist/host/port-types.d.ts +1 -0
- package/dist/host/release-packages.generated.d.ts +1 -0
- package/dist/host/release-packages.generated.js +10 -0
- package/dist/host/tool-kit.d.ts +0 -6
- package/dist/host/tool-kit.js +0 -22
- package/dist/host/unit-face.d.ts +7 -0
- package/dist/host/version-range.js +7 -67
- package/dist/host/version.d.ts +3 -2
- package/dist/host/version.js +17 -19
- package/dist/host.d.ts +6 -0
- package/dist/host.js +6 -0
- package/dist/i18n/en.js +3 -1
- package/dist/i18n/index.d.ts +9 -21
- package/dist/i18n/settings.d.ts +5 -19
- package/dist/i18n/settings.js +7 -35
- package/dist/i18n/zh.d.ts +8 -20
- package/dist/i18n/zh.js +3 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.js +4 -0
- package/dist/lib/version.d.ts +4 -0
- package/dist/lib/version.js +21 -0
- package/dist/testing/git.d.ts +3 -0
- package/dist/testing/git.js +36 -0
- package/package.json +6 -4
- package/src/components/Form.test.tsx +6 -0
- package/src/components/FormNodes.tsx +6 -1
- package/src/components/FormRows.css +1 -0
- package/src/components/FormRows.test.tsx +30 -0
- package/src/components/FormRows.tsx +9 -5
- package/src/config/constants.ts +0 -6
- package/src/contract/command.ts +25 -0
- package/src/contract/data.ts +2 -1
- package/src/contract/extension.ts +20 -0
- package/src/contract/git.ts +20 -0
- package/src/contract/lib.ts +5 -0
- package/src/contract/protocol/config-sync.ts +1 -24
- package/src/contract/protocol/market-index.ts +1 -0
- package/src/contract/protocol/profile-create.ts +0 -3
- package/src/host/adapter-set.ts +1 -0
- package/src/host/adapters.ts +6 -0
- package/src/host/extension.test.ts +55 -0
- package/src/host/extension.ts +57 -0
- package/src/host/git.ts +6 -92
- package/src/host/http.ts +1 -1
- package/src/host/market-index.ts +3 -33
- package/src/host/port-types.ts +1 -0
- package/src/host/release-packages.generated.ts +10 -0
- package/src/host/tool-kit.ts +0 -35
- package/src/host/unit-face.ts +7 -0
- package/src/host/version-range.ts +6 -64
- package/src/host/version.ts +18 -18
- package/src/host.ts +6 -0
- package/src/i18n/en.ts +3 -1
- package/src/i18n/settings.ts +7 -35
- package/src/i18n/zh.ts +3 -1
- package/src/index.ts +4 -0
|
@@ -1,73 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
function readable(version) {
|
|
3
|
-
return compareVersions(version, '0.0.0') !== undefined;
|
|
4
|
-
}
|
|
5
|
-
function segmentsOf(version) {
|
|
6
|
-
if (!readable(version))
|
|
7
|
-
return undefined;
|
|
8
|
-
return version.split('.').map((part) => Number.parseInt(part, 10));
|
|
9
|
-
}
|
|
10
|
-
function caretUpper(base) {
|
|
11
|
-
const [major = 0, minor = 0, patch = 0] = base;
|
|
12
|
-
if (major > 0)
|
|
13
|
-
return `${major + 1}.0.0`;
|
|
14
|
-
return minor > 0 ? `0.${minor + 1}.0` : `0.0.${patch + 1}`;
|
|
15
|
-
}
|
|
16
|
-
function tildeUpper(base) {
|
|
17
|
-
const [major = 0, minor = 0] = base;
|
|
18
|
-
return `${major}.${minor + 1}.0`;
|
|
19
|
-
}
|
|
20
|
-
function comparator(token, version) {
|
|
21
|
-
const match = /^(>=|<=|>|<|=|\^|~)?\s*(.+)$/.exec(token.trim());
|
|
22
|
-
if (match === null)
|
|
23
|
-
return undefined;
|
|
24
|
-
const [, operator = '', raw = ''] = match;
|
|
25
|
-
const base = segmentsOf(raw.trim());
|
|
26
|
-
if (base === undefined)
|
|
27
|
-
return undefined;
|
|
28
|
-
const at = (other) => compareVersions(version, other);
|
|
29
|
-
switch (operator) {
|
|
30
|
-
case '^':
|
|
31
|
-
return (at(raw) ?? -1) >= 0 && (at(caretUpper(base)) ?? 1) < 0;
|
|
32
|
-
case '~':
|
|
33
|
-
return (at(raw) ?? -1) >= 0 && (at(tildeUpper(base)) ?? 1) < 0;
|
|
34
|
-
default:
|
|
35
|
-
break;
|
|
36
|
-
}
|
|
37
|
-
const compared = at(raw.trim());
|
|
38
|
-
if (compared === undefined)
|
|
39
|
-
return undefined;
|
|
40
|
-
switch (operator) {
|
|
41
|
-
case '>=':
|
|
42
|
-
return compared >= 0;
|
|
43
|
-
case '<=':
|
|
44
|
-
return compared <= 0;
|
|
45
|
-
case '>':
|
|
46
|
-
return compared > 0;
|
|
47
|
-
case '<':
|
|
48
|
-
return compared < 0;
|
|
49
|
-
case '=':
|
|
50
|
-
case '':
|
|
51
|
-
return compared === 0;
|
|
52
|
-
default:
|
|
53
|
-
return undefined;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
1
|
+
import semver from 'semver';
|
|
56
2
|
export function checkVersionRange(contract, version) {
|
|
57
3
|
const spec = contract?.trim() ?? '';
|
|
58
4
|
if (spec === '')
|
|
59
5
|
return 'satisfied';
|
|
60
|
-
|
|
6
|
+
const range = semver.validRange(spec);
|
|
7
|
+
if (range === null)
|
|
61
8
|
return 'malformed';
|
|
62
|
-
const
|
|
63
|
-
if (
|
|
64
|
-
return '
|
|
65
|
-
|
|
66
|
-
const verdict = comparator(token, version);
|
|
67
|
-
if (verdict === undefined)
|
|
68
|
-
return 'malformed';
|
|
69
|
-
if (!verdict)
|
|
70
|
-
return 'unsatisfied';
|
|
71
|
-
}
|
|
72
|
-
return 'satisfied';
|
|
9
|
+
const parsed = semver.coerce(version);
|
|
10
|
+
if (parsed === null)
|
|
11
|
+
return 'malformed';
|
|
12
|
+
return semver.satisfies(parsed, range) ? 'satisfied' : 'unsatisfied';
|
|
73
13
|
}
|
package/dist/host/version.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
export declare function
|
|
2
|
-
export declare function
|
|
1
|
+
export declare function compareVersions(left: string, right: string): number | undefined;
|
|
2
|
+
export declare function isValidVersion(value: string): boolean;
|
|
3
3
|
export declare function isNewerVersion(latest: string, installed: string): boolean;
|
|
4
|
+
export declare function runningVersionOf(moduleUrl: string): string | undefined;
|
package/dist/host/version.js
CHANGED
|
@@ -1,25 +1,14 @@
|
|
|
1
1
|
import { readFileSync } from 'node:fs';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
catch {
|
|
2
|
+
import semver from 'semver';
|
|
3
|
+
export function compareVersions(left, right) {
|
|
4
|
+
const a = semver.valid(left.trim());
|
|
5
|
+
const b = semver.valid(right.trim());
|
|
6
|
+
if (a === null || b === null)
|
|
8
7
|
return undefined;
|
|
9
|
-
|
|
8
|
+
return semver.compare(a, b);
|
|
10
9
|
}
|
|
11
|
-
export function
|
|
12
|
-
|
|
13
|
-
const nb = b.split('.').map((part) => Number.parseInt(part, 10));
|
|
14
|
-
if (na.some(Number.isNaN) || nb.some(Number.isNaN))
|
|
15
|
-
return undefined;
|
|
16
|
-
for (let index = 0; index < Math.max(na.length, nb.length); index += 1) {
|
|
17
|
-
const left = na[index] ?? 0;
|
|
18
|
-
const right = nb[index] ?? 0;
|
|
19
|
-
if (left !== right)
|
|
20
|
-
return left > right ? 1 : -1;
|
|
21
|
-
}
|
|
22
|
-
return 0;
|
|
10
|
+
export function isValidVersion(value) {
|
|
11
|
+
return semver.valid(value.trim()) !== null;
|
|
23
12
|
}
|
|
24
13
|
export function isNewerVersion(latest, installed) {
|
|
25
14
|
if (latest === installed)
|
|
@@ -27,3 +16,12 @@ export function isNewerVersion(latest, installed) {
|
|
|
27
16
|
const compared = compareVersions(latest, installed);
|
|
28
17
|
return compared === undefined ? true : compared > 0;
|
|
29
18
|
}
|
|
19
|
+
export function runningVersionOf(moduleUrl) {
|
|
20
|
+
try {
|
|
21
|
+
const read = JSON.parse(readFileSync(new URL('../../package.json', moduleUrl), 'utf8'));
|
|
22
|
+
return typeof read.version === 'string' && read.version !== '' ? read.version : undefined;
|
|
23
|
+
}
|
|
24
|
+
catch {
|
|
25
|
+
return undefined;
|
|
26
|
+
}
|
|
27
|
+
}
|
package/dist/host.d.ts
CHANGED
|
@@ -3,6 +3,10 @@ export * from './api/context-ref.js';
|
|
|
3
3
|
export * from './contract/unit.js';
|
|
4
4
|
export * from './contract/needs.js';
|
|
5
5
|
export * from './contract/data.js';
|
|
6
|
+
export * from './contract/extension.js';
|
|
7
|
+
export * from './contract/lib.js';
|
|
8
|
+
export * from './contract/git.js';
|
|
9
|
+
export * from './contract/command.js';
|
|
6
10
|
export * from './contract/unit-board.js';
|
|
7
11
|
export * from './contract/workbench-contract.js';
|
|
8
12
|
export * from './contract/blocker.js';
|
|
@@ -41,6 +45,7 @@ export * from './host/provision.js';
|
|
|
41
45
|
export * from './host/channel-plugin.js';
|
|
42
46
|
export * from './host/recipe.js';
|
|
43
47
|
export * from './host/recipe-rules.js';
|
|
48
|
+
export * from './host/release-packages.generated.js';
|
|
44
49
|
export * from './contract/unit-capability.js';
|
|
45
50
|
export * from './contract/plugin-source.js';
|
|
46
51
|
export * from './contract/cli.js';
|
|
@@ -63,6 +68,7 @@ export * from './host/patch.js';
|
|
|
63
68
|
export * from './host/adapters.js';
|
|
64
69
|
export * from './host/adapter-set.js';
|
|
65
70
|
export * from './host/needs.js';
|
|
71
|
+
export * from './host/extension.js';
|
|
66
72
|
export * from './host/port-types.js';
|
|
67
73
|
export * from './host/version-range.js';
|
|
68
74
|
export * from './host/market-index.js';
|
package/dist/host.js
CHANGED
|
@@ -3,6 +3,10 @@ export * from './api/context-ref.js';
|
|
|
3
3
|
export * from './contract/unit.js';
|
|
4
4
|
export * from './contract/needs.js';
|
|
5
5
|
export * from './contract/data.js';
|
|
6
|
+
export * from './contract/extension.js';
|
|
7
|
+
export * from './contract/lib.js';
|
|
8
|
+
export * from './contract/git.js';
|
|
9
|
+
export * from './contract/command.js';
|
|
6
10
|
export * from './contract/unit-board.js';
|
|
7
11
|
export * from './contract/workbench-contract.js';
|
|
8
12
|
export * from './contract/blocker.js';
|
|
@@ -41,6 +45,7 @@ export * from './host/provision.js';
|
|
|
41
45
|
export * from './host/channel-plugin.js';
|
|
42
46
|
export * from './host/recipe.js';
|
|
43
47
|
export * from './host/recipe-rules.js';
|
|
48
|
+
export * from './host/release-packages.generated.js';
|
|
44
49
|
export * from './contract/unit-capability.js';
|
|
45
50
|
export * from './contract/plugin-source.js';
|
|
46
51
|
export * from './contract/cli.js';
|
|
@@ -63,6 +68,7 @@ export * from './host/patch.js';
|
|
|
63
68
|
export * from './host/adapters.js';
|
|
64
69
|
export * from './host/adapter-set.js';
|
|
65
70
|
export * from './host/needs.js';
|
|
71
|
+
export * from './host/extension.js';
|
|
66
72
|
export * from './host/port-types.js';
|
|
67
73
|
export * from './host/version-range.js';
|
|
68
74
|
export * from './host/market-index.js';
|
package/dist/i18n/en.js
CHANGED
|
@@ -267,6 +267,7 @@ export const en = {
|
|
|
267
267
|
'panels.discover.loading': 'Reading the index',
|
|
268
268
|
'panels.discover.lead': 'Browse modules from an index source; install and go.',
|
|
269
269
|
'panels.discover.addSource': 'Add',
|
|
270
|
+
'panels.discover.addingSource': 'Adding…',
|
|
270
271
|
'panels.discover.addFirstSource': 'Add index source',
|
|
271
272
|
'panels.discover.removeSource': 'Remove',
|
|
272
273
|
'panels.discover.removeSourceNamed': 'Remove {url}',
|
|
@@ -367,7 +368,6 @@ export const en = {
|
|
|
367
368
|
'panels.discover.tabOverview': 'Overview',
|
|
368
369
|
'panels.discover.tabReadme': 'Readme',
|
|
369
370
|
'panels.discover.tabChangelog': 'Changelog',
|
|
370
|
-
'panels.discover.docTitle': '{kind} for {version}',
|
|
371
371
|
'panels.discover.docReadme': 'readme',
|
|
372
372
|
'panels.discover.docChangelog': 'changelog',
|
|
373
373
|
'panels.discover.docLoading': 'Reading…',
|
|
@@ -604,6 +604,8 @@ export const en = {
|
|
|
604
604
|
'approval.publish.module': 'Module',
|
|
605
605
|
'approval.publish.target': 'Target',
|
|
606
606
|
'approval.publish.version': 'Version',
|
|
607
|
+
'approval.publish.author': 'Author',
|
|
608
|
+
'approval.publish.authorMissing': 'unsigned (commits use the local git identity)',
|
|
607
609
|
'approval.publish.registry': 'Registry',
|
|
608
610
|
'approval.publish.repo': 'Repository',
|
|
609
611
|
'approval.publish.branch': 'Branch',
|
package/dist/i18n/index.d.ts
CHANGED
|
@@ -277,6 +277,7 @@ export declare const dictionaries: {
|
|
|
277
277
|
readonly 'panels.discover.loading': "正在读取索引";
|
|
278
278
|
readonly 'panels.discover.lead': "从索引源浏览模块;装上就能用。";
|
|
279
279
|
readonly 'panels.discover.addSource': "添加";
|
|
280
|
+
readonly 'panels.discover.addingSource': "正在添加…";
|
|
280
281
|
readonly 'panels.discover.addFirstSource': "添加索引源";
|
|
281
282
|
readonly 'panels.discover.removeSource': "移除";
|
|
282
283
|
readonly 'panels.discover.removeSourceNamed': "移除 {url}";
|
|
@@ -377,7 +378,6 @@ export declare const dictionaries: {
|
|
|
377
378
|
readonly 'panels.discover.tabOverview': "概览";
|
|
378
379
|
readonly 'panels.discover.tabReadme': "说明";
|
|
379
380
|
readonly 'panels.discover.tabChangelog': "更新日志";
|
|
380
|
-
readonly 'panels.discover.docTitle': "{version} 的{kind}";
|
|
381
381
|
readonly 'panels.discover.docReadme': "说明";
|
|
382
382
|
readonly 'panels.discover.docChangelog': "更新日志";
|
|
383
383
|
readonly 'panels.discover.docLoading': "正在读取…";
|
|
@@ -614,6 +614,8 @@ export declare const dictionaries: {
|
|
|
614
614
|
readonly 'approval.publish.module': "模块";
|
|
615
615
|
readonly 'approval.publish.target': "目标";
|
|
616
616
|
readonly 'approval.publish.version': "版本";
|
|
617
|
+
readonly 'approval.publish.author': "作者";
|
|
618
|
+
readonly 'approval.publish.authorMissing': "未署名(提交用本机 git 身份)";
|
|
617
619
|
readonly 'approval.publish.registry': "源";
|
|
618
620
|
readonly 'approval.publish.repo': "仓库";
|
|
619
621
|
readonly 'approval.publish.branch': "分支";
|
|
@@ -636,17 +638,13 @@ export declare const dictionaries: {
|
|
|
636
638
|
readonly 'markdown.copied': "已复制";
|
|
637
639
|
readonly 'markdown.footnotes': "脚注";
|
|
638
640
|
readonly 'profileCreate.nav': "新建工作台";
|
|
639
|
-
readonly 'profileCreate.lead': "以已有 profile
|
|
641
|
+
readonly 'profileCreate.lead': "以已有 profile 为模板,建一个独立的新工作台。会话 / 项目 / 附件跟 web 共用,这里只复制设置。建好后关掉当前实例,再启动新的。";
|
|
640
642
|
readonly 'profileCreate.name': "新工作台的名字";
|
|
641
643
|
readonly 'profileCreate.nameHint': "例如 wb2(只用字母、数字、点、下划线或短横线)";
|
|
642
644
|
readonly 'profileCreate.source': "来源 profile";
|
|
643
645
|
readonly 'profileCreate.current': "当前";
|
|
644
646
|
readonly 'profileCreate.copy': "从来源复制";
|
|
645
647
|
readonly 'profileCreate.settings': "设置(模型、主题等)";
|
|
646
|
-
readonly 'profileCreate.plugins': "本地插件文件";
|
|
647
|
-
readonly 'profileCreate.pluginsRequired': "设置里引用了,不能单独去掉";
|
|
648
|
-
readonly 'profileCreate.projects': "项目列表";
|
|
649
|
-
readonly 'profileCreate.sessions': "会话记录";
|
|
650
648
|
readonly 'profileCreate.create': "创建";
|
|
651
649
|
readonly 'profileCreate.creating': "正在创建…";
|
|
652
650
|
readonly 'profileCreate.created': "已建好 {profile}。";
|
|
@@ -657,25 +655,16 @@ export declare const dictionaries: {
|
|
|
657
655
|
readonly 'profileCreate.noProfiles': "这台机器上还没有可用的来源 profile。";
|
|
658
656
|
readonly 'profileCreate.failed': "创建没有成功,看看下面的输出。";
|
|
659
657
|
readonly 'configSync.nav': "配置同步";
|
|
660
|
-
readonly 'configSync.lead': "
|
|
658
|
+
readonly 'configSync.lead': "只同步「改已有插件的设置」的行;挂新插件的行不同步。会话 / 项目 / 附件本来就共用,不用同步。要整套新建工作台用「新建工作台」。";
|
|
661
659
|
readonly 'configSync.source': "来源";
|
|
662
660
|
readonly 'configSync.sourceBroken': "读不到它的配置";
|
|
663
|
-
readonly 'configSync.sourceRows': "{name} 这份里你有 {count}
|
|
661
|
+
readonly 'configSync.sourceRows': "{name} 这份里你有 {count} 行可同步";
|
|
664
662
|
readonly 'configSync.sourceDead': "读不到";
|
|
665
663
|
readonly 'configSync.refresh': "重新读一遍";
|
|
666
664
|
readonly 'configSync.loading': "正在读来源的配置…";
|
|
667
665
|
readonly 'configSync.readHint': "换个来源,或再读一遍。";
|
|
668
666
|
readonly 'configSync.tag.new': "新增";
|
|
669
667
|
readonly 'configSync.tag.differs': "差异";
|
|
670
|
-
readonly 'configSync.tag.asset': "缺文件";
|
|
671
|
-
readonly 'configSync.tag.fileDiffers': "文件不同";
|
|
672
|
-
readonly 'configSync.assetOnly': "设置内容一样,只差文件。";
|
|
673
|
-
readonly 'configSync.assetMissingOne': "还要 1 个文件:{path}";
|
|
674
|
-
readonly 'configSync.assetMissingMany': "还要 {count} 个文件:{path}";
|
|
675
|
-
readonly 'configSync.assetDiffers': "文件不一样:{path}";
|
|
676
|
-
readonly 'configSync.assetDiffersMany': "文件有差异:{path}({count} 个)";
|
|
677
|
-
readonly 'configSync.assetExternal': "这个文件搬不过来:{path}({reason})";
|
|
678
|
-
readonly 'configSync.assetOverwrite': "覆盖工作台里的同名文件";
|
|
679
668
|
readonly 'configSync.conflictNote': "应用后工作台这份会被来源覆盖";
|
|
680
669
|
readonly 'configSync.code.lang': "yaml";
|
|
681
670
|
readonly 'configSync.code.copy': "复制";
|
|
@@ -686,22 +675,21 @@ export declare const dictionaries: {
|
|
|
686
675
|
readonly 'configSync.code.collapseAria': "收起这一行的配置";
|
|
687
676
|
readonly 'configSync.code.expandAria': "展开差异(还有 {count} 行)";
|
|
688
677
|
readonly 'configSync.code.expand': "展开剩余 {count} 行";
|
|
689
|
-
readonly 'configSync.missing': "{pkg}
|
|
678
|
+
readonly 'configSync.missing': "{pkg} 还没装:这一行同步过来也不会生效 —— 先在模块市场里装它";
|
|
690
679
|
readonly 'configSync.apply': "同步选中的 {count} 项";
|
|
691
680
|
readonly 'configSync.applyNone': "请选择同步内容";
|
|
692
681
|
readonly 'configSync.applying': "正在写入…";
|
|
693
682
|
readonly 'configSync.applied': "已写入并检查通过";
|
|
694
683
|
readonly 'configSync.appliedUnverified': "已写入;重启后检查是否生效";
|
|
695
|
-
readonly 'configSync.appliedFiles': "复制了 {count} 个文件";
|
|
696
684
|
readonly 'configSync.appliedIds': "这次写进去:{ids}";
|
|
697
685
|
readonly 'configSync.skippedIds': "这几行工作台自己已有,没动:{ids}";
|
|
698
686
|
readonly 'configSync.nothing': "没有需要同步的内容";
|
|
699
687
|
readonly 'configSync.unreadable': "读不到 {path}:{reason}";
|
|
700
688
|
readonly 'configSync.noSource': "这台机器上只有工作台这一个 profile,没有可同步的来源";
|
|
701
|
-
readonly 'configSync.emptyProviders': "工作台还没有任何模型供应商 —— 去「配置同步」从某个 profile
|
|
689
|
+
readonly 'configSync.emptyProviders': "工作台还没有任何模型供应商 —— 去「配置同步」从某个 profile 把模型供应商那几行同步过来,或自己去「模型」里配。";
|
|
702
690
|
readonly 'configSync.failed': "同步没成功,再试一次。";
|
|
703
691
|
};
|
|
704
|
-
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.market.open" | "env.unit.failed" | "env.unit.failedHint" | "env.unit.unsupported" | "env.unit.unsupportedHint" | "env.unit.degraded" | "env.unit.degradedHint" | "env.unit.unchecked" | "env.unit.uncheckedHint" | "profileCreate.nav" | "profileCreate.lead" | "profileCreate.name" | "profileCreate.nameHint" | "profileCreate.source" | "profileCreate.current" | "profileCreate.copy" | "profileCreate.settings" | "profileCreate.plugins" | "profileCreate.pluginsRequired" | "profileCreate.projects" | "profileCreate.sessions" | "profileCreate.create" | "profileCreate.creating" | "profileCreate.created" | "profileCreate.command" | "profileCreate.readFailed" | "profileCreate.retry" | "profileCreate.reading" | "profileCreate.noProfiles" | "profileCreate.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.tag.asset" | "configSync.tag.fileDiffers" | "configSync.assetOnly" | "configSync.assetMissingOne" | "configSync.assetMissingMany" | "configSync.assetDiffers" | "configSync.assetDiffersMany" | "configSync.assetExternal" | "configSync.assetOverwrite" | "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.appliedUnverified" | "configSync.appliedFiles" | "configSync.appliedIds" | "configSync.skippedIds" | "configSync.nothing" | "configSync.unreadable" | "configSync.noSource" | "configSync.emptyProviders" | "configSync.failed" | "env.need.bin.missing" | "env.need.bin.hint" | "env.need.extension.missing" | "env.need.extension.outdated" | "env.need.extension.hint" | "env.need.lib.missing" | "env.need.lib.outdated" | "env.need.lib.unsatisfied" | "env.need.lib.hint" | "env.need.env.missing" | "env.need.env.hint" | "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.unchecked" | "panels.dep.missing" | "panels.dep.outdated" | "panels.dep.degraded" | "panels.dep.unsupported" | "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.uncheckedHint" | "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.removeSlow" | "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.needBinary" | "panels.market.needLib" | "panels.market.localMark" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.sectionPlugins" | "panels.market.moduleOutdated" | "panels.market.moduleRefused" | "panels.market.moduleRestartHint" | "panels.market.pendingRestart" | "panels.market.workbenchName" | "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.tabInstalled" | "panels.market.tabs" | "panels.tab.discover" | "panels.discover.loading" | "panels.discover.lead" | "panels.discover.addSource" | "panels.discover.addFirstSource" | "panels.discover.removeSource" | "panels.discover.removeSourceNamed" | "panels.discover.refresh" | "panels.discover.search" | "panels.discover.all" | "panels.discover.sourceLabel" | "panels.discover.sourceKind" | "panels.discover.sourceKindHttp" | "panels.discover.sourceKindGit" | "panels.discover.sourceUrl" | "panels.discover.sourcePlaceholder" | "panels.discover.sourceRef" | "panels.discover.sourcePath" | "panels.discover.sourceLocal" | "panels.discover.sourceLocalHint" | "panels.discover.save" | "panels.discover.cancel" | "panels.discover.retry" | "panels.discover.noSource" | "panels.discover.noSourceHint" | "panels.discover.sourcesFailed" | "panels.discover.unreadable" | "panels.discover.invalid" | "panels.discover.emptyRepo" | "panels.discover.missingIndex" | "panels.discover.initTitle" | "panels.discover.initCta" | "panels.discover.initWhat" | "panels.discover.initBranch" | "panels.discover.initBranchHint" | "panels.discover.initBranchBad" | "panels.discover.initOk" | "panels.discover.initBusy" | "panels.discover.initDone" | "panels.discover.stale" | "panels.discover.empty" | "panels.discover.noMatch" | "panels.discover.notInstalled" | "panels.discover.installed" | "panels.discover.installedVersion" | "panels.discover.update" | "panels.discover.badShell" | "panels.discover.badShellDetail" | "panels.discover.unverified" | "panels.discover.installing" | "panels.discover.installedDone" | "panels.discover.failed" | "panels.discover.expand" | "panels.discover.collapse" | "panels.discover.versionCount" | "panels.discover.sourceNpm" | "panels.discover.sourceNpmDefault" | "panels.discover.sourceGit" | "panels.discover.installVersion" | "panels.discover.confirmTitle" | "panels.discover.confirmDetail" | "panels.discover.confirmAck" | "panels.discover.confirmOk" | "panels.discover.confirmCancel" | "panels.discover.marketMenu" | "panels.discover.manageSources" | "panels.discover.sourcesTitle" | "panels.discover.sourcesIntro" | "panels.discover.sourcesLabel" | "panels.discover.sourceTrust" | "panels.discover.sourceDuplicate" | "panels.discover.sourceBadUrl" | "panels.discover.close" | "panels.discover.labelsMenu" | "panels.discover.labelsCount" | "panels.discover.tagsAll" | "panels.discover.sort" | "panels.discover.sortWith" | "panels.discover.sortRelevance" | "panels.discover.sortDefault" | "panels.discover.sortPublished" | "panels.discover.categoriesLabel" | "panels.discover.showMore" | "panels.discover.entryMeta" | "panels.discover.entryMetaAuthor" | "panels.discover.openEntry" | "panels.discover.cardInstall" | "panels.discover.cardInstalled" | "panels.discover.cardUpdate" | "panels.discover.cardBlocked" | "panels.discover.installTitle" | "panels.discover.installVersionTitle" | "panels.discover.openInstalled" | "panels.discover.noCompatibleVersion" | "panels.discover.detailBack" | "panels.discover.publishedAt" | "panels.discover.detailMarket" | "panels.discover.detailIncompatible" | "panels.discover.detailUnknown" | "panels.discover.detailSource" | "panels.discover.authorUnknown" | "panels.discover.tabOverview" | "panels.discover.tabReadme" | "panels.discover.tabChangelog" | "panels.discover.docTitle" | "panels.discover.docReadme" | "panels.discover.docChangelog" | "panels.discover.docLoading" | "panels.discover.docMissing" | "panels.discover.docUnavailable" | "panels.discover.docUnknownReason" | "panels.discover.detailTabs" | "panels.discover.factPackage" | "panels.discover.factRegistry" | "panels.discover.factRepository" | "panels.discover.factCommit" | "panels.discover.factDirectory" | "panels.discover.factPublished" | "panels.discover.factAuthor" | "panels.discover.factHomepage" | "panels.discover.factCategory" | "panels.discover.factLabels" | "panels.discover.factMarket" | "panels.discover.detailVersions" | "panels.discover.versionsLabel" | "panels.discover.tagRecommended" | "panels.discover.tagPrerelease" | "panels.discover.tagInstalled" | "panels.discover.tagIncompatible" | "panels.discover.tagUnknown" | "panels.discover.selected" | "panels.discover.done" | "panels.discover.installTrust" | "panels.discover.progress" | "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.update" | "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.toolchain.ok" | "env.toolchain.warn" | "env.opencli.ok" | "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.wake" | "env.wake.opening" | "env.wake.browserOpen" | "env.wake.noBrowser" | "env.wake.failed" | "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.toolchain" | "env.step.opencli" | "env.step.bridge" | "env.step.diy" | "env.step.warm" | "env.warm.done" | "env.warm.short" | "adapterSet.not-configured" | "adapterSet.no-profile" | "adapterSet.malformed" | "adapterSet.not-resolvable" | "adapterSet.import-failed" | "adapterSet.bad-export" | "adapterSet.factory-failed" | "adapterSet.incompatible-version" | "adapterSet.missing-member" | "env.unit.hint" | "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" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label" | "adapterSet.title" | "adapterSet.lead" | "adapterSet.active" | "adapterSet.defaults" | "adapterSet.failed" | "adapterSet.healthUnreadable" | "workbenchSettings.nav" | "workbenchSettings.lead" | "sidebarEdition.nav" | "sidebarEdition.lead" | "sidebarEdition.official" | "sidebarEdition.officialHint" | "sidebarEdition.custom" | "sidebarEdition.customHint" | "sidebarEdition.saving" | "sidebarEdition.reloadRequired" | "sidebarEdition.reload" | "sidebarEdition.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" | "approval.publish.module" | "approval.publish.target" | "approval.publish.version" | "approval.publish.registry" | "approval.publish.repo" | "approval.publish.branch" | "approval.publish.defaultBranch" | "approval.publish.artifacts" | "approval.publish.index" | "approval.publish.commits" | "approval.publish.twoCommits" | "approval.publish.reading" | "approval.publish.changelog" | "approval.publish.changelogMissing" | "approval.publish.targetAuto" | "approval.publish.targetTeam" | "approval.publish.targetPublic" | "approval.publish.targetTarball" | "approval.publish.targetGit" | "approval.publish.targetMarket" | "approval.publish.targetLocal" | "markdown.copy" | "markdown.copied" | "markdown.footnotes", string>;
|
|
692
|
+
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.market.open" | "env.unit.failed" | "env.unit.failedHint" | "env.unit.unsupported" | "env.unit.unsupportedHint" | "env.unit.degraded" | "env.unit.degradedHint" | "env.unit.unchecked" | "env.unit.uncheckedHint" | "profileCreate.nav" | "profileCreate.lead" | "profileCreate.name" | "profileCreate.nameHint" | "profileCreate.source" | "profileCreate.current" | "profileCreate.copy" | "profileCreate.settings" | "profileCreate.create" | "profileCreate.creating" | "profileCreate.created" | "profileCreate.command" | "profileCreate.readFailed" | "profileCreate.retry" | "profileCreate.reading" | "profileCreate.noProfiles" | "profileCreate.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.appliedUnverified" | "configSync.appliedIds" | "configSync.skippedIds" | "configSync.nothing" | "configSync.unreadable" | "configSync.noSource" | "configSync.emptyProviders" | "configSync.failed" | "env.need.bin.missing" | "env.need.bin.hint" | "env.need.extension.missing" | "env.need.extension.outdated" | "env.need.extension.hint" | "env.need.lib.missing" | "env.need.lib.outdated" | "env.need.lib.unsatisfied" | "env.need.lib.hint" | "env.need.env.missing" | "env.need.env.hint" | "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.unchecked" | "panels.dep.missing" | "panels.dep.outdated" | "panels.dep.degraded" | "panels.dep.unsupported" | "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.uncheckedHint" | "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.removeSlow" | "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.needBinary" | "panels.market.needLib" | "panels.market.localMark" | "panels.market.noSource" | "panels.market.badSource" | "panels.market.empty" | "panels.market.sectionPlugins" | "panels.market.moduleOutdated" | "panels.market.moduleRefused" | "panels.market.moduleRestartHint" | "panels.market.pendingRestart" | "panels.market.workbenchName" | "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.tabInstalled" | "panels.market.tabs" | "panels.tab.discover" | "panels.discover.loading" | "panels.discover.lead" | "panels.discover.addSource" | "panels.discover.addingSource" | "panels.discover.addFirstSource" | "panels.discover.removeSource" | "panels.discover.removeSourceNamed" | "panels.discover.refresh" | "panels.discover.search" | "panels.discover.all" | "panels.discover.sourceLabel" | "panels.discover.sourceKind" | "panels.discover.sourceKindHttp" | "panels.discover.sourceKindGit" | "panels.discover.sourceUrl" | "panels.discover.sourcePlaceholder" | "panels.discover.sourceRef" | "panels.discover.sourcePath" | "panels.discover.sourceLocal" | "panels.discover.sourceLocalHint" | "panels.discover.save" | "panels.discover.cancel" | "panels.discover.retry" | "panels.discover.noSource" | "panels.discover.noSourceHint" | "panels.discover.sourcesFailed" | "panels.discover.unreadable" | "panels.discover.invalid" | "panels.discover.emptyRepo" | "panels.discover.missingIndex" | "panels.discover.initTitle" | "panels.discover.initCta" | "panels.discover.initWhat" | "panels.discover.initBranch" | "panels.discover.initBranchHint" | "panels.discover.initBranchBad" | "panels.discover.initOk" | "panels.discover.initBusy" | "panels.discover.initDone" | "panels.discover.stale" | "panels.discover.empty" | "panels.discover.noMatch" | "panels.discover.notInstalled" | "panels.discover.installed" | "panels.discover.installedVersion" | "panels.discover.update" | "panels.discover.badShell" | "panels.discover.badShellDetail" | "panels.discover.unverified" | "panels.discover.installing" | "panels.discover.installedDone" | "panels.discover.failed" | "panels.discover.expand" | "panels.discover.collapse" | "panels.discover.versionCount" | "panels.discover.sourceNpm" | "panels.discover.sourceNpmDefault" | "panels.discover.sourceGit" | "panels.discover.installVersion" | "panels.discover.confirmTitle" | "panels.discover.confirmDetail" | "panels.discover.confirmAck" | "panels.discover.confirmOk" | "panels.discover.confirmCancel" | "panels.discover.marketMenu" | "panels.discover.manageSources" | "panels.discover.sourcesTitle" | "panels.discover.sourcesIntro" | "panels.discover.sourcesLabel" | "panels.discover.sourceTrust" | "panels.discover.sourceDuplicate" | "panels.discover.sourceBadUrl" | "panels.discover.close" | "panels.discover.labelsMenu" | "panels.discover.labelsCount" | "panels.discover.tagsAll" | "panels.discover.sort" | "panels.discover.sortWith" | "panels.discover.sortRelevance" | "panels.discover.sortDefault" | "panels.discover.sortPublished" | "panels.discover.categoriesLabel" | "panels.discover.showMore" | "panels.discover.entryMeta" | "panels.discover.entryMetaAuthor" | "panels.discover.openEntry" | "panels.discover.cardInstall" | "panels.discover.cardInstalled" | "panels.discover.cardUpdate" | "panels.discover.cardBlocked" | "panels.discover.installTitle" | "panels.discover.installVersionTitle" | "panels.discover.openInstalled" | "panels.discover.noCompatibleVersion" | "panels.discover.detailBack" | "panels.discover.publishedAt" | "panels.discover.detailMarket" | "panels.discover.detailIncompatible" | "panels.discover.detailUnknown" | "panels.discover.detailSource" | "panels.discover.authorUnknown" | "panels.discover.tabOverview" | "panels.discover.tabReadme" | "panels.discover.tabChangelog" | "panels.discover.docReadme" | "panels.discover.docChangelog" | "panels.discover.docLoading" | "panels.discover.docMissing" | "panels.discover.docUnavailable" | "panels.discover.docUnknownReason" | "panels.discover.detailTabs" | "panels.discover.factPackage" | "panels.discover.factRegistry" | "panels.discover.factRepository" | "panels.discover.factCommit" | "panels.discover.factDirectory" | "panels.discover.factPublished" | "panels.discover.factAuthor" | "panels.discover.factHomepage" | "panels.discover.factCategory" | "panels.discover.factLabels" | "panels.discover.factMarket" | "panels.discover.detailVersions" | "panels.discover.versionsLabel" | "panels.discover.tagRecommended" | "panels.discover.tagPrerelease" | "panels.discover.tagInstalled" | "panels.discover.tagIncompatible" | "panels.discover.tagUnknown" | "panels.discover.selected" | "panels.discover.done" | "panels.discover.installTrust" | "panels.discover.progress" | "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.update" | "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.toolchain.ok" | "env.toolchain.warn" | "env.opencli.ok" | "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.wake" | "env.wake.opening" | "env.wake.browserOpen" | "env.wake.noBrowser" | "env.wake.failed" | "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.toolchain" | "env.step.opencli" | "env.step.bridge" | "env.step.diy" | "env.step.warm" | "env.warm.done" | "env.warm.short" | "adapterSet.not-configured" | "adapterSet.no-profile" | "adapterSet.malformed" | "adapterSet.not-resolvable" | "adapterSet.import-failed" | "adapterSet.bad-export" | "adapterSet.factory-failed" | "adapterSet.incompatible-version" | "adapterSet.missing-member" | "env.unit.hint" | "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" | "error.unknown" | "board.title" | "panel.conversation" | "panels.label" | "adapterSet.title" | "adapterSet.lead" | "adapterSet.active" | "adapterSet.defaults" | "adapterSet.failed" | "adapterSet.healthUnreadable" | "workbenchSettings.nav" | "workbenchSettings.lead" | "sidebarEdition.nav" | "sidebarEdition.lead" | "sidebarEdition.official" | "sidebarEdition.officialHint" | "sidebarEdition.custom" | "sidebarEdition.customHint" | "sidebarEdition.saving" | "sidebarEdition.reloadRequired" | "sidebarEdition.reload" | "sidebarEdition.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" | "approval.publish.module" | "approval.publish.target" | "approval.publish.version" | "approval.publish.author" | "approval.publish.authorMissing" | "approval.publish.registry" | "approval.publish.repo" | "approval.publish.branch" | "approval.publish.defaultBranch" | "approval.publish.artifacts" | "approval.publish.index" | "approval.publish.commits" | "approval.publish.twoCommits" | "approval.publish.reading" | "approval.publish.changelog" | "approval.publish.changelogMissing" | "approval.publish.targetAuto" | "approval.publish.targetTeam" | "approval.publish.targetPublic" | "approval.publish.targetTarball" | "approval.publish.targetGit" | "approval.publish.targetMarket" | "approval.publish.targetLocal" | "markdown.copy" | "markdown.copied" | "markdown.footnotes", string>;
|
|
705
693
|
};
|
|
706
694
|
/** 中文词表的键类型(从 `zh.ts` 转出):`en` 与模块词表都得覆盖同一批键。 */
|
|
707
695
|
export type { WorkbenchMessages };
|
package/dist/i18n/settings.d.ts
CHANGED
|
@@ -1,17 +1,13 @@
|
|
|
1
1
|
/** 「工作台设置」这一组的词条:配置同步 / 新建工作台。 */
|
|
2
2
|
export declare const zhSettings: {
|
|
3
3
|
readonly 'profileCreate.nav': "新建工作台";
|
|
4
|
-
readonly 'profileCreate.lead': "以已有 profile
|
|
4
|
+
readonly 'profileCreate.lead': "以已有 profile 为模板,建一个独立的新工作台。会话 / 项目 / 附件跟 web 共用,这里只复制设置。建好后关掉当前实例,再启动新的。";
|
|
5
5
|
readonly 'profileCreate.name': "新工作台的名字";
|
|
6
6
|
readonly 'profileCreate.nameHint': "例如 wb2(只用字母、数字、点、下划线或短横线)";
|
|
7
7
|
readonly 'profileCreate.source': "来源 profile";
|
|
8
8
|
readonly 'profileCreate.current': "当前";
|
|
9
9
|
readonly 'profileCreate.copy': "从来源复制";
|
|
10
10
|
readonly 'profileCreate.settings': "设置(模型、主题等)";
|
|
11
|
-
readonly 'profileCreate.plugins': "本地插件文件";
|
|
12
|
-
readonly 'profileCreate.pluginsRequired': "设置里引用了,不能单独去掉";
|
|
13
|
-
readonly 'profileCreate.projects': "项目列表";
|
|
14
|
-
readonly 'profileCreate.sessions': "会话记录";
|
|
15
11
|
readonly 'profileCreate.create': "创建";
|
|
16
12
|
readonly 'profileCreate.creating': "正在创建…";
|
|
17
13
|
readonly 'profileCreate.created': "已建好 {profile}。";
|
|
@@ -22,25 +18,16 @@ export declare const zhSettings: {
|
|
|
22
18
|
readonly 'profileCreate.noProfiles': "这台机器上还没有可用的来源 profile。";
|
|
23
19
|
readonly 'profileCreate.failed': "创建没有成功,看看下面的输出。";
|
|
24
20
|
readonly 'configSync.nav': "配置同步";
|
|
25
|
-
readonly 'configSync.lead': "
|
|
21
|
+
readonly 'configSync.lead': "只同步「改已有插件的设置」的行;挂新插件的行不同步。会话 / 项目 / 附件本来就共用,不用同步。要整套新建工作台用「新建工作台」。";
|
|
26
22
|
readonly 'configSync.source': "来源";
|
|
27
23
|
readonly 'configSync.sourceBroken': "读不到它的配置";
|
|
28
|
-
readonly 'configSync.sourceRows': "{name} 这份里你有 {count}
|
|
24
|
+
readonly 'configSync.sourceRows': "{name} 这份里你有 {count} 行可同步";
|
|
29
25
|
readonly 'configSync.sourceDead': "读不到";
|
|
30
26
|
readonly 'configSync.refresh': "重新读一遍";
|
|
31
27
|
readonly 'configSync.loading': "正在读来源的配置…";
|
|
32
28
|
readonly 'configSync.readHint': "换个来源,或再读一遍。";
|
|
33
29
|
readonly 'configSync.tag.new': "新增";
|
|
34
30
|
readonly 'configSync.tag.differs': "差异";
|
|
35
|
-
readonly 'configSync.tag.asset': "缺文件";
|
|
36
|
-
readonly 'configSync.tag.fileDiffers': "文件不同";
|
|
37
|
-
readonly 'configSync.assetOnly': "设置内容一样,只差文件。";
|
|
38
|
-
readonly 'configSync.assetMissingOne': "还要 1 个文件:{path}";
|
|
39
|
-
readonly 'configSync.assetMissingMany': "还要 {count} 个文件:{path}";
|
|
40
|
-
readonly 'configSync.assetDiffers': "文件不一样:{path}";
|
|
41
|
-
readonly 'configSync.assetDiffersMany': "文件有差异:{path}({count} 个)";
|
|
42
|
-
readonly 'configSync.assetExternal': "这个文件搬不过来:{path}({reason})";
|
|
43
|
-
readonly 'configSync.assetOverwrite': "覆盖工作台里的同名文件";
|
|
44
31
|
readonly 'configSync.conflictNote': "应用后工作台这份会被来源覆盖";
|
|
45
32
|
readonly 'configSync.code.lang': "yaml";
|
|
46
33
|
readonly 'configSync.code.copy': "复制";
|
|
@@ -51,19 +38,18 @@ export declare const zhSettings: {
|
|
|
51
38
|
readonly 'configSync.code.collapseAria': "收起这一行的配置";
|
|
52
39
|
readonly 'configSync.code.expandAria': "展开差异(还有 {count} 行)";
|
|
53
40
|
readonly 'configSync.code.expand': "展开剩余 {count} 行";
|
|
54
|
-
readonly 'configSync.missing': "{pkg}
|
|
41
|
+
readonly 'configSync.missing': "{pkg} 还没装:这一行同步过来也不会生效 —— 先在模块市场里装它";
|
|
55
42
|
readonly 'configSync.apply': "同步选中的 {count} 项";
|
|
56
43
|
readonly 'configSync.applyNone': "请选择同步内容";
|
|
57
44
|
readonly 'configSync.applying': "正在写入…";
|
|
58
45
|
readonly 'configSync.applied': "已写入并检查通过";
|
|
59
46
|
readonly 'configSync.appliedUnverified': "已写入;重启后检查是否生效";
|
|
60
|
-
readonly 'configSync.appliedFiles': "复制了 {count} 个文件";
|
|
61
47
|
readonly 'configSync.appliedIds': "这次写进去:{ids}";
|
|
62
48
|
readonly 'configSync.skippedIds': "这几行工作台自己已有,没动:{ids}";
|
|
63
49
|
readonly 'configSync.nothing': "没有需要同步的内容";
|
|
64
50
|
readonly 'configSync.unreadable': "读不到 {path}:{reason}";
|
|
65
51
|
readonly 'configSync.noSource': "这台机器上只有工作台这一个 profile,没有可同步的来源";
|
|
66
|
-
readonly 'configSync.emptyProviders': "工作台还没有任何模型供应商 —— 去「配置同步」从某个 profile
|
|
52
|
+
readonly 'configSync.emptyProviders': "工作台还没有任何模型供应商 —— 去「配置同步」从某个 profile 把模型供应商那几行同步过来,或自己去「模型」里配。";
|
|
67
53
|
readonly 'configSync.failed': "同步没成功,再试一次。";
|
|
68
54
|
};
|
|
69
55
|
/** 上面那组的中文对照。 */
|