@salesforce/plugin-lightning-dev 1.3.0 → 1.5.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
@@ -200,7 +200,7 @@ EXAMPLES
200
200
  $ sf lightning dev app --target-org myOrg --device-type ios --device-id "iPhone 15 Pro Max"
201
201
  ```
202
202
 
203
- _See code: [src/commands/lightning/dev/app.ts](https://github.com/salesforcecli/plugin-lightning-dev/blob/1.3.0/src/commands/lightning/dev/app.ts)_
203
+ _See code: [src/commands/lightning/dev/app.ts](https://github.com/salesforcecli/plugin-lightning-dev/blob/1.5.0/src/commands/lightning/dev/app.ts)_
204
204
 
205
205
  ## `sf lightning dev site`
206
206
 
@@ -244,6 +244,6 @@ EXAMPLES
244
244
  $ sf lightning dev site --name "Partner Central" --target-org myOrg
245
245
  ```
246
246
 
247
- _See code: [src/commands/lightning/dev/site.ts](https://github.com/salesforcecli/plugin-lightning-dev/blob/1.3.0/src/commands/lightning/dev/site.ts)_
247
+ _See code: [src/commands/lightning/dev/site.ts](https://github.com/salesforcecli/plugin-lightning-dev/blob/1.5.0/src/commands/lightning/dev/site.ts)_
248
248
 
249
249
  <!-- commandsstop -->
@@ -1,4 +1,4 @@
1
- import { AndroidAppPreviewConfig, AndroidVirtualDevice, IOSAppPreviewConfig, IOSSimulatorDevice, Platform } from '@salesforce/lwc-dev-mobile-core';
1
+ import { AndroidAppPreviewConfig, IOSAppPreviewConfig, Platform } from '@salesforce/lwc-dev-mobile-core';
2
2
  import { SfCommand } from '@salesforce/sf-plugins-core';
3
3
  export declare const iOSSalesforceAppPreviewConfig: IOSAppPreviewConfig;
4
4
  export declare const androidSalesforceAppPreviewConfig: AndroidAppPreviewConfig;
@@ -13,8 +13,6 @@ export default class LightningDevApp extends SfCommand<void> {
13
13
  'device-type': import("@oclif/core/interfaces").OptionFlag<Platform, import("@oclif/core/interfaces").CustomOptions>;
14
14
  'device-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
15
15
  };
16
- private static waitForKeyPress;
17
- waitForUserToInstallCert(platform: Platform.ios | Platform.android, device: IOSSimulatorDevice | AndroidVirtualDevice, certFilePath: string): Promise<void>;
18
16
  run(): Promise<void>;
19
17
  private desktopPreview;
20
18
  private mobilePreview;
@@ -5,17 +5,16 @@
5
5
  * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
6
6
  */
7
7
  import path from 'node:path';
8
- import * as readline from 'node:readline';
9
8
  import { Logger, Messages, SfProject } from '@salesforce/core';
10
- import { Setup as LwcDevMobileCoreSetup, Platform, } from '@salesforce/lwc-dev-mobile-core';
9
+ import { BootMode, CommonUtils, Setup as LwcDevMobileCoreSetup, Platform, } from '@salesforce/lwc-dev-mobile-core';
11
10
  import { Flags, SfCommand } from '@salesforce/sf-plugins-core';
12
- import chalk from 'chalk';
13
11
  import { OrgUtils } from '../../../shared/orgUtils.js';
14
12
  import { startLWCServer } from '../../../lwc-dev-server/index.js';
15
13
  import { PreviewUtils } from '../../../shared/previewUtils.js';
16
14
  import { ConfigUtils } from '../../../shared/configUtils.js';
17
15
  Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
18
16
  const messages = Messages.loadMessages('@salesforce/plugin-lightning-dev', 'lightning.dev.app');
17
+ const sharedMessages = Messages.loadMessages('@salesforce/plugin-lightning-dev', 'shared.utils');
19
18
  export const iOSSalesforceAppPreviewConfig = {
20
19
  name: 'Salesforce Mobile App',
21
20
  id: 'com.salesforce.chatter',
@@ -62,74 +61,6 @@ export default class LightningDevApp extends SfCommand {
62
61
  char: 'i',
63
62
  }),
64
63
  };
65
- static async waitForKeyPress() {
66
- return new Promise((resolve) => {
67
- const rl = readline.createInterface({
68
- input: process.stdin,
69
- output: process.stdout,
70
- });
71
- // eslint-disable-next-line no-console
72
- console.log(`\n${messages.getMessage('certificate.waiting')}\n`);
73
- process.stdin.setRawMode(true);
74
- process.stdin.resume();
75
- process.stdin.once('data', () => {
76
- process.stdin.setRawMode(false);
77
- process.stdin.pause();
78
- rl.close();
79
- resolve();
80
- });
81
- });
82
- }
83
- async waitForUserToInstallCert(platform, device, certFilePath) {
84
- // eslint-disable-next-line no-console
85
- console.log(`\n${messages.getMessage('certificate.installation.notice')}`);
86
- const skipInstall = await this.confirm({
87
- message: messages.getMessage('certificate.installation.skip.message'),
88
- defaultAnswer: true,
89
- ms: maxInt32, // simulate no timeout and wait for user to answer
90
- });
91
- if (skipInstall) {
92
- return;
93
- }
94
- let installationSteps = '';
95
- if (platform === Platform.ios) {
96
- installationSteps = messages.getMessage('certificate.installation.steps.ios');
97
- }
98
- else {
99
- const apiLevel = device.apiLevel.toString();
100
- let subStepMessageKey = '';
101
- if (apiLevel.startsWith('24.') || apiLevel.startsWith('25.')) {
102
- subStepMessageKey = 'certificate.installation.steps.android.nav-target-api-24-25';
103
- }
104
- else if (apiLevel.startsWith('26.') || apiLevel.startsWith('27.')) {
105
- subStepMessageKey = 'certificate.installation.steps.android.nav-target-api-26-27';
106
- }
107
- else if (apiLevel.startsWith('28.')) {
108
- subStepMessageKey = 'certificate.installation.steps.android.nav-target-api-28';
109
- }
110
- else if (apiLevel.startsWith('29.')) {
111
- subStepMessageKey = 'certificate.installation.steps.android.nav-target-api-29';
112
- }
113
- else if (apiLevel.startsWith('30.') || apiLevel.startsWith('31.') || apiLevel.startsWith('32.')) {
114
- subStepMessageKey = 'certificate.installation.steps.android.nav-target-api-30-32';
115
- }
116
- else if (apiLevel.startsWith('33.')) {
117
- subStepMessageKey = 'certificate.installation.steps.android.nav-target-api-33';
118
- }
119
- else {
120
- subStepMessageKey = 'certificate.installation.steps.android.nav-target-api-34-up';
121
- }
122
- installationSteps = messages.getMessage('certificate.installation.steps.android', [
123
- messages.getMessage(subStepMessageKey),
124
- ]);
125
- }
126
- let message = messages.getMessage('certificate.installation.description', [certFilePath, installationSteps]);
127
- // use chalk to format every substring wrapped in `` so they would stand out when printed on screen
128
- message = message.replace(/`([^`]*)`/g, chalk.yellow('$1'));
129
- // eslint-disable-next-line no-console
130
- console.log(message);
131
- return LightningDevApp.waitForKeyPress();
132
- }
133
64
  async run() {
134
65
  const { flags } = await this.parse(LightningDevApp);
135
66
  const logger = await Logger.child(this.ctor.name);
@@ -150,6 +81,10 @@ export default class LightningDevApp extends SfCommand {
150
81
  if (!username) {
151
82
  return Promise.reject(new Error(messages.getMessage('error.username')));
152
83
  }
84
+ const localDevEnabled = await OrgUtils.isLocalDevEnabled(connection);
85
+ if (!localDevEnabled) {
86
+ return Promise.reject(new Error(sharedMessages.getMessage('error.localdev.not.enabled')));
87
+ }
153
88
  const tokenService = new AppServerIdentityTokenService(connection);
154
89
  const token = await ConfigUtils.getOrCreateIdentityToken(username, tokenService);
155
90
  let appId;
@@ -218,21 +153,46 @@ export default class LightningDevApp extends SfCommand {
218
153
  if (!device) {
219
154
  throw new Error(messages.getMessage('error.device.notfound', [deviceId ?? '']));
220
155
  }
221
- // Boot the device if not already booted
156
+ if (device?.isPlayStore === true) {
157
+ throw new Error(messages.getMessage('error.device.google.play', [device.id]));
158
+ }
159
+ // Boot the device. If device is already booted then this will immediately return anyway.
222
160
  this.spinner.start(messages.getMessage('spinner.device.boot', [device.toString()]));
223
- const resolvedDeviceId = platform === Platform.ios ? device.udid : device.name;
224
- const emulatorPort = await PreviewUtils.bootMobileDevice(platform, resolvedDeviceId, logger);
161
+ if (platform === Platform.ios) {
162
+ await device.boot();
163
+ }
164
+ else {
165
+ // Prefer to boot the AVD with system writable. If it is already booted then calling boot()
166
+ // will have no effect. But if an AVD is not already booted then this will perform a cold
167
+ // boot with writable system. This way later on when we want to install cert on the device,
168
+ // we won't need to shut it down and reboot it with writable system since it already will
169
+ // have writable system, thus speeding up the process of installing a cert.
170
+ await device.boot(true, BootMode.systemWritablePreferred, false);
171
+ }
225
172
  this.spinner.stop();
226
173
  // Configure certificates for dev server secure connection
227
- this.spinner.start(messages.getMessage('spinner.cert.gen'));
228
- const { certData, certFilePath } = await PreviewUtils.generateSelfSignedCert(platform, sfdxProjectRootPath);
229
- this.spinner.stop();
230
- // Show message and wait for user to install the certificate on their device
231
- await this.waitForUserToInstallCert(platform, device, certFilePath);
174
+ const certData = await PreviewUtils.generateSelfSignedCert();
175
+ if (platform === Platform.ios) {
176
+ // On iOS we force-install the cert even if it is already installed because
177
+ // the process of installing the cert is fast and easy.
178
+ this.spinner.start(messages.getMessage('spinner.cert.install'));
179
+ await device.installCert(certData);
180
+ this.spinner.stop();
181
+ }
182
+ else {
183
+ // On Android the process of auto-installing a cert is a bit involved and slow.
184
+ // So it is best to first determine if the cert is already installed or not.
185
+ const isAlreadyInstalled = await device.isCertInstalled(certData);
186
+ if (!isAlreadyInstalled) {
187
+ this.spinner.start(messages.getMessage('spinner.cert.install'));
188
+ await device.installCert(certData);
189
+ this.spinner.stop();
190
+ }
191
+ }
232
192
  // Check if Salesforce Mobile App is installed on the device
233
193
  const appConfig = platform === Platform.ios ? iOSSalesforceAppPreviewConfig : androidSalesforceAppPreviewConfig;
234
- const appInstalled = await PreviewUtils.verifyMobileAppInstalled(platform, appConfig, resolvedDeviceId, emulatorPort, logger);
235
- // If Salesforce Mobile App is not installed, download and install it
194
+ const appInstalled = await device.isAppInstalled(appConfig.id);
195
+ // If Salesforce Mobile App is not installed, offer to download and install it
236
196
  let bundlePath;
237
197
  if (!appInstalled) {
238
198
  const proceedWithDownload = await this.confirm({
@@ -250,17 +210,23 @@ export default class LightningDevApp extends SfCommand {
250
210
  this.spinner.start(messages.getMessage('spinner.extract.archive'));
251
211
  const outputDir = path.dirname(bundlePath);
252
212
  const finalBundlePath = path.join(outputDir, 'Chatter.app');
253
- await PreviewUtils.extractZIPArchive(bundlePath, outputDir, logger);
213
+ await CommonUtils.extractZIPArchive(bundlePath, outputDir, logger);
254
214
  this.spinner.stop();
255
215
  bundlePath = finalBundlePath;
256
216
  }
217
+ // now go ahead and install the app
218
+ this.spinner.start(messages.getMessage('spinner.app.install', [appConfig.id]));
219
+ await device.installApp(bundlePath);
220
+ this.spinner.stop();
257
221
  }
258
222
  // Start the LWC Dev Server
259
223
  await startLWCServer(logger, sfdxProjectRootPath, token, serverPorts, certData);
260
224
  // Launch the native app for previewing (launchMobileApp will show its own spinner)
261
225
  // eslint-disable-next-line camelcase
262
226
  appConfig.launch_arguments = PreviewUtils.generateMobileAppPreviewLaunchArguments(ldpServerUrl, entityId, appName, appId);
263
- await PreviewUtils.launchMobileApp(platform, appConfig, resolvedDeviceId, emulatorPort, bundlePath, logger);
227
+ const targetActivity = appConfig?.activity;
228
+ const targetApp = targetActivity ? `${appConfig.id}/${targetActivity}` : appConfig.id;
229
+ await device.launchApp(targetApp, appConfig.launch_arguments ?? []);
264
230
  }
265
231
  finally {
266
232
  // stop progress & spinner UX (that may still be running in case of an error)
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../../../../src/commands/lightning/dev/app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../../../../src/commands/lightning/dev/app.ts"],"names":[],"mappings":"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"}
@@ -8,10 +8,12 @@ import fs from 'node:fs';
8
8
  import { SfCommand, Flags } from '@salesforce/sf-plugins-core';
9
9
  import { Messages } from '@salesforce/core';
10
10
  import { expDev } from '@lwrjs/api';
11
+ import { OrgUtils } from '../../../shared/orgUtils.js';
11
12
  import { PromptUtils } from '../../../shared/prompt.js';
12
13
  import { ExperienceSite } from '../../../shared/experience/expSite.js';
13
14
  Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
14
15
  const messages = Messages.loadMessages('@salesforce/plugin-lightning-dev', 'lightning.dev.site');
16
+ const sharedMessages = Messages.loadMessages('@salesforce/plugin-lightning-dev', 'shared.utils');
15
17
  export default class LightningDevSite extends SfCommand {
16
18
  static summary = messages.getMessage('summary');
17
19
  static description = messages.getMessage('description');
@@ -29,6 +31,10 @@ export default class LightningDevSite extends SfCommand {
29
31
  try {
30
32
  const org = flags['target-org'];
31
33
  let siteName = flags.name;
34
+ const localDevEnabled = await OrgUtils.isLocalDevEnabled(org.getConnection(undefined));
35
+ if (!localDevEnabled) {
36
+ throw new Error(sharedMessages.getMessage('error.localdev.not.enabled'));
37
+ }
32
38
  // If user doesn't specify a site, prompt the user for one
33
39
  if (!siteName) {
34
40
  const allSites = await ExperienceSite.getAllExpSites(org);
@@ -1 +1 @@
1
- {"version":3,"file":"site.js","sourceRoot":"","sources":["../../../../src/commands/lightning/dev/site.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAEvE,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,kCAAkC,EAAE,oBAAoB,CAAC,CAAC;AAEjG,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,SAAe;IACpD,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;IAC5D,MAAM,CAAU,cAAc,GAAG,KAAK,CAAC,CAAC,mDAAmD;IAE3F,MAAM,CAAU,KAAK,GAAG;QAC7B,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;YACjB,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC;YAClD,IAAI,EAAE,GAAG;SACV,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,gBAAgB,CAAC,CAAC;QAErD,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;YAChC,IAAI,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;YAE1B,0DAA0D;YAC1D,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;gBAC1D,QAAQ,GAAG,MAAM,WAAW,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;YAChE,CAAC;YAED,MAAM,YAAY,GAAG,IAAI,cAAc,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YACvD,IAAI,OAA2B,CAAC;YAEhC,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,EAAE,CAAC;gBAChC,IAAI,CAAC,GAAG,CAAC,6BAA6B,QAAQ,EAAE,CAAC,CAAC;gBAClD,OAAO,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;YAC9C,CAAC;iBAAM,CAAC;gBACN,yFAAyF;gBACzF,MAAM,eAAe,GAAG,MAAM,YAAY,CAAC,iBAAiB,EAAE,CAAC;gBAC/D,IAAI,eAAe,EAAE,CAAC;oBACpB,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC;oBAC3E,IAAI,YAAY,EAAE,CAAC;wBACjB,IAAI,CAAC,GAAG,CAAC,yBAAyB,QAAQ,EAAE,CAAC,CAAC;wBAC9C,OAAO,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBAC5C,+BAA+B;wBAC/B,MAAM,WAAW,GAAG,YAAY,CAAC,mBAAmB,EAAE,CAAC;wBACvD,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;4BAC/B,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;wBACjD,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,+CAA+C;YAC/C,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,SAAS,EAAE,CAAC;YAEjD,uBAAuB;YACvB,MAAM,MAAM,CAAC;gBACX,SAAS;gBACT,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,OAAO;gBACjB,IAAI,EAAE,KAAK;gBACX,OAAO;gBACP,OAAO,EAAE,YAAY,CAAC,gBAAgB,EAAE;aACzC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,CAAC,gCAAgC,EAAE,CAAC,CAAC,CAAC;QAChD,CAAC;IACH,CAAC"}
1
+ {"version":3,"file":"site.js","sourceRoot":"","sources":["../../../../src/commands/lightning/dev/site.ts"],"names":[],"mappings":"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"}
@@ -11,4 +11,11 @@ export declare class OrgUtils {
11
11
  * @returns the app id or undefined if no match is found
12
12
  */
13
13
  static getAppId(connection: Connection, appName: string): Promise<string | undefined>;
14
+ /**
15
+ * Checks to see if Local Dev is enabled for the org.
16
+ *
17
+ * @param connection the connection to the org
18
+ * @returns boolean indicating whether Local Dev is enabled for the org.
19
+ */
20
+ static isLocalDevEnabled(connection: Connection): Promise<boolean>;
14
21
  }
@@ -32,5 +32,17 @@ export class OrgUtils {
32
32
  }
33
33
  return undefined;
34
34
  }
35
+ /**
36
+ * Checks to see if Local Dev is enabled for the org.
37
+ *
38
+ * @param connection the connection to the org
39
+ * @returns boolean indicating whether Local Dev is enabled for the org.
40
+ */
41
+ static async isLocalDevEnabled(connection) {
42
+ const metadata = await connection.metadata.read('LightningExperienceSettings', 'enableLightningPreviewPref');
43
+ const flagValue = metadata.enableLightningPreviewPref ?? 'false';
44
+ const localDevEnabled = flagValue.toLowerCase().trim() === 'true';
45
+ return localDevEnabled;
46
+ }
35
47
  }
36
48
  //# sourceMappingURL=orgUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"orgUtils.js","sourceRoot":"","sources":["../../src/shared/orgUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,OAAO,QAAQ;IACnB;;;;;;;;;OASG;IACI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAsB,EAAE,OAAe;QAClE,2FAA2F;QAC3F,oFAAoF;QACpF,MAAM,YAAY,GAAG,iEAAiE,OAAO,GAAG,CAAC;QACjG,MAAM,UAAU,GAAG,yDAAyD,OAAO,GAAG,CAAC;QAEvF,+CAA+C;QAC/C,IAAI,MAAM,GAAG,MAAM,UAAU,CAAC,KAAK,CAAwB,YAAY,CAAC,CAAC;QACzE,IAAI,MAAM,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACrC,CAAC;QAED,0CAA0C;QAC1C,MAAM,GAAG,MAAM,UAAU,CAAC,KAAK,CAAwB,UAAU,CAAC,CAAC;QACnE,IAAI,MAAM,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACrC,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
1
+ {"version":3,"file":"orgUtils.js","sourceRoot":"","sources":["../../src/shared/orgUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,MAAM,OAAO,QAAQ;IACnB;;;;;;;;;OASG;IACI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAsB,EAAE,OAAe;QAClE,2FAA2F;QAC3F,oFAAoF;QACpF,MAAM,YAAY,GAAG,iEAAiE,OAAO,GAAG,CAAC;QACjG,MAAM,UAAU,GAAG,yDAAyD,OAAO,GAAG,CAAC;QAEvF,+CAA+C;QAC/C,IAAI,MAAM,GAAG,MAAM,UAAU,CAAC,KAAK,CAAwB,YAAY,CAAC,CAAC;QACzE,IAAI,MAAM,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACrC,CAAC;QAED,0CAA0C;QAC1C,MAAM,GAAG,MAAM,UAAU,CAAC,KAAK,CAAwB,UAAU,CAAC,CAAC;QACnE,IAAI,MAAM,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACrC,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,UAAsB;QAC1D,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,6BAA6B,EAAE,4BAA4B,CAAC,CAAC;QAC7G,MAAM,SAAS,GAAI,QAA6C,CAAC,0BAA0B,IAAI,OAAO,CAAC;QACvG,MAAM,eAAe,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC;QAClE,OAAO,eAAe,CAAC;IACzB,CAAC;CACF"}
@@ -1,5 +1,5 @@
1
1
  import { Logger } from '@salesforce/core';
2
- import { AndroidAppPreviewConfig, AndroidVirtualDevice, IOSAppPreviewConfig, IOSSimulatorDevice, LaunchArgument, Platform, SSLCertificateData } from '@salesforce/lwc-dev-mobile-core';
2
+ import { BaseDevice, LaunchArgument, Platform, SSLCertificateData } from '@salesforce/lwc-dev-mobile-core';
3
3
  import { Progress, Spinner } from '@salesforce/sf-plugins-core';
4
4
  export declare class PreviewUtils {
5
5
  static generateWebSocketUrlForLocalDevServer(platform: string, ports: {
@@ -32,16 +32,7 @@ export declare class PreviewUtils {
32
32
  * @param logger An optional logger to be used for logging
33
33
  * @returns The iOS or Android device, or `undefined` if not found
34
34
  */
35
- static getMobileDevice(platform: Platform.ios | Platform.android, deviceId?: string, logger?: Logger): Promise<IOSSimulatorDevice | AndroidVirtualDevice | undefined>;
36
- /**
37
- * Attempts to boot a device.
38
- *
39
- * @param platform A mobile platform (iOS or Android)
40
- * @param deviceId The identifier (such as name or UDID) of the target device
41
- * @param logger An optional logger to be used for logging
42
- * @returns For Android devices returns the emulator port number. For iOS devices returns `undefined`
43
- */
44
- static bootMobileDevice(platform: Platform.ios | Platform.android, deviceId: string, logger?: Logger): Promise<number | undefined>;
35
+ static getMobileDevice(platform: Platform.ios | Platform.android, deviceId?: string, logger?: Logger): Promise<BaseDevice | undefined>;
45
36
  /**
46
37
  * Generates the proper set of arguments to be used for launching desktop browser and navigating to the right location.
47
38
  *
@@ -65,37 +56,13 @@ export declare class PreviewUtils {
65
56
  */
66
57
  static generateMobileAppPreviewLaunchArguments(ldpServerUrl: string, entityId: string, appName?: string, appId?: string, auraMode?: string): LaunchArgument[];
67
58
  /**
68
- * Generates a self-signed certificate and saves it to a file at the specified location.
69
- *
70
- * @param platform A mobile platform (iOS or Android)
71
- * @param saveLocation Path to a folder where the generated certificated will be saved to (defaults to the current working directory)
72
- * @returns Path to the generated certificate file and the certificate data
73
- */
74
- static generateSelfSignedCert(platform: Platform.ios | Platform.android, saveLocation?: string): Promise<{
75
- certData: SSLCertificateData;
76
- certFilePath: string;
77
- }>;
78
- /**
79
- * Launches the specified mobile app on the specified device.
80
- *
81
- * @param platform A mobile platform (iOS or Android)
82
- * @param deviceId The identifier (such as name or UDID) of the target device
83
- * @param appConfig The app configuration containing info about the mobile app to be launched
84
- * @param emulatorPort Optional - only needed when platform is Android and specifies the ADB port of the booted Android virtual device
85
- * @param logger An optional logger to be used for logging
86
- */
87
- static launchMobileApp(platform: Platform.ios | Platform.android, appConfig: IOSAppPreviewConfig | AndroidAppPreviewConfig, deviceId: string, emulatorPort?: number, appBundlePath?: string, logger?: Logger): Promise<void>;
88
- /**
89
- * Verifies whether a particular app is installed on a mobile device.
59
+ * Checks the global cache to see if a self-signed certificate has previously been generated and cached.
60
+ * If so (and if the cached certificate is not expired) it will then return the cached certificate. Otherwise
61
+ * it will generate a self-signed certificate, cache it, and return it.
90
62
  *
91
- * @param platform A mobile platform (iOS or Android)
92
- * @param appConfig The app configuration containing info about the mobile app such as name and bundle/package id
93
- * @param deviceId The identifier (such as name or UDID) of the target device
94
- * @param emulatorPort Optional - only needed when platform is Android and specifies the ADB port of the booted Android virtual device
95
- * @param logger An optional logger to be used for logging
96
- * @returns `true` if app is installed, `false` otherwise
63
+ * @returns A self-signed certificate.
97
64
  */
98
- static verifyMobileAppInstalled(platform: Platform.ios | Platform.android, appConfig: IOSAppPreviewConfig | AndroidAppPreviewConfig, deviceId: string, emulatorPort?: number, logger?: Logger): Promise<boolean>;
65
+ static generateSelfSignedCert(): Promise<SSLCertificateData>;
99
66
  /**
100
67
  * Downloads the Salesforce Mobile App into a temp folder and returns the path to downloaded file.
101
68
  *
@@ -106,21 +73,6 @@ export declare class PreviewUtils {
106
73
  * @returns The path to downloaded file.
107
74
  */
108
75
  static downloadSalesforceMobileAppBundle(platform: Platform.ios | Platform.android, logger?: Logger, spinner?: Spinner, progress?: Progress): Promise<string>;
109
- /**
110
- * Given an sfdc.co shortened url it returns the actual/full url that this will redirect to.
111
- *
112
- * @param httpsUrl The sfdc.co shortened url
113
- * @returns The actual/full url
114
- */
115
- static fetchFullUrlFromSfdc(httpsUrl: string): Promise<string>;
116
- /**
117
- * Extracts a ZIP archive to an output directory.
118
- *
119
- * @param zipFilePath The path to the ZIP archive
120
- * @param outputDir An optional output directory - if omitted then defaults to the same directory as the ZIP file
121
- * @param logger An optional logger to be used for logging
122
- */
123
- static extractZIPArchive(zipFilePath: string, outputDir?: string, logger?: Logger): Promise<void>;
124
76
  static getEntityId(username: string): Promise<string>;
125
77
  private static doGetNextAvailablePort;
126
78
  }