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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/README.md +28 -40
  2. package/lib/commands/omnistudio/migration/assess.d.ts +1 -1
  3. package/lib/commands/omnistudio/migration/assess.js +107 -37
  4. package/lib/commands/omnistudio/migration/assess.js.map +1 -1
  5. package/lib/commands/omnistudio/migration/info.js +1 -1
  6. package/lib/commands/omnistudio/migration/info.js.map +1 -1
  7. package/lib/commands/omnistudio/migration/migrate.d.ts +35 -5
  8. package/lib/commands/omnistudio/migration/migrate.js +262 -107
  9. package/lib/commands/omnistudio/migration/migrate.js.map +1 -1
  10. package/lib/javascripts/reportGeneratorUtility.js +100 -19
  11. package/lib/migration/NameMappingRegistry.d.ts +130 -0
  12. package/lib/migration/NameMappingRegistry.js +376 -0
  13. package/lib/migration/NameMappingRegistry.js.map +1 -0
  14. package/lib/migration/base.d.ts +4 -2
  15. package/lib/migration/base.js +8 -1
  16. package/lib/migration/base.js.map +1 -1
  17. package/lib/migration/customLabels.d.ts +49 -0
  18. package/lib/migration/customLabels.js +190 -0
  19. package/lib/migration/customLabels.js.map +1 -0
  20. package/lib/migration/dataraptor.js +63 -14
  21. package/lib/migration/dataraptor.js.map +1 -1
  22. package/lib/migration/deployer.d.ts +11 -0
  23. package/lib/migration/deployer.js +59 -0
  24. package/lib/migration/deployer.js.map +1 -0
  25. package/lib/migration/flexcard.d.ts +44 -2
  26. package/lib/migration/flexcard.js +707 -110
  27. package/lib/migration/flexcard.js.map +1 -1
  28. package/lib/migration/globalautonumber.d.ts +6 -6
  29. package/lib/migration/globalautonumber.js +27 -34
  30. package/lib/migration/globalautonumber.js.map +1 -1
  31. package/lib/migration/interfaces.d.ts +5 -0
  32. package/lib/migration/interfaces.js +7 -0
  33. package/lib/migration/interfaces.js.map +1 -1
  34. package/lib/migration/omniscript.d.ts +42 -2
  35. package/lib/migration/omniscript.js +724 -100
  36. package/lib/migration/omniscript.js.map +1 -1
  37. package/lib/migration/postMigrate.d.ts +22 -3
  38. package/lib/migration/postMigrate.js +147 -12
  39. package/lib/migration/postMigrate.js.map +1 -1
  40. package/lib/migration/premigrate.d.ts +16 -0
  41. package/lib/migration/premigrate.js +122 -0
  42. package/lib/migration/premigrate.js.map +1 -0
  43. package/lib/migration/related/ApexMigration.d.ts +1 -0
  44. package/lib/migration/related/ApexMigration.js +143 -22
  45. package/lib/migration/related/ApexMigration.js.map +1 -1
  46. package/lib/migration/related/ExperienceSiteMigration.d.ts +12 -4
  47. package/lib/migration/related/ExperienceSiteMigration.js +127 -59
  48. package/lib/migration/related/ExperienceSiteMigration.js.map +1 -1
  49. package/lib/migration/related/FlexipageMigration.d.ts +4 -4
  50. package/lib/migration/related/FlexipageMigration.js +31 -30
  51. package/lib/migration/related/FlexipageMigration.js.map +1 -1
  52. package/lib/migration/related/LwcMigration.js +27 -16
  53. package/lib/migration/related/LwcMigration.js.map +1 -1
  54. package/lib/migration/related/OmnistudioRelatedObjectMigrationFacade.js +30 -24
  55. package/lib/migration/related/OmnistudioRelatedObjectMigrationFacade.js.map +1 -1
  56. package/lib/styles/reportGenerator.css +9 -5
  57. package/lib/templates/assessmentReport.template +67 -6
  58. package/lib/templates/migrationReport.template +146 -4
  59. package/lib/utils/OmnistudioSettingsPrefManager.d.ts +12 -0
  60. package/lib/utils/OmnistudioSettingsPrefManager.js +82 -0
  61. package/lib/utils/OmnistudioSettingsPrefManager.js.map +1 -0
  62. package/lib/utils/XMLUtil.js +2 -1
  63. package/lib/utils/XMLUtil.js.map +1 -1
  64. package/lib/utils/apex/parser/apexparser.d.ts +8 -1
  65. package/lib/utils/apex/parser/apexparser.js +63 -10
  66. package/lib/utils/apex/parser/apexparser.js.map +1 -1
  67. package/lib/utils/constants/documentRegistry.d.ts +2 -1
  68. package/lib/utils/constants/documentRegistry.js +4 -3
  69. package/lib/utils/constants/documentRegistry.js.map +1 -1
  70. package/lib/utils/constants/stringContants.d.ts +7 -0
  71. package/lib/utils/constants/stringContants.js +10 -2
  72. package/lib/utils/constants/stringContants.js.map +1 -1
  73. package/lib/utils/customLabels.d.ts +34 -0
  74. package/lib/utils/customLabels.js +97 -0
  75. package/lib/utils/customLabels.js.map +1 -0
  76. package/lib/utils/file/fileUtil.d.ts +3 -1
  77. package/lib/utils/file/fileUtil.js +11 -4
  78. package/lib/utils/file/fileUtil.js.map +1 -1
  79. package/lib/utils/flexipage/flexiPageTransformer.js +14 -10
  80. package/lib/utils/flexipage/flexiPageTransformer.js.map +1 -1
  81. package/lib/utils/generatePackageXml.d.ts +4 -2
  82. package/lib/utils/generatePackageXml.js +17 -23
  83. package/lib/utils/generatePackageXml.js.map +1 -1
  84. package/lib/utils/interfaces.d.ts +36 -3
  85. package/lib/utils/logger.js +3 -1
  86. package/lib/utils/logger.js.map +1 -1
  87. package/lib/utils/lwcparser/fileutils/FileDiffUtil.js +20 -21
  88. package/lib/utils/lwcparser/fileutils/FileDiffUtil.js.map +1 -1
  89. package/lib/utils/lwcparser/xmlParser/XmlParser.js +2 -1
  90. package/lib/utils/lwcparser/xmlParser/XmlParser.js.map +1 -1
  91. package/lib/utils/orgPreferences.d.ts +1 -0
  92. package/lib/utils/orgPreferences.js +11 -8
  93. package/lib/utils/orgPreferences.js.map +1 -1
  94. package/lib/utils/orgUtils/index.d.ts +1 -1
  95. package/lib/utils/orgUtils/index.js +14 -14
  96. package/lib/utils/orgUtils/index.js.map +1 -1
  97. package/lib/utils/promptUtil.d.ts +2 -0
  98. package/lib/utils/promptUtil.js +26 -1
  99. package/lib/utils/promptUtil.js.map +1 -1
  100. package/lib/utils/reportGenerator/reportInterfaces.d.ts +9 -0
  101. package/lib/utils/reportGenerator/reportUtil.d.ts +1 -1
  102. package/lib/utils/reportGenerator/reportUtil.js +6 -3
  103. package/lib/utils/reportGenerator/reportUtil.js.map +1 -1
  104. package/lib/utils/resultsbuilder/ApexAssessmentReporter.d.ts +2 -0
  105. package/lib/utils/resultsbuilder/ApexAssessmentReporter.js +51 -15
  106. package/lib/utils/resultsbuilder/ApexAssessmentReporter.js.map +1 -1
  107. package/lib/utils/resultsbuilder/CustomLabelAssessmentReporter.d.ts +13 -0
  108. package/lib/utils/resultsbuilder/CustomLabelAssessmentReporter.js +178 -0
  109. package/lib/utils/resultsbuilder/CustomLabelAssessmentReporter.js.map +1 -0
  110. package/lib/utils/resultsbuilder/CustomLabelMigrationReporter.d.ts +19 -0
  111. package/lib/utils/resultsbuilder/CustomLabelMigrationReporter.js +239 -0
  112. package/lib/utils/resultsbuilder/CustomLabelMigrationReporter.js.map +1 -0
  113. package/lib/utils/resultsbuilder/DRAssessmentReporter.js +43 -11
  114. package/lib/utils/resultsbuilder/DRAssessmentReporter.js.map +1 -1
  115. package/lib/utils/resultsbuilder/ExperienceSiteAssessmentReporter.d.ts +13 -0
  116. package/lib/utils/resultsbuilder/ExperienceSiteAssessmentReporter.js +111 -0
  117. package/lib/utils/resultsbuilder/ExperienceSiteAssessmentReporter.js.map +1 -0
  118. package/lib/utils/resultsbuilder/FlexcardAssessmentReporter.js +51 -12
  119. package/lib/utils/resultsbuilder/FlexcardAssessmentReporter.js.map +1 -1
  120. package/lib/utils/resultsbuilder/FlexipageAssessmentReporter.d.ts +1 -0
  121. package/lib/utils/resultsbuilder/FlexipageAssessmentReporter.js +40 -18
  122. package/lib/utils/resultsbuilder/FlexipageAssessmentReporter.js.map +1 -1
  123. package/lib/utils/resultsbuilder/GlobalAutoNumberAssessmentReporter.js +21 -14
  124. package/lib/utils/resultsbuilder/GlobalAutoNumberAssessmentReporter.js.map +1 -1
  125. package/lib/utils/resultsbuilder/IPAssessmentReporter.js +47 -12
  126. package/lib/utils/resultsbuilder/IPAssessmentReporter.js.map +1 -1
  127. package/lib/utils/resultsbuilder/LWCAssessmentReporter.d.ts +14 -0
  128. package/lib/utils/resultsbuilder/LWCAssessmentReporter.js +143 -139
  129. package/lib/utils/resultsbuilder/LWCAssessmentReporter.js.map +1 -1
  130. package/lib/utils/resultsbuilder/OSAssessmentReporter.js +31 -18
  131. package/lib/utils/resultsbuilder/OSAssessmentReporter.js.map +1 -1
  132. package/lib/utils/resultsbuilder/assessmentReporter.d.ts +6 -1
  133. package/lib/utils/resultsbuilder/assessmentReporter.js +163 -66
  134. package/lib/utils/resultsbuilder/assessmentReporter.js.map +1 -1
  135. package/lib/utils/resultsbuilder/index.d.ts +12 -1
  136. package/lib/utils/resultsbuilder/index.js +343 -84
  137. package/lib/utils/resultsbuilder/index.js.map +1 -1
  138. package/lib/utils/resultsbuilder/reportingHelper.d.ts +2 -7
  139. package/lib/utils/resultsbuilder/reportingHelper.js +0 -43
  140. package/lib/utils/resultsbuilder/reportingHelper.js.map +1 -1
  141. package/lib/utils/sfcli/project/sfProject.d.ts +4 -0
  142. package/lib/utils/sfcli/project/sfProject.js +56 -1
  143. package/lib/utils/sfcli/project/sfProject.js.map +1 -1
  144. package/lib/utils/shell/cli.js +3 -7
  145. package/lib/utils/shell/cli.js.map +1 -1
  146. package/lib/utils/storageUtil.d.ts +1 -0
  147. package/lib/utils/storageUtil.js +3 -0
  148. package/lib/utils/storageUtil.js.map +1 -1
  149. package/lib/utils/stringUtils.d.ts +9 -0
  150. package/lib/utils/stringUtils.js +38 -7
  151. package/lib/utils/stringUtils.js.map +1 -1
  152. package/lib/utils/templateParser/model/elementNode.js +11 -2
  153. package/lib/utils/templateParser/model/elementNode.js.map +1 -1
  154. package/lib/utils/validatorService.d.ts +13 -0
  155. package/lib/utils/validatorService.js +69 -0
  156. package/lib/utils/validatorService.js.map +1 -0
  157. package/messages/assess.json +125 -55
  158. package/messages/migrate.json +172 -53
  159. package/oclif.manifest.json +1 -1
  160. package/package.json +40 -7
  161. package/lib/utils/OmniGlobalAutoNumberPrefManager.d.ts +0 -40
  162. package/lib/utils/OmniGlobalAutoNumberPrefManager.js +0 -65
  163. package/lib/utils/OmniGlobalAutoNumberPrefManager.js.map +0 -1
@@ -35,16 +35,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
35
35
  * Licensed under the BSD 3-Clause license.
36
36
  * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
37
37
  */
38
+ const path_1 = __importDefault(require("path"));
38
39
  const os = __importStar(require("os"));
39
40
  const command_1 = require("@salesforce/command");
40
41
  const core_1 = require("@salesforce/core");
41
42
  const basecommand_1 = __importDefault(require("../../basecommand"));
42
43
  const dataraptor_1 = require("../../../migration/dataraptor");
43
44
  const utils_1 = require("../../../utils");
45
+ const interfaces_1 = require("../../../migration/interfaces");
44
46
  const resultsbuilder_1 = require("../../../utils/resultsbuilder");
45
47
  const flexcard_1 = require("../../../migration/flexcard");
46
48
  const omniscript_1 = require("../../../migration/omniscript");
47
- const globalautonumber_1 = require("../../../migration/globalautonumber");
49
+ const customLabels_1 = require("../../../migration/customLabels");
48
50
  const logger_1 = require("../../../utils/logger");
49
51
  const OmnistudioRelatedObjectMigrationFacade_1 = __importDefault(require("../../../migration/related/OmnistudioRelatedObjectMigrationFacade"));
50
52
  const generatePackageXml_1 = require("../../../utils/generatePackageXml");
@@ -52,7 +54,13 @@ const orgUtils_1 = require("../../../utils/orgUtils");
52
54
  const stringContants_1 = require("../../../utils/constants/stringContants");
53
55
  const orgPreferences_1 = require("../../../utils/orgPreferences");
54
56
  const projectPathUtil_1 = require("../../../utils/projectPathUtil");
57
+ const promptUtil_1 = require("../../../utils/promptUtil");
58
+ const projectPathUtil_2 = require("../../../utils/projectPathUtil");
55
59
  const postMigrate_1 = require("../../../migration/postMigrate");
60
+ const premigrate_1 = require("../../../migration/premigrate");
61
+ const globalautonumber_1 = require("../../../migration/globalautonumber");
62
+ const validatorService_1 = require("../../../utils/validatorService");
63
+ const NameMappingRegistry_1 = require("../../../migration/NameMappingRegistry");
56
64
  // Initialize Messages with the current plugin directory
57
65
  core_1.Messages.importMessagesDirectory(__dirname);
58
66
  // Load the specific messages for this file. Messages from @salesforce/command, @salesforce/core,
@@ -68,34 +76,24 @@ class Migrate extends basecommand_1.default {
68
76
  }
69
77
  catch (e) {
70
78
  const error = e;
71
- logger_1.Logger.error(messages.getMessage('errorRunningMigrate'), error);
79
+ logger_1.Logger.error(messages.getMessage('errorRunningMigrate', [error.message]));
72
80
  process.exit(1);
73
81
  }
74
82
  }
75
83
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
76
84
  async runMigration() {
77
- let apiVersion = this.flags.apiversion;
85
+ var _a;
78
86
  const migrateOnly = (this.flags.only || '');
79
87
  const allVersions = this.flags.allversions || false;
80
88
  const relatedObjects = (this.flags.relatedobjects || '');
81
89
  // this.org is guaranteed because requiresUsername=true, as opposed to supportsUsername
82
90
  const conn = this.org.getConnection();
83
- if (apiVersion) {
84
- conn.setApiVersion(apiVersion);
85
- }
86
- else {
87
- apiVersion = conn.getApiVersion();
88
- }
89
- const orgs = await orgUtils_1.OrgUtils.getOrgDetails(conn, this.flags.namespace);
90
- if (!orgs.hasValidNamespace && this.flags.namespace) {
91
- logger_1.Logger.warn(messages.getMessage('invalidNamespace') + orgs.packageDetails.namespace);
92
- }
93
- if (!orgs.packageDetails) {
94
- logger_1.Logger.error(messages.getMessage('noPackageInstalled'));
95
- return;
96
- }
97
- if (orgs.omniStudioOrgPermissionEnabled) {
98
- logger_1.Logger.error(messages.getMessage('alreadyStandardModel'));
91
+ const apiVersion = conn.getApiVersion();
92
+ const orgs = await orgUtils_1.OrgUtils.getOrgDetails(conn);
93
+ // Perform comprehensive validation using ValidatorService
94
+ const validator = new validatorService_1.ValidatorService(orgs, conn, messages);
95
+ const isValidationPassed = await validator.validate();
96
+ if (!isValidationPassed) {
99
97
  return;
100
98
  }
101
99
  // Enable Omni preferences
@@ -107,89 +105,137 @@ class Migrate extends basecommand_1.default {
107
105
  const errMsg = error instanceof Error ? error.message : String(error);
108
106
  logger_1.Logger.log(`Could not enable Omni preferences: ${errMsg}`);
109
107
  }
108
+ // check for confirmation over assessed action items
109
+ const migrationConsent = await this.getMigrationConsent();
110
+ if (!migrationConsent) {
111
+ logger_1.Logger.log(messages.getMessage('migrationConsentNotGiven'));
112
+ return;
113
+ }
110
114
  const namespace = orgs.packageDetails.namespace;
111
115
  // Let's time every step
112
116
  utils_1.DebugTimer.getInstance().start();
113
117
  let projectPath;
114
118
  let objectsToProcess = [];
115
119
  let targetApexNamespace;
120
+ const preMigrate = new premigrate_1.PreMigrate(namespace, conn, this.logger, messages, this.ux);
116
121
  const isExperienceBundleMetadataAPIProgramaticallyEnabled = { value: false };
122
+ let actionItems = [];
123
+ let deploymentConfig = { autoDeploy: false, authKey: undefined };
117
124
  if (relatedObjects) {
118
- // To-Do: Add LWC to valid options when GA is released
119
- const validOptions = [stringContants_1.Constants.Apex, stringContants_1.Constants.ExpSites, stringContants_1.Constants.FlexiPage];
120
- objectsToProcess = relatedObjects.split(',').map((obj) => obj.trim());
121
- // Validate input
122
- for (const obj of objectsToProcess) {
123
- if (!validOptions.includes(obj)) {
124
- logger_1.Logger.error(messages.getMessage('invalidRelatedObjectsOption', [obj]));
125
- process.exit(1);
126
- }
127
- }
128
- // Check for general consent to make modifications with OMT
129
- const generalConsent = await this.getGeneralConsent();
130
- if (generalConsent) {
131
- // Use ProjectPathUtil for APEX project folder selection (matches assess.ts logic)
132
- projectPath = await projectPathUtil_1.ProjectPathUtil.getProjectPath(messages, true);
133
- targetApexNamespace = await this.getTargetApexNamespace(objectsToProcess, targetApexNamespace);
134
- await this.handleExperienceSitePrerequisites(objectsToProcess, conn, isExperienceBundleMetadataAPIProgramaticallyEnabled);
135
- logger_1.Logger.logVerbose('The objects to process after handleExpSitePrerequisite are ' + JSON.stringify(objectsToProcess));
136
- } // TODO - What if general consent is no
125
+ const relatedObjectProcessResult = await this.processRelatedObjects(relatedObjects, preMigrate, conn, isExperienceBundleMetadataAPIProgramaticallyEnabled, actionItems);
126
+ objectsToProcess = relatedObjectProcessResult.objectsToProcess;
127
+ projectPath = relatedObjectProcessResult.projectPath;
128
+ targetApexNamespace = relatedObjectProcessResult.targetApexNamespace;
129
+ deploymentConfig = relatedObjectProcessResult.deploymentConfig;
137
130
  }
138
131
  logger_1.Logger.log(messages.getMessage('migrationInitialization', [String(namespace)]));
139
132
  logger_1.Logger.log(messages.getMessage('apiVersionInfo', [apiVersion]));
140
133
  logger_1.Logger.logVerbose(messages.getMessage('migrationTargets', [migrateOnly || 'all']));
141
134
  logger_1.Logger.logVerbose(messages.getMessage('relatedObjectsInfo', [relatedObjects || 'none']));
142
135
  logger_1.Logger.logVerbose(messages.getMessage('allVersionsFlagInfo', [String(allVersions)]));
143
- // const includeLwc = this.flags.lwc ? await this.ux.confirm('Do you want to include LWC migration? (yes/no)') : false;
144
- // Register the migration objects
136
+ // Initialize the name mapping registry and pre-process all components
137
+ const nameRegistry = NameMappingRegistry_1.NameMappingRegistry.getInstance();
138
+ nameRegistry.clear(); // Clear any previous mappings
139
+ logger_1.Logger.log(messages.getMessage('startingComponentPreProcessing'));
140
+ await this.preProcessAllComponents(namespace, conn, migrateOnly);
141
+ // Register the migration objects with CORRECTED ORDER
145
142
  let migrationObjects = [];
146
- migrationObjects = this.getMigrationObjects(migrateOnly, migrationObjects, namespace, conn, allVersions);
143
+ migrationObjects = this.getMigrationObjectsInCorrectOrder(migrateOnly, migrationObjects, namespace, conn, allVersions);
147
144
  // Migrate individual objects
148
145
  const debugTimer = utils_1.DebugTimer.getInstance();
149
- // We need to truncate the standard objects first
150
- let objectMigrationResults = await this.truncateObjects(migrationObjects, debugTimer);
151
- objectMigrationResults = objectMigrationResults.filter((result) => result.name !== stringContants_1.Constants.GlobalAutoNumberComponentName);
146
+ // We need to truncate the standard objects first (in reverse order for cleanup)
147
+ let objectMigrationResults = await this.truncateObjects([...migrationObjects].reverse(), debugTimer);
152
148
  const allTruncateComplete = objectMigrationResults.length === 0;
149
+ // Log truncation errors if any exist
150
+ if (!allTruncateComplete) {
151
+ this.logTruncationErrors(objectMigrationResults);
152
+ return;
153
+ }
153
154
  if (allTruncateComplete) {
154
- objectMigrationResults = await this.migrateObjects(migrationObjects, debugTimer);
155
+ objectMigrationResults = await this.migrateObjects(migrationObjects, debugTimer, namespace);
155
156
  }
156
157
  const omnistudioRelatedObjectsMigration = new OmnistudioRelatedObjectMigrationFacade_1.default(namespace, migrateOnly, allVersions, this.org, projectPath, targetApexNamespace);
157
158
  const relatedObjectMigrationResult = omnistudioRelatedObjectsMigration.migrateAll(objectsToProcess);
158
- generatePackageXml_1.generatePackageXml.createChangeList(relatedObjectMigrationResult.apexAssessmentInfos, relatedObjectMigrationResult.lwcAssessmentInfos, relatedObjectMigrationResult.flexipageAssessmentInfos);
159
159
  // POST MIGRATION
160
- let actionItems = [];
161
- const postMigrate = new postMigrate_1.PostMigrate(this.org, namespace, conn, this.logger, messages, this.ux, objectsToProcess);
162
- actionItems = await postMigrate.setDesignersToUseStandardDataModel(namespace);
163
- await postMigrate.restoreExperienceAPIMetadataSettings(isExperienceBundleMetadataAPIProgramaticallyEnabled);
160
+ const postMigrate = new postMigrate_1.PostMigrate(this.org, namespace, conn, this.logger, messages, this.ux, objectsToProcess, deploymentConfig, projectPath);
161
+ if (!migrateOnly) {
162
+ await postMigrate.executeTasks(namespace, actionItems);
163
+ }
164
+ // From here also actionItems need to be collected
165
+ await postMigrate.restoreExperienceAPIMetadataSettings(isExperienceBundleMetadataAPIProgramaticallyEnabled, actionItems);
164
166
  const migrationActionItems = this.collectActionItems(objectMigrationResults);
165
167
  actionItems = [...actionItems, ...migrationActionItems];
166
- await resultsbuilder_1.ResultsBuilder.generateReport(objectMigrationResults, relatedObjectMigrationResult, conn.instanceUrl, orgs, messages, actionItems);
168
+ generatePackageXml_1.generatePackageXml.createChangeList(relatedObjectMigrationResult.apexAssessmentInfos, deploymentConfig.autoDeploy && deploymentConfig.authKey ? relatedObjectMigrationResult.lwcAssessmentInfos : [], relatedObjectMigrationResult.experienceSiteAssessmentInfos, relatedObjectMigrationResult.flexipageAssessmentInfos, this.org.getConnection().version, messages);
169
+ try {
170
+ postMigrate.deploy();
171
+ }
172
+ catch (error) {
173
+ logger_1.Logger.error(messages.getMessage('errorDeployingComponents'), error);
174
+ logger_1.Logger.logVerbose(error);
175
+ }
176
+ await resultsbuilder_1.ResultsBuilder.generateReport(objectMigrationResults, relatedObjectMigrationResult, conn.instanceUrl, orgs, messages, actionItems, objectsToProcess);
177
+ logger_1.Logger.log(messages.getMessage('migrationSuccessfulMessage', [
178
+ (_a = orgs.orgDetails) === null || _a === void 0 ? void 0 : _a.Id,
179
+ path_1.default.join(process.cwd(), stringContants_1.Constants.MigrationReportsFolderName),
180
+ ]));
167
181
  // Return results needed for --json flag
168
- return { objectMigrationResults };
182
+ return { objectMigrationResults: [] };
169
183
  }
170
- async handleExperienceSitePrerequisites(objectsToProcess, conn, isExperienceBundleMetadataAPIProgramaticallyEnabled) {
171
- if (objectsToProcess.includes(stringContants_1.Constants.ExpSites)) {
172
- const expMetadataApiConsent = await this.getExpSiteMetadataEnableConsent();
173
- logger_1.Logger.logVerbose(`The consent for exp site is ${expMetadataApiConsent}`);
174
- if (expMetadataApiConsent === false) {
175
- logger_1.Logger.warn('Consent for experience sites is not provided. Experience sites will not be processed');
176
- this.removeKeyFromRelatedObjectsToProcess(stringContants_1.Constants.ExpSites, objectsToProcess);
177
- logger_1.Logger.logVerbose(`Objects to process after removing expsite are ${JSON.stringify(objectsToProcess)}`);
178
- return;
184
+ async processRelatedObjects(relatedObjects, preMigrate, conn, isExperienceBundleMetadataAPIProgramaticallyEnabled, actionItems) {
185
+ const validOptions = [stringContants_1.Constants.Apex, stringContants_1.Constants.ExpSites, stringContants_1.Constants.FlexiPage, stringContants_1.Constants.LWC];
186
+ const objectsToProcess = relatedObjects.split(',').map((obj) => obj.trim());
187
+ // Validate input
188
+ for (const obj of objectsToProcess) {
189
+ if (!validOptions.includes(obj)) {
190
+ logger_1.Logger.error(messages.getMessage('invalidRelatedObjectsOption', [obj]));
191
+ process.exit(1);
179
192
  }
180
- const isMetadataAPIPreEnabled = await orgPreferences_1.OrgPreferences.isExperienceBundleMetadataAPIEnabled(conn);
181
- if (isMetadataAPIPreEnabled === true) {
182
- logger_1.Logger.logVerbose('ExperienceBundle metadata api is already enabled');
183
- return;
193
+ }
194
+ let deploymentConfig = { autoDeploy: false, authKey: undefined };
195
+ let projectPath;
196
+ let targetApexNamespace;
197
+ // Check for general consent to make modifications with OMT
198
+ const generalConsent = await this.getGeneralConsent();
199
+ if (generalConsent) {
200
+ // Use ProjectPathUtil for APEX project folder selection (matches assess.ts logic)
201
+ projectPath = await projectPathUtil_1.ProjectPathUtil.getProjectPath(messages, true);
202
+ targetApexNamespace = await this.getTargetApexNamespace(objectsToProcess, targetApexNamespace);
203
+ await preMigrate.handleExperienceSitePrerequisites(objectsToProcess, conn, isExperienceBundleMetadataAPIProgramaticallyEnabled);
204
+ deploymentConfig = await preMigrate.getAutoDeployConsent(objectsToProcess.includes(stringContants_1.Constants.LWC), actionItems);
205
+ }
206
+ else {
207
+ objectsToProcess.length = 0;
208
+ logger_1.Logger.warn(messages.getMessage('relatedObjectsConsentNotGiven'));
209
+ logger_1.Logger.logVerbose(messages.getMessage('relatedObjectsToProcess', [JSON.stringify(objectsToProcess)]));
210
+ }
211
+ return { objectsToProcess, projectPath, targetApexNamespace, deploymentConfig };
212
+ }
213
+ async getMigrationConsent() {
214
+ const askWithTimeOut = promptUtil_1.PromptUtil.askWithTimeOut(messages);
215
+ let validResponse = false;
216
+ let consent = false;
217
+ while (!validResponse) {
218
+ try {
219
+ const resp = await askWithTimeOut(logger_1.Logger.prompt.bind(logger_1.Logger), messages.getMessage('migrationConsentMessage'));
220
+ const response = typeof resp === 'string' ? resp.trim().toLowerCase() : '';
221
+ if (response === projectPathUtil_2.YES_SHORT || response === projectPathUtil_2.YES_LONG) {
222
+ consent = true;
223
+ validResponse = true;
224
+ }
225
+ else if (response === projectPathUtil_2.NO_SHORT || response === projectPathUtil_2.NO_LONG) {
226
+ consent = false;
227
+ validResponse = true;
228
+ }
229
+ else {
230
+ logger_1.Logger.error(messages.getMessage('invalidYesNoResponse'));
231
+ }
184
232
  }
185
- logger_1.Logger.logVerbose('ExperienceBundle metadata api needs to be programatically enabled');
186
- isExperienceBundleMetadataAPIProgramaticallyEnabled.value = await orgPreferences_1.OrgPreferences.setExperienceBundleMetadataAPI(conn, true);
187
- if (isExperienceBundleMetadataAPIProgramaticallyEnabled.value === false) {
188
- this.removeKeyFromRelatedObjectsToProcess(stringContants_1.Constants.ExpSites, objectsToProcess);
189
- logger_1.Logger.warn('Since the api could not able enabled the experience sites would not be processed');
233
+ catch (err) {
234
+ logger_1.Logger.error(messages.getMessage('requestTimedOut'));
235
+ process.exit(1);
190
236
  }
191
- logger_1.Logger.logVerbose(`Objects to process are ${JSON.stringify(objectsToProcess)}`);
192
237
  }
238
+ return consent;
193
239
  }
194
240
  collectActionItems(objectMigrationResults) {
195
241
  const actionItems = [];
@@ -201,15 +247,10 @@ class Migrate extends basecommand_1.default {
201
247
  }
202
248
  return actionItems;
203
249
  }
204
- removeKeyFromRelatedObjectsToProcess(keyToRemove, relatedObjects) {
205
- const index = relatedObjects.indexOf(stringContants_1.Constants.ExpSites);
206
- if (index > -1) {
207
- relatedObjects.splice(index, 1);
208
- }
209
- }
210
250
  async truncateObjects(migrationObjects, debugTimer) {
211
251
  const objectMigrationResults = [];
212
- for (const cls of migrationObjects.reverse()) {
252
+ // Truncate in reverse order (highest dependencies first) - this is correct for cleanup
253
+ for (const cls of migrationObjects) {
213
254
  try {
214
255
  logger_1.Logger.log(messages.getMessage('cleaningComponent', [cls.getName()]));
215
256
  debugTimer.lap('Cleaning: ' + cls.getName());
@@ -228,9 +269,10 @@ class Migrate extends basecommand_1.default {
228
269
  }
229
270
  return objectMigrationResults;
230
271
  }
231
- async migrateObjects(migrationObjects, debugTimer) {
272
+ async migrateObjects(migrationObjects, debugTimer, namespace) {
232
273
  let objectMigrationResults = [];
233
- for (const cls of migrationObjects.reverse()) {
274
+ // Migrate in correct dependency order
275
+ for (const cls of migrationObjects) {
234
276
  try {
235
277
  logger_1.Logger.log(messages.getMessage('migratingComponent', [cls.getName()]));
236
278
  debugTimer.lap('Migrating: ' + cls.getName());
@@ -249,10 +291,14 @@ class Migrate extends basecommand_1.default {
249
291
  };
250
292
  }));
251
293
  }
252
- catch (error) {
253
- const errMsg = error instanceof Error ? error.message : String(error);
294
+ catch (ex) {
295
+ if (ex instanceof interfaces_1.InvalidEntityTypeError) {
296
+ logger_1.Logger.error(messages.getMessage('invalidTypeMigrateErrorMessage', [namespace]));
297
+ process.exit(1);
298
+ }
299
+ const errMsg = ex instanceof Error ? ex.message : String(ex);
254
300
  logger_1.Logger.error(messages.getMessage('errorMigrationMessage', [errMsg]));
255
- logger_1.Logger.logVerbose(error);
301
+ logger_1.Logger.logVerbose(ex);
256
302
  objectMigrationResults.push({
257
303
  name: cls.getName(),
258
304
  data: [],
@@ -262,16 +308,29 @@ class Migrate extends basecommand_1.default {
262
308
  }
263
309
  return objectMigrationResults;
264
310
  }
265
- getMigrationObjects(migrateOnly, migrationObjects, namespace, conn, allVersions) {
311
+ /**
312
+ * Get migration objects in the correct dependency order:
313
+ * 1. Data Mappers (lowest dependencies)
314
+ * 2. Integration Procedures/ OmniScripts
315
+ * 3. FlexCards (highest dependencies)
316
+ * 4. GlobalAutoNumbers (independent)
317
+ */
318
+ getMigrationObjectsInCorrectOrder(migrateOnly, migrationObjects, namespace, conn, allVersions) {
266
319
  if (!migrateOnly) {
267
320
  migrationObjects = [
268
321
  new dataraptor_1.DataRaptorMigrationTool(namespace, conn, this.logger, messages, this.ux),
269
- new omniscript_1.OmniScriptMigrationTool(omniscript_1.OmniScriptExportType.All, namespace, conn, this.logger, messages, this.ux, allVersions),
322
+ // Integration Procedure
323
+ new omniscript_1.OmniScriptMigrationTool(omniscript_1.OmniScriptExportType.IP, namespace, conn, this.logger, messages, this.ux, allVersions),
324
+ // OmniScript
325
+ new omniscript_1.OmniScriptMigrationTool(omniscript_1.OmniScriptExportType.OS, namespace, conn, this.logger, messages, this.ux, allVersions),
270
326
  new flexcard_1.CardMigrationTool(namespace, conn, this.logger, messages, this.ux, allVersions),
271
327
  new globalautonumber_1.GlobalAutoNumberMigrationTool(namespace, conn, this.logger, messages, this.ux),
328
+ new customLabels_1.CustomLabelsMigrationTool(namespace, conn, this.logger, messages, this.ux),
272
329
  ];
273
330
  }
274
331
  else {
332
+ // For single component migration, the order doesn't matter as much
333
+ // but we still maintain consistency
275
334
  switch (migrateOnly) {
276
335
  case stringContants_1.Constants.Omniscript:
277
336
  migrationObjects.push(new omniscript_1.OmniScriptMigrationTool(omniscript_1.OmniScriptExportType.OS, namespace, conn, this.logger, messages, this.ux, allVersions));
@@ -288,12 +347,112 @@ class Migrate extends basecommand_1.default {
288
347
  case stringContants_1.Constants.GlobalAutoNumber:
289
348
  migrationObjects.push(new globalautonumber_1.GlobalAutoNumberMigrationTool(namespace, conn, this.logger, messages, this.ux));
290
349
  break;
350
+ case stringContants_1.Constants.CustomLabel:
351
+ migrationObjects.push(new customLabels_1.CustomLabelsMigrationTool(namespace, conn, this.logger, messages, this.ux));
352
+ break;
291
353
  default:
292
354
  throw new Error(messages.getMessage('invalidOnlyFlag'));
293
355
  }
294
356
  }
295
357
  return migrationObjects;
296
358
  }
359
+ /**
360
+ * Pre-process all components to register their name mappings
361
+ */
362
+ async preProcessAllComponents(namespace, conn, migrateOnly) {
363
+ try {
364
+ const nameRegistry = NameMappingRegistry_1.NameMappingRegistry.getInstance();
365
+ // Query all components that will be migrated
366
+ const dataMappers = await this.queryDataMappers(conn, namespace);
367
+ const allOmniScripts = await this.queryOmniScripts(conn, namespace, false); // All OmniScripts (LWC + Angular)
368
+ const integrationProcedures = await this.queryOmniScripts(conn, namespace, true); // Integration Procedures only
369
+ const flexCards = await this.queryFlexCards(conn, namespace);
370
+ // Separate OmniScripts into LWC and Angular types
371
+ const { lwc: lwcOmniScripts, angular: angularOmniScripts } = this.separateOmniScriptsByType(allOmniScripts, namespace);
372
+ // Filter based on migrateOnly flag if specified
373
+ const filteredData = this.filterComponentsByMigrateOnly(migrateOnly, dataMappers, lwcOmniScripts, // Only LWC OmniScripts for migration
374
+ integrationProcedures, flexCards);
375
+ // Register all name mappings (including Angular OmniScripts for tracking)
376
+ nameRegistry.preProcessComponents(filteredData.dataMappers, filteredData.omniScripts, // LWC OmniScripts
377
+ angularOmniScripts, // Angular OmniScripts (for tracking)
378
+ filteredData.integrationProcedures, filteredData.flexCards);
379
+ const allMappings = nameRegistry.getAllNameMappings();
380
+ logger_1.Logger.log(messages.getMessage('completeComponentMappingMessage', [allMappings.length]));
381
+ }
382
+ catch (error) {
383
+ logger_1.Logger.error(messages.getMessage('errorComponentMapping'), error);
384
+ }
385
+ }
386
+ /**
387
+ * Query DataMappers from the org
388
+ */
389
+ async queryDataMappers(conn, namespace) {
390
+ const query = `SELECT Id, Name FROM ${namespace}__DRBundle__c WHERE ${namespace}__Type__c != 'Migration'`;
391
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call
392
+ const result = await conn.query(query);
393
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-return
394
+ return result.records || [];
395
+ }
396
+ /**
397
+ * Query OmniScripts from the org (both LWC and Angular)
398
+ */
399
+ async queryOmniScripts(conn, namespace, isProcedure) {
400
+ const procedureFilter = isProcedure ? 'true' : 'false';
401
+ // Query all OmniScripts (both LWC and Angular)
402
+ const query = `SELECT Id, Name, ${namespace}__Type__c, ${namespace}__SubType__c, ${namespace}__Language__c, ${namespace}__IsProcedure__c, ${namespace}__IsLwcEnabled__c FROM ${namespace}__OmniScript__c WHERE ${namespace}__IsProcedure__c = ${procedureFilter} and ${namespace}__IsActive__c = true`;
403
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call
404
+ const result = await conn.query(query);
405
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-return
406
+ return result.records || [];
407
+ }
408
+ /**
409
+ * Separate OmniScripts into LWC and Angular based on IsLwcEnabled__c field
410
+ */
411
+ separateOmniScriptsByType(omniscripts, namespace) {
412
+ const lwc = [];
413
+ const angular = [];
414
+ for (const omniscript of omniscripts) {
415
+ const isLwcEnabled = omniscript[`${namespace}__IsLwcEnabled__c`];
416
+ if (isLwcEnabled) {
417
+ lwc.push(omniscript);
418
+ }
419
+ else {
420
+ angular.push(omniscript);
421
+ }
422
+ }
423
+ return { lwc, angular };
424
+ }
425
+ /**
426
+ * Query FlexCards from the org
427
+ */
428
+ async queryFlexCards(conn, namespace) {
429
+ const query = `SELECT Id, Name FROM ${namespace}__VlocityCard__c WHERE ${namespace}__CardType__c = 'flex' AND ${namespace}__Active__c = true`;
430
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call
431
+ const result = await conn.query(query);
432
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-return
433
+ return result.records || [];
434
+ }
435
+ /**
436
+ * Filter components based on the migrateOnly flag
437
+ */
438
+ filterComponentsByMigrateOnly(migrateOnly, dataMappers, omniScripts, integrationProcedures, flexCards) {
439
+ if (!migrateOnly) {
440
+ return { dataMappers, omniScripts, integrationProcedures, flexCards };
441
+ }
442
+ // Return only the components that match the migrateOnly filter
443
+ switch (migrateOnly) {
444
+ case stringContants_1.Constants.DataMapper:
445
+ return { dataMappers, omniScripts: [], integrationProcedures: [], flexCards: [] };
446
+ case stringContants_1.Constants.Omniscript:
447
+ return { dataMappers: [], omniScripts, integrationProcedures: [], flexCards: [] };
448
+ case stringContants_1.Constants.IntegrationProcedure:
449
+ return { dataMappers: [], omniScripts: [], integrationProcedures, flexCards: [] };
450
+ case stringContants_1.Constants.Flexcard:
451
+ return { dataMappers: [], omniScripts: [], integrationProcedures: [], flexCards };
452
+ default:
453
+ return { dataMappers: [], omniScripts: [], integrationProcedures: [], flexCards: [] };
454
+ }
455
+ }
297
456
  async getTargetApexNamespace(objectsToProcess, targetApexNamespace) {
298
457
  if (objectsToProcess.includes(stringContants_1.Constants.Apex)) {
299
458
  targetApexNamespace = await this.ux.prompt(messages.getMessage('enterTargetNamespace'));
@@ -314,39 +473,32 @@ class Migrate extends basecommand_1.default {
314
473
  }
315
474
  return consent;
316
475
  }
317
- async getExpSiteMetadataEnableConsent() {
318
- let consent = null;
319
- while (consent === null) {
320
- try {
321
- consent = await logger_1.Logger.confirm('By proceeding further, you hereby consent to enable digital experience metadata api(y/n). If y sites will be processed, if n expsites will not be processed');
322
- }
323
- catch (error) {
324
- logger_1.Logger.log(messages.getMessage('invalidYesNoResponse'));
325
- consent = null;
326
- }
327
- }
328
- return consent;
329
- }
330
476
  mergeRecordAndUploadResults(migrationResults, migrationTool) {
331
477
  const mergedResults = [];
332
478
  for (const record of Array.from(migrationResults.records.values())) {
333
479
  const obj = {
334
480
  id: record['Id'],
335
481
  name: migrationTool.getRecordName(record),
336
- status: messages.getMessage('labelStatusSkipped'),
482
+ status: 'Skipped',
337
483
  errors: record['errors'],
338
484
  migratedId: undefined,
339
485
  warnings: [],
340
486
  migratedName: '',
487
+ localizationStatus: record['localizationStatus'] || {},
341
488
  };
342
489
  if (migrationResults.results.has(record['Id'])) {
343
490
  const recordResults = migrationResults.results.get(record['Id']);
344
491
  let errors = obj.errors || [];
345
492
  errors = errors.concat(recordResults.errors || []);
346
- obj.status =
347
- !recordResults || recordResults.hasErrors
348
- ? messages.getMessage('labelStatusFailed')
349
- : messages.getMessage('labelStatusComplete');
493
+ if (recordResults === null || recordResults === void 0 ? void 0 : recordResults.skipped) {
494
+ obj.status = 'Skipped';
495
+ }
496
+ else if (!recordResults || recordResults.hasErrors) {
497
+ obj.status = 'Failed';
498
+ }
499
+ else {
500
+ obj.status = 'Successfully migrated';
501
+ }
350
502
  obj.errors = errors;
351
503
  obj.migratedId = recordResults.id;
352
504
  obj.warnings = recordResults.warnings;
@@ -356,16 +508,19 @@ class Migrate extends basecommand_1.default {
356
508
  }
357
509
  return mergedResults;
358
510
  }
511
+ logTruncationErrors(objectMigrationResults) {
512
+ objectMigrationResults.forEach((result) => {
513
+ if (result.errors && result.errors.length > 0) {
514
+ logger_1.Logger.error(messages.getMessage('truncationFailed', [result.name, result.errors.join(', ')]));
515
+ }
516
+ });
517
+ }
359
518
  }
360
519
  exports.default = Migrate;
361
520
  Migrate.description = messages.getMessage('commandDescription');
362
521
  Migrate.examples = messages.getMessage('examples').split(os.EOL);
363
522
  Migrate.args = [{ name: 'file' }];
364
523
  Migrate.flagsConfig = {
365
- namespace: command_1.flags.string({
366
- char: 'n',
367
- description: messages.getMessage('namespaceFlagDescription'),
368
- }),
369
524
  only: command_1.flags.string({
370
525
  char: 'o',
371
526
  description: messages.getMessage('onlyFlagDescription'),
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../../src/commands/omnistudio/migration/migrate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../../src/commands/omnistudio/migration/migrate.ts"],"names":[],"mappings":"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"}