@pdfbutler/migration-cli 0.0.18 → 0.0.20

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.
@@ -1,5 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ /* eslint-disable @typescript-eslint/no-var-requires */
4
+ /* eslint-disable @typescript-eslint/no-unsafe-return */
5
+ /* eslint-disable @typescript-eslint/no-unsafe-assignment */
6
+ /* eslint-disable complexity */
3
7
  /* eslint-disable @typescript-eslint/no-misused-promises */
4
8
  /* eslint-disable @typescript-eslint/no-unsafe-argument */
5
9
  /* eslint-disable @typescript-eslint/restrict-template-expressions */
@@ -15,59 +19,160 @@ const sf_plugins_core_1 = require("@salesforce/sf-plugins-core");
15
19
  const core_1 = require("@salesforce/core");
16
20
  const AdmZip = require("adm-zip");
17
21
  const got_1 = require("got");
22
+ const jsforce = require('jsforce');
23
+ const PATTERN_DOC_CONFIG = /([\w-]{36})/;
24
+ const PATH_EXPORT = '/cadmus_core/DocConfig/Export2/';
25
+ const CUT_AFTER = 150;
26
+ const MSG_SPLITTED_DOC_CONFIGS = 'Number of DocConfig Ids after splitting: [VALUE].';
27
+ const MSG_AUTHORIZATION = 'Authorization with the username: [VALUE].';
28
+ const MSG_EXPORTED_DOC_CONFIGS = 'Number of exported DocConfigs: [VALUE].';
29
+ const MSG_FOLDER_CREATED = 'Folder structure created at: [VALUE].';
30
+ const MSG_DOC_CONFIG_HAS_NO_BACKEND = 'DocConfig with ID - [VALUE], does not have a backend.';
31
+ const MSG_NO_AUTH_PARAMS = 'No authentication parameters provided. Please provide either username or session and instance parameters.';
32
+ const MSG_NO_MATCHING_DOC_CONFIGS = 'No matching Doc Configs ids found.';
33
+ const MSG_CONNECTION_FAILED = 'Connection to Salesforce has been failed.';
34
+ const MSG_EXPORT_FAILED = 'DocConfig export has failed. Check the IDs and try again.';
35
+ const MSG_BACKEND_DATA_ARCHIVED = 'Exported data from backend has been archived.';
36
+ const MSG_BLANK_BACKEND = 'One or more docConfigs have no backend.';
37
+ const MSG_USER_HAS_PERMISSIONS = 'User has read/write permissions.';
38
+ const MSG_USER_HAS_NO_PERMISSIONS = 'User doesn\'t have read/write permissions.';
39
+ const MSG_ARCHIVE_UNZIPPED = 'Archive unzipped and recorded locally.';
40
+ const MSG_ARCHIVE_RECORDED = 'Archive recorded locally.';
41
+ const MSG_CREATION_CONNECTION = 'Creating Connection with the Salesforce org.';
42
+ const MSG_FETCH_DATA = 'Attempting to fetch data from the org.';
43
+ const MSG_UNZIP_FILES = 'Unzipping the files.';
44
+ const MSG_SAVE_AS_ZIP = 'Saving as zip.';
45
+ const MSG_SAVE_BACKEND = 'Saving backend only.';
46
+ const MSG_PARTIAL_EXPORT_ACTIVE = 'The partial export is active. DocConfigs that do not have a backend will not be exported.';
47
+ const MSG_RUN_AUTH_COMMAND = 'Run the command "sf org login web" before authenticating with the target.';
48
+ const MSG_CHECK_SESSION_INSTANCE = 'Check if the session is up to date and if the instance is correct.';
18
49
  core_1.Messages.importMessagesDirectory(__dirname);
19
50
  const messages = core_1.Messages.loadMessages('@pdfbutler/migration-cli', 'butler.pb.export');
20
51
  class ButlerPbExport extends sf_plugins_core_1.SfCommand {
21
52
  static getDocConfigIds(id) {
22
- const docConfigIds = id.split(/([\w-]{36})/).filter((n) => n);
53
+ const docConfigIds = id.split(PATTERN_DOC_CONFIG).filter((n) => n);
23
54
  docConfigIds.map((docId) => {
24
- if (!docId.trim()) {
55
+ if (!docId.trim() || docId.length < 36) {
25
56
  docConfigIds.splice(docConfigIds.indexOf(docId), 1);
26
57
  }
27
58
  });
59
+ if (this.isLogsActive)
60
+ this.log(MSG_SPLITTED_DOC_CONFIGS.replace('[VALUE]', docConfigIds.length.toString()));
28
61
  if (docConfigIds.length < 0) {
29
- throw new Error('No matching Doc Configs ids found');
62
+ throw new Error(MSG_NO_MATCHING_DOC_CONFIGS);
30
63
  }
31
64
  return docConfigIds;
32
65
  }
33
- static async getDocConfigs(docConfigIds, username) {
34
- let docConfigPromises;
66
+ static isBlank(value) {
67
+ return value === ''
68
+ || value === null
69
+ || value === undefined;
70
+ }
71
+ static log(message, type = 'info') {
72
+ const prefix = type === 'info' ? '[INFO]' : '[ERROR]';
73
+ console.log(`${prefix} ${message}`);
74
+ }
75
+ static async authenticateWithTarget(username) {
76
+ try {
77
+ if (this.isLogsActive)
78
+ this.log(MSG_AUTHORIZATION.replace('[VALUE]', username));
79
+ const authInfo = await core_1.AuthInfo.create({ username });
80
+ if (this.isLogsActive)
81
+ this.log(MSG_CREATION_CONNECTION);
82
+ const connection = await core_1.Connection.create({ authInfo });
83
+ this.log(`Connected to ${username} (Org ID: ${authInfo.getFields().orgId})`);
84
+ return connection;
85
+ }
86
+ catch (error) {
87
+ this.log(MSG_RUN_AUTH_COMMAND, 'error');
88
+ throw new Error(MSG_CONNECTION_FAILED);
89
+ }
90
+ }
91
+ static async authenticateWitsSession(session, instance) {
92
+ session = session.trim();
93
+ instance = instance.trim();
94
+ const isInstanceBlank = this.isBlank(instance);
95
+ const isSessionBlank = this.isBlank(session);
96
+ if (!isInstanceBlank && !isSessionBlank) {
97
+ const connection = await new jsforce.Connection({
98
+ instanceUrl: `${instance}`,
99
+ sessionId: `${session}`,
100
+ });
101
+ this.log(`Connected to ${connection.instanceUrl}`);
102
+ return connection;
103
+ }
104
+ else if (!isSessionBlank && isInstanceBlank) {
105
+ this.log('Instance URL (--instance) cannot be empty', 'error');
106
+ }
107
+ else if (isSessionBlank && !isInstanceBlank) {
108
+ this.log('Session Id (--session) cannot be empty', 'error');
109
+ }
110
+ else {
111
+ this.log('Session Id and Instance URL (--session and --instance) cannot be empty', 'error');
112
+ }
113
+ this.log(MSG_CHECK_SESSION_INSTANCE, 'error');
114
+ throw new Error(MSG_CONNECTION_FAILED);
115
+ }
116
+ static async authenticate(username, session, instance) {
35
117
  let connection;
36
- let authInfo;
118
+ if (this.isBlank(username) && (this.isBlank(session) || this.isBlank(instance))) {
119
+ throw new Error(MSG_NO_AUTH_PARAMS);
120
+ }
37
121
  try {
38
- authInfo = await core_1.AuthInfo.create({ username });
39
- connection = await core_1.Connection.create({ authInfo });
122
+ if (this.isBlank(session) || this.isBlank(instance)) {
123
+ connection = await this.authenticateWithTarget(username);
124
+ }
125
+ else {
126
+ connection = await this.authenticateWitsSession(session, instance);
127
+ }
128
+ return connection;
40
129
  }
41
- catch (e) {
42
- throw new Error('Connection to Salesforce has been failed');
130
+ catch (error) {
131
+ throw new Error(MSG_CONNECTION_FAILED);
43
132
  }
44
- console.log(`Connected to ${username} (${authInfo.getFields().orgId}) with API version ${connection.version}`);
133
+ }
134
+ static async getDocConfigs(docConfigIds, connection) {
135
+ let docConfigPromises;
136
+ let responses = [];
45
137
  try {
138
+ if (ButlerPbExport.isLogsActive)
139
+ this.log(MSG_FETCH_DATA);
46
140
  docConfigPromises = docConfigIds.map(async (docConfigId) => {
47
- const promise = await connection.apex.get(`/cadmus_core/DocConfig/Export2/${docConfigId}`);
48
- return promise;
141
+ const endpoint = `${PATH_EXPORT}${docConfigId}`;
142
+ return connection.apex.get(endpoint);
49
143
  });
144
+ responses = await Promise.all(docConfigPromises);
50
145
  }
51
146
  catch (e) {
52
- throw new Error('DocConfig export has been failed');
147
+ throw new Error(MSG_EXPORT_FAILED);
53
148
  }
54
- const responses = await Promise.all(docConfigPromises);
55
149
  return responses;
56
150
  }
151
+ static convertBufferToUtf8(files) {
152
+ files.getEntries().forEach(file => {
153
+ if (file.entryName.endsWith('.json')) {
154
+ file.setData(JSON.stringify(JSON.parse(file.getData().toString('utf8')), null, 2));
155
+ }
156
+ });
157
+ return files;
158
+ }
57
159
  async run() {
58
160
  const { flags } = await this.parse(ButlerPbExport);
161
+ ButlerPbExport.isLogsActive = flags.logs;
59
162
  const outDir = flags.out;
60
163
  let docConfigIds = [];
61
164
  let docConfigResponses = [];
62
- try {
63
- docConfigIds = ButlerPbExport.getDocConfigIds(flags.id);
64
- docConfigResponses = await ButlerPbExport.getDocConfigs(docConfigIds, flags.target);
65
- if (flags.logs)
66
- this.log(`DocConfig exported - ${JSON.stringify(docConfigResponses).length}`);
67
- }
68
- catch (e) {
69
- throw new Error('No matching Doc Configs ids found');
70
- }
165
+ const targetUsername = flags.target;
166
+ const session = flags.session;
167
+ const instance = flags.instance;
168
+ docConfigIds = ButlerPbExport.getDocConfigIds(flags.id);
169
+ ButlerPbExport.log(JSON.stringify(docConfigIds, null, 2));
170
+ const connection = await ButlerPbExport.authenticate(targetUsername, session, instance);
171
+ docConfigResponses = await ButlerPbExport.getDocConfigs(docConfigIds, connection);
172
+ if (ButlerPbExport.isLogsActive)
173
+ ButlerPbExport.log(MSG_EXPORTED_DOC_CONFIGS.replace('[VALUE]', docConfigResponses.length.toString()));
174
+ if (docConfigResponses.length < 1)
175
+ throw new Error(MSG_NO_MATCHING_DOC_CONFIGS);
71
176
  let zipMap = new Map();
72
177
  let result = Buffer.from('');
73
178
  if (!flags.backend) {
@@ -76,6 +181,8 @@ class ButlerPbExport extends sf_plugins_core_1.SfCommand {
76
181
  if (auth?.indexOf(':')) {
77
182
  base64Auth = Buffer.from(auth).toString('base64');
78
183
  }
184
+ if (ButlerPbExport.isLogsActive && flags.partial)
185
+ ButlerPbExport.log(MSG_PARTIAL_EXPORT_ACTIVE);
79
186
  for (const docConfigId of docConfigIds) {
80
187
  const finalUrl = `${flags.endpoint?.toString()}config/export-config/${flags.stage}/${docConfigId}`;
81
188
  try {
@@ -84,15 +191,15 @@ class ButlerPbExport extends sf_plugins_core_1.SfCommand {
84
191
  Authorization: `Basic ${base64Auth}`,
85
192
  },
86
193
  }).buffer();
87
- if (flags.logs)
88
- this.log(`Exported data from backend - ${result.length}`);
89
194
  zipMap.set(docConfigId, new AdmZip(result));
90
- if (flags.logs)
91
- this.log('Exported data from backend has been archived');
195
+ if (ButlerPbExport.isLogsActive)
196
+ ButlerPbExport.log(MSG_BACKEND_DATA_ARCHIVED);
92
197
  }
93
198
  catch (err) {
199
+ if (ButlerPbExport.isLogsActive)
200
+ ButlerPbExport.log(MSG_DOC_CONFIG_HAS_NO_BACKEND.replace('[VALUE]', docConfigId));
94
201
  if (!flags.partial) {
95
- this.error(`${err}. One or more docConfigs have no backend.`);
202
+ throw new Error(MSG_BLANK_BACKEND);
96
203
  }
97
204
  }
98
205
  }
@@ -100,51 +207,59 @@ class ButlerPbExport extends sf_plugins_core_1.SfCommand {
100
207
  else {
101
208
  zipMap = new Map();
102
209
  }
210
+ if (ButlerPbExport.isLogsActive)
211
+ ButlerPbExport.log(MSG_FOLDER_CREATED.replace('[VALUE]', `./${outDir}/sfdc`));
103
212
  await fs_1.promises.mkdir(`./${outDir}/sfdc`, { recursive: true });
104
- if (flags.logs) {
213
+ if (ButlerPbExport.isLogsActive) {
105
214
  try {
106
215
  await fs_1.promises.access(`./${outDir}`, fs_1.promises.constants.R_OK | fs_1.promises.constants.W_OK);
107
- this.log('User has read/write permissions');
216
+ ButlerPbExport.log(MSG_USER_HAS_PERMISSIONS);
108
217
  }
109
218
  catch (err) {
110
- this.log('User doesn\'t have read/write permissions');
219
+ ButlerPbExport.log(MSG_USER_HAS_NO_PERMISSIONS);
111
220
  }
112
221
  }
113
222
  if (zipMap.size > 0) {
114
223
  if (flags.unzip) {
224
+ if (ButlerPbExport.isLogsActive)
225
+ ButlerPbExport.log(MSG_UNZIP_FILES);
115
226
  const extractionAndWritePromises = Array.from(zipMap.entries()).map(async ([key, value]) => {
116
- value.extractAllTo(`./${outDir}/${key}`, false);
227
+ ButlerPbExport.convertBufferToUtf8(value).extractAllTo(`./${outDir}/${key}`, false);
117
228
  const filePath = `./${outDir}/sfdc/${key}.json`;
118
- const data = JSON.stringify(docConfigResponses[docConfigIds.indexOf(key)]);
229
+ const data = JSON.stringify(docConfigResponses[docConfigIds.indexOf(key)], null, 2);
119
230
  await fs_1.promises.writeFile(filePath, data);
120
231
  });
121
232
  await Promise.all(extractionAndWritePromises);
122
- if (flags.logs)
123
- this.log('Archive unzipped and recorded locally');
233
+ if (ButlerPbExport.isLogsActive)
234
+ ButlerPbExport.log(MSG_ARCHIVE_UNZIPPED);
124
235
  }
125
236
  else {
237
+ if (ButlerPbExport.isLogsActive)
238
+ ButlerPbExport.log(MSG_SAVE_AS_ZIP);
126
239
  const zipAndWritePromises = Array.from(zipMap.entries()).map(async ([key, value]) => {
127
240
  const zipToExport = new AdmZip();
128
241
  for (const entry of value.getEntries()) {
129
242
  zipToExport.addFile(entry.entryName, value.readFile(entry));
130
243
  }
131
- zipToExport.addFile('sfdc/docconfig.json', Buffer.from(JSON.stringify(docConfigResponses[docConfigIds.indexOf(key)])));
132
- const zipPromise = fs_1.promises.writeFile(`./${outDir}/${key}.zip`, zipToExport.toBuffer());
133
- const jsonPromise = fs_1.promises.writeFile(`./${outDir}/sfdc/${key}.json`, JSON.stringify(docConfigResponses[docConfigIds.indexOf(key)]));
244
+ zipToExport.addFile('sfdc/docconfig.json', Buffer.from(JSON.stringify(docConfigResponses[docConfigIds.indexOf(key)], null, 2)));
245
+ const zipPromise = fs_1.promises.writeFile(`./${outDir}/${flags.cut ? key.substring(0, CUT_AFTER) : key}.zip`, zipToExport.toBuffer());
246
+ const jsonPromise = fs_1.promises.writeFile(`./${outDir}/sfdc/${key}.json`, JSON.stringify(docConfigResponses[docConfigIds.indexOf(key)], null, 2));
134
247
  await Promise.all([zipPromise, jsonPromise]);
135
248
  });
136
249
  await Promise.all(zipAndWritePromises);
250
+ if (ButlerPbExport.isLogsActive)
251
+ ButlerPbExport.log(MSG_ARCHIVE_RECORDED);
137
252
  }
138
253
  }
139
254
  else {
140
255
  const writePromises = docConfigIds.map(async (docConfigId) => {
141
256
  const filePath = `./${outDir}/sfdc/${docConfigId}.json`;
142
- const data = JSON.stringify(docConfigResponses[docConfigIds.indexOf(docConfigId)]) ?? '';
257
+ const data = JSON.stringify(docConfigResponses[docConfigIds.indexOf(docConfigId)], null, 2);
143
258
  await fs_1.promises.writeFile(filePath, data);
144
259
  });
145
260
  await Promise.all(writePromises);
146
- if (flags.logs)
147
- this.log('Archive recorded locally');
261
+ if (ButlerPbExport.isLogsActive)
262
+ ButlerPbExport.log(MSG_SAVE_BACKEND);
148
263
  }
149
264
  return result;
150
265
  }
@@ -162,7 +277,7 @@ ButlerPbExport.flags = {
162
277
  target: sf_plugins_core_1.Flags.string({
163
278
  summary: messages.getMessage('flags.target.summary'),
164
279
  char: 't',
165
- required: true,
280
+ required: false,
166
281
  }),
167
282
  id: sf_plugins_core_1.Flags.string({
168
283
  summary: messages.getMessage('flags.id.summary'),
@@ -204,6 +319,17 @@ ButlerPbExport.flags = {
204
319
  summary: messages.getMessage('flags.partial.summary'),
205
320
  char: 'p',
206
321
  }),
322
+ session: sf_plugins_core_1.Flags.string({
323
+ summary: messages.getMessage('flags.session.summary'),
324
+ }),
325
+ instance: sf_plugins_core_1.Flags.string({
326
+ summary: messages.getMessage('flags.instance.summary'),
327
+ }),
328
+ cut: sf_plugins_core_1.Flags.boolean({
329
+ summary: messages.getMessage('flags.cut.summary'),
330
+ char: 'c',
331
+ }),
207
332
  };
333
+ ButlerPbExport.isLogsActive = false;
208
334
  exports.default = ButlerPbExport;
209
335
  //# sourceMappingURL=export.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"export.js","sourceRoot":"","sources":["../../../../src/commands/butler/pb/export.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../../../src/commands/butler/pb/export.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { SfCommand } from '@salesforce/sf-plugins-core';
2
+ export type ButlerPbExportpackResult = {
3
+ success: boolean;
4
+ };
5
+ export default class ButlerPbExportpack extends SfCommand<ButlerPbExportpackResult> {
6
+ static readonly summary: string;
7
+ static readonly description: string;
8
+ static readonly examples: string[];
9
+ static readonly flags: {
10
+ name: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
11
+ pack: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
12
+ target: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
13
+ out: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
14
+ logs: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
15
+ session: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
16
+ instance: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
17
+ };
18
+ private static isLogsActive;
19
+ private static log;
20
+ private static isBlank;
21
+ private static authenticateWithTarget;
22
+ private static authenticateWitsSession;
23
+ private static authenticate;
24
+ private static exportPackData;
25
+ private static saveToFile;
26
+ run(): Promise<ButlerPbExportpackResult>;
27
+ }
@@ -0,0 +1,213 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /* eslint-disable @typescript-eslint/no-var-requires */
4
+ /* eslint-disable @typescript-eslint/no-unsafe-return */
5
+ /* eslint-disable @typescript-eslint/no-unsafe-assignment */
6
+ /* eslint-disable complexity */
7
+ /* eslint-disable @typescript-eslint/no-misused-promises */
8
+ /* eslint-disable @typescript-eslint/no-unsafe-argument */
9
+ /* eslint-disable @typescript-eslint/restrict-template-expressions */
10
+ /* eslint-disable @typescript-eslint/no-unsafe-call */
11
+ /* eslint-disable @typescript-eslint/no-unsafe-member-access */
12
+ /* eslint-disable sf-plugin/no-missing-messages */
13
+ /* eslint-disable @typescript-eslint/prefer-for-of */
14
+ /* eslint-disable no-await-in-loop */
15
+ /* eslint-disable @typescript-eslint/no-explicit-any */
16
+ /* eslint-disable no-console */
17
+ const fs_1 = require("fs");
18
+ const sf_plugins_core_1 = require("@salesforce/sf-plugins-core");
19
+ const core_1 = require("@salesforce/core");
20
+ const jsforce = require('jsforce');
21
+ const PATH_EXPORT = '/services/apexrest/cadmus_core/Pack/Export/';
22
+ const ERROR_URL = 'Could not find a match for URL';
23
+ const ERROR_VERSION = 'Verify that you have PDFButler version greater than v1.440.';
24
+ const ERROR_ID_NOT_EXIST = 'List has no rows for assignment to SObject';
25
+ const ERROR_PACK_NOT_EXIST = "Can't find the Pack by the Customer Pack Id: [PACK_ID].";
26
+ const MSG_CONNECTION_FAILED = 'Connection to Salesforce has been failed.';
27
+ const MSG_CREATION_CONNECTION = 'Creating Connection with the Salesforce org.';
28
+ const MSG_AUTHORIZATION = 'Authorization with the username: [VALUE].';
29
+ const MSG_NO_AUTH_PARAMS = 'No authentication parameters provided. Please provide either username or session and instance parameters.';
30
+ const MSG_RUN_AUTH_COMMAND = 'Run the command "sf org login web" before authenticating with the target.';
31
+ const MSG_CHECK_SESSION_INSTANCE = 'Check if the session is up to date and if the instance is correct.';
32
+ core_1.Messages.importMessagesDirectory(__dirname);
33
+ const messages = core_1.Messages.loadMessages('@pdfbutler/migration-cli', 'butler.pb.exportpack');
34
+ class ButlerPbExportpack extends sf_plugins_core_1.SfCommand {
35
+ static log(message, type = 'info') {
36
+ const prefix = type === 'info' ? '[INFO]' : '[ERROR]';
37
+ console.log(`${prefix} ${message}`);
38
+ }
39
+ static isBlank(value) {
40
+ return value?.trim() === ''
41
+ || value === null
42
+ || value === undefined;
43
+ }
44
+ static async authenticateWithTarget(username) {
45
+ try {
46
+ if (this.isLogsActive)
47
+ this.log(MSG_AUTHORIZATION.replace('[VALUE]', username));
48
+ const authInfo = await core_1.AuthInfo.create({ username });
49
+ if (this.isLogsActive)
50
+ this.log(MSG_CREATION_CONNECTION);
51
+ const connection = await core_1.Connection.create({ authInfo });
52
+ this.log(`Connected to ${username} (Org ID: ${authInfo.getFields().orgId})`);
53
+ return connection;
54
+ }
55
+ catch (error) {
56
+ this.log(MSG_RUN_AUTH_COMMAND, 'error');
57
+ throw new Error(MSG_CONNECTION_FAILED);
58
+ }
59
+ }
60
+ static async authenticateWitsSession(session, instance) {
61
+ if (!this.isBlank(instance) && !this.isBlank(session)) {
62
+ const connection = await new jsforce.Connection({
63
+ instanceUrl: `${instance}`,
64
+ sessionId: `${session}`,
65
+ });
66
+ this.log(`Connected to ${connection.instanceUrl}`);
67
+ return connection;
68
+ }
69
+ else if (!this.isBlank(session) && this.isBlank(instance)) {
70
+ this.log('Instance URL (--instance) cannot be empty', 'error');
71
+ }
72
+ else if (this.isBlank(session) && !this.isBlank(instance)) {
73
+ this.log('Session Id (--session) cannot be empty', 'error');
74
+ }
75
+ else {
76
+ this.log('Session Id and Instance URL (--session and --instance) cannot be empty', 'error');
77
+ }
78
+ this.log(MSG_CHECK_SESSION_INSTANCE, 'error');
79
+ throw new Error(MSG_CONNECTION_FAILED);
80
+ }
81
+ static async authenticate(username, session, instance) {
82
+ let connection;
83
+ if (this.isBlank(username) && (this.isBlank(session) || this.isBlank(instance))) {
84
+ throw new Error(MSG_NO_AUTH_PARAMS);
85
+ }
86
+ try {
87
+ if (this.isBlank(session) || this.isBlank(instance)) {
88
+ connection = await this.authenticateWithTarget(username);
89
+ }
90
+ else {
91
+ connection = await this.authenticateWitsSession(session, instance);
92
+ }
93
+ return connection;
94
+ }
95
+ catch (error) {
96
+ throw new Error(MSG_CONNECTION_FAILED);
97
+ }
98
+ }
99
+ static async exportPackData(connection, packId) {
100
+ const exportUrl = `${PATH_EXPORT}${packId}`;
101
+ try {
102
+ this.log('Calling the service.');
103
+ const response = await connection.apex.get(exportUrl);
104
+ return response;
105
+ }
106
+ catch (error) {
107
+ if (this.isLogsActive) {
108
+ const message = error.message || error;
109
+ if (message.includes(ERROR_URL)) {
110
+ this.log(`${ERROR_URL}. ${ERROR_VERSION}`, 'error');
111
+ }
112
+ if (message.includes(ERROR_ID_NOT_EXIST)) {
113
+ this.log(ERROR_PACK_NOT_EXIST.replace('[PACK_ID]', packId), 'error');
114
+ }
115
+ }
116
+ return [];
117
+ }
118
+ }
119
+ static async saveToFile(directory, filename, data) {
120
+ try {
121
+ if (this.isLogsActive) {
122
+ this.log('Saving to the directory');
123
+ }
124
+ const dirName = `./${directory}/sfdc`;
125
+ if (this.isLogsActive) {
126
+ this.log(`Directory hierarchy: ${dirName}`);
127
+ }
128
+ const filePath = `${dirName}/${filename}`;
129
+ if (this.isLogsActive) {
130
+ this.log(`File path: ${filePath}`);
131
+ }
132
+ await fs_1.promises.mkdir(dirName, { recursive: true });
133
+ await fs_1.promises.writeFile(filePath, JSON.stringify(data, null, 2));
134
+ this.log(`Data successfully written to ${filePath}`);
135
+ return filePath;
136
+ }
137
+ catch (error) {
138
+ this.log(`Error during file save: ${error.message || error}`, 'error');
139
+ throw new Error('Failed to save the file');
140
+ }
141
+ }
142
+ async run() {
143
+ const { flags } = await this.parse(ButlerPbExportpack);
144
+ const username = flags.target;
145
+ const session = flags.session;
146
+ const instance = flags.instance;
147
+ const packsIds = flags.pack;
148
+ const outputDir = flags.out;
149
+ ButlerPbExportpack.isLogsActive = flags.logs;
150
+ if (outputDir.trim().length === 0) {
151
+ ButlerPbExportpack.log('The flag "out" cannot be empty', 'error');
152
+ return { success: false };
153
+ }
154
+ if (ButlerPbExportpack.isLogsActive) {
155
+ ButlerPbExportpack.log(`Username: "${username}"`);
156
+ ButlerPbExportpack.log(`Packs to retrieve: "${packsIds}"`);
157
+ ButlerPbExportpack.log(`Directory to output: "${outputDir}"`);
158
+ }
159
+ const connection = await ButlerPbExportpack.authenticate(username, session, instance);
160
+ for (const packId of packsIds.split(',')) {
161
+ ButlerPbExportpack.log(`Try to export pack by Id: ${packId.trim()}`);
162
+ const trimmedPackId = packId.trim();
163
+ const outputFilename = `${trimmedPackId}.json`;
164
+ const packData = await ButlerPbExportpack.exportPackData(connection, trimmedPackId);
165
+ if (packData == null || packData.length < 1) {
166
+ ButlerPbExportpack.log(`Exported pack data for pack ID ${trimmedPackId} is empty`, 'error');
167
+ continue;
168
+ }
169
+ await ButlerPbExportpack.saveToFile(outputDir, outputFilename, packData);
170
+ }
171
+ return { success: true };
172
+ }
173
+ }
174
+ ButlerPbExportpack.summary = messages.getMessage('summary');
175
+ ButlerPbExportpack.description = messages.getMessage('description');
176
+ ButlerPbExportpack.examples = messages.getMessages('examples');
177
+ ButlerPbExportpack.flags = {
178
+ name: sf_plugins_core_1.Flags.string({
179
+ summary: messages.getMessage('flags.name.summary'),
180
+ description: messages.getMessage('flags.name.description'),
181
+ char: 'n',
182
+ required: false,
183
+ }),
184
+ pack: sf_plugins_core_1.Flags.string({
185
+ summary: messages.getMessage('flags.pack.summary'),
186
+ char: 'p',
187
+ required: true,
188
+ }),
189
+ target: sf_plugins_core_1.Flags.string({
190
+ summary: messages.getMessage('flags.target.summary'),
191
+ char: 't',
192
+ required: false,
193
+ }),
194
+ out: sf_plugins_core_1.Flags.string({
195
+ summary: messages.getMessage('flags.out.summary'),
196
+ // eslint-disable-next-line sf-plugin/dash-o
197
+ char: 'o',
198
+ required: true,
199
+ }),
200
+ logs: sf_plugins_core_1.Flags.boolean({
201
+ summary: messages.getMessage('flags.logs.summary'),
202
+ char: 'l',
203
+ }),
204
+ session: sf_plugins_core_1.Flags.string({
205
+ summary: messages.getMessage('flags.session.summary'),
206
+ }),
207
+ instance: sf_plugins_core_1.Flags.string({
208
+ summary: messages.getMessage('flags.instance.summary'),
209
+ }),
210
+ };
211
+ ButlerPbExportpack.isLogsActive = false;
212
+ exports.default = ButlerPbExportpack;
213
+ //# sourceMappingURL=exportpack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exportpack.js","sourceRoot":"","sources":["../../../../src/commands/butler/pb/exportpack.ts"],"names":[],"mappings":"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"}