@optimizely/ocp-cli 1.3.0 → 1.3.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.
@@ -3,7 +3,7 @@
3
3
  * This is a top-level command (no namespace decorator), so it runs as `ocp dev-server`
4
4
  */
5
5
  export declare class DevServerCommand {
6
- port: string;
6
+ port: number;
7
7
  config?: string;
8
8
  path?: string;
9
9
  verbose: boolean;
@@ -32,8 +32,13 @@ let DevServerCommand = class DevServerCommand {
32
32
  try {
33
33
  // Ensure ocp-local-env is installed and up-to-date
34
34
  await this.ensureOcpLocalEnv();
35
+ // Parse and validate port
36
+ const port = Number(this.port) || 3000;
37
+ if (isNaN(port) || port < 0 || port >= 65536) {
38
+ (0, die_1.die)(`Invalid port: ${this.port}. Port must be a number between 0 and 65535.`);
39
+ }
35
40
  // Set environment variables that ocp-local-env expects
36
- process.env.OCP_LOCAL_PORT = this.port;
41
+ process.env.OCP_LOCAL_PORT = String(port);
37
42
  if (this.config) {
38
43
  process.env.OCP_LOCAL_CONFIG_PATH = this.config;
39
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DevServer.js","sourceRoot":"","sources":["../../../src/commands/dev-server/DevServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DevServer.js","sourceRoot":"","sources":["../../../src/commands/dev-server/DevServer.ts"],"names":[],"mappings":"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"}
@@ -1456,7 +1456,7 @@
1456
1456
  }
1457
1457
  ],
1458
1458
  "package": {
1459
- "version": "1.3.0",
1459
+ "version": "1.3.2",
1460
1460
  "name": "@optimizely/ocp-cli",
1461
1461
  "license": "Apache-2.0",
1462
1462
  "executable": "ocp"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@optimizely/ocp-cli",
3
- "version": "1.3.0",
3
+ "version": "1.3.2",
4
4
  "description": "Optimizely Connect Platform command line interface",
5
5
  "repository": "https://github.com/ZaiusInc/ocp-cli",
6
6
  "license": "Apache-2.0",
@@ -19,7 +19,7 @@ export class DevServerCommand {
19
19
  @option('p')
20
20
  @help('Port to run the server on')
21
21
  @defaultValue('3000')
22
- public port!: string;
22
+ public port!: number;
23
23
 
24
24
  @option('c')
25
25
  @help('Path to custom config file')
@@ -50,8 +50,14 @@ export class DevServerCommand {
50
50
  // Ensure ocp-local-env is installed and up-to-date
51
51
  await this.ensureOcpLocalEnv();
52
52
 
53
+ // Parse and validate port
54
+ const port = Number(this.port) || 3000;
55
+ if (isNaN(port) || port < 0 || port >= 65536) {
56
+ die(`Invalid port: ${this.port}. Port must be a number between 0 and 65535.`);
57
+ }
58
+
53
59
  // Set environment variables that ocp-local-env expects
54
- process.env.OCP_LOCAL_PORT = this.port;
60
+ process.env.OCP_LOCAL_PORT = String(port);
55
61
  if (this.config) {
56
62
  process.env.OCP_LOCAL_CONFIG_PATH = this.config;
57
63
  }