easy-web-worker 6.1.1 → 6.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -30,7 +30,7 @@ const worker = createEasyWebWorker(({ onMessage }) => {
30
30
  * The payload includes whatever parameters are sent from the main thread
31
31
  */
32
32
  const { payload } = message;
33
- const result = fibonacci(payload.index);
33
+ const result = fibonacci(payload.base);
34
34
 
35
35
  message.resolve(result);
36
36
  //message.reject(); // or reject
@@ -44,7 +44,7 @@ Then, for sending a message to the worker:
44
44
  /**
45
45
  * This returns a CancelablePromise
46
46
  */
47
- await worker.send({ index: 40 });
47
+ await worker.send(40);
48
48
  ```
49
49
 
50
50
  And that's it! You now have a worker running heavy computation in a real separate thread, with real asynchronous programming in JavaScript.
@@ -52,11 +52,11 @@ And that's it! You now have a worker running heavy computation in a real separat
52
52
  You can also create an easy web worker from a static file, or from a native worker instance:
53
53
 
54
54
  ```ts
55
- const worker = createEasyWebWorker('./worker.js');
56
- const worker = createEasyWebWorker(new Worker('./worker.js')); // ƒ Worker() { [native code] }
55
+ const worker = createEasyWebWorker("./worker.js");
56
+ const worker = createEasyWebWorker(new Worker("./worker.js")); // ƒ Worker() { [native code] }
57
57
 
58
- const worker = new EasyWebWorker('./worker.js');
59
- const worker = new EasyWebWorker(new Worker('./worker.js')); // ƒ Worker() { [native code] }
58
+ const worker = new EasyWebWorker("./worker.js");
59
+ const worker = new EasyWebWorker(new Worker("./worker.js")); // ƒ Worker() { [native code] }
60
60
  ```
61
61
 
62
62
  When working with **static files**, which can offer substantial benefits with web workers, you simply need to create an instance of **StaticEasyWebWorker**.
@@ -84,15 +84,15 @@ onMessage((message) => {
84
84
 
85
85
  /** You can reject the message and send back a reason,
86
86
  * if no transfer is necessary just avoid the second parameter */
87
- message.reject(new Error('something happened'));
87
+ message.reject(new Error("something happened"));
88
88
 
89
- const metadata = { message: 'progress from inside the worker' };
89
+ const metadata = { message: "progress from inside the worker" };
90
90
 
91
91
  /** You can report progress */
92
92
  message.reportProgress(10, metadata, []); // all the methods allows you to send Transferable[]
93
93
 
94
94
  /** You can cancel an operation from within the worker */
95
- message.cancel('the operating was canceled from the worker');
95
+ message.cancel("the operating was canceled from the worker");
96
96
 
97
97
  /** You can subscribe to the cancellation event of the message,
98
98
  * regardless of whether this cancellation is internal or external to the worker.*/
@@ -117,7 +117,7 @@ onMessage((message) => {
117
117
  /**
118
118
  * For adding specific actions
119
119
  */
120
- onMessage('readCSV', (message) => {
120
+ onMessage("readCSV", (message) => {
121
121
  // do something
122
122
  });
123
123
  ```
@@ -182,7 +182,7 @@ await createEasyWebWorker<null, string>(({ onMessage }) => {
182
182
  If you need to pass a primitive parameter to the body of the worker, you can use the **primitiveParameters** configuration. This is an array of values that will be serialized and embedded into the worker's body.
183
183
 
184
184
  ```ts
185
- const message = 'Hello';
185
+ const message = "Hello";
186
186
 
187
187
  await createEasyWebWorker<null, string>(
188
188
  ({ onMessage }, context) => {
@@ -193,7 +193,7 @@ await createEasyWebWorker<null, string>(
193
193
  {
194
194
  primitiveParameters: [message],
195
195
  }
196
- ).send('hello!');
196
+ ).send("hello!");
197
197
  ```
198
198
 
199
199
  Take a look at Workers API if you don't know yet how they work: https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API,
@@ -460,9 +460,9 @@ const worker = createEasyWebWorker<string, string>(({ onMessage }) => {
460
460
  });
461
461
  });
462
462
 
463
- const messagePromise = worker.send('Hello!');
463
+ const messagePromise = worker.send("Hello!");
464
464
 
465
- worker.reboot('Worker was restarted');
465
+ worker.reboot("Worker was restarted");
466
466
 
467
467
  // The message promise will be rejected with the reason 'Worker was restarted'
468
468
  ```
@@ -4,7 +4,6 @@ export declare const generatedId: () => string;
4
4
  * this template is used to create dynamic workers from strings templates
5
5
  * PLEASE KEEP THIS FUNCTION UPDATED WITH THE LATEST VERSION OF THE StaticEasyWebWorker CLASS
6
6
  * [IMPORTANT] Avoid ";" at the end of the template
7
- * for transpiling you can use https://johnny-quesada-developer.github.io/easy-web-workers-example/?example=typescript
8
7
  * for minifying the template, please use the following options:
9
8
  * - remove comments
10
9
  * - remove types
package/lib/bundle.js CHANGED
@@ -1,2 +1,2 @@
1
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=[],s=!0,l=!1;try{if(i=(t=t.call(e)).next,0===r){if(Object(t)!==t)return;s=!1}else for(;!(s=(n=i.call(t)).done)&&(c.push(n.value),c.length!==r);s=!0);}catch(e){l=!0,o=e}finally{try{if(!s&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(l)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",s=i.asyncIterator||"@@asyncIterator",l=i.toStringTag||"@@toStringTag";function u(e,r,t){return Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}),e[r]}try{u({},"")}catch(e){u=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 _(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={};u(m,a,(function(){return this}));var g=Object.getPrototypeOf,b=g&&g(g(C([])));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){u(e,r,(function(e){return this._invoke(r,e)}))}))}function P(e,r){function i(o,a,c,s){var l=p(e[o],e,a);if("throw"!==l.type){var u=l.arg,f=u.value;return f&&"object"==n(f)&&t.call(f,"__await")?r.resolve(f.__await).then((function(e){i("next",e,c,s)}),(function(e){i("throw",e,c,s)})):r.resolve(f).then((function(e){u.value=e,c(u)}),(function(e){return i("throw",e,c,s)}))}s(l.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 s=p(e,r,t);if("normal"===s.type){if(n=t.done?"completed":"suspendedYield",s.arg===h)continue;return{value:s.arg,done:t.done}}"throw"===s.type&&(n="completed",t.method="throw",t.arg=s.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 x(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 E(e){var r=e.completion||{};r.type="normal",delete r.arg,e.completion=r}function _(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(x,this),this.reset(!0)}function C(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=u(y,l,"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,u(e,l,"GeneratorFunction")),e.prototype=Object.create(w),e},e.awrap=function(e){return{__await:e}},k(P.prototype),u(P.prototype,s,(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),u(w,l,"Generator"),u(w,a,(function(){return this})),u(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=C,_.prototype={constructor:_,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(E),!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"),s=t.call(i,"finallyLoc");if(c&&s){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(!s)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),E(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;E(t)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,r,t){return this.delegate={iterator:C(e),resultName:r,nextLoc:t},"next"===this.method&&(this.arg=void 0),h}},e}function s(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 l=function(e,r,t,n){return new(t||(t=Promise))((function(o,i){function a(e){try{s(n.next(e))}catch(e){i(e)}}function c(e){try{s(n.throw(e))}catch(e){i(e)}}function s(e){var r;e.done?o(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(a,c)}s((n=n.apply(e,r||[])).next())}))};Object.defineProperty(r,"__esModule",{value:!0}),r.EasyWebWorker=r.createBlobWorker=void 0;var u=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]:{}).primitiveParameters,n=void 0===t?[]:t,o=Array.isArray(e)?e:[e],i="".concat(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return e.length?'self.importScripts(["'.concat(e.join('","'),'"]);'):""}(r),"self.primitiveParameters=JSON.parse(`").concat(JSON.stringify(null!=n?n:[]),"`);let ew$=").concat((0,f.getWorkerTemplate)(),";let cn$=self;").concat(o.map((function(e){return"\n(".concat(null==e?void 0:e.toString().trim(),")(ew$,cn$);")})).join(""));return(window.URL||window.webkitURL).createObjectURL(new Blob([i],{type:"application/javascript"}))};var h=function(){function e(r){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};!function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,e),this.source=r,this.workerUrl=null,this.config=null,this.maxWorkers=1,this.workers=[],this.keepAlive=!0,this.warmUpWorkers=!1,this.terminationDelay=1e3,this.primitiveParameters=[],this.messagesQueue=new Map,this.scripts=[],this.warmUp=function(){var e=t.config,r=e.warmUpWorkers,n=e.maxWorkers;r&&new Array(n).fill(null).forEach((function(){return t.getWorkerFromPool()}))},this.fillWorkerMethods=function(e){return e.onmessage=function(e){t.executeMessageCallback(e)},e.onerror=function(e){var r=t.config.onWorkerError;if(!r)throw e;r(e)},e},this.createNewWorker=function(){var e,r=t.workerUrl,n=t.config.workerOptions;n.name=0===(e=t.workers.length)?n.name:"".concat(n.name,"-").concat(e);var o=new Worker(r,n);return t.fillWorkerMethods(o)},this.getWorkerFromPool=function(){var e=t.config.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||t.source instanceof URL,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.config.maxWorkers=n?t.workers.length:t.config.maxWorkers,t.config.keepAlive=!!n||t.config.keepAlive},this.send=function(e,r){return t.sendToWorker({payload:e},r)},this.sendToWorker=function(e,r){var n,o,i=e.payload,a=e.method,c=new u.EasyWebWorkerMessage,s=c.messageId,l=c.decoupledPromise,f=t.getWorkerFromPool();l.promise.cancel=function(e){l.promise.cancel=l._cancel;var n={messageId:s,method:a,cancelation:{reason:e}};return t.workers.length?(f.postMessage(n,r),l.promise):l.cancel(e)},t.config.keepAlive||null===(o=null===(n=l.promise)||void 0===n?void 0:n.finally)||void 0===o||o.call(n,(function(){setTimeout((function(){t.messagesQueue.size||(t.workers.forEach((function(e){return e.terminate()})),t.workers=[])}),t.config.terminationDelay)})),t.addMessageToQueue(c);var p={messageId:s,method:a,execution:{payload:i}};return f.postMessage(p,r),l.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 new p.CancelablePromise((function(e,r,n){var s=n.onCancel;return l(t,void 0,void 0,c().mark((function r(){var t,n;return c().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return t=this.cancelAll(i,a),n=s((function(){t.cancel()})),r.next=4,t;case 4:n(),e(this.send.apply(this,[o]));case 6:case"end":return r.stop()}}),r,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],s=r[2];return new p.CancelablePromise((function(e,r,n){var u=n.onCancel,f=n.reportProgress;return l(t,void 0,void 0,c().mark((function r(){var t,n,l,p,h,d;return c().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(!this.messagesQueue.size){r.next=10;break}return t=o(this.messagesQueue,1),n=t[0],l=o(n,2),p=l[1],this.RemoveMessageFromQueue(p.messageId),h=this.cancelAll(a,s).onProgress(f),d=u((function(){h.cancel()})),this.addMessageToQueue(p),r.next=9,h;case 9:d();case 10:e(this.send.apply(this,[i]));case 11:case"end":return r.stop()}}),r,this)})))}))},this.workerUrl="string"==typeof r||r instanceof URL?r:null;var i=null!=n?n:{},a=i.scripts,s=void 0===a?[]:a,h=i.name,d=i.onWorkerError,v=void 0===d?null:d,y=i.maxWorkers,m=void 0===y?1:y,g=i.keepAlive,b=void 0===g?null:g,w=i.terminationDelay,k=void 0===w?1e3:w,P=i.warmUpWorkers,j=void 0===P?null:P,O=i.primitiveParameters,x=i.workerOptions,E=void 0===x?{}:x,_=!m||1===m||j,C=_||null!=b&&b;this.config={scripts:null!=s?s:[],name:h,maxWorkers:m,keepAlive:C,warmUpWorkers:_,workerOptions:Object.assign(Object.assign({},null!=E?E:{}),{name:E.name||(0,f.generatedId)()}),onWorkerError:v,terminationDelay:k,primitiveParameters:O},this.workerOptions=this.config.workerOptions,this.name=this.workerOptions.name,this.scripts=s,this.onWorkerError=v,this.maxWorkers=m,this.keepAlive=C,this.terminationDelay=k,this.warmUpWorkers=_,this.primitiveParameters=null!=O?O:[],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||this.source instanceof URL}},{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 s=o.percentage,l=o.payload;c.reportProgress(s,l)}else{this.RemoveMessageFromQueue(n.messageId);var u=e.data.worker_cancelation;if(u){var f=u.reason;c._cancel(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(){if(this.isExternalWorkerFile)return this.source;var e=this.config,t=e.primitiveParameters,n=e.scripts;return(0,r.createBlobWorker)(this.source,n,{primitiveParameters:t})}},{key:"cancelAll",value:function(e){var r=this,t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).force,n=void 0!==t&&t;return new p.CancelablePromise((function(t,o,i){var a=i.onCancel,s=i.reportProgress;return l(r,void 0,void 0,c().mark((function r(){var o,i,l,u,f,h;return c().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(l=Array.from(null!==(i=null===(o=this.messagesQueue)||void 0===o?void 0:o.values())&&void 0!==i?i:[]),u=l.length,f=100/u,!n){r.next=5;break}return r.abrupt("return",t(this.reboot(e)));case 5:h=(0,p.groupAsCancelablePromise)(l.map((function(r){return r.decoupledPromise.promise.cancel(e).catch((function(e){return s(f,e),e}))}))),a((function(){h.cancel()})),t(h);case 8:case"end":return r.stop()}}),r,this)})))}))}},{key:"addMessageToQueue",value:function(e){this.messagesQueue.set(e.messageId,e)}},{key:"sendToMethod",value:function(e,r,t){return this.sendToWorker({method:e,payload:r},t)}},{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 l(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&&(window.URL||window.webkitURL).revokeObjectURL("string"==typeof this.workerUrl?this.workerUrl:this.workerUrl.href),this.workers.forEach((function(e){return e.terminate()})),this.workers=[];case 5:case"end":return e.stop()}}),e,this)})))}}],n&&s(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(Date.now()).concat(Math.random().toString(36).substring(2,9))},r.getWorkerTemplate=function(){return'(()=>{let e=new Map,o=new Map([["",()=>{throw"you didn\'t define a message-callback, please assign a callback by calling easyWorker.onMessage"}]]),t=({messageId:o,payload:t,method:n})=>{let a="pending",r=new Map,s=(t,s,l=[])=>{let c=a,i="progress"===t?"pending":t;if(!e.has(o)){let g="%c#"+o+" Message Not Found: %cThis means that the message was already resolved | rejected | canceled. To avoid this error, please make sure that you are not resolving | rejecting | canceling the same message twice. Also make sure that you are not reporting progress after the message was processed. Remember each message can handle his one cancelation by adding a handler with the %cmessage.onCancel%c method. To now more about this method, please check the documentation at: %chttps://www.npmjs.com/package/easy-web-worker#ieasywebworkermessageipayload--null-iresult--void %cTrying to process message:";console.error(g,"color: darkorange; font-size: 12px; font-weight: bold;","font-weight: normal;","font-weight: bold;","font-weight: normal;","color: lightblue; font-size: 10px; font-weight: bold;","font-weight: bold; color: darkorange;",{messageId:o,status:{current:c,target:i},method:n,action:s});return}let d={resolved:"onResolve",rejected:"onReject",canceled:"onCancel",worker_cancelation:"onCancel",pending:"onProgress"}[i],h=r.get(d);h?.forEach(e=>e(s,l));let w=!s.progress;w&&(r.get("onFinalize")?.forEach(e=>e(s,l)),e.delete(o)),self.postMessage({messageId:o,...s},l),a=i},l=(e,o=[])=>s("resolved",{resolved:{payload:void 0===e?[]:[e]}},o),c=(e,o=[])=>{s("rejected",{rejected:{reason:e}},o)},i=(e,o=[])=>s("worker_cancelation",{worker_cancelation:{reason:e}},o),g=(e,o,t=[])=>{s("progress",{progress:{percentage:e,payload:o}},t)},d=e=>o=>{r.has(e)||r.set(e,new Set);let t=r.get(e);return t.add(o),()=>t.delete(o)};return{messageId:o,method:n,payload:t,getStatus:()=>a,isPending:()=>"pending"===a,resolve:l,reject:c,cancel:i,reportProgress:g,onResolve:d("onResolve"),onReject:d("onReject"),onCancel:d("onCancel"),onProgress:d("onProgress"),onFinalize:d("onFinalize")}},n=(...e)=>{let[t,n]=e,a="string"==typeof t;if(a){let r=t,s=n;o.set(r,s);return}let l=t;o.set("",l)},a=()=>{let o=[...e.values()];o.forEach(e=>e.reject(Error("worker closed"))),self.close()};self.onmessage=n=>{let{data:a}=n,{messageId:r,cancelation:s}=a;if(s){let{reason:l}=s,c=e.get(r);c.cancel(l);return}let{method:i,execution:g}=n.data,{payload:d}=g,h=t({method:i,messageId:r,payload:d});e.set(r,h);let w=o.get(i||"");w(h,n)};let r=(...e)=>{self.importScripts(...e)};return{onMessage:n,close:a,importScripts:r}})()'}},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),s=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)(),this.decoupledPromise._cancel=this.decoupledPromise.promise.cancel}));r.EasyWebWorkerMessage=s},973:(e,r)=>{"use strict";function t(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,n,o=(r=new Map,n=new Map([["",function(){throw"you didn't defined a message-callback, please assign a callback by calling easyWorker.onMessage"}]]),self.onmessage=function(e){var t=e.data,o=t.messageId,i=t.cancelation;if(i){var a=i.reason;r.get(o).cancel(a)}else{var c=e.data,s=c.method,l=function(e){var t=e.messageId,n=e.payload,o=e.method,i="pending",a=new Map,c=function(e,n){var c,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],l=i,u="progress"===e?"pending":e;if(r.has(t)){var f={resolved:"onResolve",rejected:"onReject",canceled:"onCancel",worker_cancelation:"onCancel",pending:"onProgress"}[u],p=a.get(f);null==p||p.forEach((function(e){return e(n,s)})),!n.progress&&(null===(c=a.get("onFinalize"))||void 0===c||c.forEach((function(e){return e(n,s)})),r.delete(t)),self.postMessage(Object.assign({messageId:t},n),s),i=u}else{var h="%c#"+t+" Message Not Found: %cThis means that the message was already resolved | rejected | canceled. To avoid this error, please make sure that you are not resolving | rejecting | canceling the same message twice. Also make sure that you are not reporting progress after the message was processed. Remember each message can handle his one cancelation by adding a handler with the %cmessage.onCancel%c method. To now more about this method, please check the documentation at: %chttps://www.npmjs.com/package/easy-web-worker#ieasywebworkermessageipayload--null-iresult--void %cTrying to process message:";console.error(h,"color: darkorange; font-size: 12px; font-weight: bold;","font-weight: normal;","font-weight: bold;","font-weight: normal;","color: lightblue; font-size: 10px; font-weight: bold;","font-weight: bold; color: darkorange;",{messageId:t,status:{current:l,target:u},method:o,action:n})}},s=function(e){return function(r){a.has(e)||a.set(e,new Set);var t=a.get(e);return t.add(r),function(){return t.delete(r)}}};return{messageId:t,method:o,payload:n,getStatus:function(){return i},isPending:function(){return"pending"===i},resolve:function(e){return c("resolved",{resolved:{payload:void 0===e?[]:[e]}},arguments.length>1&&void 0!==arguments[1]?arguments[1]:[])},reject:function(e){c("rejected",{rejected:{reason:e}},arguments.length>1&&void 0!==arguments[1]?arguments[1]:[])},cancel:function(e){return c("worker_cancelation",{worker_cancelation:{reason:e}},arguments.length>1&&void 0!==arguments[1]?arguments[1]:[])},reportProgress:function(e,r){c("progress",{progress:{percentage:e,payload:r}},arguments.length>2&&void 0!==arguments[2]?arguments[2]:[])},onResolve:s("onResolve"),onReject:s("onReject"),onCancel:s("onCancel"),onProgress:s("onProgress"),onFinalize:s("onFinalize")}}({method:s,messageId:o,payload:c.execution.payload});r.set(o,l),n.get(s||"")(l,e)}},{onMessage:function(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++)r[t]=arguments[t];var o=r[0],i=r[1];if("string"==typeof o){var a=o,c=i;n.set(a,c)}else{var s=o;n.set("",s)}},close:function(){var e;(e=r.values(),function(e){if(Array.isArray(e))return t(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 t(e,r);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?t(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.")}()).forEach((function(e){return e.reject(new Error("worker closed"))})),self.close()},importScripts:function(){var e;(e=self).importScripts.apply(e,arguments)}}),i=o.close,a=o.onMessage,c=o.importScripts;this.close=i,this.onMessage=a,this.importScripts=c,e&&a(e)},r.createStaticEasyWebWorker=function(e){return new r.StaticEasyWebWorker(e)}},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=l(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,l(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),s(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&&s(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 s(e,r){return s=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,r){return e.__proto__=r,e},s(e,r)}function l(e){return l=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},l(e)}Object.defineProperty(r,"__esModule",{value:!0}),r.CancelablePromise=void 0;var u=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&&s(e,r)}(f,e);var r,i,a,u=(i=f,a=c(),function(){var e,r=l(i);if(a){var o=l(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,s;return function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,f),(a=u.call(this,(function(e,r){c=e,s=r}))).status="pending",a.cancelCallbacks=new Set,a.ownCancelCallbacks=new Set,a.onProgressCallbacks=new Set,a.disposeCallbacks=function(){a.cancelCallbacks=new Set,a.ownCancelCallbacks=new Set,a.onProgressCallbacks=new Set},a.subscribeToOwnCancelEvent=function(e){return a.ownCancelCallbacks.add(e),function(){a.ownCancelCallbacks.delete(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.disposeCallbacks(),n(a)},a.onCancel=function(e){var r=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).signal;return a.cancelCallbacks.add(e),null==r||r.subscribe((function(){a.cancelCallbacks.delete(e)})),n(a)},a.onProgress=function(e){var r=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).signal;return a.onProgressCallbacks.add(e),null==r||r.subscribe((function(){a.onProgressCallbacks.delete(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=s,e((function(e){a.status="resolved",a.disposeCallbacks(),a._resolve(e)}),(function(e){a.status="rejected",a.disposeCallbacks(),a._reject(e)}),{cancel:function(e){return a.cancel(e)},onCancel:function(e){return a.subscribeToOwnCancelEvent(e)},onProgress:function(e){return a.onProgress(e),function(){a.onProgressCallbacks.delete(e)}},reportProgress:function(e,r){a.reportProgress(e,r)}}),a.then=function(e,t){var i=a.createChildPromise(),c=i.promise,s=i.resolve,u=i.reject;return o((r=n(a),l(f.prototype)),"then",r).call(r,e,t).then(s,u),c},a.catch=function(e){var r=a.createChildPromise(),i=r.promise,c=r.resolve,s=r.reject;return o((t=n(a),l(f.prototype)),"catch",t).call(t,e).then(c,s),i},a.finally=function(e){var r=a.createChildPromise(),t=r.promise,c=r.resolve,s=r.reject;return o((i=n(a),l(f.prototype)),"finally",i).call(i,e).then(c,s),t},a}return r=f,Object.defineProperty(r,"prototype",{writable:!1}),r}(i(Promise));r.CancelablePromise=u,u.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",s=i.asyncIterator||"@@asyncIterator",l=i.toStringTag||"@@toStringTag";function u(e,r,t){return Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}),e[r]}try{u({},"")}catch(e){u=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 _(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={};u(m,c,(function(){return this}));var g=Object.getPrototypeOf,b=g&&g(g(C([])));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){u(e,r,(function(e){return this._invoke(r,e)}))}))}function P(e,r){function i(o,a,c,s){var l=p(e[o],e,a);if("throw"!==l.type){var u=l.arg,f=u.value;return f&&"object"==n(f)&&t.call(f,"__await")?r.resolve(f.__await).then((function(e){i("next",e,c,s)}),(function(e){i("throw",e,c,s)})):r.resolve(f).then((function(e){u.value=e,c(u)}),(function(e){return i("throw",e,c,s)}))}s(l.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 s=p(e,r,t);if("normal"===s.type){if(n=t.done?"completed":"suspendedYield",s.arg===h)continue;return{value:s.arg,done:t.done}}"throw"===s.type&&(n="completed",t.method="throw",t.arg=s.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 x(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 E(e){var r=e.completion||{};r.type="normal",delete r.arg,e.completion=r}function _(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(x,this),this.reset(!0)}function C(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=u(y,l,"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,u(e,l,"GeneratorFunction")),e.prototype=Object.create(w),e},e.awrap=function(e){return{__await:e}},k(P.prototype),u(P.prototype,s,(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),u(w,l,"Generator"),u(w,c,(function(){return this})),u(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=C,_.prototype={constructor:_,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(E),!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"),s=t.call(i,"finallyLoc");if(c&&s){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(!s)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),E(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;E(t)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,r,t){return this.delegate={iterator:C(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 s=function e(r){if(r instanceof i.CancelablePromise)return r;if("function"==typeof r)return e(r());if(!u(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=s;var l=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,l=void 0!==a&&a,u=r.beforeEachCallback,f=void 0===u?null:u,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(r,t,n){(function r(){if(y.length){var t=y.splice(0,o).map((function(r){var t="function"==typeof r?r():r;null==f||f();var o=s(t),i=n.onCancel((function(){o.cancel()}));return o.then((function(r){var t,o;i(),m.push(r),null==h||h(r),n.reportProgress((null!==(t=m.length)&&void 0!==t?t:1)/(null!==(o=e.length)&&void 0!==o?o:1)*100)})),l?o.then((function(e){return e})):o}));return Promise.all(t).then((function(){return r()}))}})().then((function(){null==v||v(m),r(m)}))}))};r.groupAsCancelablePromise=l;var u=function(e){return Promise.resolve(e)===e};r.isPromise=u,r.allSettledCancelable=function(e){var r=[],t=e.map((function(e){var t=s(e);return r.push(t),(0,o.tryCatchPromise)((function(){return t})).then((function(e){return{error:e.error,result:e.result,promise:t}}))})),n=l(r);return new i.CancelablePromise((function(e,r,o){return i=void 0,c=a().mark((function r(){var i,c;return a().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return i=o.onCancel(n.cancel),r.next=3,Promise.all(t);case 3:c=r.sent,i(),e(c);case 6: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,s=t.ignoreCancel,l=void 0===s||s,u=null,f=null,p=function(e){f=e,"ignore"!=c&&("canceled"===(null==u?void 0:u.status)&&l||console[c](f))};try{if(e instanceof n.CancelablePromise)return(u=e).then((function(e){return{error:null,result:e,promise:u}})).catch((function(e){return p(e),{error:e,result:i,promise:u}}));var h=e();if(void 0===h)return Promise.reject(Error("tryCatchPromise: callback parameter must return a value () => promise"));var d=h instanceof n.CancelablePromise;return(u=d?h:(0,n.toCancelablePromise)(h)).then((function(e){return{error:null,result:e,promise:u}})).catch((function(e){return p(e),{error:e,result:i,promise:u}}))}catch(e){return p(e),Promise.resolve({error:f,result:i,promise:u})}}},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}));
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,a,i,c=[],s=!0,l=!1;try{if(a=(t=t.call(e)).next,0===r){if(Object(t)!==t)return;s=!1}else for(;!(s=(n=a.call(t)).done)&&(c.push(n.value),c.length!==r);s=!0);}catch(e){l=!0,o=e}finally{try{if(!s&&null!=t.return&&(i=t.return(),Object(i)!==i))return}finally{if(l)throw o}}return c}}(e,r)||a(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 a(e,r){if(e){if("string"==typeof e)return i(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)?i(e,r):void 0}}function i(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},a="function"==typeof Symbol?Symbol:{},i=a.iterator||"@@iterator",s=a.asyncIterator||"@@asyncIterator",l=a.toStringTag||"@@toStringTag";function u(e,r,t){return Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}),e[r]}try{u({},"")}catch(e){u=function(e,r,t){return e[r]=t}}function f(e,r,t,n){var a=r&&r.prototype instanceof p?r:p,i=Object.create(a.prototype),c=new C(n||[]);return o(i,"_invoke",{value:j(e,t,c)}),i}function h(e,r,t){try{return{type:"normal",arg:e.call(r,t)}}catch(e){return{type:"throw",arg:e}}}e.wrap=f;var d={};function p(){}function v(){}function y(){}var m={};u(m,i,(function(){return this}));var g=Object.getPrototypeOf,b=g&&g(g(_([])));b&&b!==r&&t.call(b,i)&&(m=b);var w=y.prototype=p.prototype=Object.create(m);function k(e){["next","throw","return"].forEach((function(r){u(e,r,(function(e){return this._invoke(r,e)}))}))}function P(e,r){function a(o,i,c,s){var l=h(e[o],e,i);if("throw"!==l.type){var u=l.arg,f=u.value;return f&&"object"==n(f)&&t.call(f,"__await")?r.resolve(f.__await).then((function(e){a("next",e,c,s)}),(function(e){a("throw",e,c,s)})):r.resolve(f).then((function(e){u.value=e,c(u)}),(function(e){return a("throw",e,c,s)}))}s(l.arg)}var i;o(this,"_invoke",{value:function(e,t){function n(){return new r((function(r,n){a(e,t,r,n)}))}return i=i?i.then(n,n):n()}})}function j(e,r,t){var n="suspendedStart";return function(o,a){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw a;return{value:void 0,done:!0}}for(t.method=o,t.arg=a;;){var i=t.delegate;if(i){var c=O(i,t);if(c){if(c===d)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 s=h(e,r,t);if("normal"===s.type){if(n=t.done?"completed":"suspendedYield",s.arg===d)continue;return{value:s.arg,done:t.done}}"throw"===s.type&&(n="completed",t.method="throw",t.arg=s.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")),d;var o=h(n,e.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,d;var a=o.arg;return a?a.done?(r[e.resultName]=a.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=void 0),r.delegate=null,d):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,d)}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 C(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(E,this),this.reset(!0)}function _(e){if(e){var r=e[i];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=u(y,l,"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,u(e,l,"GeneratorFunction")),e.prototype=Object.create(w),e},e.awrap=function(e){return{__await:e}},k(P.prototype),u(P.prototype,s,(function(){return this})),e.AsyncIterator=P,e.async=function(r,t,n,o,a){void 0===a&&(a=Promise);var i=new P(f(r,t,n,o),a);return e.isGeneratorFunction(t)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},k(w),u(w,l,"Generator"),u(w,i,(function(){return this})),u(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=_,C.prototype={constructor:C,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 i.type="throw",i.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 a=this.tryEntries[o],i=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var c=t.call(a,"catchLoc"),s=t.call(a,"finallyLoc");if(c&&s){if(this.prev<a.catchLoc)return n(a.catchLoc,!0);if(this.prev<a.finallyLoc)return n(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return n(a.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return n(a.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 a=o;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=r&&r<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=e,i.arg=r,a?(this.method="next",this.next=a.finallyLoc,d):this.complete(i)},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),d},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),d}},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),d}},e}function s(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,a=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(a)?a:String(a)),o)}var a}var l=function(e,r,t,n){return new(t||(t=Promise))((function(o,a){function i(e){try{s(n.next(e))}catch(e){a(e)}}function c(e){try{s(n.throw(e))}catch(e){a(e)}}function s(e){var r;e.done?o(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(i,c)}s((n=n.apply(e,r||[])).next())}))};Object.defineProperty(r,"__esModule",{value:!0}),r.EasyWebWorker=r.createBlobWorker=void 0;var u=t(213),f=t(726),h=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]:{}).primitiveParameters,n=void 0===t?[]:t,o=Array.isArray(e)?e:[e],a="".concat(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return e.length?'self.importScripts(["'.concat(e.join('","'),'"]);'):""}(r),"self.primitiveParameters=JSON.parse(`").concat(JSON.stringify(null!=n?n:[]),"`);let ew$=").concat((0,f.getWorkerTemplate)(),";let cn$=self;").concat(o.map((function(e){return"\n(".concat(null==e?void 0:e.toString().trim(),")(ew$,cn$);")})).join(""));return(window.URL||window.webkitURL).createObjectURL(new Blob([a],{type:"application/javascript"}))};var d=function(){function e(r){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};!function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,e),this.source=r,this.workerUrl=null,this.config=null,this.maxWorkers=1,this.workers=[],this.keepAlive=!0,this.warmUpWorkers=!1,this.terminationDelay=1e3,this.primitiveParameters=[],this.messagesQueue=new Map,this.scripts=[],this.warmUp=function(){var e=t.config,r=e.warmUpWorkers,n=e.maxWorkers;r&&new Array(n).fill(null).forEach((function(){return t.getWorkerFromPool()}))},this.fillWorkerMethods=function(e){return e.onmessage=function(e){t.executeMessageCallback(e)},e.onerror=function(e){var r=t.config.onWorkerError;if(!r)throw e;r(e)},e},this.createNewWorker=function(){var e,r=t.workerUrl,n=t.config.workerOptions;n.name=0===(e=t.workers.length)?n.name:"".concat(n.name,"-").concat(e);var o=new Worker(r,n);return t.fillWorkerMethods(o)},this.getWorkerFromPool=function(){var e=t.config.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||t.source instanceof URL,o="function"==typeof t.source;if(n||o)return{isArrayOfWebWorkers:!1,workerUrl:null!==(e=t.workerUrl)&&void 0!==e?e:t.getWorkerUrl()};var a=Array.isArray(t.source);if(a&&"function"==typeof t.source[0])return{isArrayOfWebWorkers:!1,workerUrl:null!==(r=t.workerUrl)&&void 0!==r?r:t.getWorkerUrl()};var i=a&&t.source[0]instanceof Worker;return i?(t.workers=t.source.map(t.fillWorkerMethods),{isArrayOfWebWorkers:i,workerUrl:null}):{isArrayOfWebWorkers:!1,workerUrl:null}}(),r=e.workerUrl,n=e.isArrayOfWebWorkers;t.workerUrl=r,t.config.maxWorkers=n?t.workers.length:t.config.maxWorkers,t.config.keepAlive=!!n||t.config.keepAlive},this.send=function(e,r){return t.sendToWorker({payload:e},r)},this.sendToWorker=function(e,r){var n,o,a=e.payload,i=e.method,c=new u.EasyWebWorkerMessage,s=c.messageId,l=c.decoupledPromise,f=t.getWorkerFromPool();l.promise.cancel=function(e){l.promise.cancel=l._cancel;var n={messageId:s,method:i,cancelation:{reason:e}};return t.workers.length?(f.postMessage(n,r),l.promise):l.cancel(e)},t.config.keepAlive||null===(o=null===(n=l.promise)||void 0===n?void 0:n.finally)||void 0===o||o.call(n,(function(){setTimeout((function(){t.messagesQueue.size||(t.workers.forEach((function(e){return e.terminate()})),t.workers=[])}),t.config.terminationDelay)})),t.addMessageToQueue(c);var h={messageId:s,method:i,execution:{payload:a}};return f.postMessage(h,r),l.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],a=r[1],i=r[2];return new h.CancelablePromise((function(e,r,n){var s=n.onCancel;return l(t,void 0,void 0,c().mark((function r(){var t,n;return c().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return t=this.cancelAll(a,i),n=s((function(){t.cancel()})),r.next=4,t;case 4:n(),e(this.send.apply(this,[o]));case 6:case"end":return r.stop()}}),r,this)})))}))},this.overrideAfterCurrent=function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];var a=r[0],i=r[1],s=r[2];return new h.CancelablePromise((function(e,r,n){var u=n.onCancel,f=n.reportProgress;return l(t,void 0,void 0,c().mark((function r(){var t,n,l,h,d,p;return c().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(!this.messagesQueue.size){r.next=10;break}return t=o(this.messagesQueue,1),n=t[0],l=o(n,2),h=l[1],this.RemoveMessageFromQueue(h.messageId),d=this.cancelAll(i,s).onProgress(f),p=u((function(){d.cancel()})),this.addMessageToQueue(h),r.next=9,d;case 9:p();case 10:e(this.send.apply(this,[a]));case 11:case"end":return r.stop()}}),r,this)})))}))},this.workerUrl="string"==typeof r||r instanceof URL?r:null;var a=null!=n?n:{},i=a.scripts,s=void 0===i?[]:i,d=a.name,p=a.onWorkerError,v=void 0===p?null:p,y=a.maxWorkers,m=void 0===y?1:y,g=a.keepAlive,b=void 0===g?null:g,w=a.terminationDelay,k=void 0===w?1e3:w,P=a.warmUpWorkers,j=void 0===P?null:P,O=a.primitiveParameters,E=a.workerOptions,x=void 0===E?{}:E,C=!m||1===m||j,_=C||null!=b&&b;this.config={scripts:null!=s?s:[],name:d,maxWorkers:m,keepAlive:_,warmUpWorkers:C,workerOptions:Object.assign(Object.assign({},null!=x?x:{}),{name:x.name||(0,f.generatedId)()}),onWorkerError:v,terminationDelay:k,primitiveParameters:O},this.workerOptions=this.config.workerOptions,this.name=this.workerOptions.name,this.scripts=s,this.onWorkerError=v,this.maxWorkers=m,this.keepAlive=_,this.terminationDelay=k,this.warmUpWorkers=C,this.primitiveParameters=null!=O?O:[],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||this.source instanceof URL}},{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 s=o.percentage,l=o.payload;c.reportProgress(s,l)}else{this.RemoveMessageFromQueue(n.messageId);var u=e.data.worker_cancelation;if(u){var f=u.reason;c._cancel(f)}else{var h=e.data.rejected;if(h){var d=h.reason;c.reject(d)}else{var p=e.data.resolved.payload;c.resolve.apply(c,function(e){if(Array.isArray(e))return i(e)}(t=null!=p?p:[])||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||a(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(){if(this.isExternalWorkerFile)return this.source;var e=this.config,t=e.primitiveParameters,n=e.scripts;return(0,r.createBlobWorker)(this.source,n,{primitiveParameters:t})}},{key:"cancelAll",value:function(e){var r=this,t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).force,n=void 0!==t&&t;return new h.CancelablePromise((function(t,o,a){var i=a.onCancel,s=a.reportProgress;return l(r,void 0,void 0,c().mark((function r(){var o,a,l,u,f,d;return c().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(l=Array.from(null!==(a=null===(o=this.messagesQueue)||void 0===o?void 0:o.values())&&void 0!==a?a:[]),u=l.length,f=100/u,!n){r.next=5;break}return r.abrupt("return",t(this.reboot(e)));case 5:d=(0,h.groupAsCancelablePromise)(l.map((function(r){return r.decoupledPromise.promise.cancel(e).catch((function(e){return s(f,e),e}))}))),i((function(){d.cancel()})),t(d);case 8:case"end":return r.stop()}}),r,this)})))}))}},{key:"addMessageToQueue",value:function(e){this.messagesQueue.set(e.messageId,e)}},{key:"sendToMethod",value:function(e,r,t){return this.sendToWorker({method:e,payload:r},t)}},{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 l(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&&(window.URL||window.webkitURL).revokeObjectURL("string"==typeof this.workerUrl?this.workerUrl:this.workerUrl.href),this.workers.forEach((function(e){return e.terminate()})),this.workers=[];case 5:case"end":return e.stop()}}),e,this)})))}}],n&&s(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),e}();r.EasyWebWorker=d},726:(e,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.getWorkerTemplate=r.generatedId=void 0,r.generatedId=function(){return"".concat(Date.now()).concat(Math.random().toString(36).substring(2,9))},r.getWorkerTemplate=function(){return'(()=>{let e=new Map,o=new Map([["",()=>{throw"you didn\'t define a message-callback, please assign a callback by calling easyWorker.onMessage"}]]),t=({messageId:o,payload:t,method:n})=>{let a="pending",r=new Map,s=(t,s,l=[])=>{let c=a,i="progress"===t?"pending":t;if(!e.has(o)){let g="%c#"+o+" Message Not Found: %cThis means that the message was already resolved | rejected | canceled. To avoid this error, please make sure that you are not resolving | rejecting | canceling the same message twice. Also make sure that you are not reporting progress after the message was processed. Remember each message can handle his one cancelation by adding a handler with the %cmessage.onCancel%c method. To now more about this method, please check the documentation at: %chttps://www.npmjs.com/package/easy-web-worker#ieasywebworkermessageipayload--null-iresult--void %cTrying to process message:";console.error(g,"color: darkorange; font-size: 12px; font-weight: bold;","font-weight: normal;","font-weight: bold;","font-weight: normal;","color: lightblue; font-size: 10px; font-weight: bold;","font-weight: bold; color: darkorange;",{messageId:o,status:{current:c,target:i},method:n,action:s});return}let d={resolved:"onResolve",rejected:"onReject",canceled:"onCancel",worker_cancelation:"onCancel",pending:"onProgress"}[i],h=r.get(d);h?.forEach(e=>e(s,l));let w=!s.progress;w&&(r.get("onFinalize")?.forEach(e=>e(s,l)),e.delete(o)),self.postMessage({messageId:o,...s},l),a=i},l=(e,o=[])=>s("resolved",{resolved:{payload:void 0===e?[]:[e]}},o),c=(e,o=[])=>{s("rejected",{rejected:{reason:e}},o)},i=(e,o=[])=>s("worker_cancelation",{worker_cancelation:{reason:e}},o),g=(e,o,t=[])=>{s("progress",{progress:{percentage:e,payload:o}},t)},d=e=>o=>{r.has(e)||r.set(e,new Set);let t=r.get(e);return t.add(o),()=>t.delete(o)};return{messageId:o,method:n,payload:t,getStatus:()=>a,isPending:()=>"pending"===a,resolve:l,reject:c,cancel:i,reportProgress:g,onResolve:d("onResolve"),onReject:d("onReject"),onCancel:d("onCancel"),onProgress:d("onProgress"),onFinalize:d("onFinalize")}},n=(...e)=>{let[t,n]=e,a="string"==typeof t;if(a){let r=t,s=n;o.set(r,s);return}let l=t;o.set("",l)},a=()=>{let o=[...e.values()];o.forEach(e=>e.reject(Error("worker closed"))),self.close()};self.onmessage=n=>{let{data:a}=n,{messageId:r,cancelation:s}=a;if(s){let{reason:l}=s,c=e.get(r);c.cancel(l);return}let{method:i,execution:g}=n.data,{payload:d}=g,h=t({method:i,messageId:r,payload:d});e.set(r,h);let w=o.get(i||"");w(h,n)};let r=(...e)=>{self.importScripts(...e)};return{onMessage:n,close:a,importScripts:r}})()'}},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,a=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(a)?a:String(a)),o)}var a}function a(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 i=t(367),c=t(726),s=a((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,i.createDecoupledPromise)(),this.decoupledPromise._cancel=this.decoupledPromise.promise.cancel}));r.EasyWebWorkerMessage=s},973:(e,r)=>{"use strict";function t(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,n,o=(r=new Map,n=new Map([["",function(){throw"you didn't defined a message-callback, please assign a callback by calling easyWorker.onMessage"}]]),self.onmessage=function(e){var t=e.data,o=t.messageId,a=t.cancelation;if(a){var i=a.reason;r.get(o).cancel(i)}else{var c=e.data,s=c.method,l=function(e){var t=e.messageId,n=e.payload,o=e.method,a="pending",i=new Map,c=function(e,n){var c,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],l=a,u="progress"===e?"pending":e;if(r.has(t)){var f={resolved:"onResolve",rejected:"onReject",canceled:"onCancel",worker_cancelation:"onCancel",pending:"onProgress"}[u],h=i.get(f);null==h||h.forEach((function(e){return e(n,s)})),!n.progress&&(null===(c=i.get("onFinalize"))||void 0===c||c.forEach((function(e){return e(n,s)})),r.delete(t)),self.postMessage(Object.assign({messageId:t},n),s),a=u}else{var d="%c#"+t+" Message Not Found: %cThis means that the message was already resolved | rejected | canceled. To avoid this error, please make sure that you are not resolving | rejecting | canceling the same message twice. Also make sure that you are not reporting progress after the message was processed. Remember each message can handle his one cancelation by adding a handler with the %cmessage.onCancel%c method. To now more about this method, please check the documentation at: %chttps://www.npmjs.com/package/easy-web-worker#ieasywebworkermessageipayload--null-iresult--void %cTrying to process message:";console.error(d,"color: darkorange; font-size: 12px; font-weight: bold;","font-weight: normal;","font-weight: bold;","font-weight: normal;","color: lightblue; font-size: 10px; font-weight: bold;","font-weight: bold; color: darkorange;",{messageId:t,status:{current:l,target:u},method:o,action:n})}},s=function(e){return function(r){i.has(e)||i.set(e,new Set);var t=i.get(e);return t.add(r),function(){return t.delete(r)}}};return{messageId:t,method:o,payload:n,getStatus:function(){return a},isPending:function(){return"pending"===a},resolve:function(e){return c("resolved",{resolved:{payload:void 0===e?[]:[e]}},arguments.length>1&&void 0!==arguments[1]?arguments[1]:[])},reject:function(e){c("rejected",{rejected:{reason:e}},arguments.length>1&&void 0!==arguments[1]?arguments[1]:[])},cancel:function(e){return c("worker_cancelation",{worker_cancelation:{reason:e}},arguments.length>1&&void 0!==arguments[1]?arguments[1]:[])},reportProgress:function(e,r){c("progress",{progress:{percentage:e,payload:r}},arguments.length>2&&void 0!==arguments[2]?arguments[2]:[])},onResolve:s("onResolve"),onReject:s("onReject"),onCancel:s("onCancel"),onProgress:s("onProgress"),onFinalize:s("onFinalize")}}({method:s,messageId:o,payload:c.execution.payload});r.set(o,l),n.get(s||"")(l,e)}},{onMessage:function(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++)r[t]=arguments[t];var o=r[0],a=r[1];if("string"==typeof o){var i=o,c=a;n.set(i,c)}else{var s=o;n.set("",s)}},close:function(){var e;(e=r.values(),function(e){if(Array.isArray(e))return t(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 t(e,r);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?t(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.")}()).forEach((function(e){return e.reject(new Error("worker closed"))})),self.close()},importScripts:function(){var e;(e=self).importScripts.apply(e,arguments)}}),a=o.close,i=o.onMessage,c=o.importScripts;this.close=a,this.onMessage=i,this.importScripts=c,e&&i(e)},r.createStaticEasyWebWorker=function(e){return new r.StaticEasyWebWorker(e)}},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 a=t(30);Object.defineProperty(r,"default",{enumerable:!0,get:function(){return a.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,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.CancelablePromise=void 0;var o=t(716);function a(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function i(){return i="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=f(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}},i.apply(this,arguments)}function c(e){var r="function"==typeof Map?new Map:void 0;return c=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 s(e,arguments,f(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),u(n,e)},c(e)}function s(e,r,t){return s=l()?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},s.apply(null,arguments)}function l(){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 f(e){return f=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},f(e)}var h=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)}(h,e);var r,t,o,c,s=(o=h,c=l(),function(){var e,r=f(o);if(c){var t=f(this).constructor;e=Reflect.construct(r,arguments,t)}else e=r.apply(this,arguments);return function(e,r){if(r&&("object"===n(r)||"function"==typeof r))return r;if(void 0!==r)throw new TypeError("Derived constructors may only return object or undefined");return a(e)}(this,e)});function h(e){var r,t,n,o,c,l;return function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,h),(o=s.call(this,(function(e,r){c=e,l=r}))).status="pending",o.cancelCallbacks=new Set,o.ownCancelCallbacks=new Set,o.onProgressCallbacks=new Set,o.disposeCallbacks=function(){o.cancelCallbacks=new Set,o.ownCancelCallbacks=new Set,o.onProgressCallbacks=new Set},o.subscribeToOwnCancelEvent=function(e){return o.ownCancelCallbacks.add(e),function(){o.ownCancelCallbacks.delete(e)}},o.cancel=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return"pending"!==o.status||(o.status="canceled",o.ownCancelCallbacks.forEach((function(r){return r(e)})),o.cancelCallbacks.forEach((function(r){return r(e)})),o._reject(e),o.disposeCallbacks()),a(o)},o.onCancel=function(e){var r=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).signal;return o.cancelCallbacks.add(e),null==r||r.subscribe((function(){o.cancelCallbacks.delete(e)})),a(o)},o.onProgress=function(e){var r=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).signal;return o.onProgressCallbacks.add(e),null==r||r.subscribe((function(){o.onProgressCallbacks.delete(e)})),a(o)},o.reportProgress=function(e,r){return o.onProgressCallbacks.forEach((function(t){return t(e,r)})),a(o)},o.createChildPromise=function(){var e,r,t=new h((function(t,n,o){e=t,r=n}));return t.onProgressCallbacks=o.onProgressCallbacks,t.onCancel((function(e){o.cancel(e)})),{promise:t,resolve:e,reject:r}},o._resolve=c,o._reject=l,e((function(e){o.status="resolved",o.disposeCallbacks(),o._resolve(e)}),(function(e){o.status="rejected",o.disposeCallbacks(),o._reject(e)}),{cancel:function(e){return o.cancel(e)},onCancel:function(e){return o.subscribeToOwnCancelEvent(e)},onProgress:function(e){return o.onProgress(e),function(){o.onProgressCallbacks.delete(e)}},reportProgress:function(e,r){o.reportProgress(e,r)}}),o.then=function(e,t){var n=o.createChildPromise(),c=n.promise,s=n.resolve,l=n.reject;return i((r=a(o),f(h.prototype)),"then",r).call(r,e,t).then(s,l),c},o.catch=function(e){var r=o.createChildPromise(),n=r.promise,c=r.resolve,s=r.reject;return i((t=a(o),f(h.prototype)),"catch",t).call(t,e).then(c,s),n},o.finally=function(e){var r=o.createChildPromise(),t=r.promise,c=r.resolve,s=r.reject;return i((n=a(o),f(h.prototype)),"finally",n).call(n,e).then(c,s),t},o}return r=h,t=[{key:"resolve",value:function(e){return new h((function(r){return r(e)}))}}],t&&function(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,(a=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(a)?a:String(a)),o)}var a}(r,t),Object.defineProperty(r,"prototype",{writable:!1}),h}(c(Promise));r.CancelablePromise=h,h.reject=function(e){return new h((function(r,t){return t(e)}))},h.canceled=function(e){return new h((function(r,t,n){return(0,n.cancel)(e)}))},h.race=function(e){return new h((function(r,t,n){var a=n.onCancel,i=n.cancel;e.forEach((function(e){var n=(0,o.toCancelablePromise)(e);a((function(){n.cancel()})),n.then(r,(function(e){"canceled"!==n.status?t(e):i(e)}))}))}))},h.all=function(e){return new h((function(r,t,n){var a=n.onCancel,i=n.cancel,c=new Map,s=e.length,l=0;e.forEach((function(e){var n=(0,o.toCancelablePromise)(e);c.set(n,null),a((function(){n.cancel()})),n.then((function(e){l++,c.set(n,e),l===s&&r(Array.from(c.values()))}),(function(e){"canceled"!==n.status?t(e):i(e)}))}))}))},h.allSettled=function(e){return new h((function(r,t,n){var a=n.onCancel,i=new Map,c=e.length,s=0;e.forEach((function(e){var t=(0,o.toCancelablePromise)(e);i.set(t,null),a((function(){t.cancel()})),t.then((function(e){i.set(t,{status:"fulfilled",value:e})}),(function(e){i.set(t,{status:"canceled"===t.status?"canceled":"rejected",reason:e})})).finally((function(){++s===c&&r(Array.from(i.values()))}))}))}))},h.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),a=t(399);function i(){i=function(){return e};var e={},r=Object.prototype,t=r.hasOwnProperty,o=Object.defineProperty||function(e,r,t){e[r]=t.value},a="function"==typeof Symbol?Symbol:{},c=a.iterator||"@@iterator",s=a.asyncIterator||"@@asyncIterator",l=a.toStringTag||"@@toStringTag";function u(e,r,t){return Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}),e[r]}try{u({},"")}catch(e){u=function(e,r,t){return e[r]=t}}function f(e,r,t,n){var a=r&&r.prototype instanceof p?r:p,i=Object.create(a.prototype),c=new C(n||[]);return o(i,"_invoke",{value:j(e,t,c)}),i}function h(e,r,t){try{return{type:"normal",arg:e.call(r,t)}}catch(e){return{type:"throw",arg:e}}}e.wrap=f;var d={};function p(){}function v(){}function y(){}var m={};u(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=p.prototype=Object.create(m);function k(e){["next","throw","return"].forEach((function(r){u(e,r,(function(e){return this._invoke(r,e)}))}))}function P(e,r){function a(o,i,c,s){var l=h(e[o],e,i);if("throw"!==l.type){var u=l.arg,f=u.value;return f&&"object"==n(f)&&t.call(f,"__await")?r.resolve(f.__await).then((function(e){a("next",e,c,s)}),(function(e){a("throw",e,c,s)})):r.resolve(f).then((function(e){u.value=e,c(u)}),(function(e){return a("throw",e,c,s)}))}s(l.arg)}var i;o(this,"_invoke",{value:function(e,t){function n(){return new r((function(r,n){a(e,t,r,n)}))}return i=i?i.then(n,n):n()}})}function j(e,r,t){var n="suspendedStart";return function(o,a){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw a;return{value:void 0,done:!0}}for(t.method=o,t.arg=a;;){var i=t.delegate;if(i){var c=O(i,t);if(c){if(c===d)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 s=h(e,r,t);if("normal"===s.type){if(n=t.done?"completed":"suspendedYield",s.arg===d)continue;return{value:s.arg,done:t.done}}"throw"===s.type&&(n="completed",t.method="throw",t.arg=s.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")),d;var o=h(n,e.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,d;var a=o.arg;return a?a.done?(r[e.resultName]=a.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=void 0),r.delegate=null,d):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,d)}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 C(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=u(y,l,"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,u(e,l,"GeneratorFunction")),e.prototype=Object.create(w),e},e.awrap=function(e){return{__await:e}},k(P.prototype),u(P.prototype,s,(function(){return this})),e.AsyncIterator=P,e.async=function(r,t,n,o,a){void 0===a&&(a=Promise);var i=new P(f(r,t,n,o),a);return e.isGeneratorFunction(t)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},k(w),u(w,l,"Generator"),u(w,c,(function(){return this})),u(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=_,C.prototype={constructor:C,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 i.type="throw",i.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 a=this.tryEntries[o],i=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var c=t.call(a,"catchLoc"),s=t.call(a,"finallyLoc");if(c&&s){if(this.prev<a.catchLoc)return n(a.catchLoc,!0);if(this.prev<a.finallyLoc)return n(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return n(a.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return n(a.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 a=o;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=r&&r<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=e,i.arg=r,a?(this.method="next",this.next=a.finallyLoc,d):this.complete(i)},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),d},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),d}},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),d}},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 a.CancelablePromise((function(n,o,a){e=n,r=o,t=a}));return Object.assign(Object.assign({resolve:e,reject:r},t),{promise:n})};var s=function e(r){if(r instanceof a.CancelablePromise)return r;if("function"==typeof r)return e(r());if(!u(r))return new a.CancelablePromise((function(e){return e(r)}));var t,n,o=new a.CancelablePromise((function(e,o,a){t=e,n=o,r.then(t,n)}));return o.onCancel((function(e){n(e)})),o};r.toCancelablePromise=s;var l=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,i=r.executeInOrder,l=void 0!==i&&i,u=r.beforeEachCallback,f=void 0===u?null:u,h=r.afterEachCallback,d=void 0===h?null:h,p=r.onQueueEmptyCallback,v=void 0===p?null:p,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 a.CancelablePromise((function(r,t,n){(function r(){if(y.length){var t=y.splice(0,o).map((function(r){var t="function"==typeof r?r():r;null==f||f();var o=s(t),a=n.onCancel((function(){o.cancel()}));return o.then((function(r){var t,o;a(),m.push(r),null==d||d(r),n.reportProgress((null!==(t=m.length)&&void 0!==t?t:1)/(null!==(o=e.length)&&void 0!==o?o:1)*100)})),l?o.then((function(e){return e})):o}));return Promise.all(t).then((function(){return r()}))}})().then((function(){null==v||v(m),r(m)}))}))};r.groupAsCancelablePromise=l;var u=function(e){return Promise.resolve(e)===e};r.isPromise=u,r.allSettledCancelable=function(e){var r=[],t=e.map((function(e){var t=s(e);return r.push(t),(0,o.tryCatchPromise)((function(){return t})).then((function(e){return{error:e.error,result:e.result,promise:t}}))})),n=l(r);return new a.CancelablePromise((function(e,r,o){return a=void 0,c=i().mark((function r(){var a,c;return i().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return a=o.onCancel(n.cancel),r.next=3,Promise.all(t);case 3:c=r.sent,a(),e(c);case 6:case"end":return r.stop()}}),r)})),new(a||(a=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 a?o:new a((function(e){e(o)}))).then(t,n)}o((c=c.apply(void 0,[])).next())}));var a,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,a=void 0===o?"error":o;try{return{error:null,result:e()}}catch(e){return"ignore"!==a&&console[a](e),{error:e,result:n}}},r.tryCatchPromise=function(e,r){var t=r||{},o=t.defaultResult,a=void 0===o?null:o,i=t.exceptionHandlingType,c=void 0===i?"error":i,s=t.ignoreCancel,l=void 0===s||s,u=null,f=null,h=function(e){f=e,"ignore"!=c&&("canceled"===(null==u?void 0:u.status)&&l||console[c](f))};try{if(e instanceof n.CancelablePromise)return(u=e).then((function(e){return{error:null,result:e,promise:u}})).catch((function(e){return h(e),{error:e,result:a,promise:u}}));var d=e();if(void 0===d)return Promise.reject(Error("tryCatchPromise: callback parameter must return a value () => promise"));var p=d instanceof n.CancelablePromise;return(u=p?d:(0,n.toCancelablePromise)(d)).then((function(e){return{error:null,result:e,promise:u}})).catch((function(e){return h(e),{error:e,result:a,promise:u}}))}catch(e){return h(e),Promise.resolve({error:f,result:a,promise:u})}}},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 a=r[n]={exports:{}};return e[n](a,a.exports,t),a.exports}(991)})(),e.exports=r()}},r={},function t(n){var o=r[n];if(void 0!==o)return o.exports;var a=r[n]={exports:{}};return e[n].call(a.exports,a,a.exports,t),a.exports}(991);var e,r}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "easy-web-worker",
3
- "version": "6.1.1",
3
+ "version": "6.2.0",
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",
@@ -47,7 +47,7 @@
47
47
  "@types/jest": "^29.2.4",
48
48
  "@types/node": "^20.11.0",
49
49
  "babel-loader": "^9.1.2",
50
- "cancelable-promise-jq": "^2.0.4",
50
+ "cancelable-promise-jq": "^2.5.0",
51
51
  "jest": "^29.3.1",
52
52
  "jsdom": "^16.4.0",
53
53
  "ts-jest": "^29.1.1",
@@ -58,7 +58,7 @@
58
58
  "webpack-cli": "^5.0.1"
59
59
  },
60
60
  "peerDependencies": {
61
- "cancelable-promise-jq": "^2.0.4"
61
+ "cancelable-promise-jq": "^2.5.0"
62
62
  },
63
63
  "peerDependenciesMeta": {
64
64
  "cancelable-promise-jq": {