@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,265 +0,0 @@
1
- import { describe, it, expect } from 'vitest';
2
- import { generateScaffoldFilePlans } from '../../scaffoldFromSchema.js';
3
- describe('handle.ts.ejs (react slice)', () => {
4
- it('should generate correct react.ts', async () => {
5
- const spec = {
6
- variant: 'specs',
7
- flows: [
8
- {
9
- name: 'manage bookings',
10
- slices: [
11
- {
12
- type: 'command',
13
- name: 'guest submits booking request',
14
- client: { description: '', specs: [] },
15
- server: {
16
- description: '',
17
- specs: {
18
- name: 'Guest submits booking request command',
19
- rules: [
20
- {
21
- description: 'Should handle booking request successfully',
22
- examples: [
23
- {
24
- description: 'User submits booking request successfully',
25
- when: {
26
- commandRef: 'RequestBooking',
27
- exampleData: {
28
- propertyId: 'listing_123',
29
- hostId: 'host_123',
30
- guestId: 'guest_456',
31
- checkIn: '2025-07-15',
32
- checkOut: '2025-07-18',
33
- guests: 2,
34
- message: 'Looking forward to my stay!',
35
- metadata: { now: 'bar', bookingId: '123' },
36
- },
37
- },
38
- then: [
39
- {
40
- eventRef: 'BookingRequested',
41
- exampleData: {
42
- bookingId: 'book_xyz789',
43
- hostId: 'host_123',
44
- propertyId: 'prop_789',
45
- guestId: 'guest_456',
46
- checkIn: '2025-07-15',
47
- checkOut: '2025-07-18',
48
- guests: 2,
49
- message: 'Hey',
50
- status: 'pending_host_approval',
51
- requestedAt: '2025-06-10T16:30:00.000Z',
52
- expiresAt: '2025-06-11T16:30:00.000Z',
53
- },
54
- },
55
- ],
56
- },
57
- ],
58
- },
59
- ],
60
- },
61
- },
62
- },
63
- {
64
- type: 'react',
65
- name: 'Send notification to host',
66
- server: {
67
- description: 'Sends a host notification command in response to BookingRequested',
68
- specs: {
69
- name: 'Send notification to host reaction',
70
- rules: [
71
- {
72
- description: 'Should send host notification on booking request',
73
- examples: [
74
- {
75
- description: 'Booking request triggers host notification',
76
- when: [
77
- {
78
- eventRef: 'BookingRequested',
79
- exampleData: {
80
- bookingId: 'book_xyz789',
81
- hostId: 'host_123',
82
- propertyId: 'prop_789',
83
- guestId: 'guest_456',
84
- checkIn: '2025-07-15',
85
- checkOut: '2025-07-18',
86
- guests: 2,
87
- message: 'Hey',
88
- status: 'pending_host_approval',
89
- requestedAt: '2025-06-10T16:30:00.000Z',
90
- expiresAt: '2025-06-11T16:30:00.000Z',
91
- },
92
- },
93
- ],
94
- then: [
95
- {
96
- commandRef: 'NotifyHost',
97
- exampleData: {
98
- hostId: 'host_123',
99
- notificationType: 'booking_request',
100
- priority: 'high',
101
- channels: ['email', 'push'],
102
- message: 'A guest has requested to book your place.',
103
- actionRequired: true,
104
- },
105
- },
106
- ],
107
- },
108
- ],
109
- },
110
- ],
111
- },
112
- },
113
- },
114
- {
115
- type: 'command',
116
- name: 'notify host',
117
- client: { description: '', specs: [] },
118
- server: {
119
- description: '',
120
- specs: {
121
- name: 'Notify host command',
122
- rules: [
123
- {
124
- description: 'Should notify host successfully',
125
- examples: [
126
- {
127
- description: 'Host notification sent successfully',
128
- when: {
129
- commandRef: 'NotifyHost',
130
- exampleData: {
131
- hostId: 'host_123',
132
- notificationType: 'booking_request',
133
- priority: 'high',
134
- channels: ['email', 'push'],
135
- message: 'A guest has requested to book your place.',
136
- actionRequired: true,
137
- },
138
- },
139
- then: [
140
- {
141
- eventRef: 'HostNotified',
142
- exampleData: {
143
- bookingId: 'book_xyz789',
144
- hostId: 'host_123',
145
- notificationType: 'booking_request',
146
- channels: ['email', 'push'],
147
- message: 'hi.',
148
- notifiedAt: '2025-06-10T16:30:00.000Z',
149
- actionRequired: true,
150
- },
151
- },
152
- ],
153
- },
154
- ],
155
- },
156
- ],
157
- },
158
- },
159
- },
160
- ],
161
- },
162
- ],
163
- messages: [
164
- {
165
- type: 'command',
166
- name: 'RequestBooking',
167
- fields: [
168
- { name: 'propertyId', type: 'string', required: true },
169
- { name: 'hostId', type: 'string', required: true },
170
- { name: 'guestId', type: 'string', required: true },
171
- { name: 'checkIn', type: 'date', required: true },
172
- { name: 'checkOut', type: 'date', required: true },
173
- { name: 'guests', type: 'number', required: true },
174
- { name: 'message', type: 'string', required: false },
175
- ],
176
- },
177
- {
178
- type: 'command',
179
- name: 'NotifyHost',
180
- fields: [
181
- { name: 'hostId', type: 'string', required: true },
182
- { name: 'notificationType', type: 'string', required: true },
183
- { name: 'priority', type: 'string', required: true },
184
- { name: 'channels', type: 'string[]', required: true },
185
- { name: 'message', type: 'string', required: true },
186
- { name: 'actionRequired', type: 'boolean', required: true },
187
- ],
188
- },
189
- {
190
- type: 'event',
191
- name: 'BookingRequested',
192
- source: 'internal',
193
- fields: [
194
- { name: 'bookingId', type: 'string', required: true },
195
- { name: 'hostId', type: 'string', required: true },
196
- { name: 'message', type: 'string', required: true },
197
- ],
198
- },
199
- {
200
- type: 'event',
201
- name: 'HostNotified',
202
- source: 'internal',
203
- fields: [
204
- { name: 'bookingId', type: 'string', required: true },
205
- { name: 'hostId', type: 'string', required: true },
206
- { name: 'notificationType', type: 'string', required: true },
207
- { name: 'channels', type: 'string[]', required: true },
208
- { name: 'notifiedAt', type: 'date', required: true },
209
- { name: 'actionRequired', type: 'boolean', required: true },
210
- { name: 'message', type: 'string', required: true },
211
- ],
212
- },
213
- ],
214
- };
215
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
216
- const handleFile = plans.find((p) => p.outputPath.endsWith('react.ts'));
217
- expect(handleFile?.contents).toMatchInlineSnapshot(`
218
- "import { inMemoryReactor, type MessageHandlerResult, IllegalStateError } from '@event-driven-io/emmett';
219
- import type { BookingRequested } from '../guest-submits-booking-request/events.js';
220
- import type { ReactorContext } from '../../../shared.js';
221
-
222
- export const react = ({ eventStore, commandSender }: ReactorContext) =>
223
- inMemoryReactor<BookingRequested>({
224
- processorId: 'manage-bookings-send-notification-to-host',
225
- canHandle: ['BookingRequested'],
226
- connectionOptions: {
227
- database: eventStore.database,
228
- },
229
- eachMessage: async (event, context): Promise<MessageHandlerResult> => {
230
- /**
231
- * ## IMPLEMENTATION INSTRUCTIONS ##
232
- *
233
- * - Inspect event data to determine if the command should be sent.
234
- * - Replace the placeholder logic and \\\`throw\\\` below with real implementation.
235
- * - Send one or more commands via: context.commandSender.send({...})
236
- * - Optionally return a MessageHandlerResult for SKIP or error cases.
237
- */
238
-
239
- throw new IllegalStateError('Not yet implemented: react in response to BookingRequested');
240
-
241
- // Example:
242
- // if (event.data.status !== 'expected') {
243
- // return {
244
- // type: 'SKIP',
245
- // reason: 'Condition not met',
246
- // };
247
- // }
248
-
249
- // await context.commandSender.send({
250
- // type: 'NotifyHost',
251
- // kind: 'Command',
252
- // data: {
253
- // // Map event fields to command fields here
254
- // // e.g., userId: event.data.userId,
255
- // },
256
- // });
257
-
258
- // return;
259
- },
260
- });
261
- "
262
- `);
263
- });
264
- });
265
- //# sourceMappingURL=react.specs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"react.specs.js","sourceRoot":"","sources":["../../../../../src/codegen/templates/react/react.specs.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=react.specs.specs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"react.specs.specs.d.ts","sourceRoot":"","sources":["../../../../../src/codegen/templates/react/react.specs.specs.ts"],"names":[],"mappings":""}
@@ -1,229 +0,0 @@
1
- import { describe, it, expect } from 'vitest';
2
- import { generateScaffoldFilePlans } from '../../scaffoldFromSchema.js';
3
- describe('react.specs.ts.ejs (react slice)', () => {
4
- it('should generate correct react.specs.ts', async () => {
5
- const spec = {
6
- variant: 'specs',
7
- flows: [
8
- {
9
- name: 'manage bookings',
10
- slices: [
11
- {
12
- type: 'command',
13
- name: 'guest submits booking request',
14
- client: { description: '', specs: [] },
15
- server: {
16
- description: '',
17
- specs: {
18
- name: 'Guest submits booking request command',
19
- rules: [
20
- {
21
- description: 'Should handle booking request successfully',
22
- examples: [
23
- {
24
- description: 'User submits booking request successfully',
25
- when: {
26
- commandRef: 'RequestBooking',
27
- exampleData: {
28
- propertyId: 'listing_123',
29
- hostId: 'host_123',
30
- guestId: 'guest_456',
31
- checkIn: '2025-07-15',
32
- checkOut: '2025-07-18',
33
- guests: 2,
34
- message: 'Looking forward to my stay!',
35
- metadata: { now: 'bar', bookingId: '123' },
36
- },
37
- },
38
- then: [
39
- {
40
- eventRef: 'BookingRequested',
41
- exampleData: {
42
- bookingId: 'book_xyz789',
43
- hostId: 'host_123',
44
- propertyId: 'prop_789',
45
- guestId: 'guest_456',
46
- checkIn: '2025-07-15',
47
- checkOut: '2025-07-18',
48
- guests: 2,
49
- message: 'Hey',
50
- status: 'pending_host_approval',
51
- requestedAt: '2025-06-10T16:30:00.000Z',
52
- expiresAt: '2025-06-11T16:30:00.000Z',
53
- },
54
- },
55
- ],
56
- },
57
- ],
58
- },
59
- ],
60
- },
61
- },
62
- },
63
- {
64
- type: 'react',
65
- name: 'Send notification to host',
66
- server: {
67
- description: 'Sends a host notification command in response to BookingRequested',
68
- data: [
69
- {
70
- target: { type: 'Command', name: 'NotifyHost' },
71
- destination: { type: 'stream', pattern: 'booking-${hostId}' },
72
- },
73
- ],
74
- specs: {
75
- name: 'Send notification to host reaction',
76
- rules: [
77
- {
78
- description: 'Should send host notification on booking request',
79
- examples: [
80
- {
81
- description: 'Booking request triggers host notification',
82
- when: [
83
- {
84
- eventRef: 'BookingRequested',
85
- exampleData: {
86
- bookingId: 'book_xyz789',
87
- hostId: 'host_123',
88
- propertyId: 'prop_789',
89
- guestId: 'guest_456',
90
- checkIn: '2025-07-15',
91
- checkOut: '2025-07-18',
92
- guests: 2,
93
- message: 'Hey',
94
- status: 'pending_host_approval',
95
- requestedAt: '2025-06-10T16:30:00.000Z',
96
- expiresAt: '2025-06-11T16:30:00.000Z',
97
- },
98
- },
99
- ],
100
- then: [
101
- {
102
- commandRef: 'NotifyHost',
103
- exampleData: {
104
- hostId: 'host_123',
105
- notificationType: 'booking_request',
106
- priority: 'high',
107
- channels: ['email', 'push'],
108
- message: 'A guest has requested to book your place.',
109
- actionRequired: true,
110
- },
111
- },
112
- ],
113
- },
114
- ],
115
- },
116
- ],
117
- },
118
- },
119
- },
120
- ],
121
- },
122
- ],
123
- messages: [
124
- {
125
- type: 'command',
126
- name: 'RequestBooking',
127
- fields: [
128
- { name: 'propertyId', type: 'string', required: true },
129
- { name: 'hostId', type: 'string', required: true },
130
- { name: 'guestId', type: 'string', required: true },
131
- { name: 'checkIn', type: 'date', required: true },
132
- { name: 'checkOut', type: 'date', required: true },
133
- { name: 'guests', type: 'number', required: true },
134
- { name: 'message', type: 'string', required: false },
135
- ],
136
- },
137
- {
138
- type: 'command',
139
- name: 'NotifyHost',
140
- fields: [
141
- { name: 'hostId', type: 'string', required: true },
142
- { name: 'notificationType', type: 'string', required: true },
143
- { name: 'priority', type: 'string', required: true },
144
- { name: 'channels', type: 'string[]', required: true },
145
- { name: 'message', type: 'string', required: true },
146
- { name: 'actionRequired', type: 'boolean', required: true },
147
- ],
148
- },
149
- {
150
- type: 'event',
151
- name: 'BookingRequested',
152
- source: 'internal',
153
- fields: [
154
- { name: 'bookingId', type: 'string', required: true },
155
- { name: 'hostId', type: 'string', required: true },
156
- { name: 'message', type: 'string', required: true },
157
- ],
158
- },
159
- ],
160
- };
161
- const plans = await generateScaffoldFilePlans(spec.flows, spec.messages, undefined, 'src/domain/flows');
162
- const specFile = plans.find((p) => p.outputPath.endsWith('react.specs.ts'));
163
- expect(specFile?.contents).toMatchInlineSnapshot(`
164
- "import { describe, it, beforeEach } from 'vitest';
165
- import 'reflect-metadata';
166
- import { getInMemoryEventStore, type InMemoryEventStore, type CommandSender } from '@event-driven-io/emmett';
167
- import { type ReactorContext, ReactorSpecification } from '../../../shared.js';
168
- import { react } from './react.js';
169
- import type { BookingRequested } from '../guest-submits-booking-request/events.js';
170
- import type { NotifyHost } from '../send-notification-to-host/commands.js';
171
-
172
- describe('ManageBookings | SendNotificationToHost', () => {
173
- let eventStore: InMemoryEventStore;
174
- let given: ReactorSpecification<BookingRequested, NotifyHost, ReactorContext>;
175
- let messageBus: CommandSender;
176
-
177
- beforeEach(() => {
178
- eventStore = getInMemoryEventStore({});
179
- given = ReactorSpecification.for<BookingRequested, NotifyHost, ReactorContext>(
180
- () => react({ eventStore, commandSender: messageBus }),
181
- (commandSender) => {
182
- messageBus = commandSender;
183
- return {
184
- eventStore,
185
- commandSender,
186
- database: eventStore.database,
187
- };
188
- },
189
- );
190
- });
191
-
192
- it('should send NotifyHost when BookingRequested is received', async () => {
193
- await given([])
194
- .when({
195
- type: 'BookingRequested',
196
- data: {
197
- bookingId: 'book_xyz789',
198
- hostId: 'host_123',
199
- propertyId: 'prop_789',
200
- guestId: 'guest_456',
201
- checkIn: '2025-07-15',
202
- checkOut: '2025-07-18',
203
- guests: 2,
204
- message: 'Hey',
205
- status: 'pending_host_approval',
206
- requestedAt: '2025-06-10T16:30:00.000Z',
207
- expiresAt: '2025-06-11T16:30:00.000Z',
208
- },
209
- })
210
-
211
- .then({
212
- type: 'NotifyHost',
213
- kind: 'Command',
214
- data: {
215
- hostId: 'host_123',
216
- notificationType: 'booking_request',
217
- priority: 'high',
218
- channels: ['email', 'push'],
219
- message: 'A guest has requested to book your place.',
220
- actionRequired: true,
221
- },
222
- });
223
- });
224
- });
225
- "
226
- `);
227
- });
228
- });
229
- //# sourceMappingURL=react.specs.specs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"react.specs.specs.js","sourceRoot":"","sources":["../../../../../src/codegen/templates/react/react.specs.specs.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=register.specs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"register.specs.d.ts","sourceRoot":"","sources":["../../../../../src/codegen/templates/react/register.specs.ts"],"names":[],"mappings":""}