@salesforce/plugin-lightning-dev 5.0.24 → 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 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.24/src/commands/lightning/dev/app.ts)_
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 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.
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.24/src/commands/lightning/dev/component.ts)_
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.24/src/commands/lightning/dev/site.ts)_
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 default class LightningDevComponent extends SfCommand<void> {
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<void>;
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
- const ldpServerUrl = PreviewUtils.generateWebSocketUrlForLocalDevServer(Platform.desktop, serverPorts, logger);
64
- logger.debug(`Local Dev Server url is ${ldpServerUrl}`);
65
- const namespacePaths = await ComponentUtils.getNamespacePaths(project);
66
- const componentPaths = await ComponentUtils.getAllComponentPaths(namespacePaths);
67
- if (!componentPaths) {
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
- const components = (await Promise.all(componentPaths.map(async (componentPath) => {
71
- let xml;
72
- try {
73
- xml = await ComponentUtils.getComponentMetadata(componentPath);
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
- // Open the browser and navigate to the right page
111
- await this.config.runCommand('org:open', launchArguments);
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":"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"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/commands/lightning/dev/component.ts"],"names":[],"mappings":"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"}
@@ -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":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAc,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAoBtD;;GAEG;AACH,MAAM,OAAO,SAAS;IACZ,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IAE1D;;;;;;OAMG;IACI,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAChD,UAAsB;QAEtB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;QAEvE,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,6BAA6B,EAAE,4BAA4B,CAAC,CAAC;QAE7G,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAChF,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;YAChF,CAAC;YACD,OAAO,QAAQ,CAAC,CAAC,CAAwC,CAAC;QAC5D,CAAC;QAED,OAAO,QAA+C,CAAC;IACzD,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,UAAsB;QAClE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,UAAU,CAAC,CAAC;YACvE,MAAM,SAAS,GAAG,QAAQ,CAAC,0BAA0B,IAAI,OAAO,CAAC;YACjE,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC;YAClE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,OAAO,EAAE,CAAC,CAAC;YAC3D,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6DAA6D,EAAE,KAAK,CAAC,CAAC;YACvF,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,UAAsB,EAAE,MAAe;QACpF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yCAAyC,MAAM,EAAE,CAAC,CAAC;QAErE,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,6BAA6B,EAAE;YACnF,QAAQ,EAAE,4BAA4B;YACtC,0BAA0B,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;SACtD,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QAC5E,MAAM,YAAY,GAAG,OAAiC,CAAC;QACvD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEhE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,MAAM;iBACnB,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;iBAC1G,MAAM,CAAC,CAAC,KAAK,EAAgC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;iBAC/D,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;iBAC7B,IAAI,CAAC,GAAG,CAAC,CAAC;YAEb,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,6CAA6C,CAAC,CAAC;QAC5E,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACtE,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,UAAsB;QAC5D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAE5D,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;QAEhF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;YACrE,CAAC;YACD,OAAO,QAAQ,CAAC,CAAC,CAA6B,CAAC;QACjD,CAAC;QAED,OAAO,QAAoC,CAAC;IAC9C,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,UAAsB;QACnE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;YAC5D,MAAM,SAAS,GAAG,QAAQ,CAAC,6BAA6B,IAAI,OAAO,CAAC;YACpE,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC;YACnE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAC;YAC9D,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uEAAuE,EAAE,KAAK,CAAC,CAAC;YACjG,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,KAAK,CAAC,sCAAsC,CACxD,UAAsB,EACtB,wBAAiC;QAEjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,wBAAwB,EAAE,CAAC,CAAC;QAE5F,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,kBAAkB,EAAE;YACxE,QAAQ,EAAE,UAAU;YACpB,6BAA6B,EAAE,wBAAwB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;SAC3E,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QAC5E,MAAM,YAAY,GAAG,OAAiC,CAAC;QACvD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEhE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,MAAM;iBACnB,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;iBAC1G,MAAM,CAAC,CAAC,KAAK,EAAgC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;iBAC/D,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;iBAC7B,IAAI,CAAC,GAAG,CAAC,CAAC;YAEb,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,4DAA4D,CAAC,CAAC;QAC3F,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,UAAsB;QACtE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;QAEnE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;YACzE,MAAM,IAAI,CAAC,0BAA0B,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YACxD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,kCAAkC,CAAC,UAAsB;QAC3E,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAAC;QAErE,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;YAC/E,MAAM,IAAI,CAAC,sCAAsC,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACrE,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC"}
@@ -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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"}