@jayree/sfdx-plugin-manifest 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,245 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /*
4
+ * Copyright (c) 2021, jayree
5
+ * All rights reserved.
6
+ * Licensed under the BSD 3-Clause license.
7
+ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
8
+ */
9
+ const path_1 = require("path");
10
+ const util = require("util");
11
+ const command_1 = require("@salesforce/command");
12
+ const core_1 = require("@salesforce/core");
13
+ const fs = require("fs-extra");
14
+ const listr2_1 = require("listr2");
15
+ const kit = require("@salesforce/kit");
16
+ const source_deploy_retrieve_1 = require("@salesforce/source-deploy-retrieve");
17
+ const gitdiff_1 = require("../../../../utils/gitdiff");
18
+ core_1.Messages.importMessagesDirectory(__dirname);
19
+ const messages = core_1.Messages.loadMessages('@jayree/sfdx-plugin-manifest', 'gitdiff');
20
+ const logger = new listr2_1.Logger({ useIcons: false });
21
+ // workaround until listr2 can catch emitWarnings with v4.0
22
+ // eslint-disable-next-line @typescript-eslint/unbound-method
23
+ const original = process.emitWarning;
24
+ process.emitWarning = (warning) => {
25
+ process.once('beforeExit', () => {
26
+ return original(warning);
27
+ });
28
+ };
29
+ const unexpectedArgument = (input) => {
30
+ if (input.includes('-')) {
31
+ throw new Error(`Unexpected argument: ${input}
32
+ See more help with --help`);
33
+ }
34
+ return input;
35
+ };
36
+ class GitDiff extends command_1.SfdxCommand {
37
+ async run() {
38
+ var _a, _b;
39
+ const isContentTypeJSON = kit.env.getString('SFDX_CONTENT_TYPE', '').toUpperCase() === 'JSON';
40
+ this.isOutputEnabled = !(process.argv.find((arg) => arg === '--json') || isContentTypeJSON);
41
+ const gitArgs = this.getGitArgsFromArgv();
42
+ const tasks = new listr2_1.Listr([
43
+ {
44
+ title: 'Analyze sfdx-project',
45
+ task: async (ctx, task) => {
46
+ ctx.projectRoot = this.project.getPath();
47
+ ctx.sfdxProjectFolders = this.project.getPackageDirectories().map((p) => (0, gitdiff_1.ensureOSPath)(p.path));
48
+ ctx.sourceApiVersion = (await this.project.retrieveSfdxProjectJson()).getContents().sourceApiVersion;
49
+ task.output = `packageDirectories: ${ctx.sfdxProjectFolders.length} sourceApiVersion: ${ctx.sourceApiVersion}`;
50
+ },
51
+ options: { persistentOutput: true },
52
+ },
53
+ {
54
+ title: "Execute 'git --no-pager diff --name-status --no-renames <pending>'",
55
+ task: async (ctx, task) => {
56
+ ctx.git = gitArgs;
57
+ task.title = `Execute 'git --no-pager diff --name-status --no-renames ${ctx.git.ref1ref2}'`;
58
+ ctx.gitLines = await (0, gitdiff_1.getGitDiff)(ctx.sfdxProjectFolders, ctx.git.ref1, ctx.git.ref2, ctx.projectRoot);
59
+ task.output = `Changed files: ${ctx.gitLines.length}`;
60
+ },
61
+ options: { persistentOutput: true },
62
+ },
63
+ {
64
+ title: 'Create virtual tree container',
65
+ skip: (ctx) => ctx.gitLines.length === 0,
66
+ task: (ctx, task) => task.newListr([
67
+ {
68
+ title: `ref1: ${ctx.git.ref1}`,
69
+ // eslint-disable-next-line @typescript-eslint/no-shadow
70
+ task: async (ctx) => {
71
+ ctx.ref1VirtualTreeContainer = await (0, gitdiff_1.createVirtualTreeContainer)(ctx.git.ref1, ctx.projectRoot, ctx.gitLines.filter((l) => l.status === 'M').map((l) => l.path));
72
+ },
73
+ },
74
+ {
75
+ title: ctx.git.ref2 !== '' ? `ref2: ${ctx.git.ref2}` : undefined,
76
+ // eslint-disable-next-line @typescript-eslint/no-shadow
77
+ task: async (ctx) => {
78
+ ctx.ref2VirtualTreeContainer =
79
+ ctx.git.ref2 !== ''
80
+ ? await (0, gitdiff_1.createVirtualTreeContainer)(ctx.git.ref2, ctx.projectRoot, ctx.gitLines.filter((l) => l.status === 'M').map((l) => l.path))
81
+ : new gitdiff_1.NodeFSTreeContainer();
82
+ },
83
+ },
84
+ ], { concurrent: true }),
85
+ },
86
+ {
87
+ title: 'Analyze git diff results',
88
+ skip: (ctx) => ctx.gitLines.length === 0,
89
+ task: async (ctx, task) => {
90
+ ctx.gitResults = await (0, gitdiff_1.getGitResults)(ctx.gitLines, ctx.ref1VirtualTreeContainer, ctx.ref2VirtualTreeContainer);
91
+ task.output = `Added: ${ctx.gitResults.counts.added}, Deleted: ${ctx.gitResults.counts.deleted}, Modified: ${ctx.gitResults.counts.modified}, Unchanged: ${ctx.gitResults.counts.unchanged}, Ignored: ${ctx.gitResults.counts.ignored}${ctx.gitResults.counts.error ? `, Errors: ${ctx.gitResults.counts.error}` : ''}`;
92
+ },
93
+ options: { persistentOutput: true },
94
+ },
95
+ {
96
+ // title: 'Error output',
97
+ skip: (ctx) => !ctx.gitResults.errors.length,
98
+ task: (ctx, task) => {
99
+ const errors = [...ctx.gitResults.errors];
100
+ const moreErrors = errors.splice(5);
101
+ for (const message of errors) {
102
+ task.output = `Error: ${message}`;
103
+ }
104
+ task.output = moreErrors.length ? `... ${moreErrors.length} more errors` : '';
105
+ },
106
+ options: { persistentOutput: true, bottomBar: 6 },
107
+ },
108
+ {
109
+ title: 'Generate manifests',
110
+ skip: (ctx) => !ctx.gitResults || (!ctx.gitResults.manifest.size && !ctx.gitResults.destructiveChanges.size),
111
+ task: (ctx, task) => task.newListr([
112
+ {
113
+ title: (0, path_1.join)('destructiveChanges', 'destructiveChanges.xml'),
114
+ // eslint-disable-next-line @typescript-eslint/no-shadow
115
+ skip: (ctx) => !ctx.gitResults.destructiveChanges.size,
116
+ // eslint-disable-next-line @typescript-eslint/no-shadow
117
+ task: async (ctx, task) => {
118
+ ctx.destructiveChangesComponentSet = (0, gitdiff_1.buildManifestComponentSet)(ctx.gitResults.destructiveChanges, true);
119
+ if (!ctx.destructiveChangesComponentSet.getObject(true).Package.types.length) {
120
+ task.skip();
121
+ return;
122
+ }
123
+ ctx.destructiveChanges = {
124
+ files: [
125
+ (0, path_1.join)(ctx.projectRoot, 'destructiveChanges', 'destructiveChanges.xml'),
126
+ (0, path_1.join)(ctx.projectRoot, 'destructiveChanges', 'package.xml'),
127
+ ],
128
+ };
129
+ await fs.ensureDir((0, path_1.dirname)(ctx.destructiveChanges.files[0]));
130
+ await fs.writeFile(ctx.destructiveChanges.files[0], ctx.destructiveChangesComponentSet.getPackageXml(undefined, true));
131
+ await fs.writeFile(ctx.destructiveChanges.files[1], ctx.destructiveChangesComponentSet.getPackageXml());
132
+ },
133
+ options: { persistentOutput: true },
134
+ },
135
+ {
136
+ title: (0, path_1.join)('package', 'package.xml'),
137
+ // eslint-disable-next-line @typescript-eslint/no-shadow
138
+ skip: (ctx) => !ctx.gitResults.manifest.size,
139
+ // eslint-disable-next-line @typescript-eslint/no-shadow
140
+ task: async (ctx, task) => {
141
+ ctx.manifestComponentSet = (0, gitdiff_1.buildManifestComponentSet)(ctx.gitResults.manifest);
142
+ if (!ctx.manifestComponentSet.getObject().Package.types.length) {
143
+ task.skip();
144
+ return;
145
+ }
146
+ ctx.manifest = { file: (0, path_1.join)(ctx.projectRoot, 'package', 'package.xml') };
147
+ await fs.ensureDir((0, path_1.dirname)(ctx.manifest.file));
148
+ await fs.writeFile(ctx.manifest.file, ctx.manifestComponentSet.getPackageXml());
149
+ },
150
+ options: { persistentOutput: true },
151
+ },
152
+ ], { concurrent: true, exitOnError: false }),
153
+ },
154
+ ], {
155
+ rendererOptions: { showTimer: true, collapse: false, lazy: true, collapseErrors: false },
156
+ rendererSilent: !this.isOutputEnabled,
157
+ rendererFallback: gitdiff_1.debug.enabled,
158
+ });
159
+ try {
160
+ const context = await tasks.run();
161
+ if (gitdiff_1.debug.enabled && this.isOutputEnabled) {
162
+ logger.success(`Context: ${JSON.stringify(context, (key, value) => {
163
+ if (value instanceof source_deploy_retrieve_1.ComponentSet && value !== null) {
164
+ let types = value.getObject().Package.types;
165
+ if (types.length === 0) {
166
+ types = value.getObject(true).Package.types;
167
+ }
168
+ return types;
169
+ }
170
+ if (value instanceof source_deploy_retrieve_1.VirtualTreeContainer) {
171
+ return typeof value;
172
+ }
173
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-return
174
+ return value;
175
+ }, 2)}`);
176
+ }
177
+ return {
178
+ destructiveChanges: (_a = context.destructiveChangesComponentSet) === null || _a === void 0 ? void 0 : _a.getObject(true),
179
+ manifest: (_b = context.manifestComponentSet) === null || _b === void 0 ? void 0 : _b.getObject(),
180
+ };
181
+ }
182
+ catch (e) {
183
+ if (gitdiff_1.debug.enabled && this.isOutputEnabled) {
184
+ logger.fail(e.message);
185
+ }
186
+ throw e;
187
+ }
188
+ }
189
+ getGitArgsFromArgv() {
190
+ const argv = this.argv.filter((v) => !v.includes('-'));
191
+ let ref1ref2 = this.args.ref1;
192
+ const a = argv.join('.').split('.');
193
+ if ((a.length === 3 || a.length === 4) && typeof this.args.ref2 === 'undefined') {
194
+ this.args.ref1 = a[0];
195
+ this.args.ref2 = a[a.length - 1];
196
+ }
197
+ else if (a.length === 2 && typeof this.args.ref2 !== 'undefined') {
198
+ ref1ref2 = `${this.args.ref1}..${this.args.ref2}`;
199
+ }
200
+ else if (a.length === 1) {
201
+ this.args.ref2 = '';
202
+ }
203
+ else {
204
+ throw new Error(`Ambiguous ${util.format('argument%s', argv.length === 1 ? '' : 's')}: ${argv.join(', ')}
205
+ See more help with --help`);
206
+ }
207
+ return { ref1: this.args.ref1, ref2: this.args.ref2, ref1ref2 };
208
+ }
209
+ }
210
+ exports.default = GitDiff;
211
+ GitDiff.description = messages.getMessage('commandDescription');
212
+ GitDiff.examples = [
213
+ `$ sfdx jayree:manifest:git:diff <commit> <commit>
214
+ $ sfdx jayree:manifest:git:diff <commit>..<commit>
215
+ uses the changes between two arbitrary <commit>
216
+ `,
217
+ `$ sfdx jayree:manifest:git:diff <commit>...<commit>
218
+ uses the changes on the branch containing and up to the second <commit>, starting at a common ancestor of both <commit>.
219
+ `,
220
+ `$ sfdx jayree:manifest:git:diff branchA..branchB
221
+ uses the diff of what is unique in branchB (REF2) and unique in branchA (REF1)
222
+ `,
223
+ `$ sfdx jayree:manifest:git:diff branchA...branchB
224
+ uses the diff of what is unique in branchB (REF2)`,
225
+ ];
226
+ GitDiff.args = [
227
+ {
228
+ name: 'ref1',
229
+ required: true,
230
+ description: 'base commit or branch',
231
+ parse: unexpectedArgument,
232
+ hidden: false,
233
+ },
234
+ {
235
+ name: 'ref2',
236
+ required: false,
237
+ description: 'commit or branch to compare to the base commit',
238
+ parse: unexpectedArgument,
239
+ hidden: false,
240
+ },
241
+ ];
242
+ GitDiff.requiresUsername = false;
243
+ GitDiff.supportsDevhubUsername = false;
244
+ GitDiff.requiresProject = true;
245
+ //# sourceMappingURL=diff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../../../../src/commands/jayree/manifest/git/diff.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Hook } from '@oclif/config';
2
+ export declare const changelog: Hook<'changelog'>;
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.changelog = void 0;
4
+ /*
5
+ * Copyright (c) 2021, jayree
6
+ * All rights reserved.
7
+ * Licensed under the BSD 3-Clause license.
8
+ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
9
+ */
10
+ /* istanbul ignore file */
11
+ const path_1 = require("path");
12
+ const fs = require("fs-extra");
13
+ const debug_1 = require("debug");
14
+ const terminalRenderer = require("marked-terminal");
15
+ const marked = require("marked");
16
+ const debug = (0, debug_1.debug)('jayree:hooks');
17
+ const changelog = function () {
18
+ process.once('exit', () => {
19
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-call
20
+ marked.setOptions({ renderer: new terminalRenderer() });
21
+ try {
22
+ const moduleRootPath = (0, path_1.join)(__dirname, '..', '..');
23
+ const changelogFile = fs.readFileSync((0, path_1.join)(moduleRootPath, 'CHANGELOG.md'), 'utf8');
24
+ const packageJson = fs.readJSONSync((0, path_1.join)(moduleRootPath, 'package.json'));
25
+ const cacheDir = (0, path_1.join)(this.config.cacheDir, packageJson.name);
26
+ fs.ensureDirSync(cacheDir);
27
+ const versionFile = (0, path_1.join)(cacheDir, 'version');
28
+ let changelogText;
29
+ try {
30
+ const latestVersion = fs.readJSONSync(versionFile);
31
+ changelogText = changelogFile.substring(0, changelogFile.indexOf(`[${latestVersion.version}]`));
32
+ if (changelogText.length === 0) {
33
+ throw new Error('version not found');
34
+ }
35
+ }
36
+ catch (err) {
37
+ changelogText = changelogFile.substring(0, changelogFile.indexOf('# [', 2));
38
+ }
39
+ finally {
40
+ changelogText = changelogText.substring(0, changelogText.lastIndexOf('\n'));
41
+ if (changelogText.length > 0) {
42
+ // eslint-disable-next-line no-console
43
+ console.log(marked(`# CHANGELOG (${packageJson.name})`));
44
+ // eslint-disable-next-line no-console
45
+ console.log(marked(changelogText));
46
+ }
47
+ else {
48
+ debug(`${packageJson.name} - no update`);
49
+ }
50
+ fs.writeJsonSync(versionFile, { version: packageJson.version });
51
+ }
52
+ }
53
+ catch (error) {
54
+ debug(error);
55
+ }
56
+ });
57
+ };
58
+ exports.changelog = changelog;
59
+ //# sourceMappingURL=changelog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"changelog.js","sourceRoot":"","sources":["../../src/hooks/changelog.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,0BAA0B;AAC1B,+BAA4B;AAC5B,+BAA+B;AAE/B,iCAAuC;AACvC,oDAAqD;AACrD,iCAAkC;AAElC,MAAM,KAAK,GAAG,IAAA,aAAK,EAAC,cAAc,CAAC,CAAC;AAE7B,MAAM,SAAS,GAAsB;IAC1C,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;QACxB,sGAAsG;QACtG,MAAM,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,IAAI,gBAAgB,EAAE,EAAE,CAAC,CAAC;QACxD,IAAI;YACF,MAAM,cAAc,GAAG,IAAA,WAAI,EAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACnD,MAAM,aAAa,GAAG,EAAE,CAAC,YAAY,CAAC,IAAA,WAAI,EAAC,cAAc,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC;YACpF,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,IAAA,WAAI,EAAC,cAAc,EAAE,cAAc,CAAC,CAAsC,CAAC;YAC/G,MAAM,QAAQ,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;YAC9D,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC3B,MAAM,WAAW,GAAG,IAAA,WAAI,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YAC9C,IAAI,aAAqB,CAAC;YAC1B,IAAI;gBACF,MAAM,aAAa,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,CAAwB,CAAC;gBAC1E,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;gBAChG,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC9B,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;iBACtC;aACF;YAAC,OAAO,GAAG,EAAE;gBACZ,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;aAC7E;oBAAS;gBACR,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC5E,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC5B,sCAAsC;oBACtC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,WAAW,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;oBACzD,sCAAsC;oBACtC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;iBACpC;qBAAM;oBACL,KAAK,CAAC,GAAG,WAAW,CAAC,IAAI,cAAc,CAAC,CAAC;iBAC1C;gBACD,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;aACjE;SACF;QAAC,OAAO,KAAK,EAAE;YACd,KAAK,CAAC,KAAK,CAAC,CAAC;SACd;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AApCW,QAAA,SAAS,aAoCpB"}
package/lib/index.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ declare const _default: {};
2
+ export default _default;
package/lib/index.js ADDED
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /*
4
+ * Copyright (c) 2021, jayree
5
+ * All rights reserved.
6
+ * Licensed under the BSD 3-Clause license.
7
+ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
8
+ */
9
+ exports.default = {};
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAAA;;;;;GAKG;AACH,kBAAe,EAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { SfdxCommand } from '@salesforce/command';
2
+ export declare abstract class JayreeSfdxCommand extends SfdxCommand {
3
+ protected warnIfRunByAlias(aliases: string[], id: string): void;
4
+ protected getFlag<T>(flagName: string, defaultVal?: unknown): T;
5
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JayreeSfdxCommand = void 0;
4
+ /*
5
+ * Copyright (c) 2021, jayree
6
+ * All rights reserved.
7
+ * Licensed under the BSD 3-Clause license.
8
+ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
9
+ */
10
+ const command_1 = require("@salesforce/command");
11
+ const ts_types_1 = require("@salesforce/ts-types");
12
+ class JayreeSfdxCommand extends command_1.SfdxCommand {
13
+ warnIfRunByAlias(aliases, id) {
14
+ if (aliases.some((r) => process.argv.includes(r))) {
15
+ this.ux.warn(`You are using a deprecated alias of the command: ${id}`);
16
+ }
17
+ }
18
+ getFlag(flagName, defaultVal) {
19
+ return (0, ts_types_1.get)(this.flags, flagName, defaultVal);
20
+ }
21
+ }
22
+ exports.JayreeSfdxCommand = JayreeSfdxCommand;
23
+ //# sourceMappingURL=jayreeSfdxCommand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jayreeSfdxCommand.js","sourceRoot":"","sources":["../src/jayreeSfdxCommand.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,iDAAkD;AAClD,mDAA2C;AAE3C,MAAsB,iBAAkB,SAAQ,qBAAW;IAC/C,gBAAgB,CAAC,OAAiB,EAAE,EAAU;QACtD,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;YACjD,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,oDAAoD,EAAE,EAAE,CAAC,CAAC;SACxE;IACH,CAAC;IAES,OAAO,CAAI,QAAgB,EAAE,UAAoB;QACzD,OAAO,IAAA,cAAG,EAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAM,CAAC;IACpD,CAAC;CACF;AAVD,8CAUC"}
@@ -0,0 +1,84 @@
1
+ {
2
+ "fullNames": [
3
+ "AccountContactMultiRoles",
4
+ "AccountContactRole",
5
+ "AccountOwnership",
6
+ "AccountRating",
7
+ "AccountType",
8
+ "AssetStatus",
9
+ "CampaignMemberStatus",
10
+ "CampaignStatus",
11
+ "CampaignType",
12
+ "CareItemStatus",
13
+ "CaseContactRole",
14
+ "CaseOrigin",
15
+ "CasePriority",
16
+ "CaseReason",
17
+ "CaseStatus",
18
+ "CaseType",
19
+ "ContactRole",
20
+ "ContractContactRole",
21
+ "ContractStatus",
22
+ "EntitlementType",
23
+ "EventSubject",
24
+ "EventType",
25
+ "FiscalYearPeriodName",
26
+ "FiscalYearPeriodPrefix",
27
+ "FiscalYearQuarterName",
28
+ "FiscalYearQuarterPrefix",
29
+ "FulfillmentStatus",
30
+ "FulfillmentType",
31
+ "IdeaCategory",
32
+ "IdeaMultiCategory",
33
+ "IdeaStatus",
34
+ "IdeaThemeStatus",
35
+ "Industry",
36
+ "LeadSource",
37
+ "LeadStatus",
38
+ "OpportunityCompetitor",
39
+ "OpportunityStage",
40
+ "OpportunityType",
41
+ "OrderItemSummaryChgRsn",
42
+ "OrderStatus",
43
+ "OrderSummaryRoutingSchdRsn",
44
+ "OrderSummaryStatus",
45
+ "OrderType",
46
+ "PartnerRole",
47
+ "Product2Family",
48
+ "QuantityUnitOfMeasure",
49
+ "ProcessExceptionCategory",
50
+ "ProcessExceptionPriority",
51
+ "ProcessExceptionSeverity",
52
+ "ProcessExceptionStatus",
53
+ "QuestionOrigin",
54
+ "QuickTextCategory",
55
+ "QuickTextChannel",
56
+ "QuoteStatus",
57
+ "RoleInTerritory2",
58
+ "ResourceAbsenceType",
59
+ "ReturnOrderLineItemProcessPlan",
60
+ "ReturnOrderLineItemReasonForRejection",
61
+ "ReturnOrderLineItemReasonForReturn",
62
+ "ReturnOrderLineItemRepaymentMethod",
63
+ "ReturnOrderShipmentType",
64
+ "ReturnOrderStatus",
65
+ "SalesTeamRole",
66
+ "Salutation",
67
+ "ServiceAppointmentStatus",
68
+ "ServiceContractApprovalStatus",
69
+ "ServTerrMemRoleType",
70
+ "SocialPostClassification",
71
+ "SocialPostEngagementLevel",
72
+ "SocialPostReviewedStatus",
73
+ "SolutionStatus",
74
+ "TaskPriority",
75
+ "TaskStatus",
76
+ "TaskSubject",
77
+ "TaskType",
78
+ "WorkOrderLineItemStatus",
79
+ "WorkOrderPriority",
80
+ "WorkOrderStatus",
81
+ "WorkTypeDefApptType",
82
+ "WorkTypeGroupAddInfo"
83
+ ]
84
+ }
@@ -0,0 +1,57 @@
1
+ /// <reference types="debug" />
2
+ import { ComponentSet, VirtualTreeContainer, SourceComponent, NodeFSTreeContainer as FSTreeContainer } from '@salesforce/source-deploy-retrieve';
3
+ export declare const NodeFSTreeContainer: typeof FSTreeContainer;
4
+ export declare const debug: import("debug").Debugger;
5
+ export interface Ctx {
6
+ projectRoot: string;
7
+ sfdxProjectFolders: string[];
8
+ sourceApiVersion: string;
9
+ gitLines: Array<{
10
+ path: string;
11
+ status: string;
12
+ }>;
13
+ gitResults: {
14
+ manifest: ComponentSet;
15
+ destructiveChanges: ComponentSet;
16
+ unchanged: string[];
17
+ ignored: {
18
+ ref1: string[];
19
+ ref2: string[];
20
+ };
21
+ counts: {
22
+ added: number;
23
+ deleted: number;
24
+ modified: number;
25
+ unchanged: number;
26
+ ignored: number;
27
+ error: number;
28
+ };
29
+ errors: string[];
30
+ };
31
+ ref1VirtualTreeContainer: VirtualTreeContainer;
32
+ ref2VirtualTreeContainer: VirtualTreeContainer | FSTreeContainer;
33
+ destructiveChangesComponentSet: ComponentSet;
34
+ manifestComponentSet: ComponentSet;
35
+ git: {
36
+ ref1: string;
37
+ ref2: string;
38
+ ref1ref2: string;
39
+ };
40
+ destructiveChanges: {
41
+ files: string[];
42
+ };
43
+ manifest: {
44
+ file: string;
45
+ };
46
+ }
47
+ export declare function ensureOSPath(path: string): string;
48
+ export declare function ensureGitPath(path: string): string;
49
+ export declare function createVirtualTreeContainer(ref: string, dir: string, modifiedFiles: string[]): Promise<VirtualTreeContainer>;
50
+ export declare function analyzeFile(path: string, ref1VirtualTreeContainer: VirtualTreeContainer, ref2VirtualTreeContainer: VirtualTreeContainer | FSTreeContainer): Promise<{
51
+ status: number;
52
+ toManifest?: SourceComponent[];
53
+ toDestructiveChanges?: SourceComponent[];
54
+ }>;
55
+ export declare function getGitDiff(sfdxProjectFolders: string[], ref1: string, ref2: string, dir: string): Promise<Ctx['gitLines']>;
56
+ export declare function getGitResults(gitLines: Ctx['gitLines'], ref1VirtualTreeContainer: VirtualTreeContainer, ref2VirtualTreeContainer: VirtualTreeContainer | FSTreeContainer): Promise<Ctx['gitResults']>;
57
+ export declare function buildManifestComponentSet(cs: ComponentSet, forDestructiveChanges?: boolean): ComponentSet;