@auto-engineer/server-generator-apollo-emmett 1.139.0 → 1.140.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +1 -1
- package/.turbo/turbo-test.log +4 -4
- package/.turbo/turbo-type-check.log +1 -1
- package/CHANGELOG.md +17 -0
- package/DEBUG.md +4 -4
- package/dist/src/codegen/extract/data-sink.d.ts +2 -2
- package/dist/src/codegen/extract/data-sink.d.ts.map +1 -1
- package/dist/src/codegen/extract/data-sink.js +2 -2
- package/dist/src/codegen/extract/data-sink.js.map +1 -1
- package/dist/src/codegen/extract/events.d.ts +3 -3
- package/dist/src/codegen/extract/events.d.ts.map +1 -1
- package/dist/src/codegen/extract/events.js +11 -11
- package/dist/src/codegen/extract/events.js.map +1 -1
- package/dist/src/codegen/extract/gwt.d.ts +2 -2
- package/dist/src/codegen/extract/gwt.d.ts.map +1 -1
- package/dist/src/codegen/extract/gwt.js +2 -2
- package/dist/src/codegen/extract/gwt.js.map +1 -1
- package/dist/src/codegen/extract/imports.d.ts +4 -4
- package/dist/src/codegen/extract/imports.d.ts.map +1 -1
- package/dist/src/codegen/extract/imports.js +8 -8
- package/dist/src/codegen/extract/imports.js.map +1 -1
- package/dist/src/codegen/extract/messages.d.ts +2 -2
- package/dist/src/codegen/extract/messages.d.ts.map +1 -1
- package/dist/src/codegen/extract/messages.js +9 -9
- package/dist/src/codegen/extract/messages.js.map +1 -1
- package/dist/src/codegen/extract/projection.d.ts +7 -7
- package/dist/src/codegen/extract/projection.d.ts.map +1 -1
- package/dist/src/codegen/extract/projection.js +3 -3
- package/dist/src/codegen/extract/projection.js.map +1 -1
- package/dist/src/codegen/extract/query.d.ts +2 -2
- package/dist/src/codegen/extract/query.d.ts.map +1 -1
- package/dist/src/codegen/extract/query.js.map +1 -1
- package/dist/src/codegen/extract/slice-normalizer.d.ts +4 -4
- package/dist/src/codegen/extract/slice-normalizer.d.ts.map +1 -1
- package/dist/src/codegen/extract/slice-normalizer.js +7 -7
- package/dist/src/codegen/extract/slice-normalizer.js.map +1 -1
- package/dist/src/codegen/extract/states.d.ts +3 -3
- package/dist/src/codegen/extract/states.d.ts.map +1 -1
- package/dist/src/codegen/extract/states.js.map +1 -1
- package/dist/src/codegen/extract/step-converter.d.ts +7 -7
- package/dist/src/codegen/extract/step-converter.d.ts.map +1 -1
- package/dist/src/codegen/extract/step-converter.js +12 -12
- package/dist/src/codegen/extract/step-converter.js.map +1 -1
- package/dist/src/codegen/extract/step-types.d.ts +4 -4
- package/dist/src/codegen/extract/step-types.d.ts.map +1 -1
- package/dist/src/codegen/extract/step-types.js +1 -1
- package/dist/src/codegen/extract/step-types.js.map +1 -1
- package/dist/src/codegen/scaffoldFromSchema.d.ts +12 -12
- package/dist/src/codegen/scaffoldFromSchema.d.ts.map +1 -1
- package/dist/src/codegen/scaffoldFromSchema.js +113 -101
- package/dist/src/codegen/scaffoldFromSchema.js.map +1 -1
- package/dist/src/codegen/templates/command/commands.specs.ts +3 -3
- package/dist/src/codegen/templates/command/decide.specs.specs.ts +52 -52
- package/dist/src/codegen/templates/command/decide.specs.ts +12 -12
- package/dist/src/codegen/templates/command/decide.specs.ts.ejs +1 -1
- package/dist/src/codegen/templates/command/events.specs.ts +3 -3
- package/dist/src/codegen/templates/command/evolve.specs.ts +3 -3
- package/dist/src/codegen/templates/command/handle.specs.ts +13 -13
- package/dist/src/codegen/templates/command/mutation.resolver.specs.ts +19 -19
- package/dist/src/codegen/templates/command/register.specs.ts +3 -3
- package/dist/src/codegen/templates/command/state.specs.ts +3 -3
- package/dist/src/codegen/templates/query/events.specs.ts +4 -4
- package/dist/src/codegen/templates/query/projection.specs.specs.ts +60 -60
- package/dist/src/codegen/templates/query/projection.specs.ts +54 -29
- package/dist/src/codegen/templates/query/projection.specs.ts.ejs +2 -2
- package/dist/src/codegen/templates/query/query.resolver.specs.ts +63 -63
- package/dist/src/codegen/templates/query/query.resolver.ts.ejs +1 -1
- package/dist/src/codegen/templates/query/state.specs.ts +9 -9
- package/dist/src/codegen/templates/react/react.specs.specs.ts +15 -15
- package/dist/src/codegen/templates/react/react.specs.ts +16 -16
- package/dist/src/codegen/templates/react/react.specs.ts.ejs +9 -9
- package/dist/src/codegen/templates/react/react.ts.ejs +5 -5
- package/dist/src/codegen/templates/react/react.ts.specs.ts +33 -33
- package/dist/src/codegen/templates/react/register.specs.ts +7 -7
- package/dist/src/codegen/templates/react/register.ts.ejs +4 -4
- package/dist/src/codegen/test-data/specVariant1.d.ts.map +1 -1
- package/dist/src/codegen/test-data/specVariant1.js +3 -2
- package/dist/src/codegen/test-data/specVariant1.js.map +1 -1
- package/dist/src/codegen/types.d.ts +2 -2
- package/dist/src/codegen/types.d.ts.map +1 -1
- package/dist/src/commands/generate-server.d.ts +21 -21
- package/dist/src/commands/generate-server.d.ts.map +1 -1
- package/dist/src/commands/generate-server.js +81 -63
- package/dist/src/commands/generate-server.js.map +1 -1
- package/dist/src/commands/initialize-server.d.ts.map +1 -1
- package/dist/src/commands/initialize-server.js +2 -2
- package/dist/src/commands/initialize-server.js.map +1 -1
- package/dist/src/domain/flows/shared/types.d.ts +14 -0
- package/dist/src/domain/flows/shared/types.d.ts.map +1 -0
- package/dist/src/domain/flows/shared/types.js +2 -0
- package/dist/src/domain/flows/shared/types.js.map +1 -0
- package/dist/src/domain/flows/shared/types.ts +15 -0
- package/dist/src/domain/narratives/shared/types.d.ts +14 -0
- package/dist/src/domain/narratives/shared/types.d.ts.map +1 -0
- package/dist/src/domain/narratives/shared/types.js +2 -0
- package/dist/src/domain/narratives/shared/types.js.map +1 -0
- package/dist/src/domain/narratives/shared/types.ts +15 -0
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/server.js +3 -3
- package/dist/src/server.js.map +1 -1
- package/dist/src/server.ts +3 -3
- package/dist/src/utils/loadRegisterFiles.d.ts +2 -2
- package/dist/src/utils/loadRegisterFiles.d.ts.map +1 -1
- package/dist/src/utils/loadRegisterFiles.js.map +1 -1
- package/dist/src/utils/loadRegisterFiles.ts +5 -5
- package/dist/src/utils/loadResolvers.js +1 -1
- package/dist/src/utils/loadResolvers.js.map +1 -1
- package/dist/src/utils/loadResolvers.ts +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
- package/src/codegen/extract/data-sink.ts +5 -5
- package/src/codegen/extract/events.ts +15 -15
- package/src/codegen/extract/gwt.ts +4 -4
- package/src/codegen/extract/imports.specs.ts +19 -19
- package/src/codegen/extract/imports.ts +13 -13
- package/src/codegen/extract/messages.specs.ts +30 -30
- package/src/codegen/extract/messages.ts +16 -16
- package/src/codegen/extract/projection.specs.ts +22 -22
- package/src/codegen/extract/projection.ts +9 -9
- package/src/codegen/extract/query.ts +2 -2
- package/src/codegen/extract/slice-normalizer.specs.ts +11 -11
- package/src/codegen/extract/slice-normalizer.ts +14 -14
- package/src/codegen/extract/states.ts +4 -4
- package/src/codegen/extract/step-converter.specs.ts +9 -9
- package/src/codegen/extract/step-converter.ts +15 -15
- package/src/codegen/extract/step-types.specs.ts +12 -12
- package/src/codegen/extract/step-types.ts +4 -4
- package/src/codegen/findEventSource.specs.ts +23 -23
- package/src/codegen/scaffoldErrors.specs.ts +4 -4
- package/src/codegen/scaffoldFromSchema.filter.specs.ts +32 -32
- package/src/codegen/scaffoldFromSchema.ts +146 -132
- package/src/codegen/templates/command/commands.specs.ts +3 -3
- package/src/codegen/templates/command/decide.specs.specs.ts +52 -52
- package/src/codegen/templates/command/decide.specs.ts +12 -12
- package/src/codegen/templates/command/decide.specs.ts.ejs +1 -1
- package/src/codegen/templates/command/events.specs.ts +3 -3
- package/src/codegen/templates/command/evolve.specs.ts +3 -3
- package/src/codegen/templates/command/handle.specs.ts +13 -13
- package/src/codegen/templates/command/mutation.resolver.specs.ts +19 -19
- package/src/codegen/templates/command/register.specs.ts +3 -3
- package/src/codegen/templates/command/state.specs.ts +3 -3
- package/src/codegen/templates/query/events.specs.ts +4 -4
- package/src/codegen/templates/query/projection.specs.specs.ts +60 -60
- package/src/codegen/templates/query/projection.specs.ts +54 -29
- package/src/codegen/templates/query/projection.specs.ts.ejs +2 -2
- package/src/codegen/templates/query/query.resolver.specs.ts +63 -63
- package/src/codegen/templates/query/query.resolver.ts.ejs +1 -1
- package/src/codegen/templates/query/state.specs.ts +9 -9
- package/src/codegen/templates/react/react.specs.specs.ts +15 -15
- package/src/codegen/templates/react/react.specs.ts +16 -16
- package/src/codegen/templates/react/react.specs.ts.ejs +9 -9
- package/src/codegen/templates/react/react.ts.ejs +5 -5
- package/src/codegen/templates/react/react.ts.specs.ts +33 -33
- package/src/codegen/templates/react/register.specs.ts +7 -7
- package/src/codegen/templates/react/register.ts.ejs +4 -4
- package/src/codegen/test-data/specVariant1.json +1 -1
- package/src/codegen/test-data/specVariant1.ts +3 -2
- package/src/codegen/test-data/specVariant2.json +1 -1
- package/src/codegen/types.ts +2 -2
- package/src/commands/generate-server.specs.ts +81 -79
- package/src/commands/generate-server.ts +110 -88
- package/src/commands/initialize-server.specs.ts +4 -4
- package/src/commands/initialize-server.ts +5 -2
- package/src/domain/flows/shared/types.ts +15 -0
- package/src/domain/narratives/shared/types.ts +15 -0
- package/src/index.ts +1 -1
- package/src/server.ts +3 -3
- package/src/utils/loadRegisterFiles.ts +5 -5
- package/src/utils/loadResolvers.ts +1 -1
|
@@ -6,7 +6,7 @@ const allUsedEvents = new Set();
|
|
|
6
6
|
const allUsedCommands = new Set();
|
|
7
7
|
|
|
8
8
|
for (const rule of rules) {
|
|
9
|
-
const ruleDescription = rule.description || `${
|
|
9
|
+
const ruleDescription = rule.description || `${sceneName} | ${momentName}`;
|
|
10
10
|
if (!ruleGroups.has(ruleDescription)) {
|
|
11
11
|
ruleGroups.set(ruleDescription, []);
|
|
12
12
|
}
|
|
@@ -37,10 +37,10 @@ const commandImportGroups = new Map();
|
|
|
37
37
|
for (const eventType of allUsedEvents) {
|
|
38
38
|
const event = events.find(e => e.type === eventType);
|
|
39
39
|
if (event) {
|
|
40
|
-
const
|
|
41
|
-
const importPath =
|
|
42
|
-
? `../../${toKebabCase(event.
|
|
43
|
-
: event.
|
|
40
|
+
const isCrossScene = event.sourceSceneName && event.sourceSceneName !== sceneName;
|
|
41
|
+
const importPath = isCrossScene
|
|
42
|
+
? `../../${toKebabCase(event.sourceSceneName)}/${toKebabCase(event.sourceMomentName)}/events`
|
|
43
|
+
: event.sourceMomentName ? `../${toKebabCase(event.sourceMomentName)}/events` : './events';
|
|
44
44
|
if (!eventImportGroups.has(importPath)) {
|
|
45
45
|
eventImportGroups.set(importPath, []);
|
|
46
46
|
}
|
|
@@ -51,10 +51,10 @@ for (const eventType of allUsedEvents) {
|
|
|
51
51
|
for (const commandType of allUsedCommands) {
|
|
52
52
|
const command = commands.find(c => c.type === commandType);
|
|
53
53
|
if (command) {
|
|
54
|
-
const
|
|
55
|
-
const importPath =
|
|
56
|
-
? `../../${toKebabCase(command.
|
|
57
|
-
: command.
|
|
54
|
+
const isCrossScene = command.sourceSceneName && command.sourceSceneName !== sceneName;
|
|
55
|
+
const importPath = isCrossScene
|
|
56
|
+
? `../../${toKebabCase(command.sourceSceneName)}/${toKebabCase(command.sourceMomentName)}/commands`
|
|
57
|
+
: command.sourceMomentName ? `../${toKebabCase(command.sourceMomentName)}/commands` : './commands';
|
|
58
58
|
if (!commandImportGroups.has(importPath)) {
|
|
59
59
|
commandImportGroups.set(importPath, []);
|
|
60
60
|
}
|
|
@@ -6,10 +6,10 @@ if (!eventCommandPairs || eventCommandPairs.length === 0) {
|
|
|
6
6
|
const importGroups = new Map();
|
|
7
7
|
for (const pair of eventCommandPairs) {
|
|
8
8
|
const event = events.find(e => e.type === pair.eventType);
|
|
9
|
-
const
|
|
10
|
-
const importBase =
|
|
11
|
-
? `../../${toKebabCase(event.
|
|
12
|
-
: event?.
|
|
9
|
+
const isCrossScene = event?.sourceSceneName && event.sourceSceneName !== sceneName;
|
|
10
|
+
const importBase = isCrossScene
|
|
11
|
+
? `../../${toKebabCase(event.sourceSceneName)}/${toKebabCase(event.sourceMomentName)}`
|
|
12
|
+
: event?.sourceMomentName ? `../${toKebabCase(event.sourceMomentName)}` : '.';
|
|
13
13
|
if (!importGroups.has(importBase)) importGroups.set(importBase, []);
|
|
14
14
|
const typeName = pascalCase(pair.eventType);
|
|
15
15
|
if (!importGroups.get(importBase).includes(typeName)) {
|
|
@@ -39,7 +39,7 @@ import type { ReactorContext } from '../../../shared';
|
|
|
39
39
|
|
|
40
40
|
export const react = ({ eventStore, commandSender, database }: ReactorContext) =>
|
|
41
41
|
inMemoryReactor<<%= eventUnion %>>({
|
|
42
|
-
processorId: '<%= toKebabCase(
|
|
42
|
+
processorId: '<%= toKebabCase(sceneName) %>-<%= toKebabCase(slice.name) %>',
|
|
43
43
|
canHandle: [<%= eventCommandPairs.map(p => `'${p.eventType}'`).join(', ') %>],
|
|
44
44
|
connectionOptions: {
|
|
45
45
|
database,
|
|
@@ -6,10 +6,10 @@ describe('react.ts.ejs', () => {
|
|
|
6
6
|
it('should throw when react slice has no When event', async () => {
|
|
7
7
|
const spec: SpecsSchema = {
|
|
8
8
|
variant: 'specs',
|
|
9
|
-
|
|
9
|
+
scenes: [
|
|
10
10
|
{
|
|
11
|
-
name: 'broken
|
|
12
|
-
|
|
11
|
+
name: 'broken scene',
|
|
12
|
+
moments: [
|
|
13
13
|
{
|
|
14
14
|
type: 'react',
|
|
15
15
|
name: 'missing-when-slice',
|
|
@@ -53,17 +53,17 @@ describe('react.ts.ejs', () => {
|
|
|
53
53
|
};
|
|
54
54
|
|
|
55
55
|
await expect(
|
|
56
|
-
generateScaffoldFilePlans(spec.
|
|
56
|
+
generateScaffoldFilePlans(spec.scenes, spec.messages, undefined, 'src/domain/narratives'),
|
|
57
57
|
).rejects.toThrow('missing-when-slice');
|
|
58
58
|
});
|
|
59
59
|
|
|
60
60
|
it('should include field-type hint comments for event and command', async () => {
|
|
61
61
|
const spec: SpecsSchema = {
|
|
62
62
|
variant: 'specs',
|
|
63
|
-
|
|
63
|
+
scenes: [
|
|
64
64
|
{
|
|
65
|
-
name: 'order
|
|
66
|
-
|
|
65
|
+
name: 'order scene',
|
|
66
|
+
moments: [
|
|
67
67
|
{
|
|
68
68
|
type: 'command',
|
|
69
69
|
name: 'place order',
|
|
@@ -167,7 +167,7 @@ describe('react.ts.ejs', () => {
|
|
|
167
167
|
],
|
|
168
168
|
};
|
|
169
169
|
|
|
170
|
-
const { plans } = await generateScaffoldFilePlans(spec.
|
|
170
|
+
const { plans } = await generateScaffoldFilePlans(spec.scenes, spec.messages, undefined, 'src/domain/narratives');
|
|
171
171
|
const reactFile = plans.find((p) => p.outputPath.endsWith('send-order-confirmation/react.ts'));
|
|
172
172
|
expect(reactFile?.contents).toBeDefined();
|
|
173
173
|
|
|
@@ -186,10 +186,10 @@ describe('react.ts.ejs', () => {
|
|
|
186
186
|
it('should skip react slice with empty examples without throwing', async () => {
|
|
187
187
|
const spec: SpecsSchema = {
|
|
188
188
|
variant: 'specs',
|
|
189
|
-
|
|
189
|
+
scenes: [
|
|
190
190
|
{
|
|
191
|
-
name: 'booking
|
|
192
|
-
|
|
191
|
+
name: 'booking scene',
|
|
192
|
+
moments: [
|
|
193
193
|
{
|
|
194
194
|
type: 'command',
|
|
195
195
|
name: 'book appointment',
|
|
@@ -259,7 +259,7 @@ describe('react.ts.ejs', () => {
|
|
|
259
259
|
],
|
|
260
260
|
};
|
|
261
261
|
|
|
262
|
-
const { plans } = await generateScaffoldFilePlans(spec.
|
|
262
|
+
const { plans } = await generateScaffoldFilePlans(spec.scenes, spec.messages, undefined, 'src/domain/narratives');
|
|
263
263
|
|
|
264
264
|
const reactFiles = plans.filter((p) => p.outputPath.includes('notify-barber-of-cancellation'));
|
|
265
265
|
expect(reactFiles).toEqual([]);
|
|
@@ -271,10 +271,10 @@ describe('react.ts.ejs', () => {
|
|
|
271
271
|
it('should generate events.ts for react slice with data target events', async () => {
|
|
272
272
|
const spec: SpecsSchema = {
|
|
273
273
|
variant: 'specs',
|
|
274
|
-
|
|
274
|
+
scenes: [
|
|
275
275
|
{
|
|
276
|
-
name: 'booking
|
|
277
|
-
|
|
276
|
+
name: 'booking scene',
|
|
277
|
+
moments: [
|
|
278
278
|
{
|
|
279
279
|
type: 'command',
|
|
280
280
|
name: 'book appointment',
|
|
@@ -376,7 +376,7 @@ describe('react.ts.ejs', () => {
|
|
|
376
376
|
],
|
|
377
377
|
};
|
|
378
378
|
|
|
379
|
-
const { plans } = await generateScaffoldFilePlans(spec.
|
|
379
|
+
const { plans } = await generateScaffoldFilePlans(spec.scenes, spec.messages, undefined, 'src/domain/narratives');
|
|
380
380
|
const eventsFile = plans.find((p) => p.outputPath.endsWith('notify-barber-of-new-booking/events.ts'));
|
|
381
381
|
|
|
382
382
|
expect(eventsFile?.contents).toMatchInlineSnapshot(`
|
|
@@ -396,10 +396,10 @@ export type BarberNotified = Event<
|
|
|
396
396
|
it('should generate aggregateStream when Given states exist', async () => {
|
|
397
397
|
const spec: SpecsSchema = {
|
|
398
398
|
variant: 'specs',
|
|
399
|
-
|
|
399
|
+
scenes: [
|
|
400
400
|
{
|
|
401
|
-
name: 'barbershop
|
|
402
|
-
|
|
401
|
+
name: 'barbershop scene',
|
|
402
|
+
moments: [
|
|
403
403
|
{
|
|
404
404
|
type: 'command',
|
|
405
405
|
name: 'cancel appointment',
|
|
@@ -516,7 +516,7 @@ export type BarberNotified = Event<
|
|
|
516
516
|
],
|
|
517
517
|
};
|
|
518
518
|
|
|
519
|
-
const { plans } = await generateScaffoldFilePlans(spec.
|
|
519
|
+
const { plans } = await generateScaffoldFilePlans(spec.scenes, spec.messages, undefined, 'src/domain/narratives');
|
|
520
520
|
const reactFile = plans.find((p) => p.outputPath.endsWith('notify-barber-of-cancellation/react.ts'));
|
|
521
521
|
|
|
522
522
|
expect(reactFile?.contents).toContain('aggregateStream');
|
|
@@ -537,10 +537,10 @@ export type BarberNotified = Event<
|
|
|
537
537
|
it('should ignore event And-steps in react Then, using only commands', async () => {
|
|
538
538
|
const spec: SpecsSchema = {
|
|
539
539
|
variant: 'specs',
|
|
540
|
-
|
|
540
|
+
scenes: [
|
|
541
541
|
{
|
|
542
|
-
name: 'notification
|
|
543
|
-
|
|
542
|
+
name: 'notification scene',
|
|
543
|
+
moments: [
|
|
544
544
|
{
|
|
545
545
|
type: 'command',
|
|
546
546
|
name: 'earn points',
|
|
@@ -632,7 +632,7 @@ export type BarberNotified = Event<
|
|
|
632
632
|
],
|
|
633
633
|
};
|
|
634
634
|
|
|
635
|
-
const { plans } = await generateScaffoldFilePlans(spec.
|
|
635
|
+
const { plans } = await generateScaffoldFilePlans(spec.scenes, spec.messages, undefined, 'src/domain/narratives');
|
|
636
636
|
const reactFile = plans.find((p) => p.outputPath.endsWith('notify-milestone/react.ts'));
|
|
637
637
|
|
|
638
638
|
expect(reactFile?.contents).toContain("type: 'SendNotification'");
|
|
@@ -642,10 +642,10 @@ export type BarberNotified = Event<
|
|
|
642
642
|
it('should use primitive linking field, skipping array/object fields', async () => {
|
|
643
643
|
const spec: SpecsSchema = {
|
|
644
644
|
variant: 'specs',
|
|
645
|
-
|
|
645
|
+
scenes: [
|
|
646
646
|
{
|
|
647
|
-
name: 'fitness
|
|
648
|
-
|
|
647
|
+
name: 'fitness scene',
|
|
648
|
+
moments: [
|
|
649
649
|
{
|
|
650
650
|
type: 'command',
|
|
651
651
|
name: 'log workout',
|
|
@@ -759,7 +759,7 @@ export type BarberNotified = Event<
|
|
|
759
759
|
],
|
|
760
760
|
};
|
|
761
761
|
|
|
762
|
-
const { plans } = await generateScaffoldFilePlans(spec.
|
|
762
|
+
const { plans } = await generateScaffoldFilePlans(spec.scenes, spec.messages, undefined, 'src/domain/narratives');
|
|
763
763
|
const reactFile = plans.find((p) => p.outputPath.endsWith('check-record-updates/react.ts'));
|
|
764
764
|
|
|
765
765
|
expect(reactFile?.contents).toContain('`WorkoutSummary-${event.data.memberId}`');
|
|
@@ -770,10 +770,10 @@ export type BarberNotified = Event<
|
|
|
770
770
|
it('should scaffold handlers for multiple event→command pairs', async () => {
|
|
771
771
|
const spec: SpecsSchema = {
|
|
772
772
|
variant: 'specs',
|
|
773
|
-
|
|
773
|
+
scenes: [
|
|
774
774
|
{
|
|
775
|
-
name: 'fitness
|
|
776
|
-
|
|
775
|
+
name: 'fitness scene',
|
|
776
|
+
moments: [
|
|
777
777
|
{
|
|
778
778
|
type: 'command',
|
|
779
779
|
name: 'earn points',
|
|
@@ -939,7 +939,7 @@ export type BarberNotified = Event<
|
|
|
939
939
|
],
|
|
940
940
|
};
|
|
941
941
|
|
|
942
|
-
const { plans } = await generateScaffoldFilePlans(spec.
|
|
942
|
+
const { plans } = await generateScaffoldFilePlans(spec.scenes, spec.messages, undefined, 'src/domain/narratives');
|
|
943
943
|
const reactFile = plans.find((p) => p.outputPath.endsWith('award-badges/react.ts'));
|
|
944
944
|
|
|
945
945
|
expect(reactFile?.contents).toMatchInlineSnapshot(`
|
|
@@ -950,7 +950,7 @@ export type BarberNotified = Event<
|
|
|
950
950
|
|
|
951
951
|
export const react = ({ eventStore, commandSender, database }: ReactorContext) =>
|
|
952
952
|
inMemoryReactor<PointsEarned | PersonalRecordUpdated>({
|
|
953
|
-
processorId: 'fitness-
|
|
953
|
+
processorId: 'fitness-scene-award-badges',
|
|
954
954
|
canHandle: ['PointsEarned', 'PersonalRecordUpdated'],
|
|
955
955
|
connectionOptions: {
|
|
956
956
|
database,
|
|
@@ -6,10 +6,10 @@ describe('register.ts.ejs (react slice)', () => {
|
|
|
6
6
|
it('should generate correct register.ts', async () => {
|
|
7
7
|
const spec: SpecsSchema = {
|
|
8
8
|
variant: 'specs',
|
|
9
|
-
|
|
9
|
+
scenes: [
|
|
10
10
|
{
|
|
11
11
|
name: 'manage bookings',
|
|
12
|
-
|
|
12
|
+
moments: [
|
|
13
13
|
{
|
|
14
14
|
type: 'command',
|
|
15
15
|
name: 'guest submits booking request',
|
|
@@ -228,7 +228,7 @@ describe('register.ts.ejs (react slice)', () => {
|
|
|
228
228
|
],
|
|
229
229
|
};
|
|
230
230
|
|
|
231
|
-
const { plans } = await generateScaffoldFilePlans(spec.
|
|
231
|
+
const { plans } = await generateScaffoldFilePlans(spec.scenes, spec.messages, undefined, 'src/domain/narratives');
|
|
232
232
|
const registerFile = plans.find((p) => p.outputPath.endsWith('send-notification-to-host/register.ts'));
|
|
233
233
|
|
|
234
234
|
expect(registerFile?.contents).toMatchInlineSnapshot(`
|
|
@@ -283,10 +283,10 @@ describe('register.ts.ejs (react slice)', () => {
|
|
|
283
283
|
it('should scaffold multiple subscribe calls for multi-event reactor', async () => {
|
|
284
284
|
const spec: SpecsSchema = {
|
|
285
285
|
variant: 'specs',
|
|
286
|
-
|
|
286
|
+
scenes: [
|
|
287
287
|
{
|
|
288
|
-
name: 'fitness
|
|
289
|
-
|
|
288
|
+
name: 'fitness scene',
|
|
289
|
+
moments: [
|
|
290
290
|
{
|
|
291
291
|
type: 'command',
|
|
292
292
|
name: 'earn points',
|
|
@@ -452,7 +452,7 @@ describe('register.ts.ejs (react slice)', () => {
|
|
|
452
452
|
],
|
|
453
453
|
};
|
|
454
454
|
|
|
455
|
-
const { plans } = await generateScaffoldFilePlans(spec.
|
|
455
|
+
const { plans } = await generateScaffoldFilePlans(spec.scenes, spec.messages, undefined, 'src/domain/narratives');
|
|
456
456
|
const registerFile = plans.find((p) => p.outputPath.endsWith('award-badges/register.ts'));
|
|
457
457
|
|
|
458
458
|
expect(registerFile?.contents).toMatchInlineSnapshot(`
|
|
@@ -6,10 +6,10 @@ if (!eventCommandPairs || eventCommandPairs.length === 0) {
|
|
|
6
6
|
const importGroups = new Map();
|
|
7
7
|
for (const pair of eventCommandPairs) {
|
|
8
8
|
const event = events.find(e => e.type === pair.eventType);
|
|
9
|
-
const
|
|
10
|
-
const importBase =
|
|
11
|
-
? `../../${toKebabCase(event.
|
|
12
|
-
: event?.
|
|
9
|
+
const isCrossScene = event?.sourceSceneName && event.sourceSceneName !== sceneName;
|
|
10
|
+
const importBase = isCrossScene
|
|
11
|
+
? `../../${toKebabCase(event.sourceSceneName)}/${toKebabCase(event.sourceMomentName)}`
|
|
12
|
+
: event?.sourceMomentName ? `../${toKebabCase(event.sourceMomentName)}` : '.';
|
|
13
13
|
if (!importGroups.has(importBase)) importGroups.set(importBase, []);
|
|
14
14
|
const typeName = pascalCase(pair.eventType);
|
|
15
15
|
if (!importGroups.get(importBase).includes(typeName)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"specVariant1.d.ts","sourceRoot":"","sources":["../../../../src/codegen/test-data/specVariant1.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAErE,QAAA,MAAM,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"specVariant1.d.ts","sourceRoot":"","sources":["../../../../src/codegen/test-data/specVariant1.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAErE,QAAA,MAAM,YAAY,EAAE,WAqOnB,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
const specVariant1 = {
|
|
2
2
|
variant: 'specs',
|
|
3
|
-
|
|
3
|
+
scenes: [
|
|
4
4
|
{
|
|
5
5
|
name: 'Add item',
|
|
6
6
|
description: 'Flow to add items to a system',
|
|
7
|
-
|
|
7
|
+
moments: [
|
|
8
8
|
{
|
|
9
9
|
type: 'command',
|
|
10
10
|
stream: 'item-${itemId}',
|
|
@@ -225,6 +225,7 @@ const specVariant1 = {
|
|
|
225
225
|
},
|
|
226
226
|
],
|
|
227
227
|
modules: [],
|
|
228
|
+
narratives: [],
|
|
228
229
|
};
|
|
229
230
|
export default specVariant1;
|
|
230
231
|
//# sourceMappingURL=specVariant1.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"specVariant1.js","sourceRoot":"","sources":["../../../../src/codegen/test-data/specVariant1.ts"],"names":[],"mappings":"AAEA,MAAM,YAAY,GAAgB;IAChC,OAAO,EAAE,OAAO;IAChB,
|
|
1
|
+
{"version":3,"file":"specVariant1.js","sourceRoot":"","sources":["../../../../src/codegen/test-data/specVariant1.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/codegen/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErF,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AAEzD,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IACnC,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/codegen/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErF,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AAEzD,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IACnC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB,CAAC,CAAC;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;IACnB,IAAI,EAAE,UAAU,GAAG,QAAQ,EAAE,CAAC;IAC9B,IAAI,EAAE,KAAK,CAAC,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC,CAAC;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type Command, type Event } from '@auto-engineer/message-bus';
|
|
2
|
-
import type { Model,
|
|
2
|
+
import type { Model, Moment, Scene } from '@auto-engineer/narrative';
|
|
3
3
|
import { type DuplicateCommandInfo, type FieldIssue } from '../codegen/scaffoldFromSchema';
|
|
4
|
-
type
|
|
4
|
+
type MomentDelta = {
|
|
5
5
|
type: 'added' | 'removed' | 'changed';
|
|
6
6
|
previous?: Record<string, unknown>;
|
|
7
7
|
current?: Record<string, unknown>;
|
|
@@ -12,7 +12,7 @@ export type ChangeSet = {
|
|
|
12
12
|
changed: string[];
|
|
13
13
|
sharedTypesChanged: boolean;
|
|
14
14
|
allAffected: string[];
|
|
15
|
-
deltas: Record<string,
|
|
15
|
+
deltas: Record<string, MomentDelta>;
|
|
16
16
|
};
|
|
17
17
|
export type GenerationState = {
|
|
18
18
|
version: 1;
|
|
@@ -39,25 +39,25 @@ export type ServerGenerationFailedEvent = Event<'ServerGenerationFailed', {
|
|
|
39
39
|
destination: string;
|
|
40
40
|
error: string;
|
|
41
41
|
model: Model;
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
42
|
+
sceneName?: string;
|
|
43
|
+
momentName?: string;
|
|
44
|
+
momentType?: string;
|
|
45
45
|
}>;
|
|
46
|
-
export type
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
46
|
+
export type MomentGeneratedEvent = Event<'MomentGenerated', {
|
|
47
|
+
sceneName: string;
|
|
48
|
+
momentName: string;
|
|
49
|
+
momentType: string;
|
|
50
50
|
schemaPath: string;
|
|
51
|
-
|
|
51
|
+
momentPath: string;
|
|
52
52
|
}>;
|
|
53
|
-
export type
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
53
|
+
export type MomentGenerationFailedEvent = Event<'MomentGenerationFailed', {
|
|
54
|
+
sceneName: string;
|
|
55
|
+
momentName: string;
|
|
56
|
+
momentType: string;
|
|
57
57
|
error: string;
|
|
58
58
|
model: Model;
|
|
59
59
|
}>;
|
|
60
|
-
export type GenerateServerEvents = ServerGeneratedEvent | ServerGenerationFailedEvent |
|
|
60
|
+
export type GenerateServerEvents = ServerGeneratedEvent | ServerGenerationFailedEvent | MomentGeneratedEvent | MomentGenerationFailedEvent;
|
|
61
61
|
export declare const commandHandler: import("@auto-engineer/message-bus").UnifiedCommandHandler<Readonly<{
|
|
62
62
|
type: string;
|
|
63
63
|
data: Readonly<Record<string, unknown>>;
|
|
@@ -70,11 +70,11 @@ export declare function writeModelToDisk(model: Model, destination: string): Pro
|
|
|
70
70
|
export declare function cleanServerDir(serverDir: string): Promise<void>;
|
|
71
71
|
export declare function writeHealthResolver(serverDir: string): Promise<void>;
|
|
72
72
|
export declare function createServerFailureEvent(command: GenerateServerCommand, error: unknown): ServerGenerationFailedEvent;
|
|
73
|
-
export declare function
|
|
74
|
-
export declare function
|
|
75
|
-
export declare function
|
|
76
|
-
export declare function
|
|
77
|
-
export declare function
|
|
73
|
+
export declare function createMomentGeneratedEvent(scene: Scene, slice: Moment, command: GenerateServerCommand, sceneDirName?: string): MomentGeneratedEvent;
|
|
74
|
+
export declare function emitMomentGenerationFailedForDuplicates(duplicateCommands: DuplicateCommandInfo[], spec: Model, command: GenerateServerCommand, events: GenerateServerEvents[]): void;
|
|
75
|
+
export declare function emitMomentGenerationFailedForFieldIssues(fieldIssues: FieldIssue[], spec: Model, command: GenerateServerCommand, events: GenerateServerEvents[]): void;
|
|
76
|
+
export declare function emitMomentGeneratedForAll(spec: Model, command: GenerateServerCommand, events: GenerateServerEvents[], duplicateCommands?: DuplicateCommandInfo[], fieldIssues?: FieldIssue[]): void;
|
|
77
|
+
export declare function emitMomentGeneratedForAffected(spec: Model, affectedIds: Set<string>, command: GenerateServerCommand, events: GenerateServerEvents[], duplicateCommands?: DuplicateCommandInfo[], fieldIssues?: FieldIssue[]): void;
|
|
78
78
|
export declare function handleGenerateServerCommandInternal(command: GenerateServerCommand): Promise<GenerateServerEvents[]>;
|
|
79
79
|
export declare function writePackage(dest: string): Promise<void>;
|
|
80
80
|
export declare function writeTsconfig(dest: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-server.d.ts","sourceRoot":"","sources":["../../../src/commands/generate-server.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,OAAO,EAAwB,KAAK,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,KAAK,EAAE,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"generate-server.d.ts","sourceRoot":"","sources":["../../../src/commands/generate-server.ts"],"names":[],"mappings":"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"}
|