@licensespring/node-sdk 1.0.6 → 1.0.9

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/LICENSE.md ADDED
@@ -0,0 +1,56 @@
1
+ ## LicenseSpring SDK Source Code License (LSSCL)
2
+
3
+
4
+ Preamble:
5
+
6
+ This LicenseSpring SDK Source Code License (LSSCL) governs the use, distribution, and modification of the source code for this LicenseSpring SDKs. This SDK is designed to facilitate the integration of LicenseSpring's license management service into your applications. By accessing, using, or modifying the SDK, you agree to the terms and conditions set forth in this license.
7
+
8
+
9
+ 1. Permissions:
10
+
11
+ * You are permitted to access, read, and modify the source code of this LicenseSpring SDK.
12
+
13
+ * You may create derivative works that include this SDK, provided all derivative works are used solely as part of the LicenseSpring service.
14
+
15
+
16
+ 2. Distribution:
17
+
18
+ * You may distribute the original or modified versions of software that incorporates the SDK, provided that all distributed versions retain this LSSCL license.
19
+
20
+ * Distributed versions, including modifications, must be used to facilitate the integration of LicenseSpring’s service and may not be:
21
+
22
+ * Provided as part of a hosted or cloud-based service that allows others to access the SDK’s functionality without interacting directly with the LicenseSpring service.
23
+
24
+ * Integrated into other services which compete with or do not use the LicenseSpring service.
25
+
26
+
27
+ 3. Usage Restrictions:
28
+
29
+ * The SDK, in its original or modified form, may only be used as part of the LicenseSpring service, whether on a free or paid plan.
30
+
31
+ * You are prohibited from using the SDK independently or as part of any service that does not interact with the LicenseSpring service.
32
+
33
+
34
+ 4. Prohibited Actions:
35
+
36
+ * You may not circumvent or disable any technical measures that control access to the SDK.
37
+
38
+ * You must not remove, alter, or obscure any license notices, copyright notices, or other proprietary notices from the SDK.
39
+
40
+
41
+ 5. Termination:
42
+
43
+ * Any violation of these terms will result in the automatic termination of your rights under this license.
44
+
45
+ * Upon termination, you must cease all use and distribution of the SDK and destroy all copies in your possession.
46
+
47
+
48
+ 6. Disclaimer of Warranty and Liability:
49
+
50
+ THE SOFTWARE IS PROVIDED "AS IS" AND LICENSESPRING DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. LICENSESPRING SHALL NOT BE LIABLE FOR ANY DAMAGES ARISING OUT OF OR RELATED TO THE USE OR PERFORMANCE OF THE SOFTWARE.
51
+
52
+ ---
53
+
54
+ Copyright 2024 Cense Data Inc DBA LicenseSpring
55
+
56
+ Contact: support@licensespring.com
package/README.md CHANGED
@@ -798,12 +798,65 @@ const licenseAPI = new LicenseAPI({
798
798
  });
799
799
  ```
800
800
 
801
+ ## Proxy
802
+
803
+ All calls to the server can be proxied by providing a proxy definition in either of the following two ways:
804
+
805
+ A. By providing a proxy definition in the initialization config argument for `LicenseAPI`, `LicenseManager` and `FloatingAPI`, e.g.:
806
+
807
+ ```javascript
808
+ const licenseAPI = new LicenseAPI({
809
+ apiKey: '12345678-4bfe-4e3a-8737-757004d6294c',
810
+ sharedKey: 'eYuHrlajvIVTiSFIXpxpKhw78f4Ewy-00-12345678',
811
+ appName: 'js-sdk-test-1',
812
+ appVersion: '0.0.1',
813
+ proxy: {
814
+ host: '127.0.0.1',
815
+ port: 9000,
816
+ },
817
+ });
818
+ ```
819
+
820
+ B. or by calling the `setProxy` method on an initialized `LicenseAPI`, `LicenseManager` or `FloatingAPI` object, e.g.:
821
+
822
+ ```javascript
823
+ licenseAPI.setProxy({
824
+ host: '127.0.0.1',
825
+ port: 9000,
826
+ });
827
+ ```
828
+
829
+ For the type declaration of the proxy definition object, see `AxiosProxyConfig` in the following Types section.
801
830
 
802
831
  ## Types
803
832
 
804
833
  The following are typescript definitions for all the types used in the SDK:
805
834
 
806
835
  ```typescript
836
+ /** Date string in ISO 8601 format (always in UTC timezone) with optional separators and optional time component, e.g.:
837
+ *
838
+ * "2024-09-27T23:30:48.016Z"
839
+ *
840
+ * "2024-09-27 23:30:48.016"
841
+ *
842
+ * "2024-09-27 23:30:48"
843
+ *
844
+ * "2024-09-27 23:30"
845
+ *
846
+ * "2024-09-27"
847
+ *
848
+ */
849
+ export type DateInputString = string;
850
+
851
+ /** Date string in full ISO 8601 format, e.g. "2024-09-27T23:30:48.016Z". Note: this is always in UTC timezone */
852
+ export type DateISO8601UTC = string;
853
+
854
+ /** Date string in RFC 7231 format, e.g. "Fri, 27 Sep 2024 23:30:48 GMT". Note: this is always in GMT timezone */
855
+ export type DateRFC7231 = string;
856
+
857
+ /** Length of time expressed in days, months or years, e.g. 5d, 2m, 3y */
858
+ export type TimeLength = string;
859
+
807
860
  export type LicensespringConfig = {
808
861
  apiKey: string,
809
862
  sharedKey: string,
@@ -820,8 +873,19 @@ export type LicensespringConfig = {
820
873
  isGuardFileEnabled: boolean,
821
874
  hardwareIDMethod: number,
822
875
  sdkVersion: string,
876
+ proxy?: AxiosProxyConfig,
823
877
  };
824
878
 
879
+ interface AxiosProxyConfig {
880
+ host: string,
881
+ port: number,
882
+ protocol?: string,
883
+ auth?: {
884
+ username: string,
885
+ password: string,
886
+ }
887
+ }
888
+
825
889
  export type LicensespringAPIConfig = Omit<LicensespringConfig, 'productCode'>;
826
890
 
827
891
  export type LicensespringConfigDef = Omit<LicensespringConfig, 'apiPath'|'publicKey'|'filename'|'filePath'|'gracePeriod'|'fileKey'|'isGuardFileEnabled'|'hardwareIDMethod'|'sdkVersion'> & {
@@ -833,6 +897,7 @@ export type LicensespringConfigDef = Omit<LicensespringConfig, 'apiPath'|'public
833
897
  fileKey?: string,
834
898
  isGuardFileEnabled?: boolean,
835
899
  hardwareIDMethod?: number,
900
+ proxy?: AxiosProxyConfig,
836
901
  };
837
902
 
838
903
  export type LicensespringAPIConfigDef = Omit<LicensespringAPIConfig, 'apiPath'|'publicKey'|'filename'|'filePath'|'gracePeriod'|'fileKey'|'isGuardFileEnabled'|'hardwareIDMethod'|'sdkVersion'> & {
@@ -844,6 +909,7 @@ export type LicensespringAPIConfigDef = Omit<LicensespringAPIConfig, 'apiPath'|'
844
909
  fileKey?: string,
845
910
  isGuardFileEnabled?: boolean,
846
911
  hardwareIDMethod?: number,
912
+ proxy?: AxiosProxyConfig,
847
913
  };
848
914
 
849
915
  export type LicensespringFloatingConfig = {
@@ -851,6 +917,7 @@ export type LicensespringFloatingConfig = {
851
917
  appVersion: string,
852
918
  hardwareIDMethod: number,
853
919
  sdkVersion: string,
920
+ proxy?: AxiosProxyConfig,
854
921
  };
855
922
 
856
923
  export type LicensespringFloatingConfigDef = Omit<LicensespringFloatingConfig, 'hardwareIDMethod'|'sdkVersion'> & {
@@ -925,6 +992,8 @@ export type PasswordChangePayload = { username: string, password: string, new_pa
925
992
 
926
993
  export type LicenseIdentificatorWithInstallation = LicenseIdentificator & { env: string, channel: string, version: string };
927
994
 
995
+ export type Managed<T> = Omit<T, 'product' | 'hardware_id'>;
996
+
928
997
  /**
929
998
  * @type {LicenseIdentificator}
930
999
  *
@@ -1023,7 +1092,7 @@ export type ProductFeature = {
1023
1092
  allow_overages: number,
1024
1093
  max_overages: number,
1025
1094
  reset_consumption: boolean,
1026
- consumption_period: string | null,
1095
+ consumption_period: 'daily' | 'weekly' | 'monthly' | 'annualy' | null,
1027
1096
  }> & XOR<{
1028
1097
  is_floating: false
1029
1098
  }, {
@@ -1117,7 +1186,6 @@ export type LicenseResponse = {
1117
1186
  floating_in_use_devices: number,
1118
1187
  }) & {
1119
1188
  floating_users: number,
1120
- floating_timeout: number,
1121
1189
  },
1122
1190
  {
1123
1191
  is_floating_cloud: false,
@@ -1137,7 +1205,7 @@ export type LicenseResponse = {
1137
1205
  allow_overages: boolean,
1138
1206
  max_overages: number,
1139
1207
  reset_consumption: boolean,
1140
- consumption_period: DateISO8601UTC | null,
1208
+ consumption_period: 'daily' | 'weekly' | 'monthly' | 'annually' | null,
1141
1209
  },
1142
1210
  {}
1143
1211
  >;
@@ -1191,7 +1259,7 @@ type LicenseTrialNewCommon = {
1191
1259
  enabled: boolean,
1192
1260
  max_transfers: number,
1193
1261
  trial_days: number,
1194
- maintenance_duration: DateISO8601UTC | null,
1262
+ maintenance_duration: TimeLength | null,
1195
1263
  validity_period: DateISO8601UTC | null,
1196
1264
  enable_maintenance_period: boolean,
1197
1265
  prevent_vm: boolean,
@@ -1224,7 +1292,7 @@ type LicenseTrialNew = LicenseTrialNewCommon
1224
1292
  max_overages: number,
1225
1293
  max_consumptions: number,
1226
1294
  valid_duration: null,
1227
- consumption_period: string | null,
1295
+ consumption_period: 'daily' | 'weekly' | 'monthly' | 'annually' | null,
1228
1296
  reset_consumption: boolean,
1229
1297
  },
1230
1298
  XOR<
@@ -1307,7 +1375,7 @@ export type LicenseProductFeature = {
1307
1375
  allow_overages: boolean,
1308
1376
  max_overages: number,
1309
1377
  reset_consumption: number,
1310
- consumption_period: string | null,
1378
+ consumption_period: 'daily' | 'weekly' | 'monthly' | 'annually' | null,
1311
1379
  expiry_date: DateISO8601UTC | null,
1312
1380
  is_floating: boolean,
1313
1381
  is_floating_cloud: boolean,
@@ -1327,15 +1395,24 @@ export type LicenseConsumptionsResponse = {
1327
1395
  allow_overages: boolean,
1328
1396
  max_overages: number,
1329
1397
  reset_consumption: boolean,
1330
- consumption_period: string | null,
1398
+ consumption_period: 'daily' | 'weekly' | 'monthly' | 'annually' | null,
1331
1399
  };
1332
1400
 
1333
1401
  export type LicenseFeatureConsumptionResponse = {
1334
- total_consumptions: number,
1335
- is_floating: boolean,
1402
+ allow_negative_consumptions: boolean,
1403
+ allow_overages: boolean,
1404
+ allow_unlimited_consumptions: boolean,
1405
+ consumption_period: 'daily' | 'weekly' | 'monthly' | 'annually' | null,
1336
1406
  is_floating_cloud: boolean,
1337
- floating_timeout: number,
1338
- floating_users: number,
1407
+ is_floating: boolean,
1408
+ max_consumptions: number,
1409
+ max_overages: number,
1410
+ reset_consumption: boolean,
1411
+ total_consumptions: number,
1412
+
1413
+ // the following properties are only present on floating and floating cloud features:
1414
+ floating_timeout?: number | null,
1415
+ floating_users?: number,
1339
1416
  };
1340
1417
 
1341
1418
  export type ProductDetailsResponse = ProductDetails & {
@@ -1412,41 +1489,10 @@ export enum HardwareIdAlgorithm {
1412
1489
  CloudPlatformsId = 5,
1413
1490
  };
1414
1491
 
1415
- /** Date string in ISO 8601 format (always in UTC timezone) with optional separators and optional time component, e.g.:
1416
- *
1417
- * "2024-09-27T23:30:48.016Z"
1418
- *
1419
- * "2024-09-27 23:30:48.016"
1420
- *
1421
- * "2024-09-27 23:30:48"
1422
- *
1423
- * "2024-09-27 23:30"
1424
- *
1425
- * "2024-09-27"
1426
- *
1427
- */
1428
- export type DateInputString = string;
1429
-
1430
- /** Date string in full ISO 8601 format, e.g. "2024-09-27T23:30:48.016Z". Note: this is always in UTC timezone */
1431
- export type DateISO8601UTC = string;
1492
+ ```
1432
1493
 
1433
- /** Date string in RFC 7231 format, e.g. "Fri, 27 Sep 2024 23:30:48 GMT". Note: this is always in GMT timezone */
1434
- export type DateRFC7231 = string;
1494
+ ## License
1435
1495
 
1436
- export type Managed<T> = Omit<T, 'product' | 'hardware_id'>;
1496
+ * node.js SDK license: [LicenseSpring SDK Source Code License](LICENSE.md)
1437
1497
 
1438
- type ListProps<T> = { [K in keyof T]: T[K] } & {};
1439
- type Without<T, U> = { [P in Exclude<keyof T, keyof U>]?: never };
1440
- type EvalIfIs<T, U> = unknown extends T ? never : U;
1441
- type XOR<A, B, C = unknown, D = unknown, E = unknown, F = unknown, G = unknown, H = unknown> =
1442
- ListProps<
1443
- (Without<B & C & D & E & F & G & H, A> & A)
1444
- | (Without<A & C & D & E & F & G & H, B> & B)
1445
- | EvalIfIs<C, Without<A & B & D & E & F & G & H, C> & C>
1446
- | EvalIfIs<D, Without<A & B & C & E & F & G & H, D> & D>
1447
- | EvalIfIs<E, Without<A & B & C & D & F & G & H, E> & E>
1448
- | EvalIfIs<F, Without<A & B & C & D & E & G & H, F> & F>
1449
- | EvalIfIs<G, Without<A & B & C & D & E & F & H, G> & G>
1450
- | EvalIfIs<H, Without<A & B & C & D & E & F & G, H> & H>
1451
- >;
1452
- ```
1498
+ * Included 3rd-part library licenses: [https://docs.licensespring.com/sdk-licensing](https://docs.licensespring.com/sdk-licensing)
@@ -4,6 +4,7 @@ import LicenseFile from './license-file';
4
4
  import License from './license';
5
5
  import FloatingAPI from './floating';
6
6
  import { Watchdog } from './watchdog';
7
+ import { AxiosProxyConfig } from 'axios';
7
8
  export default class AbstractManager {
8
9
  protected config: LicensespringConfigDef;
9
10
  protected hardwareIDMethod: number;
@@ -12,6 +13,7 @@ export default class AbstractManager {
12
13
  protected licenseFile: LicenseFile;
13
14
  watchdog: Watchdog;
14
15
  constructor(config: LicensespringConfigDef, hardwareIDMethod?: number);
16
+ setProxy(proxy: AxiosProxyConfig | null): void;
15
17
  getHardwareID(algorithm?: HardwareIdAlgorithm): string;
16
18
  loadLicense(): License;
17
19
  isLicenseFileCorrupted(): boolean;
@@ -45,8 +45,8 @@ class AbstractManager {
45
45
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
46
46
  this.config = config;
47
47
  this.hardwareIDMethod = hardwareIDMethod;
48
- const _config = Object.assign(Object.assign({}, config), { apiPath: (_a = config.apiPath) !== null && _a !== void 0 ? _a : process.env.API_PATH, publicKey: (_b = config.publicKey) !== null && _b !== void 0 ? _b : process.env.PUBLIC_KEY, filename: (_c = config.filename) !== null && _c !== void 0 ? _c : process.env.FILENAME, filePath: (_d = config.filePath) !== null && _d !== void 0 ? _d : process.env.FILE_PATH, gracePeriod: (_e = config.gracePeriod) !== null && _e !== void 0 ? _e : 24, fileKey: (_f = config.fileKey) !== null && _f !== void 0 ? _f : process.env.LICENSE_FILE_KEY, isGuardFileEnabled: (_h = (_g = config.isGuardFileEnabled) !== null && _g !== void 0 ? _g : !!process.env.GUARD_FILE_ENABLED) !== null && _h !== void 0 ? _h : false, hardwareIDMethod: (_j = hardwareIDMethod !== null && hardwareIDMethod !== void 0 ? hardwareIDMethod : config.hardwareIDMethod) !== null && _j !== void 0 ? _j : 0, sdkVersion: version_1.default });
49
- (() => { const $guard = typia_1.default.assert.guard; const $io0 = input => "string" === typeof input.apiKey && "string" === typeof input.sharedKey && "string" === typeof input.apiPath && "string" === typeof input.publicKey && "string" === typeof input.productCode && "string" === typeof input.appName && "string" === typeof input.appVersion && "string" === typeof input.filePath && "string" === typeof input.filename && "number" === typeof input.gracePeriod && "string" === typeof input.fileKey && (undefined === input.airGapKey || "string" === typeof input.airGapKey) && "boolean" === typeof input.isGuardFileEnabled && "number" === typeof input.hardwareIDMethod && "string" === typeof input.sdkVersion; const $ao0 = (input, _path, _exceptionable = true) => ("string" === typeof input.apiKey || $guard(_exceptionable, {
48
+ const _config = Object.assign(Object.assign({}, config), { apiPath: (_a = config.apiPath) !== null && _a !== void 0 ? _a : process.env.API_PATH, publicKey: (_b = config.publicKey) !== null && _b !== void 0 ? _b : process.env.PUBLIC_KEY, filename: (_c = config.filename) !== null && _c !== void 0 ? _c : process.env.FILENAME, filePath: (_d = config.filePath) !== null && _d !== void 0 ? _d : process.env.FILE_PATH, gracePeriod: (_e = config.gracePeriod) !== null && _e !== void 0 ? _e : 24, fileKey: (_f = config.fileKey) !== null && _f !== void 0 ? _f : process.env.LICENSE_FILE_KEY, isGuardFileEnabled: (_h = (_g = config.isGuardFileEnabled) !== null && _g !== void 0 ? _g : !!process.env.GUARD_FILE_ENABLED) !== null && _h !== void 0 ? _h : false, hardwareIDMethod: (_j = hardwareIDMethod !== null && hardwareIDMethod !== void 0 ? hardwareIDMethod : config.hardwareIDMethod) !== null && _j !== void 0 ? _j : 0, sdkVersion: version_1.default, proxy: config.proxy });
49
+ (() => { const $guard = typia_1.default.assert.guard; const $io0 = input => "string" === typeof input.apiKey && "string" === typeof input.sharedKey && "string" === typeof input.apiPath && "string" === typeof input.publicKey && "string" === typeof input.productCode && "string" === typeof input.appName && "string" === typeof input.appVersion && "string" === typeof input.filePath && "string" === typeof input.filename && "number" === typeof input.gracePeriod && "string" === typeof input.fileKey && (undefined === input.airGapKey || "string" === typeof input.airGapKey) && "boolean" === typeof input.isGuardFileEnabled && "number" === typeof input.hardwareIDMethod && "string" === typeof input.sdkVersion && (undefined === input.proxy || "object" === typeof input.proxy && null !== input.proxy && $io1(input.proxy)); const $io1 = input => "string" === typeof input.host && "number" === typeof input.port && (undefined === input.auth || "object" === typeof input.auth && null !== input.auth && $io2(input.auth)) && (undefined === input.protocol || "string" === typeof input.protocol); const $io2 = input => "string" === typeof input.username && "string" === typeof input.password; const $ao0 = (input, _path, _exceptionable = true) => ("string" === typeof input.apiKey || $guard(_exceptionable, {
50
50
  path: _path + ".apiKey",
51
51
  expected: "string",
52
52
  value: input.apiKey
@@ -106,6 +106,42 @@ class AbstractManager {
106
106
  path: _path + ".sdkVersion",
107
107
  expected: "string",
108
108
  value: input.sdkVersion
109
+ }, _errorFactory)) && (undefined === input.proxy || ("object" === typeof input.proxy && null !== input.proxy || $guard(_exceptionable, {
110
+ path: _path + ".proxy",
111
+ expected: "(AxiosProxyConfig | undefined)",
112
+ value: input.proxy
113
+ }, _errorFactory)) && $ao1(input.proxy, _path + ".proxy", true && _exceptionable) || $guard(_exceptionable, {
114
+ path: _path + ".proxy",
115
+ expected: "(AxiosProxyConfig | undefined)",
116
+ value: input.proxy
117
+ }, _errorFactory)); const $ao1 = (input, _path, _exceptionable = true) => ("string" === typeof input.host || $guard(_exceptionable, {
118
+ path: _path + ".host",
119
+ expected: "string",
120
+ value: input.host
121
+ }, _errorFactory)) && ("number" === typeof input.port || $guard(_exceptionable, {
122
+ path: _path + ".port",
123
+ expected: "number",
124
+ value: input.port
125
+ }, _errorFactory)) && (undefined === input.auth || ("object" === typeof input.auth && null !== input.auth || $guard(_exceptionable, {
126
+ path: _path + ".auth",
127
+ expected: "(AxiosBasicCredentials | undefined)",
128
+ value: input.auth
129
+ }, _errorFactory)) && $ao2(input.auth, _path + ".auth", true && _exceptionable) || $guard(_exceptionable, {
130
+ path: _path + ".auth",
131
+ expected: "(AxiosBasicCredentials | undefined)",
132
+ value: input.auth
133
+ }, _errorFactory)) && (undefined === input.protocol || "string" === typeof input.protocol || $guard(_exceptionable, {
134
+ path: _path + ".protocol",
135
+ expected: "(string | undefined)",
136
+ value: input.protocol
137
+ }, _errorFactory)); const $ao2 = (input, _path, _exceptionable = true) => ("string" === typeof input.username || $guard(_exceptionable, {
138
+ path: _path + ".username",
139
+ expected: "string",
140
+ value: input.username
141
+ }, _errorFactory)) && ("string" === typeof input.password || $guard(_exceptionable, {
142
+ path: _path + ".password",
143
+ expected: "string",
144
+ value: input.password
109
145
  }, _errorFactory)); const __is = input => "object" === typeof input && null !== input && $io0(input); let _errorFactory; return (input, errorFactory) => {
110
146
  if (false === __is(input)) {
111
147
  _errorFactory = errorFactory;
@@ -138,6 +174,11 @@ class AbstractManager {
138
174
  this.watchdog = new watchdog_1.Watchdog(new license_1.default(this.config.productCode, this.licenseAPI, this.licenseFile, this.floatingAPI));
139
175
  this.config = _config;
140
176
  }
177
+ setProxy(proxy) {
178
+ this.config.proxy = proxy !== null && proxy !== void 0 ? proxy : undefined;
179
+ this.licenseAPI.setProxy(proxy);
180
+ this.floatingAPI.setProxy(proxy);
181
+ }
141
182
  getHardwareID(algorithm) {
142
183
  var _a;
143
184
  if (algorithm === void 0) { algorithm = (_a = this.config.hardwareIDMethod) !== null && _a !== void 0 ? _a : 0; }
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-manager.js","sourceRoot":"","sources":["../../src/abstract-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abstract-manager.js","sourceRoot":"","sources":["../../src/abstract-manager.ts"],"names":[],"mappings":"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"}