n8n 1.46.0 → 1.47.1
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/bin/n8n +8 -0
- package/dist/ActiveExecutions.d.ts +3 -1
- package/dist/ActiveExecutions.js +17 -3
- package/dist/ActiveExecutions.js.map +1 -1
- package/dist/Interfaces.d.ts +2 -0
- package/dist/Interfaces.js.map +1 -1
- package/dist/InternalHooks.d.ts +9 -25
- package/dist/InternalHooks.js +129 -488
- package/dist/InternalHooks.js.map +1 -1
- package/dist/Ldap/helpers.d.ts +0 -1
- package/dist/Ldap/helpers.js +4 -7
- package/dist/Ldap/helpers.js.map +1 -1
- package/dist/License.js +4 -0
- package/dist/License.js.map +1 -1
- package/dist/PublicApi/v1/handlers/credentials/credentials.service.js +13 -0
- package/dist/PublicApi/v1/handlers/credentials/credentials.service.js.map +1 -1
- package/dist/PublicApi/v1/handlers/executions/executions.handler.js +12 -0
- package/dist/PublicApi/v1/handlers/executions/executions.handler.js.map +1 -1
- package/dist/PublicApi/v1/handlers/workflows/workflows.handler.js +10 -0
- package/dist/PublicApi/v1/handlers/workflows/workflows.handler.js.map +1 -1
- package/dist/PublicApi/v1/openapi.yml +2 -0
- package/dist/Queue.d.ts +1 -0
- package/dist/Queue.js +10 -10
- package/dist/Queue.js.map +1 -1
- package/dist/Server.d.ts +36 -3
- package/dist/Server.js +69 -104
- package/dist/Server.js.map +1 -1
- package/dist/UserManagement/email/UserManagementMailer.js +13 -1
- package/dist/UserManagement/email/UserManagementMailer.js.map +1 -1
- package/dist/WaitTracker.js +6 -8
- package/dist/WaitTracker.js.map +1 -1
- package/dist/WorkflowExecuteAdditionalData.js +33 -9
- package/dist/WorkflowExecuteAdditionalData.js.map +1 -1
- package/dist/WorkflowRunner.d.ts +3 -1
- package/dist/WorkflowRunner.js +14 -3
- package/dist/WorkflowRunner.js.map +1 -1
- package/dist/auth/methods/ldap.js +2 -0
- package/dist/auth/methods/ldap.js.map +1 -1
- package/dist/build.tsbuildinfo +1 -1
- package/dist/commands/start.d.ts +1 -2
- package/dist/commands/start.js +31 -19
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/worker.js +5 -2
- package/dist/commands/worker.js.map +1 -1
- package/dist/concurrency/concurrency-control.service.d.ts +33 -0
- package/dist/concurrency/concurrency-control.service.js +120 -0
- package/dist/concurrency/concurrency-control.service.js.map +1 -0
- package/dist/concurrency/concurrency-queue.d.ts +12 -0
- package/dist/concurrency/concurrency-queue.js +57 -0
- package/dist/concurrency/concurrency-queue.js.map +1 -0
- package/dist/config/index.d.ts +7 -0
- package/dist/config/schema.d.ts +22 -0
- package/dist/config/schema.js +23 -1
- package/dist/config/schema.js.map +1 -1
- package/dist/config/types.d.ts +2 -1
- package/dist/controllers/auth.controller.d.ts +3 -1
- package/dist/controllers/auth.controller.js +9 -5
- package/dist/controllers/auth.controller.js.map +1 -1
- package/dist/controllers/communityPackages.controller.d.ts +3 -1
- package/dist/controllers/communityPackages.controller.js +40 -2
- package/dist/controllers/communityPackages.controller.js.map +1 -1
- package/dist/controllers/invitation.controller.d.ts +3 -1
- package/dist/controllers/invitation.controller.js +6 -2
- package/dist/controllers/invitation.controller.js.map +1 -1
- package/dist/controllers/me.controller.d.ts +3 -1
- package/dist/controllers/me.controller.js +14 -19
- package/dist/controllers/me.controller.js.map +1 -1
- package/dist/controllers/passwordReset.controller.d.ts +3 -1
- package/dist/controllers/passwordReset.controller.js +11 -6
- package/dist/controllers/passwordReset.controller.js.map +1 -1
- package/dist/controllers/users.controller.d.ts +3 -1
- package/dist/controllers/users.controller.js +6 -2
- package/dist/controllers/users.controller.js.map +1 -1
- package/dist/credentials/credentials.controller.d.ts +9 -1
- package/dist/credentials/credentials.controller.js +44 -2
- package/dist/credentials/credentials.controller.js.map +1 -1
- package/dist/credentials/credentials.service.d.ts +15 -1
- package/dist/credentials/credentials.service.js +37 -2
- package/dist/credentials/credentials.service.js.map +1 -1
- package/dist/databases/entities/User.d.ts +1 -1
- package/dist/databases/repositories/credentials.repository.d.ts +9 -1
- package/dist/databases/repositories/credentials.repository.js +36 -2
- package/dist/databases/repositories/credentials.repository.js.map +1 -1
- package/dist/databases/repositories/execution.repository.d.ts +5 -1
- package/dist/databases/repositories/execution.repository.js +36 -9
- package/dist/databases/repositories/execution.repository.js.map +1 -1
- package/dist/databases/repositories/user.repository.d.ts +2 -0
- package/dist/databases/repositories/user.repository.js +20 -0
- package/dist/databases/repositories/user.repository.js.map +1 -1
- package/dist/databases/repositories/workflow.repository.d.ts +1 -1
- package/dist/databases/utils/generators.js +2 -1
- package/dist/databases/utils/generators.js.map +1 -1
- package/dist/decorators/Licensed.d.ts +1 -1
- package/dist/decorators/Licensed.js +4 -9
- package/dist/decorators/Licensed.js.map +1 -1
- package/dist/decorators/Middleware.js +3 -6
- package/dist/decorators/Middleware.js.map +1 -1
- package/dist/decorators/Redactable.d.ts +3 -0
- package/dist/decorators/Redactable.js +29 -0
- package/dist/decorators/Redactable.js.map +1 -0
- package/dist/decorators/RestController.js +3 -2
- package/dist/decorators/RestController.js.map +1 -1
- package/dist/decorators/Route.d.ts +1 -1
- package/dist/decorators/Route.js +9 -14
- package/dist/decorators/Route.js.map +1 -1
- package/dist/decorators/Scoped.d.ts +2 -2
- package/dist/decorators/Scoped.js +6 -19
- package/dist/decorators/Scoped.js.map +1 -1
- package/dist/decorators/controller.registry.d.ts +16 -0
- package/dist/decorators/controller.registry.js +116 -0
- package/dist/decorators/controller.registry.js.map +1 -0
- package/dist/decorators/index.d.ts +1 -1
- package/dist/decorators/index.js +3 -3
- package/dist/decorators/index.js.map +1 -1
- package/dist/decorators/types.d.ts +16 -14
- package/dist/errors/invalid-concurrency-limit.error.d.ts +4 -0
- package/dist/errors/invalid-concurrency-limit.error.js +11 -0
- package/dist/errors/invalid-concurrency-limit.error.js.map +1 -0
- package/dist/errors/queued-execution-retry.error.d.ts +4 -0
- package/dist/errors/queued-execution-retry.error.js +13 -0
- package/dist/errors/queued-execution-retry.error.js.map +1 -0
- package/dist/errors/redactable.error.d.ts +4 -0
- package/dist/errors/redactable.error.js +11 -0
- package/dist/errors/redactable.error.js.map +1 -0
- package/dist/errors/unknown-execution-mode.error.d.ts +4 -0
- package/dist/errors/unknown-execution-mode.error.js +11 -0
- package/dist/errors/unknown-execution-mode.error.js.map +1 -0
- package/dist/eventbus/MessageEventBus/MessageEventBus.d.ts +1 -1
- package/dist/eventbus/MessageEventBus/MessageEventBus.js +5 -11
- package/dist/eventbus/MessageEventBus/MessageEventBus.js.map +1 -1
- package/dist/eventbus/audit-event-relay.service.d.ts +36 -0
- package/dist/eventbus/audit-event-relay.service.js +394 -0
- package/dist/eventbus/audit-event-relay.service.js.map +1 -0
- package/dist/eventbus/event-relay.service.d.ts +7 -0
- package/dist/eventbus/event-relay.service.js +26 -0
- package/dist/eventbus/event-relay.service.js.map +1 -0
- package/dist/eventbus/event.types.d.ts +149 -0
- package/dist/eventbus/event.types.js +3 -0
- package/dist/eventbus/event.types.js.map +1 -0
- package/dist/executions/execution-recovery.service.d.ts +18 -2
- package/dist/executions/execution-recovery.service.js +129 -9
- package/dist/executions/execution-recovery.service.js.map +1 -1
- package/dist/executions/execution.service.d.ts +8 -3
- package/dist/executions/execution.service.js +40 -14
- package/dist/executions/execution.service.js.map +1 -1
- package/dist/executions/execution.types.d.ts +8 -1
- package/dist/executions/executionHelpers.d.ts +0 -1
- package/dist/executions/executionHelpers.js +1 -8
- package/dist/executions/executionHelpers.js.map +1 -1
- package/dist/executions/executions.controller.d.ts +1 -1
- package/dist/executions/executions.controller.js +1 -1
- package/dist/executions/executions.controller.js.map +1 -1
- package/dist/license/license.controller.d.ts +2 -1
- package/dist/license/license.controller.js +10 -0
- package/dist/license/license.controller.js.map +1 -1
- package/dist/license/license.service.d.ts +5 -1
- package/dist/license/license.service.js +18 -2
- package/dist/license/license.service.js.map +1 -1
- package/dist/push/index.d.ts +1 -1
- package/dist/requests.d.ts +6 -6
- package/dist/requests.js.map +1 -1
- package/dist/services/cache/cache.service.js +10 -4
- package/dist/services/cache/cache.service.js.map +1 -1
- package/dist/services/orchestration/helpers.js +2 -2
- package/dist/services/orchestration/helpers.js.map +1 -1
- package/dist/services/orchestration/main/MultiMainSetup.ee.d.ts +4 -2
- package/dist/services/orchestration/main/MultiMainSetup.ee.js +8 -4
- package/dist/services/orchestration/main/MultiMainSetup.ee.js.map +1 -1
- package/dist/services/orchestration/main/orchestration.handler.main.service.js +3 -3
- package/dist/services/orchestration/main/orchestration.handler.main.service.js.map +1 -1
- package/dist/services/orchestration/webhook/orchestration.handler.webhook.service.js +2 -2
- package/dist/services/orchestration/webhook/orchestration.handler.webhook.service.js.map +1 -1
- package/dist/services/orchestration/worker/handleCommandMessageWorker.js +4 -4
- package/dist/services/orchestration/worker/handleCommandMessageWorker.js.map +1 -1
- package/dist/services/pruning.service.d.ts +4 -1
- package/dist/services/pruning.service.js +14 -2
- package/dist/services/pruning.service.js.map +1 -1
- package/dist/services/redis/RedisConstants.d.ts +6 -0
- package/dist/services/redis/RedisConstants.js +10 -0
- package/dist/services/redis/RedisConstants.js.map +1 -0
- package/dist/services/redis/RedisServiceBaseClasses.d.ts +3 -1
- package/dist/services/redis/RedisServiceBaseClasses.js +6 -4
- package/dist/services/redis/RedisServiceBaseClasses.js.map +1 -1
- package/dist/services/redis/RedisServicePubSubPublisher.js +3 -3
- package/dist/services/redis/RedisServicePubSubPublisher.js.map +1 -1
- package/dist/services/redis/RedisServicePubSubSubscriber.js +5 -5
- package/dist/services/redis/RedisServicePubSubSubscriber.js.map +1 -1
- package/dist/services/redis/redis-client.service.d.ts +20 -0
- package/dist/services/redis/redis-client.service.js +125 -0
- package/dist/services/redis/redis-client.service.js.map +1 -0
- package/dist/services/role.service.d.ts +5 -0
- package/dist/services/role.service.js.map +1 -1
- package/dist/services/usageMetrics.service.d.ts +6 -1
- package/dist/services/usageMetrics.service.js +10 -2
- package/dist/services/usageMetrics.service.js.map +1 -1
- package/dist/services/user.service.d.ts +3 -1
- package/dist/services/user.service.js +10 -2
- package/dist/services/user.service.js.map +1 -1
- package/dist/sso/saml/routes/saml.controller.ee.d.ts +3 -3
- package/dist/sso/saml/routes/saml.controller.ee.js +9 -9
- package/dist/sso/saml/routes/saml.controller.ee.js.map +1 -1
- package/dist/sso/saml/samlHelpers.d.ts +1 -2
- package/dist/sso/saml/samlHelpers.js +11 -31
- package/dist/sso/saml/samlHelpers.js.map +1 -1
- package/dist/types/commands.types.d.ts +2 -2
- package/dist/utils.js.map +1 -1
- package/dist/workflows/workflow.request.d.ts +1 -2
- package/dist/workflows/workflow.service.d.ts +4 -2
- package/dist/workflows/workflow.service.ee.js +5 -6
- package/dist/workflows/workflow.service.ee.js.map +1 -1
- package/dist/workflows/workflow.service.js +11 -2
- package/dist/workflows/workflow.service.js.map +1 -1
- package/dist/workflows/workflowExecution.service.d.ts +1 -1
- package/dist/workflows/workflowExecution.service.js +2 -1
- package/dist/workflows/workflowExecution.service.js.map +1 -1
- package/dist/workflows/workflowStaticData.service.js +17 -2
- package/dist/workflows/workflowStaticData.service.js.map +1 -1
- package/dist/workflows/workflows.controller.d.ts +15 -13
- package/dist/workflows/workflows.controller.js +6 -2
- package/dist/workflows/workflows.controller.js.map +1 -1
- package/dist/workflows/workflows.types.d.ts +2 -3
- package/package.json +10 -10
- package/templates/oauth-callback.handlebars +2 -1
- package/templates/oauth-error-callback.handlebars +4 -1
- package/dist/decorators/constants.d.ts +0 -5
- package/dist/decorators/constants.js +0 -9
- package/dist/decorators/constants.js.map +0 -1
- package/dist/decorators/registerController.d.ts +0 -7
- package/dist/decorators/registerController.js +0 -83
- package/dist/decorators/registerController.js.map +0 -1
- package/dist/services/redis/RedisServiceHelper.d.ts +0 -17
- package/dist/services/redis/RedisServiceHelper.js +0 -151
- package/dist/services/redis/RedisServiceHelper.js.map +0 -1
|
@@ -8,7 +8,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.RedisServicePubSubPublisher = void 0;
|
|
10
10
|
const typedi_1 = require("typedi");
|
|
11
|
-
const
|
|
11
|
+
const RedisConstants_1 = require("./RedisConstants");
|
|
12
12
|
const RedisServiceBaseClasses_1 = require("./RedisServiceBaseClasses");
|
|
13
13
|
let RedisServicePubSubPublisher = class RedisServicePubSubPublisher extends RedisServiceBaseClasses_1.RedisServiceBaseSender {
|
|
14
14
|
async init() {
|
|
@@ -24,10 +24,10 @@ let RedisServicePubSubPublisher = class RedisServicePubSubPublisher extends Redi
|
|
|
24
24
|
async publishToCommandChannel(message) {
|
|
25
25
|
const messageWithSenderId = message;
|
|
26
26
|
messageWithSenderId.senderId = this.senderId;
|
|
27
|
-
await this.publish(
|
|
27
|
+
await this.publish(RedisConstants_1.COMMAND_REDIS_CHANNEL, JSON.stringify(messageWithSenderId));
|
|
28
28
|
}
|
|
29
29
|
async publishToWorkerChannel(message) {
|
|
30
|
-
await this.publish(
|
|
30
|
+
await this.publish(RedisConstants_1.WORKER_RESPONSE_REDIS_CHANNEL, JSON.stringify(message));
|
|
31
31
|
}
|
|
32
32
|
async setIfNotExists(key, value) {
|
|
33
33
|
var _a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RedisServicePubSubPublisher.js","sourceRoot":"","sources":["../../../src/services/redis/RedisServicePubSubPublisher.ts"],"names":[],"mappings":";;;;;;;;;AAAA,mCAAiC;AACjC,
|
|
1
|
+
{"version":3,"file":"RedisServicePubSubPublisher.js","sourceRoot":"","sources":["../../../src/services/redis/RedisServicePubSubPublisher.ts"],"names":[],"mappings":";;;;;;;;;AAAA,mCAAiC;AACjC,qDAAwF;AAKxF,uEAAmE;AAG5D,IAAM,2BAA2B,GAAjC,MAAM,2BAA4B,SAAQ,gDAAsB;IACtE,KAAK,CAAC,IAAI;QACT,MAAM,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAe,EAAE,OAAe;;QAC7C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QACnB,CAAC;QACD,MAAM,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC5B,OAAoD;QAEpD,MAAM,mBAAmB,GAAG,OAAoC,CAAC;QACjE,mBAAmB,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC7C,MAAM,IAAI,CAAC,OAAO,CAAC,sCAAqB,EAAE,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,OAAyC;QACrE,MAAM,IAAI,CAAC,OAAO,CAAC,8CAA6B,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5E,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,GAAW,EAAE,KAAa;;QAC9C,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAEzC,MAAM,OAAO,GAAG,MAAM,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA,CAAC;QAE1D,OAAO,CAAC,CAAC,OAAO,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,GAAW,EAAE,GAAW;;QAC3C,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAEzC,MAAM,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,GAAW;;QACpB,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAEzC,OAAO,MAAM,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,GAAG,CAAC,GAAG,CAAC,CAAA,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAAW;;QACtB,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAEzC,MAAM,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,GAAG,CAAC,GAAG,CAAC,CAAA,CAAC;IAClC,CAAC;CACD,CAAA;AAjDY,kEAA2B;sCAA3B,2BAA2B;IADvC,IAAA,gBAAO,GAAE;GACG,2BAA2B,CAiDvC"}
|
|
@@ -8,7 +8,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.RedisServicePubSubSubscriber = void 0;
|
|
10
10
|
const typedi_1 = require("typedi");
|
|
11
|
-
const
|
|
11
|
+
const RedisConstants_1 = require("./RedisConstants");
|
|
12
12
|
const RedisServiceBaseClasses_1 = require("./RedisServiceBaseClasses");
|
|
13
13
|
let RedisServicePubSubSubscriber = class RedisServicePubSubSubscriber extends RedisServiceBaseClasses_1.RedisServiceBaseReceiver {
|
|
14
14
|
async init() {
|
|
@@ -47,16 +47,16 @@ let RedisServicePubSubSubscriber = class RedisServicePubSubSubscriber extends Re
|
|
|
47
47
|
}));
|
|
48
48
|
}
|
|
49
49
|
async subscribeToCommandChannel() {
|
|
50
|
-
await this.subscribe(
|
|
50
|
+
await this.subscribe(RedisConstants_1.COMMAND_REDIS_CHANNEL);
|
|
51
51
|
}
|
|
52
52
|
async subscribeToWorkerResponseChannel() {
|
|
53
|
-
await this.subscribe(
|
|
53
|
+
await this.subscribe(RedisConstants_1.WORKER_RESPONSE_REDIS_CHANNEL);
|
|
54
54
|
}
|
|
55
55
|
async unSubscribeFromCommandChannel() {
|
|
56
|
-
await this.unsubscribe(
|
|
56
|
+
await this.unsubscribe(RedisConstants_1.COMMAND_REDIS_CHANNEL);
|
|
57
57
|
}
|
|
58
58
|
async unSubscribeFromWorkerResponseChannel() {
|
|
59
|
-
await this.unsubscribe(
|
|
59
|
+
await this.unsubscribe(RedisConstants_1.WORKER_RESPONSE_REDIS_CHANNEL);
|
|
60
60
|
}
|
|
61
61
|
};
|
|
62
62
|
exports.RedisServicePubSubSubscriber = RedisServicePubSubSubscriber;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RedisServicePubSubSubscriber.js","sourceRoot":"","sources":["../../../src/services/redis/RedisServicePubSubSubscriber.ts"],"names":[],"mappings":";;;;;;;;;AAAA,mCAAiC;AACjC,
|
|
1
|
+
{"version":3,"file":"RedisServicePubSubSubscriber.js","sourceRoot":"","sources":["../../../src/services/redis/RedisServicePubSubSubscriber.ts"],"names":[],"mappings":";;;;;;;;;AAAA,mCAAiC;AACjC,qDAAwF;AACxF,uEAAqE;AAG9D,IAAM,4BAA4B,GAAlC,MAAM,4BAA6B,SAAQ,kDAAwB;IACzE,KAAK,CAAC,IAAI;;QACT,MAAM,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAE/B,MAAA,IAAI,CAAC,WAAW,0CAAE,EAAE,CAAC,SAAS,EAAE,CAAC,OAAe,EAAE,OAAe,EAAE,EAAE;YACpE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,OAAmD,EAAE,EAAE,CACpF,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CACzB,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,OAAe;;QAC9B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QACnB,CAAC;QACD,MAAM,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,SAAS,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAc,EAAE,EAAE;YACpE,IAAI,KAAK,EAAE,CAAC;gBACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,OAAO,EAAE,CAAC,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,OAAO,EAAE,CAAC,CAAC;YAC5E,CAAC;QACF,CAAC,CAAC,CAAA,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAe;;QAChC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,OAAO;QACR,CAAC;QACD,MAAM,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,WAAW,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAc,EAAE,EAAE;YACtE,IAAI,KAAK,EAAE,CAAC;gBACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,OAAO,EAAE,CAAC,CAAC;YAClE,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kDAAkD,OAAO,EAAE,CAAC,CAAC;YAChF,CAAC;QACF,CAAC,CAAC,CAAA,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,yBAAyB;QAC9B,MAAM,IAAI,CAAC,SAAS,CAAC,sCAAqB,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,gCAAgC;QACrC,MAAM,IAAI,CAAC,SAAS,CAAC,8CAA6B,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,6BAA6B;QAClC,MAAM,IAAI,CAAC,WAAW,CAAC,sCAAqB,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,oCAAoC;QACzC,MAAM,IAAI,CAAC,WAAW,CAAC,8CAA6B,CAAC,CAAC;IACvD,CAAC;CACD,CAAA;AApDY,oEAA4B;uCAA5B,4BAA4B;IADxC,IAAA,gBAAO,GAAE;GACG,4BAA4B,CAoDxC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Logger } from '../../Logger';
|
|
2
|
+
import ioRedis from 'ioredis';
|
|
3
|
+
import type { Cluster, RedisOptions } from 'ioredis';
|
|
4
|
+
import type { RedisClientType } from './RedisServiceBaseClasses';
|
|
5
|
+
export declare class RedisClientService {
|
|
6
|
+
private readonly logger;
|
|
7
|
+
private readonly clients;
|
|
8
|
+
constructor(logger: Logger);
|
|
9
|
+
createClient(arg: {
|
|
10
|
+
type: RedisClientType;
|
|
11
|
+
extraOptions?: RedisOptions;
|
|
12
|
+
}): ioRedis | Cluster;
|
|
13
|
+
disconnectClients(): void;
|
|
14
|
+
toValidPrefix(prefix: string): string;
|
|
15
|
+
private createRegularClient;
|
|
16
|
+
private createClusterClient;
|
|
17
|
+
private getOptions;
|
|
18
|
+
private retryStrategy;
|
|
19
|
+
private clusterNodes;
|
|
20
|
+
}
|
|
@@ -0,0 +1,125 @@
|
|
|
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 __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.RedisClientService = void 0;
|
|
16
|
+
const typedi_1 = require("typedi");
|
|
17
|
+
const config_1 = __importDefault(require("../../config"));
|
|
18
|
+
const Logger_1 = require("../../Logger");
|
|
19
|
+
const ioredis_1 = __importDefault(require("ioredis"));
|
|
20
|
+
const OnShutdown_1 = require("../../decorators/OnShutdown");
|
|
21
|
+
let RedisClientService = class RedisClientService {
|
|
22
|
+
constructor(logger) {
|
|
23
|
+
this.logger = logger;
|
|
24
|
+
this.clients = new Set();
|
|
25
|
+
}
|
|
26
|
+
createClient(arg) {
|
|
27
|
+
const client = this.clusterNodes().length > 0
|
|
28
|
+
? this.createClusterClient(arg)
|
|
29
|
+
: this.createRegularClient(arg);
|
|
30
|
+
this.clients.add(client);
|
|
31
|
+
return client;
|
|
32
|
+
}
|
|
33
|
+
disconnectClients() {
|
|
34
|
+
for (const client of this.clients) {
|
|
35
|
+
client.disconnect();
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
toValidPrefix(prefix) {
|
|
39
|
+
if (this.clusterNodes().length > 0) {
|
|
40
|
+
if (!prefix.startsWith('{'))
|
|
41
|
+
prefix = '{' + prefix;
|
|
42
|
+
if (!prefix.endsWith('}'))
|
|
43
|
+
prefix += '}';
|
|
44
|
+
}
|
|
45
|
+
return prefix;
|
|
46
|
+
}
|
|
47
|
+
createRegularClient({ type, extraOptions, }) {
|
|
48
|
+
const options = this.getOptions({ extraOptions });
|
|
49
|
+
const { host, port } = config_1.default.getEnv('queue.bull.redis');
|
|
50
|
+
options.host = host;
|
|
51
|
+
options.port = port;
|
|
52
|
+
this.logger.debug('[Redis] Initializing regular client', { type, host, port });
|
|
53
|
+
return new ioredis_1.default(options);
|
|
54
|
+
}
|
|
55
|
+
createClusterClient({ type, extraOptions, }) {
|
|
56
|
+
const options = this.getOptions({ extraOptions });
|
|
57
|
+
const clusterNodes = this.clusterNodes();
|
|
58
|
+
this.logger.debug('[Redis] Initializing cluster client', { type, clusterNodes });
|
|
59
|
+
return new ioredis_1.default.Cluster(clusterNodes, {
|
|
60
|
+
redisOptions: options,
|
|
61
|
+
clusterRetryStrategy: this.retryStrategy(),
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
getOptions({ extraOptions }) {
|
|
65
|
+
const { username, password, db, tls } = config_1.default.getEnv('queue.bull.redis');
|
|
66
|
+
const options = {
|
|
67
|
+
username,
|
|
68
|
+
password,
|
|
69
|
+
db,
|
|
70
|
+
enableReadyCheck: false,
|
|
71
|
+
maxRetriesPerRequest: null,
|
|
72
|
+
retryStrategy: this.retryStrategy(),
|
|
73
|
+
...extraOptions,
|
|
74
|
+
};
|
|
75
|
+
if (tls)
|
|
76
|
+
options.tls = {};
|
|
77
|
+
return options;
|
|
78
|
+
}
|
|
79
|
+
retryStrategy() {
|
|
80
|
+
const RETRY_INTERVAL = 500;
|
|
81
|
+
const RESET_LENGTH = 30000;
|
|
82
|
+
const MAX_TIMEOUT = config_1.default.getEnv('queue.bull.redis.timeoutThreshold');
|
|
83
|
+
let lastAttemptTs = 0;
|
|
84
|
+
let cumulativeTimeout = 0;
|
|
85
|
+
return () => {
|
|
86
|
+
const nowTs = Date.now();
|
|
87
|
+
if (nowTs - lastAttemptTs > RESET_LENGTH) {
|
|
88
|
+
cumulativeTimeout = 0;
|
|
89
|
+
lastAttemptTs = nowTs;
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
cumulativeTimeout += nowTs - lastAttemptTs;
|
|
93
|
+
lastAttemptTs = nowTs;
|
|
94
|
+
if (cumulativeTimeout > MAX_TIMEOUT) {
|
|
95
|
+
this.logger.error(`[Redis] Unable to connect after max timeout of ${MAX_TIMEOUT} ms`);
|
|
96
|
+
this.logger.error('Exiting process...');
|
|
97
|
+
process.exit(1);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return RETRY_INTERVAL;
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
clusterNodes() {
|
|
104
|
+
return config_1.default
|
|
105
|
+
.getEnv('queue.bull.redis.clusterNodes')
|
|
106
|
+
.split(',')
|
|
107
|
+
.filter((pair) => pair.trim().length > 0)
|
|
108
|
+
.map((pair) => {
|
|
109
|
+
const [host, port] = pair.split(':');
|
|
110
|
+
return { host, port: parseInt(port) };
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
exports.RedisClientService = RedisClientService;
|
|
115
|
+
__decorate([
|
|
116
|
+
(0, OnShutdown_1.OnShutdown)(),
|
|
117
|
+
__metadata("design:type", Function),
|
|
118
|
+
__metadata("design:paramtypes", []),
|
|
119
|
+
__metadata("design:returntype", void 0)
|
|
120
|
+
], RedisClientService.prototype, "disconnectClients", null);
|
|
121
|
+
exports.RedisClientService = RedisClientService = __decorate([
|
|
122
|
+
(0, typedi_1.Service)(),
|
|
123
|
+
__metadata("design:paramtypes", [Logger_1.Logger])
|
|
124
|
+
], RedisClientService);
|
|
125
|
+
//# sourceMappingURL=redis-client.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redis-client.service.js","sourceRoot":"","sources":["../../../src/services/redis/redis-client.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ import type { GlobalRole, User } from '../databases/entities/User';
|
|
|
5
5
|
import type { ListQuery } from '../requests';
|
|
6
6
|
import { type Resource, type Scope } from '@n8n/permissions';
|
|
7
7
|
import { License } from '../License';
|
|
8
|
+
import type { CredentialsEntity } from '../databases/entities/CredentialsEntity';
|
|
8
9
|
export type RoleNamespace = 'global' | 'project' | 'credential' | 'workflow';
|
|
9
10
|
export interface RoleMap {
|
|
10
11
|
global: GlobalRole[];
|
|
@@ -13,6 +14,9 @@ export interface RoleMap {
|
|
|
13
14
|
workflow: WorkflowSharingRole[];
|
|
14
15
|
}
|
|
15
16
|
export type AllRoleTypes = GlobalRole | ProjectRole | WorkflowSharingRole | CredentialSharingRole;
|
|
17
|
+
export type ScopesField = {
|
|
18
|
+
scopes: Scope[];
|
|
19
|
+
};
|
|
16
20
|
export declare class RoleService {
|
|
17
21
|
private readonly license;
|
|
18
22
|
constructor(license: License);
|
|
@@ -25,6 +29,7 @@ export declare class RoleService {
|
|
|
25
29
|
getRoleScopes(role: GlobalRole | ProjectRole | WorkflowSharingRole | CredentialSharingRole, filters?: Resource[]): Scope[];
|
|
26
30
|
getScopesBy(projectRoles: Set<ProjectRole>): Set<Scope>;
|
|
27
31
|
addScopes(rawWorkflow: ListQuery.Workflow.WithSharing | ListQuery.Workflow.WithOwnedByAndSharedWith, user: User, userProjectRelations: ProjectRelation[]): ListQuery.Workflow.WithScopes;
|
|
32
|
+
addScopes(rawCredential: CredentialsEntity, user: User, userProjectRelations: ProjectRelation[]): CredentialsEntity & ScopesField;
|
|
28
33
|
addScopes(rawCredential: ListQuery.Credentials.WithSharing | ListQuery.Credentials.WithOwnedByAndSharedWith, user: User, userProjectRelations: ProjectRelation[]): ListQuery.Credentials.WithScopes;
|
|
29
34
|
combineResourceScopes(type: 'workflow' | 'credential', user: User, shared: SharedCredentials[] | SharedWorkflow[], userProjectRelations: ProjectRelation[]): Scope[];
|
|
30
35
|
isRoleLicensed(role: AllRoleTypes): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"role.service.js","sourceRoot":"","sources":["../../src/services/role.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAOA,6DAIoC;AACpC,+DAKqC;AACrC,iEAKsC;AAEtC,kDAA4E;AAC5E,mCAAiC;AACjC,+CAAgD;AAChD,uCAAoC;
|
|
1
|
+
{"version":3,"file":"role.service.js","sourceRoot":"","sources":["../../src/services/role.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
import { UsageMetricsRepository } from '../databases/repositories/usageMetrics.repository';
|
|
2
|
+
import { WorkflowRepository } from '../databases/repositories/workflow.repository';
|
|
2
3
|
export declare class UsageMetricsService {
|
|
3
4
|
private readonly usageMetricsRepository;
|
|
4
|
-
|
|
5
|
+
private readonly workflowRepository;
|
|
6
|
+
constructor(usageMetricsRepository: UsageMetricsRepository, workflowRepository: WorkflowRepository);
|
|
5
7
|
collectUsageMetrics(): Promise<{
|
|
6
8
|
name: string;
|
|
7
9
|
value: number;
|
|
8
10
|
}[]>;
|
|
11
|
+
collectPassthroughData(): Promise<{
|
|
12
|
+
activeWorkflowIds: string[];
|
|
13
|
+
}>;
|
|
9
14
|
}
|
|
@@ -12,9 +12,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.UsageMetricsService = void 0;
|
|
13
13
|
const usageMetrics_repository_1 = require("../databases/repositories/usageMetrics.repository");
|
|
14
14
|
const typedi_1 = require("typedi");
|
|
15
|
+
const workflow_repository_1 = require("../databases/repositories/workflow.repository");
|
|
15
16
|
let UsageMetricsService = class UsageMetricsService {
|
|
16
|
-
constructor(usageMetricsRepository) {
|
|
17
|
+
constructor(usageMetricsRepository, workflowRepository) {
|
|
17
18
|
this.usageMetricsRepository = usageMetricsRepository;
|
|
19
|
+
this.workflowRepository = workflowRepository;
|
|
18
20
|
}
|
|
19
21
|
async collectUsageMetrics() {
|
|
20
22
|
const { activeWorkflows, totalWorkflows, enabledUsers, totalUsers, totalCredentials, productionExecutions, manualExecutions, } = await this.usageMetricsRepository.getLicenseRenewalMetrics();
|
|
@@ -28,10 +30,16 @@ let UsageMetricsService = class UsageMetricsService {
|
|
|
28
30
|
{ name: 'manualExecutions', value: manualExecutions },
|
|
29
31
|
];
|
|
30
32
|
}
|
|
33
|
+
async collectPassthroughData() {
|
|
34
|
+
return {
|
|
35
|
+
activeWorkflowIds: await this.workflowRepository.getActiveIds(),
|
|
36
|
+
};
|
|
37
|
+
}
|
|
31
38
|
};
|
|
32
39
|
exports.UsageMetricsService = UsageMetricsService;
|
|
33
40
|
exports.UsageMetricsService = UsageMetricsService = __decorate([
|
|
34
41
|
(0, typedi_1.Service)(),
|
|
35
|
-
__metadata("design:paramtypes", [usageMetrics_repository_1.UsageMetricsRepository
|
|
42
|
+
__metadata("design:paramtypes", [usageMetrics_repository_1.UsageMetricsRepository,
|
|
43
|
+
workflow_repository_1.WorkflowRepository])
|
|
36
44
|
], UsageMetricsService);
|
|
37
45
|
//# sourceMappingURL=usageMetrics.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usageMetrics.service.js","sourceRoot":"","sources":["../../src/services/usageMetrics.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8FAA0F;AAC1F,mCAAiC;
|
|
1
|
+
{"version":3,"file":"usageMetrics.service.js","sourceRoot":"","sources":["../../src/services/usageMetrics.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8FAA0F;AAC1F,mCAAiC;AACjC,sFAAkF;AAG3E,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAC/B,YACkB,sBAA8C,EAC9C,kBAAsC;QADtC,2BAAsB,GAAtB,sBAAsB,CAAwB;QAC9C,uBAAkB,GAAlB,kBAAkB,CAAoB;IACrD,CAAC;IAEJ,KAAK,CAAC,mBAAmB;QACxB,MAAM,EACL,eAAe,EACf,cAAc,EACd,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,GAChB,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,wBAAwB,EAAE,CAAC;QAEjE,OAAO;YACN,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,eAAe,EAAE;YACnD,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,cAAc,EAAE;YACjD,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,EAAE;YAC7C,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE;YACzC,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,gBAAgB,EAAE;YACrD,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,oBAAoB,EAAE;YAC7D,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,gBAAgB,EAAE;SACrD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,sBAAsB;QAC3B,OAAO;YACN,iBAAiB,EAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE;SAC/D,CAAC;IACH,CAAC;CACD,CAAA;AAjCY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,gBAAO,GAAE;qCAGiC,gDAAsB;QAC1B,wCAAkB;GAH5C,mBAAmB,CAiC/B"}
|
|
@@ -7,12 +7,14 @@ import { Logger } from '../Logger';
|
|
|
7
7
|
import { UserManagementMailer } from '../UserManagement/email';
|
|
8
8
|
import { UrlService } from '../services/url.service';
|
|
9
9
|
import type { UserRequest } from '../requests';
|
|
10
|
+
import { EventRelay } from '../eventbus/event-relay.service';
|
|
10
11
|
export declare class UserService {
|
|
11
12
|
private readonly logger;
|
|
12
13
|
private readonly userRepository;
|
|
13
14
|
private readonly mailer;
|
|
14
15
|
private readonly urlService;
|
|
15
|
-
|
|
16
|
+
private readonly eventRelay;
|
|
17
|
+
constructor(logger: Logger, userRepository: UserRepository, mailer: UserManagementMailer, urlService: UrlService, eventRelay: EventRelay);
|
|
16
18
|
update(userId: string, data: Partial<User>): Promise<void>;
|
|
17
19
|
getManager(): import("@n8n/typeorm").EntityManager;
|
|
18
20
|
updateSettings(userId: string, newSettings: Partial<IUserSettings>): Promise<void>;
|
|
@@ -18,12 +18,14 @@ const email_1 = require("../UserManagement/email");
|
|
|
18
18
|
const InternalHooks_1 = require("../InternalHooks");
|
|
19
19
|
const url_service_1 = require("../services/url.service");
|
|
20
20
|
const internal_server_error_1 = require("../errors/response-errors/internal-server.error");
|
|
21
|
+
const event_relay_service_1 = require("../eventbus/event-relay.service");
|
|
21
22
|
let UserService = class UserService {
|
|
22
|
-
constructor(logger, userRepository, mailer, urlService) {
|
|
23
|
+
constructor(logger, userRepository, mailer, urlService, eventRelay) {
|
|
23
24
|
this.logger = logger;
|
|
24
25
|
this.userRepository = userRepository;
|
|
25
26
|
this.mailer = mailer;
|
|
26
27
|
this.urlService = urlService;
|
|
28
|
+
this.eventRelay = eventRelay;
|
|
27
29
|
}
|
|
28
30
|
async update(userId, data) {
|
|
29
31
|
const user = await this.userRepository.findOneBy({ id: userId });
|
|
@@ -122,6 +124,10 @@ let UserService = class UserService {
|
|
|
122
124
|
email_sent: result.emailSent,
|
|
123
125
|
invitee_role: role,
|
|
124
126
|
});
|
|
127
|
+
this.eventRelay.emit('user-invited', {
|
|
128
|
+
user: owner,
|
|
129
|
+
targetUserId: Object.values(toInviteUsers),
|
|
130
|
+
});
|
|
125
131
|
}
|
|
126
132
|
catch (e) {
|
|
127
133
|
if (e instanceof Error) {
|
|
@@ -130,6 +136,7 @@ let UserService = class UserService {
|
|
|
130
136
|
message_type: 'New user invite',
|
|
131
137
|
public_api: false,
|
|
132
138
|
});
|
|
139
|
+
this.eventRelay.emit('email-failed', { user: owner, messageType: 'New user invite' });
|
|
133
140
|
this.logger.error('Failed to send email', {
|
|
134
141
|
userId: owner.id,
|
|
135
142
|
inviteAcceptUrl,
|
|
@@ -175,6 +182,7 @@ exports.UserService = UserService = __decorate([
|
|
|
175
182
|
__metadata("design:paramtypes", [Logger_1.Logger,
|
|
176
183
|
user_repository_1.UserRepository,
|
|
177
184
|
email_1.UserManagementMailer,
|
|
178
|
-
url_service_1.UrlService
|
|
185
|
+
url_service_1.UrlService,
|
|
186
|
+
event_relay_service_1.EventRelay])
|
|
179
187
|
], UserService);
|
|
180
188
|
//# sourceMappingURL=user.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.service.js","sourceRoot":"","sources":["../../src/services/user.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAA4C;AAE5C,+CAAqF;AAGrF,sEAAkE;AAGlE,qCAAkC;AAClC,kDAA8D;AAC9D,mDAAgD;AAChD,wDAAoD;AAEpD,0FAAqF;
|
|
1
|
+
{"version":3,"file":"user.service.js","sourceRoot":"","sources":["../../src/services/user.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import express from 'express';
|
|
2
2
|
import { AuthService } from '../../../auth/auth.service';
|
|
3
3
|
import { AuthenticatedRequest } from '../../../requests';
|
|
4
|
-
import { InternalHooks } from '../../../InternalHooks';
|
|
5
4
|
import { UrlService } from '../../../services/url.service';
|
|
6
5
|
import type { SamlLoginBinding } from '../types';
|
|
7
6
|
import { SamlService } from '../saml.service.ee';
|
|
8
7
|
import { SamlConfiguration } from '../types/requests';
|
|
8
|
+
import { EventRelay } from '../../../eventbus/event-relay.service';
|
|
9
9
|
export declare class SamlController {
|
|
10
10
|
private readonly authService;
|
|
11
11
|
private readonly samlService;
|
|
12
12
|
private readonly urlService;
|
|
13
|
-
private readonly
|
|
14
|
-
constructor(authService: AuthService, samlService: SamlService, urlService: UrlService,
|
|
13
|
+
private readonly eventRelay;
|
|
14
|
+
constructor(authService: AuthService, samlService: SamlService, urlService: UrlService, eventRelay: EventRelay);
|
|
15
15
|
getServiceProviderMetadata(_: express.Request, res: express.Response): Promise<express.Response<any, Record<string, any>>>;
|
|
16
16
|
configGet(): Promise<{
|
|
17
17
|
entityID: string;
|
|
@@ -18,7 +18,6 @@ const class_validator_1 = require("class-validator");
|
|
|
18
18
|
const url_1 = __importDefault(require("url"));
|
|
19
19
|
const decorators_1 = require("../../../decorators");
|
|
20
20
|
const auth_service_1 = require("../../../auth/auth.service");
|
|
21
|
-
const InternalHooks_1 = require("../../../InternalHooks");
|
|
22
21
|
const querystring_1 = __importDefault(require("querystring"));
|
|
23
22
|
const bad_request_error_1 = require("../../../errors/response-errors/bad-request.error");
|
|
24
23
|
const auth_error_1 = require("../../../errors/response-errors/auth.error");
|
|
@@ -30,12 +29,13 @@ const samlHelpers_1 = require("../samlHelpers");
|
|
|
30
29
|
const samlEnabledMiddleware_1 = require("../middleware/samlEnabledMiddleware");
|
|
31
30
|
const saml_service_ee_1 = require("../saml.service.ee");
|
|
32
31
|
const initSsoPost_1 = require("../views/initSsoPost");
|
|
32
|
+
const event_relay_service_1 = require("../../../eventbus/event-relay.service");
|
|
33
33
|
let SamlController = class SamlController {
|
|
34
|
-
constructor(authService, samlService, urlService,
|
|
34
|
+
constructor(authService, samlService, urlService, eventRelay) {
|
|
35
35
|
this.authService = authService;
|
|
36
36
|
this.samlService = samlService;
|
|
37
37
|
this.urlService = urlService;
|
|
38
|
-
this.
|
|
38
|
+
this.eventRelay = eventRelay;
|
|
39
39
|
}
|
|
40
40
|
async getServiceProviderMetadata(_, res) {
|
|
41
41
|
return res
|
|
@@ -87,7 +87,7 @@ let SamlController = class SamlController {
|
|
|
87
87
|
}
|
|
88
88
|
}
|
|
89
89
|
if (loginResult.authenticatedUser) {
|
|
90
|
-
|
|
90
|
+
this.eventRelay.emit('user-logged-in', {
|
|
91
91
|
user: loginResult.authenticatedUser,
|
|
92
92
|
authenticationMethod: 'saml',
|
|
93
93
|
});
|
|
@@ -105,8 +105,8 @@ let SamlController = class SamlController {
|
|
|
105
105
|
return res.status(202).send(loginResult.attributes);
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
|
-
|
|
109
|
-
|
|
108
|
+
this.eventRelay.emit('user-login-failed', {
|
|
109
|
+
userEmail: (_c = loginResult.attributes.email) !== null && _c !== void 0 ? _c : 'unknown',
|
|
110
110
|
authenticationMethod: 'saml',
|
|
111
111
|
});
|
|
112
112
|
throw new auth_error_1.AuthError('SAML Authentication failed');
|
|
@@ -115,8 +115,8 @@ let SamlController = class SamlController {
|
|
|
115
115
|
if ((0, samlHelpers_1.isConnectionTestRequest)(req)) {
|
|
116
116
|
return res.send((0, samlConnectionTestFailed_1.getSamlConnectionTestFailedView)(error.message));
|
|
117
117
|
}
|
|
118
|
-
|
|
119
|
-
|
|
118
|
+
this.eventRelay.emit('user-login-failed', {
|
|
119
|
+
userEmail: 'unknown',
|
|
120
120
|
authenticationMethod: 'saml',
|
|
121
121
|
});
|
|
122
122
|
throw new auth_error_1.AuthError('SAML Authentication failed: ' + error.message);
|
|
@@ -213,6 +213,6 @@ exports.SamlController = SamlController = __decorate([
|
|
|
213
213
|
__metadata("design:paramtypes", [auth_service_1.AuthService,
|
|
214
214
|
saml_service_ee_1.SamlService,
|
|
215
215
|
url_service_1.UrlService,
|
|
216
|
-
|
|
216
|
+
event_relay_service_1.EventRelay])
|
|
217
217
|
], SamlController);
|
|
218
218
|
//# sourceMappingURL=saml.controller.ee.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"saml.controller.ee.js","sourceRoot":"","sources":["../../../../src/sso/saml/routes/saml.controller.ee.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sDAA8B;AAC9B,qDAA2C;AAE3C,8CAAsB;AAEtB,6CAAsE;AACtE,sDAAkD;AAElD,
|
|
1
|
+
{"version":3,"file":"saml.controller.ee.js","sourceRoot":"","sources":["../../../../src/sso/saml/routes/saml.controller.ee.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import type { FlowResult } from 'samlify/types/src/flow';
|
|
1
2
|
import type { User } from '../../databases/entities/User';
|
|
2
3
|
import type { SamlPreferences } from './types/samlPreferences';
|
|
3
4
|
import type { SamlUserAttributes } from './types/samlUserAttributes';
|
|
4
|
-
import type { FlowResult } from 'samlify/types/src/flow';
|
|
5
5
|
import type { SamlAttributeMapping } from './types/samlAttributeMapping';
|
|
6
6
|
import type { SamlConfiguration } from './types/requests';
|
|
7
7
|
export declare function isSamlLoginEnabled(): boolean;
|
|
@@ -11,7 +11,6 @@ export declare function setSamlLoginLabel(label: string): void;
|
|
|
11
11
|
export declare function isSamlLicensed(): boolean;
|
|
12
12
|
export declare function isSamlLicensedAndEnabled(): boolean;
|
|
13
13
|
export declare const isSamlPreferences: (candidate: unknown) => candidate is SamlPreferences;
|
|
14
|
-
export declare function generatePassword(): string;
|
|
15
14
|
export declare function createUserFromSamlAttributes(attributes: SamlUserAttributes): Promise<User>;
|
|
16
15
|
export declare function updateUserFromSamlAttributes(user: User, attributes: SamlUserAttributes): Promise<User>;
|
|
17
16
|
type GetMappedSamlReturn = {
|