@boxyhq/saml-jackson 1.21.2 → 1.21.4
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/controller/oauth.d.ts +1 -1
- package/dist/controller/oauth.js +74 -29
- package/dist/controller/oauth.js.map +1 -1
- package/dist/cron/lock.d.ts +18 -0
- package/dist/{directory-sync/batch-events → cron}/lock.js +40 -21
- package/dist/cron/lock.js.map +1 -0
- package/dist/directory-sync/batch-events/queue.d.ts +5 -2
- package/dist/directory-sync/batch-events/queue.js +47 -26
- package/dist/directory-sync/batch-events/queue.js.map +1 -1
- package/dist/directory-sync/index.d.ts +2 -3
- package/dist/directory-sync/index.js +30 -18
- package/dist/directory-sync/index.js.map +1 -1
- package/dist/directory-sync/non-scim/index.d.ts +16 -2
- package/dist/directory-sync/non-scim/index.js +70 -32
- package/dist/directory-sync/non-scim/index.js.map +1 -1
- package/dist/directory-sync/request.d.ts +8 -1
- package/dist/directory-sync/request.js +4 -3
- package/dist/directory-sync/request.js.map +1 -1
- package/dist/directory-sync/scim/Groups.js +15 -20
- package/dist/directory-sync/scim/Groups.js.map +1 -1
- package/dist/directory-sync/scim/Users.js +9 -13
- package/dist/directory-sync/scim/Users.js.map +1 -1
- package/dist/directory-sync/scim/WebhookEventsLogger.js +8 -8
- package/dist/directory-sync/scim/WebhookEventsLogger.js.map +1 -1
- package/dist/directory-sync/scim/utils.d.ts +6 -0
- package/dist/directory-sync/scim/utils.js +7 -1
- package/dist/directory-sync/scim/utils.js.map +1 -1
- package/dist/directory-sync/types.d.ts +2 -2
- package/dist/directory-sync/utils.d.ts +4 -2
- package/dist/directory-sync/utils.js +5 -3
- package/dist/directory-sync/utils.js.map +1 -1
- package/dist/sso-tracer/types.d.ts +3 -2
- package/dist/typings.d.ts +4 -0
- package/package.json +6 -6
- package/dist/directory-sync/batch-events/lock.d.ts +0 -18
- package/dist/directory-sync/batch-events/lock.js.map +0 -1
@@ -90,7 +90,7 @@ export declare class OAuthController implements IOAuthController {
|
|
90
90
|
* token_type: bearer
|
91
91
|
* expires_in: 300
|
92
92
|
*/
|
93
|
-
token(body: OAuthTokenReq): Promise<OAuthTokenRes>;
|
93
|
+
token(body: OAuthTokenReq, authHeader?: string | null): Promise<OAuthTokenRes>;
|
94
94
|
/**
|
95
95
|
* @swagger
|
96
96
|
*
|
package/dist/controller/oauth.js
CHANGED
@@ -77,6 +77,7 @@ class OAuthController {
|
|
77
77
|
let requestedProduct;
|
78
78
|
let requestedScopes;
|
79
79
|
let requestedOIDCFlow;
|
80
|
+
let isOIDCFederated;
|
80
81
|
let connection;
|
81
82
|
let fedApp;
|
82
83
|
try {
|
@@ -148,6 +149,7 @@ class OAuthController {
|
|
148
149
|
// client_id is not encoded, so we look for the connection using the client_id
|
149
150
|
// First we check if it's a federated connection
|
150
151
|
if (client_id.startsWith(`${utils_1.clientIDFederatedPrefix}${utils_1.clientIDOIDCPrefix}`)) {
|
152
|
+
isOIDCFederated = true;
|
151
153
|
fedApp = yield this.samlFedApp.get({
|
152
154
|
id: client_id.replace(utils_1.clientIDFederatedPrefix, ''),
|
153
155
|
});
|
@@ -196,6 +198,9 @@ class OAuthController {
|
|
196
198
|
throw new error_1.JacksonError('Redirect URL is not allowed.', 403);
|
197
199
|
}
|
198
200
|
}
|
201
|
+
if (!(0, utils_2.isConnectionActive)(connection)) {
|
202
|
+
throw new error_1.JacksonError('SSO connection is deactivated. Please contact your administrator.', 403);
|
203
|
+
}
|
199
204
|
}
|
200
205
|
catch (err) {
|
201
206
|
const error_description = (0, utils_2.getErrorMessage)(err);
|
@@ -207,14 +212,12 @@ class OAuthController {
|
|
207
212
|
product: requestedProduct || '',
|
208
213
|
clientID: (connection === null || connection === void 0 ? void 0 : connection.clientID) || '',
|
209
214
|
requestedOIDCFlow,
|
215
|
+
isOIDCFederated,
|
210
216
|
redirectUri: redirect_uri,
|
211
217
|
},
|
212
218
|
});
|
213
219
|
throw err;
|
214
220
|
}
|
215
|
-
if (!(0, utils_2.isConnectionActive)(connection)) {
|
216
|
-
throw new error_1.JacksonError('SSO connection is deactivated. Please contact your administrator.', 403);
|
217
|
-
}
|
218
221
|
const isMissingJWTKeysForOIDCFlow = requestedOIDCFlow &&
|
219
222
|
(!((_a = this.opts.openid) === null || _a === void 0 ? void 0 : _a.jwtSigningKeys) || !(0, utils_2.isJWSKeyPairLoaded)(this.opts.openid.jwtSigningKeys));
|
220
223
|
const oAuthClientReqError = !state || response_type !== 'code';
|
@@ -247,6 +250,7 @@ class OAuthController {
|
|
247
250
|
product: requestedProduct,
|
248
251
|
clientID: connection.clientID,
|
249
252
|
requestedOIDCFlow,
|
253
|
+
isOIDCFederated,
|
250
254
|
redirectUri: redirect_uri,
|
251
255
|
},
|
252
256
|
});
|
@@ -290,6 +294,7 @@ class OAuthController {
|
|
290
294
|
product: requestedProduct,
|
291
295
|
clientID: connection.clientID,
|
292
296
|
requestedOIDCFlow,
|
297
|
+
isOIDCFederated,
|
293
298
|
redirectUri: redirect_uri,
|
294
299
|
},
|
295
300
|
});
|
@@ -325,6 +330,7 @@ class OAuthController {
|
|
325
330
|
product: requestedProduct,
|
326
331
|
clientID: connection.clientID,
|
327
332
|
requestedOIDCFlow,
|
333
|
+
isOIDCFederated,
|
328
334
|
redirectUri: redirect_uri,
|
329
335
|
},
|
330
336
|
});
|
@@ -342,18 +348,11 @@ class OAuthController {
|
|
342
348
|
let oidcCodeVerifier;
|
343
349
|
let oidcNonce;
|
344
350
|
if (connectionIsOIDC) {
|
345
|
-
if (!this.opts.oidcPath) {
|
346
|
-
return {
|
347
|
-
redirect_url: (0, utils_2.OAuthErrorResponse)({
|
348
|
-
error: 'server_error',
|
349
|
-
error_description: 'OpenID response handler path (oidcPath) is not set',
|
350
|
-
redirect_uri,
|
351
|
-
state,
|
352
|
-
}),
|
353
|
-
};
|
354
|
-
}
|
355
351
|
const { discoveryUrl, metadata, clientId, clientSecret } = connection.oidcProvider;
|
356
352
|
try {
|
353
|
+
if (!this.opts.oidcPath) {
|
354
|
+
throw new error_1.JacksonError('OpenID response handler path (oidcPath) is not set');
|
355
|
+
}
|
357
356
|
const oidcIssuer = yield (0, oidc_issuer_1.oidcIssuerInstance)(discoveryUrl, metadata);
|
358
357
|
const oidcClient = new oidcIssuer.Client({
|
359
358
|
client_id: clientId,
|
@@ -379,11 +378,24 @@ class OAuthController {
|
|
379
378
|
});
|
380
379
|
}
|
381
380
|
catch (err) {
|
381
|
+
const error_description = (err === null || err === void 0 ? void 0 : err.error) || (0, utils_2.getErrorMessage)(err);
|
382
|
+
// Save the error trace
|
383
|
+
const traceId = yield this.ssoTracer.saveTrace({
|
384
|
+
error: error_description,
|
385
|
+
context: {
|
386
|
+
tenant: requestedTenant,
|
387
|
+
product: requestedProduct,
|
388
|
+
clientID: connection.clientID,
|
389
|
+
requestedOIDCFlow,
|
390
|
+
isOIDCFederated,
|
391
|
+
redirectUri: redirect_uri,
|
392
|
+
},
|
393
|
+
});
|
382
394
|
if (err) {
|
383
395
|
return {
|
384
396
|
redirect_url: (0, utils_2.OAuthErrorResponse)({
|
385
397
|
error: 'server_error',
|
386
|
-
error_description:
|
398
|
+
error_description: traceId ? `${traceId}: ${error_description}` : error_description,
|
387
399
|
redirect_uri,
|
388
400
|
state,
|
389
401
|
}),
|
@@ -424,7 +436,14 @@ class OAuthController {
|
|
424
436
|
code_challenge,
|
425
437
|
code_challenge_method,
|
426
438
|
requested,
|
427
|
-
oidcFederated: fedApp
|
439
|
+
oidcFederated: fedApp
|
440
|
+
? {
|
441
|
+
redirectUrl: fedApp.redirectUrl,
|
442
|
+
id: fedApp.id,
|
443
|
+
clientID: fedApp.clientID,
|
444
|
+
clientSecret: fedApp.clientSecret,
|
445
|
+
}
|
446
|
+
: undefined,
|
428
447
|
};
|
429
448
|
yield this.sessionStore.put(sessionId, connectionIsSAML
|
430
449
|
? Object.assign(Object.assign({}, sessionObj), { id: samlReq === null || samlReq === void 0 ? void 0 : samlReq.id }) : Object.assign(Object.assign({}, sessionObj), { id: connection.clientID, oidcCodeVerifier, oidcNonce }));
|
@@ -472,6 +491,7 @@ class OAuthController {
|
|
472
491
|
product: requestedProduct,
|
473
492
|
clientID: connection.clientID,
|
474
493
|
requestedOIDCFlow,
|
494
|
+
isOIDCFederated,
|
475
495
|
redirectUri: redirect_uri,
|
476
496
|
samlRequest: (samlReq === null || samlReq === void 0 ? void 0 : samlReq.request) || '',
|
477
497
|
},
|
@@ -546,6 +566,9 @@ class OAuthController {
|
|
546
566
|
// Found a connection
|
547
567
|
if ('connection' in response) {
|
548
568
|
connection = response.connection;
|
569
|
+
if (!(0, utils_2.isConnectionActive)(connection)) {
|
570
|
+
throw new error_1.JacksonError('SSO connection is deactivated. Please contact your administrator.', 403);
|
571
|
+
}
|
549
572
|
}
|
550
573
|
}
|
551
574
|
// SP initiated SSO flow
|
@@ -600,8 +623,9 @@ class OAuthController {
|
|
600
623
|
providerName: (_e = connection === null || connection === void 0 ? void 0 : connection.idpMetadata) === null || _e === void 0 ? void 0 : _e.provider,
|
601
624
|
redirectUri: isIdPFlow ? connection === null || connection === void 0 ? void 0 : connection.defaultRedirectUrl : session === null || session === void 0 ? void 0 : session.redirect_uri,
|
602
625
|
issuer,
|
603
|
-
isSAMLFederated
|
604
|
-
|
626
|
+
isSAMLFederated,
|
627
|
+
isOIDCFederated,
|
628
|
+
isIdPFlow,
|
605
629
|
requestedOIDCFlow: !!((_f = session === null || session === void 0 ? void 0 : session.requested) === null || _f === void 0 ? void 0 : _f.oidc),
|
606
630
|
acsUrl: (_g = session === null || session === void 0 ? void 0 : session.requested) === null || _g === void 0 ? void 0 : _g.acsUrl,
|
607
631
|
entityId: (_h = session === null || session === void 0 ? void 0 : session.requested) === null || _h === void 0 ? void 0 : _h.entityId,
|
@@ -642,6 +666,7 @@ class OAuthController {
|
|
642
666
|
providerName: (_j = connection === null || connection === void 0 ? void 0 : connection.idpMetadata) === null || _j === void 0 ? void 0 : _j.provider,
|
643
667
|
redirectUri: isIdPFlow ? connection === null || connection === void 0 ? void 0 : connection.defaultRedirectUrl : session === null || session === void 0 ? void 0 : session.redirect_uri,
|
644
668
|
isSAMLFederated,
|
669
|
+
isOIDCFederated,
|
645
670
|
isIdPFlow,
|
646
671
|
acsUrl: session.requested.acsUrl,
|
647
672
|
entityId: session.requested.entityId,
|
@@ -720,8 +745,8 @@ class OAuthController {
|
|
720
745
|
entityId: (_g = session === null || session === void 0 ? void 0 : session.requested) === null || _g === void 0 ? void 0 : _g.entityId,
|
721
746
|
redirectUri: redirect_uri,
|
722
747
|
relayState: RelayState,
|
723
|
-
isSAMLFederated
|
724
|
-
isOIDCFederated
|
748
|
+
isSAMLFederated,
|
749
|
+
isOIDCFederated,
|
725
750
|
requestedOIDCFlow: !!((_h = session === null || session === void 0 ? void 0 : session.requested) === null || _h === void 0 ? void 0 : _h.oidc),
|
726
751
|
},
|
727
752
|
});
|
@@ -772,8 +797,8 @@ class OAuthController {
|
|
772
797
|
providerName: oidcConnection.oidcProvider.provider,
|
773
798
|
redirectUri: redirect_uri,
|
774
799
|
relayState: RelayState,
|
775
|
-
isSAMLFederated
|
776
|
-
isOIDCFederated
|
800
|
+
isSAMLFederated,
|
801
|
+
isOIDCFederated,
|
777
802
|
acsUrl: session.requested.acsUrl,
|
778
803
|
entityId: session.requested.entityId,
|
779
804
|
requestedOIDCFlow: !!session.requested.oidc,
|
@@ -884,13 +909,26 @@ class OAuthController {
|
|
884
909
|
* token_type: bearer
|
885
910
|
* expires_in: 300
|
886
911
|
*/
|
887
|
-
token(body) {
|
912
|
+
token(body, authHeader) {
|
888
913
|
return __awaiter(this, void 0, void 0, function* () {
|
889
|
-
var _a, _b, _c, _d, _e, _f, _g;
|
914
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
915
|
+
let basic_client_id;
|
916
|
+
let basic_client_secret;
|
917
|
+
try {
|
918
|
+
if (authHeader) {
|
919
|
+
// Authorization: Basic {Base64(<client_id>:<client_secret>)}
|
920
|
+
const base64Credentials = authHeader.split(' ')[1];
|
921
|
+
const credentials = Buffer.from(base64Credentials, 'base64').toString('ascii');
|
922
|
+
[basic_client_id, basic_client_secret] = credentials.split(':');
|
923
|
+
}
|
924
|
+
}
|
925
|
+
catch (err) {
|
926
|
+
// no-op
|
927
|
+
}
|
890
928
|
const { code, grant_type = 'authorization_code', redirect_uri } = body;
|
891
929
|
const client_id = 'client_id' in body ? body.client_id : undefined;
|
892
|
-
const client_secret = 'client_secret' in body ? body.client_secret :
|
893
|
-
const code_verifier = 'code_verifier' in body ? body.code_verifier :
|
930
|
+
const client_secret = 'client_secret' in body ? body.client_secret : basic_client_id;
|
931
|
+
const code_verifier = 'code_verifier' in body ? body.code_verifier : basic_client_secret;
|
894
932
|
metrics.increment('oauthToken');
|
895
933
|
if (grant_type !== 'authorization_code') {
|
896
934
|
throw new error_1.JacksonError('Unsupported grant_type', 400);
|
@@ -916,6 +954,13 @@ class OAuthController {
|
|
916
954
|
if (codeVal.session.code_challenge !== cv) {
|
917
955
|
throw new error_1.JacksonError('Invalid code_verifier', 401);
|
918
956
|
}
|
957
|
+
// For Federation flow, we need to verify the client_secret
|
958
|
+
if (client_id === null || client_id === void 0 ? void 0 : client_id.startsWith(`${utils_1.clientIDFederatedPrefix}${utils_1.clientIDOIDCPrefix}`)) {
|
959
|
+
if (client_id !== ((_d = (_c = codeVal.session) === null || _c === void 0 ? void 0 : _c.oidcFederated) === null || _d === void 0 ? void 0 : _d.clientID) ||
|
960
|
+
client_secret !== ((_f = (_e = codeVal.session) === null || _e === void 0 ? void 0 : _e.oidcFederated) === null || _f === void 0 ? void 0 : _f.clientSecret)) {
|
961
|
+
throw new error_1.JacksonError('Invalid client_id or client_secret', 401);
|
962
|
+
}
|
963
|
+
}
|
919
964
|
}
|
920
965
|
else if (client_id && client_secret) {
|
921
966
|
// check if we have an encoded client_id
|
@@ -929,7 +974,7 @@ class OAuthController {
|
|
929
974
|
}
|
930
975
|
else {
|
931
976
|
if (!codeVal.isIdPFlow &&
|
932
|
-
(sp.tenant !== ((
|
977
|
+
(sp.tenant !== ((_g = codeVal.requested) === null || _g === void 0 ? void 0 : _g.tenant) || sp.product !== ((_h = codeVal.requested) === null || _h === void 0 ? void 0 : _h.product))) {
|
933
978
|
throw new error_1.JacksonError('Invalid tenant or product', 401);
|
934
979
|
}
|
935
980
|
// encoded client_id, verify client_secret
|
@@ -950,10 +995,10 @@ class OAuthController {
|
|
950
995
|
// store details against a token
|
951
996
|
const token = crypto_1.default.randomBytes(20).toString('hex');
|
952
997
|
const tokenVal = Object.assign(Object.assign({}, codeVal.profile), { requested: codeVal.requested });
|
953
|
-
const requestedOIDCFlow = !!((
|
954
|
-
const requestHasNonce = !!((
|
998
|
+
const requestedOIDCFlow = !!((_j = codeVal.requested) === null || _j === void 0 ? void 0 : _j.oidc);
|
999
|
+
const requestHasNonce = !!((_k = codeVal.requested) === null || _k === void 0 ? void 0 : _k.nonce);
|
955
1000
|
if (requestedOIDCFlow) {
|
956
|
-
const { jwtSigningKeys, jwsAlg } = (
|
1001
|
+
const { jwtSigningKeys, jwsAlg } = (_l = this.opts.openid) !== null && _l !== void 0 ? _l : {};
|
957
1002
|
if (!jwtSigningKeys || !(0, utils_2.isJWSKeyPairLoaded)(jwtSigningKeys)) {
|
958
1003
|
throw new error_1.JacksonError('JWT signing keys are not loaded', 500);
|
959
1004
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../src/controller/oauth.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../src/controller/oauth.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import type { Storable } from '../typings';
|
2
|
+
interface LockParams {
|
3
|
+
lockStore: Storable;
|
4
|
+
key: string;
|
5
|
+
}
|
6
|
+
export declare class CronLock {
|
7
|
+
private lockStore;
|
8
|
+
private key;
|
9
|
+
private intervalId;
|
10
|
+
constructor({ key, lockStore }: LockParams);
|
11
|
+
acquire(): Promise<boolean>;
|
12
|
+
private renew;
|
13
|
+
private add;
|
14
|
+
private get;
|
15
|
+
release(): Promise<void>;
|
16
|
+
private isExpired;
|
17
|
+
}
|
18
|
+
export {};
|
@@ -9,71 +9,90 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
9
9
|
});
|
10
10
|
};
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
-
exports.
|
13
|
-
|
14
|
-
|
12
|
+
exports.CronLock = void 0;
|
13
|
+
const crypto_1 = require("crypto");
|
14
|
+
const utils_1 = require("../directory-sync/utils");
|
15
|
+
const lockRenewalInterval = (utils_1.eventLockTTL / 2) * 1000;
|
16
|
+
const instanceKey = (0, crypto_1.randomUUID)();
|
17
|
+
class CronLock {
|
18
|
+
constructor({ key, lockStore }) {
|
15
19
|
this.lockStore = lockStore;
|
20
|
+
this.key = key;
|
16
21
|
}
|
17
|
-
acquire(
|
22
|
+
acquire() {
|
18
23
|
return __awaiter(this, void 0, void 0, function* () {
|
19
24
|
try {
|
20
25
|
const lock = yield this.get();
|
21
|
-
if (lock) {
|
22
|
-
return lock.key ===
|
26
|
+
if (lock && !this.isExpired(lock)) {
|
27
|
+
return lock.key === instanceKey;
|
28
|
+
}
|
29
|
+
yield this.add();
|
30
|
+
// Renew the lock periodically
|
31
|
+
if (!this.intervalId) {
|
32
|
+
this.intervalId = setInterval(() => __awaiter(this, void 0, void 0, function* () {
|
33
|
+
this.renew();
|
34
|
+
}), lockRenewalInterval);
|
23
35
|
}
|
24
|
-
yield this.add(key);
|
25
36
|
return true;
|
26
37
|
}
|
27
38
|
catch (e) {
|
28
|
-
console.error(`Error acquiring lock for ${
|
39
|
+
console.error(`Error acquiring lock for ${instanceKey}: ${e}`);
|
29
40
|
return false;
|
30
41
|
}
|
31
42
|
});
|
32
43
|
}
|
33
|
-
renew(
|
44
|
+
renew() {
|
34
45
|
return __awaiter(this, void 0, void 0, function* () {
|
35
46
|
try {
|
36
47
|
const lock = yield this.get();
|
37
48
|
if (!lock) {
|
38
49
|
return;
|
39
50
|
}
|
40
|
-
if (lock.key !=
|
51
|
+
if (lock.key != instanceKey) {
|
41
52
|
return;
|
42
53
|
}
|
43
|
-
yield this.add(
|
54
|
+
yield this.add();
|
44
55
|
}
|
45
56
|
catch (e) {
|
46
|
-
console.error(`Error renewing lock for ${
|
57
|
+
console.error(`Error renewing lock for ${instanceKey}: ${e}`);
|
47
58
|
}
|
48
59
|
});
|
49
60
|
}
|
50
|
-
add(
|
61
|
+
add() {
|
51
62
|
return __awaiter(this, void 0, void 0, function* () {
|
52
63
|
const record = {
|
53
|
-
key,
|
64
|
+
key: instanceKey,
|
54
65
|
created_at: new Date().toISOString(),
|
55
66
|
};
|
56
|
-
yield this.lockStore.put(key, record);
|
67
|
+
yield this.lockStore.put(this.key, record);
|
57
68
|
});
|
58
69
|
}
|
59
70
|
get() {
|
60
71
|
return __awaiter(this, void 0, void 0, function* () {
|
61
|
-
|
62
|
-
return data.length > 0 ? data[0] : null;
|
72
|
+
return (yield this.lockStore.get(this.key));
|
63
73
|
});
|
64
74
|
}
|
65
|
-
release(
|
75
|
+
release() {
|
66
76
|
return __awaiter(this, void 0, void 0, function* () {
|
77
|
+
if (this.intervalId) {
|
78
|
+
clearInterval(this.intervalId);
|
79
|
+
}
|
67
80
|
const lock = yield this.get();
|
68
81
|
if (!lock) {
|
69
82
|
return;
|
70
83
|
}
|
71
|
-
if (lock.key !=
|
84
|
+
if (lock.key != instanceKey) {
|
72
85
|
return;
|
73
86
|
}
|
74
|
-
yield this.lockStore.delete(key);
|
87
|
+
yield this.lockStore.delete(this.key);
|
75
88
|
});
|
76
89
|
}
|
90
|
+
isExpired(lock) {
|
91
|
+
const lockDate = new Date(lock.created_at);
|
92
|
+
const currentDate = new Date();
|
93
|
+
const diffSeconds = (currentDate.getTime() - lockDate.getTime()) / 1000;
|
94
|
+
return diffSeconds > utils_1.eventLockTTL;
|
95
|
+
}
|
77
96
|
}
|
78
|
-
exports.
|
97
|
+
exports.CronLock = CronLock;
|
79
98
|
//# sourceMappingURL=lock.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"lock.js","sourceRoot":"","sources":["../../src/cron/lock.ts"],"names":[],"mappings":"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"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import type { DirectorySyncEvent, IDirectoryConfig, Storable, JacksonOption,
|
1
|
+
import type { DirectorySyncEvent, IDirectoryConfig, Storable, JacksonOption, CronLock, IWebhookEventsLogger } from '../../typings';
|
2
2
|
declare enum EventStatus {
|
3
3
|
PENDING = "PENDING",
|
4
4
|
FAILED = "FAILED",
|
@@ -14,7 +14,7 @@ interface QueuedEvent {
|
|
14
14
|
interface DirectoryEventsParams {
|
15
15
|
opts: JacksonOption;
|
16
16
|
eventStore: Storable;
|
17
|
-
eventLock:
|
17
|
+
eventLock: CronLock;
|
18
18
|
directories: IDirectoryConfig;
|
19
19
|
webhookLogs: IWebhookEventsLogger;
|
20
20
|
}
|
@@ -24,8 +24,10 @@ export declare class EventProcessor {
|
|
24
24
|
private opts;
|
25
25
|
private directories;
|
26
26
|
private webhookLogs;
|
27
|
+
private cronInterval;
|
27
28
|
constructor({ opts, eventStore, eventLock, directories, webhookLogs }: DirectoryEventsParams);
|
28
29
|
push(event: DirectorySyncEvent): Promise<QueuedEvent>;
|
30
|
+
private _process;
|
29
31
|
process(): Promise<void>;
|
30
32
|
fetchNextBatch(offset: number, limit: number): Promise<QueuedEvent[]>;
|
31
33
|
private send;
|
@@ -33,5 +35,6 @@ export declare class EventProcessor {
|
|
33
35
|
private markAsFailed;
|
34
36
|
private logWebhookEvent;
|
35
37
|
private notifyAllEventsFailed;
|
38
|
+
scheduleWorker(): Promise<void>;
|
36
39
|
}
|
37
40
|
export {};
|