@opensaas/stack-cli 0.3.0 → 0.5.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.
Files changed (105) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +193 -0
  3. package/dist/commands/generate.d.ts.map +1 -1
  4. package/dist/commands/generate.js +4 -13
  5. package/dist/commands/generate.js.map +1 -1
  6. package/dist/commands/migrate.d.ts +9 -0
  7. package/dist/commands/migrate.d.ts.map +1 -0
  8. package/dist/commands/migrate.js +473 -0
  9. package/dist/commands/migrate.js.map +1 -0
  10. package/dist/generator/context.d.ts.map +1 -1
  11. package/dist/generator/context.js +20 -5
  12. package/dist/generator/context.js.map +1 -1
  13. package/dist/generator/index.d.ts +1 -1
  14. package/dist/generator/index.d.ts.map +1 -1
  15. package/dist/generator/index.js +1 -1
  16. package/dist/generator/index.js.map +1 -1
  17. package/dist/generator/lists.d.ts.map +1 -1
  18. package/dist/generator/lists.js +33 -1
  19. package/dist/generator/lists.js.map +1 -1
  20. package/dist/generator/prisma-extensions.d.ts +11 -0
  21. package/dist/generator/prisma-extensions.d.ts.map +1 -0
  22. package/dist/generator/prisma-extensions.js +134 -0
  23. package/dist/generator/prisma-extensions.js.map +1 -0
  24. package/dist/generator/prisma.d.ts.map +1 -1
  25. package/dist/generator/prisma.js +4 -0
  26. package/dist/generator/prisma.js.map +1 -1
  27. package/dist/generator/types.d.ts.map +1 -1
  28. package/dist/generator/types.js +151 -17
  29. package/dist/generator/types.js.map +1 -1
  30. package/dist/index.js +3 -0
  31. package/dist/index.js.map +1 -1
  32. package/dist/mcp/lib/documentation-provider.d.ts +23 -0
  33. package/dist/mcp/lib/documentation-provider.d.ts.map +1 -1
  34. package/dist/mcp/lib/documentation-provider.js +471 -0
  35. package/dist/mcp/lib/documentation-provider.js.map +1 -1
  36. package/dist/mcp/lib/wizards/migration-wizard.d.ts +80 -0
  37. package/dist/mcp/lib/wizards/migration-wizard.d.ts.map +1 -0
  38. package/dist/mcp/lib/wizards/migration-wizard.js +499 -0
  39. package/dist/mcp/lib/wizards/migration-wizard.js.map +1 -0
  40. package/dist/mcp/server/index.d.ts.map +1 -1
  41. package/dist/mcp/server/index.js +103 -0
  42. package/dist/mcp/server/index.js.map +1 -1
  43. package/dist/mcp/server/stack-mcp-server.d.ts +85 -0
  44. package/dist/mcp/server/stack-mcp-server.d.ts.map +1 -1
  45. package/dist/mcp/server/stack-mcp-server.js +219 -0
  46. package/dist/mcp/server/stack-mcp-server.js.map +1 -1
  47. package/dist/migration/generators/migration-generator.d.ts +60 -0
  48. package/dist/migration/generators/migration-generator.d.ts.map +1 -0
  49. package/dist/migration/generators/migration-generator.js +510 -0
  50. package/dist/migration/generators/migration-generator.js.map +1 -0
  51. package/dist/migration/introspectors/index.d.ts +12 -0
  52. package/dist/migration/introspectors/index.d.ts.map +1 -0
  53. package/dist/migration/introspectors/index.js +10 -0
  54. package/dist/migration/introspectors/index.js.map +1 -0
  55. package/dist/migration/introspectors/keystone-introspector.d.ts +59 -0
  56. package/dist/migration/introspectors/keystone-introspector.d.ts.map +1 -0
  57. package/dist/migration/introspectors/keystone-introspector.js +229 -0
  58. package/dist/migration/introspectors/keystone-introspector.js.map +1 -0
  59. package/dist/migration/introspectors/nextjs-introspector.d.ts +59 -0
  60. package/dist/migration/introspectors/nextjs-introspector.d.ts.map +1 -0
  61. package/dist/migration/introspectors/nextjs-introspector.js +159 -0
  62. package/dist/migration/introspectors/nextjs-introspector.js.map +1 -0
  63. package/dist/migration/introspectors/prisma-introspector.d.ts +45 -0
  64. package/dist/migration/introspectors/prisma-introspector.d.ts.map +1 -0
  65. package/dist/migration/introspectors/prisma-introspector.js +190 -0
  66. package/dist/migration/introspectors/prisma-introspector.js.map +1 -0
  67. package/dist/migration/types.d.ts +86 -0
  68. package/dist/migration/types.d.ts.map +1 -0
  69. package/dist/migration/types.js +5 -0
  70. package/dist/migration/types.js.map +1 -0
  71. package/package.json +12 -9
  72. package/src/commands/__snapshots__/generate.test.ts.snap +92 -21
  73. package/src/commands/generate.ts +8 -19
  74. package/src/commands/migrate.ts +534 -0
  75. package/src/generator/__snapshots__/context.test.ts.snap +60 -15
  76. package/src/generator/__snapshots__/types.test.ts.snap +689 -95
  77. package/src/generator/context.test.ts +3 -1
  78. package/src/generator/context.ts +20 -5
  79. package/src/generator/index.ts +1 -1
  80. package/src/generator/lists.ts +39 -1
  81. package/src/generator/prisma-extensions.ts +159 -0
  82. package/src/generator/prisma.ts +5 -0
  83. package/src/generator/types.ts +204 -17
  84. package/src/index.ts +4 -0
  85. package/src/mcp/lib/documentation-provider.ts +507 -0
  86. package/src/mcp/lib/wizards/migration-wizard.ts +584 -0
  87. package/src/mcp/server/index.ts +121 -0
  88. package/src/mcp/server/stack-mcp-server.ts +243 -0
  89. package/src/migration/generators/migration-generator.ts +675 -0
  90. package/src/migration/introspectors/index.ts +12 -0
  91. package/src/migration/introspectors/keystone-introspector.ts +296 -0
  92. package/src/migration/introspectors/nextjs-introspector.ts +209 -0
  93. package/src/migration/introspectors/prisma-introspector.ts +233 -0
  94. package/src/migration/types.ts +92 -0
  95. package/tests/introspectors/keystone-introspector.test.ts +255 -0
  96. package/tests/introspectors/nextjs-introspector.test.ts +302 -0
  97. package/tests/introspectors/prisma-introspector.test.ts +268 -0
  98. package/tests/migration-generator.test.ts +592 -0
  99. package/tests/migration-wizard.test.ts +442 -0
  100. package/tsconfig.tsbuildinfo +1 -1
  101. package/dist/generator/type-patcher.d.ts +0 -13
  102. package/dist/generator/type-patcher.d.ts.map +0 -1
  103. package/dist/generator/type-patcher.js +0 -68
  104. package/dist/generator/type-patcher.js.map +0 -1
  105. package/src/generator/type-patcher.ts +0 -93
@@ -1,9 +1,13 @@
1
1
  /**
2
2
  * OpenSaaS Stack MCP Server - Business logic for MCP tools
3
3
  */
4
+ import type { ProjectType } from '../../migration/types.js';
4
5
  export declare class StackMCPServer {
5
6
  private wizardEngine;
7
+ private migrationWizard;
6
8
  private docsProvider;
9
+ private prismaIntrospector;
10
+ private keystoneIntrospector;
7
11
  constructor();
8
12
  /**
9
13
  * Implement a feature - starts the wizard flow
@@ -84,6 +88,87 @@ export declare class StackMCPServer {
84
88
  text: string;
85
89
  }[];
86
90
  }>;
91
+ /**
92
+ * Start a migration wizard session
93
+ */
94
+ startMigration({ projectType }: {
95
+ projectType: ProjectType;
96
+ }): Promise<{
97
+ content: Array<{
98
+ type: "text";
99
+ text: string;
100
+ }>;
101
+ }>;
102
+ /**
103
+ * Answer a migration wizard question
104
+ */
105
+ answerMigration({ sessionId, answer, }: {
106
+ sessionId: string;
107
+ answer: string | boolean | string[];
108
+ }): Promise<{
109
+ content: Array<{
110
+ type: "text";
111
+ text: string;
112
+ }>;
113
+ }>;
114
+ /**
115
+ * Introspect a Prisma schema
116
+ */
117
+ introspectPrisma({ schemaPath }: {
118
+ schemaPath?: string;
119
+ }): Promise<{
120
+ content: {
121
+ type: "text";
122
+ text: string;
123
+ }[];
124
+ isError?: undefined;
125
+ } | {
126
+ content: {
127
+ type: "text";
128
+ text: string;
129
+ }[];
130
+ isError: boolean;
131
+ }>;
132
+ /**
133
+ * Introspect a KeystoneJS config
134
+ */
135
+ introspectKeystone({ configPath }: {
136
+ configPath?: string;
137
+ }): Promise<{
138
+ content: {
139
+ type: "text";
140
+ text: string;
141
+ }[];
142
+ isError?: undefined;
143
+ } | {
144
+ content: {
145
+ type: "text";
146
+ text: string;
147
+ }[];
148
+ isError: boolean;
149
+ }>;
150
+ /**
151
+ * Search migration documentation
152
+ */
153
+ searchMigrationDocs({ query }: {
154
+ query: string;
155
+ }): Promise<{
156
+ content: {
157
+ type: "text";
158
+ text: string;
159
+ }[];
160
+ }>;
161
+ /**
162
+ * Get example code for a feature
163
+ */
164
+ getExample({ feature }: {
165
+ feature: string;
166
+ }): Promise<{
167
+ content: {
168
+ type: "text";
169
+ text: string;
170
+ }[];
171
+ }>;
87
172
  /**
88
173
  * Cleanup - clear wizard sessions and caches
89
174
  */
@@ -1 +1 @@
1
- {"version":3,"file":"stack-mcp-server.d.ts","sourceRoot":"","sources":["../../../src/mcp/server/stack-mcp-server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,qBAAa,cAAc;IACzB,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,YAAY,CAA+B;;IAOnD;;OAEG;IACG,gBAAgB,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;IAsC1F;;OAEG;IACG,qBAAqB,CAAC,EAC1B,SAAS,EACT,MAAM,GACP,EAAE;QACD,SAAS,EAAE,MAAM,CAAA;QACjB,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,CAAA;KACpC;;;;;;IAID;;OAEG;IACG,sBAAsB,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;;;;;;IAIzF;;OAEG;IACG,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE;;;;;;IAuBpD;;OAEG;IACG,YAAY;;;;;;IAiElB;;OAEG;IACG,eAAe,CAAC,EAAE,eAAe,EAAE,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE;;;;;;IAqEzE;;OAEG;IACG,eAAe,CAAC,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;IA8C3E;;OAEG;IACH,OAAO;CAIR"}
1
+ {"version":3,"file":"stack-mcp-server.d.ts","sourceRoot":"","sources":["../../../src/mcp/server/stack-mcp-server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAE3D,qBAAa,cAAc;IACzB,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,kBAAkB,CAAoB;IAC9C,OAAO,CAAC,oBAAoB,CAAsB;;IAUlD;;OAEG;IACG,gBAAgB,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;IAsC1F;;OAEG;IACG,qBAAqB,CAAC,EAC1B,SAAS,EACT,MAAM,GACP,EAAE;QACD,SAAS,EAAE,MAAM,CAAA;QACjB,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,CAAA;KACpC;;;;;;IAID;;OAEG;IACG,sBAAsB,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;;;;;;IAIzF;;OAEG;IACG,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE;;;;;;IAuBpD;;OAEG;IACG,YAAY;;;;;;IAiElB;;OAEG;IACG,eAAe,CAAC,EAAE,eAAe,EAAE,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE;;;;;;IAqEzE;;OAEG;IACG,eAAe,CAAC,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;IA8C3E;;OAEG;IACG,cAAc,CAAC,EAAE,WAAW,EAAE,EAAE;QAAE,WAAW,EAAE,WAAW,CAAA;KAAE;;;;;;IAIlE;;OAEG;IACG,eAAe,CAAC,EACpB,SAAS,EACT,MAAM,GACP,EAAE;QACD,SAAS,EAAE,MAAM,CAAA;QACjB,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,CAAA;KACpC;;;;;;IAID;;OAEG;IACG,gBAAgB,CAAC,EAAE,UAAU,EAAE,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;IA8D9D;;OAEG;IACG,kBAAkB,CAAC,EAAE,UAAU,EAAE,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;IAgDhE;;OAEG;IACG,mBAAmB,CAAC,EAAE,KAAK,EAAE,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE;;;;;;IA8CtD;;OAEG;IACG,UAAU,CAAC,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE;;;;;;IA6CjD;;OAEG;IACH,OAAO;CAIR"}
@@ -2,14 +2,23 @@
2
2
  * OpenSaaS Stack MCP Server - Business logic for MCP tools
3
3
  */
4
4
  import { WizardEngine } from '../lib/wizards/wizard-engine.js';
5
+ import { MigrationWizard } from '../lib/wizards/migration-wizard.js';
5
6
  import { OpenSaasDocumentationProvider } from '../lib/documentation-provider.js';
6
7
  import { getAllFeatures, getFeature } from '../lib/features/catalog.js';
8
+ import { PrismaIntrospector } from '../../migration/introspectors/prisma-introspector.js';
9
+ import { KeystoneIntrospector } from '../../migration/introspectors/keystone-introspector.js';
7
10
  export class StackMCPServer {
8
11
  wizardEngine;
12
+ migrationWizard;
9
13
  docsProvider;
14
+ prismaIntrospector;
15
+ keystoneIntrospector;
10
16
  constructor() {
11
17
  this.wizardEngine = new WizardEngine();
18
+ this.migrationWizard = new MigrationWizard();
12
19
  this.docsProvider = new OpenSaasDocumentationProvider();
20
+ this.prismaIntrospector = new PrismaIntrospector();
21
+ this.keystoneIntrospector = new KeystoneIntrospector();
13
22
  }
14
23
  /**
15
24
  * Implement a feature - starts the wizard flow
@@ -254,6 +263,216 @@ ${featureDefinition.dependsOn && featureDefinition.dependsOn.length > 0 ? `\n##
254
263
  ],
255
264
  };
256
265
  }
266
+ /**
267
+ * Start a migration wizard session
268
+ */
269
+ async startMigration({ projectType }) {
270
+ return this.migrationWizard.startMigration(projectType);
271
+ }
272
+ /**
273
+ * Answer a migration wizard question
274
+ */
275
+ async answerMigration({ sessionId, answer, }) {
276
+ return this.migrationWizard.answerQuestion(sessionId, answer);
277
+ }
278
+ /**
279
+ * Introspect a Prisma schema
280
+ */
281
+ async introspectPrisma({ schemaPath }) {
282
+ const cwd = process.cwd();
283
+ const path = schemaPath || 'prisma/schema.prisma';
284
+ try {
285
+ const schema = await this.prismaIntrospector.introspect(cwd, path);
286
+ const modelList = schema.models
287
+ .map((m) => {
288
+ const fields = m.fields
289
+ .map((f) => {
290
+ let type = f.type;
291
+ if (f.relation)
292
+ type = `→ ${f.relation.model}`;
293
+ if (f.isList)
294
+ type = `${type}[]`;
295
+ if (!f.isRequired)
296
+ type = `${type}?`;
297
+ return ` - ${f.name}: ${type}`;
298
+ })
299
+ .join('\n');
300
+ return `### ${m.name}\n${fields}`;
301
+ })
302
+ .join('\n\n');
303
+ const enumList = schema.enums.length > 0
304
+ ? `\n## Enums\n\n${schema.enums.map((e) => `- **${e.name}**: ${e.values.join(', ')}`).join('\n')}`
305
+ : '';
306
+ return {
307
+ content: [
308
+ {
309
+ type: 'text',
310
+ text: `# Prisma Schema Analysis
311
+
312
+ **Provider:** ${schema.provider}
313
+ **Models:** ${schema.models.length}
314
+ **Enums:** ${schema.enums.length}
315
+
316
+ ## Models
317
+
318
+ ${modelList}
319
+ ${enumList}
320
+
321
+ ---
322
+
323
+ **Ready to migrate?** Use \`opensaas_start_migration({ projectType: "prisma" })\` to begin the wizard.`,
324
+ },
325
+ ],
326
+ };
327
+ }
328
+ catch (error) {
329
+ const message = error instanceof Error ? error.message : String(error);
330
+ return {
331
+ content: [
332
+ {
333
+ type: 'text',
334
+ text: `❌ Failed to introspect Prisma schema: ${message}\n\nMake sure the file exists at: ${path}`,
335
+ },
336
+ ],
337
+ isError: true,
338
+ };
339
+ }
340
+ }
341
+ /**
342
+ * Introspect a KeystoneJS config
343
+ */
344
+ async introspectKeystone({ configPath }) {
345
+ const cwd = process.cwd();
346
+ const path = configPath || 'keystone.config.ts';
347
+ try {
348
+ const config = await this.keystoneIntrospector.introspect(cwd, path);
349
+ const listInfo = config.models
350
+ .map((m) => {
351
+ const fields = m.fields.map((f) => ` - ${f.name}: ${f.type}`).join('\n');
352
+ return `### ${m.name}\n${fields}`;
353
+ })
354
+ .join('\n\n');
355
+ return {
356
+ content: [
357
+ {
358
+ type: 'text',
359
+ text: `# KeystoneJS Config Analysis
360
+
361
+ **Lists:** ${config.models.length}
362
+
363
+ ## Lists
364
+
365
+ ${listInfo}
366
+
367
+ ---
368
+
369
+ **Note:** KeystoneJS → OpenSaaS migration is mostly 1:1. Field types and access control patterns map directly.
370
+
371
+ **Ready to migrate?** Use \`opensaas_start_migration({ projectType: "keystone" })\` to begin.`,
372
+ },
373
+ ],
374
+ };
375
+ }
376
+ catch (error) {
377
+ const message = error instanceof Error ? error.message : String(error);
378
+ return {
379
+ content: [
380
+ {
381
+ type: 'text',
382
+ text: `❌ Failed to introspect KeystoneJS config: ${message}\n\nMake sure the file exists at: ${path}`,
383
+ },
384
+ ],
385
+ isError: true,
386
+ };
387
+ }
388
+ }
389
+ /**
390
+ * Search migration documentation
391
+ */
392
+ async searchMigrationDocs({ query }) {
393
+ // First try local CLAUDE.md files
394
+ const localDocs = await this.docsProvider.searchLocalDocs(query);
395
+ // Then try hosted docs
396
+ const hostedDocs = await this.docsProvider.searchDocs(query);
397
+ const sections = [];
398
+ if (localDocs.content) {
399
+ sections.push(`## Local Documentation\n\n${localDocs.content}`);
400
+ }
401
+ if (hostedDocs.content && hostedDocs.content !== 'No documentation found for this query.') {
402
+ sections.push(`## Online Documentation\n\n${hostedDocs.content}`);
403
+ }
404
+ if (sections.length === 0) {
405
+ return {
406
+ content: [
407
+ {
408
+ type: 'text',
409
+ text: `No documentation found for "${query}".
410
+
411
+ Try these searches:
412
+ - "access control" - How to restrict access to data
413
+ - "field types" - Available field types in OpenSaaS
414
+ - "authentication" - Setting up auth with Better-auth
415
+ - "hooks" - Data transformation and side effects
416
+
417
+ Or visit: https://stack.opensaas.au/`,
418
+ },
419
+ ],
420
+ };
421
+ }
422
+ return {
423
+ content: [
424
+ {
425
+ type: 'text',
426
+ text: `# Documentation: ${query}\n\n${sections.join('\n\n---\n\n')}`,
427
+ },
428
+ ],
429
+ };
430
+ }
431
+ /**
432
+ * Get example code for a feature
433
+ */
434
+ async getExample({ feature }) {
435
+ const example = await this.docsProvider.getExampleConfig(feature);
436
+ if (!example) {
437
+ return {
438
+ content: [
439
+ {
440
+ type: 'text',
441
+ text: `No example found for "${feature}".
442
+
443
+ Available examples:
444
+ - **blog-with-auth** - Blog with user authentication
445
+ - **access-control** - Access control patterns
446
+ - **relationships** - Model relationships
447
+ - **hooks** - Data transformation hooks
448
+ - **custom-fields** - Custom field types
449
+
450
+ Use: \`opensaas_get_example({ feature: "example-name" })\``,
451
+ },
452
+ ],
453
+ };
454
+ }
455
+ return {
456
+ content: [
457
+ {
458
+ type: 'text',
459
+ text: `# Example: ${feature}
460
+
461
+ ${example.description}
462
+
463
+ \`\`\`typescript
464
+ ${example.code}
465
+ \`\`\`
466
+
467
+ ${example.notes ? `\n## Notes\n\n${example.notes}` : ''}
468
+
469
+ ---
470
+
471
+ 📚 Full example at: ${example.sourcePath}`,
472
+ },
473
+ ],
474
+ };
475
+ }
257
476
  /**
258
477
  * Cleanup - clear wizard sessions and caches
259
478
  */
@@ -1 +1 @@
1
- {"version":3,"file":"stack-mcp-server.js","sourceRoot":"","sources":["../../../src/mcp/server/stack-mcp-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stack-mcp-server.js","sourceRoot":"","sources":["../../../src/mcp/server/stack-mcp-server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Migration Config Generator
3
+ *
4
+ * Generates opensaas.config.ts from migration session data.
5
+ */
6
+ import type { MigrationSession, MigrationOutput } from '../types.js';
7
+ export declare class MigrationGenerator {
8
+ private prismaIntrospector;
9
+ private keystoneIntrospector;
10
+ constructor();
11
+ /**
12
+ * Generate migration output from session
13
+ */
14
+ generate(session: MigrationSession): Promise<MigrationOutput>;
15
+ /**
16
+ * Generate list definitions from schema
17
+ */
18
+ private generateLists;
19
+ /**
20
+ * Generate a single list definition
21
+ */
22
+ private generateList;
23
+ /**
24
+ * Generate a field definition
25
+ */
26
+ private generateField;
27
+ /**
28
+ * Generate list access control
29
+ */
30
+ private generateListAccess;
31
+ /**
32
+ * Generate access control helper functions
33
+ */
34
+ private generateAccessHelpers;
35
+ /**
36
+ * Generate database configuration
37
+ */
38
+ private generateDatabaseConfig;
39
+ /**
40
+ * Generate import statements
41
+ */
42
+ private generateImports;
43
+ /**
44
+ * Assemble the complete config file
45
+ */
46
+ private assembleConfig;
47
+ /**
48
+ * Generate list of dependencies to install
49
+ */
50
+ private generateDependencies;
51
+ /**
52
+ * Generate additional files if needed
53
+ */
54
+ private generateAdditionalFiles;
55
+ /**
56
+ * Generate next steps
57
+ */
58
+ private generateSteps;
59
+ }
60
+ //# sourceMappingURL=migration-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migration-generator.d.ts","sourceRoot":"","sources":["../../../src/migration/generators/migration-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EAIhB,MAAM,aAAa,CAAA;AAIpB,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,kBAAkB,CAAoB;IAC9C,OAAO,CAAC,oBAAoB,CAAsB;;IAOlD;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;IA0EnE;;OAEG;IACH,OAAO,CAAC,aAAa;IAiDrB;;OAEG;IACH,OAAO,CAAC,YAAY;IAiCpB;;OAEG;IACH,OAAO,CAAC,aAAa;IAwErB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAsF1B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAsB7B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAqD9B;;OAEG;IACH,OAAO,CAAC,eAAe;IA2BvB;;OAEG;IACH,OAAO,CAAC,cAAc;IA8EtB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA8B5B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAkE/B;;OAEG;IACH,OAAO,CAAC,aAAa;CAuBtB"}