easy-web-worker 7.0.6 → 8.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/EasyWebWorker.cjs +1 -0
- package/EasyWebWorker.d.ts +2 -2
- package/EasyWebWorker.js +1 -1
- package/EasyWebWorker.mjs +1 -0
- package/EasyWebWorkerMessage.cjs +1 -0
- package/EasyWebWorkerMessage.d.ts +2 -2
- package/EasyWebWorkerMessage.js +1 -1
- package/EasyWebWorkerMessage.mjs +1 -0
- package/README.md +670 -734
- package/StaticEasyWebWorker.cjs +1 -0
- package/StaticEasyWebWorker.d.ts +1 -1
- package/StaticEasyWebWorker.js +1 -1
- package/StaticEasyWebWorker.mjs +1 -0
- package/buildWorker.cjs +1 -0
- package/buildWorker.d.ts +7 -0
- package/buildWorker.js +1 -0
- package/buildWorker.mjs +1 -0
- package/bundle.cjs +1 -0
- package/bundle.js +1 -1
- package/bundle.mjs +1 -0
- package/createBlobWorker.cjs +2 -0
- package/createBlobWorker.d.ts +1 -0
- package/createBlobWorker.js +2 -1
- package/createBlobWorker.mjs +2 -0
- package/createEasyWebWorker.cjs +1 -0
- package/createEasyWebWorker.js +1 -1
- package/createEasyWebWorker.mjs +1 -0
- package/createStaticEasyWebWorker.cjs +1 -0
- package/createStaticEasyWebWorker.js +1 -1
- package/createStaticEasyWebWorker.mjs +1 -0
- package/createWorker.cjs +4 -0
- package/createWorker.d.ts +53 -0
- package/createWorker.js +4 -0
- package/createWorker.mjs +4 -0
- package/defineWorker.cjs +1 -0
- package/defineWorker.d.ts +31 -0
- package/defineWorker.js +1 -0
- package/defineWorker.mjs +1 -0
- package/getDefineWorkerTemplate.cjs +1 -0
- package/getDefineWorkerTemplate.d.ts +7 -0
- package/getDefineWorkerTemplate.js +1 -0
- package/getDefineWorkerTemplate.mjs +1 -0
- package/getWorkerTemplate.cjs +1 -0
- package/getWorkerTemplate.d.ts +3 -7
- package/getWorkerTemplate.js +1 -1
- package/getWorkerTemplate.mjs +1 -0
- package/index.d.ts +3 -0
- package/package.json +61 -68
- package/types.cjs +1 -0
- package/types.d.ts +132 -1
- package/types.js +1 -1
- package/types.mjs +0 -0
- package/uniqueId.cjs +1 -0
- package/uniqueId.js +1 -1
- package/uniqueId.mjs +1 -0
- package/unwrap.cjs +1 -0
- package/unwrap.d.ts +16 -0
- package/unwrap.js +1 -0
- package/unwrap.mjs +1 -0
- package/webpack.config.js +0 -86
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var d=Object.defineProperty,C=Object.defineProperties,M=Object.getOwnPropertyDescriptor,O=Object.getOwnPropertyDescriptors,E=Object.getOwnPropertyNames,T=Object.getOwnPropertySymbols;var P=Object.prototype.hasOwnProperty,x=Object.prototype.propertyIsEnumerable;var y=(l,e,r)=>e in l?d(l,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):l[e]=r,f=(l,e)=>{for(var r in e||(e={}))P.call(e,r)&&y(l,r,e[r]);if(T)for(var r of T(e))x.call(e,r)&&y(l,r,e[r]);return l},g=(l,e)=>C(l,O(e));var I=(l,e)=>{for(var r in e)d(l,r,{get:e[r],enumerable:!0})},Q=(l,e,r,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of E(e))!P.call(l,o)&&o!==r&&d(l,o,{get:()=>e[o],enumerable:!(s=M(e,o))||s.enumerable});return l};var F=l=>Q(d({},"__esModule",{value:!0}),l);var B={};I(B,{EasyWebWorker:()=>w,default:()=>D});module.exports=F(B);var p=require("easy-cancelable-promise/CancelablePromise"),b=require("easy-cancelable-promise/groupAsCancelablePromise"),v=require("./EasyWebWorkerMessage.cjs"),U=require("./uniqueId.cjs"),R=require("./createBlobWorker.cjs");var w=class{constructor(e,r={}){this.source=e;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=()=>{let{warmUpWorkers:e,maxWorkers:r}=this.config;e&&new Array(r).fill(null).forEach(()=>this.getWorkerFromPool())};this.fillWorkerMethods=e=>(e.onmessage=r=>{this.executeMessageCallback(r)},e.onerror=r=>{let{onWorkerError:s}=this.config;if(!s)throw r;s(r)},e);this.createNewWorker=()=>{let{workerUrl:e}=this,{workerOptions:r}=this.config,s=(()=>{let{length:a}=this.workers;return a===0?r.name:`${r.name}-${a}`})(),o=new Worker(e,g(f({},r),{name:s}));return this.fillWorkerMethods(o)};this.getWorkerFromPool=()=>{let{maxWorkers:e,warmUpWorkers:r}=this.config,{messagesQueue:s}=this,o=s.size;if(!this.workers.length||this.workers.length<e&&(o||r)){let t=this.createNewWorker();return this.workers.push(t),t}let a=this.workers.shift();return this.workers.push(a),a};this.computeWorkerBaseSource=()=>{let{workerUrl:e,isArrayOfWebWorkers:r}=(()=>{var u,n;if(this.source instanceof Worker)return this.workers=[this.fillWorkerMethods(this.source)],{isArrayOfWebWorkers:!1,workerUrl:null};let o=typeof this.source=="string"||this.source instanceof URL,a=typeof this.source=="function";if(o||a)return{isArrayOfWebWorkers:!1,workerUrl:(u=this.workerUrl)!=null?u:this.getWorkerUrl()};let t=Array.isArray(this.source);if(t&&typeof this.source[0]=="function")return{isArrayOfWebWorkers:!1,workerUrl:(n=this.workerUrl)!=null?n:this.getWorkerUrl()};let i=t&&this.source[0]instanceof Worker;return i?(this.workers=this.source.map(this.fillWorkerMethods),{isArrayOfWebWorkers:i,workerUrl:null}):{isArrayOfWebWorkers:!1,workerUrl:null}})();return this.workerUrl=e,this.config.maxWorkers=r?this.workers.length:this.config.maxWorkers,{isArrayOfWebWorkers:r}};this.send=(e,r)=>this.sendToWorker({payload:e},r);this.sendToWorker=({payload:e,method:r},s)=>{var n,c;let o=new v.EasyWebWorkerMessage,{messageId:a,decoupledPromise:t}=o,k=this.getWorkerFromPool(),i=!1;t.promise.cancel=m=>{if(!this.messagesQueue.has(a))return t.promise;if(!this.workers.length)return this.RemoveMessageFromQueue(a),t._cancel(m);if(i)return t.promise;i=!0;let h={messageId:a,__is_easy_web_worker_message__:!0,method:r,cancelation:{reason:m}};return k.postMessage(h),t.promise},this.config.keepAlive||(c=(n=t.promise)==null?void 0:n.finally)==null||c.call(n,()=>{setTimeout(()=>{let{messagesQueue:m}=this;m.size||(this.workers.forEach(h=>h.terminate()),this.workers=[])},this.config.terminationDelay)}).catch(()=>{}),this.addMessageToQueue(o);let u={messageId:a,__is_easy_web_worker_message__:!0,method:r,execution:{payload:e}};try{k.postMessage(u,s)}catch(m){throw this.RemoveMessageFromQueue(a),m}return t.promise};this.override=(...[e,r,s])=>new p.CancelablePromise(async(o,a,{onCancel:t})=>{let k=this.cancelAll(r,s),i=t(()=>{k.cancel()});await k,i(),o(this.send(e))});this.overrideAfterCurrent=(...[e,r,s])=>new p.CancelablePromise(async(o,a,{onCancel:t,reportProgress:k})=>{if(this.messagesQueue.size){let[i]=this.messagesQueue,[,u]=i;this.RemoveMessageFromQueue(u.messageId);let n=this.cancelAll(r,s).onProgress(k),c=t(()=>{n.cancel()});this.addMessageToQueue(u),await n,c()}o(this.send(e))});this.workerUrl=typeof e=="string"||e instanceof URL?e:null;let{scripts:s=[],name:o,onWorkerError:a=null,maxWorkers:t=1,terminationDelay:k=1e3,primitiveParameters:i,workerOptions:u={}}=r!=null?r:{},n=typeof(r==null?void 0:r.warmUpWorkers)=="boolean"?r.warmUpWorkers:t===1,c=typeof(r==null?void 0:r.keepAlive)=="boolean"?r.keepAlive:n;this.config={scripts:s!=null?s:[],name:o,maxWorkers:t,keepAlive:c,warmUpWorkers:n,workerOptions:g(f({},u!=null?u:{}),{name:u.name||(0,U.uniqueId)("wk:")}),onWorkerError:a,terminationDelay:k,primitiveParameters:i},this.workerOptions=this.config.workerOptions,this.name=this.workerOptions.name,this.scripts=s,this.onWorkerError=a,this.maxWorkers=t,this.terminationDelay=k,this.warmUpWorkers=n,this.primitiveParameters=i!=null?i:[];let{isArrayOfWebWorkers:m}=this.computeWorkerBaseSource();c=m?!0:c,this.keepAlive=c,this.config.keepAlive=c,this.warmUp()}get worker(){return this.workers.length>1?null:this.workers[0]}get isExternalWorkerFile(){return typeof this.source=="string"||this.source instanceof URL}RemoveMessageFromQueue(e){this.messagesQueue.delete(e)}executeMessageCallback(e){var u;let r=(u=this.messagesQueue.get(e.data.messageId))!=null?u:null;if(!r)return;let{progress:s}=e.data;if(!this.workers.length){this.RemoveMessageFromQueue(r.messageId);return}let{decoupledPromise:o}=r;if(s){let{percentage:n,payload:c}=s;o.reportProgress(n,c);return}this.RemoveMessageFromQueue(r.messageId);let{worker_cancelation:a}=e.data;if(a){let{reason:n}=a;o._cancel(n);return}let{rejected:t}=e.data;if(t){let{reason:n}=t;o.reject(n);return}let{resolved:k}=e.data,{payload:i}=k;o.resolve(...i!=null?i:[])}getWorkerUrl(){if(this.isExternalWorkerFile)return this.source;let{primitiveParameters:e,scripts:r}=this.config;return(0,R.createBlobWorker)(this.source,r,{primitiveParameters:e})}cancelAll(e,{force:r=!1}={}){return new p.CancelablePromise(async(s,o,{onCancel:a,reportProgress:t})=>{var c,m;let k=Array.from((m=(c=this.messagesQueue)==null?void 0:c.values())!=null?m:[]),i=k.length,u=100/i;if(r)return s(this.reboot(e));if(!i)return s();let n=(0,b.groupAsCancelablePromise)(k.map(h=>{let{decoupledPromise:_}=h,{promise:A}=_;return A.cancel(e).catch(W=>(t(u,W),W))}));a(()=>{n.cancel()}),s(n.then(()=>{}))})}addMessageToQueue(e){this.messagesQueue.set(e.messageId,e)}sendToMethod(e,r,s){return this.sendToWorker({method:e,payload:r},s)}reboot(e="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(s=>s.terminate()),this.workers=[];let r=this.cancelAll(e);return this.warmUp(),r}async dispose(){await this.cancelAll(null),this.workerUrl&&(window.URL||window.webkitURL).revokeObjectURL(typeof this.workerUrl=="string"?this.workerUrl:this.workerUrl.href),this.workers.forEach(e=>e.terminate()),this.workers=[]}},D=w;0&&(module.exports={EasyWebWorker});
|
package/EasyWebWorker.d.ts
CHANGED
|
@@ -114,7 +114,7 @@ export declare class EasyWebWorker<TPayload = null, TResult = void, TPrimitivePa
|
|
|
114
114
|
*/
|
|
115
115
|
cancelAll(reason?: unknown, { force }?: {
|
|
116
116
|
force?: boolean;
|
|
117
|
-
}): CancelablePromise<
|
|
117
|
+
}): CancelablePromise<void>;
|
|
118
118
|
protected addMessageToQueue(message: EasyWebWorkerMessage<unknown, unknown>): void;
|
|
119
119
|
/**
|
|
120
120
|
* Send a message to the worker queue to an specific method
|
|
@@ -150,7 +150,7 @@ export declare class EasyWebWorker<TPayload = null, TResult = void, TPrimitivePa
|
|
|
150
150
|
* This method will reboot the worker and cancel all the messages in the queue
|
|
151
151
|
* @param {unknown} reason - reason why the worker will be restarted
|
|
152
152
|
*/
|
|
153
|
-
reboot(reason?: unknown): CancelablePromise<
|
|
153
|
+
reboot(reason?: unknown): CancelablePromise<void>;
|
|
154
154
|
/**
|
|
155
155
|
* This method will remove the WebWorker and the BlobUrl
|
|
156
156
|
*/
|
package/EasyWebWorker.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r(require("easy-cancelable-promise/CancelablePromise")):"function"==typeof define&&define.amd?define(["easy-cancelable-promise/CancelablePromise"],r):"object"==typeof exports?exports["easy-web-worker"]=r(require("easy-cancelable-promise/CancelablePromise")):e["easy-web-worker"]=r(e["easy-cancelable-promise/CancelablePromise"])}(this,(e=>(()=>{var r={655:(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 n=r[t];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,a(n.key),n)}}function i(e,r,t){return r&&o(e.prototype,r),t&&o(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function a(e){var r=function(e,r){if("object"!=n(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,r||"default");if("object"!=n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(e)}(e,"string");return"symbol"==n(r)?r:r+""}Object.defineProperty(r,"__esModule",{value:!0}),r.EasyWebWorkerMessage=void 0;var c=t(816),l=t(416),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,l.uniqueId)("ms:"),this.decoupledPromise=(0,c.createDecoupledPromise)(),this.decoupledPromise._cancel=this.decoupledPromise.promise.cancel}));r.EasyWebWorkerMessage=s,r.default=s},111:(e,r,t)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.createBlobWorker=void 0;var n=t(216);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,o=void 0===t?[]:t,i=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!=o?o:[]),"`);let ew$=").concat((0,n.getWorkerTemplate)(),";let cn$=self;").concat(i.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"}))},r.default=r.createBlobWorker},216:(e,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.getWorkerTemplate=void 0;r.getWorkerTemplate=function(){return'(()=>{let e=new Map,o=new Map([["",()=>{throw"you didn\'t defined a message-callback, please assign a callback by calling easyWorker.onMessage"},],]),t=({messageId:o,payload:t,method:a})=>{let s="pending",n=new Map,r=(t,r,l=[])=>{var i;let c=s,d="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:d},method:a,action:r});return}let h={resolved:"onResolve",rejected:"onReject",canceled:"onCancel",worker_cancelation:"onCancel",pending:"onProgress"}[d],w=n.get(h),m=!r.progress;try{null==w||w.forEach(e=>e(r,l)),m&&(null===(i=n.get("onFinalize"))||void 0===i||i.forEach(e=>e(r,l)))}catch(u){throw e.delete(o),{message:"Error while processing message id: "+o,error:u,messageData:r,messageType:t,when:h}}finally{m&&e.delete(o)}self.postMessage(Object.assign({messageId:o},r),l),s=d},l=(e,o=[])=>r("resolved",{resolved:{payload:void 0===e?[]:[e]}},o),i=(e,o=[])=>{r("rejected",{rejected:{reason:e}},o)},c=(e,o=[])=>r("worker_cancelation",{worker_cancelation:{reason:e}},o),d=(e,o,t=[])=>{r("progress",{progress:{percentage:e,payload:o}},t)},g=e=>o=>{n.has(e)||n.set(e,new Set);let t=n.get(e);return t.add(o),()=>t.delete(o)};return{messageId:o,method:a,payload:t,getStatus:()=>s,isPending:()=>"pending"===s,resolve:l,reject:i,cancel:c,reportProgress:d,onResolve:g("onResolve"),onReject:g("onReject"),onCancel:g("onCancel"),onProgress:g("onProgress"),onFinalize:g("onFinalize")}},a=(...e)=>{let[t,a]=e,s="string"==typeof t;if(s){let n=t,r=a;o.set(n,r);return}let l=t;o.set("",l)},s=()=>{let o=[...e.values()];o.forEach(e=>e.reject(Error("worker closed"))),self.close()};self.onmessage=a=>{var s,n,r,l;let i=null===(s=null==a?void 0:a.data)||void 0===s?void 0:s.messageId,c=null!==(r=null===(n=null==a?void 0:a.data)||void 0===n?void 0:n.__is_easy_web_worker_message__)&&void 0!==r&&r,d=i&&c;if(d)try{let{data:g}=a,{cancelation:h}=g;if(h){let{reason:w}=h,m=e.get(i);m.cancel(w);return}let{method:u,execution:p}=a.data,{payload:v}=p,f=t({method:u,messageId:i,payload:v});e.set(i,f);let y=o.get(u||"");y(f,a)}catch(k){throw e.delete(null===(l=a.data)||void 0===l?void 0:l.messageId),{message:"Error while processing message id: "+i,event:a}}};let n=(...e)=>{self.importScripts(...e)};return{onMessage:a,close:s,importScripts:n}})();'},r.default=r.getWorkerTemplate},416:(e,r)=>{"use strict";var t;Object.defineProperty(r,"__esModule",{value:!0}),r.uniqueId=void 0,r.uniqueId=(t=0,function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return t===Number.MAX_SAFE_INTEGER&&(t=0),e+Date.now().toString(36)+(t++).toString(36)}),r.default=r.uniqueId},816:function(e){var r;r=()=>(()=>{"use strict";var e={0:(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.CancelablePromise=void 0;var o,i=t(836),a=t(216),c=t(790);function l(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,(i=function(e){if("object"!==n(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var t=r.call(e,"string");if("object"!==n(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(o.key),"symbol"===n(i)?i:String(i)),o)}var i}function s(e){var r=v();return function(){var t,o=y(e);if(r){var i=y(this).constructor;t=Reflect.construct(o,arguments,i)}else t=o.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 u(e)}(this,t)}}function u(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function f(){return f="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=y(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}},f.apply(this,arguments)}function p(e){var r="function"==typeof Map?new Map:void 0;return p=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 d(e,arguments,y(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),h(n,e)},p(e)}function d(e,r,t){return d=v()?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&&h(o,t.prototype),o},d.apply(null,arguments)}function v(){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 h(e,r){return h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,r){return e.__proto__=r,e},h(e,r)}function y(e){return y=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},y(e)}var m=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&&h(e,r)}(a,e);var r,t,n=s(a);function a(e){var r,t,c,l,s,p;return function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,a),(l=n.call(this,(function(e,r){s=e,p=r})))[o]=!0,l.status="pending",l.cancelCallbacks=new Set,l.ownCancelCallbacks=new Set,l.onProgressCallbacks=new Set,l.disposeCallbacks=function(){l.cancelCallbacks=new Set,l.ownCancelCallbacks=new Set,l.onProgressCallbacks=new Set},l.subscribeToOwnCancelEvent=function(e){return l.ownCancelCallbacks.add(e),function(){l.ownCancelCallbacks.delete(e)}},l.cancel=function(e){if("pending"!==l.status)return u(l);l.status="canceled";var r=void 0===e?new Error("Promise canceled"):e;return l.ownCancelCallbacks.forEach((function(e){return e(r)})),l.cancelCallbacks.forEach((function(e){return e(r)})),l._reject(r),l.disposeCallbacks(),u(l)},l.onCancel=function(e){var r=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).signal;return l.cancelCallbacks.add(e),(0,i.isCancelableAbortSignal)(r)?r.subscribe((function(){l.cancelCallbacks.delete(e)})):null==r||r.addEventListener("abort",(function(){l.cancelCallbacks.delete(e)})),u(l)},l.onProgress=function(e){var r=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).signal;return l.onProgressCallbacks.add(e),(0,i.isCancelableAbortSignal)(r)?r.subscribe((function(){l.onProgressCallbacks.delete(e)})):null==r||r.addEventListener("abort",(function(){l.onProgressCallbacks.delete(e)})),u(l)},l.reportProgress=function(e,r){return l.onProgressCallbacks.forEach((function(t){return t(e,r)})),u(l)},l.createChildPromise=function(){var e,r,t=new a((function(t,n,o){e=t,r=n}));return t.onProgressCallbacks=l.onProgressCallbacks,t.onCancel((function(e){l.cancel(e)})),{promise:t,resolve:e,reject:r}},l._resolve=s,l._reject=p,e((function(e){l.status="resolved",l.disposeCallbacks(),l._resolve(e)}),(function(e){l.status="rejected",l.disposeCallbacks(),l._reject(e)}),{cancel:function(e){return l.cancel(e)},onCancel:function(e){return l.subscribeToOwnCancelEvent(e)},onProgress:function(e){return l.onProgress(e),function(){l.onProgressCallbacks.delete(e)}},reportProgress:function(e,r){l.reportProgress(e,r)}}),l.then=function(e,t){var n=l.createChildPromise(),o=n.promise,i=n.resolve,c=n.reject;return f((r=u(l),y(a.prototype)),"then",r).call(r,e,t).then(i,c),o},l.catch=function(e){var r=l.createChildPromise(),n=r.promise,o=r.resolve,i=r.reject;return f((t=u(l),y(a.prototype)),"catch",t).call(t,e).then(o,i),n},l.finally=function(e){var r=l.createChildPromise(),t=r.promise,n=r.resolve,o=r.reject;return f((c=u(l),y(a.prototype)),"finally",c).call(c,e).then(n,o),t},l}return r=a,t=[{key:"resolve",value:function(e){return new a((function(r){return r(e)}))}}],t&&l(r,t),Object.defineProperty(r,"prototype",{writable:!1}),a}(p(Promise));r.CancelablePromise=m,o=a.promise_identifier,m.reject=function(e){return new m((function(r,t){return t(e)}))},m.canceled=function(e){return new m((function(r,t,n){return(0,n.cancel)(e)}))},m.race=function(e){return new m((function(r,t,n){var o=n.onCancel,i=n.cancel;e.forEach((function(e){var n=b(e);o((function(e){n.cancel(e)})),n.then(r,(function(e){"canceled"!==n.status?t(e):i(e)}))}))}))},m.all=function(e){return new m((function(r,t,n){var o=n.onCancel,i=n.cancel,a=new Map,c=e.length,l=0;e.forEach((function(e){var n=b(e);a.set(n,null),o((function(e){n.cancel(e)})),n.then((function(e){l++,a.set(n,e),l===c&&r(Array.from(a.values()))}),(function(e){"canceled"!==n.status?t(e):i(e)}))}))}))},m.allSettled=function(e){return new m((function(r,t,n){var o=n.onCancel,i=new Map,a=e.length,c=0;e.forEach((function(e){var t=b(e);i.set(t,null),o((function(e){t.cancel(e)})),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(){++c===a&&r(Array.from(i.values()))}))}))}))},m.prototype.constructor=Promise;var b=function e(r){if((0,a.isCancelablePromise)(r))return r;if("function"==typeof r)return e(r());if(!(0,c.isPromise)(r))return new m((function(e){return e(r)}));var t,n,o=new m((function(e,o,i){t=e,n=o,r.then(t,n)}));return o.onCancel((function(e){n(e)})),o};r.toCancelablePromise=b},836:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.isCancelableAbortSignal=void 0,r.isCancelableAbortSignal=function(e){return Boolean(null==e?void 0:e.__is_cancelable_abort_signal)}},216:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.promise_identifier=r.isCancelablePromise=void 0;var t=Symbol("promise_identifier");r.promise_identifier=t,r.isCancelablePromise=function(e){return!!(null==e?void 0:e[t])}},790:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.isPromise=void 0,r.isPromise=function(e){return Promise.resolve(e)===e}}},r={};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}var n={};return(()=>{var e=n;Object.defineProperty(e,"__esModule",{value:!0}),e.createDecoupledPromise=void 0;var r=t(0);e.createDecoupledPromise=function(){var e,t,n,o=new r.CancelablePromise((function(r,o,i){e=r,t=o,n=i}));return Object.assign(Object.assign({resolve:e,reject:t},n),{promise:o})}})(),n})(),e.exports=r()},180:function(e){var r;r=()=>(()=>{"use strict";var e={0:(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.CancelablePromise=void 0;var o,i=t(836),a=t(216),c=t(790);function l(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,(i=function(e){if("object"!==n(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var t=r.call(e,"string");if("object"!==n(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(o.key),"symbol"===n(i)?i:String(i)),o)}var i}function s(e){var r=v();return function(){var t,o=y(e);if(r){var i=y(this).constructor;t=Reflect.construct(o,arguments,i)}else t=o.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 u(e)}(this,t)}}function u(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function f(){return f="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=y(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}},f.apply(this,arguments)}function p(e){var r="function"==typeof Map?new Map:void 0;return p=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 d(e,arguments,y(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),h(n,e)},p(e)}function d(e,r,t){return d=v()?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&&h(o,t.prototype),o},d.apply(null,arguments)}function v(){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 h(e,r){return h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,r){return e.__proto__=r,e},h(e,r)}function y(e){return y=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},y(e)}var m=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&&h(e,r)}(a,e);var r,t,n=s(a);function a(e){var r,t,c,l,s,p;return function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,a),(l=n.call(this,(function(e,r){s=e,p=r})))[o]=!0,l.status="pending",l.cancelCallbacks=new Set,l.ownCancelCallbacks=new Set,l.onProgressCallbacks=new Set,l.disposeCallbacks=function(){l.cancelCallbacks=new Set,l.ownCancelCallbacks=new Set,l.onProgressCallbacks=new Set},l.subscribeToOwnCancelEvent=function(e){return l.ownCancelCallbacks.add(e),function(){l.ownCancelCallbacks.delete(e)}},l.cancel=function(e){if("pending"!==l.status)return u(l);l.status="canceled";var r=void 0===e?new Error("Promise canceled"):e;return l.ownCancelCallbacks.forEach((function(e){return e(r)})),l.cancelCallbacks.forEach((function(e){return e(r)})),l._reject(r),l.disposeCallbacks(),u(l)},l.onCancel=function(e){var r=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).signal;return l.cancelCallbacks.add(e),(0,i.isCancelableAbortSignal)(r)?r.subscribe((function(){l.cancelCallbacks.delete(e)})):null==r||r.addEventListener("abort",(function(){l.cancelCallbacks.delete(e)})),u(l)},l.onProgress=function(e){var r=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).signal;return l.onProgressCallbacks.add(e),(0,i.isCancelableAbortSignal)(r)?r.subscribe((function(){l.onProgressCallbacks.delete(e)})):null==r||r.addEventListener("abort",(function(){l.onProgressCallbacks.delete(e)})),u(l)},l.reportProgress=function(e,r){return l.onProgressCallbacks.forEach((function(t){return t(e,r)})),u(l)},l.createChildPromise=function(){var e,r,t=new a((function(t,n,o){e=t,r=n}));return t.onProgressCallbacks=l.onProgressCallbacks,t.onCancel((function(e){l.cancel(e)})),{promise:t,resolve:e,reject:r}},l._resolve=s,l._reject=p,e((function(e){l.status="resolved",l.disposeCallbacks(),l._resolve(e)}),(function(e){l.status="rejected",l.disposeCallbacks(),l._reject(e)}),{cancel:function(e){return l.cancel(e)},onCancel:function(e){return l.subscribeToOwnCancelEvent(e)},onProgress:function(e){return l.onProgress(e),function(){l.onProgressCallbacks.delete(e)}},reportProgress:function(e,r){l.reportProgress(e,r)}}),l.then=function(e,t){var n=l.createChildPromise(),o=n.promise,i=n.resolve,c=n.reject;return f((r=u(l),y(a.prototype)),"then",r).call(r,e,t).then(i,c),o},l.catch=function(e){var r=l.createChildPromise(),n=r.promise,o=r.resolve,i=r.reject;return f((t=u(l),y(a.prototype)),"catch",t).call(t,e).then(o,i),n},l.finally=function(e){var r=l.createChildPromise(),t=r.promise,n=r.resolve,o=r.reject;return f((c=u(l),y(a.prototype)),"finally",c).call(c,e).then(n,o),t},l}return r=a,t=[{key:"resolve",value:function(e){return new a((function(r){return r(e)}))}}],t&&l(r,t),Object.defineProperty(r,"prototype",{writable:!1}),a}(p(Promise));r.CancelablePromise=m,o=a.promise_identifier,m.reject=function(e){return new m((function(r,t){return t(e)}))},m.canceled=function(e){return new m((function(r,t,n){return(0,n.cancel)(e)}))},m.race=function(e){return new m((function(r,t,n){var o=n.onCancel,i=n.cancel;e.forEach((function(e){var n=b(e);o((function(e){n.cancel(e)})),n.then(r,(function(e){"canceled"!==n.status?t(e):i(e)}))}))}))},m.all=function(e){return new m((function(r,t,n){var o=n.onCancel,i=n.cancel,a=new Map,c=e.length,l=0;e.forEach((function(e){var n=b(e);a.set(n,null),o((function(e){n.cancel(e)})),n.then((function(e){l++,a.set(n,e),l===c&&r(Array.from(a.values()))}),(function(e){"canceled"!==n.status?t(e):i(e)}))}))}))},m.allSettled=function(e){return new m((function(r,t,n){var o=n.onCancel,i=new Map,a=e.length,c=0;e.forEach((function(e){var t=b(e);i.set(t,null),o((function(e){t.cancel(e)})),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(){++c===a&&r(Array.from(i.values()))}))}))}))},m.prototype.constructor=Promise;var b=function e(r){if((0,a.isCancelablePromise)(r))return r;if("function"==typeof r)return e(r());if(!(0,c.isPromise)(r))return new m((function(e){return e(r)}));var t,n,o=new m((function(e,o,i){t=e,n=o,r.then(t,n)}));return o.onCancel((function(e){n(e)})),o};r.toCancelablePromise=b},836:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.isCancelableAbortSignal=void 0,r.isCancelableAbortSignal=function(e){return Boolean(null==e?void 0:e.__is_cancelable_abort_signal)}},216:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.promise_identifier=r.isCancelablePromise=void 0;var t=Symbol("promise_identifier");r.promise_identifier=t,r.isCancelablePromise=function(e){return!!(null==e?void 0:e[t])}},790:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.isPromise=void 0,r.isPromise=function(e){return Promise.resolve(e)===e}},710:(e,r,t)=>{Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"toCancelablePromise",{enumerable:!0,get:function(){return n.toCancelablePromise}});var n=t(0)}},r={};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}var n={};return(()=>{var e=n;Object.defineProperty(e,"__esModule",{value:!0}),e.groupAsCancelablePromise=void 0;var r=t(710),o=t(0);function i(e){return function(e){if(Array.isArray(e))return a(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 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}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function 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}e.groupAsCancelablePromise=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e.length)return null;var n=t.maxConcurrent,a=void 0===n?8:n,c=t.executeInOrder,l=void 0!==c&&c,s=t.beforeEachCallback,u=void 0===s?null:s,f=t.afterEachCallback,p=void 0===f?null:f,d=t.onQueueEmptyCallback,v=void 0===d?null:d,h=i(e),y=[];return new o.CancelablePromise((function(t,n,o){(function t(){if(h.length){var n=h.splice(0,a).map((function(t){var n="function"==typeof t?t():t;null==u||u();var i=(0,r.toCancelablePromise)(n),a=o.onCancel((function(e){i.cancel(e)}));return i.then((function(r){var t,n;a(),y.push(r),null==p||p(r),o.reportProgress((null!==(t=y.length)&&void 0!==t?t:1)/(null!==(n=e.length)&&void 0!==n?n:1)*100)})),l?i.then((function(e){return e})):i}));return Promise.all(n).then((function(){return t()}))}})().then((function(){null==v||v(y),t(y)}))}))}})(),n})(),e.exports=r()},399:r=>{"use strict";r.exports=e}},t={};function n(e){var o=t[e];if(void 0!==o)return o.exports;var i=t[e]={exports:{}};return r[e].call(i.exports,i,i.exports,n),i.exports}var o={};return(()=>{"use strict";var e=o;function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function t(e){return function(e){if(Array.isArray(e))return c(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||a(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(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=[],l=!0,s=!1;try{if(i=(t=t.call(e)).next,0===r){if(Object(t)!==t)return;l=!1}else for(;!(l=(n=i.call(t)).done)&&(c.push(n.value),c.length!==r);l=!0);}catch(e){s=!0,o=e}finally{try{if(!l&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(s)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 c(e,r);var t={}.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}}function c(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=Array(r);t<r;t++)n[t]=e[t];return n}function l(){l=function(){return t};var e,t={},n=Object.prototype,o=n.hasOwnProperty,i=Object.defineProperty||function(e,r,t){e[r]=t.value},a="function"==typeof Symbol?Symbol:{},c=a.iterator||"@@iterator",s=a.asyncIterator||"@@asyncIterator",u=a.toStringTag||"@@toStringTag";function f(e,r,t){return Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}),e[r]}try{f({},"")}catch(e){f=function(e,r,t){return e[r]=t}}function p(e,r,t,n){var o=r&&r.prototype instanceof g?r:g,a=Object.create(o.prototype),c=new M(n||[]);return i(a,"_invoke",{value:S(e,t,c)}),a}function d(e,r,t){try{return{type:"normal",arg:e.call(r,t)}}catch(e){return{type:"throw",arg:e}}}t.wrap=p;var v="suspendedStart",h="suspendedYield",y="executing",m="completed",b={};function g(){}function w(){}function k(){}var P={};f(P,c,(function(){return this}));var C=Object.getPrototypeOf,j=C&&C(C(T([])));j&&j!==n&&o.call(j,c)&&(P=j);var _=k.prototype=g.prototype=Object.create(P);function O(e){["next","throw","return"].forEach((function(r){f(e,r,(function(e){return this._invoke(r,e)}))}))}function E(e,t){function n(i,a,c,l){var s=d(e[i],e,a);if("throw"!==s.type){var u=s.arg,f=u.value;return f&&"object"==r(f)&&o.call(f,"__await")?t.resolve(f.__await).then((function(e){n("next",e,c,l)}),(function(e){n("throw",e,c,l)})):t.resolve(f).then((function(e){u.value=e,c(u)}),(function(e){return n("throw",e,c,l)}))}l(s.arg)}var a;i(this,"_invoke",{value:function(e,r){function o(){return new t((function(t,o){n(e,r,t,o)}))}return a=a?a.then(o,o):o()}})}function S(r,t,n){var o=v;return function(i,a){if(o===y)throw Error("Generator is already running");if(o===m){if("throw"===i)throw a;return{value:e,done:!0}}for(n.method=i,n.arg=a;;){var c=n.delegate;if(c){var l=x(c,n);if(l){if(l===b)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===v)throw o=m,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=y;var s=d(r,t,n);if("normal"===s.type){if(o=n.done?m:h,s.arg===b)continue;return{value:s.arg,done:n.done}}"throw"===s.type&&(o=m,n.method="throw",n.arg=s.arg)}}}function x(r,t){var n=t.method,o=r.iterator[n];if(o===e)return t.delegate=null,"throw"===n&&r.iterator.return&&(t.method="return",t.arg=e,x(r,t),"throw"===t.method)||"return"!==n&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),b;var i=d(o,r.iterator,t.arg);if("throw"===i.type)return t.method="throw",t.arg=i.arg,t.delegate=null,b;var a=i.arg;return a?a.done?(t[r.resultName]=a.value,t.next=r.nextLoc,"return"!==t.method&&(t.method="next",t.arg=e),t.delegate=null,b):a:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,b)}function W(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 A(e){var r=e.completion||{};r.type="normal",delete r.arg,e.completion=r}function M(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(W,this),this.reset(!0)}function T(t){if(t||""===t){var n=t[c];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,a=function r(){for(;++i<t.length;)if(o.call(t,i))return r.value=t[i],r.done=!1,r;return r.value=e,r.done=!0,r};return a.next=a}}throw new TypeError(r(t)+" is not iterable")}return w.prototype=k,i(_,"constructor",{value:k,configurable:!0}),i(k,"constructor",{value:w,configurable:!0}),w.displayName=f(k,u,"GeneratorFunction"),t.isGeneratorFunction=function(e){var r="function"==typeof e&&e.constructor;return!!r&&(r===w||"GeneratorFunction"===(r.displayName||r.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,k):(e.__proto__=k,f(e,u,"GeneratorFunction")),e.prototype=Object.create(_),e},t.awrap=function(e){return{__await:e}},O(E.prototype),f(E.prototype,s,(function(){return this})),t.AsyncIterator=E,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new E(p(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},O(_),f(_,u,"Generator"),f(_,c,(function(){return this})),f(_,"toString",(function(){return"[object Generator]"})),t.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}},t.values=T,M.prototype={constructor:M,reset:function(r){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(A),!r)for(var t in this)"t"===t.charAt(0)&&o.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(r){if(this.done)throw r;var t=this;function n(n,o){return c.type="throw",c.arg=r,t.next=n,o&&(t.method="next",t.arg=e),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var l=o.call(a,"catchLoc"),s=o.call(a,"finallyLoc");if(l&&s){if(this.prev<a.catchLoc)return n(a.catchLoc,!0);if(this.prev<a.finallyLoc)return n(a.finallyLoc)}else if(l){if(this.prev<a.catchLoc)return n(a.catchLoc,!0)}else{if(!s)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return n(a.finallyLoc)}}}},abrupt:function(e,r){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc<=this.prev&&o.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var i=n;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,b):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),b},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),A(t),b}},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;A(t)}return o}}throw Error("illegal catch attempt")},delegateYield:function(r,t,n){return this.delegate={iterator:T(r),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=e),b}},t}function s(e,r){for(var t=0;t<r.length;t++){var n=r[t];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,u(n.key),n)}}function u(e){var t=function(e,t){if("object"!=r(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,t||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==r(t)?t:t+""}var f=function(e,r,t,n){return new(t||(t=Promise))((function(o,i){function a(e){try{l(n.next(e))}catch(e){i(e)}}function c(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var r;e.done?o(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(a,c)}l((n=n.apply(e,r||[])).next())}))};Object.defineProperty(e,"__esModule",{value:!0}),e.EasyWebWorker=void 0;var p=n(399),d=n(180),v=n(655),h=n(416),y=n(111),m=function(){return e=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,r=e.maxWorkers,n=e.warmUpWorkers,o=t.messagesQueue.size;if(!t.workers.length||t.workers.length<r&&(o||n)){var i=t.createNewWorker();return t.workers.push(i),i}var a=t.workers.shift();return t.workers.push(a),a},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;return t.workerUrl=r,t.config.maxWorkers=n?t.workers.length:t.config.maxWorkers,{isArrayOfWebWorkers:n}},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 v.EasyWebWorkerMessage,l=c.messageId,s=c.decoupledPromise,u=t.getWorkerFromPool();s.promise.cancel=function(e){s.promise.cancel=s._cancel;var n={messageId:l,__is_easy_web_worker_message__:!0,method:a,cancelation:{reason:e}};return t.workers.length?(u.postMessage(n,r),s.promise):s.cancel(e)},t.config.keepAlive||null===(o=null===(n=s.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 f={messageId:l,__is_easy_web_worker_message__:!0,method:a,execution:{payload:i}};return u.postMessage(f,r),s.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){return f(t,[e,r,n],void 0,(function(e,r,t){var n=this,c=t.onCancel;return l().mark((function r(){var t,s;return l().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return t=n.cancelAll(i,a),s=c((function(){t.cancel()})),r.next=4,t;case 4:s(),e(n.send.apply(n,[o]));case 6:case"end":return r.stop()}}),r)}))()}))}))},this.overrideAfterCurrent=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],c=r[2];return new p.CancelablePromise((function(e,r,n){return f(t,[e,r,n],void 0,(function(e,r,t){var n=this,s=t.onCancel,u=t.reportProgress;return l().mark((function r(){var t,f,p,d,v,h;return l().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(!n.messagesQueue.size){r.next=10;break}return t=i(n.messagesQueue,1),f=t[0],p=i(f,2),d=p[1],n.RemoveMessageFromQueue(d.messageId),v=n.cancelAll(a,c).onProgress(u),h=s((function(){v.cancel()})),n.addMessageToQueue(d),r.next=9,v;case 9:h();case 10:e(n.send.apply(n,[o]));case 11:case"end":return r.stop()}}),r)}))()}))}))},this.workerUrl="string"==typeof r||r instanceof URL?r:null;var o=null!=n?n:{},a=o.scripts,c=void 0===a?[]:a,s=o.name,u=o.onWorkerError,d=void 0===u?null:u,y=o.maxWorkers,m=void 0===y?1:y,b=o.terminationDelay,g=void 0===b?1e3:b,w=o.primitiveParameters,k=o.workerOptions,P=void 0===k?{}:k,C="boolean"==typeof(null==n?void 0:n.warmUpWorkers)?n.warmUpWorkers:!(1!==m),j="boolean"==typeof(null==n?void 0:n.keepAlive)?n.keepAlive:C;this.config={scripts:null!=c?c:[],name:s,maxWorkers:m,keepAlive:j,warmUpWorkers:C,workerOptions:Object.assign(Object.assign({},null!=P?P:{}),{name:P.name||(0,h.uniqueId)("wk:")}),onWorkerError:d,terminationDelay:g,primitiveParameters:w},this.workerOptions=this.config.workerOptions,this.name=this.workerOptions.name,this.scripts=c,this.onWorkerError=d,this.maxWorkers=m,this.terminationDelay=g,this.warmUpWorkers=C,this.primitiveParameters=null!=w?w:[],j=!!this.computeWorkerBaseSource().isArrayOfWebWorkers||j,this.keepAlive=j,this.config.keepAlive=j,this.warmUp()},r=[{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,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 i=n.decoupledPromise;if(o){var a=o.percentage,c=o.payload;i.reportProgress(a,c)}else{this.RemoveMessageFromQueue(n.messageId);var l=e.data.worker_cancelation;if(l){var s=l.reason;i._cancel(s)}else{var u=e.data.rejected;if(u){var f=u.reason;i.reject(f)}else{var p=e.data.resolved.payload;i.resolve.apply(i,t(null!=p?p:[]))}}}}else this.RemoveMessageFromQueue(n.messageId)}}},{key:"getWorkerUrl",value:function(){if(this.isExternalWorkerFile)return this.source;var e=this.config,r=e.primitiveParameters,t=e.scripts;return(0,y.createBlobWorker)(this.source,t,{primitiveParameters:r})}},{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){return f(r,[t,o,i],void 0,(function(r,t,o){var i=this,a=o.onCancel,c=o.reportProgress;return l().mark((function t(){var o,s,u,f,p,v;return l().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(u=Array.from(null!==(s=null===(o=i.messagesQueue)||void 0===o?void 0:o.values())&&void 0!==s?s:[]),f=u.length,p=100/f,!n){t.next=5;break}return t.abrupt("return",r(i.reboot(e)));case 5:v=(0,d.groupAsCancelablePromise)(u.map((function(r){return r.decoupledPromise.promise.cancel(e).catch((function(e){return c(p,e),e}))}))),a((function(){v.cancel()})),r(v);case 8:case"end":return t.stop()}}),t)}))()}))}))}},{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 f(this,void 0,void 0,l().mark((function e(){return l().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)})))}}],r&&s(e.prototype,r),n&&s(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,r,n}();e.EasyWebWorker=m,e.default=m})(),o})()));
|
|
1
|
+
"use strict";var d=Object.defineProperty,C=Object.defineProperties,M=Object.getOwnPropertyDescriptor,O=Object.getOwnPropertyDescriptors,E=Object.getOwnPropertyNames,T=Object.getOwnPropertySymbols;var P=Object.prototype.hasOwnProperty,x=Object.prototype.propertyIsEnumerable;var y=(l,e,r)=>e in l?d(l,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):l[e]=r,f=(l,e)=>{for(var r in e||(e={}))P.call(e,r)&&y(l,r,e[r]);if(T)for(var r of T(e))x.call(e,r)&&y(l,r,e[r]);return l},g=(l,e)=>C(l,O(e));var I=(l,e)=>{for(var r in e)d(l,r,{get:e[r],enumerable:!0})},Q=(l,e,r,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of E(e))!P.call(l,o)&&o!==r&&d(l,o,{get:()=>e[o],enumerable:!(s=M(e,o))||s.enumerable});return l};var F=l=>Q(d({},"__esModule",{value:!0}),l);var B={};I(B,{EasyWebWorker:()=>w,default:()=>D});module.exports=F(B);var p=require("easy-cancelable-promise/CancelablePromise"),b=require("easy-cancelable-promise/groupAsCancelablePromise"),v=require("./EasyWebWorkerMessage.js"),U=require("./uniqueId.js"),R=require("./createBlobWorker.js");var w=class{constructor(e,r={}){this.source=e;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=()=>{let{warmUpWorkers:e,maxWorkers:r}=this.config;e&&new Array(r).fill(null).forEach(()=>this.getWorkerFromPool())};this.fillWorkerMethods=e=>(e.onmessage=r=>{this.executeMessageCallback(r)},e.onerror=r=>{let{onWorkerError:s}=this.config;if(!s)throw r;s(r)},e);this.createNewWorker=()=>{let{workerUrl:e}=this,{workerOptions:r}=this.config,s=(()=>{let{length:a}=this.workers;return a===0?r.name:`${r.name}-${a}`})(),o=new Worker(e,g(f({},r),{name:s}));return this.fillWorkerMethods(o)};this.getWorkerFromPool=()=>{let{maxWorkers:e,warmUpWorkers:r}=this.config,{messagesQueue:s}=this,o=s.size;if(!this.workers.length||this.workers.length<e&&(o||r)){let t=this.createNewWorker();return this.workers.push(t),t}let a=this.workers.shift();return this.workers.push(a),a};this.computeWorkerBaseSource=()=>{let{workerUrl:e,isArrayOfWebWorkers:r}=(()=>{var u,n;if(this.source instanceof Worker)return this.workers=[this.fillWorkerMethods(this.source)],{isArrayOfWebWorkers:!1,workerUrl:null};let o=typeof this.source=="string"||this.source instanceof URL,a=typeof this.source=="function";if(o||a)return{isArrayOfWebWorkers:!1,workerUrl:(u=this.workerUrl)!=null?u:this.getWorkerUrl()};let t=Array.isArray(this.source);if(t&&typeof this.source[0]=="function")return{isArrayOfWebWorkers:!1,workerUrl:(n=this.workerUrl)!=null?n:this.getWorkerUrl()};let i=t&&this.source[0]instanceof Worker;return i?(this.workers=this.source.map(this.fillWorkerMethods),{isArrayOfWebWorkers:i,workerUrl:null}):{isArrayOfWebWorkers:!1,workerUrl:null}})();return this.workerUrl=e,this.config.maxWorkers=r?this.workers.length:this.config.maxWorkers,{isArrayOfWebWorkers:r}};this.send=(e,r)=>this.sendToWorker({payload:e},r);this.sendToWorker=({payload:e,method:r},s)=>{var n,c;let o=new v.EasyWebWorkerMessage,{messageId:a,decoupledPromise:t}=o,k=this.getWorkerFromPool(),i=!1;t.promise.cancel=m=>{if(!this.messagesQueue.has(a))return t.promise;if(!this.workers.length)return this.RemoveMessageFromQueue(a),t._cancel(m);if(i)return t.promise;i=!0;let h={messageId:a,__is_easy_web_worker_message__:!0,method:r,cancelation:{reason:m}};return k.postMessage(h),t.promise},this.config.keepAlive||(c=(n=t.promise)==null?void 0:n.finally)==null||c.call(n,()=>{setTimeout(()=>{let{messagesQueue:m}=this;m.size||(this.workers.forEach(h=>h.terminate()),this.workers=[])},this.config.terminationDelay)}).catch(()=>{}),this.addMessageToQueue(o);let u={messageId:a,__is_easy_web_worker_message__:!0,method:r,execution:{payload:e}};try{k.postMessage(u,s)}catch(m){throw this.RemoveMessageFromQueue(a),m}return t.promise};this.override=(...[e,r,s])=>new p.CancelablePromise(async(o,a,{onCancel:t})=>{let k=this.cancelAll(r,s),i=t(()=>{k.cancel()});await k,i(),o(this.send(e))});this.overrideAfterCurrent=(...[e,r,s])=>new p.CancelablePromise(async(o,a,{onCancel:t,reportProgress:k})=>{if(this.messagesQueue.size){let[i]=this.messagesQueue,[,u]=i;this.RemoveMessageFromQueue(u.messageId);let n=this.cancelAll(r,s).onProgress(k),c=t(()=>{n.cancel()});this.addMessageToQueue(u),await n,c()}o(this.send(e))});this.workerUrl=typeof e=="string"||e instanceof URL?e:null;let{scripts:s=[],name:o,onWorkerError:a=null,maxWorkers:t=1,terminationDelay:k=1e3,primitiveParameters:i,workerOptions:u={}}=r!=null?r:{},n=typeof(r==null?void 0:r.warmUpWorkers)=="boolean"?r.warmUpWorkers:t===1,c=typeof(r==null?void 0:r.keepAlive)=="boolean"?r.keepAlive:n;this.config={scripts:s!=null?s:[],name:o,maxWorkers:t,keepAlive:c,warmUpWorkers:n,workerOptions:g(f({},u!=null?u:{}),{name:u.name||(0,U.uniqueId)("wk:")}),onWorkerError:a,terminationDelay:k,primitiveParameters:i},this.workerOptions=this.config.workerOptions,this.name=this.workerOptions.name,this.scripts=s,this.onWorkerError=a,this.maxWorkers=t,this.terminationDelay=k,this.warmUpWorkers=n,this.primitiveParameters=i!=null?i:[];let{isArrayOfWebWorkers:m}=this.computeWorkerBaseSource();c=m?!0:c,this.keepAlive=c,this.config.keepAlive=c,this.warmUp()}get worker(){return this.workers.length>1?null:this.workers[0]}get isExternalWorkerFile(){return typeof this.source=="string"||this.source instanceof URL}RemoveMessageFromQueue(e){this.messagesQueue.delete(e)}executeMessageCallback(e){var u;let r=(u=this.messagesQueue.get(e.data.messageId))!=null?u:null;if(!r)return;let{progress:s}=e.data;if(!this.workers.length){this.RemoveMessageFromQueue(r.messageId);return}let{decoupledPromise:o}=r;if(s){let{percentage:n,payload:c}=s;o.reportProgress(n,c);return}this.RemoveMessageFromQueue(r.messageId);let{worker_cancelation:a}=e.data;if(a){let{reason:n}=a;o._cancel(n);return}let{rejected:t}=e.data;if(t){let{reason:n}=t;o.reject(n);return}let{resolved:k}=e.data,{payload:i}=k;o.resolve(...i!=null?i:[])}getWorkerUrl(){if(this.isExternalWorkerFile)return this.source;let{primitiveParameters:e,scripts:r}=this.config;return(0,R.createBlobWorker)(this.source,r,{primitiveParameters:e})}cancelAll(e,{force:r=!1}={}){return new p.CancelablePromise(async(s,o,{onCancel:a,reportProgress:t})=>{var c,m;let k=Array.from((m=(c=this.messagesQueue)==null?void 0:c.values())!=null?m:[]),i=k.length,u=100/i;if(r)return s(this.reboot(e));if(!i)return s();let n=(0,b.groupAsCancelablePromise)(k.map(h=>{let{decoupledPromise:_}=h,{promise:A}=_;return A.cancel(e).catch(W=>(t(u,W),W))}));a(()=>{n.cancel()}),s(n.then(()=>{}))})}addMessageToQueue(e){this.messagesQueue.set(e.messageId,e)}sendToMethod(e,r,s){return this.sendToWorker({method:e,payload:r},s)}reboot(e="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(s=>s.terminate()),this.workers=[];let r=this.cancelAll(e);return this.warmUp(),r}async dispose(){await this.cancelAll(null),this.workerUrl&&(window.URL||window.webkitURL).revokeObjectURL(typeof this.workerUrl=="string"?this.workerUrl:this.workerUrl.href),this.workers.forEach(e=>e.terminate()),this.workers=[]}},D=w;0&&(module.exports={EasyWebWorker});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var b=Object.defineProperty,v=Object.defineProperties;var U=Object.getOwnPropertyDescriptors;var W=Object.getOwnPropertySymbols;var R=Object.prototype.hasOwnProperty,_=Object.prototype.propertyIsEnumerable;var T=(m,r,e)=>r in m?b(m,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):m[r]=e,d=(m,r)=>{for(var e in r||(r={}))R.call(r,e)&&T(m,e,r[e]);if(W)for(var e of W(r))_.call(r,e)&&T(m,e,r[e]);return m},p=(m,r)=>v(m,U(r));import{CancelablePromise as w}from"easy-cancelable-promise/CancelablePromise";import{groupAsCancelablePromise as A}from"easy-cancelable-promise/groupAsCancelablePromise";import{EasyWebWorkerMessage as C}from"./EasyWebWorkerMessage.mjs";import{uniqueId as M}from"./uniqueId.mjs";import{createBlobWorker as O}from"./createBlobWorker.mjs";var f=class{constructor(r,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=()=>{let{warmUpWorkers:r,maxWorkers:e}=this.config;r&&new Array(e).fill(null).forEach(()=>this.getWorkerFromPool())};this.fillWorkerMethods=r=>(r.onmessage=e=>{this.executeMessageCallback(e)},r.onerror=e=>{let{onWorkerError:s}=this.config;if(!s)throw e;s(e)},r);this.createNewWorker=()=>{let{workerUrl:r}=this,{workerOptions:e}=this.config,s=(()=>{let{length:t}=this.workers;return t===0?e.name:`${e.name}-${t}`})(),i=new Worker(r,p(d({},e),{name:s}));return this.fillWorkerMethods(i)};this.getWorkerFromPool=()=>{let{maxWorkers:r,warmUpWorkers:e}=this.config,{messagesQueue:s}=this,i=s.size;if(!this.workers.length||this.workers.length<r&&(i||e)){let o=this.createNewWorker();return this.workers.push(o),o}let t=this.workers.shift();return this.workers.push(t),t};this.computeWorkerBaseSource=()=>{let{workerUrl:r,isArrayOfWebWorkers:e}=(()=>{var l,a;if(this.source instanceof Worker)return this.workers=[this.fillWorkerMethods(this.source)],{isArrayOfWebWorkers:!1,workerUrl:null};let i=typeof this.source=="string"||this.source instanceof URL,t=typeof this.source=="function";if(i||t)return{isArrayOfWebWorkers:!1,workerUrl:(l=this.workerUrl)!=null?l:this.getWorkerUrl()};let o=Array.isArray(this.source);if(o&&typeof this.source[0]=="function")return{isArrayOfWebWorkers:!1,workerUrl:(a=this.workerUrl)!=null?a:this.getWorkerUrl()};let n=o&&this.source[0]instanceof Worker;return n?(this.workers=this.source.map(this.fillWorkerMethods),{isArrayOfWebWorkers:n,workerUrl:null}):{isArrayOfWebWorkers:!1,workerUrl:null}})();return this.workerUrl=r,this.config.maxWorkers=e?this.workers.length:this.config.maxWorkers,{isArrayOfWebWorkers:e}};this.send=(r,e)=>this.sendToWorker({payload:r},e);this.sendToWorker=({payload:r,method:e},s)=>{var a,u;let i=new C,{messageId:t,decoupledPromise:o}=i,c=this.getWorkerFromPool(),n=!1;o.promise.cancel=k=>{if(!this.messagesQueue.has(t))return o.promise;if(!this.workers.length)return this.RemoveMessageFromQueue(t),o._cancel(k);if(n)return o.promise;n=!0;let h={messageId:t,__is_easy_web_worker_message__:!0,method:e,cancelation:{reason:k}};return c.postMessage(h),o.promise},this.config.keepAlive||(u=(a=o.promise)==null?void 0:a.finally)==null||u.call(a,()=>{setTimeout(()=>{let{messagesQueue:k}=this;k.size||(this.workers.forEach(h=>h.terminate()),this.workers=[])},this.config.terminationDelay)}).catch(()=>{}),this.addMessageToQueue(i);let l={messageId:t,__is_easy_web_worker_message__:!0,method:e,execution:{payload:r}};try{c.postMessage(l,s)}catch(k){throw this.RemoveMessageFromQueue(t),k}return o.promise};this.override=(...[r,e,s])=>new w(async(i,t,{onCancel:o})=>{let c=this.cancelAll(e,s),n=o(()=>{c.cancel()});await c,n(),i(this.send(r))});this.overrideAfterCurrent=(...[r,e,s])=>new w(async(i,t,{onCancel:o,reportProgress:c})=>{if(this.messagesQueue.size){let[n]=this.messagesQueue,[,l]=n;this.RemoveMessageFromQueue(l.messageId);let a=this.cancelAll(e,s).onProgress(c),u=o(()=>{a.cancel()});this.addMessageToQueue(l),await a,u()}i(this.send(r))});this.workerUrl=typeof r=="string"||r instanceof URL?r:null;let{scripts:s=[],name:i,onWorkerError:t=null,maxWorkers:o=1,terminationDelay:c=1e3,primitiveParameters:n,workerOptions:l={}}=e!=null?e:{},a=typeof(e==null?void 0:e.warmUpWorkers)=="boolean"?e.warmUpWorkers:o===1,u=typeof(e==null?void 0:e.keepAlive)=="boolean"?e.keepAlive:a;this.config={scripts:s!=null?s:[],name:i,maxWorkers:o,keepAlive:u,warmUpWorkers:a,workerOptions:p(d({},l!=null?l:{}),{name:l.name||M("wk:")}),onWorkerError:t,terminationDelay:c,primitiveParameters:n},this.workerOptions=this.config.workerOptions,this.name=this.workerOptions.name,this.scripts=s,this.onWorkerError=t,this.maxWorkers=o,this.terminationDelay=c,this.warmUpWorkers=a,this.primitiveParameters=n!=null?n:[];let{isArrayOfWebWorkers:k}=this.computeWorkerBaseSource();u=k?!0:u,this.keepAlive=u,this.config.keepAlive=u,this.warmUp()}get worker(){return this.workers.length>1?null:this.workers[0]}get isExternalWorkerFile(){return typeof this.source=="string"||this.source instanceof URL}RemoveMessageFromQueue(r){this.messagesQueue.delete(r)}executeMessageCallback(r){var l;let e=(l=this.messagesQueue.get(r.data.messageId))!=null?l:null;if(!e)return;let{progress:s}=r.data;if(!this.workers.length){this.RemoveMessageFromQueue(e.messageId);return}let{decoupledPromise:i}=e;if(s){let{percentage:a,payload:u}=s;i.reportProgress(a,u);return}this.RemoveMessageFromQueue(e.messageId);let{worker_cancelation:t}=r.data;if(t){let{reason:a}=t;i._cancel(a);return}let{rejected:o}=r.data;if(o){let{reason:a}=o;i.reject(a);return}let{resolved:c}=r.data,{payload:n}=c;i.resolve(...n!=null?n:[])}getWorkerUrl(){if(this.isExternalWorkerFile)return this.source;let{primitiveParameters:r,scripts:e}=this.config;return O(this.source,e,{primitiveParameters:r})}cancelAll(r,{force:e=!1}={}){return new w(async(s,i,{onCancel:t,reportProgress:o})=>{var u,k;let c=Array.from((k=(u=this.messagesQueue)==null?void 0:u.values())!=null?k:[]),n=c.length,l=100/n;if(e)return s(this.reboot(r));if(!n)return s();let a=A(c.map(h=>{let{decoupledPromise:y}=h,{promise:P}=y;return P.cancel(r).catch(g=>(o(l,g),g))}));t(()=>{a.cancel()}),s(a.then(()=>{}))})}addMessageToQueue(r){this.messagesQueue.set(r.messageId,r)}sendToMethod(r,e,s){return this.sendToWorker({method:r,payload:e},s)}reboot(r="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(s=>s.terminate()),this.workers=[];let e=this.cancelAll(r);return this.warmUp(),e}async dispose(){await this.cancelAll(null),this.workerUrl&&(window.URL||window.webkitURL).revokeObjectURL(typeof this.workerUrl=="string"?this.workerUrl:this.workerUrl.href),this.workers.forEach(r=>r.terminate()),this.workers=[]}},B=f;export{f as EasyWebWorker,B as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var d=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var m=Object.prototype.hasOwnProperty;var p=(o,e)=>{for(var r in e)d(o,r,{get:e[r],enumerable:!0})},t=(o,e,r,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let l of u(e))!m.call(o,l)&&l!==r&&d(o,l,{get:()=>e[l],enumerable:!(i=c(e,l))||i.enumerable});return o};var P=o=>t(d({},"__esModule",{value:!0}),o);var b={};p(b,{EasyWebWorkerMessage:()=>s,default:()=>y});module.exports=P(b);var n=require("easy-cancelable-promise/defer"),a=require("./uniqueId.cjs"),s=class{constructor(){this.messageId=(0,a.uniqueId)("ms:"),this.decoupledPromise=(0,n.defer)(),this.decoupledPromise._cancel=this.decoupledPromise.promise.cancel.bind(this.decoupledPromise.promise)}},y=s;0&&(module.exports={EasyWebWorkerMessage});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CancelablePromise,
|
|
1
|
+
import type { CancelablePromise, DeferredPromise } from 'easy-cancelable-promise';
|
|
2
2
|
/**
|
|
3
3
|
* This class represents a message that will be send to a worker
|
|
4
4
|
*/
|
|
@@ -29,7 +29,7 @@ export declare class EasyWebWorkerMessage<TPayload = null, TResult = void> {
|
|
|
29
29
|
* Decoupled promise that will be resolved when the message is completed
|
|
30
30
|
* The decoupled promise is a promise that can be resolved, rejected or canceled from outside
|
|
31
31
|
*/
|
|
32
|
-
readonly decoupledPromise:
|
|
32
|
+
readonly decoupledPromise: DeferredPromise<TResult> & {
|
|
33
33
|
_cancel?: (reason?: unknown) => CancelablePromise<TResult>;
|
|
34
34
|
};
|
|
35
35
|
constructor();
|
package/EasyWebWorkerMessage.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,n){"object"==typeof exports&&"object"==typeof module?module.exports=n():"function"==typeof define&&define.amd?define([],n):"object"==typeof exports?exports["easy-web-worker"]=n():e["easy-web-worker"]=n()}(this,(()=>(()=>{var e={416:(e,n)=>{"use strict";var t;Object.defineProperty(n,"__esModule",{value:!0}),n.uniqueId=void 0,n.uniqueId=(t=0,function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return t===Number.MAX_SAFE_INTEGER&&(t=0),e+Date.now().toString(36)+(t++).toString(36)}),n.default=n.uniqueId},816:function(e){var n;n=()=>(()=>{"use strict";var e={0:(e,n,t)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}Object.defineProperty(n,"__esModule",{value:!0}),n.toCancelablePromise=n.CancelablePromise=void 0;var o,c=t(836),i=t(216),a=t(790);function u(e,n){for(var t=0;t<n.length;t++){var o=n[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,(c=function(e){if("object"!==r(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var t=n.call(e,"string");if("object"!==r(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(o.key),"symbol"===r(c)?c:String(c)),o)}var c}function l(e){var n=d();return function(){var t,o=y(e);if(n){var c=y(this).constructor;t=Reflect.construct(o,arguments,c)}else t=o.apply(this,arguments);return function(e,n){if(n&&("object"===r(n)||"function"==typeof n))return n;if(void 0!==n)throw new TypeError("Derived constructors may only return object or undefined");return s(e)}(this,t)}}function s(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function f(){return f="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,n,t){var r=function(e,n){for(;!Object.prototype.hasOwnProperty.call(e,n)&&null!==(e=y(e)););return e}(e,n);if(r){var o=Object.getOwnPropertyDescriptor(r,n);return o.get?o.get.call(arguments.length<3?e:t):o.value}},f.apply(this,arguments)}function p(e){var n="function"==typeof Map?new Map:void 0;return p=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!==n){if(n.has(e))return n.get(e);n.set(e,r)}function r(){return b(e,arguments,y(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),v(r,e)},p(e)}function b(e,n,t){return b=d()?Reflect.construct.bind():function(e,n,t){var r=[null];r.push.apply(r,n);var o=new(Function.bind.apply(e,r));return t&&v(o,t.prototype),o},b.apply(null,arguments)}function d(){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 v(e,n){return v=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,n){return e.__proto__=n,e},v(e,n)}function y(e){return y=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},y(e)}var m=function(e){!function(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(n&&n.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),n&&v(e,n)}(i,e);var n,t,r=l(i);function i(e){var n,t,a,u,l,p;return function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,i),(u=r.call(this,(function(e,n){l=e,p=n})))[o]=!0,u.status="pending",u.cancelCallbacks=new Set,u.ownCancelCallbacks=new Set,u.onProgressCallbacks=new Set,u.disposeCallbacks=function(){u.cancelCallbacks=new Set,u.ownCancelCallbacks=new Set,u.onProgressCallbacks=new Set},u.subscribeToOwnCancelEvent=function(e){return u.ownCancelCallbacks.add(e),function(){u.ownCancelCallbacks.delete(e)}},u.cancel=function(e){if("pending"!==u.status)return s(u);u.status="canceled";var n=void 0===e?new Error("Promise canceled"):e;return u.ownCancelCallbacks.forEach((function(e){return e(n)})),u.cancelCallbacks.forEach((function(e){return e(n)})),u._reject(n),u.disposeCallbacks(),s(u)},u.onCancel=function(e){var n=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).signal;return u.cancelCallbacks.add(e),(0,c.isCancelableAbortSignal)(n)?n.subscribe((function(){u.cancelCallbacks.delete(e)})):null==n||n.addEventListener("abort",(function(){u.cancelCallbacks.delete(e)})),s(u)},u.onProgress=function(e){var n=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).signal;return u.onProgressCallbacks.add(e),(0,c.isCancelableAbortSignal)(n)?n.subscribe((function(){u.onProgressCallbacks.delete(e)})):null==n||n.addEventListener("abort",(function(){u.onProgressCallbacks.delete(e)})),s(u)},u.reportProgress=function(e,n){return u.onProgressCallbacks.forEach((function(t){return t(e,n)})),s(u)},u.createChildPromise=function(){var e,n,t=new i((function(t,r,o){e=t,n=r}));return t.onProgressCallbacks=u.onProgressCallbacks,t.onCancel((function(e){u.cancel(e)})),{promise:t,resolve:e,reject:n}},u._resolve=l,u._reject=p,e((function(e){u.status="resolved",u.disposeCallbacks(),u._resolve(e)}),(function(e){u.status="rejected",u.disposeCallbacks(),u._reject(e)}),{cancel:function(e){return u.cancel(e)},onCancel:function(e){return u.subscribeToOwnCancelEvent(e)},onProgress:function(e){return u.onProgress(e),function(){u.onProgressCallbacks.delete(e)}},reportProgress:function(e,n){u.reportProgress(e,n)}}),u.then=function(e,t){var r=u.createChildPromise(),o=r.promise,c=r.resolve,a=r.reject;return f((n=s(u),y(i.prototype)),"then",n).call(n,e,t).then(c,a),o},u.catch=function(e){var n=u.createChildPromise(),r=n.promise,o=n.resolve,c=n.reject;return f((t=s(u),y(i.prototype)),"catch",t).call(t,e).then(o,c),r},u.finally=function(e){var n=u.createChildPromise(),t=n.promise,r=n.resolve,o=n.reject;return f((a=s(u),y(i.prototype)),"finally",a).call(a,e).then(r,o),t},u}return n=i,t=[{key:"resolve",value:function(e){return new i((function(n){return n(e)}))}}],t&&u(n,t),Object.defineProperty(n,"prototype",{writable:!1}),i}(p(Promise));n.CancelablePromise=m,o=i.promise_identifier,m.reject=function(e){return new m((function(n,t){return t(e)}))},m.canceled=function(e){return new m((function(n,t,r){return(0,r.cancel)(e)}))},m.race=function(e){return new m((function(n,t,r){var o=r.onCancel,c=r.cancel;e.forEach((function(e){var r=P(e);o((function(e){r.cancel(e)})),r.then(n,(function(e){"canceled"!==r.status?t(e):c(e)}))}))}))},m.all=function(e){return new m((function(n,t,r){var o=r.onCancel,c=r.cancel,i=new Map,a=e.length,u=0;e.forEach((function(e){var r=P(e);i.set(r,null),o((function(e){r.cancel(e)})),r.then((function(e){u++,i.set(r,e),u===a&&n(Array.from(i.values()))}),(function(e){"canceled"!==r.status?t(e):c(e)}))}))}))},m.allSettled=function(e){return new m((function(n,t,r){var o=r.onCancel,c=new Map,i=e.length,a=0;e.forEach((function(e){var t=P(e);c.set(t,null),o((function(e){t.cancel(e)})),t.then((function(e){c.set(t,{status:"fulfilled",value:e})}),(function(e){c.set(t,{status:"canceled"===t.status?"canceled":"rejected",reason:e})})).finally((function(){++a===i&&n(Array.from(c.values()))}))}))}))},m.prototype.constructor=Promise;var P=function e(n){if((0,i.isCancelablePromise)(n))return n;if("function"==typeof n)return e(n());if(!(0,a.isPromise)(n))return new m((function(e){return e(n)}));var t,r,o=new m((function(e,o,c){t=e,r=o,n.then(t,r)}));return o.onCancel((function(e){r(e)})),o};n.toCancelablePromise=P},836:(e,n)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.isCancelableAbortSignal=void 0,n.isCancelableAbortSignal=function(e){return Boolean(null==e?void 0:e.__is_cancelable_abort_signal)}},216:(e,n)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.promise_identifier=n.isCancelablePromise=void 0;var t=Symbol("promise_identifier");n.promise_identifier=t,n.isCancelablePromise=function(e){return!!(null==e?void 0:e[t])}},790:(e,n)=>{Object.defineProperty(n,"__esModule",{value:!0}),n.isPromise=void 0,n.isPromise=function(e){return Promise.resolve(e)===e}}},n={};function t(r){var o=n[r];if(void 0!==o)return o.exports;var c=n[r]={exports:{}};return e[r](c,c.exports,t),c.exports}var r={};return(()=>{var e=r;Object.defineProperty(e,"__esModule",{value:!0}),e.createDecoupledPromise=void 0;var n=t(0);e.createDecoupledPromise=function(){var e,t,r,o=new n.CancelablePromise((function(n,o,c){e=n,t=o,r=c}));return Object.assign(Object.assign({resolve:e,reject:t},r),{promise:o})}})(),r})(),e.exports=n()}},n={};function t(r){var o=n[r];if(void 0!==o)return o.exports;var c=n[r]={exports:{}};return e[r].call(c.exports,c,c.exports,t),c.exports}var r={};return(()=>{"use strict";var e=r;function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function o(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,i(r.key),r)}}function c(e,n,t){return n&&o(e.prototype,n),t&&o(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function i(e){var t=function(e,t){if("object"!=n(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,t||"default");if("object"!=n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==n(t)?t:t+""}Object.defineProperty(e,"__esModule",{value:!0}),e.EasyWebWorkerMessage=void 0;var a=t(816),u=t(416),l=c((function e(){!function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),this.messageId=(0,u.uniqueId)("ms:"),this.decoupledPromise=(0,a.createDecoupledPromise)(),this.decoupledPromise._cancel=this.decoupledPromise.promise.cancel}));e.EasyWebWorkerMessage=l,e.default=l})(),r})()));
|
|
1
|
+
"use strict";var d=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var m=Object.prototype.hasOwnProperty;var p=(o,e)=>{for(var r in e)d(o,r,{get:e[r],enumerable:!0})},t=(o,e,r,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let l of u(e))!m.call(o,l)&&l!==r&&d(o,l,{get:()=>e[l],enumerable:!(i=c(e,l))||i.enumerable});return o};var P=o=>t(d({},"__esModule",{value:!0}),o);var b={};p(b,{EasyWebWorkerMessage:()=>s,default:()=>y});module.exports=P(b);var n=require("easy-cancelable-promise/defer"),a=require("./uniqueId.js"),s=class{constructor(){this.messageId=(0,a.uniqueId)("ms:"),this.decoupledPromise=(0,n.defer)(),this.decoupledPromise._cancel=this.decoupledPromise.promise.cancel.bind(this.decoupledPromise.promise)}},y=s;0&&(module.exports={EasyWebWorkerMessage});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{defer as o}from"easy-cancelable-promise/defer";import{uniqueId as l}from"./uniqueId.mjs";var e=class{constructor(){this.messageId=l("ms:"),this.decoupledPromise=o(),this.decoupledPromise._cancel=this.decoupledPromise.promise.cancel.bind(this.decoupledPromise.promise)}},i=e;export{e as EasyWebWorkerMessage,i as default};
|