UNPKG

netlicensing-client

Version:

JavaScript Wrapper for Labs64 NetLicensing RESTful API

1,662 lines (1,493 loc) 654 kB
(function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(); else if(typeof define === 'function' && define.amd) define("NetLicensing", [], factory); else if(typeof exports === 'object') exports["NetLicensing"] = factory(); else root["NetLicensing"] = factory(); })(this, () => { return /******/ (() => { // webpackBootstrap /******/ var __webpack_modules__ = ({ /***/ 28: /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var iterate = __webpack_require__(8051) , initState = __webpack_require__(9500) , terminator = __webpack_require__(6276) ; // Public API module.exports = serialOrdered; // sorting helpers module.exports.ascending = ascending; module.exports.descending = descending; /** * Runs iterator over provided sorted array elements in series * * @param {array|object} list - array or object (named list) to iterate over * @param {function} iterator - iterator to run * @param {function} sortMethod - custom sort function * @param {function} callback - invoked when all elements processed * @returns {function} - jobs terminator */ function serialOrdered(list, iterator, sortMethod, callback) { var state = initState(list, sortMethod); iterate(list, iterator, state, function iteratorHandler(error, result) { if (error) { callback(error, result); return; } state.index++; // are we there yet? if (state.index < (state['keyedList'] || list).length) { iterate(list, iterator, state, iteratorHandler); return; } // done here callback(null, state.results); }); return terminator.bind(state, callback); } /* * -- Sort methods */ /** * sort helper to sort array elements in ascending order * * @param {mixed} a - an item to compare * @param {mixed} b - an item to compare * @returns {number} - comparison result */ function ascending(a, b) { return a < b ? -1 : a > b ? 1 : 0; } /** * sort helper to sort array elements in descending order * * @param {mixed} a - an item to compare * @param {mixed} b - an item to compare * @returns {number} - comparison result */ function descending(a, b) { return -1 * ascending(a, b); } /***/ }), /***/ 52: /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(4994); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _itemToObject = _interopRequireDefault(__webpack_require__(670)); var _LicenseTemplate = _interopRequireDefault(__webpack_require__(2476)); var _default = exports["default"] = function _default(item) { return new _LicenseTemplate.default((0, _itemToObject.default)(item)); }; /***/ }), /***/ 76: /***/ ((module) => { "use strict"; /** @type {import('./functionCall')} */ module.exports = Function.prototype.call; /***/ }), /***/ 79: /***/ ((module) => { function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ 269: /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(4994); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _classCallCheck2 = _interopRequireDefault(__webpack_require__(7383)); var _createClass2 = _interopRequireDefault(__webpack_require__(4579)); var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(8452)); var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(3072)); var _inherits2 = _interopRequireDefault(__webpack_require__(9511)); var _BaseEntity2 = _interopRequireDefault(__webpack_require__(635)); var _LicenseTransactionJoin = _interopRequireDefault(__webpack_require__(3716)); var _License = _interopRequireDefault(__webpack_require__(1938)); function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); } function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } /** * @author Labs64 <netlicensing@labs64.com> * @license Apache-2.0 * @link https://netlicensing.io * @copyright 2017 Labs64 NetLicensing */ /** * Transaction entity used internally by NetLicensing. * * Properties visible via NetLicensing API: * * Unique number (across all products of a vendor) that identifies the transaction. This number is * always generated by NetLicensing. * @property string number * * always true for transactions * @property boolean active * * Status of transaction. "CANCELLED", "CLOSED", "PENDING". * @property string status * * "SHOP". AUTO transaction for internal use only. * @property string source * * grand total for SHOP transaction (see source). * @property float grandTotal * * discount for SHOP transaction (see source). * @property float discount * * specifies currency for money fields (grandTotal and discount). Check data types to discover which * @property string currency * * Date created. Optional. * @property string dateCreated * * Date closed. Optional. * @property string dateClosed * * @constructor */ var Transaction = exports["default"] = /*#__PURE__*/function (_BaseEntity) { function Transaction(properties) { (0, _classCallCheck2.default)(this, Transaction); return _callSuper(this, Transaction, [{ properties: properties, // The attributes that should be cast to native types. casts: { number: 'string', name: 'string', status: 'string', source: 'string', grandTotal: 'float', discount: 'float', currency: 'string', dateCreated: 'date', dateClosed: 'date', active: 'boolean', paymentMethod: 'string' } }]); } (0, _inherits2.default)(Transaction, _BaseEntity); return (0, _createClass2.default)(Transaction, [{ key: "setNumber", value: function setNumber(number) { return this.setProperty('number', number); } }, { key: "getNumber", value: function getNumber(def) { return this.getProperty('number', def); } }, { key: "setName", value: function setName(name) { return this.setProperty('name', name); } }, { key: "getName", value: function getName(def) { return this.getProperty('name', def); } }, { key: "setStatus", value: function setStatus(status) { return this.setProperty('status', status); } }, { key: "getStatus", value: function getStatus(def) { return this.getProperty('status', def); } }, { key: "setSource", value: function setSource(source) { return this.setProperty('source', source); } }, { key: "getSource", value: function getSource(def) { return this.getProperty('source', def); } }, { key: "setGrandTotal", value: function setGrandTotal(grandTotal) { return this.setProperty('grandTotal', grandTotal); } }, { key: "getGrandTotal", value: function getGrandTotal(def) { return this.getProperty('grandTotal', def); } }, { key: "setDiscount", value: function setDiscount(discount) { return this.setProperty('discount', discount); } }, { key: "getDiscount", value: function getDiscount(def) { return this.getProperty('discount', def); } }, { key: "setCurrency", value: function setCurrency(currency) { return this.setProperty('currency', currency); } }, { key: "getCurrency", value: function getCurrency(def) { return this.getProperty('currency', def); } }, { key: "setDateCreated", value: function setDateCreated(dateCreated) { return this.setProperty('dateCreated', dateCreated); } }, { key: "getDateCreated", value: function getDateCreated(def) { return this.getProperty('dateCreated', def); } }, { key: "setDateClosed", value: function setDateClosed(dateClosed) { return this.setProperty('dateClosed', dateClosed); } }, { key: "getDateClosed", value: function getDateClosed(def) { return this.getProperty('dateClosed', def); } }, { key: "setPaymentMethod", value: function setPaymentMethod(paymentMethod) { return this.setProperty('paymentMethod', paymentMethod); } }, { key: "getPaymentMethod", value: function getPaymentMethod(def) { return this.getProperty('paymentMethod', def); } }, { key: "setActive", value: function setActive() { return this.setProperty('active', true); } }, { key: "getLicenseTransactionJoins", value: function getLicenseTransactionJoins(def) { return this.getProperty('licenseTransactionJoins', def); } }, { key: "setLicenseTransactionJoins", value: function setLicenseTransactionJoins(licenseTransactionJoins) { return this.setProperty('licenseTransactionJoins', licenseTransactionJoins); } }, { key: "setListLicenseTransactionJoin", value: function setListLicenseTransactionJoin(properties) { if (!properties) return; var licenseTransactionJoins = this.getProperty('licenseTransactionJoins', []); var licenseTransactionJoin = new _LicenseTransactionJoin.default(); properties.forEach(function (property) { if (property.name === 'licenseNumber') { licenseTransactionJoin.setLicense(new _License.default({ number: property.value })); } if (property.name === 'transactionNumber') { licenseTransactionJoin.setTransaction(new Transaction({ number: property.value })); } }); licenseTransactionJoins.push(licenseTransactionJoin); this.setProperty('licenseTransactionJoins', licenseTransactionJoins); } }]); }(_BaseEntity2.default); /***/ }), /***/ 405: /***/ ((module) => { module.exports = defer; /** * Runs provided function on next iteration of the event loop * * @param {function} fn - function to run */ function defer(fn) { var nextTick = typeof setImmediate == 'function' ? setImmediate : ( typeof process == 'object' && typeof process.nextTick == 'function' ? process.nextTick : null ); if (nextTick) { nextTick(fn); } else { setTimeout(fn, 0); } } /***/ }), /***/ 414: /***/ ((module) => { "use strict"; /** @type {import('./round')} */ module.exports = Math.round; /***/ }), /***/ 453: /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; var undefined; var $Object = __webpack_require__(9612); var $Error = __webpack_require__(9383); var $EvalError = __webpack_require__(1237); var $RangeError = __webpack_require__(9290); var $ReferenceError = __webpack_require__(9538); var $SyntaxError = __webpack_require__(8068); var $TypeError = __webpack_require__(9675); var $URIError = __webpack_require__(5345); var abs = __webpack_require__(1514); var floor = __webpack_require__(8968); var max = __webpack_require__(6188); var min = __webpack_require__(8002); var pow = __webpack_require__(5880); var round = __webpack_require__(414); var sign = __webpack_require__(3093); var $Function = Function; // eslint-disable-next-line consistent-return var getEvalledConstructor = function (expressionSyntax) { try { return $Function('"use strict"; return (' + expressionSyntax + ').constructor;')(); } catch (e) {} }; var $gOPD = __webpack_require__(5795); var $defineProperty = __webpack_require__(655); var throwTypeError = function () { throw new $TypeError(); }; var ThrowTypeError = $gOPD ? (function () { try { // eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties arguments.callee; // IE 8 does not throw here return throwTypeError; } catch (calleeThrows) { try { // IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '') return $gOPD(arguments, 'callee').get; } catch (gOPDthrows) { return throwTypeError; } } }()) : throwTypeError; var hasSymbols = __webpack_require__(4039)(); var getProto = __webpack_require__(3628); var $ObjectGPO = __webpack_require__(1064); var $ReflectGPO = __webpack_require__(8648); var $apply = __webpack_require__(1002); var $call = __webpack_require__(76); var needsEval = {}; var TypedArray = typeof Uint8Array === 'undefined' || !getProto ? undefined : getProto(Uint8Array); var INTRINSICS = { __proto__: null, '%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError, '%Array%': Array, '%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer, '%ArrayIteratorPrototype%': hasSymbols && getProto ? getProto([][Symbol.iterator]()) : undefined, '%AsyncFromSyncIteratorPrototype%': undefined, '%AsyncFunction%': needsEval, '%AsyncGenerator%': needsEval, '%AsyncGeneratorFunction%': needsEval, '%AsyncIteratorPrototype%': needsEval, '%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics, '%BigInt%': typeof BigInt === 'undefined' ? undefined : BigInt, '%BigInt64Array%': typeof BigInt64Array === 'undefined' ? undefined : BigInt64Array, '%BigUint64Array%': typeof BigUint64Array === 'undefined' ? undefined : BigUint64Array, '%Boolean%': Boolean, '%DataView%': typeof DataView === 'undefined' ? undefined : DataView, '%Date%': Date, '%decodeURI%': decodeURI, '%decodeURIComponent%': decodeURIComponent, '%encodeURI%': encodeURI, '%encodeURIComponent%': encodeURIComponent, '%Error%': $Error, '%eval%': eval, // eslint-disable-line no-eval '%EvalError%': $EvalError, '%Float16Array%': typeof Float16Array === 'undefined' ? undefined : Float16Array, '%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array, '%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array, '%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry, '%Function%': $Function, '%GeneratorFunction%': needsEval, '%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array, '%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array, '%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array, '%isFinite%': isFinite, '%isNaN%': isNaN, '%IteratorPrototype%': hasSymbols && getProto ? getProto(getProto([][Symbol.iterator]())) : undefined, '%JSON%': typeof JSON === 'object' ? JSON : undefined, '%Map%': typeof Map === 'undefined' ? undefined : Map, '%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Map()[Symbol.iterator]()), '%Math%': Math, '%Number%': Number, '%Object%': $Object, '%Object.getOwnPropertyDescriptor%': $gOPD, '%parseFloat%': parseFloat, '%parseInt%': parseInt, '%Promise%': typeof Promise === 'undefined' ? undefined : Promise, '%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy, '%RangeError%': $RangeError, '%ReferenceError%': $ReferenceError, '%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect, '%RegExp%': RegExp, '%Set%': typeof Set === 'undefined' ? undefined : Set, '%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Set()[Symbol.iterator]()), '%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer, '%String%': String, '%StringIteratorPrototype%': hasSymbols && getProto ? getProto(''[Symbol.iterator]()) : undefined, '%Symbol%': hasSymbols ? Symbol : undefined, '%SyntaxError%': $SyntaxError, '%ThrowTypeError%': ThrowTypeError, '%TypedArray%': TypedArray, '%TypeError%': $TypeError, '%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array, '%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray, '%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array, '%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array, '%URIError%': $URIError, '%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap, '%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef, '%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet, '%Function.prototype.call%': $call, '%Function.prototype.apply%': $apply, '%Object.defineProperty%': $defineProperty, '%Object.getPrototypeOf%': $ObjectGPO, '%Math.abs%': abs, '%Math.floor%': floor, '%Math.max%': max, '%Math.min%': min, '%Math.pow%': pow, '%Math.round%': round, '%Math.sign%': sign, '%Reflect.getPrototypeOf%': $ReflectGPO }; if (getProto) { try { null.error; // eslint-disable-line no-unused-expressions } catch (e) { // https://github.com/tc39/proposal-shadowrealm/pull/384#issuecomment-1364264229 var errorProto = getProto(getProto(e)); INTRINSICS['%Error.prototype%'] = errorProto; } } var doEval = function doEval(name) { var value; if (name === '%AsyncFunction%') { value = getEvalledConstructor('async function () {}'); } else if (name === '%GeneratorFunction%') { value = getEvalledConstructor('function* () {}'); } else if (name === '%AsyncGeneratorFunction%') { value = getEvalledConstructor('async function* () {}'); } else if (name === '%AsyncGenerator%') { var fn = doEval('%AsyncGeneratorFunction%'); if (fn) { value = fn.prototype; } } else if (name === '%AsyncIteratorPrototype%') { var gen = doEval('%AsyncGenerator%'); if (gen && getProto) { value = getProto(gen.prototype); } } INTRINSICS[name] = value; return value; }; var LEGACY_ALIASES = { __proto__: null, '%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'], '%ArrayPrototype%': ['Array', 'prototype'], '%ArrayProto_entries%': ['Array', 'prototype', 'entries'], '%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'], '%ArrayProto_keys%': ['Array', 'prototype', 'keys'], '%ArrayProto_values%': ['Array', 'prototype', 'values'], '%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'], '%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'], '%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'], '%BooleanPrototype%': ['Boolean', 'prototype'], '%DataViewPrototype%': ['DataView', 'prototype'], '%DatePrototype%': ['Date', 'prototype'], '%ErrorPrototype%': ['Error', 'prototype'], '%EvalErrorPrototype%': ['EvalError', 'prototype'], '%Float32ArrayPrototype%': ['Float32Array', 'prototype'], '%Float64ArrayPrototype%': ['Float64Array', 'prototype'], '%FunctionPrototype%': ['Function', 'prototype'], '%Generator%': ['GeneratorFunction', 'prototype'], '%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'], '%Int8ArrayPrototype%': ['Int8Array', 'prototype'], '%Int16ArrayPrototype%': ['Int16Array', 'prototype'], '%Int32ArrayPrototype%': ['Int32Array', 'prototype'], '%JSONParse%': ['JSON', 'parse'], '%JSONStringify%': ['JSON', 'stringify'], '%MapPrototype%': ['Map', 'prototype'], '%NumberPrototype%': ['Number', 'prototype'], '%ObjectPrototype%': ['Object', 'prototype'], '%ObjProto_toString%': ['Object', 'prototype', 'toString'], '%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'], '%PromisePrototype%': ['Promise', 'prototype'], '%PromiseProto_then%': ['Promise', 'prototype', 'then'], '%Promise_all%': ['Promise', 'all'], '%Promise_reject%': ['Promise', 'reject'], '%Promise_resolve%': ['Promise', 'resolve'], '%RangeErrorPrototype%': ['RangeError', 'prototype'], '%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'], '%RegExpPrototype%': ['RegExp', 'prototype'], '%SetPrototype%': ['Set', 'prototype'], '%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'], '%StringPrototype%': ['String', 'prototype'], '%SymbolPrototype%': ['Symbol', 'prototype'], '%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'], '%TypedArrayPrototype%': ['TypedArray', 'prototype'], '%TypeErrorPrototype%': ['TypeError', 'prototype'], '%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'], '%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'], '%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'], '%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'], '%URIErrorPrototype%': ['URIError', 'prototype'], '%WeakMapPrototype%': ['WeakMap', 'prototype'], '%WeakSetPrototype%': ['WeakSet', 'prototype'] }; var bind = __webpack_require__(6743); var hasOwn = __webpack_require__(9957); var $concat = bind.call($call, Array.prototype.concat); var $spliceApply = bind.call($apply, Array.prototype.splice); var $replace = bind.call($call, String.prototype.replace); var $strSlice = bind.call($call, String.prototype.slice); var $exec = bind.call($call, RegExp.prototype.exec); /* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */ var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g; var reEscapeChar = /\\(\\)?/g; /** Used to match backslashes in property paths. */ var stringToPath = function stringToPath(string) { var first = $strSlice(string, 0, 1); var last = $strSlice(string, -1); if (first === '%' && last !== '%') { throw new $SyntaxError('invalid intrinsic syntax, expected closing `%`'); } else if (last === '%' && first !== '%') { throw new $SyntaxError('invalid intrinsic syntax, expected opening `%`'); } var result = []; $replace(string, rePropName, function (match, number, quote, subString) { result[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match; }); return result; }; /* end adaptation */ var getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) { var intrinsicName = name; var alias; if (hasOwn(LEGACY_ALIASES, intrinsicName)) { alias = LEGACY_ALIASES[intrinsicName]; intrinsicName = '%' + alias[0] + '%'; } if (hasOwn(INTRINSICS, intrinsicName)) { var value = INTRINSICS[intrinsicName]; if (value === needsEval) { value = doEval(intrinsicName); } if (typeof value === 'undefined' && !allowMissing) { throw new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!'); } return { alias: alias, name: intrinsicName, value: value }; } throw new $SyntaxError('intrinsic ' + name + ' does not exist!'); }; module.exports = function GetIntrinsic(name, allowMissing) { if (typeof name !== 'string' || name.length === 0) { throw new $TypeError('intrinsic name must be a non-empty string'); } if (arguments.length > 1 && typeof allowMissing !== 'boolean') { throw new $TypeError('"allowMissing" argument must be a boolean'); } if ($exec(/^%?[^%]*%?$/, name) === null) { throw new $SyntaxError('`%` may not be present anywhere but at the beginning and end of the intrinsic name'); } var parts = stringToPath(name); var intrinsicBaseName = parts.length > 0 ? parts[0] : ''; var intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing); var intrinsicRealName = intrinsic.name; var value = intrinsic.value; var skipFurtherCaching = false; var alias = intrinsic.alias; if (alias) { intrinsicBaseName = alias[0]; $spliceApply(parts, $concat([0, 1], alias)); } for (var i = 1, isOwn = true; i < parts.length; i += 1) { var part = parts[i]; var first = $strSlice(part, 0, 1); var last = $strSlice(part, -1); if ( ( (first === '"' || first === "'" || first === '`') || (last === '"' || last === "'" || last === '`') ) && first !== last ) { throw new $SyntaxError('property names with quotes must have matching quotes'); } if (part === 'constructor' || !isOwn) { skipFurtherCaching = true; } intrinsicBaseName += '.' + part; intrinsicRealName = '%' + intrinsicBaseName + '%'; if (hasOwn(INTRINSICS, intrinsicRealName)) { value = INTRINSICS[intrinsicRealName]; } else if (value != null) { if (!(part in value)) { if (!allowMissing) { throw new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.'); } return void undefined; } if ($gOPD && (i + 1) >= parts.length) { var desc = $gOPD(value, part); isOwn = !!desc; // By convention, when a data property is converted to an accessor // property to emulate a data property that does not suffer from // the override mistake, that accessor's getter is marked with // an `originalValue` property. Here, when we detect this, we // uphold the illusion by pretending to see that original data // property, i.e., returning the value rather than the getter // itself. if (isOwn && 'get' in desc && !('originalValue' in desc.get)) { value = desc.get; } else { value = value[part]; } } else { isOwn = hasOwn(value, part); value = value[part]; } if (isOwn && !skipFurtherCaching) { INTRINSICS[intrinsicRealName] = value; } } } return value; }; /***/ }), /***/ 584: /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(4994); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _classCallCheck2 = _interopRequireDefault(__webpack_require__(7383)); var _createClass2 = _interopRequireDefault(__webpack_require__(4579)); var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(8452)); var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(3072)); var _inherits2 = _interopRequireDefault(__webpack_require__(9511)); var _BaseEntity2 = _interopRequireDefault(__webpack_require__(635)); function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); } function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } /** * @author Labs64 <netlicensing@labs64.com> * @license Apache-2.0 * @link https://netlicensing.io * @copyright 2017 Labs64 NetLicensing */ /** * Product module entity used internally by NetLicensing. * * Properties visible via NetLicensing API: * * Unique number * @property string number * * If set to false, the token is disabled. * @property boolean active * * Expiration Time * @property string expirationTime * * @property string vendorNumber * * Token type to be generated. * DEFAULT - default one-time token (will be expired after first request) * SHOP - shop token is used to redirect customer to the netlicensingShop(licenseeNumber is mandatory) * APIKEY - APIKey-token * @property string tokenType * * @property string licenseeNumber * * @constructor */ var Token = exports["default"] = /*#__PURE__*/function (_BaseEntity) { function Token(properties) { (0, _classCallCheck2.default)(this, Token); return _callSuper(this, Token, [{ properties: properties, // The attributes that should be cast to native types. casts: { number: 'string', active: 'boolean', expirationTime: 'date', vendorNumber: 'string', tokenType: 'string', licenseeNumber: 'string', successURL: 'string', successURLTitle: 'string', cancelURL: 'string', cancelURLTitle: 'string', shopURL: 'string' } }]); } (0, _inherits2.default)(Token, _BaseEntity); return (0, _createClass2.default)(Token, [{ key: "setNumber", value: function setNumber(number) { return this.setProperty('number', number); } }, { key: "getNumber", value: function getNumber(def) { return this.getProperty('number', def); } }, { key: "setActive", value: function setActive(active) { return this.setProperty('active', active); } }, { key: "getActive", value: function getActive(def) { return this.getProperty('active', def); } }, { key: "setExpirationTime", value: function setExpirationTime(expirationTime) { return this.setProperty('expirationTime', expirationTime); } }, { key: "getExpirationTime", value: function getExpirationTime(def) { return this.getProperty('expirationTime', def); } }, { key: "setVendorNumber", value: function setVendorNumber(vendorNumber) { return this.setProperty('vendorNumber', vendorNumber); } }, { key: "getVendorNumber", value: function getVendorNumber(def) { return this.getProperty('vendorNumber', def); } }, { key: "setTokenType", value: function setTokenType(tokenType) { return this.setProperty('tokenType', tokenType); } }, { key: "getTokenType", value: function getTokenType(def) { return this.getProperty('tokenType', def); } }, { key: "setLicenseeNumber", value: function setLicenseeNumber(licenseeNumber) { return this.setProperty('licenseeNumber', licenseeNumber); } }, { key: "getLicenseeNumber", value: function getLicenseeNumber(def) { return this.getProperty('licenseeNumber', def); } }, { key: "setSuccessURL", value: function setSuccessURL(successURL) { return this.setProperty('successURL', successURL); } }, { key: "getSuccessURL", value: function getSuccessURL(def) { return this.getProperty('successURL', def); } }, { key: "setSuccessURLTitle", value: function setSuccessURLTitle(successURLTitle) { return this.setProperty('successURLTitle', successURLTitle); } }, { key: "getSuccessURLTitle", value: function getSuccessURLTitle(def) { return this.getProperty('successURLTitle', def); } }, { key: "setCancelURL", value: function setCancelURL(cancelURL) { return this.setProperty('cancelURL', cancelURL); } }, { key: "getCancelURL", value: function getCancelURL(def) { return this.getProperty('cancelURL', def); } }, { key: "setCancelURLTitle", value: function setCancelURLTitle(cancelURLTitle) { return this.setProperty('cancelURLTitle', cancelURLTitle); } }, { key: "getCancelURLTitle", value: function getCancelURLTitle(def) { return this.getProperty('cancelURLTitle', def); } }, { key: "getShopURL", value: function getShopURL(def) { return this.getProperty('shopURL', def); } /** * @deprecated * @alias setApiKeyRole * @param role * @returns {*} */ }, { key: "setRole", value: function setRole(role) { return this.setApiKeyRole(role); } /** * @deprecated * @alias getApiKeyRole * @param def * @returns {*} */ }, { key: "getRole", value: function getRole(def) { return this.getApiKeyRole(def); } }, { key: "setApiKeyRole", value: function setApiKeyRole(apiKeyRole) { return this.setProperty('apiKeyRole', apiKeyRole); } }, { key: "getApiKeyRole", value: function getApiKeyRole(def) { return this.getProperty('apiKeyRole', def); } }]); }(_BaseEntity2.default); /***/ }), /***/ 635: /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(4994); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _defineProperty2 = _interopRequireDefault(__webpack_require__(3693)); var _typeof2 = _interopRequireDefault(__webpack_require__(3738)); var _classCallCheck2 = _interopRequireDefault(__webpack_require__(7383)); var _createClass2 = _interopRequireDefault(__webpack_require__(4579)); var _CheckUtils = _interopRequireDefault(__webpack_require__(1305)); var _CastsUtils = _interopRequireDefault(__webpack_require__(8769)); function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } /** * @author Labs64 <netlicensing@labs64.com> * @license Apache-2.0 * @link https://netlicensing.io * @copyright 2017 Labs64 NetLicensing */ /** * The entity properties. * @type {{}} * @private */ var propertiesMap = new WeakMap(); /** * List of properties that was defined * @type {{}} * @private */ var definedMap = new WeakMap(); /** * List of properties that need be casts * @type {{}} * @private */ var castsMap = new WeakMap(); var BaseEntity = exports["default"] = /*#__PURE__*/function () { function BaseEntity(_ref) { var properties = _ref.properties, casts = _ref.casts; (0, _classCallCheck2.default)(this, BaseEntity); propertiesMap.set(this, {}); definedMap.set(this, {}); castsMap.set(this, casts || []); if (properties) { this.setProperties(properties); } } /** * Set a given property on the entity. * @param property * @param value * @returns {BaseEntity} */ return (0, _createClass2.default)(BaseEntity, [{ key: "setProperty", value: function setProperty(property, value) { // if property name has bad native type if (!_CheckUtils.default.isValid(property) || (0, _typeof2.default)(property) === 'object') { throw new TypeError("Bad property name:".concat(property)); } var castedValue = this.cast(property, value); // define to property this.define(property); // save property to propertiesMap var properties = propertiesMap.get(this); properties[property] = castedValue; return this; } /** * Alias for setProperty * @param property * @param value * @returns {BaseEntity} */ }, { key: "addProperty", value: function addProperty(property, value) { return this.setProperty(property, value); } /** * Set the entity properties. * @param properties * @returns {BaseEntity} */ }, { key: "setProperties", value: function setProperties(properties) { var _this = this; this.removeProperties(); var has = Object.prototype.hasOwnProperty; Object.keys(properties).forEach(function (key) { if (has.call(properties, key)) { _this.setProperty(key, properties[key]); } }); return this; } /** * Check if we has property * @param property * @protected */ }, { key: "hasProperty", value: function hasProperty(property) { return Object.prototype.hasOwnProperty.call(propertiesMap.get(this), property); } /** * Get an property from the entity. * @param property * @param def * @returns {*} */ }, { key: "getProperty", value: function getProperty(property, def) { return Object.prototype.hasOwnProperty.call(propertiesMap.get(this), property) ? propertiesMap.get(this)[property] : def; } /** * Get all of the current properties on the entity. */ }, { key: "getProperties", value: function getProperties() { return _objectSpread({}, propertiesMap.get(this)); } /** * Remove property * @param property * @returns {BaseEntity} */ }, { key: "removeProperty", value: function removeProperty(property) { var properties = propertiesMap.get(this); delete properties[property]; this.removeDefine(property); return this; } /** * Remove properties * @param properties */ }, { key: "removeProperties", value: function removeProperties(properties) { var _this2 = this; var propertiesForRemove = properties || Object.keys(propertiesMap.get(this)); propertiesForRemove.forEach(function (property) { _this2.removeProperty(property); }); } }, { key: "cast", value: function cast(property, value) { if (!castsMap.get(this)[property]) return value; return (0, _CastsUtils.default)(castsMap.get(this)[property], value); } /** * Check if property has defined * @param property * @protected */ }, { key: "hasDefine", value: function hasDefine(property) { return Boolean(definedMap.get(this)[property]); } /** * Define property getter and setter * @param property * @protected */ }, { key: "define", value: function define(property) { if (this.hasDefine(property)) return; if (!_CheckUtils.default.isValid(property) || (0, _typeof2.default)(property) === 'object') { throw new TypeError("Bad property name:".concat(property)); } var self = this; // delete property delete this[property]; var descriptors = { enumerable: true, configurable: true, get: function get() { return self.getProperty(property); }, set: function set(value) { self.setProperty(property, value); } }; var defined = definedMap.get(this); defined[property] = true; Object.defineProperty(this, property, descriptors); } /** * Remove property getter and setter * @param property * @protected */ }, { key: "removeDefine", value: function removeDefine(property) { if (!this.hasDefine(property)) return; var defined = definedMap.get(this); delete defined[property]; delete this[property]; } /** * Get properties map */ }, { key: "asPropertiesMap", value: function asPropertiesMap() { var _this3 = this; var properties = this.getProperties(); var customProperties = {}; var has = Object.prototype.hasOwnProperty; Object.keys(this).forEach(function (key) { if (!has.call(_this3, key)) return; customProperties[key] = _this3[key]; }); return _objectSpread(_objectSpread({}, customProperties), properties); } }]); }(); /***/ }), /***/ 655: /***/ ((module) => { "use strict"; /** @type {import('.')} */ var $defineProperty = Object.defineProperty || false; if ($defineProperty) { try { $defineProperty({}, 'a', { value: 1 }); } catch (e) { // IE 8 has a broken defineProperty $defineProperty = false; } } module.exports = $defineProperty; /***/ }), /***/ 662: /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(4994); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _defineProperty2 = _interopRequireDefault(__webpack_require__(3693)); var _classCallCheck2 = _interopRequireDefault(__webpack_require__(7383)); var _createClass2 = _interopRequireDefault(__webpack_require__(4579)); function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } /** * @author Labs64 <netlicensing@labs64.com> * @license Apache-2.0 * @link https://netlicensing.io * @copyright 2017 Labs64 NetLicensing */ var ValidationParameters = exports["default"] = /*#__PURE__*/function () { function ValidationParameters() { (0, _classCallCheck2.default)(this, ValidationParameters); this.parameters = {}; this.licenseeProperties = {}; } /** * Sets the target product * * optional productNumber, must be provided in case licensee auto-create is enabled * @param productNumber * @returns {ValidationParameters} */ return (0, _createClass2.default)(ValidationParameters, [{ key: "setProductNumber", value: function setProductNumber(productNumber) { this.productNumber = productNumber; return this; } /** * Get the target product * @returns {*} */ }, { key: "getProductNumber", value: function getProductNumber() { return this.productNumber; } /** * Sets the name for the new licensee * * optional human-readable licensee name in case licensee will be auto-created. This parameter must not * be the name, but can be used to store any other useful string information with new licensees, up to * 1000 characters. * @param licenseeName * @returns {ValidationParameters} */ }, { key: "setLicenseeName", value: function setLicenseeName(licenseeName) { this.licenseeProperties.licenseeName = licenseeName; return this; } /** * Get the licensee name * @returns {*} */ }, { key: "getLicenseeName", value: function getLicenseeName() { return this.licenseeProperties.licenseeName; } /** * Sets the licensee secret * * licensee secret stored on the client side. Refer to Licensee Secret documentation for details. * @param licenseeSecret * @returns {ValidationParameters} * @deprecated use 'NodeLocked' licensingModel instead */ }, { key: "setLicenseeSecret", value: function setLicenseeSecret(licenseeSecret) { this.licenseeProperties.licenseeSecret = licenseeSecret; return this; } /** * Get the licensee secret * @returns {*} * @deprecated use 'NodeLocked' licensingModel instead */ }, { key: "getLicenseeSecret", value: function getLicenseeSecret() { return this.licenseeProperties.licenseeSecret; } /** * Get all licensee properties */ }, { key: "getLicenseeProperties", value: function getLicenseeProperties() { return this.licenseeProperties; } /** * Set licensee property * @param key * @param value */ }, { key: "setLicenseeProperty", value: function setLicenseeProperty(key, value) { this.licenseeProperties[key] = value; return this; } /** * Get licensee property * @param key */ }, { key: "getLicenseeProperty", value: function getLicenseeProperty(key, def) { return this.licenseeProperties[key] || def; } /** * Indicates, that the validation response is intended the offline use * * @param forOfflineUse * if "true", validation response will be extended with data required for the offline use */ }, { key: "setForOfflineUse", value: function setForOfflineUse(forOfflineUse) { this.forOfflineUse = !!forOfflineUse; return this; } }, { key: "isForOfflineUse", value: function isForOfflineUse() { return !!this.forOfflineUse; } }, { key: "setDryRun", value: function setDryRun(dryRun) { this.dryRun = !!dryRun; return this; } }, { key: "getDryRun", value: function getDryRun(def) { return this.dryRun || def; } /** * Get validation parameters * @returns {*} */ }, { key: "getParameters", value: function getParameters() { return _objectSpread({}, this.parameters); } }, { key: "getProductModuleValidationParameters", value: function getProductModuleValidationParameters(productModuleNumber) { return _objectSpread({}, this.parameters[productModuleNumber]); } }, { key: "setProductModuleValidationParameters", value: function setProductModuleValidationParameters(productModuleNumber, productModuleParameters) { if (this.parameters[productModuleNumber] === undefined || !Object.keys(this.parameters[productModuleNumber]).length) { this.parameters[productModuleNumber] = {}; } this.parameters[productModuleNumber] = _objectSpread(_objectSpread({}, this.parameters[productModuleNumber]), productModuleParameters); return this; } }]); }(); /***/ }), /***/ 670: /***/ ((__unused_webpack_module, exports) => { "use strict"; Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _itemToObject = function itemToObject(item) { var object = {}; var property = item.property, list = item.list; if (property && Array.isArray(property)) { property.forEach(function (p) { var name = p.name, value = p.value; if (name) object[name] = value; }); } if (list && Array.isArray(list)) { list.forEach(function (l) { var name = l.name; if (name) { object[name] = object[name] || []; object[name].push(_itemToObject(l)); } }); } return object; }; var _default = exports["default"] = _itemToObject; /***/ }), /***/ 691: /***/ ((module) => { function _isNativeFunction(t) { try { return -1 !== Function.toString.call(t).indexOf("[native code]"); } catch (n) { return "function" == typeof t; } } module.exports = _isNativeFunction, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ 736: /***/ ((module, __unused_webpack_exports, __webpack_require__) => { /** * This is the common logic for both the Node.js and web browser * implementations of `debug()`. */ function setup(env) { createDebug.debug = createDebug; createDebug.default = createDebug; createDebug.coerce = coerce; createDebug.disable = disable; createDebug.enable = enable; createDebug.enabled = enabled; createDebug.humanize = __webpack_require__(6585); createDebug.destroy = destroy; Object.keys(env).forEach(key => { createDebug[key] = env[key]; }); /** * The currently active debug mode names, and names to skip. */ createDebug.names = []; createDebug.skips = []; /** * Map of special "%n" handling functions, for the debug "format" argument. * * Valid key names are a single, lower or upper-case letter, i.e. "n" and "N". */ createDebug.formatters = {}; /** * Selects a color for a debug namespace * @param {String} namespace The namespace string for the debug instance to be colored * @return {Number|String} An ANSI color code for the given namespace * @api private */ function selectColor(namespace) { let hash = 0; for (let i = 0; i < namespace.length; i++) { hash = ((hash << 5) - hash) + namespace.charCodeAt(i); hash |= 0; // Convert to 32bit integer } return createDebug.colors[Math.abs(hash) % createDebug.colors.length]; } createDebug.selectColor = selectColor; /** * Create a debugger with the given `namespace`. * * @param {String} namespace * @return {Function} * @api public */ function createDebug(namespace) { let prevTime; let enableOverride = null; let namespacesCache; let enabledCache; function debug(...args) { // Disabled? if (!debug.enabled) { return; } const self = debug; // Set `diff` timestamp const curr = Number(new Date()); const ms = curr - (prevTime || curr); self.diff = ms; self.prev = prevTime; self.curr = curr; prevTime = curr; args[0] = createDebug.coerce(args[0]); if (typeof args[0] !== 'string') { // Anything else let's inspect with %O args.unshift('%O'); } // Apply any `formatters` transformations let index = 0; args[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => { // If we encounter an escaped % then don't increase the array index if (match === '%%') { return '%'; } index++; const formatter = createDebug.formatters[format]; if (typeof formatter === 'function') { const val = args[index]; match = formatter.call(self, val); // Now we need to remove `args[index]` since it's inlined in the `format` args.splice(index, 1); index--; } return match; }); // Apply env-specific formatting (colors, etc.) createDebug.formatArgs.call(self, args); const logFn = self.log || createDebug.log; logFn.apply(self, args); } debug.namespace = namespace; debug.useColors = createDebug.useColors(); debug.color = createDebug.selectColor(namespace); debug.extend = extend; debug.destroy = createDebug.destroy; // XXX Temporary. Will be removed in the next major release. Object.defineProperty(debug, 'enabled', { enumerable: true, configurable: false, get: () => { if (enableOverride !== null) { return enableOverride; } if