@auto-engineer/server-generator-apollo-emmett 0.8.5 → 0.8.6

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 (148) hide show
  1. package/.turbo/turbo-build.log +2 -2
  2. package/CHANGELOG.md +8 -0
  3. package/dist/src/codegen/scaffoldFromSchema.d.ts +3 -3
  4. package/dist/src/codegen/scaffoldFromSchema.d.ts.map +1 -1
  5. package/dist/src/codegen/scaffoldFromSchema.js +54 -18
  6. package/dist/src/codegen/scaffoldFromSchema.js.map +1 -1
  7. package/dist/{codegen → src/codegen}/templates/command/commands.specs.ts +1 -2
  8. package/dist/{codegen → src/codegen}/templates/command/decide.specs.specs.ts +3 -3
  9. package/dist/{codegen → src/codegen}/templates/command/decide.specs.ts +1 -5
  10. package/dist/{codegen → src/codegen}/templates/command/events.specs.ts +1 -2
  11. package/dist/{codegen → src/codegen}/templates/command/evolve.specs.ts +1 -2
  12. package/dist/{codegen → src/codegen}/templates/command/handle.specs.ts +1 -3
  13. package/dist/src/codegen/templates/command/mutation.resolver.specs.ts +363 -0
  14. package/dist/src/codegen/templates/command/mutation.resolver.ts.ejs +99 -0
  15. package/dist/{codegen → src/codegen}/templates/command/register.specs.ts +1 -2
  16. package/dist/{codegen → src/codegen}/templates/command/state.specs.ts +1 -2
  17. package/dist/{codegen → src/codegen}/templates/query/projection.specs.specs..ts +3 -3
  18. package/dist/{codegen → src/codegen}/templates/query/projection.specs.ts +5 -9
  19. package/dist/{codegen → src/codegen}/templates/query/query.resolver.specs.ts +194 -23
  20. package/dist/src/codegen/templates/query/query.resolver.ts.ejs +137 -0
  21. package/dist/{codegen → src/codegen}/templates/query/state.specs.ts +1 -2
  22. package/dist/{codegen → src/codegen}/templates/react/react.specs.specs.ts +2 -2
  23. package/dist/{codegen → src/codegen}/templates/react/react.specs.ts +3 -3
  24. package/dist/{codegen → src/codegen}/templates/react/register.specs.ts +3 -3
  25. package/dist/src/codegen/test-data/specVariant1.d.ts +1 -1
  26. package/dist/src/codegen/test-data/specVariant1.d.ts.map +1 -1
  27. package/dist/src/codegen/test-data/specVariant1.js +4 -2
  28. package/dist/src/codegen/test-data/specVariant1.js.map +1 -1
  29. package/dist/src/commands/generate-server.d.ts.map +1 -1
  30. package/dist/src/commands/generate-server.js +34 -24
  31. package/dist/src/commands/generate-server.js.map +1 -1
  32. package/dist/tsconfig.tsbuildinfo +1 -1
  33. package/package.json +8 -7
  34. package/src/codegen/scaffoldFromSchema.ts +52 -20
  35. package/src/codegen/templates/command/commands.specs.ts +1 -2
  36. package/src/codegen/templates/command/decide.specs.specs.ts +3 -3
  37. package/src/codegen/templates/command/decide.specs.ts +1 -5
  38. package/src/codegen/templates/command/events.specs.ts +1 -2
  39. package/src/codegen/templates/command/evolve.specs.ts +1 -2
  40. package/src/codegen/templates/command/handle.specs.ts +1 -3
  41. package/src/codegen/templates/command/mutation.resolver.specs.ts +247 -8
  42. package/src/codegen/templates/command/mutation.resolver.ts.ejs +86 -12
  43. package/src/codegen/templates/command/register.specs.ts +1 -2
  44. package/src/codegen/templates/command/state.specs.ts +1 -2
  45. package/src/codegen/templates/query/projection.specs.specs..ts +3 -3
  46. package/src/codegen/templates/query/projection.specs.ts +5 -9
  47. package/src/codegen/templates/query/query.resolver.specs.ts +194 -23
  48. package/src/codegen/templates/query/query.resolver.ts.ejs +84 -45
  49. package/src/codegen/templates/query/state.specs.ts +1 -2
  50. package/src/codegen/templates/react/react.specs.specs.ts +2 -2
  51. package/src/codegen/templates/react/react.specs.ts +3 -3
  52. package/src/codegen/templates/react/register.specs.ts +3 -3
  53. package/src/codegen/test-data/specVariant1.ts +5 -3
  54. package/src/commands/generate-server.ts +38 -30
  55. package/tsconfig.test.json +9 -0
  56. package/.turbo/turbo-test.log +0 -14
  57. package/.turbo/turbo-type-check.log +0 -4
  58. package/dist/codegen/templates/command/mutation.resolver.specs.ts +0 -124
  59. package/dist/codegen/templates/command/mutation.resolver.ts.ejs +0 -25
  60. package/dist/codegen/templates/query/query.resolver.ts.ejs +0 -98
  61. package/dist/src/codegen/templates/command/commands.specs.d.ts +0 -2
  62. package/dist/src/codegen/templates/command/commands.specs.d.ts.map +0 -1
  63. package/dist/src/codegen/templates/command/commands.specs.js +0 -96
  64. package/dist/src/codegen/templates/command/commands.specs.js.map +0 -1
  65. package/dist/src/codegen/templates/command/decide.specs.d.ts +0 -2
  66. package/dist/src/codegen/templates/command/decide.specs.d.ts.map +0 -1
  67. package/dist/src/codegen/templates/command/decide.specs.js +0 -567
  68. package/dist/src/codegen/templates/command/decide.specs.js.map +0 -1
  69. package/dist/src/codegen/templates/command/decide.specs.specs.d.ts +0 -2
  70. package/dist/src/codegen/templates/command/decide.specs.specs.d.ts.map +0 -1
  71. package/dist/src/codegen/templates/command/decide.specs.specs.js +0 -278
  72. package/dist/src/codegen/templates/command/decide.specs.specs.js.map +0 -1
  73. package/dist/src/codegen/templates/command/events.specs.d.ts +0 -2
  74. package/dist/src/codegen/templates/command/events.specs.d.ts.map +0 -1
  75. package/dist/src/codegen/templates/command/events.specs.js +0 -112
  76. package/dist/src/codegen/templates/command/events.specs.js.map +0 -1
  77. package/dist/src/codegen/templates/command/evolve.specs.d.ts +0 -2
  78. package/dist/src/codegen/templates/command/evolve.specs.d.ts.map +0 -1
  79. package/dist/src/codegen/templates/command/evolve.specs.js +0 -108
  80. package/dist/src/codegen/templates/command/evolve.specs.js.map +0 -1
  81. package/dist/src/codegen/templates/command/handle.specs.d.ts +0 -2
  82. package/dist/src/codegen/templates/command/handle.specs.d.ts.map +0 -1
  83. package/dist/src/codegen/templates/command/handle.specs.js +0 -326
  84. package/dist/src/codegen/templates/command/handle.specs.js.map +0 -1
  85. package/dist/src/codegen/templates/command/mutation.resolver.specs.d.ts +0 -2
  86. package/dist/src/codegen/templates/command/mutation.resolver.specs.d.ts.map +0 -1
  87. package/dist/src/codegen/templates/command/mutation.resolver.specs.js +0 -121
  88. package/dist/src/codegen/templates/command/mutation.resolver.specs.js.map +0 -1
  89. package/dist/src/codegen/templates/command/register.specs.d.ts +0 -2
  90. package/dist/src/codegen/templates/command/register.specs.d.ts.map +0 -1
  91. package/dist/src/codegen/templates/command/register.specs.js +0 -113
  92. package/dist/src/codegen/templates/command/register.specs.js.map +0 -1
  93. package/dist/src/codegen/templates/command/state.specs.d.ts +0 -2
  94. package/dist/src/codegen/templates/command/state.specs.d.ts.map +0 -1
  95. package/dist/src/codegen/templates/command/state.specs.js +0 -133
  96. package/dist/src/codegen/templates/command/state.specs.js.map +0 -1
  97. package/dist/src/codegen/templates/query/projection.specs.d.ts +0 -2
  98. package/dist/src/codegen/templates/query/projection.specs.d.ts.map +0 -1
  99. package/dist/src/codegen/templates/query/projection.specs.js +0 -363
  100. package/dist/src/codegen/templates/query/projection.specs.js.map +0 -1
  101. package/dist/src/codegen/templates/query/projection.specs.specs..d.ts +0 -2
  102. package/dist/src/codegen/templates/query/projection.specs.specs..d.ts.map +0 -1
  103. package/dist/src/codegen/templates/query/projection.specs.specs..js +0 -293
  104. package/dist/src/codegen/templates/query/projection.specs.specs..js.map +0 -1
  105. package/dist/src/codegen/templates/query/query.resolver.specs.d.ts +0 -2
  106. package/dist/src/codegen/templates/query/query.resolver.specs.d.ts.map +0 -1
  107. package/dist/src/codegen/templates/query/query.resolver.specs.js +0 -249
  108. package/dist/src/codegen/templates/query/query.resolver.specs.js.map +0 -1
  109. package/dist/src/codegen/templates/query/state.specs.d.ts +0 -2
  110. package/dist/src/codegen/templates/query/state.specs.d.ts.map +0 -1
  111. package/dist/src/codegen/templates/query/state.specs.js +0 -67
  112. package/dist/src/codegen/templates/query/state.specs.js.map +0 -1
  113. package/dist/src/codegen/templates/react/react.specs.d.ts +0 -2
  114. package/dist/src/codegen/templates/react/react.specs.d.ts.map +0 -1
  115. package/dist/src/codegen/templates/react/react.specs.js +0 -265
  116. package/dist/src/codegen/templates/react/react.specs.js.map +0 -1
  117. package/dist/src/codegen/templates/react/react.specs.specs.d.ts +0 -2
  118. package/dist/src/codegen/templates/react/react.specs.specs.d.ts.map +0 -1
  119. package/dist/src/codegen/templates/react/react.specs.specs.js +0 -229
  120. package/dist/src/codegen/templates/react/react.specs.specs.js.map +0 -1
  121. package/dist/src/codegen/templates/react/register.specs.d.ts +0 -2
  122. package/dist/src/codegen/templates/react/register.specs.d.ts.map +0 -1
  123. package/dist/src/codegen/templates/react/register.specs.js +0 -246
  124. package/dist/src/codegen/templates/react/register.specs.js.map +0 -1
  125. /package/dist/{codegen → src/codegen}/templates/command/commands.ts.ejs +0 -0
  126. /package/dist/{codegen → src/codegen}/templates/command/decide.specs.ts.ejs +0 -0
  127. /package/dist/{codegen → src/codegen}/templates/command/decide.ts.ejs +0 -0
  128. /package/dist/{codegen → src/codegen}/templates/command/events.ts.ejs +0 -0
  129. /package/dist/{codegen → src/codegen}/templates/command/evolve.ts.ejs +0 -0
  130. /package/dist/{codegen → src/codegen}/templates/command/handle.ts.ejs +0 -0
  131. /package/dist/{codegen → src/codegen}/templates/command/register.ts.ejs +0 -0
  132. /package/dist/{codegen → src/codegen}/templates/command/state.ts.ejs +0 -0
  133. /package/dist/{codegen → src/codegen}/templates/query/projection.specs.ts.ejs +0 -0
  134. /package/dist/{codegen → src/codegen}/templates/query/projection.ts.ejs +0 -0
  135. /package/dist/{codegen → src/codegen}/templates/query/state.ts.ejs +0 -0
  136. /package/dist/{codegen → src/codegen}/templates/react/react.specs.ts.ejs +0 -0
  137. /package/dist/{codegen → src/codegen}/templates/react/react.ts.ejs +0 -0
  138. /package/dist/{codegen → src/codegen}/templates/react/register.ts.ejs +0 -0
  139. /package/dist/{domain → src/domain}/shared/ReadModel.ts +0 -0
  140. /package/dist/{domain → src/domain}/shared/index.ts +0 -0
  141. /package/dist/{domain → src/domain}/shared/reactorSpecification.ts +0 -0
  142. /package/dist/{domain → src/domain}/shared/sendCommand.ts +0 -0
  143. /package/dist/{domain → src/domain}/shared/types.ts +0 -0
  144. /package/dist/{server.ts → src/server.ts} +0 -0
  145. /package/dist/{utils → src/utils}/index.ts +0 -0
  146. /package/dist/{utils → src/utils}/loadProjections.ts +0 -0
  147. /package/dist/{utils → src/utils}/loadRegisterFiles.ts +0 -0
  148. /package/dist/{utils → src/utils}/loadResolvers.ts +0 -0
@@ -1,278 +0,0 @@
1
- import { describe, it, expect } from 'vitest';
2
- import { generateScaffoldFilePlans } from '../../scaffoldFromSchema.js';
3
- describe('spec.ts.ejs', () => {
4
- it('should generate a valid spec file', async () => {
5
- const spec = {
6
- variant: 'specs',
7
- flows: [
8
- {
9
- name: 'Host creates a listing',
10
- slices: [
11
- {
12
- type: 'command',
13
- name: 'Create listing',
14
- client: { description: '', specs: [] },
15
- server: {
16
- description: '',
17
- specs: {
18
- name: 'Create listing spec',
19
- rules: [
20
- {
21
- description: 'Should create listing successfully',
22
- examples: [
23
- {
24
- description: 'User creates listing with valid data',
25
- when: {
26
- commandRef: 'CreateListing',
27
- exampleData: {
28
- propertyId: 'listing_123',
29
- title: 'blah',
30
- pricePerNight: 250,
31
- maxGuests: 4,
32
- amenities: ['wifi', 'kitchen'],
33
- available: true,
34
- tags: ['some tag'],
35
- rating: 4.8,
36
- metadata: { foo: 'bar' },
37
- listedAt: '2024-01-15T10:00:00Z',
38
- },
39
- },
40
- then: [
41
- {
42
- eventRef: 'ListingCreated',
43
- exampleData: {
44
- propertyId: 'listing_123',
45
- listedAt: '2024-01-15T10:00:00Z',
46
- rating: 4.8,
47
- metadata: { foo: 'bar' },
48
- },
49
- },
50
- ],
51
- },
52
- ],
53
- },
54
- ],
55
- },
56
- },
57
- },
58
- ],
59
- },
60
- ],
61
- messages: [
62
- {
63
- type: 'command',
64
- name: 'CreateListing',
65
- fields: [
66
- { name: 'propertyId', type: 'string', required: true },
67
- { name: 'title', type: 'string', required: true },
68
- { name: 'pricePerNight', type: 'number', required: true },
69
- { name: 'maxGuests', type: 'number', required: true },
70
- { name: 'amenities', type: 'string[]', required: true },
71
- { name: 'available', type: 'boolean', required: true },
72
- { name: 'tags', type: 'string[]', required: true },
73
- { name: 'rating', type: 'number', required: true },
74
- { name: 'metadata', type: 'object', required: true },
75
- { name: 'listedAt', type: 'Date', required: true },
76
- ],
77
- },
78
- {
79
- type: 'event',
80
- name: 'ListingCreated',
81
- source: 'internal',
82
- fields: [
83
- { name: 'propertyId', type: 'string', required: true },
84
- { name: 'listedAt', type: 'Date', required: true },
85
- { name: 'rating', type: 'number', required: true },
86
- { name: 'metadata', type: 'object', required: true },
87
- ],
88
- },
89
- ],
90
- };
91
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
92
- const specFile = plans.find((p) => p.outputPath.endsWith('specs.ts'));
93
- expect(specFile?.contents).toMatchInlineSnapshot(`
94
- "import { describe, it } from 'vitest';
95
- import { DeciderSpecification } from '@event-driven-io/emmett';
96
- import { decide } from './decide.js';
97
- import { evolve } from './evolve.js';
98
- import { initialState } from './state.js';
99
-
100
- describe('Host creates a listing | Create listing', () => {
101
- const given = DeciderSpecification.for({
102
- decide,
103
- evolve,
104
- initialState,
105
- });
106
-
107
- it('should emit ListingCreated for valid CreateListing', () => {
108
- given([])
109
- .when({
110
- type: 'CreateListing',
111
- data: {
112
- propertyId: 'listing_123',
113
- title: 'blah',
114
- pricePerNight: 250,
115
- maxGuests: 4,
116
- amenities: ['wifi', 'kitchen'],
117
- available: true,
118
- tags: ['some tag'],
119
- rating: 4.8,
120
- metadata: { foo: 'bar' },
121
- listedAt: new Date('2024-01-15T10:00:00Z'),
122
- },
123
- metadata: { now: new Date() },
124
- })
125
-
126
- .then([
127
- {
128
- type: 'ListingCreated',
129
- data: {
130
- propertyId: 'listing_123',
131
- listedAt: new Date('2024-01-15T10:00:00Z'),
132
- rating: 4.8,
133
- metadata: { foo: 'bar' },
134
- },
135
- },
136
- ]);
137
- });
138
- });
139
- "
140
- `);
141
- });
142
- it('should include given events in the spec file when provided', async () => {
143
- const spec = {
144
- variant: 'specs',
145
- flows: [
146
- {
147
- name: 'Guest removes a listing',
148
- slices: [
149
- {
150
- type: 'command',
151
- name: 'Remove listing',
152
- client: { description: '', specs: [] },
153
- server: {
154
- description: '',
155
- specs: {
156
- name: 'Remove listing spec',
157
- rules: [
158
- {
159
- description: 'Should remove existing listing',
160
- examples: [
161
- {
162
- description: 'Existing listing can be removed',
163
- given: [
164
- {
165
- eventRef: 'ListingCreated',
166
- exampleData: {
167
- propertyId: 'listing_123',
168
- listedAt: '2024-01-15T10:00:00Z',
169
- rating: 4.8,
170
- metadata: { foo: 'bar' },
171
- },
172
- },
173
- ],
174
- when: {
175
- commandRef: 'RemoveListing',
176
- exampleData: {
177
- propertyId: 'listing_123',
178
- },
179
- },
180
- then: [
181
- {
182
- eventRef: 'ListingRemoved',
183
- exampleData: {
184
- propertyId: 'listing_123',
185
- removedAt: '2024-01-16T10:00:00Z',
186
- },
187
- },
188
- ],
189
- },
190
- ],
191
- },
192
- ],
193
- },
194
- },
195
- },
196
- ],
197
- },
198
- ],
199
- messages: [
200
- {
201
- type: 'command',
202
- name: 'RemoveListing',
203
- fields: [{ name: 'propertyId', type: 'string', required: true }],
204
- },
205
- {
206
- type: 'event',
207
- name: 'ListingCreated',
208
- source: 'internal',
209
- fields: [
210
- { name: 'propertyId', type: 'string', required: true },
211
- { name: 'listedAt', type: 'Date', required: true },
212
- { name: 'rating', type: 'number', required: true },
213
- { name: 'metadata', type: 'object', required: true },
214
- ],
215
- },
216
- {
217
- type: 'event',
218
- name: 'ListingRemoved',
219
- source: 'internal',
220
- fields: [
221
- { name: 'propertyId', type: 'string', required: true },
222
- { name: 'removedAt', type: 'Date', required: true },
223
- ],
224
- },
225
- ],
226
- };
227
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
228
- const specFile = plans.find((p) => p.outputPath.endsWith('specs.ts'));
229
- expect(specFile?.contents).toMatchInlineSnapshot(`
230
- "import { describe, it } from 'vitest';
231
- import { DeciderSpecification } from '@event-driven-io/emmett';
232
- import { decide } from './decide.js';
233
- import { evolve } from './evolve.js';
234
- import { initialState } from './state.js';
235
-
236
- describe('Guest removes a listing | Remove listing', () => {
237
- const given = DeciderSpecification.for({
238
- decide,
239
- evolve,
240
- initialState,
241
- });
242
-
243
- it('should emit ListingRemoved for valid RemoveListing', () => {
244
- given([
245
- {
246
- type: 'ListingCreated',
247
- data: {
248
- propertyId: 'listing_123',
249
- listedAt: new Date('2024-01-15T10:00:00Z'),
250
- rating: 4.8,
251
- metadata: { foo: 'bar' },
252
- },
253
- },
254
- ])
255
- .when({
256
- type: 'RemoveListing',
257
- data: {
258
- propertyId: 'listing_123',
259
- },
260
- metadata: { now: new Date() },
261
- })
262
-
263
- .then([
264
- {
265
- type: 'ListingRemoved',
266
- data: {
267
- propertyId: 'listing_123',
268
- removedAt: new Date('2024-01-16T10:00:00Z'),
269
- },
270
- },
271
- ]);
272
- });
273
- });
274
- "
275
- `);
276
- });
277
- });
278
- //# sourceMappingURL=decide.specs.specs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"decide.specs.specs.js","sourceRoot":"","sources":["../../../../../src/codegen/templates/command/decide.specs.specs.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=events.specs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"events.specs.d.ts","sourceRoot":"","sources":["../../../../../src/codegen/templates/command/events.specs.ts"],"names":[],"mappings":""}
@@ -1,112 +0,0 @@
1
- import { describe, it, expect } from 'vitest';
2
- import { generateScaffoldFilePlans } from '../../scaffoldFromSchema.js';
3
- describe('events.ts.ejs', () => {
4
- it('should generate an event file', async () => {
5
- const spec = {
6
- variant: 'specs',
7
- flows: [
8
- {
9
- name: 'Host creates a listing',
10
- slices: [
11
- {
12
- type: 'command',
13
- name: 'Create listing',
14
- client: {
15
- description: 'test',
16
- specs: [],
17
- },
18
- server: {
19
- description: 'test',
20
- specs: {
21
- name: 'Create listing command',
22
- rules: [
23
- {
24
- description: 'Should create listing successfully',
25
- examples: [
26
- {
27
- description: 'User creates listing with valid data',
28
- when: {
29
- commandRef: 'CreateListing',
30
- exampleData: {
31
- propertyId: 'listing_123',
32
- title: 'blah',
33
- pricePerNight: 250,
34
- maxGuests: 4,
35
- amenities: ['wifi', 'kitchen'],
36
- available: true,
37
- tags: ['some tag'],
38
- rating: 4.8,
39
- metadata: { foo: 'bar' },
40
- listedAt: '2024-01-15T10:00:00Z',
41
- },
42
- },
43
- then: [
44
- {
45
- eventRef: 'ListingCreated',
46
- exampleData: {
47
- propertyId: 'listing_123',
48
- listedAt: '2024-01-15T10:00:00Z',
49
- rating: 4.8,
50
- metadata: { foo: 'bar' },
51
- },
52
- },
53
- ],
54
- },
55
- ],
56
- },
57
- ],
58
- },
59
- },
60
- },
61
- ],
62
- },
63
- ],
64
- messages: [
65
- {
66
- type: 'command',
67
- name: 'CreateListing',
68
- fields: [],
69
- },
70
- {
71
- type: 'event',
72
- name: 'ListingCreated',
73
- source: 'internal',
74
- fields: [
75
- { name: 'propertyId', type: 'string', required: true },
76
- { name: 'listedAt', type: 'Date', required: true },
77
- { name: 'rating', type: 'number', required: true },
78
- { name: 'metadata', type: 'object', required: true },
79
- ],
80
- },
81
- {
82
- type: 'event',
83
- name: 'ListingCreated',
84
- source: 'internal',
85
- fields: [
86
- { name: 'propertyId', type: 'string', required: true },
87
- { name: 'listedAt', type: 'Date', required: true },
88
- { name: 'rating', type: 'number', required: true },
89
- { name: 'metadata', type: 'object', required: true },
90
- ],
91
- },
92
- ],
93
- };
94
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
95
- const eventFile = plans.find((p) => p.outputPath.endsWith('events.ts'));
96
- expect(eventFile?.contents).toMatchInlineSnapshot(`
97
- "import type { Event } from '@event-driven-io/emmett';
98
-
99
- export type ListingCreated = Event<
100
- 'ListingCreated',
101
- {
102
- propertyId: string;
103
- listedAt: Date;
104
- rating: number;
105
- metadata: object;
106
- }
107
- >;
108
- "
109
- `);
110
- });
111
- });
112
- //# sourceMappingURL=events.specs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"events.specs.js","sourceRoot":"","sources":["../../../../../src/codegen/templates/command/events.specs.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=evolve.specs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"evolve.specs.d.ts","sourceRoot":"","sources":["../../../../../src/codegen/templates/command/evolve.specs.ts"],"names":[],"mappings":""}
@@ -1,108 +0,0 @@
1
- import { describe, it, expect } from 'vitest';
2
- import { generateScaffoldFilePlans } from '../../scaffoldFromSchema.js';
3
- describe('evolve.ts.ejs', () => {
4
- it('should generate a valid evolve file from event structure', async () => {
5
- const spec = {
6
- variant: 'specs',
7
- flows: [
8
- {
9
- name: 'Host creates a listing',
10
- slices: [
11
- {
12
- type: 'command',
13
- name: 'Create listing',
14
- client: {
15
- description: 'test',
16
- specs: [],
17
- },
18
- server: {
19
- description: 'test',
20
- specs: {
21
- name: 'Create listing command',
22
- rules: [
23
- {
24
- description: 'Should create listing successfully',
25
- examples: [
26
- {
27
- description: 'User creates listing with valid data',
28
- when: {
29
- commandRef: 'CreateListing',
30
- exampleData: {
31
- propertyId: 'listing_123',
32
- title: 'Some Apartment',
33
- listedAt: '2024-01-15T10:00:00Z',
34
- rating: 4.8,
35
- metadata: { foo: 'bar' },
36
- },
37
- },
38
- then: [
39
- {
40
- eventRef: 'ListingCreated',
41
- exampleData: {
42
- propertyId: 'listing_123',
43
- listedAt: '2024-01-15T10:00:00Z',
44
- rating: 4.8,
45
- metadata: { foo: 'bar' },
46
- },
47
- },
48
- ],
49
- },
50
- ],
51
- },
52
- ],
53
- },
54
- },
55
- },
56
- ],
57
- },
58
- ],
59
- messages: [
60
- {
61
- type: 'command',
62
- name: 'CreateListing',
63
- fields: [],
64
- },
65
- {
66
- type: 'event',
67
- name: 'ListingCreated',
68
- source: 'internal',
69
- fields: [],
70
- },
71
- ],
72
- };
73
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
74
- const evolveFile = plans.find((p) => p.outputPath.endsWith('evolve.ts'));
75
- expect(evolveFile?.contents).toMatchInlineSnapshot(`
76
- "import type { State } from './state.js';
77
- import type { ListingCreated } from './events.js';
78
-
79
- /**
80
- * ## IMPLEMENTATION INSTRUCTIONS ##
81
- *
82
- * This function defines how the domain state evolves in response to events.
83
- *
84
- * Guidelines:
85
- * - Apply only the **minimal** necessary changes for future decisions in \`decide.ts\`.
86
- * - Ignore any event fields not required for decision-making logic.
87
- * - If the event doesn’t change decision-relevant state, return the existing \`state\`.
88
- * - Prefer immutability: always return a **new state object**.
89
- * - Avoid spreading all of \`event.data\` unless all fields are relevant.
90
- */
91
-
92
- export const evolve = (state: State, event: ListingCreated): State => {
93
- switch (event.type) {
94
- case 'ListingCreated': {
95
- // TODO: Update state based on ListingCreated
96
- return {
97
- ...state,
98
- };
99
- }
100
- default:
101
- return state;
102
- }
103
- };
104
- "
105
- `);
106
- });
107
- });
108
- //# sourceMappingURL=evolve.specs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"evolve.specs.js","sourceRoot":"","sources":["../../../../../src/codegen/templates/command/evolve.specs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAErE,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;QACxE,MAAM,IAAI,GAAgB;YACxB,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE;gBACL;oBACE,IAAI,EAAE,wBAAwB;oBAC9B,MAAM,EAAE;wBACN;4BACE,IAAI,EAAE,SAAS;4BACf,IAAI,EAAE,gBAAgB;4BACtB,MAAM,EAAE;gCACN,WAAW,EAAE,MAAM;gCACnB,KAAK,EAAE,EAAE;6BACV;4BACD,MAAM,EAAE;gCACN,WAAW,EAAE,MAAM;gCACnB,KAAK,EAAE;oCACL,IAAI,EAAE,wBAAwB;oCAC9B,KAAK,EAAE;wCACL;4CACE,WAAW,EAAE,oCAAoC;4CACjD,QAAQ,EAAE;gDACR;oDACE,WAAW,EAAE,sCAAsC;oDACnD,IAAI,EAAE;wDACJ,UAAU,EAAE,eAAe;wDAC3B,WAAW,EAAE;4DACX,UAAU,EAAE,aAAa;4DACzB,KAAK,EAAE,gBAAgB;4DACvB,QAAQ,EAAE,sBAAsB;4DAChC,MAAM,EAAE,GAAG;4DACX,QAAQ,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE;yDACzB;qDACF;oDACD,IAAI,EAAE;wDACJ;4DACE,QAAQ,EAAE,gBAAgB;4DAC1B,WAAW,EAAE;gEACX,UAAU,EAAE,aAAa;gEACzB,QAAQ,EAAE,sBAAsB;gEAChC,MAAM,EAAE,GAAG;gEACX,QAAQ,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE;6DACzB;yDACF;qDACF;iDACF;6CACF;yCACF;qCACF;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;YACD,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,eAAe;oBACrB,MAAM,EAAE,EAAE;iBACX;gBACD;oBACE,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,gBAAgB;oBACtB,MAAM,EAAE,UAAU;oBAClB,MAAM,EAAE,EAAE;iBACX;aACF;SACF,CAAC;QAEF,MAAM,KAAK,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;QACxG,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;QAEzE,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SA8B9C,CAAC,CAAC;IACT,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=handle.specs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"handle.specs.d.ts","sourceRoot":"","sources":["../../../../../src/codegen/templates/command/handle.specs.ts"],"names":[],"mappings":""}