easy-web-worker 4.0.0 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +2 -0
  2. package/lib/bundle.js +2 -134
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -8,6 +8,8 @@ Hello and welcome to **easy-web-worker** with [cancelable-promise-jq](https://ww
8
8
 
9
9
  Check out the running example with **React** and **TypeScript** at [CODEPEN](https://codepen.io/johnnynabetes/pen/wvOvygW?editors=0010); let's explore the capabilities of JavaScript's concurrent processing with Web Workers!"
10
10
 
11
+ Now EasyWebWorkers' Concurrent Mode is Now in Beta
12
+
11
13
  ### Creating a web worker never was easier!
12
14
 
13
15
  ```ts
package/lib/bundle.js CHANGED
@@ -1,134 +1,2 @@
1
- /*
2
- * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
3
- * This devtool is neither made for production nor for readable output files.
4
- * It uses "eval()" calls to create a separate source file in the browser devtools.
5
- * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
6
- * or disable the default devtool with "devtool: false".
7
- * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
8
- */
9
- (function webpackUniversalModuleDefinition(root, factory) {
10
- if(typeof exports === 'object' && typeof module === 'object')
11
- module.exports = factory();
12
- else if(typeof define === 'function' && define.amd)
13
- define([], factory);
14
- else if(typeof exports === 'object')
15
- exports["easy-web-worker"] = factory();
16
- else
17
- root["easy-web-worker"] = factory();
18
- })(this, () => {
19
- return /******/ (() => { // webpackBootstrap
20
- /******/ var __webpack_modules__ = ({
21
-
22
- /***/ "./src/EasyWebWorker.functions.ts":
23
- /*!****************************************!*\
24
- !*** ./src/EasyWebWorker.functions.ts ***!
25
- \****************************************/
26
- /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
27
-
28
- "use strict";
29
- eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.createEasyWebWorker = void 0;\nvar EasyWebWorker_1 = __webpack_require__(/*! ./EasyWebWorker */ \"./src/EasyWebWorker.ts\");\nvar createEasyWebWorker = function createEasyWebWorker(source) {\n var parameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return new EasyWebWorker_1.EasyWebWorker(source, parameters);\n};\nexports.createEasyWebWorker = createEasyWebWorker;\n\n//# sourceURL=webpack://easy-web-worker/./src/EasyWebWorker.functions.ts?");
30
-
31
- /***/ }),
32
-
33
- /***/ "./src/EasyWebWorker.ts":
34
- /*!******************************!*\
35
- !*** ./src/EasyWebWorker.ts ***!
36
- \******************************/
37
- /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
38
-
39
- "use strict";
40
- eval("\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\nfunction _regeneratorRuntime() { \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = \"function\" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || \"@@iterator\", asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\", toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, \"\"); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, \"_invoke\", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: \"normal\", arg: fn.call(obj, arg) }; } catch (err) { return { type: \"throw\", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { [\"next\", \"throw\", \"return\"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if (\"throw\" !== record.type) { var result = record.arg, value = result.value; return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke(\"next\", value, resolve, reject); }, function (err) { invoke(\"throw\", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke(\"throw\", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, \"_invoke\", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = \"suspendedStart\"; return function (method, arg) { if (\"executing\" === state) throw new Error(\"Generator is already running\"); if (\"completed\" === state) { if (\"throw\" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) { if (\"suspendedStart\" === state) throw state = \"completed\", context.arg; context.dispatchException(context.arg); } else \"return\" === context.method && context.abrupt(\"return\", context.arg); state = \"executing\"; var record = tryCatch(innerFn, self, context); if (\"normal\" === record.type) { if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = \"normal\", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: \"root\" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if (\"function\" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, \"constructor\", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) { var ctor = \"function\" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, \"toString\", function () { return \"[object Generator]\"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if (\"throw\" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if (\"root\" === entry.tryLoc) return handle(\"end\"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, \"catchLoc\"), hasFinally = hasOwn.call(entry, \"finallyLoc\"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error(\"try statement without catch or finally\"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if (\"throw\" === record.type) throw record.arg; return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, \"catch\": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if (\"throw\" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error(\"illegal catch attempt\"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nvar __awaiter = void 0 && (void 0).__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.EasyWebWorker = exports.createBlobWorker = void 0;\nvar EasyWebWorkerMessage_1 = __webpack_require__(/*! ./EasyWebWorkerMessage */ \"./src/EasyWebWorkerMessage.ts\");\nvar EasyWebWorkerFixtures_1 = __webpack_require__(/*! ./EasyWebWorkerFixtures */ \"./src/EasyWebWorkerFixtures.ts\");\nvar cancelable_promise_jq_1 = __webpack_require__(/*! cancelable-promise-jq */ \"./node_modules/cancelable-promise-jq/lib/bundle.js\");\nvar getImportScriptsTemplate = function getImportScriptsTemplate() {\n var scripts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n if (!scripts.length) return '';\n return \"self.importScripts([\\\"\".concat(scripts.join('\",\"'), \"\\\"]);\");\n};\nvar createBlobWorker = function createBlobWorker(source) {\n var imports = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n var origin = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';\n var _ref = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {},\n _ref$primitiveParamet = _ref.primitiveParameters,\n primitiveParameters = _ref$primitiveParamet === void 0 ? [] : _ref$primitiveParamet;\n var contentCollection = Array.isArray(source) ? source : [source];\n var worker_content = \"self.primitiveParameters=JSON.parse(`\".concat(JSON.stringify(primitiveParameters !== null && primitiveParameters !== void 0 ? primitiveParameters : []), \"`);\").concat(getImportScriptsTemplate(imports)).concat((0, EasyWebWorkerFixtures_1.getWorkerTemplate)()).concat(contentCollection.map(function (content) {\n return \"self.ew$=self.cw$(\\\"\".concat(origin, \"\\\");(\").concat(content, \")(self.ew$, self);\");\n }).join(''));\n return (window.URL || window.webkitURL).createObjectURL(new Blob([worker_content], {\n type: 'application/javascript'\n }));\n};\nexports.createBlobWorker = createBlobWorker;\n/**\n * This is a class to create an EasyWebWorker\n * @template TPayload - Indicates if your WORKERS messages requires a parameter to be provided, NULL indicates they doesn't\n * @template TResult - Indicates if your WORKERS messages has a result... NULL indicates all you messages are Promise<void>\n * @param {EasyWebWorkerBody<TPayload, TResult> | EasyWebWorkerBody<TPayload, TResult>[]} workerBody -\n * this parameter should be a function or set of functions that will become the body of your Web-Worker\n * IMPORTANT!! all WORKERS content is gonna be transpiled on run time, so you can not use any variable, method of resource that weren't included into the WORKER.\n * the above the reason of why we are injecting all worker context into the MessageBody Callbacks, so,\n * you could easily identify what is on the context of your Worker.\n * @param {Partial<IWorkerConfig>} WorkerConfig - You could add extra configuration to your worker,\n * consult IWorkerConfig description to have more information\n * */\nvar EasyWebWorker = /*#__PURE__*/function () {\n function EasyWebWorker(\n /**\n * this parameter should be a function or set of functions that will become the body of your Web-Worker\n * IMPORTANT!! all WORKERS content is gonna be transpiled on run time, so you can not use any variable, method of resource that weren't included into the WORKER.\n * the above the reason of why we are injecting all worker context into the MessageBody Callbacks, so,\n * you could easily identify what is on the context of your Worker.\n */\n source) {\n var _this = this;\n var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref2$scripts = _ref2.scripts,\n scripts = _ref2$scripts === void 0 ? [] : _ref2$scripts,\n name = _ref2.name,\n _ref2$onWorkerError = _ref2.onWorkerError,\n onWorkerError = _ref2$onWorkerError === void 0 ? null : _ref2$onWorkerError,\n _ref2$url = _ref2.url,\n url = _ref2$url === void 0 ? null : _ref2$url,\n _ref2$maxWorkers = _ref2.maxWorkers,\n maxWorkers = _ref2$maxWorkers === void 0 ? 1 : _ref2$maxWorkers,\n _ref2$keepAlive = _ref2.keepAlive,\n _keepAlive = _ref2$keepAlive === void 0 ? null : _ref2$keepAlive,\n _ref2$terminationDela = _ref2.terminationDelay,\n terminationDelay = _ref2$terminationDela === void 0 ? 1000 : _ref2$terminationDela,\n _ref2$warmUpWorkers = _ref2.warmUpWorkers,\n _warmUpWorkers = _ref2$warmUpWorkers === void 0 ? null : _ref2$warmUpWorkers,\n primitiveParameters = _ref2.primitiveParameters,\n _ref2$origin = _ref2.origin,\n origin = _ref2$origin === void 0 ? '' : _ref2$origin;\n _classCallCheck(this, EasyWebWorker);\n this.source = source;\n this.maxWorkers = 1;\n this.workers = [];\n this.keepAlive = true;\n this.warmUpWorkers = false;\n this.terminationDelay = 1000;\n this.origin = '';\n this.primitiveParameters = [];\n /**\n * These where send to the worker but not yet resolved\n */\n this.messagesQueue = new Map();\n /**\n * This is the URL of the worker file\n */\n this.workerUrl = null;\n /**\n * This is the list of scripts that will be imported into the worker\n */\n this.scripts = [];\n this.warmUp = function () {\n if (!_this.warmUpWorkers) return;\n var maxWorkers = _this.maxWorkers;\n new Array(maxWorkers).fill(null).forEach(function () {\n return _this.getWorkerFromPool();\n });\n };\n this.fillWorkerMethods = function (worker) {\n worker.onmessage = function (event) {\n _this.executeMessageCallback(event);\n };\n /**\n * If not handled, the error will be thrown to the global scope\n */\n worker.onerror = function (reason) {\n if (!_this.onWorkerError) throw reason;\n _this.onWorkerError(reason);\n };\n return worker;\n };\n this.createNewWorker = function () {\n var worker = new Worker(_this.workerUrl, {\n name: function () {\n var length = _this.workers.length;\n if (length === 0) return _this.name;\n return \"\".concat(_this.name, \"-\").concat(length);\n }()\n });\n return _this.fillWorkerMethods(worker);\n };\n this.getWorkerFromPool = function () {\n var maxWorkers = _this.maxWorkers,\n messagesQueue = _this.messagesQueue;\n var messagesQueueSize = messagesQueue.size;\n // there are less workers than the maximum allowed, and there is messages in the queue\n if (!_this.workers.length || _this.workers.length < maxWorkers && messagesQueueSize) {\n var _worker = _this.createNewWorker();\n _this.workers.push(_worker);\n return _worker;\n }\n // rotate the worker\n var worker = _this.workers.shift();\n _this.workers.push(worker);\n return worker;\n };\n this.computeWorkerBaseSource = function () {\n var _ref3 = function () {\n var _a, _b;\n var isWorkerInstance = _this.source instanceof Worker;\n if (isWorkerInstance) {\n // static simgle workers instance\n _this.workers = [_this.fillWorkerMethods(_this.source)];\n return {\n isArrayOfWebWorkers: false,\n workerUrl: null\n };\n }\n var isUrlBase = typeof _this.source === 'string';\n var isFunctionTemplate = typeof _this.source === 'function';\n if (isUrlBase || isFunctionTemplate) {\n var _workerUrl = (_a = _this.workerUrl) !== null && _a !== void 0 ? _a : _this.getWorkerUrl();\n return {\n isArrayOfWebWorkers: false,\n workerUrl: _workerUrl\n };\n }\n var isArraySource = Array.isArray(_this.source);\n var isArrayOfFunctionsTemplates = isArraySource && typeof _this.source[0] === 'function';\n if (isArrayOfFunctionsTemplates) {\n var _workerUrl2 = (_b = _this.workerUrl) !== null && _b !== void 0 ? _b : _this.getWorkerUrl();\n return {\n isArrayOfWebWorkers: false,\n workerUrl: _workerUrl2\n };\n }\n var isArrayOfWebWorkers = isArraySource && _this.source[0] instanceof Worker;\n if (isArrayOfWebWorkers) {\n // static workers collection\n _this.workers = _this.source.map(_this.fillWorkerMethods);\n return {\n isArrayOfWebWorkers: isArrayOfWebWorkers,\n workerUrl: null\n };\n }\n return {\n isArrayOfWebWorkers: false,\n workerUrl: null\n };\n }(),\n workerUrl = _ref3.workerUrl,\n isArrayOfWebWorkers = _ref3.isArrayOfWebWorkers;\n _this.workerUrl = workerUrl;\n _this.maxWorkers = isArrayOfWebWorkers ? _this.workers.length : _this.maxWorkers;\n // if the source is an array of web workers we need to keep them alive\n _this.keepAlive = isArrayOfWebWorkers ? true : _this.keepAlive;\n };\n /**\n * Send a message to the worker queue\n * @param {TPayload} payload - whatever json data you want to send to the worker\n * @returns {IMessagePromise<TResult>} generated defer that will be resolved when the message completed\n */\n this.send = function () {\n for (var _len = arguments.length, payload = new Array(_len), _key = 0; _key < _len; _key++) {\n payload[_key] = arguments[_key];\n }\n var $payload = payload[0];\n return _this.sendToWorker({\n payload: $payload\n });\n };\n this.sendToWorker = function (_ref4) {\n var payload = _ref4.payload,\n method = _ref4.method;\n var _a, _b;\n var message = new EasyWebWorkerMessage_1.EasyWebWorkerMessage();\n var messageId = message.messageId,\n decoupledPromise = message.decoupledPromise;\n var cancel = decoupledPromise.cancel;\n var worker = _this.getWorkerFromPool();\n decoupledPromise.promise.cancel = function (reason) {\n // restore the original cancel method so we can cancel the message when the worker response\n decoupledPromise.cancel = cancel;\n // if the message is canceled, we need to send a cancelation message to the worker,\n // once the worker response, the message will be removed from the queue nad the promise will be canceled in the main thread\n var data = {\n messageId: messageId,\n method: method,\n cancelation: {\n reason: reason\n }\n };\n // if the worker was disposed, we need to automatically reject the promise\n if (!_this.workers.length) {\n cancel(reason);\n return (0, cancelable_promise_jq_1.toCancelablePromise)(Promise.reject(reason));\n }\n worker.postMessage(data);\n return decoupledPromise.promise;\n };\n if (!_this.keepAlive) {\n (_b = (_a = decoupledPromise.promise) === null || _a === void 0 ? void 0 : _a[\"finally\"]) === null || _b === void 0 ? void 0 : _b.call(_a, function () {\n setTimeout(function () {\n var messagesQueue = _this.messagesQueue;\n if (messagesQueue.size) return;\n _this.workers.forEach(function (worker) {\n return worker.terminate();\n });\n _this.workers = [];\n }, _this.terminationDelay);\n });\n }\n _this.addMessageToQueue(message);\n var data = {\n messageId: messageId,\n method: method,\n execution: {\n payload: payload\n }\n };\n worker.postMessage(data);\n return decoupledPromise.promise;\n };\n /**\n * This method terminate all current messages and send a new one to the worker queue\n * @param {TPayload} payload - whatever json data you want to send to the worker, should be serializable\n * @param {unknown} reason - reason why the worker was terminated\n * @returns {IMessagePromise<TResult>} generated defer that will be resolved when the message completed\n */\n this.override = function () {\n for (var _len2 = arguments.length, _ref5 = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n _ref5[_key2] = arguments[_key2];\n }\n var payload = _ref5[0],\n reason = _ref5[1],\n config = _ref5[2];\n return __awaiter(_this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return this.cancelAll(reason, config);\n case 2:\n return _context.abrupt(\"return\", this.send.apply(this, [payload]));\n case 3:\n case \"end\":\n return _context.stop();\n }\n }, _callee, this);\n }));\n };\n /**\n * This method will alow the current message to be completed and send a new one to the worker queue after it, all the messages after the current one will be canceled\n * @param {TPayload} payload - whatever json data you want to send to the worker should be serializable\n * @param {unknown} reason - reason why the worker was terminated\n * @returns {IMessagePromise<TResult>} generated defer that will be resolved when the message completed\n */\n this.overrideAfterCurrent = function () {\n for (var _len3 = arguments.length, _ref6 = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n _ref6[_key3] = arguments[_key3];\n }\n var payload = _ref6[0],\n reason = _ref6[1],\n config = _ref6[2];\n return __awaiter(_this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {\n var _this$messagesQueue, firstItem, _firstItem, currentMessage;\n return _regeneratorRuntime().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n if (!this.messagesQueue.size) {\n _context2.next = 7;\n break;\n }\n _this$messagesQueue = _slicedToArray(this.messagesQueue, 1), firstItem = _this$messagesQueue[0];\n _firstItem = _slicedToArray(firstItem, 2), currentMessage = _firstItem[1];\n this.RemoveMessageFromQueue(currentMessage.messageId);\n _context2.next = 6;\n return this.cancelAll(reason, config);\n case 6:\n this.addMessageToQueue(currentMessage);\n case 7:\n return _context2.abrupt(\"return\", this.send.apply(this, [payload]));\n case 8:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2, this);\n }));\n };\n var warmUpWorkers = !maxWorkers || maxWorkers === 1 ? true : _warmUpWorkers;\n var keepAlive = warmUpWorkers || (_keepAlive !== null && _keepAlive !== void 0 ? _keepAlive : false);\n this.name = name || (0, EasyWebWorkerFixtures_1.generatedId)();\n this.scripts = scripts;\n this.onWorkerError = onWorkerError;\n this.workerUrl = url !== null && url !== void 0 ? url : null;\n this.maxWorkers = maxWorkers;\n this.keepAlive = keepAlive;\n this.terminationDelay = terminationDelay;\n this.warmUpWorkers = warmUpWorkers;\n this.primitiveParameters = primitiveParameters !== null && primitiveParameters !== void 0 ? primitiveParameters : [];\n this.origin = origin;\n this.computeWorkerBaseSource();\n this.warmUp();\n }\n _createClass(EasyWebWorker, [{\n key: \"worker\",\n get:\n /**\n * @deprecated Directly modifying the worker may lead to unexpected behavior. Use it only if you know what you are doing.\n */\n function get() {\n return this.workers.length > 1 ? null : this.workers[0];\n }\n }, {\n key: \"isExternalWorkerFile\",\n get: function get() {\n return typeof this.source === 'string';\n }\n }, {\n key: \"RemoveMessageFromQueue\",\n value: function RemoveMessageFromQueue(messageId) {\n this.messagesQueue[\"delete\"](messageId);\n }\n /**\n * Categorizes the worker response and executes the corresponding callback\n */\n }, {\n key: \"executeMessageCallback\",\n value: function executeMessageCallback(event) {\n var _a;\n var message = (_a = this.messagesQueue.get(event.data.messageId)) !== null && _a !== void 0 ? _a : null;\n if (!message) return;\n var progress = event.data.progress;\n // workers were disposed before the message was resolved\n if (!this.workers.length) {\n this.RemoveMessageFromQueue(message.messageId);\n return;\n }\n var decoupledPromise = message.decoupledPromise;\n // execute progress callback\n if (progress) {\n var percentage = progress.percentage,\n _payload = progress.payload;\n decoupledPromise.reportProgress(percentage, _payload);\n return;\n }\n // remove message from queue\n this.RemoveMessageFromQueue(message.messageId);\n var worker_canceled = event.data.worker_canceled;\n if (worker_canceled) {\n var reason = worker_canceled.reason;\n decoupledPromise.reject(reason);\n return;\n }\n var rejected = event.data.rejected;\n if (rejected) {\n var _reason = rejected.reason;\n decoupledPromise.reject(_reason);\n return;\n }\n var resolved = event.data.resolved;\n var payload = resolved.payload;\n // resolve message with the serialized payload\n decoupledPromise.resolve.apply(decoupledPromise, _toConsumableArray(payload !== null && payload !== void 0 ? payload : []));\n }\n }, {\n key: \"getWorkerUrl\",\n value: function getWorkerUrl() {\n var _a;\n if (this.isExternalWorkerFile) {\n return this.source;\n }\n return (0, exports.createBlobWorker)(this.source, this.scripts, (_a = this.origin) !== null && _a !== void 0 ? _a : '', {\n primitiveParameters: this.primitiveParameters\n });\n }\n /**\n * Execute the cancel callback of each message in the queue if provided\n * @param {unknown} reason - reason messages where canceled\n * @param {boolean} force - if true, the messages will be cancelled immediately without waiting for the worker to respond\n * This action will reboot the worker\n */\n }, {\n key: \"cancelAll\",\n value: function cancelAll(reason) {\n var _ref7 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref7$force = _ref7.force,\n force = _ref7$force === void 0 ? false : _ref7$force;\n var messages = Array.from(this.messagesQueue.values());\n var total = messages.length;\n var percentage = 100 / total;\n if (force) {\n return this.reboot(reason);\n }\n var rejectedPromises = messages.map(function (message) {\n var decoupledPromise = message.decoupledPromise;\n var promise = decoupledPromise.promise;\n // promises are gonna be rejected so we need to wait until they are settled\n return promise.cancel(reason)[\"catch\"](function (error) {\n promise.reportProgress(percentage, error);\n return error;\n });\n });\n return Promise.all(rejectedPromises);\n }\n }, {\n key: \"addMessageToQueue\",\n value: function addMessageToQueue(message) {\n this.messagesQueue.set(message.messageId, message);\n }\n /**\n * Send a message to the worker queue to an specific method\n * @template TResult_ - result type of the message (if any)\n * @template TPayload_ - payload type of the message (if any)\n * @param {string} method - method name\n * @param {TPayload} payload - whatever json data you want to send to the worker\n * @returns {IMessagePromise<TResult>} generated defer that will be resolved when the message completed\n */\n }, {\n key: \"sendToMethod\",\n value: function sendToMethod(method, payload) {\n return this.sendToWorker({\n method: method,\n payload: payload\n });\n }\n /**\n * This method will reboot the worker and cancel all the messages in the queue\n * @param {unknown} reason - reason why the worker will be restarted\n */\n }, {\n key: \"reboot\",\n value: function reboot() {\n var reason = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'Worker was rebooted';\n if (!this.workerUrl) {\n throw new Error('You can not reboot a worker that was created from a Worker Instance');\n }\n this.workers.forEach(function (worker) {\n return worker.terminate();\n });\n this.workers = [];\n // the messages need to be canceled before the worker is restarted to force an immediate rejection\n var resolutionPromises = this.cancelAll(reason);\n this.warmUp();\n return resolutionPromises;\n }\n /**\n * This method will remove the WebWorker and the BlobUrl\n */\n }, {\n key: \"dispose\",\n value: function dispose() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {\n return _regeneratorRuntime().wrap(function _callee3$(_context3) {\n while (1) switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return this.cancelAll(null);\n case 2:\n if (this.workerUrl) URL.revokeObjectURL(this.workerUrl);\n this.workers.forEach(function (worker) {\n return worker.terminate();\n });\n this.workers = [];\n case 5:\n case \"end\":\n return _context3.stop();\n }\n }, _callee3, this);\n }));\n }\n }]);\n return EasyWebWorker;\n}();\nexports.EasyWebWorker = EasyWebWorker;\n\n//# sourceURL=webpack://easy-web-worker/./src/EasyWebWorker.ts?");
41
-
42
- /***/ }),
43
-
44
- /***/ "./src/EasyWebWorkerFixtures.ts":
45
- /*!**************************************!*\
46
- !*** ./src/EasyWebWorkerFixtures.ts ***!
47
- \**************************************/
48
- /***/ ((__unused_webpack_module, exports) => {
49
-
50
- "use strict";
51
- eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.getWorkerTemplate = exports.generatedId = void 0;\nvar generatedId = function generatedId() {\n return \"\".concat(new Date().getTime()).concat(Math.random().toString(36).substr(2, 9));\n};\nexports.generatedId = generatedId;\nvar getWorkerTemplate = function getWorkerTemplate() {\n var template = \"self.cw$=a=>{const b=new Map(),c=new Map([['',()=>{throw\\\"you didn't defined a message-callback, please assign a callback by calling IEasyWorkerInstance.onMessage\\\"}]]),d=({messageId:e,payload:f,origin:g})=>{const h=new Set(),i=j=>{const{progress:k}=j;k||b.delete(e),self.postMessage({messageId:e,...j},g)},l=(...m)=>{i({resolved:{payload:m}})},n=o=>{i({rejected:{reason:o}})},p=q=>{[...h].forEach(r=>r(q)),i({worker_canceled:{reason:q}})},s=(t,u)=>{i({progress:{percentage:t,payload:u}})},v=w=>(h.add(w),()=>h.delete(w));return{payload:f,resolve:l,reject:n,cancel:p,onCancel:v,reportProgress:s}},x=(...y)=>{self.importScripts(...y)},z=(...A)=>{const[B,C]=A,D=typeof B==='string';if(D){const E=B,F=C;c.set(E,F);return;}const G=B;c.set('',G)},H=()=>{[...b.values()].forEach(I=>I.reject(new Error('worker closed')));self.close();};self.onmessage=J=>{const{data:K,origin:L}=J,{messageId:M,cancelation:N}=K;if(N){const{reason:O}=N,P=b.get(M);P.cancel(O);return;}const{method:Q,execution:R}=K,{payload:S}=R,T=d({messageId:M,payload:S,origin:a||L||undefined});b.set(M,T);const U=c.get(Q||'');U(T,J)};return{importScripts:x,onMessage:z,close:H}};\";\n return template;\n};\nexports.getWorkerTemplate = getWorkerTemplate;\n\n//# sourceURL=webpack://easy-web-worker/./src/EasyWebWorkerFixtures.ts?");
52
-
53
- /***/ }),
54
-
55
- /***/ "./src/EasyWebWorkerMessage.ts":
56
- /*!*************************************!*\
57
- !*** ./src/EasyWebWorkerMessage.ts ***!
58
- \*************************************/
59
- /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
60
-
61
- "use strict";
62
- eval("\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.EasyWebWorkerMessage = void 0;\nvar cancelable_promise_jq_1 = __webpack_require__(/*! cancelable-promise-jq */ \"./node_modules/cancelable-promise-jq/lib/bundle.js\");\nvar EasyWebWorkerFixtures_1 = __webpack_require__(/*! ./EasyWebWorkerFixtures */ \"./src/EasyWebWorkerFixtures.ts\");\n/**\n * This class represents a message that will be send to a worker\n */\nvar EasyWebWorkerMessage = /*#__PURE__*/_createClass(function EasyWebWorkerMessage() {\n _classCallCheck(this, EasyWebWorkerMessage);\n this.messageId = (0, EasyWebWorkerFixtures_1.generatedId)();\n this.decoupledPromise = (0, cancelable_promise_jq_1.createDecoupledPromise)();\n});\nexports.EasyWebWorkerMessage = EasyWebWorkerMessage;\n\n//# sourceURL=webpack://easy-web-worker/./src/EasyWebWorkerMessage.ts?");
63
-
64
- /***/ }),
65
-
66
- /***/ "./src/StaticEasyWebWorker.ts":
67
- /*!************************************!*\
68
- !*** ./src/StaticEasyWebWorker.ts ***!
69
- \************************************/
70
- /***/ ((__unused_webpack_module, exports) => {
71
-
72
- "use strict";
73
- eval("\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.createStaticEasyWebWorker = exports.StaticEasyWebWorker = void 0;\n/**\n * Constructor for the StaticEasyWebWorker\n * @param onMessageCallback - callback to be called when a message is received\n * @param targetOrigin - the target origin to be used when sending messages\n * @returns an instance of the StaticEasyWebWorker\n * */\nexports.StaticEasyWebWorker = function (onMessageCallback) {\n var targetOrigin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var createMessage = function createMessage(_ref) {\n var messageId = _ref.messageId,\n payload = _ref.payload,\n origin = _ref.origin;\n var cancelCallbacks = new Set();\n var postMessage = function postMessage(data) {\n var progress = data.progress;\n if (!progress) {\n /* If it's not a progress message means that the message is resolved | rejected | canceled */\n workerMessages[\"delete\"](messageId);\n }\n self.postMessage(Object.assign({\n messageId: messageId\n }, data), origin);\n };\n var resolve = function resolve() {\n var result = Array.from(arguments);\n postMessage({\n resolved: {\n payload: result\n }\n });\n };\n var reject = function reject(reason) {\n postMessage({\n rejected: {\n reason: reason\n }\n });\n };\n var cancel = function cancel(reason) {\n var callbacks = _toConsumableArray(cancelCallbacks);\n callbacks.forEach(function (callback) {\n return callback(reason);\n });\n postMessage({\n canceled: {\n reason: reason\n }\n });\n };\n /* Returns a function that can be used to unsubscribe from the cancelation */\n var onCancel = function onCancel(callback) {\n cancelCallbacks.add(callback);\n return function () {\n return cancelCallbacks[\"delete\"](callback);\n };\n };\n var reportProgress = function reportProgress(percentage, payload) {\n postMessage({\n progress: {\n percentage: percentage,\n payload: payload\n }\n });\n };\n return {\n payload: payload,\n resolve: resolve,\n reject: reject,\n cancel: cancel,\n onCancel: onCancel,\n reportProgress: reportProgress\n };\n };\n /**\n * This is the map that contains all the messages that are being processed by the worker\n */\n var workerMessages = new Map();\n /**\n * This is the map that contains all the callbacks that are being processed by the worker\n * */\n var workerCallbacks = new Map([['', function () {\n throw \"you didn't defined a message-callback, please assign a callback by calling IEasyWorkerInstance.onMessage\";\n }]]);\n var importScripts = function importScripts() {\n var _self;\n // @ts-ignore\n (_self = self).importScripts.apply(_self, arguments);\n };\n var close = function close() {\n /* should cancel all the promises of the main thread before closing the worker */\n var messages = _toConsumableArray(workerMessages.values());\n messages.forEach(function (message) {\n return message.reject(new Error('worker closed'));\n });\n self.close();\n };\n /**\n * This method is used to define the onMessage callback\n * @param {string} callbackKey - This is the key of the callback\n * @param {function} callback - This is the callback that will be executed when a message is received\n * @param {IEasyWebWorkerMessage} callback.message - This is the message that was received\n * @param {IEasyWebWorkerMessage} callback.message.messageId - This is the message id\n * @param {IEasyWebWorkerMessage} callback.message.payload - This are the parameters included in the message\n * @param {IEasyWebWorkerMessage} callback.message.reject - This method is used to reject the message from inside the worker\n * @param {IEasyWebWorkerMessage} callback.message.reportProgress - This method is used to report the progress of the message from inside the worker\n * @param {IEasyWebWorkerMessage} callback.message.resolve - This method is used to resolve the message from inside the worker\n * @param {MessageEvent} callback.event - This is the event that was received\n */\n var onMessage = function onMessage() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n var param1 = args[0],\n param2 = args[1];\n var hasCustomCallbackKey = typeof param1 === 'string';\n if (hasCustomCallbackKey) {\n var callbackKey = param1;\n var _callback = param2;\n workerCallbacks.set(callbackKey, _callback);\n return;\n }\n var callback = param1;\n workerCallbacks.set('', callback);\n };\n /**\n * This is the onMessage callback that will be executed when a message is received\n */\n self.onmessage = function (event) {\n var data = event.data,\n origin = event.origin;\n var messageId = data.messageId,\n cancelation = data.cancelation;\n if (cancelation) {\n var reason = cancelation.reason;\n var _message = workerMessages.get(messageId);\n _message.cancel(reason);\n return;\n }\n var _event$data = event.data,\n method = _event$data.method,\n execution = _event$data.execution;\n var payload = execution.payload;\n var message = createMessage({\n messageId: messageId,\n payload: payload,\n origin: targetOrigin || origin || undefined\n });\n var callback = workerCallbacks.get(method || '');\n callback(message, event);\n };\n if (onMessageCallback) {\n onMessage(onMessageCallback);\n }\n this.importScripts = importScripts;\n // @ts-ignore\n this.close = close;\n // @ts-ignore\n this.onMessage = onMessage;\n};\n/**\n * This method is used to create a new instance of the easy static web worker\n */\nvar createStaticEasyWebWorker = function createStaticEasyWebWorker(onMessageCallback) {\n var targetOrigin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var worker = new exports.StaticEasyWebWorker(onMessageCallback, targetOrigin);\n return worker;\n};\nexports.createStaticEasyWebWorker = createStaticEasyWebWorker;\n\n//# sourceURL=webpack://easy-web-worker/./src/StaticEasyWebWorker.ts?");
74
-
75
- /***/ }),
76
-
77
- /***/ "./src/index.ts":
78
- /*!**********************!*\
79
- !*** ./src/index.ts ***!
80
- \**********************/
81
- /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
82
-
83
- "use strict";
84
- eval("\n\nvar __createBinding = void 0 && (void 0).__createBinding || (Object.create ? function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = {\n enumerable: true,\n get: function get() {\n return m[k];\n }\n };\n }\n Object.defineProperty(o, k2, desc);\n} : function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\nvar __exportStar = void 0 && (void 0).__exportStar || function (m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports[\"default\"] = void 0;\nvar EasyWebWorker_1 = __webpack_require__(/*! ./EasyWebWorker */ \"./src/EasyWebWorker.ts\");\nObject.defineProperty(exports, \"default\", ({\n enumerable: true,\n get: function get() {\n return EasyWebWorker_1.EasyWebWorker;\n }\n}));\n__exportStar(__webpack_require__(/*! ./EasyWebWorker */ \"./src/EasyWebWorker.ts\"), exports);\n__exportStar(__webpack_require__(/*! ./StaticEasyWebWorker */ \"./src/StaticEasyWebWorker.ts\"), exports);\n__exportStar(__webpack_require__(/*! ./EasyWebWorker.functions */ \"./src/EasyWebWorker.functions.ts\"), exports);\n\n//# sourceURL=webpack://easy-web-worker/./src/index.ts?");
85
-
86
- /***/ }),
87
-
88
- /***/ "./node_modules/cancelable-promise-jq/lib/bundle.js":
89
- /*!**********************************************************!*\
90
- !*** ./node_modules/cancelable-promise-jq/lib/bundle.js ***!
91
- \**********************************************************/
92
- /***/ (function(module) {
93
-
94
- eval("/*! For license information please see bundle.js.LICENSE.txt */\n!function(e,t){ true?module.exports=t():0}(this,(()=>(()=>{\"use strict\";var e={399:(e,t)=>{function r(e){return r=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},r(e)}function n(e){if(void 0===e)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return e}function o(){return o=\"undefined\"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,r){var n=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=l(e)););return e}(e,t);if(n){var o=Object.getOwnPropertyDescriptor(n,t);return o.get?o.get.call(arguments.length<3?e:r):o.value}},o.apply(this,arguments)}function i(e){var t=\"function\"==typeof Map?new Map:void 0;return i=function(e){if(null===e||(r=e,-1===Function.toString.call(r).indexOf(\"[native code]\")))return e;var r;if(\"function\"!=typeof e)throw new TypeError(\"Super expression must either be null or a function\");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return c(e,arguments,l(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),u(n,e)},i(e)}function c(e,t,r){return c=a()?Reflect.construct.bind():function(e,t,r){var n=[null];n.push.apply(n,t);var o=new(Function.bind.apply(e,n));return r&&u(o,r.prototype),o},c.apply(null,arguments)}function a(){if(\"undefined\"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if(\"function\"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function u(e,t){return u=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},u(e,t)}function l(e){return l=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},l(e)}Object.defineProperty(t,\"__esModule\",{value:!0}),t.CancelablePromise=void 0;var f=function(e){!function(e,t){if(\"function\"!=typeof t&&null!==t)throw new TypeError(\"Super expression must either be null or a function\");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,\"prototype\",{writable:!1}),t&&u(e,t)}(s,e);var t,i,c,f=(i=s,c=a(),function(){var e,t=l(i);if(c){var o=l(this).constructor;e=Reflect.construct(t,arguments,o)}else e=t.apply(this,arguments);return function(e,t){if(t&&(\"object\"===r(t)||\"function\"==typeof t))return t;if(void 0!==t)throw new TypeError(\"Derived constructors may only return object or undefined\");return n(e)}(this,e)});function s(e){var t,r,i,c,a,u;return function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,s),(c=f.call(this,(function(e,t){a=e,u=t}))).status=\"pending\",c.cancelCallbacks=[],c.ownCancelCallbacks=[],c.onProgressCallbacks=[],c.subscribeToOwnCancelEvent=function(e){c.ownCancelCallbacks.push(e)},c.cancel=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if(\"pending\"===c.status)return c.status=\"canceled\",c.ownCancelCallbacks.forEach((function(t){return t(e)})),c.cancelCallbacks.forEach((function(t){return t(e)})),c.reject(e),c.cancelCallbacks=[],c.ownCancelCallbacks=[],n(c)},c.onCancel=function(e){return c.cancelCallbacks.push(e),n(c)},c.onProgress=function(e){return c.onProgressCallbacks.push(e),n(c)},c.reportProgress=function(e,t){return c.onProgressCallbacks.forEach((function(r){return r(e,t)})),n(c)},c.createChildPromise=function(){var e,t,r=new s((function(r,n,o){e=r,t=n}));return r.onProgressCallbacks=c.onProgressCallbacks,r.onCancel((function(e){c.cancel(e)})),{promise:r,resolve:e,reject:t}},c.resolve=a,c.reject=u,e((function(e){c.status=\"resolved\",c.resolve(e)}),(function(e){c.status=\"rejected\",c.reject(e)}),{cancel:function(e){return c.cancel(e)},onCancel:function(e){return c.subscribeToOwnCancelEvent(e),n(c)},onProgress:function(e){return c.onProgress(e)},reportProgress:function(e,t){c.reportProgress(e,t)}}),c.then=function(e,r){var i=c.createChildPromise(),a=i.promise,u=i.resolve,f=i.reject;return o((t=n(c),l(s.prototype)),\"then\",t).call(t,e,r).then(u,f),a},c.catch=function(e){var t=c.createChildPromise(),i=t.promise,a=t.resolve,u=t.reject;return o((r=n(c),l(s.prototype)),\"catch\",r).call(r,e).then(a,u),i},c.finally=function(e){var t=c.createChildPromise(),r=t.promise,a=t.resolve,u=t.reject;return o((i=n(c),l(s.prototype)),\"finally\",i).call(i,e).then(a,u),r},c}return t=s,Object.defineProperty(t,\"prototype\",{writable:!1}),t}(i(Promise));t.CancelablePromise=f,f.prototype.constructor=Promise},716:(e,t,r)=>{function n(e){return n=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},n(e)}Object.defineProperty(t,\"__esModule\",{value:!0}),t.toCancelablePromise=t.isPromise=t.groupAsCancelablePromise=t.createDecoupledPromise=t.allSettledCancelable=void 0;var o=r(335),i=r(399);function c(){c=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},i=\"function\"==typeof Symbol?Symbol:{},a=i.iterator||\"@@iterator\",u=i.asyncIterator||\"@@asyncIterator\",l=i.toStringTag||\"@@toStringTag\";function f(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{f({},\"\")}catch(e){f=function(e,t,r){return e[t]=r}}function s(e,t,r,n){var i=t&&t.prototype instanceof y?t:y,c=Object.create(i.prototype),a=new E(n||[]);return o(c,\"_invoke\",{value:O(e,r,a)}),c}function p(e,t,r){try{return{type:\"normal\",arg:e.call(t,r)}}catch(e){return{type:\"throw\",arg:e}}}e.wrap=s;var h={};function y(){}function d(){}function v(){}var b={};f(b,a,(function(){return this}));var m=Object.getPrototypeOf,g=m&&m(m(k([])));g&&g!==t&&r.call(g,a)&&(b=g);var w=v.prototype=y.prototype=Object.create(b);function P(e){[\"next\",\"throw\",\"return\"].forEach((function(t){f(e,t,(function(e){return this._invoke(t,e)}))}))}function j(e,t){function i(o,c,a,u){var l=p(e[o],e,c);if(\"throw\"!==l.type){var f=l.arg,s=f.value;return s&&\"object\"==n(s)&&r.call(s,\"__await\")?t.resolve(s.__await).then((function(e){i(\"next\",e,a,u)}),(function(e){i(\"throw\",e,a,u)})):t.resolve(s).then((function(e){f.value=e,a(f)}),(function(e){return i(\"throw\",e,a,u)}))}u(l.arg)}var c;o(this,\"_invoke\",{value:function(e,r){function n(){return new t((function(t,n){i(e,r,t,n)}))}return c=c?c.then(n,n):n()}})}function O(e,t,r){var n=\"suspendedStart\";return function(o,i){if(\"executing\"===n)throw new Error(\"Generator is already running\");if(\"completed\"===n){if(\"throw\"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var c=r.delegate;if(c){var a=C(c,r);if(a){if(a===h)continue;return a}}if(\"next\"===r.method)r.sent=r._sent=r.arg;else if(\"throw\"===r.method){if(\"suspendedStart\"===n)throw n=\"completed\",r.arg;r.dispatchException(r.arg)}else\"return\"===r.method&&r.abrupt(\"return\",r.arg);n=\"executing\";var u=p(e,t,r);if(\"normal\"===u.type){if(n=r.done?\"completed\":\"suspendedYield\",u.arg===h)continue;return{value:u.arg,done:r.done}}\"throw\"===u.type&&(n=\"completed\",r.method=\"throw\",r.arg=u.arg)}}}function C(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,\"throw\"===r&&e.iterator.return&&(t.method=\"return\",t.arg=void 0,C(e,t),\"throw\"===t.method)||\"return\"!==r&&(t.method=\"throw\",t.arg=new TypeError(\"The iterator does not provide a '\"+r+\"' method\")),h;var o=p(n,e.iterator,t.arg);if(\"throw\"===o.type)return t.method=\"throw\",t.arg=o.arg,t.delegate=null,h;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,\"return\"!==t.method&&(t.method=\"next\",t.arg=void 0),t.delegate=null,h):i:(t.method=\"throw\",t.arg=new TypeError(\"iterator result is not an object\"),t.delegate=null,h)}function _(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function x(e){var t=e.completion||{};t.type=\"normal\",delete t.arg,e.completion=t}function E(e){this.tryEntries=[{tryLoc:\"root\"}],e.forEach(_,this),this.reset(!0)}function k(e){if(e){var t=e[a];if(t)return t.call(e);if(\"function\"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:L}}function L(){return{value:void 0,done:!0}}return d.prototype=v,o(w,\"constructor\",{value:v,configurable:!0}),o(v,\"constructor\",{value:d,configurable:!0}),d.displayName=f(v,l,\"GeneratorFunction\"),e.isGeneratorFunction=function(e){var t=\"function\"==typeof e&&e.constructor;return!!t&&(t===d||\"GeneratorFunction\"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,f(e,l,\"GeneratorFunction\")),e.prototype=Object.create(w),e},e.awrap=function(e){return{__await:e}},P(j.prototype),f(j.prototype,u,(function(){return this})),e.AsyncIterator=j,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var c=new j(s(t,r,n,o),i);return e.isGeneratorFunction(r)?c:c.next().then((function(e){return e.done?e.value:c.next()}))},P(w),f(w,l,\"Generator\"),f(w,a,(function(){return this})),f(w,\"toString\",(function(){return\"[object Generator]\"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=k,E.prototype={constructor:E,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method=\"next\",this.arg=void 0,this.tryEntries.forEach(x),!e)for(var t in this)\"t\"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if(\"throw\"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return c.type=\"throw\",c.arg=e,t.next=r,n&&(t.method=\"next\",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],c=i.completion;if(\"root\"===i.tryLoc)return n(\"end\");if(i.tryLoc<=this.prev){var a=r.call(i,\"catchLoc\"),u=r.call(i,\"finallyLoc\");if(a&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(a){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error(\"try statement without catch or finally\");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,\"finallyLoc\")&&this.prev<o.finallyLoc){var i=o;break}}i&&(\"break\"===e||\"continue\"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var c=i?i.completion:{};return c.type=e,c.arg=t,i?(this.method=\"next\",this.next=i.finallyLoc,h):this.complete(c)},complete:function(e,t){if(\"throw\"===e.type)throw e.arg;return\"break\"===e.type||\"continue\"===e.type?this.next=e.arg:\"return\"===e.type?(this.rval=this.arg=e.arg,this.method=\"return\",this.next=\"end\"):\"normal\"===e.type&&t&&(this.next=t),h},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),x(r),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if(\"throw\"===n.type){var o=n.arg;x(r)}return o}}throw new Error(\"illegal catch attempt\")},delegateYield:function(e,t,r){return this.delegate={iterator:k(e),resultName:t,nextLoc:r},\"next\"===this.method&&(this.arg=void 0),h}},e}function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}t.createDecoupledPromise=function(){var e,t,r,n=new i.CancelablePromise((function(n,o,i){e=n,t=o,r=i}));return Object.assign(Object.assign({resolve:e,reject:t},r),{promise:n})};var u=function e(t){if(t instanceof i.CancelablePromise)return t;if(\"function\"==typeof t)return e(t());if(!f(t))return new i.CancelablePromise((function(e){return e(t)}));var r,n,o=new i.CancelablePromise((function(e,o,i){r=e,n=o,t.then(r,n)}));return o.onCancel((function(e){n(e)})),o};t.toCancelablePromise=u;var l=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e.length)return null;var r,n=t.maxConcurrent,o=void 0===n?8:n,c=t.executeInOrder,l=void 0!==c&&c,f=t.beforeEachCallback,s=void 0===f?null:f,p=t.afterEachCallback,h=void 0===p?null:p,y=t.onQueueEmptyCallback,d=void 0===y?null:y,v=function(e){if(Array.isArray(e))return a(e)}(r=e)||function(e){if(\"undefined\"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e[\"@@iterator\"])return Array.from(e)}(r)||function(e,t){if(e){if(\"string\"==typeof e)return a(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return\"Object\"===r&&e.constructor&&(r=e.constructor.name),\"Map\"===r||\"Set\"===r?Array.from(e):\"Arguments\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?a(e,t):void 0}}(r)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}(),b=[];return new i.CancelablePromise((function(e,t,r){return function e(){if(v.length){var t=v.splice(0,o).map((function(e){var t=\"function\"==typeof e?e():e;null==s||s();var n=u(t);return r.onCancel((function(){n.cancel()})),n.then((function(e){b.push(e),null==h||h(e)})),l?n.then((function(e){return e})):n}));return Promise.all(t).then((function(){return e()}))}}().then((function(){null==d||d(b),e(b)}))}))};t.groupAsCancelablePromise=l;var f=function(e){return Promise.resolve(e)===e};t.isPromise=f,t.allSettledCancelable=function(e){var t=[],r=e.map((function(e){var r=u(e);return t.push(r),(0,o.tryCatchPromise)((function(){return r})).then((function(e){return{error:e.error,result:e.result,promise:r}}))})),n=l(t);return new i.CancelablePromise((function(e,t,o){return i=void 0,a=void 0,u=void 0,l=c().mark((function t(){var i;return c().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return o.onCancel(n.cancel),t.next=3,Promise.all(r);case 3:i=t.sent,e(i);case 5:case\"end\":return t.stop()}}),t)})),new(u||(u=Promise))((function(e,t){function r(e){try{o(l.next(e))}catch(e){t(e)}}function n(e){try{o(l.throw(e))}catch(e){t(e)}}function o(t){var o;t.done?e(t.value):(o=t.value,o instanceof u?o:new u((function(e){e(o)}))).then(r,n)}o((l=l.apply(i,a||[])).next())}));var i,a,u,l}))}},522:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0});var n=r(399);Object.keys(n).forEach((function(e){\"default\"!==e&&\"__esModule\"!==e&&(e in t&&t[e]===n[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return n[e]}}))}));var o=r(716);Object.keys(o).forEach((function(e){\"default\"!==e&&\"__esModule\"!==e&&(e in t&&t[e]===o[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return o[e]}}))}))},991:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0});var n=r(522);Object.keys(n).forEach((function(e){\"default\"!==e&&\"__esModule\"!==e&&(e in t&&t[e]===n[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return n[e]}}))}));var o=r(335);Object.keys(o).forEach((function(e){\"default\"!==e&&\"__esModule\"!==e&&(e in t&&t[e]===o[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return o[e]}}))}))},335:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0});var n=r(969);Object.keys(n).forEach((function(e){\"default\"!==e&&\"__esModule\"!==e&&(e in t&&t[e]===n[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return n[e]}}))}))},969:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0});var n=r(948);Object.keys(n).forEach((function(e){\"default\"!==e&&\"__esModule\"!==e&&(e in t&&t[e]===n[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return n[e]}}))}));var o=r(667);Object.keys(o).forEach((function(e){\"default\"!==e&&\"__esModule\"!==e&&(e in t&&t[e]===o[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return o[e]}}))}))},948:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.tryCatchPromise=t.tryCatch=void 0;var n=r(522);t.tryCatch=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.defaultResult,n=void 0===r?null:r,o=t.exceptionHandlingType,i=void 0===o?\"error\":o;try{return{error:null,result:e()}}catch(e){return\"ignore\"!==i&&console[i](e),{error:e,result:n}}},t.tryCatchPromise=function(e,t){var r=t||{},o=r.defaultResult,i=void 0===o?null:o,c=r.exceptionHandlingType,a=void 0===c?\"error\":c,u=r.ignoreCancel,l=void 0===u||u,f=null,s=null,p=function(e){s=e,\"ignore\"!=a&&(\"canceled\"===f.status&&l||console[a](s))};try{if(e instanceof n.CancelablePromise)return f=e,new Promise((function(e){f.then((function(e){return{error:null,result:e,promise:f}})).catch((function(e){return p(e),{error:e,result:i,promise:f}}))}));var h=e(),y=h instanceof n.CancelablePromise;return f=y?h:(0,n.toCancelablePromise)(h),new Promise((function(e){f.then((function(t){e({error:null,result:t,promise:f})})).catch((function(t){p(t),e({error:t,result:i,promise:f})}))}))}catch(e){return p(e),Promise.resolve({error:s,result:i,promise:f})}}},667:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0})}},t={};return function r(n){var o=t[n];if(void 0!==o)return o.exports;var i=t[n]={exports:{}};return e[n](i,i.exports,r),i.exports}(991)})()));\n\n//# sourceURL=webpack://easy-web-worker/./node_modules/cancelable-promise-jq/lib/bundle.js?");
95
-
96
- /***/ })
97
-
98
- /******/ });
99
- /************************************************************************/
100
- /******/ // The module cache
101
- /******/ var __webpack_module_cache__ = {};
102
- /******/
103
- /******/ // The require function
104
- /******/ function __webpack_require__(moduleId) {
105
- /******/ // Check if module is in cache
106
- /******/ var cachedModule = __webpack_module_cache__[moduleId];
107
- /******/ if (cachedModule !== undefined) {
108
- /******/ return cachedModule.exports;
109
- /******/ }
110
- /******/ // Create a new module (and put it into the cache)
111
- /******/ var module = __webpack_module_cache__[moduleId] = {
112
- /******/ // no module.id needed
113
- /******/ // no module.loaded needed
114
- /******/ exports: {}
115
- /******/ };
116
- /******/
117
- /******/ // Execute the module function
118
- /******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
119
- /******/
120
- /******/ // Return the exports of the module
121
- /******/ return module.exports;
122
- /******/ }
123
- /******/
124
- /************************************************************************/
125
- /******/
126
- /******/ // startup
127
- /******/ // Load entry module and return exports
128
- /******/ // This entry module is referenced by other modules so it can't be inlined
129
- /******/ var __webpack_exports__ = __webpack_require__("./src/index.ts");
130
- /******/
131
- /******/ return __webpack_exports__;
132
- /******/ })()
133
- ;
134
- });
1
+ /*! For license information please see bundle.js.LICENSE.txt */
2
+ !function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof exports?exports["easy-web-worker"]=r():e["easy-web-worker"]=r()}(this,(()=>{return e={797:(e,r,t)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.createEasyWebWorker=void 0;var n=t(30);r.createEasyWebWorker=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return new n.EasyWebWorker(e,r)}},30:(e,r,t)=>{"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function o(e,r){return function(e){if(Array.isArray(e))return e}(e)||function(e,r){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var n,o,i,a,c=[],u=!0,s=!1;try{if(i=(t=t.call(e)).next,0===r){if(Object(t)!==t)return;u=!1}else for(;!(u=(n=i.call(t)).done)&&(c.push(n.value),c.length!==r);u=!0);}catch(e){s=!0,o=e}finally{try{if(!u&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(s)throw o}}return c}}(e,r)||i(e,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(e,r){if(e){if("string"==typeof e)return a(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?a(e,r):void 0}}function a(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}function c(){c=function(){return e};var e={},r=Object.prototype,t=r.hasOwnProperty,o=Object.defineProperty||function(e,r,t){e[r]=t.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",u=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function l(e,r,t){return Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}),e[r]}try{l({},"")}catch(e){l=function(e,r,t){return e[r]=t}}function f(e,r,t,n){var i=r&&r.prototype instanceof d?r:d,a=Object.create(i.prototype),c=new W(n||[]);return o(a,"_invoke",{value:j(e,t,c)}),a}function p(e,r,t){try{return{type:"normal",arg:e.call(r,t)}}catch(e){return{type:"throw",arg:e}}}e.wrap=f;var h={};function d(){}function v(){}function y(){}var m={};l(m,a,(function(){return this}));var g=Object.getPrototypeOf,b=g&&g(g(_([])));b&&b!==r&&t.call(b,a)&&(m=b);var w=y.prototype=d.prototype=Object.create(m);function k(e){["next","throw","return"].forEach((function(r){l(e,r,(function(e){return this._invoke(r,e)}))}))}function P(e,r){function i(o,a,c,u){var s=p(e[o],e,a);if("throw"!==s.type){var l=s.arg,f=l.value;return f&&"object"==n(f)&&t.call(f,"__await")?r.resolve(f.__await).then((function(e){i("next",e,c,u)}),(function(e){i("throw",e,c,u)})):r.resolve(f).then((function(e){l.value=e,c(l)}),(function(e){return i("throw",e,c,u)}))}u(s.arg)}var a;o(this,"_invoke",{value:function(e,t){function n(){return new r((function(r,n){i(e,t,r,n)}))}return a=a?a.then(n,n):n()}})}function j(e,r,t){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(t.method=o,t.arg=i;;){var a=t.delegate;if(a){var c=O(a,t);if(c){if(c===h)continue;return c}}if("next"===t.method)t.sent=t._sent=t.arg;else if("throw"===t.method){if("suspendedStart"===n)throw n="completed",t.arg;t.dispatchException(t.arg)}else"return"===t.method&&t.abrupt("return",t.arg);n="executing";var u=p(e,r,t);if("normal"===u.type){if(n=t.done?"completed":"suspendedYield",u.arg===h)continue;return{value:u.arg,done:t.done}}"throw"===u.type&&(n="completed",t.method="throw",t.arg=u.arg)}}}function O(e,r){var t=r.method,n=e.iterator[t];if(void 0===n)return r.delegate=null,"throw"===t&&e.iterator.return&&(r.method="return",r.arg=void 0,O(e,r),"throw"===r.method)||"return"!==t&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+t+"' method")),h;var o=p(n,e.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,h;var i=o.arg;return i?i.done?(r[e.resultName]=i.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=void 0),r.delegate=null,h):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,h)}function E(e){var r={tryLoc:e[0]};1 in e&&(r.catchLoc=e[1]),2 in e&&(r.finallyLoc=e[2],r.afterLoc=e[3]),this.tryEntries.push(r)}function x(e){var r=e.completion||{};r.type="normal",delete r.arg,e.completion=r}function W(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(E,this),this.reset(!0)}function _(e){if(e){var r=e[a];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function r(){for(;++n<e.length;)if(t.call(e,n))return r.value=e[n],r.done=!1,r;return r.value=void 0,r.done=!0,r};return o.next=o}}return{next:S}}function S(){return{value:void 0,done:!0}}return v.prototype=y,o(w,"constructor",{value:y,configurable:!0}),o(y,"constructor",{value:v,configurable:!0}),v.displayName=l(y,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var r="function"==typeof e&&e.constructor;return!!r&&(r===v||"GeneratorFunction"===(r.displayName||r.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,y):(e.__proto__=y,l(e,s,"GeneratorFunction")),e.prototype=Object.create(w),e},e.awrap=function(e){return{__await:e}},k(P.prototype),l(P.prototype,u,(function(){return this})),e.AsyncIterator=P,e.async=function(r,t,n,o,i){void 0===i&&(i=Promise);var a=new P(f(r,t,n,o),i);return e.isGeneratorFunction(t)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},k(w),l(w,s,"Generator"),l(w,a,(function(){return this})),l(w,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var r=Object(e),t=[];for(var n in r)t.push(n);return t.reverse(),function e(){for(;t.length;){var n=t.pop();if(n in r)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=_,W.prototype={constructor:W,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!e)for(var r in this)"t"===r.charAt(0)&&t.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function n(t,n){return a.type="throw",a.arg=e,r.next=t,n&&(r.method="next",r.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=t.call(i,"catchLoc"),u=t.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,r){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&t.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=r&&r<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=r,i?(this.method="next",this.next=i.finallyLoc,h):this.complete(a)},complete:function(e,r){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&r&&(this.next=r),h},finish:function(e){for(var r=this.tryEntries.length-1;r>=0;--r){var t=this.tryEntries[r];if(t.finallyLoc===e)return this.complete(t.completion,t.afterLoc),x(t),h}},catch:function(e){for(var r=this.tryEntries.length-1;r>=0;--r){var t=this.tryEntries[r];if(t.tryLoc===e){var n=t.completion;if("throw"===n.type){var o=n.arg;x(t)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,r,t){return this.delegate={iterator:_(e),resultName:r,nextLoc:t},"next"===this.method&&(this.arg=void 0),h}},e}function u(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,(void 0,i=function(e,r){if("object"!==n(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,"string");if("object"!==n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(o.key),"symbol"===n(i)?i:String(i)),o)}var i}var s=function(e,r,t,n){return new(t||(t=Promise))((function(o,i){function a(e){try{u(n.next(e))}catch(e){i(e)}}function c(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){var r;e.done?o(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(a,c)}u((n=n.apply(e,r||[])).next())}))};Object.defineProperty(r,"__esModule",{value:!0}),r.EasyWebWorker=r.createBlobWorker=void 0;var l=t(213),f=t(726),p=t(367);r.createBlobWorker=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",n=(arguments.length>3&&void 0!==arguments[3]?arguments[3]:{}).primitiveParameters,o=void 0===n?[]:n,i=Array.isArray(e)?e:[e],a="self.primitiveParameters=JSON.parse(`".concat(JSON.stringify(null!=o?o:[]),"`);").concat(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return e.length?'self.importScripts(["'.concat(e.join('","'),'"]);'):""}(r)).concat((0,f.getWorkerTemplate)()).concat(i.map((function(e){return'self.ew$=self.cw$("'.concat(t,'");(').concat(e,")(self.ew$, self);")})).join(""));return(window.URL||window.webkitURL).createObjectURL(new Blob([a],{type:"application/javascript"}))};var h=function(){function e(r){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.scripts,a=void 0===i?[]:i,u=n.name,h=n.onWorkerError,d=void 0===h?null:h,v=n.url,y=void 0===v?null:v,m=n.maxWorkers,g=void 0===m?1:m,b=n.keepAlive,w=void 0===b?null:b,k=n.terminationDelay,P=void 0===k?1e3:k,j=n.warmUpWorkers,O=void 0===j?null:j,E=n.primitiveParameters,x=n.origin,W=void 0===x?"":x;!function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,e),this.source=r,this.maxWorkers=1,this.workers=[],this.keepAlive=!0,this.warmUpWorkers=!1,this.terminationDelay=1e3,this.origin="",this.primitiveParameters=[],this.messagesQueue=new Map,this.workerUrl=null,this.scripts=[],this.warmUp=function(){if(t.warmUpWorkers){var e=t.maxWorkers;new Array(e).fill(null).forEach((function(){return t.getWorkerFromPool()}))}},this.fillWorkerMethods=function(e){return e.onmessage=function(e){t.executeMessageCallback(e)},e.onerror=function(e){if(!t.onWorkerError)throw e;t.onWorkerError(e)},e},this.createNewWorker=function(){var e,r=new Worker(t.workerUrl,{name:(e=t.workers.length,0===e?t.name:"".concat(t.name,"-").concat(e))});return t.fillWorkerMethods(r)},this.getWorkerFromPool=function(){var e=t.maxWorkers,r=t.messagesQueue.size;if(!t.workers.length||t.workers.length<e&&r){var n=t.createNewWorker();return t.workers.push(n),n}var o=t.workers.shift();return t.workers.push(o),o},this.computeWorkerBaseSource=function(){var e=function(){var e,r;if(t.source instanceof Worker)return t.workers=[t.fillWorkerMethods(t.source)],{isArrayOfWebWorkers:!1,workerUrl:null};var n="string"==typeof t.source,o="function"==typeof t.source;if(n||o)return{isArrayOfWebWorkers:!1,workerUrl:null!==(e=t.workerUrl)&&void 0!==e?e:t.getWorkerUrl()};var i=Array.isArray(t.source);if(i&&"function"==typeof t.source[0])return{isArrayOfWebWorkers:!1,workerUrl:null!==(r=t.workerUrl)&&void 0!==r?r:t.getWorkerUrl()};var a=i&&t.source[0]instanceof Worker;return a?(t.workers=t.source.map(t.fillWorkerMethods),{isArrayOfWebWorkers:a,workerUrl:null}):{isArrayOfWebWorkers:!1,workerUrl:null}}(),r=e.workerUrl,n=e.isArrayOfWebWorkers;t.workerUrl=r,t.maxWorkers=n?t.workers.length:t.maxWorkers,t.keepAlive=!!n||t.keepAlive},this.send=function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];var o=r[0];return t.sendToWorker({payload:o})},this.sendToWorker=function(e){var r,n,o=e.payload,i=e.method,a=new l.EasyWebWorkerMessage,c=a.messageId,u=a.decoupledPromise,s=u.cancel,f=t.getWorkerFromPool();u.promise.cancel=function(e){u.cancel=s;var r={messageId:c,method:i,cancelation:{reason:e}};return t.workers.length?(f.postMessage(r),u.promise):(s(e),(0,p.toCancelablePromise)(Promise.reject(e)))},t.keepAlive||null===(n=null===(r=u.promise)||void 0===r?void 0:r.finally)||void 0===n||n.call(r,(function(){setTimeout((function(){t.messagesQueue.size||(t.workers.forEach((function(e){return e.terminate()})),t.workers=[])}),t.terminationDelay)})),t.addMessageToQueue(a);var h={messageId:c,method:i,execution:{payload:o}};return f.postMessage(h),u.promise},this.override=function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];var o=r[0],i=r[1],a=r[2];return s(t,void 0,void 0,c().mark((function e(){return c().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.cancelAll(i,a);case 2:return e.abrupt("return",this.send.apply(this,[o]));case 3:case"end":return e.stop()}}),e,this)})))},this.overrideAfterCurrent=function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];var i=r[0],a=r[1],u=r[2];return s(t,void 0,void 0,c().mark((function e(){var r,t,n,s;return c().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.messagesQueue.size){e.next=7;break}return r=o(this.messagesQueue,1),t=r[0],n=o(t,2),s=n[1],this.RemoveMessageFromQueue(s.messageId),e.next=6,this.cancelAll(a,u);case 6:this.addMessageToQueue(s);case 7:return e.abrupt("return",this.send.apply(this,[i]));case 8:case"end":return e.stop()}}),e,this)})))};var _=!g||1===g||O,S=_||null!=w&&w;this.name=u||(0,f.generatedId)(),this.scripts=a,this.onWorkerError=d,this.workerUrl=null!=y?y:null,this.maxWorkers=g,this.keepAlive=S,this.terminationDelay=P,this.warmUpWorkers=_,this.primitiveParameters=null!=E?E:[],this.origin=W,this.computeWorkerBaseSource(),this.warmUp()}var t,n;return t=e,n=[{key:"worker",get:function(){return this.workers.length>1?null:this.workers[0]}},{key:"isExternalWorkerFile",get:function(){return"string"==typeof this.source}},{key:"RemoveMessageFromQueue",value:function(e){this.messagesQueue.delete(e)}},{key:"executeMessageCallback",value:function(e){var r,t,n=null!==(r=this.messagesQueue.get(e.data.messageId))&&void 0!==r?r:null;if(n){var o=e.data.progress;if(this.workers.length){var c=n.decoupledPromise;if(o){var u=o.percentage,s=o.payload;c.reportProgress(u,s)}else{this.RemoveMessageFromQueue(n.messageId);var l=e.data.worker_canceled;if(l){var f=l.reason;c.reject(f)}else{var p=e.data.rejected;if(p){var h=p.reason;c.reject(h)}else{var d=e.data.resolved.payload;c.resolve.apply(c,function(e){if(Array.isArray(e))return a(e)}(t=null!=d?d:[])||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||i(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())}}}}else this.RemoveMessageFromQueue(n.messageId)}}},{key:"getWorkerUrl",value:function(){var e;return this.isExternalWorkerFile?this.source:(0,r.createBlobWorker)(this.source,this.scripts,null!==(e=this.origin)&&void 0!==e?e:"",{primitiveParameters:this.primitiveParameters})}},{key:"cancelAll",value:function(e){var r=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).force,t=void 0!==r&&r,n=Array.from(this.messagesQueue.values()),o=100/n.length;if(t)return this.reboot(e);var i=n.map((function(r){var t=r.decoupledPromise.promise;return t.cancel(e).catch((function(e){return t.reportProgress(o,e),e}))}));return Promise.all(i)}},{key:"addMessageToQueue",value:function(e){this.messagesQueue.set(e.messageId,e)}},{key:"sendToMethod",value:function(e,r){return this.sendToWorker({method:e,payload:r})}},{key:"reboot",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"Worker was rebooted";if(!this.workerUrl)throw new Error("You can not reboot a worker that was created from a Worker Instance");this.workers.forEach((function(e){return e.terminate()})),this.workers=[];var r=this.cancelAll(e);return this.warmUp(),r}},{key:"dispose",value:function(){return s(this,void 0,void 0,c().mark((function e(){return c().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.cancelAll(null);case 2:this.workerUrl&&URL.revokeObjectURL(this.workerUrl),this.workers.forEach((function(e){return e.terminate()})),this.workers=[];case 5:case"end":return e.stop()}}),e,this)})))}}],n&&u(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),e}();r.EasyWebWorker=h},726:(e,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.getWorkerTemplate=r.generatedId=void 0,r.generatedId=function(){return"".concat((new Date).getTime()).concat(Math.random().toString(36).substr(2,9))},r.getWorkerTemplate=function(){return"self.cw$=a=>{const b=new Map(),c=new Map([['',()=>{throw\"you didn't defined a message-callback, please assign a callback by calling IEasyWorkerInstance.onMessage\"}]]),d=({messageId:e,payload:f,origin:g})=>{const h=new Set(),i=j=>{const{progress:k}=j;k||b.delete(e),self.postMessage({messageId:e,...j},g)},l=(...m)=>{i({resolved:{payload:m}})},n=o=>{i({rejected:{reason:o}})},p=q=>{[...h].forEach(r=>r(q)),i({worker_canceled:{reason:q}})},s=(t,u)=>{i({progress:{percentage:t,payload:u}})},v=w=>(h.add(w),()=>h.delete(w));return{payload:f,resolve:l,reject:n,cancel:p,onCancel:v,reportProgress:s}},x=(...y)=>{self.importScripts(...y)},z=(...A)=>{const[B,C]=A,D=typeof B==='string';if(D){const E=B,F=C;c.set(E,F);return;}const G=B;c.set('',G)},H=()=>{[...b.values()].forEach(I=>I.reject(new Error('worker closed')));self.close();};self.onmessage=J=>{const{data:K,origin:L}=J,{messageId:M,cancelation:N}=K;if(N){const{reason:O}=N,P=b.get(M);P.cancel(O);return;}const{method:Q,execution:R}=K,{payload:S}=R,T=d({messageId:M,payload:S,origin:a||L||undefined});b.set(M,T);const U=c.get(Q||'');U(T,J)};return{importScripts:x,onMessage:z,close:H}};"}},213:(e,r,t)=>{"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function o(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,(void 0,i=function(e,r){if("object"!==n(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,"string");if("object"!==n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(o.key),"symbol"===n(i)?i:String(i)),o)}var i}function i(e,r,t){return r&&o(e.prototype,r),t&&o(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e}Object.defineProperty(r,"__esModule",{value:!0}),r.EasyWebWorkerMessage=void 0;var a=t(367),c=t(726),u=i((function e(){!function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,e),this.messageId=(0,c.generatedId)(),this.decoupledPromise=(0,a.createDecoupledPromise)()}));r.EasyWebWorkerMessage=u},973:(e,r)=>{"use strict";function t(e){return function(e){if(Array.isArray(e))return n(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,r){if(e){if("string"==typeof e)return n(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?n(e,r):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function n(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}Object.defineProperty(r,"__esModule",{value:!0}),r.createStaticEasyWebWorker=r.StaticEasyWebWorker=void 0,r.StaticEasyWebWorker=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=new Map,o=new Map([["",function(){throw"you didn't defined a message-callback, please assign a callback by calling IEasyWorkerInstance.onMessage"}]]),i=function(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++)r[t]=arguments[t];var n=r[0],i=r[1];if("string"==typeof n){var a=n,c=i;o.set(a,c)}else{var u=n;o.set("",u)}};self.onmessage=function(e){var i=e.data,a=e.origin,c=i.messageId,u=i.cancelation;if(u){var s=u.reason;n.get(c).cancel(s)}else{var l=e.data,f=l.method,p=function(e){var r=e.messageId,o=e.payload,i=e.origin,a=new Set,c=function(e){e.progress||n.delete(r),self.postMessage(Object.assign({messageId:r},e),i)};return{payload:o,resolve:function(){var e=Array.from(arguments);c({resolved:{payload:e}})},reject:function(e){c({rejected:{reason:e}})},cancel:function(e){t(a).forEach((function(r){return r(e)})),c({canceled:{reason:e}})},onCancel:function(e){return a.add(e),function(){return a.delete(e)}},reportProgress:function(e,r){c({progress:{percentage:e,payload:r}})}}}({messageId:c,payload:l.execution.payload,origin:r||a||void 0});o.get(f||"")(p,e)}},e&&i(e),this.importScripts=function(){var e;(e=self).importScripts.apply(e,arguments)},this.close=function(){t(n.values()).forEach((function(e){return e.reject(new Error("worker closed"))})),self.close()},this.onMessage=i},r.createStaticEasyWebWorker=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return new r.StaticEasyWebWorker(e,t)}},991:(e,r,t)=>{"use strict";var n=Object.create?function(e,r,t,n){void 0===n&&(n=t);var o=Object.getOwnPropertyDescriptor(r,t);o&&!("get"in o?!r.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return r[t]}}),Object.defineProperty(e,n,o)}:function(e,r,t,n){void 0===n&&(n=t),e[n]=r[t]},o=function(e,r){for(var t in e)"default"===t||Object.prototype.hasOwnProperty.call(r,t)||n(r,e,t)};Object.defineProperty(r,"__esModule",{value:!0}),r.default=void 0;var i=t(30);Object.defineProperty(r,"default",{enumerable:!0,get:function(){return i.EasyWebWorker}}),o(t(30),r),o(t(973),r),o(t(797),r)},367:function(e){var r;r=()=>(()=>{"use strict";var e={399:(e,r)=>{function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t(e)}function n(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function o(){return o="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,r,t){var n=function(e,r){for(;!Object.prototype.hasOwnProperty.call(e,r)&&null!==(e=s(e)););return e}(e,r);if(n){var o=Object.getOwnPropertyDescriptor(n,r);return o.get?o.get.call(arguments.length<3?e:t):o.value}},o.apply(this,arguments)}function i(e){var r="function"==typeof Map?new Map:void 0;return i=function(e){if(null===e||(t=e,-1===Function.toString.call(t).indexOf("[native code]")))return e;var t;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==r){if(r.has(e))return r.get(e);r.set(e,n)}function n(){return a(e,arguments,s(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),u(n,e)},i(e)}function a(e,r,t){return a=c()?Reflect.construct.bind():function(e,r,t){var n=[null];n.push.apply(n,r);var o=new(Function.bind.apply(e,n));return t&&u(o,t.prototype),o},a.apply(null,arguments)}function c(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function u(e,r){return u=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,r){return e.__proto__=r,e},u(e,r)}function s(e){return s=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},s(e)}Object.defineProperty(r,"__esModule",{value:!0}),r.CancelablePromise=void 0;var l=function(e){!function(e,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),r&&u(e,r)}(f,e);var r,i,a,l=(i=f,a=c(),function(){var e,r=s(i);if(a){var o=s(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return function(e,r){if(r&&("object"===t(r)||"function"==typeof r))return r;if(void 0!==r)throw new TypeError("Derived constructors may only return object or undefined");return n(e)}(this,e)});function f(e){var r,t,i,a,c,u;return function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,f),(a=l.call(this,(function(e,r){c=e,u=r}))).status="pending",a.cancelCallbacks=[],a.ownCancelCallbacks=[],a.onProgressCallbacks=[],a.subscribeToOwnCancelEvent=function(e){a.ownCancelCallbacks.push(e)},a.cancel=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if("pending"===a.status)return a.status="canceled",a.ownCancelCallbacks.forEach((function(r){return r(e)})),a.cancelCallbacks.forEach((function(r){return r(e)})),a.reject(e),a.cancelCallbacks=[],a.ownCancelCallbacks=[],n(a)},a.onCancel=function(e){return a.cancelCallbacks.push(e),n(a)},a.onProgress=function(e){return a.onProgressCallbacks.push(e),n(a)},a.reportProgress=function(e,r){return a.onProgressCallbacks.forEach((function(t){return t(e,r)})),n(a)},a.createChildPromise=function(){var e,r,t=new f((function(t,n,o){e=t,r=n}));return t.onProgressCallbacks=a.onProgressCallbacks,t.onCancel((function(e){a.cancel(e)})),{promise:t,resolve:e,reject:r}},a.resolve=c,a.reject=u,e((function(e){a.status="resolved",a.resolve(e)}),(function(e){a.status="rejected",a.reject(e)}),{cancel:function(e){return a.cancel(e)},onCancel:function(e){return a.subscribeToOwnCancelEvent(e),n(a)},onProgress:function(e){return a.onProgress(e)},reportProgress:function(e,r){a.reportProgress(e,r)}}),a.then=function(e,t){var i=a.createChildPromise(),c=i.promise,u=i.resolve,l=i.reject;return o((r=n(a),s(f.prototype)),"then",r).call(r,e,t).then(u,l),c},a.catch=function(e){var r=a.createChildPromise(),i=r.promise,c=r.resolve,u=r.reject;return o((t=n(a),s(f.prototype)),"catch",t).call(t,e).then(c,u),i},a.finally=function(e){var r=a.createChildPromise(),t=r.promise,c=r.resolve,u=r.reject;return o((i=n(a),s(f.prototype)),"finally",i).call(i,e).then(c,u),t},a}return r=f,Object.defineProperty(r,"prototype",{writable:!1}),r}(i(Promise));r.CancelablePromise=l,l.prototype.constructor=Promise},716:(e,r,t)=>{function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}Object.defineProperty(r,"__esModule",{value:!0}),r.toCancelablePromise=r.isPromise=r.groupAsCancelablePromise=r.createDecoupledPromise=r.allSettledCancelable=void 0;var o=t(335),i=t(399);function a(){a=function(){return e};var e={},r=Object.prototype,t=r.hasOwnProperty,o=Object.defineProperty||function(e,r,t){e[r]=t.value},i="function"==typeof Symbol?Symbol:{},c=i.iterator||"@@iterator",u=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function l(e,r,t){return Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}),e[r]}try{l({},"")}catch(e){l=function(e,r,t){return e[r]=t}}function f(e,r,t,n){var i=r&&r.prototype instanceof d?r:d,a=Object.create(i.prototype),c=new W(n||[]);return o(a,"_invoke",{value:j(e,t,c)}),a}function p(e,r,t){try{return{type:"normal",arg:e.call(r,t)}}catch(e){return{type:"throw",arg:e}}}e.wrap=f;var h={};function d(){}function v(){}function y(){}var m={};l(m,c,(function(){return this}));var g=Object.getPrototypeOf,b=g&&g(g(_([])));b&&b!==r&&t.call(b,c)&&(m=b);var w=y.prototype=d.prototype=Object.create(m);function k(e){["next","throw","return"].forEach((function(r){l(e,r,(function(e){return this._invoke(r,e)}))}))}function P(e,r){function i(o,a,c,u){var s=p(e[o],e,a);if("throw"!==s.type){var l=s.arg,f=l.value;return f&&"object"==n(f)&&t.call(f,"__await")?r.resolve(f.__await).then((function(e){i("next",e,c,u)}),(function(e){i("throw",e,c,u)})):r.resolve(f).then((function(e){l.value=e,c(l)}),(function(e){return i("throw",e,c,u)}))}u(s.arg)}var a;o(this,"_invoke",{value:function(e,t){function n(){return new r((function(r,n){i(e,t,r,n)}))}return a=a?a.then(n,n):n()}})}function j(e,r,t){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(t.method=o,t.arg=i;;){var a=t.delegate;if(a){var c=O(a,t);if(c){if(c===h)continue;return c}}if("next"===t.method)t.sent=t._sent=t.arg;else if("throw"===t.method){if("suspendedStart"===n)throw n="completed",t.arg;t.dispatchException(t.arg)}else"return"===t.method&&t.abrupt("return",t.arg);n="executing";var u=p(e,r,t);if("normal"===u.type){if(n=t.done?"completed":"suspendedYield",u.arg===h)continue;return{value:u.arg,done:t.done}}"throw"===u.type&&(n="completed",t.method="throw",t.arg=u.arg)}}}function O(e,r){var t=r.method,n=e.iterator[t];if(void 0===n)return r.delegate=null,"throw"===t&&e.iterator.return&&(r.method="return",r.arg=void 0,O(e,r),"throw"===r.method)||"return"!==t&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+t+"' method")),h;var o=p(n,e.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,h;var i=o.arg;return i?i.done?(r[e.resultName]=i.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=void 0),r.delegate=null,h):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,h)}function E(e){var r={tryLoc:e[0]};1 in e&&(r.catchLoc=e[1]),2 in e&&(r.finallyLoc=e[2],r.afterLoc=e[3]),this.tryEntries.push(r)}function x(e){var r=e.completion||{};r.type="normal",delete r.arg,e.completion=r}function W(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(E,this),this.reset(!0)}function _(e){if(e){var r=e[c];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function r(){for(;++n<e.length;)if(t.call(e,n))return r.value=e[n],r.done=!1,r;return r.value=void 0,r.done=!0,r};return o.next=o}}return{next:S}}function S(){return{value:void 0,done:!0}}return v.prototype=y,o(w,"constructor",{value:y,configurable:!0}),o(y,"constructor",{value:v,configurable:!0}),v.displayName=l(y,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var r="function"==typeof e&&e.constructor;return!!r&&(r===v||"GeneratorFunction"===(r.displayName||r.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,y):(e.__proto__=y,l(e,s,"GeneratorFunction")),e.prototype=Object.create(w),e},e.awrap=function(e){return{__await:e}},k(P.prototype),l(P.prototype,u,(function(){return this})),e.AsyncIterator=P,e.async=function(r,t,n,o,i){void 0===i&&(i=Promise);var a=new P(f(r,t,n,o),i);return e.isGeneratorFunction(t)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},k(w),l(w,s,"Generator"),l(w,c,(function(){return this})),l(w,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var r=Object(e),t=[];for(var n in r)t.push(n);return t.reverse(),function e(){for(;t.length;){var n=t.pop();if(n in r)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=_,W.prototype={constructor:W,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!e)for(var r in this)"t"===r.charAt(0)&&t.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function n(t,n){return a.type="throw",a.arg=e,r.next=t,n&&(r.method="next",r.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=t.call(i,"catchLoc"),u=t.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,r){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&t.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=r&&r<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=r,i?(this.method="next",this.next=i.finallyLoc,h):this.complete(a)},complete:function(e,r){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&r&&(this.next=r),h},finish:function(e){for(var r=this.tryEntries.length-1;r>=0;--r){var t=this.tryEntries[r];if(t.finallyLoc===e)return this.complete(t.completion,t.afterLoc),x(t),h}},catch:function(e){for(var r=this.tryEntries.length-1;r>=0;--r){var t=this.tryEntries[r];if(t.tryLoc===e){var n=t.completion;if("throw"===n.type){var o=n.arg;x(t)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,r,t){return this.delegate={iterator:_(e),resultName:r,nextLoc:t},"next"===this.method&&(this.arg=void 0),h}},e}function c(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}r.createDecoupledPromise=function(){var e,r,t,n=new i.CancelablePromise((function(n,o,i){e=n,r=o,t=i}));return Object.assign(Object.assign({resolve:e,reject:r},t),{promise:n})};var u=function e(r){if(r instanceof i.CancelablePromise)return r;if("function"==typeof r)return e(r());if(!l(r))return new i.CancelablePromise((function(e){return e(r)}));var t,n,o=new i.CancelablePromise((function(e,o,i){t=e,n=o,r.then(t,n)}));return o.onCancel((function(e){n(e)})),o};r.toCancelablePromise=u;var s=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e.length)return null;var t,n=r.maxConcurrent,o=void 0===n?8:n,a=r.executeInOrder,s=void 0!==a&&a,l=r.beforeEachCallback,f=void 0===l?null:l,p=r.afterEachCallback,h=void 0===p?null:p,d=r.onQueueEmptyCallback,v=void 0===d?null:d,y=function(e){if(Array.isArray(e))return c(e)}(t=e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||function(e,r){if(e){if("string"==typeof e)return c(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?c(e,r):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),m=[];return new i.CancelablePromise((function(e,r,t){return function e(){if(y.length){var r=y.splice(0,o).map((function(e){var r="function"==typeof e?e():e;null==f||f();var n=u(r);return t.onCancel((function(){n.cancel()})),n.then((function(e){m.push(e),null==h||h(e)})),s?n.then((function(e){return e})):n}));return Promise.all(r).then((function(){return e()}))}}().then((function(){null==v||v(m),e(m)}))}))};r.groupAsCancelablePromise=s;var l=function(e){return Promise.resolve(e)===e};r.isPromise=l,r.allSettledCancelable=function(e){var r=[],t=e.map((function(e){var t=u(e);return r.push(t),(0,o.tryCatchPromise)((function(){return t})).then((function(e){return{error:e.error,result:e.result,promise:t}}))})),n=s(r);return new i.CancelablePromise((function(e,r,o){return i=void 0,c=a().mark((function r(){var i;return a().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return o.onCancel(n.cancel),r.next=3,Promise.all(t);case 3:i=r.sent,e(i);case 5:case"end":return r.stop()}}),r)})),new(i||(i=Promise))((function(e,r){function t(e){try{o(c.next(e))}catch(e){r(e)}}function n(e){try{o(c.throw(e))}catch(e){r(e)}}function o(r){var o;r.done?e(r.value):(o=r.value,o instanceof i?o:new i((function(e){e(o)}))).then(t,n)}o((c=c.apply(void 0,[])).next())}));var i,c}))}},522:(e,r,t)=>{Object.defineProperty(r,"__esModule",{value:!0});var n=t(399);Object.keys(n).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in r&&r[e]===n[e]||Object.defineProperty(r,e,{enumerable:!0,get:function(){return n[e]}}))}));var o=t(716);Object.keys(o).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in r&&r[e]===o[e]||Object.defineProperty(r,e,{enumerable:!0,get:function(){return o[e]}}))}))},991:(e,r,t)=>{Object.defineProperty(r,"__esModule",{value:!0});var n=t(522);Object.keys(n).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in r&&r[e]===n[e]||Object.defineProperty(r,e,{enumerable:!0,get:function(){return n[e]}}))}));var o=t(335);Object.keys(o).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in r&&r[e]===o[e]||Object.defineProperty(r,e,{enumerable:!0,get:function(){return o[e]}}))}))},335:(e,r,t)=>{Object.defineProperty(r,"__esModule",{value:!0});var n=t(969);Object.keys(n).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in r&&r[e]===n[e]||Object.defineProperty(r,e,{enumerable:!0,get:function(){return n[e]}}))}))},969:(e,r,t)=>{Object.defineProperty(r,"__esModule",{value:!0});var n=t(948);Object.keys(n).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in r&&r[e]===n[e]||Object.defineProperty(r,e,{enumerable:!0,get:function(){return n[e]}}))}));var o=t(667);Object.keys(o).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in r&&r[e]===o[e]||Object.defineProperty(r,e,{enumerable:!0,get:function(){return o[e]}}))}))},948:(e,r,t)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.tryCatchPromise=r.tryCatch=void 0;var n=t(522);r.tryCatch=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=r.defaultResult,n=void 0===t?null:t,o=r.exceptionHandlingType,i=void 0===o?"error":o;try{return{error:null,result:e()}}catch(e){return"ignore"!==i&&console[i](e),{error:e,result:n}}},r.tryCatchPromise=function(e,r){var t=r||{},o=t.defaultResult,i=void 0===o?null:o,a=t.exceptionHandlingType,c=void 0===a?"error":a,u=t.ignoreCancel,s=void 0===u||u,l=null,f=null,p=function(e){f=e,"ignore"!=c&&("canceled"===l.status&&s||console[c](f))};try{if(e instanceof n.CancelablePromise)return l=e,new Promise((function(e){l.then((function(e){return{error:null,result:e,promise:l}})).catch((function(e){return p(e),{error:e,result:i,promise:l}}))}));var h=e(),d=h instanceof n.CancelablePromise;return l=d?h:(0,n.toCancelablePromise)(h),new Promise((function(e){l.then((function(r){e({error:null,result:r,promise:l})})).catch((function(r){p(r),e({error:r,result:i,promise:l})}))}))}catch(e){return p(e),Promise.resolve({error:f,result:i,promise:l})}}},667:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0})}},r={};return function t(n){var o=r[n];if(void 0!==o)return o.exports;var i=r[n]={exports:{}};return e[n](i,i.exports,t),i.exports}(991)})(),e.exports=r()}},r={},function t(n){var o=r[n];if(void 0!==o)return o.exports;var i=r[n]={exports:{}};return e[n].call(i.exports,i,i.exports,t),i.exports}(991);var e,r}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "easy-web-worker",
3
- "version": "4.0.0",
3
+ "version": "4.0.1",
4
4
  "description": "This is a library to easily handle and create web-workers, if you are a web developer and never tried this... do not wait any longer! Workers are an amazing option to improve user experience and make your webpages even greater",
5
5
  "main": "lib/bundle.js",
6
6
  "types": "lib/index.d.ts",