@interopio/iocd-cli 0.0.1 → 0.0.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.
@@ -1 +1 @@
1
- {"version":3,"file":"license.command.d.ts","sourceRoot":"","sources":["../../src/commands/license.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,eAAO,MAAM,cAAc,SACkB,CAAC"}
1
+ {"version":3,"file":"license.command.d.ts","sourceRoot":"","sources":["../../src/commands/license.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,eAAO,MAAM,cAAc,SACkB,CAAC"}
@@ -1,23 +1,75 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
2
38
  Object.defineProperty(exports, "__esModule", { value: true });
3
39
  exports.licenseCommand = void 0;
4
40
  const commander_1 = require("commander");
5
41
  const logger_1 = require("../utils/logger");
42
+ const license_service_1 = __importDefault(require("../services/license.service"));
43
+ const clack = __importStar(require("@clack/prompts"));
6
44
  const logger = logger_1.Logger.getInstance();
7
45
  exports.licenseCommand = new commander_1.Command('license')
8
46
  .description('License management commands');
9
47
  exports.licenseCommand
10
- .command('info')
11
48
  .description('Display current license information')
12
- .action(() => {
13
- logger.info('License info command called');
14
- console.log('License info - Phase 5 implementation required');
15
- });
16
- exports.licenseCommand
17
- .command('validate')
18
- .description('Validate the current license')
19
- .action(() => {
20
- logger.info('License validate command called');
21
- console.log('License validation - Phase 5 implementation required');
49
+ .action(async () => {
50
+ try {
51
+ const info = await license_service_1.default.validateLicense();
52
+ const { status, type, licensePayload, errorMessage } = info;
53
+ // Format the license information for display
54
+ let licenseStatus = status;
55
+ const licenseType = type;
56
+ const formattedExpiration = licensePayload?.expiration
57
+ ? new Date(licensePayload.expiration).toLocaleDateString()
58
+ : 'Never';
59
+ // Create formatted license info display
60
+ const licenseInfo = [
61
+ `Status: ${licenseStatus}`,
62
+ `Type: ${licenseType}`,
63
+ `Licensee: ${licensePayload?.licensee || 'N/A'}`,
64
+ `Organization: ${licensePayload?.organization.displayName || 'N/A'}`,
65
+ status !== "Invalid" ? `Expiration: ${formattedExpiration}` : '',
66
+ errorMessage ? `Error: ${errorMessage}` : ''
67
+ ].filter(line => line.length > 0).join('\n');
68
+ // Display with clack.note for nice formatting
69
+ clack.note(licenseInfo, `${licenseStatus === "Active" ? '✅' : '❌'} License Information`);
70
+ }
71
+ catch (error) {
72
+ logger.error(`Failed to retrieve license information: ${error instanceof Error ? error.message : String(error)}`);
73
+ }
22
74
  });
23
75
  //# sourceMappingURL=license.command.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"license.command.js","sourceRoot":"","sources":["../../src/commands/license.command.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,4CAAyC;AAEzC,MAAM,MAAM,GAAG,eAAM,CAAC,WAAW,EAAE,CAAC;AAEvB,QAAA,cAAc,GAAG,IAAI,mBAAO,CAAC,SAAS,CAAC;KACjD,WAAW,CAAC,6BAA6B,CAAC,CAAC;AAE9C,sBAAc;KACX,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,qCAAqC,CAAC;KAClD,MAAM,CAAC,GAAG,EAAE;IACX,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;AAChE,CAAC,CAAC,CAAC;AAEL,sBAAc;KACX,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,8BAA8B,CAAC;KAC3C,MAAM,CAAC,GAAG,EAAE;IACX,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;AACtE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"license.command.js","sourceRoot":"","sources":["../../src/commands/license.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAoC;AACpC,4CAAyC;AACzC,kFAAyD;AACzD,sDAAwC;AAExC,MAAM,MAAM,GAAG,eAAM,CAAC,WAAW,EAAE,CAAC;AAEvB,QAAA,cAAc,GAAG,IAAI,mBAAO,CAAC,SAAS,CAAC;KACjD,WAAW,CAAC,6BAA6B,CAAC,CAAC;AAE9C,sBAAc;KACX,WAAW,CAAC,qCAAqC,CAAC;KAClD,MAAM,CAAC,KAAK,IAAI,EAAE;IAEjB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,yBAAc,CAAC,eAAe,EAAE,CAAC;QACpD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;QAE5D,6CAA6C;QAC7C,IAAI,aAAa,GAAG,MAAM,CAAC;QAC3B,MAAM,WAAW,GAAG,IAAI,CAAC;QAEzB,MAAM,mBAAmB,GAAG,cAAc,EAAE,UAAU;YACpD,CAAC,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,kBAAkB,EAAE;YAC1D,CAAC,CAAC,OAAO,CAAC;QAEZ,wCAAwC;QACxC,MAAM,WAAW,GAAG;YAClB,WAAW,aAAa,EAAE;YAC1B,SAAS,WAAW,EAAE;YACtB,aAAa,cAAc,EAAE,QAAQ,IAAI,KAAK,EAAE;YAChD,iBAAiB,cAAc,EAAE,YAAY,CAAC,WAAW,IAAI,KAAK,EAAE;YACpE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE;YAChE,YAAY,CAAC,CAAC,CAAC,UAAU,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE;SAC7C,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE7C,8CAA8C;QAC9C,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAAC,CAAC;IAE3F,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,2CAA2C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACpH,CAAC;AACH,CAAC,CAAC,CAAC"}
@@ -51,7 +51,7 @@ export declare class CreateService {
51
51
  */
52
52
  private generateFolderName;
53
53
  /**
54
- * Generate license.json file with provided license JSON
54
+ * Generate license.key file with provided license JSON
55
55
  */
56
56
  private generateLicenseFile;
57
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"create.service.d.ts","sourceRoot":"","sources":["../../src/services/create.service.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,eAAe,CAAyB;IAEhD;;OAEG;IACU,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBtC;;OAEG;YACW,gBAAgB;YAwFhB,iBAAiB;IA8B/B;;OAEG;YACW,2BAA2B;IAgDzC;;OAEG;YACW,gBAAgB;IA8D9B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAQ1B;;OAEG;YACW,mBAAmB;CAclC"}
1
+ {"version":3,"file":"create.service.d.ts","sourceRoot":"","sources":["../../src/services/create.service.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,eAAe,CAAyB;IAEhD;;OAEG;IACU,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBtC;;OAEG;YACW,gBAAgB;YA0FhB,iBAAiB;IA8B/B;;OAEG;YACW,2BAA2B;IAgDzC;;OAEG;YACW,gBAAgB;IA8D9B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAQ1B;;OAEG;YACW,mBAAmB;CAYlC"}
@@ -32,6 +32,9 @@ var __importStar = (this && this.__importStar) || (function () {
32
32
  return result;
33
33
  };
34
34
  })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
35
38
  Object.defineProperty(exports, "__esModule", { value: true });
36
39
  exports.CreateService = void 0;
37
40
  const node_path_1 = require("node:path");
@@ -42,6 +45,7 @@ const node_fs_1 = require("node:fs");
42
45
  const colors_1 = require("../utils/colors");
43
46
  const clack = __importStar(require("@clack/prompts"));
44
47
  const components_registry_1 = require("./components/components.registry");
48
+ const license_service_1 = __importDefault(require("./license.service"));
45
49
  /**
46
50
  * SetupService handles the interactive project setup flow using @clack/prompts.
47
51
  *
@@ -128,27 +132,29 @@ class CreateService {
128
132
  // Step 5: License Key (optional, multi-line editor)
129
133
  const hasLicense = await clack.confirm({
130
134
  message: 'Do you have a valid license?',
131
- initialValue: false
135
+ initialValue: true
132
136
  });
133
137
  if (clack.isCancel(hasLicense))
134
138
  throw hasLicense;
135
139
  let licenseKey;
136
140
  if (hasLicense) {
137
- clack.note('You can paste multi-line JSON. Press Enter when done.', 'License Input');
141
+ clack.note('You can paste your license here. Press Enter when done.', 'License Input');
138
142
  const licenseInput = await clack.text({
139
- message: 'Paste your license.json content here:',
143
+ message: 'Paste your license key here:',
140
144
  validate: (value) => {
141
145
  if (!value.trim()) {
142
146
  return 'License content is required if you have a license';
143
147
  }
144
- // Try to parse as JSON to validate format
145
148
  try {
146
- JSON.parse(value.trim());
147
- return undefined;
149
+ const info = license_service_1.default.validateLicense(value);
150
+ if (info.status !== "Active") {
151
+ return `License is not active: Status=${info.status} Error=${info.errorMessage || 'Unknown issue'}`;
152
+ }
148
153
  }
149
- catch {
150
- return 'Please provide valid JSON format for the license';
154
+ catch (error) {
155
+ return `Invalid license: ${error instanceof Error ? error.message : String(error)}`;
151
156
  }
157
+ return undefined;
152
158
  }
153
159
  });
154
160
  if (clack.isCancel(licenseInput))
@@ -298,14 +304,12 @@ class CreateService {
298
304
  .replace(/^-|-$/g, '');
299
305
  }
300
306
  /**
301
- * Generate license.json file with provided license JSON
307
+ * Generate license.key file with provided license JSON
302
308
  */
303
- async generateLicenseFile(targetDirectory, licenseJson) {
309
+ async generateLicenseFile(targetDirectory, license) {
304
310
  try {
305
- // Parse and re-format the license JSON to ensure proper formatting
306
- const licenseData = JSON.parse(licenseJson);
307
- const licensePath = (0, node_path_1.join)(targetDirectory, 'license.json');
308
- (0, node_fs_1.writeFileSync)(licensePath, JSON.stringify(licenseData, null, 2), 'utf-8');
311
+ const licensePath = (0, node_path_1.join)(targetDirectory, 'license.key');
312
+ (0, node_fs_1.writeFileSync)(licensePath, license, 'utf-8');
309
313
  this.logger.debug(`License file created at: ${licensePath}`);
310
314
  }
311
315
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"create.service.js","sourceRoot":"","sources":["../../src/services/create.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create.service.js","sourceRoot":"","sources":["../../src/services/create.service.ts"],"names":[],"mappings":"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"}
@@ -30,9 +30,9 @@ async function validatePrerequisites(packageNames) {
30
30
  }
31
31
  (0, ensure_iocd_exists_1.ensureIOCDComponentExists)();
32
32
  // Validate license
33
- const hasValidLicense = await license_service_1.default.hasValidLicense();
34
- if (!hasValidLicense) {
35
- throw new Error('Valid license required for packaging');
33
+ const licenseInfo = license_service_1.default.validateLicense();
34
+ if (licenseInfo.status !== "Active") {
35
+ throw new Error(`Valid license required for packaging: ${licenseInfo.errorMessage || 'Unknown issue'}`);
36
36
  }
37
37
  logger.info('Prerequisites validated successfully!');
38
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"prerequisites.js","sourceRoot":"","sources":["../../../src/services/installer/prerequisites.ts"],"names":[],"mappings":";;;;;AAOA,sDAiCC;AAxCD,+CAA4C;AAC5C,yEAAgD;AAChD,yEAAoE;AACpE,uEAA2E;AAE3E,MAAM,MAAM,GAAG,eAAM,CAAC,WAAW,EAAE,CAAC;AAE7B,KAAK,UAAU,qBAAqB,CAAC,YAAsB;IAChE,6CAA6C;IAC7C,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAG3C,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;QACvC,MAAM,CAAC,KAAK,CAAC,8BAA8B,WAAW,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;YAC1B,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,QAAQ,CAAC,CAAC;YAErC,oDAAoD;YACpD,MAAM,2BAA2B,CAAC,WAAW,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,GAAG,WAAW,sEAAsE;gBACpF,0BAA0B,WAAW,IAAI;gBACzC,MAAM;gBACN,kBAAkB,WAAW,MAAM;gBACnC,SAAS,WAAW,oFAAoF,CACzG,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAA,8CAAyB,GAAE,CAAC;IAE5B,mBAAmB;IACnB,MAAM,eAAe,GAAG,MAAM,yBAAc,CAAC,eAAe,EAAE,CAAC;IAC/D,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;AACvD,CAAC;AAED,KAAK,UAAU,2BAA2B,CAAC,WAAmB;IAC5D,IAAI,CAAC;QACH,iEAAiE;QACjE,MAAM,WAAW,GAAG,MAAM,uCAAiB,CAAC,cAAc,EAAE,CAAC;QAE7D,4DAA4D;QAC5D,IAAI,WAAW,CAAC,YAAY,IAAI,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC;YACtE,MAAM,CAAC,IAAI,CACT,GAAG,WAAW,yCAAyC;gBACvD,wFAAwF;gBACxF,sCAAsC;gBACtC,4BAA4B,WAAW,IAAI;gBAC3C,wCAAwC,WAAW,EAAE,CACtD,CAAC;QACJ,CAAC;QAED,sFAAsF;QACtF,MAAM,YAAY,GAAG,WAAW,CAAC,eAAe,IAAI,WAAW,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAC7F,MAAM,aAAa,GAAG,WAAW,CAAC,gBAAgB,IAAI,WAAW,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAEhG,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,uCAAuC,CAAC,CAAC;QACtE,CAAC;aAAM,IAAI,aAAa,EAAE,CAAC;YACzB,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,6DAA6D,CAAC,CAAC;QAC5F,CAAC;aAAM,CAAC;YACN,+DAA+D;YAC/D,2EAA2E;YAC3E,MAAM,CAAC,IAAI,CACT,GAAG,WAAW,4DAA4D;gBAC1E,oDAAoD;gBACpD,0BAA0B,WAAW,EAAE,CACxC,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,0DAA0D;QAC1D,MAAM,CAAC,KAAK,CAAC,sBAAsB,WAAW,kBAAkB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC5H,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"prerequisites.js","sourceRoot":"","sources":["../../../src/services/installer/prerequisites.ts"],"names":[],"mappings":";;;;;AAOA,sDAiCC;AAxCD,+CAA4C;AAC5C,yEAAgD;AAChD,yEAAoE;AACpE,uEAA2E;AAE3E,MAAM,MAAM,GAAG,eAAM,CAAC,WAAW,EAAE,CAAC;AAE7B,KAAK,UAAU,qBAAqB,CAAC,YAAsB;IAChE,6CAA6C;IAC7C,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAG3C,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;QACvC,MAAM,CAAC,KAAK,CAAC,8BAA8B,WAAW,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;YAC1B,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,QAAQ,CAAC,CAAC;YAErC,oDAAoD;YACpD,MAAM,2BAA2B,CAAC,WAAW,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,GAAG,WAAW,sEAAsE;gBACpF,0BAA0B,WAAW,IAAI;gBACzC,MAAM;gBACN,kBAAkB,WAAW,MAAM;gBACnC,SAAS,WAAW,oFAAoF,CACzG,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAA,8CAAyB,GAAE,CAAC;IAE5B,mBAAmB;IACnB,MAAM,WAAW,GAAG,yBAAc,CAAC,eAAe,EAAE,CAAC;IACrD,IAAI,WAAW,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,yCAAyC,WAAW,CAAC,YAAY,IAAI,eAAe,EAAE,CAAC,CAAC;IAC1G,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;AACvD,CAAC;AAED,KAAK,UAAU,2BAA2B,CAAC,WAAmB;IAC5D,IAAI,CAAC;QACH,iEAAiE;QACjE,MAAM,WAAW,GAAG,MAAM,uCAAiB,CAAC,cAAc,EAAE,CAAC;QAE7D,4DAA4D;QAC5D,IAAI,WAAW,CAAC,YAAY,IAAI,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC;YACtE,MAAM,CAAC,IAAI,CACT,GAAG,WAAW,yCAAyC;gBACvD,wFAAwF;gBACxF,sCAAsC;gBACtC,4BAA4B,WAAW,IAAI;gBAC3C,wCAAwC,WAAW,EAAE,CACtD,CAAC;QACJ,CAAC;QAED,sFAAsF;QACtF,MAAM,YAAY,GAAG,WAAW,CAAC,eAAe,IAAI,WAAW,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAC7F,MAAM,aAAa,GAAG,WAAW,CAAC,gBAAgB,IAAI,WAAW,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAEhG,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,uCAAuC,CAAC,CAAC;QACtE,CAAC;aAAM,IAAI,aAAa,EAAE,CAAC;YACzB,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,6DAA6D,CAAC,CAAC;QAC5F,CAAC;aAAM,CAAC;YACN,+DAA+D;YAC/D,2EAA2E;YAC3E,MAAM,CAAC,IAAI,CACT,GAAG,WAAW,4DAA4D;gBAC1E,oDAAoD;gBACpD,0BAA0B,WAAW,EAAE,CACxC,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,0DAA0D;QAC1D,MAAM,CAAC,KAAK,CAAC,sBAAsB,WAAW,kBAAkB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC5H,CAAC;AACH,CAAC"}
@@ -1,6 +1,104 @@
1
- declare class LicenseService {
2
- hasValidLicense(): boolean;
3
- getLicenseInfo(): string;
1
+ export declare const prodPublicKey = "-----BEGIN PUBLIC KEY-----\nMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAoaL0vbGVpI6fw/YY6vvf\nQFHA097QBPIzLf+8LccaFaN7kz/pvX70V3clnmtE/vY5yhzGksypOX9CfcZpyH1/\nnHmeJNWugts9SaO/+/SYC9iVmi34M/DjRQnKmhmAcd9/X6hxCwtf6nR32Igy2Z0X\niBvdUcstTrDT55YpHf+g2myVWqPfyv5+q9KlqrySb7Po/PGsdpth4Jqkqhl49hQv\n6D0sp2wRHEqjtblOz4ZYyh++02Xir+mhAYxPPrhx4ymm4jPmiqYP5aUky4udPydF\nlBHj/sKGzlU/kcd/jiws7l0Iy7DDV0ajRkbJ3C18hW7rs0xRxhGdySaj0VBA7vtR\nZ7zjDADNm9KqLQPB9nKGPSBLzQBYW+mQP92seyKRd2f29g4hFkX+kkZnS7CAvfLs\njIBw7GlHuTiZCMAgiPatU/7WxneD8Qs/s+cMMk5CTImWL/BWdtd18TMjL1G/LiTA\n3uNFnbdzrRYAC33/02W73dyk64uYtZ9rPkMJnYMMWMU8zpauQxzezxuSYCEtp2N8\n6YsWnPaZkrdZKQxUsQ2AoDJ+GWYlMJZoNh+wj0pyZcZ/BEAGCvK3DcGlgjb2mgJX\nSBAqI8x0afhfXqckthbsIaqi+0kdAgQV0VDKI0OCZgesrjwPlawmBbpgCdZ28oc3\n4w1zLjAq74LInPITHxMzaaECAwEAAQ==\n-----END PUBLIC KEY-----\n";
2
+ export declare class LicenseService {
3
+ private logger;
4
+ private publicKey;
5
+ validateLicense(license?: string): LicenseInfo;
6
+ private validateJWT;
7
+ /**
8
+ * Only called in unit tests.
9
+ */
10
+ setProdPublicKey(): void;
11
+ /**
12
+ * Only called in unit tests.
13
+ */
14
+ setTestPublicKey(publicKey: string): void;
15
+ }
16
+ export declare class LicenseError extends Error {
17
+ readonly licensePayload: LicensePayload;
18
+ constructor(message: string, licensePayload: LicensePayload);
19
+ }
20
+ export declare class LicenseOrganization {
21
+ /**
22
+ * Organization display name. Used in logs.
23
+ * @example "InteropIO"
24
+ */
25
+ displayName: string;
26
+ /**
27
+ * Organization identifier. Unused.
28
+ * @example "interopio"
29
+ */
30
+ identifier: string;
31
+ }
32
+ interface LicensePayload {
33
+ type: "paid" | "trial";
34
+ expiration?: number;
35
+ extraComponents: {
36
+ insights: {
37
+ enabled: boolean;
38
+ };
39
+ bbgv2: {
40
+ enabled: boolean;
41
+ };
42
+ bbgv3: {
43
+ enabled: boolean;
44
+ };
45
+ excel: {
46
+ enabled: boolean;
47
+ };
48
+ outlook: {
49
+ enabled: boolean;
50
+ };
51
+ word: {
52
+ enabled: boolean;
53
+ };
54
+ teams: {
55
+ enabled: boolean;
56
+ };
57
+ fidessa: {
58
+ enabled: boolean;
59
+ };
60
+ salesforce: {
61
+ enabled: boolean;
62
+ };
63
+ };
64
+ issuedBy: string;
65
+ email: string;
66
+ iat: number;
67
+ licensee: string;
68
+ organization: {
69
+ identifier: string;
70
+ displayName: string;
71
+ };
72
+ meta?: any;
73
+ }
74
+ export interface LicenseInfo {
75
+ /**
76
+ * Invalid – missing or improperly signed certificate
77
+ * Inactive – valid certificate but no longer usable (e.g. expired, revoked)
78
+ * Active – valid and can be used
79
+ *
80
+ * Note that paid licenses are always "valid" in practice, even if they have an expiration date. The expiration date is used for informational purposes only.
81
+ **/
82
+ status: "Invalid" | "Inactive" | "Active";
83
+ type: "Trial" | "Paid";
84
+ /**
85
+ * If `true` the license is expired.
86
+ */
87
+ isExpired: boolean;
88
+ /**
89
+ * Error message related to invalid or inactive license.
90
+ * Undefined if the license is valid and active.
91
+ */
92
+ errorMessage?: string | undefined;
93
+ /**
94
+ * License JWT payload.
95
+ * Only there if the license is present and correctly signed.
96
+ */
97
+ licensePayload?: LicensePayload | undefined;
98
+ }
99
+ export declare enum LicenseType {
100
+ paid = "paid",
101
+ trail = "trail"
4
102
  }
5
103
  declare const _default: LicenseService;
6
104
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"license.service.d.ts","sourceRoot":"","sources":["../../src/services/license.service.ts"],"names":[],"mappings":"AAAA,cAAM,cAAc;IAEhB,eAAe,IAAI,OAAO;IAK1B,cAAc,IAAI,MAAM;CAI3B;;AAED,wBAAoC"}
1
+ {"version":3,"file":"license.service.d.ts","sourceRoot":"","sources":["../../src/services/license.service.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,aAAa,mzBAczB,CAAC;AAGF,qBAAa,cAAc;IACvB,OAAO,CAAC,MAAM,CAAwB;IAEtC,OAAO,CAAC,SAAS,CAAyB;IAGnC,eAAe,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,WAAW;IA4FrD,OAAO,CAAC,WAAW;IAuBnB;;OAEG;IACI,gBAAgB;IAIvB;;OAEG;IACI,gBAAgB,CAAC,SAAS,EAAE,MAAM;CAG5C;AAED,qBAAa,YAAa,SAAQ,KAAK;IACnC,SAAgB,cAAc,EAAE,cAAc,CAAC;gBAEnC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc;CAI9D;AAED,qBAAa,mBAAmB;IAC5B;;;OAGG;IACI,WAAW,EAAG,MAAM,CAAC;IAE5B;;;OAGG;IACI,UAAU,EAAG,MAAM,CAAC;CAC9B;AAED,UAAU,cAAc;IACpB,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE;QACb,QAAQ,EAAE;YACN,OAAO,EAAE,OAAO,CAAC;SACpB,CAAC;QACF,KAAK,EAAE;YACH,OAAO,EAAE,OAAO,CAAC;SACpB,CAAC;QACF,KAAK,EAAE;YACH,OAAO,EAAE,OAAO,CAAC;SACpB,CAAC;QACF,KAAK,EAAE;YACH,OAAO,EAAE,OAAO,CAAC;SACpB,CAAC;QACF,OAAO,EAAE;YACL,OAAO,EAAE,OAAO,CAAC;SACpB,CAAC;QACF,IAAI,EAAE;YACF,OAAO,EAAE,OAAO,CAAC;SACpB,CAAC;QACF,KAAK,EAAE;YACH,OAAO,EAAE,OAAO,CAAC;SACpB,CAAC;QACF,OAAO,EAAE;YACL,OAAO,EAAE,OAAO,CAAC;SACpB,CAAC;QACF,UAAU,EAAE;YACR,OAAO,EAAE,OAAO,CAAC;SACpB,CAAC;KACL,CAAA;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE;QACV,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;KACvB,CAAA;IACD,IAAI,CAAC,EAAE,GAAG,CAAC;CACd;AAED,MAAM,WAAW,WAAW;IAExB;;;;;;QAMI;IACJ,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;IAG1C,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC;IAEvB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAElC;;;OAGG;IACH,cAAc,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;CAC/C;AAED,oBAAY,WAAW;IACnB,IAAI,SAAS;IACb,KAAK,UAAU;CAClB;;AAED,wBAAoC"}
@@ -1,14 +1,174 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.LicenseType = exports.LicenseOrganization = exports.LicenseError = exports.LicenseService = exports.prodPublicKey = void 0;
7
+ const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
8
+ const logger_1 = require("../utils/logger");
9
+ const fs_1 = require("fs");
10
+ const path_1 = require("../utils/path");
11
+ const path_2 = require("path");
12
+ exports.prodPublicKey = `-----BEGIN PUBLIC KEY-----
13
+ MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAoaL0vbGVpI6fw/YY6vvf
14
+ QFHA097QBPIzLf+8LccaFaN7kz/pvX70V3clnmtE/vY5yhzGksypOX9CfcZpyH1/
15
+ nHmeJNWugts9SaO/+/SYC9iVmi34M/DjRQnKmhmAcd9/X6hxCwtf6nR32Igy2Z0X
16
+ iBvdUcstTrDT55YpHf+g2myVWqPfyv5+q9KlqrySb7Po/PGsdpth4Jqkqhl49hQv
17
+ 6D0sp2wRHEqjtblOz4ZYyh++02Xir+mhAYxPPrhx4ymm4jPmiqYP5aUky4udPydF
18
+ lBHj/sKGzlU/kcd/jiws7l0Iy7DDV0ajRkbJ3C18hW7rs0xRxhGdySaj0VBA7vtR
19
+ Z7zjDADNm9KqLQPB9nKGPSBLzQBYW+mQP92seyKRd2f29g4hFkX+kkZnS7CAvfLs
20
+ jIBw7GlHuTiZCMAgiPatU/7WxneD8Qs/s+cMMk5CTImWL/BWdtd18TMjL1G/LiTA
21
+ 3uNFnbdzrRYAC33/02W73dyk64uYtZ9rPkMJnYMMWMU8zpauQxzezxuSYCEtp2N8
22
+ 6YsWnPaZkrdZKQxUsQ2AoDJ+GWYlMJZoNh+wj0pyZcZ/BEAGCvK3DcGlgjb2mgJX
23
+ SBAqI8x0afhfXqckthbsIaqi+0kdAgQV0VDKI0OCZgesrjwPlawmBbpgCdZ28oc3
24
+ 4w1zLjAq74LInPITHxMzaaECAwEAAQ==
25
+ -----END PUBLIC KEY-----
26
+ `;
3
27
  class LicenseService {
4
- hasValidLicense() {
5
- // Placeholder for actual license validation logic
6
- return true;
28
+ logger = logger_1.Logger.getInstance();
29
+ publicKey = exports.prodPublicKey;
30
+ validateLicense(license) {
31
+ let licensePayload;
32
+ // argument -> env variable -> license.key file
33
+ let licenseKeyString = license || process.env['IOCD_LICENSE_KEY'];
34
+ if (!licenseKeyString) {
35
+ this.logger.debug('No license key in environment variable, checking license.key file');
36
+ try {
37
+ const filePath = (0, path_2.join)(path_1.PathUtils.getRootDir(), 'license.key');
38
+ licenseKeyString = (0, fs_1.readFileSync)(filePath, 'utf-8');
39
+ }
40
+ catch (error) {
41
+ this.logger.debug('Error reading license.key file', error);
42
+ }
43
+ }
44
+ if (!licenseKeyString) {
45
+ this.logger.debug('No license key found in environment variable or license.key file');
46
+ return {
47
+ status: "Invalid",
48
+ type: "Trial",
49
+ isExpired: true,
50
+ errorMessage: 'No license key found. Please set the `IOCD_LICENSE_KEY` environment variable or add a `license.key` file.\n' +
51
+ 'To acquire a valid license key, contact us at sales@interop.io'
52
+ };
53
+ }
54
+ try {
55
+ licensePayload = this.validateJWT(licenseKeyString);
56
+ }
57
+ catch (error) {
58
+ this.logger.debug('Error validating license token', error);
59
+ return {
60
+ status: "Invalid",
61
+ type: "Trial",
62
+ isExpired: true,
63
+ errorMessage: "The provided license key is invalid. To acquire a valid license key, contact us at sales@interop.io"
64
+ };
65
+ }
66
+ const isPaidLicense = licensePayload.type.toLowerCase() === LicenseType.paid;
67
+ const organization = licensePayload.organization.displayName ?? licensePayload.licensee;
68
+ const expirationTimestamp = licensePayload.expiration ?? new Date().getTime() + 7 * 24 * 60 * 60 * 1000; // Default to 7 days from now if no expiration
69
+ let isExpired = false;
70
+ let expirationDate = undefined;
71
+ if (licensePayload.expiration) {
72
+ expirationDate = new Date(expirationTimestamp);
73
+ isExpired = expirationDate <= new Date();
74
+ }
75
+ let isActive = isPaidLicense || (!isPaidLicense && !isExpired);
76
+ let errorMessage = undefined;
77
+ if (isPaidLicense) {
78
+ if (!expirationDate) {
79
+ this.logger.info(`Using a paid license that was issued for client "${organization}" with no expiration date.`);
80
+ }
81
+ else {
82
+ if (isExpired) {
83
+ this.logger.warn(`Using a paid license that was issued for client "${organization}", but it has expired at ${expirationDate.toString()}`);
84
+ }
85
+ else {
86
+ this.logger.info(`Using a paid license that was issued for client "${organization}" and is valid until ${expirationDate.toString()}`);
87
+ }
88
+ }
89
+ }
90
+ else {
91
+ if (!expirationDate) {
92
+ // This should never happen, but just in case
93
+ errorMessage = `The trial license for "${organization}" is missing an expiration date. To acquire a valid license key, contact us at sales@interop.io`;
94
+ this.logger.warn(errorMessage);
95
+ isActive = false;
96
+ }
97
+ else {
98
+ // trial license
99
+ if (isExpired) {
100
+ errorMessage = `The trial license for "${organization}" has expired at ${expirationDate.toString()}. To acquire a valid license key, contact us at sales@interop.io`;
101
+ this.logger.warn(errorMessage);
102
+ }
103
+ else {
104
+ this.logger.info(`Using a trial license that was issued for "${organization}" and is valid until ${expirationDate.toString()}`);
105
+ }
106
+ }
107
+ }
108
+ return {
109
+ status: isActive ? "Active" : "Inactive",
110
+ type: isPaidLicense ? "Paid" : "Trial",
111
+ licensePayload,
112
+ isExpired,
113
+ errorMessage
114
+ };
7
115
  }
8
- getLicenseInfo() {
9
- // Placeholder for actual license information retrieval
10
- return "Valid license found.";
116
+ validateJWT(licenseKeyString) {
117
+ if (!licenseKeyString ||
118
+ typeof licenseKeyString !== 'string' ||
119
+ !licenseKeyString.length) {
120
+ throw new Error('The provided license key is not a valid string.');
121
+ }
122
+ try {
123
+ const jwtPayload = jsonwebtoken_1.default.verify(licenseKeyString, this.publicKey, {
124
+ algorithms: ['RS256'],
125
+ });
126
+ return jwtPayload;
127
+ }
128
+ catch (error) {
129
+ this.logger.debug('Error validating license token', error);
130
+ throw new Error('The provided license key is invalid. To acquire a valid license key, contact us at sales@interop.io');
131
+ }
11
132
  }
133
+ /**
134
+ * Only called in unit tests.
135
+ */
136
+ setProdPublicKey() {
137
+ this.publicKey = exports.prodPublicKey;
138
+ }
139
+ /**
140
+ * Only called in unit tests.
141
+ */
142
+ setTestPublicKey(publicKey) {
143
+ this.publicKey = publicKey;
144
+ }
145
+ }
146
+ exports.LicenseService = LicenseService;
147
+ class LicenseError extends Error {
148
+ licensePayload;
149
+ constructor(message, licensePayload) {
150
+ super(message);
151
+ this.licensePayload = licensePayload;
152
+ }
153
+ }
154
+ exports.LicenseError = LicenseError;
155
+ class LicenseOrganization {
156
+ /**
157
+ * Organization display name. Used in logs.
158
+ * @example "InteropIO"
159
+ */
160
+ displayName;
161
+ /**
162
+ * Organization identifier. Unused.
163
+ * @example "interopio"
164
+ */
165
+ identifier;
12
166
  }
167
+ exports.LicenseOrganization = LicenseOrganization;
168
+ var LicenseType;
169
+ (function (LicenseType) {
170
+ LicenseType["paid"] = "paid";
171
+ LicenseType["trail"] = "trail";
172
+ })(LicenseType || (exports.LicenseType = LicenseType = {}));
13
173
  exports.default = new LicenseService();
14
174
  //# sourceMappingURL=license.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"license.service.js","sourceRoot":"","sources":["../../src/services/license.service.ts"],"names":[],"mappings":";;AAAA,MAAM,cAAc;IAEhB,eAAe;QACX,kDAAkD;QAClD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,cAAc;QACV,uDAAuD;QACvD,OAAO,sBAAsB,CAAC;IAClC,CAAC;CACJ;AAED,kBAAe,IAAI,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"license.service.js","sourceRoot":"","sources":["../../src/services/license.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@interopio/iocd-cli",
3
- "version": "0.0.1",
3
+ "version": "0.0.2",
4
4
  "description": "CLI tool for setting up, building and packaging io.Connect Desktop platforms",
5
5
  "engines": {
6
6
  "node": ">=18.0.0",
@@ -44,6 +44,7 @@
44
44
  "concurrently": "^9.2.1",
45
45
  "dotenv": "^17.2.2",
46
46
  "fs-extra": "^11.3.1",
47
+ "jsonwebtoken": "^9.0.2",
47
48
  "log4js": "^6.9.1",
48
49
  "plist": "^3.1.0"
49
50
  },
@@ -51,6 +52,7 @@
51
52
  "@types/electron-builder": "^2.0.29",
52
53
  "@types/fs-extra": "^11.0.4",
53
54
  "@types/jest": "^29.5.5",
55
+ "@types/jsonwebtoken": "^9.0.10",
54
56
  "@types/log4js": "^0.0.33",
55
57
  "@types/node": "^20.8.0",
56
58
  "@typescript-eslint/eslint-plugin": "^6.7.4",