@cms-lab/reporter 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +22 -0
  2. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -24,6 +24,7 @@ function renderHtmlReport(result) {
24
24
  const status = result.summary.errors > 0 ? "failed" : "passed";
25
25
  const statusClass = result.summary.errors > 0 ? "fail" : result.summary.warnings > 0 ? "warn" : "ok";
26
26
  const grouped = groupDiagnostics(diagnostics);
27
+ const documentStats = summarizeDocuments(result);
27
28
  return `<!doctype html>
28
29
  <html lang="en">
29
30
  <head>
@@ -204,6 +205,12 @@ function renderHtmlReport(result) {
204
205
  color: var(--ink);
205
206
  margin-top: 4px;
206
207
  }
208
+ .stat .sub {
209
+ font-family: var(--mono);
210
+ font-size: 11px;
211
+ color: var(--muted);
212
+ margin-top: 2px;
213
+ }
207
214
  .stat.err .v { color: var(--error); }
208
215
  .report-toolbar {
209
216
  display: flex;
@@ -417,6 +424,8 @@ function renderHtmlReport(result) {
417
424
  <div class="stat warn"><div class="k">Warnings</div><div class="v">${result.summary.warnings}</div></div>
418
425
  <div class="stat info"><div class="k">Info</div><div class="v">${result.summary.info}</div></div>
419
426
  <div class="stat"><div class="k">Documents</div><div class="v">${result.documents.length}</div></div>
427
+ ${documentStats.hasEntryKinds ? `<div class="stat"><div class="k">Collections</div><div class="v">${documentStats.collections}</div><div class="sub">${documentStats.collections} ${escapeHtml(plural(documentStats.collections, "collection"))}</div></div>
428
+ <div class="stat"><div class="k">Single types</div><div class="v">${documentStats.singleTypes}</div><div class="sub">${documentStats.singleTypes} ${escapeHtml(plural(documentStats.singleTypes, "single type"))}</div></div>` : ""}
420
429
  </div>
421
430
 
422
431
  <div class="report-toolbar" aria-label="Diagnostic filters">
@@ -484,6 +493,19 @@ function renderHtmlReport(result) {
484
493
  </html>
485
494
  `;
486
495
  }
496
+ function summarizeDocuments(result) {
497
+ const collections = result.documents.filter(
498
+ (document) => document.entryKind === "collection"
499
+ ).length;
500
+ const singleTypes = result.documents.filter(
501
+ (document) => document.entryKind === "single"
502
+ ).length;
503
+ return {
504
+ collections,
505
+ singleTypes,
506
+ hasEntryKinds: collections > 0 || singleTypes > 0
507
+ };
508
+ }
487
509
  function statusLabel(result) {
488
510
  if (result.summary.errors > 0) {
489
511
  return `${result.summary.errors} ${plural(result.summary.errors, "error")}`;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cms-lab/reporter",
3
- "version": "1.1.0",
3
+ "version": "1.2.0",
4
4
  "type": "module",
5
5
  "description": "HTML report rendering for cms-lab.",
6
6
  "license": "MIT",
@@ -35,7 +35,7 @@
35
35
  "access": "public"
36
36
  },
37
37
  "dependencies": {
38
- "@cms-lab/core": "1.1.0"
38
+ "@cms-lab/core": "1.2.0"
39
39
  },
40
40
  "author": "Afaq Rashid",
41
41
  "scripts": {