easy-web-worker 1.0.11 → 1.1.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.
@@ -70,7 +70,7 @@ easyWorker: IEasyWorkerInstance<IPayload, IResult>,
70
70
  * This is the context of the worker, you can use it to access to the global scope of the worker
71
71
  * */
72
72
  context: any) => void;
73
- export interface IEasyWebWorkerMessage<IPayload = null, IResult = void> {
73
+ export interface IEasyWebWorkerMessage<TPayload = null, TResult = void> {
74
74
  /**
75
75
  * This is the message id
76
76
  */
@@ -78,7 +78,7 @@ export interface IEasyWebWorkerMessage<IPayload = null, IResult = void> {
78
78
  /**
79
79
  * This are the parameters included in the message
80
80
  * */
81
- payload: IPayload;
81
+ payload: TPayload;
82
82
  /**
83
83
  * This method is used to reject the message from inside the worker
84
84
  * */
@@ -90,12 +90,14 @@ export interface IEasyWebWorkerMessage<IPayload = null, IResult = void> {
90
90
  /**
91
91
  * This method is used to resolve the message from inside the worker
92
92
  * */
93
- resolve: IPayload extends null ? () => CancelablePromise<IResult> : (payload: IPayload) => CancelablePromise<IResult>;
93
+ resolve: TResult extends void ? () => void : (payload: TResult) => void;
94
94
  /**
95
95
  * This method is used to cancel the message from inside the worker
96
96
  * */
97
97
  cancel: (reason?: unknown) => void;
98
98
  }
99
+ export declare const createBlobFromString: (source: string, imports?: string[]) => string;
100
+ export declare const createBlobWorker: <IPayload = null, IResult = void>(source: EasyWebWorkerBody<IPayload, IResult> | EasyWebWorkerBody<IPayload, IResult>[], imports?: string[]) => string;
99
101
  /**
100
102
  * This is a class to create global-store objects
101
103
  * @template IPayload - Indicates if your WORKERS messages requires a parameter to be provided, NULL indicates they doesn't
@@ -25,7 +25,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
25
25
  return to.concat(ar || Array.prototype.slice.call(from));
26
26
  };
27
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
- exports.EasyWebWorker = void 0;
28
+ exports.EasyWebWorker = exports.createBlobWorker = exports.createBlobFromString = void 0;
29
29
  var EasyWebWorkerMessage_1 = require("./EasyWebWorkerMessage");
30
30
  var EasyWebWorkerFixtures_1 = require("./EasyWebWorkerFixtures");
31
31
  var getImportScriptsTemplate = function (scripts) {
@@ -34,14 +34,15 @@ var getImportScriptsTemplate = function (scripts) {
34
34
  return '';
35
35
  return "self.importScripts([\"".concat(scripts.join('","'), "\"]);");
36
36
  };
37
- var blob = function (source, imports) {
37
+ var createBlobFromString = function (source, imports) {
38
38
  if (imports === void 0) { imports = []; }
39
39
  var content = "".concat(getImportScriptsTemplate(imports), "\n ").concat(source);
40
40
  return (window.URL || window.webkitURL).createObjectURL(new Blob([content], {
41
41
  type: 'application/javascript',
42
42
  }));
43
43
  };
44
- var blobWorker = function (source, imports) {
44
+ exports.createBlobFromString = createBlobFromString;
45
+ var createBlobWorker = function (source, imports) {
45
46
  if (imports === void 0) { imports = []; }
46
47
  var template = (0, EasyWebWorkerFixtures_1.WorkerTemplate)();
47
48
  var contentCollection = Array.isArray(source) ? source : [source];
@@ -53,6 +54,7 @@ var blobWorker = function (source, imports) {
53
54
  .join('\n\n')),
54
55
  ], { type: 'application/javascript' }));
55
56
  };
57
+ exports.createBlobWorker = createBlobWorker;
56
58
  /**
57
59
  * This is a class to create global-store objects
58
60
  * @template IPayload - Indicates if your WORKERS messages requires a parameter to be provided, NULL indicates they doesn't
@@ -203,7 +205,7 @@ var EasyWebWorker = /** @class */ (function () {
203
205
  if (this.isExternalWorkerFile) {
204
206
  return this.workerBody;
205
207
  }
206
- return blobWorker(this.workerBody, this.scripts);
208
+ return (0, exports.createBlobWorker)(this.workerBody, this.scripts);
207
209
  };
208
210
  EasyWebWorker.prototype.createWorker = function () {
209
211
  var _this = this;
@@ -1,22 +1,21 @@
1
- import { CancelablePromise } from 'cancelable-promise-jq';
2
1
  import { IEasyWebWorkerMessage, IEasyWorkerInstance, IMessageData } from './EasyWebWorker';
3
2
  /**
4
3
  * This message wrap the interaction with the worker to ensure that the message is correctly synchronized with the EasyWebWorker
5
4
  */
6
- export declare class WorkerMessage<IPayload = null, IResult = void> implements IEasyWebWorkerMessage<IPayload, IResult> {
7
- payload: IPayload;
5
+ export declare class WorkerMessage<TPayload = null, TResult = void> implements IEasyWebWorkerMessage<TPayload, TResult> {
6
+ payload: TPayload;
8
7
  messageId: string;
9
8
  protected messageTargetOrigin: string;
10
9
  /**
11
- * @param {IPayload} payload - This are the parameters included in the message
10
+ * @param {TPayload} payload - This are the parameters included in the message
12
11
  * @param {string} messageId - This is the message id
13
12
  * @param {string} messageTargetOrigin - This is the target origin of the message
14
13
  */
15
- constructor(payload: IPayload, messageId: string, messageTargetOrigin?: string);
14
+ constructor(payload: TPayload, messageId: string, messageTargetOrigin?: string);
16
15
  /**
17
16
  * This method is used to resolve the message from inside the worker
18
17
  */
19
- resolve: IPayload extends null ? (reason?: unknown) => CancelablePromise<IResult> : (payload: IPayload, reason?: unknown) => CancelablePromise<IResult>;
18
+ resolve: TResult extends void ? () => void : (payload: TResult) => void;
20
19
  /**
21
20
  * This method is used to reject the message from inside the worker
22
21
  * */
@@ -42,9 +41,9 @@ export declare class WorkerMessage<IPayload = null, IResult = void> implements I
42
41
  * @param {MessageEvent} onMessageCallback.event - This is the event that was received
43
42
  * @param {string} messageTargetOrigin - This is the target origin of the message
44
43
  */
45
- export declare class StaticEasyWebWorker<IPayload = null, IResult = void> implements IEasyWorkerInstance<IPayload, IResult> {
46
- onMessageCallback: (message: IEasyWebWorkerMessage<IPayload, IResult>, event: MessageEvent<IMessageData<IPayload>>) => void;
47
- constructor(onMessageCallback: (message: IEasyWebWorkerMessage<IPayload, IResult>, event: MessageEvent<IMessageData<IPayload>>) => void, messageTargetOrigin?: string);
44
+ export declare class StaticEasyWebWorker<TPayload = null, TResult = void> implements IEasyWorkerInstance<TPayload, TResult> {
45
+ onMessageCallback: (message: IEasyWebWorkerMessage<TPayload, TResult>, event: MessageEvent<IMessageData<TPayload>>) => void;
46
+ constructor(onMessageCallback: (message: IEasyWebWorkerMessage<TPayload, TResult>, event: MessageEvent<IMessageData<TPayload>>) => void, messageTargetOrigin?: string);
48
47
  /**
49
48
  * This method is used to define the onMessage callback
50
49
  * @param {string} messageTargetOrigin - This is the target origin of the message
@@ -61,5 +60,5 @@ export declare class StaticEasyWebWorker<IPayload = null, IResult = void> implem
61
60
  * @param {IEasyWebWorkerMessage} callback.message.resolve - This method is used to resolve the message from inside the worker
62
61
  * @param {MessageEvent} callback.event - This is the event that was received
63
62
  */
64
- onMessage(callback: (message: IEasyWebWorkerMessage<IPayload, IResult>, event: MessageEvent<IMessageData<IPayload>>) => void): void;
63
+ onMessage(callback: (message: IEasyWebWorkerMessage<TPayload, TResult>, event: MessageEvent<IMessageData<TPayload>>) => void): void;
65
64
  }
@@ -6,7 +6,7 @@ exports.StaticEasyWebWorker = exports.WorkerMessage = void 0;
6
6
  */
7
7
  var WorkerMessage = /** @class */ (function () {
8
8
  /**
9
- * @param {IPayload} payload - This are the parameters included in the message
9
+ * @param {TPayload} payload - This are the parameters included in the message
10
10
  * @param {string} messageId - This is the message id
11
11
  * @param {string} messageTargetOrigin - This is the target origin of the message
12
12
  */
package/lib/bundle.js ADDED
@@ -0,0 +1 @@
1
+ !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={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,s=[],c=!0,l=!1;try{if(a=(t=t.call(e)).next,0===r){if(Object(t)!==t)return;c=!1}else for(;!(c=(n=a.call(t)).done)&&(s.push(n.value),s.length!==r);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&&null!=t.return&&(i=t.return(),Object(i)!==i))return}finally{if(l)throw o}}return s}}(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 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}Object.defineProperty(r,"__esModule",{value:!0}),r.EasyWebWorker=r.createBlobWorker=r.createBlobFromString=void 0;var c=t(213),l=t(726),u=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return e.length?'self.importScripts(["'.concat(e.join('","'),'"]);'):""};r.createBlobFromString=function(e){var r="".concat(u(arguments.length>1&&void 0!==arguments[1]?arguments[1]:[]),"\n ").concat(e);return(window.URL||window.webkitURL).createObjectURL(new Blob([r],{type:"application/javascript"}))},r.createBlobWorker=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],t=(0,l.WorkerTemplate)(),n=Array.isArray(e)?e:[e];return(window.URL||window.webkitURL).createObjectURL(new Blob(["".concat(u(r),"\n \n ").concat(t,"\n \n ").concat(n.map((function(e,r){return"// content #".concat(r,"\n(").concat(e.toString(),")(easyWorker, self);")})).join("\n\n"))],{type:"application/javascript"}))};var f=function(){function e(r){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=n.scripts,i=void 0===a?[]:a,s=n.name,u=n.onWorkerError,f=void 0===u?null:u;!function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,e),this.workerBody=r,this.messagesQueue=new Map,this.scripts=[],this.send=function(){for(var e,r=arguments.length,n=new Array(r),o=0;o<r;o++)n[o]=arguments[o];var a=n[0],i=new c.EasyWebWorkerMessage(a),s=i.messageId;return t.messagesQueue.set(i.messageId,i),null===(e=t.worker)||void 0===e||e.postMessage({messageId:s,payload:a}),i.decoupledPromise.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];return t.cancelAll(a),t.send.apply(t,[o])},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];if(t.messagesQueue.size){var s=o(t.messagesQueue,1),c=o(s[0],2)[1];t.messagesQueue.delete(c.messageId),t.cancelAll(i),t.messagesQueue.set(c.messageId,c)}return t.send.apply(t,[a])},this.name=s||(0,l.generatedId)(),this.scripts=i,this.worker=this.createWorker(),this.onWorkerError=f}var t,n;return t=e,(n=[{key:"isExternalWorkerFile",get:function(){return"string"==typeof this.workerBody}},{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,s=o.payload,c=o.reason,l=o.wasCanceled,u=o.progressPercentage;this.worker?void 0===u?(this.RemoveMessageFromQueue(n.messageId),n.wasCompleted=!1,l?n.cancel(c):c?n.reject(c):(n.wasCompleted=!0,n.resolve.apply(n,function(e){if(Array.isArray(e))return i(e)}(t=null!=s?s:[])||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.")}()))):n.reportProgress(u):this.RemoveMessageFromQueue(n.messageId)}}},{key:"getWorkerUrl",value:function(){return this.isExternalWorkerFile?this.workerBody:(0,r.createBlobWorker)(this.workerBody,this.scripts)}},{key:"createWorker",value:function(){var e=this;this.workerUrl=this.getWorkerUrl();var r=new Worker(this.workerUrl,{name:this.name});return r.onmessage=function(r){e.executeMessageCallback(r)},r.onerror=function(r){if(!e.onWorkerError)throw r;e.onWorkerError(r)},r}},{key:"cancelAll",value:function(e){var r;null===(r=this.worker)||void 0===r||r.terminate(),Array.from(this.messagesQueue.values()).forEach((function(r){return r.cancel(e)})),this.messagesQueue=new Map}},{key:"dispose",value:function(){this.cancelAll(),URL.revokeObjectURL(this.workerUrl),this.worker=null}}])&&s(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),e}();r.EasyWebWorker=f,r.default=f},726:(e,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.WorkerTemplate=r.generatedId=void 0,r.generatedId=function(){return"".concat((new Date).getTime()).concat(Math.random().toString(36).substr(2,9))},r.WorkerTemplate=function(){return'\n //this-code-was auto-generated\n const easyWorker = new (class {\n onMessageCallback = () => {\n throw "you didn\'t defined a message-callback, please assign a callback by calling IEasyWorkerInstance.onMessage";\n };\n\n onMessage = (callback) => {\n this.onMessageCallback = callback;\n };\n })();\n\n self.onmessage = (event) => {\n const { messageId, payload } = event.data;\n\n // each message should have his own resolution methods\n const message = new (class {\n payload = payload;\n\n messageId = messageId;\n\n resolve = (...result) => self.postMessage({ messageId, payload: result });\n\n reject = (reason) => self.postMessage({ messageId, reason });\n\n cancel = (reason) => self.postMessage({ messageId, reason, wasCanceled: true });\n\n reportProgress = (progressPercentage) => self.postMessage({ messageId, progressPercentage });\n })();\n\n easyWorker.onMessageCallback(message, event);\n };\n'}},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),s=t(726),c=a((function e(r){var t=this;!function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,e),this.payload=r,this.wasCompleted=!1,this.wasCanceled=!1,this.reportProgress=function(){throw new Error("Message should receive a progress-callback in order to be able to report... send(..).onProgressCallback")},this.messageId=(0,s.generatedId)(),this.decoupledPromise=(0,i.createDecoupledPromise)(),this.resolve=this.decoupledPromise.resolve,this.reject=this.decoupledPromise.reject,this.cancel=this.decoupledPromise.cancel,this.reportProgress=this.decoupledPromise.promise.reportProgress,this.decoupledPromise.onCancel((function(){t.wasCanceled=!0}))}));r.EasyWebWorkerMessage=c},973:(e,r)=>{"use strict";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,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}function o(e,r){for(var n=0;n<r.length;n++){var o=r[n];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"!==t(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,"string");if("object"!==t(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(o.key),"symbol"===t(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.StaticEasyWebWorker=r.WorkerMessage=void 0;var i=function(){function e(r,t){var o=this,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"*";n(this,e),this.payload=r,this.messageId=t,this.messageTargetOrigin=a,this.resolve=function(){for(var e=o.messageId,r=arguments.length,t=new Array(r),n=0;n<r;n++)t[n]=arguments[n];self.postMessage({messageId:e,payload:t},o.messageTargetOrigin)}}return a(e,[{key:"reject",value:function(e){self.postMessage({reason:e},this.messageTargetOrigin)}},{key:"cancel",value:function(e){self.postMessage({wasCanceled:!0,reason:e},this.messageTargetOrigin)}},{key:"reportProgress",value:function(e){var r=this.messageId;self.postMessage({messageId:r,progressPercentage:e},this.messageTargetOrigin)}}]),e}();r.WorkerMessage=i;var s=function(){function e(r){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"*";n(this,e),this.onMessageCallback=r,this.defineOnMessage(t)}return a(e,[{key:"defineOnMessage",value:function(e){var r=this;self.onmessage=function(t){var n=t.data,o=n.messageId,a=n.payload,s=new i(a,o,e);r.onMessageCallback.call(r,s,t)}}},{key:"onMessage",value:function(e){this.onMessageCallback=e}}]),e}();r.StaticEasyWebWorker=s},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}),o(t(30),r),o(t(973),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 a(e){var r="function"==typeof Map?new Map:void 0;return a=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 i(e,arguments,l(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),c(n,e)},a(e)}function i(e,r,t){return i=s()?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&&c(o,t.prototype),o},i.apply(null,arguments)}function s(){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 c(e,r){return c=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,r){return e.__proto__=r,e},c(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&&c(e,r)}(f,e);var r,a,i,u=(a=f,i=s(),function(){var e,r=l(a);if(i){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,a,i,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){i=e,s=r}))).status="pending",a.data={},a.cancelCallbacks=[],a.ownCancelCallbacks=[],a.onProgressCallbacks=[],a.subscribeToOwnCancelEvent=function(e){a.ownCancelCallbacks.push(e)},a.cancel=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if("pending"===a.status)return a.status="canceled",a.ownCancelCallbacks.forEach((function(r){return r(e)})),a.cancelCallbacks.forEach((function(r){return r(e)})),a.reject(e),a.cancelCallbacks=[],a.ownCancelCallbacks=[],n(a)},a.onCancel=function(e){return a.cancelCallbacks.push(e),n(a)},a.onProgress=function(e){return a.onProgressCallbacks.push(e),n(a)},a.reportProgress=function(e){return a.onProgressCallbacks.forEach((function(r){return r(e)})),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=i,a.reject=s,e((function(e){a.status="resolved",a.resolve(e)}),(function(e){a.status="rejected",a.reject(e)}),{cancel:function(e){return a.cancel(e)},onCancel:function(e){return a.subscribeToOwnCancelEvent(e),n(a)},onProgress:function(e){return a.onProgress(e)},reportProgress:function(e){a.reportProgress(e)}}),a.then=function(e,t){var i=a.createChildPromise(),s=i.promise,c=i.resolve,u=i.reject;return o((r=n(a),l(f.prototype)),"then",r).call(r,e,t).then(c,u),s},a.catch=function(e){var r=a.createChildPromise(),i=r.promise,s=r.resolve,c=r.reject;return o((t=n(a),l(f.prototype)),"catch",t).call(t,e).then(s,c),i},a}return r=f,Object.defineProperty(r,"prototype",{writable:!1}),r}(a(Promise));r.CancelablePromise=u,u.prototype.constructor=Promise},716:(e,r,t)=>{function n(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}Object.defineProperty(r,"__esModule",{value:!0}),r.isPromise=r.groupAsCancelablePromise=r.toCancelablePromise=r.createDecoupledPromise=void 0;var o=t(399);r.createDecoupledPromise=function(){var e,r,t,n=new o.CancelablePromise((function(n,o,a){e=n,r=o,t=a}));return Object.assign(Object.assign({resolve:e,reject:r},t),{promise:n})},r.toCancelablePromise=function(e){if(e instanceof o.CancelablePromise)return e;if("function"==typeof e)return(0,r.toCancelablePromise)(e());if(!(0,r.isPromise)(e))return new o.CancelablePromise((function(r){return r(e)}));var t,n,a=new o.CancelablePromise((function(r,o,a){t=r,n=o,e.then(t,n)}));return a.onCancel((function(e){n(e)})),a},r.groupAsCancelablePromise=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e.length)return null;var a,i=t.maxConcurrent,s=void 0===i?8:i,c=t.executeInOrder,l=void 0!==c&&c,u=t.beforeEachCallback,f=void 0===u?null:u,p=t.afterEachCallback,y=void 0===p?null:p,m=t.onQueueEmptyCallback,b=void 0===m?null:m,d=function(e){if(Array.isArray(e))return n(e)}(a=e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(a)||function(e,r){if(e){if("string"==typeof e)return n(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?n(e,r):void 0}}(a)||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.")}(),v=[];return new o.CancelablePromise((function(e,t,n){return function e(){if(d.length){var t=d.splice(0,s).map((function(e){var t="function"==typeof e?e():e;null==f||f();var o=(0,r.toCancelablePromise)(t);return n.onCancel((function(){o.cancel()})),o.then((function(e){v.push(e),null==y||y(e)})),l?o.then((function(e){return e})):o}));return Promise.all(t).then((function(){return e()}))}}().then((function(){null==b||b(v),e(v)}))}))},r.isPromise=function(e){return Promise.resolve(e)===e}},522:(e,r,t)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.isPromise=r.groupAsCancelablePromise=r.toCancelablePromise=r.createDecoupledPromise=r.CancelablePromise=void 0;var n=t(399);Object.defineProperty(r,"CancelablePromise",{enumerable:!0,get:function(){return n.CancelablePromise}});var o=t(716);Object.defineProperty(r,"createDecoupledPromise",{enumerable:!0,get:function(){return o.createDecoupledPromise}}),Object.defineProperty(r,"toCancelablePromise",{enumerable:!0,get:function(){return o.toCancelablePromise}}),Object.defineProperty(r,"groupAsCancelablePromise",{enumerable:!0,get:function(){return o.groupAsCancelablePromise}}),Object.defineProperty(r,"isPromise",{enumerable:!0,get:function(){return o.isPromise}})},335:(e,r,t)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.tryCatch=r.tryCatchPromise=void 0;var n=t(969);Object.defineProperty(r,"tryCatchPromise",{enumerable:!0,get:function(){return n.tryCatchPromise}}),Object.defineProperty(r,"tryCatch",{enumerable:!0,get:function(){return n.tryCatch}})},969:(e,r,t)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.tryCatch=r.tryCatchPromise=void 0;var n=t(948);Object.defineProperty(r,"tryCatchPromise",{enumerable:!0,get:function(){return n.tryCatchPromise}}),Object.defineProperty(r,"tryCatch",{enumerable:!0,get:function(){return n.tryCatch}})},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,s=void 0===i?"error":i,c=t.ignoreCancel,l=void 0===c||c,u=null,f=null,p=function(e){f=e,"ignore"!=s&&("canceled"===u.status&&l||console[s](f))};try{if(e instanceof n.CancelablePromise)return u=e,new Promise((function(e){u.then((function(e){return{error:null,result:e,promise:u}})).catch((function(e){return p(e),{error:e,result:a,promise:u}}))}));var y=e(),m=y instanceof n.CancelablePromise;return u=m?y:(0,n.toCancelablePromise)(y),new Promise((function(e){u.then((function(r){e({error:null,result:r,promise:u})})).catch((function(r){p(r),e({error:r,result:a,promise:u})}))}))}catch(e){return p(e),Promise.resolve({error:f,result:a,promise:u})}}}},r={};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}var n={};return(()=>{var e=n;Object.defineProperty(e,"__esModule",{value:!0}),e.tryCatch=e.tryCatchPromise=e.isPromise=e.groupAsCancelablePromise=e.toCancelablePromise=e.createDecoupledPromise=e.CancelablePromise=void 0;var r=t(522);Object.defineProperty(e,"CancelablePromise",{enumerable:!0,get:function(){return r.CancelablePromise}}),Object.defineProperty(e,"createDecoupledPromise",{enumerable:!0,get:function(){return r.createDecoupledPromise}}),Object.defineProperty(e,"toCancelablePromise",{enumerable:!0,get:function(){return r.toCancelablePromise}}),Object.defineProperty(e,"groupAsCancelablePromise",{enumerable:!0,get:function(){return r.groupAsCancelablePromise}}),Object.defineProperty(e,"isPromise",{enumerable:!0,get:function(){return r.isPromise}});var o=t(335);Object.defineProperty(e,"tryCatchPromise",{enumerable:!0,get:function(){return o.tryCatchPromise}}),Object.defineProperty(e,"tryCatch",{enumerable:!0,get:function(){return o.tryCatch}})})(),n})(),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}));
@@ -0,0 +1 @@
1
+ /*! For license information please see bundle.js.LICENSE.txt */
package/package.json CHANGED
@@ -1,8 +1,9 @@
1
1
  {
2
2
  "name": "easy-web-worker",
3
- "version": "1.0.11",
3
+ "version": "1.1.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/index.js",
6
+ "types": "lib/index.d.ts",
6
7
  "files": [
7
8
  "lib"
8
9
  ],
@@ -10,7 +11,7 @@
10
11
  "test:debug": "node --inspect-brk node_modules/.bin/jest --watch --runInBand",
11
12
  "test:quick": "jest --maxWorkers=4 -c --no-watchman -u",
12
13
  "test:coverage": "jest --maxWorkers=4 -c --colors --no-watchman --verbose --coverage",
13
- "build": "tsc",
14
+ "build": "webpack --config webpack.config.js",
14
15
  "prepare": "npm run build",
15
16
  "version": "npm run format && git add -A src",
16
17
  "postversion": "git push && git push --tags",
@@ -37,32 +38,28 @@
37
38
  },
38
39
  "homepage": "https://github.com/johnny-quesada-developer/easy-web-worker#readme",
39
40
  "devDependencies": {
40
- "@types/jest": "^26.0.17",
41
- "@types/jsdom": "^16.2.5",
42
- "@typescript-eslint/eslint-plugin": "^4.9.1",
43
- "@typescript-eslint/parser": "^4.9.1",
44
- "cancelable-promise-jq": ">=1.0.11",
45
- "eslint": "^7.15.0",
46
- "eslint-config-airbnb": "^18.2.1",
47
- "eslint-plugin-import": "^2.22.1",
48
- "eslint-plugin-jsx-a11y": "^6.4.1",
49
- "eslint-plugin-react": "^7.21.5",
50
- "eslint-plugin-react-hooks": "^4.2.0",
51
- "jest": "^29.5.0",
52
- "jest-core": "^0.0.0",
41
+ "@babel/core": "^7.21.3",
42
+ "@babel/plugin-transform-modules-commonjs": "^7.21.2",
43
+ "@babel/preset-env": "^7.20.2",
44
+ "@babel/preset-typescript": "^7.21.0",
45
+ "@types/jest": "^29.2.4",
46
+ "babel-loader": "^9.1.2",
47
+ "cancelable-promise-jq": ">=1.1.0",
48
+ "jest": "^29.3.1",
53
49
  "jsdom": "^16.4.0",
54
- "lite-server": "^2.6.1",
55
- "ts-jest": "^29.0.5",
56
- "tslib": "^2.5.0",
57
- "typescript": "^4.4.4"
50
+ "ts-jest": "^29.0.3",
51
+ "ts-loader": "^9.4.2",
52
+ "tslib": "^2.4.1",
53
+ "typescript": "^4.9.4",
54
+ "webpack": "^5.76.3",
55
+ "webpack-cli": "^5.0.1"
58
56
  },
59
57
  "peerDependencies": {
60
- "cancelable-promise-jq": ">=1.0.11"
58
+ "cancelable-promise-jq": ">=1.1.0"
61
59
  },
62
60
  "peerDependenciesMeta": {
63
61
  "cancelable-promise-jq": {
64
62
  "optional": false
65
63
  }
66
- },
67
- "dependencies": {}
64
+ }
68
65
  }