@salesforce/plugin-omnistudio-migration-tool 2.0.0-rc.4 → 2.0.0-rc.41

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 (163) hide show
  1. package/README.md +28 -40
  2. package/lib/commands/omnistudio/migration/assess.d.ts +1 -1
  3. package/lib/commands/omnistudio/migration/assess.js +107 -37
  4. package/lib/commands/omnistudio/migration/assess.js.map +1 -1
  5. package/lib/commands/omnistudio/migration/info.js +1 -1
  6. package/lib/commands/omnistudio/migration/info.js.map +1 -1
  7. package/lib/commands/omnistudio/migration/migrate.d.ts +35 -5
  8. package/lib/commands/omnistudio/migration/migrate.js +262 -107
  9. package/lib/commands/omnistudio/migration/migrate.js.map +1 -1
  10. package/lib/javascripts/reportGeneratorUtility.js +100 -19
  11. package/lib/migration/NameMappingRegistry.d.ts +130 -0
  12. package/lib/migration/NameMappingRegistry.js +376 -0
  13. package/lib/migration/NameMappingRegistry.js.map +1 -0
  14. package/lib/migration/base.d.ts +4 -2
  15. package/lib/migration/base.js +8 -1
  16. package/lib/migration/base.js.map +1 -1
  17. package/lib/migration/customLabels.d.ts +49 -0
  18. package/lib/migration/customLabels.js +190 -0
  19. package/lib/migration/customLabels.js.map +1 -0
  20. package/lib/migration/dataraptor.js +63 -14
  21. package/lib/migration/dataraptor.js.map +1 -1
  22. package/lib/migration/deployer.d.ts +11 -0
  23. package/lib/migration/deployer.js +59 -0
  24. package/lib/migration/deployer.js.map +1 -0
  25. package/lib/migration/flexcard.d.ts +44 -2
  26. package/lib/migration/flexcard.js +707 -110
  27. package/lib/migration/flexcard.js.map +1 -1
  28. package/lib/migration/globalautonumber.d.ts +6 -6
  29. package/lib/migration/globalautonumber.js +27 -34
  30. package/lib/migration/globalautonumber.js.map +1 -1
  31. package/lib/migration/interfaces.d.ts +5 -0
  32. package/lib/migration/interfaces.js +7 -0
  33. package/lib/migration/interfaces.js.map +1 -1
  34. package/lib/migration/omniscript.d.ts +42 -2
  35. package/lib/migration/omniscript.js +724 -100
  36. package/lib/migration/omniscript.js.map +1 -1
  37. package/lib/migration/postMigrate.d.ts +22 -3
  38. package/lib/migration/postMigrate.js +147 -12
  39. package/lib/migration/postMigrate.js.map +1 -1
  40. package/lib/migration/premigrate.d.ts +16 -0
  41. package/lib/migration/premigrate.js +122 -0
  42. package/lib/migration/premigrate.js.map +1 -0
  43. package/lib/migration/related/ApexMigration.d.ts +1 -0
  44. package/lib/migration/related/ApexMigration.js +143 -22
  45. package/lib/migration/related/ApexMigration.js.map +1 -1
  46. package/lib/migration/related/ExperienceSiteMigration.d.ts +12 -4
  47. package/lib/migration/related/ExperienceSiteMigration.js +127 -59
  48. package/lib/migration/related/ExperienceSiteMigration.js.map +1 -1
  49. package/lib/migration/related/FlexipageMigration.d.ts +4 -4
  50. package/lib/migration/related/FlexipageMigration.js +31 -30
  51. package/lib/migration/related/FlexipageMigration.js.map +1 -1
  52. package/lib/migration/related/LwcMigration.js +27 -16
  53. package/lib/migration/related/LwcMigration.js.map +1 -1
  54. package/lib/migration/related/OmnistudioRelatedObjectMigrationFacade.js +30 -24
  55. package/lib/migration/related/OmnistudioRelatedObjectMigrationFacade.js.map +1 -1
  56. package/lib/styles/reportGenerator.css +9 -5
  57. package/lib/templates/assessmentReport.template +67 -6
  58. package/lib/templates/migrationReport.template +146 -4
  59. package/lib/utils/OmnistudioSettingsPrefManager.d.ts +12 -0
  60. package/lib/utils/OmnistudioSettingsPrefManager.js +82 -0
  61. package/lib/utils/OmnistudioSettingsPrefManager.js.map +1 -0
  62. package/lib/utils/XMLUtil.js +2 -1
  63. package/lib/utils/XMLUtil.js.map +1 -1
  64. package/lib/utils/apex/parser/apexparser.d.ts +8 -1
  65. package/lib/utils/apex/parser/apexparser.js +63 -10
  66. package/lib/utils/apex/parser/apexparser.js.map +1 -1
  67. package/lib/utils/constants/documentRegistry.d.ts +2 -1
  68. package/lib/utils/constants/documentRegistry.js +4 -3
  69. package/lib/utils/constants/documentRegistry.js.map +1 -1
  70. package/lib/utils/constants/stringContants.d.ts +7 -0
  71. package/lib/utils/constants/stringContants.js +10 -2
  72. package/lib/utils/constants/stringContants.js.map +1 -1
  73. package/lib/utils/customLabels.d.ts +34 -0
  74. package/lib/utils/customLabels.js +97 -0
  75. package/lib/utils/customLabels.js.map +1 -0
  76. package/lib/utils/file/fileUtil.d.ts +3 -1
  77. package/lib/utils/file/fileUtil.js +11 -4
  78. package/lib/utils/file/fileUtil.js.map +1 -1
  79. package/lib/utils/flexipage/flexiPageTransformer.js +14 -10
  80. package/lib/utils/flexipage/flexiPageTransformer.js.map +1 -1
  81. package/lib/utils/generatePackageXml.d.ts +4 -2
  82. package/lib/utils/generatePackageXml.js +17 -23
  83. package/lib/utils/generatePackageXml.js.map +1 -1
  84. package/lib/utils/interfaces.d.ts +36 -3
  85. package/lib/utils/logger.js +3 -1
  86. package/lib/utils/logger.js.map +1 -1
  87. package/lib/utils/lwcparser/fileutils/FileDiffUtil.js +20 -21
  88. package/lib/utils/lwcparser/fileutils/FileDiffUtil.js.map +1 -1
  89. package/lib/utils/lwcparser/xmlParser/XmlParser.js +2 -1
  90. package/lib/utils/lwcparser/xmlParser/XmlParser.js.map +1 -1
  91. package/lib/utils/orgPreferences.d.ts +1 -0
  92. package/lib/utils/orgPreferences.js +11 -8
  93. package/lib/utils/orgPreferences.js.map +1 -1
  94. package/lib/utils/orgUtils/index.d.ts +1 -1
  95. package/lib/utils/orgUtils/index.js +14 -14
  96. package/lib/utils/orgUtils/index.js.map +1 -1
  97. package/lib/utils/promptUtil.d.ts +2 -0
  98. package/lib/utils/promptUtil.js +26 -1
  99. package/lib/utils/promptUtil.js.map +1 -1
  100. package/lib/utils/reportGenerator/reportInterfaces.d.ts +9 -0
  101. package/lib/utils/reportGenerator/reportUtil.d.ts +1 -1
  102. package/lib/utils/reportGenerator/reportUtil.js +6 -3
  103. package/lib/utils/reportGenerator/reportUtil.js.map +1 -1
  104. package/lib/utils/resultsbuilder/ApexAssessmentReporter.d.ts +2 -0
  105. package/lib/utils/resultsbuilder/ApexAssessmentReporter.js +51 -15
  106. package/lib/utils/resultsbuilder/ApexAssessmentReporter.js.map +1 -1
  107. package/lib/utils/resultsbuilder/CustomLabelAssessmentReporter.d.ts +13 -0
  108. package/lib/utils/resultsbuilder/CustomLabelAssessmentReporter.js +178 -0
  109. package/lib/utils/resultsbuilder/CustomLabelAssessmentReporter.js.map +1 -0
  110. package/lib/utils/resultsbuilder/CustomLabelMigrationReporter.d.ts +19 -0
  111. package/lib/utils/resultsbuilder/CustomLabelMigrationReporter.js +239 -0
  112. package/lib/utils/resultsbuilder/CustomLabelMigrationReporter.js.map +1 -0
  113. package/lib/utils/resultsbuilder/DRAssessmentReporter.js +43 -11
  114. package/lib/utils/resultsbuilder/DRAssessmentReporter.js.map +1 -1
  115. package/lib/utils/resultsbuilder/ExperienceSiteAssessmentReporter.d.ts +13 -0
  116. package/lib/utils/resultsbuilder/ExperienceSiteAssessmentReporter.js +111 -0
  117. package/lib/utils/resultsbuilder/ExperienceSiteAssessmentReporter.js.map +1 -0
  118. package/lib/utils/resultsbuilder/FlexcardAssessmentReporter.js +51 -12
  119. package/lib/utils/resultsbuilder/FlexcardAssessmentReporter.js.map +1 -1
  120. package/lib/utils/resultsbuilder/FlexipageAssessmentReporter.d.ts +1 -0
  121. package/lib/utils/resultsbuilder/FlexipageAssessmentReporter.js +40 -18
  122. package/lib/utils/resultsbuilder/FlexipageAssessmentReporter.js.map +1 -1
  123. package/lib/utils/resultsbuilder/GlobalAutoNumberAssessmentReporter.js +21 -14
  124. package/lib/utils/resultsbuilder/GlobalAutoNumberAssessmentReporter.js.map +1 -1
  125. package/lib/utils/resultsbuilder/IPAssessmentReporter.js +47 -12
  126. package/lib/utils/resultsbuilder/IPAssessmentReporter.js.map +1 -1
  127. package/lib/utils/resultsbuilder/LWCAssessmentReporter.d.ts +14 -0
  128. package/lib/utils/resultsbuilder/LWCAssessmentReporter.js +143 -139
  129. package/lib/utils/resultsbuilder/LWCAssessmentReporter.js.map +1 -1
  130. package/lib/utils/resultsbuilder/OSAssessmentReporter.js +31 -18
  131. package/lib/utils/resultsbuilder/OSAssessmentReporter.js.map +1 -1
  132. package/lib/utils/resultsbuilder/assessmentReporter.d.ts +6 -1
  133. package/lib/utils/resultsbuilder/assessmentReporter.js +163 -66
  134. package/lib/utils/resultsbuilder/assessmentReporter.js.map +1 -1
  135. package/lib/utils/resultsbuilder/index.d.ts +12 -1
  136. package/lib/utils/resultsbuilder/index.js +343 -84
  137. package/lib/utils/resultsbuilder/index.js.map +1 -1
  138. package/lib/utils/resultsbuilder/reportingHelper.d.ts +2 -7
  139. package/lib/utils/resultsbuilder/reportingHelper.js +0 -43
  140. package/lib/utils/resultsbuilder/reportingHelper.js.map +1 -1
  141. package/lib/utils/sfcli/project/sfProject.d.ts +4 -0
  142. package/lib/utils/sfcli/project/sfProject.js +56 -1
  143. package/lib/utils/sfcli/project/sfProject.js.map +1 -1
  144. package/lib/utils/shell/cli.js +3 -7
  145. package/lib/utils/shell/cli.js.map +1 -1
  146. package/lib/utils/storageUtil.d.ts +1 -0
  147. package/lib/utils/storageUtil.js +3 -0
  148. package/lib/utils/storageUtil.js.map +1 -1
  149. package/lib/utils/stringUtils.d.ts +9 -0
  150. package/lib/utils/stringUtils.js +38 -7
  151. package/lib/utils/stringUtils.js.map +1 -1
  152. package/lib/utils/templateParser/model/elementNode.js +11 -2
  153. package/lib/utils/templateParser/model/elementNode.js.map +1 -1
  154. package/lib/utils/validatorService.d.ts +13 -0
  155. package/lib/utils/validatorService.js +69 -0
  156. package/lib/utils/validatorService.js.map +1 -0
  157. package/messages/assess.json +125 -55
  158. package/messages/migrate.json +172 -53
  159. package/oclif.manifest.json +1 -1
  160. package/package.json +40 -7
  161. package/lib/utils/OmniGlobalAutoNumberPrefManager.d.ts +0 -40
  162. package/lib/utils/OmniGlobalAutoNumberPrefManager.js +0 -65
  163. package/lib/utils/OmniGlobalAutoNumberPrefManager.js.map +0 -1
@@ -0,0 +1,239 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CustomLabelMigrationReporter = void 0;
4
+ const reportUtil_1 = require("../reportGenerator/reportUtil");
5
+ class CustomLabelMigrationReporter {
6
+ static getCustomLabelMigrationData(customLabelMigrationInfos, instanceUrl, omnistudioOrgDetails, page = 1, pageSize = 1000) {
7
+ // Sort labels by name for consistent ordering
8
+ const sortedLabels = [...customLabelMigrationInfos].sort((a, b) => a.labelName.localeCompare(b.labelName));
9
+ const totalLabels = sortedLabels.length;
10
+ const totalPages = Math.ceil(totalLabels / pageSize);
11
+ const startIndex = (page - 1) * pageSize;
12
+ const endIndex = startIndex + pageSize;
13
+ const paginatedLabels = sortedLabels.slice(startIndex, endIndex);
14
+ // Create flattened data object
15
+ const data = {
16
+ title: 'Custom Labels Migration Report',
17
+ heading: 'Custom Labels Migration Report',
18
+ org: {
19
+ name: omnistudioOrgDetails.orgDetails.Name,
20
+ id: omnistudioOrgDetails.orgDetails.Id,
21
+ namespace: omnistudioOrgDetails.packageDetails.namespace,
22
+ dataModel: omnistudioOrgDetails.dataModel,
23
+ },
24
+ assessmentDate: new Date().toString(),
25
+ total: totalLabels,
26
+ filterGroups: [
27
+ (0, reportUtil_1.createFilterGroupParam)('Filter by Clone Status', 'cloneStatus', ['created', 'duplicate', 'error']),
28
+ ],
29
+ rows: this.getRowsForReport(paginatedLabels),
30
+ headerGroups: this.getHeaderGroupsForReport(),
31
+ // Pagination data with hardcoded values to avoid template engine issues
32
+ paginationCurrentPage: page,
33
+ paginationTotalPages: totalPages,
34
+ paginationPageSize: pageSize,
35
+ paginationHasNextPage: page < totalPages,
36
+ paginationHasPreviousPage: page > 1,
37
+ // Hardcoded navigation links to avoid template engine issues
38
+ paginationPreviousPageHref: page > 1 ? `Custom_Labels_Page_${page - 1}_of_${totalPages}.html` : '',
39
+ paginationNextPageHref: page < totalPages ? `Custom_Labels_Page_${page + 1}_of_${totalPages}.html` : '',
40
+ // Generate hardcoded page links for jump to page section
41
+ ...this.generateHardcodedPageLinks(page, totalPages),
42
+ };
43
+ return data;
44
+ }
45
+ static generateCustomTemplateForPage(page, totalPages) {
46
+ // Calculate the range of pages to show around current page
47
+ const range = 2; // Show 2 pages on each side of current page
48
+ const start = Math.max(2, page - range);
49
+ const end = Math.min(totalPages - 1, page + range);
50
+ const showFirstEllipsis = start > 2;
51
+ const showLastEllipsis = end < totalPages - 1;
52
+ // Generate hardcoded pagination HTML for this specific page
53
+ const paginationHtml = `
54
+ <!-- Pagination Navigation -->
55
+ <div class="pagination-container" style="margin-top: 20px; text-align: center;">
56
+ <div class="pagination-info" style="margin-bottom: 10px; color: #666;">
57
+ Page ${page} of ${totalPages} (1000 items per page)
58
+ </div>
59
+
60
+ <div class="pagination-controls">
61
+ ${page > 1
62
+ ? `<a href="Custom_Labels_Page_${page - 1}_of_${totalPages}.html" class="pagination-btn" style="
63
+ display: inline-block;
64
+ padding: 8px 16px;
65
+ margin: 0 5px;
66
+ background-color: #0070d2;
67
+ color: white;
68
+ text-decoration: none;
69
+ border-radius: 4px;
70
+ font-weight: bold;
71
+ ">&larr; Previous</a>`
72
+ : ''}
73
+
74
+ <span class="current-page" style="
75
+ display: inline-block;
76
+ padding: 8px 16px;
77
+ margin: 0 5px;
78
+ background-color: #f3f2f2;
79
+ color: #333;
80
+ border-radius: 4px;
81
+ font-weight: bold;
82
+ ">${page}</span>
83
+
84
+ ${page < totalPages
85
+ ? `<a href="Custom_Labels_Page_${page + 1}_of_${totalPages}.html" class="pagination-btn" style="
86
+ display: inline-block;
87
+ padding: 8px 16px;
88
+ margin: 0 5px;
89
+ background-color: #0070d2;
90
+ color: white;
91
+ text-decoration: none;
92
+ border-radius: 4px;
93
+ font-weight: bold;
94
+ ">Next &rarr;</a>`
95
+ : ''}
96
+ </div>
97
+
98
+ <div class="pagination-jump" style="margin-top: 10px;">
99
+ <span style="color: #666; margin-right: 10px;">Jump to page:</span>
100
+
101
+ <!-- Always show first page -->
102
+ <a href="Custom_Labels_Page_1_of_${totalPages}.html" style="
103
+ display: inline-block;
104
+ padding: 4px 8px;
105
+ margin: 0 2px;
106
+ background-color: ${page === 1 ? '#0070d2' : '#f3f2f2'};
107
+ color: ${page === 1 ? 'white' : '#333'};
108
+ text-decoration: none;
109
+ border-radius: 2px;
110
+ font-size: 12px;
111
+ ">1</a>
112
+
113
+ <!-- Show ellipsis if needed -->
114
+ ${showFirstEllipsis ? '<span style="color: #666; margin: 0 5px;">...</span>' : ''}
115
+
116
+ <!-- Show pages around current page -->
117
+ ${Array.from({ length: end - start + 1 }, (_, i) => start + i)
118
+ .map((pageNum) => `
119
+ <a href="Custom_Labels_Page_${pageNum}_of_${totalPages}.html" style="
120
+ display: inline-block;
121
+ padding: 4px 8px;
122
+ margin: 0 2px;
123
+ background-color: ${pageNum === page ? '#0070d2' : '#f3f2f2'};
124
+ color: ${pageNum === page ? 'white' : '#333'};
125
+ text-decoration: none;
126
+ border-radius: 2px;
127
+ font-size: 12px;
128
+ ">${pageNum}</a>
129
+ `)
130
+ .join('')}
131
+
132
+ <!-- Show ellipsis if needed -->
133
+ ${showLastEllipsis ? '<span style="color: #666; margin: 0 5px;">...</span>' : ''}
134
+
135
+ <!-- Always show last page if different from first page -->
136
+ ${totalPages > 1
137
+ ? `<a href="Custom_Labels_Page_${totalPages}_of_${totalPages}.html" style="
138
+ display: inline-block;
139
+ padding: 4px 8px;
140
+ margin: 0 2px;
141
+ background-color: ${page === totalPages ? '#0070d2' : '#f3f2f2'};
142
+ color: ${page === totalPages ? 'white' : '#333'};
143
+ text-decoration: none;
144
+ border-radius: 2px;
145
+ font-size: 12px;
146
+ ">${totalPages}</a>`
147
+ : ''}
148
+ </div>
149
+ </div>
150
+ `;
151
+ return paginationHtml;
152
+ }
153
+ static generateHardcodedPageLinks(currentPage, totalPages) {
154
+ const links = {};
155
+ // Generate links for pages 1-5 (most common case)
156
+ for (let i = 1; i <= Math.min(5, totalPages); i++) {
157
+ links[`paginationPage${i}Href`] = `Custom_Labels_Page_${i}_of_${totalPages}.html`;
158
+ links[`paginationPage${i}IsCurrent`] = i === currentPage;
159
+ }
160
+ // Generate links for pages around current page (if different from 1-5)
161
+ const start = Math.max(1, currentPage - 2);
162
+ const end = Math.min(totalPages, currentPage + 2);
163
+ for (let i = start; i <= end; i++) {
164
+ links[`paginationPage${i}Href`] = `Custom_Labels_Page_${i}_of_${totalPages}.html`;
165
+ links[`paginationPage${i}IsCurrent`] = i === currentPage;
166
+ }
167
+ // Always include last page
168
+ if (totalPages > 5) {
169
+ links[`paginationPage${totalPages}Href`] = `Custom_Labels_Page_${totalPages}_of_${totalPages}.html`;
170
+ links[`paginationPage${totalPages}IsCurrent`] = totalPages === currentPage;
171
+ }
172
+ return links;
173
+ }
174
+ static getRowsForReport(customLabelMigrationInfos) {
175
+ const rows = [];
176
+ let rowIndex = 0;
177
+ customLabelMigrationInfos.forEach((info) => {
178
+ const cloneStatusClass = info.cloneStatus === 'created' ? 'text-success' : 'text-error';
179
+ // If no localizations, create one row with empty language
180
+ if (!info.localizationStatus || Object.keys(info.localizationStatus).length === 0) {
181
+ rows.push({
182
+ rowId: `custom_label_${rowIndex++}`,
183
+ data: [
184
+ (0, reportUtil_1.createRowDataParam)('name', info.labelName, true, 1, 1, false),
185
+ (0, reportUtil_1.createRowDataParam)('cloneStatus', info.cloneStatus, false, 1, 1, false, undefined, undefined, cloneStatusClass),
186
+ (0, reportUtil_1.createRowDataParam)('language', '', false, 1, 1, false),
187
+ (0, reportUtil_1.createRowDataParam)('localizationCloneStatus', '', false, 1, 1, false),
188
+ ],
189
+ });
190
+ }
191
+ else {
192
+ // Create separate row for each language
193
+ Object.entries(info.localizationStatus).forEach(([languageCode, status]) => {
194
+ const localizationStatusClass = status === 'created' ? 'text-success' : status === 'duplicate' ? 'text-warning' : 'text-error';
195
+ rows.push({
196
+ rowId: `custom_label_${rowIndex++}`,
197
+ data: [
198
+ (0, reportUtil_1.createRowDataParam)('name', info.labelName, true, 1, 1, false),
199
+ (0, reportUtil_1.createRowDataParam)('cloneStatus', info.cloneStatus, false, 1, 1, false, undefined, undefined, cloneStatusClass),
200
+ (0, reportUtil_1.createRowDataParam)('language', languageCode, false, 1, 1, false),
201
+ (0, reportUtil_1.createRowDataParam)('localizationCloneStatus', status, false, 1, 1, false, undefined, undefined, localizationStatusClass),
202
+ ],
203
+ });
204
+ });
205
+ }
206
+ });
207
+ return rows;
208
+ }
209
+ static getHeaderGroupsForReport() {
210
+ return [
211
+ {
212
+ header: [
213
+ {
214
+ name: 'Name',
215
+ colspan: 1,
216
+ rowspan: 1,
217
+ },
218
+ {
219
+ name: 'Clone Status',
220
+ colspan: 1,
221
+ rowspan: 1,
222
+ },
223
+ {
224
+ name: 'Language',
225
+ colspan: 1,
226
+ rowspan: 1,
227
+ },
228
+ {
229
+ name: 'Localization Clone Status',
230
+ colspan: 1,
231
+ rowspan: 1,
232
+ },
233
+ ],
234
+ },
235
+ ];
236
+ }
237
+ }
238
+ exports.CustomLabelMigrationReporter = CustomLabelMigrationReporter;
239
+ //# sourceMappingURL=CustomLabelMigrationReporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomLabelMigrationReporter.js","sourceRoot":"","sources":["../../../src/utils/resultsbuilder/CustomLabelMigrationReporter.ts"],"names":[],"mappings":"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"}
@@ -8,10 +8,10 @@ class DRAssessmentReporter {
8
8
  static getDatamapperAssessmentData(dataRaptorAssessmentInfos, instanceUrl, omnistudioOrgDetails) {
9
9
  logger_1.Logger.captureVerboseData('DM data', dataRaptorAssessmentInfos);
10
10
  return {
11
- title: 'Data Mapper Assessment Report',
12
- heading: 'Data Mapper Assessment Report',
11
+ title: 'Data Mappers Assessment Report',
12
+ heading: 'Data Mappers Assessment Report',
13
13
  org: (0, reportUtil_1.getOrgDetailsForReport)(omnistudioOrgDetails),
14
- assessmentDate: new Date().toString(),
14
+ assessmentDate: new Date().toLocaleString(),
15
15
  total: (dataRaptorAssessmentInfos === null || dataRaptorAssessmentInfos === void 0 ? void 0 : dataRaptorAssessmentInfos.length) || 0,
16
16
  filterGroups: this.getFilterGroupsForReport(dataRaptorAssessmentInfos),
17
17
  headerGroups: this.getHeaderGroupsForReport(),
@@ -25,15 +25,25 @@ class DRAssessmentReporter {
25
25
  static getSummaryData(dataRaptorAssessmentInfos) {
26
26
  return [
27
27
  {
28
- name: 'Can be Automated',
29
- count: dataRaptorAssessmentInfos.filter((dataRaptorAssessmentInfo) => !dataRaptorAssessmentInfo.warnings || dataRaptorAssessmentInfo.warnings.length === 0).length,
28
+ name: 'Ready for migration',
29
+ count: dataRaptorAssessmentInfos.filter((dataRaptorAssessmentInfo) => dataRaptorAssessmentInfo.migrationStatus === 'Ready for migration').length,
30
30
  cssClass: 'text-success',
31
31
  },
32
32
  {
33
- name: 'Has Warnings',
34
- count: dataRaptorAssessmentInfos.filter((dataRaptorAssessmentInfo) => dataRaptorAssessmentInfo.warnings && dataRaptorAssessmentInfo.warnings.length > 0).length,
33
+ name: 'Warnings',
34
+ count: dataRaptorAssessmentInfos.filter((dataRaptorAssessmentInfo) => dataRaptorAssessmentInfo.migrationStatus === 'Warnings').length,
35
35
  cssClass: 'text-warning',
36
36
  },
37
+ {
38
+ name: 'Needs Manual Intervention',
39
+ count: dataRaptorAssessmentInfos.filter((dataRaptorAssessmentInfo) => dataRaptorAssessmentInfo.migrationStatus === 'Needs Manual Intervention').length,
40
+ cssClass: 'text-error',
41
+ },
42
+ {
43
+ name: 'Failed',
44
+ count: dataRaptorAssessmentInfos.filter((dataRaptorAssessmentInfo) => dataRaptorAssessmentInfo.migrationStatus === 'Failed').length,
45
+ cssClass: 'text-error',
46
+ },
37
47
  ];
38
48
  }
39
49
  static getFilterGroupsForReport(dataRaptorAssessmentInfos) {
@@ -41,10 +51,15 @@ class DRAssessmentReporter {
41
51
  return [];
42
52
  }
43
53
  const distinctTypes = [...new Set(dataRaptorAssessmentInfos.map((info) => info.type))];
54
+ let typeFilterGroupParam = [];
44
55
  if (distinctTypes.length > 0 && distinctTypes.filter((type) => type).length > 0) {
45
- return [(0, reportUtil_1.createFilterGroupParam)('Filter By Type', 'type', distinctTypes)];
56
+ typeFilterGroupParam = [(0, reportUtil_1.createFilterGroupParam)('Filter By Type', 'type', distinctTypes)];
46
57
  }
47
- return [];
58
+ const distinctStatuses = [...new Set(dataRaptorAssessmentInfos.map((info) => info.migrationStatus))];
59
+ const statusFilterGroupParam = distinctStatuses.length > 0 && distinctStatuses.filter((status) => status).length > 0
60
+ ? [(0, reportUtil_1.createFilterGroupParam)('Filter By Assessment Status', 'status', distinctStatuses)]
61
+ : [];
62
+ return [...typeFilterGroupParam, ...statusFilterGroupParam];
48
63
  }
49
64
  static getHeaderGroupsForReport() {
50
65
  return [
@@ -65,6 +80,11 @@ class DRAssessmentReporter {
65
80
  colspan: 1,
66
81
  rowspan: 2,
67
82
  },
83
+ {
84
+ name: 'Assessment Status',
85
+ colspan: 1,
86
+ rowspan: 2,
87
+ },
68
88
  {
69
89
  name: 'Summary',
70
90
  colspan: 1,
@@ -107,11 +127,23 @@ class DRAssessmentReporter {
107
127
  return dataRaptorAssessmentInfos.map((dataRaptorAssessmentInfo) => ({
108
128
  rowId: `${this.rowIdPrefix}${this.rowId++}`,
109
129
  data: [
110
- (0, reportUtil_1.createRowDataParam)('name', dataRaptorAssessmentInfo.oldName, true, 1, 1, false),
130
+ (0, reportUtil_1.createRowDataParam)('name', dataRaptorAssessmentInfo.oldName, true, 1, 1, false, undefined, undefined, dataRaptorAssessmentInfo.migrationStatus === 'Needs Manual Intervention' ||
131
+ dataRaptorAssessmentInfo.migrationStatus === 'Failed'
132
+ ? 'invalid-icon'
133
+ : ''),
111
134
  (0, reportUtil_1.createRowDataParam)('id', dataRaptorAssessmentInfo.id, false, 1, 1, true, `${instanceUrl}/${dataRaptorAssessmentInfo.id}`),
112
135
  (0, reportUtil_1.createRowDataParam)('newName', dataRaptorAssessmentInfo.name, false, 1, 1, false),
113
136
  (0, reportUtil_1.createRowDataParam)('type', dataRaptorAssessmentInfo.type, false, 1, 1, false),
114
- (0, reportUtil_1.createRowDataParam)('summary', dataRaptorAssessmentInfo.warnings ? dataRaptorAssessmentInfo.warnings.join(', ') : '', false, 1, 1, false, undefined, dataRaptorAssessmentInfo.warnings ? reportingHelper_1.reportingHelper.decorateErrors(dataRaptorAssessmentInfo.warnings) : []),
137
+ (0, reportUtil_1.createRowDataParam)('status', dataRaptorAssessmentInfo.migrationStatus, false, 1, 1, false, undefined, undefined, dataRaptorAssessmentInfo.migrationStatus === 'Ready for migration'
138
+ ? 'text-success'
139
+ : dataRaptorAssessmentInfo.migrationStatus === 'Warnings'
140
+ ? 'text-warning'
141
+ : 'text-error'),
142
+ (0, reportUtil_1.createRowDataParam)('summary', dataRaptorAssessmentInfo.warnings ? dataRaptorAssessmentInfo.warnings.join(', ') : '', false, 1, 1, false, undefined, dataRaptorAssessmentInfo.warnings, dataRaptorAssessmentInfo.migrationStatus === 'Warnings'
143
+ ? 'text-warning'
144
+ : dataRaptorAssessmentInfo.migrationStatus === 'Ready for migration'
145
+ ? ''
146
+ : 'text-error'),
115
147
  (0, reportUtil_1.createRowDataParam)('customFunctionDependencies', dataRaptorAssessmentInfo.formulaChanges
116
148
  ? dataRaptorAssessmentInfo.formulaChanges.map((change) => `${change.old} -> ${change.new}`).join(', ')
117
149
  : '', false, 1, 1, false, undefined, dataRaptorAssessmentInfo.formulaChanges.map((change) => `${change.old} -> ${change.new}`)),
@@ -1 +1 @@
1
- {"version":3,"file":"DRAssessmentReporter.js","sourceRoot":"","sources":["../../../src/utils/resultsbuilder/DRAssessmentReporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DRAssessmentReporter.js","sourceRoot":"","sources":["../../../src/utils/resultsbuilder/DRAssessmentReporter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { ExperienceSiteAssessmentInfo } from '../interfaces';
2
+ import { OmnistudioOrgDetails } from '../orgUtils';
3
+ import { ReportParam, SummaryItemDetailParam } from '../reportGenerator/reportInterfaces';
4
+ export declare class ExperienceSiteAssessmentReporter {
5
+ private static experienceSiteFileSuffix;
6
+ private static rowId;
7
+ private static rowIdPrefix;
8
+ static getExperienceSiteAssessmentData(experienceSiteAssessmentInfos: ExperienceSiteAssessmentInfo[], omnistudioOrgDetails: OmnistudioOrgDetails): ReportParam;
9
+ static getSummaryData(experienceSiteAssessmentInfos: ExperienceSiteAssessmentInfo[]): SummaryItemDetailParam[];
10
+ private static getRowsForReport;
11
+ private static getHeaderGroupsForReport;
12
+ private static getFilterGroupsForReport;
13
+ }
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExperienceSiteAssessmentReporter = void 0;
4
+ const logger_1 = require("../logger");
5
+ const FileDiffUtil_1 = require("../lwcparser/fileutils/FileDiffUtil");
6
+ const reportUtil_1 = require("../reportGenerator/reportUtil");
7
+ class ExperienceSiteAssessmentReporter {
8
+ static getExperienceSiteAssessmentData(experienceSiteAssessmentInfos, omnistudioOrgDetails) {
9
+ return {
10
+ title: 'Experience Sites Assessment Report',
11
+ heading: 'Experience Sites Assessment Report',
12
+ org: (0, reportUtil_1.getOrgDetailsForReport)(omnistudioOrgDetails),
13
+ assessmentDate: new Date().toLocaleString(),
14
+ total: (experienceSiteAssessmentInfos === null || experienceSiteAssessmentInfos === void 0 ? void 0 : experienceSiteAssessmentInfos.length) || 0,
15
+ filterGroups: this.getFilterGroupsForReport(experienceSiteAssessmentInfos),
16
+ headerGroups: this.getHeaderGroupsForReport(),
17
+ rows: this.getRowsForReport(experienceSiteAssessmentInfos),
18
+ };
19
+ }
20
+ static getSummaryData(experienceSiteAssessmentInfos) {
21
+ return [
22
+ {
23
+ name: 'Ready for migration',
24
+ count: experienceSiteAssessmentInfos.filter((info) => info.status === 'Ready for migration').length,
25
+ cssClass: 'text-success',
26
+ },
27
+ {
28
+ name: 'Warnings',
29
+ count: 0,
30
+ cssClass: 'text-warning',
31
+ },
32
+ {
33
+ name: 'Needs Manual Intervention',
34
+ count: experienceSiteAssessmentInfos.filter((info) => info.status === 'Needs Manual Intervention').length,
35
+ cssClass: 'text-error',
36
+ },
37
+ {
38
+ name: 'Failed',
39
+ count: experienceSiteAssessmentInfos.filter((info) => info.status === 'Failed').length,
40
+ cssClass: 'text-error',
41
+ },
42
+ ];
43
+ }
44
+ static getRowsForReport(experienceSiteAssessmentInfos) {
45
+ if (!experienceSiteAssessmentInfos || experienceSiteAssessmentInfos.length === 0) {
46
+ return [];
47
+ }
48
+ experienceSiteAssessmentInfos.forEach((apexAssessmentInfo) => {
49
+ const diffString = FileDiffUtil_1.FileDiffUtil.getDiffHTML(apexAssessmentInfo.diff, apexAssessmentInfo.name);
50
+ logger_1.Logger.logVerbose('The diff is' + JSON.stringify(diffString));
51
+ });
52
+ return experienceSiteAssessmentInfos.map((experienceSiteAssessmentInfo) => ({
53
+ data: [
54
+ (0, reportUtil_1.createRowDataParam)('name', experienceSiteAssessmentInfo.name, true, 1, 1, false, undefined, undefined, experienceSiteAssessmentInfo.status === 'Needs Manual Intervention' ||
55
+ experienceSiteAssessmentInfo.status === 'Failed'
56
+ ? 'invalid-icon'
57
+ : ''),
58
+ (0, reportUtil_1.createRowDataParam)('path', `${experienceSiteAssessmentInfo.name}${this.experienceSiteFileSuffix}`, false, 1, 1, true, experienceSiteAssessmentInfo.path),
59
+ (0, reportUtil_1.createRowDataParam)('status', experienceSiteAssessmentInfo.status, false, 1, 1, false, undefined, experienceSiteAssessmentInfo.status, experienceSiteAssessmentInfo.status === 'Ready for migration' ? 'text-success' : 'text-error'),
60
+ (0, reportUtil_1.createRowDataParam)('diff', '', false, 1, 1, false, undefined, FileDiffUtil_1.FileDiffUtil.getDiffHTML(experienceSiteAssessmentInfo.diff, experienceSiteAssessmentInfo.name)),
61
+ (0, reportUtil_1.createRowDataParam)('summary', '', false, 1, 1, false, undefined, experienceSiteAssessmentInfo.warnings, experienceSiteAssessmentInfo.status === 'Ready for migration' ? 'text-success' : 'text-error'),
62
+ ],
63
+ rowId: `${this.rowIdPrefix}${this.rowId++}`,
64
+ }));
65
+ }
66
+ static getHeaderGroupsForReport() {
67
+ return [
68
+ {
69
+ header: [
70
+ {
71
+ name: 'ExperienceSite Name',
72
+ colspan: 1,
73
+ rowspan: 1,
74
+ },
75
+ {
76
+ name: 'File Reference',
77
+ colspan: 1,
78
+ rowspan: 1,
79
+ },
80
+ {
81
+ name: 'Assessment Status',
82
+ colspan: 1,
83
+ rowspan: 1,
84
+ },
85
+ {
86
+ name: 'Differences',
87
+ colspan: 1,
88
+ rowspan: 1,
89
+ },
90
+ {
91
+ name: 'Summary',
92
+ colspan: 1,
93
+ rowspan: 1,
94
+ },
95
+ ],
96
+ },
97
+ ];
98
+ }
99
+ static getFilterGroupsForReport(experienceSiteAssessmentInfos) {
100
+ const distinctStatuses = [...new Set(experienceSiteAssessmentInfos.map((info) => info.status))];
101
+ const statusFilterGroupParam = distinctStatuses.length > 0 && distinctStatuses.filter((status) => status).length > 0
102
+ ? [(0, reportUtil_1.createFilterGroupParam)('Filter By Assessment Status', 'status', distinctStatuses)]
103
+ : [];
104
+ return [...statusFilterGroupParam];
105
+ }
106
+ }
107
+ exports.ExperienceSiteAssessmentReporter = ExperienceSiteAssessmentReporter;
108
+ ExperienceSiteAssessmentReporter.experienceSiteFileSuffix = '.json';
109
+ ExperienceSiteAssessmentReporter.rowId = 0;
110
+ ExperienceSiteAssessmentReporter.rowIdPrefix = 'experiencesite-row-data-';
111
+ //# sourceMappingURL=ExperienceSiteAssessmentReporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExperienceSiteAssessmentReporter.js","sourceRoot":"","sources":["../../../src/utils/resultsbuilder/ExperienceSiteAssessmentReporter.ts"],"names":[],"mappings":";;;AAOA,sCAAmC;AACnC,sEAAmE;AASnE,8DAAmH;AAEnH,MAAa,gCAAgC;IAMpC,MAAM,CAAC,+BAA+B,CAC3C,6BAA6D,EAC7D,oBAA0C;QAE1C,OAAO;YACL,KAAK,EAAE,oCAAoC;YAC3C,OAAO,EAAE,oCAAoC;YAC7C,GAAG,EAAE,IAAA,mCAAsB,EAAC,oBAAoB,CAAC;YACjD,cAAc,EAAE,IAAI,IAAI,EAAE,CAAC,cAAc,EAAE;YAC3C,KAAK,EAAE,CAAA,6BAA6B,aAA7B,6BAA6B,uBAA7B,6BAA6B,CAAE,MAAM,KAAI,CAAC;YACjD,YAAY,EAAE,IAAI,CAAC,wBAAwB,CAAC,6BAA6B,CAAC;YAC1E,YAAY,EAAE,IAAI,CAAC,wBAAwB,EAAE;YAC7C,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,6BAA6B,CAAC;SAC3D,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,cAAc,CAC1B,6BAA6D;QAE7D,OAAO;YACL;gBACE,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE,6BAA6B,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,qBAAqB,CAAC,CAAC,MAAM;gBACnG,QAAQ,EAAE,cAAc;aACzB;YACD;gBACE,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,CAAC;gBACR,QAAQ,EAAE,cAAc;aACzB;YACD;gBACE,IAAI,EAAE,2BAA2B;gBACjC,KAAK,EAAE,6BAA6B,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,2BAA2B,CAAC,CAAC,MAAM;gBACzG,QAAQ,EAAE,YAAY;aACvB;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,6BAA6B,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM;gBACtF,QAAQ,EAAE,YAAY;aACvB;SACF,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,gBAAgB,CAAC,6BAA6D;QAC3F,IAAI,CAAC,6BAA6B,IAAI,6BAA6B,CAAC,MAAM,KAAK,CAAC,EAAE;YAChF,OAAO,EAAE,CAAC;SACX;QACD,6BAA6B,CAAC,OAAO,CAAC,CAAC,kBAAkB,EAAE,EAAE;YAC3D,MAAM,UAAU,GAAG,2BAAY,CAAC,WAAW,CAAC,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAC9F,eAAM,CAAC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;QAEH,OAAO,6BAA6B,CAAC,GAAG,CAAC,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;YAC1E,IAAI,EAAE;gBACJ,IAAA,+BAAkB,EAChB,MAAM,EACN,4BAA4B,CAAC,IAAI,EACjC,IAAI,EACJ,CAAC,EACD,CAAC,EACD,KAAK,EACL,SAAS,EACT,SAAS,EACT,4BAA4B,CAAC,MAAM,KAAK,2BAA2B;oBACjE,4BAA4B,CAAC,MAAM,KAAK,QAAQ;oBAChD,CAAC,CAAC,cAAc;oBAChB,CAAC,CAAC,EAAE,CACP;gBACD,IAAA,+BAAkB,EAChB,MAAM,EACN,GAAG,4BAA4B,CAAC,IAAI,GAAG,IAAI,CAAC,wBAAwB,EAAE,EACtE,KAAK,EACL,CAAC,EACD,CAAC,EACD,IAAI,EACJ,4BAA4B,CAAC,IAAI,CAClC;gBACD,IAAA,+BAAkB,EAChB,QAAQ,EACR,4BAA4B,CAAC,MAAM,EACnC,KAAK,EACL,CAAC,EACD,CAAC,EACD,KAAK,EACL,SAAS,EACT,4BAA4B,CAAC,MAAM,EACnC,4BAA4B,CAAC,MAAM,KAAK,qBAAqB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,YAAY,CAC9F;gBACD,IAAA,+BAAkB,EAChB,MAAM,EACN,EAAE,EACF,KAAK,EACL,CAAC,EACD,CAAC,EACD,KAAK,EACL,SAAS,EACT,2BAAY,CAAC,WAAW,CAAC,4BAA4B,CAAC,IAAI,EAAE,4BAA4B,CAAC,IAAI,CAAC,CAC/F;gBACD,IAAA,+BAAkB,EAChB,SAAS,EACT,EAAE,EACF,KAAK,EACL,CAAC,EACD,CAAC,EACD,KAAK,EACL,SAAS,EACT,4BAA4B,CAAC,QAAQ,EACrC,4BAA4B,CAAC,MAAM,KAAK,qBAAqB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,YAAY,CAC9F;aACF;YACD,KAAK,EAAE,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE;SAC5C,CAAC,CAAC,CAAC;IACN,CAAC;IAEO,MAAM,CAAC,wBAAwB;QACrC,OAAO;YACL;gBACE,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,qBAAqB;wBAC3B,OAAO,EAAE,CAAC;wBACV,OAAO,EAAE,CAAC;qBACX;oBACD;wBACE,IAAI,EAAE,gBAAgB;wBACtB,OAAO,EAAE,CAAC;wBACV,OAAO,EAAE,CAAC;qBACX;oBACD;wBACE,IAAI,EAAE,mBAAmB;wBACzB,OAAO,EAAE,CAAC;wBACV,OAAO,EAAE,CAAC;qBACX;oBACD;wBACE,IAAI,EAAE,aAAa;wBACnB,OAAO,EAAE,CAAC;wBACV,OAAO,EAAE,CAAC;qBACX;oBACD;wBACE,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,CAAC;wBACV,OAAO,EAAE,CAAC;qBACX;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,wBAAwB,CACrC,6BAA6D;QAE7D,MAAM,gBAAgB,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,6BAA6B,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAChG,MAAM,sBAAsB,GAC1B,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC;YACnF,CAAC,CAAC,CAAC,IAAA,mCAAsB,EAAC,6BAA6B,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;YACrF,CAAC,CAAC,EAAE,CAAC;QAET,OAAO,CAAC,GAAG,sBAAsB,CAAC,CAAC;IACrC,CAAC;;AApKH,4EAqKC;AApKgB,yDAAwB,GAAG,OAAO,CAAC;AAEnC,sCAAK,GAAG,CAAC,CAAC;AACV,4CAAW,GAAG,0BAA0B,CAAC"}
@@ -3,32 +3,44 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FlexcardAssessmentReporter = void 0;
4
4
  const logger_1 = require("../logger");
5
5
  const reportUtil_1 = require("../reportGenerator/reportUtil");
6
+ const reportingHelper_1 = require("./reportingHelper");
6
7
  class FlexcardAssessmentReporter {
7
8
  static getFlexcardAssessmentData(flexCardAssessmentInfos, instanceUrl, omnistudioOrgDetails) {
8
9
  logger_1.Logger.captureVerboseData('fc data:', flexCardAssessmentInfos);
9
10
  return {
10
- title: 'Flexcard Assessment Report',
11
- heading: 'Flexcard Assessment Report',
11
+ title: 'Flexcards Assessment Report',
12
+ heading: 'Flexcards Assessment Report',
12
13
  org: (0, reportUtil_1.getOrgDetailsForReport)(omnistudioOrgDetails),
13
- assessmentDate: new Date().toString(),
14
+ assessmentDate: new Date().toLocaleString(),
14
15
  total: (flexCardAssessmentInfos === null || flexCardAssessmentInfos === void 0 ? void 0 : flexCardAssessmentInfos.length) || 0,
15
- filterGroups: this.getFilterGroupsForReport(),
16
+ filterGroups: this.getFilterGroupsForReport(flexCardAssessmentInfos),
16
17
  headerGroups: this.getHeaderGroupsForReport(),
17
18
  rows: this.getRowsForReport(flexCardAssessmentInfos, instanceUrl),
19
+ callToAction: reportingHelper_1.reportingHelper.getCallToAction(flexCardAssessmentInfos),
18
20
  };
19
21
  }
20
22
  static getSummaryData(flexCardAssessmentInfos) {
21
23
  return [
22
24
  {
23
- name: 'Can be Automated',
24
- count: flexCardAssessmentInfos.filter((flexCardAssessmentInfo) => !flexCardAssessmentInfo.warnings || flexCardAssessmentInfo.warnings.length === 0).length,
25
+ name: 'Ready for migration',
26
+ count: flexCardAssessmentInfos.filter((flexCardAssessmentInfo) => flexCardAssessmentInfo.migrationStatus === 'Ready for migration').length,
25
27
  cssClass: 'text-success',
26
28
  },
27
29
  {
28
- name: 'Has Warnings',
29
- count: flexCardAssessmentInfos.filter((flexCardAssessmentInfo) => flexCardAssessmentInfo.warnings && flexCardAssessmentInfo.warnings.length > 0).length,
30
+ name: 'Warnings',
31
+ count: flexCardAssessmentInfos.filter((flexCardAssessmentInfo) => flexCardAssessmentInfo.migrationStatus === 'Warnings').length,
30
32
  cssClass: 'text-warning',
31
33
  },
34
+ {
35
+ name: 'Needs Manual Intervention',
36
+ count: flexCardAssessmentInfos.filter((flexCardAssessmentInfo) => flexCardAssessmentInfo.migrationStatus === 'Needs Manual Intervention').length,
37
+ cssClass: 'text-error',
38
+ },
39
+ {
40
+ name: 'Failed',
41
+ count: flexCardAssessmentInfos.filter((flexCardAssessmentInfo) => flexCardAssessmentInfo.migrationStatus === 'Failed').length,
42
+ cssClass: 'text-error',
43
+ },
32
44
  ];
33
45
  }
34
46
  static getHeaderGroupsForReport() {
@@ -46,7 +58,17 @@ class FlexcardAssessmentReporter {
46
58
  rowspan: 1,
47
59
  },
48
60
  {
49
- name: 'OmniScript Dependencies',
61
+ name: 'Assessment Status',
62
+ colspan: 1,
63
+ rowspan: 2,
64
+ },
65
+ {
66
+ name: 'Summary',
67
+ colspan: 1,
68
+ rowspan: 2,
69
+ },
70
+ {
71
+ name: 'Omniscript Dependencies',
50
72
  colspan: 1,
51
73
  rowspan: 2,
52
74
  },
@@ -98,16 +120,33 @@ class FlexcardAssessmentReporter {
98
120
  },
99
121
  ];
100
122
  }
101
- static getFilterGroupsForReport() {
102
- return [];
123
+ static getFilterGroupsForReport(flexCardAssessmentInfo) {
124
+ const distinctStatuses = [...new Set(flexCardAssessmentInfo.map((info) => info.migrationStatus))];
125
+ const statusFilterGroupParam = distinctStatuses.length > 0 && distinctStatuses.filter((status) => status).length > 0
126
+ ? [(0, reportUtil_1.createFilterGroupParam)('Filter By Assessment Status', 'status', distinctStatuses)]
127
+ : [];
128
+ return [...statusFilterGroupParam];
103
129
  }
104
130
  static getRowsForReport(flexCardAssessmentInfos, instanceUrl) {
105
131
  return flexCardAssessmentInfos.map((flexCardAssessmentInfo) => ({
106
132
  rowId: `${this.rowIdPrefix}${this.rowId++}`,
107
133
  data: [
108
- (0, reportUtil_1.createRowDataParam)('name', flexCardAssessmentInfo.name, true, 1, 1, false),
134
+ (0, reportUtil_1.createRowDataParam)('name', flexCardAssessmentInfo.oldName, true, 1, 1, false, undefined, undefined, flexCardAssessmentInfo.migrationStatus === 'Needs Manual Intervention' ||
135
+ flexCardAssessmentInfo.migrationStatus === 'Failed'
136
+ ? 'invalid-icon'
137
+ : ''),
109
138
  (0, reportUtil_1.createRowDataParam)('recordId', flexCardAssessmentInfo.id, false, 1, 1, true, `${instanceUrl}/${flexCardAssessmentInfo.id}`),
110
139
  (0, reportUtil_1.createRowDataParam)('newName', flexCardAssessmentInfo.name, false, 1, 1, false),
140
+ (0, reportUtil_1.createRowDataParam)('status', flexCardAssessmentInfo.migrationStatus, false, 1, 1, false, undefined, undefined, flexCardAssessmentInfo.migrationStatus === 'Ready for migration'
141
+ ? 'text-success'
142
+ : flexCardAssessmentInfo.migrationStatus === 'Warnings'
143
+ ? 'text-warning'
144
+ : 'text-error'),
145
+ (0, reportUtil_1.createRowDataParam)('summary', flexCardAssessmentInfo.warnings ? flexCardAssessmentInfo.warnings.join(', ') : '', false, 1, 1, false, undefined, flexCardAssessmentInfo.warnings, flexCardAssessmentInfo.migrationStatus === 'Warnings'
146
+ ? 'text-warning'
147
+ : flexCardAssessmentInfo.migrationStatus === 'Ready for migration'
148
+ ? ''
149
+ : 'text-error'),
111
150
  (0, reportUtil_1.createRowDataParam)('omniScriptDependencies', flexCardAssessmentInfo.dependenciesOS ? flexCardAssessmentInfo.dependenciesOS.join(', ') : '', false, 1, 1, false, undefined, flexCardAssessmentInfo.dependenciesOS),
112
151
  (0, reportUtil_1.createRowDataParam)('integrationProcedureDependencies', flexCardAssessmentInfo.dependenciesIP ? flexCardAssessmentInfo.dependenciesIP.join(', ') : '', false, 1, 1, false, undefined, flexCardAssessmentInfo.dependenciesIP),
113
152
  (0, reportUtil_1.createRowDataParam)('dataMapperDependencies', flexCardAssessmentInfo.dependenciesDR ? flexCardAssessmentInfo.dependenciesDR.join(', ') : '', false, 1, 1, false, undefined, flexCardAssessmentInfo.dependenciesDR),