tanmi-dock 0.10.0-beta → 1.0.3

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.
Files changed (45) hide show
  1. package/README.md +8 -5
  2. package/dist/commands/check.d.ts +36 -0
  3. package/dist/commands/check.d.ts.map +1 -1
  4. package/dist/commands/check.js +61 -7
  5. package/dist/commands/check.js.map +1 -1
  6. package/dist/commands/link.d.ts +3 -2
  7. package/dist/commands/link.d.ts.map +1 -1
  8. package/dist/commands/link.js +373 -98
  9. package/dist/commands/link.js.map +1 -1
  10. package/dist/commands/reset.d.ts.map +1 -1
  11. package/dist/commands/reset.js +46 -17
  12. package/dist/commands/reset.js.map +1 -1
  13. package/dist/commands/status.d.ts.map +1 -1
  14. package/dist/commands/status.js +145 -20
  15. package/dist/commands/status.js.map +1 -1
  16. package/dist/commands/unavailable.d.ts.map +1 -1
  17. package/dist/commands/unavailable.js +7 -2
  18. package/dist/commands/unavailable.js.map +1 -1
  19. package/dist/core/codepac.d.ts +44 -0
  20. package/dist/core/codepac.d.ts.map +1 -1
  21. package/dist/core/codepac.js +287 -5
  22. package/dist/core/codepac.js.map +1 -1
  23. package/dist/core/config.d.ts.map +1 -1
  24. package/dist/core/config.js +1 -0
  25. package/dist/core/config.js.map +1 -1
  26. package/dist/core/linker.d.ts +7 -0
  27. package/dist/core/linker.d.ts.map +1 -1
  28. package/dist/core/linker.js +47 -0
  29. package/dist/core/linker.js.map +1 -1
  30. package/dist/core/parser.d.ts +30 -5
  31. package/dist/core/parser.d.ts.map +1 -1
  32. package/dist/core/parser.js +375 -56
  33. package/dist/core/parser.js.map +1 -1
  34. package/dist/core/store.d.ts +2 -0
  35. package/dist/core/store.d.ts.map +1 -1
  36. package/dist/core/store.js +32 -6
  37. package/dist/core/store.js.map +1 -1
  38. package/dist/types/index.d.ts +61 -10
  39. package/dist/types/index.d.ts.map +1 -1
  40. package/dist/types/index.js.map +1 -1
  41. package/dist/utils/git.d.ts +20 -1
  42. package/dist/utils/git.d.ts.map +1 -1
  43. package/dist/utils/git.js +181 -4
  44. package/dist/utils/git.js.map +1 -1
  45. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"linker.js","sourceRoot":"","sources":["../../src/core/linker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"linker.js","sourceRoot":"","sources":["../../src/core/linker.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { CodepacDep, ParsedDependency, ActionConfig, ParsedAction } from '../types/index.js';
1
+ import type { CodepacDep, ParsedDependency, ActionConfig, ParsedAction, ActionExecutionPlan } from '../types/index.js';
2
2
  /**
3
3
  * 可选配置文件信息
4
4
  */
@@ -17,6 +17,23 @@ export interface ConfigDiscoveryResult {
17
17
  /** 可选配置文件列表(不含主配置),按名称排序 */
18
18
  optionalConfigs: OptionalConfigInfo[];
19
19
  }
20
+ /**
21
+ * 依赖和 action 提取选项
22
+ */
23
+ export interface CodepacExtractOptions {
24
+ /** codepac 平台 key,例如 mac、ios、android */
25
+ platforms?: string[];
26
+ /** 日志中展示的配置来源 */
27
+ configPath?: string;
28
+ }
29
+ export interface BuildActionExecutionPlanOptions {
30
+ /** action 所在配置文件路径 */
31
+ parentConfigPath: string;
32
+ /** 父级目标目录,configdir 与 targetdir 都相对该目录解析 */
33
+ parentTargetDir: string;
34
+ /** 父级传入的 codepac 平台 key */
35
+ inheritedCodepacPlatforms?: string[];
36
+ }
20
37
  /**
21
38
  * 查找 codepac 配置文件
22
39
  * @param projectPath 项目路径
@@ -50,15 +67,17 @@ export declare function parseCodepacDep(configPath: string): Promise<CodepacDep>
50
67
  /**
51
68
  * 从配置中提取依赖列表
52
69
  * @param config 配置对象
70
+ * @param options 平台筛选选项
53
71
  * @returns 依赖列表
54
72
  */
55
- export declare function extractDependencies(config: CodepacDep): ParsedDependency[];
73
+ export declare function extractDependencies(config: CodepacDep, options?: CodepacExtractOptions): ParsedDependency[];
56
74
  /**
57
75
  * 从配置中提取 actions 列表
58
76
  * @param config 配置对象
77
+ * @param options 平台筛选选项
59
78
  * @returns actions 列表,如果没有则返回空数组
60
79
  */
61
- export declare function extractActions(config: CodepacDep): ActionConfig[];
80
+ export declare function extractActions(config: CodepacDep, options?: CodepacExtractOptions): ActionConfig[];
62
81
  /**
63
82
  * 解析 action 命令字符串
64
83
  * 支持两种格式:
@@ -68,13 +87,18 @@ export declare function extractActions(config: CodepacDep): ActionConfig[];
68
87
  * @returns 解析后的 action 对象
69
88
  */
70
89
  export declare function parseActionCommand(command: string): ParsedAction;
90
+ /**
91
+ * 生成 action 递归执行计划
92
+ * 与 CodePac 保持一致:configdir 与 targetdir 都相对当前 action 的父级目标目录解析。
93
+ */
94
+ export declare function buildActionExecutionPlan(action: ActionConfig, options: BuildActionExecutionPlanOptions): ActionExecutionPlan;
71
95
  /**
72
96
  * 从嵌套配置中提取指定库的依赖
73
97
  * @param nestedConfigPath 嵌套配置文件路径
74
98
  * @param libraries 需要提取的库名列表
75
99
  * @returns 依赖列表、变量定义和嵌套 actions
76
100
  */
77
- export declare function extractNestedDependencies(nestedConfigPath: string, libraries: string[]): Promise<{
101
+ export declare function extractNestedDependencies(nestedConfigPath: string, libraries: string[], options?: CodepacExtractOptions): Promise<{
78
102
  dependencies: ParsedDependency[];
79
103
  vars?: Record<string, string>;
80
104
  nestedActions: ActionConfig[];
@@ -85,7 +109,7 @@ export declare function extractNestedDependencies(nestedConfigPath: string, libr
85
109
  * @returns 依赖列表、配置路径和变量定义
86
110
  * @throws 找不到配置文件或解析失败时抛出异常
87
111
  */
88
- export declare function parseProjectDependencies(projectPath: string): Promise<{
112
+ export declare function parseProjectDependencies(projectPath: string, options?: CodepacExtractOptions): Promise<{
89
113
  dependencies: ParsedDependency[];
90
114
  configPath: string;
91
115
  vars?: Record<string, string>;
@@ -108,6 +132,7 @@ declare const _default: {
108
132
  extractDependencies: typeof extractDependencies;
109
133
  extractActions: typeof extractActions;
110
134
  parseActionCommand: typeof parseActionCommand;
135
+ buildActionExecutionPlan: typeof buildActionExecutionPlan;
111
136
  extractNestedDependencies: typeof extractNestedDependencies;
112
137
  parseProjectDependencies: typeof parseProjectDependencies;
113
138
  getRelativeConfigPath: typeof getRelativeConfigPath;
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/core/parser.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAYlG;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,cAAc;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,4BAA4B;IAC5B,eAAe,EAAE,kBAAkB,EAAE,CAAC;CACvC;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAWnF;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAQlF;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;IACzE,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,CAAC,CAYD;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAoB7E;AA6CD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,UAAU,GAAG,gBAAgB,EAAE,CAQ1E;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,YAAY,EAAE,CAEjE;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAqChE;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC7C,gBAAgB,EAAE,MAAM,EACxB,SAAS,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC;IACT,YAAY,EAAE,gBAAgB,EAAE,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,aAAa,EAAE,YAAY,EAAE,CAAC;CAC/B,CAAC,CAsBD;AAED;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAC5C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAC,CAWlG;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAErF;AAaD;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAuDtG;;;;;;;;;;;;;;AAED,wBAYE"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/core/parser.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,YAAY,EAIZ,mBAAmB,EACpB,MAAM,mBAAmB,CAAC;AAY3B;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,cAAc;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,4BAA4B;IAC5B,eAAe,EAAE,kBAAkB,EAAE,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,iBAAiB;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,+BAA+B;IAC9C,sBAAsB;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,4CAA4C;IAC5C,eAAe,EAAE,MAAM,CAAC;IACxB,2BAA2B;IAC3B,yBAAyB,CAAC,EAAE,MAAM,EAAE,CAAC;CACtC;AAOD;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAWnF;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAQlF;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;IACzE,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,CAAC,CAYD;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAoB7E;AAgCD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,UAAU,EAClB,OAAO,GAAE,qBAA0B,GAClC,gBAAgB,EAAE,CAUpB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,UAAU,EAClB,OAAO,GAAE,qBAA0B,GAClC,YAAY,EAAE,CAYhB;AAgOD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CA4FhE;AA2FD;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,+BAA+B,GACvC,mBAAmB,CAqBrB;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC7C,gBAAgB,EAAE,MAAM,EACxB,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC;IACT,YAAY,EAAE,gBAAgB,EAAE,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,aAAa,EAAE,YAAY,EAAE,CAAC;CAC/B,CAAC,CAuBD;AAED;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAC5C,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC;IAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAC,CAclG;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAErF;AAaD;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAuDtG;;;;;;;;;;;;;;;AAED,wBAaE"}
@@ -103,45 +103,215 @@ function validateCodepacDep(config, configPath) {
103
103
  if (!obj.repos || typeof obj.repos !== 'object') {
104
104
  throw new Error(`配置文件格式错误: 缺少 repos 字段 (${configPath})`);
105
105
  }
106
- const repos = obj.repos;
107
- if (!Array.isArray(repos.common)) {
108
- throw new Error(`配置文件格式错误: repos.common 必须是数组 (${configPath})`);
109
- }
110
- // 验证每个 repo 配置
111
- for (let i = 0; i < repos.common.length; i++) {
112
- const repo = repos.common[i];
113
- if (!repo || typeof repo !== 'object') {
114
- throw new Error(`配置文件格式错误: repos.common[${i}] 必须是对象 (${configPath})`);
115
- }
116
- const required = ['url', 'commit', 'branch', 'dir'];
117
- for (const field of required) {
118
- if (typeof repo[field] !== 'string') {
119
- throw new Error(`配置文件格式错误: repos.common[${i}].${field} 必须是字符串 (${configPath})`);
120
- }
106
+ validateRepoGroups(obj.repos, configPath);
107
+ if (obj.actions !== undefined) {
108
+ if (!obj.actions || typeof obj.actions !== 'object' || Array.isArray(obj.actions)) {
109
+ throw new Error(`配置文件格式错误: actions 必须是对象 (${configPath})`);
121
110
  }
111
+ validateActionGroups(obj.actions, configPath);
122
112
  }
123
113
  }
124
114
  /**
125
115
  * 从配置中提取依赖列表
126
116
  * @param config 配置对象
117
+ * @param options 平台筛选选项
127
118
  * @returns 依赖列表
128
119
  */
129
- export function extractDependencies(config) {
130
- return config.repos.common.map((repo) => ({
131
- libName: repo.dir,
132
- commit: repo.commit,
133
- branch: repo.branch,
134
- url: repo.url,
135
- sparse: repo.sparse,
136
- }));
120
+ export function extractDependencies(config, options = {}) {
121
+ const result = filterByPlatform(config.repos, options.platforms);
122
+ const dependencies = result.items.map((repo) => normalizeRepoConfig(repo, config.vars, options.configPath));
123
+ assertUniqueDependencies(dependencies, options.configPath);
124
+ logger.debug(`CodePac 配置解析: repos 配置=${formatConfigPathForLog(options.configPath)}, 请求平台=${formatPlatformsForLog(options.platforms)}, 命中分组=${formatPlatformsForLog(result.matchedPlatforms)}, 输出依赖=${dependencies.length}`);
125
+ return dependencies;
137
126
  }
138
127
  /**
139
128
  * 从配置中提取 actions 列表
140
129
  * @param config 配置对象
130
+ * @param options 平台筛选选项
141
131
  * @returns actions 列表,如果没有则返回空数组
142
132
  */
143
- export function extractActions(config) {
144
- return config.actions?.common ?? [];
133
+ export function extractActions(config, options = {}) {
134
+ const result = filterByPlatform(config.actions, options.platforms);
135
+ const actions = result.items.map((action) => ({
136
+ ...action,
137
+ command: interpolateCodepacVars(action.command, config.vars),
138
+ dir: action.dir ? interpolateCodepacVars(action.dir, config.vars) : action.dir,
139
+ name: action.name ? interpolateCodepacVars(action.name, config.vars) : action.name,
140
+ }));
141
+ logger.debug(`CodePac 配置解析: actions 配置=${formatConfigPathForLog(options.configPath)}, 请求平台=${formatPlatformsForLog(options.platforms)}, 命中分组=${formatPlatformsForLog(result.matchedPlatforms)}, 输出动作=${actions.length}`);
142
+ return actions;
143
+ }
144
+ function validateRepoGroups(repos, configPath) {
145
+ for (const [platform, items] of Object.entries(repos)) {
146
+ if (!Array.isArray(items)) {
147
+ throw new Error(`配置文件格式错误: repos.${platform} 必须是数组 (${configPath})`);
148
+ }
149
+ items.forEach((item, index) => {
150
+ if (!item || typeof item !== 'object' || Array.isArray(item)) {
151
+ throw new Error(`配置文件格式错误: repos.${platform}[${index}] 必须是对象 (${configPath})`);
152
+ }
153
+ const repo = item;
154
+ const required = ['url', 'commit', 'branch', 'dir'];
155
+ for (const field of required) {
156
+ if (typeof repo[field] !== 'string') {
157
+ throw new Error(`配置文件格式错误: repos.${platform}[${index}].${field} 必须是字符串 (${configPath})`);
158
+ }
159
+ }
160
+ if (repo.name !== undefined && typeof repo.name !== 'string') {
161
+ throw new Error(`配置文件格式错误: repos.${platform}[${index}].name 必须是字符串 (${configPath})`);
162
+ }
163
+ if (repo.source !== undefined && (!repo.source || typeof repo.source !== 'object' || Array.isArray(repo.source))) {
164
+ throw new Error(`配置文件格式错误: repos.${platform}[${index}].source 必须是对象 (${configPath})`);
165
+ }
166
+ });
167
+ }
168
+ }
169
+ function validateActionGroups(actions, configPath) {
170
+ for (const [platform, items] of Object.entries(actions)) {
171
+ if (!Array.isArray(items)) {
172
+ throw new Error(`配置文件格式错误: actions.${platform} 必须是数组 (${configPath})`);
173
+ }
174
+ items.forEach((item, index) => {
175
+ if (!item || typeof item !== 'object' || Array.isArray(item)) {
176
+ throw new Error(`配置文件格式错误: actions.${platform}[${index}] 必须是对象 (${configPath})`);
177
+ }
178
+ const action = item;
179
+ if (typeof action.command !== 'string') {
180
+ throw new Error(`配置文件格式错误: actions.${platform}[${index}].command 必须是字符串 (${configPath})`);
181
+ }
182
+ if (action.dir !== undefined && typeof action.dir !== 'string') {
183
+ throw new Error(`配置文件格式错误: actions.${platform}[${index}].dir 必须是字符串 (${configPath})`);
184
+ }
185
+ if (action.name !== undefined && typeof action.name !== 'string') {
186
+ throw new Error(`配置文件格式错误: actions.${platform}[${index}].name 必须是字符串 (${configPath})`);
187
+ }
188
+ });
189
+ }
190
+ }
191
+ function filterByPlatform(groups, platforms) {
192
+ if (!groups)
193
+ return { items: [], matchedPlatforms: [] };
194
+ const requestedPlatforms = platforms ?? [];
195
+ const includeEveryPlatform = requestedPlatforms.includes('all');
196
+ const selected = [];
197
+ const matchedPlatforms = [];
198
+ for (const [platform, items] of Object.entries(groups)) {
199
+ if (!Array.isArray(items))
200
+ continue;
201
+ if (requestedPlatforms.length === 0 ||
202
+ platform === 'common' ||
203
+ platform === 'all' ||
204
+ includeEveryPlatform ||
205
+ requestedPlatforms.includes(platform)) {
206
+ selected.push(...cloneConfigItems(items));
207
+ matchedPlatforms.push(platform);
208
+ }
209
+ }
210
+ return { items: selected, matchedPlatforms };
211
+ }
212
+ function cloneConfigItems(items) {
213
+ return items.map((item) => JSON.parse(JSON.stringify(item)));
214
+ }
215
+ function normalizeRepoConfig(repo, vars, configPath) {
216
+ const url = interpolateCodepacVars(repo.url, vars);
217
+ const commit = interpolateCodepacVars(repo.commit, vars);
218
+ const branch = interpolateCodepacVars(repo.branch, vars);
219
+ const dir = interpolateCodepacVars(repo.dir, vars);
220
+ const source = normalizeRepoSource(repo, { url, commit, branch, dir }, vars, configPath);
221
+ const name = repo.name
222
+ ? interpolateCodepacVars(repo.name, vars)
223
+ : source.dir || dir;
224
+ return {
225
+ libName: name,
226
+ name,
227
+ dir,
228
+ commit,
229
+ branch,
230
+ url,
231
+ source: {
232
+ ...source,
233
+ name: source.name ? interpolateCodepacVars(source.name, vars) : name,
234
+ },
235
+ sparse: interpolateSparse(repo.sparse, vars, configPath),
236
+ };
237
+ }
238
+ function normalizeRepoSource(repo, resolved, vars, configPath) {
239
+ if (!repo.source) {
240
+ return {
241
+ url: resolved.url,
242
+ commit: resolved.commit,
243
+ branch: resolved.branch,
244
+ dir: resolved.dir,
245
+ name: repo.name ? interpolateCodepacVars(repo.name, vars) : resolved.dir,
246
+ sparse: interpolateSparse(repo.sparse, vars, configPath),
247
+ };
248
+ }
249
+ return {
250
+ ...repo.source,
251
+ url: repo.source.url ? interpolateCodepacVars(repo.source.url, vars) : repo.source.url,
252
+ commit: repo.source.commit ? interpolateCodepacVars(repo.source.commit, vars) : repo.source.commit,
253
+ branch: repo.source.branch ? interpolateCodepacVars(repo.source.branch, vars) : repo.source.branch,
254
+ dir: interpolateCodepacVars(repo.source.dir, vars),
255
+ name: repo.source.name ? interpolateCodepacVars(repo.source.name, vars) : repo.source.name,
256
+ sparse: interpolateSparse(repo.source.sparse, vars, configPath),
257
+ };
258
+ }
259
+ function interpolateSparse(sparse, vars, configPath) {
260
+ if (typeof sparse === 'string') {
261
+ const resolved = interpolateCodepacVars(sparse, vars);
262
+ try {
263
+ const parsed = JSON.parse(resolved);
264
+ if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
265
+ throw new Error('sparse 必须解析为对象');
266
+ }
267
+ return parsed;
268
+ }
269
+ catch (err) {
270
+ const source = configPath ? ` (${configPath})` : '';
271
+ throw new Error(`配置文件格式错误: sparse 字符串必须是可解析的 JSON 对象${source}: ${err.message}`);
272
+ }
273
+ }
274
+ return sparse;
275
+ }
276
+ function interpolateCodepacVars(text, vars) {
277
+ if (!vars)
278
+ return text;
279
+ return text.replace(/\$\{([^}]+)\}/g, (_match, key) => vars[key] ?? `\${${key}}`);
280
+ }
281
+ function assertUniqueDependencies(dependencies, configPath) {
282
+ const names = new Set();
283
+ const dirs = new Set();
284
+ const duplicateNames = new Set();
285
+ const duplicateDirs = new Set();
286
+ for (const dependency of dependencies) {
287
+ if (names.has(dependency.name)) {
288
+ duplicateNames.add(dependency.name);
289
+ }
290
+ else {
291
+ names.add(dependency.name);
292
+ }
293
+ if (dirs.has(dependency.dir)) {
294
+ duplicateDirs.add(dependency.dir);
295
+ }
296
+ else {
297
+ dirs.add(dependency.dir);
298
+ }
299
+ }
300
+ if (duplicateNames.size > 0 || duplicateDirs.size > 0) {
301
+ const source = configPath ? ` (${configPath})` : '';
302
+ const parts = [];
303
+ if (duplicateDirs.size > 0)
304
+ parts.push(`重复 dir: ${Array.from(duplicateDirs).join(', ')}`);
305
+ if (duplicateNames.size > 0)
306
+ parts.push(`重复 name: ${Array.from(duplicateNames).join(', ')}`);
307
+ throw new Error(`配置文件格式错误: ${parts.join(';')}${source}`);
308
+ }
309
+ }
310
+ function formatPlatformsForLog(platforms) {
311
+ return platforms && platforms.length > 0 ? platforms.join(',') : 'common';
312
+ }
313
+ function formatConfigPathForLog(configPath) {
314
+ return configPath ?? 'unknown';
145
315
  }
146
316
  /**
147
317
  * 解析 action 命令字符串
@@ -152,35 +322,179 @@ export function extractActions(config) {
152
322
  * @returns 解析后的 action 对象
153
323
  */
154
324
  export function parseActionCommand(command) {
325
+ const tokens = tokenizeActionCommand(command);
155
326
  // 检查是否以 codepac install 开头
156
- if (!command.startsWith('codepac install ')) {
327
+ if (tokens[0] !== 'codepac' || tokens[1] !== 'install') {
157
328
  throw new Error(`无法解析 action 命令,期望 'codepac install' 开头: ${command}`);
158
329
  }
159
- // 提取 --configdir 参数
160
- const configDirMatch = command.match(/--configdir\s+(\S+)/);
161
- if (!configDirMatch) {
330
+ const libraries = [];
331
+ let configDir;
332
+ let targetDir;
333
+ let disableAction = false;
334
+ let hasExplicitPlatform = false;
335
+ const platforms = [];
336
+ let hasExplicitFullGit = false;
337
+ let hasExplicitUnshallow = false;
338
+ let hasExplicitDisableSparse = false;
339
+ for (let index = 2; index < tokens.length; index++) {
340
+ const token = tokens[index];
341
+ if (token === '--disable_action' || token === '-dc') {
342
+ disableAction = true;
343
+ continue;
344
+ }
345
+ if (token === '--platform' || token === '-p') {
346
+ hasExplicitPlatform = true;
347
+ const { values, nextIndex } = readActionVariadicOptionValues(tokens, index, token, command);
348
+ platforms.push(...values);
349
+ index = nextIndex;
350
+ continue;
351
+ }
352
+ if (token === '--fullgit' || token === '-fg') {
353
+ hasExplicitFullGit = true;
354
+ continue;
355
+ }
356
+ if (token === '--unshallow' || token === '-us') {
357
+ hasExplicitUnshallow = true;
358
+ continue;
359
+ }
360
+ if (token === '--disable_sparse' || token === '-ds') {
361
+ hasExplicitDisableSparse = true;
362
+ continue;
363
+ }
364
+ if (token === '--configdir' || token === '-cd') {
365
+ configDir = readActionOptionValue(tokens, index, token, command);
366
+ index++;
367
+ continue;
368
+ }
369
+ if (token === '--targetdir' || token === '-td') {
370
+ const { value, consumed } = readOptionalActionOptionValue(tokens, index);
371
+ if (value !== undefined && value !== '') {
372
+ targetDir = value;
373
+ }
374
+ if (consumed)
375
+ index++;
376
+ continue;
377
+ }
378
+ if (token.startsWith('--') || token.startsWith('-')) {
379
+ const next = tokens[index + 1];
380
+ if (next && !next.startsWith('-')) {
381
+ index++;
382
+ }
383
+ continue;
384
+ }
385
+ libraries.push(token);
386
+ }
387
+ if (!configDir) {
162
388
  throw new Error(`无法解析 action 命令,缺少 --configdir 参数: ${command}`);
163
389
  }
164
- const configDir = configDirMatch[1];
165
- // 提取 --targetdir 参数(可选,默认为 configdir)
166
- const targetDirMatch = command.match(/--targetdir\s+(\S+)/);
167
- const targetDir = targetDirMatch ? targetDirMatch[1] : configDir;
168
- // 检查 --disable_action 标志
169
- const disableAction = command.includes('--disable_action');
170
- // 提取库名列表(在 'codepac install ' 后,--configdir 前的部分)
171
- const afterInstall = command.slice('codepac install '.length);
172
- const beforeConfigDir = afterInstall.split('--configdir')[0].trim();
173
- // 过滤掉任何以 -- 开头的参数
174
- const libraries = beforeConfigDir
175
- .split(/\s+/)
176
- .filter(lib => lib && !lib.startsWith('--'));
177
390
  // 旧格式兼容:如果没有指定库名,libraries 为空数组
178
391
  // 调用方需要从 configDir 中读取 codepac-dep.json 来获取所有库
179
392
  return {
180
393
  libraries,
181
394
  configDir,
182
- targetDir,
395
+ targetDir: targetDir ?? configDir,
183
396
  disableAction,
397
+ hasExplicitPlatform,
398
+ platforms,
399
+ hasExplicitFullGit,
400
+ hasExplicitUnshallow,
401
+ hasExplicitDisableSparse,
402
+ };
403
+ }
404
+ function readActionOptionValue(tokens, index, option, command) {
405
+ const value = tokens[index + 1];
406
+ if (!value || value.startsWith('-')) {
407
+ throw new Error(`无法解析 action 命令,${option} 缺少参数值: ${command}`);
408
+ }
409
+ return value;
410
+ }
411
+ function readOptionalActionOptionValue(tokens, index) {
412
+ const value = tokens[index + 1];
413
+ if (!value || value.startsWith('-')) {
414
+ return { consumed: false };
415
+ }
416
+ return { value, consumed: true };
417
+ }
418
+ function readActionVariadicOptionValues(tokens, index, option, command) {
419
+ const values = [];
420
+ let nextIndex = index;
421
+ for (let valueIndex = index + 1; valueIndex < tokens.length; valueIndex++) {
422
+ const value = tokens[valueIndex];
423
+ if (!value || value.startsWith('-'))
424
+ break;
425
+ values.push(value);
426
+ nextIndex = valueIndex;
427
+ }
428
+ if (values.length === 0) {
429
+ throw new Error(`无法解析 action 命令,${option} 缺少参数值: ${command}`);
430
+ }
431
+ return { values, nextIndex };
432
+ }
433
+ function tokenizeActionCommand(command) {
434
+ const tokens = [];
435
+ let current = '';
436
+ let quote = null;
437
+ let escaped = false;
438
+ for (const char of command) {
439
+ if (escaped) {
440
+ current += char;
441
+ escaped = false;
442
+ continue;
443
+ }
444
+ if (char === '\\') {
445
+ escaped = true;
446
+ continue;
447
+ }
448
+ if (quote) {
449
+ if (char === quote) {
450
+ quote = null;
451
+ }
452
+ else {
453
+ current += char;
454
+ }
455
+ continue;
456
+ }
457
+ if (char === '"' || char === "'") {
458
+ quote = char;
459
+ continue;
460
+ }
461
+ if (/\s/.test(char)) {
462
+ if (current.length > 0) {
463
+ tokens.push(current);
464
+ current = '';
465
+ }
466
+ continue;
467
+ }
468
+ current += char;
469
+ }
470
+ if (current.length > 0) {
471
+ tokens.push(current);
472
+ }
473
+ return tokens;
474
+ }
475
+ /**
476
+ * 生成 action 递归执行计划
477
+ * 与 CodePac 保持一致:configdir 与 targetdir 都相对当前 action 的父级目标目录解析。
478
+ */
479
+ export function buildActionExecutionPlan(action, options) {
480
+ const parsed = parseActionCommand(action.command);
481
+ const inheritedPlatforms = options.inheritedCodepacPlatforms ?? [];
482
+ const effectiveCodepacPlatforms = parsed.hasExplicitPlatform
483
+ ? [...new Set(parsed.platforms)]
484
+ : inheritedPlatforms;
485
+ const nestedConfigDir = path.resolve(options.parentTargetDir, parsed.configDir);
486
+ const nestedTargetDir = path.resolve(options.parentTargetDir, parsed.targetDir);
487
+ return {
488
+ actionName: action.name,
489
+ command: action.command,
490
+ parsed,
491
+ configDir: parsed.configDir,
492
+ targetDir: parsed.targetDir,
493
+ nestedConfigPath: path.join(nestedConfigDir, CONFIG_FILENAME),
494
+ nestedTargetDir,
495
+ inheritedPlatforms,
496
+ effectiveCodepacPlatforms,
497
+ libraries: parsed.libraries,
184
498
  };
185
499
  }
186
500
  /**
@@ -189,20 +503,21 @@ export function parseActionCommand(command) {
189
503
  * @param libraries 需要提取的库名列表
190
504
  * @returns 依赖列表、变量定义和嵌套 actions
191
505
  */
192
- export async function extractNestedDependencies(nestedConfigPath, libraries) {
506
+ export async function extractNestedDependencies(nestedConfigPath, libraries, options = {}) {
193
507
  const config = await parseCodepacDep(nestedConfigPath);
194
508
  // 提取库:如果指定了 libraries 则只提取指定的库,否则提取所有库(旧格式兼容)
195
- const dependencies = config.repos.common
196
- .filter(repo => libraries.length === 0 || libraries.includes(repo.dir))
197
- .map(repo => ({
198
- libName: repo.dir,
199
- commit: repo.commit,
200
- branch: repo.branch,
201
- url: repo.url,
202
- sparse: repo.sparse,
203
- }));
509
+ const allDependencies = extractDependencies(config, {
510
+ ...options,
511
+ configPath: options.configPath ?? nestedConfigPath,
512
+ });
513
+ const dependencies = allDependencies.filter((repo) => {
514
+ return libraries.length === 0 || libraries.includes(repo.dir) || libraries.includes(repo.name);
515
+ });
204
516
  // 提取嵌套的 actions(用于递归处理)
205
- const nestedActions = extractActions(config);
517
+ const nestedActions = extractActions(config, {
518
+ ...options,
519
+ configPath: options.configPath ?? nestedConfigPath,
520
+ });
206
521
  return {
207
522
  dependencies,
208
523
  vars: config.vars,
@@ -215,13 +530,16 @@ export async function extractNestedDependencies(nestedConfigPath, libraries) {
215
530
  * @returns 依赖列表、配置路径和变量定义
216
531
  * @throws 找不到配置文件或解析失败时抛出异常
217
532
  */
218
- export async function parseProjectDependencies(projectPath) {
533
+ export async function parseProjectDependencies(projectPath, options = {}) {
219
534
  const configPath = await findCodepacConfig(projectPath);
220
535
  if (!configPath) {
221
536
  throw new Error(`找不到 codepac-dep.json 配置文件,已搜索: ${SEARCH_DIRS.join(', ')}`);
222
537
  }
223
538
  const config = await parseCodepacDep(configPath);
224
- const dependencies = extractDependencies(config);
539
+ const dependencies = extractDependencies(config, {
540
+ ...options,
541
+ configPath: options.configPath ?? configPath,
542
+ });
225
543
  return { dependencies, configPath, vars: config.vars };
226
544
  }
227
545
  /**
@@ -306,6 +624,7 @@ export default {
306
624
  extractDependencies,
307
625
  extractActions,
308
626
  parseActionCommand,
627
+ buildActionExecutionPlan,
309
628
  extractNestedDependencies,
310
629
  parseProjectDependencies,
311
630
  getRelativeConfigPath,