@boxyhq/saml-jackson 1.35.1 → 1.37.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/controller/analytics.d.ts +3 -1
- package/dist/controller/analytics.js +3 -2
- package/dist/controller/analytics.js.map +1 -1
- package/dist/controller/api.d.ts +3 -1
- package/dist/controller/api.js +6 -5
- package/dist/controller/api.js.map +1 -1
- package/dist/controller/connection/oidc.d.ts +3 -2
- package/dist/controller/connection/oidc.js +26 -2
- package/dist/controller/connection/oidc.js.map +1 -1
- package/dist/controller/connection/saml.d.ts +3 -2
- package/dist/controller/connection/saml.js +26 -2
- package/dist/controller/connection/saml.js.map +1 -1
- package/dist/controller/error.d.ts +2 -1
- package/dist/controller/error.js +4 -1
- package/dist/controller/error.js.map +1 -1
- package/dist/controller/oauth/oidc-client.js +1 -1
- package/dist/controller/oauth/oidc-client.js.map +1 -1
- package/dist/controller/oauth.js +69 -24
- package/dist/controller/oauth.js.map +1 -1
- package/dist/controller/sso-handler.d.ts +2 -2
- package/dist/controller/sso-handler.js +73 -65
- package/dist/controller/sso-handler.js.map +1 -1
- package/dist/controller/utils.d.ts +1 -0
- package/dist/controller/utils.js +6 -1
- package/dist/controller/utils.js.map +1 -1
- package/dist/cron/lock.d.ts +4 -2
- package/dist/cron/lock.js +4 -3
- package/dist/cron/lock.js.map +1 -1
- package/dist/db/db.d.ts +5 -2
- package/dist/db/db.js +10 -9
- package/dist/db/db.js.map +1 -1
- package/dist/db/dynamoDb.d.ts +3 -1
- package/dist/db/dynamoDb.js +1 -1
- package/dist/db/dynamoDb.js.map +1 -1
- package/dist/db/mem.d.ts +3 -1
- package/dist/db/mem.js +1 -1
- package/dist/db/mem.js.map +1 -1
- package/dist/db/mongo.d.ts +7 -3
- package/dist/db/mongo.js +5 -4
- package/dist/db/mongo.js.map +1 -1
- package/dist/db/redis.d.ts +7 -3
- package/dist/db/redis.js +4 -3
- package/dist/db/redis.js.map +1 -1
- package/dist/db/sql/sql.d.ts +7 -3
- package/dist/db/sql/sql.js +7 -6
- package/dist/db/sql/sql.js.map +1 -1
- package/dist/directory-sync/batch-events/queue.d.ts +2 -2
- package/dist/directory-sync/batch-events/queue.js +10 -10
- package/dist/directory-sync/batch-events/queue.js.map +1 -1
- package/dist/directory-sync/index.d.ts +2 -2
- package/dist/directory-sync/index.js +2 -2
- package/dist/directory-sync/index.js.map +1 -1
- package/dist/directory-sync/non-scim/index.d.ts +2 -2
- package/dist/directory-sync/non-scim/index.js +4 -4
- package/dist/directory-sync/non-scim/index.js.map +1 -1
- package/dist/directory-sync/scim/DirectoryConfig.js +1 -1
- package/dist/directory-sync/types.d.ts +1 -1
- package/dist/directory-sync/types.js +1 -1
- package/dist/directory-sync/types.js.map +1 -1
- package/dist/directory-sync/utils.d.ts +2 -2
- package/dist/directory-sync/utils.js +3 -3
- package/dist/directory-sync/utils.js.map +1 -1
- package/dist/ee/identity-federation/app.js +2 -2
- package/dist/ee/identity-federation/app.js.map +1 -1
- package/dist/ee/identity-federation/idp-login.js +3 -3
- package/dist/ee/identity-federation/idp-login.js.map +1 -1
- package/dist/ee/identity-federation/index.d.ts +2 -2
- package/dist/ee/identity-federation/sso.d.ts +2 -2
- package/dist/ee/identity-federation/sso.js +4 -4
- package/dist/ee/identity-federation/sso.js.map +1 -1
- package/dist/ee/ory/ory.d.ts +18 -0
- package/dist/ee/ory/ory.js +202 -0
- package/dist/ee/ory/ory.js.map +1 -0
- package/dist/ee/product/index.d.ts +2 -2
- package/dist/ee/product/index.js +1 -1
- package/dist/ee/product/index.js.map +1 -1
- package/dist/event/axios.d.ts +2 -2
- package/dist/event/axios.js +26 -22
- package/dist/event/axios.js.map +1 -1
- package/dist/event/index.d.ts +3 -2
- package/dist/event/index.js +2 -1
- package/dist/event/index.js.map +1 -1
- package/dist/event/webhook.d.ts +2 -2
- package/dist/event/webhook.js +5 -4
- package/dist/event/webhook.js.map +1 -1
- package/dist/index.js +31 -9
- package/dist/index.js.map +1 -1
- package/dist/sso-traces/index.d.ts +2 -2
- package/dist/sso-traces/index.js +1 -1
- package/dist/sso-traces/index.js.map +1 -1
- package/dist/typings.d.ts +20 -0
- package/package.json +10 -10
@@ -31,11 +31,11 @@ const handleEventCallback = (_a) => __awaiter(void 0, [_a], void 0, function* ({
|
|
31
31
|
const { tenant, product, directory_id: directoryId } = event;
|
32
32
|
const { data: directory, error } = yield directories.get(directoryId);
|
33
33
|
if (error) {
|
34
|
-
|
34
|
+
opts.logger.error(`Error fetching directory ${directoryId}: ${error.message}`);
|
35
35
|
throw new error_1.JacksonError(error.message, error.code);
|
36
36
|
}
|
37
37
|
if (!directory.webhook.endpoint || !directory.webhook.secret) {
|
38
|
-
|
38
|
+
opts.logger.error(`Webhook not configured for directory ${directoryId}. Skipping ...`);
|
39
39
|
return;
|
40
40
|
}
|
41
41
|
// If batch size is set, store the events in the database
|
@@ -47,7 +47,7 @@ const handleEventCallback = (_a) => __awaiter(void 0, [_a], void 0, function* ({
|
|
47
47
|
let status = 200;
|
48
48
|
try {
|
49
49
|
// Send the event to the webhook (synchronously)
|
50
|
-
yield (0, webhook_1.sendPayloadToWebhook)(directory.webhook, event, (_b = opts.dsync) === null || _b === void 0 ? void 0 : _b.debugWebhooks);
|
50
|
+
yield (0, webhook_1.sendPayloadToWebhook)(directory.webhook, event, (_b = opts.dsync) === null || _b === void 0 ? void 0 : _b.debugWebhooks, opts.logger);
|
51
51
|
}
|
52
52
|
catch (err) {
|
53
53
|
status = err.response ? err.response.status : 500;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/directory-sync/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;AAYA,8CAAwD;AACxD,gDAAyD;AACzD,+CAAmD;AAEtC,QAAA,YAAY,GAAG,EAAE,CAAC;AAClB,QAAA,cAAc,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AAClC,QAAA,YAAY,GAAG,kBAAkB,CAAC;AAClC,QAAA,aAAa,GAAG,mBAAmB,CAAC;AAe1C,MAAM,SAAS,GAAG,CACvB,KAA6B,EAC7B,OAAgB,EAChB,QAAwB,EACxB,EAAE;IACF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IAED,MAAM,QAAQ,CAAC,IAAA,iCAAqB,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;AACxD,CAAC,CAAA,CAAC;AAVW,QAAA,SAAS,aAUpB;AAEK,MAAM,mBAAmB,GAAG,KAKX,EAAE,4CALgB,EACxC,IAAI,EACJ,WAAW,EACX,cAAc,EACd,WAAW,GACS;IACpB,uDAAuD;IACvD,OAAO,CAAO,KAAyB,EAAE,EAAE;;QACzC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;QAE7D,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAEtE,IAAI,KAAK,EAAE,CAAC;YACV,
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/directory-sync/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;AAYA,8CAAwD;AACxD,gDAAyD;AACzD,+CAAmD;AAEtC,QAAA,YAAY,GAAG,EAAE,CAAC;AAClB,QAAA,cAAc,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AAClC,QAAA,YAAY,GAAG,kBAAkB,CAAC;AAClC,QAAA,aAAa,GAAG,mBAAmB,CAAC;AAe1C,MAAM,SAAS,GAAG,CACvB,KAA6B,EAC7B,OAAgB,EAChB,QAAwB,EACxB,EAAE;IACF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IAED,MAAM,QAAQ,CAAC,IAAA,iCAAqB,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;AACxD,CAAC,CAAA,CAAC;AAVW,QAAA,SAAS,aAUpB;AAEK,MAAM,mBAAmB,GAAG,KAKX,EAAE,4CALgB,EACxC,IAAI,EACJ,WAAW,EACX,cAAc,EACd,WAAW,GACS;IACpB,uDAAuD;IACvD,OAAO,CAAO,KAAyB,EAAE,EAAE;;QACzC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;QAE7D,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAEtE,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,WAAW,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC/E,MAAM,IAAI,oBAAY,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAC7D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,WAAW,gBAAgB,CAAC,CAAC;YACvF,OAAO;QACT,CAAC;QAED,yDAAyD;QACzD,oDAAoD;QACpD,IAAI,MAAA,IAAI,CAAC,KAAK,0CAAE,gBAAgB,EAAE,CAAC;YACjC,MAAM,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,GAAG,GAAG,CAAC;QAEjB,IAAI,CAAC;YACH,gDAAgD;YAChD,MAAM,IAAA,8BAAoB,EAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,MAAA,IAAI,CAAC,KAAK,0CAAE,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/F,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;QACpD,CAAC;QAED,IAAI,SAAS,CAAC,kBAAkB,EAAE,CAAC;YACjC,MAAM,WAAW,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACvF,CAAC;IACH,CAAC,CAAA,CAAC;AACJ,CAAC,CAAA,CAAC;AA1CW,QAAA,mBAAmB,uBA0C9B"}
|
@@ -316,14 +316,14 @@ class App {
|
|
316
316
|
return __awaiter(this, void 0, void 0, function* () {
|
317
317
|
yield (0, checkLicense_1.throwIfInvalidLicense)(this.opts.boxyhqLicenseKey);
|
318
318
|
if (!entityId) {
|
319
|
-
throw new error_1.JacksonError('Missing required parameters. Required parameters are: entityId'
|
319
|
+
throw new error_1.JacksonError(utils_1.GENERIC_ERR_STRING, 400, 'Missing required parameters. Required parameters are: entityId');
|
320
320
|
}
|
321
321
|
const apps = (yield this.store.getByIndex({
|
322
322
|
name: utils_2.IndexNames.EntityID,
|
323
323
|
value: entityId,
|
324
324
|
})).data;
|
325
325
|
if (!apps || apps.length === 0) {
|
326
|
-
throw new error_1.JacksonError('Identity Federation app not found'
|
326
|
+
throw new error_1.JacksonError(utils_1.GENERIC_ERR_STRING, 404, 'Identity Federation app not found');
|
327
327
|
}
|
328
328
|
return apps[0];
|
329
329
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../../src/ee/identity-federation/app.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oDAA4B;AAC5B,4DAAkC;AAWlC,
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../../src/ee/identity-federation/app.ts"],"names":[],"mappings":"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"}
|
@@ -43,7 +43,7 @@ class IdPLogin {
|
|
43
43
|
context.tenant = requestedTenant;
|
44
44
|
context.product = requestedProduct;
|
45
45
|
if (fedApp.type !== 'saml') {
|
46
|
-
throw new error_1.JacksonError('Third party login from an OIDC provider is only supported with SAML Federation'
|
46
|
+
throw new error_1.JacksonError(utils_1.GENERIC_ERR_STRING, 403, 'Third party login from an OIDC provider is only supported with SAML Federation');
|
47
47
|
}
|
48
48
|
const response = yield this.ssoHandler.resolveConnection({
|
49
49
|
tenant: requestedTenant,
|
@@ -60,14 +60,14 @@ class IdPLogin {
|
|
60
60
|
connection = response.connection;
|
61
61
|
}
|
62
62
|
if (!connection) {
|
63
|
-
throw new error_1.JacksonError('IdP connection not found.'
|
63
|
+
throw new error_1.JacksonError(utils_1.GENERIC_ERR_STRING, 403, 'IdP connection not found.');
|
64
64
|
}
|
65
65
|
context.clientID = connection.clientID;
|
66
66
|
context.providerName = (connection === null || connection === void 0 ? void 0 : connection.oidcProvider.friendlyProviderName) || '';
|
67
67
|
context.acsUrl = fedApp.acsUrl;
|
68
68
|
context.entityId = fedApp.entityId;
|
69
69
|
if (!(0, utils_1.isConnectionActive)(connection)) {
|
70
|
-
throw new error_1.JacksonError('OIDC connection is deactivated.
|
70
|
+
throw new error_1.JacksonError(utils_1.GENERIC_ERR_STRING, 403, 'OIDC connection is deactivated.');
|
71
71
|
}
|
72
72
|
const requestParams = {
|
73
73
|
acsUrl: fedApp.acsUrl,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"idp-login.js","sourceRoot":"","sources":["../../../src/ee/identity-federation/idp-login.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAAsD;AAEtD,
|
1
|
+
{"version":3,"file":"idp-login.js","sourceRoot":"","sources":["../../../src/ee/identity-federation/idp-login.ts"],"names":[],"mappings":"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"}
|
@@ -1,10 +1,10 @@
|
|
1
1
|
import { SSO } from './sso';
|
2
2
|
import { App } from './app';
|
3
|
-
import type {
|
3
|
+
import type { JacksonOptionWithRequiredLogger, SSOTracesInstance } from '../../typings';
|
4
4
|
import { IdPLogin } from './idp-login';
|
5
5
|
declare const IdentityFederation: ({ db, opts, ssoTraces, }: {
|
6
6
|
db: any;
|
7
|
-
opts:
|
7
|
+
opts: JacksonOptionWithRequiredLogger;
|
8
8
|
ssoTraces: SSOTracesInstance;
|
9
9
|
}) => Promise<{
|
10
10
|
app: App;
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { App } from './app';
|
2
2
|
import { SSOHandler } from '../../controller/sso-handler';
|
3
|
-
import type {
|
3
|
+
import type { SSOTracesInstance, JacksonOptionWithRequiredLogger } from '../../typings';
|
4
4
|
export declare class SSO {
|
5
5
|
private app;
|
6
6
|
private ssoHandler;
|
@@ -10,7 +10,7 @@ export declare class SSO {
|
|
10
10
|
app: App;
|
11
11
|
ssoHandler: SSOHandler;
|
12
12
|
ssoTraces: SSOTracesInstance;
|
13
|
-
opts:
|
13
|
+
opts: JacksonOptionWithRequiredLogger;
|
14
14
|
});
|
15
15
|
getAuthorizeUrl: ({ request, relayState, idp_hint, samlBinding, }: {
|
16
16
|
request: string;
|
@@ -45,7 +45,7 @@ class SSO {
|
|
45
45
|
context.providerName = providerName;
|
46
46
|
// Verify the request if it is signed
|
47
47
|
if (publicKey && !saml20_1.default.hasValidSignature(decodedRequest, publicKey, null)) {
|
48
|
-
throw new error_1.JacksonError('Invalid SAML Request signature.'
|
48
|
+
throw new error_1.JacksonError(utils_1.GENERIC_ERR_STRING, 400, 'Invalid SAML Request signature.');
|
49
49
|
}
|
50
50
|
app = yield this.app.getByEntityId(entityId);
|
51
51
|
acsUrl = parsedSAMLRequest.acsUrl || app.acsUrl; // acsUrl is optional in the SAMLRequest
|
@@ -53,7 +53,7 @@ class SSO {
|
|
53
53
|
context.product = app.product;
|
54
54
|
context.acsUrl = acsUrl;
|
55
55
|
if (app.acsUrl !== acsUrl) {
|
56
|
-
throw new error_1.JacksonError("Assertion Consumer Service URL doesn't match."
|
56
|
+
throw new error_1.JacksonError(utils_1.GENERIC_ERR_STRING, 400, "Assertion Consumer Service URL doesn't match.");
|
57
57
|
}
|
58
58
|
const response = yield this.ssoHandler.resolveConnection({
|
59
59
|
tenant: app.tenant,
|
@@ -80,11 +80,11 @@ class SSO {
|
|
80
80
|
connection = response.connection;
|
81
81
|
}
|
82
82
|
if (!connection) {
|
83
|
-
throw new error_1.JacksonError('No SSO connection found.'
|
83
|
+
throw new error_1.JacksonError(utils_1.GENERIC_ERR_STRING, 403, 'No SSO connection found.');
|
84
84
|
}
|
85
85
|
context.clientID = connection.clientID;
|
86
86
|
if (!(0, utils_1.isConnectionActive)(connection)) {
|
87
|
-
throw new error_1.JacksonError('SSO connection is deactivated.
|
87
|
+
throw new error_1.JacksonError(utils_1.GENERIC_ERR_STRING, 403, 'SSO connection is deactivated.');
|
88
88
|
}
|
89
89
|
const requestParams = {
|
90
90
|
id,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sso.js","sourceRoot":"","sources":["../../../src/ee/identity-federation/sso.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4DAAkC;AAGlC,kDAAsD;AAUtD,
|
1
|
+
{"version":3,"file":"sso.js","sourceRoot":"","sources":["../../../src/ee/identity-federation/sso.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import { JacksonOption, OryConfig, OryRes } from '../../typings';
|
2
|
+
import { ProductController } from '../product';
|
3
|
+
export declare class OryController {
|
4
|
+
private opts;
|
5
|
+
private productController;
|
6
|
+
constructor({ opts, productController }: {
|
7
|
+
opts: JacksonOption;
|
8
|
+
productController: ProductController;
|
9
|
+
});
|
10
|
+
private getOrgName;
|
11
|
+
private getIssuerUrl;
|
12
|
+
private addOrUpdateConnection;
|
13
|
+
private createOrganization;
|
14
|
+
private sanitizeConfig;
|
15
|
+
createConnection(config: OryConfig, tenant: string, product: string): Promise<OryRes | null>;
|
16
|
+
updateConnection(config: OryConfig, tenant: string, product: string): Promise<OryRes | null>;
|
17
|
+
private isEnabled;
|
18
|
+
}
|
@@ -0,0 +1,202 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
9
|
+
});
|
10
|
+
};
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
13
|
+
};
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
15
|
+
exports.OryController = void 0;
|
16
|
+
const axios_1 = __importDefault(require("axios"));
|
17
|
+
const checkLicense_1 = require("../common/checkLicense");
|
18
|
+
const basePath = 'https://api.console.ory.sh';
|
19
|
+
const providerId = 'sso_boxyhq';
|
20
|
+
const dataMapping = 'base64://bG9jYWwgY2xhaW1zID0gewogIGVtYWlsX3ZlcmlmaWVkOiB0cnVlLAp9ICsgc3RkLmV4dFZhcignY2xhaW1zJyk7Cgp7CiAgaWRlbnRpdHk6IHsKICAgIHRyYWl0czogewogICAgICBbaWYgJ2VtYWlsJyBpbiBjbGFpbXMgJiYgY2xhaW1zLmVtYWlsX3ZlcmlmaWVkIHRoZW4gJ2VtYWlsJyBlbHNlIG51bGxdOiBjbGFpbXMuZW1haWwsCiAgICB9LAogIH0sCn0=';
|
21
|
+
const issuerUrl = 'https://sso.eu.boxyhq.com';
|
22
|
+
class OryController {
|
23
|
+
constructor({ opts, productController }) {
|
24
|
+
this.opts = opts;
|
25
|
+
this.productController = productController;
|
26
|
+
}
|
27
|
+
getOrgName(tenant, product) {
|
28
|
+
return this.opts.boxyhqHosted ? tenant : `${tenant}:${product}`;
|
29
|
+
}
|
30
|
+
getIssuerUrl() {
|
31
|
+
if (this.opts.boxyhqHosted) {
|
32
|
+
return issuerUrl;
|
33
|
+
}
|
34
|
+
else {
|
35
|
+
return this.opts.externalUrl;
|
36
|
+
}
|
37
|
+
}
|
38
|
+
addOrUpdateConnection(config, tenant, product) {
|
39
|
+
return __awaiter(this, void 0, void 0, function* () {
|
40
|
+
const project = yield axios_1.default.get(`${basePath}/projects/${config.projectId}`, {
|
41
|
+
headers: {
|
42
|
+
Authorization: `Bearer ${config.sdkToken}`,
|
43
|
+
},
|
44
|
+
});
|
45
|
+
let index = '-';
|
46
|
+
try {
|
47
|
+
for (const idx in project.data.services.identity.config.selfservice.methods.oidc.config.providers) {
|
48
|
+
const provider = project.data.services.identity.config.selfservice.methods.oidc.config.providers[idx];
|
49
|
+
if (provider.id === providerId && provider.organization_id === config.organizationId) {
|
50
|
+
index = idx;
|
51
|
+
break;
|
52
|
+
}
|
53
|
+
}
|
54
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
55
|
+
}
|
56
|
+
catch (err) {
|
57
|
+
// empty
|
58
|
+
}
|
59
|
+
const op = index === '-' ? 'add' : 'replace';
|
60
|
+
yield axios_1.default.patch(`${basePath}/normalized/projects/${config.projectId}/revision/${project.data.revision_id}`, [
|
61
|
+
{ op: 'replace', path: '/kratos_selfservice_methods_oidc_enabled', value: true },
|
62
|
+
{
|
63
|
+
op,
|
64
|
+
path: `/kratos_selfservice_methods_oidc_config_providers/${index}`,
|
65
|
+
value: {
|
66
|
+
provider_id: providerId,
|
67
|
+
provider: 'generic',
|
68
|
+
label: 'SSO',
|
69
|
+
client_id: `tenant=${tenant}&product=${product}`,
|
70
|
+
client_secret: this.opts.clientSecretVerifier,
|
71
|
+
organization_id: config.organizationId,
|
72
|
+
scope: [],
|
73
|
+
mapper_url: dataMapping,
|
74
|
+
additional_id_token_audiences: [],
|
75
|
+
issuer_url: this.getIssuerUrl(),
|
76
|
+
},
|
77
|
+
},
|
78
|
+
], {
|
79
|
+
headers: {
|
80
|
+
Authorization: `Bearer ${config.sdkToken}`,
|
81
|
+
},
|
82
|
+
});
|
83
|
+
});
|
84
|
+
}
|
85
|
+
createOrganization(config, label) {
|
86
|
+
return __awaiter(this, void 0, void 0, function* () {
|
87
|
+
var _a;
|
88
|
+
if (!config.sdkToken || !config.projectId) {
|
89
|
+
throw new Error('Ory SDK Token or Project ID not set');
|
90
|
+
}
|
91
|
+
if (config && config.organizationId) {
|
92
|
+
try {
|
93
|
+
const res = yield axios_1.default.get(`${basePath}/projects/${config.projectId}/organizations/${config.organizationId}`, {
|
94
|
+
headers: {
|
95
|
+
Authorization: `Bearer ${config.sdkToken}`,
|
96
|
+
},
|
97
|
+
});
|
98
|
+
return res.data.organization.id;
|
99
|
+
}
|
100
|
+
catch (err) {
|
101
|
+
// if org doesn't exist fall through to section that creates it below
|
102
|
+
if (((_a = err.response) === null || _a === void 0 ? void 0 : _a.status) !== 404) {
|
103
|
+
throw err;
|
104
|
+
}
|
105
|
+
}
|
106
|
+
}
|
107
|
+
const res = yield axios_1.default.post(`${basePath}/projects/${config.projectId}/organizations`, {
|
108
|
+
label,
|
109
|
+
domains: config.domains,
|
110
|
+
}, {
|
111
|
+
headers: {
|
112
|
+
Authorization: `Bearer ${config.sdkToken}`,
|
113
|
+
},
|
114
|
+
});
|
115
|
+
return res.data.id;
|
116
|
+
});
|
117
|
+
}
|
118
|
+
sanitizeConfig(config, tenant) {
|
119
|
+
return __awaiter(this, void 0, void 0, function* () {
|
120
|
+
var _a, _b;
|
121
|
+
if (!config.sdkToken) {
|
122
|
+
config.sdkToken = (_a = this.opts.ory) === null || _a === void 0 ? void 0 : _a.sdkToken;
|
123
|
+
}
|
124
|
+
if (!config.projectId) {
|
125
|
+
config.projectId = (_b = this.opts.ory) === null || _b === void 0 ? void 0 : _b.projectId;
|
126
|
+
}
|
127
|
+
config.domains = config.domains || [];
|
128
|
+
if (!config.domains.includes(tenant)) {
|
129
|
+
config.domains.push(tenant);
|
130
|
+
}
|
131
|
+
return config;
|
132
|
+
});
|
133
|
+
}
|
134
|
+
createConnection(config, tenant, product) {
|
135
|
+
return __awaiter(this, void 0, void 0, function* () {
|
136
|
+
if (!(yield this.isEnabled(config, tenant, product))) {
|
137
|
+
return null;
|
138
|
+
}
|
139
|
+
const organizationId = yield this.createOrganization(config, this.getOrgName(tenant, product));
|
140
|
+
config.organizationId = organizationId;
|
141
|
+
let error;
|
142
|
+
try {
|
143
|
+
yield this.addOrUpdateConnection(config, tenant, product);
|
144
|
+
}
|
145
|
+
catch (err) {
|
146
|
+
error = err;
|
147
|
+
}
|
148
|
+
return { projectId: config.projectId, domains: config.domains, organizationId, error };
|
149
|
+
});
|
150
|
+
}
|
151
|
+
updateConnection(config, tenant, product) {
|
152
|
+
return __awaiter(this, void 0, void 0, function* () {
|
153
|
+
if (!(yield this.isEnabled(config, tenant, product))) {
|
154
|
+
return null;
|
155
|
+
}
|
156
|
+
const organizationId = yield this.createOrganization(config, this.getOrgName(tenant, product));
|
157
|
+
let error;
|
158
|
+
try {
|
159
|
+
yield this.addOrUpdateConnection(config, tenant, product);
|
160
|
+
}
|
161
|
+
catch (err) {
|
162
|
+
error = err;
|
163
|
+
}
|
164
|
+
return { projectId: config.projectId, domains: config.domains, organizationId, error };
|
165
|
+
});
|
166
|
+
}
|
167
|
+
isEnabled(config, tenant, product) {
|
168
|
+
return __awaiter(this, void 0, void 0, function* () {
|
169
|
+
var _a, _b;
|
170
|
+
if (this.opts.boxyhqHosted) {
|
171
|
+
const productConfig = yield this.productController.get(product);
|
172
|
+
if (!productConfig ||
|
173
|
+
!productConfig.ory ||
|
174
|
+
!productConfig.ory.sdkToken ||
|
175
|
+
!productConfig.ory.projectId) {
|
176
|
+
return false;
|
177
|
+
}
|
178
|
+
config.sdkToken = productConfig.ory.sdkToken;
|
179
|
+
config.projectId = productConfig.ory.projectId;
|
180
|
+
this.sanitizeConfig(config, tenant);
|
181
|
+
return true;
|
182
|
+
}
|
183
|
+
else {
|
184
|
+
if (!((_a = this.opts.ory) === null || _a === void 0 ? void 0 : _a.sdkToken) || !((_b = this.opts.ory) === null || _b === void 0 ? void 0 : _b.projectId)) {
|
185
|
+
return false;
|
186
|
+
}
|
187
|
+
try {
|
188
|
+
yield (0, checkLicense_1.throwIfInvalidLicense)(this.opts.boxyhqLicenseKey);
|
189
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
190
|
+
}
|
191
|
+
catch (err) {
|
192
|
+
console.error('Ory is not enabled because of invalid license');
|
193
|
+
return false;
|
194
|
+
}
|
195
|
+
this.sanitizeConfig(config, tenant);
|
196
|
+
return true;
|
197
|
+
}
|
198
|
+
});
|
199
|
+
}
|
200
|
+
}
|
201
|
+
exports.OryController = OryController;
|
202
|
+
//# sourceMappingURL=ory.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ory.js","sourceRoot":"","sources":["../../../src/ee/ory/ory.ts"],"names":[],"mappings":"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"}
|
@@ -1,10 +1,10 @@
|
|
1
|
-
import type { Storable,
|
1
|
+
import type { Storable, ProductConfig, JacksonOptionWithRequiredLogger } from '../../typings';
|
2
2
|
export declare class ProductController {
|
3
3
|
private productStore;
|
4
4
|
private opts;
|
5
5
|
constructor({ productStore, opts }: {
|
6
6
|
productStore: Storable;
|
7
|
-
opts:
|
7
|
+
opts: JacksonOptionWithRequiredLogger;
|
8
8
|
});
|
9
9
|
get(productId: string): Promise<ProductConfig>;
|
10
10
|
upsert(params: Partial<ProductConfig> & {
|
package/dist/ee/product/index.js
CHANGED
@@ -22,7 +22,7 @@ class ProductController {
|
|
22
22
|
yield (0, checkLicense_1.throwIfInvalidLicense)(this.opts.boxyhqLicenseKey);
|
23
23
|
const productConfig = (yield this.productStore.get(productId));
|
24
24
|
// if (!productConfig) {
|
25
|
-
//
|
25
|
+
// this.opts.logger.error(`Product config not found for ${productId}`);
|
26
26
|
// }
|
27
27
|
return Object.assign(Object.assign({}, productConfig), { id: productId, name: (productConfig === null || productConfig === void 0 ? void 0 : productConfig.name) || null, teamId: (productConfig === null || productConfig === void 0 ? void 0 : productConfig.teamId) || null, teamName: (productConfig === null || productConfig === void 0 ? void 0 : productConfig.teamName) || null, logoUrl: (productConfig === null || productConfig === void 0 ? void 0 : productConfig.logoUrl) || null, faviconUrl: (productConfig === null || productConfig === void 0 ? void 0 : productConfig.faviconUrl) || null, companyName: (productConfig === null || productConfig === void 0 ? void 0 : productConfig.companyName) || null, primaryColor: (productConfig === null || productConfig === void 0 ? void 0 : productConfig.primaryColor) || '#25c2a0' });
|
28
28
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ee/product/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAAsD;AACtD,yDAA+D;AAG/D,MAAa,iBAAiB;IAI5B,YAAY,EAAE,YAAY,EAAE,IAAI,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ee/product/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAAsD;AACtD,yDAA+D;AAG/D,MAAa,iBAAiB;IAI5B,YAAY,EAAE,YAAY,EAAE,IAAI,EAAqE;QACnG,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEY,GAAG,CAAC,SAAiB;;YAChC,MAAM,IAAA,oCAAqB,EAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAExD,MAAM,aAAa,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAkB,CAAC;YAEhF,wBAAwB;YACxB,yEAAyE;YACzE,IAAI;YAEJ,uCACK,aAAa,KAChB,EAAE,EAAE,SAAS,EACb,IAAI,EAAE,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,KAAI,IAAI,EACjC,MAAM,EAAE,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,KAAI,IAAI,EACrC,QAAQ,EAAE,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,QAAQ,KAAI,IAAI,EACzC,OAAO,EAAE,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,OAAO,KAAI,IAAI,EACvC,UAAU,EAAE,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,UAAU,KAAI,IAAI,EAC7C,WAAW,EAAE,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,WAAW,KAAI,IAAI,EAC/C,YAAY,EAAE,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,YAAY,KAAI,SAAS,IACtD;QACJ,CAAC;KAAA;IAEY,MAAM,CAAC,MAA+C;;YACjE,MAAM,IAAA,oCAAqB,EAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAExD,IAAI,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,oBAAY,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;YACtD,CAAC;YAED,MAAM,aAAa,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAkB,CAAC;YAEhF,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,iCAAM,aAAa,GAAK,MAAM,EAAG,CAAC,CAAC,MAAM,CAAC;YAE1E,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACnD,CAAC;KAAA;IAEY,MAAM,CAAC,SAAiB;;YACnC,MAAM,IAAA,oCAAqB,EAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAExD,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5C,CAAC;KAAA;CACF;AAlDD,8CAkDC"}
|
package/dist/event/axios.d.ts
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
|
2
|
-
export
|
1
|
+
import type { RequiredLogger } from '../typings';
|
2
|
+
export declare const createAxiosInstance: (logger: RequiredLogger) => import("axios").AxiosInstance;
|
package/dist/event/axios.js
CHANGED
@@ -3,30 +3,34 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
exports.createAxiosInstance = void 0;
|
6
7
|
const axios_1 = __importDefault(require("axios"));
|
7
8
|
const retry = 3;
|
8
9
|
const retryDelay = 3000;
|
9
|
-
const
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
10
|
+
const createAxiosInstance = (logger) => {
|
11
|
+
const axiosInstance = axios_1.default.create();
|
12
|
+
// Axios interceptors to handle the Webhook retries
|
13
|
+
axiosInstance.interceptors.response.use(undefined, (err) => {
|
14
|
+
const config = err.config;
|
15
|
+
if (!config) {
|
16
|
+
return Promise.reject(err);
|
17
|
+
}
|
18
|
+
config.__retryCount = config.__retryCount || 0;
|
19
|
+
if (config.__retryCount >= retry) {
|
20
|
+
return Promise.reject(err);
|
21
|
+
}
|
22
|
+
config.__retryCount += 1;
|
23
|
+
const backoff = new Promise(function (resolve) {
|
24
|
+
setTimeout(function () {
|
25
|
+
resolve(1);
|
26
|
+
}, retryDelay);
|
27
|
+
});
|
28
|
+
return backoff.then(function () {
|
29
|
+
logger.info(`Retrying sending webhook event to ${config.url}... Attempt ${config.__retryCount}`);
|
30
|
+
return axiosInstance(config);
|
31
|
+
});
|
25
32
|
});
|
26
|
-
return
|
27
|
-
|
28
|
-
|
29
|
-
});
|
30
|
-
});
|
31
|
-
exports.default = axiosInstance;
|
33
|
+
return axiosInstance;
|
34
|
+
};
|
35
|
+
exports.createAxiosInstance = createAxiosInstance;
|
32
36
|
//# sourceMappingURL=axios.js.map
|
package/dist/event/axios.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"axios.js","sourceRoot":"","sources":["../../src/event/axios.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"axios.js","sourceRoot":"","sources":["../../src/event/axios.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAG1B,MAAM,KAAK,GAAG,CAAC,CAAC;AAChB,MAAM,UAAU,GAAG,IAAI,CAAC;AAEjB,MAAM,mBAAmB,GAAG,CAAC,MAAsB,EAAE,EAAE;IAC5D,MAAM,aAAa,GAAG,eAAK,CAAC,MAAM,EAAE,CAAC;IAErC,mDAAmD;IACnD,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,GAAQ,EAAE,EAAE;QAC9D,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAE1B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;QAED,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,CAAC,CAAC;QAE/C,IAAI,MAAM,CAAC,YAAY,IAAI,KAAK,EAAE,CAAC;YACjC,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;QAED,MAAM,CAAC,YAAY,IAAI,CAAC,CAAC;QAEzB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,UAAU,OAAO;YAC3C,UAAU,CAAC;gBACT,OAAO,CAAC,CAAC,CAAC,CAAC;YACb,CAAC,EAAE,UAAU,CAAC,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC,IAAI,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,qCAAqC,MAAM,CAAC,GAAG,eAAe,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;YACjG,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC;AAhCW,QAAA,mBAAmB,uBAgC9B"}
|
package/dist/event/index.d.ts
CHANGED
@@ -1,9 +1,10 @@
|
|
1
|
-
import type { Directory,
|
1
|
+
import type { Directory, SAMLSSORecord, EventType, SSOConnectionEventType, Webhook, EventPayloadSchema, OIDCSSORecord, JacksonOptionWithRequiredLogger } from '../typings';
|
2
2
|
export default class Event {
|
3
3
|
private webhook;
|
4
4
|
private dsync;
|
5
|
+
private logger;
|
5
6
|
constructor({ opts }: {
|
6
|
-
opts:
|
7
|
+
opts: JacksonOptionWithRequiredLogger;
|
7
8
|
});
|
8
9
|
notify<T extends EventType>(event: T, data: T extends SSOConnectionEventType ? SAMLSSORecord | OIDCSSORecord : Directory): Promise<import("axios").AxiosResponse<any, any> | undefined>;
|
9
10
|
private constructPayload;
|
package/dist/event/index.js
CHANGED
@@ -15,6 +15,7 @@ class Event {
|
|
15
15
|
constructor({ opts }) {
|
16
16
|
this.webhook = opts.webhook;
|
17
17
|
this.dsync = opts.dsync;
|
18
|
+
this.logger = opts.logger;
|
18
19
|
}
|
19
20
|
notify(event, data) {
|
20
21
|
return __awaiter(this, void 0, void 0, function* () {
|
@@ -48,7 +49,7 @@ class Event {
|
|
48
49
|
if (!(webhook === null || webhook === void 0 ? void 0 : webhook.endpoint) || !webhook.secret) {
|
49
50
|
return;
|
50
51
|
}
|
51
|
-
return yield (0, webhook_1.sendPayloadToWebhook)(webhook, payload, (_a = this.dsync) === null || _a === void 0 ? void 0 : _a.debugWebhooks);
|
52
|
+
return yield (0, webhook_1.sendPayloadToWebhook)(webhook, payload, (_a = this.dsync) === null || _a === void 0 ? void 0 : _a.debugWebhooks, this.logger);
|
52
53
|
});
|
53
54
|
}
|
54
55
|
}
|
package/dist/event/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/event/index.ts"],"names":[],"mappings":";;;;;;;;;;;AAWA,uCAAiD;AACjD,mCAIiB;AAEjB,MAAqB,KAAK;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/event/index.ts"],"names":[],"mappings":";;;;;;;;;;;AAWA,uCAAiD;AACjD,mCAIiB;AAEjB,MAAqB,KAAK;IAKxB,YAAY,EAAE,IAAI,EAA6C;QAC7D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC5B,CAAC;IAEK,MAAM,CACV,KAAQ,EACR,IAAkF;;YAElF,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAEnD,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;KAAA;IAEO,gBAAgB,CAAC,KAAgB,EAAE,IAA+C;QACxF,IAAI,eAA0B,CAAC;QAE/B,IAAI,aAAa,IAAI,IAAI,EAAE,CAAC;YAC1B,eAAe,GAAG,IAAA,kCAA0B,EAAC,IAAI,CAAC,CAAC;QACrD,CAAC;aAAM,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;YAClC,eAAe,GAAG,IAAA,kCAA0B,EAAC,IAAI,CAAC,CAAC;QACrD,CAAC;aAAM,CAAC;YACN,eAAe,GAAG,IAAA,oCAA4B,EAAC,IAAI,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QAEjC,MAAM,OAAO,GAAuB;YAClC,KAAK;YACL,MAAM;YACN,OAAO;YACP,IAAI,EAAE,eAAe;SACtB,CAAC;QAEF,OAAO,OAAO,CAAC;IACjB,CAAC;IAEK,gBAAgB,CAAC,OAA4B,EAAE,OAA2B;;;YAC9E,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,CAAA,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC1C,OAAO;YACT,CAAC;YAED,OAAO,MAAM,IAAA,8BAAoB,EAAC,OAAO,EAAE,OAAO,EAAE,MAAA,IAAI,CAAC,KAAK,0CAAE,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9F,CAAC;KAAA;CACF;AAlDD,wBAkDC"}
|
package/dist/event/webhook.d.ts
CHANGED
@@ -1,3 +1,3 @@
|
|
1
|
-
import type { EventPayloadSchema, Webhook } from '../typings';
|
1
|
+
import type { EventPayloadSchema, RequiredLogger, Webhook } from '../typings';
|
2
2
|
export declare const createSignatureString: (secret: string, payload: any) => string;
|
3
|
-
export declare const sendPayloadToWebhook: (webhook: Webhook, payload: EventPayloadSchema | EventPayloadSchema[], debugWebhooks: boolean | undefined) => Promise<import("axios").AxiosResponse<any, any>>;
|
3
|
+
export declare const sendPayloadToWebhook: (webhook: Webhook, payload: EventPayloadSchema | EventPayloadSchema[], debugWebhooks: boolean | undefined, logger: RequiredLogger) => Promise<import("axios").AxiosResponse<any, any>>;
|