@elisra-devops/docgen-skins 0.23.0 โ†’ 0.25.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 (65) hide show
  1. package/.github/workflows/ci.yml +18 -9
  2. package/.github/workflows/release.yml +22 -6
  3. package/Readme.md +11 -0
  4. package/bin/index.d.ts +12 -1
  5. package/bin/index.js +201 -16
  6. package/bin/index.js.map +1 -1
  7. package/bin/models/json/JSONRun.js +2 -0
  8. package/bin/models/json/JSONRun.js.map +1 -1
  9. package/bin/models/json/file/JSONFile.js.map +1 -1
  10. package/bin/models/json/paragraph/JSONParagraph.js.map +1 -1
  11. package/bin/models/json/paragraph/JSONRichTextParagraph.js.map +1 -1
  12. package/bin/models/json/paragraph/JSONTestSuiteHeaderParagraph.js +3 -0
  13. package/bin/models/json/paragraph/JSONTestSuiteHeaderParagraph.js.map +1 -1
  14. package/bin/models/json/table/JSONTable.d.ts +2 -1
  15. package/bin/models/json/table/JSONTable.js +20 -6
  16. package/bin/models/json/table/JSONTable.js.map +1 -1
  17. package/bin/models/json/table/JSONTableCell.js +2 -0
  18. package/bin/models/json/table/JSONTableCell.js.map +1 -1
  19. package/bin/models/json/table/JSONTableRow.js.map +1 -1
  20. package/bin/models/json/wordJsonModels.d.ts +5 -0
  21. package/bin/services/logger.js +17 -7
  22. package/bin/services/logger.js.map +1 -1
  23. package/bin/test/JSONFile.test.js +48 -0
  24. package/bin/test/JSONFile.test.js.map +1 -0
  25. package/bin/test/JSONRun.test.d.ts +1 -0
  26. package/bin/test/JSONRun.test.js +93 -0
  27. package/bin/test/JSONRun.test.js.map +1 -0
  28. package/bin/test/JSONTable.test.d.ts +1 -0
  29. package/bin/test/JSONTable.test.js +79 -0
  30. package/bin/test/JSONTable.test.js.map +1 -0
  31. package/bin/test/JSONTableCell.test.d.ts +1 -0
  32. package/bin/test/JSONTableCell.test.js +154 -0
  33. package/bin/test/JSONTableCell.test.js.map +1 -0
  34. package/bin/test/JSONTableRow.test.d.ts +1 -0
  35. package/bin/test/JSONTableRow.test.js +40 -0
  36. package/bin/test/JSONTableRow.test.js.map +1 -0
  37. package/bin/test/JSONTestSuiteHeaderParagraph.test.d.ts +1 -0
  38. package/bin/test/JSONTestSuiteHeaderParagraph.test.js +57 -0
  39. package/bin/test/JSONTestSuiteHeaderParagraph.test.js.map +1 -0
  40. package/bin/test/SkinsEdgeCases.test.d.ts +1 -0
  41. package/bin/test/SkinsEdgeCases.test.js +399 -0
  42. package/bin/test/SkinsEdgeCases.test.js.map +1 -0
  43. package/bin/test/integration/skins.integration.test.d.ts +1 -0
  44. package/bin/test/integration/skins.integration.test.js +533 -0
  45. package/bin/test/integration/skins.integration.test.js.map +1 -0
  46. package/package.json +5 -5
  47. package/src/index.ts +247 -10
  48. package/src/models/json/JSONRun.ts +2 -0
  49. package/src/models/json/paragraph/JSONTestSuiteHeaderParagraph.ts +4 -0
  50. package/src/models/json/table/JSONTable.ts +19 -3
  51. package/src/models/json/table/JSONTableCell.ts +1 -0
  52. package/src/models/json/wordJsonModels.ts +5 -0
  53. package/src/test/JSONFile.test.ts +59 -0
  54. package/src/test/JSONRun.test.ts +118 -0
  55. package/src/test/JSONTable.test.ts +126 -0
  56. package/src/test/JSONTableCell.test.ts +181 -0
  57. package/src/test/JSONTableRow.test.ts +42 -0
  58. package/src/test/JSONTestSuiteHeaderParagraph.test.ts +64 -0
  59. package/src/test/SkinsEdgeCases.test.ts +530 -0
  60. package/src/test/integration/skins.integration.test.ts +660 -0
  61. package/tsconfig.json +2 -2
  62. package/bin/test/skins.test.js +0 -126
  63. package/bin/test/skins.test.js.map +0 -1
  64. package/src/test/skins.test.ts +0 -189
  65. /package/bin/test/{skins.test.d.ts โ†’ JSONFile.test.d.ts} +0 -0
@@ -1,4 +1,4 @@
1
- name: "๐Ÿš€ ci"
1
+ name: '๐Ÿš€ ci'
2
2
 
3
3
  on:
4
4
  pull_request:
@@ -6,18 +6,27 @@ on:
6
6
  - main
7
7
  paths-ignore:
8
8
  - '.github/**'
9
-
9
+
10
10
  jobs:
11
11
  build_and_test:
12
- name: ๐Ÿš€ build and test
12
+ name: '๐Ÿš€ build and test'
13
13
  runs-on: ubuntu-latest
14
14
  steps:
15
15
  - name: ๐Ÿ“š checkout
16
- uses: actions/checkout@v2
16
+ uses: actions/checkout@v4
17
17
  - name: ๐ŸŸข node
18
- uses: actions/setup-node@v2
18
+ uses: actions/setup-node@v4
19
+ with:
20
+ node-version: 20
21
+ cache: 'npm'
22
+ - name: ๐Ÿ“ฆ install deps
23
+ run: npm ci
24
+ - name: ๐Ÿงช run tests (with coverage)
25
+ run: npm test
26
+ - name: โฌ†๏ธ upload coverage artifact
27
+ if: always()
28
+ uses: actions/upload-artifact@v4
19
29
  with:
20
- node-version: 14
21
- registry-url: https://registry.npmjs.org
22
- - run: npm install
23
- - run: npm run build
30
+ name: jest-coverage
31
+ path: coverage
32
+ if-no-files-found: ignore
@@ -1,4 +1,4 @@
1
- name: "๐Ÿš€ publish"
1
+ name: '๐Ÿš€ publish'
2
2
 
3
3
  on:
4
4
  push:
@@ -6,10 +6,13 @@ on:
6
6
  - main
7
7
  paths-ignore:
8
8
  - '.github/**'
9
-
9
+
10
10
  permissions:
11
11
  contents: write
12
- packages: write
12
+
13
+ concurrency:
14
+ group: publish-${{ github.ref }}
15
+ cancel-in-progress: false
13
16
 
14
17
  jobs:
15
18
  release:
@@ -20,8 +23,10 @@ jobs:
20
23
  - name: ๐Ÿ“š checkout
21
24
  uses: actions/checkout@v2
22
25
  with:
23
- token: ${{ secrets.ELISRADEVOPS_ACCESS_TOKEN }}
24
-
26
+ token: ${{ secrets.ELISRADEVOPS_ACCESS_TOKEN }}
27
+ ref: main
28
+ fetch-depth: 0
29
+
25
30
  - name: ๐ŸŸข node
26
31
  uses: actions/setup-node@v2
27
32
  with:
@@ -31,6 +36,7 @@ jobs:
31
36
  run: |
32
37
  echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_AUTH_TOKEN }}" > ~/.npmrc
33
38
  echo "registry=https://registry.npmjs.org" >> ~/.npmrc
39
+ echo "@elisra-devops:registry=https://registry.npmjs.org" >> ~/.npmrc
34
40
 
35
41
  - run: npm install
36
42
 
@@ -38,10 +44,20 @@ jobs:
38
44
 
39
45
  - name: 'Automated Version Bump'
40
46
  uses: 'phips28/gh-action-bump-version@master'
47
+ id: bump_version
41
48
  with:
42
49
  commit-message: 'CI: bumps version to {{version}} [skip ci]'
43
50
 
44
51
  - name: ๐Ÿš€ publish
45
- run: npm publish --access public
52
+ id: publish
53
+ run: npm publish --access public --registry https://registry.npmjs.org
46
54
  env:
47
55
  NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
56
+
57
+ - name: ๐Ÿ”„ rollback version bump on publish failure
58
+ if: failure() && steps.publish.outcome == 'failure'
59
+ run: |
60
+ git config user.email "github-actions[bot]@users.noreply.github.com"
61
+ git config user.name "github-actions[bot]"
62
+ git revert HEAD --no-edit
63
+ git push
package/Readme.md CHANGED
@@ -4,3 +4,14 @@ Can be outputed in various types:
4
4
 
5
5
  - JSON - default
6
6
  - HTML
7
+
8
+ ## Additional skins
9
+
10
+ - `time-machine-report` - builds the Historical Query Compare report structure used by DocGen (summary table, compare table, and per-work-item differences).
11
+
12
+ ## Release pipeline notes
13
+
14
+ - GitHub Actions publish workflow runs on `main` pushes.
15
+ - `npm publish` runs before version bump/tag.
16
+ - If current `package.json` version already exists on npm, publish and bump are skipped.
17
+ - On failed historical runs, prefer triggering a new run from latest `main` instead of rerunning an old workflow execution.
package/bin/index.d.ts CHANGED
@@ -6,12 +6,17 @@ export default class Skins {
6
6
  SKIN_TYPE_PARAGRAPH: string;
7
7
  SKIN_TYPE_COVER_PAGE: string;
8
8
  SKIN_TYPE_TEST_PLAN: string;
9
+ SKIN_TYPE_TEST_STD: string;
10
+ SKIN_TYPE_TEST_STP: string;
11
+ SKIN_TYPE_TEST_STR: string;
9
12
  SKIN_TYPE_SYSTEM_OVERVIEW: string;
10
13
  SKIN_TYPE_INSTALLATION: string;
11
14
  SKIN_TYPE_TEST_REPORTER: string;
15
+ SKIN_TYPE_TIME_MACHINE: string;
12
16
  documentSkin: DocumentSkin;
13
17
  skinFormat: string;
14
18
  constructor(skinFormat: string, templatePath: string);
19
+ private resolveSkinTypeAlias;
15
20
  addNewContentToDocumentSkin(contentControlTitle: string, skinType: string, data: any, headerStyles: StyleOptions, styles: StyleOptions, headingLvl?: number, includeAttachments?: boolean, insertPageBreak?: boolean, isFlattened?: boolean): Promise<any[]>;
16
21
  validateAndAppendContentControl(contetnControlTitle: string, populatedSkin: any): Promise<boolean>;
17
22
  generateQueryBasedTable(data: WIQueryResults, headerStyles: StyleOptions, styles: StyleOptions, headingLvl?: number): Table[];
@@ -25,7 +30,13 @@ export default class Skins {
25
30
  generateCoverPageParagraphs(data: any, styles: StyleOptions, headingLvl?: number): any[];
26
31
  generateQueryBasedParagraphs(data: any, styles: StyleOptions, headingLvl?: number): any[];
27
32
  generateTraceTable(data: any, headerStyles: StyleOptions, styles: StyleOptions, headingLvl?: number): any[];
28
- generateTestBasedSkin(suites: any, headerStyles: StyleOptions, styles: StyleOptions, headingLvl?: number, includeAttachments?: boolean, isFlattened?: boolean): any[];
33
+ generateTestBasedSkin(suites: any, headerStyles: StyleOptions, styles: StyleOptions, headingLvl?: number, includeAttachments?: boolean, isFlattened?: boolean, headingLevelOffset?: number): any[];
29
34
  private AppendAttachmentContent;
35
+ private formatTimeMachineDate;
36
+ private asText;
37
+ private createParagraphWordObject;
38
+ private createTextParagraphWordObject;
39
+ private createTableWordObject;
40
+ generateTimeMachineReport(data: any, headerStyles: StyleOptions, styles: StyleOptions, headingLvl?: number): any[];
30
41
  getDocumentSkin(): DocumentSkin;
31
42
  }
package/bin/index.js CHANGED
@@ -28,9 +28,13 @@ class Skins {
28
28
  this.SKIN_TYPE_PARAGRAPH = 'paragraph';
29
29
  this.SKIN_TYPE_COVER_PAGE = 'cover-page';
30
30
  this.SKIN_TYPE_TEST_PLAN = 'test-plan';
31
+ this.SKIN_TYPE_TEST_STD = 'test-std';
32
+ this.SKIN_TYPE_TEST_STP = 'test-stp';
33
+ this.SKIN_TYPE_TEST_STR = 'test-str';
31
34
  this.SKIN_TYPE_SYSTEM_OVERVIEW = 'system-overview';
32
35
  this.SKIN_TYPE_INSTALLATION = 'installation';
33
36
  this.SKIN_TYPE_TEST_REPORTER = 'test-reporter';
37
+ this.SKIN_TYPE_TIME_MACHINE = 'time-machine-report';
34
38
  this.documentSkin = {
35
39
  templatePath: '',
36
40
  contentControls: [],
@@ -45,11 +49,22 @@ class Skins {
45
49
  this.documentSkin.templatePath = templatePath;
46
50
  this.skinFormat = skinFormat;
47
51
  }
48
- addNewContentToDocumentSkin(contentControlTitle, skinType, data, headerStyles, styles, headingLvl = 0, includeAttachments = true, insertPageBreak, isFlattened = false) {
49
- return __awaiter(this, void 0, void 0, function* () {
52
+ resolveSkinTypeAlias(skinType) {
53
+ if (skinType === this.SKIN_TYPE_TEST_STD || skinType === this.SKIN_TYPE_TEST_STP) {
54
+ return this.SKIN_TYPE_TEST_PLAN;
55
+ }
56
+ if (skinType === this.SKIN_TYPE_TEST_STR) {
57
+ return this.SKIN_TYPE_TABLE_STR;
58
+ }
59
+ return skinType;
60
+ }
61
+ addNewContentToDocumentSkin(contentControlTitle_1, skinType_1, data_1, headerStyles_1, styles_1) {
62
+ return __awaiter(this, arguments, void 0, function* (contentControlTitle, skinType, data, headerStyles, styles, headingLvl = 0, includeAttachments = true, insertPageBreak, isFlattened = false) {
50
63
  try {
51
64
  let populatedSkin = [];
52
- switch (skinType) {
65
+ const isStpTestSkin = skinType === this.SKIN_TYPE_TEST_STP;
66
+ const normalizedSkinType = this.resolveSkinTypeAlias(skinType);
67
+ switch (normalizedSkinType) {
53
68
  case this.SKIN_TYPE_TABLE:
54
69
  populatedSkin = this.generateQueryBasedTable(data, headerStyles, styles, headingLvl);
55
70
  break;
@@ -67,7 +82,7 @@ class Skins {
67
82
  populatedSkin = this.generateCoverPageParagraphs(data, styles, headingLvl);
68
83
  break;
69
84
  case this.SKIN_TYPE_TEST_PLAN:
70
- populatedSkin = this.generateTestBasedSkin(data, headerStyles, styles, headingLvl, includeAttachments, isFlattened);
85
+ populatedSkin = this.generateTestBasedSkin(data, headerStyles, styles, headingLvl, includeAttachments, isFlattened, isStpTestSkin ? 1 : 0);
71
86
  break;
72
87
  case this.SKIN_TYPE_SYSTEM_OVERVIEW:
73
88
  populatedSkin = this.generateSystemOverviewSkin(data, styles);
@@ -78,6 +93,9 @@ class Skins {
78
93
  case this.SKIN_TYPE_TEST_REPORTER:
79
94
  populatedSkin = this.generateTestReporter(data, contentControlTitle);
80
95
  break;
96
+ case this.SKIN_TYPE_TIME_MACHINE:
97
+ populatedSkin = this.generateTimeMachineReport(data, headerStyles, styles, headingLvl);
98
+ break;
81
99
  default:
82
100
  throw new Error(`Unknown skinType : ${skinType} - not appended to document skin`);
83
101
  }
@@ -337,7 +355,7 @@ class Skins {
337
355
  traceSkin.push(traceTitle.getJSONParagraph());
338
356
  }
339
357
  if ((adoptedData === null || adoptedData === void 0 ? void 0 : adoptedData.length) > 0) {
340
- let tableSkin = new JSONTable_1.default(adoptedData, headerStyles, styles, headingLvl, undefined, undefined, false, groupedHeader);
358
+ let tableSkin = new JSONTable_1.default(adoptedData, headerStyles, styles, headingLvl, undefined, undefined, false, groupedHeader, true);
341
359
  traceSkin.push(tableSkin.getJSONTable());
342
360
  }
343
361
  else if (errorMessage !== null) {
@@ -357,7 +375,7 @@ class Skins {
357
375
  throw error;
358
376
  }
359
377
  } //generateTraceTable
360
- generateTestBasedSkin(suites, headerStyles, styles, headingLvl = 0, includeAttachments = true, isFlattened = false) {
378
+ generateTestBasedSkin(suites, headerStyles, styles, headingLvl = 0, includeAttachments = true, isFlattened = false, headingLevelOffset = 0) {
361
379
  var _a, _b;
362
380
  logger_1.default.debug(`Generating testSkin as ${this.skinFormat}`);
363
381
  let aggregatedErrors = [];
@@ -393,14 +411,14 @@ class Skins {
393
411
  InsertSpace: true,
394
412
  };
395
413
  let testSuiteParagraphSkin = new JSONTestSuiteHeaderParagraph_1.default(testSuite.suiteSkinData.fields, SuiteStyles, suiteId || 0, testSuite.suiteSkinData.level
396
- ? headingLvl + testSuite.suiteSkinData.level
414
+ ? headingLvl + testSuite.suiteSkinData.level + headingLevelOffset
397
415
  : headingLvl
398
- ? headingLvl
399
- : 1);
416
+ ? headingLvl + headingLevelOffset
417
+ : 1 + headingLevelOffset);
400
418
  testSkin.push(testSuiteParagraphSkin.getJSONParagraph());
401
419
  }
402
420
  testSuite.testCases.forEach((testcase) => {
403
- var _a, _b, _c;
421
+ var _a, _b, _c, _d;
404
422
  //create testcase Header paragraph
405
423
  let testCaseHeaderFields = [
406
424
  testcase.testCaseHeaderSkinData.fields[0],
@@ -417,16 +435,29 @@ class Skins {
417
435
  InsertSpace: true,
418
436
  };
419
437
  let testCaseParagraphSkin = new JSONTestSuiteHeaderParagraph_1.default(testCaseHeaderFields, TestCaseStyles, testcase.id || 0, testcase.testCaseHeaderSkinData.level
420
- ? headingLvl + testcase.testCaseHeaderSkinData.level
438
+ ? headingLvl + testcase.testCaseHeaderSkinData.level + headingLevelOffset
421
439
  : headingLvl
422
- ? headingLvl
423
- : 1);
440
+ ? headingLvl + headingLevelOffset
441
+ : 1 + headingLevelOffset);
424
442
  testSkin.push(testCaseParagraphSkin.getJSONParagraph());
425
443
  let testDescriptionTitleParagraph = new JSONParagraph_1.default({ name: 'Title', value: 'Test Description:' }, default_1.DescriptionandProcedureStyle, testcase.id || 0, 0);
426
444
  testSkin.push(testDescriptionTitleParagraph.getJSONParagraph());
427
445
  let testDescriptionParagraph = new JSONRichTextParagraph_1.default(testcase.testCaseHeaderSkinData.fields[2], styles, testcase.id || 0, 0);
428
446
  let richTextSkin = testDescriptionParagraph.getJSONRichTextParagraph();
429
447
  testSkin = [...testSkin, ...richTextSkin];
448
+ const additionalTestCaseFields = Array.isArray((_a = testcase.testCaseHeaderSkinData) === null || _a === void 0 ? void 0 : _a.fields)
449
+ ? testcase.testCaseHeaderSkinData.fields.slice(3)
450
+ : [];
451
+ additionalTestCaseFields.forEach((field) => {
452
+ var _a;
453
+ const name = String((field === null || field === void 0 ? void 0 : field.name) || '').trim();
454
+ const value = String((_a = field === null || field === void 0 ? void 0 : field.value) !== null && _a !== void 0 ? _a : '').trim();
455
+ if (!value)
456
+ return;
457
+ const combinedValue = name ? `${name}: ${value}` : value;
458
+ const paragraph = new JSONParagraph_1.default({ name: '', value: combinedValue }, styles, testcase.id || 0, 0);
459
+ testSkin.push(paragraph.getJSONParagraph());
460
+ });
430
461
  if (testcase.testCaseRequirements) {
431
462
  if (testcase.testCaseRequirements.length > 0) {
432
463
  let testDescriptionTitleParagraph = new JSONParagraph_1.default({ name: 'Title', value: 'Covered Requirements:' }, default_1.DescriptionandProcedureStyle, testcase.id || 0, 0);
@@ -458,7 +489,7 @@ class Skins {
458
489
  }
459
490
  }
460
491
  try {
461
- if (((_a = testcase.testCaseStepsSkinData) === null || _a === void 0 ? void 0 : _a.length) > 0) {
492
+ if (((_b = testcase.testCaseStepsSkinData) === null || _b === void 0 ? void 0 : _b.length) > 0) {
462
493
  let testProcedureTitleParagraph = new JSONParagraph_1.default({ name: 'Title', value: 'Test Procedure:' }, default_1.DescriptionandProcedureStyle, testcase.id || 0, 0);
463
494
  testSkin.push(testProcedureTitleParagraph.getJSONParagraph());
464
495
  //create test steps table
@@ -473,7 +504,7 @@ class Skins {
473
504
  logger_1.default.error(`Error occurred when building test steps ${error.message}}`);
474
505
  aggregatedErrors.push(error.message);
475
506
  }
476
- if (((_b = testcase.testCaseDocAttachmentsAdoptedData) === null || _b === void 0 ? void 0 : _b.stepLevel) &&
507
+ if (((_c = testcase.testCaseDocAttachmentsAdoptedData) === null || _c === void 0 ? void 0 : _c.stepLevel) &&
477
508
  testcase.testCaseDocAttachmentsAdoptedData.stepLevel.length > 0) {
478
509
  this.AppendAttachmentContent(testcase.testCaseDocAttachmentsAdoptedData.stepLevel, testSkin, aggregatedErrors);
479
510
  }
@@ -494,7 +525,7 @@ class Skins {
494
525
  logger_1.default.error(`Error occurred when building attachments ${error.message}}`);
495
526
  aggregatedErrors.push(error.message);
496
527
  }
497
- if (((_c = testcase.testCaseDocAttachmentsAdoptedData) === null || _c === void 0 ? void 0 : _c.testCaseLevel) &&
528
+ if (((_d = testcase.testCaseDocAttachmentsAdoptedData) === null || _d === void 0 ? void 0 : _d.testCaseLevel) &&
498
529
  testcase.testCaseDocAttachmentsAdoptedData.testCaseLevel.length > 0) {
499
530
  this.AppendAttachmentContent(testcase.testCaseDocAttachmentsAdoptedData.testCaseLevel, testSkin, aggregatedErrors);
500
531
  }
@@ -556,6 +587,160 @@ class Skins {
556
587
  aggregatedErrors.push(error.message);
557
588
  }
558
589
  }
590
+ formatTimeMachineDate(value) {
591
+ if (!value)
592
+ return '';
593
+ const parsed = new Date(value);
594
+ if (Number.isNaN(parsed.getTime()))
595
+ return String(value);
596
+ const month = parsed.toLocaleString('en-US', { month: 'long' });
597
+ const day = String(parsed.getDate()).padStart(2, '0');
598
+ const year = parsed.getFullYear();
599
+ const hours = String(parsed.getHours()).padStart(2, '0');
600
+ const minutes = String(parsed.getMinutes()).padStart(2, '0');
601
+ return `${month} ${day}, ${year} ${hours}:${minutes}`;
602
+ }
603
+ asText(value) {
604
+ if (value === null || value === undefined)
605
+ return '';
606
+ if (typeof value === 'string')
607
+ return value;
608
+ if (typeof value === 'number' || typeof value === 'boolean')
609
+ return String(value);
610
+ if (typeof value === 'object') {
611
+ try {
612
+ return JSON.stringify(value);
613
+ }
614
+ catch (_a) {
615
+ return String(value);
616
+ }
617
+ }
618
+ return String(value);
619
+ }
620
+ createParagraphWordObject(value, style, headingLevel = 0) {
621
+ const paragraph = new JSONParagraph_1.default({ name: 'Title', value }, Object.assign({}, style), 0, headingLevel);
622
+ return paragraph.getJSONParagraph();
623
+ }
624
+ createTextParagraphWordObject(value, style) {
625
+ const paragraph = new JSONParagraph_1.default({ name: '', value }, Object.assign({}, style), 0, 0);
626
+ return paragraph.getJSONParagraph();
627
+ }
628
+ createTableWordObject(rows, headerStyles, styles) {
629
+ if (!Array.isArray(rows) || rows.length === 0)
630
+ return null;
631
+ const table = new JSONTable_1.default(rows, Object.assign({}, headerStyles), Object.assign({}, styles), 0);
632
+ return table.getJSONTable();
633
+ }
634
+ generateTimeMachineReport(data, headerStyles, styles, headingLvl = 1) {
635
+ var _a, _b, _c, _d;
636
+ const reportData = (data === null || data === void 0 ? void 0 : data.compareResult) ? data.compareResult : data || {};
637
+ const queryName = this.asText((data === null || data === void 0 ? void 0 : data.queryName) || (reportData === null || reportData === void 0 ? void 0 : reportData.queryName) || '');
638
+ const teamProjectName = this.asText((data === null || data === void 0 ? void 0 : data.teamProjectName) || (reportData === null || reportData === void 0 ? void 0 : reportData.teamProjectName) || '');
639
+ const baselineAsOf = ((_a = reportData === null || reportData === void 0 ? void 0 : reportData.baseline) === null || _a === void 0 ? void 0 : _a.asOf) || '';
640
+ const compareToAsOf = ((_b = reportData === null || reportData === void 0 ? void 0 : reportData.compareTo) === null || _b === void 0 ? void 0 : _b.asOf) || '';
641
+ const baselineTotal = Number(((_c = reportData === null || reportData === void 0 ? void 0 : reportData.baseline) === null || _c === void 0 ? void 0 : _c.total) || 0);
642
+ const compareToTotal = Number(((_d = reportData === null || reportData === void 0 ? void 0 : reportData.compareTo) === null || _d === void 0 ? void 0 : _d.total) || 0);
643
+ const summary = (reportData === null || reportData === void 0 ? void 0 : reportData.summary) || {};
644
+ const updatedCount = Number((summary === null || summary === void 0 ? void 0 : summary.updatedCount) || 0);
645
+ const rows = Array.isArray(reportData === null || reportData === void 0 ? void 0 : reportData.rows) ? reportData.rows : [];
646
+ const changedRows = rows.filter((row) => String((row === null || row === void 0 ? void 0 : row.compareStatus) || '').toLowerCase() === 'changed');
647
+ const titleStyles = Object.assign(Object.assign({}, styles), { isBold: true, InsertLineBreak: false, InsertSpace: false });
648
+ const normalStyles = Object.assign(Object.assign({}, styles), { isBold: false, InsertLineBreak: false, InsertSpace: false });
649
+ const tableHeaderStyles = Object.assign(Object.assign({}, headerStyles), { isBold: true, InsertLineBreak: false, InsertSpace: false });
650
+ const reportWordObjects = [];
651
+ reportWordObjects.push(this.createParagraphWordObject('Difference', titleStyles, Math.max(1, headingLvl)));
652
+ reportWordObjects.push(this.createTextParagraphWordObject(`Project: ${teamProjectName || 'N/A'}`, normalStyles));
653
+ if (queryName) {
654
+ reportWordObjects.push(this.createTextParagraphWordObject(`Query: ${queryName}`, normalStyles));
655
+ }
656
+ const compareSummaryTableRows = [
657
+ {
658
+ url: '',
659
+ fields: [
660
+ { name: 'Point', value: 'Baseline', width: '20%' },
661
+ { name: 'Time', value: this.formatTimeMachineDate(baselineAsOf), width: '50%' },
662
+ { name: '# Sum of Work-Items', value: String(baselineTotal), width: '30%' },
663
+ ],
664
+ Source: 0,
665
+ level: 0,
666
+ },
667
+ {
668
+ url: '',
669
+ fields: [
670
+ { name: 'Point', value: 'Compare to', width: '20%' },
671
+ { name: 'Time', value: this.formatTimeMachineDate(compareToAsOf), width: '50%' },
672
+ { name: '# Sum of Work-Items', value: String(compareToTotal), width: '30%' },
673
+ ],
674
+ Source: 0,
675
+ level: 0,
676
+ },
677
+ ];
678
+ const compareSummaryTable = this.createTableWordObject(compareSummaryTableRows, tableHeaderStyles, normalStyles);
679
+ if (compareSummaryTable) {
680
+ reportWordObjects.push(compareSummaryTable);
681
+ }
682
+ reportWordObjects.push(this.createParagraphWordObject('Summarize', titleStyles, Math.max(1, headingLvl + 2)));
683
+ reportWordObjects.push(this.createTextParagraphWordObject(`# Sum of Work-Items updated: ${updatedCount}`, normalStyles));
684
+ if (rows.length > 0) {
685
+ const compareRows = rows.map((row) => ({
686
+ url: (row === null || row === void 0 ? void 0 : row.workItemUrl) || '',
687
+ fields: [
688
+ { name: 'ID', value: this.asText(row === null || row === void 0 ? void 0 : row.id), url: (row === null || row === void 0 ? void 0 : row.workItemUrl) || '', width: '9%' },
689
+ { name: 'Work Item Type', value: this.asText(row === null || row === void 0 ? void 0 : row.workItemType), width: '14%' },
690
+ { name: 'Title', value: this.asText(row === null || row === void 0 ? void 0 : row.title), width: '34%' },
691
+ { name: 'Id Revision of Baseline', value: this.asText(row === null || row === void 0 ? void 0 : row.baselineRevisionId), width: '14%' },
692
+ { name: 'Id Revision of CompareTo', value: this.asText(row === null || row === void 0 ? void 0 : row.compareToRevisionId), width: '14%' },
693
+ { name: 'Compare Status', value: this.asText(row === null || row === void 0 ? void 0 : row.compareStatus), width: '15%' },
694
+ ],
695
+ Source: Number((row === null || row === void 0 ? void 0 : row.id) || 0),
696
+ level: 0,
697
+ }));
698
+ const compareTable = this.createTableWordObject(compareRows, tableHeaderStyles, normalStyles);
699
+ if (compareTable) {
700
+ reportWordObjects.push(compareTable);
701
+ }
702
+ }
703
+ else {
704
+ reportWordObjects.push(this.createTextParagraphWordObject('No work-items were returned.', normalStyles));
705
+ }
706
+ reportWordObjects.push(this.createParagraphWordObject('2. Work Item Differences', titleStyles, Math.max(1, headingLvl + 2)));
707
+ if (changedRows.length === 0) {
708
+ reportWordObjects.push(this.createTextParagraphWordObject('No work-items were marked as Changed between the selected date-times.', normalStyles));
709
+ return reportWordObjects;
710
+ }
711
+ changedRows.forEach((row) => {
712
+ const baselineRevision = this.asText((row === null || row === void 0 ? void 0 : row.baselineRevisionId) || '');
713
+ const compareRevision = this.asText((row === null || row === void 0 ? void 0 : row.compareToRevisionId) || '');
714
+ const differences = Array.isArray(row === null || row === void 0 ? void 0 : row.differences) ? row.differences : [];
715
+ const itemTitle = `${this.asText(row === null || row === void 0 ? void 0 : row.workItemType)} ${this.asText(row === null || row === void 0 ? void 0 : row.id)} Changed between version ${baselineRevision} and ${compareRevision}`;
716
+ reportWordObjects.push(this.createParagraphWordObject(itemTitle.trim(), titleStyles, Math.max(1, headingLvl + 3)));
717
+ if (differences.length === 0) {
718
+ reportWordObjects.push(this.createTextParagraphWordObject('No field differences found.', normalStyles));
719
+ return;
720
+ }
721
+ differences.forEach((diff) => {
722
+ reportWordObjects.push(this.createTextParagraphWordObject(`${this.asText(diff === null || diff === void 0 ? void 0 : diff.field)}:`, Object.assign(Object.assign({}, normalStyles), { isBold: true })));
723
+ const baselineValue = [baselineRevision, this.asText(diff === null || diff === void 0 ? void 0 : diff.baseline)].filter(Boolean).join(' ');
724
+ const compareValue = [compareRevision, this.asText(diff === null || diff === void 0 ? void 0 : diff.compareTo)].filter(Boolean).join(' ');
725
+ const diffTableRows = [
726
+ {
727
+ url: '',
728
+ fields: [
729
+ { name: 'Baseline', value: baselineValue, width: '50%' },
730
+ { name: 'Compare to', value: compareValue, width: '50%' },
731
+ ],
732
+ Source: Number((row === null || row === void 0 ? void 0 : row.id) || 0),
733
+ level: 0,
734
+ },
735
+ ];
736
+ const diffTable = this.createTableWordObject(diffTableRows, tableHeaderStyles, normalStyles);
737
+ if (diffTable) {
738
+ reportWordObjects.push(diffTable);
739
+ }
740
+ });
741
+ });
742
+ return reportWordObjects;
743
+ }
559
744
  getDocumentSkin() {
560
745
  return this.documentSkin;
561
746
  } //getDocumentSkin
package/bin/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -52,6 +52,7 @@ class JSONRun {
52
52
  run.InsertLineBreak = style.InsertLineBreak;
53
53
  }
54
54
  run.InsertSpace = style.InsertSpace;
55
+ run.SectionRefId = style.SectionRefId || null;
55
56
  runs.push(JSON.parse(JSON.stringify(run)));
56
57
  });
57
58
  }
@@ -72,6 +73,7 @@ class JSONRun {
72
73
  runs[0].Font = style.Font;
73
74
  runs[0].InsertLineBreak = style.InsertLineBreak;
74
75
  runs[0].InsertSpace = style.InsertSpace;
76
+ runs[0].SectionRefId = style.SectionRefId || null;
75
77
  }
76
78
  return runs;
77
79
  } //generateJsonRun
@@ -1 +1 @@
1
- {"version":3,"file":"JSONRun.js","sourceRoot":"","sources":["../../../src/models/json/JSONRun.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JSONRun.js","sourceRoot":"","sources":["../../../src/models/json/JSONRun.ts"],"names":[],"mappings":"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"}