@welshman/lib 0.0.23 → 0.0.24

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.
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.equals = exports.isPojo = exports.ellipsize = exports.tryCatch = exports.setJson = exports.getJson = exports.parseJson = exports.clamp = exports.toggle = exports.without = exports.remove = exports.difference = exports.intersection = exports.union = exports.append = exports.concat = exports.sleep = exports.displayDomain = exports.displayUrl = exports.stripProtocol = exports.randomId = exports.randomInt = exports.between = exports.mergeRight = exports.mergeLeft = exports.mapVals = exports.mapKeys = exports.range = exports.pick = exports.omitVals = exports.omit = exports.take = exports.drop = exports.avg = exports.sum = exports.min = exports.max = exports.gte = exports.gt = exports.lte = exports.lt = exports.dec = exports.inc = exports.always = exports.identity = exports.last = exports.ffirst = exports.first = exports.noop = exports.isNil = void 0;
4
- exports.fetchJson = exports.ms = exports.ago = exports.now = exports.int = exports.YEAR = exports.QUARTER = exports.MONTH = exports.WEEK = exports.DAY = exports.HOUR = exports.MINUTE = exports.switcher = exports.pushToMapKey = exports.addToMapKey = exports.pushToKey = exports.addToKey = exports.batcher = exports.batch = exports.throttleWithValue = exports.memoize = exports.once = exports.chunks = exports.chunk = exports.initArray = exports.sample = exports.indexBy = exports.groupBy = exports.sortBy = exports.sort = exports.uniqBy = exports.uniq = exports.partition = exports.flatten = exports.fromPairs = exports.ensureNumber = exports.ensurePlural = exports.toIterable = exports.isIterable = exports.shuffle = exports.choice = exports.splitAt = exports.hash = exports.assoc = exports.prop = exports.ne = exports.eq = exports.nthNe = exports.nthEq = exports.nth = void 0;
5
- exports.bech32ToHex = exports.hexToBech32 = exports.uploadFile = exports.postJson = void 0;
3
+ exports.setJson = exports.getJson = exports.parseJson = exports.clamp = exports.toggle = exports.without = exports.remove = exports.difference = exports.intersection = exports.union = exports.append = exports.concat = exports.sleep = exports.displayDomain = exports.displayUrl = exports.stripProtocol = exports.randomId = exports.randomInt = exports.between = exports.mergeRight = exports.mergeLeft = exports.mapVals = exports.mapKeys = exports.range = exports.pick = exports.omitVals = exports.omit = exports.take = exports.drop = exports.avg = exports.sum = exports.min = exports.max = exports.gte = exports.gt = exports.lte = exports.lt = exports.dec = exports.inc = exports.div = exports.mul = exports.sub = exports.add = exports.always = exports.identity = exports.last = exports.ffirst = exports.first = exports.noop = exports.isNil = void 0;
4
+ exports.int = exports.YEAR = exports.QUARTER = exports.MONTH = exports.WEEK = exports.DAY = exports.HOUR = exports.MINUTE = exports.switcher = exports.pushToMapKey = exports.addToMapKey = exports.pushToKey = exports.addToKey = exports.batcher = exports.batch = exports.throttleWithValue = exports.memoize = exports.once = exports.chunks = exports.chunk = exports.initArray = exports.indexBy = exports.groupBy = exports.sortBy = exports.sort = exports.uniqBy = exports.uniq = exports.partition = exports.flatten = exports.fromPairs = exports.ensureNumber = exports.ensurePlural = exports.toIterable = exports.isIterable = exports.sample = exports.shuffle = exports.choice = exports.splitAt = exports.hash = exports.assoc = exports.prop = exports.ne = exports.eq = exports.nthNe = exports.nthEq = exports.nth = exports.equals = exports.isPojo = exports.ellipsize = exports.tryCatch = void 0;
5
+ exports.bech32ToHex = exports.hexToBech32 = exports.uploadFile = exports.postJson = exports.fetchJson = exports.ms = exports.ago = exports.now = void 0;
6
6
  const throttle_debounce_1 = require("throttle-debounce");
7
7
  const base_1 = require("@scure/base");
8
8
  const isNil = (x) => [null, undefined].includes(x);
@@ -20,9 +20,17 @@ const identity = (x, ...args) => x;
20
20
  exports.identity = identity;
21
21
  const always = (x, ...args) => () => x;
22
22
  exports.always = always;
23
- const inc = (x) => (x || 0) + 1;
23
+ const add = (x, y) => (x || 0) + (y || 0);
24
+ exports.add = add;
25
+ const sub = (x, y) => (x || 0) - (y || 0);
26
+ exports.sub = sub;
27
+ const mul = (x, y) => (x || 0) * (y || 0);
28
+ exports.mul = mul;
29
+ const div = (x, y) => (x || 0) / y;
30
+ exports.div = div;
31
+ const inc = (x) => (0, exports.add)(x, 1);
24
32
  exports.inc = inc;
25
- const dec = (x) => (x || 0) - 1;
33
+ const dec = (x) => (0, exports.sub)(x, 1);
26
34
  exports.dec = dec;
27
35
  const lt = (x, y) => (x || 0) < (y || 0);
28
36
  exports.lt = lt;
@@ -249,6 +257,8 @@ const choice = (xs) => xs[Math.floor(xs.length * Math.random())];
249
257
  exports.choice = choice;
250
258
  const shuffle = (xs) => Array.from(xs).sort(() => Math.random() > 0.5 ? 1 : -1);
251
259
  exports.shuffle = shuffle;
260
+ const sample = (n, xs) => (0, exports.shuffle)(xs).slice(0, n);
261
+ exports.sample = sample;
252
262
  const isIterable = (x) => Symbol.iterator in Object(x);
253
263
  exports.isIterable = isIterable;
254
264
  const toIterable = (x) => (0, exports.isIterable)(x) ? x : [x];
@@ -329,15 +339,6 @@ const indexBy = (f, xs) => {
329
339
  return r;
330
340
  };
331
341
  exports.indexBy = indexBy;
332
- const sample = (n, xs) => {
333
- const result = [];
334
- const limit = Math.min(n, xs.length);
335
- for (let i = 0; i < limit; i++) {
336
- result.push(xs.splice(Math.floor(xs.length * Math.random()), 1)[0]);
337
- }
338
- return result;
339
- };
340
- exports.sample = sample;
341
342
  const initArray = (n, f) => {
342
343
  const result = [];
343
344
  for (let i = 0; i < n; i++) {
@@ -1 +1 @@
1
- {"version":3,"file":"Tools.cjs","sourceRoot":"","sources":["../../src/Tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tools.cjs","sourceRoot":"","sources":["../../src/Tools.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,10 @@ export declare const ffirst: <T>(xs: T[][], ...args: unknown[]) => T;
7
7
  export declare const last: <T>(xs: T[], ...args: unknown[]) => T;
8
8
  export declare const identity: <T>(x: T, ...args: unknown[]) => T;
9
9
  export declare const always: <T>(x: T, ...args: unknown[]) => () => T;
10
+ export declare const add: (x: number | Nil, y: number | Nil) => number;
11
+ export declare const sub: (x: number | Nil, y: number | Nil) => number;
12
+ export declare const mul: (x: number | Nil, y: number | Nil) => number;
13
+ export declare const div: (x: number | Nil, y: number) => number;
10
14
  export declare const inc: (x: number | Nil) => number;
11
15
  export declare const dec: (x: number | Nil) => number;
12
16
  export declare const lt: (x: number | Nil, y: number | Nil) => boolean;
@@ -61,6 +65,7 @@ export declare const hash: (s: string) => string;
61
65
  export declare const splitAt: <T>(n: number, xs: T[]) => T[][];
62
66
  export declare const choice: <T>(xs: T[]) => T;
63
67
  export declare const shuffle: <T>(xs: Iterable<T>) => T[];
68
+ export declare const sample: <T>(n: number, xs: T[]) => T[];
64
69
  export declare const isIterable: (x: any) => boolean;
65
70
  export declare const toIterable: (x: any) => any;
66
71
  export declare const ensurePlural: <T>(x: T | T[]) => T[];
@@ -74,7 +79,6 @@ export declare const sort: <T>(xs: T[]) => T[];
74
79
  export declare const sortBy: <T>(f: (x: T) => any, xs: T[]) => T[];
75
80
  export declare const groupBy: <T, K>(f: (x: T) => K, xs: T[]) => Map<K, T[]>;
76
81
  export declare const indexBy: <T, K>(f: (x: T) => K, xs: T[]) => Map<K, T>;
77
- export declare const sample: <T>(n: number, xs: T[]) => T[];
78
82
  export declare const initArray: <T>(n: number, f: () => T) => T[];
79
83
  export declare const chunk: <T>(chunkLength: number, xs: T[]) => T[][];
80
84
  export declare const chunks: <T>(n: number, xs: T[]) => T[][];
@@ -8,8 +8,12 @@ export const ffirst = (xs, ...args) => xs[0][0];
8
8
  export const last = (xs, ...args) => xs[xs.length - 1];
9
9
  export const identity = (x, ...args) => x;
10
10
  export const always = (x, ...args) => () => x;
11
- export const inc = (x) => (x || 0) + 1;
12
- export const dec = (x) => (x || 0) - 1;
11
+ export const add = (x, y) => (x || 0) + (y || 0);
12
+ export const sub = (x, y) => (x || 0) - (y || 0);
13
+ export const mul = (x, y) => (x || 0) * (y || 0);
14
+ export const div = (x, y) => (x || 0) / y;
15
+ export const inc = (x) => add(x, 1);
16
+ export const dec = (x) => sub(x, 1);
13
17
  export const lt = (x, y) => (x || 0) < (y || 0);
14
18
  export const lte = (x, y) => (x || 0) <= (y || 0);
15
19
  export const gt = (x, y) => (x || 0) > (y || 0);
@@ -183,6 +187,7 @@ export const hash = (s) => Math.abs(s.split("").reduce((a, b) => ((a << 5) - a +
183
187
  export const splitAt = (n, xs) => [xs.slice(0, n), xs.slice(n)];
184
188
  export const choice = (xs) => xs[Math.floor(xs.length * Math.random())];
185
189
  export const shuffle = (xs) => Array.from(xs).sort(() => Math.random() > 0.5 ? 1 : -1);
190
+ export const sample = (n, xs) => shuffle(xs).slice(0, n);
186
191
  export const isIterable = (x) => Symbol.iterator in Object(x);
187
192
  export const toIterable = (x) => isIterable(x) ? x : [x];
188
193
  export const ensurePlural = (x) => (x instanceof Array ? x : [x]);
@@ -250,14 +255,6 @@ export const indexBy = (f, xs) => {
250
255
  }
251
256
  return r;
252
257
  };
253
- export const sample = (n, xs) => {
254
- const result = [];
255
- const limit = Math.min(n, xs.length);
256
- for (let i = 0; i < limit; i++) {
257
- result.push(xs.splice(Math.floor(xs.length * Math.random()), 1)[0]);
258
- }
259
- return result;
260
- };
261
258
  export const initArray = (n, f) => {
262
259
  const result = [];
263
260
  for (let i = 0; i < n; i++) {
@@ -1 +1 @@
1
- {"version":3,"file":"Tools.mjs","sourceRoot":"","sources":["../../src/Tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tools.mjs","sourceRoot":"","sources":["../../src/Tools.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,16 @@
1
1
  "use strict";
2
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
+ if (kind === "m") throw new TypeError("Private method is not writable");
4
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
+ };
2
8
  var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
9
  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
10
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
5
11
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
12
  };
7
- var _Worker_doWork, _Worker_enqueueWork;
13
+ var _Worker_timeout, _Worker_paused, _Worker_doWork, _Worker_enqueueWork;
8
14
  Object.defineProperty(exports, "__esModule", { value: true });
9
15
  exports.Worker = void 0;
10
16
  const ANY = Symbol("worker/ANY");
@@ -13,6 +19,8 @@ class Worker {
13
19
  this.opts = opts;
14
20
  this.buffer = [];
15
21
  this.handlers = new Map();
22
+ _Worker_timeout.set(this, void 0);
23
+ _Worker_paused.set(this, false);
16
24
  _Worker_doWork.set(this, async () => {
17
25
  var _a, _b;
18
26
  for (let i = 0; i < 50; i++) {
@@ -46,12 +54,12 @@ class Worker {
46
54
  }
47
55
  }
48
56
  }
49
- this.timeout = undefined;
57
+ __classPrivateFieldSet(this, _Worker_timeout, undefined, "f");
50
58
  __classPrivateFieldGet(this, _Worker_enqueueWork, "f").call(this);
51
59
  });
52
60
  _Worker_enqueueWork.set(this, () => {
53
- if (!this.timeout && this.buffer.length > 0) {
54
- this.timeout = setTimeout(__classPrivateFieldGet(this, _Worker_doWork, "f"), 50);
61
+ if (!__classPrivateFieldGet(this, _Worker_paused, "f") && !__classPrivateFieldGet(this, _Worker_timeout, "f") && this.buffer.length > 0) {
62
+ __classPrivateFieldSet(this, _Worker_timeout, setTimeout(__classPrivateFieldGet(this, _Worker_doWork, "f"), 50), "f");
55
63
  }
56
64
  });
57
65
  this.push = (message) => {
@@ -68,10 +76,16 @@ class Worker {
68
76
  clear() {
69
77
  this.buffer = [];
70
78
  }
71
- stop() {
72
- clearTimeout(this.timeout);
79
+ pause() {
80
+ clearTimeout(__classPrivateFieldGet(this, _Worker_timeout, "f"));
81
+ __classPrivateFieldSet(this, _Worker_paused, true, "f");
82
+ __classPrivateFieldSet(this, _Worker_timeout, undefined, "f");
83
+ }
84
+ resume() {
85
+ __classPrivateFieldSet(this, _Worker_paused, false, "f");
86
+ __classPrivateFieldGet(this, _Worker_enqueueWork, "f").call(this);
73
87
  }
74
88
  }
75
89
  exports.Worker = Worker;
76
- _Worker_doWork = new WeakMap(), _Worker_enqueueWork = new WeakMap();
90
+ _Worker_timeout = new WeakMap(), _Worker_paused = new WeakMap(), _Worker_doWork = new WeakMap(), _Worker_enqueueWork = new WeakMap();
77
91
  //# sourceMappingURL=Worker.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Worker.cjs","sourceRoot":"","sources":["../../src/Worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Worker.cjs","sourceRoot":"","sources":["../../src/Worker.ts"],"names":[],"mappings":"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"}
@@ -7,11 +7,11 @@ export declare class Worker<T> {
7
7
  readonly opts: WorkerOpts<T>;
8
8
  buffer: T[];
9
9
  handlers: Map<any, Array<(x: T) => void>>;
10
- timeout: number | undefined;
11
10
  constructor(opts?: WorkerOpts<T>);
12
11
  push: (message: T) => void;
13
12
  addHandler: (k: any, handler: (message: T) => void) => void;
14
13
  addGlobalHandler: (handler: (message: T) => void) => void;
15
14
  clear(): void;
16
- stop(): void;
15
+ pause(): void;
16
+ resume(): void;
17
17
  }
@@ -1,15 +1,23 @@
1
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
2
+ if (kind === "m") throw new TypeError("Private method is not writable");
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
5
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
6
+ };
1
7
  var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
8
  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
9
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
10
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
11
  };
6
- var _Worker_doWork, _Worker_enqueueWork;
12
+ var _Worker_timeout, _Worker_paused, _Worker_doWork, _Worker_enqueueWork;
7
13
  const ANY = Symbol("worker/ANY");
8
14
  export class Worker {
9
15
  constructor(opts = {}) {
10
16
  this.opts = opts;
11
17
  this.buffer = [];
12
18
  this.handlers = new Map();
19
+ _Worker_timeout.set(this, void 0);
20
+ _Worker_paused.set(this, false);
13
21
  _Worker_doWork.set(this, async () => {
14
22
  var _a, _b;
15
23
  for (let i = 0; i < 50; i++) {
@@ -43,12 +51,12 @@ export class Worker {
43
51
  }
44
52
  }
45
53
  }
46
- this.timeout = undefined;
54
+ __classPrivateFieldSet(this, _Worker_timeout, undefined, "f");
47
55
  __classPrivateFieldGet(this, _Worker_enqueueWork, "f").call(this);
48
56
  });
49
57
  _Worker_enqueueWork.set(this, () => {
50
- if (!this.timeout && this.buffer.length > 0) {
51
- this.timeout = setTimeout(__classPrivateFieldGet(this, _Worker_doWork, "f"), 50);
58
+ if (!__classPrivateFieldGet(this, _Worker_paused, "f") && !__classPrivateFieldGet(this, _Worker_timeout, "f") && this.buffer.length > 0) {
59
+ __classPrivateFieldSet(this, _Worker_timeout, setTimeout(__classPrivateFieldGet(this, _Worker_doWork, "f"), 50), "f");
52
60
  }
53
61
  });
54
62
  this.push = (message) => {
@@ -65,9 +73,15 @@ export class Worker {
65
73
  clear() {
66
74
  this.buffer = [];
67
75
  }
68
- stop() {
69
- clearTimeout(this.timeout);
76
+ pause() {
77
+ clearTimeout(__classPrivateFieldGet(this, _Worker_timeout, "f"));
78
+ __classPrivateFieldSet(this, _Worker_paused, true, "f");
79
+ __classPrivateFieldSet(this, _Worker_timeout, undefined, "f");
80
+ }
81
+ resume() {
82
+ __classPrivateFieldSet(this, _Worker_paused, false, "f");
83
+ __classPrivateFieldGet(this, _Worker_enqueueWork, "f").call(this);
70
84
  }
71
85
  }
72
- _Worker_doWork = new WeakMap(), _Worker_enqueueWork = new WeakMap();
86
+ _Worker_timeout = new WeakMap(), _Worker_paused = new WeakMap(), _Worker_doWork = new WeakMap(), _Worker_enqueueWork = new WeakMap();
73
87
  //# sourceMappingURL=Worker.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Worker.mjs","sourceRoot":"","sources":["../../src/Worker.ts"],"names":[],"mappings":";;;;;;AAAA,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;AAOhC,MAAM,OAAO,MAAM;IAKjB,YAAqB,OAAsB,EAAE;QAAxB,SAAI,GAAJ,IAAI,CAAoB;QAJ7C,WAAM,GAAQ,EAAE,CAAA;QAChB,aAAQ,GAAoC,IAAI,GAAG,EAAE,CAAA;QAKrD,yBAAU,KAAK,IAAI,EAAE;;YACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;gBAC3B,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC5B,MAAK;iBACN;gBAED,8DAA8D;gBAC9D,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;gBAE1C,IAAI,MAAA,MAAA,IAAI,CAAC,IAAI,EAAC,WAAW,mDAAG,OAAO,CAAC,EAAE;oBACpC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;iBAC1B;qBAAM;oBACL,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE;wBAClD,IAAI;4BACF,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;yBACvB;wBAAC,OAAO,CAAC,EAAE;4BACV,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;yBACjB;qBACF;oBAED,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;wBACpB,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;wBAEnC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE;4BAChD,IAAI;gCACF,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;6BACvB;4BAAC,OAAO,CAAC,EAAE;gCACV,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;6BACjB;yBACF;qBACF;iBACF;aACF;YAED,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;YACxB,uBAAA,IAAI,2BAAa,MAAjB,IAAI,CAAe,CAAA;QACrB,CAAC,EAAA;QAED,8BAAe,GAAG,EAAE;YAClB,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC3C,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,uBAAA,IAAI,sBAAQ,EAAE,EAAE,CAAsB,CAAA;aACjE;QACH,CAAC,EAAA;QAED,SAAI,GAAG,CAAC,OAAU,EAAE,EAAE;YACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACzB,uBAAA,IAAI,2BAAa,MAAjB,IAAI,CAAe,CAAA;QACrB,CAAC,CAAA;QAED,eAAU,GAAG,CAAC,CAAM,EAAE,OAA6B,EAAE,EAAE;YACrD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;QACpE,CAAC,CAAA;QAED,qBAAgB,GAAG,CAAC,OAA6B,EAAE,EAAE;YACnD,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QAC/B,CAAC,CAAA;IAzD+C,CAAC;IA2DjD,KAAK;QACH,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA;IAClB,CAAC;IAED,IAAI;QACF,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC5B,CAAC;CACF"}
1
+ {"version":3,"file":"Worker.mjs","sourceRoot":"","sources":["../../src/Worker.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@welshman/lib",
3
- "version": "0.0.23",
3
+ "version": "0.0.24",
4
4
  "author": "hodlbod",
5
5
  "license": "MIT",
6
6
  "description": "A collection of utilities.",