@salesforce/plugin-deploy-retrieve 1.5.1 → 1.5.4
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/CHANGELOG.md +16 -0
- package/README.md +35 -10
- package/lib/commands/deploy/metadata/quick.d.ts +0 -1
- package/lib/commands/deploy/metadata/quick.js +3 -7
- package/lib/commands/deploy/metadata/quick.js.map +1 -1
- package/lib/commands/deploy/metadata/resume.d.ts +0 -1
- package/lib/commands/deploy/metadata/resume.js +4 -5
- package/lib/commands/deploy/metadata/resume.js.map +1 -1
- package/lib/commands/deploy/metadata/validate.d.ts +0 -1
- package/lib/commands/deploy/metadata/validate.js +3 -5
- package/lib/commands/deploy/metadata/validate.js.map +1 -1
- package/lib/commands/deploy/metadata.d.ts +3 -2
- package/lib/commands/deploy/metadata.js +26 -10
- package/lib/commands/deploy/metadata.js.map +1 -1
- package/lib/commands/deploy.d.ts +1 -1
- package/lib/commands/deploy.js +25 -12
- package/lib/commands/deploy.js.map +1 -1
- package/lib/commands/retrieve/metadata.d.ts +3 -0
- package/lib/commands/retrieve/metadata.js +51 -16
- package/lib/commands/retrieve/metadata.js.map +1 -1
- package/lib/utils/conflicts.d.ts +2 -0
- package/lib/utils/conflicts.js +22 -0
- package/lib/utils/conflicts.js.map +1 -0
- package/lib/utils/deploy.d.ts +5 -3
- package/lib/utils/deploy.js +48 -21
- package/lib/utils/deploy.js.map +1 -1
- package/lib/utils/metadataDeployer.d.ts +2 -2
- package/lib/utils/metadataDeployer.js +10 -7
- package/lib/utils/metadataDeployer.js.map +1 -1
- package/lib/utils/output.js +17 -26
- package/lib/utils/output.js.map +1 -1
- package/lib/utils/progressBar.js +1 -2
- package/lib/utils/progressBar.js.map +1 -1
- package/messages/deploy.md +36 -0
- package/messages/deploy.metadata.md +23 -1
- package/messages/retrieve.metadata.md +23 -1
- package/messages/tracking.md +3 -0
- package/oclif.manifest.json +1 -1
- package/package.json +32 -28
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { SfError } from '@salesforce/core';
|
|
1
2
|
import { RetrieveResult } from '@salesforce/source-deploy-retrieve';
|
|
2
3
|
import { SfCommand } from '@salesforce/sf-plugins-core';
|
|
3
4
|
import { RetrieveResultJson } from '../../utils/types';
|
|
@@ -9,6 +10,7 @@ export default class RetrieveMetadata extends SfCommand<RetrieveResultJson> {
|
|
|
9
10
|
static readonly state = "beta";
|
|
10
11
|
static flags: {
|
|
11
12
|
'api-version': import("@oclif/core/lib/interfaces").OptionFlag<string>;
|
|
13
|
+
'ignore-conflicts': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
12
14
|
manifest: import("@oclif/core/lib/interfaces").OptionFlag<string>;
|
|
13
15
|
metadata: import("@oclif/core/lib/interfaces").OptionFlag<string[]>;
|
|
14
16
|
'package-name': import("@oclif/core/lib/interfaces").OptionFlag<string[]>;
|
|
@@ -20,4 +22,5 @@ export default class RetrieveMetadata extends SfCommand<RetrieveResultJson> {
|
|
|
20
22
|
static envVariablesSection: import("@salesforce/sf-plugins-core/lib/util").HelpSection;
|
|
21
23
|
protected retrieveResult: RetrieveResult;
|
|
22
24
|
run(): Promise<RetrieveResultJson>;
|
|
25
|
+
protected catch(error: Error | SfError): Promise<SfCommand.Error>;
|
|
23
26
|
}
|
|
@@ -10,28 +10,43 @@ const core_1 = require("@salesforce/core");
|
|
|
10
10
|
const source_deploy_retrieve_1 = require("@salesforce/source-deploy-retrieve");
|
|
11
11
|
const sf_plugins_core_1 = require("@salesforce/sf-plugins-core");
|
|
12
12
|
const ts_types_1 = require("@salesforce/ts-types");
|
|
13
|
+
const source_tracking_1 = require("@salesforce/source-tracking");
|
|
13
14
|
const output_1 = require("../../utils/output");
|
|
14
15
|
const project_1 = require("../../utils/project");
|
|
16
|
+
const conflicts_1 = require("../../utils/conflicts");
|
|
15
17
|
core_1.Messages.importMessagesDirectory(__dirname);
|
|
16
18
|
const messages = core_1.Messages.loadMessages('@salesforce/plugin-deploy-retrieve', 'retrieve.metadata');
|
|
17
|
-
const
|
|
19
|
+
const mdTransferMessages = core_1.Messages.loadMessages('@salesforce/plugin-deploy-retrieve', 'metadata.transfer');
|
|
18
20
|
class RetrieveMetadata extends sf_plugins_core_1.SfCommand {
|
|
19
21
|
async run() {
|
|
20
22
|
const { flags } = await this.parse(RetrieveMetadata);
|
|
21
23
|
this.spinner.start(messages.getMessage('spinner.start'));
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
manifestPath: flags.manifest,
|
|
28
|
-
directoryPaths: await (0, project_1.getPackageDirs)(),
|
|
29
|
-
},
|
|
30
|
-
metadata: flags.metadata && {
|
|
31
|
-
metadataEntries: flags.metadata,
|
|
32
|
-
directoryPaths: await (0, project_1.getPackageDirs)(),
|
|
33
|
-
},
|
|
24
|
+
const stl = await source_tracking_1.SourceTracking.create({
|
|
25
|
+
org: flags['target-org'],
|
|
26
|
+
project: this.project,
|
|
27
|
+
subscribeSDREvents: true,
|
|
28
|
+
ignoreConflicts: flags['ignore-conflicts'],
|
|
34
29
|
});
|
|
30
|
+
const isChanges = !flags['source-dir'] && !flags['manifest'] && !flags['metadata'];
|
|
31
|
+
const componentSet = isChanges
|
|
32
|
+
? await stl.maybeApplyRemoteDeletesToLocal()
|
|
33
|
+
: await source_deploy_retrieve_1.ComponentSetBuilder.build({
|
|
34
|
+
apiversion: flags['api-version'],
|
|
35
|
+
sourcepath: flags['source-dir'],
|
|
36
|
+
packagenames: flags['package-name'],
|
|
37
|
+
manifest: flags.manifest && {
|
|
38
|
+
manifestPath: flags.manifest,
|
|
39
|
+
directoryPaths: await (0, project_1.getPackageDirs)(),
|
|
40
|
+
},
|
|
41
|
+
metadata: flags.metadata && {
|
|
42
|
+
metadataEntries: flags.metadata,
|
|
43
|
+
directoryPaths: await (0, project_1.getPackageDirs)(),
|
|
44
|
+
},
|
|
45
|
+
});
|
|
46
|
+
// stl sets version based on config/files--if the command overrides it, we need to update
|
|
47
|
+
if (isChanges && flags['api-version']) {
|
|
48
|
+
componentSet.apiVersion = flags['api-version'];
|
|
49
|
+
}
|
|
35
50
|
this.spinner.status = messages.getMessage('spinner.sending', [
|
|
36
51
|
componentSet.sourceApiVersion || componentSet.apiVersion,
|
|
37
52
|
]);
|
|
@@ -43,11 +58,11 @@ class RetrieveMetadata extends sf_plugins_core_1.SfCommand {
|
|
|
43
58
|
});
|
|
44
59
|
this.spinner.status = messages.getMessage('spinner.polling');
|
|
45
60
|
retrieve.onUpdate((data) => {
|
|
46
|
-
this.spinner.status =
|
|
61
|
+
this.spinner.status = mdTransferMessages.getMessage(data.status);
|
|
47
62
|
});
|
|
48
63
|
// any thing else should stop the progress bar
|
|
49
|
-
retrieve.onFinish((data) => this.spinner.stop(
|
|
50
|
-
retrieve.onCancel((data) => this.spinner.stop(
|
|
64
|
+
retrieve.onFinish((data) => this.spinner.stop(mdTransferMessages.getMessage(data.response.status)));
|
|
65
|
+
retrieve.onCancel((data) => this.spinner.stop(mdTransferMessages.getMessage(data.status)));
|
|
51
66
|
retrieve.onError((error) => {
|
|
52
67
|
this.spinner.stop(error.name);
|
|
53
68
|
throw error;
|
|
@@ -66,6 +81,20 @@ class RetrieveMetadata extends sf_plugins_core_1.SfCommand {
|
|
|
66
81
|
}
|
|
67
82
|
return formatter.getJson();
|
|
68
83
|
}
|
|
84
|
+
catch(error) {
|
|
85
|
+
if (error instanceof source_tracking_1.SourceConflictError) {
|
|
86
|
+
if (!this.jsonEnabled()) {
|
|
87
|
+
(0, conflicts_1.writeConflictTable)(error.data);
|
|
88
|
+
// set the message and add plugin-specific actions
|
|
89
|
+
return super.catch({
|
|
90
|
+
...error,
|
|
91
|
+
message: messages.getMessage('error.Conflicts'),
|
|
92
|
+
actions: messages.getMessages('error.Conflicts.Actions'),
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
return super.catch(error);
|
|
97
|
+
}
|
|
69
98
|
}
|
|
70
99
|
exports.default = RetrieveMetadata;
|
|
71
100
|
RetrieveMetadata.summary = messages.getMessage('summary');
|
|
@@ -79,6 +108,12 @@ RetrieveMetadata.flags = {
|
|
|
79
108
|
summary: messages.getMessage('flags.api-version.summary'),
|
|
80
109
|
description: messages.getMessage('flags.api-version.description'),
|
|
81
110
|
}),
|
|
111
|
+
'ignore-conflicts': sf_plugins_core_1.Flags.boolean({
|
|
112
|
+
char: 'c',
|
|
113
|
+
summary: messages.getMessage('flags.ignore-conflicts.summary'),
|
|
114
|
+
description: messages.getMessage('flags.ignore-conflicts.description'),
|
|
115
|
+
default: false,
|
|
116
|
+
}),
|
|
82
117
|
manifest: sf_plugins_core_1.Flags.file({
|
|
83
118
|
char: 'x',
|
|
84
119
|
summary: messages.getMessage('flags.manifest.summary'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../src/commands/retrieve/metadata.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAEH,2CAA+F;AAC/F,+EAAyF;AAEzF,iEAA8E;AAC9E,mDAAiD;AACjD,+CAA6D;AAC7D,iDAAqD;
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../src/commands/retrieve/metadata.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAEH,2CAA+F;AAC/F,+EAAyF;AAEzF,iEAA8E;AAC9E,mDAAiD;AACjD,iEAAkF;AAClF,+CAA6D;AAC7D,iDAAqD;AAErD,qDAA2D;AAE3D,eAAQ,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;AAC5C,MAAM,QAAQ,GAAG,eAAQ,CAAC,YAAY,CAAC,oCAAoC,EAAE,mBAAmB,CAAC,CAAC;AAClG,MAAM,kBAAkB,GAAG,eAAQ,CAAC,YAAY,CAAC,oCAAoC,EAAE,mBAAmB,CAAC,CAAC;AAE5G,MAAqB,gBAAiB,SAAQ,2BAA6B;IAuElE,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC;QACzD,MAAM,GAAG,GAAG,MAAM,gCAAc,CAAC,MAAM,CAAC;YACtC,GAAG,EAAE,KAAK,CAAC,YAAY,CAAC;YACxB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,kBAAkB,EAAE,IAAI;YACxB,eAAe,EAAE,KAAK,CAAC,kBAAkB,CAAC;SAC3C,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACnF,MAAM,YAAY,GAAG,SAAS;YAC5B,CAAC,CAAC,MAAM,GAAG,CAAC,8BAA8B,EAAE;YAC5C,CAAC,CAAC,MAAM,4CAAmB,CAAC,KAAK,CAAC;gBAC9B,UAAU,EAAE,KAAK,CAAC,aAAa,CAAC;gBAChC,UAAU,EAAE,KAAK,CAAC,YAAY,CAAC;gBAC/B,YAAY,EAAE,KAAK,CAAC,cAAc,CAAC;gBACnC,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI;oBAC1B,YAAY,EAAE,KAAK,CAAC,QAAQ;oBAC5B,cAAc,EAAE,MAAM,IAAA,wBAAc,GAAE;iBACvC;gBACD,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI;oBAC1B,eAAe,EAAE,KAAK,CAAC,QAAQ;oBAC/B,cAAc,EAAE,MAAM,IAAA,wBAAc,GAAE;iBACvC;aACF,CAAC,CAAC;QACP,yFAAyF;QACzF,IAAI,SAAS,IAAI,KAAK,CAAC,aAAa,CAAC,EAAE;YACrC,YAAY,CAAC,UAAU,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;SAChD;QACD,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,iBAAiB,EAAE;YAC3D,YAAY,CAAC,gBAAgB,IAAI,YAAY,CAAC,UAAU;SACzD,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC;YAC3C,oBAAoB,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE;YACvD,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC,QAAQ;YACjD,cAAc,EAAE,KAAK,CAAC,cAAc,CAAC;SACtC,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAE7D,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE;YACzB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;QAEH,8CAA8C;QAC9C,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAEpG,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAE3F,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAY,EAAE,EAAE;YAChC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC9B,MAAM,KAAK,CAAC;QACd,CAAC,CAAC,CAAC;QAEH,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAEpB,MAAM,SAAS,GAAG,IAAI,gCAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;QAE7E,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE;YACvB,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,WAAW,EAAE;gBAC1C,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;aAC3B;iBAAM;gBACL,MAAM,IAAI,cAAO,CACf,IAAA,oBAAS,EAAC,MAAM,CAAC,QAAQ,EAAE,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAClE,IAAA,oBAAS,EAAC,MAAM,CAAC,QAAQ,EAAE,iBAAiB,EAAE,SAAS,CAAC,CACzD,CAAC;aACH;SACF;QAED,OAAO,SAAS,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAES,KAAK,CAAC,KAAsB;QACpC,IAAI,KAAK,YAAY,qCAAmB,EAAE;YACxC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE;gBACvB,IAAA,8BAAkB,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC/B,kDAAkD;gBAClD,OAAO,KAAK,CAAC,KAAK,CAAC;oBACjB,GAAG,KAAK;oBACR,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC;oBAC/C,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,yBAAyB,CAAC;iBACzD,CAAC,CAAC;aACJ;SACF;QACD,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;;AAhKH,mCAiKC;AAhKwB,wBAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AACzC,4BAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AACjD,yBAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;AAC5C,gCAAe,GAAG,IAAI,CAAC;AACvB,sBAAK,GAAG,MAAM,CAAC;AAExB,sBAAK,GAAG;IACpB,aAAa,EAAE,uBAAK,CAAC,aAAa,CAAC;QACjC,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,2BAA2B,CAAC;QACzD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,+BAA+B,CAAC;KAClE,CAAC;IACF,kBAAkB,EAAE,uBAAK,CAAC,OAAO,CAAC;QAChC,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,gCAAgC,CAAC;QAC9D,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,oCAAoC,CAAC;QACtE,OAAO,EAAE,KAAK;KACf,CAAC;IACF,QAAQ,EAAE,uBAAK,CAAC,IAAI,CAAC;QACnB,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,wBAAwB,CAAC;QACtD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,4BAA4B,CAAC;QAC9D,SAAS,EAAE,CAAC,UAAU,EAAE,YAAY,CAAC;QACrC,MAAM,EAAE,IAAI;KACb,CAAC;IACF,QAAQ,EAAE,uBAAK,CAAC,MAAM,CAAC;QACrB,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,wBAAwB,CAAC;QACtD,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,CAAC,UAAU,EAAE,YAAY,CAAC;KACtC,CAAC;IACF,cAAc,EAAE,uBAAK,CAAC,MAAM,CAAC;QAC3B,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,4BAA4B,CAAC;QAC1D,QAAQ,EAAE,IAAI;KACf,CAAC;IACF,YAAY,EAAE,uBAAK,CAAC,MAAM,CAAC;QACzB,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,0BAA0B,CAAC;QACxD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,8BAA8B,CAAC;QAChE,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC;KACpC,CAAC;IACF,YAAY,EAAE,uBAAK,CAAC,WAAW,CAAC;QAC9B,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,0BAA0B,CAAC;QACxD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,8BAA8B,CAAC;KACjE,CAAC;IACF,IAAI,EAAE,uBAAK,CAAC,QAAQ,CAAC;QACnB,IAAI,EAAE,GAAG;QACT,YAAY,EAAE,EAAE;QAChB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC;QAClD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,wBAAwB,CAAC;KAC3D,CAAC;CACH,CAAC;AAEY,8CAA6B,GAAG,IAAA,+BAAa,EACzD,yBAAyB,EACzB,0BAAmB,CAAC,UAAU,EAC9B,0BAAmB,CAAC,eAAe,CACpC,CAAC;AACY,oCAAmB,GAAG,IAAA,+BAAa,EAC/C,uBAAuB,EACvB,0BAAmB,CAAC,aAAa,EACjC,0BAAmB,CAAC,mBAAmB,CACxC,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) 2020, salesforce.com, inc.
|
|
4
|
+
* All rights reserved.
|
|
5
|
+
* Licensed under the BSD 3-Clause license.
|
|
6
|
+
* For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.writeConflictTable = void 0;
|
|
10
|
+
const core_1 = require("@oclif/core");
|
|
11
|
+
const writeConflictTable = (conflicts) => {
|
|
12
|
+
// Interfaces cannot be casted to Record<string, unknown> so we have to cast to unknown first
|
|
13
|
+
// See https://github.com/microsoft/TypeScript/issues/15300
|
|
14
|
+
core_1.CliUx.ux.table(conflicts, {
|
|
15
|
+
state: { header: 'STATE' },
|
|
16
|
+
fullName: { header: 'FULL NAME' },
|
|
17
|
+
type: { header: 'TYPE' },
|
|
18
|
+
filePath: { header: 'FILE PATH' },
|
|
19
|
+
});
|
|
20
|
+
};
|
|
21
|
+
exports.writeConflictTable = writeConflictTable;
|
|
22
|
+
//# sourceMappingURL=conflicts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conflicts.js","sourceRoot":"","sources":["../../src/utils/conflicts.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,sCAAoC;AAG7B,MAAM,kBAAkB,GAAG,CAAC,SAA6B,EAAQ,EAAE;IACxE,6FAA6F;IAC7F,2DAA2D;IAC3D,YAAK,CAAC,EAAE,CAAC,KAAK,CAAC,SAAsD,EAAE;QACrE,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;QAC1B,QAAQ,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE;QACjC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;QACxB,QAAQ,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE;KAClC,CAAC,CAAC;AACL,CAAC,CAAC;AATW,QAAA,kBAAkB,sBAS7B"}
|
package/lib/utils/deploy.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { Org, TTLConfig } from '@salesforce/core';
|
|
1
|
+
import { Org, SfProject, TTLConfig } from '@salesforce/core';
|
|
2
2
|
import { Duration } from '@salesforce/kit';
|
|
3
3
|
import { JsonMap, Nullable } from '@salesforce/ts-types';
|
|
4
4
|
import { ComponentSet, DeployResult, MetadataApiDeploy, RequestStatus } from '@salesforce/source-deploy-retrieve';
|
|
5
|
+
import { SourceTracking } from '@salesforce/source-tracking';
|
|
5
6
|
import { API, PathInfo, TestLevel } from './types';
|
|
6
7
|
export declare type DeployOptions = {
|
|
7
8
|
api: API;
|
|
@@ -10,6 +11,7 @@ export declare type DeployOptions = {
|
|
|
10
11
|
async?: boolean;
|
|
11
12
|
'api-version'?: string;
|
|
12
13
|
'dry-run'?: boolean;
|
|
14
|
+
'ignore-conflicts'?: boolean;
|
|
13
15
|
'ignore-errors'?: boolean;
|
|
14
16
|
'ignore-warnings'?: boolean;
|
|
15
17
|
manifest?: string;
|
|
@@ -28,8 +30,8 @@ export declare type CachedOptions = Omit<DeployOptions, 'wait'> & {
|
|
|
28
30
|
};
|
|
29
31
|
export declare function validateTests(testLevel: TestLevel, tests: Nullable<string[]>): boolean;
|
|
30
32
|
export declare function resolveApi(): Promise<API>;
|
|
31
|
-
export declare function buildComponentSet(opts: Partial<DeployOptions
|
|
32
|
-
export declare function executeDeploy(opts: Partial<DeployOptions>, id?: string): Promise<{
|
|
33
|
+
export declare function buildComponentSet(opts: Partial<DeployOptions>, stl?: SourceTracking): Promise<ComponentSet>;
|
|
34
|
+
export declare function executeDeploy(opts: Partial<DeployOptions>, project?: SfProject, id?: string): Promise<{
|
|
33
35
|
deploy: MetadataApiDeploy;
|
|
34
36
|
componentSet: ComponentSet;
|
|
35
37
|
}>;
|
package/lib/utils/deploy.js
CHANGED
|
@@ -10,28 +10,46 @@ exports.DeployCache = exports.isNotResumable = exports.determineExitCode = expor
|
|
|
10
10
|
const core_1 = require("@salesforce/core");
|
|
11
11
|
const kit_1 = require("@salesforce/kit");
|
|
12
12
|
const source_deploy_retrieve_1 = require("@salesforce/source-deploy-retrieve");
|
|
13
|
+
const source_tracking_1 = require("@salesforce/source-tracking");
|
|
13
14
|
const configMeta_1 = require("../configMeta");
|
|
14
15
|
const project_1 = require("./project");
|
|
15
16
|
const types_1 = require("./types");
|
|
16
17
|
const errorCodes_1 = require("./errorCodes");
|
|
17
18
|
core_1.Messages.importMessagesDirectory(__dirname);
|
|
18
|
-
const
|
|
19
|
+
const cacheMessages = core_1.Messages.load('@salesforce/plugin-deploy-retrieve', 'cache', [
|
|
20
|
+
'error.NoRecentJobId',
|
|
21
|
+
'error.InvalidJobId',
|
|
22
|
+
]);
|
|
23
|
+
const trackingMessages = core_1.Messages.load('@salesforce/plugin-deploy-retrieve', 'tracking', ['error.noChanges']);
|
|
19
24
|
function validateTests(testLevel, tests) {
|
|
20
|
-
if (testLevel === types_1.TestLevel.RunSpecifiedTests && (tests
|
|
25
|
+
if (testLevel === types_1.TestLevel.RunSpecifiedTests && (tests ?? []).length === 0)
|
|
21
26
|
return false;
|
|
22
27
|
return true;
|
|
23
28
|
}
|
|
24
29
|
exports.validateTests = validateTests;
|
|
25
30
|
async function resolveApi() {
|
|
26
|
-
var _a;
|
|
27
31
|
const agg = await core_1.ConfigAggregator.create({ customConfigMeta: configMeta_1.default });
|
|
28
|
-
const restDeployConfig =
|
|
32
|
+
const restDeployConfig = agg.getInfo(configMeta_1.ConfigVars.ORG_METADATA_REST_DEPLOY)?.value;
|
|
29
33
|
return restDeployConfig === 'true' ? types_1.API.REST : types_1.API.SOAP;
|
|
30
34
|
}
|
|
31
35
|
exports.resolveApi = resolveApi;
|
|
32
|
-
async function buildComponentSet(opts) {
|
|
33
|
-
if
|
|
34
|
-
|
|
36
|
+
async function buildComponentSet(opts, stl) {
|
|
37
|
+
// if you specify nothing, you'll get the changes, like sfdx push
|
|
38
|
+
if (!opts['source-dir'] && !opts.manifest && !opts.metadata) {
|
|
39
|
+
/** localChangesAsComponentSet returned an array to support multiple sequential deploys.
|
|
40
|
+
* `sf` does not support this so we force one ComponentSet
|
|
41
|
+
*/
|
|
42
|
+
const [cs] = await stl.localChangesAsComponentSet(false);
|
|
43
|
+
if (!cs) {
|
|
44
|
+
throw new core_1.SfError(trackingMessages.getMessage('error.noChanges'));
|
|
45
|
+
}
|
|
46
|
+
// stl produces a cs with api version already set. command might have specified a version.
|
|
47
|
+
if (opts['api-version']) {
|
|
48
|
+
cs.apiVersion = opts['api-version'];
|
|
49
|
+
cs.sourceApiVersion = opts['api-version'];
|
|
50
|
+
}
|
|
51
|
+
return cs;
|
|
52
|
+
}
|
|
35
53
|
return source_deploy_retrieve_1.ComponentSetBuilder.build({
|
|
36
54
|
apiversion: opts['api-version'],
|
|
37
55
|
sourceapiversion: await (0, project_1.getSourceApiVersion)(),
|
|
@@ -47,8 +65,8 @@ async function buildComponentSet(opts) {
|
|
|
47
65
|
});
|
|
48
66
|
}
|
|
49
67
|
exports.buildComponentSet = buildComponentSet;
|
|
50
|
-
async function executeDeploy(opts, id) {
|
|
51
|
-
|
|
68
|
+
async function executeDeploy(opts, project, id) {
|
|
69
|
+
project ?? (project = await core_1.SfProject.resolve());
|
|
52
70
|
const apiOptions = {
|
|
53
71
|
checkOnly: opts['dry-run'] || false,
|
|
54
72
|
ignoreWarnings: opts['ignore-warnings'] || false,
|
|
@@ -59,39 +77,48 @@ async function executeDeploy(opts, id) {
|
|
|
59
77
|
};
|
|
60
78
|
let deploy;
|
|
61
79
|
let componentSet;
|
|
80
|
+
const org = await core_1.Org.create({ aliasOrUsername: opts['target-org'] });
|
|
81
|
+
const usernameOrConnection = org.getConnection();
|
|
82
|
+
// instantiate source tracking
|
|
83
|
+
// stl will decide, based on the org's properties, what to do
|
|
84
|
+
const stl = await source_tracking_1.SourceTracking.create({
|
|
85
|
+
org,
|
|
86
|
+
project,
|
|
87
|
+
subscribeSDREvents: true,
|
|
88
|
+
ignoreConflicts: opts['ignore-conflicts'],
|
|
89
|
+
});
|
|
62
90
|
if (opts['metadata-dir']) {
|
|
63
91
|
if (id) {
|
|
64
|
-
deploy = new source_deploy_retrieve_1.MetadataApiDeploy({ id, usernameOrConnection
|
|
92
|
+
deploy = new source_deploy_retrieve_1.MetadataApiDeploy({ id, usernameOrConnection });
|
|
65
93
|
}
|
|
66
94
|
else {
|
|
67
95
|
const key = opts['metadata-dir'].type === 'directory' ? 'mdapiPath' : 'zipPath';
|
|
68
96
|
deploy = new source_deploy_retrieve_1.MetadataApiDeploy({
|
|
69
97
|
[key]: opts['metadata-dir'].path,
|
|
70
|
-
usernameOrConnection
|
|
98
|
+
usernameOrConnection,
|
|
71
99
|
apiOptions: { ...apiOptions, singlePackage: opts['single-package'] || false },
|
|
72
100
|
});
|
|
73
101
|
await deploy.start();
|
|
74
102
|
}
|
|
75
103
|
}
|
|
76
104
|
else {
|
|
77
|
-
componentSet = await buildComponentSet(opts);
|
|
105
|
+
componentSet = await buildComponentSet(opts, stl);
|
|
78
106
|
deploy = id
|
|
79
|
-
? new source_deploy_retrieve_1.MetadataApiDeploy({ id, usernameOrConnection
|
|
107
|
+
? new source_deploy_retrieve_1.MetadataApiDeploy({ id, usernameOrConnection, components: componentSet })
|
|
80
108
|
: await componentSet.deploy({
|
|
81
|
-
usernameOrConnection
|
|
109
|
+
usernameOrConnection,
|
|
82
110
|
apiOptions,
|
|
83
111
|
});
|
|
84
112
|
}
|
|
85
|
-
await DeployCache.set(deploy.id, { ...opts, wait:
|
|
113
|
+
await DeployCache.set(deploy.id, { ...opts, wait: opts.wait?.minutes ?? 33 });
|
|
86
114
|
return { deploy, componentSet };
|
|
87
115
|
}
|
|
88
116
|
exports.executeDeploy = executeDeploy;
|
|
89
117
|
async function cancelDeploy(opts, id) {
|
|
90
|
-
var _a, _b;
|
|
91
118
|
const org = await core_1.Org.create({ aliasOrUsername: opts['target-org'] });
|
|
92
119
|
const deploy = new source_deploy_retrieve_1.MetadataApiDeploy({ usernameOrConnection: org.getUsername(), id });
|
|
93
120
|
const componentSet = await buildComponentSet({ ...opts });
|
|
94
|
-
await DeployCache.set(deploy.id, { ...opts, wait:
|
|
121
|
+
await DeployCache.set(deploy.id, { ...opts, wait: opts.wait?.minutes ?? 33 });
|
|
95
122
|
await deploy.cancel();
|
|
96
123
|
return poll(org, deploy.id, opts.wait, componentSet);
|
|
97
124
|
}
|
|
@@ -171,9 +198,9 @@ class DeployCache extends core_1.TTLConfig {
|
|
|
171
198
|
resolveLatest(useMostRecent, key, throwOnNotFound = true) {
|
|
172
199
|
const jobId = this.resolveLongId(useMostRecent ? this.getLatestKey() : key);
|
|
173
200
|
if (!jobId && useMostRecent)
|
|
174
|
-
throw
|
|
201
|
+
throw cacheMessages.createError('error.NoRecentJobId');
|
|
175
202
|
if (throwOnNotFound && !this.has(jobId)) {
|
|
176
|
-
throw
|
|
203
|
+
throw cacheMessages.createError('error.InvalidJobId', [jobId]);
|
|
177
204
|
}
|
|
178
205
|
return jobId;
|
|
179
206
|
}
|
|
@@ -182,10 +209,10 @@ class DeployCache extends core_1.TTLConfig {
|
|
|
182
209
|
return jobId;
|
|
183
210
|
}
|
|
184
211
|
else if (jobId.length === 15) {
|
|
185
|
-
return this.keys().find((k) => k.
|
|
212
|
+
return this.keys().find((k) => k.startsWith(jobId));
|
|
186
213
|
}
|
|
187
214
|
else {
|
|
188
|
-
throw
|
|
215
|
+
throw cacheMessages.createError('error.InvalidJobId', [jobId]);
|
|
189
216
|
}
|
|
190
217
|
}
|
|
191
218
|
get(jobId) {
|
package/lib/utils/deploy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/utils/deploy.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,
|
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/utils/deploy.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,2CAU0B;AAC1B,yCAA2C;AAE3C,+EAO4C;AAC5C,iEAA6D;AAC7D,8CAAuD;AACvD,uCAAgE;AAChE,mCAAmD;AACnD,6CAAmD;AACnD,eAAQ,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;AAC5C,MAAM,aAAa,GAAG,eAAQ,CAAC,IAAI,CAAC,oCAAoC,EAAE,OAAO,EAAE;IACjF,qBAAqB;IACrB,oBAAoB;CACrB,CAAC,CAAC;AACH,MAAM,gBAAgB,GAAG,eAAQ,CAAC,IAAI,CAAC,oCAAoC,EAAE,UAAU,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC;AA0B9G,SAAgB,aAAa,CAAC,SAAoB,EAAE,KAAyB;IAC3E,IAAI,SAAS,KAAK,iBAAS,CAAC,iBAAiB,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1F,OAAO,IAAI,CAAC;AACd,CAAC;AAHD,sCAGC;AAEM,KAAK,UAAU,UAAU;IAC9B,MAAM,GAAG,GAAG,MAAM,uBAAgB,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,oBAAU,EAAE,CAAC,CAAC;IAC5E,MAAM,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAAC,uBAAU,CAAC,wBAAwB,CAAC,EAAE,KAAK,CAAC;IACjF,OAAO,gBAAgB,KAAK,MAAM,CAAC,CAAC,CAAC,WAAG,CAAC,IAAI,CAAC,CAAC,CAAC,WAAG,CAAC,IAAI,CAAC;AAC3D,CAAC;AAJD,gCAIC;AAEM,KAAK,UAAU,iBAAiB,CAAC,IAA4B,EAAE,GAAoB;IACxF,iEAAiE;IACjE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;QAC3D;;WAEG;QACH,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;QACzD,IAAI,CAAC,EAAE,EAAE;YACP,MAAM,IAAI,cAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;SACnE;QACD,2FAA2F;QAC3F,IAAI,IAAI,CAAC,aAAa,CAAC,EAAE;YACvB,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;YACpC,EAAE,CAAC,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;SAC3C;QACD,OAAO,EAAE,CAAC;KACX;IAED,OAAO,4CAAmB,CAAC,KAAK,CAAC;QAC/B,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC;QAC/B,gBAAgB,EAAE,MAAM,IAAA,6BAAmB,GAAE;QAC7C,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;QAC9B,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI;YACzB,YAAY,EAAE,IAAI,CAAC,QAAQ;YAC3B,cAAc,EAAE,MAAM,IAAA,wBAAc,GAAE;SACvC;QACD,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI;YACzB,eAAe,EAAE,IAAI,CAAC,QAAQ;YAC9B,cAAc,EAAE,MAAM,IAAA,wBAAc,GAAE;SACvC;KACF,CAAC,CAAC;AACL,CAAC;AA/BD,8CA+BC;AAEM,KAAK,UAAU,aAAa,CACjC,IAA4B,EAC5B,OAAmB,EACnB,EAAW;IAEX,OAAO,KAAP,OAAO,GAAK,MAAM,gBAAS,CAAC,OAAO,EAAE,EAAC;IACtC,MAAM,UAAU,GAAG;QACjB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK;QACnC,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,KAAK;QAChD,IAAI,EAAE,IAAI,CAAC,GAAG,KAAK,WAAG,CAAC,IAAI;QAC3B,eAAe,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,KAAK;QAChD,QAAQ,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;QAC1B,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC;KAC9B,CAAC;IAEF,IAAI,MAAyB,CAAC;IAC9B,IAAI,YAA0B,CAAC;IAE/B,MAAM,GAAG,GAAG,MAAM,UAAG,CAAC,MAAM,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IACtE,MAAM,oBAAoB,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;IACjD,8BAA8B;IAC9B,6DAA6D;IAC7D,MAAM,GAAG,GAAG,MAAM,gCAAc,CAAC,MAAM,CAAC;QACtC,GAAG;QACH,OAAO;QACP,kBAAkB,EAAE,IAAI;QACxB,eAAe,EAAE,IAAI,CAAC,kBAAkB,CAAC;KAC1C,CAAC,CAAC;IAEH,IAAI,IAAI,CAAC,cAAc,CAAC,EAAE;QACxB,IAAI,EAAE,EAAE;YACN,MAAM,GAAG,IAAI,0CAAiB,CAAC,EAAE,EAAE,EAAE,oBAAoB,EAAE,CAAC,CAAC;SAC9D;aAAM;YACL,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YAChF,MAAM,GAAG,IAAI,0CAAiB,CAAC;gBAC7B,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI;gBAChC,oBAAoB;gBACpB,UAAU,EAAE,EAAE,GAAG,UAAU,EAAE,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,KAAK,EAAE;aAC9E,CAAC,CAAC;YACH,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;SACtB;KACF;SAAM;QACL,YAAY,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAClD,MAAM,GAAG,EAAE;YACT,CAAC,CAAC,IAAI,0CAAiB,CAAC,EAAE,EAAE,EAAE,oBAAoB,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;YAC/E,CAAC,CAAC,MAAM,YAAY,CAAC,MAAM,CAAC;gBACxB,oBAAoB;gBACpB,UAAU;aACX,CAAC,CAAC;KACR;IAED,MAAM,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC;IAC9E,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;AAClC,CAAC;AArDD,sCAqDC;AAEM,KAAK,UAAU,YAAY,CAAC,IAA4B,EAAE,EAAU;IACzE,MAAM,GAAG,GAAG,MAAM,UAAG,CAAC,MAAM,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IACtE,MAAM,MAAM,GAAG,IAAI,0CAAiB,CAAC,EAAE,oBAAoB,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACtF,MAAM,YAAY,GAAG,MAAM,iBAAiB,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;IAE1D,MAAM,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC;IAE9E,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;IACtB,OAAO,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AACvD,CAAC;AATD,oCASC;AAEM,KAAK,UAAU,iBAAiB,CAAC,IAA4B,EAAE,EAAU;IAC9E,MAAM,GAAG,GAAG,MAAM,UAAG,CAAC,MAAM,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IACtE,MAAM,MAAM,GAAG,IAAI,0CAAiB,CAAC,EAAE,oBAAoB,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACtF,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;IACtB,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;AAC3B,CAAC;AALD,8CAKC;AAEM,KAAK,UAAU,IAAI,CAAC,GAAQ,EAAE,EAAU,EAAE,IAAc,EAAE,YAA0B;IACzF,MAAM,MAAM,GAAG,KAAK,IAA2B,EAAE;QAC/C,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC3E,MAAM,YAAY,GAAG,GAAyC,CAAC;QAC/D,OAAO,IAAI,qCAAY,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IACtD,CAAC,CAAC;IAEF,MAAM,IAAI,GAA0B;QAClC,SAAS,EAAE,cAAQ,CAAC,YAAY,CAAC,IAAI,CAAC;QACtC,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,KAAK,IAA2B,EAAE;YACtC,MAAM,YAAY,GAAG,MAAM,MAAM,EAAE,CAAC;YACpC,OAAO;gBACL,SAAS,EAAE,YAAY,CAAC,QAAQ,CAAC,IAAI;gBACrC,OAAO,EAAE,YAAkC;aAC5C,CAAC;QACJ,CAAC;KACF,CAAC;IACF,MAAM,aAAa,GAAG,MAAM,oBAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvD,OAAO,aAAa,CAAC,SAAS,EAAsC,CAAC;AACvE,CAAC;AApBD,oBAoBC;AAED,SAAgB,iBAAiB,CAAC,MAAoB,EAAE,KAAK,GAAG,KAAK;IACnE,IAAI,KAAK,EAAE;QACT,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,sCAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACnE;IAED,OAAO,gCAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACzD,CAAC;AAND,8CAMC;AAED,SAAgB,cAAc,CAAC,MAAqB;IAClD,OAAO;QACL,sCAAa,CAAC,SAAS;QACvB,sCAAa,CAAC,MAAM;QACpB,sCAAa,CAAC,gBAAgB;QAC9B,sCAAa,CAAC,QAAQ;KACvB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACrB,CAAC;AAPD,wCAOC;AAED,MAAa,WAAY,SAAQ,gBAA2C;IACnE,MAAM,CAAC,WAAW;QACvB,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAEM,MAAM,CAAC,iBAAiB;QAC7B,OAAO;YACL,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,WAAW,CAAC,WAAW,EAAE;YACnC,WAAW,EAAE,aAAM,CAAC,eAAe;YACnC,GAAG,EAAE,cAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;SACtB,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAW,EAAE,KAA6B;QAChE,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,CAAC;QACzC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACtB,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAW;QACnC,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,CAAC;QACzC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACjB,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAW,EAAE,GAAY;QAClD,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,CAAC;QACzC,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACvB,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAEM,aAAa,CAAC,aAAsB,EAAE,GAAqB,EAAE,eAAe,GAAG,IAAI;QACxF,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC5E,IAAI,CAAC,KAAK,IAAI,aAAa;YAAE,MAAM,aAAa,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;QAEpF,IAAI,eAAe,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACvC,MAAM,aAAa,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;SAChE;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,aAAa,CAAC,KAAa;QAChC,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE,EAAE;YACvB,OAAO,KAAK,CAAC;SACd;aAAM,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE,EAAE;YAC9B,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;SACrD;aAAM;YACL,MAAM,aAAa,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;SAChE;IACH,CAAC;IAEM,GAAG,CAAC,KAAa;QACtB,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9C,CAAC;CACF;AAzDD,kCAyDC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { NamedPackageDir } from '@salesforce/core';
|
|
2
|
-
import { Deployable, Deployer } from '@salesforce/sf-plugins-core';
|
|
2
|
+
import { Deployable, Deployer, DeployerResult } from '@salesforce/sf-plugins-core';
|
|
3
3
|
import { TestLevel } from './types';
|
|
4
4
|
export interface MetadataDeployOptions extends Deployer.Options {
|
|
5
5
|
testLevel?: TestLevel;
|
|
@@ -24,7 +24,7 @@ export declare class MetadataDeployer extends Deployer {
|
|
|
24
24
|
constructor(packages: NamedPackageDir[]);
|
|
25
25
|
getName(): string;
|
|
26
26
|
setup(flags: Deployer.Flags, options: MetadataDeployOptions): Promise<MetadataDeployOptions>;
|
|
27
|
-
deploy(): Promise<void>;
|
|
27
|
+
deploy<R extends DeployerResult>(): Promise<void | R>;
|
|
28
28
|
promptForUsername(): Promise<string>;
|
|
29
29
|
promptForTestLevel(): Promise<TestLevel>;
|
|
30
30
|
}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* Licensed under the BSD 3-Clause license.
|
|
6
6
|
* For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
|
|
7
7
|
*/
|
|
8
|
+
/* eslint-disable class-methods-use-this */
|
|
8
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
10
|
exports.MetadataDeployer = exports.DeployablePackage = void 0;
|
|
10
11
|
const os_1 = require("os");
|
|
@@ -74,13 +75,12 @@ class MetadataDeployer extends sf_plugins_core_1.Deployer {
|
|
|
74
75
|
return MetadataDeployer.NAME;
|
|
75
76
|
}
|
|
76
77
|
async setup(flags, options) {
|
|
77
|
-
var _a;
|
|
78
78
|
if (flags.interactive) {
|
|
79
79
|
this.testLevel = await this.promptForTestLevel();
|
|
80
80
|
this.username = await this.promptForUsername();
|
|
81
81
|
}
|
|
82
82
|
else {
|
|
83
|
-
if (
|
|
83
|
+
if (options.directories?.length) {
|
|
84
84
|
const directories = options.directories || [];
|
|
85
85
|
const selected = this.deployables.filter((d) => directories.includes(d.getPath()));
|
|
86
86
|
this.selectDeployables(selected);
|
|
@@ -113,10 +113,13 @@ class MetadataDeployer extends sf_plugins_core_1.Deployer {
|
|
|
113
113
|
concise: false,
|
|
114
114
|
});
|
|
115
115
|
formatter.display();
|
|
116
|
+
const deployerResult = {
|
|
117
|
+
exitCode: (0, deploy_1.determineExitCode)(result),
|
|
118
|
+
};
|
|
119
|
+
return deployerResult;
|
|
116
120
|
}
|
|
117
121
|
async promptForUsername() {
|
|
118
|
-
|
|
119
|
-
const aliasOrUsername = (_a = core_1.ConfigAggregator.getValue(core_1.OrgConfigProperties.TARGET_ORG)) === null || _a === void 0 ? void 0 : _a.value;
|
|
122
|
+
const aliasOrUsername = core_1.ConfigAggregator.getValue(core_1.OrgConfigProperties.TARGET_ORG)?.value;
|
|
120
123
|
const stateAggregator = await core_1.StateAggregator.getInstance();
|
|
121
124
|
await stateAggregator.orgs.readAll();
|
|
122
125
|
const allAliases = stateAggregator.aliases.getAll();
|
|
@@ -125,7 +128,7 @@ class MetadataDeployer extends sf_plugins_core_1.Deployer {
|
|
|
125
128
|
if (aliasOrUsername) {
|
|
126
129
|
targetOrgAuth = (await core_1.AuthInfo.listAllAuthorizations((a) => a.username === aliasOrUsername || a.aliases.some((alias) => alias === aliasOrUsername))).find((a) => a);
|
|
127
130
|
if (targetOrgAuth) {
|
|
128
|
-
if (targetOrgAuth
|
|
131
|
+
if (targetOrgAuth?.isExpired) {
|
|
129
132
|
const continueAnswer = await this.prompt([
|
|
130
133
|
{
|
|
131
134
|
name: 'continue',
|
|
@@ -142,7 +145,7 @@ class MetadataDeployer extends sf_plugins_core_1.Deployer {
|
|
|
142
145
|
}
|
|
143
146
|
}
|
|
144
147
|
}
|
|
145
|
-
if (!aliasOrUsername ||
|
|
148
|
+
if (!aliasOrUsername || targetOrgAuth?.isExpired) {
|
|
146
149
|
const promises = (await core_1.AuthInfo.listAllAuthorizations((orgAuth) => !orgAuth.error && orgAuth.isExpired !== true)).map(async (orgAuth) => {
|
|
147
150
|
const stat = await stateAggregator.orgs.stat(orgAuth.username);
|
|
148
151
|
const timestamp = stat ? new Date(stat.mtimeMs) : new Date();
|
|
@@ -169,7 +172,7 @@ class MetadataDeployer extends sf_plugins_core_1.Deployer {
|
|
|
169
172
|
choices: (0, sf_plugins_core_1.generateTableChoices)(columns, options, false),
|
|
170
173
|
},
|
|
171
174
|
]);
|
|
172
|
-
if (targetOrgAuth
|
|
175
|
+
if (targetOrgAuth?.isExpired) {
|
|
173
176
|
const setTargetOrg = await this.prompt([
|
|
174
177
|
{
|
|
175
178
|
name: 'save',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadataDeployer.js","sourceRoot":"","sources":["../../src/utils/metadataDeployer.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;
|
|
1
|
+
{"version":3,"file":"metadataDeployer.js","sourceRoot":"","sources":["../../src/utils/metadataDeployer.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;AACH,2CAA2C;;;AAE3C,2BAAyB;AACzB,iCAAkC;AAClC,yCAA2C;AAC3C,2CAQ0B;AAC1B,iEAAyG;AAEzG,qCAAiD;AACjD,mCAAoC;AACpC,+CAA+C;AAC/C,qCAAwE;AAExE,eAAQ,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;AAC5C,MAAM,QAAQ,GAAG,eAAQ,CAAC,YAAY,CAAC,oCAAoC,EAAE,QAAQ,CAAC,CAAC;AAIvF,MAAM,WAAW,GAAG,CAAC,CAAuB,EAAE,CAAuB,EAAU,EAAE;IAC/E,iCAAiC;IACjC,IAAI,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC,YAAY,EAAE;QACrC,gDAAgD;QAChD,OAAO,CAAC,CAAC,CAAC;KACX;SAAM;QACL,8CAA8C;QAC9C,IAAI,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,YAAY,EAAE;YACpC,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACzC,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACzC,OAAO,UAAU,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;SACpD;QACD,mDAAmD;QACnD,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE;YAChD,OAAO,CAAC,CAAC,CAAC;SACX;QACD,8DAA8D;QAC9D,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE;YACf,OAAO,CAAC,CAAC;SACV;KACF;IACD,kDAAkD;IAClD,OAAO,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC9C,CAAC,CAAC;AAQF,MAAa,iBAAkB,SAAQ,4BAAU;IAC/C,YAA0B,GAAoB,EAAU,MAAgB;QACtE,KAAK,EAAE,CAAC;QADgB,QAAG,GAAH,GAAG,CAAiB;QAAU,WAAM,GAAN,MAAM,CAAU;IAExE,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IACvB,CAAC;IAEM,OAAO;QACZ,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IACvB,CAAC;IAEM,SAAS;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF;AApBD,8CAoBC;AAED,MAAa,gBAAiB,SAAQ,0BAAQ;IAO5C,YAA2B,QAA2B;QACpD,KAAK,EAAE,CAAC;QADiB,aAAQ,GAAR,QAAQ,CAAmB;QAH9C,cAAS,GAAG,iBAAS,CAAC,SAAS,CAAC;QAKtC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAClF,CAAC;IAEM,OAAO;QACZ,OAAO,gBAAgB,CAAC,IAAI,CAAC;IAC/B,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,KAAqB,EAAE,OAA8B;QACtE,IAAI,KAAK,CAAC,WAAW,EAAE;YACrB,IAAI,CAAC,SAAS,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACjD,IAAI,CAAC,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;SAChD;aAAM;YACL,IAAI,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE;gBAC/B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;gBAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBACnF,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;aAClC;YACD,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,CAAC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;YACxE,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;SACtE;QAED,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;SAC/C,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,MAAM;QACjB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChE,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5E,MAAM,GAAG,GAAG,MAAM,IAAA,mBAAU,GAAE,CAAC;QAC/B,IAAI,CAAC,GAAG,CAAC,GAAG,QAAG,aAAa,IAAI,OAAO,IAAI,CAAC,QAAQ,UAAU,GAAG,MAAM,CAAC,CAAC;QAEzE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,sBAAa,EAAC;YACrC,YAAY,EAAE,IAAI,CAAC,QAAQ;YAC3B,YAAY,EAAE,WAAW;YACzB,YAAY,EAAE,IAAI,CAAC,SAAS;YAC5B,GAAG;SACJ,CAAC,CAAC;QAEH,IAAI,4BAAc,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;QAEnC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,cAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;QAE1E,MAAM,SAAS,GAAG,IAAI,8BAAqB,CAAC,MAAM,EAAE;YAClD,YAAY,EAAE,IAAI,CAAC,SAAS;YAC5B,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QACH,SAAS,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,cAAc,GAAmB;YACrC,QAAQ,EAAE,IAAA,0BAAiB,EAAC,MAAM,CAAC;SACpC,CAAC;QACF,OAAO,cAAmB,CAAC;IAC7B,CAAC;IAEM,KAAK,CAAC,iBAAiB;QAC5B,MAAM,eAAe,GAAG,uBAAgB,CAAC,QAAQ,CAAC,0BAAmB,CAAC,UAAU,CAAC,EAAE,KAAe,CAAC;QACnG,MAAM,eAAe,GAAG,MAAM,sBAAe,CAAC,WAAW,EAAE,CAAC;QAC5D,MAAM,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACpD,IAAI,aAA+B,CAAC;QACpC,wDAAwD;QACxD,IAAI,eAAe,EAAE;YACnB,aAAa,GAAG,CACd,MAAM,eAAQ,CAAC,qBAAqB,CAClC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,eAAe,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,eAAe,CAAC,CAC9F,CACF,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;YACjB,IAAI,aAAa,EAAE;gBACjB,IAAI,aAAa,EAAE,SAAS,EAAE;oBAC5B,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,MAAM,CAAwB;wBAC9D;4BACE,IAAI,EAAE,UAAU;4BAChB,IAAI,EAAE,SAAS;4BACf,OAAO,EAAE,IAAA,WAAG,EAAC,QAAQ,CAAC,UAAU,CAAC,4BAA4B,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;yBACnF;qBACF,CAAC,CAAC;oBACH,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE;wBAC5B,MAAM,QAAQ,CAAC,WAAW,CAAC,yCAAyC,CAAC,CAAC;qBACvE;iBACF;qBAAM;oBACL,OAAO,eAAe,CAAC,OAAO,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;iBACjE;aACF;SACF;QAED,IAAI,CAAC,eAAe,IAAI,aAAa,EAAE,SAAS,EAAE;YAChD,MAAM,QAAQ,GAAG,CACf,MAAM,eAAQ,CAAC,qBAAqB,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI,CAAC,CAChG,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;gBACtB,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;gBAC7D,OAAO,EAAE,GAAG,OAAO,EAAE,SAAS,EAA0B,CAAC;YAC3D,CAAC,CAAC,CAAC;YAEH,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7B,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACrD,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACzC,IAAI,EAAE,IAAI,CAAC,QAAQ;oBACnB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;yBAChC,MAAM,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,EAAE,EAAE,CAAC,eAAe,KAAK,IAAI,CAAC,QAAQ,CAAC;yBAClE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC;yBACvB,IAAI,CAAC,IAAI,CAAC;oBACb,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;oBAC9C,KAAK,EAAE,IAAI,CAAC,QAAQ;iBACrB,CAAC,CAAC,CAAC;gBACJ,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC;gBACjF,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAuB;oBAC3D;wBACE,IAAI,EAAE,UAAU;wBAChB,OAAO,EAAE,uCAAuC;wBAChD,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,IAAA,sCAAoB,EAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC;qBACvD;iBACF,CAAC,CAAC;gBACH,IAAI,aAAa,EAAE,SAAS,EAAE;oBAC5B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,MAAM,CAAoB;wBACxD;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,SAAS;4BACf,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,CAAC;yBAC5D;qBACF,CAAC,CAAC;oBACH,IAAI,YAAY,CAAC,IAAI,EAAE;wBACrB,MAAM,QAAQ,GAAG,MAAM,eAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;wBACrD,MAAM,QAAQ,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;qBAC5C;iBACF;gBACD,OAAO,QAAQ,CAAC;aACjB;iBAAM;gBACL,MAAM,QAAQ,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;aACrD;SACF;IACH,CAAC;IAEM,KAAK,CAAC,kBAAkB;QAC7B,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAwB;YAC7D;gBACE,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,8CAA8C;gBACvD,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,KAAK;gBACX,QAAQ,EAAE,CAAC;gBACX,OAAO,EAAE;oBACP,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAS,CAAC,SAAS,EAAE,KAAK,EAAE,iBAAiB,EAAE;oBACjF,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAS,CAAC,aAAa,EAAE,KAAK,EAAE,iBAAiB,EAAE;oBACrF;wBACE,IAAI,EAAE,8BAA8B;wBACpC,KAAK,EAAE,iBAAS,CAAC,gBAAgB;wBACjC,KAAK,EAAE,8BAA8B;qBACtC;iBACF;aACF;SACF,CAAC,CAAC;QACH,OAAO,SAAsB,CAAC;IAChC,CAAC;;AAvKH,4CAwKC;AAvKe,qBAAI,GAAG,iBAAiB,CAAC"}
|