@ciach/playwright-private-reporter 0.1.1 → 0.1.2

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 (64) hide show
  1. package/README.md +49 -1
  2. package/dist/cjs/cli/generateReport.d.ts.map +1 -1
  3. package/dist/cjs/cli/generateReport.js +41 -2
  4. package/dist/cjs/cli/generateReport.js.map +1 -1
  5. package/dist/cjs/index.d.ts +2 -1
  6. package/dist/cjs/index.d.ts.map +1 -1
  7. package/dist/cjs/index.js +5 -1
  8. package/dist/cjs/index.js.map +1 -1
  9. package/dist/cjs/reporter/summary.d.ts.map +1 -1
  10. package/dist/cjs/reporter/summary.js +5 -0
  11. package/dist/cjs/reporter/summary.js.map +1 -1
  12. package/dist/cjs/templates/shared.d.ts +4 -0
  13. package/dist/cjs/templates/shared.d.ts.map +1 -0
  14. package/dist/cjs/templates/shared.js +20 -0
  15. package/dist/cjs/templates/shared.js.map +1 -0
  16. package/dist/cjs/templates/summary.classic.d.ts +3 -0
  17. package/dist/cjs/templates/summary.classic.d.ts.map +1 -0
  18. package/dist/cjs/templates/summary.classic.js +60 -0
  19. package/dist/cjs/templates/summary.classic.js.map +1 -0
  20. package/dist/cjs/templates/summary.html.d.ts +5 -2
  21. package/dist/cjs/templates/summary.html.d.ts.map +1 -1
  22. package/dist/cjs/templates/summary.html.js +32 -58
  23. package/dist/cjs/templates/summary.html.js.map +1 -1
  24. package/dist/cjs/templates/summary.modern.d.ts +3 -0
  25. package/dist/cjs/templates/summary.modern.d.ts.map +1 -0
  26. package/dist/cjs/templates/summary.modern.js +543 -0
  27. package/dist/cjs/templates/summary.modern.js.map +1 -0
  28. package/dist/cjs/types/schema.d.ts +22 -0
  29. package/dist/cjs/types/schema.d.ts.map +1 -1
  30. package/dist/esm/cli/generateReport.d.ts.map +1 -1
  31. package/dist/esm/cli/generateReport.js +41 -3
  32. package/dist/esm/cli/generateReport.js.map +1 -1
  33. package/dist/esm/index.d.ts +2 -1
  34. package/dist/esm/index.d.ts.map +1 -1
  35. package/dist/esm/index.js +1 -0
  36. package/dist/esm/index.js.map +1 -1
  37. package/dist/esm/reporter/summary.d.ts.map +1 -1
  38. package/dist/esm/reporter/summary.js +5 -0
  39. package/dist/esm/reporter/summary.js.map +1 -1
  40. package/dist/esm/templates/shared.d.ts +4 -0
  41. package/dist/esm/templates/shared.d.ts.map +1 -0
  42. package/dist/esm/templates/shared.js +15 -0
  43. package/dist/esm/templates/shared.js.map +1 -0
  44. package/dist/esm/templates/summary.classic.d.ts +3 -0
  45. package/dist/esm/templates/summary.classic.d.ts.map +1 -0
  46. package/dist/esm/templates/summary.classic.js +57 -0
  47. package/dist/esm/templates/summary.classic.js.map +1 -0
  48. package/dist/esm/templates/summary.html.d.ts +5 -2
  49. package/dist/esm/templates/summary.html.d.ts.map +1 -1
  50. package/dist/esm/templates/summary.html.js +30 -58
  51. package/dist/esm/templates/summary.html.js.map +1 -1
  52. package/dist/esm/templates/summary.modern.d.ts +3 -0
  53. package/dist/esm/templates/summary.modern.d.ts.map +1 -0
  54. package/dist/esm/templates/summary.modern.js +540 -0
  55. package/dist/esm/templates/summary.modern.js.map +1 -0
  56. package/dist/esm/types/schema.d.ts +22 -0
  57. package/dist/esm/types/schema.d.ts.map +1 -1
  58. package/examples/playwright.config.ts +1 -0
  59. package/examples/summary-template-minimal.cjs +84 -0
  60. package/examples/summary-template-ops.cjs +131 -0
  61. package/examples/summary-template.cjs +63 -0
  62. package/examples/summary-templates.md +111 -0
  63. package/package.json +1 -1
  64. package/schemas/run.schema.json +191 -42
@@ -1 +1 @@
1
- {"version":3,"file":"generateReport.js","sourceRoot":"","sources":["../../../src/cli/generateReport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateReport.js","sourceRoot":"","sources":["../../../src/cli/generateReport.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export { createFailureFingerprint, extractFirstMeaningfulStack, normalizeErrorMe
4
4
  export { generateReport } from './cli/generateReport.js';
5
5
  export { diffFailureGroups } from './history/diffRuns.js';
6
6
  export { loadPreviousFailuresSummary, loadPreviousRunSummary } from './history/loadPrevious.js';
7
- export type { AttachmentRecord, FailureGroup, FailuresSummary, HistoryDiff, PrivateReporterOptions, RunSummary, } from './types/schema.js';
7
+ export { renderClassicSummaryHtml, renderModernSummaryHtml, renderSummaryHtml } from './templates/summary.html.js';
8
+ export type { AttachmentRecord, BuiltInSummaryTheme, FailureGroup, FailuresSummary, HistoryDiff, PrivateReporterOptions, RunSummary, SummaryArtifactLinks, SummaryRenderContext, SummaryRenderer, } from './types/schema.js';
8
9
  export { PrivateReporter as default } from './reporter/PrivateReporter.js';
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACzH,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAChG,YAAY,EACV,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,WAAW,EACX,sBAAsB,EACtB,UAAU,GACX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,eAAe,IAAI,OAAO,EAAE,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACzH,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAChG,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACnH,YAAY,EACV,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,eAAe,EACf,WAAW,EACX,sBAAsB,EACtB,UAAU,EACV,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,eAAe,IAAI,OAAO,EAAE,MAAM,+BAA+B,CAAC"}
package/dist/esm/index.js CHANGED
@@ -4,5 +4,6 @@ export { createFailureFingerprint, extractFirstMeaningfulStack, normalizeErrorMe
4
4
  export { generateReport } from './cli/generateReport.js';
5
5
  export { diffFailureGroups } from './history/diffRuns.js';
6
6
  export { loadPreviousFailuresSummary, loadPreviousRunSummary } from './history/loadPrevious.js';
7
+ export { renderClassicSummaryHtml, renderModernSummaryHtml, renderSummaryHtml } from './templates/summary.html.js';
7
8
  export { PrivateReporter as default } from './reporter/PrivateReporter.js';
8
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACzH,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAShG,OAAO,EAAE,eAAe,IAAI,OAAO,EAAE,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACzH,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAChG,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAanH,OAAO,EAAE,eAAe,IAAI,OAAO,EAAE,MAAM,+BAA+B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"summary.d.ts","sourceRoot":"","sources":["../../../src/reporter/summary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,WAAW,EACX,sBAAsB,EACtB,SAAS,EACT,UAAU,EACX,MAAM,oBAAoB,CAAC;AAE5B,MAAM,MAAM,YAAY,GAAG;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,gBAAgB,EAAE,CAAC;CACjC,CAAC;AAEF,wBAAgB,iBAAiB,IAAI,SAAS,CAS7C;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CA0CxE;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE;IACtC,OAAO,EAAE,sBAAsB,CAAC;IAChC,MAAM,EAAE,SAAS,CAAC;IAClB,eAAe,EAAE,YAAY,EAAE,CAAC;IAChC,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,GAAG,UAAU,CAwCb;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,sBAAsB,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,eAAe,CAO7G"}
1
+ {"version":3,"file":"summary.d.ts","sourceRoot":"","sources":["../../../src/reporter/summary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,WAAW,EACX,sBAAsB,EACtB,SAAS,EACT,UAAU,EACX,MAAM,oBAAoB,CAAC;AAE5B,MAAM,MAAM,YAAY,GAAG;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,gBAAgB,EAAE,CAAC;CACjC,CAAC;AAEF,wBAAgB,iBAAiB,IAAI,SAAS,CAS7C;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CA0CxE;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE;IACtC,OAAO,EAAE,sBAAsB,CAAC;IAChC,MAAM,EAAE,SAAS,CAAC;IAClB,eAAe,EAAE,YAAY,EAAE,CAAC;IAChC,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,GAAG,UAAU,CA6Cb;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,sBAAsB,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,eAAe,CAO7G"}
@@ -59,6 +59,11 @@ export function buildRunSummary(params) {
59
59
  schemaVersion: '1.0',
60
60
  projectName: params.options.projectName,
61
61
  generatedAt: new Date().toISOString(),
62
+ presentation: {
63
+ summaryTitle: params.options.summaryTitle,
64
+ summaryTheme: params.options.summaryTheme,
65
+ summaryTemplatePath: params.options.summaryTemplatePath,
66
+ },
62
67
  run: {
63
68
  status: hasFailures ? 'failed' : 'passed',
64
69
  buildId: process.env[buildIdEnv],
@@ -1 +1 @@
1
- {"version":3,"file":"summary.js","sourceRoot":"","sources":["../../../src/reporter/summary.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"summary.js","sourceRoot":"","sources":["../../../src/reporter/summary.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare function escapeHtml(value: string | undefined): string;
2
+ export declare function pluralize(count: number, singular: string, plural?: string): string;
3
+ export declare function joinTitlePath(titlePath: string[]): string;
4
+ //# sourceMappingURL=shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/templates/shared.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAO5D;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,SAAiB,GAAG,MAAM,CAE1F;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAEzD"}
@@ -0,0 +1,15 @@
1
+ export function escapeHtml(value) {
2
+ return (value ?? '')
3
+ .replaceAll('&', '&')
4
+ .replaceAll('<', '&lt;')
5
+ .replaceAll('>', '&gt;')
6
+ .replaceAll('"', '&quot;')
7
+ .replaceAll("'", '&#39;');
8
+ }
9
+ export function pluralize(count, singular, plural = `${singular}s`) {
10
+ return `${count} ${count === 1 ? singular : plural}`;
11
+ }
12
+ export function joinTitlePath(titlePath) {
13
+ return titlePath.map((segment) => escapeHtml(segment)).join(' / ');
14
+ }
15
+ //# sourceMappingURL=shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/templates/shared.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU,CAAC,KAAyB;IAClD,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;SACjB,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;SACxB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC;SACzB,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAa,EAAE,QAAgB,EAAE,MAAM,GAAG,GAAG,QAAQ,GAAG;IAChF,OAAO,GAAG,KAAK,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,SAAmB;IAC/C,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACrE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { SummaryRenderContext } from '../types/schema.js';
2
+ export declare function renderClassicSummaryHtml(context: SummaryRenderContext): string;
3
+ //# sourceMappingURL=summary.classic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"summary.classic.d.ts","sourceRoot":"","sources":["../../../src/templates/summary.classic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAI/D,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM,CAyD9E"}
@@ -0,0 +1,57 @@
1
+ import { escapeHtml } from './shared.js';
2
+ export function renderClassicSummaryHtml(context) {
3
+ const { title, runSummary, failuresSummary, artifactLinks } = context;
4
+ const failureItems = failuresSummary.groups
5
+ .slice(0, 10)
6
+ .map((group) => `
7
+ <li>
8
+ <strong>${escapeHtml(group.title)}</strong>
9
+ <div>Fingerprint: <code>${escapeHtml(group.fingerprint)}</code></div>
10
+ <div>Occurrences: ${group.countInRun}</div>
11
+ <div>${escapeHtml(group.normalizedMessage)}</div>
12
+ </li>`)
13
+ .join('');
14
+ return `<!DOCTYPE html>
15
+ <html lang="en">
16
+ <head>
17
+ <meta charset="utf-8" />
18
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
19
+ <title>${escapeHtml(title)}</title>
20
+ <style>
21
+ body { font-family: Arial, sans-serif; margin: 2rem; color: #1f2937; }
22
+ .grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
23
+ .card { border: 1px solid #d1d5db; border-radius: 8px; padding: 1rem; background: #fff; }
24
+ code { background: #f3f4f6; padding: 0.1rem 0.3rem; border-radius: 4px; }
25
+ ul { padding-left: 1.25rem; }
26
+ @media (max-width: 900px) { .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
27
+ @media (max-width: 640px) { body { margin: 1rem; } .grid { grid-template-columns: 1fr; } }
28
+ </style>
29
+ </head>
30
+ <body>
31
+ <h1>${escapeHtml(title)}</h1>
32
+ <p>Status: <strong>${escapeHtml(runSummary.run.status)}</strong></p>
33
+ <div class="grid">
34
+ <div class="card"><div>Passed</div><strong>${runSummary.counts.passed}</strong></div>
35
+ <div class="card"><div>Failed</div><strong>${runSummary.counts.failed}</strong></div>
36
+ <div class="card"><div>Skipped</div><strong>${runSummary.counts.skipped}</strong></div>
37
+ <div class="card"><div>Flaky</div><strong>${runSummary.counts.flaky}</strong></div>
38
+ </div>
39
+ <h2>Build metadata</h2>
40
+ <ul>
41
+ <li>Build ID: ${escapeHtml(runSummary.run.buildId)}</li>
42
+ <li>Branch: ${escapeHtml(runSummary.run.branch)}</li>
43
+ <li>Commit: ${escapeHtml(runSummary.run.commit)}</li>
44
+ <li>Build URL: ${runSummary.run.buildUrl ? `<a href="${escapeHtml(runSummary.run.buildUrl)}">${escapeHtml(runSummary.run.buildUrl)}</a>` : 'n/a'}</li>
45
+ </ul>
46
+ <h2>Failure groups</h2>
47
+ <ul>${failureItems || '<li>No failing groups</li>'}</ul>
48
+ <h2>Artifacts</h2>
49
+ <ul>
50
+ <li><a href="${escapeHtml(artifactLinks.playwrightReport)}">Merged Playwright HTML report</a></li>
51
+ <li><a href="${escapeHtml(artifactLinks.junit)}">JUnit XML</a></li>
52
+ <li><a href="${escapeHtml(artifactLinks.testResults)}">Test results attachments</a></li>
53
+ </ul>
54
+ </body>
55
+ </html>`;
56
+ }
57
+ //# sourceMappingURL=summary.classic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"summary.classic.js","sourceRoot":"","sources":["../../../src/templates/summary.classic.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,UAAU,wBAAwB,CAAC,OAA6B;IACpE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IACtE,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM;SACxC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;SACZ,GAAG,CACF,CAAC,KAAK,EAAE,EAAE,CAAC;;oBAEG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC;oCACP,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC;8BACnC,KAAK,CAAC,UAAU;iBAC7B,UAAU,CAAC,KAAK,CAAC,iBAAiB,CAAC;cACtC,CACT;SACA,IAAI,CAAC,EAAE,CAAC,CAAC;IAEZ,OAAO;;;;;aAKI,UAAU,CAAC,KAAK,CAAC;;;;;;;;;;;;UAYpB,UAAU,CAAC,KAAK,CAAC;yBACF,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;;mDAEP,UAAU,CAAC,MAAM,CAAC,MAAM;mDACxB,UAAU,CAAC,MAAM,CAAC,MAAM;oDACvB,UAAU,CAAC,MAAM,CAAC,OAAO;kDAC3B,UAAU,CAAC,MAAM,CAAC,KAAK;;;;sBAInD,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC;oBACpC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;oBACjC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;uBAC9B,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK;;;UAG5I,YAAY,IAAI,4BAA4B;;;qBAGjC,UAAU,CAAC,aAAa,CAAC,gBAAgB,CAAC;qBAC1C,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC;qBAC/B,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC;;;QAGlD,CAAC;AACT,CAAC"}
@@ -1,3 +1,6 @@
1
- import type { FailuresSummary, RunSummary } from '../types/schema.js';
2
- export declare function renderSummaryHtml(run: RunSummary, failures: FailuresSummary): string;
1
+ import { renderClassicSummaryHtml } from './summary.classic.js';
2
+ import { renderModernSummaryHtml } from './summary.modern.js';
3
+ import type { PrivateReporterOptions, SummaryRenderContext } from '../types/schema.js';
4
+ export { renderClassicSummaryHtml, renderModernSummaryHtml };
5
+ export declare function renderSummaryHtml(context: SummaryRenderContext, options: PrivateReporterOptions): Promise<string>;
3
6
  //# sourceMappingURL=summary.html.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"summary.html.d.ts","sourceRoot":"","sources":["../../../src/templates/summary.html.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAWtE,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,GAAG,MAAM,CAsDpF"}
1
+ {"version":3,"file":"summary.html.d.ts","sourceRoot":"","sources":["../../../src/templates/summary.html.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAEV,sBAAsB,EACtB,oBAAoB,EAErB,MAAM,oBAAoB,CAAC;AAkC5B,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,CAAC;AAE7D,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,oBAAoB,EAC7B,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,MAAM,CAAC,CAYjB"}
@@ -1,61 +1,33 @@
1
- function escapeHtml(value) {
2
- return (value ?? '')
3
- .replaceAll('&', '&amp;')
4
- .replaceAll('<', '&lt;')
5
- .replaceAll('>', '&gt;')
6
- .replaceAll('"', '&quot;')
7
- .replaceAll("'", '&#39;');
1
+ import { resolve } from 'node:path';
2
+ import { renderClassicSummaryHtml } from './summary.classic.js';
3
+ import { renderModernSummaryHtml } from './summary.modern.js';
4
+ const BUILTIN_RENDERERS = {
5
+ classic: renderClassicSummaryHtml,
6
+ modern: renderModernSummaryHtml,
7
+ };
8
+ const dynamicImport = new Function('modulePath', 'return import(modulePath)');
9
+ function resolveSummaryTheme(options) {
10
+ return options.summaryTheme === 'classic' ? 'classic' : 'modern';
8
11
  }
9
- export function renderSummaryHtml(run, failures) {
10
- const failureItems = failures.groups
11
- .slice(0, 10)
12
- .map((group) => `
13
- <li>
14
- <strong>${escapeHtml(group.title)}</strong>
15
- <div>Fingerprint: <code>${escapeHtml(group.fingerprint)}</code></div>
16
- <div>Occurrences: ${group.countInRun}</div>
17
- <div>${escapeHtml(group.normalizedMessage)}</div>
18
- </li>`)
19
- .join('');
20
- return `<!DOCTYPE html>
21
- <html lang="en">
22
- <head>
23
- <meta charset="utf-8" />
24
- <meta name="viewport" content="width=device-width, initial-scale=1" />
25
- <title>${escapeHtml(run.projectName)} test summary</title>
26
- <style>
27
- body { font-family: Arial, sans-serif; margin: 2rem; color: #1f2937; }
28
- .grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
29
- .card { border: 1px solid #d1d5db; border-radius: 8px; padding: 1rem; background: #fff; }
30
- code { background: #f3f4f6; padding: 0.1rem 0.3rem; border-radius: 4px; }
31
- ul { padding-left: 1.25rem; }
32
- </style>
33
- </head>
34
- <body>
35
- <h1>${escapeHtml(run.projectName)} Playwright Summary</h1>
36
- <p>Status: <strong>${escapeHtml(run.run.status)}</strong></p>
37
- <div class="grid">
38
- <div class="card"><div>Passed</div><strong>${run.counts.passed}</strong></div>
39
- <div class="card"><div>Failed</div><strong>${run.counts.failed}</strong></div>
40
- <div class="card"><div>Skipped</div><strong>${run.counts.skipped}</strong></div>
41
- <div class="card"><div>Flaky</div><strong>${run.counts.flaky}</strong></div>
42
- </div>
43
- <h2>Build metadata</h2>
44
- <ul>
45
- <li>Build ID: ${escapeHtml(run.run.buildId)}</li>
46
- <li>Branch: ${escapeHtml(run.run.branch)}</li>
47
- <li>Commit: ${escapeHtml(run.run.commit)}</li>
48
- <li>Build URL: ${run.run.buildUrl ? `<a href="${escapeHtml(run.run.buildUrl)}">${escapeHtml(run.run.buildUrl)}</a>` : 'n/a'}</li>
49
- </ul>
50
- <h2>Failure groups</h2>
51
- <ul>${failureItems || '<li>No failing groups 🎉</li>'}</ul>
52
- <h2>Artifacts</h2>
53
- <ul>
54
- <li><a href="../playwright-report/index.html">Merged Playwright HTML report</a></li>
55
- <li><a href="../junit/results.xml">JUnit XML</a></li>
56
- <li><a href="../test-results/">Test results attachments</a></li>
57
- </ul>
58
- </body>
59
- </html>`;
12
+ async function loadSummaryRenderer(templatePath) {
13
+ const resolvedPath = resolve(templatePath);
14
+ const loadedModule = await dynamicImport(resolvedPath);
15
+ const renderer = loadedModule.renderSummary ?? loadedModule.default;
16
+ if (typeof renderer !== 'function') {
17
+ throw new Error(`Summary template "${resolvedPath}" must export a default function or a named "renderSummary" function.`);
18
+ }
19
+ return renderer;
20
+ }
21
+ export { renderClassicSummaryHtml, renderModernSummaryHtml };
22
+ export async function renderSummaryHtml(context, options) {
23
+ const theme = resolveSummaryTheme(options);
24
+ const renderer = options.summaryTemplatePath
25
+ ? await loadSummaryRenderer(options.summaryTemplatePath)
26
+ : BUILTIN_RENDERERS[theme];
27
+ const html = await renderer({ ...context, theme });
28
+ if (typeof html !== 'string') {
29
+ throw new Error('Summary renderer must return an HTML string.');
30
+ }
31
+ return html;
60
32
  }
61
33
  //# sourceMappingURL=summary.html.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"summary.html.js","sourceRoot":"","sources":["../../../src/templates/summary.html.ts"],"names":[],"mappings":"AAEA,SAAS,UAAU,CAAC,KAAyB;IAC3C,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;SACjB,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;SACxB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC;SACzB,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,GAAe,EAAE,QAAyB;IAC1E,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM;SACjC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;SACZ,GAAG,CACF,CAAC,KAAK,EAAE,EAAE,CAAC;;oBAEG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC;oCACP,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC;8BACnC,KAAK,CAAC,UAAU;iBAC7B,UAAU,CAAC,KAAK,CAAC,iBAAiB,CAAC;cACtC,CACT;SACA,IAAI,CAAC,EAAE,CAAC,CAAC;IAEZ,OAAO;;;;;aAKI,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC;;;;;;;;;;UAU9B,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC;yBACZ,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;;mDAEA,GAAG,CAAC,MAAM,CAAC,MAAM;mDACjB,GAAG,CAAC,MAAM,CAAC,MAAM;oDAChB,GAAG,CAAC,MAAM,CAAC,OAAO;kDACpB,GAAG,CAAC,MAAM,CAAC,KAAK;;;;sBAI5C,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC;oBAC7B,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;oBAC1B,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;uBACvB,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK;;;UAGvH,YAAY,IAAI,+BAA+B;;;;;;;;QAQjD,CAAC;AACT,CAAC"}
1
+ {"version":3,"file":"summary.html.js","sourceRoot":"","sources":["../../../src/templates/summary.html.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAa9D,MAAM,iBAAiB,GAAiD;IACtE,OAAO,EAAE,wBAAwB;IACjC,MAAM,EAAE,uBAAuB;CAChC,CAAC;AAEF,MAAM,aAAa,GAAG,IAAI,QAAQ,CAAC,YAAY,EAAE,2BAA2B,CAEzC,CAAC;AAEpC,SAAS,mBAAmB,CAAC,OAA+B;IAC1D,OAAO,OAAO,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;AACnE,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,YAAoB;IACrD,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,YAAY,CAAC,aAAa,IAAI,YAAY,CAAC,OAAO,CAAC;IAEpE,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CACb,qBAAqB,YAAY,uEAAuE,CACzG,CAAC;IACJ,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,CAAC;AAE7D,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAA6B,EAC7B,OAA+B;IAE/B,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,OAAO,CAAC,mBAAmB;QAC1C,CAAC,CAAC,MAAM,mBAAmB,CAAC,OAAO,CAAC,mBAAmB,CAAC;QACxD,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC7B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IAEnD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { SummaryRenderContext } from '../types/schema.js';
2
+ export declare function renderModernSummaryHtml(context: SummaryRenderContext): string;
3
+ //# sourceMappingURL=summary.modern.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"summary.modern.d.ts","sourceRoot":"","sources":["../../../src/templates/summary.modern.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgB,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAiG7E,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM,CA0c7E"}