@auto-engineer/server-generator-apollo-emmett 0.11.10 → 0.11.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/.turbo/turbo-build.log +5 -0
  2. package/.turbo/turbo-format.log +4 -0
  3. package/.turbo/turbo-lint.log +4 -0
  4. package/.turbo/turbo-test.log +14 -0
  5. package/.turbo/turbo-type-check.log +4 -0
  6. package/CHANGELOG.md +10 -0
  7. package/dist/src/codegen/extract/commands.d.ts +1 -1
  8. package/dist/src/codegen/extract/commands.d.ts.map +1 -1
  9. package/dist/src/codegen/extract/data-sink.d.ts +1 -1
  10. package/dist/src/codegen/extract/data-sink.d.ts.map +1 -1
  11. package/dist/src/codegen/extract/events.d.ts +1 -1
  12. package/dist/src/codegen/extract/events.d.ts.map +1 -1
  13. package/dist/src/codegen/extract/gwt.d.ts +1 -1
  14. package/dist/src/codegen/extract/gwt.d.ts.map +1 -1
  15. package/dist/src/codegen/extract/messages.d.ts +1 -1
  16. package/dist/src/codegen/extract/messages.d.ts.map +1 -1
  17. package/dist/src/codegen/extract/projection.d.ts +1 -1
  18. package/dist/src/codegen/extract/projection.d.ts.map +1 -1
  19. package/dist/src/codegen/extract/query.d.ts +1 -1
  20. package/dist/src/codegen/extract/query.d.ts.map +1 -1
  21. package/dist/src/codegen/extract/states.d.ts +1 -1
  22. package/dist/src/codegen/extract/states.d.ts.map +1 -1
  23. package/dist/src/codegen/scaffoldFromSchema.d.ts +3 -3
  24. package/dist/src/codegen/scaffoldFromSchema.d.ts.map +1 -1
  25. package/dist/src/codegen/scaffoldFromSchema.js.map +1 -1
  26. package/dist/src/codegen/templates/command/commands.specs.ts +3 -3
  27. package/dist/src/codegen/templates/command/decide.specs.specs.ts +7 -7
  28. package/dist/src/codegen/templates/command/decide.specs.ts +9 -9
  29. package/dist/src/codegen/templates/command/events.specs.ts +3 -3
  30. package/dist/src/codegen/templates/command/evolve.specs.ts +3 -3
  31. package/dist/src/codegen/templates/command/handle.specs.ts +10 -5
  32. package/dist/src/codegen/templates/command/mutation.resolver.specs.ts +7 -7
  33. package/dist/src/codegen/templates/command/register.specs.ts +3 -3
  34. package/dist/src/codegen/templates/command/state.specs.ts +3 -3
  35. package/dist/src/codegen/templates/query/projection.specs.specs.ts +7 -7
  36. package/dist/src/codegen/templates/query/projection.specs.ts +5 -5
  37. package/dist/src/codegen/templates/query/query.resolver.specs.ts +13 -13
  38. package/dist/src/codegen/templates/query/state.specs.ts +3 -3
  39. package/dist/src/codegen/templates/react/react.specs.specs.ts +3 -3
  40. package/dist/src/codegen/templates/react/react.specs.ts +3 -3
  41. package/dist/src/codegen/templates/react/register.specs.ts +3 -3
  42. package/dist/src/codegen/test-data/specVariant1.d.ts +1 -1
  43. package/dist/src/codegen/test-data/specVariant1.d.ts.map +1 -1
  44. package/dist/src/codegen/test-data/specVariant1.js +1 -1
  45. package/dist/src/codegen/test-data/specVariant1.js.map +1 -1
  46. package/dist/src/codegen/types.d.ts +1 -1
  47. package/dist/src/codegen/types.d.ts.map +1 -1
  48. package/dist/src/commands/generate-server.d.ts.map +1 -1
  49. package/dist/src/commands/generate-server.js +11 -8
  50. package/dist/src/commands/generate-server.js.map +1 -1
  51. package/dist/tsconfig.tsbuildinfo +1 -1
  52. package/package.json +4 -4
  53. package/src/codegen/extract/commands.ts +1 -1
  54. package/src/codegen/extract/data-sink.ts +1 -1
  55. package/src/codegen/extract/events.ts +1 -1
  56. package/src/codegen/extract/gwt.ts +1 -1
  57. package/src/codegen/extract/messages.ts +1 -1
  58. package/src/codegen/extract/projection.ts +1 -1
  59. package/src/codegen/extract/query.ts +1 -1
  60. package/src/codegen/extract/states.ts +1 -1
  61. package/src/codegen/scaffoldFromSchema.ts +10 -10
  62. package/src/codegen/templates/command/commands.specs.ts +3 -3
  63. package/src/codegen/templates/command/decide.specs.specs.ts +7 -7
  64. package/src/codegen/templates/command/decide.specs.ts +9 -9
  65. package/src/codegen/templates/command/events.specs.ts +3 -3
  66. package/src/codegen/templates/command/evolve.specs.ts +3 -3
  67. package/src/codegen/templates/command/handle.specs.ts +10 -5
  68. package/src/codegen/templates/command/mutation.resolver.specs.ts +7 -7
  69. package/src/codegen/templates/command/register.specs.ts +3 -3
  70. package/src/codegen/templates/command/state.specs.ts +3 -3
  71. package/src/codegen/templates/query/projection.specs.specs.ts +7 -7
  72. package/src/codegen/templates/query/projection.specs.ts +5 -5
  73. package/src/codegen/templates/query/query.resolver.specs.ts +13 -13
  74. package/src/codegen/templates/query/state.specs.ts +3 -3
  75. package/src/codegen/templates/react/react.specs.specs.ts +3 -3
  76. package/src/codegen/templates/react/react.specs.ts +3 -3
  77. package/src/codegen/templates/react/register.specs.ts +3 -3
  78. package/src/codegen/test-data/specVariant1.ts +2 -2
  79. package/src/codegen/types.ts +1 -1
  80. package/src/commands/generate-server.ts +13 -9
@@ -1,12 +1,12 @@
1
1
  import { describe, it, expect } from 'vitest';
2
2
  import { generateScaffoldFilePlans } from '../../scaffoldFromSchema';
3
- import { Model as SpecsSchema } from '@auto-engineer/flow';
3
+ import { Model as SpecsSchema } from '@auto-engineer/narrative';
4
4
 
5
5
  describe('mutation.resolver.ts.ejs', () => {
6
6
  it('should generate a valid mutation resolver file', async () => {
7
7
  const spec: SpecsSchema = {
8
8
  variant: 'specs',
9
- flows: [
9
+ narratives: [
10
10
  {
11
11
  name: 'Host creates a listing',
12
12
  slices: [
@@ -72,7 +72,7 @@ describe('mutation.resolver.ts.ejs', () => {
72
72
  ],
73
73
  };
74
74
 
75
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
75
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
76
76
  const mutationFile = plans.find((p) => p.outputPath.endsWith('mutation.resolver.ts'));
77
77
 
78
78
  expect(mutationFile?.contents).toMatchInlineSnapshot(`
@@ -134,7 +134,7 @@ describe('mutation.resolver.ts.ejs', () => {
134
134
  it('should generate the mutation resolver for AnswerQuestion', async () => {
135
135
  const spec: SpecsSchema = {
136
136
  variant: 'specs',
137
- flows: [
137
+ narratives: [
138
138
  {
139
139
  name: 'Questionnaires',
140
140
  slices: [
@@ -220,7 +220,7 @@ describe('mutation.resolver.ts.ejs', () => {
220
220
  integrations: [],
221
221
  };
222
222
 
223
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
223
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
224
224
  const mutationFile = plans.find(
225
225
  (p) =>
226
226
  p.outputPath.endsWith('mutation.resolver.ts') && p.contents.includes('export class AnswerQuestionResolver'),
@@ -267,7 +267,7 @@ describe('mutation.resolver.ts.ejs', () => {
267
267
  it('generates nested input types for inline object arrays in a mutation', async () => {
268
268
  const spec: SpecsSchema = {
269
269
  variant: 'specs',
270
- flows: [
270
+ narratives: [
271
271
  {
272
272
  name: 'Cart',
273
273
  slices: [
@@ -315,7 +315,7 @@ describe('mutation.resolver.ts.ejs', () => {
315
315
  ],
316
316
  };
317
317
 
318
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
318
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
319
319
  const mutationFile = plans.find(
320
320
  (p) =>
321
321
  p.outputPath.endsWith('mutation.resolver.ts') && p.contents.includes('export class AddItemsToCartResolver'),
@@ -1,12 +1,12 @@
1
1
  import { describe, it, expect } from 'vitest';
2
2
  import { generateScaffoldFilePlans } from '../../scaffoldFromSchema';
3
- import { Model as SpecsSchema } from '@auto-engineer/flow';
3
+ import { Model as SpecsSchema } from '@auto-engineer/narrative';
4
4
 
5
5
  describe('generateScaffoldFilePlans', () => {
6
6
  it('should generate a valid register file', async () => {
7
7
  const spec: SpecsSchema = {
8
8
  variant: 'specs',
9
- flows: [
9
+ narratives: [
10
10
  {
11
11
  name: 'Host creates a listing',
12
12
  slices: [
@@ -98,7 +98,7 @@ describe('generateScaffoldFilePlans', () => {
98
98
  ],
99
99
  };
100
100
 
101
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
101
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
102
102
  const registerFile = plans.find((p) => p.outputPath.endsWith('register.ts'));
103
103
 
104
104
  expect(registerFile?.contents).toMatchInlineSnapshot(`
@@ -1,12 +1,12 @@
1
1
  import { describe, it, expect } from 'vitest';
2
2
  import { generateScaffoldFilePlans } from '../../scaffoldFromSchema';
3
- import { Model as SpecsSchema } from '@auto-engineer/flow';
3
+ import { Model as SpecsSchema } from '@auto-engineer/narrative';
4
4
 
5
5
  describe('state.ts.ejs', () => {
6
6
  it('should generate an initial state', async () => {
7
7
  const spec: SpecsSchema = {
8
8
  variant: 'specs',
9
- flows: [
9
+ narratives: [
10
10
  {
11
11
  name: 'Host creates a listing',
12
12
  slices: [
@@ -78,7 +78,7 @@ describe('state.ts.ejs', () => {
78
78
  ],
79
79
  };
80
80
 
81
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
81
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
82
82
  const stateFile = plans.find((p) => p.outputPath.endsWith('state.ts'));
83
83
 
84
84
  expect(stateFile?.contents).toMatchInlineSnapshot(`
@@ -1,12 +1,12 @@
1
1
  import { describe, it, expect } from 'vitest';
2
2
  import { generateScaffoldFilePlans } from '../../scaffoldFromSchema';
3
- import { Model as SpecsSchema } from '@auto-engineer/flow';
3
+ import { Model as SpecsSchema } from '@auto-engineer/narrative';
4
4
 
5
5
  describe('projection.specs.ts.ejs', () => {
6
6
  it('should generate a valid test spec for a query slice projection', async () => {
7
7
  const spec: SpecsSchema = {
8
8
  variant: 'specs',
9
- flows: [
9
+ narratives: [
10
10
  {
11
11
  name: 'listing-flow',
12
12
  slices: [
@@ -180,7 +180,7 @@ describe('projection.specs.ts.ejs', () => {
180
180
  ],
181
181
  } as SpecsSchema;
182
182
 
183
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
183
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
184
184
  const specFile = plans.find((p) => p.outputPath.endsWith('projection.specs.ts'));
185
185
 
186
186
  expect(specFile?.contents).toMatchInlineSnapshot(`
@@ -241,7 +241,7 @@ describe('projection.specs.ts.ejs', () => {
241
241
  it('should generate a valid test spec for a model with given/when/then pattern', async () => {
242
242
  const questionnaireSpec: SpecsSchema = {
243
243
  variant: 'specs',
244
- flows: [
244
+ narratives: [
245
245
  {
246
246
  name: 'Questionnaires',
247
247
  slices: [
@@ -363,7 +363,7 @@ describe('projection.specs.ts.ejs', () => {
363
363
  } as SpecsSchema;
364
364
 
365
365
  const plans = await generateScaffoldFilePlans(
366
- questionnaireSpec.flows,
366
+ questionnaireSpec.narratives,
367
367
  questionnaireSpec.messages,
368
368
  undefined,
369
369
  'src/domain/flows',
@@ -380,7 +380,7 @@ describe('projection.specs.ts.ejs', () => {
380
380
  it('should include all events from both given and when clauses in projection imports and types', async () => {
381
381
  const spec: SpecsSchema = {
382
382
  variant: 'specs',
383
- flows: [
383
+ narratives: [
384
384
  {
385
385
  name: 'questionnaires',
386
386
  slices: [
@@ -569,7 +569,7 @@ describe('projection.specs.ts.ejs', () => {
569
569
  } as SpecsSchema;
570
570
 
571
571
  const plans = await generateScaffoldFilePlans(
572
- spec.flows,
572
+ spec.narratives,
573
573
  [
574
574
  {
575
575
  type: 'command',
@@ -1,12 +1,12 @@
1
1
  import { describe, it, expect } from 'vitest';
2
2
  import { generateScaffoldFilePlans } from '../../scaffoldFromSchema';
3
- import { Model } from '@auto-engineer/flow';
3
+ import { Model } from '@auto-engineer/narrative';
4
4
 
5
5
  describe('projection.ts.ejs', () => {
6
6
  it('should generate a valid projection file with correct relative event import path from producing slice', async () => {
7
7
  const flows: Model = {
8
8
  variant: 'specs',
9
- flows: [
9
+ narratives: [
10
10
  {
11
11
  name: 'listing-flow',
12
12
  slices: [
@@ -201,7 +201,7 @@ describe('projection.ts.ejs', () => {
201
201
  ],
202
202
  };
203
203
 
204
- const plans = await generateScaffoldFilePlans(flows.flows, flows.messages, undefined, 'src/domain/flows');
204
+ const plans = await generateScaffoldFilePlans(flows.narratives, flows.messages, undefined, 'src/domain/flows');
205
205
  const projectionFile = plans.find((p) => p.outputPath.endsWith('projection.ts'));
206
206
 
207
207
  expect(projectionFile?.contents).toMatchInlineSnapshot(`
@@ -279,7 +279,7 @@ describe('projection.ts.ejs', () => {
279
279
  it('should generate a valid query resolver using ID type', async () => {
280
280
  const spec: Model = {
281
281
  variant: 'specs',
282
- flows: [
282
+ narratives: [
283
283
  {
284
284
  name: 'wishlist-flow',
285
285
  slices: [
@@ -330,7 +330,7 @@ describe('projection.ts.ejs', () => {
330
330
  ],
331
331
  };
332
332
 
333
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
333
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
334
334
  const resolverFile = plans.find((p) => p.outputPath.endsWith('query.resolver.ts'));
335
335
 
336
336
  expect(resolverFile?.contents).toMatchInlineSnapshot(`
@@ -1,12 +1,12 @@
1
1
  import { describe, it, expect } from 'vitest';
2
2
  import { generateScaffoldFilePlans } from '../../scaffoldFromSchema';
3
- import { Model as SpecsSchema } from '@auto-engineer/flow';
3
+ import { Model as SpecsSchema } from '@auto-engineer/narrative';
4
4
 
5
5
  describe('query.resolver.ts.ejs', () => {
6
6
  it('should generate a valid query resolver from request field', async () => {
7
7
  const spec: SpecsSchema = {
8
8
  variant: 'specs',
9
- flows: [
9
+ narratives: [
10
10
  {
11
11
  name: 'listing-flow',
12
12
  slices: [
@@ -63,7 +63,7 @@ describe('query.resolver.ts.ejs', () => {
63
63
  ],
64
64
  };
65
65
 
66
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
66
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
67
67
  const resolverFile = plans.find((p) => p.outputPath.endsWith('query.resolver.ts'));
68
68
 
69
69
  expect(resolverFile?.contents).toMatchInlineSnapshot(`
@@ -129,7 +129,7 @@ describe('query.resolver.ts.ejs', () => {
129
129
  it('should generate a valid query resolver with array of inline object field', async () => {
130
130
  const spec: SpecsSchema = {
131
131
  variant: 'specs',
132
- flows: [
132
+ narratives: [
133
133
  {
134
134
  name: 'assistant-flow',
135
135
  slices: [
@@ -187,7 +187,7 @@ describe('query.resolver.ts.ejs', () => {
187
187
  ],
188
188
  };
189
189
 
190
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
190
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
191
191
  const resolverFile = plans.find((p) => p.outputPath.endsWith('query.resolver.ts'));
192
192
 
193
193
  expect(resolverFile?.contents).toMatchInlineSnapshot(`
@@ -254,7 +254,7 @@ describe('query.resolver.ts.ejs', () => {
254
254
  it('should generate the query resolver for "views the questionnaire"', async () => {
255
255
  const spec: SpecsSchema = {
256
256
  variant: 'specs',
257
- flows: [
257
+ narratives: [
258
258
  {
259
259
  name: 'Questionnaires',
260
260
  slices: [
@@ -354,7 +354,7 @@ describe('query.resolver.ts.ejs', () => {
354
354
  integrations: [],
355
355
  };
356
356
 
357
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
357
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
358
358
  const queryFile = plans.find(
359
359
  (p) => p.outputPath.endsWith('query.resolver.ts') && p.contents.includes('ViewsTheQuestionnaireQueryResolver'),
360
360
  );
@@ -429,7 +429,7 @@ describe('query.resolver.ts.ejs', () => {
429
429
  it('should import Float when Float fields are used', async () => {
430
430
  const spec: SpecsSchema = {
431
431
  variant: 'specs',
432
- flows: [
432
+ narratives: [
433
433
  {
434
434
  name: 'product-flow',
435
435
  slices: [
@@ -482,7 +482,7 @@ describe('query.resolver.ts.ejs', () => {
482
482
  ],
483
483
  };
484
484
 
485
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
485
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
486
486
  const resolverFile = plans.find((p) => p.outputPath.endsWith('query.resolver.ts'));
487
487
 
488
488
  expect(resolverFile?.contents).toContain(
@@ -493,7 +493,7 @@ describe('query.resolver.ts.ejs', () => {
493
493
  it('should import Float when array of numbers is used', async () => {
494
494
  const spec: SpecsSchema = {
495
495
  variant: 'specs',
496
- flows: [
496
+ narratives: [
497
497
  {
498
498
  name: 'stats-flow',
499
499
  slices: [
@@ -544,7 +544,7 @@ describe('query.resolver.ts.ejs', () => {
544
544
  ],
545
545
  };
546
546
 
547
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
547
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
548
548
  const resolverFile = plans.find((p) => p.outputPath.endsWith('query.resolver.ts'));
549
549
 
550
550
  expect(resolverFile?.contents).toContain('Float');
@@ -553,7 +553,7 @@ describe('query.resolver.ts.ejs', () => {
553
553
  it('should import Float when Float query arg is used', async () => {
554
554
  const spec: SpecsSchema = {
555
555
  variant: 'specs',
556
- flows: [
556
+ narratives: [
557
557
  {
558
558
  name: 'search-flow',
559
559
  slices: [
@@ -604,7 +604,7 @@ describe('query.resolver.ts.ejs', () => {
604
604
  ],
605
605
  };
606
606
 
607
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
607
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
608
608
  const resolverFile = plans.find((p) => p.outputPath.endsWith('query.resolver.ts'));
609
609
 
610
610
  expect(resolverFile?.contents).toContain('Float');
@@ -1,12 +1,12 @@
1
1
  import { describe, it, expect } from 'vitest';
2
2
  import { generateScaffoldFilePlans } from '../../scaffoldFromSchema';
3
- import { Model as SpecsSchema } from '@auto-engineer/flow';
3
+ import { Model as SpecsSchema } from '@auto-engineer/narrative';
4
4
 
5
5
  describe('state.ts.ejs', () => {
6
6
  it('should generate a valid state definition file for a query slice with a state message', async () => {
7
7
  const spec: SpecsSchema = {
8
8
  variant: 'specs',
9
- flows: [
9
+ narratives: [
10
10
  {
11
11
  name: 'Inventory management',
12
12
  slices: [
@@ -52,7 +52,7 @@ describe('state.ts.ejs', () => {
52
52
  ],
53
53
  };
54
54
 
55
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
55
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
56
56
  const stateFile = plans.find((p) => p.outputPath.endsWith('state.ts'));
57
57
 
58
58
  expect(stateFile?.contents).toMatchInlineSnapshot(`
@@ -1,12 +1,12 @@
1
1
  import { describe, it, expect } from 'vitest';
2
- import { Model as SpecsSchema } from '@auto-engineer/flow';
2
+ import { Model as SpecsSchema } from '@auto-engineer/narrative';
3
3
  import { generateScaffoldFilePlans } from '../../scaffoldFromSchema';
4
4
 
5
5
  describe('react.specs.ts.ejs (react slice)', () => {
6
6
  it('should generate correct react.specs.ts', async () => {
7
7
  const spec: SpecsSchema = {
8
8
  variant: 'specs',
9
- flows: [
9
+ narratives: [
10
10
  {
11
11
  name: 'manage bookings',
12
12
  slices: [
@@ -161,7 +161,7 @@ describe('react.specs.ts.ejs (react slice)', () => {
161
161
  ],
162
162
  };
163
163
 
164
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
164
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
165
165
 
166
166
  const specFile = plans.find((p) => p.outputPath.endsWith('react.specs.ts'));
167
167
  expect(specFile?.contents).toMatchInlineSnapshot(`
@@ -1,12 +1,12 @@
1
1
  import { describe, it, expect } from 'vitest';
2
- import { Model as SpecsSchema } from '@auto-engineer/flow';
2
+ import { Model as SpecsSchema } from '@auto-engineer/narrative';
3
3
  import { generateScaffoldFilePlans } from '../../scaffoldFromSchema';
4
4
 
5
5
  describe('handle.ts.ejs (react slice)', () => {
6
6
  it('should generate correct react.ts', async () => {
7
7
  const spec: SpecsSchema = {
8
8
  variant: 'specs',
9
- flows: [
9
+ narratives: [
10
10
  {
11
11
  name: 'manage bookings',
12
12
  slices: [
@@ -215,7 +215,7 @@ describe('handle.ts.ejs (react slice)', () => {
215
215
  ],
216
216
  };
217
217
 
218
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
218
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
219
219
  const handleFile = plans.find((p) => p.outputPath.endsWith('react.ts'));
220
220
 
221
221
  expect(handleFile?.contents).toMatchInlineSnapshot(`
@@ -1,12 +1,12 @@
1
1
  import { describe, it, expect } from 'vitest';
2
- import { Model as SpecsSchema } from '@auto-engineer/flow';
2
+ import { Model as SpecsSchema } from '@auto-engineer/narrative';
3
3
  import { generateScaffoldFilePlans } from '../../scaffoldFromSchema';
4
4
 
5
5
  describe('register.ts.ejs (react slice)', () => {
6
6
  it('should generate correct register.ts', async () => {
7
7
  const spec: SpecsSchema = {
8
8
  variant: 'specs',
9
- flows: [
9
+ narratives: [
10
10
  {
11
11
  name: 'manage bookings',
12
12
  slices: [
@@ -215,7 +215,7 @@ describe('register.ts.ejs (react slice)', () => {
215
215
  ],
216
216
  };
217
217
 
218
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
218
+ const plans = await generateScaffoldFilePlans(spec.narratives, spec.messages, undefined, 'src/domain/flows');
219
219
  const registerFile = plans.find((p) => p.outputPath.endsWith('send-notification-to-host/register.ts'));
220
220
 
221
221
  expect(registerFile?.contents).toMatchInlineSnapshot(`
@@ -1,4 +1,4 @@
1
- import { Model as SpecsSchema } from '@auto-engineer/flow';
1
+ import { Model as SpecsSchema } from '@auto-engineer/narrative';
2
2
  declare const specVariant1: SpecsSchema;
3
3
  export default specVariant1;
4
4
  //# sourceMappingURL=specVariant1.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"specVariant1.d.ts","sourceRoot":"","sources":["../../../../src/codegen/test-data/specVariant1.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAE3D,QAAA,MAAM,YAAY,EAAE,WAoNnB,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"specVariant1.d.ts","sourceRoot":"","sources":["../../../../src/codegen/test-data/specVariant1.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEhE,QAAA,MAAM,YAAY,EAAE,WAoNnB,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -1,6 +1,6 @@
1
1
  const specVariant1 = {
2
2
  variant: 'specs',
3
- flows: [
3
+ narratives: [
4
4
  {
5
5
  name: 'Add item',
6
6
  description: 'Flow to add items to a system',
@@ -1 +1 @@
1
- {"version":3,"file":"specVariant1.js","sourceRoot":"","sources":["../../../../src/codegen/test-data/specVariant1.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"specVariant1.js","sourceRoot":"","sources":["../../../../src/codegen/test-data/specVariant1.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { CommandExample, EventExample, StateExample } from '@auto-engineer/flow';
1
+ import { CommandExample, EventExample, StateExample } from '@auto-engineer/narrative';
2
2
  export interface Message {
3
3
  type: string;
4
4
  fields: Field[];
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/codegen/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB,CAAC,CAAC;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,YAAY,CAAC,CAAC;IAC3C,IAAI,EAAE,cAAc,GAAG,YAAY,EAAE,CAAC;IACtC,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,YAAY,GAAG,cAAc,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/codegen/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAEtF,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB,CAAC,CAAC;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,YAAY,CAAC,CAAC;IAC3C,IAAI,EAAE,cAAc,GAAG,YAAY,EAAE,CAAC;IACtC,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,YAAY,GAAG,cAAc,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"generate-server.d.ts","sourceRoot":"","sources":["../../../src/commands/generate-server.ts"],"names":[],"mappings":"AAYA,OAAO,EAAwB,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAWlF,MAAM,MAAM,qBAAqB,GAAG,OAAO,CACzC,gBAAgB,EAChB;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB,CACF,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,KAAK,CACtC,iBAAiB,EACjB;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CACF,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,KAAK,CAC7C,wBAAwB,EACxB;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf,CACF,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,KAAK,CACrC,gBAAgB,EAChB;IACE,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,CACF,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,oBAAoB,GAAG,2BAA2B,GAAG,mBAAmB,CAAC;AAE5G,eAAO,MAAM,cAAc,qDA+BzB,CAAC;AAqKH,wBAAsB,mCAAmC,CACvD,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,oBAAoB,EAAE,CAAC,CA4EjC;AAkPD,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"generate-server.d.ts","sourceRoot":"","sources":["../../../src/commands/generate-server.ts"],"names":[],"mappings":"AAYA,OAAO,EAAwB,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAWlF,MAAM,MAAM,qBAAqB,GAAG,OAAO,CACzC,gBAAgB,EAChB;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB,CACF,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,KAAK,CACtC,iBAAiB,EACjB;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CACF,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,KAAK,CAC7C,wBAAwB,EACxB;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf,CACF,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,KAAK,CACrC,gBAAgB,EAChB;IACE,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,CACF,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,oBAAoB,GAAG,2BAA2B,GAAG,mBAAmB,CAAC;AAE5G,eAAO,MAAM,cAAc,qDA+BzB,CAAC;AAqKH,wBAAsB,mCAAmC,CACvD,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAgFjC;AAkPD,eAAe,cAAc,CAAC"}
@@ -72,16 +72,16 @@ async function readAndParseModel(absModel) {
72
72
  debugModel('Model content length: %d bytes', content.length);
73
73
  const spec = JSON.parse(content);
74
74
  debugModel('Parsed model:');
75
- debugModel(' Flows: %d', spec.flows?.length || 0);
75
+ debugModel(' Flows: %d', spec.narratives?.length || 0);
76
76
  debugModel(' Messages: %d', spec.messages?.length || 0);
77
77
  debugModel(' Integrations: %d', spec.integrations?.length ?? 0);
78
78
  logFlowDetails(spec);
79
79
  return spec;
80
80
  }
81
81
  function logFlowDetails(spec) {
82
- if (spec.flows !== undefined && spec.flows.length > 0) {
83
- debugModel('Flow names: %o', spec.flows.map((f) => f.name));
84
- spec.flows.forEach((flow) => {
82
+ if (spec.narratives !== undefined && spec.narratives.length > 0) {
83
+ debugModel('Flow names: %o', spec.narratives.map((f) => f.name));
84
+ spec.narratives.forEach((flow) => {
85
85
  debugModel(' Flow "%s" has %d slices', flow.name, flow.slices?.length || 0);
86
86
  flow.slices?.forEach((slice) => {
87
87
  debugModel(' Slice: %s (type: %s)', slice.name, slice.type);
@@ -114,8 +114,8 @@ async function generateAndWriteScaffold(spec, serverDir) {
114
114
  const domainFlowsPath = join(serverDir, 'src', 'domain', 'flows');
115
115
  debugScaffold('Generating scaffold file plans');
116
116
  debugScaffold(' Domain flows path: %s', domainFlowsPath);
117
- debugScaffold(' Number of flows: %d', spec.flows?.length || 0);
118
- const filePlans = await generateScaffoldFilePlans(spec.flows, spec.messages, spec.integrations, domainFlowsPath);
117
+ debugScaffold(' Number of flows: %d', spec.narratives?.length || 0);
118
+ const filePlans = await generateScaffoldFilePlans(spec.narratives, spec.messages, spec.integrations, domainFlowsPath);
119
119
  debugScaffold('Generated %d file plans', filePlans.length);
120
120
  if (filePlans.length > 0) {
121
121
  debugScaffold('Sample file paths:');
@@ -195,12 +195,15 @@ export async function handleGenerateServerCommandInternal(command) {
195
195
  const serverDir = join(absDest, 'server');
196
196
  debug('Server directory: %s', serverDir);
197
197
  debug('🔄 Generating server... %s', serverDir);
198
+ debug('Clearing existing server directory if it exists');
199
+ await fs.remove(serverDir);
200
+ debug('Server directory cleared');
198
201
  await ensureDirExists(serverDir);
199
202
  debugFiles('Created server directory: %s', serverDir);
200
203
  await copyAllFiles(serverDir);
201
204
  await generateAndWriteScaffold(spec, serverDir);
202
- if (Array.isArray(spec.flows) && spec.flows.length > 0) {
203
- for (const flow of spec.flows) {
205
+ if (Array.isArray(spec.narratives) && spec.narratives.length > 0) {
206
+ for (const flow of spec.narratives) {
204
207
  if (Array.isArray(flow.slices) && flow.slices.length > 0) {
205
208
  for (const slice of flow.slices) {
206
209
  if (slice.type === 'experience')
@@ -1 +1 @@
1
- {"version":3,"file":"generate-server.js","sourceRoot":"","sources":["../../../src/commands/generate-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-server.js","sourceRoot":"","sources":["../../../src/commands/generate-server.ts"],"names":[],"mappings":"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"}