@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.
- package/README.md +28 -40
- package/lib/commands/omnistudio/migration/assess.d.ts +1 -1
- package/lib/commands/omnistudio/migration/assess.js +107 -37
- package/lib/commands/omnistudio/migration/assess.js.map +1 -1
- package/lib/commands/omnistudio/migration/info.js +1 -1
- package/lib/commands/omnistudio/migration/info.js.map +1 -1
- package/lib/commands/omnistudio/migration/migrate.d.ts +35 -5
- package/lib/commands/omnistudio/migration/migrate.js +262 -107
- package/lib/commands/omnistudio/migration/migrate.js.map +1 -1
- package/lib/javascripts/reportGeneratorUtility.js +100 -19
- package/lib/migration/NameMappingRegistry.d.ts +130 -0
- package/lib/migration/NameMappingRegistry.js +376 -0
- package/lib/migration/NameMappingRegistry.js.map +1 -0
- package/lib/migration/base.d.ts +4 -2
- package/lib/migration/base.js +8 -1
- package/lib/migration/base.js.map +1 -1
- package/lib/migration/customLabels.d.ts +49 -0
- package/lib/migration/customLabels.js +190 -0
- package/lib/migration/customLabels.js.map +1 -0
- package/lib/migration/dataraptor.js +63 -14
- package/lib/migration/dataraptor.js.map +1 -1
- package/lib/migration/deployer.d.ts +11 -0
- package/lib/migration/deployer.js +59 -0
- package/lib/migration/deployer.js.map +1 -0
- package/lib/migration/flexcard.d.ts +44 -2
- package/lib/migration/flexcard.js +707 -110
- package/lib/migration/flexcard.js.map +1 -1
- package/lib/migration/globalautonumber.d.ts +6 -6
- package/lib/migration/globalautonumber.js +27 -34
- package/lib/migration/globalautonumber.js.map +1 -1
- package/lib/migration/interfaces.d.ts +5 -0
- package/lib/migration/interfaces.js +7 -0
- package/lib/migration/interfaces.js.map +1 -1
- package/lib/migration/omniscript.d.ts +42 -2
- package/lib/migration/omniscript.js +724 -100
- package/lib/migration/omniscript.js.map +1 -1
- package/lib/migration/postMigrate.d.ts +22 -3
- package/lib/migration/postMigrate.js +147 -12
- package/lib/migration/postMigrate.js.map +1 -1
- package/lib/migration/premigrate.d.ts +16 -0
- package/lib/migration/premigrate.js +122 -0
- package/lib/migration/premigrate.js.map +1 -0
- package/lib/migration/related/ApexMigration.d.ts +1 -0
- package/lib/migration/related/ApexMigration.js +143 -22
- package/lib/migration/related/ApexMigration.js.map +1 -1
- package/lib/migration/related/ExperienceSiteMigration.d.ts +12 -4
- package/lib/migration/related/ExperienceSiteMigration.js +127 -59
- package/lib/migration/related/ExperienceSiteMigration.js.map +1 -1
- package/lib/migration/related/FlexipageMigration.d.ts +4 -4
- package/lib/migration/related/FlexipageMigration.js +31 -30
- package/lib/migration/related/FlexipageMigration.js.map +1 -1
- package/lib/migration/related/LwcMigration.js +27 -16
- package/lib/migration/related/LwcMigration.js.map +1 -1
- package/lib/migration/related/OmnistudioRelatedObjectMigrationFacade.js +30 -24
- package/lib/migration/related/OmnistudioRelatedObjectMigrationFacade.js.map +1 -1
- package/lib/styles/reportGenerator.css +9 -5
- package/lib/templates/assessmentReport.template +67 -6
- package/lib/templates/migrationReport.template +146 -4
- package/lib/utils/OmnistudioSettingsPrefManager.d.ts +12 -0
- package/lib/utils/OmnistudioSettingsPrefManager.js +82 -0
- package/lib/utils/OmnistudioSettingsPrefManager.js.map +1 -0
- package/lib/utils/XMLUtil.js +2 -1
- package/lib/utils/XMLUtil.js.map +1 -1
- package/lib/utils/apex/parser/apexparser.d.ts +8 -1
- package/lib/utils/apex/parser/apexparser.js +63 -10
- package/lib/utils/apex/parser/apexparser.js.map +1 -1
- package/lib/utils/constants/documentRegistry.d.ts +2 -1
- package/lib/utils/constants/documentRegistry.js +4 -3
- package/lib/utils/constants/documentRegistry.js.map +1 -1
- package/lib/utils/constants/stringContants.d.ts +7 -0
- package/lib/utils/constants/stringContants.js +10 -2
- package/lib/utils/constants/stringContants.js.map +1 -1
- package/lib/utils/customLabels.d.ts +34 -0
- package/lib/utils/customLabels.js +97 -0
- package/lib/utils/customLabels.js.map +1 -0
- package/lib/utils/file/fileUtil.d.ts +3 -1
- package/lib/utils/file/fileUtil.js +11 -4
- package/lib/utils/file/fileUtil.js.map +1 -1
- package/lib/utils/flexipage/flexiPageTransformer.js +14 -10
- package/lib/utils/flexipage/flexiPageTransformer.js.map +1 -1
- package/lib/utils/generatePackageXml.d.ts +4 -2
- package/lib/utils/generatePackageXml.js +17 -23
- package/lib/utils/generatePackageXml.js.map +1 -1
- package/lib/utils/interfaces.d.ts +36 -3
- package/lib/utils/logger.js +3 -1
- package/lib/utils/logger.js.map +1 -1
- package/lib/utils/lwcparser/fileutils/FileDiffUtil.js +20 -21
- package/lib/utils/lwcparser/fileutils/FileDiffUtil.js.map +1 -1
- package/lib/utils/lwcparser/xmlParser/XmlParser.js +2 -1
- package/lib/utils/lwcparser/xmlParser/XmlParser.js.map +1 -1
- package/lib/utils/orgPreferences.d.ts +1 -0
- package/lib/utils/orgPreferences.js +11 -8
- package/lib/utils/orgPreferences.js.map +1 -1
- package/lib/utils/orgUtils/index.d.ts +1 -1
- package/lib/utils/orgUtils/index.js +14 -14
- package/lib/utils/orgUtils/index.js.map +1 -1
- package/lib/utils/promptUtil.d.ts +2 -0
- package/lib/utils/promptUtil.js +26 -1
- package/lib/utils/promptUtil.js.map +1 -1
- package/lib/utils/reportGenerator/reportInterfaces.d.ts +9 -0
- package/lib/utils/reportGenerator/reportUtil.d.ts +1 -1
- package/lib/utils/reportGenerator/reportUtil.js +6 -3
- package/lib/utils/reportGenerator/reportUtil.js.map +1 -1
- package/lib/utils/resultsbuilder/ApexAssessmentReporter.d.ts +2 -0
- package/lib/utils/resultsbuilder/ApexAssessmentReporter.js +51 -15
- package/lib/utils/resultsbuilder/ApexAssessmentReporter.js.map +1 -1
- package/lib/utils/resultsbuilder/CustomLabelAssessmentReporter.d.ts +13 -0
- package/lib/utils/resultsbuilder/CustomLabelAssessmentReporter.js +178 -0
- package/lib/utils/resultsbuilder/CustomLabelAssessmentReporter.js.map +1 -0
- package/lib/utils/resultsbuilder/CustomLabelMigrationReporter.d.ts +19 -0
- package/lib/utils/resultsbuilder/CustomLabelMigrationReporter.js +239 -0
- package/lib/utils/resultsbuilder/CustomLabelMigrationReporter.js.map +1 -0
- package/lib/utils/resultsbuilder/DRAssessmentReporter.js +43 -11
- package/lib/utils/resultsbuilder/DRAssessmentReporter.js.map +1 -1
- package/lib/utils/resultsbuilder/ExperienceSiteAssessmentReporter.d.ts +13 -0
- package/lib/utils/resultsbuilder/ExperienceSiteAssessmentReporter.js +111 -0
- package/lib/utils/resultsbuilder/ExperienceSiteAssessmentReporter.js.map +1 -0
- package/lib/utils/resultsbuilder/FlexcardAssessmentReporter.js +51 -12
- package/lib/utils/resultsbuilder/FlexcardAssessmentReporter.js.map +1 -1
- package/lib/utils/resultsbuilder/FlexipageAssessmentReporter.d.ts +1 -0
- package/lib/utils/resultsbuilder/FlexipageAssessmentReporter.js +40 -18
- package/lib/utils/resultsbuilder/FlexipageAssessmentReporter.js.map +1 -1
- package/lib/utils/resultsbuilder/GlobalAutoNumberAssessmentReporter.js +21 -14
- package/lib/utils/resultsbuilder/GlobalAutoNumberAssessmentReporter.js.map +1 -1
- package/lib/utils/resultsbuilder/IPAssessmentReporter.js +47 -12
- package/lib/utils/resultsbuilder/IPAssessmentReporter.js.map +1 -1
- package/lib/utils/resultsbuilder/LWCAssessmentReporter.d.ts +14 -0
- package/lib/utils/resultsbuilder/LWCAssessmentReporter.js +143 -139
- package/lib/utils/resultsbuilder/LWCAssessmentReporter.js.map +1 -1
- package/lib/utils/resultsbuilder/OSAssessmentReporter.js +31 -18
- package/lib/utils/resultsbuilder/OSAssessmentReporter.js.map +1 -1
- package/lib/utils/resultsbuilder/assessmentReporter.d.ts +6 -1
- package/lib/utils/resultsbuilder/assessmentReporter.js +163 -66
- package/lib/utils/resultsbuilder/assessmentReporter.js.map +1 -1
- package/lib/utils/resultsbuilder/index.d.ts +12 -1
- package/lib/utils/resultsbuilder/index.js +343 -84
- package/lib/utils/resultsbuilder/index.js.map +1 -1
- package/lib/utils/resultsbuilder/reportingHelper.d.ts +2 -7
- package/lib/utils/resultsbuilder/reportingHelper.js +0 -43
- package/lib/utils/resultsbuilder/reportingHelper.js.map +1 -1
- package/lib/utils/sfcli/project/sfProject.d.ts +4 -0
- package/lib/utils/sfcli/project/sfProject.js +56 -1
- package/lib/utils/sfcli/project/sfProject.js.map +1 -1
- package/lib/utils/shell/cli.js +3 -7
- package/lib/utils/shell/cli.js.map +1 -1
- package/lib/utils/storageUtil.d.ts +1 -0
- package/lib/utils/storageUtil.js +3 -0
- package/lib/utils/storageUtil.js.map +1 -1
- package/lib/utils/stringUtils.d.ts +9 -0
- package/lib/utils/stringUtils.js +38 -7
- package/lib/utils/stringUtils.js.map +1 -1
- package/lib/utils/templateParser/model/elementNode.js +11 -2
- package/lib/utils/templateParser/model/elementNode.js.map +1 -1
- package/lib/utils/validatorService.d.ts +13 -0
- package/lib/utils/validatorService.js +69 -0
- package/lib/utils/validatorService.js.map +1 -0
- package/messages/assess.json +125 -55
- package/messages/migrate.json +172 -53
- package/oclif.manifest.json +1 -1
- package/package.json +40 -7
- package/lib/utils/OmniGlobalAutoNumberPrefManager.d.ts +0 -40
- package/lib/utils/OmniGlobalAutoNumberPrefManager.js +0 -65
- package/lib/utils/OmniGlobalAutoNumberPrefManager.js.map +0 -1
|
@@ -33,164 +33,231 @@ const logger_1 = require("../../utils/logger");
|
|
|
33
33
|
const stringContants_1 = require("../../utils/constants/stringContants");
|
|
34
34
|
const FileDiffUtil_1 = require("../../utils/lwcparser/fileutils/FileDiffUtil");
|
|
35
35
|
const storageUtil_1 = require("../../utils/storageUtil");
|
|
36
|
+
const base_1 = require("../base");
|
|
36
37
|
const BaseRealtedObjectMigration_1 = require("./BaseRealtedObjectMigration");
|
|
37
38
|
core_1.Messages.importMessagesDirectory(__dirname);
|
|
38
|
-
const TARGET_COMPONENT_NAME_OS = '
|
|
39
|
-
const TARGET_COMPONENT_NAME_FC = '
|
|
39
|
+
const TARGET_COMPONENT_NAME_OS = 'runtime_omnistudio:omniscript';
|
|
40
|
+
const TARGET_COMPONENT_NAME_FC = 'runtime_omnistudio:flexcard';
|
|
40
41
|
const FLEXCARD_PREFIX = 'cf';
|
|
41
42
|
class ExperienceSiteMigration extends BaseRealtedObjectMigration_1.BaseRelatedObjectMigration {
|
|
42
|
-
constructor(projectPath, namespace, org) {
|
|
43
|
+
constructor(projectPath, namespace, org, messages) {
|
|
43
44
|
super(projectPath, namespace, org);
|
|
45
|
+
this.MIGRATE = 'Migrate';
|
|
46
|
+
this.ASSESS = 'Assess';
|
|
47
|
+
this.messages = messages;
|
|
44
48
|
}
|
|
45
49
|
processObjectType() {
|
|
46
50
|
return stringContants_1.Constants.ExpSites;
|
|
47
51
|
}
|
|
52
|
+
assess() {
|
|
53
|
+
return this.process(this.ASSESS);
|
|
54
|
+
}
|
|
48
55
|
migrate() {
|
|
49
|
-
|
|
56
|
+
return this.process(this.MIGRATE);
|
|
57
|
+
}
|
|
58
|
+
process(type) {
|
|
59
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('processingExperienceSites', [type]));
|
|
50
60
|
const pwd = shell.pwd();
|
|
51
61
|
shell.cd(this.projectPath);
|
|
52
62
|
this.EXPERIENCE_SITES_PATH = path.join(this.projectPath, 'force-app', 'main', 'default', 'experiences');
|
|
53
|
-
logger_1.Logger.logVerbose('
|
|
54
|
-
const experienceSiteInfo = this.processExperienceSites(this.EXPERIENCE_SITES_PATH,
|
|
55
|
-
logger_1.Logger.info('
|
|
63
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('experienceSitesProcessingStarted'));
|
|
64
|
+
const experienceSiteInfo = this.processExperienceSites(this.EXPERIENCE_SITES_PATH, type);
|
|
65
|
+
logger_1.Logger.info(this.messages.getMessage('experienceSiteSuccessfullyProcessed', [type]));
|
|
56
66
|
shell.cd(pwd);
|
|
57
67
|
return experienceSiteInfo;
|
|
58
68
|
}
|
|
59
|
-
processExperienceSites(dir, type
|
|
60
|
-
logger_1.Logger.logVerbose('
|
|
61
|
-
const
|
|
69
|
+
processExperienceSites(dir, type) {
|
|
70
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('readingFile'));
|
|
71
|
+
const count = { total: 0 };
|
|
72
|
+
const directoryMap = fileUtil_1.FileUtil.getAllFilesInsideDirectory(dir, count, '.json');
|
|
73
|
+
// eslint-disable-next-line @typescript-eslint/restrict-plus-operands
|
|
74
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('totalFileCount', [count.total]));
|
|
62
75
|
// TODO - IF directory is empty
|
|
76
|
+
let progressCounter = 0;
|
|
77
|
+
const progressBar = (0, base_1.createProgressBar)(type, 'ExperienceSites');
|
|
78
|
+
progressBar.start(count.total, progressCounter);
|
|
63
79
|
const experienceSitesAssessmentInfo = [];
|
|
80
|
+
logger_1.Logger.logVerbose('The namespace for expsites processing is ' + this.namespace);
|
|
64
81
|
for (const directory of directoryMap.keys()) {
|
|
65
82
|
const fileArray = directoryMap.get(directory);
|
|
83
|
+
if (!fileArray) {
|
|
84
|
+
continue;
|
|
85
|
+
}
|
|
66
86
|
for (const file of fileArray) {
|
|
87
|
+
progressBar.update(++progressCounter);
|
|
67
88
|
if (file.ext !== '.json') {
|
|
68
|
-
logger_1.Logger.logVerbose('
|
|
89
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('skipNonJsonFile ', [file.name]));
|
|
69
90
|
continue;
|
|
70
91
|
}
|
|
71
92
|
try {
|
|
72
93
|
const experienceSiteInfo = this.processExperienceSite(file, type);
|
|
73
94
|
if ((experienceSiteInfo === null || experienceSiteInfo === void 0 ? void 0 : experienceSiteInfo.hasOmnistudioContent) === true) {
|
|
74
|
-
logger_1.Logger.logVerbose('
|
|
95
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('experienceSiteWithOmniWrapperSuccessfullyProcessed'));
|
|
75
96
|
experienceSitesAssessmentInfo.push(experienceSiteInfo);
|
|
76
97
|
}
|
|
77
98
|
else {
|
|
78
|
-
logger_1.Logger.logVerbose('
|
|
99
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('fileNotHavingWrapper'));
|
|
79
100
|
}
|
|
80
101
|
}
|
|
81
102
|
catch (err) {
|
|
82
|
-
|
|
103
|
+
this.populateExceptionInfo(file, experienceSitesAssessmentInfo);
|
|
104
|
+
logger_1.Logger.error(this.messages.getMessage('errorProcessingExperienceSite', [file.name]));
|
|
83
105
|
logger_1.Logger.error(JSON.stringify(err));
|
|
84
106
|
}
|
|
85
107
|
}
|
|
86
108
|
}
|
|
109
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('experienceSiteReportingDetails'));
|
|
110
|
+
progressBar.stop();
|
|
87
111
|
return experienceSitesAssessmentInfo;
|
|
88
112
|
}
|
|
89
|
-
processExperienceSite(file, type
|
|
90
|
-
logger_1.Logger.logVerbose('
|
|
113
|
+
processExperienceSite(file, type) {
|
|
114
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('processingFile', [file.name]));
|
|
91
115
|
const experienceSiteAssessmentInfo = {
|
|
92
116
|
name: file.name,
|
|
93
117
|
warnings: [],
|
|
118
|
+
errors: [],
|
|
94
119
|
infos: [],
|
|
95
120
|
path: file.location,
|
|
96
121
|
diff: JSON.stringify([]),
|
|
97
122
|
hasOmnistudioContent: false,
|
|
123
|
+
status: type === this.ASSESS ? 'Ready for migration' : 'Successfully migrated',
|
|
98
124
|
};
|
|
99
125
|
const lookupComponentName = `${this.namespace}:vlocityLWCOmniWrapper`;
|
|
100
126
|
const fileContent = fs.readFileSync(file.location, 'utf8');
|
|
101
127
|
// TODO - undefined check here
|
|
102
128
|
const experienceSiteParsedJSON = JSON.parse(fileContent);
|
|
103
129
|
const normalizedOriginalFileContent = JSON.stringify(experienceSiteParsedJSON, null, 2);
|
|
104
|
-
const regions = experienceSiteParsedJSON
|
|
130
|
+
const regions = experienceSiteParsedJSON.regions;
|
|
105
131
|
// TODO - When will it be Flexcard
|
|
106
132
|
if (regions === undefined) {
|
|
107
133
|
experienceSiteAssessmentInfo.hasOmnistudioContent = false;
|
|
108
134
|
return experienceSiteAssessmentInfo;
|
|
109
135
|
}
|
|
110
|
-
|
|
136
|
+
let storage;
|
|
137
|
+
if (type === this.MIGRATE) {
|
|
138
|
+
storage = storageUtil_1.StorageUtil.getOmnistudioMigrationStorage();
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
storage = storageUtil_1.StorageUtil.getOmnistudioAssessmentStorage();
|
|
142
|
+
}
|
|
111
143
|
for (const region of regions) {
|
|
112
|
-
|
|
113
|
-
const regionComponents = region['components'];
|
|
114
|
-
if (regionComponents === undefined) {
|
|
115
|
-
continue;
|
|
116
|
-
}
|
|
117
|
-
if (Array.isArray(regionComponents)) {
|
|
118
|
-
for (const component of regionComponents) {
|
|
119
|
-
if (component === undefined || component === null) {
|
|
120
|
-
continue;
|
|
121
|
-
}
|
|
122
|
-
logger_1.Logger.logVerbose('The current component being processed is ' + JSON.stringify(component));
|
|
123
|
-
if (component.componentName === lookupComponentName) {
|
|
124
|
-
logger_1.Logger.logVerbose('Omnistudio wrapper component found');
|
|
125
|
-
experienceSiteAssessmentInfo.hasOmnistudioContent = true;
|
|
126
|
-
this.updateComponentAndItsAttributes(component, component.componentAttributes, experienceSiteAssessmentInfo, storage);
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
}
|
|
144
|
+
this.processRegion(region, experienceSiteAssessmentInfo, storage, lookupComponentName, type);
|
|
130
145
|
}
|
|
131
|
-
logger_1.Logger.logVerbose('
|
|
146
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('printUpdatedObject', [JSON.stringify(experienceSiteParsedJSON)]));
|
|
132
147
|
const noarmalizeUpdatedFileContent = JSON.stringify(experienceSiteParsedJSON, null, 2); // Pretty-print with 2 spaces
|
|
133
148
|
const difference = new FileDiffUtil_1.FileDiffUtil().getFileDiff(file.name, normalizedOriginalFileContent, noarmalizeUpdatedFileContent);
|
|
134
|
-
logger_1.Logger.logVerbose('
|
|
135
|
-
if (normalizedOriginalFileContent !== noarmalizeUpdatedFileContent) {
|
|
136
|
-
logger_1.Logger.logVerbose('
|
|
149
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('printDifference', [JSON.stringify(difference)]));
|
|
150
|
+
if (type === this.MIGRATE && normalizedOriginalFileContent !== noarmalizeUpdatedFileContent) {
|
|
151
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('updatingFile'));
|
|
137
152
|
fs.writeFileSync(file.location, noarmalizeUpdatedFileContent, 'utf8');
|
|
138
153
|
}
|
|
139
154
|
experienceSiteAssessmentInfo.diff = JSON.stringify(difference);
|
|
140
155
|
return experienceSiteAssessmentInfo;
|
|
141
156
|
}
|
|
142
|
-
|
|
157
|
+
populateExceptionInfo(file, experienceSiteAssessmentInfos) {
|
|
158
|
+
try {
|
|
159
|
+
const experienceSiteAssessmentInfo = {
|
|
160
|
+
name: file.name,
|
|
161
|
+
warnings: ['Unknown error occurred'],
|
|
162
|
+
errors: [''],
|
|
163
|
+
infos: [],
|
|
164
|
+
path: file.location,
|
|
165
|
+
diff: JSON.stringify([]),
|
|
166
|
+
hasOmnistudioContent: false,
|
|
167
|
+
status: 'Failed',
|
|
168
|
+
};
|
|
169
|
+
experienceSiteAssessmentInfos.push(experienceSiteAssessmentInfo);
|
|
170
|
+
}
|
|
171
|
+
catch {
|
|
172
|
+
logger_1.Logger.error(this.messages.getMessage('experienceSiteException'));
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
processRegion(region, experienceSiteAssessmentInfo, storage, lookupComponentName, type) {
|
|
176
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('currentRegionOfExperienceSite', [JSON.stringify(region)]));
|
|
177
|
+
const regionComponents = region.components;
|
|
178
|
+
if (regionComponents === undefined) {
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
if (Array.isArray(regionComponents)) {
|
|
182
|
+
for (const component of regionComponents) {
|
|
183
|
+
this.processComponent(component, experienceSiteAssessmentInfo, storage, lookupComponentName, type);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
processComponent(component, experienceSiteAssessmentInfo, storage, lookupComponentName, type) {
|
|
188
|
+
if (component === undefined || component === null) {
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
if (component.componentName === lookupComponentName) {
|
|
192
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('omniWrapperFound'));
|
|
193
|
+
experienceSiteAssessmentInfo.hasOmnistudioContent = true;
|
|
194
|
+
this.updateComponentAndItsAttributes(component, component.componentAttributes, experienceSiteAssessmentInfo, storage, type);
|
|
195
|
+
return;
|
|
196
|
+
}
|
|
197
|
+
const regionsInsideComponent = component.regions;
|
|
198
|
+
if (Array.isArray(regionsInsideComponent)) {
|
|
199
|
+
for (const region of regionsInsideComponent) {
|
|
200
|
+
this.processRegion(region, experienceSiteAssessmentInfo, storage, lookupComponentName, type);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
updateComponentAndItsAttributes(component, currentAttribute, experienceSiteAssessmentInfo, storage, type) {
|
|
143
205
|
if (component === undefined || currentAttribute === undefined) {
|
|
144
206
|
return;
|
|
145
207
|
}
|
|
146
208
|
if (currentAttribute.target === undefined || currentAttribute.target === '') {
|
|
147
|
-
experienceSiteAssessmentInfo.warnings.push(
|
|
209
|
+
experienceSiteAssessmentInfo.warnings.push(this.messages.getMessage('emptyTargetData'));
|
|
210
|
+
experienceSiteAssessmentInfo.status = type === this.ASSESS ? 'Needs Manual Intervention' : 'Skipped';
|
|
148
211
|
return;
|
|
149
212
|
}
|
|
150
213
|
const targetName = currentAttribute.target.substring(currentAttribute.target.indexOf(':') + 1); // c:ABCD -> ABCD
|
|
151
214
|
if (targetName.startsWith(FLEXCARD_PREFIX)) {
|
|
152
|
-
this.processFCComponent(targetName, component, currentAttribute, experienceSiteAssessmentInfo, storage);
|
|
215
|
+
this.processFCComponent(targetName, component, currentAttribute, experienceSiteAssessmentInfo, storage, type);
|
|
153
216
|
}
|
|
154
217
|
else {
|
|
155
|
-
this.processOSComponent(targetName, component, currentAttribute, experienceSiteAssessmentInfo, storage);
|
|
218
|
+
this.processOSComponent(targetName, component, currentAttribute, experienceSiteAssessmentInfo, storage, type);
|
|
156
219
|
}
|
|
157
220
|
logger_1.Logger.logVerbose('updatedComponentAttribute = ' + JSON.stringify(currentAttribute));
|
|
158
221
|
}
|
|
159
|
-
processFCComponent(targetName, component, currentAttribute, experienceSiteAssessmentInfo, storage) {
|
|
160
|
-
logger_1.Logger.logVerbose(
|
|
222
|
+
processFCComponent(targetName, component, currentAttribute, experienceSiteAssessmentInfo, storage, type) {
|
|
223
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('processingFlexcardComponent', [JSON.stringify(component)]));
|
|
161
224
|
const flexcardName = targetName.substring(2); // cfCardName -> CardName
|
|
162
|
-
const targetDataFromStorageFC = storage.fcStorage.get(flexcardName);
|
|
163
|
-
logger_1.Logger.logVerbose('
|
|
225
|
+
const targetDataFromStorageFC = storage.fcStorage.get(flexcardName.toLowerCase());
|
|
226
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('targetData', [JSON.stringify(targetDataFromStorageFC)]));
|
|
164
227
|
// Remove later
|
|
165
228
|
if (this.shouldAddWarning(targetDataFromStorageFC)) {
|
|
166
229
|
const warningMsg = this.getWarningMessage(flexcardName, targetDataFromStorageFC);
|
|
167
230
|
experienceSiteAssessmentInfo.warnings.push(warningMsg);
|
|
231
|
+
experienceSiteAssessmentInfo.status = type === this.ASSESS ? 'Needs Manual Intervention' : 'Skipped';
|
|
168
232
|
}
|
|
169
233
|
else {
|
|
170
234
|
component.componentName = TARGET_COMPONENT_NAME_FC;
|
|
235
|
+
const keysToDelete = ['target', 'layout', 'params', 'standalone'];
|
|
236
|
+
keysToDelete.forEach((key) => delete currentAttribute[key]);
|
|
171
237
|
currentAttribute['flexcardName'] = targetDataFromStorageFC.name;
|
|
172
238
|
currentAttribute['objectApiName'] = '{!objectApiName}';
|
|
173
239
|
currentAttribute['recordId'] = '{!recordId}';
|
|
174
240
|
}
|
|
175
241
|
}
|
|
176
|
-
processOSComponent(targetName, component, currentAttribute, experienceSiteAssessmentInfo, storage) {
|
|
177
|
-
logger_1.Logger.logVerbose(
|
|
242
|
+
processOSComponent(targetName, component, currentAttribute, experienceSiteAssessmentInfo, storage, type) {
|
|
243
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('processingOmniscriptComponent', [JSON.stringify(component)]));
|
|
178
244
|
// Use storage to find the updated properties
|
|
179
|
-
const targetDataFromStorage = storage.osStorage.get(targetName);
|
|
180
|
-
logger_1.Logger.logVerbose('
|
|
245
|
+
const targetDataFromStorage = storage.osStorage.get(targetName.toLowerCase());
|
|
246
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('targetData', [JSON.stringify(targetDataFromStorage)]));
|
|
181
247
|
if (this.shouldAddWarning(targetDataFromStorage)) {
|
|
182
248
|
const warningMsg = this.getWarningMessage(targetName, targetDataFromStorage);
|
|
183
249
|
experienceSiteAssessmentInfo.warnings.push(warningMsg);
|
|
250
|
+
experienceSiteAssessmentInfo.status = type === this.ASSESS ? 'Needs Manual Intervention' : 'Skipped';
|
|
184
251
|
}
|
|
185
252
|
else {
|
|
186
253
|
component.componentName = TARGET_COMPONENT_NAME_OS;
|
|
187
254
|
// Preserve the layout value before clearing
|
|
188
255
|
const originalLayout = currentAttribute['layout'];
|
|
189
|
-
//
|
|
190
|
-
|
|
191
|
-
|
|
256
|
+
// Clear existing properties more safely - preserve any properties we don't want to delete
|
|
257
|
+
const keysToDelete = ['layout', 'params', 'standAlone', 'target'];
|
|
258
|
+
keysToDelete.forEach((key) => delete currentAttribute[key]);
|
|
192
259
|
currentAttribute['direction'] = 'ltr';
|
|
193
|
-
currentAttribute['display'] = 'Display
|
|
260
|
+
currentAttribute['display'] = 'Display OmniScript on page';
|
|
194
261
|
currentAttribute['inlineVariant'] = 'brand';
|
|
195
262
|
currentAttribute['language'] =
|
|
196
263
|
targetDataFromStorage.language === undefined ? 'English' : targetDataFromStorage.language;
|
|
@@ -204,13 +271,14 @@ class ExperienceSiteMigration extends BaseRealtedObjectMigration_1.BaseRelatedOb
|
|
|
204
271
|
}
|
|
205
272
|
getWarningMessage(oldTypeSubtypeLanguage, targetDataFromStorage) {
|
|
206
273
|
if (targetDataFromStorage === undefined) {
|
|
207
|
-
|
|
274
|
+
// Add log verbose
|
|
275
|
+
return this.messages.getMessage('manualInterventionForExperienceSite', [oldTypeSubtypeLanguage]);
|
|
208
276
|
}
|
|
209
277
|
else if (targetDataFromStorage.migrationSuccess === false) {
|
|
210
|
-
return
|
|
278
|
+
return this.messages.getMessage('manualInterventionForExperienceSiteAsFailure', [oldTypeSubtypeLanguage]);
|
|
211
279
|
}
|
|
212
280
|
else {
|
|
213
|
-
return
|
|
281
|
+
return this.messages.getMessage('manualInterventionForExperienceSiteAsDuplicateKey', [oldTypeSubtypeLanguage]);
|
|
214
282
|
}
|
|
215
283
|
}
|
|
216
284
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExperienceSiteMigration.js","sourceRoot":"","sources":["../../../src/migration/related/ExperienceSiteMigration.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ExperienceSiteMigration.js","sourceRoot":"","sources":["../../../src/migration/related/ExperienceSiteMigration.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,7 +51,7 @@ export declare class FlexipageMigration extends BaseRelatedObjectMigration {
|
|
|
51
51
|
*/
|
|
52
52
|
migrate(): FlexiPageAssessmentInfo[];
|
|
53
53
|
/**
|
|
54
|
-
* Processes
|
|
54
|
+
* Processes FlexiPages in either assessment or migration mode.
|
|
55
55
|
*
|
|
56
56
|
* This method:
|
|
57
57
|
* - Retrieves FlexiPage metadata from the Salesforce org
|
|
@@ -65,7 +65,7 @@ export declare class FlexipageMigration extends BaseRelatedObjectMigration {
|
|
|
65
65
|
*/
|
|
66
66
|
private process;
|
|
67
67
|
/**
|
|
68
|
-
* Processes a single FlexiPage
|
|
68
|
+
* Processes a single FlexiPage for assessment or migration.
|
|
69
69
|
*
|
|
70
70
|
* This method:
|
|
71
71
|
* - Reads the FlexiPage XML file content
|
|
@@ -75,8 +75,8 @@ export declare class FlexipageMigration extends BaseRelatedObjectMigration {
|
|
|
75
75
|
* - Writes transformed content back to file in migration mode
|
|
76
76
|
* - Handles errors and provides detailed error information
|
|
77
77
|
*
|
|
78
|
-
* @param fileName - The name of the FlexiPage
|
|
79
|
-
* @param filePath - The full path to the FlexiPage
|
|
78
|
+
* @param fileName - The name of the FlexiPage
|
|
79
|
+
* @param filePath - The full path to the FlexiPage
|
|
80
80
|
* @param mode - The processing mode: 'assess' or 'migrate'
|
|
81
81
|
* @returns FlexiPage assessment information with status and error details
|
|
82
82
|
*/
|
|
@@ -32,8 +32,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
32
32
|
exports.FlexipageMigration = void 0;
|
|
33
33
|
const fs = __importStar(require("fs"));
|
|
34
34
|
const path = __importStar(require("path"));
|
|
35
|
-
const shell = __importStar(require("shelljs"));
|
|
36
|
-
const sfProject_1 = require("../../utils/sfcli/project/sfProject");
|
|
37
35
|
const logger_1 = require("../../utils/logger");
|
|
38
36
|
const stringContants_1 = require("../../utils/constants/stringContants");
|
|
39
37
|
const base_1 = require("../base");
|
|
@@ -101,7 +99,7 @@ class FlexipageMigration extends BaseRealtedObjectMigration_1.BaseRelatedObjectM
|
|
|
101
99
|
return this.process('migrate');
|
|
102
100
|
}
|
|
103
101
|
/**
|
|
104
|
-
* Processes
|
|
102
|
+
* Processes FlexiPages in either assessment or migration mode.
|
|
105
103
|
*
|
|
106
104
|
* This method:
|
|
107
105
|
* - Retrieves FlexiPage metadata from the Salesforce org
|
|
@@ -114,20 +112,22 @@ class FlexipageMigration extends BaseRealtedObjectMigration_1.BaseRelatedObjectM
|
|
|
114
112
|
* @returns Array of FlexiPage assessment information
|
|
115
113
|
*/
|
|
116
114
|
process(mode) {
|
|
117
|
-
logger_1.Logger.logVerbose(this.messages.getMessage('retrievingFlexiPages'));
|
|
118
|
-
shell.cd(this.projectPath);
|
|
119
|
-
sfProject_1.sfProject.retrieve(stringContants_1.Constants.FlexiPage, this.org.getUsername());
|
|
120
115
|
const flexiPageDir = path.join(this.projectPath, 'force-app', 'main', 'default', 'flexipages');
|
|
121
116
|
const files = fs.readdirSync(flexiPageDir).filter((file) => file.endsWith('.xml'));
|
|
122
|
-
logger_1.Logger.logVerbose(this.messages.getMessage('
|
|
123
|
-
const progressBar = (0, base_1.createProgressBar)('Migrating', 'Flexipage');
|
|
124
|
-
progressBar.
|
|
117
|
+
logger_1.Logger.logVerbose(this.messages.getMessage('foundFlexiPages', [files.length]));
|
|
118
|
+
const progressBar = (0, base_1.createProgressBar)(mode === 'assess' ? 'Assessing' : 'Migrating', 'Flexipage');
|
|
119
|
+
progressBar.start(files.length, 0);
|
|
125
120
|
const flexPageAssessmentInfos = [];
|
|
121
|
+
const errors = new Set();
|
|
126
122
|
for (const file of files) {
|
|
127
123
|
logger_1.Logger.logVerbose(this.messages.getMessage('processingFlexiPage', [file]));
|
|
128
124
|
const filePath = path.join(flexiPageDir, file);
|
|
129
125
|
try {
|
|
130
126
|
const flexPageAssessmentInfo = this.processFlexiPage(file, filePath, mode);
|
|
127
|
+
if (!flexPageAssessmentInfo) {
|
|
128
|
+
progressBar.increment();
|
|
129
|
+
continue;
|
|
130
|
+
}
|
|
131
131
|
flexPageAssessmentInfos.push(flexPageAssessmentInfo);
|
|
132
132
|
logger_1.Logger.logVerbose(this.messages.getMessage('completedProcessingFlexiPage', [
|
|
133
133
|
file,
|
|
@@ -135,37 +135,43 @@ class FlexipageMigration extends BaseRealtedObjectMigration_1.BaseRelatedObjectM
|
|
|
135
135
|
]));
|
|
136
136
|
}
|
|
137
137
|
catch (error) {
|
|
138
|
+
let status = 'Failed';
|
|
138
139
|
if (error instanceof errorInterfaces_1.KeyNotFoundInStorageError) {
|
|
139
|
-
|
|
140
|
+
errors.add(`${error.componentType} ${error.key} can't be migrated`);
|
|
141
|
+
status = mode === 'assess' ? 'Needs Manual Intervention' : 'Skipped';
|
|
140
142
|
}
|
|
141
143
|
else if (error instanceof errorInterfaces_1.TargetPropertyNotFoundError) {
|
|
142
|
-
|
|
144
|
+
errors.add(error.message);
|
|
145
|
+
status = mode === 'assess' ? 'Needs Manual Intervention' : 'Skipped';
|
|
143
146
|
}
|
|
144
147
|
else if (error instanceof errorInterfaces_1.DuplicateKeyError) {
|
|
145
|
-
|
|
148
|
+
errors.add(`${error.componentType} ${error.key} is duplicate`);
|
|
149
|
+
status = mode === 'assess' ? 'Needs Manual Intervention' : 'Skipped';
|
|
146
150
|
}
|
|
147
151
|
else {
|
|
148
|
-
|
|
149
|
-
|
|
152
|
+
errors.add(this.messages.getMessage('errorProcessingFlexiPage', [file, error]));
|
|
153
|
+
status = 'Failed';
|
|
150
154
|
}
|
|
151
155
|
flexPageAssessmentInfos.push({
|
|
152
156
|
name: file,
|
|
153
157
|
errors: [error instanceof Error ? error.message : JSON.stringify(error)],
|
|
154
158
|
path: filePath,
|
|
155
159
|
diff: '',
|
|
156
|
-
status
|
|
160
|
+
status,
|
|
157
161
|
});
|
|
158
162
|
}
|
|
159
163
|
progressBar.increment();
|
|
160
164
|
}
|
|
161
165
|
progressBar.stop();
|
|
166
|
+
if (errors.size > 0) {
|
|
167
|
+
errors.forEach((error) => logger_1.Logger.error(error));
|
|
168
|
+
}
|
|
162
169
|
logger_1.Logger.logVerbose(this.messages.getMessage('completedProcessingAllFlexiPages', [flexPageAssessmentInfos.length]));
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
return filteredResults;
|
|
170
|
+
logger_1.Logger.log(this.messages.getMessage('flexipagesWithChanges', [flexPageAssessmentInfos.length]));
|
|
171
|
+
return flexPageAssessmentInfos;
|
|
166
172
|
}
|
|
167
173
|
/**
|
|
168
|
-
* Processes a single FlexiPage
|
|
174
|
+
* Processes a single FlexiPage for assessment or migration.
|
|
169
175
|
*
|
|
170
176
|
* This method:
|
|
171
177
|
* - Reads the FlexiPage XML file content
|
|
@@ -175,8 +181,8 @@ class FlexipageMigration extends BaseRealtedObjectMigration_1.BaseRelatedObjectM
|
|
|
175
181
|
* - Writes transformed content back to file in migration mode
|
|
176
182
|
* - Handles errors and provides detailed error information
|
|
177
183
|
*
|
|
178
|
-
* @param fileName - The name of the FlexiPage
|
|
179
|
-
* @param filePath - The full path to the FlexiPage
|
|
184
|
+
* @param fileName - The name of the FlexiPage
|
|
185
|
+
* @param filePath - The full path to the FlexiPage
|
|
180
186
|
* @param mode - The processing mode: 'assess' or 'migrate'
|
|
181
187
|
* @returns FlexiPage assessment information with status and error details
|
|
182
188
|
*/
|
|
@@ -187,27 +193,22 @@ class FlexipageMigration extends BaseRealtedObjectMigration_1.BaseRelatedObjectM
|
|
|
187
193
|
const json = this.xmlUtil.parse(fileContent);
|
|
188
194
|
const transformedFlexiPage = (0, flexiPageTransformer_1.transformFlexipageBundle)(json, this.namespace, mode);
|
|
189
195
|
if (transformedFlexiPage === false) {
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
errors: [],
|
|
193
|
-
path: filePath,
|
|
194
|
-
diff: '',
|
|
195
|
-
status: 'No Changes',
|
|
196
|
-
};
|
|
196
|
+
logger_1.Logger.logVerbose(`No transformation needed on ${fileName}`);
|
|
197
|
+
return null;
|
|
197
198
|
}
|
|
198
199
|
const modifiedContent = this.xmlUtil.build(transformedFlexiPage, 'FlexiPage');
|
|
199
200
|
if (mode === 'migrate') {
|
|
200
201
|
fs.writeFileSync(filePath, modifiedContent);
|
|
201
202
|
logger_1.Logger.logVerbose(this.messages.getMessage('updatedModifiedContent', [filePath]));
|
|
202
203
|
}
|
|
203
|
-
const diff = new FileDiffUtil_1.FileDiffUtil().
|
|
204
|
+
const diff = new FileDiffUtil_1.FileDiffUtil().getXMLDiff(fileContent, modifiedContent);
|
|
204
205
|
logger_1.Logger.logVerbose(this.messages.getMessage('generatedDiffForFile', [fileName]));
|
|
205
206
|
return {
|
|
206
207
|
path: filePath,
|
|
207
208
|
name: fileName,
|
|
208
209
|
diff: JSON.stringify(diff),
|
|
209
210
|
errors: [],
|
|
210
|
-
status: mode === 'assess' ? '
|
|
211
|
+
status: mode === 'assess' ? 'Ready for migration' : 'Successfully migrated',
|
|
211
212
|
};
|
|
212
213
|
}
|
|
213
214
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlexipageMigration.js","sourceRoot":"","sources":["../../../src/migration/related/FlexipageMigration.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AACzB,2CAA6B;
|
|
1
|
+
{"version":3,"file":"FlexipageMigration.js","sourceRoot":"","sources":["../../../src/migration/related/FlexipageMigration.ts"],"names":[],"mappings":"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"}
|