@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
@@ -0,0 +1,104 @@
1
+ import { Messages } from '@salesforce/core';
2
+ import { AssessmentInfo } from '../../interfaces';
3
+ import { SummaryItemParam } from '../../reportGenerator/reportInterfaces';
4
+ import { OmnistudioOrgDetails } from '../../orgUtils';
5
+ import { CustomLabelAssessmentInfo } from '../../customLabels';
6
+ /**
7
+ * Helper class for assessment report generation
8
+ * Handles document generation, dashboard creation, and summary item creation
9
+ */
10
+ export declare class AssessmentReportHelper {
11
+ private static readonly DATA_MAPPER_FILE;
12
+ private static readonly INTEGRATION_PROCEDURE_FILE;
13
+ private static readonly OMNISCRIPT_FILE;
14
+ private static readonly FLEXCARD_FILE;
15
+ private static readonly GLOBAL_AUTO_NUMBER_FILE;
16
+ private static readonly APEX_FILE;
17
+ private static readonly FLEXIPAGE_FILE;
18
+ private static readonly EXPERIENCE_SITE_FILE;
19
+ private static readonly LWC_FILE;
20
+ private static readonly CUSTOM_LABEL_FILE;
21
+ private static readonly SAVE_FOR_LATER_FILE;
22
+ private static readonly DASHBOARD_TEMPLATE_NAME;
23
+ /**
24
+ * Creates the assessment dashboard
25
+ */
26
+ static createDashboard(basePath: string, dashboardFileName: string, templateDir: string, result: AssessmentInfo, omnistudioOrgDetails: OmnistudioOrgDetails, messages: Messages<string>, reports: string[], userActionMessages: string[]): void;
27
+ /**
28
+ * Creates all summary items for the given reports
29
+ */
30
+ static createSummaryItems(result: AssessmentInfo, omnistudioOrgDetails: OmnistudioOrgDetails, reports: string[], messages: Messages<string>): SummaryItemParam[];
31
+ /**
32
+ * Creates a document by writing HTML content to a file
33
+ */
34
+ static createDocument(filePath: string, htmlBody: string): void;
35
+ /**
36
+ * Generates Omniscript assessment document
37
+ */
38
+ static generateOmniscriptDocument(basePath: string, fileName: string, result: AssessmentInfo, instanceUrl: string, omnistudioOrgDetails: OmnistudioOrgDetails, messages: Messages<string>, template: string): void;
39
+ /**
40
+ * Generates Flexcard assessment document
41
+ */
42
+ static generateFlexcardDocument(basePath: string, fileName: string, result: AssessmentInfo, instanceUrl: string, omnistudioOrgDetails: OmnistudioOrgDetails, messages: Messages<string>, template: string): void;
43
+ /**
44
+ * Generates Integration Procedure assessment document
45
+ */
46
+ static generateIntegrationProcedureDocument(basePath: string, fileName: string, result: AssessmentInfo, instanceUrl: string, omnistudioOrgDetails: OmnistudioOrgDetails, messages: Messages<string>, template: string): void;
47
+ /**
48
+ * Generates Data Mapper assessment document
49
+ */
50
+ static generateDataMapperDocument(basePath: string, fileName: string, result: AssessmentInfo, instanceUrl: string, omnistudioOrgDetails: OmnistudioOrgDetails, messages: Messages<string>, template: string): void;
51
+ /**
52
+ * Generates Global Auto Number assessment document
53
+ */
54
+ static generateGlobalAutoNumberDocument(basePath: string, fileName: string, result: AssessmentInfo, instanceUrl: string, omnistudioOrgDetails: OmnistudioOrgDetails, messages: Messages<string>, template: string): void;
55
+ /**
56
+ * Generates Apex assessment document
57
+ */
58
+ static generateApexDocument(basePath: string, fileName: string, result: AssessmentInfo, omnistudioOrgDetails: OmnistudioOrgDetails, messages: Messages<string>, template: string): void;
59
+ /**
60
+ * Generates Experience Site assessment document
61
+ */
62
+ static generateExperienceSiteDocument(basePath: string, fileName: string, result: AssessmentInfo, omnistudioOrgDetails: OmnistudioOrgDetails, messages: Messages<string>, template: string): void;
63
+ /**
64
+ * Generates Flexipage assessment document
65
+ */
66
+ static generateFlexipageDocument(basePath: string, fileName: string, result: AssessmentInfo, omnistudioOrgDetails: OmnistudioOrgDetails, messages: Messages<string>, template: string): void;
67
+ /**
68
+ * Generates LWC assessment document
69
+ */
70
+ static generateLWCDocument(basePath: string, fileName: string, result: AssessmentInfo, omnistudioOrgDetails: OmnistudioOrgDetails, messages: Messages<string>, template: string): void;
71
+ /**
72
+ * Generates Save for Later assessment document
73
+ */
74
+ static generateSaveForLaterDocument(basePath: string, fileName: string, result: AssessmentInfo, instanceUrl: string, omnistudioOrgDetails: OmnistudioOrgDetails, messages: Messages<string>, template: string): void;
75
+ /**
76
+ * Generates Custom Label assessment document with pagination
77
+ */
78
+ static generateCustomLabelDocument(basePath: string, fileName: string, customLabels: CustomLabelAssessmentInfo[], instanceUrl: string, omnistudioOrgDetails: OmnistudioOrgDetails, messages: Messages<string>, template: string, allCustomLabels?: CustomLabelAssessmentInfo[]): void;
79
+ /**
80
+ * Generates a CSV file containing all custom label data for export
81
+ */
82
+ private static generateCustomLabelCsvFile;
83
+ /**
84
+ * Creates the dashboard parameters
85
+ */
86
+ private static createDashboardParam;
87
+ private static createDataMapperSummaryItem;
88
+ private static createIntegrationProcedureSummaryItem;
89
+ private static createOmniscriptSummaryItem;
90
+ private static createFlexcardSummaryItem;
91
+ private static createGlobalAutoNumberSummaryItem;
92
+ private static createApexSummaryItem;
93
+ private static createFlexipageSummaryItem;
94
+ private static createExperienceSiteSummaryItem;
95
+ private static createLWCSummaryItem;
96
+ private static createSaveForLaterSummaryItem;
97
+ private static createCustomLabelSummaryItem;
98
+ private static createSummaryItem;
99
+ /**
100
+ * Helper method to return custom message data for summary items
101
+ */
102
+ private static getSummaryDataWithCustomMessage;
103
+ private static getCustomLabelAssessmentFileName;
104
+ }
@@ -0,0 +1,380 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AssessmentReportHelper = void 0;
7
+ const fs_1 = __importDefault(require("fs"));
8
+ const path_1 = __importDefault(require("path"));
9
+ const stringContants_1 = require("../../constants/stringContants");
10
+ const generate_1 = require("../../templateParser/generate");
11
+ const reportUtil_1 = require("../../reportGenerator/reportUtil");
12
+ const logger_1 = require("../../logger");
13
+ const stringUtils_1 = require("../../stringUtils");
14
+ const dataModelService_1 = require("../../dataModelService");
15
+ const OSAssessmentReporter_1 = require("../OSAssessmentReporter");
16
+ const ApexAssessmentReporter_1 = require("../ApexAssessmentReporter");
17
+ const IPAssessmentReporter_1 = require("../IPAssessmentReporter");
18
+ const DRAssessmentReporter_1 = require("../DRAssessmentReporter");
19
+ const FlexcardAssessmentReporter_1 = require("../FlexcardAssessmentReporter");
20
+ const LWCAssessmentReporter_1 = require("../LWCAssessmentReporter");
21
+ const GlobalAutoNumberAssessmentReporter_1 = require("../GlobalAutoNumberAssessmentReporter");
22
+ const FlexipageAssessmentReporter_1 = require("../FlexipageAssessmentReporter");
23
+ const ExperienceSiteAssessmentReporter_1 = require("../ExperienceSiteAssessmentReporter");
24
+ const CustomLabelAssessmentReporter_1 = require("../CustomLabelAssessmentReporter");
25
+ const SaveForLaterAssessmentReporter_1 = require("../SaveForLaterAssessmentReporter");
26
+ /**
27
+ * Helper class for assessment report generation
28
+ * Handles document generation, dashboard creation, and summary item creation
29
+ */
30
+ class AssessmentReportHelper {
31
+ // =============================================================================
32
+ // PUBLIC METHODS - DASHBOARD GENERATION
33
+ // =============================================================================
34
+ /**
35
+ * Creates the assessment dashboard
36
+ */
37
+ static createDashboard(basePath, dashboardFileName, templateDir, result, omnistudioOrgDetails, messages, reports, userActionMessages) {
38
+ const dashboardTemplatePath = path_1.default.join(__dirname, '..', '..', '..', templateDir, this.DASHBOARD_TEMPLATE_NAME);
39
+ const dashboardTemplate = fs_1.default.readFileSync(dashboardTemplatePath, 'utf8');
40
+ const dashboardParam = this.createDashboardParam(result, omnistudioOrgDetails, reports, userActionMessages, messages);
41
+ const dashboardHtml = generate_1.TemplateParser.generate(dashboardTemplate, dashboardParam, messages);
42
+ fs_1.default.writeFileSync(path_1.default.join(basePath, dashboardFileName), dashboardHtml);
43
+ }
44
+ // =============================================================================
45
+ // PUBLIC METHODS - SUMMARY ITEMS CREATION
46
+ // =============================================================================
47
+ /**
48
+ * Creates all summary items for the given reports
49
+ */
50
+ static createSummaryItems(result, omnistudioOrgDetails, reports, messages) {
51
+ const summaryItems = [];
52
+ if (reports.includes(stringContants_1.Constants.DataMapper)) {
53
+ summaryItems.push(this.createDataMapperSummaryItem(result, messages));
54
+ }
55
+ if (reports.includes(stringContants_1.Constants.IntegrationProcedure)) {
56
+ summaryItems.push(this.createIntegrationProcedureSummaryItem(result, messages));
57
+ }
58
+ if (reports.includes(stringContants_1.Constants.Omniscript)) {
59
+ summaryItems.push(this.createOmniscriptSummaryItem(result, messages));
60
+ }
61
+ if (reports.includes(stringContants_1.Constants.Flexcard)) {
62
+ summaryItems.push(this.createFlexcardSummaryItem(result, messages));
63
+ }
64
+ if (reports.includes(stringContants_1.Constants.GlobalAutoNumber)) {
65
+ summaryItems.push(this.createGlobalAutoNumberSummaryItem(result, messages, omnistudioOrgDetails));
66
+ }
67
+ if (reports.includes(stringContants_1.Constants.Apex)) {
68
+ summaryItems.push(this.createApexSummaryItem(result));
69
+ }
70
+ if (reports.includes(stringContants_1.Constants.FlexiPage)) {
71
+ summaryItems.push(this.createFlexipageSummaryItem(result));
72
+ }
73
+ if (reports.includes(stringContants_1.Constants.ExpSites)) {
74
+ summaryItems.push(this.createExperienceSiteSummaryItem(result));
75
+ }
76
+ if (reports.includes(stringContants_1.Constants.LWC)) {
77
+ summaryItems.push(this.createLWCSummaryItem(result));
78
+ }
79
+ if (reports.includes(stringContants_1.Constants.CustomLabel)) {
80
+ summaryItems.push(this.createCustomLabelSummaryItem(result));
81
+ }
82
+ // Save for Later is included when it's in the reports array
83
+ if (reports.includes(stringContants_1.Constants.SaveForLater)) {
84
+ summaryItems.push(this.createSaveForLaterSummaryItem(result, messages));
85
+ }
86
+ return summaryItems;
87
+ }
88
+ // =============================================================================
89
+ // PUBLIC METHODS - DOCUMENT GENERATION
90
+ // =============================================================================
91
+ /**
92
+ * Creates a document by writing HTML content to a file
93
+ */
94
+ static createDocument(filePath, htmlBody) {
95
+ fs_1.default.writeFileSync(filePath, htmlBody);
96
+ }
97
+ /**
98
+ * Generates Omniscript assessment document
99
+ */
100
+ static generateOmniscriptDocument(basePath, fileName, result, instanceUrl, omnistudioOrgDetails, messages, template) {
101
+ if ((0, dataModelService_1.isStandardDataModelWithMetadataAPIEnabled)()) {
102
+ return;
103
+ }
104
+ this.createDocument(path_1.default.join(basePath, fileName), generate_1.TemplateParser.generate(template, OSAssessmentReporter_1.OSAssessmentReporter.getOmniscriptAssessmentData(result.omniAssessmentInfo.osAssessmentInfos, instanceUrl, omnistudioOrgDetails), messages));
105
+ }
106
+ /**
107
+ * Generates Flexcard assessment document
108
+ */
109
+ static generateFlexcardDocument(basePath, fileName, result, instanceUrl, omnistudioOrgDetails, messages, template) {
110
+ if ((0, dataModelService_1.isStandardDataModelWithMetadataAPIEnabled)()) {
111
+ return;
112
+ }
113
+ this.createDocument(path_1.default.join(basePath, fileName), generate_1.TemplateParser.generate(template, FlexcardAssessmentReporter_1.FlexcardAssessmentReporter.getFlexcardAssessmentData(result.flexCardAssessmentInfos, instanceUrl, omnistudioOrgDetails), messages));
114
+ }
115
+ /**
116
+ * Generates Integration Procedure assessment document
117
+ */
118
+ static generateIntegrationProcedureDocument(basePath, fileName, result, instanceUrl, omnistudioOrgDetails, messages, template) {
119
+ if ((0, dataModelService_1.isStandardDataModelWithMetadataAPIEnabled)()) {
120
+ return;
121
+ }
122
+ this.createDocument(path_1.default.join(basePath, fileName), generate_1.TemplateParser.generate(template, IPAssessmentReporter_1.IPAssessmentReporter.getIntegrationProcedureAssessmentData(result.omniAssessmentInfo.ipAssessmentInfos, instanceUrl, omnistudioOrgDetails), messages));
123
+ }
124
+ /**
125
+ * Generates Data Mapper assessment document
126
+ */
127
+ static generateDataMapperDocument(basePath, fileName, result, instanceUrl, omnistudioOrgDetails, messages, template) {
128
+ if ((0, dataModelService_1.isStandardDataModelWithMetadataAPIEnabled)()) {
129
+ return;
130
+ }
131
+ this.createDocument(path_1.default.join(basePath, fileName), generate_1.TemplateParser.generate(template, DRAssessmentReporter_1.DRAssessmentReporter.getDatamapperAssessmentData(result.dataRaptorAssessmentInfos, instanceUrl, omnistudioOrgDetails), messages));
132
+ }
133
+ /**
134
+ * Generates Global Auto Number assessment document
135
+ */
136
+ static generateGlobalAutoNumberDocument(basePath, fileName, result, instanceUrl, omnistudioOrgDetails, messages, template) {
137
+ if (!(0, dataModelService_1.isFoundationPackage)()) {
138
+ this.createDocument(path_1.default.join(basePath, fileName), generate_1.TemplateParser.generate(template, GlobalAutoNumberAssessmentReporter_1.GlobalAutoNumberAssessmentReporter.getGlobalAutoNumberAssessmentData(result.globalAutoNumberAssessmentInfos, instanceUrl, omnistudioOrgDetails), messages));
139
+ }
140
+ }
141
+ /**
142
+ * Generates Apex assessment document
143
+ */
144
+ static generateApexDocument(basePath, fileName, result, omnistudioOrgDetails, messages, template) {
145
+ this.createDocument(path_1.default.join(basePath, fileName), generate_1.TemplateParser.generate(template, ApexAssessmentReporter_1.ApexAssessmentReporter.getApexAssessmentData(result.apexAssessmentInfos, omnistudioOrgDetails), messages));
146
+ }
147
+ /**
148
+ * Generates Experience Site assessment document
149
+ */
150
+ static generateExperienceSiteDocument(basePath, fileName, result, omnistudioOrgDetails, messages, template) {
151
+ this.createDocument(path_1.default.join(basePath, fileName), generate_1.TemplateParser.generate(template, ExperienceSiteAssessmentReporter_1.ExperienceSiteAssessmentReporter.getExperienceSiteAssessmentData(result.experienceSiteAssessmentInfos, omnistudioOrgDetails), messages));
152
+ }
153
+ /**
154
+ * Generates Flexipage assessment document
155
+ */
156
+ static generateFlexipageDocument(basePath, fileName, result, omnistudioOrgDetails, messages, template) {
157
+ this.createDocument(path_1.default.join(basePath, fileName), generate_1.TemplateParser.generate(template, FlexipageAssessmentReporter_1.FlexipageAssessmentReporter.getFlexipageAssessmentData(result.flexipageAssessmentInfos, omnistudioOrgDetails), messages));
158
+ }
159
+ /**
160
+ * Generates LWC assessment document
161
+ */
162
+ static generateLWCDocument(basePath, fileName, result, omnistudioOrgDetails, messages, template) {
163
+ this.createDocument(path_1.default.join(basePath, fileName), generate_1.TemplateParser.generate(template, LWCAssessmentReporter_1.LWCAssessmentReporter.getLwcAssessmentData(result.lwcAssessmentInfos, omnistudioOrgDetails), messages));
164
+ }
165
+ /**
166
+ * Generates Save for Later assessment document
167
+ */
168
+ static generateSaveForLaterDocument(basePath, fileName, result, instanceUrl, omnistudioOrgDetails, messages, template) {
169
+ if ((0, dataModelService_1.isStandardDataModelWithMetadataAPIEnabled)()) {
170
+ return;
171
+ }
172
+ this.createDocument(path_1.default.join(basePath, fileName), generate_1.TemplateParser.generate(template, SaveForLaterAssessmentReporter_1.SaveForLaterAssessmentReporter.getSaveForLaterAssessmentData(result.saveForLaterAssessmentInfos || [], instanceUrl, omnistudioOrgDetails), messages));
173
+ }
174
+ /**
175
+ * Generates Custom Label assessment document with pagination
176
+ */
177
+ static generateCustomLabelDocument(basePath, fileName, customLabels, instanceUrl, omnistudioOrgDetails, messages, template, allCustomLabels) {
178
+ const pageSize = 1000;
179
+ const totalLabels = customLabels.length;
180
+ const totalPages = Math.max(1, Math.ceil(totalLabels / pageSize));
181
+ // Generate CSV file with all labels (including success records) for export
182
+ this.generateCustomLabelCsvFile(basePath, stringContants_1.Constants.CustomLabelAssessmentCsvFileName, allCustomLabels || customLabels);
183
+ // Generate paginated reports
184
+ for (let page = 1; page <= totalPages; page++) {
185
+ const data = CustomLabelAssessmentReporter_1.CustomLabelAssessmentReporter.getCustomLabelAssessmentData(customLabels, instanceUrl, omnistudioOrgDetails, page, pageSize);
186
+ // Pass CSV filename in props so the export button can download it
187
+ data.props = JSON.stringify({ csvFile: stringContants_1.Constants.CustomLabelAssessmentCsvFileName });
188
+ const html = generate_1.TemplateParser.generate(template, data, messages);
189
+ const pageFileName = totalPages > 1 ? `customlabel_assessment_Page_${page}_of_${totalPages}.html` : fileName;
190
+ this.createDocument(path_1.default.join(basePath, pageFileName), html);
191
+ logger_1.Logger.logVerbose(messages.getMessage('generatedCustomLabelAssessmentReportPage', [page, totalPages, data.rows.length]));
192
+ }
193
+ }
194
+ /**
195
+ * Generates a CSV file containing all custom label data for export
196
+ */
197
+ static generateCustomLabelCsvFile(basePath, fileName, allLabels) {
198
+ const headers = [
199
+ 'Name',
200
+ 'Package - Id',
201
+ 'Package - Value',
202
+ 'Core - Id',
203
+ 'Core - Value',
204
+ 'Assessment Status',
205
+ 'Summary',
206
+ ];
207
+ const csvRows = [];
208
+ // Add BOM for Excel UTF-8 compatibility
209
+ csvRows.push(headers.map((h) => (0, stringUtils_1.escapeCSVValue)(h)).join(','));
210
+ // Sort labels by name for consistent ordering
211
+ const sortedLabels = [...allLabels].sort((a, b) => a.name.localeCompare(b.name));
212
+ for (const label of sortedLabels) {
213
+ const row = [
214
+ label.name || '',
215
+ label.packageId || '',
216
+ (0, stringUtils_1.stripHtml)(label.packageValue || ''),
217
+ label.coreId || '',
218
+ (0, stringUtils_1.stripHtml)(label.coreValue || ''),
219
+ label.assessmentStatus || '',
220
+ label.summary || '',
221
+ ];
222
+ csvRows.push(row.map((v) => (0, stringUtils_1.escapeCSVValue)(v)).join(','));
223
+ }
224
+ const csvContent = '' + csvRows.join('\n');
225
+ fs_1.default.writeFileSync(path_1.default.join(basePath, fileName), csvContent, 'utf8');
226
+ logger_1.Logger.logVerbose(`Generated custom label CSV export: ${fileName} with ${allLabels.length} records`);
227
+ }
228
+ // =============================================================================
229
+ // PRIVATE METHODS - DASHBOARD HELPERS
230
+ // =============================================================================
231
+ /**
232
+ * Creates the dashboard parameters
233
+ */
234
+ static createDashboardParam(result, omnistudioOrgDetails, reports, userActionMessages, messages) {
235
+ const summaryItems = this.createSummaryItems(result, omnistudioOrgDetails, reports, messages);
236
+ return {
237
+ title: 'Omnistudio Assessment Report Dashboard',
238
+ heading: 'Omnistudio Assessment Report Dashboard',
239
+ org: (0, reportUtil_1.getOrgDetailsForReport)(omnistudioOrgDetails),
240
+ assessmentDate: new Date().toLocaleString(),
241
+ summaryItems,
242
+ mode: 'assess',
243
+ actionItems: userActionMessages,
244
+ };
245
+ }
246
+ // =============================================================================
247
+ // PRIVATE METHODS - SUMMARY ITEM CREATORS
248
+ // =============================================================================
249
+ static createDataMapperSummaryItem(result, messages) {
250
+ return this.createSummaryItem('Data Mappers', result.dataRaptorAssessmentInfos, this.DATA_MAPPER_FILE, DRAssessmentReporter_1.DRAssessmentReporter, messages.getMessage('processingNotRequired'));
251
+ }
252
+ static createIntegrationProcedureSummaryItem(result, messages) {
253
+ return this.createSummaryItem('Integration Procedures', result.omniAssessmentInfo.ipAssessmentInfos, this.INTEGRATION_PROCEDURE_FILE, IPAssessmentReporter_1.IPAssessmentReporter, messages.getMessage('processingNotRequired'));
254
+ }
255
+ static createOmniscriptSummaryItem(result, messages) {
256
+ return this.createSummaryItem('Omniscripts', result.omniAssessmentInfo.osAssessmentInfos, this.OMNISCRIPT_FILE, OSAssessmentReporter_1.OSAssessmentReporter, messages.getMessage('processingNotRequired'));
257
+ }
258
+ static createFlexcardSummaryItem(result, messages) {
259
+ return this.createSummaryItem('Flexcards', result.flexCardAssessmentInfos, this.FLEXCARD_FILE, FlexcardAssessmentReporter_1.FlexcardAssessmentReporter, messages.getMessage('processingNotRequired'));
260
+ }
261
+ static createGlobalAutoNumberSummaryItem(result, messages, omnistudioOrgDetails) {
262
+ const isFoundationPkg = omnistudioOrgDetails.isFoundationPackage;
263
+ return {
264
+ name: 'Omni Global Auto Numbers',
265
+ total: isFoundationPkg ? 0 : result.globalAutoNumberAssessmentInfos.length,
266
+ data: isFoundationPkg
267
+ ? this.getSummaryDataWithCustomMessage(messages.getMessage('globalAutoNumberUnSupportedInOmnistudioPackage'))
268
+ : GlobalAutoNumberAssessmentReporter_1.GlobalAutoNumberAssessmentReporter.getSummaryData(result.globalAutoNumberAssessmentInfos),
269
+ file: this.GLOBAL_AUTO_NUMBER_FILE,
270
+ showDetails: !isFoundationPkg,
271
+ };
272
+ }
273
+ static createApexSummaryItem(result) {
274
+ return {
275
+ name: 'Apex Classes',
276
+ total: result.apexAssessmentInfos.length,
277
+ data: ApexAssessmentReporter_1.ApexAssessmentReporter.getSummaryData(result.apexAssessmentInfos),
278
+ file: this.APEX_FILE,
279
+ };
280
+ }
281
+ static createFlexipageSummaryItem(result) {
282
+ return {
283
+ name: 'FlexiPages',
284
+ total: result.flexipageAssessmentInfos.length,
285
+ data: FlexipageAssessmentReporter_1.FlexipageAssessmentReporter.getSummaryData(result.flexipageAssessmentInfos),
286
+ file: this.FLEXIPAGE_FILE,
287
+ };
288
+ }
289
+ static createExperienceSiteSummaryItem(result) {
290
+ return {
291
+ name: 'Experience Cloud Site Pages',
292
+ total: result.experienceSiteAssessmentInfos.flatMap((info) => info.experienceSiteAssessmentPageInfos).length,
293
+ data: ExperienceSiteAssessmentReporter_1.ExperienceSiteAssessmentReporter.getSummaryData(result.experienceSiteAssessmentInfos),
294
+ file: this.EXPERIENCE_SITE_FILE,
295
+ };
296
+ }
297
+ static createLWCSummaryItem(result) {
298
+ return {
299
+ name: 'Lightning Web Components',
300
+ total: result.lwcAssessmentInfos.length,
301
+ data: LWCAssessmentReporter_1.LWCAssessmentReporter.getSummaryData(result.lwcAssessmentInfos),
302
+ file: this.LWC_FILE,
303
+ };
304
+ }
305
+ static createSaveForLaterSummaryItem(result, messages) {
306
+ // Ensure we have an array
307
+ const saveForLaterData = Array.isArray(result.saveForLaterAssessmentInfos)
308
+ ? result.saveForLaterAssessmentInfos
309
+ : result.saveForLaterAssessmentInfos
310
+ ? [result.saveForLaterAssessmentInfos]
311
+ : [];
312
+ return this.createSummaryItem('OmniScript Saved Sessions', saveForLaterData, this.SAVE_FOR_LATER_FILE, SaveForLaterAssessmentReporter_1.SaveForLaterAssessmentReporter, messages.getMessage('processingNotRequired'));
313
+ }
314
+ static createCustomLabelSummaryItem(result) {
315
+ return {
316
+ name: 'Custom Labels',
317
+ total: result.customLabelStatistics.totalLabels,
318
+ data: [
319
+ {
320
+ name: 'Ready for migration',
321
+ count: result.customLabelStatistics.readyForMigration,
322
+ cssClass: 'text-success',
323
+ },
324
+ {
325
+ name: 'Warning',
326
+ count: result.customLabelStatistics.warnings,
327
+ cssClass: 'text-warning',
328
+ },
329
+ {
330
+ name: 'Needs manual intervention',
331
+ count: result.customLabelStatistics.needManualIntervention,
332
+ cssClass: 'text-error',
333
+ },
334
+ {
335
+ name: 'Failed',
336
+ count: result.customLabelStatistics.failed,
337
+ cssClass: 'text-error',
338
+ },
339
+ ],
340
+ file: this.getCustomLabelAssessmentFileName(result.customLabelStatistics.needManualIntervention),
341
+ };
342
+ }
343
+ static createSummaryItem(name, assessmentData, fileName, reporter, customMessage) {
344
+ return {
345
+ name,
346
+ total: (0, dataModelService_1.isStandardDataModelWithMetadataAPIEnabled)() ? 0 : assessmentData.length,
347
+ data: (0, dataModelService_1.isStandardDataModelWithMetadataAPIEnabled)()
348
+ ? this.getSummaryDataWithCustomMessage(customMessage)
349
+ : reporter.getSummaryData(assessmentData),
350
+ file: fileName,
351
+ showDetails: !(0, dataModelService_1.isStandardDataModelWithMetadataAPIEnabled)(),
352
+ };
353
+ }
354
+ /**
355
+ * Helper method to return custom message data for summary items
356
+ */
357
+ static getSummaryDataWithCustomMessage(customMessage) {
358
+ return [{ name: customMessage, count: 0, cssClass: 'text-warning' }];
359
+ }
360
+ static getCustomLabelAssessmentFileName(totalLabels) {
361
+ const pageSize = 1000;
362
+ const totalPages = Math.max(1, Math.ceil(totalLabels / pageSize));
363
+ return totalPages > 1 ? `customlabel_assessment_Page_1_of_${totalPages}.html` : this.CUSTOM_LABEL_FILE;
364
+ }
365
+ }
366
+ exports.AssessmentReportHelper = AssessmentReportHelper;
367
+ // File name constants
368
+ AssessmentReportHelper.DATA_MAPPER_FILE = 'datamapper_assessment.html';
369
+ AssessmentReportHelper.INTEGRATION_PROCEDURE_FILE = 'integration_procedure_assessment.html';
370
+ AssessmentReportHelper.OMNISCRIPT_FILE = 'omniscript_assessment.html';
371
+ AssessmentReportHelper.FLEXCARD_FILE = 'flexcard_assessment.html';
372
+ AssessmentReportHelper.GLOBAL_AUTO_NUMBER_FILE = 'globalautonumber_assessment.html';
373
+ AssessmentReportHelper.APEX_FILE = 'apex_assessment.html';
374
+ AssessmentReportHelper.FLEXIPAGE_FILE = 'flexipage_assessment.html';
375
+ AssessmentReportHelper.EXPERIENCE_SITE_FILE = 'experience_site_assessment.html';
376
+ AssessmentReportHelper.LWC_FILE = 'lwc_assessment.html';
377
+ AssessmentReportHelper.CUSTOM_LABEL_FILE = 'customlabel_assessment.html';
378
+ AssessmentReportHelper.SAVE_FOR_LATER_FILE = 'saveforlater_assessment.html';
379
+ AssessmentReportHelper.DASHBOARD_TEMPLATE_NAME = 'dashboard.template';
380
+ //# sourceMappingURL=AssessmentReportHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssessmentReportHelper.js","sourceRoot":"","sources":["../../../../src/utils/resultsbuilder/helpers/AssessmentReportHelper.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAKxB,mEAA2D;AAC3D,4DAA+D;AAC/D,iEAA0E;AAE1E,yCAAsC;AACtC,mDAA8D;AAC9D,6DAAwG;AACxG,kEAA+D;AAC/D,sEAAmE;AACnE,kEAA+D;AAC/D,kEAA+D;AAC/D,8EAA2E;AAC3E,oEAAiE;AACjE,8FAA2F;AAC3F,gFAA6E;AAC7E,0FAAuF;AACvF,oFAAiF;AACjF,sFAAmF;AAEnF;;;GAGG;AACH,MAAa,sBAAsB;IAejC,gFAAgF;IAChF,wCAAwC;IACxC,gFAAgF;IAEhF;;OAEG;IACI,MAAM,CAAC,eAAe,CAC3B,QAAgB,EAChB,iBAAyB,EACzB,WAAmB,EACnB,MAAsB,EACtB,oBAA0C,EAC1C,QAA0B,EAC1B,OAAiB,EACjB,kBAA4B;QAE5B,MAAM,qBAAqB,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAChH,MAAM,iBAAiB,GAAG,YAAE,CAAC,YAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QAEzE,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,CAC9C,MAAM,EACN,oBAAoB,EACpB,OAAO,EACP,kBAAkB,EAClB,QAAQ,CACT,CAAC;QAEF,MAAM,aAAa,GAAG,yBAAc,CAAC,QAAQ,CAAC,iBAAiB,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC;QAC3F,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,EAAE,aAAa,CAAC,CAAC;IAC1E,CAAC;IAED,gFAAgF;IAChF,0CAA0C;IAC1C,gFAAgF;IAEhF;;OAEG;IACI,MAAM,CAAC,kBAAkB,CAC9B,MAAsB,EACtB,oBAA0C,EAC1C,OAAiB,EACjB,QAA0B;QAE1B,MAAM,YAAY,GAAuB,EAAE,CAAC;QAE5C,IAAI,OAAO,CAAC,QAAQ,CAAC,0BAAS,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3C,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,CAAC,0BAAS,CAAC,oBAAoB,CAAC,EAAE,CAAC;YACrD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QAClF,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,CAAC,0BAAS,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3C,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,CAAC,0BAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACtE,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,CAAC,0BAAS,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACjD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,iCAAiC,CAAC,MAAM,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAC;QACpG,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,CAAC,0BAAS,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC;QACxD,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,CAAC,0BAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1C,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,CAAC,0BAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,CAAC,0BAAS,CAAC,GAAG,CAAC,EAAE,CAAC;YACpC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,CAAC,0BAAS,CAAC,WAAW,CAAC,EAAE,CAAC;YAC5C,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,MAAM,CAAC,CAAC,CAAC;QAC/D,CAAC;QACD,4DAA4D;QAC5D,IAAI,OAAO,CAAC,QAAQ,CAAC,0BAAS,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7C,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC1E,CAAC;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,gFAAgF;IAChF,uCAAuC;IACvC,gFAAgF;IAEhF;;OAEG;IACI,MAAM,CAAC,cAAc,CAAC,QAAgB,EAAE,QAAgB;QAC7D,YAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,0BAA0B,CACtC,QAAgB,EAChB,QAAgB,EAChB,MAAsB,EACtB,WAAmB,EACnB,oBAA0C,EAC1C,QAA0B,EAC1B,QAAgB;QAEhB,IAAI,IAAA,4DAAyC,GAAE,EAAE,CAAC;YAChD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,cAAc,CACjB,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAC7B,yBAAc,CAAC,QAAQ,CACrB,QAAQ,EACR,2CAAoB,CAAC,2BAA2B,CAC9C,MAAM,CAAC,kBAAkB,CAAC,iBAAiB,EAC3C,WAAW,EACX,oBAAoB,CACrB,EACD,QAAQ,CACT,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,wBAAwB,CACpC,QAAgB,EAChB,QAAgB,EAChB,MAAsB,EACtB,WAAmB,EACnB,oBAA0C,EAC1C,QAA0B,EAC1B,QAAgB;QAEhB,IAAI,IAAA,4DAAyC,GAAE,EAAE,CAAC;YAChD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,cAAc,CACjB,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAC7B,yBAAc,CAAC,QAAQ,CACrB,QAAQ,EACR,uDAA0B,CAAC,yBAAyB,CAClD,MAAM,CAAC,uBAAuB,EAC9B,WAAW,EACX,oBAAoB,CACrB,EACD,QAAQ,CACT,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,oCAAoC,CAChD,QAAgB,EAChB,QAAgB,EAChB,MAAsB,EACtB,WAAmB,EACnB,oBAA0C,EAC1C,QAA0B,EAC1B,QAAgB;QAEhB,IAAI,IAAA,4DAAyC,GAAE,EAAE,CAAC;YAChD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,cAAc,CACjB,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAC7B,yBAAc,CAAC,QAAQ,CACrB,QAAQ,EACR,2CAAoB,CAAC,qCAAqC,CACxD,MAAM,CAAC,kBAAkB,CAAC,iBAAiB,EAC3C,WAAW,EACX,oBAAoB,CACrB,EACD,QAAQ,CACT,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,0BAA0B,CACtC,QAAgB,EAChB,QAAgB,EAChB,MAAsB,EACtB,WAAmB,EACnB,oBAA0C,EAC1C,QAA0B,EAC1B,QAAgB;QAEhB,IAAI,IAAA,4DAAyC,GAAE,EAAE,CAAC;YAChD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,cAAc,CACjB,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAC7B,yBAAc,CAAC,QAAQ,CACrB,QAAQ,EACR,2CAAoB,CAAC,2BAA2B,CAC9C,MAAM,CAAC,yBAAyB,EAChC,WAAW,EACX,oBAAoB,CACrB,EACD,QAAQ,CACT,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,gCAAgC,CAC5C,QAAgB,EAChB,QAAgB,EAChB,MAAsB,EACtB,WAAmB,EACnB,oBAA0C,EAC1C,QAA0B,EAC1B,QAAgB;QAEhB,IAAI,CAAC,IAAA,sCAAmB,GAAE,EAAE,CAAC;YAC3B,IAAI,CAAC,cAAc,CACjB,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAC7B,yBAAc,CAAC,QAAQ,CACrB,QAAQ,EACR,uEAAkC,CAAC,iCAAiC,CAClE,MAAM,CAAC,+BAA+B,EACtC,WAAW,EACX,oBAAoB,CACrB,EACD,QAAQ,CACT,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,oBAAoB,CAChC,QAAgB,EAChB,QAAgB,EAChB,MAAsB,EACtB,oBAA0C,EAC1C,QAA0B,EAC1B,QAAgB;QAEhB,IAAI,CAAC,cAAc,CACjB,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAC7B,yBAAc,CAAC,QAAQ,CACrB,QAAQ,EACR,+CAAsB,CAAC,qBAAqB,CAAC,MAAM,CAAC,mBAAmB,EAAE,oBAAoB,CAAC,EAC9F,QAAQ,CACT,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,8BAA8B,CAC1C,QAAgB,EAChB,QAAgB,EAChB,MAAsB,EACtB,oBAA0C,EAC1C,QAA0B,EAC1B,QAAgB;QAEhB,IAAI,CAAC,cAAc,CACjB,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAC7B,yBAAc,CAAC,QAAQ,CACrB,QAAQ,EACR,mEAAgC,CAAC,+BAA+B,CAC9D,MAAM,CAAC,6BAA6B,EACpC,oBAAoB,CACrB,EACD,QAAQ,CACT,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,yBAAyB,CACrC,QAAgB,EAChB,QAAgB,EAChB,MAAsB,EACtB,oBAA0C,EAC1C,QAA0B,EAC1B,QAAgB;QAEhB,IAAI,CAAC,cAAc,CACjB,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAC7B,yBAAc,CAAC,QAAQ,CACrB,QAAQ,EACR,yDAA2B,CAAC,0BAA0B,CAAC,MAAM,CAAC,wBAAwB,EAAE,oBAAoB,CAAC,EAC7G,QAAQ,CACT,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,mBAAmB,CAC/B,QAAgB,EAChB,QAAgB,EAChB,MAAsB,EACtB,oBAA0C,EAC1C,QAA0B,EAC1B,QAAgB;QAEhB,IAAI,CAAC,cAAc,CACjB,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAC7B,yBAAc,CAAC,QAAQ,CACrB,QAAQ,EACR,6CAAqB,CAAC,oBAAoB,CAAC,MAAM,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,EAC3F,QAAQ,CACT,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,4BAA4B,CACxC,QAAgB,EAChB,QAAgB,EAChB,MAAsB,EACtB,WAAmB,EACnB,oBAA0C,EAC1C,QAA0B,EAC1B,QAAgB;QAEhB,IAAI,IAAA,4DAAyC,GAAE,EAAE,CAAC;YAChD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,cAAc,CACjB,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAC7B,yBAAc,CAAC,QAAQ,CACrB,QAAQ,EACR,+DAA8B,CAAC,6BAA6B,CAC1D,MAAM,CAAC,2BAA2B,IAAI,EAAE,EACxC,WAAW,EACX,oBAAoB,CACrB,EACD,QAAQ,CACT,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,2BAA2B,CACvC,QAAgB,EAChB,QAAgB,EAChB,YAAyC,EACzC,WAAmB,EACnB,oBAA0C,EAC1C,QAA0B,EAC1B,QAAgB,EAChB,eAA6C;QAE7C,MAAM,QAAQ,GAAG,IAAI,CAAC;QACtB,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC;QACxC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC;QAElE,2EAA2E;QAC3E,IAAI,CAAC,0BAA0B,CAC7B,QAAQ,EACR,0BAAS,CAAC,gCAAgC,EAC1C,eAAe,IAAI,YAAY,CAChC,CAAC;QAEF,6BAA6B;QAC7B,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,6DAA6B,CAAC,4BAA4B,CACrE,YAAY,EACZ,WAAW,EACX,oBAAoB,EACpB,IAAI,EACJ,QAAQ,CACT,CAAC;YAEF,kEAAkE;YAClE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,0BAAS,CAAC,gCAAgC,EAAE,CAAC,CAAC;YAErF,MAAM,IAAI,GAAG,yBAAc,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAE/D,MAAM,YAAY,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,+BAA+B,IAAI,OAAO,UAAU,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC7G,IAAI,CAAC,cAAc,CAAC,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC,CAAC;YAE7D,eAAM,CAAC,UAAU,CACf,QAAQ,CAAC,UAAU,CAAC,0CAA0C,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CACtG,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,0BAA0B,CACvC,QAAgB,EAChB,QAAgB,EAChB,SAAsC;QAEtC,MAAM,OAAO,GAAG;YACd,MAAM;YACN,cAAc;YACd,iBAAiB;YACjB,WAAW;YACX,cAAc;YACd,mBAAmB;YACnB,SAAS;SACV,CAAC;QACF,MAAM,OAAO,GAAa,EAAE,CAAC;QAE7B,wCAAwC;QACxC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,4BAAc,EAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAE9D,8CAA8C;QAC9C,MAAM,YAAY,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAEjF,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,MAAM,GAAG,GAAG;gBACV,KAAK,CAAC,IAAI,IAAI,EAAE;gBAChB,KAAK,CAAC,SAAS,IAAI,EAAE;gBACrB,IAAA,uBAAS,EAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC;gBACnC,KAAK,CAAC,MAAM,IAAI,EAAE;gBAClB,IAAA,uBAAS,EAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;gBAChC,KAAK,CAAC,gBAAgB,IAAI,EAAE;gBAC5B,KAAK,CAAC,OAAO,IAAI,EAAE;aACpB,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,4BAAc,EAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,UAAU,GAAG,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QACpE,eAAM,CAAC,UAAU,CAAC,sCAAsC,QAAQ,SAAS,SAAS,CAAC,MAAM,UAAU,CAAC,CAAC;IACvG,CAAC;IAED,gFAAgF;IAChF,sCAAsC;IACtC,gFAAgF;IAEhF;;OAEG;IACK,MAAM,CAAC,oBAAoB,CACjC,MAAsB,EACtB,oBAA0C,EAC1C,OAAiB,EACjB,kBAA4B,EAC5B,QAA0B;QAE1B,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,oBAAoB,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAE9F,OAAO;YACL,KAAK,EAAE,wCAAwC;YAC/C,OAAO,EAAE,wCAAwC;YACjD,GAAG,EAAE,IAAA,mCAAsB,EAAC,oBAAoB,CAAC;YACjD,cAAc,EAAE,IAAI,IAAI,EAAE,CAAC,cAAc,EAAE;YAC3C,YAAY;YACZ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,kBAAkB;SAChC,CAAC;IACJ,CAAC;IAED,gFAAgF;IAChF,0CAA0C;IAC1C,gFAAgF;IAExE,MAAM,CAAC,2BAA2B,CAAC,MAAsB,EAAE,QAA0B;QAC3F,OAAO,IAAI,CAAC,iBAAiB,CAC3B,cAAc,EACd,MAAM,CAAC,yBAAyB,EAChC,IAAI,CAAC,gBAAgB,EACrB,2CAAoB,EACpB,QAAQ,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAC7C,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,qCAAqC,CAClD,MAAsB,EACtB,QAA0B;QAE1B,OAAO,IAAI,CAAC,iBAAiB,CAC3B,wBAAwB,EACxB,MAAM,CAAC,kBAAkB,CAAC,iBAAiB,EAC3C,IAAI,CAAC,0BAA0B,EAC/B,2CAAoB,EACpB,QAAQ,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAC7C,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,2BAA2B,CAAC,MAAsB,EAAE,QAA0B;QAC3F,OAAO,IAAI,CAAC,iBAAiB,CAC3B,aAAa,EACb,MAAM,CAAC,kBAAkB,CAAC,iBAAiB,EAC3C,IAAI,CAAC,eAAe,EACpB,2CAAoB,EACpB,QAAQ,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAC7C,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,yBAAyB,CAAC,MAAsB,EAAE,QAA0B;QACzF,OAAO,IAAI,CAAC,iBAAiB,CAC3B,WAAW,EACX,MAAM,CAAC,uBAAuB,EAC9B,IAAI,CAAC,aAAa,EAClB,uDAA0B,EAC1B,QAAQ,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAC7C,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,iCAAiC,CAC9C,MAAsB,EACtB,QAA0B,EAC1B,oBAA0C;QAE1C,MAAM,eAAe,GAAG,oBAAoB,CAAC,mBAAmB,CAAC;QACjE,OAAO;YACL,IAAI,EAAE,0BAA0B;YAChC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,+BAA+B,CAAC,MAAM;YAC1E,IAAI,EAAE,eAAe;gBACnB,CAAC,CAAC,IAAI,CAAC,+BAA+B,CAAC,QAAQ,CAAC,UAAU,CAAC,gDAAgD,CAAC,CAAC;gBAC7G,CAAC,CAAC,uEAAkC,CAAC,cAAc,CAAC,MAAM,CAAC,+BAA+B,CAAC;YAC7F,IAAI,EAAE,IAAI,CAAC,uBAAuB;YAClC,WAAW,EAAE,CAAC,eAAe;SAC9B,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,qBAAqB,CAAC,MAAsB;QACzD,OAAO;YACL,IAAI,EAAE,cAAc;YACpB,KAAK,EAAE,MAAM,CAAC,mBAAmB,CAAC,MAAM;YACxC,IAAI,EAAE,+CAAsB,CAAC,cAAc,CAAC,MAAM,CAAC,mBAAmB,CAAC;YACvE,IAAI,EAAE,IAAI,CAAC,SAAS;SACrB,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,0BAA0B,CAAC,MAAsB;QAC9D,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,MAAM,CAAC,wBAAwB,CAAC,MAAM;YAC7C,IAAI,EAAE,yDAA2B,CAAC,cAAc,CAAC,MAAM,CAAC,wBAAwB,CAAC;YACjF,IAAI,EAAE,IAAI,CAAC,cAAc;SAC1B,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,+BAA+B,CAAC,MAAsB;QACnE,OAAO;YACL,IAAI,EAAE,6BAA6B;YACnC,KAAK,EAAE,MAAM,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,MAAM;YAC5G,IAAI,EAAE,mEAAgC,CAAC,cAAc,CAAC,MAAM,CAAC,6BAA6B,CAAC;YAC3F,IAAI,EAAE,IAAI,CAAC,oBAAoB;SAChC,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,oBAAoB,CAAC,MAAsB;QACxD,OAAO;YACL,IAAI,EAAE,0BAA0B;YAChC,KAAK,EAAE,MAAM,CAAC,kBAAkB,CAAC,MAAM;YACvC,IAAI,EAAE,6CAAqB,CAAC,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC;YACrE,IAAI,EAAE,IAAI,CAAC,QAAQ;SACpB,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,6BAA6B,CAAC,MAAsB,EAAE,QAA0B;QAC7F,0BAA0B;QAC1B,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,2BAA2B,CAAC;YACxE,CAAC,CAAC,MAAM,CAAC,2BAA2B;YACpC,CAAC,CAAC,MAAM,CAAC,2BAA2B;gBACpC,CAAC,CAAC,CAAC,MAAM,CAAC,2BAA2B,CAAC;gBACtC,CAAC,CAAC,EAAE,CAAC;QAEP,OAAO,IAAI,CAAC,iBAAiB,CAC3B,2BAA2B,EAC3B,gBAAgB,EAChB,IAAI,CAAC,mBAAmB,EACxB,+DAA8B,EAC9B,QAAQ,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAC7C,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,4BAA4B,CAAC,MAAsB;QAChE,OAAO;YACL,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,MAAM,CAAC,qBAAqB,CAAC,WAAW;YAC/C,IAAI,EAAE;gBACJ;oBACE,IAAI,EAAE,qBAAqB;oBAC3B,KAAK,EAAE,MAAM,CAAC,qBAAqB,CAAC,iBAAiB;oBACrD,QAAQ,EAAE,cAAc;iBACzB;gBACD;oBACE,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,MAAM,CAAC,qBAAqB,CAAC,QAAQ;oBAC5C,QAAQ,EAAE,cAAc;iBACzB;gBACD;oBACE,IAAI,EAAE,2BAA2B;oBACjC,KAAK,EAAE,MAAM,CAAC,qBAAqB,CAAC,sBAAsB;oBAC1D,QAAQ,EAAE,YAAY;iBACvB;gBACD;oBACE,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,MAAM,CAAC,qBAAqB,CAAC,MAAM;oBAC1C,QAAQ,EAAE,YAAY;iBACvB;aACF;YACD,IAAI,EAAE,IAAI,CAAC,gCAAgC,CAAC,MAAM,CAAC,qBAAqB,CAAC,sBAAsB,CAAC;SACjG,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,iBAAiB,CAC9B,IAAY,EACZ,cAAmB,EACnB,QAAgB,EAChB,QAAqE,EACrE,aAAqB;QAErB,OAAO;YACL,IAAI;YACJ,KAAK,EAAE,IAAA,4DAAyC,GAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM;YAC9E,IAAI,EAAE,IAAA,4DAAyC,GAAE;gBAC/C,CAAC,CAAC,IAAI,CAAC,+BAA+B,CAAC,aAAa,CAAC;gBACrD,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC;YAC3C,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,CAAC,IAAA,4DAAyC,GAAE;SAC1D,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,+BAA+B,CAAC,aAAsB;QACnE,OAAO,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;IACvE,CAAC;IAEO,MAAM,CAAC,gCAAgC,CAAC,WAAmB;QACjE,MAAM,QAAQ,GAAG,IAAI,CAAC;QACtB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC;QAClE,OAAO,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,oCAAoC,UAAU,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC;IACzG,CAAC;;AA9pBH,wDA+pBC;AA9pBC,sBAAsB;AACE,uCAAgB,GAAG,4BAA4B,CAAC;AAChD,iDAA0B,GAAG,uCAAuC,CAAC;AACrE,sCAAe,GAAG,4BAA4B,CAAC;AAC/C,oCAAa,GAAG,0BAA0B,CAAC;AAC3C,8CAAuB,GAAG,kCAAkC,CAAC;AAC7D,gCAAS,GAAG,sBAAsB,CAAC;AACnC,qCAAc,GAAG,2BAA2B,CAAC;AAC7C,2CAAoB,GAAG,iCAAiC,CAAC;AACzD,+BAAQ,GAAG,qBAAqB,CAAC;AACjC,wCAAiB,GAAG,6BAA6B,CAAC;AAClD,0CAAmB,GAAG,8BAA8B,CAAC;AACrD,8CAAuB,GAAG,oBAAoB,CAAC"}
@@ -4,14 +4,50 @@ import { OmnistudioOrgDetails } from '../orgUtils';
4
4
  export declare class ResultsBuilder {
5
5
  private static rowClass;
6
6
  private static rowId;
7
- static generateReport(results: MigratedObject[], relatedObjectMigrationResult: RelatedObjectAssesmentInfo, instanceUrl: string, orgDetails: OmnistudioOrgDetails, messages: Messages, actionItems: string[], objectsToProcess: string[]): Promise<void>;
7
+ private static experienceSiteFileSuffix;
8
+ private static flexiPageFileSuffix;
9
+ private static successStatus;
10
+ private static errorStatus;
11
+ /** Set at report generation start; used to show "Manual deployment needed" when deployment failed */
12
+ private static deploymentFailed;
13
+ static generateReport(results: MigratedObject[], relatedObjectMigrationResult: RelatedObjectAssesmentInfo, instanceUrl: string, orgDetails: OmnistudioOrgDetails, messages: Messages<string>, actionItems: string[], objectsToProcess: string[], migrateOnly: string, deploymentFailed?: boolean): Promise<void>;
8
14
  private static generateReportForResult;
15
+ private static getHeaderGroupsForReport;
16
+ private static getNameHeaders;
17
+ private static generateCustomLabelsMigrationReport;
18
+ /**
19
+ * Generates a CSV file containing all custom label migration data for export
20
+ */
21
+ private static generateCustomLabelMigrationCsvFile;
9
22
  private static generateReportForRelatedObject;
10
23
  private static generateReportForExperienceSites;
11
24
  private static generateReportForFlexipage;
12
25
  private static generateReportForApex;
26
+ private static generateReportForLwc;
27
+ private static getLwcRowsForReport;
28
+ private static createApexMigrationSummaryItem;
29
+ private static createExperienceSiteMigrationSummaryItem;
30
+ private static createFlexipageMigrationSummaryItem;
31
+ private static createLWCMigrationSummaryItem;
13
32
  private static generateMigrationReportDashboard;
33
+ private static createSpecialCaseMigrationSummaryItem;
34
+ private static createMigrationSummaryItem;
14
35
  private static getDifferentStatusDataForResult;
36
+ private static getCustomLabelStatusData;
15
37
  private static getDifferentStatusDataForApex;
38
+ private static buildStatusSummary;
39
+ private static countStatusesFromItems;
16
40
  private static getDifferentStatusDataForFlexipage;
41
+ private static getDifferentStatusDataForLwc;
42
+ private static getDifferentStatusDataForExperienceSites;
43
+ private static getStatusFilterGroup;
44
+ private static getStatusFromErrors;
45
+ /** True when deployment failed but the component was successfully processed locally. */
46
+ private static isManualDeploymentNeeded;
47
+ /** Returns display status — "Manual deployment needed" when deployment failed, original status otherwise. */
48
+ private static resolveDisplayStatus;
49
+ /** Returns CSS class — error for manual deployment needed, success/error otherwise. */
50
+ private static resolveStatusClass;
51
+ private static getRowsForExperienceSites;
52
+ private static getRowDataForExperienceSites;
17
53
  }