@imolko/create-ultra-reporter 2.1.33 → 2.1.34
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/bin/config/reader.js +7 -0
- package/bin/config/reader.js.map +1 -1
- package/bin/config/types.d.ts +2 -0
- package/bin/config/types.js.map +1 -1
- package/bin/pipeline/generate.d.ts +24 -0
- package/bin/pipeline/generate.js +82 -0
- package/bin/pipeline/generate.js.map +1 -1
- package/bin/reporters/data-transformation.d.ts +19 -1
- package/bin/reporters/data-transformation.js +79 -0
- package/bin/reporters/data-transformation.js.map +1 -1
- package/bin/reporters/readme-transform.d.ts +38 -0
- package/bin/reporters/readme-transform.js +110 -0
- package/bin/reporters/readme-transform.js.map +1 -0
- package/bin/reporters/types.d.ts +27 -0
- package/bin/scaffold/assembler.js +51 -29
- package/bin/scaffold/assembler.js.map +1 -1
- package/package.json +1 -1
- package/templates/documentation/src/components/HomepageFeatures/index.tsx +357 -28
- package/templates/documentation/src/components/HomepageFeatures/styles.module.css +4 -2
- package/templates/documentation/src/pages/index.module.css +10 -0
- package/templates/documentation/src/pages/index.tsx +40 -13
package/bin/config/reader.js
CHANGED
|
@@ -138,6 +138,13 @@ function readConfig(basePath) {
|
|
|
138
138
|
outputPath: typeof b.outputPath === 'string' ? b.outputPath : undefined,
|
|
139
139
|
};
|
|
140
140
|
}
|
|
141
|
+
// Validate includeReadme (optional)
|
|
142
|
+
if (config.includeReadme !== undefined) {
|
|
143
|
+
if (typeof config.includeReadme !== 'boolean') {
|
|
144
|
+
throw new types_1.ConfigValidationError('includeReadme must be a boolean when present');
|
|
145
|
+
}
|
|
146
|
+
result.includeReadme = config.includeReadme;
|
|
147
|
+
}
|
|
141
148
|
return result;
|
|
142
149
|
}
|
|
143
150
|
/**
|
package/bin/config/reader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reader.js","sourceRoot":"","sources":["../../src/config/reader.ts"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,sDAAsD;AACtD,EAAE;AACF,8DAA8D;AAC9D,sEAAsE;AACtE,wEAAwE;AACxE,8EAA8E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAc9E,
|
|
1
|
+
{"version":3,"file":"reader.js","sourceRoot":"","sources":["../../src/config/reader.ts"],"names":[],"mappings":"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"}
|
package/bin/config/types.d.ts
CHANGED
package/bin/config/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,qDAAqD;AACrD,EAAE;AACF,wEAAwE;AACxE,sEAAsE;AACtE,sBAAsB;AACtB,8EAA8E;;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,qDAAqD;AACrD,EAAE;AACF,wEAAwE;AACxE,sEAAsE;AACtE,sBAAsB;AACtB,8EAA8E;;;AA2D9E;;GAEG;AACH,MAAa,qBAAsB,SAAQ,KAAK;IAC9C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AALD,sDAKC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ArtifactManifestEntry } from '../reporters/types';
|
|
1
2
|
/**
|
|
2
3
|
* Paths to the key output directories derived from the config location.
|
|
3
4
|
*/
|
|
@@ -40,3 +41,26 @@ export declare function resolveInternalJsdocConfigPath(cmdRoot: string): string;
|
|
|
40
41
|
* Returns the resolved path if found, or `null` if no CTRF file exists.
|
|
41
42
|
*/
|
|
42
43
|
export declare function resolveTestResultsPath(cwd: string, srcPath: string, configuredPath?: string): string | null;
|
|
44
|
+
/** Parameters for writeDashboardData. */
|
|
45
|
+
export interface WriteDashboardDataParams {
|
|
46
|
+
/** Directory containing ultra-reporter.config.json. */
|
|
47
|
+
configDir: string;
|
|
48
|
+
/** Artifact manifest entries to generate stats from. */
|
|
49
|
+
artifactsManifest: ArtifactManifestEntry[];
|
|
50
|
+
/** Path to the test-results.json file (may not exist). */
|
|
51
|
+
testResultsJsonPath: string;
|
|
52
|
+
/** Whether to include README content in the dashboard. */
|
|
53
|
+
includeReadme: boolean;
|
|
54
|
+
/** Project root directory (for resolving README.md). */
|
|
55
|
+
cwd: string;
|
|
56
|
+
/** Optional repo source URL for link rewriting. */
|
|
57
|
+
repoSourceUrl?: string;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Writes dashboard-summary.json and optionally overview.md.
|
|
61
|
+
*
|
|
62
|
+
* This is called by the pipeline after domain documentation generation.
|
|
63
|
+
* It reads test-results.json, computes summary stats, optionally processes
|
|
64
|
+
* README.md, and writes output to the ultra-reporter directory tree.
|
|
65
|
+
*/
|
|
66
|
+
export declare function writeDashboardData(params: WriteDashboardDataParams): void;
|
package/bin/pipeline/generate.js
CHANGED
|
@@ -53,6 +53,7 @@ exports.derivePipelinePaths = derivePipelinePaths;
|
|
|
53
53
|
exports.generateAllDocs = generateAllDocs;
|
|
54
54
|
exports.resolveInternalJsdocConfigPath = resolveInternalJsdocConfigPath;
|
|
55
55
|
exports.resolveTestResultsPath = resolveTestResultsPath;
|
|
56
|
+
exports.writeDashboardData = writeDashboardData;
|
|
56
57
|
const path = __importStar(require("path"));
|
|
57
58
|
const fs = __importStar(require("fs"));
|
|
58
59
|
const path_1 = require("path");
|
|
@@ -63,6 +64,8 @@ const converter_1 = require("../scripts/converter");
|
|
|
63
64
|
const generate_domain_documentation_1 = require("../reporters/generate-domain-documentation");
|
|
64
65
|
const generate_use_cases_documentation_1 = require("../reporters/generate-use-cases-documentation");
|
|
65
66
|
const reader_1 = require("../config/reader");
|
|
67
|
+
const data_transformation_1 = require("../reporters/data-transformation");
|
|
68
|
+
const readme_transform_1 = require("../reporters/readme-transform");
|
|
66
69
|
const logger_1 = __importDefault(require("../classes/logger"));
|
|
67
70
|
const pipeLogger = logger_1.default.createContextLogger('pipeline:generate');
|
|
68
71
|
/**
|
|
@@ -175,6 +178,29 @@ async function generateDomainTarget(config, paths, cwd, cmdRoot) {
|
|
|
175
178
|
templateDir: (0, path_1.resolve)(cmdRoot, '../reporters/templates'),
|
|
176
179
|
repoSourceUrl: config.repoSourceUrl,
|
|
177
180
|
});
|
|
181
|
+
// 5. Generate dashboard summary for the home page
|
|
182
|
+
// The domain reporter writes artifacts-manifest.json to static/data/
|
|
183
|
+
const manifestPath = (0, path_1.resolve)(paths.ultraReporterRoot, 'static', 'data', 'artifacts-manifest.json');
|
|
184
|
+
const testResultsJsonPath = (0, path_1.resolve)(paths.cacheDir, 'test-results.json');
|
|
185
|
+
if ((0, utils_1.existsFile)(manifestPath)) {
|
|
186
|
+
try {
|
|
187
|
+
const manifestEntries = JSON.parse(fs.readFileSync(manifestPath, 'utf-8'));
|
|
188
|
+
writeDashboardData({
|
|
189
|
+
configDir: cwd,
|
|
190
|
+
artifactsManifest: manifestEntries,
|
|
191
|
+
testResultsJsonPath,
|
|
192
|
+
includeReadme: config.includeReadme === true,
|
|
193
|
+
cwd,
|
|
194
|
+
repoSourceUrl: config.repoSourceUrl,
|
|
195
|
+
});
|
|
196
|
+
}
|
|
197
|
+
catch (err) {
|
|
198
|
+
pipeLogger.warn(`Dashboard summary generation failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
else {
|
|
202
|
+
pipeLogger.warn('artifacts-manifest.json not found, skipping dashboard summary');
|
|
203
|
+
}
|
|
178
204
|
}
|
|
179
205
|
// ---------------------------------------------------------------------------
|
|
180
206
|
// Use-cases target generation
|
|
@@ -306,4 +332,60 @@ function writeEmptyTestResults(filePath) {
|
|
|
306
332
|
fs.mkdirSync(path.dirname(filePath), { recursive: true });
|
|
307
333
|
fs.writeFileSync(filePath, JSON.stringify(empty, null, 2));
|
|
308
334
|
}
|
|
335
|
+
/**
|
|
336
|
+
* Writes dashboard-summary.json and optionally overview.md.
|
|
337
|
+
*
|
|
338
|
+
* This is called by the pipeline after domain documentation generation.
|
|
339
|
+
* It reads test-results.json, computes summary stats, optionally processes
|
|
340
|
+
* README.md, and writes output to the ultra-reporter directory tree.
|
|
341
|
+
*/
|
|
342
|
+
function writeDashboardData(params) {
|
|
343
|
+
const ultraReporterDir = path.resolve(params.configDir, '.ultra-reporter');
|
|
344
|
+
// Load test results (if available)
|
|
345
|
+
let testResultsData = null;
|
|
346
|
+
if ((0, utils_1.existsFile)(params.testResultsJsonPath)) {
|
|
347
|
+
try {
|
|
348
|
+
const raw = JSON.parse(fs.readFileSync(params.testResultsJsonPath, 'utf-8'));
|
|
349
|
+
testResultsData = {
|
|
350
|
+
numTotalTests: raw.numTotalTests ?? 0,
|
|
351
|
+
numPassedTests: raw.numPassedTests ?? 0,
|
|
352
|
+
numFailedTests: raw.numFailedTests ?? 0,
|
|
353
|
+
numPendingTests: raw.numPendingTests ?? 0,
|
|
354
|
+
numTodoTests: raw.numTodoTests ?? 0,
|
|
355
|
+
numTotalTestSuites: raw.numTotalTestSuites ?? 0,
|
|
356
|
+
};
|
|
357
|
+
}
|
|
358
|
+
catch {
|
|
359
|
+
pipeLogger.warn('Failed to parse test results, dashboard will show zero tests');
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
// Compute summary
|
|
363
|
+
const summary = (0, data_transformation_1.computeDashboardSummary)(params.artifactsManifest, testResultsData);
|
|
364
|
+
// Process README if configured
|
|
365
|
+
if (params.includeReadme) {
|
|
366
|
+
const readmePath = path.resolve(params.cwd, 'README.md');
|
|
367
|
+
if ((0, utils_1.existsFile)(readmePath)) {
|
|
368
|
+
const readmeContent = fs.readFileSync(readmePath, 'utf-8');
|
|
369
|
+
const { html, excerptHtml } = (0, readme_transform_1.processReadme)(readmeContent, params.repoSourceUrl);
|
|
370
|
+
summary.readmeHtml = html;
|
|
371
|
+
summary.readmeExcerptHtml = excerptHtml;
|
|
372
|
+
// Write overview.md for the docs site
|
|
373
|
+
const overviewPath = path.resolve(ultraReporterDir, 'generated-docs', 'overview.md');
|
|
374
|
+
fs.mkdirSync(path.dirname(overviewPath), { recursive: true });
|
|
375
|
+
fs.writeFileSync(overviewPath, readmeContent, 'utf-8');
|
|
376
|
+
pipeLogger.info('README.md included in dashboard and docs');
|
|
377
|
+
}
|
|
378
|
+
else {
|
|
379
|
+
pipeLogger.warn('includeReadme is true but README.md not found at project root');
|
|
380
|
+
summary.readmeHtml = '';
|
|
381
|
+
summary.readmeExcerptHtml = '';
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
// Write dashboard-summary.json
|
|
385
|
+
const staticDataDir = path.resolve(ultraReporterDir, 'static', 'data');
|
|
386
|
+
fs.mkdirSync(staticDataDir, { recursive: true });
|
|
387
|
+
const summaryPath = path.join(staticDataDir, 'dashboard-summary.json');
|
|
388
|
+
fs.writeFileSync(summaryPath, JSON.stringify(summary, null, 2), 'utf-8');
|
|
389
|
+
pipeLogger.info(`Dashboard summary written (${summary.artifactCount} artifacts, ${summary.contextCount} contexts)`);
|
|
390
|
+
}
|
|
309
391
|
//# sourceMappingURL=generate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/pipeline/generate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/pipeline/generate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ArtifactManifestEntry, ArtifactRaw, ClassProperty, EnrichedArtifact, EnrichedUseCase, JsdocElem, MethodDefinition, Property, TestFile, UseCaseRaw } from './types';
|
|
1
|
+
import type { ArtifactManifestEntry, ArtifactRaw, ClassProperty, DashboardSummary, EnrichedArtifact, EnrichedUseCase, JsdocElem, MethodDefinition, Property, TestFile, UseCaseRaw } from './types';
|
|
2
2
|
/**
|
|
3
3
|
* Extracts property definitions from JSDoc elements whose meta.filename is 'props.ts'.
|
|
4
4
|
* Iterates over each matching element's `.properties` array and maps them
|
|
@@ -87,6 +87,24 @@ export declare function enrichUseCase(raw: UseCaseRaw, allTestResults: TestFile[
|
|
|
87
87
|
* @returns The test files with annotations attached (mutated in place)
|
|
88
88
|
*/
|
|
89
89
|
export declare function matchTestAnnotations(testFiles: TestFile[], jsdocElems: JsdocElem[]): TestFile[];
|
|
90
|
+
/**
|
|
91
|
+
* Computes summary statistics for the homepage dashboard.
|
|
92
|
+
*
|
|
93
|
+
* Pure function — takes artifact manifest entries and test results,
|
|
94
|
+
* returns a DashboardSummary ready for serialization to JSON.
|
|
95
|
+
*
|
|
96
|
+
* @param artifacts - Manifest entries from the domain
|
|
97
|
+
* @param testResultsData - Aggregated test results, or null if no test data
|
|
98
|
+
* @returns Dashboard summary with artifact counts, type breakdown, tags, and test stats
|
|
99
|
+
*/
|
|
100
|
+
export declare function computeDashboardSummary(artifacts: ArtifactManifestEntry[], testResultsData: {
|
|
101
|
+
numTotalTests: number;
|
|
102
|
+
numPassedTests: number;
|
|
103
|
+
numFailedTests: number;
|
|
104
|
+
numPendingTests: number;
|
|
105
|
+
numTodoTests: number;
|
|
106
|
+
numTotalTestSuites: number;
|
|
107
|
+
} | null): DashboardSummary;
|
|
90
108
|
/**
|
|
91
109
|
* Converts a list of enriched artifacts to manifest entries for the
|
|
92
110
|
* searchable artifact table.
|
|
@@ -47,6 +47,7 @@ exports.buildArtifactId = buildArtifactId;
|
|
|
47
47
|
exports.enrichArtifact = enrichArtifact;
|
|
48
48
|
exports.enrichUseCase = enrichUseCase;
|
|
49
49
|
exports.matchTestAnnotations = matchTestAnnotations;
|
|
50
|
+
exports.computeDashboardSummary = computeDashboardSummary;
|
|
50
51
|
exports.buildManifestEntries = buildManifestEntries;
|
|
51
52
|
const path = __importStar(require("path"));
|
|
52
53
|
const data_loading_1 = require("./data-loading");
|
|
@@ -363,6 +364,84 @@ function extractDir(filePath) {
|
|
|
363
364
|
return lastSlash >= 0 ? filePath.slice(0, lastSlash) : filePath;
|
|
364
365
|
}
|
|
365
366
|
// ---------------------------------------------------------------------------
|
|
367
|
+
// TYPE_LABELS — human-readable labels for artifact types
|
|
368
|
+
// ---------------------------------------------------------------------------
|
|
369
|
+
const TYPE_LABELS = {
|
|
370
|
+
'aggregate': 'Aggregates',
|
|
371
|
+
'entity': 'Entities',
|
|
372
|
+
'value-object': 'Value Objects',
|
|
373
|
+
'event': 'Events',
|
|
374
|
+
'service': 'Services',
|
|
375
|
+
'repository': 'Repositories',
|
|
376
|
+
'enum': 'Enums',
|
|
377
|
+
};
|
|
378
|
+
/** Returns a human-readable label for an artifact type. */
|
|
379
|
+
function typeLabel(type) {
|
|
380
|
+
return TYPE_LABELS[type] ?? type.charAt(0).toUpperCase() + type.slice(1);
|
|
381
|
+
}
|
|
382
|
+
// ---------------------------------------------------------------------------
|
|
383
|
+
// computeDashboardSummary — pre-computed stats for the homepage dashboard
|
|
384
|
+
// ---------------------------------------------------------------------------
|
|
385
|
+
/**
|
|
386
|
+
* Computes summary statistics for the homepage dashboard.
|
|
387
|
+
*
|
|
388
|
+
* Pure function — takes artifact manifest entries and test results,
|
|
389
|
+
* returns a DashboardSummary ready for serialization to JSON.
|
|
390
|
+
*
|
|
391
|
+
* @param artifacts - Manifest entries from the domain
|
|
392
|
+
* @param testResultsData - Aggregated test results, or null if no test data
|
|
393
|
+
* @returns Dashboard summary with artifact counts, type breakdown, tags, and test stats
|
|
394
|
+
*/
|
|
395
|
+
function computeDashboardSummary(artifacts, testResultsData) {
|
|
396
|
+
const artifactCount = artifacts.length;
|
|
397
|
+
// Distinct context names
|
|
398
|
+
const contextNames = new Set();
|
|
399
|
+
for (const a of artifacts) {
|
|
400
|
+
contextNames.add(a.contextName);
|
|
401
|
+
}
|
|
402
|
+
const contextCount = contextNames.size;
|
|
403
|
+
// Type breakdown
|
|
404
|
+
const typeBreakdown = {};
|
|
405
|
+
for (const a of artifacts) {
|
|
406
|
+
const key = a.type;
|
|
407
|
+
if (!typeBreakdown[key]) {
|
|
408
|
+
typeBreakdown[key] = { count: 0, label: typeLabel(key) };
|
|
409
|
+
}
|
|
410
|
+
typeBreakdown[key].count++;
|
|
411
|
+
}
|
|
412
|
+
// Tag frequency
|
|
413
|
+
const tags = {};
|
|
414
|
+
for (const a of artifacts) {
|
|
415
|
+
for (const tag of a.tags) {
|
|
416
|
+
if (tag) {
|
|
417
|
+
tags[tag] = (tags[tag] || 0) + 1;
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
// Test stats
|
|
422
|
+
let testStats;
|
|
423
|
+
if (testResultsData) {
|
|
424
|
+
testStats = {
|
|
425
|
+
total: testResultsData.numTotalTests,
|
|
426
|
+
passed: testResultsData.numPassedTests,
|
|
427
|
+
failed: testResultsData.numFailedTests,
|
|
428
|
+
skipped: testResultsData.numPendingTests,
|
|
429
|
+
todo: testResultsData.numTodoTests,
|
|
430
|
+
suites: testResultsData.numTotalTestSuites,
|
|
431
|
+
};
|
|
432
|
+
}
|
|
433
|
+
else {
|
|
434
|
+
testStats = { total: 0, passed: 0, failed: 0, skipped: 0, todo: 0, suites: 0 };
|
|
435
|
+
}
|
|
436
|
+
return {
|
|
437
|
+
artifactCount,
|
|
438
|
+
contextCount,
|
|
439
|
+
testStats,
|
|
440
|
+
typeBreakdown,
|
|
441
|
+
tags,
|
|
442
|
+
};
|
|
443
|
+
}
|
|
444
|
+
// ---------------------------------------------------------------------------
|
|
366
445
|
// buildManifestEntries — converts enriched artifacts to manifest entries
|
|
367
446
|
// ---------------------------------------------------------------------------
|
|
368
447
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-transformation.js","sourceRoot":"","sources":["../../src/reporters/data-transformation.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"data-transformation.js","sourceRoot":"","sources":["../../src/reporters/data-transformation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rewrites relative file links in markdown text to point at repoSourceUrl.
|
|
3
|
+
*
|
|
4
|
+
* Rules (per ADR design decision):
|
|
5
|
+
* - Absolute URLs (https://...) → untouched
|
|
6
|
+
* - Anchor links (#section) → untouched
|
|
7
|
+
* - Relative file links (./foo.md, ../bar/baz.md, docs/qux.md) → repoSourceUrl/resolvedPath
|
|
8
|
+
* - If repoSourceUrl is undefined → links untouched
|
|
9
|
+
*
|
|
10
|
+
* @param markdown - Raw markdown content
|
|
11
|
+
* @param repoSourceUrl - Base URL of the repository (e.g. "https://github.com/o/r/blob/main")
|
|
12
|
+
* @returns Markdown with relative links rewritten
|
|
13
|
+
*/
|
|
14
|
+
export declare function transformReadmeLinks(markdown: string, repoSourceUrl: string | undefined): string;
|
|
15
|
+
/**
|
|
16
|
+
* Extracts the first paragraph from an HTML string.
|
|
17
|
+
*
|
|
18
|
+
* Finds the first `<p>` tag, truncates to maxLength chars at word boundary
|
|
19
|
+
* if needed, and appends an ellipsis.
|
|
20
|
+
*
|
|
21
|
+
* @param html - HTML content
|
|
22
|
+
* @param maxLength - Maximum excerpt length in characters (excluding ellipsis)
|
|
23
|
+
* @returns Excerpt HTML or empty string if no paragraph found
|
|
24
|
+
*/
|
|
25
|
+
export declare function extractExcerpt(html: string, maxLength: number): string;
|
|
26
|
+
/**
|
|
27
|
+
* Converts README markdown to HTML, rewrites relative links, and extracts
|
|
28
|
+
* an excerpt.
|
|
29
|
+
*
|
|
30
|
+
* @param markdown - Raw README.md content
|
|
31
|
+
* @param repoSourceUrl - Optional repo URL for link rewriting
|
|
32
|
+
* @param excerptMaxLength - Maximum length for excerpt (default 500)
|
|
33
|
+
* @returns HTML, excerpt HTML, and transformed markdown
|
|
34
|
+
*/
|
|
35
|
+
export declare function processReadme(markdown: string, repoSourceUrl: string | undefined, excerptMaxLength?: number): {
|
|
36
|
+
html: string;
|
|
37
|
+
excerptHtml: string;
|
|
38
|
+
};
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ---------------------------------------------------------------------------
|
|
3
|
+
// README transform layer — pure functions for processing project README.md
|
|
4
|
+
//
|
|
5
|
+
// Handles:
|
|
6
|
+
// - Link rewriting: relative file links → repoSourceUrl
|
|
7
|
+
// - Excerpt extraction: first paragraph of HTML content
|
|
8
|
+
// - Markdown-to-HTML conversion via marked (already a transitive dependency)
|
|
9
|
+
// ---------------------------------------------------------------------------
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.transformReadmeLinks = transformReadmeLinks;
|
|
12
|
+
exports.extractExcerpt = extractExcerpt;
|
|
13
|
+
exports.processReadme = processReadme;
|
|
14
|
+
const marked_1 = require("marked");
|
|
15
|
+
// ---------------------------------------------------------------------------
|
|
16
|
+
// transformReadmeLinks — rewrite relative file links to repo source URL
|
|
17
|
+
// ---------------------------------------------------------------------------
|
|
18
|
+
/**
|
|
19
|
+
* Rewrites relative file links in markdown text to point at repoSourceUrl.
|
|
20
|
+
*
|
|
21
|
+
* Rules (per ADR design decision):
|
|
22
|
+
* - Absolute URLs (https://...) → untouched
|
|
23
|
+
* - Anchor links (#section) → untouched
|
|
24
|
+
* - Relative file links (./foo.md, ../bar/baz.md, docs/qux.md) → repoSourceUrl/resolvedPath
|
|
25
|
+
* - If repoSourceUrl is undefined → links untouched
|
|
26
|
+
*
|
|
27
|
+
* @param markdown - Raw markdown content
|
|
28
|
+
* @param repoSourceUrl - Base URL of the repository (e.g. "https://github.com/o/r/blob/main")
|
|
29
|
+
* @returns Markdown with relative links rewritten
|
|
30
|
+
*/
|
|
31
|
+
function transformReadmeLinks(markdown, repoSourceUrl) {
|
|
32
|
+
if (!repoSourceUrl) {
|
|
33
|
+
return markdown;
|
|
34
|
+
}
|
|
35
|
+
// Match markdown links: [text](url)
|
|
36
|
+
// Group 1: link text, Group 2: URL
|
|
37
|
+
return markdown.replace(/\[([^\]]*)\]\(([^)]+)\)/g, (_match, text, url) => {
|
|
38
|
+
// Absolute URLs (http/https) — leave untouched
|
|
39
|
+
if (/^https?:\/\//i.test(url)) {
|
|
40
|
+
return `[${text}](${url})`;
|
|
41
|
+
}
|
|
42
|
+
// Anchor links — leave untouched
|
|
43
|
+
if (/^#/.test(url)) {
|
|
44
|
+
return `[${text}](${url})`;
|
|
45
|
+
}
|
|
46
|
+
// Relative file link — prepend repoSourceUrl
|
|
47
|
+
// Normalize: strip leading ./ prefix, ensure no double-slash
|
|
48
|
+
const normalized = url.replace(/^\.\//, '');
|
|
49
|
+
const base = repoSourceUrl.replace(/\/$/, '');
|
|
50
|
+
return `[${text}](${base}/${normalized})`;
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
// ---------------------------------------------------------------------------
|
|
54
|
+
// extractExcerpt — extract first paragraph from HTML
|
|
55
|
+
// ---------------------------------------------------------------------------
|
|
56
|
+
/**
|
|
57
|
+
* Extracts the first paragraph from an HTML string.
|
|
58
|
+
*
|
|
59
|
+
* Finds the first `<p>` tag, truncates to maxLength chars at word boundary
|
|
60
|
+
* if needed, and appends an ellipsis.
|
|
61
|
+
*
|
|
62
|
+
* @param html - HTML content
|
|
63
|
+
* @param maxLength - Maximum excerpt length in characters (excluding ellipsis)
|
|
64
|
+
* @returns Excerpt HTML or empty string if no paragraph found
|
|
65
|
+
*/
|
|
66
|
+
function extractExcerpt(html, maxLength) {
|
|
67
|
+
// Find the first <p> tag
|
|
68
|
+
const match = html.match(/<p>(.*?)<\/p>/s);
|
|
69
|
+
if (!match) {
|
|
70
|
+
return '';
|
|
71
|
+
}
|
|
72
|
+
const fullContent = match[0];
|
|
73
|
+
const innerText = match[1];
|
|
74
|
+
// If within maxLength, return the full paragraph
|
|
75
|
+
if (innerText.length <= maxLength) {
|
|
76
|
+
return fullContent;
|
|
77
|
+
}
|
|
78
|
+
// Truncate at word boundary
|
|
79
|
+
const truncated = innerText.slice(0, maxLength);
|
|
80
|
+
const lastSpace = truncated.lastIndexOf(' ');
|
|
81
|
+
const cutoff = lastSpace > 0 ? lastSpace : maxLength;
|
|
82
|
+
const excerpt = innerText.slice(0, cutoff);
|
|
83
|
+
return `<p>${excerpt}…</p>`;
|
|
84
|
+
}
|
|
85
|
+
// ---------------------------------------------------------------------------
|
|
86
|
+
// processReadme — compose markdown → HTML + link transform + excerpt
|
|
87
|
+
// ---------------------------------------------------------------------------
|
|
88
|
+
/**
|
|
89
|
+
* Converts README markdown to HTML, rewrites relative links, and extracts
|
|
90
|
+
* an excerpt.
|
|
91
|
+
*
|
|
92
|
+
* @param markdown - Raw README.md content
|
|
93
|
+
* @param repoSourceUrl - Optional repo URL for link rewriting
|
|
94
|
+
* @param excerptMaxLength - Maximum length for excerpt (default 500)
|
|
95
|
+
* @returns HTML, excerpt HTML, and transformed markdown
|
|
96
|
+
*/
|
|
97
|
+
function processReadme(markdown, repoSourceUrl, excerptMaxLength = 500) {
|
|
98
|
+
if (!markdown) {
|
|
99
|
+
return { html: '', excerptHtml: '' };
|
|
100
|
+
}
|
|
101
|
+
// Transform links in markdown before converting to HTML,
|
|
102
|
+
// so the transformed URLs are preserved in the HTML output.
|
|
103
|
+
const transformed = transformReadmeLinks(markdown, repoSourceUrl);
|
|
104
|
+
// Convert to HTML using marked
|
|
105
|
+
const html = marked_1.marked.parse(transformed, { async: false });
|
|
106
|
+
// Extract excerpt from the HTML
|
|
107
|
+
const excerptHtml = extractExcerpt(html, excerptMaxLength);
|
|
108
|
+
return { html, excerptHtml };
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=readme-transform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"readme-transform.js","sourceRoot":"","sources":["../../src/reporters/readme-transform.ts"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,2EAA2E;AAC3E,EAAE;AACF,WAAW;AACX,0DAA0D;AAC1D,0DAA0D;AAC1D,+EAA+E;AAC/E,8EAA8E;;AAqB9E,oDA8BC;AAgBD,wCAuBC;AAeD,sCAoBC;AA3HD,mCAAgC;AAEhC,8EAA8E;AAC9E,wEAAwE;AACxE,8EAA8E;AAE9E;;;;;;;;;;;;GAYG;AACH,SAAgB,oBAAoB,CAClC,QAAgB,EAChB,aAAiC;IAEjC,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,oCAAoC;IACpC,mCAAmC;IACnC,OAAO,QAAQ,CAAC,OAAO,CACrB,0BAA0B,EAC1B,CAAC,MAAc,EAAE,IAAY,EAAE,GAAW,EAAE,EAAE;QAC5C,+CAA+C;QAC/C,IAAI,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,OAAO,IAAI,IAAI,KAAK,GAAG,GAAG,CAAC;QAC7B,CAAC;QAED,iCAAiC;QACjC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACnB,OAAO,IAAI,IAAI,KAAK,GAAG,GAAG,CAAC;QAC7B,CAAC;QAED,6CAA6C;QAC7C,6DAA6D;QAC7D,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9C,OAAO,IAAI,IAAI,KAAK,IAAI,IAAI,UAAU,GAAG,CAAC;IAC5C,CAAC,CACF,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,qDAAqD;AACrD,8EAA8E;AAE9E;;;;;;;;;GASG;AACH,SAAgB,cAAc,CAAC,IAAY,EAAE,SAAiB;IAC5D,yBAAyB;IACzB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7B,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAE3B,iDAAiD;IACjD,IAAI,SAAS,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;QAClC,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,4BAA4B;IAC5B,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAE7C,MAAM,MAAM,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IACrD,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAE3C,OAAO,MAAM,OAAO,OAAO,CAAC;AAC9B,CAAC;AAED,8EAA8E;AAC9E,qEAAqE;AACrE,8EAA8E;AAE9E;;;;;;;;GAQG;AACH,SAAgB,aAAa,CAC3B,QAAgB,EAChB,aAAiC,EACjC,gBAAgB,GAAG,GAAG;IAEtB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;IACvC,CAAC;IAED,yDAAyD;IACzD,4DAA4D;IAC5D,MAAM,WAAW,GAAG,oBAAoB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAElE,+BAA+B;IAC/B,MAAM,IAAI,GAAG,eAAM,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAW,CAAC;IAEnE,gCAAgC;IAChC,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IAE3D,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;AAC/B,CAAC"}
|
package/bin/reporters/types.d.ts
CHANGED
|
@@ -178,6 +178,33 @@ export interface UseCasePage {
|
|
|
178
178
|
markdown: string;
|
|
179
179
|
destPath: string;
|
|
180
180
|
}
|
|
181
|
+
/** Type breakdown entry for the dashboard. */
|
|
182
|
+
export interface TypeBreakdownEntry {
|
|
183
|
+
count: number;
|
|
184
|
+
label: string;
|
|
185
|
+
}
|
|
186
|
+
/** Test statistics for the dashboard stat card. */
|
|
187
|
+
export interface DashboardTestStats {
|
|
188
|
+
total: number;
|
|
189
|
+
passed: number;
|
|
190
|
+
failed: number;
|
|
191
|
+
skipped: number;
|
|
192
|
+
todo: number;
|
|
193
|
+
suites: number;
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Pre-computed dashboard summary written to static/data/dashboard-summary.json.
|
|
197
|
+
* Consumed by the HomepageFeatures React component at runtime.
|
|
198
|
+
*/
|
|
199
|
+
export interface DashboardSummary {
|
|
200
|
+
artifactCount: number;
|
|
201
|
+
contextCount: number;
|
|
202
|
+
testStats: DashboardTestStats;
|
|
203
|
+
typeBreakdown: Record<string, TypeBreakdownEntry>;
|
|
204
|
+
tags: Record<string, number>;
|
|
205
|
+
readmeHtml?: string;
|
|
206
|
+
readmeExcerptHtml?: string;
|
|
207
|
+
}
|
|
181
208
|
/** A single artifact entry in the static manifest for the searchable table. */
|
|
182
209
|
export interface ArtifactManifestEntry {
|
|
183
210
|
name: string;
|