@auto-engineer/server-generator-apollo-emmett 1.145.0 → 1.147.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 (42) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/.turbo/turbo-test.log +6 -6
  3. package/.turbo/turbo-type-check.log +1 -1
  4. package/CHANGELOG.md +72 -0
  5. package/dist/src/codegen/extract/imports.js +1 -1
  6. package/dist/src/codegen/extract/imports.js.map +1 -1
  7. package/dist/src/codegen/extract/messages.d.ts.map +1 -1
  8. package/dist/src/codegen/extract/messages.js +4 -12
  9. package/dist/src/codegen/extract/messages.js.map +1 -1
  10. package/dist/src/codegen/scaffoldFromSchema.d.ts.map +1 -1
  11. package/dist/src/codegen/scaffoldFromSchema.js +17 -9
  12. package/dist/src/codegen/scaffoldFromSchema.js.map +1 -1
  13. package/dist/src/codegen/templates/command/decide.specs.specs.ts +189 -0
  14. package/dist/src/codegen/templates/command/decide.specs.ts.ejs +3 -2
  15. package/dist/src/codegen/templates/query/events.specs.ts +133 -0
  16. package/dist/src/codegen/templates/query/projection.specs.ts +3 -10
  17. package/dist/src/codegen/templates/query/query.resolver.specs.ts +6 -20
  18. package/dist/src/codegen/templates/query/query.resolver.ts.ejs +14 -5
  19. package/dist/src/codegen/templates/react/react.specs.ts.ejs +2 -2
  20. package/dist/src/codegen/templates/react/react.ts.ejs +1 -1
  21. package/dist/src/codegen/templates/react/register.ts.ejs +1 -1
  22. package/dist/src/codegen/types.d.ts +1 -0
  23. package/dist/src/codegen/types.d.ts.map +1 -1
  24. package/dist/tsconfig.tsbuildinfo +1 -1
  25. package/ketchup-plan.md +4 -6
  26. package/package.json +4 -4
  27. package/src/codegen/extract/imports.specs.ts +26 -0
  28. package/src/codegen/extract/imports.ts +1 -1
  29. package/src/codegen/extract/messages.specs.ts +9 -8
  30. package/src/codegen/extract/messages.ts +4 -12
  31. package/src/codegen/extract/states.specs.ts +53 -0
  32. package/src/codegen/scaffoldFromSchema.ts +18 -5
  33. package/src/codegen/templates/command/decide.specs.specs.ts +189 -0
  34. package/src/codegen/templates/command/decide.specs.ts.ejs +3 -2
  35. package/src/codegen/templates/query/events.specs.ts +133 -0
  36. package/src/codegen/templates/query/projection.specs.ts +3 -10
  37. package/src/codegen/templates/query/query.resolver.specs.ts +6 -20
  38. package/src/codegen/templates/query/query.resolver.ts.ejs +14 -5
  39. package/src/codegen/templates/react/react.specs.ts.ejs +2 -2
  40. package/src/codegen/templates/react/react.ts.ejs +1 -1
  41. package/src/codegen/templates/react/register.ts.ejs +1 -1
  42. package/src/codegen/types.ts +1 -0
@@ -1,5 +1,5 @@
1
1
 
2
- > @auto-engineer/server-generator-apollo-emmett@1.145.0 build /home/runner/work/auto-engineer/auto-engineer/packages/server-generator-apollo-emmett
2
+ > @auto-engineer/server-generator-apollo-emmett@1.147.0 build /home/runner/work/auto-engineer/auto-engineer/packages/server-generator-apollo-emmett
3
3
  > tsc && tsx ../../scripts/fix-esm-imports.ts && rm -rf dist/src/codegen/templates && mkdir -p dist/src/codegen && cp -r src/codegen/templates dist/src/codegen/templates && cp src/server.ts dist/src && cp -r src/utils dist/src && cp -r src/domain dist/src
4
4
 
5
5
  Fixed ESM imports in dist/
@@ -1,14 +1,14 @@
1
1
 
2
- > @auto-engineer/server-generator-apollo-emmett@1.144.0 test /home/runner/work/auto-engineer/auto-engineer/packages/server-generator-apollo-emmett
2
+ > @auto-engineer/server-generator-apollo-emmett@1.146.0 test /home/runner/work/auto-engineer/auto-engineer/packages/server-generator-apollo-emmett
3
3
  > vitest run --reporter=dot
4
4
 
5
5
 
6
6
   RUN  v3.2.4 /home/runner/work/auto-engineer/auto-engineer/packages/server-generator-apollo-emmett
7
7
 
8
- ·········································································································································································································································································-····························
8
+ ············································································································································································································································································-·······························
9
9
 
10
-  Test Files  38 passed | 1 skipped (39)
11
-  Tests  293 passed | 1 skipped (294)
12
-  Start at  07:43:42
13
-  Duration  32.42s (transform 4.90s, setup 0ms, collect 68.06s, tests 13.41s, environment 9ms, prepare 5.44s)
10
+  Test Files  39 passed | 1 skipped (40)
11
+  Tests  299 passed | 1 skipped (300)
12
+  Start at  19:12:40
13
+  Duration  29.97s (transform 5.01s, setup 0ms, collect 60.39s, tests 12.81s, environment 10ms, prepare 5.88s)
14
14
 
@@ -1,4 +1,4 @@
1
1
 
2
- > @auto-engineer/server-generator-apollo-emmett@1.144.0 type-check /home/runner/work/auto-engineer/auto-engineer/packages/server-generator-apollo-emmett
2
+ > @auto-engineer/server-generator-apollo-emmett@1.146.0 type-check /home/runner/work/auto-engineer/auto-engineer/packages/server-generator-apollo-emmett
3
3
  > tsc --noEmit --project tsconfig.json
4
4
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,77 @@
1
1
  # @auto-engineer/server-generator-apollo-emmett
2
2
 
3
+ ## 1.147.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`e2d4008`](https://github.com/BeOnAuto/auto-engineer/commit/e2d4008281a41617cf5f9d569ed22badcf0cd065) Thanks [@github-actions[bot]](https://github.com/github-actions%5Bbot%5D)! - - **server-generator-apollo-emmett**: generate aggregateStream pre-loading for cross-scene Givens
8
+ - **server-generator-apollo-emmett**: compute crossSceneGivens in template data
9
+ - **react-gen**: clean stale src/ subdirectories in scaffold step
10
+ - **server-generator-apollo-emmett**: return single object for id-lookup query resolvers
11
+ - **server-generator-apollo-emmett**: use narrative prefix in cross-scene import paths
12
+
13
+ ### Patch Changes
14
+
15
+ - [`6b87393`](https://github.com/BeOnAuto/auto-engineer/commit/6b873936a12636585cbddf03e4d752dde9080155) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added planning documentation for fixing cross-stream Given states in the server generator
16
+
17
+ - [`0316cef`](https://github.com/BeOnAuto/auto-engineer/commit/0316cefd25f16e986418290337a9e813fa8395b1) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added planning document for fixing generator bugs related to G1 and G2 scenarios
18
+
19
+ - [`cde9ffa`](https://github.com/BeOnAuto/auto-engineer/commit/cde9ffa01867f4a989ecdb79a0849246021b9e86) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Fixed empty files being generated in scaffold output for query/projection moments that have no local events
20
+
21
+ - [`53d65dd`](https://github.com/BeOnAuto/auto-engineer/commit/53d65dd80a3c348bc584c474bd2dc8ab5e9737cb) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Marked the G1+G2 ketchup plan as complete for the Apollo Emmett server generator
22
+
23
+ - [`1c99de6`](https://github.com/BeOnAuto/auto-engineer/commit/1c99de6e21e406d879fa964372ecb58e84f5b616) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Fixed incorrect placement of Given-step state references (e.g. WorkoutDraft, UserProfile) that were being added to the events array instead of the states array
24
+ - Eliminated phantom Event types appearing in generated events.ts files
25
+ - Eliminated phantom case handlers appearing in generated evolve.ts files
26
+
27
+ - [`f6cb5c2`](https://github.com/BeOnAuto/auto-engineer/commit/f6cb5c2908dc7cabf2a1d93c9000ad9682452cf7) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Fixed generated test files incorrectly using state references as events in the given() setup, ensuring only actual event references are included
28
+
29
+ - [`54b5163`](https://github.com/BeOnAuto/auto-engineer/commit/54b5163e6752ce2a2438aae1d759810d5460a687) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Reverted cross-stream aggregate pre-loading in generated command handlers
30
+ - Command handlers now correctly operate on a single stream, aligning with Emmett's event sourcing model
31
+ - Cross-aggregate data should be passed via command enrichment instead of pre-loading from other streams
32
+ - Updated dependencies [[`6b87393`](https://github.com/BeOnAuto/auto-engineer/commit/6b873936a12636585cbddf03e4d752dde9080155), [`0316cef`](https://github.com/BeOnAuto/auto-engineer/commit/0316cefd25f16e986418290337a9e813fa8395b1), [`cde9ffa`](https://github.com/BeOnAuto/auto-engineer/commit/cde9ffa01867f4a989ecdb79a0849246021b9e86), [`53d65dd`](https://github.com/BeOnAuto/auto-engineer/commit/53d65dd80a3c348bc584c474bd2dc8ab5e9737cb), [`1c99de6`](https://github.com/BeOnAuto/auto-engineer/commit/1c99de6e21e406d879fa964372ecb58e84f5b616), [`e2d4008`](https://github.com/BeOnAuto/auto-engineer/commit/e2d4008281a41617cf5f9d569ed22badcf0cd065), [`f6cb5c2`](https://github.com/BeOnAuto/auto-engineer/commit/f6cb5c2908dc7cabf2a1d93c9000ad9682452cf7), [`54b5163`](https://github.com/BeOnAuto/auto-engineer/commit/54b5163e6752ce2a2438aae1d759810d5460a687)]:
33
+ - @auto-engineer/message-bus@1.147.0
34
+ - @auto-engineer/narrative@1.147.0
35
+
36
+ ## 1.146.0
37
+
38
+ ### Minor Changes
39
+
40
+ - [`d5786a1`](https://github.com/BeOnAuto/auto-engineer/commit/d5786a13f0a725715c6a7cf460576ec5ae2cf006) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added cross-scene Given event detection that identifies when a Given step references events produced by a different scene
41
+ - Computes source stream patterns and links stream pattern variables to command fields for proper event resolution in handle templates
42
+
43
+ - [`f919ab8`](https://github.com/BeOnAuto/auto-engineer/commit/f919ab8b5954397a2c73a4c6f2ea0f781fb42373) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added automatic pre-loading of cross-scene Given events in generated command handlers
44
+ - Generated handle.ts now reads external aggregate state from the event store before processing commands
45
+ - Ensures cross-scene events are available at runtime, matching test behavior
46
+
47
+ - [`b43f4e5`](https://github.com/BeOnAuto/auto-engineer/commit/b43f4e5cea147bc94d2baa31ca41694fa8ac0648) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added automatic cleanup of stale source directories during project scaffolding to prevent validation failures from prior generations
48
+
49
+ - [`08b1aac`](https://github.com/BeOnAuto/auto-engineer/commit/08b1aac466fcaa402bae5f347b29d26309c07533) Thanks [@github-actions[bot]](https://github.com/github-actions%5Bbot%5D)! - - **narrative**: replace UISchema with UISpecSchema for JSON Render specs
50
+ - **global**: version packages
51
+
52
+ ### Patch Changes
53
+
54
+ - [`1bb3450`](https://github.com/BeOnAuto/auto-engineer/commit/1bb3450e2a717095a729567b10c7cdd4c2cc0ee3) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Fixed cross-scene import paths to include the narrative prefix in directory names, resolving broken references between scenes in generated Apollo/Emmett server code
55
+
56
+ - [`5c461e2`](https://github.com/BeOnAuto/auto-engineer/commit/5c461e2a0b179196f5fee1bc6e97f12d786869f4) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added plan for cleaning up stale directories in the React generator
57
+
58
+ - [`e50042b`](https://github.com/BeOnAuto/auto-engineer/commit/e50042b4aa74c6927f21d3fa4cead565ebe1b321) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added source scene directory name to Message type to support correct cross-scene import path resolution
59
+
60
+ - [`20c1f72`](https://github.com/BeOnAuto/auto-engineer/commit/20c1f7251a75f01c874908b535689f5b005f480d) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Finalized cleanup plan for removing stale directories during React code generation scaffolding
61
+
62
+ - [`ee01249`](https://github.com/BeOnAuto/auto-engineer/commit/ee01249e68270d940039bf9721d14f7e120f5424) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Finalized planning for cross-scene Given events support in the Apollo Emmett server generator
63
+
64
+ - [`d2d750d`](https://github.com/BeOnAuto/auto-engineer/commit/d2d750dc7d4f0e7d350fd1b4f7f2cafc2f4d249b) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Per-entity query resolvers that look up by ID now return a single object (or null) instead of an array
65
+ - Automatically detects ID-lookup queries based on argument mapping to the entity's ID field
66
+
67
+ - [`bb63e07`](https://github.com/BeOnAuto/auto-engineer/commit/bb63e071efadb52a838efa1c677caf1640fdf69f) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added planning for cross-scene Given event support in server command handlers
68
+
69
+ - [`2a893a3`](https://github.com/BeOnAuto/auto-engineer/commit/2a893a38f3a7b568fd608ec0e09644984167a95b) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Finalized plan for G1 and G3 fixes in the Apollo Emmett server generator
70
+
71
+ - Updated dependencies [[`1bb3450`](https://github.com/BeOnAuto/auto-engineer/commit/1bb3450e2a717095a729567b10c7cdd4c2cc0ee3), [`5c461e2`](https://github.com/BeOnAuto/auto-engineer/commit/5c461e2a0b179196f5fee1bc6e97f12d786869f4), [`d5786a1`](https://github.com/BeOnAuto/auto-engineer/commit/d5786a13f0a725715c6a7cf460576ec5ae2cf006), [`e50042b`](https://github.com/BeOnAuto/auto-engineer/commit/e50042b4aa74c6927f21d3fa4cead565ebe1b321), [`20c1f72`](https://github.com/BeOnAuto/auto-engineer/commit/20c1f7251a75f01c874908b535689f5b005f480d), [`ee01249`](https://github.com/BeOnAuto/auto-engineer/commit/ee01249e68270d940039bf9721d14f7e120f5424), [`d2d750d`](https://github.com/BeOnAuto/auto-engineer/commit/d2d750dc7d4f0e7d350fd1b4f7f2cafc2f4d249b), [`f919ab8`](https://github.com/BeOnAuto/auto-engineer/commit/f919ab8b5954397a2c73a4c6f2ea0f781fb42373), [`b43f4e5`](https://github.com/BeOnAuto/auto-engineer/commit/b43f4e5cea147bc94d2baa31ca41694fa8ac0648), [`08b1aac`](https://github.com/BeOnAuto/auto-engineer/commit/08b1aac466fcaa402bae5f347b29d26309c07533), [`bb63e07`](https://github.com/BeOnAuto/auto-engineer/commit/bb63e071efadb52a838efa1c677caf1640fdf69f), [`2a893a3`](https://github.com/BeOnAuto/auto-engineer/commit/2a893a38f3a7b568fd608ec0e09644984167a95b)]:
72
+ - @auto-engineer/message-bus@1.146.0
73
+ - @auto-engineer/narrative@1.146.0
74
+
3
75
  ## 1.145.0
4
76
 
5
77
  ### Minor Changes
@@ -20,7 +20,7 @@ export function groupEventImports(context) {
20
20
  const isCrossScene = sourceSceneName != null && sourceSceneName !== currentSceneName;
21
21
  const sliceSegment = toKebabCase(event.sourceMomentName ?? currentMomentName);
22
22
  importPath = isCrossScene
23
- ? `../../${toKebabCase(sourceSceneName)}/${sliceSegment}/events`
23
+ ? `../../${event.sourceSceneDirName ?? toKebabCase(sourceSceneName)}/${sliceSegment}/events`
24
24
  : `../${sliceSegment}/events`;
25
25
  }
26
26
  if (!importGroups.has(importPath)) {
@@ -1 +1 @@
1
- {"version":3,"file":"imports.js","sourceRoot":"","sources":["../../../../src/codegen/extract/imports.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAa5C;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAiC;IACjE,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAChE,MAAM,YAAY,GAAG,IAAI,GAAG,EAAoB,CAAC;IAEjD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,IAAI;YAAE,SAAS;QAC1B,IAAI,UAAkB,CAAC;QACvB,MAAM,mBAAmB,GACvB,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,gBAAgB,KAAK,iBAAiB,IAAI,KAAK,CAAC,gBAAgB,IAAI,IAAI,CAAC;QAE5G,IAAI,mBAAmB,EAAE,CAAC;YACxB,UAAU,GAAG,UAAU,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;YAC9C,MAAM,YAAY,GAAG,eAAe,IAAI,IAAI,IAAI,eAAe,KAAK,gBAAgB,CAAC;YACrF,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,gBAAgB,IAAI,iBAAiB,CAAC,CAAC;YAC9E,UAAU,GAAG,YAAY;gBACvB,CAAC,CAAC,SAAS,WAAW,CAAC,eAAe,CAAC,IAAI,YAAY,SAAS;gBAChE,CAAC,CAAC,MAAM,YAAY,SAAS,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAClC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACnC,CAAC;QACD,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;QACjD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3E,UAAU;QACV,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE;KAC9B,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAiB;IAChD,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAErG,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAiB;IACpD,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC5C,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;AAClE,CAAC"}
1
+ {"version":3,"file":"imports.js","sourceRoot":"","sources":["../../../../src/codegen/extract/imports.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAa5C;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAiC;IACjE,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAChE,MAAM,YAAY,GAAG,IAAI,GAAG,EAAoB,CAAC;IAEjD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,IAAI;YAAE,SAAS;QAC1B,IAAI,UAAkB,CAAC;QACvB,MAAM,mBAAmB,GACvB,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,gBAAgB,KAAK,iBAAiB,IAAI,KAAK,CAAC,gBAAgB,IAAI,IAAI,CAAC;QAE5G,IAAI,mBAAmB,EAAE,CAAC;YACxB,UAAU,GAAG,UAAU,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;YAC9C,MAAM,YAAY,GAAG,eAAe,IAAI,IAAI,IAAI,eAAe,KAAK,gBAAgB,CAAC;YACrF,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,gBAAgB,IAAI,iBAAiB,CAAC,CAAC;YAC9E,UAAU,GAAG,YAAY;gBACvB,CAAC,CAAC,SAAS,KAAK,CAAC,kBAAkB,IAAI,WAAW,CAAC,eAAe,CAAC,IAAI,YAAY,SAAS;gBAC5F,CAAC,CAAC,MAAM,YAAY,SAAS,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAClC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACnC,CAAC;QACD,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;QACjD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3E,UAAU;QACV,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE;KAC9B,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAiB;IAChD,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAErG,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAiB;IACpD,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC5C,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;AAClE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAejF,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACtC,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC;IAClB,IAAI,EAAE,UAAU,EAAE,CAAC;CACpB;AAmOD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE,GAAG,iBAAiB,CA+B3G"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAejF,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACtC,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC;IAClB,IAAI,EAAE,UAAU,EAAE,CAAC;CACpB;AA2ND,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE,GAAG,iBAAiB,CA+B3G"}
@@ -66,16 +66,8 @@ function extractMessagesForCommand(slice, allMessages) {
66
66
  debugCommand(' Extracted %d commands', commands.length);
67
67
  debugCommand(' Command schemas: %o', Object.keys(commandSchemasByName));
68
68
  const allGivenRefs = gwtSpecs.flatMap((gwt) => gwt.given);
69
- const stateAsEvents = allGivenRefs
70
- .filter((ref) => !allMessages.some((m) => m.type === 'event' && m.name === ref.eventRef))
71
- .filter((ref) => allMessages.some((m) => m.type === 'state' && m.name === ref.eventRef))
72
- .map((ref) => ({
73
- type: ref.eventRef,
74
- fields: extractFieldsFromMessage(ref.eventRef, 'state', allMessages),
75
- source: 'then',
76
- sourceMomentName: slice.name,
77
- }));
78
- debugCommand(' State-as-events from Given: %d', stateAsEvents.length);
69
+ const givenStates = extractStatesFromGiven(allGivenRefs, allMessages);
70
+ debugCommand(' Given states: %d', givenStates.length);
79
71
  const events = gwtSpecs.flatMap((gwt) => {
80
72
  const eventOnlyGiven = gwt.given.filter((ref) => allMessages.some((m) => m.type === 'event' && m.name === ref.eventRef));
81
73
  const givenEvents = extractEventsFromGiven(eventOnlyGiven, allMessages, slice.name);
@@ -89,8 +81,8 @@ function extractMessagesForCommand(slice, allMessages) {
89
81
  debugCommand(' Extracted %d data target events', dataTargetEvents.length);
90
82
  const result = {
91
83
  commands,
92
- events: deduplicateMessages([...stateAsEvents, ...events, ...dataTargetEvents]),
93
- states: [],
84
+ events: deduplicateMessages([...events, ...dataTargetEvents]),
85
+ states: givenStates,
94
86
  commandSchemasByName,
95
87
  };
96
88
  debugCommand(' Final result: %d commands, %d events', result.commands.length, result.events.length);
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../../src/codegen/extract/messages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../../src/codegen/extract/messages.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"scaffoldFromSchema.d.ts","sourceRoot":"","sources":["../../../src/codegen/scaffoldFromSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaffoldFromSchema.d.ts","sourceRoot":"","sources":["../../../src/codegen/scaffoldFromSchema.ts"],"names":[],"mappings":"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"}
@@ -574,12 +574,13 @@ async function prepareTemplateData(slice, scene, commands, events, states, comma
574
574
  argToStateFieldMap,
575
575
  };
576
576
  }
577
- function annotateEventSources(events, scenes, fallbackFlowName, fallbackMomentName, momentType) {
577
+ function annotateEventSources(events, scenes, fallbackFlowName, fallbackMomentName, momentType, sceneNameToDirName) {
578
578
  debug('Annotating event sources for %d events', events.length);
579
579
  for (const event of events) {
580
580
  const match = findEventSource(scenes, event.type);
581
581
  event.sourceSceneName = match?.sceneName ?? fallbackFlowName;
582
582
  event.sourceMomentName = match?.momentName ?? (momentType === 'react' ? undefined : fallbackMomentName);
583
+ event.sourceSceneDirName = sceneNameToDirName?.get(event.sourceSceneName);
583
584
  debug(' Event %s: scene=%s, slice=%s', event.type, event.sourceSceneName, event.sourceMomentName);
584
585
  }
585
586
  }
@@ -613,12 +614,13 @@ export function findEventSource(scenes, eventType) {
613
614
  debugMoment(' No source found for event: %s', eventType);
614
615
  return null;
615
616
  }
616
- function annotateCommandSources(commands, scenes, fallbackFlowName, fallbackMomentName, momentType) {
617
+ function annotateCommandSources(commands, scenes, fallbackFlowName, fallbackMomentName, momentType, sceneNameToDirName) {
617
618
  debug('Annotating command sources for %d commands', commands.length);
618
619
  for (const command of commands) {
619
620
  const match = findCommandSource(scenes, command.type);
620
621
  command.sourceSceneName = match?.sceneName ?? fallbackFlowName;
621
622
  command.sourceMomentName = match?.momentName ?? (momentType === 'react' ? undefined : fallbackMomentName);
623
+ command.sourceSceneDirName = sceneNameToDirName?.get(command.sourceSceneName);
622
624
  debug(' Command %s: scene=%s, slice=%s', command.type, command.sourceSceneName, command.sourceMomentName);
623
625
  }
624
626
  }
@@ -638,7 +640,7 @@ function findCommandSource(scenes, commandType) {
638
640
  debugMoment(' No source found for command: %s', commandType);
639
641
  return null;
640
642
  }
641
- async function generateFilesForMoment(slice, scene, momentDir, messages, scenes, unionToEnumName, integrations, registeredCommands) {
643
+ async function generateFilesForMoment(slice, scene, momentDir, messages, scenes, unionToEnumName, integrations, registeredCommands, sceneNameToDirName) {
642
644
  debugMoment('Generating files for moment: %s (type: %s)', slice.name, slice.type);
643
645
  debugMoment(' Scene: %s', scene.name);
644
646
  debugMoment(' Output directory: %s', momentDir);
@@ -660,8 +662,8 @@ async function generateFilesForMoment(slice, scene, momentDir, messages, scenes,
660
662
  debugMoment(' Events: %d', extracted.events.length);
661
663
  debugMoment(' States: %d', extracted.states.length);
662
664
  debugMoment('💡 Events for moment', slice.name, extracted.events.map((e) => e.type));
663
- annotateEventSources(extracted.events, scenes, scene.name, slice.name, slice.type);
664
- annotateCommandSources(extracted.commands, scenes, scene.name, slice.name, slice.type);
665
+ annotateEventSources(extracted.events, scenes, scene.name, slice.name, slice.type, sceneNameToDirName);
666
+ annotateCommandSources(extracted.commands, scenes, scene.name, slice.name, slice.type, sceneNameToDirName);
665
667
  let filteredTemplates = templates;
666
668
  if (slice.type === 'command' && registeredCommands) {
667
669
  const commandTypes = extracted.commands.map((c) => c.type);
@@ -689,7 +691,8 @@ async function generateFilesForMoment(slice, scene, momentDir, messages, scenes,
689
691
  }
690
692
  const templateData = await prepareTemplateData(slice, scene, extracted.commands, extracted.events, extracted.states, extracted.commandSchemasByName, extracted.projectionIdField, extracted.projectionSingleton, messages, integrations, scenes);
691
693
  debugMoment(' Generating %d files from templates', filteredTemplates.length);
692
- const plans = await Promise.all(filteredTemplates.map((template) => generateFileForTemplate(template, slice, momentDir, templateData, unionToEnumName)));
694
+ const allPlans = await Promise.all(filteredTemplates.map((template) => generateFileForTemplate(template, slice, momentDir, templateData, unionToEnumName)));
695
+ const plans = allPlans.filter((p) => p.contents.trim().length > 0);
693
696
  debugMoment(' Generated %d file plans for moment: %s', plans.length, slice.name);
694
697
  return { plans, duplicateCommands };
695
698
  }
@@ -738,12 +741,17 @@ export async function generateScaffoldFilePlans(scenes, messages, integrations,
738
741
  }
739
742
  }
740
743
  }
744
+ const sceneNameToDirName = new Map();
741
745
  for (const scene of scenes) {
742
- debugScene('Processing scene: %s', scene.name);
743
746
  const narrativeName = scene.id ? sceneToNarrative.get(scene.id) : undefined;
744
- const sceneDirName = narrativeName
747
+ const dirName = narrativeName
745
748
  ? `${toKebabCase(narrativeName)}_${toKebabCase(scene.name)}`
746
749
  : toKebabCase(scene.name);
750
+ sceneNameToDirName.set(scene.name, dirName);
751
+ }
752
+ for (const scene of scenes) {
753
+ debugScene('Processing scene: %s', scene.name);
754
+ const sceneDirName = sceneNameToDirName.get(scene.name);
747
755
  const sceneDir = ensureDirPath(baseDir, sceneDirName);
748
756
  debugScene(' Scene directory: %s', sceneDir);
749
757
  debugScene(' Number of moments: %d', scene.moments.length);
@@ -757,7 +765,7 @@ export async function generateScaffoldFilePlans(scenes, messages, integrations,
757
765
  const momentDir = ensureDirPath(sceneDir, toKebabCase(slice.name));
758
766
  debugScene(' Moment directory: %s', momentDir);
759
767
  try {
760
- const { plans, duplicateCommands } = await generateFilesForMoment(slice, scene, momentDir, sanitizedMessages, scenes, unionToEnumName, integrations, registeredCommands);
768
+ const { plans, duplicateCommands } = await generateFilesForMoment(slice, scene, momentDir, sanitizedMessages, scenes, unionToEnumName, integrations, registeredCommands, sceneNameToDirName);
761
769
  debugScene(' Generated %d plans for moment', plans.length);
762
770
  allPlans.push(...plans);
763
771
  allDuplicateCommands.push(...duplicateCommands);
@@ -1 +1 @@
1
- {"version":3,"file":"scaffoldFromSchema.js","sourceRoot":"","sources":["../../../src/codegen/scaffoldFromSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaffoldFromSchema.js","sourceRoot":"","sources":["../../../src/codegen/scaffoldFromSchema.ts"],"names":[],"mappings":"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"}