n8n 1.42.1 → 1.43.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/dist/AbstractServer.js +4 -1
- package/dist/AbstractServer.js.map +1 -1
- package/dist/ActiveWebhooks.js +2 -2
- package/dist/ActiveWebhooks.js.map +1 -1
- package/dist/ActiveWorkflowManager.js +2 -7
- package/dist/ActiveWorkflowManager.js.map +1 -1
- package/dist/CredentialsHelper.d.ts +5 -7
- package/dist/CredentialsHelper.js +38 -34
- package/dist/CredentialsHelper.js.map +1 -1
- package/dist/Interfaces.d.ts +2 -1
- package/dist/Interfaces.js.map +1 -1
- package/dist/InternalHooks.d.ts +29 -3
- package/dist/InternalHooks.js +39 -9
- package/dist/InternalHooks.js.map +1 -1
- package/dist/Ldap/helpers.d.ts +1 -29
- package/dist/Ldap/helpers.js +16 -7
- package/dist/Ldap/helpers.js.map +1 -1
- package/dist/Ldap/ldap.service.js +1 -1
- package/dist/Ldap/ldap.service.js.map +1 -1
- package/dist/License.d.ts +4 -0
- package/dist/License.js +13 -0
- package/dist/License.js.map +1 -1
- package/dist/Mfa/mfa.service.d.ts +1 -1
- package/dist/Mfa/mfa.service.js +22 -10
- package/dist/Mfa/mfa.service.js.map +1 -1
- package/dist/PublicApi/types.d.ts +5 -2
- package/dist/PublicApi/types.js.map +1 -1
- package/dist/PublicApi/v1/handlers/audit/audit.handler.d.ts +3 -1
- package/dist/PublicApi/v1/handlers/audit/audit.handler.js +1 -1
- package/dist/PublicApi/v1/handlers/audit/audit.handler.js.map +1 -1
- package/dist/PublicApi/v1/handlers/credentials/credentials.handler.d.ts +6 -5
- package/dist/PublicApi/v1/handlers/credentials/credentials.handler.js +1 -3
- package/dist/PublicApi/v1/handlers/credentials/credentials.handler.js.map +1 -1
- package/dist/PublicApi/v1/handlers/credentials/credentials.service.js +4 -2
- package/dist/PublicApi/v1/handlers/credentials/credentials.service.js.map +1 -1
- package/dist/PublicApi/v1/handlers/executions/executions.handler.d.ts +2 -2
- package/dist/PublicApi/v1/handlers/executions/executions.handler.js +3 -6
- package/dist/PublicApi/v1/handlers/executions/executions.handler.js.map +1 -1
- package/dist/PublicApi/v1/handlers/sourceControl/sourceControl.handler.d.ts +3 -1
- package/dist/PublicApi/v1/handlers/sourceControl/sourceControl.handler.js +1 -1
- package/dist/PublicApi/v1/handlers/sourceControl/sourceControl.handler.js.map +1 -1
- package/dist/PublicApi/v1/handlers/tags/tags.handler.d.ts +15 -5
- package/dist/PublicApi/v1/handlers/tags/tags.handler.js +5 -5
- package/dist/PublicApi/v1/handlers/tags/tags.handler.js.map +1 -1
- package/dist/PublicApi/v1/handlers/users/users.handler.ee.d.ts +6 -3
- package/dist/PublicApi/v1/handlers/users/users.handler.ee.js +2 -2
- package/dist/PublicApi/v1/handlers/users/users.handler.ee.js.map +1 -1
- package/dist/PublicApi/v1/handlers/workflows/workflows.handler.d.ts +22 -8
- package/dist/PublicApi/v1/handlers/workflows/workflows.handler.js +48 -44
- package/dist/PublicApi/v1/handlers/workflows/workflows.handler.js.map +1 -1
- package/dist/PublicApi/v1/handlers/workflows/workflows.service.d.ts +4 -2
- package/dist/PublicApi/v1/handlers/workflows/workflows.service.js +18 -13
- package/dist/PublicApi/v1/handlers/workflows/workflows.service.js.map +1 -1
- package/dist/PublicApi/v1/shared/middlewares/global.middleware.d.ts +8 -2
- package/dist/PublicApi/v1/shared/middlewares/global.middleware.js +22 -7
- package/dist/PublicApi/v1/shared/middlewares/global.middleware.js.map +1 -1
- package/dist/Server.js +4 -0
- package/dist/Server.js.map +1 -1
- package/dist/UserManagement/PermissionChecker.d.ts +4 -6
- package/dist/UserManagement/PermissionChecker.js +22 -31
- package/dist/UserManagement/PermissionChecker.js.map +1 -1
- package/dist/UserManagement/email/NodeMailer.js +1 -0
- package/dist/UserManagement/email/NodeMailer.js.map +1 -1
- package/dist/WaitTracker.js +3 -3
- package/dist/WaitTracker.js.map +1 -1
- package/dist/WaitingWebhooks.js +1 -8
- package/dist/WaitingWebhooks.js.map +1 -1
- package/dist/WebhookHelpers.js +7 -14
- package/dist/WebhookHelpers.js.map +1 -1
- package/dist/WorkflowExecuteAdditionalData.d.ts +2 -2
- package/dist/WorkflowExecuteAdditionalData.js +10 -11
- package/dist/WorkflowExecuteAdditionalData.js.map +1 -1
- package/dist/WorkflowRunner.js +1 -1
- package/dist/WorkflowRunner.js.map +1 -1
- package/dist/auth/auth.service.js +2 -2
- package/dist/auth/auth.service.js.map +1 -1
- package/dist/build.tsbuildinfo +1 -1
- package/dist/commands/import/credentials.d.ts +2 -2
- package/dist/commands/import/credentials.js +55 -31
- package/dist/commands/import/credentials.js.map +1 -1
- package/dist/commands/import/workflow.d.ts +2 -1
- package/dist/commands/import/workflow.js +50 -21
- package/dist/commands/import/workflow.js.map +1 -1
- package/dist/commands/ldap/reset.d.ts +9 -0
- package/dist/commands/ldap/reset.js +96 -1
- package/dist/commands/ldap/reset.js.map +1 -1
- package/dist/commands/mfa/disable.js +11 -2
- package/dist/commands/mfa/disable.js.map +1 -1
- package/dist/commands/user-management/reset.js +5 -3
- package/dist/commands/user-management/reset.js.map +1 -1
- package/dist/commands/worker.js +1 -3
- package/dist/commands/worker.js.map +1 -1
- package/dist/config/index.d.ts +1 -0
- package/dist/config/schema.d.ts +6 -0
- package/dist/config/schema.js +6 -0
- package/dist/config/schema.js.map +1 -1
- package/dist/constants.d.ts +19 -14
- package/dist/constants.js +5 -0
- package/dist/constants.js.map +1 -1
- package/dist/controllers/auth.controller.js +2 -2
- package/dist/controllers/auth.controller.js.map +1 -1
- package/dist/controllers/dynamicNodeParameters.controller.d.ts +3 -5
- package/dist/controllers/dynamicNodeParameters.controller.js +11 -39
- package/dist/controllers/dynamicNodeParameters.controller.js.map +1 -1
- package/dist/controllers/invitation.controller.js +3 -3
- package/dist/controllers/invitation.controller.js.map +1 -1
- package/dist/controllers/oauth/abstractOAuth.controller.js +1 -1
- package/dist/controllers/oauth/abstractOAuth.controller.js.map +1 -1
- package/dist/controllers/passwordReset.controller.js +4 -4
- package/dist/controllers/passwordReset.controller.js.map +1 -1
- package/dist/controllers/project.controller.d.ts +32 -0
- package/dist/controllers/project.controller.js +227 -0
- package/dist/controllers/project.controller.js.map +1 -0
- package/dist/controllers/role.controller.d.ts +13 -0
- package/dist/controllers/role.controller.js +42 -0
- package/dist/controllers/role.controller.js.map +1 -0
- package/dist/controllers/users.controller.d.ts +9 -3
- package/dist/controllers/users.controller.js +62 -64
- package/dist/controllers/users.controller.js.map +1 -1
- package/dist/controllers/workflowStatistics.controller.d.ts +1 -1
- package/dist/controllers/workflowStatistics.controller.js +5 -3
- package/dist/controllers/workflowStatistics.controller.js.map +1 -1
- package/dist/credentials/credentials.controller.d.ts +25 -12
- package/dist/credentials/credentials.controller.js +67 -137
- package/dist/credentials/credentials.controller.js.map +1 -1
- package/dist/credentials/credentials.service.d.ts +30 -7
- package/dist/credentials/credentials.service.ee.d.ts +23 -15
- package/dist/credentials/credentials.service.ee.js +42 -39
- package/dist/credentials/credentials.service.ee.js.map +1 -1
- package/dist/credentials/credentials.service.js +157 -28
- package/dist/credentials/credentials.service.js.map +1 -1
- package/dist/databases/config.js +2 -0
- package/dist/databases/config.js.map +1 -1
- package/dist/databases/dsl/Column.js +5 -2
- package/dist/databases/dsl/Column.js.map +1 -1
- package/dist/databases/dsl/Table.d.ts +1 -0
- package/dist/databases/dsl/Table.js +2 -0
- package/dist/databases/dsl/Table.js.map +1 -1
- package/dist/databases/entities/ExecutionEntity.js +1 -1
- package/dist/databases/entities/ExecutionEntity.js.map +1 -1
- package/dist/databases/entities/Project.d.ts +12 -0
- package/dist/databases/entities/Project.js +41 -0
- package/dist/databases/entities/Project.js.map +1 -0
- package/dist/databases/entities/ProjectRelation.d.ts +11 -0
- package/dist/databases/entities/ProjectRelation.js +43 -0
- package/dist/databases/entities/ProjectRelation.js.map +1 -0
- package/dist/databases/entities/SharedCredentials.d.ts +3 -3
- package/dist/databases/entities/SharedCredentials.js +9 -9
- package/dist/databases/entities/SharedCredentials.js.map +1 -1
- package/dist/databases/entities/SharedWorkflow.d.ts +4 -4
- package/dist/databases/entities/SharedWorkflow.js +9 -9
- package/dist/databases/entities/SharedWorkflow.js.map +1 -1
- package/dist/databases/entities/User.d.ts +4 -1
- package/dist/databases/entities/User.js +20 -5
- package/dist/databases/entities/User.js.map +1 -1
- package/dist/databases/entities/index.d.ts +4 -0
- package/dist/databases/entities/index.js +4 -0
- package/dist/databases/entities/index.js.map +1 -1
- package/dist/databases/migrations/common/1711390882123-MoveSshKeysToDatabase.js +4 -0
- package/dist/databases/migrations/common/1711390882123-MoveSshKeysToDatabase.js.map +1 -1
- package/dist/databases/migrations/common/1714133768519-CreateProject.d.ts +13 -0
- package/dist/databases/migrations/common/1714133768519-CreateProject.js +221 -0
- package/dist/databases/migrations/common/1714133768519-CreateProject.js.map +1 -0
- package/dist/databases/migrations/common/1714133768521-MakeExecutionStatusNonNullable.d.ts +4 -0
- package/dist/databases/migrations/common/1714133768521-MakeExecutionStatusNonNullable.js +22 -0
- package/dist/databases/migrations/common/1714133768521-MakeExecutionStatusNonNullable.js.map +1 -0
- package/dist/databases/migrations/mysqldb/index.js +4 -0
- package/dist/databases/migrations/mysqldb/index.js.map +1 -1
- package/dist/databases/migrations/postgresdb/index.js +4 -0
- package/dist/databases/migrations/postgresdb/index.js.map +1 -1
- package/dist/databases/migrations/sqlite/index.js +4 -0
- package/dist/databases/migrations/sqlite/index.js.map +1 -1
- package/dist/databases/repositories/credentials.repository.d.ts +0 -2
- package/dist/databases/repositories/credentials.repository.js +10 -10
- package/dist/databases/repositories/credentials.repository.js.map +1 -1
- package/dist/databases/repositories/project.repository.d.ts +13 -0
- package/dist/databases/repositories/project.repository.js +56 -0
- package/dist/databases/repositories/project.repository.js.map +1 -0
- package/dist/databases/repositories/projectRelation.repository.d.ts +12 -0
- package/dist/databases/repositories/projectRelation.repository.js +59 -0
- package/dist/databases/repositories/projectRelation.repository.js.map +1 -0
- package/dist/databases/repositories/sharedCredentials.repository.d.ts +19 -8
- package/dist/databases/repositories/sharedCredentials.repository.js +73 -24
- package/dist/databases/repositories/sharedCredentials.repository.js.map +1 -1
- package/dist/databases/repositories/sharedWorkflow.repository.d.ts +14 -21
- package/dist/databases/repositories/sharedWorkflow.repository.js +104 -71
- package/dist/databases/repositories/sharedWorkflow.repository.js.map +1 -1
- package/dist/databases/repositories/user.repository.d.ts +7 -1
- package/dist/databases/repositories/user.repository.js +25 -0
- package/dist/databases/repositories/user.repository.js.map +1 -1
- package/dist/databases/repositories/workflow.repository.d.ts +3 -6
- package/dist/databases/repositories/workflow.repository.js +13 -24
- package/dist/databases/repositories/workflow.repository.js.map +1 -1
- package/dist/databases/repositories/workflowStatistics.repository.js +13 -11
- package/dist/databases/repositories/workflowStatistics.repository.js.map +1 -1
- package/dist/databases/subscribers/UserSubscriber.d.ts +6 -0
- package/dist/databases/subscribers/UserSubscriber.js +64 -0
- package/dist/databases/subscribers/UserSubscriber.js.map +1 -0
- package/dist/databases/subscribers/index.d.ts +4 -0
- package/dist/databases/subscribers/index.js +8 -0
- package/dist/databases/subscribers/index.js.map +1 -0
- package/dist/decorators/{Scopes.d.ts → Scoped.d.ts} +1 -0
- package/dist/decorators/Scoped.js +26 -0
- package/dist/decorators/Scoped.js.map +1 -0
- package/dist/decorators/constants.d.ts +1 -1
- package/dist/decorators/constants.js +2 -2
- package/dist/decorators/constants.js.map +1 -1
- package/dist/decorators/index.d.ts +1 -1
- package/dist/decorators/index.js +4 -3
- package/dist/decorators/index.js.map +1 -1
- package/dist/decorators/registerController.d.ts +2 -2
- package/dist/decorators/registerController.js +17 -13
- package/dist/decorators/registerController.js.map +1 -1
- package/dist/decorators/types.d.ts +6 -1
- package/dist/environments/sourceControl/sourceControlExport.service.ee.js +44 -2
- package/dist/environments/sourceControl/sourceControlExport.service.ee.js.map +1 -1
- package/dist/environments/sourceControl/sourceControlImport.service.ee.d.ts +2 -1
- package/dist/environments/sourceControl/sourceControlImport.service.ee.js +75 -55
- package/dist/environments/sourceControl/sourceControlImport.service.ee.js.map +1 -1
- package/dist/environments/sourceControl/types/exportableCredential.d.ts +2 -1
- package/dist/environments/sourceControl/types/exportableWorkflow.d.ts +2 -1
- package/dist/environments/sourceControl/types/resourceOwner.d.ts +8 -0
- package/dist/environments/sourceControl/types/resourceOwner.js +3 -0
- package/dist/environments/sourceControl/types/resourceOwner.js.map +1 -0
- package/dist/errors/aborted-execution-retry.error.d.ts +4 -0
- package/dist/errors/aborted-execution-retry.error.js +13 -0
- package/dist/errors/aborted-execution-retry.error.js.map +1 -0
- package/dist/errors/response-errors/forbidden.error.d.ts +4 -0
- package/dist/errors/response-errors/forbidden.error.js +11 -0
- package/dist/errors/response-errors/forbidden.error.js.map +1 -0
- package/dist/errors/response-errors/unauthenticated.error.d.ts +4 -0
- package/dist/errors/response-errors/unauthenticated.error.js +11 -0
- package/dist/errors/response-errors/unauthenticated.error.js.map +1 -0
- package/dist/executions/execution.service.ee.js +8 -7
- package/dist/executions/execution.service.ee.js.map +1 -1
- package/dist/executions/execution.service.js +5 -0
- package/dist/executions/execution.service.js.map +1 -1
- package/dist/executions/executions.controller.js +15 -9
- package/dist/executions/executions.controller.js.map +1 -1
- package/dist/middlewares/listQuery/dtos/credentials.filter.dto.d.ts +1 -0
- package/dist/middlewares/listQuery/dtos/credentials.filter.dto.js +6 -0
- package/dist/middlewares/listQuery/dtos/credentials.filter.dto.js.map +1 -1
- package/dist/middlewares/listQuery/dtos/workflow.filter.dto.d.ts +1 -0
- package/dist/middlewares/listQuery/dtos/workflow.filter.dto.js +6 -0
- package/dist/middlewares/listQuery/dtos/workflow.filter.dto.js.map +1 -1
- package/dist/permissions/checkAccess.d.ts +7 -0
- package/dist/permissions/checkAccess.js +64 -0
- package/dist/permissions/checkAccess.js.map +1 -0
- package/dist/permissions/global-roles.d.ts +4 -0
- package/dist/permissions/{roles.js → global-roles.js} +11 -5
- package/dist/permissions/global-roles.js.map +1 -0
- package/dist/permissions/project-roles.d.ts +4 -0
- package/dist/permissions/project-roles.js +53 -0
- package/dist/permissions/project-roles.js.map +1 -0
- package/dist/permissions/resource-roles.d.ts +5 -0
- package/dist/permissions/resource-roles.js +23 -0
- package/dist/permissions/resource-roles.js.map +1 -0
- package/dist/push/index.d.ts +1 -1
- package/dist/requests.d.ts +85 -19
- package/dist/requests.js.map +1 -1
- package/dist/services/activeWorkflows.service.js +4 -2
- package/dist/services/activeWorkflows.service.js.map +1 -1
- package/dist/services/credentials-tester.service.js +1 -1
- package/dist/services/credentials-tester.service.js.map +1 -1
- package/dist/services/events.service.js +19 -13
- package/dist/services/events.service.js.map +1 -1
- package/dist/services/frontend.service.js +6 -0
- package/dist/services/frontend.service.js.map +1 -1
- package/dist/services/import.service.d.ts +1 -1
- package/dist/services/import.service.js +4 -5
- package/dist/services/import.service.js.map +1 -1
- package/dist/services/ownership.service.d.ts +9 -3
- package/dist/services/ownership.service.js +47 -15
- package/dist/services/ownership.service.js.map +1 -1
- package/dist/services/project.service.d.ts +61 -0
- package/dist/services/project.service.js +277 -0
- package/dist/services/project.service.js.map +1 -0
- package/dist/services/role.service.d.ts +31 -0
- package/dist/services/role.service.js +142 -0
- package/dist/services/role.service.js.map +1 -0
- package/dist/services/user.service.d.ts +3 -3
- package/dist/services/user.service.js +14 -6
- package/dist/services/user.service.js.map +1 -1
- package/dist/services/userOnboarding.service.js +6 -1
- package/dist/services/userOnboarding.service.js.map +1 -1
- package/dist/sso/saml/saml.service.ee.js +1 -1
- package/dist/sso/saml/saml.service.ee.js.map +1 -1
- package/dist/sso/saml/samlHelpers.d.ts +1 -1
- package/dist/sso/saml/samlHelpers.js +14 -22
- package/dist/sso/saml/samlHelpers.js.map +1 -1
- package/dist/telemetry/index.js +4 -0
- package/dist/telemetry/index.js.map +1 -1
- package/dist/utils.d.ts +1 -0
- package/dist/utils.js +3 -1
- package/dist/utils.js.map +1 -1
- package/dist/workflows/workflow.request.d.ts +12 -4
- package/dist/workflows/workflow.service.d.ts +16 -7
- package/dist/workflows/workflow.service.ee.d.ts +8 -8
- package/dist/workflows/workflow.service.ee.js +28 -35
- package/dist/workflows/workflow.service.ee.js.map +1 -1
- package/dist/workflows/workflow.service.js +93 -39
- package/dist/workflows/workflow.service.js.map +1 -1
- package/dist/workflows/workflowExecution.service.d.ts +2 -1
- package/dist/workflows/workflowExecution.service.js +2 -2
- package/dist/workflows/workflowExecution.service.js.map +1 -1
- package/dist/workflows/workflowHistory/workflowHistory.service.ee.d.ts +0 -1
- package/dist/workflows/workflowHistory/workflowHistory.service.ee.js +10 -14
- package/dist/workflows/workflowHistory/workflowHistory.service.ee.js.map +1 -1
- package/dist/workflows/workflowSharing.service.d.ts +12 -3
- package/dist/workflows/workflowSharing.service.js +24 -10
- package/dist/workflows/workflowSharing.service.js.map +1 -1
- package/dist/workflows/workflows.controller.d.ts +98 -11
- package/dist/workflows/workflows.controller.js +106 -77
- package/dist/workflows/workflows.controller.js.map +1 -1
- package/dist/workflows/workflows.types.d.ts +8 -2
- package/package.json +8 -8
- package/dist/decorators/Scopes.js +0 -15
- package/dist/decorators/Scopes.js.map +0 -1
- package/dist/errors/response-errors/unauthorized.error.d.ts +0 -4
- package/dist/errors/response-errors/unauthorized.error.js +0 -11
- package/dist/errors/response-errors/unauthorized.error.js.map +0 -1
- package/dist/permissions/roles.d.ts +0 -4
- package/dist/permissions/roles.js.map +0 -1
|
@@ -14,11 +14,8 @@ exports.UsersController = void 0;
|
|
|
14
14
|
const class_transformer_1 = require("class-transformer");
|
|
15
15
|
const auth_service_1 = require("../auth/auth.service");
|
|
16
16
|
const User_1 = require("../databases/entities/User");
|
|
17
|
-
const SharedCredentials_1 = require("../databases/entities/SharedCredentials");
|
|
18
|
-
const SharedWorkflow_1 = require("../databases/entities/SharedWorkflow");
|
|
19
17
|
const decorators_1 = require("../decorators");
|
|
20
18
|
const requests_1 = require("../requests");
|
|
21
|
-
const ActiveWorkflowManager_1 = require("../ActiveWorkflowManager");
|
|
22
19
|
const AuthIdentity_1 = require("../databases/entities/AuthIdentity");
|
|
23
20
|
const sharedCredentials_repository_1 = require("../databases/repositories/sharedCredentials.repository");
|
|
24
21
|
const sharedWorkflow_repository_1 = require("../databases/repositories/sharedWorkflow.repository");
|
|
@@ -26,23 +23,31 @@ const user_repository_1 = require("../databases/repositories/user.repository");
|
|
|
26
23
|
const user_service_1 = require("../services/user.service");
|
|
27
24
|
const middlewares_1 = require("../middlewares");
|
|
28
25
|
const Logger_1 = require("../Logger");
|
|
29
|
-
const
|
|
26
|
+
const forbidden_error_1 = require("../errors/response-errors/forbidden.error");
|
|
30
27
|
const not_found_error_1 = require("../errors/response-errors/not-found.error");
|
|
31
28
|
const bad_request_error_1 = require("../errors/response-errors/bad-request.error");
|
|
32
29
|
const ExternalHooks_1 = require("../ExternalHooks");
|
|
33
30
|
const InternalHooks_1 = require("../InternalHooks");
|
|
34
31
|
const GenericHelpers_1 = require("../GenericHelpers");
|
|
32
|
+
const project_repository_1 = require("../databases/repositories/project.repository");
|
|
33
|
+
const Project_1 = require("../databases/entities/Project");
|
|
34
|
+
const workflow_service_1 = require("../workflows/workflow.service");
|
|
35
|
+
const credentials_service_1 = require("../credentials/credentials.service");
|
|
36
|
+
const project_service_1 = require("../services/project.service");
|
|
35
37
|
let UsersController = UsersController_1 = class UsersController {
|
|
36
|
-
constructor(logger, externalHooks, internalHooks, sharedCredentialsRepository, sharedWorkflowRepository, userRepository,
|
|
38
|
+
constructor(logger, externalHooks, internalHooks, sharedCredentialsRepository, sharedWorkflowRepository, userRepository, authService, userService, projectRepository, workflowService, credentialsService, projectService) {
|
|
37
39
|
this.logger = logger;
|
|
38
40
|
this.externalHooks = externalHooks;
|
|
39
41
|
this.internalHooks = internalHooks;
|
|
40
42
|
this.sharedCredentialsRepository = sharedCredentialsRepository;
|
|
41
43
|
this.sharedWorkflowRepository = sharedWorkflowRepository;
|
|
42
44
|
this.userRepository = userRepository;
|
|
43
|
-
this.activeWorkflowManager = activeWorkflowManager;
|
|
44
45
|
this.authService = authService;
|
|
45
46
|
this.userService = userService;
|
|
47
|
+
this.projectRepository = projectRepository;
|
|
48
|
+
this.workflowService = workflowService;
|
|
49
|
+
this.credentialsService = credentialsService;
|
|
50
|
+
this.projectService = projectService;
|
|
46
51
|
}
|
|
47
52
|
removeSupplementaryFields(publicUsers, listQueryOptions) {
|
|
48
53
|
const { take, select, filter } = listQueryOptions;
|
|
@@ -80,6 +85,9 @@ let UsersController = UsersController_1 = class UsersController {
|
|
|
80
85
|
if (!user) {
|
|
81
86
|
throw new not_found_error_1.NotFoundError('User not found');
|
|
82
87
|
}
|
|
88
|
+
if (req.user.role === 'global:admin' && user.role === 'global:owner') {
|
|
89
|
+
throw new forbidden_error_1.ForbiddenError('Admin cannot reset password of global owner');
|
|
90
|
+
}
|
|
83
91
|
const link = this.authService.generatePasswordResetUrl(user);
|
|
84
92
|
return { link };
|
|
85
93
|
}
|
|
@@ -102,77 +110,62 @@ let UsersController = UsersController_1 = class UsersController {
|
|
|
102
110
|
throw new bad_request_error_1.BadRequestError('Cannot delete your own user');
|
|
103
111
|
}
|
|
104
112
|
const { transferId } = req.query;
|
|
105
|
-
|
|
106
|
-
|
|
113
|
+
const userToDelete = await this.userRepository.findOneBy({ id: idToDelete });
|
|
114
|
+
if (!userToDelete) {
|
|
115
|
+
throw new not_found_error_1.NotFoundError('Request to delete a user failed because the user to delete was not found in DB');
|
|
107
116
|
}
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
117
|
+
if (userToDelete.role === 'global:owner') {
|
|
118
|
+
throw new forbidden_error_1.ForbiddenError('Instance owner cannot be deleted.');
|
|
119
|
+
}
|
|
120
|
+
const personalProjectToDelete = await this.projectRepository.getPersonalProjectForUserOrFail(userToDelete.id);
|
|
121
|
+
if (transferId === personalProjectToDelete.id) {
|
|
122
|
+
throw new bad_request_error_1.BadRequestError('Request to delete a user failed because the user to delete and the transferee are the same user');
|
|
112
123
|
}
|
|
113
|
-
const userToDelete = users.find((user) => user.id === req.params.id);
|
|
114
124
|
const telemetryData = {
|
|
115
125
|
user_id: req.user.id,
|
|
116
126
|
target_user_old_status: userToDelete.isPending ? 'invited' : 'active',
|
|
117
127
|
target_user_id: idToDelete,
|
|
128
|
+
migration_strategy: transferId ? 'transfer_data' : 'delete_data',
|
|
118
129
|
};
|
|
119
|
-
telemetryData.migration_strategy = transferId ? 'transfer_data' : 'delete_data';
|
|
120
130
|
if (transferId) {
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
await this.
|
|
126
|
-
|
|
127
|
-
.
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
where: { userId: userToDelete.id, role: 'workflow:owner' },
|
|
131
|
-
})
|
|
132
|
-
.then((sharedWorkflows) => sharedWorkflows.map(({ workflowId }) => workflowId));
|
|
133
|
-
await this.sharedWorkflowRepository.deleteByIds(transactionManager, sharedWorkflowIds, transferee);
|
|
134
|
-
await transactionManager.update(SharedWorkflow_1.SharedWorkflow, { user: userToDelete, role: 'workflow:owner' }, { user: transferee });
|
|
135
|
-
const sharedCredentialIds = await transactionManager
|
|
136
|
-
.getRepository(SharedCredentials_1.SharedCredentials)
|
|
137
|
-
.find({
|
|
138
|
-
select: ['credentialsId'],
|
|
139
|
-
where: { userId: userToDelete.id, role: 'credential:owner' },
|
|
140
|
-
})
|
|
141
|
-
.then((sharedCredentials) => sharedCredentials.map(({ credentialsId }) => credentialsId));
|
|
142
|
-
await this.sharedCredentialsRepository.deleteByIds(transactionManager, sharedCredentialIds, transferee);
|
|
143
|
-
await transactionManager.update(SharedCredentials_1.SharedCredentials, { user: userToDelete, role: 'credential:owner' }, { user: transferee });
|
|
144
|
-
await transactionManager.delete(AuthIdentity_1.AuthIdentity, { userId: userToDelete.id });
|
|
145
|
-
await transactionManager.delete(User_1.User, { id: userToDelete.id });
|
|
131
|
+
const transfereePersonalProject = await this.projectRepository.findOneBy({ id: transferId });
|
|
132
|
+
if (!transfereePersonalProject) {
|
|
133
|
+
throw new not_found_error_1.NotFoundError('Request to delete a user failed because the transferee project was not found in DB');
|
|
134
|
+
}
|
|
135
|
+
const transferee = await this.userRepository.findOneByOrFail({
|
|
136
|
+
projectRelations: {
|
|
137
|
+
projectId: transfereePersonalProject.id,
|
|
138
|
+
role: 'project:personalOwner',
|
|
139
|
+
},
|
|
146
140
|
});
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
141
|
+
telemetryData.migration_user_id = transferee.id;
|
|
142
|
+
await this.userService.getManager().transaction(async (trx) => {
|
|
143
|
+
await this.workflowService.transferAll(personalProjectToDelete.id, transfereePersonalProject.id, trx);
|
|
144
|
+
await this.credentialsService.transferAll(personalProjectToDelete.id, transfereePersonalProject.id, trx);
|
|
151
145
|
});
|
|
152
|
-
await this.
|
|
153
|
-
return { success: true };
|
|
146
|
+
await this.projectService.clearCredentialCanUseExternalSecretsCache(transfereePersonalProject.id);
|
|
154
147
|
}
|
|
155
148
|
const [ownedSharedWorkflows, ownedSharedCredentials] = await Promise.all([
|
|
156
149
|
this.sharedWorkflowRepository.find({
|
|
157
|
-
|
|
158
|
-
where: {
|
|
150
|
+
select: { workflowId: true },
|
|
151
|
+
where: { projectId: personalProjectToDelete.id, role: 'workflow:owner' },
|
|
159
152
|
}),
|
|
160
153
|
this.sharedCredentialsRepository.find({
|
|
161
|
-
relations:
|
|
162
|
-
where: {
|
|
154
|
+
relations: { credentials: true },
|
|
155
|
+
where: { projectId: personalProjectToDelete.id, role: 'credential:owner' },
|
|
163
156
|
}),
|
|
164
157
|
]);
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
await
|
|
174
|
-
await
|
|
175
|
-
await
|
|
158
|
+
const ownedCredentials = ownedSharedCredentials.map(({ credentials }) => credentials);
|
|
159
|
+
for (const { workflowId } of ownedSharedWorkflows) {
|
|
160
|
+
await this.workflowService.delete(userToDelete, workflowId);
|
|
161
|
+
}
|
|
162
|
+
for (const credential of ownedCredentials) {
|
|
163
|
+
await this.credentialsService.delete(credential);
|
|
164
|
+
}
|
|
165
|
+
await this.userService.getManager().transaction(async (trx) => {
|
|
166
|
+
await trx.delete(AuthIdentity_1.AuthIdentity, { userId: userToDelete.id });
|
|
167
|
+
await trx.delete(Project_1.Project, { id: personalProjectToDelete.id });
|
|
168
|
+
await trx.delete(User_1.User, { id: userToDelete.id });
|
|
176
169
|
});
|
|
177
170
|
void this.internalHooks.onUserDeletion({
|
|
178
171
|
user: req.user,
|
|
@@ -195,10 +188,10 @@ let UsersController = UsersController_1 = class UsersController {
|
|
|
195
188
|
throw new not_found_error_1.NotFoundError(NO_USER);
|
|
196
189
|
}
|
|
197
190
|
if (req.user.role === 'global:admin' && targetUser.role === 'global:owner') {
|
|
198
|
-
throw new
|
|
191
|
+
throw new forbidden_error_1.ForbiddenError(NO_ADMIN_ON_OWNER);
|
|
199
192
|
}
|
|
200
193
|
if (req.user.role === 'global:owner' && targetUser.role === 'global:owner') {
|
|
201
|
-
throw new
|
|
194
|
+
throw new forbidden_error_1.ForbiddenError(NO_OWNER_ON_OWNER);
|
|
202
195
|
}
|
|
203
196
|
await this.userService.update(targetUser.id, { role: payload.newRoleName });
|
|
204
197
|
void this.internalHooks.onUserRoleChange({
|
|
@@ -207,6 +200,8 @@ let UsersController = UsersController_1 = class UsersController {
|
|
|
207
200
|
target_user_new_role: ['global', payload.newRoleName].join(' '),
|
|
208
201
|
public_api: false,
|
|
209
202
|
});
|
|
203
|
+
const projects = await this.projectService.getUserOwnedOrAdminProjects(targetUser.id);
|
|
204
|
+
await Promise.all(projects.map(async (p) => await this.projectService.clearCredentialCanUseExternalSecretsCache(p.id)));
|
|
210
205
|
return { success: true };
|
|
211
206
|
}
|
|
212
207
|
};
|
|
@@ -262,8 +257,11 @@ exports.UsersController = UsersController = UsersController_1 = __decorate([
|
|
|
262
257
|
sharedCredentials_repository_1.SharedCredentialsRepository,
|
|
263
258
|
sharedWorkflow_repository_1.SharedWorkflowRepository,
|
|
264
259
|
user_repository_1.UserRepository,
|
|
265
|
-
ActiveWorkflowManager_1.ActiveWorkflowManager,
|
|
266
260
|
auth_service_1.AuthService,
|
|
267
|
-
user_service_1.UserService
|
|
261
|
+
user_service_1.UserService,
|
|
262
|
+
project_repository_1.ProjectRepository,
|
|
263
|
+
workflow_service_1.WorkflowService,
|
|
264
|
+
credentials_service_1.CredentialsService,
|
|
265
|
+
project_service_1.ProjectService])
|
|
268
266
|
], UsersController);
|
|
269
267
|
//# sourceMappingURL=users.controller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"users.controller.js","sourceRoot":"","sources":["../../src/controllers/users.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,yDAAoD;AAEpD,sDAAkD;AAClD,4CAAyC;AACzC,
|
|
1
|
+
{"version":3,"file":"users.controller.js","sourceRoot":"","sources":["../../src/controllers/users.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ export declare class WorkflowStatisticsController {
|
|
|
15
15
|
private readonly workflowStatisticsRepository;
|
|
16
16
|
private readonly logger;
|
|
17
17
|
constructor(sharedWorkflowRepository: SharedWorkflowRepository, workflowStatisticsRepository: WorkflowStatisticsRepository, logger: Logger);
|
|
18
|
-
hasWorkflowAccess(req: StatisticsRequest.GetOne,
|
|
18
|
+
hasWorkflowAccess(req: StatisticsRequest.GetOne, _res: Response, next: NextFunction): Promise<void>;
|
|
19
19
|
getCounts(req: StatisticsRequest.GetOne): Promise<WorkflowStatisticsData<number>>;
|
|
20
20
|
getTimes(req: StatisticsRequest.GetOne): Promise<WorkflowStatisticsData<Date | null>>;
|
|
21
21
|
getDataLoaded(req: StatisticsRequest.GetOne): Promise<IWorkflowStatisticsDataLoaded>;
|
|
@@ -21,11 +21,13 @@ let WorkflowStatisticsController = class WorkflowStatisticsController {
|
|
|
21
21
|
this.workflowStatisticsRepository = workflowStatisticsRepository;
|
|
22
22
|
this.logger = logger;
|
|
23
23
|
}
|
|
24
|
-
async hasWorkflowAccess(req,
|
|
24
|
+
async hasWorkflowAccess(req, _res, next) {
|
|
25
25
|
const { user } = req;
|
|
26
26
|
const workflowId = req.params.id;
|
|
27
|
-
const
|
|
28
|
-
|
|
27
|
+
const workflow = await this.sharedWorkflowRepository.findWorkflowForUser(workflowId, user, [
|
|
28
|
+
'workflow:read',
|
|
29
|
+
]);
|
|
30
|
+
if (workflow) {
|
|
29
31
|
next();
|
|
30
32
|
}
|
|
31
33
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflowStatistics.controller.js","sourceRoot":"","sources":["../../src/controllers/workflowStatistics.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,6CAA+D;AAG/D,0FAAsF;AACtF,kGAA8F;AAE9F,qCAAkC;AAClC,8EAAyE;AAWlE,IAAM,4BAA4B,GAAlC,MAAM,4BAA4B;IACxC,YACkB,wBAAkD,EAClD,4BAA0D,EAC1D,MAAc;QAFd,6BAAwB,GAAxB,wBAAwB,CAA0B;QAClD,iCAA4B,GAA5B,4BAA4B,CAA8B;QAC1D,WAAM,GAAN,MAAM,CAAQ;IAC7B,CAAC;IAOE,AAAN,KAAK,CAAC,iBAAiB,CAAC,GAA6B,EAAE,
|
|
1
|
+
{"version":3,"file":"workflowStatistics.controller.js","sourceRoot":"","sources":["../../src/controllers/workflowStatistics.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,50 +1,63 @@
|
|
|
1
1
|
import { CredentialsService } from './credentials.service';
|
|
2
|
-
import { CredentialRequest
|
|
2
|
+
import { CredentialRequest } from '../requests';
|
|
3
3
|
import { InternalHooks } from '../InternalHooks';
|
|
4
4
|
import { Logger } from '../Logger';
|
|
5
5
|
import { NamingService } from '../services/naming.service';
|
|
6
6
|
import { License } from '../License';
|
|
7
|
-
import { CredentialsRepository } from '../databases/repositories/credentials.repository';
|
|
8
|
-
import { OwnershipService } from '../services/ownership.service';
|
|
9
7
|
import { EnterpriseCredentialsService } from './credentials.service.ee';
|
|
10
8
|
import { UserManagementMailer } from '../UserManagement/email';
|
|
9
|
+
import { SharedCredentialsRepository } from '../databases/repositories/sharedCredentials.repository';
|
|
10
|
+
import { SharedCredentials } from '../databases/entities/SharedCredentials';
|
|
11
|
+
import { ProjectRelationRepository } from '../databases/repositories/projectRelation.repository';
|
|
11
12
|
export declare class CredentialsController {
|
|
12
13
|
private readonly credentialsService;
|
|
13
14
|
private readonly enterpriseCredentialsService;
|
|
14
|
-
private readonly credentialsRepository;
|
|
15
15
|
private readonly namingService;
|
|
16
16
|
private readonly license;
|
|
17
17
|
private readonly logger;
|
|
18
|
-
private readonly ownershipService;
|
|
19
18
|
private readonly internalHooks;
|
|
20
19
|
private readonly userManagementMailer;
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
private readonly sharedCredentialsRepository;
|
|
21
|
+
private readonly projectRelationRepository;
|
|
22
|
+
constructor(credentialsService: CredentialsService, enterpriseCredentialsService: EnterpriseCredentialsService, namingService: NamingService, license: License, logger: Logger, internalHooks: InternalHooks, userManagementMailer: UserManagementMailer, sharedCredentialsRepository: SharedCredentialsRepository, projectRelationRepository: ProjectRelationRepository);
|
|
23
|
+
getMany(req: CredentialRequest.GetMany): Promise<import("../databases/entities/CredentialsEntity").CredentialsEntity[]>;
|
|
23
24
|
generateUniqueName(req: CredentialRequest.NewName): Promise<{
|
|
24
25
|
name: string;
|
|
25
26
|
}>;
|
|
26
27
|
getOne(req: CredentialRequest.Get): Promise<{
|
|
28
|
+
scopes: import("@n8n/permissions").Scope[];
|
|
27
29
|
name: string;
|
|
28
30
|
type: string;
|
|
29
|
-
shared:
|
|
31
|
+
shared: SharedCredentials[];
|
|
30
32
|
id: string;
|
|
31
33
|
createdAt: Date;
|
|
32
34
|
updatedAt: Date;
|
|
35
|
+
data: import("n8n-workflow").ICredentialDataDecryptedObject;
|
|
33
36
|
} | {
|
|
37
|
+
scopes: import("@n8n/permissions").Scope[];
|
|
34
38
|
name: string;
|
|
35
39
|
type: string;
|
|
36
|
-
shared:
|
|
40
|
+
shared: SharedCredentials[];
|
|
37
41
|
id: string;
|
|
38
42
|
createdAt: Date;
|
|
39
43
|
updatedAt: Date;
|
|
40
|
-
data: import("n8n-workflow").ICredentialDataDecryptedObject;
|
|
41
44
|
}>;
|
|
42
45
|
testCredentials(req: CredentialRequest.Test): Promise<import("n8n-workflow").INodeCredentialTestResult>;
|
|
43
|
-
createCredentials(req: CredentialRequest.Create): Promise<
|
|
46
|
+
createCredentials(req: CredentialRequest.Create): Promise<{
|
|
47
|
+
scopes: import("@n8n/permissions").Scope[];
|
|
48
|
+
name: string;
|
|
49
|
+
data: string;
|
|
50
|
+
type: string;
|
|
51
|
+
shared: SharedCredentials[];
|
|
52
|
+
id: string;
|
|
53
|
+
createdAt: Date;
|
|
54
|
+
updatedAt: Date;
|
|
55
|
+
}>;
|
|
44
56
|
updateCredentials(req: CredentialRequest.Update): Promise<{
|
|
57
|
+
scopes: import("@n8n/permissions").Scope[];
|
|
45
58
|
name: string;
|
|
46
59
|
type: string;
|
|
47
|
-
shared:
|
|
60
|
+
shared: SharedCredentials[];
|
|
48
61
|
id: string;
|
|
49
62
|
createdAt: Date;
|
|
50
63
|
updatedAt: Date;
|