@auto-engineer/narrative 0.12.1 → 0.13.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 (95) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +24 -0
  3. package/dist/src/commands/export-schema-runner.js +1 -1
  4. package/dist/src/commands/export-schema-runner.js.map +1 -1
  5. package/dist/src/fluent-builder.js +3 -3
  6. package/dist/src/fluent-builder.js.map +1 -1
  7. package/dist/src/getNarratives.specs.js +157 -161
  8. package/dist/src/getNarratives.specs.js.map +1 -1
  9. package/dist/src/id/addAutoIds.d.ts.map +1 -1
  10. package/dist/src/id/addAutoIds.js +23 -10
  11. package/dist/src/id/addAutoIds.js.map +1 -1
  12. package/dist/src/id/addAutoIds.specs.js +55 -46
  13. package/dist/src/id/addAutoIds.specs.js.map +1 -1
  14. package/dist/src/id/generators.js +1 -1
  15. package/dist/src/id/generators.js.map +1 -1
  16. package/dist/src/id/hasAllIds.d.ts.map +1 -1
  17. package/dist/src/id/hasAllIds.js +8 -3
  18. package/dist/src/id/hasAllIds.js.map +1 -1
  19. package/dist/src/id/hasAllIds.specs.js +142 -215
  20. package/dist/src/id/hasAllIds.specs.js.map +1 -1
  21. package/dist/src/index.d.ts +7 -8
  22. package/dist/src/index.d.ts.map +1 -1
  23. package/dist/src/index.js +3 -3
  24. package/dist/src/index.js.map +1 -1
  25. package/dist/src/loader/graph.d.ts.map +1 -1
  26. package/dist/src/loader/graph.js +13 -6
  27. package/dist/src/loader/graph.js.map +1 -1
  28. package/dist/src/loader/ts-utils.d.ts +1 -0
  29. package/dist/src/loader/ts-utils.d.ts.map +1 -1
  30. package/dist/src/loader/ts-utils.js +95 -16
  31. package/dist/src/loader/ts-utils.js.map +1 -1
  32. package/dist/src/model-to-narrative.specs.js +548 -466
  33. package/dist/src/model-to-narrative.specs.js.map +1 -1
  34. package/dist/src/narrative-context.d.ts +8 -8
  35. package/dist/src/narrative-context.d.ts.map +1 -1
  36. package/dist/src/narrative-context.js +111 -301
  37. package/dist/src/narrative-context.js.map +1 -1
  38. package/dist/src/narrative-context.specs.js +15 -55
  39. package/dist/src/narrative-context.specs.js.map +1 -1
  40. package/dist/src/narrative.d.ts +19 -22
  41. package/dist/src/narrative.d.ts.map +1 -1
  42. package/dist/src/narrative.js +42 -71
  43. package/dist/src/narrative.js.map +1 -1
  44. package/dist/src/samples/questionnaires.narrative.js +10 -10
  45. package/dist/src/samples/questionnaires.narrative.js.map +1 -1
  46. package/dist/src/samples/test-with-ids.narrative.js +13 -29
  47. package/dist/src/samples/test-with-ids.narrative.js.map +1 -1
  48. package/dist/src/schema.d.ts +2704 -8293
  49. package/dist/src/schema.d.ts.map +1 -1
  50. package/dist/src/schema.js +26 -47
  51. package/dist/src/schema.js.map +1 -1
  52. package/dist/src/slice-builder.js +3 -3
  53. package/dist/src/slice-builder.js.map +1 -1
  54. package/dist/src/transformers/model-to-narrative/generators/flow.d.ts.map +1 -1
  55. package/dist/src/transformers/model-to-narrative/generators/flow.js +118 -74
  56. package/dist/src/transformers/model-to-narrative/generators/flow.js.map +1 -1
  57. package/dist/src/transformers/model-to-narrative/generators/gwt.d.ts +9 -1
  58. package/dist/src/transformers/model-to-narrative/generators/gwt.d.ts.map +1 -1
  59. package/dist/src/transformers/model-to-narrative/generators/gwt.js +112 -112
  60. package/dist/src/transformers/model-to-narrative/generators/gwt.js.map +1 -1
  61. package/dist/src/transformers/model-to-narrative/generators/imports.d.ts +1 -1
  62. package/dist/src/transformers/model-to-narrative/generators/imports.d.ts.map +1 -1
  63. package/dist/src/transformers/model-to-narrative/generators/imports.js +13 -9
  64. package/dist/src/transformers/model-to-narrative/generators/imports.js.map +1 -1
  65. package/dist/src/transformers/narrative-to-model/index.d.ts.map +1 -1
  66. package/dist/src/transformers/narrative-to-model/index.js +50 -23
  67. package/dist/src/transformers/narrative-to-model/index.js.map +1 -1
  68. package/dist/src/transformers/narrative-to-model/type-inference.specs.js +100 -90
  69. package/dist/src/transformers/narrative-to-model/type-inference.specs.js.map +1 -1
  70. package/dist/tsconfig.tsbuildinfo +1 -1
  71. package/package.json +5 -5
  72. package/src/commands/export-schema-runner.ts +3 -1
  73. package/src/fluent-builder.ts +3 -3
  74. package/src/getNarratives.specs.ts +176 -184
  75. package/src/id/addAutoIds.specs.ts +55 -48
  76. package/src/id/addAutoIds.ts +28 -11
  77. package/src/id/generators.ts +1 -1
  78. package/src/id/hasAllIds.specs.ts +147 -245
  79. package/src/id/hasAllIds.ts +11 -4
  80. package/src/index.ts +11 -12
  81. package/src/loader/graph.ts +23 -6
  82. package/src/loader/ts-utils.ts +169 -26
  83. package/src/model-to-narrative.specs.ts +548 -466
  84. package/src/narrative-context.specs.ts +73 -116
  85. package/src/narrative-context.ts +127 -374
  86. package/src/narrative.ts +70 -120
  87. package/src/samples/questionnaires.narrative.ts +10 -10
  88. package/src/samples/test-with-ids.narrative.ts +23 -31
  89. package/src/schema.ts +33 -52
  90. package/src/slice-builder.ts +3 -3
  91. package/src/transformers/model-to-narrative/generators/flow.ts +191 -85
  92. package/src/transformers/model-to-narrative/generators/gwt.ts +195 -178
  93. package/src/transformers/model-to-narrative/generators/imports.ts +13 -9
  94. package/src/transformers/narrative-to-model/index.ts +87 -26
  95. package/src/transformers/narrative-to-model/type-inference.specs.ts +100 -90
@@ -1 +1 @@
1
- {"version":3,"file":"flow.js","sourceRoot":"","sources":["../../../../../src/transformers/model-to-narrative/generators/flow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flow.js","sourceRoot":"","sources":["../../../../../src/transformers/model-to-narrative/generators/flow.ts"],"names":[],"mappings":"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"}
@@ -36,7 +36,15 @@ export declare function buildGwtSpecBlock(ts: typeof import('typescript'), f: ts
36
36
  ruleDescription?: string;
37
37
  exampleDescription?: string;
38
38
  ruleId?: string;
39
- }, sliceKind: 'command' | 'react' | 'query' | 'experience'): tsNS.Statement;
39
+ }, sliceKind: 'command' | 'react' | 'query' | 'experience', messages?: Array<{
40
+ type: string;
41
+ name: string;
42
+ fields: Array<{
43
+ name: string;
44
+ type: string;
45
+ required: boolean;
46
+ }>;
47
+ }>): tsNS.Statement;
40
48
  export declare function buildConsolidatedGwtSpecBlock(ts: typeof import('typescript'), f: tsNS.NodeFactory, rule: {
41
49
  id?: string;
42
50
  description: string;
@@ -1 +1 @@
1
- {"version":3,"file":"gwt.d.ts","sourceRoot":"","sources":["../../../../../src/transformers/model-to-narrative/generators/gwt.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,YAAY,CAAC;AAoB9B,MAAM,MAAM,QAAQ,GAAG;IACrB,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;IAC1E,IAAI,CAAC,EACD;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAC5D;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAC1D,KAAK,CACD;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAC5D;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAC7D,CAAC;IACN,IAAI,EAAE,KAAK,CACP;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAC1D;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAC5D;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAC1D;QAAE,SAAS,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,eAAe,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAC7F,CAAC;CACH,CAAC;AAuNF,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,cAAc,YAAY,CAAC,EAC/B,CAAC,EAAE,IAAI,CAAC,WAAW,EACnB,CAAC,EAAE,QAAQ,GAAG;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,EAC9G,SAAS,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,YAAY,GACtD,IAAI,CAAC,SAAS,CAsChB;AAsBD,wBAAgB,6BAA6B,CAC3C,EAAE,EAAE,cAAc,YAAY,CAAC,EAC/B,CAAC,EAAE,IAAI,CAAC,WAAW,EACnB,IAAI,EAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,EAC1C,SAAS,EAAE,KAAK,CACd,QAAQ,GAAG;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAC5G,EACD,SAAS,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,YAAY,EACvD,QAAQ,CAAC,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,GACjH,IAAI,CAAC,SAAS,CA6ChB"}
1
+ {"version":3,"file":"gwt.d.ts","sourceRoot":"","sources":["../../../../../src/transformers/model-to-narrative/generators/gwt.ts"],"names":[],"mappings":"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"}
@@ -14,39 +14,84 @@ function isWhenEvents(x) {
14
14
  function hasGivenEvents(x) {
15
15
  return x !== null && x !== undefined && typeof x === 'object' && Array.isArray(x.given);
16
16
  }
17
- function buildThenItems(ts, f, g, messages) {
18
- return g.then.map((t) => {
19
- const item = t;
20
- // Handle event references: just return the data (type handled by generic parameter)
21
- if ('eventRef' in item) {
22
- const e = t;
23
- const typeInfo = messages ? getFieldTypeInfo(messages, e.eventRef) : undefined;
24
- return jsonToExpr(ts, f, e.exampleData, typeInfo);
25
- }
26
- // Handle command references: just return the data (type handled by generic parameter)
27
- if ('commandRef' in item) {
28
- const c = t;
29
- const typeInfo = messages ? getFieldTypeInfo(messages, c.commandRef) : undefined;
30
- return jsonToExpr(ts, f, c.exampleData, typeInfo);
31
- }
32
- // Handle state references: just return the data (type handled by generic parameter)
33
- if ('stateRef' in item) {
34
- const s = t;
35
- const typeInfo = messages ? getFieldTypeInfo(messages, s.stateRef) : undefined;
36
- return jsonToExpr(ts, f, s.exampleData, typeInfo);
37
- }
38
- // Handle error objects: { errorType: 'ValidationError', message: '...' }
39
- if ('errorType' in item) {
40
- const err = t;
41
- return f.createObjectLiteralExpression([
42
- f.createPropertyAssignment('errorType', f.createStringLiteral(err.errorType)),
43
- ...(err.message !== null && err.message !== undefined
44
- ? [f.createPropertyAssignment('message', f.createStringLiteral(err.message))]
45
- : []),
46
- ], false);
17
+ function buildStandaloneGivenStatements(ts, f, g, messages) {
18
+ const statements = [];
19
+ if (hasGivenEvents(g) && g.given !== null && g.given !== undefined && g.given.length > 0) {
20
+ const firstGiven = g.given[0];
21
+ const firstTypeInfo = messages ? getFieldTypeInfo(messages, firstGiven.eventRef) : undefined;
22
+ statements.push(f.createExpressionStatement(f.createCallExpression(f.createIdentifier('given'), [f.createTypeReferenceNode(firstGiven.eventRef, undefined)], [jsonToExpr(ts, f, firstGiven.exampleData, firstTypeInfo)])));
23
+ for (let i = 1; i < g.given.length; i++) {
24
+ const givenEvent = g.given[i];
25
+ const typeInfo = messages ? getFieldTypeInfo(messages, givenEvent.eventRef) : undefined;
26
+ statements.push(f.createExpressionStatement(f.createCallExpression(f.createIdentifier('and'), [f.createTypeReferenceNode(givenEvent.eventRef, undefined)], [jsonToExpr(ts, f, givenEvent.exampleData, typeInfo)])));
47
27
  }
48
- return f.createNull();
49
- });
28
+ }
29
+ return statements;
30
+ }
31
+ function createWhenCallExpression(ts, f, typeRef, exampleData, messages) {
32
+ const typeInfo = messages !== undefined ? getFieldTypeInfo(messages, typeRef) : undefined;
33
+ return f.createExpressionStatement(f.createCallExpression(f.createIdentifier('when'), typeRef !== '' ? [f.createTypeReferenceNode(typeRef, undefined)] : undefined, [jsonToExpr(ts, f, exampleData, typeInfo)]));
34
+ }
35
+ function buildCommandWhenStatement(ts, f, when, messages) {
36
+ return createWhenCallExpression(ts, f, when.commandRef, when.exampleData, messages);
37
+ }
38
+ function buildEventWhenStatement(ts, f, event, messages) {
39
+ return createWhenCallExpression(ts, f, event.eventRef, event.exampleData, messages);
40
+ }
41
+ function isQueryWithSingleEvent(sliceKind, when) {
42
+ return sliceKind === 'query' && when !== undefined && !Array.isArray(when) && 'eventRef' in when;
43
+ }
44
+ function isReactOrQueryWithEvents(sliceKind) {
45
+ return sliceKind === 'react' || sliceKind === 'query';
46
+ }
47
+ function buildStandaloneWhenStatement(ts, f, g, sliceKind, messages) {
48
+ if (isEmptyWhen(g.when)) {
49
+ return null;
50
+ }
51
+ const when = g.when;
52
+ if (sliceKind === 'command' && isWhenCommand(when)) {
53
+ return buildCommandWhenStatement(ts, f, when, messages);
54
+ }
55
+ if (isReactOrQueryWithEvents(sliceKind) && isWhenEvents(when) && when.length > 0) {
56
+ return buildEventWhenStatement(ts, f, when[0], messages);
57
+ }
58
+ if (isQueryWithSingleEvent(sliceKind, when)) {
59
+ return buildEventWhenStatement(ts, f, when, messages);
60
+ }
61
+ return null;
62
+ }
63
+ function buildStandaloneThenStatement(ts, f, g, messages) {
64
+ const firstThenItem = g.then[0];
65
+ const thenTypeRef = getThenTypeRef(firstThenItem);
66
+ const typeInfo = messages && thenTypeRef ? getFieldTypeInfo(messages, thenTypeRef) : undefined;
67
+ const thenArg = buildThenItem(ts, f, firstThenItem, typeInfo);
68
+ const thenTypeParams = thenTypeRef ? [f.createTypeReferenceNode(thenTypeRef, undefined)] : undefined;
69
+ return f.createExpressionStatement(f.createCallExpression(f.createIdentifier('then'), thenTypeParams, [thenArg]));
70
+ }
71
+ function buildThenItem(ts, f, t, typeInfo) {
72
+ const item = t;
73
+ if ('eventRef' in item) {
74
+ const e = t;
75
+ return jsonToExpr(ts, f, e.exampleData, typeInfo);
76
+ }
77
+ if ('commandRef' in item) {
78
+ const c = t;
79
+ return jsonToExpr(ts, f, c.exampleData, typeInfo);
80
+ }
81
+ if ('stateRef' in item) {
82
+ const s = t;
83
+ return jsonToExpr(ts, f, s.exampleData, typeInfo);
84
+ }
85
+ if ('errorType' in item) {
86
+ const err = t;
87
+ return f.createObjectLiteralExpression([
88
+ f.createPropertyAssignment('errorType', f.createStringLiteral(err.errorType)),
89
+ ...(err.message !== null && err.message !== undefined
90
+ ? [f.createPropertyAssignment('message', f.createStringLiteral(err.message))]
91
+ : []),
92
+ ], false);
93
+ }
94
+ return f.createNull();
50
95
  }
51
96
  function getDescriptions(g) {
52
97
  const ruleDesc = g.ruleDescription !== null && g.ruleDescription !== undefined && g.ruleDescription !== ''
@@ -59,32 +104,8 @@ function getDescriptions(g) {
59
104
  : 'Generated example description';
60
105
  return { ruleDesc, exampleDesc };
61
106
  }
62
- function addGivenToChain(ts, f, exampleChain, g, messages) {
63
- if (hasGivenEvents(g) && g.given !== null && g.given !== undefined && g.given.length > 0) {
64
- // Start with the first given
65
- const firstGiven = g.given[0];
66
- const firstTypeInfo = messages ? getFieldTypeInfo(messages, firstGiven.eventRef) : undefined;
67
- let currentChain = f.createCallExpression(f.createPropertyAccessExpression(exampleChain, 'given'), [f.createTypeReferenceNode(firstGiven.eventRef, undefined)], [jsonToExpr(ts, f, firstGiven.exampleData, firstTypeInfo)]);
68
- // Chain additional givens with .and()
69
- for (let i = 1; i < g.given.length; i++) {
70
- const givenEvent = g.given[i];
71
- const typeInfo = messages ? getFieldTypeInfo(messages, givenEvent.eventRef) : undefined;
72
- currentChain = f.createCallExpression(f.createPropertyAccessExpression(currentChain, 'and'), [f.createTypeReferenceNode(givenEvent.eventRef, undefined)], [jsonToExpr(ts, f, givenEvent.exampleData, typeInfo)]);
73
- }
74
- return currentChain;
75
- }
76
- return exampleChain;
77
- }
78
- function addCommandWhenToChain(ts, f, exampleChain, when, messages) {
79
- const typeInfo = messages ? getFieldTypeInfo(messages, when.commandRef) : undefined;
80
- return f.createCallExpression(f.createPropertyAccessExpression(exampleChain, 'when'), when.commandRef ? [f.createTypeReferenceNode(when.commandRef, undefined)] : undefined, [jsonToExpr(ts, f, when.exampleData, typeInfo)]);
81
- }
82
- function addEventWhenToChain(ts, f, exampleChain, firstEvent, messages) {
83
- const typeInfo = messages ? getFieldTypeInfo(messages, firstEvent.eventRef) : undefined;
84
- return f.createCallExpression(f.createPropertyAccessExpression(exampleChain, 'when'), firstEvent.eventRef ? [f.createTypeReferenceNode(firstEvent.eventRef, undefined)] : undefined, [jsonToExpr(ts, f, firstEvent.exampleData, typeInfo)]);
85
- }
86
107
  function isEmptyEventWhen(when) {
87
- return (!when.eventRef || when.eventRef === '') && Object.keys(when.exampleData).length === 0;
108
+ return Object.keys(when.exampleData).length === 0;
88
109
  }
89
110
  function isEmptyCommandWhen(when) {
90
111
  return (!when.commandRef || when.commandRef === '') && Object.keys(when.exampleData).length === 0;
@@ -92,8 +113,18 @@ function isEmptyCommandWhen(when) {
92
113
  function isEmptyWhen(whenData) {
93
114
  if (!whenData)
94
115
  return true;
95
- if (Array.isArray(whenData) && whenData.length === 0)
96
- return true;
116
+ if (Array.isArray(whenData)) {
117
+ if (whenData.length === 0)
118
+ return true;
119
+ const firstItem = whenData[0];
120
+ if ('eventRef' in firstItem) {
121
+ return isEmptyEventWhen(firstItem);
122
+ }
123
+ if ('commandRef' in firstItem) {
124
+ return isEmptyCommandWhen(firstItem);
125
+ }
126
+ return false;
127
+ }
97
128
  if (typeof whenData === 'object' && 'eventRef' in whenData) {
98
129
  return isEmptyEventWhen(whenData);
99
130
  }
@@ -102,25 +133,6 @@ function isEmptyWhen(whenData) {
102
133
  }
103
134
  return false;
104
135
  }
105
- function processWhenForSliceKind(ts, f, exampleChain, when, sliceKind, messages) {
106
- if (sliceKind === 'command' && isWhenCommand(when)) {
107
- return addCommandWhenToChain(ts, f, exampleChain, when, messages);
108
- }
109
- if ((sliceKind === 'react' || sliceKind === 'query') && isWhenEvents(when)) {
110
- return addEventWhenToChain(ts, f, exampleChain, when[0], messages);
111
- }
112
- if (sliceKind === 'query' && when && !Array.isArray(when) && 'eventRef' in when) {
113
- const whenEvent = when;
114
- return addEventWhenToChain(ts, f, exampleChain, whenEvent, messages);
115
- }
116
- return exampleChain;
117
- }
118
- function addWhenToChain(ts, f, exampleChain, g, sliceKind, messages) {
119
- if (isEmptyWhen(g.when)) {
120
- return exampleChain;
121
- }
122
- return processWhenForSliceKind(ts, f, exampleChain, g.when, sliceKind, messages);
123
- }
124
136
  function getThenTypeRef(firstThenItem) {
125
137
  if ('eventRef' in firstThenItem) {
126
138
  return firstThenItem.eventRef;
@@ -133,34 +145,24 @@ function getThenTypeRef(firstThenItem) {
133
145
  }
134
146
  return '';
135
147
  }
136
- function addThenToChain(ts, f, exampleChain, g, messages) {
137
- const thenItems = buildThenItems(ts, f, g, messages);
138
- const firstThenItem = g.then[0];
139
- const thenTypeRef = getThenTypeRef(firstThenItem);
140
- // Always use single object format for .then()
141
- const thenArg = thenItems[0];
142
- const thenTypeParams = thenTypeRef ? [f.createTypeReferenceNode(thenTypeRef, undefined)] : undefined;
143
- return f.createCallExpression(f.createPropertyAccessExpression(exampleChain, 'then'), thenTypeParams, [thenArg]);
144
- }
145
- export function buildGwtSpecBlock(ts, f, g, sliceKind) {
148
+ export function buildGwtSpecBlock(ts, f, g, sliceKind, messages) {
146
149
  const { ruleDesc, exampleDesc } = getDescriptions(g);
147
- // Build the example chain: example('desc').given().when().then()
148
- let exampleChain = f.createCallExpression(f.createIdentifier('example'), undefined, [
150
+ const bodyStatements = [];
151
+ bodyStatements.push(...buildStandaloneGivenStatements(ts, f, g, messages));
152
+ const whenStmt = buildStandaloneWhenStatement(ts, f, g, sliceKind, messages);
153
+ if (whenStmt) {
154
+ bodyStatements.push(whenStmt);
155
+ }
156
+ bodyStatements.push(buildStandaloneThenStatement(ts, f, g, messages));
157
+ const exampleCall = f.createCallExpression(f.createIdentifier('example'), undefined, [
149
158
  f.createStringLiteral(exampleDesc),
159
+ f.createArrowFunction(undefined, undefined, [], undefined, f.createToken(ts.SyntaxKind.EqualsGreaterThanToken), f.createBlock(bodyStatements, true)),
150
160
  ]);
151
- // Add .given() if present
152
- exampleChain = addGivenToChain(ts, f, exampleChain, g);
153
- // Add .when()
154
- exampleChain = addWhenToChain(ts, f, exampleChain, g, sliceKind);
155
- // Add .then()
156
- exampleChain = addThenToChain(ts, f, exampleChain, g);
157
- // Create the rule() call containing the example
158
161
  const ruleArgs = [f.createStringLiteral(ruleDesc)];
159
- // Add rule ID if provided
160
162
  if (g.ruleId !== null && g.ruleId !== undefined) {
161
163
  ruleArgs.push(f.createStringLiteral(g.ruleId));
162
164
  }
163
- ruleArgs.push(f.createArrowFunction(undefined, undefined, [], undefined, f.createToken(ts.SyntaxKind.EqualsGreaterThanToken), f.createBlock([f.createExpressionStatement(exampleChain)], true)));
165
+ ruleArgs.push(f.createArrowFunction(undefined, undefined, [], undefined, f.createToken(ts.SyntaxKind.EqualsGreaterThanToken), f.createBlock([f.createExpressionStatement(exampleCall)], true)));
164
166
  const ruleCall = f.createCallExpression(f.createIdentifier('rule'), undefined, ruleArgs);
165
167
  return f.createExpressionStatement(ruleCall);
166
168
  }
@@ -181,25 +183,23 @@ function getFieldTypeInfo(messages, typeName) {
181
183
  return typeInfo;
182
184
  }
183
185
  export function buildConsolidatedGwtSpecBlock(ts, f, rule, gwtBlocks, sliceKind, messages) {
184
- // Build example chains for each GWT block
185
186
  const exampleStatements = [];
186
187
  for (const g of gwtBlocks) {
187
188
  const { exampleDesc } = getDescriptions(g);
188
- // Build the example chain: example('desc').given().when().then()
189
- let exampleChain = f.createCallExpression(f.createIdentifier('example'), undefined, [
189
+ const bodyStatements = [];
190
+ bodyStatements.push(...buildStandaloneGivenStatements(ts, f, g, messages));
191
+ const whenStmt = buildStandaloneWhenStatement(ts, f, g, sliceKind, messages);
192
+ if (whenStmt) {
193
+ bodyStatements.push(whenStmt);
194
+ }
195
+ bodyStatements.push(buildStandaloneThenStatement(ts, f, g, messages));
196
+ const exampleCall = f.createCallExpression(f.createIdentifier('example'), undefined, [
190
197
  f.createStringLiteral(exampleDesc),
198
+ f.createArrowFunction(undefined, undefined, [], undefined, f.createToken(ts.SyntaxKind.EqualsGreaterThanToken), f.createBlock(bodyStatements, true)),
191
199
  ]);
192
- // Add .given() if present
193
- exampleChain = addGivenToChain(ts, f, exampleChain, g, messages);
194
- // Add .when()
195
- exampleChain = addWhenToChain(ts, f, exampleChain, g, sliceKind, messages);
196
- // Add .then()
197
- exampleChain = addThenToChain(ts, f, exampleChain, g, messages);
198
- exampleStatements.push(f.createExpressionStatement(exampleChain));
199
- }
200
- // Create the rule() call containing all examples
200
+ exampleStatements.push(f.createExpressionStatement(exampleCall));
201
+ }
201
202
  const ruleArgs = [f.createStringLiteral(rule.description)];
202
- // Add rule ID if provided
203
203
  if (rule.id !== null && rule.id !== undefined) {
204
204
  ruleArgs.push(f.createStringLiteral(rule.id));
205
205
  }
@@ -1 +1 @@
1
- {"version":3,"file":"gwt.js","sourceRoot":"","sources":["../../../../../src/transformers/model-to-narrative/generators/gwt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gwt.js","sourceRoot":"","sources":["../../../../../src/transformers/model-to-narrative/generators/gwt.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ type BuildImportsOpts = {
2
2
  flowImport: string;
3
3
  integrationImport: string;
4
4
  };
5
- export declare const ALL_FLOW_FUNCTION_NAMES: readonly ["command", "query", "react", "experience", "narrative", "describe", "it", "specs", "rule", "example", "gql", "source", "data", "sink"];
5
+ export declare const ALL_FLOW_FUNCTION_NAMES: readonly ["and", "command", "data", "describe", "example", "experience", "given", "gql", "it", "narrative", "query", "react", "rule", "sink", "source", "specs", "then", "when"];
6
6
  export declare function buildImports(ts: typeof import('typescript'), opts: BuildImportsOpts, messages: Array<{
7
7
  type: string;
8
8
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"imports.d.ts","sourceRoot":"","sources":["../../../../../src/transformers/model-to-narrative/generators/imports.ts"],"names":[],"mappings":"AAAA,KAAK,gBAAgB,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1E,eAAO,MAAM,uBAAuB,kJAe1B,CAAC;AAEX,wBAAgB,YAAY,CAC1B,EAAE,EAAE,cAAc,YAAY,CAAC,EAC/B,IAAI,EAAE,gBAAgB,EACtB,QAAQ,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EAC/C,oBAAoB,EAAE,MAAM,EAAE,EAC9B,qBAAqB,GAAE,MAAM,EAAO,EACpC,qBAAqB,GAAE,MAAM,EAAO;;;;;EAqFrC"}
1
+ {"version":3,"file":"imports.d.ts","sourceRoot":"","sources":["../../../../../src/transformers/model-to-narrative/generators/imports.ts"],"names":[],"mappings":"AAAA,KAAK,gBAAgB,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1E,eAAO,MAAM,uBAAuB,kLAmB1B,CAAC;AAEX,wBAAgB,YAAY,CAC1B,EAAE,EAAE,cAAc,YAAY,CAAC,EAC/B,IAAI,EAAE,gBAAgB,EACtB,QAAQ,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EAC/C,oBAAoB,EAAE,MAAM,EAAE,EAC9B,qBAAqB,GAAE,MAAM,EAAO,EACpC,qBAAqB,GAAE,MAAM,EAAO;;;;;EAqFrC"}
@@ -1,18 +1,22 @@
1
1
  export const ALL_FLOW_FUNCTION_NAMES = [
2
+ 'and',
2
3
  'command',
3
- 'query',
4
- 'react',
5
- 'experience',
6
- 'narrative',
4
+ 'data',
7
5
  'describe',
8
- 'it',
9
- 'specs',
10
- 'rule',
11
6
  'example',
7
+ 'experience',
8
+ 'given',
12
9
  'gql',
13
- 'source',
14
- 'data',
10
+ 'it',
11
+ 'narrative',
12
+ 'query',
13
+ 'react',
14
+ 'rule',
15
15
  'sink',
16
+ 'source',
17
+ 'specs',
18
+ 'then',
19
+ 'when',
16
20
  ];
17
21
  export function buildImports(ts, opts, messages, typeIntegrationNames, valueIntegrationNames = [], usedFlowFunctionNames = []) {
18
22
  const f = ts.factory;
@@ -1 +1 @@
1
- {"version":3,"file":"imports.js","sourceRoot":"","sources":["../../../../../src/transformers/model-to-narrative/generators/imports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"imports.js","sourceRoot":"","sources":["../../../../../src/transformers/model-to-narrative/generators/imports.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/transformers/narrative-to-model/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAW,KAAK,EAAS,MAAM,aAAa,CAAC;AAG/D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAuNjD,eAAO,MAAM,iBAAiB,GAAI,YAAY,SAAS,EAAE,EAAE,cAAc,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,KAAG,KAoD7G,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/transformers/narrative-to-model/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAW,KAAK,EAAS,MAAM,aAAa,CAAC;AAG/D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAoRjD,eAAO,MAAM,iBAAiB,GAAI,YAAY,SAAS,EAAE,EAAE,cAAc,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,KAAG,KAoD7G,CAAC"}
@@ -89,31 +89,58 @@ function getServerSpecs(slice) {
89
89
  }
90
90
  return undefined;
91
91
  }
92
+ function isStepWithError(step) {
93
+ return 'error' in step;
94
+ }
95
+ function processSteps(steps, slice, resolveTypeAndInfo, messages, exampleShapeHints) {
96
+ let effectiveKeyword = 'Given';
97
+ for (const step of steps) {
98
+ if (isStepWithError(step)) {
99
+ continue;
100
+ }
101
+ const keyword = step.keyword;
102
+ if (keyword !== 'And') {
103
+ effectiveKeyword = keyword;
104
+ }
105
+ const refItem = {
106
+ eventRef: step.text,
107
+ commandRef: step.text,
108
+ stateRef: step.text,
109
+ exampleData: step.docString,
110
+ };
111
+ if (effectiveKeyword === 'Given') {
112
+ processGiven([refItem], resolveTypeAndInfo, messages, exampleShapeHints);
113
+ }
114
+ else if (effectiveKeyword === 'When') {
115
+ processWhen([refItem], slice, resolveTypeAndInfo, messages, exampleShapeHints);
116
+ }
117
+ else if (effectiveKeyword === 'Then') {
118
+ processThen([refItem], resolveTypeAndInfo, messages, exampleShapeHints);
119
+ }
120
+ }
121
+ }
122
+ function isSpecWithRules(spec) {
123
+ return (typeof spec === 'object' && spec !== null && 'rules' in spec && Array.isArray(spec.rules));
124
+ }
125
+ function processRuleExamples(rule, slice, resolveTypeAndInfo, messages, exampleShapeHints) {
126
+ if (!Array.isArray(rule.examples))
127
+ return;
128
+ for (const example of rule.examples) {
129
+ if (Array.isArray(example.steps)) {
130
+ processSteps(example.steps, slice, resolveTypeAndInfo, messages, exampleShapeHints);
131
+ }
132
+ }
133
+ }
92
134
  function processSliceSpecs(slice, resolveTypeAndInfo, messages, exampleShapeHints) {
93
- const serverSpec = getServerSpecs(slice);
94
- if (serverSpec !== undefined && Array.isArray(serverSpec.rules)) {
95
- serverSpec.rules.forEach((rule) => {
96
- if (typeof rule === 'object' &&
97
- rule !== null &&
98
- 'examples' in rule &&
99
- Array.isArray(rule.examples)) {
100
- const ruleObj = rule;
101
- ruleObj.examples.forEach((example) => {
102
- if (example.given !== undefined && example.given !== null) {
103
- const givenArray = Array.isArray(example.given) ? example.given : [example.given];
104
- processGiven(givenArray, resolveTypeAndInfo, messages, exampleShapeHints);
105
- }
106
- if (example.when !== undefined && example.when !== null) {
107
- const whenArray = Array.isArray(example.when) ? example.when : [example.when];
108
- processWhen(whenArray, slice, resolveTypeAndInfo, messages, exampleShapeHints);
109
- }
110
- if (example.then !== undefined && example.then !== null) {
111
- const thenArray = Array.isArray(example.then) ? example.then : [example.then];
112
- processThen(thenArray, resolveTypeAndInfo, messages, exampleShapeHints);
113
- }
114
- });
135
+ const serverSpecs = getServerSpecs(slice);
136
+ if (serverSpecs === undefined || !Array.isArray(serverSpecs))
137
+ return;
138
+ for (const spec of serverSpecs) {
139
+ if (isSpecWithRules(spec)) {
140
+ for (const rule of spec.rules) {
141
+ processRuleExamples(rule, slice, resolveTypeAndInfo, messages, exampleShapeHints);
115
142
  }
116
- });
143
+ }
117
144
  }
118
145
  }
119
146
  function processSliceIntegrations(slice, integrations, messages) {