@auto-engineer/information-architect 0.12.0 → 0.12.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.
- package/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +9 -0
- package/dist/auto-ux-schema.json +4 -4
- package/dist/src/auto-ux-schema.json +4 -4
- package/dist/src/commands/generate-ia.d.ts.map +1 -1
- package/dist/src/commands/generate-ia.js +18 -1
- package/dist/src/commands/generate-ia.js.map +1 -1
- package/dist/src/ia-agent.d.ts.map +1 -1
- package/dist/src/ia-agent.js +4 -3
- package/dist/src/ia-agent.js.map +1 -1
- package/dist/src/spec-utils.d.ts +3 -0
- package/dist/src/spec-utils.d.ts.map +1 -0
- package/dist/src/spec-utils.js +32 -0
- package/dist/src/spec-utils.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -5
- package/src/auto-ux-schema.json +4 -4
- package/src/commands/generate-ia.ts +22 -1
- package/src/ia-agent.ts +4 -3
- package/src/spec-utils.ts +39 -0
- package/.turbo/turbo-format.log +0 -4
- package/.turbo/turbo-lint.log +0 -4
- package/.turbo/turbo-test.log +0 -13
- package/.turbo/turbo-type-check.log +0 -4
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
> @auto-engineer/information-architect@0.
|
|
2
|
+
> @auto-engineer/information-architect@0.12.1 build /home/runner/work/auto-engineer/auto-engineer/packages/information-architect
|
|
3
3
|
> tsc && tsx ../../scripts/fix-esm-imports.ts && cp src/auto-ux-schema.json dist/
|
|
4
4
|
|
|
5
5
|
Fixed ESM imports in dist/
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# @auto-engineer/information-architect
|
|
2
2
|
|
|
3
|
+
## 0.12.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies []:
|
|
8
|
+
- @auto-engineer/narrative@0.12.1
|
|
9
|
+
- @auto-engineer/ai-gateway@0.12.1
|
|
10
|
+
- @auto-engineer/message-bus@0.12.1
|
|
11
|
+
|
|
3
12
|
## 0.12.0
|
|
4
13
|
|
|
5
14
|
### Minor Changes
|
package/dist/auto-ux-schema.json
CHANGED
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"items": {
|
|
30
30
|
"type": "string"
|
|
31
31
|
},
|
|
32
|
-
"description": "Optional.
|
|
32
|
+
"description": "Optional. Array of behavioral test specifications. Uses ' → ' to show nested context."
|
|
33
33
|
}
|
|
34
34
|
},
|
|
35
35
|
"required": ["description"]
|
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
"items": {
|
|
73
73
|
"type": "string"
|
|
74
74
|
},
|
|
75
|
-
"description": "Optional.
|
|
75
|
+
"description": "Optional. Array of behavioral test specifications. Uses ' → ' to show nested context."
|
|
76
76
|
}
|
|
77
77
|
},
|
|
78
78
|
"required": ["description", "composition"]
|
|
@@ -154,7 +154,7 @@
|
|
|
154
154
|
"items": {
|
|
155
155
|
"type": "string"
|
|
156
156
|
},
|
|
157
|
-
"description": "Optional.
|
|
157
|
+
"description": "Optional. Array of behavioral test specifications. Uses ' → ' to show nested context."
|
|
158
158
|
}
|
|
159
159
|
},
|
|
160
160
|
"required": ["description", "composition"]
|
|
@@ -254,7 +254,7 @@
|
|
|
254
254
|
"items": {
|
|
255
255
|
"type": "string"
|
|
256
256
|
},
|
|
257
|
-
"description": "Optional.
|
|
257
|
+
"description": "Optional. Array of behavioral test specifications. Uses ' → ' to show nested context."
|
|
258
258
|
}
|
|
259
259
|
},
|
|
260
260
|
"required": ["route", "description", "layout"]
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"items": {
|
|
30
30
|
"type": "string"
|
|
31
31
|
},
|
|
32
|
-
"description": "Optional.
|
|
32
|
+
"description": "Optional. Array of behavioral test specifications. Uses ' → ' to show nested context."
|
|
33
33
|
}
|
|
34
34
|
},
|
|
35
35
|
"required": ["description"]
|
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
"items": {
|
|
73
73
|
"type": "string"
|
|
74
74
|
},
|
|
75
|
-
"description": "Optional.
|
|
75
|
+
"description": "Optional. Array of behavioral test specifications. Uses ' → ' to show nested context."
|
|
76
76
|
}
|
|
77
77
|
},
|
|
78
78
|
"required": ["description", "composition"]
|
|
@@ -154,7 +154,7 @@
|
|
|
154
154
|
"items": {
|
|
155
155
|
"type": "string"
|
|
156
156
|
},
|
|
157
|
-
"description": "Optional.
|
|
157
|
+
"description": "Optional. Array of behavioral test specifications. Uses ' → ' to show nested context."
|
|
158
158
|
}
|
|
159
159
|
},
|
|
160
160
|
"required": ["description", "composition"]
|
|
@@ -254,7 +254,7 @@
|
|
|
254
254
|
"items": {
|
|
255
255
|
"type": "string"
|
|
256
256
|
},
|
|
257
|
-
"description": "Optional.
|
|
257
|
+
"description": "Optional. Array of behavioral test specifications. Uses ' → ' to show nested context."
|
|
258
258
|
}
|
|
259
259
|
},
|
|
260
260
|
"required": ["route", "description", "layout"]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-ia.d.ts","sourceRoot":"","sources":["../../../src/commands/generate-ia.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,KAAK,EAAwB,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"generate-ia.d.ts","sourceRoot":"","sources":["../../../src/commands/generate-ia.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,KAAK,EAAwB,MAAM,4BAA4B,CAAC;AAmB5F,MAAM,MAAM,iBAAiB,GAAG,OAAO,CACrC,YAAY,EACZ;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CACF,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAClC,aAAa,EACb;IACE,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,CACF,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,KAAK,CACzC,oBAAoB,EACpB;IACE,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB,CACF,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,gBAAgB,GAAG,uBAAuB,CAAC;AAE1E,eAAO,MAAM,cAAc;;;mBAvBZ,MAAM;mBACN,MAAM;;;;;GAoDnB,CAAC;AAsKH,eAAe,cAAc,CAAC"}
|
|
@@ -4,6 +4,7 @@ import * as path from 'path';
|
|
|
4
4
|
import { fileURLToPath } from 'url';
|
|
5
5
|
import { processFlowsWithAI } from '../index.js';
|
|
6
6
|
import createDebug from 'debug';
|
|
7
|
+
import { flattenClientSpecs } from '../spec-utils.js';
|
|
7
8
|
const debug = createDebug('auto:information-architect:generate-command');
|
|
8
9
|
const debugSchema = createDebug('auto:information-architect:generate-command:schema');
|
|
9
10
|
const debugFiles = createDebug('auto:information-architect:generate-command:files');
|
|
@@ -72,6 +73,19 @@ async function getModelFromContext(modelPath) {
|
|
|
72
73
|
const modelContent = await fs.readFile(modelPath, 'utf-8');
|
|
73
74
|
return JSON.parse(modelContent);
|
|
74
75
|
}
|
|
76
|
+
function preprocessModelForAI(model) {
|
|
77
|
+
const processedModel = JSON.parse(JSON.stringify(model));
|
|
78
|
+
for (const narrative of processedModel.narratives) {
|
|
79
|
+
for (const slice of narrative.slices) {
|
|
80
|
+
if ('client' in slice && slice.client !== undefined && slice.client.specs !== undefined) {
|
|
81
|
+
const flattenedSpecs = flattenClientSpecs(slice.client.specs);
|
|
82
|
+
slice.client.specs = flattenedSpecs;
|
|
83
|
+
debug('Flattened %d client specs for slice: %s', flattenedSpecs.length, slice.name);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
return processedModel;
|
|
88
|
+
}
|
|
75
89
|
async function getUniqueSchemaPath(outputDir) {
|
|
76
90
|
debugFiles('Finding schema path in: %s', outputDir);
|
|
77
91
|
let existingSchema;
|
|
@@ -106,6 +120,9 @@ async function handleGenerateIACommandInternal(command) {
|
|
|
106
120
|
debugSchema('UX schema loaded successfully');
|
|
107
121
|
const model = await getModelFromContext(modelPath);
|
|
108
122
|
debugFiles('Reading %d flow files', model.narratives.length);
|
|
123
|
+
// Preprocess model to flatten client specs for AI
|
|
124
|
+
const processedModel = preprocessModelForAI(model);
|
|
125
|
+
debug('Model preprocessed with flattened client specs');
|
|
109
126
|
// Get unique schema path and existing schema
|
|
110
127
|
const { filePath, existingSchema } = await getUniqueSchemaPath(outputDir);
|
|
111
128
|
// Get atoms from markdown
|
|
@@ -117,7 +134,7 @@ async function handleGenerateIACommandInternal(command) {
|
|
|
117
134
|
debug('Processing flows with AI...');
|
|
118
135
|
debug(' Existing schema: %s', existingSchema ? 'yes' : 'no');
|
|
119
136
|
debug(' Atom count: %d', atoms.length);
|
|
120
|
-
const iaSchema = await processFlowsWithAI(
|
|
137
|
+
const iaSchema = await processFlowsWithAI(processedModel, uxSchema, existingSchema, atoms);
|
|
121
138
|
debug('AI processing complete');
|
|
122
139
|
// Write the schema to file
|
|
123
140
|
debugResult('Writing IA schema to: %s', filePath);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-ia.js","sourceRoot":"","sources":["../../../src/commands/generate-ia.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C,OAAO,WAAW,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"generate-ia.js","sourceRoot":"","sources":["../../../src/commands/generate-ia.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ia-agent.d.ts","sourceRoot":"","sources":["../../src/ia-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAC/D,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAetD,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,CAAa;gBAElB,QAAQ,CAAC,EAAE,UAAU;IAI3B,oBAAoB,CACxB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,cAAc,CAAC,EAAE,MAAM,EACvB,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAAE,EAAE,GAClE,OAAO,CAAC,aAAa,CAAC;IAsBzB,OAAO,CAAC,eAAe;
|
|
1
|
+
{"version":3,"file":"ia-agent.d.ts","sourceRoot":"","sources":["../../src/ia-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAC/D,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAetD,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,CAAa;gBAElB,QAAQ,CAAC,EAAE,UAAU;IAI3B,oBAAoB,CACxB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,cAAc,CAAC,EAAE,MAAM,EACvB,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAAE,EAAE,GAClE,OAAO,CAAC,aAAa,CAAC;IAsBzB,OAAO,CAAC,eAAe;CAgGxB;AAED,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,cAAc,CAAC,EAAE,MAAM,EACvB,KAAK,CAAC,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAE,EAAE,GAClE,OAAO,CAAC,aAAa,CAAC,CAGxB"}
|
package/dist/src/ia-agent.js
CHANGED
|
@@ -75,9 +75,10 @@ Instructions:
|
|
|
75
75
|
- template (what wrapper does the page use)
|
|
76
76
|
- navigation (array of navigation actions, e.g., { "on": "Click Listing Card", "to": "ListingDetailPage" })
|
|
77
77
|
- data_requirements (array, as above, for page-level data fetching)
|
|
78
|
-
- For each component or page, if there are any specs defined in the model's flow slices
|
|
79
|
-
-
|
|
80
|
-
-
|
|
78
|
+
- For each component or page, if there are any specs defined in the model's flow slices, look at slice.client.specs which is an array of strings.
|
|
79
|
+
- These specs describe behavioral requirements with nested context preserved using ' → ' separator (e.g., "Form → Validation → shows error").
|
|
80
|
+
- Assign these specs directly to the 'specs' field for the corresponding component/page.
|
|
81
|
+
- If no client.specs exist for a slice, omit the 'specs' field.
|
|
81
82
|
|
|
82
83
|
Use the following structure as a template for your response:
|
|
83
84
|
----
|
package/dist/src/ia-agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ia-agent.js","sourceRoot":"","sources":["../../src/ia-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAc,MAAM,2BAA2B,CAAC;AAI3E,SAAS,uBAAuB,CAAC,IAAY;IAC3C,OAAO,IAAI,CAAC,OAAO,CAAC,iCAAiC,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;AACtE,CAAC;AAED,SAAS,YAAY,CAAC,GAAW;IAC/B,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,OAAO,yBAAyB;IAGpC,YAAY,QAAqB;QAC/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,KAAY,EACZ,QAAkB,EAClB,cAAuB,EACvB,KAAmE;QAEnE,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;QAC5E,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE;gBAChD,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,WAAW,EAAE,GAAG;gBAChB,SAAS,EAAE,IAAI,GAAG,CAAC;aACpB,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC/C,CAAC;YACD,MAAM,KAAK,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;YAChD,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,qCAAqC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YAC/E,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAkB,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;YACtD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,eAAe,CACrB,KAAY,EACZ,QAAkB,EAClB,cAAuB,EACvB,KAAmE;QAEnE,OAAO;;;;;;GAMR,KAAK,CAAC,CAAC,CAAC,qPAAqP,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;;EAErS,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;;;EAG9B,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;;EAEjC,cAAc,CAAC,CAAC,CAAC,kNAAkN,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE
|
|
1
|
+
{"version":3,"file":"ia-agent.js","sourceRoot":"","sources":["../../src/ia-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAc,MAAM,2BAA2B,CAAC;AAI3E,SAAS,uBAAuB,CAAC,IAAY;IAC3C,OAAO,IAAI,CAAC,OAAO,CAAC,iCAAiC,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;AACtE,CAAC;AAED,SAAS,YAAY,CAAC,GAAW;IAC/B,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,OAAO,yBAAyB;IAGpC,YAAY,QAAqB;QAC/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,KAAY,EACZ,QAAkB,EAClB,cAAuB,EACvB,KAAmE;QAEnE,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;QAC5E,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE;gBAChD,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,WAAW,EAAE,GAAG;gBAChB,SAAS,EAAE,IAAI,GAAG,CAAC;aACpB,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC/C,CAAC;YACD,MAAM,KAAK,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;YAChD,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,qCAAqC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YAC/E,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAkB,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;YACtD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,eAAe,CACrB,KAAY,EACZ,QAAkB,EAClB,cAAuB,EACvB,KAAmE;QAEnE,OAAO;;;;;;GAMR,KAAK,CAAC,CAAC,CAAC,qPAAqP,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;;EAErS,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;;;EAG9B,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;;EAEjC,cAAc,CAAC,CAAC,CAAC,kNAAkN,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2EpR,CAAC;IACA,CAAC;CACF;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAAY,EACZ,QAAkB,EAClB,cAAuB,EACvB,KAAmE;IAEnE,MAAM,KAAK,GAAG,IAAI,yBAAyB,EAAE,CAAC;IAC9C,OAAO,KAAK,CAAC,oBAAoB,CAAC,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;AAC5E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spec-utils.d.ts","sourceRoot":"","sources":["../../src/spec-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAkB/D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,SAAS,EAAE,SAAS,GAAE,MAAc,GAAG,MAAM,EAAE,CAoB3G"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
function buildFullPath(path, title, separator) {
|
|
2
|
+
return path.length > 0 ? path.join(separator) + separator + title : title;
|
|
3
|
+
}
|
|
4
|
+
function shouldIncludeTitleInPath(title) {
|
|
5
|
+
return title !== undefined && title !== '' && title.trim() !== '';
|
|
6
|
+
}
|
|
7
|
+
function createNewPath(path, title) {
|
|
8
|
+
return shouldIncludeTitleInPath(title) && title !== undefined ? [...path, title] : path;
|
|
9
|
+
}
|
|
10
|
+
function hasChildren(node) {
|
|
11
|
+
return node.type === 'describe' && node.children !== undefined && node.children.length > 0;
|
|
12
|
+
}
|
|
13
|
+
export function flattenClientSpecs(nodes, separator = ' → ') {
|
|
14
|
+
if (!nodes || nodes.length === 0) {
|
|
15
|
+
return [];
|
|
16
|
+
}
|
|
17
|
+
const results = [];
|
|
18
|
+
function traverse(nodes, path = []) {
|
|
19
|
+
for (const node of nodes) {
|
|
20
|
+
if (node.type === 'it') {
|
|
21
|
+
results.push(buildFullPath(path, node.title, separator));
|
|
22
|
+
}
|
|
23
|
+
else if (hasChildren(node) && node.children !== undefined) {
|
|
24
|
+
const newPath = createNewPath(path, node.title);
|
|
25
|
+
traverse(node.children, newPath);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
traverse(nodes);
|
|
30
|
+
return results;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=spec-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spec-utils.js","sourceRoot":"","sources":["../../src/spec-utils.ts"],"names":[],"mappings":"AAEA,SAAS,aAAa,CAAC,IAAc,EAAE,KAAa,EAAE,SAAiB;IACrE,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;AAC5E,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAyB;IACzD,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;AACpE,CAAC;AAED,SAAS,aAAa,CAAC,IAAc,EAAE,KAAyB;IAC9D,OAAO,wBAAwB,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1F,CAAC;AAED,SAAS,WAAW,CAAC,IAAoB;IACvC,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;AAC7F,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAmC,EAAE,YAAoB,KAAK;IAC/F,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,SAAS,QAAQ,CAAC,KAAuB,EAAE,OAAiB,EAAE;QAC5D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBACvB,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;YAC3D,CAAC;iBAAM,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC5D,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBAChD,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChB,OAAO,OAAO,CAAC;AACjB,CAAC"}
|