@salesforce/plugin-lightning-dev 3.2.0 → 3.2.2
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 +24 -13
- package/lib/commands/lightning/dev/component.d.ts +2 -5
- package/lib/commands/lightning/dev/component.js +44 -11
- package/lib/commands/lightning/dev/component.js.map +1 -1
- package/lib/commands/lightning/dev/site.js.map +1 -1
- package/lib/shared/promptUtils.d.ts +1 -0
- package/lib/shared/promptUtils.js +12 -0
- package/lib/shared/promptUtils.js.map +1 -1
- package/messages/lightning.dev.component.md +22 -5
- package/messages/prompts.md +4 -0
- package/npm-shrinkwrap.json +204 -204
- package/oclif.lock +231 -231
- package/oclif.manifest.json +6 -8
- package/package.json +4 -4
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/3.2.
|
|
204
|
+
_See code: [src/commands/lightning/dev/app.ts](https://github.com/salesforcecli/plugin-lightning-dev/blob/3.2.2/src/commands/lightning/dev/app.ts)_
|
|
205
205
|
|
|
206
206
|
## `sf lightning dev component`
|
|
207
207
|
|
|
@@ -209,12 +209,11 @@ Preview LWC components in isolation.
|
|
|
209
209
|
|
|
210
210
|
```
|
|
211
211
|
USAGE
|
|
212
|
-
$ sf lightning dev component
|
|
212
|
+
$ sf lightning dev component [--json] [--flags-dir <value>] [-n <value>] [-o <value>]
|
|
213
213
|
|
|
214
214
|
FLAGS
|
|
215
|
-
-n, --name=<value>
|
|
216
|
-
-o, --target-org=<value>
|
|
217
|
-
configuration variable is already set.
|
|
215
|
+
-n, --name=<value> Name of a component to preview.
|
|
216
|
+
-o, --target-org=<value> Username or alias of the target org.
|
|
218
217
|
|
|
219
218
|
GLOBAL FLAGS
|
|
220
219
|
--flags-dir=<value> Import flag values from a directory.
|
|
@@ -223,19 +222,31 @@ GLOBAL FLAGS
|
|
|
223
222
|
DESCRIPTION
|
|
224
223
|
Preview LWC components in isolation.
|
|
225
224
|
|
|
226
|
-
|
|
227
|
-
|
|
225
|
+
Component preview launches an isolated development environment for Lightning Web Components, enabling rapid iteration
|
|
226
|
+
without needing to deploy changes. The server provides real-time previews of your components through hot module
|
|
227
|
+
replacement (HMR), automatically refreshing the view when source files are modified.
|
|
228
|
+
|
|
229
|
+
When running the development server, these changes are immediately reflected:
|
|
230
|
+
|
|
231
|
+
- Component template (HTML) modifications
|
|
232
|
+
- Styling updates in component CSS files
|
|
233
|
+
- JavaScript logic changes that don't modify the component's API
|
|
234
|
+
- Adding or updating internal component dependencies
|
|
235
|
+
- Modifying static resources used by the component
|
|
236
|
+
|
|
237
|
+
See the LWC Development Guide for more information about component development best practices and limitations.
|
|
228
238
|
|
|
229
239
|
EXAMPLES
|
|
230
|
-
|
|
240
|
+
Select a component and launch the component preview:
|
|
241
|
+
|
|
242
|
+
$ sf lightning dev component
|
|
231
243
|
|
|
232
|
-
|
|
233
|
-
-n, --name=<value> Description of a flag.
|
|
244
|
+
Launch component preview for "myComponent":
|
|
234
245
|
|
|
235
|
-
|
|
246
|
+
$ sf lightning dev component --name myComponent
|
|
236
247
|
```
|
|
237
248
|
|
|
238
|
-
_See code: [src/commands/lightning/dev/component.ts](https://github.com/salesforcecli/plugin-lightning-dev/blob/3.2.
|
|
249
|
+
_See code: [src/commands/lightning/dev/component.ts](https://github.com/salesforcecli/plugin-lightning-dev/blob/3.2.2/src/commands/lightning/dev/component.ts)_
|
|
239
250
|
|
|
240
251
|
## `sf lightning dev site`
|
|
241
252
|
|
|
@@ -289,6 +300,6 @@ EXAMPLES
|
|
|
289
300
|
$ sf lightning dev site --name "Partner Central" --target-org myOrg --get-latest
|
|
290
301
|
```
|
|
291
302
|
|
|
292
|
-
_See code: [src/commands/lightning/dev/site.ts](https://github.com/salesforcecli/plugin-lightning-dev/blob/3.2.
|
|
303
|
+
_See code: [src/commands/lightning/dev/site.ts](https://github.com/salesforcecli/plugin-lightning-dev/blob/3.2.2/src/commands/lightning/dev/site.ts)_
|
|
293
304
|
|
|
294
305
|
<!-- commandsstop -->
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
import { SfCommand } from '@salesforce/sf-plugins-core';
|
|
2
|
-
export
|
|
3
|
-
path: string;
|
|
4
|
-
};
|
|
5
|
-
export default class LightningDevComponent extends SfCommand<LightningDevComponentResult> {
|
|
2
|
+
export default class LightningDevComponent extends SfCommand<void> {
|
|
6
3
|
static readonly summary: string;
|
|
7
4
|
static readonly description: string;
|
|
8
5
|
static readonly examples: string[];
|
|
@@ -10,5 +7,5 @@ export default class LightningDevComponent extends SfCommand<LightningDevCompone
|
|
|
10
7
|
name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
8
|
'target-org': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
9
|
};
|
|
13
|
-
run(): Promise<
|
|
10
|
+
run(): Promise<void>;
|
|
14
11
|
}
|
|
@@ -4,11 +4,26 @@
|
|
|
4
4
|
* Licensed under the BSD 3-Clause license.
|
|
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
|
+
import fs from 'node:fs';
|
|
8
|
+
import path from 'node:path';
|
|
7
9
|
import { SfCommand, Flags } from '@salesforce/sf-plugins-core';
|
|
8
10
|
import { Messages } from '@salesforce/core';
|
|
9
11
|
import { cmpDev } from '@lwrjs/api';
|
|
12
|
+
import { PromptUtils } from '../../../shared/promptUtils.js';
|
|
10
13
|
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
11
14
|
const messages = Messages.loadMessages('@salesforce/plugin-lightning-dev', 'lightning.dev.component');
|
|
15
|
+
// TODO support other module directories
|
|
16
|
+
const MODULES_DIR = path.resolve(path.join('force-app', 'main', 'default', 'lwc'));
|
|
17
|
+
function getDirectories(filePath) {
|
|
18
|
+
try {
|
|
19
|
+
const items = fs.readdirSync(filePath);
|
|
20
|
+
const directories = items.filter((item) => fs.statSync(path.join(filePath, item)).isDirectory());
|
|
21
|
+
return directories;
|
|
22
|
+
}
|
|
23
|
+
catch (error) {
|
|
24
|
+
return [];
|
|
25
|
+
}
|
|
26
|
+
}
|
|
12
27
|
export default class LightningDevComponent extends SfCommand {
|
|
13
28
|
static summary = messages.getMessage('summary');
|
|
14
29
|
static description = messages.getMessage('description');
|
|
@@ -16,26 +31,44 @@ export default class LightningDevComponent extends SfCommand {
|
|
|
16
31
|
static flags = {
|
|
17
32
|
name: Flags.string({
|
|
18
33
|
summary: messages.getMessage('flags.name.summary'),
|
|
19
|
-
description: messages.getMessage('flags.name.description'),
|
|
20
34
|
char: 'n',
|
|
21
|
-
|
|
35
|
+
requiredOrDefaulted: false,
|
|
22
36
|
}),
|
|
23
37
|
// TODO should this be required or optional?
|
|
24
38
|
// We don't technically need this if your components are simple / don't need any data from your org
|
|
25
|
-
'target-org': Flags.
|
|
39
|
+
'target-org': Flags.optionalOrg(),
|
|
26
40
|
};
|
|
27
41
|
async run() {
|
|
28
42
|
const { flags } = await this.parse(LightningDevComponent);
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
43
|
+
let name = flags.name;
|
|
44
|
+
if (!name) {
|
|
45
|
+
const dirs = getDirectories(path.resolve(MODULES_DIR));
|
|
46
|
+
if (!dirs) {
|
|
47
|
+
throw new Error(messages.getMessage('error.directory'));
|
|
48
|
+
}
|
|
49
|
+
const components = dirs.map((dir) => {
|
|
50
|
+
const xmlPath = path.resolve(path.join(MODULES_DIR, dir, `${dir}.js-meta.xml`));
|
|
51
|
+
const xmlContent = fs.readFileSync(xmlPath, 'utf-8');
|
|
52
|
+
const label = xmlContent.match(/<masterLabel>(.*?)<\/masterLabel>/);
|
|
53
|
+
const description = xmlContent.match(/<description>(.*?)<\/description>/);
|
|
54
|
+
return {
|
|
55
|
+
name: dir,
|
|
56
|
+
label: label ? label[1] : '',
|
|
57
|
+
description: description ? description[1] : '',
|
|
58
|
+
};
|
|
59
|
+
});
|
|
60
|
+
name = await PromptUtils.promptUserToSelectComponent(components);
|
|
61
|
+
if (!name) {
|
|
62
|
+
throw new Error(messages.getMessage('error.component'));
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
this.log('Starting application on port 3000...');
|
|
66
|
+
const port = parseInt(process.env.PORT ?? '3000', 10);
|
|
33
67
|
await cmpDev({
|
|
34
|
-
|
|
68
|
+
mode: 'dev',
|
|
69
|
+
port,
|
|
70
|
+
name: `c/${name}`,
|
|
35
71
|
});
|
|
36
|
-
return {
|
|
37
|
-
path: '',
|
|
38
|
-
};
|
|
39
72
|
}
|
|
40
73
|
}
|
|
41
74
|
//# sourceMappingURL=component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/commands/lightning/dev/component.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,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;
|
|
1
|
+
{"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/commands/lightning/dev/component.ts"],"names":[],"mappings":"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"}
|
|
@@ -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,
|
|
1
|
+
{"version":3,"file":"site.js","sourceRoot":"","sources":["../../../../src/commands/lightning/dev/site.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,5 +7,6 @@ export declare class PromptUtils {
|
|
|
7
7
|
static promptUserToSelectPlatform(): Promise<Platform>;
|
|
8
8
|
static promptUserToSelectLightningExperienceApp(connection: Connection): Promise<AppDefinition>;
|
|
9
9
|
static promptUserToSelectMobileDevice(platform: Platform.ios | Platform.android, logger?: Logger): Promise<BaseDevice>;
|
|
10
|
+
static promptUserToSelectComponent(components: Array<Record<string, string>>): Promise<string>;
|
|
10
11
|
private static getShortVersion;
|
|
11
12
|
}
|
|
@@ -64,6 +64,18 @@ export class PromptUtils {
|
|
|
64
64
|
});
|
|
65
65
|
return response;
|
|
66
66
|
}
|
|
67
|
+
static async promptUserToSelectComponent(components) {
|
|
68
|
+
const choices = components.map((component) => ({
|
|
69
|
+
name: component.label.length > 0 ? component.label : component.name,
|
|
70
|
+
value: component.name,
|
|
71
|
+
description: component.description,
|
|
72
|
+
}));
|
|
73
|
+
const response = await select({
|
|
74
|
+
message: messages.getMessage('component.select'),
|
|
75
|
+
choices,
|
|
76
|
+
});
|
|
77
|
+
return response;
|
|
78
|
+
}
|
|
67
79
|
// returns the shorthand version of a Version object (eg. 17.0.0 => 17, 17.4.0 => 17.4, 17.4.1 => 17.4.1)
|
|
68
80
|
static getShortVersion(version) {
|
|
69
81
|
// TODO: consider making this function part of the Version class in @lwc-dev-mobile-core
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promptUtils.js","sourceRoot":"","sources":["../../src/shared/promptUtils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"promptUtils.js","sourceRoot":"","sources":["../../src/shared/promptUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,16 +4,33 @@ Preview LWC components in isolation.
|
|
|
4
4
|
|
|
5
5
|
# description
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Component preview launches an isolated development environment for Lightning Web Components, enabling rapid iteration without needing to deploy changes. The server provides real-time previews of your components through hot module replacement (HMR), automatically refreshing the view when source files are modified.
|
|
8
|
+
|
|
9
|
+
When running the development server, these changes are immediately reflected:
|
|
10
|
+
|
|
11
|
+
- Component template (HTML) modifications
|
|
12
|
+
- Styling updates in component CSS files
|
|
13
|
+
- JavaScript logic changes that don't modify the component's API
|
|
14
|
+
- Adding or updating internal component dependencies
|
|
15
|
+
- Modifying static resources used by the component
|
|
16
|
+
|
|
17
|
+
See the LWC Development Guide for more information about component development best practices and limitations.
|
|
8
18
|
|
|
9
19
|
# flags.name.summary
|
|
10
20
|
|
|
11
|
-
|
|
21
|
+
Name of a component to preview.
|
|
22
|
+
|
|
23
|
+
# error.directory
|
|
24
|
+
|
|
25
|
+
Unable to find components
|
|
12
26
|
|
|
13
|
-
#
|
|
27
|
+
# error.component
|
|
14
28
|
|
|
15
|
-
|
|
29
|
+
Unable to determine component name
|
|
16
30
|
|
|
17
31
|
# examples
|
|
18
32
|
|
|
19
|
-
-
|
|
33
|
+
- Select a component and launch the component preview:
|
|
34
|
+
<%= config.bin %> <%= command.id %>
|
|
35
|
+
- Launch component preview for "myComponent":
|
|
36
|
+
<%= config.bin %> <%= command.id %> --name myComponent
|
package/messages/prompts.md
CHANGED