@tstdl/base 0.78.0-beta71 → 0.78.0-beta72
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/application/application.d.ts +5 -2
- package/application/application.js +26 -13
- package/application/application.js.map +1 -1
- package/collections/awaitable/awaitable-list.js +3 -4
- package/collections/awaitable/awaitable-list.js.map +1 -1
- package/collections/observable/observable-collection-base.js +12 -14
- package/collections/observable/observable-collection-base.js.map +1 -1
- package/collections/observable/observable-list-base.js +4 -6
- package/collections/observable/observable-list-base.js.map +1 -1
- package/data-structures/circular-buffer.js +5 -6
- package/data-structures/circular-buffer.js.map +1 -1
- package/data-structures/collection.js +4 -5
- package/data-structures/collection.js.map +1 -1
- package/examples/mail/basic.js.map +1 -1
- package/examples/pdf/basic.js +1 -1
- package/examples/pdf/basic.js.map +1 -1
- package/examples/template/basic.js +1 -1
- package/examples/template/basic.js.map +1 -1
- package/message-bus/message-bus-base.js +1 -2
- package/message-bus/message-bus-base.js.map +1 -1
- package/package.json +4 -4
- package/pdf/pdf.service.d.ts +1 -0
- package/pdf/pdf.service.js +51 -31
- package/pdf/pdf.service.js.map +1 -1
- package/pool/pool.d.ts +18 -4
- package/pool/pool.js +75 -42
- package/pool/pool.js.map +1 -1
- package/rxjs/retry-backoff.js +4 -5
- package/rxjs/retry-backoff.js.map +1 -1
- package/threading/thread-pool.d.ts +2 -1
- package/threading/thread-pool.js +2 -2
- package/threading/thread-pool.js.map +1 -1
- package/utils/async-iterable-helpers/observable-iterable.js +1 -2
- package/utils/async-iterable-helpers/observable-iterable.js.map +1 -1
- package/utils/async-iterable-helpers/take-until.js +2 -3
- package/utils/async-iterable-helpers/take-until.js.map +1 -1
- package/utils/cancellation-token.js +3 -3
- package/utils/cancellation-token.js.map +1 -1
- package/utils/feedable-async-iterable.js +1 -2
- package/utils/feedable-async-iterable.js.map +1 -1
- package/utils/image.js +5 -6
- package/utils/image.js.map +1 -1
- package/utils/patch-worker.js +1 -2
- package/utils/patch-worker.js.map +1 -1
- package/utils/periodic-sampler.js +2 -2
- package/utils/periodic-sampler.js.map +1 -1
- package/utils/timing.js +2 -2
- package/utils/timing.js.map +1 -1
- package/rxjs/compat/first-value-from.d.ts +0 -2
- package/rxjs/compat/first-value-from.js +0 -9
- package/rxjs/compat/first-value-from.js.map +0 -1
- package/rxjs/compat/index.d.ts +0 -1
- package/rxjs/compat/index.js +0 -18
- package/rxjs/compat/index.js.map +0 -1
package/pdf/pdf.service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pdf.service.js","sourceRoot":"","sources":["../../source/pdf/pdf.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,4CAAkE;AAClE,kCAAkC;AAElC,yDAAuD;AAEvD,sCAAkC;AAClC,kCAA8B;AAC9B,sCAAiD;AAEjD,4CAAwD;AACxD,qEAAgE;AAChE,qFAAuF;AACvF,+FAAwF;AACxF,iEAAgE;AAChE,sDAAuE;AACvE,0CAAsD;AACtD,uCAAuC;AAEvC,IAAY,SAYX;AAZD,WAAY,SAAS;IACnB,8BAAiB,CAAA;IACjB,4BAAe,CAAA;IACf,gCAAmB,CAAA;IACnB,8BAAiB,CAAA;IACjB,sBAAS,CAAA;IACT,sBAAS,CAAA;IACT,sBAAS,CAAA;IACT,sBAAS,CAAA;IACT,sBAAS,CAAA;IACT,sBAAS,CAAA;IACT,sBAAS,CAAA;AACX,CAAC,EAZW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAYpB;AAED,MAAa,eAAe;CAY3B;AAXC;IAAC,IAAA,iBAAQ,EAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;4CACL;AAEtB;IAAC,IAAA,iBAAQ,EAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;+CACF;AAEzB;IAAC,IAAA,iBAAQ,EAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;8CACH;AAExB;IAAC,IAAA,iBAAQ,EAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;6CACJ;AAXzB,0CAYC;AAED,MAAa,gBAAgB;CA4C5B;AA3CC;IAAC,IAAA,iBAAQ,GAAE;;+DACqB;AAEhC;IAAC,IAAA,iBAAQ,GAAE;;0DACgB;AAE3B;IAAC,IAAA,iBAAQ,GAAE;;mDACS;AAEpB;IAAC,IAAA,iBAAQ,GAAE;IACV,IAAA,oBAAW,EAAC,SAAS,CAAC;;gDACJ;AAEnB;IAAC,IAAA,iBAAQ,EAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;+CACH;AAExB;IAAC,IAAA,iBAAQ,EAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;gDACF;AAEzB;IAAC,IAAA,iBAAQ,GAAE;;+CACI;AAEf;IAAC,IAAA,iBAAQ,EAAC,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;;gDACD;AAE3C;IAAC,IAAA,iBAAQ,GAAE;;6DACmB;AAE9B;IAAC,IAAA,iBAAQ,GAAE;;4DACkB;AAE7B;IAAC,IAAA,iBAAQ,GAAE;;wDACa;AAExB;IAAC,IAAA,iBAAQ,GAAE;;wDACa;AAMxB;IAAC,IAAA,iBAAQ,GAAE;;iDACM;AA3CnB,4CA4CC;AAID,MAAa,WAAY,SAAQ,oBAAwE;CAGxG;AAFC;IAAC,IAAA,iBAAQ,GAAE;;4CAC2B;AAFxC,kCAGC;AAGM,IAAM,UAAU,GAAhB,MAAM,UAAU;IAKrB,YAAY,eAAgC,EAA4C,MAAc;QACpG,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,IAAI,GAAG,IAAI,WAAI,CAClB,KAAK,IAAI,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAC9B,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"pdf.service.js","sourceRoot":"","sources":["../../source/pdf/pdf.service.ts"],"names":[],"mappings":"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"}
|
package/pool/pool.d.ts
CHANGED
|
@@ -1,29 +1,43 @@
|
|
|
1
1
|
import type { AsyncDisposable } from "../disposable/disposable";
|
|
2
2
|
import { disposeAsync } from "../disposable/disposable";
|
|
3
|
+
import type { Logger } from "../logger";
|
|
3
4
|
export declare type PoolOptions = {
|
|
4
5
|
/**
|
|
5
6
|
* maximum number of instances
|
|
6
7
|
* @default number of cpu cores
|
|
7
8
|
*/
|
|
8
9
|
size?: number;
|
|
10
|
+
};
|
|
11
|
+
export declare type PoolUseOptions = {
|
|
9
12
|
/**
|
|
10
|
-
*
|
|
13
|
+
* Dipose used instance on error instead of reusing it.
|
|
14
|
+
* @default false
|
|
11
15
|
*/
|
|
12
16
|
disposeOnError?: boolean;
|
|
13
17
|
};
|
|
14
18
|
export declare type PoolInstanceFactory<T> = () => T | Promise<T>;
|
|
15
19
|
export declare type PoolInstanceDisposer<T> = (instance: T) => any | Promise<any>;
|
|
16
|
-
export declare class Pool<T> implements AsyncDisposable {
|
|
20
|
+
export declare class Pool<T extends object> implements AsyncDisposable {
|
|
17
21
|
private readonly size;
|
|
18
22
|
private readonly disposeOnError;
|
|
19
23
|
private readonly freeInstances;
|
|
20
24
|
private readonly usedInstances;
|
|
21
25
|
private readonly factory;
|
|
22
26
|
private readonly disposer;
|
|
27
|
+
private readonly logger;
|
|
28
|
+
private placeholderInstances;
|
|
23
29
|
private disposed;
|
|
24
30
|
get length(): number;
|
|
25
|
-
constructor(factory: PoolInstanceFactory<T>, disposer: PoolInstanceDisposer<T>, options?: PoolOptions);
|
|
31
|
+
constructor(factory: PoolInstanceFactory<T>, disposer: PoolInstanceDisposer<T>, logger: Logger, options?: PoolOptions);
|
|
32
|
+
get(): Promise<T>;
|
|
33
|
+
release(instance: T): Promise<void>;
|
|
34
|
+
/**
|
|
35
|
+
* Get an instance from the pool and use it
|
|
36
|
+
* @param handler consumer of instance
|
|
37
|
+
* @returns instance
|
|
38
|
+
*/
|
|
39
|
+
use<R>(handler: (instance: T) => R | Promise<R>, options?: PoolUseOptions): Promise<R>;
|
|
40
|
+
disposeInstance(instance: T): Promise<void>;
|
|
26
41
|
dispose(): Promise<void>;
|
|
27
42
|
[disposeAsync](): Promise<void>;
|
|
28
|
-
use<R>(handler: (instance: T) => R | Promise<R>): Promise<R>;
|
|
29
43
|
}
|
package/pool/pool.js
CHANGED
|
@@ -4,82 +4,115 @@ exports.Pool = void 0;
|
|
|
4
4
|
const data_structures_1 = require("../data-structures");
|
|
5
5
|
const set_1 = require("../data-structures/set");
|
|
6
6
|
const disposable_1 = require("../disposable/disposable");
|
|
7
|
+
const type_guards_1 = require("../utils/type-guards");
|
|
7
8
|
const os_1 = require("os");
|
|
8
|
-
const rxjs_1 = require("rxjs");
|
|
9
|
-
const placeholder = Symbol('pool placeholder');
|
|
10
9
|
class Pool {
|
|
11
|
-
constructor(factory, disposer, options) {
|
|
10
|
+
constructor(factory, disposer, logger, options) {
|
|
12
11
|
this.size = options?.size ?? (0, os_1.cpus)().length;
|
|
13
|
-
this.disposeOnError = options?.disposeOnError ?? true;
|
|
14
12
|
this.factory = factory;
|
|
15
13
|
this.disposer = disposer;
|
|
14
|
+
this.logger = logger;
|
|
16
15
|
this.freeInstances = new data_structures_1.ArrayList();
|
|
17
16
|
this.usedInstances = new set_1.Set();
|
|
17
|
+
this.placeholderInstances = 0;
|
|
18
18
|
this.disposed = false;
|
|
19
19
|
}
|
|
20
20
|
get length() {
|
|
21
|
-
return this.freeInstances.size + this.usedInstances.size;
|
|
21
|
+
return this.freeInstances.size + this.usedInstances.size + this.placeholderInstances;
|
|
22
22
|
}
|
|
23
|
-
async
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
async [disposable_1.disposeAsync]() {
|
|
27
|
-
this.disposed = true;
|
|
28
|
-
while (this.freeInstances.size > 0) {
|
|
29
|
-
const instance = this.freeInstances.removeFirst();
|
|
30
|
-
await this.disposer(instance);
|
|
23
|
+
async get() {
|
|
24
|
+
if (this.disposed) {
|
|
25
|
+
throw new Error('Pool was disposed.');
|
|
31
26
|
}
|
|
32
|
-
for (const instance of this.usedInstances) {
|
|
33
|
-
if (instance[placeholder] != true) {
|
|
34
|
-
await this.disposer(instance);
|
|
35
|
-
}
|
|
36
|
-
this.usedInstances.delete(instance);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
// eslint-disable-next-line max-lines-per-function, max-statements
|
|
40
|
-
async use(handler) {
|
|
41
|
-
let instance;
|
|
42
27
|
if (this.freeInstances.hasItems) {
|
|
43
|
-
instance = this.freeInstances.removeFirst();
|
|
28
|
+
const instance = this.freeInstances.removeFirst();
|
|
29
|
+
this.usedInstances.add(instance);
|
|
30
|
+
return instance;
|
|
44
31
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
await (0, rxjs_1.firstValueFrom)((0, rxjs_1.race)(this.freeInstances.change$, this.usedInstances.change$));
|
|
48
|
-
return this.use(handler);
|
|
49
|
-
}
|
|
50
|
-
const tempInstance = { [placeholder]: true };
|
|
51
|
-
this.usedInstances.add(tempInstance);
|
|
32
|
+
if (this.length < this.size) {
|
|
33
|
+
this.placeholderInstances++;
|
|
52
34
|
try {
|
|
53
|
-
|
|
35
|
+
const newInstance = await this.factory();
|
|
54
36
|
if (this.disposed) {
|
|
55
|
-
await this.disposer(
|
|
37
|
+
await this.disposer(newInstance);
|
|
56
38
|
throw new Error('Pool was disposed.');
|
|
57
39
|
}
|
|
40
|
+
this.usedInstances.add(newInstance);
|
|
41
|
+
return newInstance;
|
|
58
42
|
}
|
|
59
43
|
finally {
|
|
60
|
-
this.
|
|
44
|
+
this.placeholderInstances--;
|
|
61
45
|
}
|
|
62
46
|
}
|
|
63
|
-
this.
|
|
47
|
+
while (!this.freeInstances.hasItems) {
|
|
48
|
+
await this.freeInstances.$onItems;
|
|
49
|
+
}
|
|
50
|
+
return this.get();
|
|
51
|
+
}
|
|
52
|
+
async release(instance) {
|
|
53
|
+
if (!this.usedInstances.has(instance)) {
|
|
54
|
+
throw new Error('Instance is not from this pool.');
|
|
55
|
+
}
|
|
56
|
+
this.usedInstances.delete(instance);
|
|
57
|
+
this.freeInstances.add(instance);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Get an instance from the pool and use it
|
|
61
|
+
* @param handler consumer of instance
|
|
62
|
+
* @returns instance
|
|
63
|
+
*/
|
|
64
|
+
async use(handler, options = {}) {
|
|
65
|
+
const instance = await this.get();
|
|
64
66
|
try {
|
|
65
67
|
const result = await handler(instance);
|
|
68
|
+
await this.release(instance);
|
|
66
69
|
return result;
|
|
67
70
|
}
|
|
68
71
|
catch (error) {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
await this.
|
|
72
|
+
if (options.disposeOnError == true) {
|
|
73
|
+
try {
|
|
74
|
+
await this.disposeInstance(instance);
|
|
75
|
+
}
|
|
76
|
+
catch (disposeError) {
|
|
77
|
+
this.logger.error(disposeError);
|
|
72
78
|
}
|
|
73
79
|
}
|
|
74
|
-
|
|
75
|
-
this.
|
|
80
|
+
else {
|
|
81
|
+
await this.release(instance);
|
|
76
82
|
}
|
|
77
83
|
throw error;
|
|
78
84
|
}
|
|
79
|
-
|
|
85
|
+
}
|
|
86
|
+
async disposeInstance(instance) {
|
|
87
|
+
let index;
|
|
88
|
+
if (this.usedInstances.has(instance)) {
|
|
89
|
+
this.usedInstances.delete(instance);
|
|
90
|
+
}
|
|
91
|
+
else if ((0, type_guards_1.isDefined)(index = this.freeInstances.indexOf(instance))) {
|
|
92
|
+
this.freeInstances.removeAt(index);
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
throw new Error('Instance is not from this pool.');
|
|
96
|
+
}
|
|
97
|
+
await this.disposer(instance);
|
|
98
|
+
}
|
|
99
|
+
async dispose() {
|
|
100
|
+
return this[disposable_1.disposeAsync]();
|
|
101
|
+
}
|
|
102
|
+
async [disposable_1.disposeAsync]() {
|
|
103
|
+
this.disposed = true;
|
|
104
|
+
if (this.length == 0) {
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
while (this.freeInstances.size > 0) {
|
|
108
|
+
const instance = this.freeInstances.removeFirst();
|
|
109
|
+
await this.disposer(instance);
|
|
110
|
+
}
|
|
111
|
+
for (const instance of this.usedInstances) {
|
|
112
|
+
await this.disposer(instance);
|
|
80
113
|
this.usedInstances.delete(instance);
|
|
81
|
-
this.freeInstances.add(instance);
|
|
82
114
|
}
|
|
115
|
+
await this[disposable_1.disposeAsync]();
|
|
83
116
|
}
|
|
84
117
|
}
|
|
85
118
|
exports.Pool = Pool;
|
package/pool/pool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool.js","sourceRoot":"","sources":["../../source/pool/pool.ts"],"names":[],"mappings":";;;AAAA,wDAA8C;AAC9C,gDAA4C;AAE5C,yDAAuD;
|
|
1
|
+
{"version":3,"file":"pool.js","sourceRoot":"","sources":["../../source/pool/pool.ts"],"names":[],"mappings":"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"}
|
package/rxjs/retry-backoff.js
CHANGED
|
@@ -3,28 +3,27 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.retryBackoffHandled = exports.retryBackoff = void 0;
|
|
4
4
|
const backoff_1 = require("../utils/backoff");
|
|
5
5
|
const rxjs_1 = require("rxjs");
|
|
6
|
-
const operators_1 = require("rxjs/operators");
|
|
7
6
|
function retryBackoff(count, options) {
|
|
8
7
|
const helper = new backoff_1.BackoffHelper(options);
|
|
9
|
-
return (0,
|
|
8
|
+
return (0, rxjs_1.retryWhen)((errors) => errors.pipe((0, rxjs_1.scan)((counter, error) => {
|
|
10
9
|
if (counter == count) {
|
|
11
10
|
throw error;
|
|
12
11
|
}
|
|
13
12
|
return counter + 1;
|
|
14
|
-
}, 0), (0,
|
|
13
|
+
}, 0), (0, rxjs_1.delayWhen)(() => (0, rxjs_1.timer)(helper.backoff()))));
|
|
15
14
|
}
|
|
16
15
|
exports.retryBackoff = retryBackoff;
|
|
17
16
|
function retryBackoffHandled(count, options, handler) {
|
|
18
17
|
return (source) => {
|
|
19
18
|
const helper = new backoff_1.BackoffHelper(options);
|
|
20
19
|
let counter = 0;
|
|
21
|
-
const observable = source.pipe((0,
|
|
20
|
+
const observable = source.pipe((0, rxjs_1.tap)(() => (counter = 0)), (0, rxjs_1.retryWhen)((errors) => errors.pipe((0, rxjs_1.tap)(() => counter++), (0, rxjs_1.delayWhen)((error) => {
|
|
22
21
|
if (counter >= count) {
|
|
23
22
|
const returnValue = handler(error, counter);
|
|
24
23
|
return (returnValue != undefined) ? (0, rxjs_1.from)(returnValue) : (0, rxjs_1.of)(undefined);
|
|
25
24
|
}
|
|
26
25
|
return (0, rxjs_1.of)(undefined);
|
|
27
|
-
}), (0,
|
|
26
|
+
}), (0, rxjs_1.delayWhen)(() => (0, rxjs_1.timer)(helper.backoff())))));
|
|
28
27
|
return observable;
|
|
29
28
|
};
|
|
30
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry-backoff.js","sourceRoot":"","sources":["../../source/rxjs/retry-backoff.ts"],"names":[],"mappings":";;;AACA,8CAAgD;AAEhD,+
|
|
1
|
+
{"version":3,"file":"retry-backoff.js","sourceRoot":"","sources":["../../source/rxjs/retry-backoff.ts"],"names":[],"mappings":";;;AACA,8CAAgD;AAEhD,+BAAwE;AAExE,SAAgB,YAAY,CAAI,KAAa,EAAE,OAAuB;IACpE,MAAM,MAAM,GAAG,IAAI,uBAAa,CAAC,OAAO,CAAC,CAAC;IAE1C,OAAO,IAAA,gBAAS,EAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CACzC,IAAA,WAAI,EAAC,CAAC,OAAO,EAAE,KAAY,EAAE,EAAE;QAC7B,IAAI,OAAO,IAAI,KAAK,EAAE;YACpB,MAAM,KAAK,CAAC;SACb;QAED,OAAO,OAAO,GAAG,CAAC,CAAC;IACrB,CAAC,EAAE,CAAC,CAAC,EACL,IAAA,gBAAS,EAAC,GAAG,EAAE,CAAC,IAAA,YAAK,EAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CACzC,CAAC,CAAC;AACL,CAAC;AAbD,oCAaC;AAED,SAAgB,mBAAmB,CAAI,KAAa,EAAE,OAAuB,EAAE,OAAkF;IAC/J,OAAO,CAAC,MAAqB,EAAE,EAAE;QAC/B,MAAM,MAAM,GAAG,IAAI,uBAAa,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,OAAO,GAAG,CAAC,CAAC;QAEhB,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAC5B,IAAA,UAAG,EAAC,GAAG,EAAE,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EACxB,IAAA,gBAAS,EAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAClC,IAAA,UAAG,EAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,EACpB,IAAA,gBAAS,EAAC,CAAC,KAAK,EAAE,EAAE;YAClB,IAAI,OAAO,IAAI,KAAK,EAAE;gBACpB,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC5C,OAAO,CAAC,WAAW,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,IAAA,WAAI,EAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAA,SAAE,EAAC,SAAS,CAAC,CAAC;aACvE;YAED,OAAO,IAAA,SAAE,EAAC,SAAS,CAAC,CAAC;QACvB,CAAC,CAAC,EACF,IAAA,gBAAS,EAAC,GAAG,EAAE,CAAC,IAAA,YAAK,EAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CACzC,CAAC,CACH,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAvBD,kDAuBC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import type { AsyncDisposable } from "../disposable";
|
|
3
3
|
import { disposeAsync } from "../disposable";
|
|
4
|
+
import type { Logger } from "../logger";
|
|
4
5
|
import type * as NodeWorkerThreads from 'worker_threads';
|
|
5
6
|
import type { ThreadWorker } from './thread-worker';
|
|
6
7
|
export declare type ThreadOptions = (WorkerOptions | NodeWorkerThreads.WorkerOptions) & {
|
|
@@ -10,7 +11,7 @@ export declare class ThreadPool implements AsyncDisposable {
|
|
|
10
11
|
private readonly pool;
|
|
11
12
|
readonly url: string | URL;
|
|
12
13
|
readonly options: ThreadOptions | undefined;
|
|
13
|
-
constructor(url: string | URL, options?: ThreadOptions);
|
|
14
|
+
constructor(url: string | URL, logger: Logger, options?: ThreadOptions);
|
|
14
15
|
dispose(): Promise<void>;
|
|
15
16
|
[disposeAsync](): Promise<void>;
|
|
16
17
|
getProcessor<T extends ThreadWorker>(name?: string): (...args: Parameters<T>) => Promise<ReturnType<T>>;
|
package/threading/thread-pool.js
CHANGED
|
@@ -15,10 +15,10 @@ else {
|
|
|
15
15
|
spawnWorker = (url, options) => new Worker(url, options);
|
|
16
16
|
}
|
|
17
17
|
class ThreadPool {
|
|
18
|
-
constructor(url, options) {
|
|
18
|
+
constructor(url, logger, options) {
|
|
19
19
|
this.url = url;
|
|
20
20
|
this.options = options;
|
|
21
|
-
this.pool = new pool_1.Pool(() => this.spawn(), ({ worker }) => worker.terminate(), { size: options?.threadCount
|
|
21
|
+
this.pool = new pool_1.Pool(() => this.spawn(), ({ worker }) => worker.terminate(), logger, { size: options?.threadCount });
|
|
22
22
|
}
|
|
23
23
|
async dispose() {
|
|
24
24
|
return this[disposable_1.disposeAsync]();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thread-pool.js","sourceRoot":"","sources":["../../source/threading/thread-pool.ts"],"names":[],"mappings":";;;AACA,8CAA4C;AAC5C,gDAAuC;
|
|
1
|
+
{"version":3,"file":"thread-pool.js","sourceRoot":"","sources":["../../source/threading/thread-pool.ts"],"names":[],"mappings":";;;AACA,8CAA4C;AAC5C,gDAAuC;AAEvC,kCAA8B;AAC9B,wCAA2C;AAE3C,gCAA4B;AAe5B,IAAI,WAAkE,CAAC;AAEvE,IAAI,oBAAM,EAAE;IACV,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAA,wBAAc,EAA2B,gBAAgB,CAAC,CAAC;IAC1F,WAAW,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,UAAU,CAAC,GAAG,EAAE,OAA0C,CAAC,CAAC;CACjG;KACI;IACH,WAAW,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,EAAE,OAAwB,CAAC,CAAC;CAC3E;AAED,MAAa,UAAU;IAMrB,YAAY,GAAiB,EAAE,MAAc,EAAE,OAAuB;QACpE,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAEvB,IAAI,CAAC,IAAI,GAAG,IAAI,WAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;IACvH,CAAC;IAED,KAAK,CAAC,OAAO;QACX,OAAO,IAAI,CAAC,yBAAY,CAAC,EAAE,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,CAAC,yBAAY,CAAC;QAClB,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;IAC5B,CAAC;IAED,YAAY,CAAyB,OAAe,SAAS;QAC3D,MAAM,SAAS,GAAG,KAAK,EAAE,GAAG,IAAmB,EAA0B,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;QACxG,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,OAAO,CAAyB,IAAY,EAAE,GAAG,IAAmB;QACxE,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACnC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAE1C,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,CAAC,CAAC,MAAM,SAAG,CAAC,OAAO,CAAI,KAAK,CAAC,MAAM,EAAE,iBAAiB,IAAI,EAAE,CAAC,CAAC;YAElH,IAAI,CAAC,SAAS,EAAE;gBACd,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;aACjC;YAED,OAAO,MAAM,CAAC,GAAG,IAAI,CAA2B,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK;QACX,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;QAE1B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC7B,CAAC;CACF;AA9CD,gCA8CC"}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.observableAsyncIterable = void 0;
|
|
4
4
|
const rxjs_1 = require("rxjs");
|
|
5
|
-
const operators_1 = require("rxjs/operators");
|
|
6
5
|
const observable_1 = require("../../collections/observable");
|
|
7
6
|
const cancellation_token_1 = require("../cancellation-token");
|
|
8
7
|
async function* observableAsyncIterable(observable) {
|
|
@@ -21,7 +20,7 @@ async function* observableAsyncIterable(observable) {
|
|
|
21
20
|
try {
|
|
22
21
|
while (buffer.length > 0 || !completeToken.isSet) {
|
|
23
22
|
if (buffer.length == 0) {
|
|
24
|
-
await (0, rxjs_1.merge)(buffer.add$, completeToken.set$, errorToken.set$).pipe((0,
|
|
23
|
+
await (0, rxjs_1.merge)(buffer.add$, completeToken.set$, errorToken.set$).pipe((0, rxjs_1.take)(1)).toPromise();
|
|
25
24
|
}
|
|
26
25
|
while (buffer.length > 0) {
|
|
27
26
|
const item = buffer.removeFirst();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observable-iterable.js","sourceRoot":"","sources":["../../../source/utils/async-iterable-helpers/observable-iterable.ts"],"names":[],"mappings":";;;AACA,+
|
|
1
|
+
{"version":3,"file":"observable-iterable.js","sourceRoot":"","sources":["../../../source/utils/async-iterable-helpers/observable-iterable.ts"],"names":[],"mappings":";;;AACA,+BAAmC;AACnC,6DAA+D;AAC/D,8DAA0D;AAEnD,KAAK,SAAS,CAAC,CAAC,uBAAuB,CAAI,UAAyB;IACzE,MAAM,MAAM,GAAG,IAAI,4BAAe,EAAK,CAAC;IACxC,MAAM,aAAa,GAAG,IAAI,sCAAiB,EAAE,CAAC;IAC9C,MAAM,UAAU,GAAG,IAAI,sCAAiB,EAAE,CAAC;IAC3C,IAAI,KAAU,CAAC;IAEf,MAAM,YAAY,GAAG,UAAU,CAAC,SAAS,CAAC;QACxC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;QAClC,QAAQ,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE;QACnC,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE;YAChB,KAAK,GAAG,MAAM,CAAC;YACf,UAAU,CAAC,GAAG,EAAE,CAAC;QACnB,CAAC;KACF,CAAC,CAAC;IAEH,IAAI;QACF,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE;YAChD,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE;gBACtB,MAAM,IAAA,YAAK,EAAC,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAA,WAAI,EAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;aACzF;YAED,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBACxB,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;gBAClC,MAAM,IAAI,CAAC;aACZ;YAED,IAAI,UAAU,CAAC,KAAK,EAAE;gBACpB,MAAM,KAAK,CAAC;aACb;SACF;KACF;YACO;QACN,YAAY,CAAC,WAAW,EAAE,CAAC;KAC5B;AACH,CAAC;AAlCD,0DAkCC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.takeUntilAsync = void 0;
|
|
4
|
-
const compat_1 = require("../../rxjs/compat");
|
|
5
4
|
const rxjs_1 = require("rxjs");
|
|
6
5
|
const is_async_iterable_1 = require("./is-async-iterable");
|
|
7
6
|
function takeUntilAsync(iterable, cancellationToken) {
|
|
@@ -25,10 +24,10 @@ async function* sync(iterable, cancellationToken) {
|
|
|
25
24
|
}
|
|
26
25
|
async function* async(iterable, cancellationToken) {
|
|
27
26
|
const iterator = iterable[Symbol.asyncIterator]();
|
|
28
|
-
const cancel$ = cancellationToken.set$.pipe((0, rxjs_1.
|
|
27
|
+
const cancel$ = cancellationToken.set$.pipe((0, rxjs_1.map)(() => ({ done: true, value: undefined }))); // eslint-disable-line @typescript-eslint/no-unsafe-argument
|
|
29
28
|
try {
|
|
30
29
|
while (true) {
|
|
31
|
-
const result = await (0,
|
|
30
|
+
const result = await (0, rxjs_1.firstValueFrom)((0, rxjs_1.race)([iterator.next(), cancel$]));
|
|
32
31
|
if (result.done == true) {
|
|
33
32
|
return result.value;
|
|
34
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"take-until.js","sourceRoot":"","sources":["../../../source/utils/async-iterable-helpers/take-until.ts"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"take-until.js","sourceRoot":"","sources":["../../../source/utils/async-iterable-helpers/take-until.ts"],"names":[],"mappings":";;;AAAA,+BAAiD;AAGjD,2DAAsD;AAEtD,SAAgB,cAAc,CAAI,QAAwB,EAAE,iBAA4C;IACtG,OAAO,IAAA,mCAAe,EAAC,QAAQ,CAAC;QAC9B,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,iBAAiB,CAAC;QACpC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;AACxC,CAAC;AAJD,wCAIC;AAED,4DAA4D;AAC5D,KAAK,SAAS,CAAC,CAAC,IAAI,CAAI,QAAqB,EAAE,iBAA4C;IACzF,IAAI,iBAAiB,CAAC,KAAK,EAAE;QAC3B,OAAO;KACR;IAED,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE;QAC3B,MAAM,IAAI,CAAC;QAEX,uEAAuE;QACvE,IAAI,iBAAiB,CAAC,KAAK,EAAE;YAC3B,MAAM;SACP;KACF;AACH,CAAC;AAED,KAAK,SAAS,CAAC,CAAC,KAAK,CAAI,QAA0B,EAAE,iBAA4C;IAC/F,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;IAClD,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAA,UAAG,EAAC,GAAsB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,4DAA4D;IAE3K,IAAI;QACF,OAAO,IAAI,EAAE;YACX,MAAM,MAAM,GAAG,MAAM,IAAA,qBAAc,EAAC,IAAA,WAAI,EAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YAEtE,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,EAAE;gBACvB,OAAO,MAAM,CAAC,KAAkB,CAAC;aAClC;YAED,MAAO,MAA4B,CAAC,KAAK,CAAC;SAC3C;KACF;IACD,OAAO,KAAK,EAAE;QACZ,CAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;KAC9C;YACO;QACN,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;KACrB;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -15,8 +15,8 @@ class CancellationToken {
|
|
|
15
15
|
constructor(initialState = false) {
|
|
16
16
|
this.stateSubject = new rxjs_1.BehaviorSubject(initialState);
|
|
17
17
|
this.state$ = this.stateSubject.pipe((0, rxjs_1.distinctUntilChanged)());
|
|
18
|
-
this.set$ = this.state$.pipe((0, rxjs_1.filter)((state) => state), (0, rxjs_1.
|
|
19
|
-
this.unset$ = this.state$.pipe((0, rxjs_1.filter)((state) => !state), (0, rxjs_1.
|
|
18
|
+
this.set$ = this.state$.pipe((0, rxjs_1.filter)((state) => state), (0, rxjs_1.map)(() => undefined)); // eslint-disable-line @typescript-eslint/no-unsafe-argument
|
|
19
|
+
this.unset$ = this.state$.pipe((0, rxjs_1.filter)((state) => !state), (0, rxjs_1.map)(() => undefined)); // eslint-disable-line @typescript-eslint/no-unsafe-argument
|
|
20
20
|
}
|
|
21
21
|
get isSet() {
|
|
22
22
|
return this.stateSubject.value;
|
|
@@ -62,7 +62,7 @@ class CancellationToken {
|
|
|
62
62
|
* @param complete complete token after resolve
|
|
63
63
|
*/
|
|
64
64
|
static fromPromise(promise, complete = true) {
|
|
65
|
-
const signal$ = (0, rxjs_1.from)(promise).pipe((0, rxjs_1.
|
|
65
|
+
const signal$ = (0, rxjs_1.from)(promise).pipe((0, rxjs_1.map)(() => true));
|
|
66
66
|
return CancellationToken.fromObservable(signal$, { complete });
|
|
67
67
|
}
|
|
68
68
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cancellation-token.js","sourceRoot":"","sources":["../../source/utils/cancellation-token.ts"],"names":[],"mappings":";;;AAAA,uCAA2C;AAE3C,+
|
|
1
|
+
{"version":3,"file":"cancellation-token.js","sourceRoot":"","sources":["../../source/utils/cancellation-token.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.FeedableAsyncIterable = void 0;
|
|
4
4
|
const circular_buffer_1 = require("../data-structures/circular-buffer");
|
|
5
|
-
const compat_1 = require("../rxjs/compat");
|
|
6
5
|
const rxjs_1 = require("rxjs");
|
|
7
6
|
const cancellation_token_1 = require("./cancellation-token");
|
|
8
7
|
class FeedableAsyncIterable {
|
|
@@ -12,7 +11,7 @@ class FeedableAsyncIterable {
|
|
|
12
11
|
this.buffer = new circular_buffer_1.CircularBuffer();
|
|
13
12
|
}
|
|
14
13
|
get $read() {
|
|
15
|
-
return (0,
|
|
14
|
+
return (0, rxjs_1.firstValueFrom)(this.readSubject);
|
|
16
15
|
}
|
|
17
16
|
get $empty() {
|
|
18
17
|
return this.buffer.$onEmpty;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feedable-async-iterable.js","sourceRoot":"","sources":["../../source/utils/feedable-async-iterable.ts"],"names":[],"mappings":";;;AAAA,wEAAmE;AACnE
|
|
1
|
+
{"version":3,"file":"feedable-async-iterable.js","sourceRoot":"","sources":["../../source/utils/feedable-async-iterable.ts"],"names":[],"mappings":";;;AAAA,wEAAmE;AACnE,+BAA+C;AAC/C,6DAAyD;AAEzD,MAAa,qBAAqB;IAqBhC;QACE,IAAI,CAAC,WAAW,GAAG,IAAI,cAAO,EAAE,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,IAAI,sCAAiB,EAAE,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,gCAAc,EAAE,CAAC;IACrC,CAAC;IApBD,IAAI,KAAK;QACP,OAAO,IAAA,qBAAc,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;IAChC,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IAC1B,CAAC;IAQD,IAAI,CAAC,IAAO;QACV,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;SAC/C;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,GAAG;QACD,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,KAAY;QAChB,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;SAC/C;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC;IAED,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAElE,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,EAAE;YAClC,IAAI,KAAK,CAAC,KAAK,IAAI,SAAS,EAAE;gBAC5B,MAAM,KAAK,CAAC,KAAK,CAAC;aACnB;YAED,MAAM,KAAK,CAAC,IAAI,CAAC;YACjB,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;SACzB;IACH,CAAC;CACF;AA5DD,sDA4DC"}
|
package/utils/image.js
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.compressImage = exports.canEncodeImageFormat = exports.canDecodeImage = exports.canDecodeAvif = exports.canDecodeWebp = void 0;
|
|
4
4
|
const assertion_error_1 = require("../error/assertion.error");
|
|
5
|
-
const compat_1 = require("../rxjs/compat");
|
|
6
5
|
const rxjs_1 = require("rxjs");
|
|
7
6
|
const factory_map_1 = require("./factory-map");
|
|
8
7
|
const type_guards_1 = require("./type-guards");
|
|
@@ -33,9 +32,9 @@ async function _canDecodeImage(dataUrl) {
|
|
|
33
32
|
return createImageBitmap(blob).then(() => true).catch(() => false);
|
|
34
33
|
}
|
|
35
34
|
const image = new Image();
|
|
36
|
-
const canPromise = (0,
|
|
37
|
-
(0, rxjs_1.fromEvent)(image, 'load').pipe((0, rxjs_1.
|
|
38
|
-
(0, rxjs_1.fromEvent)(image, 'error').pipe((0, rxjs_1.
|
|
35
|
+
const canPromise = (0, rxjs_1.firstValueFrom)((0, rxjs_1.race)([
|
|
36
|
+
(0, rxjs_1.fromEvent)(image, 'load').pipe((0, rxjs_1.map)(() => true)),
|
|
37
|
+
(0, rxjs_1.fromEvent)(image, 'error').pipe((0, rxjs_1.map)(() => false))
|
|
39
38
|
]));
|
|
40
39
|
image.src = dataUrl;
|
|
41
40
|
return canPromise;
|
|
@@ -48,8 +47,8 @@ async function compressImage(sourceImage, width, height, mimeType, quality) {
|
|
|
48
47
|
const objectUrl = URL.createObjectURL(sourceImage);
|
|
49
48
|
try {
|
|
50
49
|
const image = new Image();
|
|
51
|
-
const imagePromise = (0,
|
|
52
|
-
(0, rxjs_1.fromEvent)(image, 'load').pipe((0, rxjs_1.
|
|
50
|
+
const imagePromise = (0, rxjs_1.firstValueFrom)((0, rxjs_1.race)([
|
|
51
|
+
(0, rxjs_1.fromEvent)(image, 'load').pipe((0, rxjs_1.map)(() => undefined)),
|
|
53
52
|
(0, rxjs_1.fromEvent)(image, 'error').pipe((0, rxjs_1.switchMap)((event) => (0, rxjs_1.throwError)(() => event.error ?? new Error(event.message))))
|
|
54
53
|
]));
|
|
55
54
|
image.src = objectUrl;
|
package/utils/image.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image.js","sourceRoot":"","sources":["../../source/utils/image.ts"],"names":[],"mappings":";;;AAAA,8DAAyD;AACzD
|
|
1
|
+
{"version":3,"file":"image.js","sourceRoot":"","sources":["../../source/utils/image.ts"],"names":[],"mappings":"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"}
|
package/utils/patch-worker.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PatchWorker = void 0;
|
|
4
|
-
const compat_1 = require("../rxjs/compat");
|
|
5
4
|
const rxjs_1 = require("rxjs");
|
|
6
5
|
const cancellation_token_1 = require("./cancellation-token");
|
|
7
6
|
const timing_1 = require("./timing");
|
|
@@ -55,7 +54,7 @@ class PatchWorker {
|
|
|
55
54
|
const handle$ = (0, rxjs_1.merge)(debounce$, this.handleSubject).pipe((0, rxjs_1.takeUntil)(this.completeToken), (0, rxjs_1.defaultIfEmpty)(undefined));
|
|
56
55
|
let patch;
|
|
57
56
|
while (this.completeToken.isUnset || (0, type_guards_1.isDefined)(patch) || (0, type_guards_1.isDefined)(this.patch)) {
|
|
58
|
-
await (0,
|
|
57
|
+
await (0, rxjs_1.firstValueFrom)(handle$);
|
|
59
58
|
if ((0, type_guards_1.isUndefined)(patch) && (0, type_guards_1.isUndefined)(this.patch)) {
|
|
60
59
|
continue;
|
|
61
60
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"patch-worker.js","sourceRoot":"","sources":["../../source/utils/patch-worker.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"patch-worker.js","sourceRoot":"","sources":["../../source/utils/patch-worker.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PeriodicSampler = exports.AggregationMode = void 0;
|
|
4
4
|
const rxjs_1 = require("rxjs");
|
|
5
|
-
const
|
|
5
|
+
const rxjs_2 = require("rxjs");
|
|
6
6
|
const comparison_1 = require("./comparison");
|
|
7
7
|
const math_1 = require("./math");
|
|
8
8
|
const timing_1 = require("./timing");
|
|
@@ -34,7 +34,7 @@ class PeriodicSampler {
|
|
|
34
34
|
await this.stopped;
|
|
35
35
|
}
|
|
36
36
|
watch(threshold = 0, samples = 1, aggregation = AggregationMode.Maximum) {
|
|
37
|
-
const observable = this.subject.pipe((0,
|
|
37
|
+
const observable = this.subject.pipe((0, rxjs_2.bufferCount)(samples), (0, rxjs_2.map)((measures) => aggregate(aggregation, measures)), (0, rxjs_2.filter)((ms) => ms >= threshold));
|
|
38
38
|
return observable;
|
|
39
39
|
}
|
|
40
40
|
async runSampleLoop() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"periodic-sampler.js","sourceRoot":"","sources":["../../source/utils/periodic-sampler.ts"],"names":[],"mappings":";;;AACA,+BAA+B;AAC/B
|
|
1
|
+
{"version":3,"file":"periodic-sampler.js","sourceRoot":"","sources":["../../source/utils/periodic-sampler.ts"],"names":[],"mappings":"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"}
|