@loom-framework/core 0.1.0-alpha.165 → 0.1.0-alpha.167

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 (57) hide show
  1. package/builtin-skills/loom/SKILL.md +9 -6
  2. package/builtin-skills/loom/references/eject.md +130 -0
  3. package/dist/cli/commands/eject.d.ts.map +1 -1
  4. package/dist/cli/commands/eject.js +108 -279
  5. package/dist/cli/commands/eject.js.map +1 -1
  6. package/dist/cli/commands/generate-system-settings.d.ts +3 -3
  7. package/dist/cli/commands/generate-system-settings.d.ts.map +1 -1
  8. package/dist/cli/commands/generate-system-settings.js +29 -204
  9. package/dist/cli/commands/generate-system-settings.js.map +1 -1
  10. package/dist/cli/commands/init.d.ts.map +1 -1
  11. package/dist/cli/commands/init.js +27 -44
  12. package/dist/cli/commands/init.js.map +1 -1
  13. package/dist/cli/helpers/app-tsx-utils.d.ts +12 -0
  14. package/dist/cli/helpers/app-tsx-utils.d.ts.map +1 -0
  15. package/dist/cli/helpers/app-tsx-utils.js +22 -0
  16. package/dist/cli/helpers/app-tsx-utils.js.map +1 -0
  17. package/dist/cli/helpers/app-tsx-wiring-engine.d.ts +70 -0
  18. package/dist/cli/helpers/app-tsx-wiring-engine.d.ts.map +1 -0
  19. package/dist/cli/helpers/app-tsx-wiring-engine.js +546 -0
  20. package/dist/cli/helpers/app-tsx-wiring-engine.js.map +1 -0
  21. package/dist/cli/helpers/app-tsx-wiring.d.ts +4 -39
  22. package/dist/cli/helpers/app-tsx-wiring.d.ts.map +1 -1
  23. package/dist/cli/helpers/app-tsx-wiring.js +5 -608
  24. package/dist/cli/helpers/app-tsx-wiring.js.map +1 -1
  25. package/dist/cli/helpers/system-page-config.d.ts +27 -0
  26. package/dist/cli/helpers/system-page-config.d.ts.map +1 -0
  27. package/dist/cli/helpers/system-page-config.js +73 -0
  28. package/dist/cli/helpers/system-page-config.js.map +1 -0
  29. package/dist/cli/templates/login-page.d.ts +2 -3
  30. package/dist/cli/templates/login-page.d.ts.map +1 -1
  31. package/dist/cli/templates/login-page.js +19 -27
  32. package/dist/cli/templates/login-page.js.map +1 -1
  33. package/dist/cli/templates/model-management-page.d.ts +2 -3
  34. package/dist/cli/templates/model-management-page.d.ts.map +1 -1
  35. package/dist/cli/templates/model-management-page.js +12 -7
  36. package/dist/cli/templates/model-management-page.js.map +1 -1
  37. package/dist/cli/templates/notification-center-page.d.ts +2 -3
  38. package/dist/cli/templates/notification-center-page.d.ts.map +1 -1
  39. package/dist/cli/templates/notification-center-page.js +26 -60
  40. package/dist/cli/templates/notification-center-page.js.map +1 -1
  41. package/dist/cli/templates/notification-detail-page.d.ts +2 -3
  42. package/dist/cli/templates/notification-detail-page.d.ts.map +1 -1
  43. package/dist/cli/templates/notification-detail-page.js +14 -39
  44. package/dist/cli/templates/notification-detail-page.js.map +1 -1
  45. package/dist/cli/templates/process-management-page.d.ts +3 -3
  46. package/dist/cli/templates/process-management-page.d.ts.map +1 -1
  47. package/dist/cli/templates/process-management-page.js +76 -563
  48. package/dist/cli/templates/process-management-page.js.map +1 -1
  49. package/dist/cli/templates/skill-management-page.d.ts +2 -3
  50. package/dist/cli/templates/skill-management-page.d.ts.map +1 -1
  51. package/dist/cli/templates/skill-management-page.js +13 -13
  52. package/dist/cli/templates/skill-management-page.js.map +1 -1
  53. package/dist/cli/templates/user-management-page.d.ts +2 -4
  54. package/dist/cli/templates/user-management-page.d.ts.map +1 -1
  55. package/dist/cli/templates/user-management-page.js +22 -20
  56. package/dist/cli/templates/user-management-page.js.map +1 -1
  57. package/package.json +7 -3
@@ -1,147 +1,50 @@
1
1
  /**
2
2
  * loom generate system-settings <model|skill|user|login|process|notification>
3
3
  *
4
- * System management pages are now built into @loom-framework/frontend-antd.
5
- * Default behavior: wire npm imports into App.tsx (no local files).
6
- * Use --local to generate local source files for customization (eject).
4
+ * System management pages are built into @loom-framework/frontend-antd.
5
+ * This command wires npm imports into App.tsx.
6
+ * Use `loom eject system-settings <type>` to create a local editable copy.
7
7
  */
8
8
  import chalk from 'chalk';
9
- import { promises as fs } from 'fs';
10
- import path from 'path';
11
9
  import { resolveProjectRoot } from '../utils.js';
12
- import { modelManagementPageTemplate, skillManagementPageTemplate, userManagementPageTemplate, processManagementPageTemplate, loginPageTemplate, notificationCenterPageTemplate, notificationDetailPageTemplate } from '../templates/index.js';
13
- import { wireAppTsxForSystemSettings, wireAppTsxForNpmSystemSettings, wireAppTsxForAuth } from '../helpers/app-tsx-wiring.js';
14
- import { backupFile } from '../helpers/backup.js';
15
- const VALID_TYPES = ['model', 'skill', 'user', 'login', 'process', 'notification'];
16
- const PAGE_CONFIG = {
17
- model: {
18
- pascalName: 'ModelManagement',
19
- fileName: 'ModelManagement.tsx',
20
- navKey: 'model-management',
21
- navLabelZh: '模型管理',
22
- navLabelEn: 'Model Management',
23
- npmComponent: 'ModelManagementPage',
24
- template: modelManagementPageTemplate,
25
- },
26
- skill: {
27
- pascalName: 'SkillManagement',
28
- fileName: 'SkillManagement.tsx',
29
- navKey: 'skill-management',
30
- navLabelZh: '技能管理',
31
- navLabelEn: 'Skill Management',
32
- npmComponent: 'SkillManagementPage',
33
- template: skillManagementPageTemplate,
34
- },
35
- user: {
36
- pascalName: 'UserManagement',
37
- fileName: 'UserManagement.tsx',
38
- navKey: 'user-management',
39
- navLabelZh: '用户管理',
40
- navLabelEn: 'User Management',
41
- npmComponent: 'UserManagementPage',
42
- template: userManagementPageTemplate,
43
- },
44
- login: {
45
- pascalName: 'Login',
46
- fileName: 'Login.tsx',
47
- // No navKey — Login is rendered by AuthGuard, not in navigation
48
- npmComponent: 'LoginPage',
49
- template: loginPageTemplate,
50
- isLogin: true,
51
- },
52
- process: {
53
- pascalName: 'ProcessManagement',
54
- fileName: 'ProcessManagement.tsx',
55
- navKey: 'process-management',
56
- navLabelZh: '过程管理',
57
- navLabelEn: 'Process Management',
58
- npmComponent: 'ProcessManagementPage',
59
- template: processManagementPageTemplate,
60
- },
61
- notification: {
62
- pascalName: 'NotificationCenter',
63
- fileName: 'NotificationCenter.tsx',
64
- navKey: 'notifications',
65
- navLabelZh: '通知',
66
- navLabelEn: 'Notifications',
67
- npmComponent: 'NotificationCenterPage',
68
- template: notificationCenterPageTemplate,
69
- extraFiles: [{
70
- pascalName: 'NotificationDetail',
71
- fileName: 'NotificationDetail.tsx',
72
- navKey: 'notification-detail',
73
- navLabelZh: '通知详情',
74
- navLabelEn: 'Notification Detail',
75
- npmComponent: 'NotificationDetailPage',
76
- template: notificationDetailPageTemplate,
77
- }],
78
- },
79
- };
10
+ import { wireAppTsx } from '../helpers/app-tsx-wiring-engine.js';
11
+ import { SYSTEM_PAGE_CONFIG, VALID_SYSTEM_PAGE_TYPES } from '../helpers/system-page-config.js';
80
12
  export function registerGenerateSystemSettingsCommand(program) {
81
13
  program
82
14
  .command('system-settings <type>')
83
- .description(`Generate a system management page (${VALID_TYPES.join('|')})`)
84
- .option('--force', 'Overwrite existing page file')
85
- .option('--local', 'Generate local source file instead of npm import (for customization)')
86
- .option('--npm', 'Wire npm import into App.tsx (default behavior)')
87
- .action(async (type, cmdOptions) => {
88
- if (!VALID_TYPES.includes(type)) {
89
- console.error(chalk.red(`Invalid type "${type}". Use: ${VALID_TYPES.join(', ')}.`));
15
+ .description(`Generate a system management page (${VALID_SYSTEM_PAGE_TYPES.join('|')})`)
16
+ .action(async (type) => {
17
+ if (!VALID_SYSTEM_PAGE_TYPES.includes(type)) {
18
+ console.error(chalk.red(`Invalid type "${type}". Use: ${VALID_SYSTEM_PAGE_TYPES.join(', ')}.`));
90
19
  process.exit(1);
91
20
  }
92
21
  const pageType = type;
93
- const config = PAGE_CONFIG[pageType];
94
- const useLocal = cmdOptions.local;
22
+ const config = SYSTEM_PAGE_CONFIG[pageType];
95
23
  try {
96
24
  const projectRoot = await resolveProjectRoot();
97
- if (useLocal) {
98
- await generateLocalPages(projectRoot, config, cmdOptions.force);
25
+ // Default: wire npm import
26
+ console.log(chalk.blue(`ℹ System page "${type}" is available from @loom-framework/frontend-antd.`));
27
+ console.log(` Import: import { ${config.npmComponent} } from '@loom-framework/frontend-antd';`);
28
+ console.log(chalk.dim(` Run "loom eject system-settings ${type}" to create a local editable copy.`));
29
+ console.log();
30
+ // Wire main page
31
+ const mainResult = await wireAppTsx({ projectRoot, pageConfig: config, action: 'add-npm' });
32
+ if (mainResult.modified) {
33
+ console.log(chalk.green(' ✓'), `App.tsx wired with npm import for ${config.pascalName}`);
99
34
  }
100
- else {
101
- // Default: wire npm import
102
- console.log(chalk.blue(`ℹ System page "${type}" is available from @loom-framework/frontend-antd.`));
103
- console.log(` Import: import { ${config.npmComponent} } from '@loom-framework/frontend-antd';`);
104
- console.log(chalk.dim(` Run "loom eject system-settings ${type}" to create a local editable copy.`));
105
- console.log();
106
- // Wire npm import into App.tsx
107
- if (config.navKey) {
108
- // Notification pages are accessed via bell icon, not sidebar navigation
109
- const skipNav = pageType === 'notification';
110
- const wired = await wireAppTsxForNpmSystemSettings(projectRoot, config.pascalName, config.navKey, config.navLabelZh, config.navLabelEn, skipNav ? { skipNav: true } : undefined);
111
- if (wired) {
112
- console.log(chalk.green(' ✓'), `App.tsx wired with npm import for ${config.pascalName}`);
113
- }
114
- }
115
- // Wire extra files (notification detail etc.)
116
- if (config.extraFiles) {
117
- for (const extra of config.extraFiles) {
118
- if (extra.navKey) {
119
- // Notification pages are accessed via bell icon, not sidebar navigation
120
- const skipNav = pageType === 'notification';
121
- const wired = await wireAppTsxForNpmSystemSettings(projectRoot, extra.pascalName, extra.navKey, extra.navLabelZh, extra.navLabelEn, skipNav ? { skipNav: true } : undefined);
122
- if (wired) {
123
- console.log(chalk.green(' ✓'), `App.tsx wired with npm import for ${extra.pascalName}`);
124
- }
125
- }
126
- }
127
- }
128
- // For login type, just note that AuthGuard handles it
129
- if (config.isLogin) {
130
- console.log(chalk.dim(' LoginPage is rendered by AuthGuard, no navigation entry needed.'));
131
- }
132
- // For user type, wire AuthProvider
133
- if (pageType === 'user') {
134
- await wireAuthProviders(projectRoot);
135
- }
136
- // For notification type, wire NotificationCenter
137
- if (pageType === 'notification') {
138
- const { wireAppTsxForNotification } = await import('../helpers/app-tsx-wiring.js');
139
- const notifWired = await wireAppTsxForNotification(projectRoot);
140
- if (notifWired) {
141
- console.log(chalk.green(' ✓'), 'NotificationCenter wired into App.tsx');
35
+ // Wire extra files (e.g., NotificationDetail for notification type)
36
+ if (config.extraFiles) {
37
+ for (const extra of config.extraFiles) {
38
+ const extraResult = await wireAppTsx({ projectRoot, pageConfig: extra, action: 'add-npm' });
39
+ if (extraResult.modified) {
40
+ console.log(chalk.green(' ✓'), `App.tsx wired with npm import for ${extra.pascalName}`);
142
41
  }
143
42
  }
144
43
  }
44
+ // For login type, note that AuthGuard renders it
45
+ if (config.wiringMode === 'auth-fallback') {
46
+ console.log(chalk.dim(' LoginPage is rendered by AuthGuard, no navigation entry needed.'));
47
+ }
145
48
  }
146
49
  catch (err) {
147
50
  const message = err instanceof Error ? err.message : String(err);
@@ -150,82 +53,4 @@ export function registerGenerateSystemSettingsCommand(program) {
150
53
  }
151
54
  });
152
55
  }
153
- async function generateLocalPages(projectRoot, config, force) {
154
- const pageDir = path.join(projectRoot, 'frontend', 'src', 'components', 'pages');
155
- // Generate main page file
156
- await generateLocalPage(projectRoot, pageDir, {
157
- pascalName: config.pascalName,
158
- fileName: config.fileName,
159
- navKey: config.navKey,
160
- navLabelZh: config.navLabelZh,
161
- navLabelEn: config.navLabelEn,
162
- npmComponent: config.npmComponent,
163
- template: config.template,
164
- isLogin: config.isLogin,
165
- }, force);
166
- // Generate extra files (e.g., NotificationDetail)
167
- if (config.extraFiles) {
168
- for (const extra of config.extraFiles) {
169
- await generateLocalPage(projectRoot, pageDir, extra, force);
170
- }
171
- }
172
- }
173
- async function generateLocalPage(projectRoot, pageDir, config, force) {
174
- const pagePath = path.join(pageDir, config.fileName);
175
- // Check if page already exists
176
- try {
177
- await fs.access(pagePath);
178
- if (!force) {
179
- console.error(chalk.red(`Page "${config.pascalName}" already exists at ${pagePath}`));
180
- console.error(chalk.yellow('Use --force to overwrite.'));
181
- process.exit(1);
182
- }
183
- console.log(chalk.yellow(`Overwriting existing page "${config.pascalName}"`));
184
- const backupPath = await backupFile(projectRoot, pagePath);
185
- if (backupPath)
186
- console.log(chalk.dim(` Backup: ${path.relative(projectRoot, backupPath)}`));
187
- }
188
- catch {
189
- // File does not exist, proceed
190
- }
191
- // Generate page file
192
- const template = config.template();
193
- await fs.mkdir(pageDir, { recursive: true });
194
- await fs.writeFile(pagePath, template, 'utf-8');
195
- console.log(chalk.green('Page created successfully!'));
196
- console.log();
197
- console.log(chalk.bold(' Page:'), config.pascalName);
198
- console.log(chalk.bold(' Path:'), path.join('frontend', 'src', 'components', 'pages', config.fileName));
199
- // Wire App.tsx
200
- if (config.navKey) {
201
- const wired = await wireAppTsxForSystemSettings(projectRoot, config.pascalName, config.navKey, config.navLabelZh, config.navLabelEn);
202
- if (wired) {
203
- console.log(chalk.green(' App.tsx wired automatically'));
204
- }
205
- }
206
- // For login type, wire AuthProvider
207
- if (config.isLogin) {
208
- const authWired = await wireAppTsxForAuth(projectRoot);
209
- if (authWired) {
210
- console.log(chalk.green(' ✓'), 'AuthProvider wired into App.tsx');
211
- }
212
- }
213
- }
214
- async function wireAuthProviders(projectRoot) {
215
- // LoginPage is NOT wired into navigation — AuthGuard renders it automatically
216
- // Wire AuthProvider into App.tsx
217
- const authWired = await wireAppTsxForAuth(projectRoot);
218
- if (authWired) {
219
- console.log(chalk.green(' ✓'), 'AuthProvider wired into App.tsx');
220
- }
221
- else {
222
- console.log(chalk.dim(' AuthProvider already wired or could not be modified'));
223
- }
224
- // Import wireAppTsxForNotification and wire NotificationCenter
225
- const { wireAppTsxForNotification } = await import('../helpers/app-tsx-wiring.js');
226
- const notifWired = await wireAppTsxForNotification(projectRoot);
227
- if (notifWired) {
228
- console.log(chalk.green(' ✓'), 'NotificationCenter wired into App.tsx');
229
- }
230
- }
231
56
  //# sourceMappingURL=generate-system-settings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generate-system-settings.js","sourceRoot":"","sources":["../../../src/cli/commands/generate-system-settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-system-settings.js","sourceRoot":"","sources":["../../../src/cli/commands/generate-system-settings.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmCzC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAe1D"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoCzC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAe1D"}
@@ -9,7 +9,8 @@ import path from 'path';
9
9
  import crypto from 'crypto';
10
10
  import { fileURLToPath } from 'url';
11
11
  import { createLoomConfig, createPackageJson, createReadme, createTsconfig, createFrontendTsconfig, createViteConfig, createMainTsx, createAppTsx, createIndexHtml, createBackendEntry, createGitignore, } from '../templates/index.js';
12
- import { wireAppTsxForNpmSystemSettings, wireAppTsxForAuth, wireAppTsxForNotification } from '../helpers/app-tsx-wiring.js';
12
+ import { wireAppTsx } from '../helpers/app-tsx-wiring-engine.js';
13
+ import { SYSTEM_PAGE_CONFIG } from '../helpers/system-page-config.js';
13
14
  /** Read current framework version from core package.json */
14
15
  function getFrameworkVersion() {
15
16
  const pkgPath = path.join(import.meta.dirname, '../../../package.json');
@@ -264,52 +265,34 @@ async function installDependencies(targetDir) {
264
265
  async function generateSystemSettingsPages(targetDir) {
265
266
  // Use npm-first approach: import page components from @loom-framework/frontend-antd
266
267
  // No local page files are generated for system settings pages
267
- // Wire ModelManagement (npm import)
268
- const modelWired = await wireAppTsxForNpmSystemSettings(targetDir, 'ModelManagement', 'model-management', '模型管理', 'Model Management');
269
- if (modelWired) {
270
- console.log(chalk.green(' ✓'), 'ModelManagement (npm) + App.tsx wired');
271
- }
272
- // Wire SkillManagement (npm import)
273
- const skillWired = await wireAppTsxForNpmSystemSettings(targetDir, 'SkillManagement', 'skill-management', '技能管理', 'Skill Management');
274
- if (skillWired) {
275
- console.log(chalk.green(' ✓'), 'SkillManagement (npm) + App.tsx wired');
276
- }
277
- // Wire auth-related pages (auth is always enabled)
278
- try {
279
- // LoginPage is NOT wired into navigation — AuthGuard renders it automatically.
280
- // Wire UserManagement (npm import)
281
- const userWired = await wireAppTsxForNpmSystemSettings(targetDir, 'UserManagement', 'user-management', '用户管理', 'User Management');
282
- if (userWired) {
283
- console.log(chalk.green(' ✓'), 'UserManagement (npm) + App.tsx wired');
284
- }
285
- // Wire ProcessManagement (npm import)
286
- const processWired = await wireAppTsxForNpmSystemSettings(targetDir, 'ProcessManagement', 'process-management', '过程管理', 'Process Management');
287
- if (processWired) {
288
- console.log(chalk.green(' ✓'), 'ProcessManagement (npm) + App.tsx wired');
289
- }
290
- // Wire Notification pages (npm import) — skipNav since they're accessed via bell icon, not sidebar
291
- const notifCenterWired = await wireAppTsxForNpmSystemSettings(targetDir, 'NotificationCenter', 'notifications', '通知', 'Notifications', { skipNav: true });
292
- if (notifCenterWired) {
293
- console.log(chalk.green(' ✓'), 'NotificationCenter (npm) + App.tsx wired');
294
- }
295
- const notifDetailWired = await wireAppTsxForNpmSystemSettings(targetDir, 'NotificationDetail', 'notification-detail', '通知详情', 'Notification Detail', { skipNav: true });
296
- if (notifDetailWired) {
297
- console.log(chalk.green(' ✓'), 'NotificationDetail (npm) + App.tsx wired');
298
- }
299
- // Wire AuthProvider into App.tsx
300
- const authWired = await wireAppTsxForAuth(targetDir);
301
- if (authWired) {
302
- console.log(chalk.green(' ✓'), 'AuthProvider wired into App.tsx');
268
+ // All wiring is driven by SYSTEM_PAGE_CONFIG — adding a new page type there
269
+ // automatically includes it in `loom init`.
270
+ for (const pageType of Object.keys(SYSTEM_PAGE_CONFIG)) {
271
+ const config = SYSTEM_PAGE_CONFIG[pageType];
272
+ try {
273
+ // Wire main page
274
+ const result = await wireAppTsx({ projectRoot: targetDir, pageConfig: config, action: 'add-npm' });
275
+ if (result.modified) {
276
+ console.log(chalk.green(' ✓'), `${config.pascalName} (npm) + App.tsx wired`);
277
+ }
278
+ // Wire extra files (e.g., NotificationDetail for notification type)
279
+ if (config.extraFiles) {
280
+ for (const extra of config.extraFiles) {
281
+ const extraResult = await wireAppTsx({ projectRoot: targetDir, pageConfig: extra, action: 'add-npm' });
282
+ if (extraResult.modified) {
283
+ console.log(chalk.green(' ✓'), `${extra.pascalName} (npm) + App.tsx wired`);
284
+ }
285
+ }
286
+ }
287
+ // For login type, AuthGuard renders it automatically — no navigation entry needed
288
+ if (config.wiringMode === 'auth-fallback') {
289
+ console.log(chalk.dim(` LoginPage is rendered by AuthGuard, no navigation entry needed.`));
290
+ }
303
291
  }
304
- // Wire NotificationCenterProvider into App.tsx
305
- const notifProviderWired = await wireAppTsxForNotification(targetDir);
306
- if (notifProviderWired) {
307
- console.log(chalk.green(' ✓'), 'NotificationCenter wired into App.tsx');
292
+ catch {
293
+ // Config file might not exist yet, skip this page type
308
294
  }
309
295
  }
310
- catch {
311
- // Config file might not exist yet, skip auth wiring
312
- }
313
296
  }
314
297
  async function verifySqliteNativeModule(targetDir) {
315
298
  const { execSync } = await import('child_process');
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Shared App.tsx string manipulation utilities.
3
+ *
4
+ * Used by app-tsx-wiring.ts (CRUD pages), app-tsx-wiring-engine.ts
5
+ * (system settings engine), and eject.ts (inline helpers during migration).
6
+ */
7
+ /**
8
+ * Find the position right after the last import statement.
9
+ * Returns the index of the newline after the last `import ... from '...'` or `import ...` line.
10
+ */
11
+ export declare function findLastImportEnd(content: string): number | null;
12
+ //# sourceMappingURL=app-tsx-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-tsx-utils.d.ts","sourceRoot":"","sources":["../../../src/cli/helpers/app-tsx-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAShE"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Shared App.tsx string manipulation utilities.
3
+ *
4
+ * Used by app-tsx-wiring.ts (CRUD pages), app-tsx-wiring-engine.ts
5
+ * (system settings engine), and eject.ts (inline helpers during migration).
6
+ */
7
+ /**
8
+ * Find the position right after the last import statement.
9
+ * Returns the index of the newline after the last `import ... from '...'` or `import ...` line.
10
+ */
11
+ export function findLastImportEnd(content) {
12
+ const importRegex = /^import\s.+;?\s*$/gm;
13
+ let lastMatch = null;
14
+ let m;
15
+ while ((m = importRegex.exec(content)) !== null) {
16
+ lastMatch = m;
17
+ }
18
+ if (!lastMatch)
19
+ return null;
20
+ return lastMatch.index + lastMatch[0].length;
21
+ }
22
+ //# sourceMappingURL=app-tsx-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-tsx-utils.js","sourceRoot":"","sources":["../../../src/cli/helpers/app-tsx-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,MAAM,WAAW,GAAG,qBAAqB,CAAC;IAC1C,IAAI,SAAS,GAA2B,IAAI,CAAC;IAC7C,IAAI,CAAyB,CAAC;IAC9B,OAAO,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAChD,SAAS,GAAG,CAAC,CAAC;IAChB,CAAC;IACD,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAC5B,OAAO,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AAC/C,CAAC"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Unified App.tsx wiring engine for system settings pages.
3
+ *
4
+ * Driven by SYSTEM_PAGE_CONFIG and WiringMode, this replaces the scattered
5
+ * inline wiring helpers in eject.ts and the per-page-type functions in
6
+ * app-tsx-wiring.ts.
7
+ *
8
+ * Pure step functions are individually testable. The main `wireAppTsx()`
9
+ * dispatches steps based on WiringMode + action.
10
+ */
11
+ import type { SystemPageConfig } from './system-page-config.js';
12
+ export type WiringAction = 'add-npm' | 'add-local' | 'eject' | 'uneject';
13
+ export interface WiringOptions {
14
+ projectRoot: string;
15
+ pageConfig: SystemPageConfig;
16
+ action: WiringAction;
17
+ force?: boolean;
18
+ /** For notification type: extra files to also wire */
19
+ extraFiles?: SystemPageConfig[];
20
+ }
21
+ /** Add a name to the npm import from @loom-framework/frontend-antd. */
22
+ export declare function ensureNpmImport(content: string, componentName: string): string;
23
+ /** Remove a name from the npm import from @loom-framework/frontend-antd. */
24
+ export declare function removeNpmImportName(content: string, name: string): string;
25
+ /** Add a local import line: import XPage from './components/pages/X'; */
26
+ export declare function ensureLocalImport(content: string, pascalName: string): string;
27
+ /** Remove a local import line. */
28
+ export declare function removeLocalImport(content: string, pascalName: string): string;
29
+ /** Ensure registerMessages is imported from @loom-framework/frontend-antd. */
30
+ export declare function ensureRegisterMessagesImport(content: string): string;
31
+ /** Register i18n keys for nav.system-settings and the page's nav key. */
32
+ export declare function ensureI18nRegistration(content: string, navKey: string, navLabelZh: string, navLabelEn: string): string;
33
+ /** Ensure navItem in system-settings submenu. If skipNav, only ensures submenu exists without adding child. */
34
+ export declare function ensureNavItem(content: string, navKey: string, navLabelZh: string, navLabelEn: string, skipNav?: boolean): string;
35
+ /** Add a switch case before the default case. */
36
+ export declare function ensureSwitchCase(content: string, navKey: string, componentName: string): string;
37
+ /** Replace the component in a switch case. */
38
+ export declare function replaceSwitchCase(content: string, navKey: string, oldComponent: string, newComponent: string): string;
39
+ /** Ensure breadcrumb mapping for a nav key. */
40
+ export declare function ensureBreadcrumb(content: string, navKey: string, navLabelZh: string, navLabelEn: string): string;
41
+ /** Ensure system-settings breadcrumb exists if system-settings nav exists. */
42
+ export declare function ensureSystemSettingsBreadcrumb(content: string): string;
43
+ /** Add AuthGuard fallback prop: <AuthGuard> → <AuthGuard fallback={<LoginPage />}> */
44
+ export declare function ensureAuthGuardFallback(content: string, componentName: string): string;
45
+ /** Remove AuthGuard fallback prop: <AuthGuard fallback={<LoginPage />}> → <AuthGuard> */
46
+ export declare function removeAuthGuardFallback(content: string, componentName: string): string;
47
+ /** Ensure AuthProvider + AuthGuard wrapping in App.tsx. */
48
+ export declare function ensureAuthProviderWrapping(content: string): string;
49
+ /** Ensure NotificationCenterProvider wrapping and notification props on AppShell. */
50
+ export declare function ensureNotificationProvider(content: string): string;
51
+ /** Register i18n keys for notification pages. */
52
+ export declare function ensureNotificationI18n(content: string): string;
53
+ /** Add notification switch cases. */
54
+ export declare function ensureNotificationSwitchCases(content: string, centerComponent: string, detailComponent: string): string;
55
+ /** Ensure notification breadcrumbs. */
56
+ export declare function ensureNotificationBreadcrumbs(content: string): string;
57
+ /** Add onNotificationViewAll + onNotificationClick props to AppShell. */
58
+ export declare function ensureNotificationAppShellProps(content: string): string;
59
+ /** Migration: ensure breadcrumbsMap prop on AppShell. */
60
+ export declare function ensureMigrationCleanups(content: string): string;
61
+ /**
62
+ * Wire App.tsx for a system settings page.
63
+ *
64
+ * Reads the config's wiringMode to determine which steps to apply
65
+ * based on the action (add-npm, add-local, eject, uneject).
66
+ */
67
+ export declare function wireAppTsx(options: WiringOptions): Promise<{
68
+ modified: boolean;
69
+ }>;
70
+ //# sourceMappingURL=app-tsx-wiring-engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-tsx-wiring-engine.d.ts","sourceRoot":"","sources":["../../../src/cli/helpers/app-tsx-wiring-engine.ts"],"names":[],"mappings":"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"}