@sun-asterisk/sungen 3.2.5 → 3.2.7
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/dist/cli/commands/delivery.d.ts.map +1 -1
- package/dist/cli/commands/delivery.js +7 -46
- package/dist/cli/commands/delivery.js.map +1 -1
- package/dist/dashboard/snapshot-builder.d.ts.map +1 -1
- package/dist/dashboard/snapshot-builder.js +28 -6
- package/dist/dashboard/snapshot-builder.js.map +1 -1
- package/dist/dashboard/templates/index.html +20 -20
- package/dist/dashboard/types.d.ts +18 -0
- package/dist/dashboard/types.d.ts.map +1 -1
- package/dist/exporters/api-catalog-loader.d.ts +18 -0
- package/dist/exporters/api-catalog-loader.d.ts.map +1 -0
- package/dist/exporters/api-catalog-loader.js +77 -0
- package/dist/exporters/api-catalog-loader.js.map +1 -0
- package/dist/exporters/csv-exporter.d.ts.map +1 -1
- package/dist/exporters/csv-exporter.js +20 -26
- package/dist/exporters/csv-exporter.js.map +1 -1
- package/dist/exporters/feature-parser.d.ts +6 -0
- package/dist/exporters/feature-parser.d.ts.map +1 -1
- package/dist/exporters/feature-parser.js +9 -3
- package/dist/exporters/feature-parser.js.map +1 -1
- package/dist/exporters/json-exporter.d.ts +10 -1
- package/dist/exporters/json-exporter.d.ts.map +1 -1
- package/dist/exporters/json-exporter.js +92 -50
- package/dist/exporters/json-exporter.js.map +1 -1
- package/dist/exporters/playwright-report-parser.d.ts +14 -0
- package/dist/exporters/playwright-report-parser.d.ts.map +1 -1
- package/dist/exporters/playwright-report-parser.js +30 -0
- package/dist/exporters/playwright-report-parser.js.map +1 -1
- package/dist/exporters/result-variants.d.ts +29 -0
- package/dist/exporters/result-variants.d.ts.map +1 -0
- package/dist/exporters/result-variants.js +33 -0
- package/dist/exporters/result-variants.js.map +1 -0
- package/dist/exporters/xlsx-exporter.d.ts +18 -17
- package/dist/exporters/xlsx-exporter.d.ts.map +1 -1
- package/dist/exporters/xlsx-exporter.js +25 -563
- package/dist/exporters/xlsx-exporter.js.map +1 -1
- package/dist/exporters/xlsx-report-builder.d.ts +196 -0
- package/dist/exporters/xlsx-report-builder.d.ts.map +1 -0
- package/dist/exporters/xlsx-report-builder.js +653 -0
- package/dist/exporters/xlsx-report-builder.js.map +1 -0
- package/dist/generators/test-generator/adapters/appium/templates/scenario.hbs +1 -1
- package/dist/generators/test-generator/adapters/playwright/templates/scenario.hbs +6 -6
- package/dist/generators/test-generator/adapters/playwright/templates/steps/actions/expand-action.hbs +30 -8
- package/dist/generators/test-generator/adapters/playwright/templates/steps/assertions/selected-assertion.hbs +16 -1
- package/dist/generators/test-generator/patterns/expect-patterns.d.ts.map +1 -1
- package/dist/generators/test-generator/patterns/expect-patterns.js +23 -0
- package/dist/generators/test-generator/patterns/expect-patterns.js.map +1 -1
- package/dist/generators/test-generator/utils/selector-resolver.d.ts +7 -0
- package/dist/generators/test-generator/utils/selector-resolver.d.ts.map +1 -1
- package/dist/generators/test-generator/utils/selector-resolver.js +13 -2
- package/dist/generators/test-generator/utils/selector-resolver.js.map +1 -1
- package/dist/orchestrator/project-initializer.d.ts +9 -0
- package/dist/orchestrator/project-initializer.d.ts.map +1 -1
- package/dist/orchestrator/project-initializer.js +66 -9
- package/dist/orchestrator/project-initializer.js.map +1 -1
- package/dist/orchestrator/templates/ai-src/commands/add-api.md +76 -0
- package/dist/orchestrator/templates/ai-src/commands/create-test.md +2 -2
- package/dist/orchestrator/templates/ai-src/config/codex.md +3 -2
- package/dist/orchestrator/templates/ai-src/skills/sungen-api-coverage-model/SKILL.md +73 -0
- package/dist/orchestrator/templates/ai-src/skills/sungen-api-design/SKILL.md +42 -8
- package/dist/orchestrator/templates/ai-src/skills/sungen-gherkin-syntax/SKILL.md +21 -0
- package/dist/orchestrator/templates/ai-src/skills/sungen-selector-fix/SKILL.md +2 -0
- package/dist/orchestrator/templates/ai-src/skills/sungen-selector-keys/SKILL.md +33 -0
- package/dist/orchestrator/templates/ai-src/skills/sungen-tc-review/SKILL.md +6 -0
- package/dist/orchestrator/templates/specs-api.d.ts +26 -0
- package/dist/orchestrator/templates/specs-api.d.ts.map +1 -1
- package/dist/orchestrator/templates/specs-api.js +131 -3
- package/dist/orchestrator/templates/specs-api.js.map +1 -1
- package/dist/orchestrator/templates/specs-api.ts +118 -5
- package/dist/orchestrator/templates/specs-test-data.ts +20 -1
- package/package.json +3 -3
- package/src/cli/commands/delivery.ts +8 -42
- package/src/dashboard/snapshot-builder.ts +31 -7
- package/src/dashboard/templates/index.html +20 -20
- package/src/dashboard/types.ts +19 -0
- package/src/exporters/api-catalog-loader.ts +44 -0
- package/src/exporters/csv-exporter.ts +19 -24
- package/src/exporters/feature-parser.ts +8 -2
- package/src/exporters/json-exporter.ts +102 -51
- package/src/exporters/playwright-report-parser.ts +27 -0
- package/src/exporters/result-variants.ts +47 -0
- package/src/exporters/xlsx-exporter.ts +34 -623
- package/src/exporters/xlsx-report-builder.ts +806 -0
- package/src/generators/test-generator/adapters/appium/templates/scenario.hbs +1 -1
- package/src/generators/test-generator/adapters/playwright/templates/scenario.hbs +6 -6
- package/src/generators/test-generator/adapters/playwright/templates/steps/actions/expand-action.hbs +30 -8
- package/src/generators/test-generator/adapters/playwright/templates/steps/assertions/selected-assertion.hbs +16 -1
- package/src/generators/test-generator/patterns/expect-patterns.ts +23 -0
- package/src/generators/test-generator/utils/selector-resolver.ts +30 -2
- package/src/orchestrator/project-initializer.ts +67 -9
- package/src/orchestrator/templates/ai-src/commands/add-api.md +76 -0
- package/src/orchestrator/templates/ai-src/commands/create-test.md +2 -2
- package/src/orchestrator/templates/ai-src/config/codex.md +3 -2
- package/src/orchestrator/templates/ai-src/skills/sungen-api-coverage-model/SKILL.md +73 -0
- package/src/orchestrator/templates/ai-src/skills/sungen-api-design/SKILL.md +42 -8
- package/src/orchestrator/templates/ai-src/skills/sungen-gherkin-syntax/SKILL.md +21 -0
- package/src/orchestrator/templates/ai-src/skills/sungen-selector-fix/SKILL.md +2 -0
- package/src/orchestrator/templates/ai-src/skills/sungen-selector-keys/SKILL.md +33 -0
- package/src/orchestrator/templates/ai-src/skills/sungen-tc-review/SKILL.md +6 -0
- package/src/orchestrator/templates/specs-api.ts +118 -5
- package/src/orchestrator/templates/specs-test-data.ts +20 -1
- package/dist/cli/types.d.ts +0 -9
- package/dist/cli/types.d.ts.map +0 -1
- package/dist/cli/types.js +0 -7
- package/dist/cli/types.js.map +0 -1
- package/dist/generators/gherkin-parser/selector-extractor.d.ts +0 -37
- package/dist/generators/gherkin-parser/selector-extractor.d.ts.map +0 -1
- package/dist/generators/gherkin-parser/selector-extractor.js +0 -108
- package/dist/generators/gherkin-parser/selector-extractor.js.map +0 -1
- package/dist/generators/test-generator/types.d.ts +0 -25
- package/dist/generators/test-generator/types.d.ts.map +0 -1
- package/dist/generators/test-generator/types.js +0 -7
- package/dist/generators/test-generator/types.js.map +0 -1
- package/dist/generators/types.d.ts +0 -119
- package/dist/generators/types.d.ts.map +0 -1
- package/dist/generators/types.js +0 -48
- package/dist/generators/types.js.map +0 -1
- package/dist/orchestrator/figma/node-path-collapser.d.ts +0 -16
- package/dist/orchestrator/figma/node-path-collapser.d.ts.map +0 -1
- package/dist/orchestrator/figma/node-path-collapser.js +0 -37
- package/dist/orchestrator/figma/node-path-collapser.js.map +0 -1
- package/src/cli/types.ts +0 -9
- package/src/generators/gherkin-parser/selector-extractor.ts +0 -142
- package/src/generators/test-generator/types.ts +0 -26
- package/src/generators/types.ts +0 -227
- package/src/orchestrator/figma/node-path-collapser.ts +0 -38
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-exporter.js","sourceRoot":"","sources":["../../src/exporters/json-exporter.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;
|
|
1
|
+
{"version":3,"file":"json-exporter.js","sourceRoot":"","sources":["../../src/exporters/json-exporter.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,20 @@
|
|
|
2
2
|
* Parse Playwright results.json (JSON reporter output) to map test titles → execution status.
|
|
3
3
|
*/
|
|
4
4
|
import { PlaywrightResult } from './types';
|
|
5
|
+
/**
|
|
6
|
+
* Resolve the results.json file for a unit — shared by the delivery CLI and
|
|
7
|
+
* the dashboard snapshot builder so both surfaces resolve execution status
|
|
8
|
+
* from the SAME file (they drifted: the dashboard only looked for the
|
|
9
|
+
* per-feature file and showed every scenario Pending on projects whose
|
|
10
|
+
* playwright.config writes only the default global test-results/results.json).
|
|
11
|
+
*
|
|
12
|
+
* Candidate order (first existing wins):
|
|
13
|
+
* 1. <genDir>/<featureBaseName>-test-result.<SUNGEN_ENV>.json (env runs)
|
|
14
|
+
* 2. <genDir>/<featureBaseName>-test-result.json (per-feature reporter)
|
|
15
|
+
* 3. <cwd>/test-results/results.<SUNGEN_ENV>.json
|
|
16
|
+
* 4. <cwd>/test-results/results.json (playwright default)
|
|
17
|
+
*/
|
|
18
|
+
export declare function resolveResultsPath(cwd: string, genDir: string, featureBaseName: string): string | null;
|
|
5
19
|
/**
|
|
6
20
|
* Load and parse results.json. Returns null if file missing or invalid.
|
|
7
21
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"playwright-report-parser.d.ts","sourceRoot":"","sources":["../../src/exporters/playwright-report-parser.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"playwright-report-parser.d.ts","sourceRoot":"","sources":["../../src/exporters/playwright-report-parser.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE3C;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAWtG;AAoDD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,IAAI,CA0C7F;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CASvE;AAwCD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,gBAAgB,CAAC,QAAQ,CAAC,GAAG,MAAM,CAc7E;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAUxE;AAQD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAM3F;AAED;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,SAAS,EAAE,gBAAgB,SAAK,GAAG,MAAM,CAyB9F"}
|
|
@@ -36,6 +36,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
36
36
|
};
|
|
37
37
|
})();
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.resolveResultsPath = resolveResultsPath;
|
|
39
40
|
exports.loadPlaywrightReport = loadPlaywrightReport;
|
|
40
41
|
exports.loadReportProjectName = loadReportProjectName;
|
|
41
42
|
exports.statusToTestResult = statusToTestResult;
|
|
@@ -43,6 +44,35 @@ exports.formatExecutedDate = formatExecutedDate;
|
|
|
43
44
|
exports.parseExpectedReceived = parseExpectedReceived;
|
|
44
45
|
exports.formatNote = formatNote;
|
|
45
46
|
const fs = __importStar(require("fs"));
|
|
47
|
+
const path = __importStar(require("path"));
|
|
48
|
+
/**
|
|
49
|
+
* Resolve the results.json file for a unit — shared by the delivery CLI and
|
|
50
|
+
* the dashboard snapshot builder so both surfaces resolve execution status
|
|
51
|
+
* from the SAME file (they drifted: the dashboard only looked for the
|
|
52
|
+
* per-feature file and showed every scenario Pending on projects whose
|
|
53
|
+
* playwright.config writes only the default global test-results/results.json).
|
|
54
|
+
*
|
|
55
|
+
* Candidate order (first existing wins):
|
|
56
|
+
* 1. <genDir>/<featureBaseName>-test-result.<SUNGEN_ENV>.json (env runs)
|
|
57
|
+
* 2. <genDir>/<featureBaseName>-test-result.json (per-feature reporter)
|
|
58
|
+
* 3. <cwd>/test-results/results.<SUNGEN_ENV>.json
|
|
59
|
+
* 4. <cwd>/test-results/results.json (playwright default)
|
|
60
|
+
*/
|
|
61
|
+
function resolveResultsPath(cwd, genDir, featureBaseName) {
|
|
62
|
+
const env = process.env.SUNGEN_ENV;
|
|
63
|
+
const candidates = [];
|
|
64
|
+
if (env)
|
|
65
|
+
candidates.push(path.join(genDir, `${featureBaseName}-test-result.${env}.json`));
|
|
66
|
+
candidates.push(path.join(genDir, `${featureBaseName}-test-result.json`));
|
|
67
|
+
if (env)
|
|
68
|
+
candidates.push(path.join(cwd, 'test-results', `results.${env}.json`));
|
|
69
|
+
candidates.push(path.join(cwd, 'test-results', 'results.json'));
|
|
70
|
+
for (const c of candidates) {
|
|
71
|
+
if (fs.existsSync(c))
|
|
72
|
+
return c;
|
|
73
|
+
}
|
|
74
|
+
return null;
|
|
75
|
+
}
|
|
46
76
|
/**
|
|
47
77
|
* Recursively walk suites and collect (full-title → spec) pairs.
|
|
48
78
|
* Title stack is joined with " > " to match our SpecTest.testTitle format.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"playwright-report-parser.js","sourceRoot":"","sources":["../../src/exporters/playwright-report-parser.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"playwright-report-parser.js","sourceRoot":"","sources":["../../src/exporters/playwright-report-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Result-variant resolution — the single seam the CSV (delivery) and JSON (dashboard) exporters
|
|
3
|
+
* share so they can never drift on @cases handling again (they did: the dashboard mislabelled
|
|
4
|
+
* every @cases row while delivery expanded them).
|
|
5
|
+
*/
|
|
6
|
+
import { MergedScenario } from './scenario-merger';
|
|
7
|
+
import { PlaywrightResult } from './types';
|
|
8
|
+
export interface ResultVariant {
|
|
9
|
+
/** Appended to the scenario display name: `''` for a plain scenario, ` — <label>` per executed
|
|
10
|
+
* @cases dataset row (so each row gets a distinct category1). */
|
|
11
|
+
nameSuffix: string;
|
|
12
|
+
result?: PlaywrightResult;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Resolve the execution-result variant(s) for a merged scenario.
|
|
16
|
+
*
|
|
17
|
+
* A `@cases:<dataset>` scenario compiles to one `test()` per dataset row, whose Playwright title is
|
|
18
|
+
* `<scenario> — <label>` — expand into one variant per EXECUTED row by matching that prefix (so an
|
|
19
|
+
* already-run row carries its real pass/fail). A plain scenario resolves its single result by the
|
|
20
|
+
* spec test title. With no results — or a @cases scenario with no matching result yet — a lone
|
|
21
|
+
* variant with no result is returned, so the caller marks it Pending / N/A.
|
|
22
|
+
*
|
|
23
|
+
* NOTE: this deliberately does NOT gate on `m.spec`. For @cases the compiled test title carries a
|
|
24
|
+
* `— ${__row.__label}` suffix, so `findMatchingSpecTest` (base-name match) often leaves `m.spec`
|
|
25
|
+
* null even though the rows ran; the marker match still finds their results. Callers must let a
|
|
26
|
+
* present `result` win over the "not compiled" (`!m.spec`) heuristic.
|
|
27
|
+
*/
|
|
28
|
+
export declare function resolveResultVariants(m: MergedScenario, results: Map<string, PlaywrightResult> | null): ResultVariant[];
|
|
29
|
+
//# sourceMappingURL=result-variants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"result-variants.d.ts","sourceRoot":"","sources":["../../src/exporters/result-variants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE3C,MAAM,WAAW,aAAa;IAC5B;sEACkE;IAClE,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,gBAAgB,CAAC;CAC3B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CACnC,CAAC,EAAE,cAAc,EACjB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,IAAI,GAC5C,aAAa,EAAE,CAcjB"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.resolveResultVariants = resolveResultVariants;
|
|
4
|
+
/**
|
|
5
|
+
* Resolve the execution-result variant(s) for a merged scenario.
|
|
6
|
+
*
|
|
7
|
+
* A `@cases:<dataset>` scenario compiles to one `test()` per dataset row, whose Playwright title is
|
|
8
|
+
* `<scenario> — <label>` — expand into one variant per EXECUTED row by matching that prefix (so an
|
|
9
|
+
* already-run row carries its real pass/fail). A plain scenario resolves its single result by the
|
|
10
|
+
* spec test title. With no results — or a @cases scenario with no matching result yet — a lone
|
|
11
|
+
* variant with no result is returned, so the caller marks it Pending / N/A.
|
|
12
|
+
*
|
|
13
|
+
* NOTE: this deliberately does NOT gate on `m.spec`. For @cases the compiled test title carries a
|
|
14
|
+
* `— ${__row.__label}` suffix, so `findMatchingSpecTest` (base-name match) often leaves `m.spec`
|
|
15
|
+
* null even though the rows ran; the marker match still finds their results. Callers must let a
|
|
16
|
+
* present `result` win over the "not compiled" (`!m.spec`) heuristic.
|
|
17
|
+
*/
|
|
18
|
+
function resolveResultVariants(m, results) {
|
|
19
|
+
const isCases = m.feature.tags.some((t) => t.startsWith('@cases:'));
|
|
20
|
+
if (isCases && results) {
|
|
21
|
+
const marker = `${m.feature.name} — `;
|
|
22
|
+
const rows = [...results.entries()].filter(([t]) => t.includes(marker));
|
|
23
|
+
if (rows.length) {
|
|
24
|
+
return rows.map(([t, r]) => ({ nameSuffix: ` — ${t.slice(t.indexOf(marker) + marker.length)}`, result: r }));
|
|
25
|
+
}
|
|
26
|
+
return [{ nameSuffix: '' }];
|
|
27
|
+
}
|
|
28
|
+
if (results && m.spec) {
|
|
29
|
+
return [{ nameSuffix: '', result: results.get(m.spec.testTitle) }];
|
|
30
|
+
}
|
|
31
|
+
return [{ nameSuffix: '' }];
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=result-variants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"result-variants.js","sourceRoot":"","sources":["../../src/exporters/result-variants.ts"],"names":[],"mappings":";;AA6BA,sDAiBC;AA/BD;;;;;;;;;;;;;GAaG;AACH,SAAgB,qBAAqB,CACnC,CAAiB,EACjB,OAA6C;IAE7C,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;IACpE,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC;QACtC,MAAM,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QACxE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC/G,CAAC;QACD,OAAO,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;IAC9B,CAAC;IACD,IAAI,OAAO,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QACtB,OAAO,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;AAC9B,CAAC"}
|
|
@@ -1,15 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* -
|
|
6
|
-
* -
|
|
7
|
-
*
|
|
8
|
-
* -
|
|
9
|
-
*
|
|
2
|
+
* Node-side wrapper around the shared pure workbook builder
|
|
3
|
+
* (`xlsx-report-builder.ts` — the single source of truth for the BM-2-901-13
|
|
4
|
+
* report rendering, also bundled into the dashboard). This module keeps only:
|
|
5
|
+
* - Node file I/O: `writeXlsx` + the `lockEmbeddedImages` post-process
|
|
6
|
+
* - the CLI version lookup (`getPackageVersion`, fs-based) injected as
|
|
7
|
+
* `opts.sungenVersion`
|
|
8
|
+
* - thin adapters mapping core domain types (ScreenSummary / TestCaseRow /
|
|
9
|
+
* LocaleSheet / ApiCatalogEntry) onto the builder input — pure field
|
|
10
|
+
* mapping, no rendering logic.
|
|
11
|
+
* Public API is unchanged: `renderXlsx`, `renderXlsxMultiSheet`, `writeXlsx`,
|
|
12
|
+
* `buildApiDetailRows`, `addApiDetailSheet`, `ApiDetailContext`, `LocaleSheet`.
|
|
10
13
|
*/
|
|
11
14
|
import ExcelJS from 'exceljs';
|
|
12
15
|
import { ApiCatalogEntry, ApiDetailRow, ScreenSummary, TestCaseRow } from './types';
|
|
16
|
+
import { addApiDetailSheet } from './xlsx-report-builder';
|
|
17
|
+
export { addApiDetailSheet };
|
|
13
18
|
/**
|
|
14
19
|
* Optional context for the supplementary "API detail" worksheet.
|
|
15
20
|
* Passed only when the unit is kind:api. When omitted, only the standard
|
|
@@ -45,20 +50,15 @@ export declare function renderXlsxMultiSheet(sheets: LocaleSheet[]): ExcelJS.Wor
|
|
|
45
50
|
* Build ApiDetailRow[] from the apis.yaml catalog + feature-level annotations.
|
|
46
51
|
* Called once per feature file for api-kind units in the delivery pipeline.
|
|
47
52
|
*
|
|
53
|
+
* Delegates to the pure builder, injecting the feature-parser tag extractors
|
|
54
|
+
* (the builder cannot import feature-parser — it must stay browser-safe).
|
|
55
|
+
*
|
|
48
56
|
* @param catalog Parsed apis.yaml keyed by endpoint name
|
|
49
57
|
* @param scenarios Scenario-level tag arrays from parseFeatureMetadata().scenarios
|
|
50
58
|
*/
|
|
51
59
|
export declare function buildApiDetailRows(catalog: Record<string, ApiCatalogEntry>, scenarios: Array<{
|
|
52
60
|
tags: string[];
|
|
53
61
|
}>): ApiDetailRow[];
|
|
54
|
-
/**
|
|
55
|
-
* Append a second "API detail" worksheet to the workbook.
|
|
56
|
-
* Called only for api-kind units; no effect on the Testcases sheet or other sheets.
|
|
57
|
-
*
|
|
58
|
-
* Columns: Endpoint · Method · Auth/Datasource · Request shape ·
|
|
59
|
-
* Expected-status matrix · Flow steps · Concurrency invariant
|
|
60
|
-
*/
|
|
61
|
-
export declare function addApiDetailSheet(wb: ExcelJS.Workbook, detailRows: ApiDetailRow[]): void;
|
|
62
62
|
/**
|
|
63
63
|
* Write the workbook to `qa/deliverables/<screen>-testcases[.env].xlsx`.
|
|
64
64
|
* When `SUNGEN_ENV` is set, the env name is appended so locale exports don't
|
|
@@ -73,7 +73,8 @@ export declare function writeXlsx(cwd: string, screen: string, wb: ExcelJS.Workb
|
|
|
73
73
|
/**
|
|
74
74
|
* Post-process the workbook buffer: extend `<a:picLocks>` on every drawing
|
|
75
75
|
* with `noMove`, `noResize`, `noSelect`. Combined with the sheet protection
|
|
76
|
-
*
|
|
76
|
+
* set by the builder, the embedded logo can't be dragged, resized, or
|
|
77
|
+
* selected via the UI.
|
|
77
78
|
*/
|
|
78
79
|
export declare function lockEmbeddedImages(buffer: Buffer): Promise<Buffer>;
|
|
79
80
|
//# sourceMappingURL=xlsx-exporter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xlsx-exporter.d.ts","sourceRoot":"","sources":["../../src/exporters/xlsx-exporter.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"xlsx-exporter.d.ts","sourceRoot":"","sources":["../../src/exporters/xlsx-exporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAQpF,OAAO,EAIL,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACzC,uDAAuD;IACvD,IAAI,EAAE,YAAY,EAAE,CAAC;CACtB;AAED,wBAAgB,UAAU,CACxB,OAAO,EAAE,aAAa,EACtB,IAAI,EAAE,WAAW,EAAE,EACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,gBAAgB,GAC3B,OAAO,CAAC,QAAQ,CAMlB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,aAAa,CAAC;IACvB,IAAI,EAAE,WAAW,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,QAAQ,CAE5E;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EACxC,SAAS,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,GACnC,YAAY,EAAE,CAMhB;AAED;;;;GAIG;AACH;;;;GAIG;AACH,wBAAsB,SAAS,CAC7B,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,OAAO,CAAC,QAAQ,EACpB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GACrB,OAAO,CAAC,MAAM,CAAC,CAQjB;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAuBxE"}
|