@tstdl/base 0.82.28 → 0.82.29
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/authentication/client/authentication.service.d.ts +7 -3
- package/authentication/client/authentication.service.js +31 -15
- package/authentication/client/authentication.service.js.map +1 -1
- package/distributed-loop/distributed-loop.js +1 -1
- package/distributed-loop/distributed-loop.js.map +1 -1
- package/lock/lock.d.ts +2 -2
- package/lock/mongo/lock.d.ts +1 -1
- package/lock/mongo/lock.js +2 -2
- package/lock/mongo/lock.js.map +1 -1
- package/lock/mongo/provider.js +1 -1
- package/lock/mongo/provider.js.map +1 -1
- package/lock/web/index.d.ts +3 -0
- package/lock/web/index.js +20 -0
- package/lock/web/index.js.map +1 -0
- package/lock/web/module.d.ts +4 -0
- package/lock/web/module.js +17 -0
- package/lock/web/module.js.map +1 -0
- package/lock/web/web-lock.d.ts +8 -0
- package/lock/web/web-lock.js +84 -0
- package/lock/web/web-lock.js.map +1 -0
- package/lock/web/web-lock.provider.d.ts +8 -0
- package/lock/web/web-lock.provider.js +39 -0
- package/lock/web/web-lock.provider.js.map +1 -0
- package/message-bus/message-bus.d.ts +1 -1
- package/message-bus/message-bus.js.map +1 -1
- package/migration/migrator.js +1 -1
- package/migration/migrator.js.map +1 -1
- package/package.json +1 -1
- package/queue/mongo/queue.js +1 -1
- package/queue/mongo/queue.js.map +1 -1
|
@@ -3,6 +3,7 @@ import type { AfterResolve } from "../../container";
|
|
|
3
3
|
import { afterResolve } from "../../container";
|
|
4
4
|
import type { AsyncDisposable } from "../../disposable";
|
|
5
5
|
import { disposeAsync } from "../../disposable";
|
|
6
|
+
import { Lock } from "../../lock";
|
|
6
7
|
import { Logger } from "../../logger";
|
|
7
8
|
import { MessageBus } from "../../message-bus";
|
|
8
9
|
import type { Record } from "../../types";
|
|
@@ -14,6 +15,8 @@ export declare class AuthenticationService<AdditionalTokenPayload = Record<never
|
|
|
14
15
|
private readonly errorSubject;
|
|
15
16
|
private readonly tokenSubject;
|
|
16
17
|
private readonly tokenUpdateBus;
|
|
18
|
+
private readonly loggedOutBus;
|
|
19
|
+
private readonly refreshLock;
|
|
17
20
|
private readonly logger;
|
|
18
21
|
private readonly disposeToken;
|
|
19
22
|
private authenticationData;
|
|
@@ -24,15 +27,16 @@ export declare class AuthenticationService<AdditionalTokenPayload = Record<never
|
|
|
24
27
|
readonly definedSubject$: Observable<string>;
|
|
25
28
|
readonly sessionId$: Observable<string | undefined>;
|
|
26
29
|
readonly definedSessionId$: Observable<string>;
|
|
27
|
-
readonly
|
|
28
|
-
|
|
30
|
+
readonly isLoggedIn$: Observable<boolean>;
|
|
31
|
+
readonly loggedOut$: Observable<void>;
|
|
32
|
+
get isLoggedIn(): boolean;
|
|
29
33
|
get token(): TokenPayload<AdditionalTokenPayload> | undefined;
|
|
30
34
|
get definedToken(): TokenPayload<AdditionalTokenPayload>;
|
|
31
35
|
get subject(): string | undefined;
|
|
32
36
|
get definedSubject(): string;
|
|
33
37
|
get sessionId(): string | undefined;
|
|
34
38
|
get definedSessionId(): string;
|
|
35
|
-
constructor(client: InstanceType<ApiClient<AuthenticationApiDefinition<TokenPayload<AdditionalTokenPayload>, AuthenticationData>>>, tokenUpdateBus: MessageBus<TokenPayload<AdditionalTokenPayload> | undefined>, initialAuthenticationData: AuthenticationData | undefined, logger: Logger);
|
|
39
|
+
constructor(client: InstanceType<ApiClient<AuthenticationApiDefinition<TokenPayload<AdditionalTokenPayload>, AuthenticationData>>>, tokenUpdateBus: MessageBus<TokenPayload<AdditionalTokenPayload> | undefined>, loggedOutBus: MessageBus<void>, refreshLock: Lock, initialAuthenticationData: AuthenticationData | undefined, logger: Logger);
|
|
36
40
|
[afterResolve](): void;
|
|
37
41
|
initialize(): void;
|
|
38
42
|
[disposeAsync](): Promise<void>;
|
|
@@ -17,6 +17,7 @@ const container_1 = require("../../container");
|
|
|
17
17
|
const core_1 = require("../../core");
|
|
18
18
|
const disposable_1 = require("../../disposable");
|
|
19
19
|
const invalid_token_error_1 = require("../../error/invalid-token.error");
|
|
20
|
+
const lock_1 = require("../../lock");
|
|
20
21
|
const logger_1 = require("../../logger");
|
|
21
22
|
const message_bus_1 = require("../../message-bus");
|
|
22
23
|
const cancellation_token_1 = require("../../utils/cancellation-token");
|
|
@@ -27,11 +28,15 @@ const rxjs_1 = require("rxjs");
|
|
|
27
28
|
const tokens_1 = require("./tokens");
|
|
28
29
|
const tokenStorageKey = 'AuthenticationService:token';
|
|
29
30
|
const tokenUpdateBusName = 'AuthenticationService:tokenUpdate';
|
|
31
|
+
const loggedOutBusName = 'AuthenticationService:loggedOut';
|
|
32
|
+
const refreshLockResource = 'AuthenticationService:refresh';
|
|
30
33
|
let AuthenticationService = class AuthenticationService {
|
|
31
34
|
client;
|
|
32
35
|
errorSubject;
|
|
33
36
|
tokenSubject;
|
|
34
37
|
tokenUpdateBus;
|
|
38
|
+
loggedOutBus;
|
|
39
|
+
refreshLock;
|
|
35
40
|
logger;
|
|
36
41
|
disposeToken;
|
|
37
42
|
authenticationData;
|
|
@@ -42,8 +47,9 @@ let AuthenticationService = class AuthenticationService {
|
|
|
42
47
|
definedSubject$;
|
|
43
48
|
sessionId$;
|
|
44
49
|
definedSessionId$;
|
|
45
|
-
|
|
46
|
-
|
|
50
|
+
isLoggedIn$;
|
|
51
|
+
loggedOut$;
|
|
52
|
+
get isLoggedIn() {
|
|
47
53
|
return (0, type_guards_1.isDefined)(this.tokenSubject.value);
|
|
48
54
|
}
|
|
49
55
|
get token() {
|
|
@@ -64,9 +70,11 @@ let AuthenticationService = class AuthenticationService {
|
|
|
64
70
|
get definedSessionId() {
|
|
65
71
|
return this.definedToken.sessionId;
|
|
66
72
|
}
|
|
67
|
-
constructor(client, tokenUpdateBus, initialAuthenticationData, logger) {
|
|
73
|
+
constructor(client, tokenUpdateBus, loggedOutBus, refreshLock, initialAuthenticationData, logger) {
|
|
68
74
|
this.client = client;
|
|
69
75
|
this.tokenUpdateBus = tokenUpdateBus;
|
|
76
|
+
this.loggedOutBus = loggedOutBus;
|
|
77
|
+
this.refreshLock = refreshLock;
|
|
70
78
|
this.authenticationData = initialAuthenticationData;
|
|
71
79
|
this.logger = logger;
|
|
72
80
|
this.disposeToken = new cancellation_token_1.CancellationToken();
|
|
@@ -79,7 +87,8 @@ let AuthenticationService = class AuthenticationService {
|
|
|
79
87
|
this.definedSubject$ = this.subject$.pipe((0, rxjs_1.filter)(type_guards_1.isDefined));
|
|
80
88
|
this.sessionId$ = this.token$.pipe((0, rxjs_1.map)((token) => token?.sessionId), (0, rxjs_1.distinctUntilChanged)());
|
|
81
89
|
this.definedSessionId$ = this.sessionId$.pipe((0, rxjs_1.filter)(type_guards_1.isDefined));
|
|
82
|
-
this.
|
|
90
|
+
this.isLoggedIn$ = this.token$.pipe((0, rxjs_1.map)(type_guards_1.isDefined), (0, rxjs_1.distinctUntilChanged)());
|
|
91
|
+
this.loggedOut$ = loggedOutBus.allMessages$;
|
|
83
92
|
}
|
|
84
93
|
[container_1.afterResolve]() {
|
|
85
94
|
this.initialize();
|
|
@@ -115,6 +124,7 @@ let AuthenticationService = class AuthenticationService {
|
|
|
115
124
|
}
|
|
116
125
|
finally {
|
|
117
126
|
this.setNewToken(undefined);
|
|
127
|
+
this.loggedOutBus.publishAndForget();
|
|
118
128
|
}
|
|
119
129
|
}
|
|
120
130
|
async refresh(data) {
|
|
@@ -160,13 +170,15 @@ let AuthenticationService = class AuthenticationService {
|
|
|
160
170
|
async refreshLoop() {
|
|
161
171
|
while (this.disposeToken.isUnset) {
|
|
162
172
|
try {
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
173
|
+
await this.refreshLock.use(0, false, async () => {
|
|
174
|
+
const token = await (0, rxjs_1.firstValueFrom)((0, rxjs_1.race)([this.definedToken$, this.disposeToken]));
|
|
175
|
+
if ((0, type_guards_1.isUndefined)(token)) {
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
if ((0, date_time_1.currentTimestampSeconds)() >= (token.exp - 60)) {
|
|
179
|
+
await this.refresh();
|
|
180
|
+
}
|
|
181
|
+
});
|
|
170
182
|
await (0, timing_1.cancelableTimeout)(2500, this.disposeToken);
|
|
171
183
|
}
|
|
172
184
|
catch {
|
|
@@ -186,10 +198,14 @@ AuthenticationService = __decorate([
|
|
|
186
198
|
(0, container_1.singleton)(),
|
|
187
199
|
__param(0, (0, container_1.inject)(tokens_1.AUTHENTICATION_API_CLIENT)),
|
|
188
200
|
__param(1, (0, container_1.resolveArg)(tokenUpdateBusName)),
|
|
189
|
-
__param(2, (0, container_1.
|
|
190
|
-
__param(
|
|
191
|
-
__param(
|
|
192
|
-
|
|
201
|
+
__param(2, (0, container_1.resolveArg)(loggedOutBusName)),
|
|
202
|
+
__param(3, (0, container_1.resolveArg)(refreshLockResource)),
|
|
203
|
+
__param(4, (0, container_1.inject)(tokens_1.INITIAL_AUTHENTICATION_DATA)),
|
|
204
|
+
__param(4, (0, container_1.optional)()),
|
|
205
|
+
__param(5, (0, container_1.resolveArg)('AuthenticationService')),
|
|
206
|
+
__metadata("design:paramtypes", [void 0, message_bus_1.MessageBus,
|
|
207
|
+
message_bus_1.MessageBus,
|
|
208
|
+
lock_1.Lock, Object, logger_1.Logger])
|
|
193
209
|
], AuthenticationService);
|
|
194
210
|
exports.AuthenticationService = AuthenticationService;
|
|
195
211
|
//# sourceMappingURL=authentication.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authentication.service.js","sourceRoot":"","sources":["../../../source/authentication/client/authentication.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAEA,+CAAoF;AACpF,qCAAkC;AAElC,iDAA4C;AAC5C,yEAAgE;AAEhE,yCAAkC;AAElC,mDAA2C;AAE3C,uEAA+D;AAC/D,qDAA4D;AAC5D,+CAAmD;AACnD,yDAA6G;AAE7G,+BAAyG;AAGzG,qCAAkF;AAElF,MAAM,eAAe,GAAG,6BAA6B,CAAC;AACtD,MAAM,kBAAkB,GAAG,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"authentication.service.js","sourceRoot":"","sources":["../../../source/authentication/client/authentication.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAEA,+CAAoF;AACpF,qCAAkC;AAElC,iDAA4C;AAC5C,yEAAgE;AAEhE,qCAA8B;AAE9B,yCAAkC;AAElC,mDAA2C;AAE3C,uEAA+D;AAC/D,qDAA4D;AAC5D,+CAAmD;AACnD,yDAA6G;AAE7G,+BAAyG;AAGzG,qCAAkF;AAElF,MAAM,eAAe,GAAG,6BAA6B,CAAC;AACtD,MAAM,kBAAkB,GAAG,mCAAmC,CAAC;AAC/D,MAAM,gBAAgB,GAAG,iCAAiC,CAAC;AAC3D,MAAM,mBAAmB,GAAG,+BAA+B,CAAC;AAGrD,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IACf,MAAM,CAAkG;IACxG,YAAY,CAAiB;IAC7B,YAAY,CAAoE;IAChF,cAAc,CAA+D;IAC7E,YAAY,CAAmB;IAC/B,WAAW,CAAO;IAClB,MAAM,CAAS;IACf,YAAY,CAAoB;IAEzC,kBAAkB,CAAiC;IAElD,MAAM,CAAoB;IAE1B,MAAM,CAA+D;IACrE,aAAa,CAAmD;IAEhE,QAAQ,CAAiC;IACzC,eAAe,CAAqB;IAEpC,UAAU,CAAiC;IAC3C,iBAAiB,CAAqB;IAEtC,WAAW,CAAsB;IACjC,UAAU,CAAmB;IAEtC,IAAI,UAAU;QACZ,OAAO,IAAA,uBAAS,EAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;IACjC,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAA,+BAAiB,EAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,qBAAqB,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC;IAC7B,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;IACnC,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC;IAC/B,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC;IACrC,CAAC;IAED,YACqC,MAAsH,EACrG,cAA4E,EAC9E,YAA8B,EACjC,WAAiB,EACf,yBAAyD,EACrD,MAAc;QAEnE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,kBAAkB,GAAG,yBAAyB,CAAC;QACpD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,YAAY,GAAG,IAAI,sCAAiB,EAAE,CAAC;QAC5C,IAAI,CAAC,YAAY,GAAG,IAAI,cAAO,EAAE,CAAC;QAClC,IAAI,CAAC,YAAY,GAAG,IAAI,sBAAe,CAAmD,SAAS,CAAC,CAAC;QAErG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAC/C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAC/C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAA,aAAM,EAAC,uBAAS,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAA,UAAG,EAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,IAAA,2BAAoB,GAAE,CAAC,CAAC;QACzF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAA,aAAM,EAAC,uBAAS,CAAC,CAAC,CAAC;QAC7D,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAA,UAAG,EAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,IAAA,2BAAoB,GAAE,CAAC,CAAC;QAC7F,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAA,aAAM,EAAC,uBAAS,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAA,UAAG,EAAC,uBAAS,CAAC,EAAE,IAAA,2BAAoB,GAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,YAAY,CAAC;IAC9C,CAAC;IAED,CAAC,wBAAY,CAAC;QACZ,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,eAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,UAAU;QACR,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAElF,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,CAAC,yBAAY,CAAC;QAClB,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC7B,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;IACtC,CAAC;IAED,iBAAiB,CAAC,IAAwB;QACxC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,OAAe,EAAE,MAAc,EAAE,IAAyB;QACpE,IAAI,IAAA,uBAAS,EAAC,IAAI,CAAC,EAAE;YACnB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;SAC9B;QAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;QAC1F,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI;YACF,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;SAChC;gBACO;YACN,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YAC5B,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,CAAC;SACtC;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAyB;QACrC,IAAI,IAAA,uBAAS,EAAC,IAAI,CAAC,EAAE;YACnB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;SAC9B;QAED,IAAI;YACF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;YAC3E,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;SACzB;QACD,OAAO,KAAK,EAAE;YACZ,MAAM,IAAI,CAAC,WAAW,CAAC,KAAc,CAAC,CAAC;YACvC,MAAM,KAAK,CAAC;SACb;IACH,CAAC;IAEO,SAAS,CAAC,KAAuD;QACvE,IAAI,IAAA,yBAAW,EAAC,UAAU,CAAC,YAAY,CAAC,EAAE;YACxC,OAAO;SACR;QAED,IAAI,IAAA,+BAAiB,EAAC,KAAK,CAAC,EAAE;YAC5B,YAAY,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;SAC1C;aACI;YACH,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACzC,YAAY,CAAC,OAAO,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;SACnD;IACH,CAAC;IAEO,SAAS;QACf,IAAI,IAAA,yBAAW,EAAC,UAAU,CAAC,YAAY,CAAC,EAAE;YACxC,OAAO;SACR;QAED,MAAM,uBAAuB,GAAG,YAAY,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAEtE,MAAM,KAAK,GAAG,IAAA,sBAAQ,EAAC,uBAAuB,CAAC;YAC7C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAyC;YAC7E,CAAC,CAAC,SAAS,CAAC;QAEd,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAEO,WAAW,CAAC,KAAuD;QACzE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACtB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAEO,KAAK,CAAC,WAAW;QACvB,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE;YAChC,IAAI;gBACF,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;oBAC9C,MAAM,KAAK,GAAG,MAAM,IAAA,qBAAc,EAAC,IAAA,WAAI,EAAC,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;oBAElF,IAAI,IAAA,yBAAW,EAAC,KAAK,CAAC,EAAE;wBACtB,OAAO;qBACR;oBAED,IAAI,IAAA,mCAAuB,GAAE,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE;wBACjD,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;qBACtB;gBACH,CAAC,CAAC,CAAC;gBAEH,MAAM,IAAA,0BAAiB,EAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;aAClD;YACD,MAAM;gBACJ,MAAM,IAAA,0BAAiB,EAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;aAClD;SACF;IACH,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,KAAY;QACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE9B,IAAI,KAAK,YAAY,uCAAiB,EAAE;YACtC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;SACrB;IACH,CAAC;CACF,CAAA;AAlNY,qBAAqB;IADjC,IAAA,qBAAS,GAAE;IAwDP,WAAA,IAAA,kBAAM,EAAC,kCAAyB,CAAC,CAAA;IACjC,WAAA,IAAA,sBAAU,EAAqB,kBAAkB,CAAC,CAAA;IAClD,WAAA,IAAA,sBAAU,EAAqB,gBAAgB,CAAC,CAAA;IAChD,WAAA,IAAA,sBAAU,EAAe,mBAAmB,CAAC,CAAA;IAC7C,WAAA,IAAA,kBAAM,EAAC,oCAA2B,CAAC,CAAA;IAAE,WAAA,IAAA,oBAAQ,GAAE,CAAA;IAC/C,WAAA,IAAA,sBAAU,EAAiB,uBAAuB,CAAC,CAAA;6CAJgB,wBAAU;QACd,wBAAU;QACd,WAAI,UAEH,eAAM;GA5D1D,qBAAqB,CAkNjC;AAlNY,sDAAqB"}
|
|
@@ -65,7 +65,7 @@ let DistributedLoop = class DistributedLoop {
|
|
|
65
65
|
// eslint-disable-next-line no-unmodified-loop-condition
|
|
66
66
|
while (!stopToken.isSet) { // eslint-disable-line @typescript-eslint/no-unnecessary-condition
|
|
67
67
|
timer.restart();
|
|
68
|
-
await lock.
|
|
68
|
+
await lock.use(undefined, false, async () => {
|
|
69
69
|
await func(controller);
|
|
70
70
|
const timeLeft = interval - timer.milliseconds;
|
|
71
71
|
const timeoutDuration = timeLeft - (accuracy / 2);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"distributed-loop.js","sourceRoot":"","sources":["../../source/distributed-loop/distributed-loop.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,4CAAyE;AACzE,kCAAsC;AACtC,wCAA4C;AAE5C,oEAA+D;AAC/D,0CAAsC;AACtC,4CAAmD;AAU5C,IAAM,eAAe,GAArB,MAAM,eAAe;IACT,GAAG,CAAS;IACZ,YAAY,CAAe;IAE5C,CAAC,+BAAmB,CAAC,CAAS;IAE9B;;;;;;;;OAQG;IACH,YAAyB,GAAW,EAAE,YAA0B;QAC9D,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACnD,CAAC;IAED;;;;;;;OAOG;IACH,GAAG,CAAC,QAAgB,EAAE,QAAgB,EAAE,IAAkB,EAAE,iBAA6C;QACvG,MAAM,QAAQ,GAAG,IAAI,yBAAe,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,iBAAiB,EAAE,WAAW,EAAE,IAAI,IAAI,sCAAiB,EAAE,CAAC;QAE9E,MAAM,YAAY,GAAG,KAAK,IAAmB,EAAE;YAC7C,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;gBACpB,SAAS,CAAC,GAAG,EAAE,CAAC;aACjB;YAED,MAAM,QAAQ,CAAC;QACjB,CAAC,CAAC;QAEF,MAAM,UAAU,GAAmB;YACjC,IAAI,EAAE,YAAY;YAClB,QAAQ;SACT,CAAC;QAEF,mEAAmE;QACnE,CAAC,KAAK,IAAI,EAAE;YACV,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC7C,MAAM,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;YAE1B,IAAI;gBACF,wDAAwD;gBACxD,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,kEAAkE;oBAC3F,KAAK,CAAC,OAAO,EAAE,CAAC;oBAEhB,MAAM,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"distributed-loop.js","sourceRoot":"","sources":["../../source/distributed-loop/distributed-loop.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,4CAAyE;AACzE,kCAAsC;AACtC,wCAA4C;AAE5C,oEAA+D;AAC/D,0CAAsC;AACtC,4CAAmD;AAU5C,IAAM,eAAe,GAArB,MAAM,eAAe;IACT,GAAG,CAAS;IACZ,YAAY,CAAe;IAE5C,CAAC,+BAAmB,CAAC,CAAS;IAE9B;;;;;;;;OAQG;IACH,YAAyB,GAAW,EAAE,YAA0B;QAC9D,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACnD,CAAC;IAED;;;;;;;OAOG;IACH,GAAG,CAAC,QAAgB,EAAE,QAAgB,EAAE,IAAkB,EAAE,iBAA6C;QACvG,MAAM,QAAQ,GAAG,IAAI,yBAAe,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,iBAAiB,EAAE,WAAW,EAAE,IAAI,IAAI,sCAAiB,EAAE,CAAC;QAE9E,MAAM,YAAY,GAAG,KAAK,IAAmB,EAAE;YAC7C,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;gBACpB,SAAS,CAAC,GAAG,EAAE,CAAC;aACjB;YAED,MAAM,QAAQ,CAAC;QACjB,CAAC,CAAC;QAEF,MAAM,UAAU,GAAmB;YACjC,IAAI,EAAE,YAAY;YAClB,QAAQ;SACT,CAAC;QAEF,mEAAmE;QACnE,CAAC,KAAK,IAAI,EAAE;YACV,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC7C,MAAM,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;YAE1B,IAAI;gBACF,wDAAwD;gBACxD,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,kEAAkE;oBAC3F,KAAK,CAAC,OAAO,EAAE,CAAC;oBAEhB,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;wBAC1C,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC;wBAEvB,MAAM,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC;wBAC/C,MAAM,eAAe,GAAG,QAAQ,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;wBAClD,MAAM,IAAA,0BAAiB,EAAC,eAAe,EAAE,SAAS,CAAC,CAAC;oBACtD,CAAC,CAAC,CAAC;oBAEH,MAAM,IAAA,0BAAiB,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;iBAC9C;aACF;oBACO;gBACN,QAAQ,CAAC,OAAO,EAAE,CAAC;aACpB;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,OAAO,UAAU,CAAC;IACpB,CAAC;CACF,CAAA;AAzEY,eAAe;IAD3B,IAAA,sBAAU,GAAE;IAgBE,WAAA,IAAA,qBAAS,GAAE,CAAA;6CAA4B,mBAAY;GAfrD,eAAe,CAyE3B;AAzEY,0CAAe"}
|
package/lock/lock.d.ts
CHANGED
|
@@ -19,7 +19,7 @@ export interface LockController {
|
|
|
19
19
|
*/
|
|
20
20
|
readonly lost: boolean;
|
|
21
21
|
/** manually release lock */
|
|
22
|
-
release(): Promise<void>;
|
|
22
|
+
release(): void | Promise<void>;
|
|
23
23
|
}
|
|
24
24
|
/** resource */
|
|
25
25
|
export type LockArgument = string | {
|
|
@@ -42,7 +42,7 @@ export declare abstract class Lock implements Injectable<LockArgument> {
|
|
|
42
42
|
* @param throwOnFail throw if resource is locked and we couldn't acquire it in the specified timeout
|
|
43
43
|
* @param func function to run when lock is acquired
|
|
44
44
|
*/
|
|
45
|
-
abstract
|
|
45
|
+
abstract use<Throw extends boolean, R>(timeout: number | undefined, throwOnFail: Throw, func: LockedFunction<R>): Promise<UsingResult<Throw, R>>;
|
|
46
46
|
/** check if resource is locked */
|
|
47
47
|
abstract exists(): Promise<boolean>;
|
|
48
48
|
}
|
package/lock/mongo/lock.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ export declare class MongoLock extends Lock {
|
|
|
7
7
|
private readonly logger;
|
|
8
8
|
constructor(lockRepository: MongoLockRepository, resource: string, logger: Logger);
|
|
9
9
|
acquire<Throw extends boolean>(timeout: number | undefined, throwOnFail: Throw): Promise<AcquireResult<Throw>>;
|
|
10
|
-
|
|
10
|
+
use<Throw extends boolean, R>(timeout: number | undefined, throwOnFail: Throw, func: LockedFunction<R>): Promise<UsingResult<Throw, R>>;
|
|
11
11
|
exists(): Promise<boolean>;
|
|
12
12
|
private tryAcquireOrRefresh;
|
|
13
13
|
private tryRefresh;
|
package/lock/mongo/lock.js
CHANGED
|
@@ -48,7 +48,7 @@ let MongoLock = class MongoLock extends lock_1.Lock {
|
|
|
48
48
|
}
|
|
49
49
|
if (result == false) {
|
|
50
50
|
if (throwOnFail) {
|
|
51
|
-
throw new Error('
|
|
51
|
+
throw new Error('Failed to acquire lock.');
|
|
52
52
|
}
|
|
53
53
|
return false;
|
|
54
54
|
}
|
|
@@ -81,7 +81,7 @@ let MongoLock = class MongoLock extends lock_1.Lock {
|
|
|
81
81
|
})();
|
|
82
82
|
return controller;
|
|
83
83
|
}
|
|
84
|
-
async
|
|
84
|
+
async use(timeout, throwOnFail, func) {
|
|
85
85
|
const controller = await this.acquire(timeout, throwOnFail);
|
|
86
86
|
if (controller == false) {
|
|
87
87
|
return { success: false, result: undefined };
|
package/lock/mongo/lock.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lock.js","sourceRoot":"","sources":["../../../source/lock/mongo/lock.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAAyC;AAEzC,6BAA8B;AAC9B,yCAAkC;AAClC,mDAA4C;AAC5C,uEAA+D;AAC/D,qDAAqD;AACrD,+CAAiD;AACjD,6CAAsC;AACtC,+CAAiF;AACjF,yDAA8E;AAC9E,mEAA8D;AAC9D,yCAA+C;AAE/C,MAAM,cAAc,GAAG,KAAK,CAAC;AAC7B,MAAM,WAAW,GAAG,cAAc,GAAG,CAAC,CAAC;AAchC,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,WAAI;IAChB,cAAc,CAAsB;IACpC,MAAM,CAAS;IAEhC,YAAY,cAAmC,EAAE,QAAgB,EAAE,MAAc;QAC/E,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEhB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,OAAO,CAAwB,OAA2B,EAAE,WAAkB;QAClF,MAAM,GAAG,GAAG,IAAA,wBAAe,EAAC,EAAE,EAAE,mBAAQ,CAAC,qBAAqB,CAAC,CAAC;QAChE,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAE1E,IAAI,MAAM,GAAmB,KAAK,CAAC;QAEnC,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC,IAAI,CAAC,CAAC;QAC9B,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,IAAA,yBAAW,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,OAAO,CAAC,CAAC,EAAE,EAAE,mDAAmD;YACzI,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAE5D,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,IAAA,yBAAW,EAAC,OAAO,CAAC,EAAE;gBAC7C,MAAM;aACP;YAED,IAAI,MAAM,IAAI,KAAK,EAAE;gBACnB,MAAM,IAAA,gBAAY,EAAC,eAAe,CAAC,CAAC;aACrC;SACF;QAED,IAAI,MAAM,IAAI,KAAK,EAAE;YACnB,IAAI,WAAW,EAAE;gBACf,MAAM,IAAI,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"lock.js","sourceRoot":"","sources":["../../../source/lock/mongo/lock.ts"],"names":[],"mappings":"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"}
|
package/lock/mongo/provider.js
CHANGED
|
@@ -40,7 +40,7 @@ let MongoLockProvider = MongoLockProvider_1 = class MongoLockProvider extends lo
|
|
|
40
40
|
}
|
|
41
41
|
};
|
|
42
42
|
MongoLockProvider = MongoLockProvider_1 = __decorate([
|
|
43
|
-
(0, container_1.singleton)(
|
|
43
|
+
(0, container_1.singleton)(),
|
|
44
44
|
__param(0, (0, container_1.resolveArgProvider)(collectionArgumentProvider)),
|
|
45
45
|
__param(1, (0, container_1.resolveArg)('MongoLock')),
|
|
46
46
|
__param(2, (0, container_1.injectArg)()),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../source/lock/mongo/provider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAAmF;AAGnF,6BAAsC;AAEtC,yCAAkC;AAClC,yDAAwD;AACxD,iCAAmC;AAEnC,qCAAiD;AACjD,mEAA8D;AAE9D,MAAM,0BAA0B,GAAG,GAAwC,EAAE,CAAC,IAAA,+BAAiB,EAAC,8BAAqB,CAAC,0BAA0B,EAAE,kCAAkC,CAAC,CAAC;AAG/K,IAAM,iBAAiB,yBAAvB,MAAM,iBAAkB,SAAQ,mBAAY;IAChC,cAAc,CAAsB;IACpC,MAAM,CAAS;IACf,OAAO,CAAS;IAEjC,YAAiG,cAAmC,EAA2C,MAAc,EAAe,SAAiB,EAAE;QAC7N,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,MAAM,CAAC,MAAc;QACnB,OAAO,IAAI,mBAAiB,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;IACxF,CAAC;IAED,GAAG,CAAC,QAAgB;QAClB,OAAO,IAAI,gBAAS,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,OAAO,GAAG,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAClF,CAAC;CACF,CAAA;AApBY,iBAAiB;IAD7B,IAAA,qBAAS,
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../source/lock/mongo/provider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAAmF;AAGnF,6BAAsC;AAEtC,yCAAkC;AAClC,yDAAwD;AACxD,iCAAmC;AAEnC,qCAAiD;AACjD,mEAA8D;AAE9D,MAAM,0BAA0B,GAAG,GAAwC,EAAE,CAAC,IAAA,+BAAiB,EAAC,8BAAqB,CAAC,0BAA0B,EAAE,kCAAkC,CAAC,CAAC;AAG/K,IAAM,iBAAiB,yBAAvB,MAAM,iBAAkB,SAAQ,mBAAY;IAChC,cAAc,CAAsB;IACpC,MAAM,CAAS;IACf,OAAO,CAAS;IAEjC,YAAiG,cAAmC,EAA2C,MAAc,EAAe,SAAiB,EAAE;QAC7N,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,MAAM,CAAC,MAAc;QACnB,OAAO,IAAI,mBAAiB,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;IACxF,CAAC;IAED,GAAG,CAAC,QAAgB;QAClB,OAAO,IAAI,gBAAS,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,OAAO,GAAG,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAClF,CAAC;CACF,CAAA;AApBY,iBAAiB;IAD7B,IAAA,qBAAS,GAAE;IAMG,WAAA,IAAA,8BAAkB,EAAsC,0BAA0B,CAAC,CAAA;IAAuC,WAAA,IAAA,sBAAU,EAAiB,WAAW,CAAC,CAAA;IAAkB,WAAA,IAAA,qBAAS,GAAE,CAAA;qCAA1F,2CAAmB,EAAmD,eAAM;GALlL,iBAAiB,CAoB7B;AApBY,8CAAiB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./module"), exports);
|
|
18
|
+
__exportStar(require("./web-lock"), exports);
|
|
19
|
+
__exportStar(require("./web-lock.provider"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../source/lock/web/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,6CAA2B;AAC3B,sDAAoC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.configureWebLock = void 0;
|
|
4
|
+
const container_1 = require("../../container");
|
|
5
|
+
const lock_1 = require("../lock");
|
|
6
|
+
const provider_1 = require("../provider");
|
|
7
|
+
const web_lock_1 = require("./web-lock");
|
|
8
|
+
const web_lock_provider_1 = require("./web-lock.provider");
|
|
9
|
+
/**
|
|
10
|
+
* Register {@link WebLock} and {@link WebLockProvider} for {@link Lock} and {@link LockProvider} in global container
|
|
11
|
+
*/
|
|
12
|
+
function configureWebLock() {
|
|
13
|
+
container_1.container.registerSingleton(provider_1.LockProvider, { useToken: web_lock_provider_1.WebLockProvider });
|
|
14
|
+
container_1.container.register(lock_1.Lock, { useToken: web_lock_1.WebLock });
|
|
15
|
+
}
|
|
16
|
+
exports.configureWebLock = configureWebLock;
|
|
17
|
+
//# sourceMappingURL=module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../../source/lock/web/module.ts"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,kCAA+B;AAC/B,0CAA2C;AAC3C,yCAAqC;AACrC,2DAAsD;AAEtD;;GAEG;AACH,SAAgB,gBAAgB;IAC9B,qBAAS,CAAC,iBAAiB,CAAC,uBAAY,EAAE,EAAE,QAAQ,EAAE,mCAAe,EAAE,CAAC,CAAC;IACzE,qBAAS,CAAC,QAAQ,CAAC,WAAI,EAAE,EAAE,QAAQ,EAAE,kBAAO,EAAE,CAAC,CAAC;AAClD,CAAC;AAHD,4CAGC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { AcquireResult, LockedFunction, UsingResult } from '../lock';
|
|
2
|
+
import { Lock } from '../lock';
|
|
3
|
+
export declare class WebLock extends Lock {
|
|
4
|
+
constructor(resource: string);
|
|
5
|
+
acquire<Throw extends boolean>(timeout: number | undefined, throwOnFail: Throw): Promise<AcquireResult<Throw>>;
|
|
6
|
+
use<Throw extends boolean, R>(timeout: number | undefined, throwOnFail: Throw, func: LockedFunction<R>): Promise<UsingResult<Throw, R>>;
|
|
7
|
+
exists(): Promise<boolean>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.WebLock = void 0;
|
|
13
|
+
const container_1 = require("../../container");
|
|
14
|
+
const deferred_promise_1 = require("../../promise/deferred-promise");
|
|
15
|
+
const cancellation_token_1 = require("../../utils/cancellation-token");
|
|
16
|
+
const type_guards_1 = require("../../utils/type-guards");
|
|
17
|
+
const rxjs_1 = require("rxjs");
|
|
18
|
+
const lock_1 = require("../lock");
|
|
19
|
+
const web_lock_provider_1 = require("./web-lock.provider");
|
|
20
|
+
let WebLock = class WebLock extends lock_1.Lock {
|
|
21
|
+
constructor(resource) {
|
|
22
|
+
super(resource);
|
|
23
|
+
}
|
|
24
|
+
async acquire(timeout, throwOnFail) {
|
|
25
|
+
const acquirePromise = new deferred_promise_1.DeferredPromise();
|
|
26
|
+
const releasePromise = new deferred_promise_1.DeferredPromise();
|
|
27
|
+
const controller = {
|
|
28
|
+
lost: false,
|
|
29
|
+
release() {
|
|
30
|
+
releasePromise.resolve();
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
const timeoutToken = ((0, type_guards_1.isDefined)(timeout) && (timeout > 0)) ? cancellation_token_1.CancellationToken.fromObservable((0, rxjs_1.timer)(timeout).pipe((0, rxjs_1.map)(() => true))) : undefined;
|
|
34
|
+
void navigator.locks.request(this.resource, {
|
|
35
|
+
signal: (0, type_guards_1.isDefined)(timeoutToken) ? timeoutToken.asAbortSignal : undefined,
|
|
36
|
+
ifAvailable: (0, type_guards_1.isDefined)(timeout) && (timeout <= 0)
|
|
37
|
+
}, async (lock) => {
|
|
38
|
+
if ((0, type_guards_1.isNull)(lock)) {
|
|
39
|
+
throw new Error('Failed to acquire lock.');
|
|
40
|
+
}
|
|
41
|
+
acquirePromise.resolve(controller);
|
|
42
|
+
return releasePromise;
|
|
43
|
+
}).catch((error) => {
|
|
44
|
+
if (throwOnFail) {
|
|
45
|
+
acquirePromise.reject(error);
|
|
46
|
+
}
|
|
47
|
+
acquirePromise.resolve(false);
|
|
48
|
+
});
|
|
49
|
+
return acquirePromise;
|
|
50
|
+
}
|
|
51
|
+
async use(timeout, throwOnFail, func) {
|
|
52
|
+
const controller = await this.acquire(timeout, throwOnFail);
|
|
53
|
+
if (controller == false) {
|
|
54
|
+
return { success: false, result: undefined };
|
|
55
|
+
}
|
|
56
|
+
try {
|
|
57
|
+
const result = await func(controller);
|
|
58
|
+
return { success: true, result };
|
|
59
|
+
}
|
|
60
|
+
finally {
|
|
61
|
+
await controller.release();
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
async exists() {
|
|
65
|
+
const locks = await navigator.locks.query();
|
|
66
|
+
return locks.held?.some((lock) => lock.name == this.resource) ?? false;
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
WebLock = __decorate([
|
|
70
|
+
(0, container_1.injectable)({
|
|
71
|
+
provider: {
|
|
72
|
+
useFactory: async (argument, context) => {
|
|
73
|
+
const arg = argument;
|
|
74
|
+
const prefix = (0, type_guards_1.isObject)(arg) ? (0, type_guards_1.assertStringPass)(arg.prefix, 'invalid lock argument') : undefined;
|
|
75
|
+
const resource = (0, type_guards_1.assertStringPass)((0, type_guards_1.isObject)(arg) ? arg.resource : arg, 'invalid lock argument');
|
|
76
|
+
const provider = await context.resolveAsync(web_lock_provider_1.WebLockProvider, prefix);
|
|
77
|
+
return provider.get(resource);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}),
|
|
81
|
+
__metadata("design:paramtypes", [String])
|
|
82
|
+
], WebLock);
|
|
83
|
+
exports.WebLock = WebLock;
|
|
84
|
+
//# sourceMappingURL=web-lock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web-lock.js","sourceRoot":"","sources":["../../../source/lock/web/web-lock.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
var WebLockProvider_1;
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.WebLockProvider = void 0;
|
|
17
|
+
const container_1 = require("../../container");
|
|
18
|
+
const lock_1 = require("..");
|
|
19
|
+
const web_lock_1 = require("./web-lock");
|
|
20
|
+
let WebLockProvider = WebLockProvider_1 = class WebLockProvider extends lock_1.LockProvider {
|
|
21
|
+
_prefix;
|
|
22
|
+
constructor(prefix = '') {
|
|
23
|
+
super();
|
|
24
|
+
this._prefix = prefix;
|
|
25
|
+
}
|
|
26
|
+
prefix(prefix) {
|
|
27
|
+
return new WebLockProvider_1(this._prefix + prefix);
|
|
28
|
+
}
|
|
29
|
+
get(resource) {
|
|
30
|
+
return new web_lock_1.WebLock(this._prefix + resource);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
WebLockProvider = WebLockProvider_1 = __decorate([
|
|
34
|
+
(0, container_1.singleton)(),
|
|
35
|
+
__param(0, (0, container_1.injectArg)()),
|
|
36
|
+
__metadata("design:paramtypes", [String])
|
|
37
|
+
], WebLockProvider);
|
|
38
|
+
exports.WebLockProvider = WebLockProvider;
|
|
39
|
+
//# sourceMappingURL=web-lock.provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web-lock.provider.js","sourceRoot":"","sources":["../../../source/lock/web/web-lock.provider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAAmD;AAEnD,6BAAsC;AACtC,yCAAqC;AAG9B,IAAM,eAAe,uBAArB,MAAM,eAAgB,SAAQ,mBAAY;IAC9B,OAAO,CAAS;IAEjC,YAAyB,SAAiB,EAAE;QAC1C,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,MAAM,CAAC,MAAc;QACnB,OAAO,IAAI,iBAAe,CAAC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;IACpD,CAAC;IAED,GAAG,CAAC,QAAgB;QAClB,OAAO,IAAI,kBAAO,CAAC,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,CAAC;IAC9C,CAAC;CACF,CAAA;AAhBY,eAAe;IAD3B,IAAA,qBAAS,GAAE;IAIG,WAAA,IAAA,qBAAS,GAAE,CAAA;;GAHb,eAAe,CAgB3B;AAhBY,0CAAe"}
|
|
@@ -6,11 +6,11 @@ import { disposeAsync } from '../disposable';
|
|
|
6
6
|
export type MessageBusArgument = string;
|
|
7
7
|
export declare abstract class MessageBus<T> implements AsyncDisposable, Injectable<MessageBusArgument> {
|
|
8
8
|
readonly [resolveArgumentType]: string;
|
|
9
|
-
dispose(): Promise<void>;
|
|
10
9
|
/** messages from other instances */
|
|
11
10
|
abstract readonly messages$: Observable<T>;
|
|
12
11
|
/** messages from other instances and itself */
|
|
13
12
|
abstract readonly allMessages$: Observable<T>;
|
|
13
|
+
dispose(): Promise<void>;
|
|
14
14
|
abstract publish(message: T): Promise<void>;
|
|
15
15
|
abstract publishAndForget(message: T): void;
|
|
16
16
|
abstract [disposeAsync](): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-bus.js","sourceRoot":"","sources":["../../source/message-bus/message-bus.ts"],"names":[],"mappings":";;;AACA,4CAAkD;AAGlD,8CAA6C;AAI7C,MAAsB,UAAU;IACrB,CAAC,+BAAmB,CAAC,CAAS;
|
|
1
|
+
{"version":3,"file":"message-bus.js","sourceRoot":"","sources":["../../source/message-bus/message-bus.ts"],"names":[],"mappings":";;;AACA,4CAAkD;AAGlD,8CAA6C;AAI7C,MAAsB,UAAU;IACrB,CAAC,+BAAmB,CAAC,CAAS;IAQvC,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,CAAC,yBAAY,CAAC,EAAE,CAAC;IAC7B,CAAC;CAMF;AAjBD,gCAiBC"}
|
package/migration/migrator.js
CHANGED
|
@@ -40,7 +40,7 @@ let Migrator = Migrator_1 = class Migrator {
|
|
|
40
40
|
}
|
|
41
41
|
const lock = this.lockProvider.get(`${name}`);
|
|
42
42
|
// eslint-disable-next-line max-statements, max-lines-per-function
|
|
43
|
-
const { result } = await lock.
|
|
43
|
+
const { result } = await lock.use(30000, true, async () => {
|
|
44
44
|
const results = [];
|
|
45
45
|
while (true) {
|
|
46
46
|
const restartToken = new cancellation_token_1.CancellationToken();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrator.js","sourceRoot":"","sources":["../../source/migration/migrator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAAoD;AAEpD,kCAAsC;AAEtC,sCAAkC;AAClC,0CAAwC;AACxC,oEAA+D;AAC/D,oDAAuE;AACvE,wCAAqC;AACrC,0CAAsC;AACtC,sDAAgD;AAEhD,6EAAwE;AA0BjE,IAAM,QAAQ,gBAAd,MAAM,QAAQ;IACF,wBAAwB,CAA2B;IACnD,YAAY,CAAe;IAC3B,MAAM,CAAS;IAEhC,YAAY,wBAAkD,EAAiD,YAA0B,EAA6C,MAAc;QAClM,IAAI,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;QACzD,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,kEAAkE;IAClE,KAAK,CAAC,OAAO,CAAI,EAAE,IAAI,EAAE,UAAU,EAA0B;QAC3D,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,EAAE;YAC1B,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;SAC3C;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QAE9C,kEAAkE;QAClE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"migrator.js","sourceRoot":"","sources":["../../source/migration/migrator.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/queue/mongo/queue.js
CHANGED
|
@@ -152,7 +152,7 @@ let MongoQueue = class MongoQueue extends queue_1.Queue {
|
|
|
152
152
|
}
|
|
153
153
|
async dequeueMany(count) {
|
|
154
154
|
const batch = (0, random_1.getRandomString)(20, alphabet_1.Alphabet.LowerUpperCaseNumbers);
|
|
155
|
-
await this.lock.
|
|
155
|
+
await this.lock.use(10000, true, async () => {
|
|
156
156
|
const { filter } = getDequeueFindParameters(this.queueKey, this.maxTries, this.processTimeout, batch);
|
|
157
157
|
await this.repository.baseRepository.collection.aggregate([
|
|
158
158
|
{ $match: filter },
|
package/queue/mongo/queue.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../source/queue/mongo/queue.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../source/queue/mongo/queue.ts"],"names":[],"mappings":"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"}
|