@auto-engineer/server-generator-apollo-emmett 0.1.4 → 0.8.1

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 (132) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/.turbo/turbo-test.log +14 -171
  3. package/.turbo/turbo-type-check.log +4 -5
  4. package/CHANGELOG.md +19 -0
  5. package/dist/codegen/extract/commands.d.ts +11 -5
  6. package/dist/codegen/extract/commands.d.ts.map +1 -1
  7. package/dist/codegen/extract/commands.js +27 -12
  8. package/dist/codegen/extract/commands.js.map +1 -1
  9. package/dist/codegen/extract/data-sink.d.ts.map +1 -1
  10. package/dist/codegen/extract/data-sink.js +52 -28
  11. package/dist/codegen/extract/data-sink.js.map +1 -1
  12. package/dist/codegen/extract/gwt.d.ts.map +1 -1
  13. package/dist/codegen/extract/gwt.js +37 -6
  14. package/dist/codegen/extract/gwt.js.map +1 -1
  15. package/dist/codegen/extract/messages.d.ts.map +1 -1
  16. package/dist/codegen/extract/messages.js +38 -6
  17. package/dist/codegen/extract/messages.js.map +1 -1
  18. package/dist/codegen/extract/query.d.ts.map +1 -1
  19. package/dist/codegen/extract/query.js +9 -2
  20. package/dist/codegen/extract/query.js.map +1 -1
  21. package/dist/codegen/scaffoldFromSchema.d.ts.map +1 -1
  22. package/dist/codegen/scaffoldFromSchema.js +21 -6
  23. package/dist/codegen/scaffoldFromSchema.js.map +1 -1
  24. package/dist/codegen/templates/command/commands.specs.ts +28 -19
  25. package/dist/codegen/templates/command/decide.specs.specs.ts +75 -57
  26. package/dist/codegen/templates/command/decide.specs.ts +147 -110
  27. package/dist/codegen/templates/command/events.specs.ts +38 -29
  28. package/dist/codegen/templates/command/evolve.specs.ts +33 -24
  29. package/dist/codegen/templates/command/handle.specs.ts +61 -43
  30. package/dist/codegen/templates/command/mutation.resolver.specs.ts +28 -19
  31. package/dist/codegen/templates/command/register.specs.ts +34 -25
  32. package/dist/codegen/templates/command/state.specs.ts +34 -25
  33. package/dist/codegen/templates/query/projection.specs.specs..ts +100 -80
  34. package/dist/codegen/templates/query/projection.specs.ts +101 -81
  35. package/dist/codegen/templates/query/query.resolver.specs.ts +2 -2
  36. package/dist/codegen/templates/query/state.specs.ts +1 -1
  37. package/dist/codegen/templates/react/react.specs.specs.ts +86 -68
  38. package/dist/codegen/templates/react/react.specs.ts +123 -96
  39. package/dist/codegen/templates/react/react.specs.ts.ejs +9 -1
  40. package/dist/codegen/templates/react/react.ts.ejs +8 -1
  41. package/dist/codegen/templates/react/register.specs.ts +123 -96
  42. package/dist/codegen/templates/react/register.ts.ejs +8 -1
  43. package/dist/codegen/test-data/specVariant1.d.ts.map +1 -1
  44. package/dist/codegen/test-data/specVariant1.js +92 -65
  45. package/dist/codegen/test-data/specVariant1.js.map +1 -1
  46. package/dist/codegen/types.d.ts +4 -4
  47. package/dist/codegen/types.d.ts.map +1 -1
  48. package/dist/commands/generate-server.d.ts +11 -45
  49. package/dist/commands/generate-server.d.ts.map +1 -1
  50. package/dist/commands/generate-server.js +29 -24
  51. package/dist/commands/generate-server.js.map +1 -1
  52. package/dist/index.d.ts +11 -2
  53. package/dist/index.d.ts.map +1 -1
  54. package/dist/index.js +2 -2
  55. package/dist/index.js.map +1 -1
  56. package/package.json +9 -9
  57. package/src/codegen/extract/commands.ts +48 -19
  58. package/src/codegen/extract/data-sink.ts +68 -31
  59. package/src/codegen/extract/gwt.ts +45 -10
  60. package/src/codegen/extract/messages.ts +49 -7
  61. package/src/codegen/extract/query.ts +15 -2
  62. package/src/codegen/scaffoldFromSchema.ts +27 -6
  63. package/src/codegen/templates/command/commands.specs.ts +28 -19
  64. package/src/codegen/templates/command/decide.specs.specs.ts +75 -57
  65. package/src/codegen/templates/command/decide.specs.ts +147 -110
  66. package/src/codegen/templates/command/events.specs.ts +38 -29
  67. package/src/codegen/templates/command/evolve.specs.ts +33 -24
  68. package/src/codegen/templates/command/handle.specs.ts +61 -43
  69. package/src/codegen/templates/command/mutation.resolver.specs.ts +28 -19
  70. package/src/codegen/templates/command/register.specs.ts +34 -25
  71. package/src/codegen/templates/command/state.specs.ts +34 -25
  72. package/src/codegen/templates/query/projection.specs.specs..ts +100 -80
  73. package/src/codegen/templates/query/projection.specs.ts +101 -81
  74. package/src/codegen/templates/query/query.resolver.specs.ts +2 -2
  75. package/src/codegen/templates/query/state.specs.ts +1 -1
  76. package/src/codegen/templates/react/react.specs.specs.ts +86 -68
  77. package/src/codegen/templates/react/react.specs.ts +123 -96
  78. package/src/codegen/templates/react/react.specs.ts.ejs +9 -1
  79. package/src/codegen/templates/react/react.ts.ejs +8 -1
  80. package/src/codegen/templates/react/register.specs.ts +123 -96
  81. package/src/codegen/templates/react/register.ts.ejs +8 -1
  82. package/src/codegen/test-data/specVariant1.ts +92 -65
  83. package/src/codegen/types.ts +4 -4
  84. package/src/commands/generate-server.ts +29 -28
  85. package/src/index.ts +8 -2
  86. package/tsconfig.tsbuildinfo +1 -1
  87. package/.tmp/server-test-output/server/package.json +0 -26
  88. package/.tmp/server-test-output/server/scripts/generate-schema.ts +0 -31
  89. package/.tmp/server-test-output/server/src/domain/flows/add-item/create-item/commands.ts +0 -8
  90. package/.tmp/server-test-output/server/src/domain/flows/add-item/create-item/decide.specs.ts +0 -36
  91. package/.tmp/server-test-output/server/src/domain/flows/add-item/create-item/decide.ts +0 -33
  92. package/.tmp/server-test-output/server/src/domain/flows/add-item/create-item/events.ts +0 -10
  93. package/.tmp/server-test-output/server/src/domain/flows/add-item/create-item/evolve.ts +0 -28
  94. package/.tmp/server-test-output/server/src/domain/flows/add-item/create-item/handle.ts +0 -24
  95. package/.tmp/server-test-output/server/src/domain/flows/add-item/create-item/mutation.resolver.ts +0 -25
  96. package/.tmp/server-test-output/server/src/domain/flows/add-item/create-item/register.ts +0 -7
  97. package/.tmp/server-test-output/server/src/domain/flows/add-item/create-item/state.ts +0 -47
  98. package/.tmp/server-test-output/server/src/domain/flows/add-item/get-available-items/projection.specs.ts +0 -46
  99. package/.tmp/server-test-output/server/src/domain/flows/add-item/get-available-items/projection.ts +0 -38
  100. package/.tmp/server-test-output/server/src/domain/flows/add-item/get-available-items/query.resolver.ts +0 -39
  101. package/.tmp/server-test-output/server/src/domain/flows/add-item/get-available-items/state.ts +0 -5
  102. package/.tmp/server-test-output/server/src/domain/flows/add-item/notify-new-item/commands.ts +0 -8
  103. package/.tmp/server-test-output/server/src/domain/flows/add-item/notify-new-item/decide.specs.ts +0 -36
  104. package/.tmp/server-test-output/server/src/domain/flows/add-item/notify-new-item/decide.ts +0 -33
  105. package/.tmp/server-test-output/server/src/domain/flows/add-item/notify-new-item/events.ts +0 -3
  106. package/.tmp/server-test-output/server/src/domain/flows/add-item/notify-new-item/evolve.ts +0 -28
  107. package/.tmp/server-test-output/server/src/domain/flows/add-item/notify-new-item/handle.ts +0 -24
  108. package/.tmp/server-test-output/server/src/domain/flows/add-item/notify-new-item/mutation.resolver.ts +0 -25
  109. package/.tmp/server-test-output/server/src/domain/flows/add-item/notify-new-item/register.ts +0 -7
  110. package/.tmp/server-test-output/server/src/domain/flows/add-item/notify-new-item/state.ts +0 -47
  111. package/.tmp/server-test-output/server/src/domain/flows/add-item/notify-on-new-item/react.specs.ts +0 -49
  112. package/.tmp/server-test-output/server/src/domain/flows/add-item/notify-on-new-item/react.ts +0 -43
  113. package/.tmp/server-test-output/server/src/domain/flows/add-item/notify-on-new-item/register.ts +0 -24
  114. package/.tmp/server-test-output/server/src/domain/shared/ReadModel.ts +0 -26
  115. package/.tmp/server-test-output/server/src/domain/shared/index.ts +0 -4
  116. package/.tmp/server-test-output/server/src/domain/shared/reactorSpecification.ts +0 -257
  117. package/.tmp/server-test-output/server/src/domain/shared/sendCommand.ts +0 -21
  118. package/.tmp/server-test-output/server/src/domain/shared/types.ts +0 -31
  119. package/.tmp/server-test-output/server/src/server.ts +0 -43
  120. package/.tmp/server-test-output/server/src/utils/index.ts +0 -3
  121. package/.tmp/server-test-output/server/src/utils/loadProjections.ts +0 -30
  122. package/.tmp/server-test-output/server/src/utils/loadRegisterFiles.ts +0 -41
  123. package/.tmp/server-test-output/server/src/utils/loadResolvers.ts +0 -36
  124. package/.tmp/server-test-output/server/tsconfig.json +0 -19
  125. package/.tmp/server-test-output/server/vitest.config.ts +0 -7
  126. package/.turbo/turbo-format.log +0 -57
  127. package/.turbo/turbo-lint.log +0 -5
  128. package/dist/cli-manifest.d.ts +0 -3
  129. package/dist/cli-manifest.d.ts.map +0 -1
  130. package/dist/cli-manifest.js +0 -35
  131. package/dist/cli-manifest.js.map +0 -1
  132. package/src/cli-manifest.ts +0 -37
@@ -1,5 +1,5 @@
1
1
 
2
- > @auto-engineer/server-generator-apollo-emmett@0.1.4 build /Users/sam/WebstormProjects/top/auto-engineer/packages/server-generator-apollo-emmett
2
+ > @auto-engineer/server-generator-apollo-emmett@0.8.1 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/codegen/templates && mkdir -p dist/codegen && cp -r src/codegen/templates dist/codegen/templates && cp src/server.ts dist/ && cp -r src/utils dist/ && cp -r src/domain dist/
4
4
 
5
5
  Fixed ESM imports in dist/
@@ -1,171 +1,14 @@
1
-
2
- 
3
- > @auto-engineer/server-generator-apollo-emmett@0.1.4 test /Users/sam/WebstormProjects/top/auto-engineer/packages/server-generator-apollo-emmett
4
- > vitest run
5
-
6
- [?25l
7
-  RUN  v3.2.4 /Users/sam/WebstormProjects/top/auto-engineer/packages/server-generator-apollo-emmett
8
-
9
- [?2026h
10
-  src/codegen/templates/query/projection.specs.ts [queued]
11
-
12
-  Test Files 0 passed (16)
13
-  Tests 0 passed (0)
14
-  Start at 23:05:14
15
-  Duration 203ms
16
- [?2026l[?2026h
17
-  ❯ src/codegen/templates/command/commands.specs.ts 0/1
18
-  ❯ src/codegen/templates/command/decide.specs.specs.ts [queued]
19
-  ❯ src/codegen/templates/command/decide.specs.ts [queued]
20
-  ❯ src/codegen/templates/command/events.specs.ts [queued]
21
-  ❯ src/codegen/templates/command/evolve.specs.ts [queued]
22
-  ❯ src/codegen/templates/command/handle.specs.ts [queued]
23
-  ❯ src/codegen/templates/command/mutation.resolver.specs.ts [queued]
24
-  ❯ src/codegen/templates/command/register.specs.ts [queued]
25
-  ❯ src/codegen/templates/command/state.specs.ts [queued]
26
-  ❯ src/codegen/templates/query/projection.specs.ts [queued]
27
-  ❯ src/codegen/templates/query/query.resolver.specs.ts [queued]
28
-  ❯ src/codegen/templates/query/state.specs.ts [queued]
29
-  ❯ src/codegen/templates/react/react.specs.specs.ts [queued]
30
-  ❯ src/codegen/templates/react/react.specs.ts [queued]
31
-  ❯ src/codegen/templates/react/register.specs.ts [queued]
32
-
33
-  Test Files 0 passed (16)
34
-  Tests 0 passed (1)
35
-  Start at 23:05:14
36
-  Duration 303ms
37
- [?2026l[?2026hstdout | src/codegen/templates/command/commands.specs.ts > commands.ts.ejs > should generate correct command file
38
- 💡 Events for slice Create listing []
39
-
40
- stdout | src/codegen/templates/command/mutation.resolver.specs.ts > mutation.resolver.ts.ejs > should generate a valid mutation resolver file
41
- 💡 Events for slice Create listing []
42
-
43
- stdout | src/codegen/templates/command/register.specs.ts > generateScaffoldFilePlans > should generate a valid register file
44
- 💡 Events for slice Create listing [ 'ListingCreated' ]
45
-
46
- stdout | src/codegen/templates/command/evolve.specs.ts > evolve.ts.ejs > should generate a valid evolve file from event structure
47
- 💡 Events for slice Create listing [ 'ListingCreated' ]
48
-
49
- stdout | src/codegen/templates/command/events.specs.ts > events.ts.ejs > should generate an event file
50
- 💡 Events for slice Create listing [ 'ListingCreated' ]
51
-
52
- stdout | src/codegen/templates/query/state.specs.ts > state.ts.ejs > should generate a valid state definition file for a query slice with a state message
53
- 💡 Events for slice Get available items []
54
-
55
- stdout | src/codegen/templates/react/register.specs.ts > register.ts.ejs (react slice) > should generate correct register.ts
56
- 💡 Events for slice guest submits booking request [ 'BookingRequested' ]
57
-
58
- stdout | src/codegen/templates/react/react.specs.specs.ts > react.specs.ts.ejs (react slice) > should generate correct react.specs.ts
59
- 💡 Events for slice guest submits booking request [ 'BookingRequested' ]
60
-
61
- stdout | src/codegen/templates/command/state.specs.ts > state.ts.ejs > should generate an initial state
62
- 💡 Events for slice Create listing [ 'ListingCreated' ]
63
-
64
- stdout | src/codegen/templates/command/handle.specs.ts > generateScaffoldFilePlans > should generate a valid handle file
65
- 💡 Events for slice Create listing [ 'ListingCreated' ]
66
-
67
- stdout | src/codegen/templates/command/decide.specs.specs.ts > spec.ts.ejs > should generate a valid spec file
68
- 💡 Events for slice Create listing [ 'ListingCreated' ]
69
-
70
- stdout | src/codegen/templates/react/react.specs.ts > handle.ts.ejs (react slice) > should generate correct react.ts
71
- 💡 Events for slice guest submits booking request [ 'BookingRequested' ]
72
-
73
- stdout | src/codegen/templates/command/decide.specs.ts > decide.ts.ejs > should generate a valid decide file when both command and event exist
74
- 💡 Events for slice Create listing [ 'ListingCreated' ]
75
-
76
- stdout | src/codegen/templates/query/query.resolver.specs.ts > query.resolver.ts.ejs > should generate a valid query resolver from request field
77
- 💡 Events for slice search-listings []
78
-
79
- stdout | src/codegen/templates/query/projection.specs.ts > projection.ts.ejs > should generate a valid projection file with correct relative event import path from producing slice
80
- 💡 Events for slice create-listing [ 'ListingCreated', 'ListingRemoved' ]
81
-
82
- ✓ src/codegen/templates/query/state.specs.ts (1 test) 83ms
83
- stdout | src/codegen/templates/command/handle.specs.ts > generateScaffoldFilePlans > should generate a valid handle file with integration
84
- 💡 Events for slice Suggest Items [ 'ItemsSuggested' ]
85
-
86
-
87
-  ❯ src/codegen/templates/command/commands.specs.ts 0/1
88
-  ❯ src/codegen/templates/command/decide.specs.specs.ts 0/2
89
-  ❯ src/codegen/templates/command/decide.specs.ts 0/4
90
-  ❯ src/codegen/templates/command/events.specs.ts 1/1
91
-  ❯ src/codegen/templates/command/evolve.specs.ts 0/1
92
-  ❯ src/codegen/templates/command/handle.specs.ts 0/2
93
-  ❯ src/codegen/templates/command/mutation.resolver.specs.ts 0/1
94
-  ❯ src/codegen/templates/command/register.specs.ts 0/1
95
-  ❯ src/codegen/templates/command/state.specs.ts 0/1
96
-  ❯ src/codegen/templates/query/projection.specs.ts 0/2
97
-  ❯ src/codegen/templates/query/query.resolver.specs.ts 0/2
98
-  ❯ src/codegen/templates/react/react.specs.specs.ts 0/1
99
-  ❯ src/codegen/templates/react/react.specs.ts 0/1
100
-  ❯ src/codegen/templates/react/register.specs.ts 0/1
101
-
102
-  Test Files 1 passed (16)
103
-  Tests 2 passed (22)
104
-  Start at 23:05:14
105
-  Duration 404ms
106
- [?2026l[?2026hstdout | src/codegen/templates/react/react.specs.ts > handle.ts.ejs (react slice) > should generate correct react.ts
107
- 💡 Events for slice Send notification to host [ 'BookingRequested' ]
108
-
109
- ✓ src/codegen/templates/command/events.specs.ts (1 test) 101ms
110
- stdout | src/codegen/templates/query/query.resolver.specs.ts > query.resolver.ts.ejs > should generate a valid query resolver with array of inline object field
111
- 💡 Events for slice views-suggested-items []
112
-
113
- ✓ src/codegen/templates/command/commands.specs.ts (1 test) 101ms
114
- ✓ src/codegen/templates/command/handle.specs.ts (2 tests) 104ms
115
- stdout | src/codegen/templates/react/react.specs.specs.ts > react.specs.ts.ejs (react slice) > should generate correct react.specs.ts
116
- 💡 Events for slice Send notification to host [ 'BookingRequested' ]
117
-
118
- stdout | src/codegen/templates/command/decide.specs.specs.ts > spec.ts.ejs > should include given events in the spec file when provided
119
- 💡 Events for slice Remove listing [ 'ListingCreated', 'ListingRemoved' ]
120
-
121
- stdout | src/codegen/templates/react/register.specs.ts > register.ts.ejs (react slice) > should generate correct register.ts
122
- 💡 Events for slice Send notification to host [ 'BookingRequested' ]
123
-
124
- stdout | src/codegen/templates/react/react.specs.ts > handle.ts.ejs (react slice) > should generate correct react.ts
125
- 💡 Events for slice notify host [ 'HostNotified' ]
126
-
127
- ✓ src/codegen/templates/command/state.specs.ts (1 test) 113ms
128
- ✓ src/codegen/templates/command/mutation.resolver.specs.ts (1 test) 105ms
129
- ✓ src/codegen/templates/command/register.specs.ts (1 test) 104ms
130
- stdout | src/codegen/templates/command/decide.specs.ts > decide.ts.ejs > should include implementation instructions when prior events are required
131
- 💡 Events for slice Remove listing [ 'ListingCreated', 'ListingRemoved' ]
132
-
133
- stdout | src/codegen/templates/query/projection.specs.ts > projection.ts.ejs > should generate a valid projection file with correct relative event import path from producing slice
134
- 💡 Events for slice search-listings [ 'ListingCreated', 'ListingRemoved' ]
135
-
136
- ✓ src/codegen/templates/command/decide.specs.specs.ts (2 tests) 127ms
137
- ✓ src/codegen/templates/query/query.resolver.specs.ts (2 tests) 126ms
138
- ✓ src/codegen/templates/command/evolve.specs.ts (1 test) 133ms
139
- ✓ src/codegen/templates/react/react.specs.specs.ts (1 test) 126ms
140
- stdout | src/codegen/templates/react/register.specs.ts > register.ts.ejs (react slice) > should generate correct register.ts
141
- 💡 Events for slice notify host [ 'HostNotified' ]
142
-
143
- stdout | src/codegen/templates/command/decide.specs.ts > decide.ts.ejs > should generate a decide file that handles multiple GWTs including an error
144
- 💡 Events for slice Create listing [ 'ListingCreated' ]
145
-
146
- ✓ src/codegen/templates/react/react.specs.ts (1 test) 129ms
147
- stdout | src/codegen/templates/query/projection.specs.ts > projection.ts.ejs > should generate a valid query resolver using ID type
148
- 💡 Events for slice view-wishlist []
149
-
150
- ✓ src/codegen/templates/react/register.specs.ts (1 test) 178ms
151
- stdout | src/codegen/templates/command/decide.specs.ts > decide.ts.ejs > should include integration return type and usage in decide function
152
- 💡 Events for slice Suggest Items [ 'ItemsSuggested' ]
153
-
154
-
155
-  ❯ src/codegen/templates/command/decide.specs.ts 2/4
156
-  ❯ src/codegen/templates/query/projection.specs.ts 0/2
157
-
158
-  Test Files 13 passed (16)
159
-  Tests 18 passed (22)
160
-  Start at 23:05:14
161
-  Duration 505ms
162
- [?2026l ✓ src/codegen/templates/query/projection.specs.ts (2 tests) 222ms
163
- ✓ src/codegen/templates/command/decide.specs.ts (4 tests) 239ms
164
- ↓ src/codegen/scaffoldFromSchema.integration.specs.ts (1 test | 1 skipped)
165
-
166
-  Test Files  15 passed | 1 skipped (16)
167
-  Tests  22 passed | 1 skipped (23)
168
-  Start at  23:05:14
169
-  Duration  675ms (transform 521ms, setup 0ms, collect 2.17s, tests 1.99s, environment 1ms, prepare 1.01s)
170
-
171
- [?25h
1
+
2
+ > @auto-engineer/server-generator-apollo-emmett@0.8.1 test /home/runner/work/auto-engineer/auto-engineer/packages/server-generator-apollo-emmett
3
+ > vitest run --reporter=dot
4
+
5
+
6
+  RUN  v3.2.4 /home/runner/work/auto-engineer/auto-engineer/packages/server-generator-apollo-emmett
7
+
8
+ ···················-···
9
+
10
+  Test Files  15 passed | 1 skipped (16)
11
+  Tests  22 passed | 1 skipped (23)
12
+  Start at  00:27:39
13
+  Duration  5.07s (transform 572ms, setup 0ms, collect 4.33s, tests 5.19s, environment 4ms, prepare 1.92s)
14
+
@@ -1,5 +1,4 @@
1
-
2
- 
3
- > @auto-engineer/server-generator-apollo-emmett@0.1.4 type-check /Users/sam/WebstormProjects/top/auto-engineer/packages/server-generator-apollo-emmett
4
- > tsc --noEmit --project tsconfig.json
5
-
1
+
2
+ > @auto-engineer/server-generator-apollo-emmett@0.8.1 type-check /home/runner/work/auto-engineer/auto-engineer/packages/server-generator-apollo-emmett
3
+ > tsc --noEmit --project tsconfig.json
4
+
package/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # @auto-engineer/server-generator-apollo-emmett
2
2
 
3
+ ## 0.2.1
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies
8
+ - @auto-engineer/flow@0.3.0
9
+
10
+ ## 0.2.0
11
+
12
+ ### Minor Changes
13
+
14
+ - add command details in dashboard
15
+
16
+ ### Patch Changes
17
+
18
+ - Updated dependencies
19
+ - @auto-engineer/flow@0.2.0
20
+ - @auto-engineer/message-bus@0.6.0
21
+
3
22
  ## 0.1.4
4
23
 
5
24
  ### Patch Changes
@@ -1,10 +1,9 @@
1
1
  import { CommandExample, EventExample } from '@auto-engineer/flow';
2
2
  import { Message, MessageDefinition } from '../types';
3
- import { ReactGwtSpec } from './messages';
4
3
  export declare function extractCommandsFromGwt(gwtSpecs: Array<{
5
- given?: EventExample[];
6
- when: CommandExample;
7
- then: Array<EventExample | {
4
+ given?: Array<EventExample | unknown>;
5
+ when: CommandExample | EventExample | unknown[];
6
+ then: Array<EventExample | unknown | {
8
7
  errorType: string;
9
8
  message?: string;
10
9
  }>;
@@ -12,7 +11,14 @@ export declare function extractCommandsFromGwt(gwtSpecs: Array<{
12
11
  commands: Message[];
13
12
  commandSchemasByName: Record<string, Message>;
14
13
  };
15
- export declare function extractCommandsFromThen(gwtSpecs: ReactGwtSpec[], allMessages: MessageDefinition[]): {
14
+ export declare function extractCommandsFromThen(gwtSpecs: Array<{
15
+ given?: Array<EventExample | unknown>;
16
+ when: CommandExample | EventExample | unknown[];
17
+ then: Array<EventExample | unknown | {
18
+ errorType: string;
19
+ message?: string;
20
+ }>;
21
+ }>, allMessages: MessageDefinition[]): {
16
22
  commands: Message[];
17
23
  commandSchemasByName: Record<string, Message>;
18
24
  };
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/codegen/extract/commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAoB1C,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,KAAK,CAAC;IACd,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACrE,CAAC,EACF,WAAW,EAAE,iBAAiB,EAAE,GAC/B;IAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAiBxE;AAED,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,YAAY,EAAE,EACxB,WAAW,EAAE,iBAAiB,EAAE,GAC/B;IAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CA0BxE"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/codegen/extract/commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAqBtD,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,KAAK,CAAC;IACd,KAAK,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,OAAO,CAAC,CAAC;IACtC,IAAI,EAAE,cAAc,GAAG,YAAY,GAAG,OAAO,EAAE,CAAC;IAChD,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,OAAO,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/E,CAAC,EACF,WAAW,EAAE,iBAAiB,EAAE,GAC/B;IAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAwBxE;AAgCD,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,KAAK,CAAC;IACd,KAAK,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,OAAO,CAAC,CAAC;IACtC,IAAI,EAAE,cAAc,GAAG,YAAY,GAAG,OAAO,EAAE,CAAC;IAChD,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,OAAO,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/E,CAAC,EACF,WAAW,EAAE,iBAAiB,EAAE,GAC/B;IAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAexE"}
@@ -15,7 +15,12 @@ export function extractCommandsFromGwt(gwtSpecs, allMessages) {
15
15
  const commands = gwtSpecs
16
16
  .map((gwt) => {
17
17
  const cmd = gwt.when;
18
- if (!cmd.commandRef)
18
+ if (Array.isArray(cmd) ||
19
+ typeof cmd !== 'object' ||
20
+ cmd === null ||
21
+ !('commandRef' in cmd) ||
22
+ typeof cmd.commandRef !== 'string' ||
23
+ !cmd.commandRef)
19
24
  return undefined;
20
25
  const command = createCommandMessage(cmd.commandRef, allMessages, 'when');
21
26
  if (command) {
@@ -26,6 +31,26 @@ export function extractCommandsFromGwt(gwtSpecs, allMessages) {
26
31
  .filter((cmd) => cmd !== undefined);
27
32
  return { commands, commandSchemasByName };
28
33
  }
34
+ function isValidCommandExample(commandExample) {
35
+ return (typeof commandExample === 'object' &&
36
+ commandExample !== null &&
37
+ 'commandRef' in commandExample &&
38
+ typeof commandExample.commandRef === 'string' &&
39
+ !!commandExample.commandRef);
40
+ }
41
+ function processCommandExample(commandExample, commands, commandSchemasByName, allMessages) {
42
+ if (!isValidCommandExample(commandExample)) {
43
+ return;
44
+ }
45
+ const commandRef = commandExample.commandRef;
46
+ if (!(commandRef in commandSchemasByName)) {
47
+ const command = createCommandMessage(commandRef, allMessages, 'then');
48
+ if (command) {
49
+ commands.push(command);
50
+ commandSchemasByName[commandRef] = command;
51
+ }
52
+ }
53
+ }
29
54
  export function extractCommandsFromThen(gwtSpecs, allMessages) {
30
55
  const commands = [];
31
56
  const commandSchemasByName = {};
@@ -34,17 +59,7 @@ export function extractCommandsFromThen(gwtSpecs, allMessages) {
34
59
  continue;
35
60
  }
36
61
  for (const commandExample of gwt.then) {
37
- if (!commandExample.commandRef) {
38
- continue;
39
- }
40
- const commandRef = commandExample.commandRef;
41
- if (!(commandRef in commandSchemasByName)) {
42
- const command = createCommandMessage(commandRef, allMessages, 'then');
43
- if (command) {
44
- commands.push(command);
45
- commandSchemasByName[commandRef] = command;
46
- }
47
- }
62
+ processCommandExample(commandExample, commands, commandSchemasByName, allMessages);
48
63
  }
49
64
  }
50
65
  return { commands, commandSchemasByName };
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/codegen/extract/commands.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAGpD,SAAS,oBAAoB,CAC3B,UAAkB,EAClB,WAAgC,EAChC,MAAuB;IAEvB,MAAM,MAAM,GAAG,wBAAwB,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAE5E,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QAC7C,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,MAAM;QACN,MAAM;KACP,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,QAIE,EACF,WAAgC;IAEhC,MAAM,oBAAoB,GAA4B,EAAE,CAAC;IAEzD,MAAM,QAAQ,GAAc,QAAQ;SACjC,GAAG,CAAC,CAAC,GAAG,EAAuB,EAAE;QAChC,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC;QACrB,IAAI,CAAC,GAAG,CAAC,UAAU;YAAE,OAAO,SAAS,CAAC;QAEtC,MAAM,OAAO,GAAG,oBAAoB,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QAC1E,IAAI,OAAO,EAAE,CAAC;YACZ,oBAAoB,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;QACjD,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,GAAG,EAAkB,EAAE,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC;IAEtD,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,QAAwB,EACxB,WAAgC;IAEhC,MAAM,QAAQ,GAAc,EAAE,CAAC;IAC/B,MAAM,oBAAoB,GAA4B,EAAE,CAAC;IAEzD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,SAAS;QACX,CAAC;QAED,KAAK,MAAM,cAAc,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;gBAC/B,SAAS;YACX,CAAC;YAED,MAAM,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC;YAC7C,IAAI,CAAC,CAAC,UAAU,IAAI,oBAAoB,CAAC,EAAE,CAAC;gBAC1C,MAAM,OAAO,GAAG,oBAAoB,CAAC,UAAU,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;gBACtE,IAAI,OAAO,EAAE,CAAC;oBACZ,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACvB,oBAAoB,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;gBAC7C,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAC;AAC5C,CAAC"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/codegen/extract/commands.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"data-sink.d.ts","sourceRoot":"","sources":["../../../src/codegen/extract/data-sink.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAQtE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG;IAAE,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAoC7F"}
1
+ {"version":3,"file":"data-sink.d.ts","sourceRoot":"","sources":["../../../src/codegen/extract/data-sink.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,EAAgB,MAAM,qBAAqB,CAAC;AAyDpF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG;IAAE,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAwB7F"}
@@ -1,39 +1,63 @@
1
1
  function resolveStreamId(stream, exampleData) {
2
2
  return stream.replace(/\$\{([^}]+)\}/g, (_, key) => String(exampleData?.[key] ?? 'unknown'));
3
3
  }
4
- // eslint-disable-next-line complexity
5
- export function getStreamFromSink(slice) {
6
- let streamPattern;
7
- let streamId;
8
- const gwtSpecs = slice.type === 'command'
9
- ? slice.server?.gwt
10
- : slice.type === 'query'
11
- ? slice.server?.gwt
12
- : slice.type === 'react'
13
- ? slice.server?.gwt
14
- : [];
15
- let exampleData = {};
4
+ function extractExampleDataFromReact(firstSpec) {
5
+ if (Array.isArray(firstSpec.when)) {
6
+ const firstWhen = firstSpec.when[0];
7
+ return typeof firstWhen?.exampleData === 'object' && firstWhen.exampleData !== null ? firstWhen.exampleData : {};
8
+ }
9
+ return {};
10
+ }
11
+ function extractExampleDataFromCommand(firstSpec) {
12
+ const then = firstSpec.then;
13
+ const firstExample = then.find((t) => 'exampleData' in t);
14
+ return typeof firstExample?.exampleData === 'object' && firstExample.exampleData !== null
15
+ ? firstExample.exampleData
16
+ : {};
17
+ }
18
+ function extractExampleDataFromQuery(firstSpec) {
19
+ if (Array.isArray(firstSpec.when)) {
20
+ const firstWhen = firstSpec.when[0];
21
+ return typeof firstWhen?.exampleData === 'object' && firstWhen.exampleData !== null ? firstWhen.exampleData : {};
22
+ }
23
+ return {};
24
+ }
25
+ function extractExampleDataFromSpecs(slice, gwtSpecs) {
26
+ if (gwtSpecs.length === 0) {
27
+ return {};
28
+ }
29
+ const firstSpec = gwtSpecs[0];
16
30
  switch (slice.type) {
17
31
  case 'react':
18
- exampleData = gwtSpecs[0].when?.[0]?.exampleData ?? {};
19
- break;
20
- case 'command': {
21
- const then = gwtSpecs[0]?.then;
22
- const firstExample = then.find((t) => 'exampleData' in t);
23
- exampleData = firstExample?.exampleData ?? {};
24
- break;
25
- }
32
+ return extractExampleDataFromReact(firstSpec);
33
+ case 'command':
34
+ return extractExampleDataFromCommand(firstSpec);
26
35
  case 'query':
27
- exampleData = gwtSpecs[0]?.given?.[0]?.exampleData ?? {};
28
- break;
36
+ return extractExampleDataFromQuery(firstSpec);
37
+ default:
38
+ return {};
29
39
  }
30
- const sink = (slice.server?.data ?? []).find((item) => item?.destination?.type === 'stream');
40
+ }
41
+ function findStreamSink(slice) {
42
+ return (slice.server?.data ?? []).find((item) => item?.destination?.type === 'stream');
43
+ }
44
+ export function getStreamFromSink(slice) {
45
+ const specs = slice.server?.specs;
46
+ const rules = specs?.rules;
47
+ const gwtSpecs = Array.isArray(rules) && rules.length > 0
48
+ ? rules.flatMap((rule) => rule.examples.map((example) => ({
49
+ given: example.given,
50
+ when: example.when,
51
+ then: example.then,
52
+ })))
53
+ : [];
54
+ const exampleData = extractExampleDataFromSpecs(slice, gwtSpecs);
55
+ const sink = findStreamSink(slice);
31
56
  if (sink && sink.destination.type === 'stream' && 'pattern' in sink.destination) {
32
- streamPattern = sink.destination.pattern;
33
- if (streamPattern != null) {
34
- streamId = resolveStreamId(streamPattern, exampleData);
35
- }
57
+ const streamPattern = sink.destination.pattern;
58
+ const streamId = streamPattern ? resolveStreamId(streamPattern, exampleData) : undefined;
59
+ return { streamPattern, streamId };
36
60
  }
37
- return { streamPattern, streamId };
61
+ return {};
38
62
  }
39
63
  //# sourceMappingURL=data-sink.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"data-sink.js","sourceRoot":"","sources":["../../../src/codegen/extract/data-sink.ts"],"names":[],"mappings":"AAGA,SAAS,eAAe,CAAC,MAAc,EAAE,WAAoC;IAC3E,OAAO,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAAE,GAAW,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC;AACvG,CAAC;AAED,sCAAsC;AACtC,MAAM,UAAU,iBAAiB,CAAC,KAAY;IAC5C,IAAI,aAAiC,CAAC;IACtC,IAAI,QAA4B,CAAC;IACjC,MAAM,QAAQ,GACZ,KAAK,CAAC,IAAI,KAAK,SAAS;QACtB,CAAC,CAAE,KAAK,CAAC,MAAM,EAAE,GAAwB;QACzC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO;YACtB,CAAC,CAAE,KAAK,CAAC,MAAM,EAAE,GAAsB;YACvC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO;gBACtB,CAAC,CAAE,KAAK,CAAC,MAAM,EAAE,GAAsB;gBACvC,CAAC,CAAC,EAAE,CAAC;IACb,IAAI,WAAW,GAA4B,EAAE,CAAC;IAC9C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,OAAO;YACV,WAAW,GAAI,QAA2B,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,IAAI,EAAE,CAAC;YAC3E,MAAM;QACR,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,IAAI,GAAI,QAA6B,CAAC,CAAC,CAAC,EAAE,IAAkD,CAAC;YACnG,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAuB,EAAE,CAAC,aAAa,IAAI,CAAC,CAAC,CAAC;YAC/E,WAAW,GAAG,YAAY,EAAE,WAAW,IAAI,EAAE,CAAC;YAC9C,MAAM;QACR,CAAC;QACD,KAAK,OAAO;YACV,WAAW,GAAI,QAA2B,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,IAAI,EAAE,CAAC;YAC7E,MAAM;IACV,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAE,IAAiB,EAAE,WAAW,EAAE,IAAI,KAAK,QAAQ,CAE5F,CAAC;IACd,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ,IAAI,SAAS,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QAChF,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QACzC,IAAI,aAAa,IAAI,IAAI,EAAE,CAAC;YAC1B,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IACD,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"data-sink.js","sourceRoot":"","sources":["../../../src/codegen/extract/data-sink.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"gwt.d.ts","sourceRoot":"","sources":["../../../src/codegen/extract/gwt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,YAAY,GAAG;IAAE,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,EAAE,CAAC,CAiCpH"}
1
+ {"version":3,"file":"gwt.d.ts","sourceRoot":"","sources":["../../../src/codegen/extract/gwt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAA8C,MAAM,qBAAqB,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,YAAY,GAAG;IAAE,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,EAAE,CAAC,CAQpH"}
@@ -2,11 +2,33 @@ export function buildCommandGwtMapping(slice) {
2
2
  if (slice.type !== 'command') {
3
3
  return {};
4
4
  }
5
- const gwtSpecs = slice.server?.gwt ?? [];
5
+ const gwtSpecs = extractGwtSpecs(slice);
6
+ const mapping = buildCommandMapping(gwtSpecs);
7
+ return enhanceMapping(mapping);
8
+ }
9
+ function extractGwtSpecs(slice) {
10
+ const specs = slice.server?.specs;
11
+ const rules = specs?.rules;
12
+ return Array.isArray(rules) && rules.length > 0
13
+ ? rules.flatMap((rule) => rule.examples.map((example) => ({
14
+ given: example.given,
15
+ when: example.when,
16
+ then: example.then,
17
+ })))
18
+ : [];
19
+ }
20
+ function buildCommandMapping(gwtSpecs) {
6
21
  const mapping = {};
7
22
  for (const gwt of gwtSpecs) {
8
- const command = gwt.when?.commandRef;
9
- if (command) {
23
+ let command;
24
+ if (Array.isArray(gwt.when)) {
25
+ continue;
26
+ }
27
+ else {
28
+ const whenCmd = gwt.when;
29
+ command = whenCmd?.commandRef;
30
+ }
31
+ if (typeof command === 'string' && command.length > 0) {
10
32
  mapping[command] = mapping[command] ?? [];
11
33
  mapping[command].push({
12
34
  given: gwt.given,
@@ -15,6 +37,9 @@ export function buildCommandGwtMapping(slice) {
15
37
  });
16
38
  }
17
39
  }
40
+ return mapping;
41
+ }
42
+ function enhanceMapping(mapping) {
18
43
  const enhancedMapping = {};
19
44
  for (const command in mapping) {
20
45
  const merged = mergeGwtConditions(mapping[command]);
@@ -29,7 +54,9 @@ export function buildCommandGwtMapping(slice) {
29
54
  function mergeGwtConditions(gwts) {
30
55
  const map = new Map();
31
56
  for (const gwt of gwts) {
32
- const key = JSON.stringify(gwt.when.exampleData);
57
+ // Handle both single command and array of events in when clause
58
+ const whenData = Array.isArray(gwt.when) ? gwt.when[0]?.exampleData : gwt.when.exampleData;
59
+ const key = JSON.stringify(whenData ?? {});
33
60
  const existing = map.get(key) ?? [];
34
61
  map.set(key, [...existing, gwt]);
35
62
  }
@@ -45,13 +72,17 @@ function mergeGwtConditions(gwts) {
45
72
  }
46
73
  function findSuccessfulExampleData(gwts) {
47
74
  const successful = gwts.find((gwt) => gwt.then.some((t) => typeof t === 'object' && t !== null && 'eventRef' in t));
48
- return successful?.when.exampleData ?? {};
75
+ const whenData = Array.isArray(successful?.when) ? successful?.when[0]?.exampleData : successful?.when?.exampleData;
76
+ return typeof whenData === 'object' && whenData !== null ? whenData : {};
49
77
  }
50
78
  function findFailingFields(gwt, successfulData) {
51
79
  const hasError = gwt.then.some((t) => typeof t === 'object' && t !== null && 'errorType' in t);
52
80
  if (!hasError)
53
81
  return [];
54
- return Object.entries(gwt.when.exampleData)
82
+ const whenData = Array.isArray(gwt.when) ? gwt.when[0]?.exampleData : gwt.when?.exampleData;
83
+ if (typeof whenData !== 'object' || whenData === null)
84
+ return [];
85
+ return Object.entries(whenData)
55
86
  .filter(([key, val]) => {
56
87
  const successVal = successfulData[key];
57
88
  return val === '' && successVal !== '' && successVal !== undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"gwt.js","sourceRoot":"","sources":["../../../src/codegen/extract/gwt.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,sBAAsB,CAAC,KAAY;IACjD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC;IACzC,MAAM,OAAO,GAAmC,EAAE,CAAC;IAEnD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC;QACrC,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAC1C,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;gBACpB,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,IAAI,EAAE,GAAG,CAAC,IAAI;aACf,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,eAAe,GAAoE,EAAE,CAAC;IAE5F,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QACpD,MAAM,cAAc,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;QAEzD,eAAe,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC9C,GAAG,GAAG;YACN,aAAa,EAAE,iBAAiB,CAAC,GAAG,EAAE,cAAc,CAAC;SACtD,CAAC,CAAC,CAAC;IACN,CAAC;IAED,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAoB;IAC9C,MAAM,GAAG,GAAG,IAAI,GAAG,EAA0B,CAAC;IAE9C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACpC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;QACjD,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvD,OAAO;YACL,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC/C,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,YAAY;SACnB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,yBAAyB,CAAC,IAAoB;IACrD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,UAAU,IAAI,CAAC,CAAC,CAAC,CAAC;IACpH,OAAO,UAAU,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC;AAC5C,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAiB,EAAE,cAAuC;IACnF,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,WAAW,IAAI,CAAC,CAAC,CAAC;IAE/F,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAC;IAEzB,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC;SACxC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE;QACrB,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QACvC,OAAO,GAAG,KAAK,EAAE,IAAI,UAAU,KAAK,EAAE,IAAI,UAAU,KAAK,SAAS,CAAC;IACrE,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"gwt.js","sourceRoot":"","sources":["../../../src/codegen/extract/gwt.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/codegen/extract/messages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACtG,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAYtD,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,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,IAAI,EAAE,cAAc,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,YAAY,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,IAAI,EAAE,YAAY,EAAE,CAAC;CACtB;AAgID,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,GAAG,iBAAiB,CA+B1G"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/codegen/extract/messages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACtG,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAYtD,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,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,IAAI,EAAE,cAAc,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,YAAY,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,IAAI,EAAE,YAAY,EAAE,CAAC;CACtB;AA0KD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,GAAG,iBAAiB,CA+B1G"}