@auto-engineer/narrative 0.15.0 → 0.17.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.
Files changed (124) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +28 -0
  3. package/dist/src/getNarratives.js +1 -1
  4. package/dist/src/getNarratives.js.map +1 -1
  5. package/dist/src/id/addAutoIds.d.ts.map +1 -1
  6. package/dist/src/id/addAutoIds.js +15 -0
  7. package/dist/src/id/addAutoIds.js.map +1 -1
  8. package/dist/src/id/hasAllIds.d.ts.map +1 -1
  9. package/dist/src/id/hasAllIds.js +6 -1
  10. package/dist/src/id/hasAllIds.js.map +1 -1
  11. package/dist/src/index.d.ts +5 -2
  12. package/dist/src/index.d.ts.map +1 -1
  13. package/dist/src/index.js +1 -1
  14. package/dist/src/index.js.map +1 -1
  15. package/dist/src/loader/runtime-cjs.d.ts.map +1 -1
  16. package/dist/src/loader/runtime-cjs.js +3 -2
  17. package/dist/src/loader/runtime-cjs.js.map +1 -1
  18. package/dist/src/schema.d.ts +301 -143
  19. package/dist/src/schema.d.ts.map +1 -1
  20. package/dist/src/schema.js +26 -0
  21. package/dist/src/schema.js.map +1 -1
  22. package/dist/src/transformers/model-to-narrative/cross-module-imports.d.ts +6 -0
  23. package/dist/src/transformers/model-to-narrative/cross-module-imports.d.ts.map +1 -0
  24. package/dist/src/transformers/model-to-narrative/cross-module-imports.js +63 -0
  25. package/dist/src/transformers/model-to-narrative/cross-module-imports.js.map +1 -0
  26. package/dist/src/transformers/model-to-narrative/generators/flow.d.ts +1 -4
  27. package/dist/src/transformers/model-to-narrative/generators/flow.d.ts.map +1 -1
  28. package/dist/src/transformers/model-to-narrative/generators/flow.js.map +1 -1
  29. package/dist/src/transformers/model-to-narrative/generators/module-code.d.ts +9 -0
  30. package/dist/src/transformers/model-to-narrative/generators/module-code.d.ts.map +1 -0
  31. package/dist/src/transformers/model-to-narrative/generators/module-code.js +102 -0
  32. package/dist/src/transformers/model-to-narrative/generators/module-code.js.map +1 -0
  33. package/dist/src/transformers/model-to-narrative/index.d.ts +6 -4
  34. package/dist/src/transformers/model-to-narrative/index.d.ts.map +1 -1
  35. package/dist/src/transformers/model-to-narrative/index.js +10 -6
  36. package/dist/src/transformers/model-to-narrative/index.js.map +1 -1
  37. package/dist/src/transformers/model-to-narrative/ordering.d.ts +10 -0
  38. package/dist/src/transformers/model-to-narrative/ordering.d.ts.map +1 -0
  39. package/dist/src/transformers/model-to-narrative/ordering.js +37 -0
  40. package/dist/src/transformers/model-to-narrative/ordering.js.map +1 -0
  41. package/dist/src/transformers/model-to-narrative/spec-traversal.d.ts +3 -0
  42. package/dist/src/transformers/model-to-narrative/spec-traversal.d.ts.map +1 -0
  43. package/dist/src/transformers/model-to-narrative/spec-traversal.js +54 -0
  44. package/dist/src/transformers/model-to-narrative/spec-traversal.js.map +1 -0
  45. package/dist/src/transformers/model-to-narrative/types.d.ts +12 -0
  46. package/dist/src/transformers/model-to-narrative/types.d.ts.map +1 -0
  47. package/dist/src/transformers/model-to-narrative/types.js +2 -0
  48. package/dist/src/transformers/model-to-narrative/types.js.map +1 -0
  49. package/dist/src/transformers/model-to-narrative/validate-modules.d.ts +8 -0
  50. package/dist/src/transformers/model-to-narrative/validate-modules.d.ts.map +1 -0
  51. package/dist/src/transformers/model-to-narrative/validate-modules.js +121 -0
  52. package/dist/src/transformers/model-to-narrative/validate-modules.js.map +1 -0
  53. package/dist/src/transformers/narrative-to-model/assemble.d.ts.map +1 -1
  54. package/dist/src/transformers/narrative-to-model/assemble.js +5 -1
  55. package/dist/src/transformers/narrative-to-model/assemble.js.map +1 -1
  56. package/dist/src/transformers/narrative-to-model/derive-modules.d.ts +3 -0
  57. package/dist/src/transformers/narrative-to-model/derive-modules.d.ts.map +1 -0
  58. package/dist/src/transformers/narrative-to-model/derive-modules.js +29 -0
  59. package/dist/src/transformers/narrative-to-model/derive-modules.js.map +1 -0
  60. package/dist/tsconfig.tsbuildinfo +1 -1
  61. package/package.json +5 -4
  62. package/src/getNarratives.specs.ts +214 -1
  63. package/src/getNarratives.ts +1 -1
  64. package/src/id/addAutoIds.specs.ts +180 -0
  65. package/src/id/addAutoIds.ts +16 -1
  66. package/src/id/hasAllIds.specs.ts +87 -0
  67. package/src/id/hasAllIds.ts +10 -2
  68. package/src/index.ts +7 -0
  69. package/src/loader/runtime-cjs.ts +3 -2
  70. package/src/model-to-narrative.specs.ts +467 -17
  71. package/src/schema.ts +28 -0
  72. package/src/transformers/model-to-narrative/cross-module-imports.specs.ts +450 -0
  73. package/src/transformers/model-to-narrative/cross-module-imports.ts +83 -0
  74. package/src/transformers/model-to-narrative/generators/flow.ts +11 -10
  75. package/src/transformers/model-to-narrative/generators/module-code.ts +186 -0
  76. package/src/transformers/model-to-narrative/index.ts +19 -7
  77. package/src/transformers/model-to-narrative/modules.specs.ts +625 -0
  78. package/src/transformers/model-to-narrative/ordering.specs.ts +104 -0
  79. package/src/transformers/model-to-narrative/ordering.ts +46 -0
  80. package/src/transformers/model-to-narrative/spec-traversal.specs.ts +418 -0
  81. package/src/transformers/model-to-narrative/spec-traversal.ts +63 -0
  82. package/src/transformers/model-to-narrative/types.ts +13 -0
  83. package/src/transformers/model-to-narrative/validate-modules.ts +159 -0
  84. package/src/transformers/narrative-to-model/assemble.ts +7 -2
  85. package/src/transformers/narrative-to-model/derive-modules.specs.ts +121 -0
  86. package/src/transformers/narrative-to-model/derive-modules.ts +36 -0
  87. package/tsconfig.json +1 -1
  88. package/tsconfig.test.json +2 -1
  89. package/dist/src/fluent-builder.specs.d.ts +0 -2
  90. package/dist/src/fluent-builder.specs.d.ts.map +0 -1
  91. package/dist/src/fluent-builder.specs.js +0 -28
  92. package/dist/src/fluent-builder.specs.js.map +0 -1
  93. package/dist/src/getNarratives.cache.specs.d.ts +0 -2
  94. package/dist/src/getNarratives.cache.specs.d.ts.map +0 -1
  95. package/dist/src/getNarratives.cache.specs.js +0 -234
  96. package/dist/src/getNarratives.cache.specs.js.map +0 -1
  97. package/dist/src/getNarratives.specs.d.ts +0 -2
  98. package/dist/src/getNarratives.specs.d.ts.map +0 -1
  99. package/dist/src/getNarratives.specs.js +0 -1307
  100. package/dist/src/getNarratives.specs.js.map +0 -1
  101. package/dist/src/id/addAutoIds.specs.d.ts +0 -2
  102. package/dist/src/id/addAutoIds.specs.d.ts.map +0 -1
  103. package/dist/src/id/addAutoIds.specs.js +0 -602
  104. package/dist/src/id/addAutoIds.specs.js.map +0 -1
  105. package/dist/src/id/hasAllIds.specs.d.ts +0 -2
  106. package/dist/src/id/hasAllIds.specs.d.ts.map +0 -1
  107. package/dist/src/id/hasAllIds.specs.js +0 -424
  108. package/dist/src/id/hasAllIds.specs.js.map +0 -1
  109. package/dist/src/model-to-narrative.specs.d.ts +0 -2
  110. package/dist/src/model-to-narrative.specs.d.ts.map +0 -1
  111. package/dist/src/model-to-narrative.specs.js +0 -2437
  112. package/dist/src/model-to-narrative.specs.js.map +0 -1
  113. package/dist/src/narrative-context.specs.d.ts +0 -2
  114. package/dist/src/narrative-context.specs.d.ts.map +0 -1
  115. package/dist/src/narrative-context.specs.js +0 -260
  116. package/dist/src/narrative-context.specs.js.map +0 -1
  117. package/dist/src/transformers/model-to-narrative/generators/gwt.specs.d.ts +0 -2
  118. package/dist/src/transformers/model-to-narrative/generators/gwt.specs.d.ts.map +0 -1
  119. package/dist/src/transformers/model-to-narrative/generators/gwt.specs.js +0 -142
  120. package/dist/src/transformers/model-to-narrative/generators/gwt.specs.js.map +0 -1
  121. package/dist/src/transformers/narrative-to-model/type-inference.specs.d.ts +0 -2
  122. package/dist/src/transformers/narrative-to-model/type-inference.specs.d.ts.map +0 -1
  123. package/dist/src/transformers/narrative-to-model/type-inference.specs.js +0 -177
  124. package/dist/src/transformers/narrative-to-model/type-inference.specs.js.map +0 -1
@@ -1,424 +0,0 @@
1
- import { describe, expect, it } from 'vitest';
2
- import { addAutoIds, hasAllIds } from './index.js';
3
- describe('hasAllIds', () => {
4
- const createModelWithoutIds = () => ({
5
- variant: 'specs',
6
- narratives: [
7
- {
8
- name: 'Test Flow Without IDs',
9
- slices: [
10
- {
11
- type: 'command',
12
- name: 'Test slice without ID',
13
- client: { specs: [] },
14
- server: {
15
- description: 'Test server',
16
- specs: [
17
- {
18
- type: 'gherkin',
19
- feature: 'Test specs',
20
- rules: [
21
- {
22
- name: 'Test rule without ID',
23
- examples: [],
24
- },
25
- ],
26
- },
27
- ],
28
- },
29
- },
30
- ],
31
- },
32
- ],
33
- messages: [],
34
- integrations: [],
35
- });
36
- const createModelWithIds = () => ({
37
- variant: 'specs',
38
- narratives: [
39
- {
40
- name: 'Test Flow with IDs',
41
- id: 'FLOW-001',
42
- slices: [
43
- {
44
- type: 'command',
45
- name: 'Test slice with ID',
46
- id: 'SLICE-001',
47
- client: { specs: [] },
48
- server: {
49
- description: 'Test server',
50
- specs: [
51
- {
52
- id: 'SPEC-001',
53
- type: 'gherkin',
54
- feature: 'Test specs',
55
- rules: [
56
- {
57
- id: 'RULE-001',
58
- name: 'Test rule with ID',
59
- examples: [],
60
- },
61
- ],
62
- },
63
- ],
64
- },
65
- },
66
- ],
67
- },
68
- ],
69
- messages: [],
70
- integrations: [],
71
- });
72
- const createModelWithFullIds = () => ({
73
- variant: 'specs',
74
- narratives: [
75
- {
76
- name: 'Test Flow with Full IDs',
77
- id: 'FLOW-001',
78
- slices: [
79
- {
80
- type: 'command',
81
- name: 'Test slice with ID',
82
- id: 'SLICE-001',
83
- client: { specs: [] },
84
- server: {
85
- description: 'Test server',
86
- specs: [
87
- {
88
- id: 'SPEC-001',
89
- type: 'gherkin',
90
- feature: 'Test specs',
91
- rules: [
92
- {
93
- id: 'RULE-001',
94
- name: 'Test rule with ID',
95
- examples: [
96
- {
97
- id: 'EXAMPLE-001',
98
- name: 'Test example',
99
- steps: [
100
- {
101
- id: 'STEP-001',
102
- keyword: 'Given',
103
- text: 'TestState',
104
- docString: { value: 'test' },
105
- },
106
- {
107
- id: 'STEP-002',
108
- keyword: 'When',
109
- text: 'TestCommand',
110
- },
111
- {
112
- id: 'STEP-003',
113
- keyword: 'Then',
114
- text: 'TestEvent',
115
- },
116
- ],
117
- },
118
- ],
119
- },
120
- ],
121
- },
122
- ],
123
- },
124
- },
125
- ],
126
- },
127
- ],
128
- messages: [],
129
- integrations: [],
130
- });
131
- const createMultipleFlowsModel = (includeAllIds, includeAllSliceIds) => ({
132
- variant: 'specs',
133
- narratives: [
134
- {
135
- name: 'Home Screen',
136
- id: 'aifPcU3hw',
137
- sourceFile: '/path/to/homepage.narrative.ts',
138
- slices: [
139
- {
140
- name: 'Active Surveys Summary',
141
- id: 'slice1',
142
- type: 'experience',
143
- client: { specs: [{ type: 'it', id: 'it1', title: 'show active surveys summary' }] },
144
- },
145
- ],
146
- },
147
- {
148
- name: 'Create Survey',
149
- id: includeAllIds ? 'MPviTMrQC' : undefined,
150
- sourceFile: '/path/to/homepage.narrative.ts',
151
- slices: [
152
- {
153
- name: 'Create Survey Form',
154
- id: includeAllSliceIds ? 'slice2' : undefined,
155
- type: 'experience',
156
- client: { specs: [{ type: 'it', id: 'it2', title: 'allow entering survey title' }] },
157
- },
158
- ],
159
- },
160
- {
161
- name: 'Response Analytics',
162
- id: 'eME978Euk',
163
- sourceFile: '/path/to/homepage.narrative.ts',
164
- slices: [
165
- {
166
- name: 'Response Rate Charts',
167
- id: 'slice3',
168
- type: 'experience',
169
- client: { specs: [{ type: 'it', id: 'it3', title: 'show daily response rate charts' }] },
170
- },
171
- ],
172
- },
173
- ],
174
- messages: [],
175
- integrations: [],
176
- });
177
- it('should return false for models without IDs', () => {
178
- const model = createModelWithoutIds();
179
- expect(hasAllIds(model)).toBe(false);
180
- });
181
- it('should return true for models with complete IDs', () => {
182
- const model = createModelWithoutIds();
183
- const modelWithIds = addAutoIds(model);
184
- expect(hasAllIds(modelWithIds)).toBe(true);
185
- });
186
- it('should return true for flows that already have IDs', () => {
187
- const model = createModelWithIds();
188
- expect(hasAllIds(model)).toBe(true);
189
- });
190
- it('should return false if any slice is missing an ID', () => {
191
- const model = createModelWithIds();
192
- const modifiedModel = structuredClone(model);
193
- modifiedModel.narratives[0].slices[0].id = '';
194
- expect(hasAllIds(modifiedModel)).toBe(false);
195
- });
196
- it('should return false if any rule is missing an ID', () => {
197
- const model = createModelWithIds();
198
- const modifiedModel = structuredClone(model);
199
- const slice = modifiedModel.narratives[0].slices[0];
200
- if ('server' in slice && slice.server?.specs !== undefined && Array.isArray(slice.server.specs)) {
201
- slice.server.specs[0].rules[0].id = '';
202
- }
203
- expect(hasAllIds(modifiedModel)).toBe(false);
204
- });
205
- it('should return true when multiple flows with same sourceFile all have IDs', () => {
206
- const model = createMultipleFlowsModel(true, true);
207
- expect(hasAllIds(model)).toBe(true);
208
- });
209
- it('should return false when any flow in multiple flows with same sourceFile is missing ID', () => {
210
- const model = createMultipleFlowsModel(false, true);
211
- expect(hasAllIds(model)).toBe(false);
212
- });
213
- it('should return false when any slice in multiple flows with same sourceFile is missing ID', () => {
214
- const model = createMultipleFlowsModel(true, false);
215
- expect(hasAllIds(model)).toBe(false);
216
- });
217
- it('should return false if any spec is missing an ID', () => {
218
- const model = createModelWithFullIds();
219
- const modifiedModel = structuredClone(model);
220
- const slice = modifiedModel.narratives[0].slices[0];
221
- if ('server' in slice && slice.server?.specs !== undefined && Array.isArray(slice.server.specs)) {
222
- slice.server.specs[0].id = '';
223
- }
224
- expect(hasAllIds(modifiedModel)).toBe(false);
225
- });
226
- it('should return false if any example is missing an ID', () => {
227
- const model = createModelWithFullIds();
228
- const modifiedModel = structuredClone(model);
229
- const slice = modifiedModel.narratives[0].slices[0];
230
- if ('server' in slice && slice.server?.specs !== undefined && Array.isArray(slice.server.specs)) {
231
- slice.server.specs[0].rules[0].examples[0].id = '';
232
- }
233
- expect(hasAllIds(modifiedModel)).toBe(false);
234
- });
235
- it('should return false if any step is missing an ID', () => {
236
- const model = createModelWithFullIds();
237
- const modifiedModel = structuredClone(model);
238
- const slice = modifiedModel.narratives[0].slices[0];
239
- if ('server' in slice && slice.server?.specs !== undefined && Array.isArray(slice.server.specs)) {
240
- slice.server.specs[0].rules[0].examples[0].steps[0].id = '';
241
- }
242
- expect(hasAllIds(modifiedModel)).toBe(false);
243
- });
244
- it('should return false if step with error is missing an ID', () => {
245
- const model = {
246
- variant: 'specs',
247
- narratives: [
248
- {
249
- name: 'Test Flow',
250
- id: 'FLOW-001',
251
- slices: [
252
- {
253
- type: 'command',
254
- name: 'Test slice',
255
- id: 'SLICE-001',
256
- client: { specs: [] },
257
- server: {
258
- description: 'Test server',
259
- specs: [
260
- {
261
- id: 'SPEC-001',
262
- type: 'gherkin',
263
- feature: 'Test specs',
264
- rules: [
265
- {
266
- id: 'RULE-001',
267
- name: 'Test rule',
268
- examples: [
269
- {
270
- id: 'EXAMPLE-001',
271
- name: 'Error example',
272
- steps: [
273
- {
274
- id: 'STEP-001',
275
- keyword: 'Given',
276
- text: 'TestState',
277
- },
278
- {
279
- keyword: 'Then',
280
- error: { type: 'ValidationError', message: 'Invalid input' },
281
- },
282
- ],
283
- },
284
- ],
285
- },
286
- ],
287
- },
288
- ],
289
- },
290
- },
291
- ],
292
- },
293
- ],
294
- messages: [],
295
- integrations: [],
296
- };
297
- expect(hasAllIds(model)).toBe(false);
298
- });
299
- it('should return false if client it spec is missing an ID', () => {
300
- const model = {
301
- variant: 'specs',
302
- narratives: [
303
- {
304
- name: 'Test Flow',
305
- id: 'FLOW-001',
306
- slices: [
307
- {
308
- name: 'Test slice',
309
- id: 'SLICE-001',
310
- type: 'experience',
311
- client: {
312
- specs: [{ type: 'it', title: 'test without id' }],
313
- },
314
- },
315
- ],
316
- },
317
- ],
318
- messages: [],
319
- integrations: [],
320
- };
321
- expect(hasAllIds(model)).toBe(false);
322
- });
323
- it('should return false if client describe spec is missing an ID', () => {
324
- const model = {
325
- variant: 'specs',
326
- narratives: [
327
- {
328
- name: 'Test Flow',
329
- id: 'FLOW-001',
330
- slices: [
331
- {
332
- name: 'Test slice',
333
- id: 'SLICE-001',
334
- type: 'experience',
335
- client: {
336
- specs: [
337
- {
338
- type: 'describe',
339
- title: 'test describe without id',
340
- children: [{ type: 'it', id: 'IT-001', title: 'nested it with id' }],
341
- },
342
- ],
343
- },
344
- },
345
- ],
346
- },
347
- ],
348
- messages: [],
349
- integrations: [],
350
- };
351
- expect(hasAllIds(model)).toBe(false);
352
- });
353
- it('should return false if nested client it spec is missing an ID', () => {
354
- const model = {
355
- variant: 'specs',
356
- narratives: [
357
- {
358
- name: 'Test Flow',
359
- id: 'FLOW-001',
360
- slices: [
361
- {
362
- name: 'Test slice',
363
- id: 'SLICE-001',
364
- type: 'experience',
365
- client: {
366
- specs: [
367
- {
368
- type: 'describe',
369
- id: 'DESC-001',
370
- title: 'test describe with id',
371
- children: [{ type: 'it', title: 'nested it without id' }],
372
- },
373
- ],
374
- },
375
- },
376
- ],
377
- },
378
- ],
379
- messages: [],
380
- integrations: [],
381
- };
382
- expect(hasAllIds(model)).toBe(false);
383
- });
384
- it('should return true for client specs with all IDs', () => {
385
- const model = {
386
- variant: 'specs',
387
- narratives: [
388
- {
389
- name: 'Test Flow',
390
- id: 'FLOW-001',
391
- slices: [
392
- {
393
- name: 'Test slice',
394
- id: 'SLICE-001',
395
- type: 'experience',
396
- client: {
397
- specs: [
398
- {
399
- type: 'describe',
400
- id: 'DESC-001',
401
- title: 'test describe',
402
- children: [
403
- { type: 'it', id: 'IT-001', title: 'first it' },
404
- {
405
- type: 'describe',
406
- id: 'DESC-002',
407
- title: 'nested describe',
408
- children: [{ type: 'it', id: 'IT-002', title: 'nested it' }],
409
- },
410
- ],
411
- },
412
- ],
413
- },
414
- },
415
- ],
416
- },
417
- ],
418
- messages: [],
419
- integrations: [],
420
- };
421
- expect(hasAllIds(model)).toBe(true);
422
- });
423
- });
424
- //# sourceMappingURL=hasAllIds.specs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hasAllIds.specs.js","sourceRoot":"","sources":["../../../src/id/hasAllIds.specs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEhD,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACzB,MAAM,qBAAqB,GAAG,GAAU,EAAE,CAAC,CAAC;QAC1C,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE;YACV;gBACE,IAAI,EAAE,uBAAuB;gBAC7B,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,uBAAuB;wBAC7B,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;wBACrB,MAAM,EAAE;4BACN,WAAW,EAAE,aAAa;4BAC1B,KAAK,EAAE;gCACL;oCACE,IAAI,EAAE,SAAS;oCACf,OAAO,EAAE,YAAY;oCACrB,KAAK,EAAE;wCACL;4CACE,IAAI,EAAE,sBAAsB;4CAC5B,QAAQ,EAAE,EAAE;yCACb;qCACF;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;SACF;QACD,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,EAAE;KACjB,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,GAAU,EAAE,CAAC,CAAC;QACvC,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE;YACV;gBACE,IAAI,EAAE,oBAAoB;gBAC1B,EAAE,EAAE,UAAU;gBACd,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,oBAAoB;wBAC1B,EAAE,EAAE,WAAW;wBACf,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;wBACrB,MAAM,EAAE;4BACN,WAAW,EAAE,aAAa;4BAC1B,KAAK,EAAE;gCACL;oCACE,EAAE,EAAE,UAAU;oCACd,IAAI,EAAE,SAAS;oCACf,OAAO,EAAE,YAAY;oCACrB,KAAK,EAAE;wCACL;4CACE,EAAE,EAAE,UAAU;4CACd,IAAI,EAAE,mBAAmB;4CACzB,QAAQ,EAAE,EAAE;yCACb;qCACF;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;SACF;QACD,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,EAAE;KACjB,CAAC,CAAC;IAEH,MAAM,sBAAsB,GAAG,GAAU,EAAE,CAAC,CAAC;QAC3C,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE;YACV;gBACE,IAAI,EAAE,yBAAyB;gBAC/B,EAAE,EAAE,UAAU;gBACd,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,oBAAoB;wBAC1B,EAAE,EAAE,WAAW;wBACf,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;wBACrB,MAAM,EAAE;4BACN,WAAW,EAAE,aAAa;4BAC1B,KAAK,EAAE;gCACL;oCACE,EAAE,EAAE,UAAU;oCACd,IAAI,EAAE,SAAS;oCACf,OAAO,EAAE,YAAY;oCACrB,KAAK,EAAE;wCACL;4CACE,EAAE,EAAE,UAAU;4CACd,IAAI,EAAE,mBAAmB;4CACzB,QAAQ,EAAE;gDACR;oDACE,EAAE,EAAE,aAAa;oDACjB,IAAI,EAAE,cAAc;oDACpB,KAAK,EAAE;wDACL;4DACE,EAAE,EAAE,UAAU;4DACd,OAAO,EAAE,OAAO;4DAChB,IAAI,EAAE,WAAW;4DACjB,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;yDAC7B;wDACD;4DACE,EAAE,EAAE,UAAU;4DACd,OAAO,EAAE,MAAM;4DACf,IAAI,EAAE,aAAa;yDACpB;wDACD;4DACE,EAAE,EAAE,UAAU;4DACd,OAAO,EAAE,MAAM;4DACf,IAAI,EAAE,WAAW;yDAClB;qDACF;iDACF;6CACF;yCACF;qCACF;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;SACF;QACD,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,EAAE;KACjB,CAAC,CAAC;IAEH,MAAM,wBAAwB,GAAG,CAAC,aAAsB,EAAE,kBAA2B,EAAS,EAAE,CAAC,CAAC;QAChG,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE;YACV;gBACE,IAAI,EAAE,aAAa;gBACnB,EAAE,EAAE,WAAW;gBACf,UAAU,EAAE,gCAAgC;gBAC5C,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,wBAAwB;wBAC9B,EAAE,EAAE,QAAQ;wBACZ,IAAI,EAAE,YAAY;wBAClB,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAAC,EAAE;qBACrF;iBACF;aACF;YACD;gBACE,IAAI,EAAE,eAAe;gBACrB,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;gBAC3C,UAAU,EAAE,gCAAgC;gBAC5C,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,oBAAoB;wBAC1B,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;wBAC7C,IAAI,EAAE,YAAY;wBAClB,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAAC,EAAE;qBACrF;iBACF;aACF;YACD;gBACE,IAAI,EAAE,oBAAoB;gBAC1B,EAAE,EAAE,WAAW;gBACf,UAAU,EAAE,gCAAgC;gBAC5C,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,sBAAsB;wBAC5B,EAAE,EAAE,QAAQ;wBACZ,IAAI,EAAE,YAAY;wBAClB,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC,EAAE;qBACzF;iBACF;aACF;SACF;QACD,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,EAAE;KACjB,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,KAAK,GAAG,qBAAqB,EAAE,CAAC;QACtC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,KAAK,GAAG,qBAAqB,EAAE,CAAC;QACtC,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;QACnC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;QACnC,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QAC7C,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;QAC9C,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;QACnC,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACpD,IAAI,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAChG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;QACzC,CAAC;QACD,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0EAA0E,EAAE,GAAG,EAAE;QAClF,MAAM,KAAK,GAAG,wBAAwB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACnD,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wFAAwF,EAAE,GAAG,EAAE;QAChG,MAAM,KAAK,GAAG,wBAAwB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACpD,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yFAAyF,EAAE,GAAG,EAAE;QACjG,MAAM,KAAK,GAAG,wBAAwB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACpD,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,KAAK,GAAG,sBAAsB,EAAE,CAAC;QACvC,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACpD,IAAI,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAChG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;QAChC,CAAC;QACD,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,KAAK,GAAG,sBAAsB,EAAE,CAAC;QACvC,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACpD,IAAI,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAChG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;QACrD,CAAC;QACD,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,KAAK,GAAG,sBAAsB,EAAE,CAAC;QACvC,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACpD,IAAI,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAChG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;QAC9D,CAAC;QACD,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,KAAK,GAAU;YACnB,OAAO,EAAE,OAAO;YAChB,UAAU,EAAE;gBACV;oBACE,IAAI,EAAE,WAAW;oBACjB,EAAE,EAAE,UAAU;oBACd,MAAM,EAAE;wBACN;4BACE,IAAI,EAAE,SAAS;4BACf,IAAI,EAAE,YAAY;4BAClB,EAAE,EAAE,WAAW;4BACf,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;4BACrB,MAAM,EAAE;gCACN,WAAW,EAAE,aAAa;gCAC1B,KAAK,EAAE;oCACL;wCACE,EAAE,EAAE,UAAU;wCACd,IAAI,EAAE,SAAS;wCACf,OAAO,EAAE,YAAY;wCACrB,KAAK,EAAE;4CACL;gDACE,EAAE,EAAE,UAAU;gDACd,IAAI,EAAE,WAAW;gDACjB,QAAQ,EAAE;oDACR;wDACE,EAAE,EAAE,aAAa;wDACjB,IAAI,EAAE,eAAe;wDACrB,KAAK,EAAE;4DACL;gEACE,EAAE,EAAE,UAAU;gEACd,OAAO,EAAE,OAAO;gEAChB,IAAI,EAAE,WAAW;6DAClB;4DACD;gEACE,OAAO,EAAE,MAAM;gEACf,KAAK,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,eAAe,EAAE;6DAC7D;yDACF;qDACF;iDACF;6CACF;yCACF;qCACF;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;YACD,QAAQ,EAAE,EAAE;YACZ,YAAY,EAAE,EAAE;SACjB,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAChE,MAAM,KAAK,GAAU;YACnB,OAAO,EAAE,OAAO;YAChB,UAAU,EAAE;gBACV;oBACE,IAAI,EAAE,WAAW;oBACjB,EAAE,EAAE,UAAU;oBACd,MAAM,EAAE;wBACN;4BACE,IAAI,EAAE,YAAY;4BAClB,EAAE,EAAE,WAAW;4BACf,IAAI,EAAE,YAAY;4BAClB,MAAM,EAAE;gCACN,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;6BAClD;yBACF;qBACF;iBACF;aACF;YACD,QAAQ,EAAE,EAAE;YACZ,YAAY,EAAE,EAAE;SACjB,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACtE,MAAM,KAAK,GAAU;YACnB,OAAO,EAAE,OAAO;YAChB,UAAU,EAAE;gBACV;oBACE,IAAI,EAAE,WAAW;oBACjB,EAAE,EAAE,UAAU;oBACd,MAAM,EAAE;wBACN;4BACE,IAAI,EAAE,YAAY;4BAClB,EAAE,EAAE,WAAW;4BACf,IAAI,EAAE,YAAY;4BAClB,MAAM,EAAE;gCACN,KAAK,EAAE;oCACL;wCACE,IAAI,EAAE,UAAU;wCAChB,KAAK,EAAE,0BAA0B;wCACjC,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;qCACrE;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;YACD,QAAQ,EAAE,EAAE;YACZ,YAAY,EAAE,EAAE;SACjB,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACvE,MAAM,KAAK,GAAU;YACnB,OAAO,EAAE,OAAO;YAChB,UAAU,EAAE;gBACV;oBACE,IAAI,EAAE,WAAW;oBACjB,EAAE,EAAE,UAAU;oBACd,MAAM,EAAE;wBACN;4BACE,IAAI,EAAE,YAAY;4BAClB,EAAE,EAAE,WAAW;4BACf,IAAI,EAAE,YAAY;4BAClB,MAAM,EAAE;gCACN,KAAK,EAAE;oCACL;wCACE,IAAI,EAAE,UAAU;wCAChB,EAAE,EAAE,UAAU;wCACd,KAAK,EAAE,uBAAuB;wCAC9B,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;qCAC1D;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;YACD,QAAQ,EAAE,EAAE;YACZ,YAAY,EAAE,EAAE;SACjB,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,KAAK,GAAU;YACnB,OAAO,EAAE,OAAO;YAChB,UAAU,EAAE;gBACV;oBACE,IAAI,EAAE,WAAW;oBACjB,EAAE,EAAE,UAAU;oBACd,MAAM,EAAE;wBACN;4BACE,IAAI,EAAE,YAAY;4BAClB,EAAE,EAAE,WAAW;4BACf,IAAI,EAAE,YAAY;4BAClB,MAAM,EAAE;gCACN,KAAK,EAAE;oCACL;wCACE,IAAI,EAAE,UAAU;wCAChB,EAAE,EAAE,UAAU;wCACd,KAAK,EAAE,eAAe;wCACtB,QAAQ,EAAE;4CACR,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE;4CAC/C;gDACE,IAAI,EAAE,UAAU;gDAChB,EAAE,EAAE,UAAU;gDACd,KAAK,EAAE,iBAAiB;gDACxB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;6CAC7D;yCACF;qCACF;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;YACD,QAAQ,EAAE,EAAE;YACZ,YAAY,EAAE,EAAE;SACjB,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=model-to-narrative.specs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"model-to-narrative.specs.d.ts","sourceRoot":"","sources":["../../src/model-to-narrative.specs.ts"],"names":[],"mappings":""}