@salesforce/plugin-lightning-dev 5.0.23 → 5.0.25-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -8
- package/lib/commands/lightning/dev/component.d.ts +10 -2
- package/lib/commands/lightning/dev/component.js +65 -28
- package/lib/commands/lightning/dev/component.js.map +1 -1
- package/lib/shared/metaUtils.d.ts +78 -0
- package/lib/shared/metaUtils.js +187 -0
- package/lib/shared/metaUtils.js.map +1 -0
- package/lib/shared/previewUtils.d.ts +11 -0
- package/lib/shared/previewUtils.js +18 -0
- package/lib/shared/previewUtils.js.map +1 -1
- package/npm-shrinkwrap.json +1965 -1027
- package/oclif.lock +727 -444
- package/oclif.manifest.json +8 -1
- package/package.json +7 -7
package/README.md
CHANGED
|
@@ -201,7 +201,7 @@ EXAMPLES
|
|
|
201
201
|
$ sf lightning dev app --target-org myOrg --device-type ios --device-id "iPhone 15 Pro Max"
|
|
202
202
|
```
|
|
203
203
|
|
|
204
|
-
_See code: [src/commands/lightning/dev/app.ts](https://github.com/salesforcecli/plugin-lightning-dev/blob/5.0.
|
|
204
|
+
_See code: [src/commands/lightning/dev/app.ts](https://github.com/salesforcecli/plugin-lightning-dev/blob/5.0.25-alpha.0/src/commands/lightning/dev/app.ts)_
|
|
205
205
|
|
|
206
206
|
## `sf lightning dev component`
|
|
207
207
|
|
|
@@ -209,13 +209,14 @@ _See code: [src/commands/lightning/dev/app.ts](https://github.com/salesforcecli/
|
|
|
209
209
|
|
|
210
210
|
```
|
|
211
211
|
USAGE
|
|
212
|
-
$ sf lightning dev component -o <value> [--json] [--flags-dir <value>] [-n <value>] [-c]
|
|
212
|
+
$ sf lightning dev component -o <value> [--json] [--flags-dir <value>] [-n <value>] [--api-version <value>] [-c]
|
|
213
213
|
|
|
214
214
|
FLAGS
|
|
215
|
-
-c, --client-select
|
|
216
|
-
-n, --name=<value>
|
|
217
|
-
-o, --target-org=<value>
|
|
218
|
-
|
|
215
|
+
-c, --client-select Launch component preview without selecting a component
|
|
216
|
+
-n, --name=<value> Name of a component to preview.
|
|
217
|
+
-o, --target-org=<value> (required) Username or alias of the target org. Not required if the `target-org`
|
|
218
|
+
configuration variable is already set.
|
|
219
|
+
--api-version=<value> Override the api version used for api requests made by this command
|
|
219
220
|
|
|
220
221
|
GLOBAL FLAGS
|
|
221
222
|
--flags-dir=<value> Import flag values from a directory.
|
|
@@ -248,7 +249,7 @@ EXAMPLES
|
|
|
248
249
|
$ sf lightning dev component --name myComponent
|
|
249
250
|
```
|
|
250
251
|
|
|
251
|
-
_See code: [src/commands/lightning/dev/component.ts](https://github.com/salesforcecli/plugin-lightning-dev/blob/5.0.
|
|
252
|
+
_See code: [src/commands/lightning/dev/component.ts](https://github.com/salesforcecli/plugin-lightning-dev/blob/5.0.25-alpha.0/src/commands/lightning/dev/component.ts)_
|
|
252
253
|
|
|
253
254
|
## `sf lightning dev site`
|
|
254
255
|
|
|
@@ -304,6 +305,6 @@ EXAMPLES
|
|
|
304
305
|
$ sf lightning dev site --name "Partner Central" --target-org myOrg --get-latest
|
|
305
306
|
```
|
|
306
307
|
|
|
307
|
-
_See code: [src/commands/lightning/dev/site.ts](https://github.com/salesforcecli/plugin-lightning-dev/blob/5.0.
|
|
308
|
+
_See code: [src/commands/lightning/dev/site.ts](https://github.com/salesforcecli/plugin-lightning-dev/blob/5.0.25-alpha.0/src/commands/lightning/dev/site.ts)_
|
|
308
309
|
|
|
309
310
|
<!-- commandsstop -->
|
|
@@ -1,12 +1,20 @@
|
|
|
1
1
|
import { SfCommand } from '@salesforce/sf-plugins-core';
|
|
2
|
-
export
|
|
2
|
+
export type ComponentPreviewResult = {
|
|
3
|
+
instanceUrl: string;
|
|
4
|
+
ldpServerUrl: string;
|
|
5
|
+
ldpServerId: string;
|
|
6
|
+
componentName: string;
|
|
7
|
+
previewUrl: string;
|
|
8
|
+
};
|
|
9
|
+
export default class LightningDevComponent extends SfCommand<ComponentPreviewResult> {
|
|
3
10
|
static readonly summary: string;
|
|
4
11
|
static readonly description: string;
|
|
5
12
|
static readonly examples: string[];
|
|
6
13
|
static readonly flags: {
|
|
7
14
|
name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
|
+
'api-version': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
16
|
'client-select': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
9
17
|
'target-org': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
18
|
};
|
|
11
|
-
run(): Promise<
|
|
19
|
+
run(): Promise<ComponentPreviewResult>;
|
|
12
20
|
}
|
|
@@ -21,6 +21,7 @@ import { ComponentUtils } from '../../../shared/componentUtils.js';
|
|
|
21
21
|
import { PromptUtils } from '../../../shared/promptUtils.js';
|
|
22
22
|
import { PreviewUtils } from '../../../shared/previewUtils.js';
|
|
23
23
|
import { startLWCServer } from '../../../lwc-dev-server/index.js';
|
|
24
|
+
import { MetaUtils } from '../../../shared/metaUtils.js';
|
|
24
25
|
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
25
26
|
const messages = Messages.loadMessages('@salesforce/plugin-lightning-dev', 'lightning.dev.component');
|
|
26
27
|
const sharedMessages = Messages.loadMessages('@salesforce/plugin-lightning-dev', 'shared.utils');
|
|
@@ -34,6 +35,7 @@ export default class LightningDevComponent extends SfCommand {
|
|
|
34
35
|
char: 'n',
|
|
35
36
|
requiredOrDefaulted: false,
|
|
36
37
|
}),
|
|
38
|
+
'api-version': Flags.orgApiVersion(),
|
|
37
39
|
'client-select': Flags.boolean({
|
|
38
40
|
summary: messages.getMessage('flags.client-select.summary'),
|
|
39
41
|
char: 'c',
|
|
@@ -55,39 +57,58 @@ export default class LightningDevComponent extends SfCommand {
|
|
|
55
57
|
let componentName = flags['name'];
|
|
56
58
|
const clientSelect = flags['client-select'];
|
|
57
59
|
const targetOrg = flags['target-org'];
|
|
60
|
+
const apiVersion = flags['api-version'];
|
|
61
|
+
// Auto enable local dev
|
|
62
|
+
if (process.env.AUTO_ENABLE_LOCAL_DEV === 'true') {
|
|
63
|
+
try {
|
|
64
|
+
await MetaUtils.ensureLightningPreviewEnabled(targetOrg.getConnection(undefined));
|
|
65
|
+
}
|
|
66
|
+
catch (error) {
|
|
67
|
+
this.log('Error autoenabling local dev', error);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
58
70
|
const { ldpServerId, ldpServerToken } = await PreviewUtils.initializePreviewConnection(targetOrg);
|
|
59
71
|
logger.debug('Determining the next available port for Local Dev Server');
|
|
60
72
|
const serverPorts = await PreviewUtils.getNextAvailablePorts();
|
|
61
73
|
logger.debug(`Next available ports are http=${serverPorts.httpPort} , https=${serverPorts.httpsPort}`);
|
|
62
74
|
logger.debug('Determining Local Dev Server url');
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
throw new Error(messages.getMessage('error.directory'));
|
|
75
|
+
let ldpServerUrl;
|
|
76
|
+
// In Code Builder, we cannot go to localhost - we need to use a proxy URI to get to the ldpServer
|
|
77
|
+
if (process.env.SF_CONTAINER_MODE && process.env.VSCODE_PROXY_URI) {
|
|
78
|
+
logger.debug('In Code Builder Mode - using proxy URI');
|
|
79
|
+
ldpServerUrl = process.env.VSCODE_PROXY_URI.replace('https://', 'ws://').replace('{{port}}', `${serverPorts.httpPort}`);
|
|
69
80
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
catch (err) {
|
|
76
|
-
this.warn(messages.getMessage('error.component-metadata', [componentPath]));
|
|
77
|
-
}
|
|
78
|
-
// components must have meta xml to be previewed
|
|
79
|
-
if (!xml) {
|
|
80
|
-
return undefined;
|
|
81
|
-
}
|
|
82
|
-
const name = path.basename(componentPath);
|
|
83
|
-
const label = ComponentUtils.componentNameToTitleCase(name);
|
|
84
|
-
return {
|
|
85
|
-
name,
|
|
86
|
-
label: xml.LightningComponentBundle.masterLabel ?? label,
|
|
87
|
-
description: xml.LightningComponentBundle.description ?? '',
|
|
88
|
-
};
|
|
89
|
-
}))).filter((component) => !!component);
|
|
81
|
+
else {
|
|
82
|
+
// Default behavior
|
|
83
|
+
ldpServerUrl = PreviewUtils.generateWebSocketUrlForLocalDevServer(Platform.desktop, serverPorts, logger);
|
|
84
|
+
}
|
|
85
|
+
logger.debug(`Local Dev Server url is ${ldpServerUrl}`);
|
|
90
86
|
if (!clientSelect) {
|
|
87
|
+
const namespacePaths = await ComponentUtils.getNamespacePaths(project);
|
|
88
|
+
const componentPaths = await ComponentUtils.getAllComponentPaths(namespacePaths);
|
|
89
|
+
if (!componentPaths) {
|
|
90
|
+
throw new Error(messages.getMessage('error.directory'));
|
|
91
|
+
}
|
|
92
|
+
const components = (await Promise.all(componentPaths.map(async (componentPath) => {
|
|
93
|
+
let xml;
|
|
94
|
+
try {
|
|
95
|
+
xml = await ComponentUtils.getComponentMetadata(componentPath);
|
|
96
|
+
}
|
|
97
|
+
catch (err) {
|
|
98
|
+
this.warn(messages.getMessage('error.component-metadata', [componentPath]));
|
|
99
|
+
}
|
|
100
|
+
// components must have meta xml to be previewed
|
|
101
|
+
if (!xml) {
|
|
102
|
+
return undefined;
|
|
103
|
+
}
|
|
104
|
+
const name = path.basename(componentPath);
|
|
105
|
+
const label = ComponentUtils.componentNameToTitleCase(name);
|
|
106
|
+
return {
|
|
107
|
+
name,
|
|
108
|
+
label: xml.LightningComponentBundle.masterLabel ?? label,
|
|
109
|
+
description: xml.LightningComponentBundle.description ?? '',
|
|
110
|
+
};
|
|
111
|
+
}))).filter((component) => !!component);
|
|
91
112
|
if (componentName) {
|
|
92
113
|
// validate that the component exists before launching the server
|
|
93
114
|
const match = components.find((component) => componentName === component.name || componentName === component.label);
|
|
@@ -107,8 +128,24 @@ export default class LightningDevComponent extends SfCommand {
|
|
|
107
128
|
await startLWCServer(logger, sfdxProjectRootPath, ldpServerToken, Platform.desktop, serverPorts);
|
|
108
129
|
const targetOrgArg = PreviewUtils.getTargetOrgFromArguments(this.argv);
|
|
109
130
|
const launchArguments = PreviewUtils.generateComponentPreviewLaunchArguments(ldpServerUrl, ldpServerId, componentName, targetOrgArg);
|
|
110
|
-
//
|
|
111
|
-
|
|
131
|
+
// Construct and log the full URL that will be opened
|
|
132
|
+
const connection = targetOrg.getConnection(apiVersion);
|
|
133
|
+
// strip trailing slashes
|
|
134
|
+
const instanceUrl = connection.instanceUrl.replace(/\/$/, '');
|
|
135
|
+
const previewUrl = PreviewUtils.generateComponentPreviewUrl(instanceUrl, ldpServerUrl, ldpServerId, componentName, false);
|
|
136
|
+
// Prepare the result for JSON output
|
|
137
|
+
const result = {
|
|
138
|
+
instanceUrl,
|
|
139
|
+
ldpServerUrl,
|
|
140
|
+
ldpServerId,
|
|
141
|
+
componentName: componentName ?? '',
|
|
142
|
+
previewUrl,
|
|
143
|
+
};
|
|
144
|
+
// Open the browser and navigate to the right page (unless OPEN_BROWSER is set to true)
|
|
145
|
+
if (process.env.OPEN_BROWSER !== 'false') {
|
|
146
|
+
await this.config.runCommand('org:open', launchArguments);
|
|
147
|
+
}
|
|
148
|
+
return result;
|
|
112
149
|
}
|
|
113
150
|
}
|
|
114
151
|
//# sourceMappingURL=component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/commands/lightning/dev/component.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/commands/lightning/dev/component.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEzD,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,kCAAkC,EAAE,yBAAyB,CAAC,CAAC;AACtG,MAAM,cAAc,GAAG,QAAQ,CAAC,YAAY,CAAC,kCAAkC,EAAE,cAAc,CAAC,CAAC;AAUjG,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,SAAiC;IAC3E,MAAM,CAAU,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACzD,MAAM,CAAU,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IACjE,MAAM,CAAU,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAE5D,MAAM,CAAU,KAAK,GAAG;QAC7B,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;YACjB,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC;YAClD,IAAI,EAAE,GAAG;YACT,mBAAmB,EAAE,KAAK;SAC3B,CAAC;QACF,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE;QACpC,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC;YAC7B,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,6BAA6B,CAAC;YAC3D,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,KAAK;SACf,CAAC;QACF,YAAY,EAAE,KAAK,CAAC,WAAW,EAAE;KAClC,CAAC;IAEK,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;QAE1C,IAAI,mBAAmB,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,mBAAmB,GAAG,MAAM,SAAS,CAAC,kBAAkB,EAAE,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,OAAO,CAAC,MAAM,CACnB,IAAI,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAE,KAAe,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAC5F,CAAC;QACJ,CAAC;QAED,IAAI,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAClC,MAAM,YAAY,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;QACtC,MAAM,UAAU,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;QAExC,wBAAwB;QACxB,IAAI,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,MAAM,EAAE,CAAC;YACjD,IAAI,CAAC;gBACH,MAAM,SAAS,CAAC,6BAA6B,CAAC,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;YACpF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,GAAG,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QAED,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,MAAM,YAAY,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC;QAElG,MAAM,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;QACzE,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,qBAAqB,EAAE,CAAC;QAC/D,MAAM,CAAC,KAAK,CAAC,iCAAiC,WAAW,CAAC,QAAQ,YAAY,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC;QAEvG,MAAM,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACjD,IAAI,YAAY,CAAC;QAEjB,kGAAkG;QAClG,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAClE,MAAM,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;YACvD,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,OAAO,CAC9E,UAAU,EACV,GAAG,WAAW,CAAC,QAAQ,EAAE,CAC1B,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,mBAAmB;YACnB,YAAY,GAAG,YAAY,CAAC,qCAAqC,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QAC3G,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,2BAA2B,YAAY,EAAE,CAAC,CAAC;QAExD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YACvE,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;YACjF,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC1D,CAAC;YAED,MAAM,UAAU,GAAG,CACjB,MAAM,OAAO,CAAC,GAAG,CACf,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,aAAa,EAAE,EAAE;gBACzC,IAAI,GAAG,CAAC;gBAER,IAAI,CAAC;oBACH,GAAG,GAAG,MAAM,cAAc,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC;gBACjE,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,0BAA0B,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;gBAC9E,CAAC;gBAED,gDAAgD;gBAChD,IAAI,CAAC,GAAG,EAAE,CAAC;oBACT,OAAO,SAAS,CAAC;gBACnB,CAAC;gBAED,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;gBAC1C,MAAM,KAAK,GAAG,cAAc,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;gBAE5D,OAAO;oBACL,IAAI;oBACJ,KAAK,EAAE,GAAG,CAAC,wBAAwB,CAAC,WAAW,IAAI,KAAK;oBACxD,WAAW,EAAE,GAAG,CAAC,wBAAwB,CAAC,WAAW,IAAI,EAAE;iBAC5D,CAAC;YACJ,CAAC,CAAC,CACH,CACF,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAErC,IAAI,aAAa,EAAE,CAAC;gBAClB,iEAAiE;gBACjE,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAC3B,CAAC,SAAS,EAAE,EAAE,CAAC,aAAa,KAAK,SAAS,CAAC,IAAI,IAAI,aAAa,KAAK,SAAS,CAAC,KAAK,CACrF,CAAC;gBACF,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,2BAA2B,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;gBACrF,CAAC;gBAED,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,qDAAqD;gBACrD,aAAa,GAAG,MAAM,WAAW,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC;gBAC1E,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBAC1D,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,cAAc,CAAC,MAAM,EAAE,mBAAmB,EAAE,cAAc,EAAE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAEjG,MAAM,YAAY,GAAG,YAAY,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvE,MAAM,eAAe,GAAG,YAAY,CAAC,uCAAuC,CAC1E,YAAY,EACZ,WAAW,EACX,aAAa,EACb,YAAY,CACb,CAAC;QAEF,qDAAqD;QACrD,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAEvD,yBAAyB;QACzB,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAE9D,MAAM,UAAU,GAAG,YAAY,CAAC,2BAA2B,CACzD,WAAW,EACX,YAAY,EACZ,WAAW,EACX,aAAa,EACb,KAAK,CACN,CAAC;QAEF,qCAAqC;QACrC,MAAM,MAAM,GAA2B;YACrC,WAAW;YACX,YAAY;YACZ,WAAW;YACX,aAAa,EAAE,aAAa,IAAI,EAAE;YAClC,UAAU;SACX,CAAC;QAEF,uFAAuF;QACvF,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,OAAO,EAAE,CAAC;YACzC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QAC5D,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { Connection } from '@salesforce/core';
|
|
2
|
+
type LightningExperienceSettingsMetadata = {
|
|
3
|
+
[key: string]: unknown;
|
|
4
|
+
fullName?: string;
|
|
5
|
+
enableLightningPreviewPref?: string | boolean;
|
|
6
|
+
};
|
|
7
|
+
type MyDomainSettingsMetadata = {
|
|
8
|
+
[key: string]: unknown;
|
|
9
|
+
fullName?: string;
|
|
10
|
+
isFirstPartyCookieUseRequired?: string | boolean;
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Utility class for managing Salesforce metadata settings related to Lightning Development.
|
|
14
|
+
*/
|
|
15
|
+
export declare class MetaUtils {
|
|
16
|
+
private static logger;
|
|
17
|
+
/**
|
|
18
|
+
* Retrieves the Lightning Experience Settings metadata from the org.
|
|
19
|
+
*
|
|
20
|
+
* @param connection the connection to the org
|
|
21
|
+
* @returns LightningExperienceSettingsMetadata object containing the settings
|
|
22
|
+
* @throws Error if unable to retrieve the metadata
|
|
23
|
+
*/
|
|
24
|
+
static getLightningExperienceSettings(connection: Connection): Promise<LightningExperienceSettingsMetadata>;
|
|
25
|
+
/**
|
|
26
|
+
* Checks if Lightning Preview (Local Dev) is enabled for the org.
|
|
27
|
+
*
|
|
28
|
+
* @param connection the connection to the org
|
|
29
|
+
* @returns boolean indicating whether Lightning Preview is enabled
|
|
30
|
+
*/
|
|
31
|
+
static isLightningPreviewEnabled(connection: Connection): Promise<boolean>;
|
|
32
|
+
/**
|
|
33
|
+
* Enables or disables Lightning Preview (Local Dev) for the org by updating the metadata.
|
|
34
|
+
*
|
|
35
|
+
* @param connection the connection to the org
|
|
36
|
+
* @param enable boolean indicating whether to enable (true) or disable (false) Lightning Preview
|
|
37
|
+
* @throws Error if the metadata update fails
|
|
38
|
+
*/
|
|
39
|
+
static setLightningPreviewEnabled(connection: Connection, enable: boolean): Promise<void>;
|
|
40
|
+
/**
|
|
41
|
+
* Retrieves the My Domain Settings metadata from the org.
|
|
42
|
+
*
|
|
43
|
+
* @param connection the connection to the org
|
|
44
|
+
* @returns MyDomainSettingsMetadata object containing the settings
|
|
45
|
+
* @throws Error if unable to retrieve the metadata
|
|
46
|
+
*/
|
|
47
|
+
static getMyDomainSettings(connection: Connection): Promise<MyDomainSettingsMetadata>;
|
|
48
|
+
/**
|
|
49
|
+
* Checks if first-party cookies are required for the org.
|
|
50
|
+
*
|
|
51
|
+
* @param connection the connection to the org
|
|
52
|
+
* @returns boolean indicating whether first-party cookies are required
|
|
53
|
+
*/
|
|
54
|
+
static isFirstPartyCookieRequired(connection: Connection): Promise<boolean>;
|
|
55
|
+
/**
|
|
56
|
+
* Updates the My Domain setting that controls whether first-party cookies are required.
|
|
57
|
+
*
|
|
58
|
+
* @param connection the connection to the org
|
|
59
|
+
* @param requireFirstPartyCookies boolean indicating whether to require first-party cookies
|
|
60
|
+
* @throws Error if the metadata update fails
|
|
61
|
+
*/
|
|
62
|
+
static setMyDomainFirstPartyCookieRequirement(connection: Connection, requireFirstPartyCookies: boolean): Promise<void>;
|
|
63
|
+
/**
|
|
64
|
+
* Ensures Lightning Preview is enabled for the org. If it's not enabled, this method will enable it.
|
|
65
|
+
*
|
|
66
|
+
* @param connection the connection to the org
|
|
67
|
+
* @returns boolean indicating whether Lightning Preview was already enabled (true) or had to be enabled (false)
|
|
68
|
+
*/
|
|
69
|
+
static ensureLightningPreviewEnabled(connection: Connection): Promise<boolean>;
|
|
70
|
+
/**
|
|
71
|
+
* Ensures first-party cookies are not required for the org. If they are required, this method will disable the requirement.
|
|
72
|
+
*
|
|
73
|
+
* @param connection the connection to the org
|
|
74
|
+
* @returns boolean indicating whether first-party cookies were already not required (true) or had to be disabled (false)
|
|
75
|
+
*/
|
|
76
|
+
static ensureFirstPartyCookiesNotRequired(connection: Connection): Promise<boolean>;
|
|
77
|
+
}
|
|
78
|
+
export {};
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025, Salesforce, Inc.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import { Logger } from '@salesforce/core';
|
|
17
|
+
/**
|
|
18
|
+
* Utility class for managing Salesforce metadata settings related to Lightning Development.
|
|
19
|
+
*/
|
|
20
|
+
export class MetaUtils {
|
|
21
|
+
static logger = Logger.childFromRoot('metaUtils');
|
|
22
|
+
/**
|
|
23
|
+
* Retrieves the Lightning Experience Settings metadata from the org.
|
|
24
|
+
*
|
|
25
|
+
* @param connection the connection to the org
|
|
26
|
+
* @returns LightningExperienceSettingsMetadata object containing the settings
|
|
27
|
+
* @throws Error if unable to retrieve the metadata
|
|
28
|
+
*/
|
|
29
|
+
static async getLightningExperienceSettings(connection) {
|
|
30
|
+
this.logger.debug('Retrieving Lightning Experience Settings metadata');
|
|
31
|
+
const metadata = await connection.metadata.read('LightningExperienceSettings', 'enableLightningPreviewPref');
|
|
32
|
+
if (!metadata) {
|
|
33
|
+
throw new Error('Unable to retrieve Lightning Experience Settings metadata.');
|
|
34
|
+
}
|
|
35
|
+
if (Array.isArray(metadata)) {
|
|
36
|
+
if (metadata.length === 0) {
|
|
37
|
+
throw new Error('Lightning Experience Settings metadata response was empty.');
|
|
38
|
+
}
|
|
39
|
+
return metadata[0];
|
|
40
|
+
}
|
|
41
|
+
return metadata;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Checks if Lightning Preview (Local Dev) is enabled for the org.
|
|
45
|
+
*
|
|
46
|
+
* @param connection the connection to the org
|
|
47
|
+
* @returns boolean indicating whether Lightning Preview is enabled
|
|
48
|
+
*/
|
|
49
|
+
static async isLightningPreviewEnabled(connection) {
|
|
50
|
+
try {
|
|
51
|
+
const settings = await this.getLightningExperienceSettings(connection);
|
|
52
|
+
const flagValue = settings.enableLightningPreviewPref ?? 'false';
|
|
53
|
+
const enabled = String(flagValue).toLowerCase().trim() === 'true';
|
|
54
|
+
this.logger.debug(`Lightning Preview enabled: ${enabled}`);
|
|
55
|
+
return enabled;
|
|
56
|
+
}
|
|
57
|
+
catch (error) {
|
|
58
|
+
this.logger.warn('Error checking Lightning Preview status, assuming disabled:', error);
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Enables or disables Lightning Preview (Local Dev) for the org by updating the metadata.
|
|
64
|
+
*
|
|
65
|
+
* @param connection the connection to the org
|
|
66
|
+
* @param enable boolean indicating whether to enable (true) or disable (false) Lightning Preview
|
|
67
|
+
* @throws Error if the metadata update fails
|
|
68
|
+
*/
|
|
69
|
+
static async setLightningPreviewEnabled(connection, enable) {
|
|
70
|
+
this.logger.debug(`Setting Lightning Preview enabled to: ${enable}`);
|
|
71
|
+
const updateResult = await connection.metadata.update('LightningExperienceSettings', {
|
|
72
|
+
fullName: 'enableLightningPreviewPref',
|
|
73
|
+
enableLightningPreviewPref: enable ? 'true' : 'false',
|
|
74
|
+
});
|
|
75
|
+
const results = Array.isArray(updateResult) ? updateResult : [updateResult];
|
|
76
|
+
const typedResults = results;
|
|
77
|
+
const errors = typedResults.filter((result) => !result.success);
|
|
78
|
+
if (errors.length > 0) {
|
|
79
|
+
const message = errors
|
|
80
|
+
.flatMap((result) => (Array.isArray(result.errors) ? result.errors : result.errors ? [result.errors] : []))
|
|
81
|
+
.filter((error) => Boolean(error))
|
|
82
|
+
.map((error) => error.message)
|
|
83
|
+
.join(' ');
|
|
84
|
+
throw new Error(message || 'Failed to update Lightning Preview setting.');
|
|
85
|
+
}
|
|
86
|
+
this.logger.debug('Successfully updated Lightning Preview setting');
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Retrieves the My Domain Settings metadata from the org.
|
|
90
|
+
*
|
|
91
|
+
* @param connection the connection to the org
|
|
92
|
+
* @returns MyDomainSettingsMetadata object containing the settings
|
|
93
|
+
* @throws Error if unable to retrieve the metadata
|
|
94
|
+
*/
|
|
95
|
+
static async getMyDomainSettings(connection) {
|
|
96
|
+
this.logger.debug('Retrieving My Domain Settings metadata');
|
|
97
|
+
const metadata = await connection.metadata.read('MyDomainSettings', 'MyDomain');
|
|
98
|
+
if (!metadata) {
|
|
99
|
+
throw new Error('Unable to retrieve My Domain settings metadata.');
|
|
100
|
+
}
|
|
101
|
+
if (Array.isArray(metadata)) {
|
|
102
|
+
if (metadata.length === 0) {
|
|
103
|
+
throw new Error('My Domain settings metadata response was empty.');
|
|
104
|
+
}
|
|
105
|
+
return metadata[0];
|
|
106
|
+
}
|
|
107
|
+
return metadata;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Checks if first-party cookies are required for the org.
|
|
111
|
+
*
|
|
112
|
+
* @param connection the connection to the org
|
|
113
|
+
* @returns boolean indicating whether first-party cookies are required
|
|
114
|
+
*/
|
|
115
|
+
static async isFirstPartyCookieRequired(connection) {
|
|
116
|
+
try {
|
|
117
|
+
const settings = await this.getMyDomainSettings(connection);
|
|
118
|
+
const flagValue = settings.isFirstPartyCookieUseRequired ?? 'false';
|
|
119
|
+
const required = String(flagValue).toLowerCase().trim() === 'true';
|
|
120
|
+
this.logger.debug(`First-party cookie required: ${required}`);
|
|
121
|
+
return required;
|
|
122
|
+
}
|
|
123
|
+
catch (error) {
|
|
124
|
+
this.logger.warn('Error checking first-party cookie requirement, assuming not required:', error);
|
|
125
|
+
return false;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Updates the My Domain setting that controls whether first-party cookies are required.
|
|
130
|
+
*
|
|
131
|
+
* @param connection the connection to the org
|
|
132
|
+
* @param requireFirstPartyCookies boolean indicating whether to require first-party cookies
|
|
133
|
+
* @throws Error if the metadata update fails
|
|
134
|
+
*/
|
|
135
|
+
static async setMyDomainFirstPartyCookieRequirement(connection, requireFirstPartyCookies) {
|
|
136
|
+
this.logger.debug(`Setting first-party cookie requirement to: ${requireFirstPartyCookies}`);
|
|
137
|
+
const updateResult = await connection.metadata.update('MyDomainSettings', {
|
|
138
|
+
fullName: 'MyDomain',
|
|
139
|
+
isFirstPartyCookieUseRequired: requireFirstPartyCookies ? 'true' : 'false',
|
|
140
|
+
});
|
|
141
|
+
const results = Array.isArray(updateResult) ? updateResult : [updateResult];
|
|
142
|
+
const typedResults = results;
|
|
143
|
+
const errors = typedResults.filter((result) => !result.success);
|
|
144
|
+
if (errors.length > 0) {
|
|
145
|
+
const message = errors
|
|
146
|
+
.flatMap((result) => (Array.isArray(result.errors) ? result.errors : result.errors ? [result.errors] : []))
|
|
147
|
+
.filter((error) => Boolean(error))
|
|
148
|
+
.map((error) => error.message)
|
|
149
|
+
.join(' ');
|
|
150
|
+
throw new Error(message || 'Failed to update My Domain first-party cookie requirement.');
|
|
151
|
+
}
|
|
152
|
+
this.logger.debug('Successfully updated first-party cookie requirement');
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Ensures Lightning Preview is enabled for the org. If it's not enabled, this method will enable it.
|
|
156
|
+
*
|
|
157
|
+
* @param connection the connection to the org
|
|
158
|
+
* @returns boolean indicating whether Lightning Preview was already enabled (true) or had to be enabled (false)
|
|
159
|
+
*/
|
|
160
|
+
static async ensureLightningPreviewEnabled(connection) {
|
|
161
|
+
const isEnabled = await this.isLightningPreviewEnabled(connection);
|
|
162
|
+
if (!isEnabled) {
|
|
163
|
+
this.logger.info('Lightning Preview is not enabled. Enabling it now...');
|
|
164
|
+
await this.setLightningPreviewEnabled(connection, true);
|
|
165
|
+
return false;
|
|
166
|
+
}
|
|
167
|
+
this.logger.debug('Lightning Preview is already enabled');
|
|
168
|
+
return true;
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Ensures first-party cookies are not required for the org. If they are required, this method will disable the requirement.
|
|
172
|
+
*
|
|
173
|
+
* @param connection the connection to the org
|
|
174
|
+
* @returns boolean indicating whether first-party cookies were already not required (true) or had to be disabled (false)
|
|
175
|
+
*/
|
|
176
|
+
static async ensureFirstPartyCookiesNotRequired(connection) {
|
|
177
|
+
const isRequired = await this.isFirstPartyCookieRequired(connection);
|
|
178
|
+
if (isRequired) {
|
|
179
|
+
this.logger.info('First-party cookies are required. Disabling requirement...');
|
|
180
|
+
await this.setMyDomainFirstPartyCookieRequirement(connection, false);
|
|
181
|
+
return false;
|
|
182
|
+
}
|
|
183
|
+
this.logger.debug('First-party cookies are not required');
|
|
184
|
+
return true;
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
//# sourceMappingURL=metaUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metaUtils.js","sourceRoot":"","sources":["../../src/shared/metaUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -93,6 +93,17 @@ export declare class PreviewUtils {
|
|
|
93
93
|
* @returns Array of arguments to be used by Org:Open command for launching the component preview
|
|
94
94
|
*/
|
|
95
95
|
static generateComponentPreviewLaunchArguments(ldpServerUrl: string, ldpServerId: string, componentName?: string, targetOrg?: string): string[];
|
|
96
|
+
/**
|
|
97
|
+
* Generates the full URL for a component preview.
|
|
98
|
+
*
|
|
99
|
+
* @param instanceUrl The URL of the Salesforce instance
|
|
100
|
+
* @param ldpServerUrl The URL for the local dev server
|
|
101
|
+
* @param ldpServerId Record ID for the identity token
|
|
102
|
+
* @param componentName The name of the component to preview
|
|
103
|
+
* @param encodePath Whether to encode the path
|
|
104
|
+
* @returns The full URL for the component preview
|
|
105
|
+
*/
|
|
106
|
+
static generateComponentPreviewUrl(instanceUrl: string, ldpServerUrl: string, ldpServerId: string, componentName?: string, encodePath?: boolean): string;
|
|
96
107
|
/**
|
|
97
108
|
* Generates the proper set of arguments to be used for launching a mobile app with custom launch arguments.
|
|
98
109
|
*
|
|
@@ -187,6 +187,24 @@ export class PreviewUtils {
|
|
|
187
187
|
}
|
|
188
188
|
return launchArguments;
|
|
189
189
|
}
|
|
190
|
+
/**
|
|
191
|
+
* Generates the full URL for a component preview.
|
|
192
|
+
*
|
|
193
|
+
* @param instanceUrl The URL of the Salesforce instance
|
|
194
|
+
* @param ldpServerUrl The URL for the local dev server
|
|
195
|
+
* @param ldpServerId Record ID for the identity token
|
|
196
|
+
* @param componentName The name of the component to preview
|
|
197
|
+
* @param encodePath Whether to encode the path
|
|
198
|
+
* @returns The full URL for the component preview
|
|
199
|
+
*/
|
|
200
|
+
static generateComponentPreviewUrl(instanceUrl, ldpServerUrl, ldpServerId, componentName, encodePath = false) {
|
|
201
|
+
let url = `${instanceUrl}/lwr/application/e/devpreview/ai/${encodePath ? encodeURIComponent('localdev%2Fpreview') : 'localdev%2Fpreview'}?ldpServerUrl=${ldpServerUrl}&ldpServerId=${ldpServerId}`;
|
|
202
|
+
if (componentName) {
|
|
203
|
+
// TODO: support other namespaces
|
|
204
|
+
url += `&specifier=c/${componentName}`;
|
|
205
|
+
}
|
|
206
|
+
return url;
|
|
207
|
+
}
|
|
190
208
|
/**
|
|
191
209
|
* Generates the proper set of arguments to be used for launching a mobile app with custom launch arguments.
|
|
192
210
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"previewUtils.js","sourceRoot":"","sources":["../../src/shared/previewUtils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"previewUtils.js","sourceRoot":"","sources":["../../src/shared/previewUtils.ts"],"names":[],"mappings":"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"}
|