@lwc/lwc-dev-server 8.1.0 → 8.1.1

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.
@@ -1,9 +1,10 @@
1
1
  import { existsSync, readFileSync, lstatSync } from 'node:fs';
2
2
  import path from 'node:path';
3
3
  import { Command, Option, InvalidArgumentError } from 'commander';
4
- import { LogLevel, MAX_CLIENT_COUNT } from '../../types/index.js';
4
+ import { Workspace, LogLevel, MAX_CLIENT_COUNT } from '../../types/index.js';
5
5
  import { startLwcDevServer } from '../../server/index.js';
6
6
  import ConsoleLogger from '../../server/consoleLogger.js';
7
+ const consoleLogger = new ConsoleLogger(LogLevel.info);
7
8
  function getTargetOption() {
8
9
  return new Option('-t, --target <target>', '[string] configured target for deployment')
9
10
  .choices(['lex', 'mrt', 'mobile'])
@@ -27,22 +28,81 @@ function parseNumArg(value) {
27
28
  }
28
29
  return parsedValue;
29
30
  }
30
- const consoleLogger = new ConsoleLogger(LogLevel.info);
31
- function normalizeConfig({ config, port, target, logLevel, workspace, maxClientCount = MAX_CLIENT_COUNT, }) {
32
- let rootDir = process.cwd();
33
- const configFile = path.resolve(rootDir, config);
34
- const modulePaths = [];
35
- if (!existsSync(configFile) || !lstatSync(configFile).isFile()) {
31
+ function configExists(configFilePath) {
32
+ return existsSync(configFilePath) && lstatSync(configFilePath).isFile();
33
+ }
34
+ function readConfig(configFile, workspace) {
35
+ const parsedConfig = JSON.parse(readFileSync(configFile, 'utf-8'));
36
+ let rootDir, lwc, https;
37
+ consoleLogger.log(LogLevel.debug, `Found config file at "${configFile}" and initializing dev server with it.`);
38
+ if (workspace === Workspace.Mrt && path.basename(configFile).startsWith('lwc')) {
39
+ lwc = parsedConfig;
40
+ }
41
+ else {
42
+ rootDir = parsedConfig.rootDir;
43
+ lwc = parsedConfig.lwc;
44
+ https = parsedConfig.https;
45
+ }
46
+ return {
47
+ rootDir,
48
+ lwc,
49
+ https,
50
+ };
51
+ }
52
+ /**
53
+ * SalesforceCLI workspaces don't require a config file to be present
54
+ * @returns config absolute path | undefined
55
+ */
56
+ function getDefaultConfig(rootDir, workspace) {
57
+ if (workspace === Workspace.Internal) {
58
+ const configFile = path.resolve(rootDir, 'lwc.config.json');
59
+ if (configExists(configFile)) {
60
+ return configFile;
61
+ }
36
62
  consoleLogger.log(LogLevel.error, `Failed to find a valid config file at ${configFile}.`);
37
63
  process.exit(1);
38
64
  }
39
- const parsedConfig = JSON.parse(readFileSync(configFile, 'utf-8'));
65
+ else if (workspace === Workspace.Mrt) {
66
+ // 1. we check for lwr.config
67
+ const configFile = path.resolve(rootDir, 'lwr.config.json');
68
+ if (configExists(configFile)) {
69
+ return configFile;
70
+ }
71
+ // 2. fallback to lwc.config
72
+ const configFile2 = path.resolve(rootDir, 'lwc.config.json');
73
+ if (configExists(configFile2)) {
74
+ return configFile2;
75
+ }
76
+ // 3. none of the configs are present
77
+ consoleLogger.log(LogLevel.error, `Failed to find a valid config file at ${configFile} OR ${configFile2}.`);
78
+ process.exit(1);
79
+ }
80
+ }
81
+ function resolveModuleRootDir(rootDir, entryDir) {
82
+ if (entryDir.startsWith('$rootDir')) {
83
+ return entryDir.replace(/^\$rootDir/, rootDir);
84
+ }
85
+ else if (path.isAbsolute(entryDir)) {
86
+ return entryDir;
87
+ }
88
+ else {
89
+ // entryDir is a relative path
90
+ return path.resolve(rootDir, entryDir);
91
+ }
92
+ }
93
+ function normalizeConfig({ config, port, target, logLevel, workspace, maxClientCount = MAX_CLIENT_COUNT, }) {
94
+ let rootDir = process.cwd();
95
+ const configFile = config
96
+ ? path.resolve(rootDir, config)
97
+ : getDefaultConfig(rootDir, workspace);
98
+ const modulePaths = [];
99
+ const parsedConfig = configFile ? readConfig(configFile, workspace) : {};
40
100
  consoleLogger.log(LogLevel.debug, `Found config file at "${configFile}" and initializing dev server with it.`);
41
101
  rootDir = parsedConfig.rootDir ?? rootDir;
42
102
  if (parsedConfig.lwc?.modules) {
43
103
  parsedConfig.lwc.modules.forEach((entry) => {
44
104
  if (entry.dir) {
45
- const resolvedDir = entry.dir.replace(/^\$rootDir/, rootDir);
105
+ const resolvedDir = resolveModuleRootDir(rootDir, entry.dir);
46
106
  if (existsSync(resolvedDir)) {
47
107
  modulePaths.push(resolvedDir);
48
108
  consoleLogger.log(LogLevel.debug, `FS-Watcher: Adding ${resolvedDir} to watch.`);
@@ -66,6 +126,7 @@ function normalizeConfig({ config, port, target, logLevel, workspace, maxClientC
66
126
  maxClientCount,
67
127
  };
68
128
  if (parsedConfig.https) {
129
+ // @ts-expect-error : typescript is unable to deduce that if we are here then configFile exists
69
130
  normalizedConfig.https = parseHttpsConfig(parsedConfig.https, path.dirname(configFile));
70
131
  }
71
132
  return normalizedConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"devServer.js","sourceRoot":"","sources":["../../../src/cli/commands/devServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"devServer.js","sourceRoot":"","sources":["../../../src/cli/commands/devServer.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ function getVersion() {
8
8
  export function createCLI() {
9
9
  return new Command('lwc-dev-server')
10
10
  .description('LWC Local Developement')
11
- .addOption(new Option('-c, --config <file>', `[string] use specified lwc.config.json file`).default('lwc.config.json'))
11
+ .addOption(new Option('-c, --config <file>', `[string] use specified lwc.config.json file`))
12
12
  .addOption(new Option('--rootDir <directory>', `[string] use specified root directory`).default(process.cwd(), '"."'))
13
13
  .addOption(new Option('--logLevel <level>', `[string] use specified log level`)
14
14
  .env('LWC_LOG_LEVEL')
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,SAAS,UAAU;IACf,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAC1B,YAAY,CAAC,IAAI,GAAG,CAAC,uBAAuB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAC3E,CAAC;IACF,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,SAAS;IACrB,OAAO,IAAI,OAAO,CAAC,gBAAgB,CAAC;SAC/B,WAAW,CAAC,wBAAwB,CAAC;SACrC,SAAS,CACN,IAAI,MAAM,CACN,qBAAqB,EACrB,6CAA6C,CAChD,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAC/B;SACA,SAAS,CACN,IAAI,MAAM,CAAC,uBAAuB,EAAE,uCAAuC,CAAC,CAAC,OAAO,CAChF,OAAO,CAAC,GAAG,EAAE,EACb,KAAK,CACR,CACJ;SACA,SAAS,CACN,IAAI,MAAM,CAAC,oBAAoB,EAAE,kCAAkC,CAAC;SAC/D,GAAG,CAAC,eAAe,CAAC;SACpB,OAAO,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;SAChE,OAAO,CAAC,MAAM,CAAC,CACvB;SACA,UAAU,CAAC,eAAe,EAAE,CAAC;SAC7B,kBAAkB,EAAE;SACpB,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,SAAS,UAAU;IACf,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAC1B,YAAY,CAAC,IAAI,GAAG,CAAC,uBAAuB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAC3E,CAAC;IACF,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,SAAS;IACrB,OAAO,IAAI,OAAO,CAAC,gBAAgB,CAAC;SAC/B,WAAW,CAAC,wBAAwB,CAAC;SACrC,SAAS,CAAC,IAAI,MAAM,CAAC,qBAAqB,EAAE,6CAA6C,CAAC,CAAC;SAC3F,SAAS,CACN,IAAI,MAAM,CAAC,uBAAuB,EAAE,uCAAuC,CAAC,CAAC,OAAO,CAChF,OAAO,CAAC,GAAG,EAAE,EACb,KAAK,CACR,CACJ;SACA,SAAS,CACN,IAAI,MAAM,CAAC,oBAAoB,EAAE,kCAAkC,CAAC;SAC/D,GAAG,CAAC,eAAe,CAAC;SACpB,OAAO,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;SAChE,OAAO,CAAC,MAAM,CAAC,CACvB;SACA,UAAU,CAAC,eAAe,EAAE,CAAC;SAC7B,kBAAkB,EAAE;SACpB,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;AAC/B,CAAC"}
@@ -17,6 +17,7 @@ export declare class LWCServer {
17
17
  clientPool: ClientPool;
18
18
  wss: WebSocketServer;
19
19
  context: DevServerContext;
20
+ identityToken?: string;
20
21
  constructor(config: ServerConfig, wss: WebSocketServer, logger: Logger);
21
22
  /**
22
23
  * Initialize the WebSocketServer by adding message handlers for connections lifecycle events.
@@ -6,6 +6,7 @@ import { ModuleGraph } from './moduleGraph/index.js';
6
6
  import ConsoleLogger from './consoleLogger.js';
7
7
  import { Client, ClientPool } from './connection/client.js';
8
8
  import { Connection } from './connection/connection.js';
9
+ import { decrypt } from './util/aes.js';
9
10
  /**
10
11
  * This class represents the central place where the LWC dev server coordination occurs.
11
12
  *
@@ -95,14 +96,20 @@ export class LWCServer {
95
96
  this.clientPool.addClient(socket, client);
96
97
  logger.log(LogLevel.info, `[LWC Dev Server] New connection for url: ${url} and target: ${target} registered. Client ID: ${clientId}`);
97
98
  // TODO: The server should decode the auth challenge with its session key and return the challenge phrase
98
- if (auth) {
99
- const authResponse = {
100
- type: 'auth-response',
101
- data: {
102
- sessionToken: 'tango-charlie:' + auth.data.sessionTokenCipherText,
103
- },
104
- };
105
- client.send(authResponse);
99
+ if (this.identityToken) {
100
+ if (!auth) {
101
+ logger.log(LogLevel.error, `[LWC Dev Server] Auth required`);
102
+ socket.close();
103
+ return;
104
+ }
105
+ try {
106
+ const decrypted = decrypt(auth.data.sessionTokenCipher, this.identityToken);
107
+ client.send({ type: 'auth-response', data: { sessionToken: decrypted } });
108
+ }
109
+ catch (e) {
110
+ logger.log(LogLevel.error, `[LWC Dev Server] Failed to decrypt sessionToken. Closing socket.`);
111
+ socket.close();
112
+ }
106
113
  }
107
114
  break;
108
115
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Decrypt a Base64 encoded string using AES-GCM
3
+ * @param encryptedText - The Base64 encoded encrypted text
4
+ * @param base64Key - The Base64 encoded key
5
+ * @returns The decrypted text
6
+ */
7
+ export declare function decrypt(encryptedText: string, base64Key: string): string;
@@ -0,0 +1,22 @@
1
+ import * as crypto from 'node:crypto';
2
+ const IV_LENGTH = 12; // 96 bit
3
+ const GCM_TAG_LENGTH = 16; // 128 bit
4
+ /**
5
+ * Decrypt a Base64 encoded string using AES-GCM
6
+ * @param encryptedText - The Base64 encoded encrypted text
7
+ * @param base64Key - The Base64 encoded key
8
+ * @returns The decrypted text
9
+ */
10
+ export function decrypt(encryptedText, base64Key) {
11
+ const key = Buffer.from(base64Key, 'base64');
12
+ const encryptedData = Buffer.from(encryptedText, 'base64');
13
+ const iv = encryptedData.subarray(0, IV_LENGTH);
14
+ const ciphertext = encryptedData.subarray(IV_LENGTH, encryptedData.length - GCM_TAG_LENGTH);
15
+ const authTag = encryptedData.subarray(encryptedData.length - GCM_TAG_LENGTH);
16
+ const decipher = crypto.createDecipheriv('aes-256-gcm', key, iv);
17
+ decipher.setAuthTag(authTag);
18
+ let decrypted = decipher.update(ciphertext, undefined, 'utf8');
19
+ decrypted += decipher.final('utf8');
20
+ return decrypted;
21
+ }
22
+ //# sourceMappingURL=aes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aes.js","sourceRoot":"","sources":["../../../src/server/util/aes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAEtC,MAAM,SAAS,GAAG,EAAE,CAAC,CAAC,SAAS;AAC/B,MAAM,cAAc,GAAG,EAAE,CAAC,CAAC,UAAU;AACrC;;;;;GAKG;AACH,MAAM,UAAU,OAAO,CAAC,aAAqB,EAAE,SAAiB;IAC5D,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC7C,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IAE3D,MAAM,EAAE,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,MAAM,GAAG,cAAc,CAAC,CAAC;IAC5F,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,GAAG,cAAc,CAAC,CAAC;IAE9E,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACjE,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAE7B,IAAI,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC/D,SAAS,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAEpC,OAAO,SAAS,CAAC;AACrB,CAAC"}
@@ -68,4 +68,8 @@ export interface ServerConfig {
68
68
  * default value is {@link MAX_CLIENT_COUNT}
69
69
  */
70
70
  maxClientCount?: number;
71
+ /**
72
+ * Identity token for the server to auth
73
+ */
74
+ identityToken?: string;
71
75
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@lwc/lwc-dev-server",
3
3
  "description": "A development server to get quick feedback on your LWC component development.",
4
- "version": "8.1.0",
4
+ "version": "8.1.1",
5
5
  "keywords": [
6
6
  "lwc dev server"
7
7
  ],
@@ -23,14 +23,14 @@
23
23
  "start": "node ./bin/dev-server.js start"
24
24
  },
25
25
  "dependencies": {
26
- "@lwc/sfdc-lwc-compiler": "8.1.0",
26
+ "@lwc/sfdc-lwc-compiler": "8.1.1",
27
27
  "chalk": "~5.3.0",
28
28
  "chokidar": "~3.6.0",
29
29
  "commander": "~10.0.0",
30
30
  "ws": "~8.16.0"
31
31
  },
32
32
  "devDependencies": {
33
- "@lwc/lwc-dev-server-types": "8.1.0",
33
+ "@lwc/lwc-dev-server-types": "8.1.1",
34
34
  "@types/ws": "^8.5.10"
35
35
  },
36
36
  "peerDependencies": {