@salesforce/plugin-omnistudio-migration-tool 2.0.0-rc.6 → 2.0.0-rc.61

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 (252) hide show
  1. package/README.md +165 -73
  2. package/lib/commands/omnistudio/migration/assess.d.ts +23 -15
  3. package/lib/commands/omnistudio/migration/assess.js +250 -89
  4. package/lib/commands/omnistudio/migration/assess.js.map +1 -1
  5. package/lib/commands/omnistudio/migration/clean.d.ts +13 -0
  6. package/lib/commands/omnistudio/migration/clean.js +162 -0
  7. package/lib/commands/omnistudio/migration/clean.js.map +1 -0
  8. package/lib/commands/omnistudio/migration/info.d.ts +10 -16
  9. package/lib/commands/omnistudio/migration/info.js +53 -35
  10. package/lib/commands/omnistudio/migration/info.js.map +1 -1
  11. package/lib/commands/omnistudio/migration/migrate.d.ts +78 -18
  12. package/lib/commands/omnistudio/migration/migrate.js +461 -175
  13. package/lib/commands/omnistudio/migration/migrate.js.map +1 -1
  14. package/lib/error/deploymentErrors.d.ts +15 -0
  15. package/lib/error/deploymentErrors.js +35 -0
  16. package/lib/error/deploymentErrors.js.map +1 -0
  17. package/lib/error/errorInterfaces.d.ts +5 -0
  18. package/lib/error/errorInterfaces.js +9 -1
  19. package/lib/error/errorInterfaces.js.map +1 -1
  20. package/lib/javascripts/reportGeneratorUtility.js +585 -22
  21. package/lib/migration/ApexNamespaceRegistry.d.ts +49 -0
  22. package/lib/migration/ApexNamespaceRegistry.js +130 -0
  23. package/lib/migration/ApexNamespaceRegistry.js.map +1 -0
  24. package/lib/migration/CustomCssRegistry.d.ts +117 -0
  25. package/lib/migration/CustomCssRegistry.js +234 -0
  26. package/lib/migration/CustomCssRegistry.js.map +1 -0
  27. package/lib/migration/NameMappingRegistry.d.ts +134 -0
  28. package/lib/migration/NameMappingRegistry.js +411 -0
  29. package/lib/migration/NameMappingRegistry.js.map +1 -0
  30. package/lib/migration/base.d.ts +8 -6
  31. package/lib/migration/base.js +25 -8
  32. package/lib/migration/base.js.map +1 -1
  33. package/lib/migration/customLabels.d.ts +70 -0
  34. package/lib/migration/customLabels.js +177 -0
  35. package/lib/migration/customLabels.js.map +1 -0
  36. package/lib/migration/dataraptor.d.ts +13 -0
  37. package/lib/migration/dataraptor.js +205 -80
  38. package/lib/migration/dataraptor.js.map +1 -1
  39. package/lib/migration/deployer.d.ts +14 -0
  40. package/lib/migration/deployer.js +105 -0
  41. package/lib/migration/deployer.js.map +1 -0
  42. package/lib/migration/flexcard.d.ts +256 -6
  43. package/lib/migration/flexcard.js +1808 -268
  44. package/lib/migration/flexcard.js.map +1 -1
  45. package/lib/migration/globalautonumber.d.ts +8 -8
  46. package/lib/migration/globalautonumber.js +49 -24
  47. package/lib/migration/globalautonumber.js.map +1 -1
  48. package/lib/migration/interfaces.d.ts +14 -0
  49. package/lib/migration/interfaces.js.map +1 -1
  50. package/lib/migration/metadataobjnamecheck.js.map +1 -1
  51. package/lib/migration/omniscript.d.ts +218 -4
  52. package/lib/migration/omniscript.js +1709 -247
  53. package/lib/migration/omniscript.js.map +1 -1
  54. package/lib/migration/omniscriptInstance.d.ts +90 -0
  55. package/lib/migration/omniscriptInstance.js +755 -0
  56. package/lib/migration/omniscriptInstance.js.map +1 -0
  57. package/lib/migration/postMigrate.d.ts +20 -4
  58. package/lib/migration/postMigrate.js +199 -12
  59. package/lib/migration/postMigrate.js.map +1 -1
  60. package/lib/migration/premigrate.d.ts +51 -0
  61. package/lib/migration/premigrate.js +325 -0
  62. package/lib/migration/premigrate.js.map +1 -0
  63. package/lib/migration/related/ApexMigration.d.ts +3 -0
  64. package/lib/migration/related/ApexMigration.js +222 -56
  65. package/lib/migration/related/ApexMigration.js.map +1 -1
  66. package/lib/migration/related/ExperienceSiteMigration.d.ts +30 -5
  67. package/lib/migration/related/ExperienceSiteMigration.js +263 -73
  68. package/lib/migration/related/ExperienceSiteMigration.js.map +1 -1
  69. package/lib/migration/related/FlexipageMigration.d.ts +5 -5
  70. package/lib/migration/related/FlexipageMigration.js +60 -38
  71. package/lib/migration/related/FlexipageMigration.js.map +1 -1
  72. package/lib/migration/related/LwcMigration.js +45 -26
  73. package/lib/migration/related/LwcMigration.js.map +1 -1
  74. package/lib/migration/related/OmnistudioRelatedObjectMigrationFacade.js +48 -32
  75. package/lib/migration/related/OmnistudioRelatedObjectMigrationFacade.js.map +1 -1
  76. package/lib/styles/reportGenerator.css +241 -16
  77. package/lib/templates/assessmentReport.template +78 -8
  78. package/lib/templates/dashboard.template +86 -57
  79. package/lib/templates/migrationReport.template +151 -0
  80. package/lib/utils/OmnistudioSettingsPrefManager.d.ts +14 -0
  81. package/lib/utils/OmnistudioSettingsPrefManager.js +112 -0
  82. package/lib/utils/OmnistudioSettingsPrefManager.js.map +1 -0
  83. package/lib/utils/XMLUtil.js +2 -1
  84. package/lib/utils/XMLUtil.js.map +1 -1
  85. package/lib/utils/apex/executor/AnonymousApexRunner.d.ts +1 -1
  86. package/lib/utils/apex/parser/apexparser.d.ts +8 -1
  87. package/lib/utils/apex/parser/apexparser.js +79 -13
  88. package/lib/utils/apex/parser/apexparser.js.map +1 -1
  89. package/lib/utils/config/ExistingRecordCleanupService.d.ts +30 -0
  90. package/lib/utils/config/ExistingRecordCleanupService.js +266 -0
  91. package/lib/utils/config/ExistingRecordCleanupService.js.map +1 -0
  92. package/lib/utils/config/OmniStudioMetadataCleanupService.d.ts +36 -0
  93. package/lib/utils/config/OmniStudioMetadataCleanupService.js +123 -0
  94. package/lib/utils/config/OmniStudioMetadataCleanupService.js.map +1 -0
  95. package/lib/utils/config/SpecialCharacterRecordCleanupService.d.ts +17 -0
  96. package/lib/utils/config/SpecialCharacterRecordCleanupService.js +186 -0
  97. package/lib/utils/config/SpecialCharacterRecordCleanupService.js.map +1 -0
  98. package/lib/utils/constants/documentRegistry.d.ts +9 -17
  99. package/lib/utils/constants/documentRegistry.js +9 -17
  100. package/lib/utils/constants/documentRegistry.js.map +1 -1
  101. package/lib/utils/constants/stringContants.d.ts +78 -0
  102. package/lib/utils/constants/stringContants.js +91 -4
  103. package/lib/utils/constants/stringContants.js.map +1 -1
  104. package/lib/utils/customLabels.d.ts +35 -0
  105. package/lib/utils/customLabels.js +100 -0
  106. package/lib/utils/customLabels.js.map +1 -0
  107. package/lib/utils/dataModelService.d.ts +18 -0
  108. package/lib/utils/dataModelService.js +72 -0
  109. package/lib/utils/dataModelService.js.map +1 -0
  110. package/lib/utils/file/fileUtil.d.ts +3 -1
  111. package/lib/utils/file/fileUtil.js +30 -13
  112. package/lib/utils/file/fileUtil.js.map +1 -1
  113. package/lib/utils/flexipage/flexiPageTransformer.js +119 -23
  114. package/lib/utils/flexipage/flexiPageTransformer.js.map +1 -1
  115. package/lib/utils/formula/FormulaUtil.d.ts +1 -1
  116. package/lib/utils/formula/FormulaUtil.js +17 -9
  117. package/lib/utils/formula/FormulaUtil.js.map +1 -1
  118. package/lib/utils/formula/Stack.js.map +1 -1
  119. package/lib/utils/generatePackageXml.d.ts +6 -2
  120. package/lib/utils/generatePackageXml.js +73 -33
  121. package/lib/utils/generatePackageXml.js.map +1 -1
  122. package/lib/utils/index.d.ts +1 -0
  123. package/lib/utils/index.js +1 -0
  124. package/lib/utils/index.js.map +1 -1
  125. package/lib/utils/interfaces.d.ts +69 -8
  126. package/lib/utils/json/jsonutil.js.map +1 -1
  127. package/lib/utils/logger/fileLogger.js +17 -7
  128. package/lib/utils/logger/fileLogger.js.map +1 -1
  129. package/lib/utils/logger.d.ts +3 -3
  130. package/lib/utils/logger.js +10 -6
  131. package/lib/utils/logger.js.map +1 -1
  132. package/lib/utils/logging/debugtimer.js.map +1 -1
  133. package/lib/utils/lwcparser/fileutils/FileDiffUtil.js +30 -22
  134. package/lib/utils/lwcparser/fileutils/FileDiffUtil.js.map +1 -1
  135. package/lib/utils/lwcparser/fileutils/FileProcessorFactory.js.map +1 -1
  136. package/lib/utils/lwcparser/fileutils/HtmlFileProcessor.js.map +1 -1
  137. package/lib/utils/lwcparser/fileutils/JavascriptFileProcessor.js.map +1 -1
  138. package/lib/utils/lwcparser/fileutils/XmlFileProcessor.js.map +1 -1
  139. package/lib/utils/lwcparser/htmlParser/HTMLParser.js +29 -10
  140. package/lib/utils/lwcparser/htmlParser/HTMLParser.js.map +1 -1
  141. package/lib/utils/lwcparser/jsParser/JavaScriptParser.js +29 -11
  142. package/lib/utils/lwcparser/jsParser/JavaScriptParser.js.map +1 -1
  143. package/lib/utils/lwcparser/xmlParser/XmlParser.js +19 -8
  144. package/lib/utils/lwcparser/xmlParser/XmlParser.js.map +1 -1
  145. package/lib/utils/net/index.d.ts +5 -0
  146. package/lib/utils/net/index.js +40 -2
  147. package/lib/utils/net/index.js.map +1 -1
  148. package/lib/utils/omniscriptPackageManager.d.ts +31 -0
  149. package/lib/utils/omniscriptPackageManager.js +215 -0
  150. package/lib/utils/omniscriptPackageManager.js.map +1 -0
  151. package/lib/utils/orgPreferences.d.ts +25 -0
  152. package/lib/utils/orgPreferences.js +124 -8
  153. package/lib/utils/orgPreferences.js.map +1 -1
  154. package/lib/utils/orgUtils/index.d.ts +12 -5
  155. package/lib/utils/orgUtils/index.js +52 -22
  156. package/lib/utils/orgUtils/index.js.map +1 -1
  157. package/lib/utils/projectPathUtil.d.ts +1 -1
  158. package/lib/utils/projectPathUtil.js +27 -10
  159. package/lib/utils/projectPathUtil.js.map +1 -1
  160. package/lib/utils/promptUtil.d.ts +11 -1
  161. package/lib/utils/promptUtil.js +92 -0
  162. package/lib/utils/promptUtil.js.map +1 -1
  163. package/lib/utils/query/index.d.ts +1 -0
  164. package/lib/utils/query/index.js +18 -1
  165. package/lib/utils/query/index.js.map +1 -1
  166. package/lib/utils/recordPrioritization.d.ts +44 -0
  167. package/lib/utils/recordPrioritization.js +69 -0
  168. package/lib/utils/recordPrioritization.js.map +1 -0
  169. package/lib/utils/reportGenerator/reportInterfaces.d.ts +12 -0
  170. package/lib/utils/reportGenerator/reportUtil.d.ts +6 -1
  171. package/lib/utils/reportGenerator/reportUtil.js +22 -7
  172. package/lib/utils/reportGenerator/reportUtil.js.map +1 -1
  173. package/lib/utils/resultsbuilder/ApexAssessmentReporter.d.ts +1 -0
  174. package/lib/utils/resultsbuilder/ApexAssessmentReporter.js +40 -17
  175. package/lib/utils/resultsbuilder/ApexAssessmentReporter.js.map +1 -1
  176. package/lib/utils/resultsbuilder/CustomLabelAssessmentReporter.d.ts +13 -0
  177. package/lib/utils/resultsbuilder/CustomLabelAssessmentReporter.js +179 -0
  178. package/lib/utils/resultsbuilder/CustomLabelAssessmentReporter.js.map +1 -0
  179. package/lib/utils/resultsbuilder/CustomLabelMigrationReporter.d.ts +27 -0
  180. package/lib/utils/resultsbuilder/CustomLabelMigrationReporter.js +262 -0
  181. package/lib/utils/resultsbuilder/CustomLabelMigrationReporter.js.map +1 -0
  182. package/lib/utils/resultsbuilder/DRAssessmentReporter.js +38 -70
  183. package/lib/utils/resultsbuilder/DRAssessmentReporter.js.map +1 -1
  184. package/lib/utils/resultsbuilder/ExperienceSiteAssessmentReporter.d.ts +14 -0
  185. package/lib/utils/resultsbuilder/ExperienceSiteAssessmentReporter.js +143 -0
  186. package/lib/utils/resultsbuilder/ExperienceSiteAssessmentReporter.js.map +1 -0
  187. package/lib/utils/resultsbuilder/FlexcardAssessmentReporter.js +46 -85
  188. package/lib/utils/resultsbuilder/FlexcardAssessmentReporter.js.map +1 -1
  189. package/lib/utils/resultsbuilder/FlexipageAssessmentReporter.d.ts +1 -0
  190. package/lib/utils/resultsbuilder/FlexipageAssessmentReporter.js +37 -19
  191. package/lib/utils/resultsbuilder/FlexipageAssessmentReporter.js.map +1 -1
  192. package/lib/utils/resultsbuilder/GlobalAutoNumberAssessmentReporter.js +22 -14
  193. package/lib/utils/resultsbuilder/GlobalAutoNumberAssessmentReporter.js.map +1 -1
  194. package/lib/utils/resultsbuilder/IPAssessmentReporter.js +38 -71
  195. package/lib/utils/resultsbuilder/IPAssessmentReporter.js.map +1 -1
  196. package/lib/utils/resultsbuilder/LWCAssessmentReporter.d.ts +14 -0
  197. package/lib/utils/resultsbuilder/LWCAssessmentReporter.js +143 -139
  198. package/lib/utils/resultsbuilder/LWCAssessmentReporter.js.map +1 -1
  199. package/lib/utils/resultsbuilder/OSAssessmentReporter.js +41 -88
  200. package/lib/utils/resultsbuilder/OSAssessmentReporter.js.map +1 -1
  201. package/lib/utils/resultsbuilder/SaveForLaterAssessmentReporter.d.ts +12 -0
  202. package/lib/utils/resultsbuilder/SaveForLaterAssessmentReporter.js +109 -0
  203. package/lib/utils/resultsbuilder/SaveForLaterAssessmentReporter.js.map +1 -0
  204. package/lib/utils/resultsbuilder/assessmentReporter.d.ts +16 -6
  205. package/lib/utils/resultsbuilder/assessmentReporter.js +96 -152
  206. package/lib/utils/resultsbuilder/assessmentReporter.js.map +1 -1
  207. package/lib/utils/resultsbuilder/helpers/AssessmentReportHelper.d.ts +104 -0
  208. package/lib/utils/resultsbuilder/helpers/AssessmentReportHelper.js +380 -0
  209. package/lib/utils/resultsbuilder/helpers/AssessmentReportHelper.js.map +1 -0
  210. package/lib/utils/resultsbuilder/index.d.ts +37 -1
  211. package/lib/utils/resultsbuilder/index.js +582 -151
  212. package/lib/utils/resultsbuilder/index.js.map +1 -1
  213. package/lib/utils/resultsbuilder/reportingHelper.d.ts +2 -7
  214. package/lib/utils/resultsbuilder/reportingHelper.js +0 -43
  215. package/lib/utils/resultsbuilder/reportingHelper.js.map +1 -1
  216. package/lib/utils/sfcli/project/sfProject.d.ts +29 -0
  217. package/lib/utils/sfcli/project/sfProject.js +220 -2
  218. package/lib/utils/sfcli/project/sfProject.js.map +1 -1
  219. package/lib/utils/shell/cli.js +20 -14
  220. package/lib/utils/shell/cli.js.map +1 -1
  221. package/lib/utils/storageUtil.d.ts +14 -1
  222. package/lib/utils/storageUtil.js +31 -1
  223. package/lib/utils/storageUtil.js.map +1 -1
  224. package/lib/utils/stringUtils.d.ts +24 -0
  225. package/lib/utils/stringUtils.js +76 -9
  226. package/lib/utils/stringUtils.js.map +1 -1
  227. package/lib/utils/templateParser/__tests__/test.js +1 -2
  228. package/lib/utils/templateParser/__tests__/test.js.map +1 -1
  229. package/lib/utils/templateParser/generate.d.ts +1 -1
  230. package/lib/utils/templateParser/generate.js.map +1 -1
  231. package/lib/utils/templateParser/model/elementNode.d.ts +2 -2
  232. package/lib/utils/templateParser/model/elementNode.js +11 -2
  233. package/lib/utils/templateParser/model/elementNode.js.map +1 -1
  234. package/lib/utils/templateParser/model/nodeTypes.js +1 -1
  235. package/lib/utils/templateParser/model/nodeTypes.js.map +1 -1
  236. package/lib/utils/templateParser/util.d.ts +2 -2
  237. package/lib/utils/templateParser/util.js.map +1 -1
  238. package/lib/utils/validatorService.d.ts +14 -0
  239. package/lib/utils/validatorService.js +136 -0
  240. package/lib/utils/validatorService.js.map +1 -0
  241. package/messages/assess.json +220 -103
  242. package/messages/clean.json +40 -0
  243. package/messages/info.json +2 -1
  244. package/messages/migrate.json +314 -102
  245. package/oclif.manifest.json +1 -1
  246. package/package.json +49 -13
  247. package/lib/commands/basecommand.d.ts +0 -8
  248. package/lib/commands/basecommand.js +0 -13
  249. package/lib/commands/basecommand.js.map +0 -1
  250. package/lib/utils/OmniGlobalAutoNumberPrefManager.d.ts +0 -40
  251. package/lib/utils/OmniGlobalAutoNumberPrefManager.js +0 -65
  252. package/lib/utils/OmniGlobalAutoNumberPrefManager.js.map +0 -1
@@ -9,8 +9,8 @@ class ApexAssessmentReporter {
9
9
  static getApexAssessmentData(apexAssessmentInfos, omnistudioOrgDetails) {
10
10
  logger_1.Logger.captureVerboseData('apex data:', apexAssessmentInfos);
11
11
  return {
12
- title: 'Apex File Assessment Report',
13
- heading: 'Apex File Assessment Report',
12
+ title: 'Apex Classes Assessment Report',
13
+ heading: 'Apex Classes Assessment Report',
14
14
  org: (0, reportUtil_1.getOrgDetailsForReport)(omnistudioOrgDetails),
15
15
  assessmentDate: new Date().toLocaleString(),
16
16
  total: (apexAssessmentInfos === null || apexAssessmentInfos === void 0 ? void 0 : apexAssessmentInfos.length) || 0,
@@ -23,18 +23,24 @@ class ApexAssessmentReporter {
23
23
  static getSummaryData(apexAssessmentInfos) {
24
24
  return [
25
25
  {
26
- name: 'Can be Automated',
27
- count: apexAssessmentInfos.filter((apexAssessmentInfo) => !apexAssessmentInfo.warnings || apexAssessmentInfo.warnings.length === 0).length,
26
+ name: 'Ready for migration',
27
+ count: apexAssessmentInfos.filter((apexAssessmentInfo) => apexAssessmentInfo.status === 'Ready for migration')
28
+ .length,
28
29
  cssClass: 'text-success',
29
30
  },
30
31
  {
31
- name: 'Has Warnings',
32
- count: apexAssessmentInfos.filter((info) => info.warnings && info.warnings.length > 0).length,
32
+ name: 'Warnings',
33
+ count: apexAssessmentInfos.filter((info) => info.status === 'Warnings').length,
33
34
  cssClass: 'text-warning',
34
35
  },
35
36
  {
36
- name: 'Has Errrors',
37
- count: apexAssessmentInfos.filter((info) => info.errors && info.errors.length > 0).length,
37
+ name: 'Needs manual intervention',
38
+ count: apexAssessmentInfos.filter((info) => info.status === 'Needs manual intervention').length,
39
+ cssClass: 'text-error',
40
+ },
41
+ {
42
+ name: 'Failed',
43
+ count: apexAssessmentInfos.filter((info) => info.status === 'Failed').length,
38
44
  cssClass: 'text-error',
39
45
  },
40
46
  ];
@@ -43,20 +49,37 @@ class ApexAssessmentReporter {
43
49
  return apexAssessmentInfos.map((apexAssessmentInfo) => ({
44
50
  rowId: `${this.rowIdPrefix}${this.rowId++}`,
45
51
  data: [
46
- (0, reportUtil_1.createRowDataParam)('name', apexAssessmentInfo.name, true, 1, 1, false),
52
+ (0, reportUtil_1.createRowDataParam)('name', apexAssessmentInfo.name, true, 1, 1, false, undefined, undefined, apexAssessmentInfo.status === 'Needs manual intervention' || apexAssessmentInfo.status === 'Failed'
53
+ ? 'invalid-icon'
54
+ : ''),
47
55
  (0, reportUtil_1.createRowDataParam)('fileReference', apexAssessmentInfo.name, false, 1, 1, true, apexAssessmentInfo.path, apexAssessmentInfo.name + '.cls'),
48
- (0, reportUtil_1.createRowDataParam)('status', apexAssessmentInfo.warnings.length > 0 ? 'Has Warnings' : 'Can be Automated', false, 1, 1, false, undefined, undefined, apexAssessmentInfo.warnings.length > 0 ? 'text-error' : 'text-success'),
49
- (0, reportUtil_1.createRowDataParam)('diff', apexAssessmentInfo.name + 'diff', false, 1, 1, false, undefined, FileDiffUtil_1.FileDiffUtil.getDiffHTML(apexAssessmentInfo.diff, apexAssessmentInfo.name)),
50
- (0, reportUtil_1.createRowDataParam)('comments', apexAssessmentInfo.infos ? apexAssessmentInfo.infos.join(', ') : '', false, 1, 1, false, undefined, apexAssessmentInfo.infos ? reportingHelper_1.reportingHelper.decorateErrors(apexAssessmentInfo.infos) : []),
51
- (0, reportUtil_1.createRowDataParam)('errors', apexAssessmentInfo.warnings ? apexAssessmentInfo.warnings.join(', ') : '', false, 1, 1, false, undefined, apexAssessmentInfo.warnings ? reportingHelper_1.reportingHelper.decorateErrors(apexAssessmentInfo.warnings) : []),
56
+ (0, reportUtil_1.createRowDataParam)('status', apexAssessmentInfo.status, false, 1, 1, false, undefined, apexAssessmentInfo.status, this.getMigrationStatusCssClass(apexAssessmentInfo.status)),
57
+ (0, reportUtil_1.createRowDataParam)('diff', apexAssessmentInfo.name + 'diff', false, 1, 1, false, undefined, FileDiffUtil_1.FileDiffUtil.getDiffHTML(apexAssessmentInfo.diff, apexAssessmentInfo.name), 'diff-cell'),
58
+ (0, reportUtil_1.createRowDataParam)('comments', apexAssessmentInfo.infos ? apexAssessmentInfo.infos.join(', ') : '', false, 1, 1, false, undefined, [...apexAssessmentInfo.infos, ...apexAssessmentInfo.warnings]),
59
+ (0, reportUtil_1.createRowDataParam)('errors', apexAssessmentInfo.errors ? apexAssessmentInfo.errors.join(', ') : '', false, 1, 1, false, undefined, apexAssessmentInfo.errors),
52
60
  ],
53
61
  }));
54
62
  }
63
+ static getMigrationStatusCssClass(status, noClassForSuccess = false) {
64
+ switch (status) {
65
+ case 'Warnings':
66
+ return 'text-warning';
67
+ case 'Needs manual intervention':
68
+ return 'text-error';
69
+ case 'Failed':
70
+ return 'text-error';
71
+ }
72
+ return noClassForSuccess ? '' : 'text-success';
73
+ }
55
74
  static getFilterGroupsForReport(apexAssessmentInfos) {
56
- return [
57
- (0, reportUtil_1.createFilterGroupParam)('Filter By Summary', 'comments', Array.from(new Set(apexAssessmentInfos.map((row) => row.infos.join(', '))))),
58
- (0, reportUtil_1.createFilterGroupParam)('Filter By Errors', 'errors', Array.from(new Set(apexAssessmentInfos.map((row) => row.warnings.join(', '))))),
59
- ];
75
+ if (!apexAssessmentInfos || apexAssessmentInfos.length === 0) {
76
+ return [];
77
+ }
78
+ const distinctStatuses = Array.from(new Set(apexAssessmentInfos.map((info) => info.status)));
79
+ const statusFilterGroupParam = distinctStatuses.length > 0 && distinctStatuses.filter((status) => status).length > 0
80
+ ? [(0, reportUtil_1.createFilterGroupParam)('Filter By Assessment Status', 'status', distinctStatuses)]
81
+ : [];
82
+ return [...statusFilterGroupParam];
60
83
  }
61
84
  static getHeaderGroupsForReport() {
62
85
  return [
@@ -1 +1 @@
1
- {"version":3,"file":"ApexAssessmentReporter.js","sourceRoot":"","sources":["../../../src/utils/resultsbuilder/ApexAssessmentReporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ApexAssessmentReporter.js","sourceRoot":"","sources":["../../../src/utils/resultsbuilder/ApexAssessmentReporter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { CustomLabelAssessmentInfo } from '../customLabels';
2
+ import { OmnistudioOrgDetails } from '../orgUtils';
3
+ import { ReportParam, SummaryItemDetailParam } from '../reportGenerator/reportInterfaces';
4
+ export declare class CustomLabelAssessmentReporter {
5
+ private static rowId;
6
+ private static rowIdPrefix;
7
+ static getCustomLabelAssessmentData(customLabelAssessmentInfos: CustomLabelAssessmentInfo[], instanceUrl: string, omnistudioOrgDetails: OmnistudioOrgDetails, page?: number, pageSize?: number): ReportParam;
8
+ static getSummaryData(customLabelAssessmentInfos: CustomLabelAssessmentInfo[]): SummaryItemDetailParam[];
9
+ private static getRowsForReport;
10
+ private static getHeaderGroupsForReport;
11
+ private static getFilterGroupsForReport;
12
+ private static getStatusCssClass;
13
+ }
@@ -0,0 +1,179 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CustomLabelAssessmentReporter = void 0;
4
+ const reportUtil_1 = require("../reportGenerator/reportUtil");
5
+ class CustomLabelAssessmentReporter {
6
+ static getCustomLabelAssessmentData(customLabelAssessmentInfos, instanceUrl, omnistudioOrgDetails, page = 1, pageSize = 1000) {
7
+ const safeCustomLabelInfos = customLabelAssessmentInfos || [];
8
+ // Sort labels by name for consistent ordering
9
+ const sortedLabels = [...safeCustomLabelInfos].sort((a, b) => a.name.localeCompare(b.name));
10
+ const totalLabels = sortedLabels.length;
11
+ const totalPages = Math.ceil(totalLabels / pageSize);
12
+ const startIndex = (page - 1) * pageSize;
13
+ const endIndex = startIndex + pageSize;
14
+ const paginatedLabels = sortedLabels.slice(startIndex, endIndex);
15
+ const headerGroups = this.getHeaderGroupsForReport();
16
+ const filterGroups = this.getFilterGroupsForReport();
17
+ const rows = this.getRowsForReport(paginatedLabels, instanceUrl);
18
+ const title = 'Custom Label Assessment';
19
+ const heading = 'Custom Labels';
20
+ const result = {
21
+ title,
22
+ heading,
23
+ org: (0, reportUtil_1.getOrgDetailsForReport)(omnistudioOrgDetails),
24
+ assessmentDate: new Date().toString(),
25
+ total: totalLabels,
26
+ filterGroups,
27
+ headerGroups,
28
+ rows,
29
+ rollbackFlags: undefined,
30
+ callToAction: [],
31
+ reportType: 'customlabels', // Identifier for Custom Labels specific CSS styling
32
+ };
33
+ // Only add pagination if there are multiple pages
34
+ if (totalPages > 1) {
35
+ result.pagination = {
36
+ currentPage: page,
37
+ totalPages,
38
+ pageSize,
39
+ hasNextPage: page < totalPages,
40
+ hasPreviousPage: page > 1,
41
+ nextPageFile: page < totalPages ? `customlabel_assessment_Page_${page + 1}_of_${totalPages}.html` : undefined,
42
+ previousPageFile: page > 1 ? `customlabel_assessment_Page_${page - 1}_of_${totalPages}.html` : undefined,
43
+ };
44
+ }
45
+ return result;
46
+ }
47
+ static getSummaryData(customLabelAssessmentInfos) {
48
+ const safeCustomLabelInfos = customLabelAssessmentInfos || [];
49
+ const warnings = safeCustomLabelInfos.filter((label) => label.assessmentStatus === 'Warnings').length;
50
+ const needsManualIntervention = safeCustomLabelInfos.filter((label) => label.assessmentStatus === 'Needs manual intervention').length;
51
+ const failed = safeCustomLabelInfos.filter((label) => label.assessmentStatus === 'Failed').length;
52
+ return [
53
+ {
54
+ name: 'Warnings',
55
+ count: warnings,
56
+ cssClass: 'text-warning',
57
+ },
58
+ {
59
+ name: 'Needs manual intervention',
60
+ count: needsManualIntervention,
61
+ cssClass: 'text-error',
62
+ },
63
+ {
64
+ name: 'Failed',
65
+ count: failed,
66
+ cssClass: 'text-error',
67
+ },
68
+ ];
69
+ }
70
+ static getRowsForReport(customLabelAssessmentInfos, instanceUrl) {
71
+ const safeCustomLabelInfos = customLabelAssessmentInfos || [];
72
+ const rows = [];
73
+ const batchRows = safeCustomLabelInfos.map((info) => {
74
+ return {
75
+ rowId: `${this.rowIdPrefix}${this.rowId++}`,
76
+ data: [
77
+ (0, reportUtil_1.createRowDataParam)('name', info.name || '', true, 1, 1, false),
78
+ (0, reportUtil_1.createRowDataParam)('packageId', info.packageId || '<ID>', false, 1, 1, true, `${instanceUrl}/${info.packageId}`),
79
+ (0, reportUtil_1.createRowDataParam)('packageValue', info.packageValue || '', false, 1, 1, false, undefined, undefined, undefined, true),
80
+ (0, reportUtil_1.createRowDataParam)('coreId', info.coreId || '<Core Id>', false, 1, 1, true, `${instanceUrl}/${info.coreId}`),
81
+ (0, reportUtil_1.createRowDataParam)('coreValue', info.coreValue || '', false, 1, 1, false, undefined, undefined, undefined, true),
82
+ (0, reportUtil_1.createRowDataParam)('assessmentStatus', info.assessmentStatus || '', false, 1, 1, false, undefined, undefined, this.getStatusCssClass(info.assessmentStatus)),
83
+ (0, reportUtil_1.createRowDataParam)('summary', info.summary || '', false, 1, 1, false, undefined, undefined, undefined, true),
84
+ ],
85
+ };
86
+ });
87
+ rows.push(...batchRows);
88
+ return rows;
89
+ }
90
+ static getHeaderGroupsForReport() {
91
+ return [
92
+ {
93
+ header: [
94
+ {
95
+ name: 'Name',
96
+ colspan: 1,
97
+ rowspan: 2,
98
+ },
99
+ {
100
+ name: 'Package',
101
+ colspan: 2,
102
+ rowspan: 1,
103
+ },
104
+ {
105
+ name: 'Core',
106
+ colspan: 2,
107
+ rowspan: 1,
108
+ },
109
+ {
110
+ name: 'Assessment Status',
111
+ colspan: 1,
112
+ rowspan: 2,
113
+ },
114
+ {
115
+ name: 'Summary',
116
+ colspan: 1,
117
+ rowspan: 2,
118
+ },
119
+ ],
120
+ },
121
+ {
122
+ header: [
123
+ {
124
+ name: 'Id',
125
+ colspan: 1,
126
+ rowspan: 1,
127
+ },
128
+ {
129
+ name: 'Value',
130
+ colspan: 1,
131
+ rowspan: 1,
132
+ },
133
+ {
134
+ name: 'Id',
135
+ colspan: 1,
136
+ rowspan: 1,
137
+ },
138
+ {
139
+ name: 'Value',
140
+ colspan: 1,
141
+ rowspan: 1,
142
+ },
143
+ ],
144
+ },
145
+ ];
146
+ }
147
+ static getFilterGroupsForReport() {
148
+ return [
149
+ {
150
+ label: 'Assessment Status',
151
+ key: 'assessmentStatus',
152
+ filters: [
153
+ { label: 'Ready for migration' },
154
+ { label: 'Needs manual intervention' },
155
+ { label: 'Warnings' },
156
+ { label: 'Failed' },
157
+ ],
158
+ },
159
+ ];
160
+ }
161
+ static getStatusCssClass(status) {
162
+ switch (status) {
163
+ case 'Warnings':
164
+ return 'text-warning';
165
+ case 'Needs manual intervention':
166
+ return 'text-error';
167
+ case 'Failed':
168
+ return 'text-error';
169
+ case 'Ready for migration':
170
+ return 'text-success';
171
+ default:
172
+ return 'text-success';
173
+ }
174
+ }
175
+ }
176
+ exports.CustomLabelAssessmentReporter = CustomLabelAssessmentReporter;
177
+ CustomLabelAssessmentReporter.rowId = 0;
178
+ CustomLabelAssessmentReporter.rowIdPrefix = 'cl-row-data-';
179
+ //# sourceMappingURL=CustomLabelAssessmentReporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomLabelAssessmentReporter.js","sourceRoot":"","sources":["../../../src/utils/resultsbuilder/CustomLabelAssessmentReporter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { OmnistudioOrgDetails } from '../orgUtils';
2
+ import { ReportParam } from '../reportGenerator/reportInterfaces';
3
+ export interface CustomLabelMigrationData extends ReportParam {
4
+ [key: string]: any;
5
+ }
6
+ export interface CustomLabelMigrationInfo {
7
+ labelName: string;
8
+ cloneStatus: string;
9
+ message: string;
10
+ coreInfo: {
11
+ id: string;
12
+ value: string;
13
+ };
14
+ packageInfo: {
15
+ id: string;
16
+ value: string;
17
+ };
18
+ errors: string[];
19
+ warnings: string[];
20
+ }
21
+ export declare class CustomLabelMigrationReporter {
22
+ static getCustomLabelMigrationData(customLabelMigrationInfos: CustomLabelMigrationInfo[], instanceUrl: string, omnistudioOrgDetails: OmnistudioOrgDetails, page?: number, pageSize?: number): CustomLabelMigrationData;
23
+ static generateCustomTemplateForPage(page: number, totalPages: number): string;
24
+ private static generateHardcodedPageLinks;
25
+ private static getRowsForReport;
26
+ private static getHeaderGroupsForReport;
27
+ }
@@ -0,0 +1,262 @@
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 Status', 'status', ['Successfully migrated', 'Failed', 'Skipped']),
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
+ // Don't show pagination if there's only 1 page
47
+ if (totalPages === 1) {
48
+ return '';
49
+ }
50
+ // Calculate the range of pages to show around current page
51
+ const range = 2; // Show 2 pages on each side of current page
52
+ const start = Math.max(2, page - range);
53
+ const end = Math.min(totalPages - 1, page + range);
54
+ const showFirstEllipsis = start > 2;
55
+ const showLastEllipsis = end < totalPages - 1;
56
+ // Generate hardcoded pagination HTML for this specific page
57
+ const paginationHtml = `
58
+ <!-- Pagination Navigation -->
59
+ <div class="pagination-container" style="margin-top: 20px; text-align: center;">
60
+ <div class="pagination-info" style="margin-bottom: 10px; color: #666;">
61
+ Page ${page} of ${totalPages} (1000 items per page)
62
+ </div>
63
+
64
+ <div class="pagination-controls">
65
+ ${page > 1
66
+ ? `<a href="Custom_Labels_Page_${page - 1}_of_${totalPages}.html" class="pagination-btn" style="
67
+ display: inline-block;
68
+ padding: 8px 16px;
69
+ margin: 0 5px;
70
+ background-color: #0070d2;
71
+ color: white;
72
+ text-decoration: none;
73
+ border-radius: 4px;
74
+ font-weight: bold;
75
+ ">&larr; Previous</a>`
76
+ : ''}
77
+
78
+ <span class="current-page" style="
79
+ display: inline-block;
80
+ padding: 8px 16px;
81
+ margin: 0 5px;
82
+ background-color: #f3f2f2;
83
+ color: #333;
84
+ border-radius: 4px;
85
+ font-weight: bold;
86
+ ">${page}</span>
87
+
88
+ ${page < totalPages
89
+ ? `<a href="Custom_Labels_Page_${page + 1}_of_${totalPages}.html" class="pagination-btn" style="
90
+ display: inline-block;
91
+ padding: 8px 16px;
92
+ margin: 0 5px;
93
+ background-color: #0070d2;
94
+ color: white;
95
+ text-decoration: none;
96
+ border-radius: 4px;
97
+ font-weight: bold;
98
+ ">Next &rarr;</a>`
99
+ : ''}
100
+ </div>
101
+
102
+ <div class="pagination-jump" style="margin-top: 10px;">
103
+ <span style="color: #666; margin-right: 10px;">Jump to page:</span>
104
+
105
+ <!-- Always show first page -->
106
+ <a href="Custom_Labels_Page_1_of_${totalPages}.html" style="
107
+ display: inline-block;
108
+ padding: 4px 8px;
109
+ margin: 0 2px;
110
+ background-color: ${page === 1 ? '#0070d2' : '#f3f2f2'};
111
+ color: ${page === 1 ? 'white' : '#333'};
112
+ text-decoration: none;
113
+ border-radius: 2px;
114
+ font-size: 12px;
115
+ ">1</a>
116
+
117
+ <!-- Show ellipsis if needed -->
118
+ ${showFirstEllipsis ? '<span style="color: #666; margin: 0 5px;">...</span>' : ''}
119
+
120
+ <!-- Show pages around current page -->
121
+ ${Array.from({ length: end - start + 1 }, (_, i) => start + i)
122
+ .map((pageNum) => `
123
+ <a href="Custom_Labels_Page_${pageNum}_of_${totalPages}.html" style="
124
+ display: inline-block;
125
+ padding: 4px 8px;
126
+ margin: 0 2px;
127
+ background-color: ${pageNum === page ? '#0070d2' : '#f3f2f2'};
128
+ color: ${pageNum === page ? 'white' : '#333'};
129
+ text-decoration: none;
130
+ border-radius: 2px;
131
+ font-size: 12px;
132
+ ">${pageNum}</a>
133
+ `)
134
+ .join('')}
135
+
136
+ <!-- Show ellipsis if needed -->
137
+ ${showLastEllipsis ? '<span style="color: #666; margin: 0 5px;">...</span>' : ''}
138
+
139
+ <!-- Always show last page if different from first page -->
140
+ ${totalPages > 1
141
+ ? `<a href="Custom_Labels_Page_${totalPages}_of_${totalPages}.html" style="
142
+ display: inline-block;
143
+ padding: 4px 8px;
144
+ margin: 0 2px;
145
+ background-color: ${page === totalPages ? '#0070d2' : '#f3f2f2'};
146
+ color: ${page === totalPages ? 'white' : '#333'};
147
+ text-decoration: none;
148
+ border-radius: 2px;
149
+ font-size: 12px;
150
+ ">${totalPages}</a>`
151
+ : ''}
152
+ </div>
153
+ </div>
154
+ `;
155
+ return paginationHtml;
156
+ }
157
+ static generateHardcodedPageLinks(currentPage, totalPages) {
158
+ const links = {};
159
+ // Generate links for pages 1-5 (most common case)
160
+ for (let i = 1; i <= Math.min(5, totalPages); i++) {
161
+ links[`paginationPage${i}Href`] = `Custom_Labels_Page_${i}_of_${totalPages}.html`;
162
+ links[`paginationPage${i}IsCurrent`] = i === currentPage;
163
+ }
164
+ // Generate links for pages around current page (if different from 1-5)
165
+ const start = Math.max(1, currentPage - 2);
166
+ const end = Math.min(totalPages, currentPage + 2);
167
+ for (let i = start; i <= end; i++) {
168
+ links[`paginationPage${i}Href`] = `Custom_Labels_Page_${i}_of_${totalPages}.html`;
169
+ links[`paginationPage${i}IsCurrent`] = i === currentPage;
170
+ }
171
+ // Always include last page
172
+ if (totalPages > 5) {
173
+ links[`paginationPage${totalPages}Href`] = `Custom_Labels_Page_${totalPages}_of_${totalPages}.html`;
174
+ links[`paginationPage${totalPages}IsCurrent`] = totalPages === currentPage;
175
+ }
176
+ return links;
177
+ }
178
+ static getRowsForReport(customLabelMigrationInfos) {
179
+ const rows = [];
180
+ let rowIndex = 0;
181
+ customLabelMigrationInfos.forEach((info) => {
182
+ var _a, _b, _c, _d;
183
+ const statusClass = info.cloneStatus === 'created' ? 'text-success' : info.cloneStatus === 'error' ? 'text-error' : 'text-warning';
184
+ rows.push({
185
+ rowId: `custom_label_${rowIndex++}`,
186
+ data: [
187
+ (0, reportUtil_1.createRowDataParam)('name', info.labelName, true, 1, 1, false),
188
+ (0, reportUtil_1.createRowDataParam)('packageId', ((_a = info.packageInfo) === null || _a === void 0 ? void 0 : _a.id) || '', false, 1, 1, true),
189
+ (0, reportUtil_1.createRowDataParam)('packageValue', ((_b = info.packageInfo) === null || _b === void 0 ? void 0 : _b.value) || '', false, 1, 1, false, undefined, undefined, undefined, true),
190
+ (0, reportUtil_1.createRowDataParam)('coreId', ((_c = info.coreInfo) === null || _c === void 0 ? void 0 : _c.id) || '<Core Id>', false, 1, 1, true),
191
+ (0, reportUtil_1.createRowDataParam)('coreValue', ((_d = info.coreInfo) === null || _d === void 0 ? void 0 : _d.value) || '', false, 1, 1, false, undefined, undefined, undefined, true),
192
+ (0, reportUtil_1.createRowDataParam)('status', info.cloneStatus === 'created'
193
+ ? 'Successfully migrated'
194
+ : info.cloneStatus === 'error'
195
+ ? 'Failed'
196
+ : 'Skipped', false, 1, 1, false, undefined, undefined, statusClass),
197
+ (0, reportUtil_1.createRowDataParam)('summary', info.message || '', false, 1, 1, false, undefined, undefined, undefined, true),
198
+ ],
199
+ });
200
+ });
201
+ return rows;
202
+ }
203
+ static getHeaderGroupsForReport() {
204
+ return [
205
+ {
206
+ header: [
207
+ {
208
+ name: 'Name',
209
+ colspan: 1,
210
+ rowspan: 2,
211
+ },
212
+ {
213
+ name: 'Package',
214
+ colspan: 2,
215
+ rowspan: 1,
216
+ },
217
+ {
218
+ name: 'Core',
219
+ colspan: 2,
220
+ rowspan: 1,
221
+ },
222
+ {
223
+ name: 'Status',
224
+ colspan: 1,
225
+ rowspan: 2,
226
+ },
227
+ {
228
+ name: 'Summary',
229
+ colspan: 1,
230
+ rowspan: 2,
231
+ },
232
+ ],
233
+ },
234
+ {
235
+ header: [
236
+ {
237
+ name: 'Id',
238
+ colspan: 1,
239
+ rowspan: 1,
240
+ },
241
+ {
242
+ name: 'Value',
243
+ colspan: 1,
244
+ rowspan: 1,
245
+ },
246
+ {
247
+ name: 'Id',
248
+ colspan: 1,
249
+ rowspan: 1,
250
+ },
251
+ {
252
+ name: 'Value',
253
+ colspan: 1,
254
+ rowspan: 1,
255
+ },
256
+ ],
257
+ },
258
+ ];
259
+ }
260
+ }
261
+ exports.CustomLabelMigrationReporter = CustomLabelMigrationReporter;
262
+ //# 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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"}