mirror of
https://github.com/Abdulazizzn/n8n-enterprise-unlocked.git
synced 2025-12-16 17:46:45 +00:00
refactor(core): Standardize filenames in cli (no-changelog) (#10484)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
This commit is contained in:
@@ -23,8 +23,8 @@ if (publicApiEnabled) {
|
|||||||
|
|
||||||
function copyUserManagementEmailTemplates() {
|
function copyUserManagementEmailTemplates() {
|
||||||
const templates = {
|
const templates = {
|
||||||
source: path.resolve(ROOT_DIR, 'src', 'UserManagement', 'email', 'templates'),
|
source: path.resolve(ROOT_DIR, 'src', 'user-management', 'email', 'templates'),
|
||||||
destination: path.resolve(ROOT_DIR, 'dist', 'UserManagement', 'email'),
|
destination: path.resolve(ROOT_DIR, 'dist', 'user-management', 'email'),
|
||||||
};
|
};
|
||||||
|
|
||||||
shell.cp('-r', templates.source, templates.destination);
|
shell.cp('-r', templates.source, templates.destination);
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ import type {
|
|||||||
StartNodeData,
|
StartNodeData,
|
||||||
} from 'n8n-workflow';
|
} from 'n8n-workflow';
|
||||||
|
|
||||||
import type { ActiveWorkflowManager } from '@/ActiveWorkflowManager';
|
import type { ActiveWorkflowManager } from '@/active-workflow-manager';
|
||||||
|
|
||||||
import type { WorkflowExecute } from 'n8n-core';
|
import type { WorkflowExecute } from 'n8n-core';
|
||||||
|
|
||||||
@@ -39,7 +39,7 @@ import type { CredentialsRepository } from '@db/repositories/credentials.reposit
|
|||||||
import type { SettingsRepository } from '@db/repositories/settings.repository';
|
import type { SettingsRepository } from '@db/repositories/settings.repository';
|
||||||
import type { UserRepository } from '@db/repositories/user.repository';
|
import type { UserRepository } from '@db/repositories/user.repository';
|
||||||
import type { WorkflowRepository } from '@db/repositories/workflow.repository';
|
import type { WorkflowRepository } from '@db/repositories/workflow.repository';
|
||||||
import type { ExternalHooks } from './ExternalHooks';
|
import type { ExternalHooks } from './external-hooks';
|
||||||
import type { LICENSE_FEATURES, LICENSE_QUOTAS } from './constants';
|
import type { LICENSE_FEATURES, LICENSE_QUOTAS } from './constants';
|
||||||
import type { WorkflowWithSharingsAndCredentials } from './workflows/workflows.types';
|
import type { WorkflowWithSharingsAndCredentials } from './workflows/workflows.types';
|
||||||
import type { RunningJobSummary } from './scaling/types';
|
import type { RunningJobSummary } from './scaling/types';
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import type { HttpError } from 'express-openapi-validator/dist/framework/types';
|
|||||||
import type { OpenAPIV3 } from 'openapi-types';
|
import type { OpenAPIV3 } from 'openapi-types';
|
||||||
import type { JsonObject } from 'swagger-ui-express';
|
import type { JsonObject } from 'swagger-ui-express';
|
||||||
|
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import { UserRepository } from '@db/repositories/user.repository';
|
import { UserRepository } from '@db/repositories/user.repository';
|
||||||
import { UrlService } from '@/services/url.service';
|
import { UrlService } from '@/services/url.service';
|
||||||
import type { AuthenticatedRequest } from '@/requests';
|
import type { AuthenticatedRequest } from '@/requests';
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ export = {
|
|||||||
globalScope('securityAudit:generate'),
|
globalScope('securityAudit:generate'),
|
||||||
async (req: AuditRequest.Generate, res: Response): Promise<Response> => {
|
async (req: AuditRequest.Generate, res: Response): Promise<Response> => {
|
||||||
try {
|
try {
|
||||||
const { SecurityAuditService } = await import('@/security-audit/SecurityAudit.service');
|
const { SecurityAuditService } = await import('@/security-audit/security-audit.service');
|
||||||
const result = await Container.get(SecurityAuditService).run(
|
const result = await Container.get(SecurityAuditService).run(
|
||||||
req.body?.additionalOptions?.categories,
|
req.body?.additionalOptions?.categories,
|
||||||
req.body?.additionalOptions?.daysAbandonedWorkflow,
|
req.body?.additionalOptions?.daysAbandonedWorkflow,
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
/* eslint-disable @typescript-eslint/no-unsafe-argument */
|
/* eslint-disable @typescript-eslint/no-unsafe-argument */
|
||||||
import type express from 'express';
|
import type express from 'express';
|
||||||
|
|
||||||
import { CredentialsHelper } from '@/CredentialsHelper';
|
import { CredentialsHelper } from '@/credentials-helper';
|
||||||
import { CredentialTypes } from '@/CredentialTypes';
|
import { CredentialTypes } from '@/credential-types';
|
||||||
import type { CredentialsEntity } from '@db/entities/CredentialsEntity';
|
import type { CredentialsEntity } from '@db/entities/CredentialsEntity';
|
||||||
import type { CredentialTypeRequest, CredentialRequest } from '../../../types';
|
import type { CredentialTypeRequest, CredentialRequest } from '../../../types';
|
||||||
import { projectScope } from '../../shared/middlewares/global.middleware';
|
import { projectScope } from '../../shared/middlewares/global.middleware';
|
||||||
|
|||||||
@@ -3,8 +3,8 @@
|
|||||||
import type express from 'express';
|
import type express from 'express';
|
||||||
import { validate } from 'jsonschema';
|
import { validate } from 'jsonschema';
|
||||||
|
|
||||||
import { CredentialsHelper } from '@/CredentialsHelper';
|
import { CredentialsHelper } from '@/credentials-helper';
|
||||||
import { CredentialTypes } from '@/CredentialTypes';
|
import { CredentialTypes } from '@/credential-types';
|
||||||
import type { CredentialRequest } from '../../../types';
|
import type { CredentialRequest } from '../../../types';
|
||||||
import { toJsonSchema } from './credentials.service';
|
import { toJsonSchema } from './credentials.service';
|
||||||
import { Container } from 'typedi';
|
import { Container } from 'typedi';
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import type { ICredentialsDb } from '@/Interfaces';
|
|||||||
import { CredentialsEntity } from '@db/entities/CredentialsEntity';
|
import { CredentialsEntity } from '@db/entities/CredentialsEntity';
|
||||||
import { SharedCredentials } from '@db/entities/SharedCredentials';
|
import { SharedCredentials } from '@db/entities/SharedCredentials';
|
||||||
import type { User } from '@db/entities/User';
|
import type { User } from '@db/entities/User';
|
||||||
import { ExternalHooks } from '@/ExternalHooks';
|
import { ExternalHooks } from '@/external-hooks';
|
||||||
import type { IDependency, IJsonSchema } from '../../../types';
|
import type { IDependency, IJsonSchema } from '../../../types';
|
||||||
import type { CredentialRequest } from '@/requests';
|
import type { CredentialRequest } from '@/requests';
|
||||||
import { Container } from 'typedi';
|
import { Container } from 'typedi';
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import type express from 'express';
|
|||||||
import { Container } from 'typedi';
|
import { Container } from 'typedi';
|
||||||
import { replaceCircularReferences } from 'n8n-workflow';
|
import { replaceCircularReferences } from 'n8n-workflow';
|
||||||
|
|
||||||
import { ActiveExecutions } from '@/ActiveExecutions';
|
import { ActiveExecutions } from '@/active-executions';
|
||||||
import { validCursor } from '../../shared/middlewares/global.middleware';
|
import { validCursor } from '../../shared/middlewares/global.middleware';
|
||||||
import type { ExecutionRequest } from '../../../types';
|
import type { ExecutionRequest } from '../../../types';
|
||||||
import { getSharedWorkflowIds } from '../workflows/workflows.service';
|
import { getSharedWorkflowIds } from '../workflows/workflows.service';
|
||||||
|
|||||||
@@ -7,11 +7,11 @@ import type { FindOptionsWhere } from '@n8n/typeorm';
|
|||||||
import { In, Like, QueryFailedError } from '@n8n/typeorm';
|
import { In, Like, QueryFailedError } from '@n8n/typeorm';
|
||||||
import { v4 as uuid } from 'uuid';
|
import { v4 as uuid } from 'uuid';
|
||||||
|
|
||||||
import { ActiveWorkflowManager } from '@/ActiveWorkflowManager';
|
import { ActiveWorkflowManager } from '@/active-workflow-manager';
|
||||||
import config from '@/config';
|
import config from '@/config';
|
||||||
import { WorkflowEntity } from '@db/entities/WorkflowEntity';
|
import { WorkflowEntity } from '@db/entities/WorkflowEntity';
|
||||||
import { ExternalHooks } from '@/ExternalHooks';
|
import { ExternalHooks } from '@/external-hooks';
|
||||||
import { addNodeIds, replaceInvalidCredentials } from '@/WorkflowHelpers';
|
import { addNodeIds, replaceInvalidCredentials } from '@/workflow-helpers';
|
||||||
import type { WorkflowRequest } from '../../../types';
|
import type { WorkflowRequest } from '../../../types';
|
||||||
import { projectScope, validCursor } from '../../shared/middlewares/global.middleware';
|
import { projectScope, validCursor } from '../../shared/middlewares/global.middleware';
|
||||||
import { encodeNextCursor } from '../../shared/services/pagination.service';
|
import { encodeNextCursor } from '../../shared/services/pagination.service';
|
||||||
@@ -26,7 +26,7 @@ import {
|
|||||||
updateTags,
|
updateTags,
|
||||||
} from './workflows.service';
|
} from './workflows.service';
|
||||||
import { WorkflowService } from '@/workflows/workflow.service';
|
import { WorkflowService } from '@/workflows/workflow.service';
|
||||||
import { WorkflowHistoryService } from '@/workflows/workflowHistory/workflowHistory.service.ee';
|
import { WorkflowHistoryService } from '@/workflows/workflow-history/workflow-history.service.ee';
|
||||||
import { SharedWorkflowRepository } from '@/databases/repositories/sharedWorkflow.repository';
|
import { SharedWorkflowRepository } from '@/databases/repositories/sharedWorkflow.repository';
|
||||||
import { TagRepository } from '@/databases/repositories/tag.repository';
|
import { TagRepository } from '@/databases/repositories/tag.repository';
|
||||||
import { WorkflowRepository } from '@/databases/repositories/workflow.repository';
|
import { WorkflowRepository } from '@/databases/repositories/workflow.repository';
|
||||||
|
|||||||
@@ -8,8 +8,8 @@ import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
|||||||
import { SharedWorkflowRepository } from '@db/repositories/sharedWorkflow.repository';
|
import { SharedWorkflowRepository } from '@db/repositories/sharedWorkflow.repository';
|
||||||
import type { Project } from '@/databases/entities/Project';
|
import type { Project } from '@/databases/entities/Project';
|
||||||
import { TagRepository } from '@db/repositories/tag.repository';
|
import { TagRepository } from '@db/repositories/tag.repository';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import { WorkflowSharingService } from '@/workflows/workflowSharing.service';
|
import { WorkflowSharingService } from '@/workflows/workflow-sharing.service';
|
||||||
import type { Scope } from '@n8n/permissions';
|
import type { Scope } from '@n8n/permissions';
|
||||||
import config from '@/config';
|
import config from '@/config';
|
||||||
|
|
||||||
|
|||||||
@@ -2,13 +2,13 @@
|
|||||||
import type express from 'express';
|
import type express from 'express';
|
||||||
import { Container } from 'typedi';
|
import { Container } from 'typedi';
|
||||||
|
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import type { AuthenticatedRequest } from '@/requests';
|
import type { AuthenticatedRequest } from '@/requests';
|
||||||
|
|
||||||
import type { PaginatedRequest } from '../../../types';
|
import type { PaginatedRequest } from '../../../types';
|
||||||
import { decodeCursor } from '../services/pagination.service';
|
import { decodeCursor } from '../services/pagination.service';
|
||||||
import type { Scope } from '@n8n/permissions';
|
import type { Scope } from '@n8n/permissions';
|
||||||
import { userHasScope } from '@/permissions/checkAccess';
|
import { userHasScope } from '@/permissions/check-access';
|
||||||
import type { BooleanLicenseFeature } from '@/Interfaces';
|
import type { BooleanLicenseFeature } from '@/Interfaces';
|
||||||
import { FeatureNotLicensedError } from '@/errors/feature-not-licensed.error';
|
import { FeatureNotLicensedError } from '@/errors/feature-not-licensed.error';
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +0,0 @@
|
|||||||
import { UserManagementMailer } from './UserManagementMailer';
|
|
||||||
|
|
||||||
export { UserManagementMailer };
|
|
||||||
@@ -2,8 +2,8 @@ import { LicenseManager } from '@n8n_io/license-sdk';
|
|||||||
import { InstanceSettings } from 'n8n-core';
|
import { InstanceSettings } from 'n8n-core';
|
||||||
import { mock } from 'jest-mock-extended';
|
import { mock } from 'jest-mock-extended';
|
||||||
import config from '@/config';
|
import config from '@/config';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { N8N_VERSION } from '@/constants';
|
import { N8N_VERSION } from '@/constants';
|
||||||
import { mockInstance } from '@test/mocking';
|
import { mockInstance } from '@test/mocking';
|
||||||
import { OrchestrationService } from '@/services/orchestration.service';
|
import { OrchestrationService } from '@/services/orchestration.service';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { ActiveExecutions } from '@/ActiveExecutions';
|
import { ActiveExecutions } from '@/active-executions';
|
||||||
import PCancelable from 'p-cancelable';
|
import PCancelable from 'p-cancelable';
|
||||||
import { v4 as uuid } from 'uuid';
|
import { v4 as uuid } from 'uuid';
|
||||||
import type { IExecuteResponsePromiseData, IRun } from 'n8n-workflow';
|
import type { IExecuteResponsePromiseData, IRun } from 'n8n-workflow';
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
import { CredentialTypes } from '@/CredentialTypes';
|
import { CredentialTypes } from '@/credential-types';
|
||||||
import { Container } from 'typedi';
|
import { Container } from 'typedi';
|
||||||
import { LoadNodesAndCredentials } from '@/LoadNodesAndCredentials';
|
import { LoadNodesAndCredentials } from '@/load-nodes-and-credentials';
|
||||||
import { mockInstance } from '@test/mocking';
|
import { mockInstance } from '@test/mocking';
|
||||||
|
|
||||||
describe('CredentialTypes', () => {
|
describe('CredentialTypes', () => {
|
||||||
@@ -9,9 +9,9 @@ import type {
|
|||||||
} from 'n8n-workflow';
|
} from 'n8n-workflow';
|
||||||
import { deepCopy } from 'n8n-workflow';
|
import { deepCopy } from 'n8n-workflow';
|
||||||
import { Workflow } from 'n8n-workflow';
|
import { Workflow } from 'n8n-workflow';
|
||||||
import { CredentialsHelper } from '@/CredentialsHelper';
|
import { CredentialsHelper } from '@/credentials-helper';
|
||||||
import { NodeTypes } from '@/NodeTypes';
|
import { NodeTypes } from '@/node-types';
|
||||||
import { LoadNodesAndCredentials } from '@/LoadNodesAndCredentials';
|
import { LoadNodesAndCredentials } from '@/load-nodes-and-credentials';
|
||||||
import { CredentialsRepository } from '@db/repositories/credentials.repository';
|
import { CredentialsRepository } from '@db/repositories/credentials.repository';
|
||||||
import { SharedCredentialsRepository } from '@db/repositories/sharedCredentials.repository';
|
import { SharedCredentialsRepository } from '@db/repositories/sharedCredentials.repository';
|
||||||
import { mockInstance } from '@test/mocking';
|
import { mockInstance } from '@test/mocking';
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
import { WaitTracker } from '@/WaitTracker';
|
import { WaitTracker } from '@/wait-tracker';
|
||||||
import { mock } from 'jest-mock-extended';
|
import { mock } from 'jest-mock-extended';
|
||||||
import type { ExecutionRepository } from '@/databases/repositories/execution.repository';
|
import type { ExecutionRepository } from '@/databases/repositories/execution.repository';
|
||||||
import type { IExecutionResponse } from '@/Interfaces';
|
import type { IExecutionResponse } from '@/Interfaces';
|
||||||
@@ -1,10 +1,10 @@
|
|||||||
import { VariablesService } from '@/environments/variables/variables.service.ee';
|
import { VariablesService } from '@/environments/variables/variables.service.ee';
|
||||||
import { mockInstance } from '@test/mocking';
|
import { mockInstance } from '@test/mocking';
|
||||||
import { MessageEventBus } from '@/eventbus/MessageEventBus/MessageEventBus';
|
import { MessageEventBus } from '@/eventbus/MessageEventBus/MessageEventBus';
|
||||||
import { getBase } from '@/WorkflowExecuteAdditionalData';
|
import { getBase } from '@/workflow-execute-additional-data';
|
||||||
import Container from 'typedi';
|
import Container from 'typedi';
|
||||||
import { CredentialsHelper } from '@/CredentialsHelper';
|
import { CredentialsHelper } from '@/credentials-helper';
|
||||||
import { SecretsHelper } from '@/SecretsHelpers';
|
import { SecretsHelper } from '@/secrets-helpers';
|
||||||
|
|
||||||
describe('WorkflowExecuteAdditionalData', () => {
|
describe('WorkflowExecuteAdditionalData', () => {
|
||||||
const messageEventBus = mockInstance(MessageEventBus);
|
const messageEventBus = mockInstance(MessageEventBus);
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
import { type Workflow } from 'n8n-workflow';
|
import { type Workflow } from 'n8n-workflow';
|
||||||
import { getExecutionStartNode } from '@/WorkflowHelpers';
|
import { getExecutionStartNode } from '@/workflow-helpers';
|
||||||
import type { IWorkflowExecutionDataProcess } from '@/Interfaces';
|
import type { IWorkflowExecutionDataProcess } from '@/Interfaces';
|
||||||
|
|
||||||
describe('WorkflowHelpers', () => {
|
describe('WorkflowHelpers', () => {
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import Container from 'typedi';
|
import Container from 'typedi';
|
||||||
import { WorkflowHooks, type ExecutionError, type IWorkflowExecuteHooks } from 'n8n-workflow';
|
import { WorkflowHooks, type ExecutionError, type IWorkflowExecuteHooks } from 'n8n-workflow';
|
||||||
import type { User } from '@db/entities/User';
|
import type { User } from '@db/entities/User';
|
||||||
import { WorkflowRunner } from '@/WorkflowRunner';
|
import { WorkflowRunner } from '@/workflow-runner';
|
||||||
import config from '@/config';
|
import config from '@/config';
|
||||||
|
|
||||||
import * as testDb from '@test-integration/testDb';
|
import * as testDb from '@test-integration/testDb';
|
||||||
@@ -10,18 +10,18 @@ import config from '@/config';
|
|||||||
import { N8N_VERSION, TEMPLATES_DIR, inDevelopment, inTest } from '@/constants';
|
import { N8N_VERSION, TEMPLATES_DIR, inDevelopment, inTest } from '@/constants';
|
||||||
import * as Db from '@/Db';
|
import * as Db from '@/Db';
|
||||||
import { N8nInstanceType } from '@/Interfaces';
|
import { N8nInstanceType } from '@/Interfaces';
|
||||||
import { ExternalHooks } from '@/ExternalHooks';
|
import { ExternalHooks } from '@/external-hooks';
|
||||||
import { send, sendErrorResponse } from '@/ResponseHelper';
|
import { send, sendErrorResponse } from '@/response-helper';
|
||||||
import { rawBodyReader, bodyParser, corsMiddleware } from '@/middlewares';
|
import { rawBodyReader, bodyParser, corsMiddleware } from '@/middlewares';
|
||||||
import { WaitingForms } from '@/WaitingForms';
|
import { WaitingForms } from '@/waiting-forms';
|
||||||
import { TestWebhooks } from '@/webhooks/TestWebhooks';
|
import { TestWebhooks } from '@/webhooks/test-webhooks';
|
||||||
import { WaitingWebhooks } from '@/webhooks/WaitingWebhooks';
|
import { WaitingWebhooks } from '@/webhooks/waiting-webhooks';
|
||||||
import { createWebhookHandlerFor } from '@/webhooks/WebhookRequestHandler';
|
import { createWebhookHandlerFor } from '@/webhooks/webhook-request-handler';
|
||||||
import { LiveWebhooks } from '@/webhooks/LiveWebhooks';
|
import { LiveWebhooks } from '@/webhooks/live-webhooks';
|
||||||
import { generateHostInstanceId } from './databases/utils/generators';
|
import { generateHostInstanceId } from './databases/utils/generators';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { ServiceUnavailableError } from './errors/response-errors/service-unavailable.error';
|
import { ServiceUnavailableError } from './errors/response-errors/service-unavailable.error';
|
||||||
import { OnShutdown } from '@/decorators/OnShutdown';
|
import { OnShutdown } from '@/decorators/on-shutdown';
|
||||||
import { GlobalConfig } from '@n8n/config';
|
import { GlobalConfig } from '@n8n/config';
|
||||||
|
|
||||||
@Service()
|
@Service()
|
||||||
@@ -23,7 +23,7 @@ import type {
|
|||||||
} from '@/Interfaces';
|
} from '@/Interfaces';
|
||||||
import { isWorkflowIdValid } from '@/utils';
|
import { isWorkflowIdValid } from '@/utils';
|
||||||
import { ExecutionRepository } from '@db/repositories/execution.repository';
|
import { ExecutionRepository } from '@db/repositories/execution.repository';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { ConcurrencyControlService } from './concurrency/concurrency-control.service';
|
import { ConcurrencyControlService } from './concurrency/concurrency-control.service';
|
||||||
import config from './config';
|
import config from './config';
|
||||||
|
|
||||||
@@ -27,28 +27,28 @@ import {
|
|||||||
} from 'n8n-workflow';
|
} from 'n8n-workflow';
|
||||||
|
|
||||||
import type { IWorkflowDb } from '@/Interfaces';
|
import type { IWorkflowDb } from '@/Interfaces';
|
||||||
import * as WebhookHelpers from '@/webhooks/WebhookHelpers';
|
import * as WebhookHelpers from '@/webhooks/webhook-helpers';
|
||||||
import * as WorkflowExecuteAdditionalData from '@/WorkflowExecuteAdditionalData';
|
import * as WorkflowExecuteAdditionalData from '@/workflow-execute-additional-data';
|
||||||
|
|
||||||
import type { WorkflowEntity } from '@db/entities/WorkflowEntity';
|
import type { WorkflowEntity } from '@db/entities/WorkflowEntity';
|
||||||
import { ActiveExecutions } from '@/ActiveExecutions';
|
import { ActiveExecutions } from '@/active-executions';
|
||||||
import { ExecutionService } from './executions/execution.service';
|
import { ExecutionService } from './executions/execution.service';
|
||||||
import {
|
import {
|
||||||
STARTING_NODES,
|
STARTING_NODES,
|
||||||
WORKFLOW_REACTIVATE_INITIAL_TIMEOUT,
|
WORKFLOW_REACTIVATE_INITIAL_TIMEOUT,
|
||||||
WORKFLOW_REACTIVATE_MAX_TIMEOUT,
|
WORKFLOW_REACTIVATE_MAX_TIMEOUT,
|
||||||
} from '@/constants';
|
} from '@/constants';
|
||||||
import { NodeTypes } from '@/NodeTypes';
|
import { NodeTypes } from '@/node-types';
|
||||||
import { ExternalHooks } from '@/ExternalHooks';
|
import { ExternalHooks } from '@/external-hooks';
|
||||||
import { WebhookService } from '@/webhooks/webhook.service';
|
import { WebhookService } from '@/webhooks/webhook.service';
|
||||||
import { Logger } from './Logger';
|
import { Logger } from './logger';
|
||||||
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
||||||
import { OrchestrationService } from '@/services/orchestration.service';
|
import { OrchestrationService } from '@/services/orchestration.service';
|
||||||
import { ActivationErrorsService } from '@/ActivationErrors.service';
|
import { ActivationErrorsService } from '@/activation-errors.service';
|
||||||
import { ActiveWorkflowsService } from '@/services/activeWorkflows.service';
|
import { ActiveWorkflowsService } from '@/services/activeWorkflows.service';
|
||||||
import { WorkflowExecutionService } from '@/workflows/workflowExecution.service';
|
import { WorkflowExecutionService } from '@/workflows/workflow-execution.service';
|
||||||
import { WorkflowStaticDataService } from '@/workflows/workflowStaticData.service';
|
import { WorkflowStaticDataService } from '@/workflows/workflow-static-data.service';
|
||||||
import { OnShutdown } from '@/decorators/OnShutdown';
|
import { OnShutdown } from '@/decorators/on-shutdown';
|
||||||
|
|
||||||
interface QueuedActivation {
|
interface QueuedActivation {
|
||||||
activationMode: WorkflowActivateMode;
|
activationMode: WorkflowActivateMode;
|
||||||
@@ -10,8 +10,8 @@ import { InvalidAuthTokenRepository } from '@db/repositories/invalidAuthToken.re
|
|||||||
import { UserRepository } from '@db/repositories/user.repository';
|
import { UserRepository } from '@db/repositories/user.repository';
|
||||||
import { AuthError } from '@/errors/response-errors/auth.error';
|
import { AuthError } from '@/errors/response-errors/auth.error';
|
||||||
import { ForbiddenError } from '@/errors/response-errors/forbidden.error';
|
import { ForbiddenError } from '@/errors/response-errors/forbidden.error';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import type { AuthenticatedRequest } from '@/requests';
|
import type { AuthenticatedRequest } from '@/requests';
|
||||||
import { JwtService } from '@/services/jwt.service';
|
import { JwtService } from '@/services/jwt.service';
|
||||||
import { UrlService } from '@/services/url.service';
|
import { UrlService } from '@/services/url.service';
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import type { User } from '@db/entities/User';
|
import type { User } from '@db/entities/User';
|
||||||
import { PasswordUtility } from '@/services/password.utility';
|
import { PasswordUtility } from '@/services/password.utility';
|
||||||
import { Container } from 'typedi';
|
import { Container } from 'typedi';
|
||||||
import { isLdapLoginEnabled } from '@/Ldap/helpers.ee';
|
import { isLdapLoginEnabled } from '@/ldap/helpers.ee';
|
||||||
import { UserRepository } from '@db/repositories/user.repository';
|
import { UserRepository } from '@db/repositories/user.repository';
|
||||||
import { AuthError } from '@/errors/response-errors/auth.error';
|
import { AuthError } from '@/errors/response-errors/auth.error';
|
||||||
import { EventService } from '@/events/event.service';
|
import { EventService } from '@/events/event.service';
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { Container } from 'typedi';
|
import { Container } from 'typedi';
|
||||||
|
|
||||||
import { LdapService } from '@/Ldap/ldap.service.ee';
|
import { LdapService } from '@/ldap/ldap.service.ee';
|
||||||
import {
|
import {
|
||||||
createLdapUserOnLocalDb,
|
createLdapUserOnLocalDb,
|
||||||
getUserByEmail,
|
getUserByEmail,
|
||||||
@@ -9,7 +9,7 @@ import {
|
|||||||
mapLdapAttributesToUser,
|
mapLdapAttributesToUser,
|
||||||
createLdapAuthIdentity,
|
createLdapAuthIdentity,
|
||||||
updateLdapUserOnLocalDb,
|
updateLdapUserOnLocalDb,
|
||||||
} from '@/Ldap/helpers.ee';
|
} from '@/ldap/helpers.ee';
|
||||||
import type { User } from '@db/entities/User';
|
import type { User } from '@db/entities/User';
|
||||||
import { EventService } from '@/events/event.service';
|
import { EventService } from '@/events/event.service';
|
||||||
|
|
||||||
|
|||||||
@@ -2,11 +2,11 @@ import { Container } from 'typedi';
|
|||||||
import { Flags } from '@oclif/core';
|
import { Flags } from '@oclif/core';
|
||||||
import { ApplicationError } from 'n8n-workflow';
|
import { ApplicationError } from 'n8n-workflow';
|
||||||
|
|
||||||
import { SecurityAuditService } from '@/security-audit/SecurityAudit.service';
|
import { SecurityAuditService } from '@/security-audit/security-audit.service';
|
||||||
import { RISK_CATEGORIES } from '@/security-audit/constants';
|
import { RISK_CATEGORIES } from '@/security-audit/constants';
|
||||||
import config from '@/config';
|
import config from '@/config';
|
||||||
import type { Risk } from '@/security-audit/types';
|
import type { Risk } from '@/security-audit/types';
|
||||||
import { BaseCommand } from './BaseCommand';
|
import { BaseCommand } from './base-command';
|
||||||
|
|
||||||
export class SecurityAudit extends BaseCommand {
|
export class SecurityAudit extends BaseCommand {
|
||||||
static description = 'Generate a security audit report for this n8n instance';
|
static description = 'Generate a security audit report for this n8n instance';
|
||||||
|
|||||||
@@ -4,25 +4,25 @@ import { Command, Errors } from '@oclif/core';
|
|||||||
import { GlobalConfig } from '@n8n/config';
|
import { GlobalConfig } from '@n8n/config';
|
||||||
import { ApplicationError, ErrorReporterProxy as ErrorReporter, sleep } from 'n8n-workflow';
|
import { ApplicationError, ErrorReporterProxy as ErrorReporter, sleep } from 'n8n-workflow';
|
||||||
import { BinaryDataService, InstanceSettings, ObjectStoreService } from 'n8n-core';
|
import { BinaryDataService, InstanceSettings, ObjectStoreService } from 'n8n-core';
|
||||||
import type { AbstractServer } from '@/AbstractServer';
|
import type { AbstractServer } from '@/abstract-server';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import config from '@/config';
|
import config from '@/config';
|
||||||
import * as Db from '@/Db';
|
import * as Db from '@/Db';
|
||||||
import * as CrashJournal from '@/CrashJournal';
|
import * as CrashJournal from '@/crash-journal';
|
||||||
import { LICENSE_FEATURES, inDevelopment, inTest } from '@/constants';
|
import { LICENSE_FEATURES, inDevelopment, inTest } from '@/constants';
|
||||||
import { initErrorHandling } from '@/ErrorReporting';
|
import { initErrorHandling } from '@/error-reporting';
|
||||||
import { ExternalHooks } from '@/ExternalHooks';
|
import { ExternalHooks } from '@/external-hooks';
|
||||||
import { NodeTypes } from '@/NodeTypes';
|
import { NodeTypes } from '@/node-types';
|
||||||
import { LoadNodesAndCredentials } from '@/LoadNodesAndCredentials';
|
import { LoadNodesAndCredentials } from '@/load-nodes-and-credentials';
|
||||||
import type { N8nInstanceType } from '@/Interfaces';
|
import type { N8nInstanceType } from '@/Interfaces';
|
||||||
import { PostHogClient } from '@/posthog';
|
import { PostHogClient } from '@/posthog';
|
||||||
import { InternalHooks } from '@/InternalHooks';
|
import { InternalHooks } from '@/internal-hooks';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import { ExternalSecretsManager } from '@/ExternalSecrets/ExternalSecretsManager.ee';
|
import { ExternalSecretsManager } from '@/external-secrets/external-secrets-manager.ee';
|
||||||
import { initExpressionEvaluator } from '@/ExpressionEvaluator';
|
import { initExpressionEvaluator } from '@/expression-evaluator';
|
||||||
import { generateHostInstanceId } from '@db/utils/generators';
|
import { generateHostInstanceId } from '@db/utils/generators';
|
||||||
import { WorkflowHistoryManager } from '@/workflows/workflowHistory/workflowHistoryManager.ee';
|
import { WorkflowHistoryManager } from '@/workflows/workflow-history/workflow-history-manager.ee';
|
||||||
import { ShutdownService } from '@/shutdown/Shutdown.service';
|
import { ShutdownService } from '@/shutdown/shutdown.service';
|
||||||
import { TelemetryEventRelay } from '@/events/telemetry-event-relay';
|
import { TelemetryEventRelay } from '@/events/telemetry-event-relay';
|
||||||
|
|
||||||
export abstract class BaseCommand extends Command {
|
export abstract class BaseCommand extends Command {
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
import { main } from '@/commands/db/revert';
|
import { main } from '@/commands/db/revert';
|
||||||
import { mockInstance } from '@test/mocking';
|
import { mockInstance } from '@test/mocking';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import type { IrreversibleMigration, ReversibleMigration } from '@/databases/types';
|
import type { IrreversibleMigration, ReversibleMigration } from '@/databases/types';
|
||||||
import type { Migration, MigrationExecutor } from '@n8n/typeorm';
|
import type { Migration, MigrationExecutor } from '@n8n/typeorm';
|
||||||
import { type DataSource } from '@n8n/typeorm';
|
import { type DataSource } from '@n8n/typeorm';
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import type { DataSourceOptions as ConnectionOptions } from '@n8n/typeorm';
|
|||||||
// eslint-disable-next-line n8n-local-rules/misplaced-n8n-typeorm-import
|
// eslint-disable-next-line n8n-local-rules/misplaced-n8n-typeorm-import
|
||||||
import { MigrationExecutor, DataSource as Connection } from '@n8n/typeorm';
|
import { MigrationExecutor, DataSource as Connection } from '@n8n/typeorm';
|
||||||
import { Container } from 'typedi';
|
import { Container } from 'typedi';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { getConnectionOptions } from '@db/config';
|
import { getConnectionOptions } from '@db/config';
|
||||||
import type { Migration } from '@db/types';
|
import type { Migration } from '@db/types';
|
||||||
import { wrapMigration } from '@db/utils/migrationHelpers';
|
import { wrapMigration } from '@db/utils/migrationHelpers';
|
||||||
|
|||||||
@@ -3,11 +3,11 @@ import { Flags } from '@oclif/core';
|
|||||||
import type { IWorkflowBase } from 'n8n-workflow';
|
import type { IWorkflowBase } from 'n8n-workflow';
|
||||||
import { ApplicationError, ExecutionBaseError } from 'n8n-workflow';
|
import { ApplicationError, ExecutionBaseError } from 'n8n-workflow';
|
||||||
|
|
||||||
import { ActiveExecutions } from '@/ActiveExecutions';
|
import { ActiveExecutions } from '@/active-executions';
|
||||||
import { WorkflowRunner } from '@/WorkflowRunner';
|
import { WorkflowRunner } from '@/workflow-runner';
|
||||||
import type { IWorkflowExecutionDataProcess } from '@/Interfaces';
|
import type { IWorkflowExecutionDataProcess } from '@/Interfaces';
|
||||||
import { findCliWorkflowStart, isWorkflowIdValid } from '@/utils';
|
import { findCliWorkflowStart, isWorkflowIdValid } from '@/utils';
|
||||||
import { BaseCommand } from './BaseCommand';
|
import { BaseCommand } from './base-command';
|
||||||
|
|
||||||
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
||||||
import { OwnershipService } from '@/services/ownership.service';
|
import { OwnershipService } from '@/services/ownership.service';
|
||||||
|
|||||||
@@ -9,15 +9,15 @@ import { sep } from 'path';
|
|||||||
import { diff } from 'json-diff';
|
import { diff } from 'json-diff';
|
||||||
import pick from 'lodash/pick';
|
import pick from 'lodash/pick';
|
||||||
|
|
||||||
import { ActiveExecutions } from '@/ActiveExecutions';
|
import { ActiveExecutions } from '@/active-executions';
|
||||||
import { WorkflowRunner } from '@/WorkflowRunner';
|
import { WorkflowRunner } from '@/workflow-runner';
|
||||||
import type { IWorkflowDb, IWorkflowExecutionDataProcess } from '@/Interfaces';
|
import type { IWorkflowDb, IWorkflowExecutionDataProcess } from '@/Interfaces';
|
||||||
import type { User } from '@db/entities/User';
|
import type { User } from '@db/entities/User';
|
||||||
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
||||||
import { OwnershipService } from '@/services/ownership.service';
|
import { OwnershipService } from '@/services/ownership.service';
|
||||||
import { findCliWorkflowStart } from '@/utils';
|
import { findCliWorkflowStart } from '@/utils';
|
||||||
|
|
||||||
import { BaseCommand } from './BaseCommand';
|
import { BaseCommand } from './base-command';
|
||||||
import type {
|
import type {
|
||||||
IExecutionResult,
|
IExecutionResult,
|
||||||
INodeSpecialCase,
|
INodeSpecialCase,
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import fs from 'fs';
|
|||||||
import path from 'path';
|
import path from 'path';
|
||||||
import { Credentials } from 'n8n-core';
|
import { Credentials } from 'n8n-core';
|
||||||
import type { ICredentialsDb, ICredentialsDecryptedDb } from '@/Interfaces';
|
import type { ICredentialsDb, ICredentialsDecryptedDb } from '@/Interfaces';
|
||||||
import { BaseCommand } from '../BaseCommand';
|
import { BaseCommand } from '../base-command';
|
||||||
import { CredentialsRepository } from '@db/repositories/credentials.repository';
|
import { CredentialsRepository } from '@db/repositories/credentials.repository';
|
||||||
import Container from 'typedi';
|
import Container from 'typedi';
|
||||||
import { ApplicationError } from 'n8n-workflow';
|
import { ApplicationError } from 'n8n-workflow';
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { Flags } from '@oclif/core';
|
import { Flags } from '@oclif/core';
|
||||||
import fs from 'fs';
|
import fs from 'fs';
|
||||||
import path from 'path';
|
import path from 'path';
|
||||||
import { BaseCommand } from '../BaseCommand';
|
import { BaseCommand } from '../base-command';
|
||||||
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
||||||
import Container from 'typedi';
|
import Container from 'typedi';
|
||||||
import { ApplicationError } from 'n8n-workflow';
|
import { ApplicationError } from 'n8n-workflow';
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import type { EntityManager } from '@n8n/typeorm';
|
|||||||
import * as Db from '@/Db';
|
import * as Db from '@/Db';
|
||||||
import { SharedCredentials } from '@db/entities/SharedCredentials';
|
import { SharedCredentials } from '@db/entities/SharedCredentials';
|
||||||
import { CredentialsEntity } from '@db/entities/CredentialsEntity';
|
import { CredentialsEntity } from '@db/entities/CredentialsEntity';
|
||||||
import { BaseCommand } from '../BaseCommand';
|
import { BaseCommand } from '../base-command';
|
||||||
import type { ICredentialsEncrypted } from 'n8n-workflow';
|
import type { ICredentialsEncrypted } from 'n8n-workflow';
|
||||||
import { ApplicationError, jsonParse } from 'n8n-workflow';
|
import { ApplicationError, jsonParse } from 'n8n-workflow';
|
||||||
import { UM_FIX_INSTRUCTION } from '@/constants';
|
import { UM_FIX_INSTRUCTION } from '@/constants';
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ import { UserRepository } from '@db/repositories/user.repository';
|
|||||||
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
||||||
import type { IWorkflowToImport } from '@/Interfaces';
|
import type { IWorkflowToImport } from '@/Interfaces';
|
||||||
import { ImportService } from '@/services/import.service';
|
import { ImportService } from '@/services/import.service';
|
||||||
import { BaseCommand } from '../BaseCommand';
|
import { BaseCommand } from '../base-command';
|
||||||
import { SharedWorkflowRepository } from '@db/repositories/sharedWorkflow.repository';
|
import { SharedWorkflowRepository } from '@db/repositories/sharedWorkflow.repository';
|
||||||
import { ProjectRepository } from '@/databases/repositories/project.repository';
|
import { ProjectRepository } from '@/databases/repositories/project.repository';
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import Container from 'typedi';
|
import Container from 'typedi';
|
||||||
import { LDAP_DEFAULT_CONFIGURATION, LDAP_FEATURE_NAME } from '@/Ldap/constants';
|
import { LDAP_DEFAULT_CONFIGURATION, LDAP_FEATURE_NAME } from '@/ldap/constants';
|
||||||
import { AuthIdentityRepository } from '@db/repositories/authIdentity.repository';
|
import { AuthIdentityRepository } from '@db/repositories/authIdentity.repository';
|
||||||
import { AuthProviderSyncHistoryRepository } from '@db/repositories/authProviderSyncHistory.repository';
|
import { AuthProviderSyncHistoryRepository } from '@db/repositories/authProviderSyncHistory.repository';
|
||||||
import { SettingsRepository } from '@db/repositories/settings.repository';
|
import { SettingsRepository } from '@db/repositories/settings.repository';
|
||||||
import { UserRepository } from '@db/repositories/user.repository';
|
import { UserRepository } from '@db/repositories/user.repository';
|
||||||
import { BaseCommand } from '../BaseCommand';
|
import { BaseCommand } from '../base-command';
|
||||||
import { Flags } from '@oclif/core';
|
import { Flags } from '@oclif/core';
|
||||||
import { ApplicationError } from 'n8n-workflow';
|
import { ApplicationError } from 'n8n-workflow';
|
||||||
import { ProjectRepository } from '@/databases/repositories/project.repository';
|
import { ProjectRepository } from '@/databases/repositories/project.repository';
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { Container } from 'typedi';
|
import { Container } from 'typedi';
|
||||||
import { SETTINGS_LICENSE_CERT_KEY } from '@/constants';
|
import { SETTINGS_LICENSE_CERT_KEY } from '@/constants';
|
||||||
import { BaseCommand } from '../BaseCommand';
|
import { BaseCommand } from '../base-command';
|
||||||
import { SettingsRepository } from '@db/repositories/settings.repository';
|
import { SettingsRepository } from '@db/repositories/settings.repository';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
|
|
||||||
export class ClearLicenseCommand extends BaseCommand {
|
export class ClearLicenseCommand extends BaseCommand {
|
||||||
static description = 'Clear license';
|
static description = 'Clear license';
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { Container } from 'typedi';
|
import { Container } from 'typedi';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import { BaseCommand } from '../BaseCommand';
|
import { BaseCommand } from '../base-command';
|
||||||
|
|
||||||
export class LicenseInfoCommand extends BaseCommand {
|
export class LicenseInfoCommand extends BaseCommand {
|
||||||
static description = 'Print license information';
|
static description = 'Print license information';
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import Container from 'typedi';
|
import Container from 'typedi';
|
||||||
import { Flags } from '@oclif/core';
|
import { Flags } from '@oclif/core';
|
||||||
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
||||||
import { BaseCommand } from '../BaseCommand';
|
import { BaseCommand } from '../base-command';
|
||||||
|
|
||||||
export class ListWorkflowCommand extends BaseCommand {
|
export class ListWorkflowCommand extends BaseCommand {
|
||||||
static description = '\nList workflows';
|
static description = '\nList workflows';
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import Container from 'typedi';
|
import Container from 'typedi';
|
||||||
import { Flags } from '@oclif/core';
|
import { Flags } from '@oclif/core';
|
||||||
import { AuthUserRepository } from '@db/repositories/authUser.repository';
|
import { AuthUserRepository } from '@db/repositories/authUser.repository';
|
||||||
import { BaseCommand } from '../BaseCommand';
|
import { BaseCommand } from '../base-command';
|
||||||
|
|
||||||
export class DisableMFACommand extends BaseCommand {
|
export class DisableMFACommand extends BaseCommand {
|
||||||
static description = 'Disable MFA authentication for a user';
|
static description = 'Disable MFA authentication for a user';
|
||||||
|
|||||||
@@ -11,12 +11,12 @@ import glob from 'fast-glob';
|
|||||||
import { jsonParse, randomString } from 'n8n-workflow';
|
import { jsonParse, randomString } from 'n8n-workflow';
|
||||||
|
|
||||||
import config from '@/config';
|
import config from '@/config';
|
||||||
import { ActiveExecutions } from '@/ActiveExecutions';
|
import { ActiveExecutions } from '@/active-executions';
|
||||||
import { ActiveWorkflowManager } from '@/ActiveWorkflowManager';
|
import { ActiveWorkflowManager } from '@/active-workflow-manager';
|
||||||
import { Server } from '@/Server';
|
import { Server } from '@/server';
|
||||||
import { EDITOR_UI_DIST_DIR, LICENSE_FEATURES } from '@/constants';
|
import { EDITOR_UI_DIST_DIR, LICENSE_FEATURES } from '@/constants';
|
||||||
import { MessageEventBus } from '@/eventbus/MessageEventBus/MessageEventBus';
|
import { MessageEventBus } from '@/eventbus/MessageEventBus/MessageEventBus';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import { OrchestrationService } from '@/services/orchestration.service';
|
import { OrchestrationService } from '@/services/orchestration.service';
|
||||||
import { OrchestrationHandlerMainService } from '@/services/orchestration/main/orchestration.handler.main.service';
|
import { OrchestrationHandlerMainService } from '@/services/orchestration/main/orchestration.handler.main.service';
|
||||||
import { PruningService } from '@/services/pruning.service';
|
import { PruningService } from '@/services/pruning.service';
|
||||||
@@ -24,12 +24,12 @@ import { UrlService } from '@/services/url.service';
|
|||||||
import { SettingsRepository } from '@db/repositories/settings.repository';
|
import { SettingsRepository } from '@db/repositories/settings.repository';
|
||||||
import { ExecutionRepository } from '@db/repositories/execution.repository';
|
import { ExecutionRepository } from '@db/repositories/execution.repository';
|
||||||
import { FeatureNotLicensedError } from '@/errors/feature-not-licensed.error';
|
import { FeatureNotLicensedError } from '@/errors/feature-not-licensed.error';
|
||||||
import { WaitTracker } from '@/WaitTracker';
|
import { WaitTracker } from '@/wait-tracker';
|
||||||
import { BaseCommand } from './BaseCommand';
|
import { BaseCommand } from './base-command';
|
||||||
import type { IWorkflowExecutionDataProcess } from '@/Interfaces';
|
import type { IWorkflowExecutionDataProcess } from '@/Interfaces';
|
||||||
import { ExecutionService } from '@/executions/execution.service';
|
import { ExecutionService } from '@/executions/execution.service';
|
||||||
import { OwnershipService } from '@/services/ownership.service';
|
import { OwnershipService } from '@/services/ownership.service';
|
||||||
import { WorkflowRunner } from '@/WorkflowRunner';
|
import { WorkflowRunner } from '@/workflow-runner';
|
||||||
import { EventService } from '@/events/event.service';
|
import { EventService } from '@/events/event.service';
|
||||||
|
|
||||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-var-requires
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-var-requires
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { Container } from 'typedi';
|
import { Container } from 'typedi';
|
||||||
import { Flags } from '@oclif/core';
|
import { Flags } from '@oclif/core';
|
||||||
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
||||||
import { BaseCommand } from '../BaseCommand';
|
import { BaseCommand } from '../base-command';
|
||||||
|
|
||||||
export class UpdateWorkflowCommand extends BaseCommand {
|
export class UpdateWorkflowCommand extends BaseCommand {
|
||||||
static description = 'Update workflows';
|
static description = 'Update workflows';
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import { SettingsRepository } from '@db/repositories/settings.repository';
|
|||||||
import { SharedCredentialsRepository } from '@db/repositories/sharedCredentials.repository';
|
import { SharedCredentialsRepository } from '@db/repositories/sharedCredentials.repository';
|
||||||
import { SharedWorkflowRepository } from '@db/repositories/sharedWorkflow.repository';
|
import { SharedWorkflowRepository } from '@db/repositories/sharedWorkflow.repository';
|
||||||
import { UserRepository } from '@db/repositories/user.repository';
|
import { UserRepository } from '@db/repositories/user.repository';
|
||||||
import { BaseCommand } from '../BaseCommand';
|
import { BaseCommand } from '../base-command';
|
||||||
import { ProjectRepository } from '@/databases/repositories/project.repository';
|
import { ProjectRepository } from '@/databases/repositories/project.repository';
|
||||||
|
|
||||||
const defaultUserProps = {
|
const defaultUserProps = {
|
||||||
|
|||||||
@@ -3,9 +3,9 @@ import { Flags, type Config } from '@oclif/core';
|
|||||||
import { ApplicationError } from 'n8n-workflow';
|
import { ApplicationError } from 'n8n-workflow';
|
||||||
|
|
||||||
import config from '@/config';
|
import config from '@/config';
|
||||||
import { ActiveExecutions } from '@/ActiveExecutions';
|
import { ActiveExecutions } from '@/active-executions';
|
||||||
import { WebhookServer } from '@/webhooks/WebhookServer';
|
import { WebhookServer } from '@/webhooks/webhook-server';
|
||||||
import { BaseCommand } from './BaseCommand';
|
import { BaseCommand } from './base-command';
|
||||||
|
|
||||||
import { OrchestrationWebhookService } from '@/services/orchestration/webhook/orchestration.webhook.service';
|
import { OrchestrationWebhookService } from '@/services/orchestration/webhook/orchestration.webhook.service';
|
||||||
import { OrchestrationHandlerWebhookService } from '@/services/orchestration/webhook/orchestration.handler.webhook.service';
|
import { OrchestrationHandlerWebhookService } from '@/services/orchestration/webhook/orchestration.handler.webhook.service';
|
||||||
|
|||||||
@@ -5,12 +5,12 @@ import http from 'http';
|
|||||||
import { ApplicationError } from 'n8n-workflow';
|
import { ApplicationError } from 'n8n-workflow';
|
||||||
|
|
||||||
import * as Db from '@/Db';
|
import * as Db from '@/Db';
|
||||||
import * as ResponseHelper from '@/ResponseHelper';
|
import * as ResponseHelper from '@/response-helper';
|
||||||
import config from '@/config';
|
import config from '@/config';
|
||||||
import type { ScalingService } from '@/scaling/scaling.service';
|
import type { ScalingService } from '@/scaling/scaling.service';
|
||||||
import { N8N_VERSION, inTest } from '@/constants';
|
import { N8N_VERSION, inTest } from '@/constants';
|
||||||
import type { ICredentialsOverwrite } from '@/Interfaces';
|
import type { ICredentialsOverwrite } from '@/Interfaces';
|
||||||
import { CredentialsOverwrites } from '@/CredentialsOverwrites';
|
import { CredentialsOverwrites } from '@/credentials-overwrites';
|
||||||
import { rawBodyReader, bodyParser } from '@/middlewares';
|
import { rawBodyReader, bodyParser } from '@/middlewares';
|
||||||
import { MessageEventBus } from '@/eventbus/MessageEventBus/MessageEventBus';
|
import { MessageEventBus } from '@/eventbus/MessageEventBus/MessageEventBus';
|
||||||
import type { RedisServicePubSubSubscriber } from '@/services/redis/RedisServicePubSubSubscriber';
|
import type { RedisServicePubSubSubscriber } from '@/services/redis/RedisServicePubSubSubscriber';
|
||||||
@@ -18,7 +18,7 @@ import { EventMessageGeneric } from '@/eventbus/EventMessageClasses/EventMessage
|
|||||||
import { OrchestrationHandlerWorkerService } from '@/services/orchestration/worker/orchestration.handler.worker.service';
|
import { OrchestrationHandlerWorkerService } from '@/services/orchestration/worker/orchestration.handler.worker.service';
|
||||||
import { OrchestrationWorkerService } from '@/services/orchestration/worker/orchestration.worker.service';
|
import { OrchestrationWorkerService } from '@/services/orchestration/worker/orchestration.worker.service';
|
||||||
import { ServiceUnavailableError } from '@/errors/response-errors/service-unavailable.error';
|
import { ServiceUnavailableError } from '@/errors/response-errors/service-unavailable.error';
|
||||||
import { BaseCommand } from './BaseCommand';
|
import { BaseCommand } from './base-command';
|
||||||
import { JobProcessor } from '@/scaling/job-processor';
|
import { JobProcessor } from '@/scaling/job-processor';
|
||||||
import { LogStreamingEventRelay } from '@/events/log-streaming-event-relay';
|
import { LogStreamingEventRelay } from '@/events/log-streaming-event-relay';
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import {
|
|||||||
CLOUD_TEMP_REPORTABLE_THRESHOLDS,
|
CLOUD_TEMP_REPORTABLE_THRESHOLDS,
|
||||||
ConcurrencyControlService,
|
ConcurrencyControlService,
|
||||||
} from '@/concurrency/concurrency-control.service';
|
} from '@/concurrency/concurrency-control.service';
|
||||||
import type { Logger } from '@/Logger';
|
import type { Logger } from '@/logger';
|
||||||
import { InvalidConcurrencyLimitError } from '@/errors/invalid-concurrency-limit.error';
|
import { InvalidConcurrencyLimitError } from '@/errors/invalid-concurrency-limit.error';
|
||||||
import { ConcurrencyQueue } from '../concurrency-queue';
|
import { ConcurrencyQueue } from '../concurrency-queue';
|
||||||
import type { WorkflowExecuteMode as ExecutionMode } from 'n8n-workflow';
|
import type { WorkflowExecuteMode as ExecutionMode } from 'n8n-workflow';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import config from '@/config';
|
import config from '@/config';
|
||||||
import { Service } from 'typedi';
|
import { Service } from 'typedi';
|
||||||
import { ConcurrencyQueue } from './concurrency-queue';
|
import { ConcurrencyQueue } from './concurrency-queue';
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { DynamicNodeParametersController } from '@/controllers/dynamicNodeParame
|
|||||||
import type { DynamicNodeParametersRequest } from '@/requests';
|
import type { DynamicNodeParametersRequest } from '@/requests';
|
||||||
import type { DynamicNodeParametersService } from '@/services/dynamicNodeParameters.service';
|
import type { DynamicNodeParametersService } from '@/services/dynamicNodeParameters.service';
|
||||||
import { mock } from 'jest-mock-extended';
|
import { mock } from 'jest-mock-extended';
|
||||||
import * as AdditionalData from '@/WorkflowExecuteAdditionalData';
|
import * as AdditionalData from '@/workflow-execute-additional-data';
|
||||||
import type { ILoadOptions, IWorkflowExecuteAdditionalData } from 'n8n-workflow';
|
import type { ILoadOptions, IWorkflowExecuteAdditionalData } from 'n8n-workflow';
|
||||||
|
|
||||||
describe('DynamicNodeParametersController', () => {
|
describe('DynamicNodeParametersController', () => {
|
||||||
|
|||||||
@@ -9,18 +9,17 @@ import { API_KEY_PREFIX, MeController } from '@/controllers/me.controller';
|
|||||||
import { AUTH_COOKIE_NAME } from '@/constants';
|
import { AUTH_COOKIE_NAME } from '@/constants';
|
||||||
import type { AuthenticatedRequest, MeRequest } from '@/requests';
|
import type { AuthenticatedRequest, MeRequest } from '@/requests';
|
||||||
import { UserService } from '@/services/user.service';
|
import { UserService } from '@/services/user.service';
|
||||||
import { ExternalHooks } from '@/ExternalHooks';
|
import { ExternalHooks } from '@/external-hooks';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
import { EventService } from '@/events/event.service';
|
import { EventService } from '@/events/event.service';
|
||||||
import { AuthUserRepository } from '@db/repositories/authUser.repository';
|
|
||||||
import { InvalidAuthTokenRepository } from '@db/repositories/invalidAuthToken.repository';
|
|
||||||
import { UserRepository } from '@db/repositories/user.repository';
|
|
||||||
import { MfaService } from '@/Mfa/mfa.service';
|
|
||||||
import { InvalidMfaCodeError } from '@/errors/response-errors/invalid-mfa-code.error';
|
|
||||||
|
|
||||||
import { badPasswords } from '@test/testData';
|
import { badPasswords } from '@test/testData';
|
||||||
import { mockInstance } from '@test/mocking';
|
import { mockInstance } from '@test/mocking';
|
||||||
|
import { AuthUserRepository } from '@/databases/repositories/authUser.repository';
|
||||||
|
import { InvalidAuthTokenRepository } from '@db/repositories/invalidAuthToken.repository';
|
||||||
|
import { UserRepository } from '@db/repositories/user.repository';
|
||||||
|
import { MfaService } from '@/mfa/mfa.service';
|
||||||
|
import { InvalidMfaCodeError } from '@/errors/response-errors/invalid-mfa-code.error';
|
||||||
|
|
||||||
const browserId = 'test-browser-id';
|
const browserId = 'test-browser-id';
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import type { User } from '@db/entities/User';
|
|||||||
import type { SettingsRepository } from '@db/repositories/settings.repository';
|
import type { SettingsRepository } from '@db/repositories/settings.repository';
|
||||||
import type { UserRepository } from '@db/repositories/user.repository';
|
import type { UserRepository } from '@db/repositories/user.repository';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import type { OwnerRequest } from '@/requests';
|
import type { OwnerRequest } from '@/requests';
|
||||||
import type { UserService } from '@/services/user.service';
|
import type { UserService } from '@/services/user.service';
|
||||||
import { PasswordUtility } from '@/services/password.utility';
|
import { PasswordUtility } from '@/services/password.utility';
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import {
|
|||||||
CREDENTIAL_TRANSLATIONS_DIR,
|
CREDENTIAL_TRANSLATIONS_DIR,
|
||||||
} from '@/controllers/translation.controller';
|
} from '@/controllers/translation.controller';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
import type { CredentialTypes } from '@/CredentialTypes';
|
import type { CredentialTypes } from '@/credential-types';
|
||||||
|
|
||||||
describe('TranslationController', () => {
|
describe('TranslationController', () => {
|
||||||
const configGetSpy = jest.spyOn(config, 'getEnv');
|
const configGetSpy = jest.spyOn(config, 'getEnv');
|
||||||
|
|||||||
@@ -13,11 +13,11 @@ import {
|
|||||||
getCurrentAuthenticationMethod,
|
getCurrentAuthenticationMethod,
|
||||||
isLdapCurrentAuthenticationMethod,
|
isLdapCurrentAuthenticationMethod,
|
||||||
isSamlCurrentAuthenticationMethod,
|
isSamlCurrentAuthenticationMethod,
|
||||||
} from '@/sso/ssoHelpers';
|
} from '@/sso/sso-helpers';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import { UserService } from '@/services/user.service';
|
import { UserService } from '@/services/user.service';
|
||||||
import { MfaService } from '@/Mfa/mfa.service';
|
import { MfaService } from '@/mfa/mfa.service';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { AuthError } from '@/errors/response-errors/auth.error';
|
import { AuthError } from '@/errors/response-errors/auth.error';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
import { ForbiddenError } from '@/errors/response-errors/forbidden.error';
|
import { ForbiddenError } from '@/errors/response-errors/forbidden.error';
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { Get, RestController } from '@/decorators';
|
import { Get, RestController } from '@/decorators';
|
||||||
import { ActiveWorkflowManager } from '@/ActiveWorkflowManager';
|
import { ActiveWorkflowManager } from '@/active-workflow-manager';
|
||||||
import { OrchestrationService } from '@/services/orchestration.service';
|
import { OrchestrationService } from '@/services/orchestration.service';
|
||||||
import { WorkflowRepository } from '@/databases/repositories/workflow.repository';
|
import { WorkflowRepository } from '@/databases/repositories/workflow.repository';
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import type { INodePropertyOptions, NodeParameterValueType } from 'n8n-workflow';
|
import type { INodePropertyOptions, NodeParameterValueType } from 'n8n-workflow';
|
||||||
|
|
||||||
import { Post, RestController } from '@/decorators';
|
import { Post, RestController } from '@/decorators';
|
||||||
import { getBase } from '@/WorkflowExecuteAdditionalData';
|
import { getBase } from '@/workflow-execute-additional-data';
|
||||||
import { DynamicNodeParametersService } from '@/services/dynamicNodeParameters.service';
|
import { DynamicNodeParametersService } from '@/services/dynamicNodeParameters.service';
|
||||||
import { DynamicNodeParametersRequest } from '@/requests';
|
import { DynamicNodeParametersRequest } from '@/requests';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
|
|||||||
@@ -3,19 +3,19 @@ import { v4 as uuid } from 'uuid';
|
|||||||
import config from '@/config';
|
import config from '@/config';
|
||||||
import { SettingsRepository } from '@db/repositories/settings.repository';
|
import { SettingsRepository } from '@db/repositories/settings.repository';
|
||||||
import { UserRepository } from '@db/repositories/user.repository';
|
import { UserRepository } from '@db/repositories/user.repository';
|
||||||
import { ActiveWorkflowManager } from '@/ActiveWorkflowManager';
|
import { ActiveWorkflowManager } from '@/active-workflow-manager';
|
||||||
import { MessageEventBus } from '@/eventbus/MessageEventBus/MessageEventBus';
|
import { MessageEventBus } from '@/eventbus/MessageEventBus/MessageEventBus';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import { LICENSE_FEATURES, LICENSE_QUOTAS, UNLIMITED_LICENSE_QUOTA, inE2ETests } from '@/constants';
|
import { LICENSE_FEATURES, LICENSE_QUOTAS, UNLIMITED_LICENSE_QUOTA, inE2ETests } from '@/constants';
|
||||||
import { Patch, Post, RestController } from '@/decorators';
|
import { Patch, Post, RestController } from '@/decorators';
|
||||||
import type { UserSetupPayload } from '@/requests';
|
import type { UserSetupPayload } from '@/requests';
|
||||||
import type { BooleanLicenseFeature, IPushDataType, NumericLicenseFeature } from '@/Interfaces';
|
import type { BooleanLicenseFeature, IPushDataType, NumericLicenseFeature } from '@/Interfaces';
|
||||||
import { MfaService } from '@/Mfa/mfa.service';
|
import { MfaService } from '@/mfa/mfa.service';
|
||||||
import { Push } from '@/push';
|
import { Push } from '@/push';
|
||||||
import { CacheService } from '@/services/cache/cache.service';
|
import { CacheService } from '@/services/cache/cache.service';
|
||||||
import { PasswordUtility } from '@/services/password.utility';
|
import { PasswordUtility } from '@/services/password.utility';
|
||||||
import Container from 'typedi';
|
import Container from 'typedi';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { AuthUserRepository } from '@/databases/repositories/authUser.repository';
|
import { AuthUserRepository } from '@/databases/repositories/authUser.repository';
|
||||||
|
|
||||||
if (!inE2ETests) {
|
if (!inE2ETests) {
|
||||||
|
|||||||
@@ -6,17 +6,17 @@ import config from '@/config';
|
|||||||
import { Post, GlobalScope, RestController } from '@/decorators';
|
import { Post, GlobalScope, RestController } from '@/decorators';
|
||||||
import { RESPONSE_ERROR_MESSAGES } from '@/constants';
|
import { RESPONSE_ERROR_MESSAGES } from '@/constants';
|
||||||
import { UserRequest } from '@/requests';
|
import { UserRequest } from '@/requests';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import { UserService } from '@/services/user.service';
|
import { UserService } from '@/services/user.service';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { isSamlLicensedAndEnabled } from '@/sso/saml/samlHelpers';
|
import { isSamlLicensedAndEnabled } from '@/sso/saml/saml-helpers';
|
||||||
import { PasswordUtility } from '@/services/password.utility';
|
import { PasswordUtility } from '@/services/password.utility';
|
||||||
import { PostHogClient } from '@/posthog';
|
import { PostHogClient } from '@/posthog';
|
||||||
import type { User } from '@/databases/entities/User';
|
import type { User } from '@/databases/entities/User';
|
||||||
import { UserRepository } from '@db/repositories/user.repository';
|
import { UserRepository } from '@db/repositories/user.repository';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
import { ForbiddenError } from '@/errors/response-errors/forbidden.error';
|
import { ForbiddenError } from '@/errors/response-errors/forbidden.error';
|
||||||
import { ExternalHooks } from '@/ExternalHooks';
|
import { ExternalHooks } from '@/external-hooks';
|
||||||
import { EventService } from '@/events/event.service';
|
import { EventService } from '@/events/event.service';
|
||||||
|
|
||||||
@RestController('/invitations')
|
@RestController('/invitations')
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import { randomBytes } from 'crypto';
|
|||||||
import { AuthService } from '@/auth/auth.service';
|
import { AuthService } from '@/auth/auth.service';
|
||||||
import { Delete, Get, Patch, Post, RestController } from '@/decorators';
|
import { Delete, Get, Patch, Post, RestController } from '@/decorators';
|
||||||
import { PasswordUtility } from '@/services/password.utility';
|
import { PasswordUtility } from '@/services/password.utility';
|
||||||
import { validateEntity } from '@/GenericHelpers';
|
import { validateEntity } from '@/generic-helpers';
|
||||||
import type { User } from '@db/entities/User';
|
import type { User } from '@db/entities/User';
|
||||||
import {
|
import {
|
||||||
AuthenticatedRequest,
|
AuthenticatedRequest,
|
||||||
@@ -15,15 +15,15 @@ import {
|
|||||||
UserUpdatePayload,
|
UserUpdatePayload,
|
||||||
} from '@/requests';
|
} from '@/requests';
|
||||||
import type { PublicUser } from '@/Interfaces';
|
import type { PublicUser } from '@/Interfaces';
|
||||||
import { isSamlLicensedAndEnabled } from '@/sso/saml/samlHelpers';
|
import { isSamlLicensedAndEnabled } from '@/sso/saml/saml-helpers';
|
||||||
import { UserService } from '@/services/user.service';
|
import { UserService } from '@/services/user.service';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { ExternalHooks } from '@/ExternalHooks';
|
import { ExternalHooks } from '@/external-hooks';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
import { UserRepository } from '@/databases/repositories/user.repository';
|
import { UserRepository } from '@/databases/repositories/user.repository';
|
||||||
import { isApiEnabled } from '@/PublicApi';
|
import { isApiEnabled } from '@/PublicApi';
|
||||||
import { EventService } from '@/events/event.service';
|
import { EventService } from '@/events/event.service';
|
||||||
import { MfaService } from '@/Mfa/mfa.service';
|
import { MfaService } from '@/mfa/mfa.service';
|
||||||
import { InvalidMfaCodeError } from '@/errors/response-errors/invalid-mfa-code.error';
|
import { InvalidMfaCodeError } from '@/errors/response-errors/invalid-mfa-code.error';
|
||||||
import { PersonalizationSurveyAnswersV4 } from './survey-answers.dto';
|
import { PersonalizationSurveyAnswersV4 } from './survey-answers.dto';
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { Get, Post, RestController } from '@/decorators';
|
import { Get, Post, RestController } from '@/decorators';
|
||||||
import { AuthenticatedRequest, MFA } from '@/requests';
|
import { AuthenticatedRequest, MFA } from '@/requests';
|
||||||
import { MfaService } from '@/Mfa/mfa.service';
|
import { MfaService } from '@/mfa/mfa.service';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
|
|
||||||
@RestController('/mfa')
|
@RestController('/mfa')
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import { Request } from 'express';
|
|||||||
import type { INodeTypeDescription, INodeTypeNameVersion } from 'n8n-workflow';
|
import type { INodeTypeDescription, INodeTypeNameVersion } from 'n8n-workflow';
|
||||||
import { Post, RestController } from '@/decorators';
|
import { Post, RestController } from '@/decorators';
|
||||||
import config from '@/config';
|
import config from '@/config';
|
||||||
import { NodeTypes } from '@/NodeTypes';
|
import { NodeTypes } from '@/node-types';
|
||||||
|
|
||||||
@RestController('/node-types')
|
@RestController('/node-types')
|
||||||
export class NodeTypesController {
|
export class NodeTypesController {
|
||||||
|
|||||||
@@ -11,11 +11,11 @@ import type { User } from '@db/entities/User';
|
|||||||
import type { OAuthRequest } from '@/requests';
|
import type { OAuthRequest } from '@/requests';
|
||||||
import { CredentialsRepository } from '@db/repositories/credentials.repository';
|
import { CredentialsRepository } from '@db/repositories/credentials.repository';
|
||||||
import { SharedCredentialsRepository } from '@db/repositories/sharedCredentials.repository';
|
import { SharedCredentialsRepository } from '@db/repositories/sharedCredentials.repository';
|
||||||
import { ExternalHooks } from '@/ExternalHooks';
|
import { ExternalHooks } from '@/external-hooks';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { VariablesService } from '@/environments/variables/variables.service.ee';
|
import { VariablesService } from '@/environments/variables/variables.service.ee';
|
||||||
import { SecretsHelper } from '@/SecretsHelpers';
|
import { SecretsHelper } from '@/secrets-helpers';
|
||||||
import { CredentialsHelper } from '@/CredentialsHelper';
|
import { CredentialsHelper } from '@/credentials-helper';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
import { NotFoundError } from '@/errors/response-errors/not-found.error';
|
import { NotFoundError } from '@/errors/response-errors/not-found.error';
|
||||||
|
|
||||||
|
|||||||
@@ -11,11 +11,11 @@ import type { User } from '@db/entities/User';
|
|||||||
import type { OAuthRequest } from '@/requests';
|
import type { OAuthRequest } from '@/requests';
|
||||||
import { CredentialsRepository } from '@db/repositories/credentials.repository';
|
import { CredentialsRepository } from '@db/repositories/credentials.repository';
|
||||||
import { SharedCredentialsRepository } from '@db/repositories/sharedCredentials.repository';
|
import { SharedCredentialsRepository } from '@db/repositories/sharedCredentials.repository';
|
||||||
import { ExternalHooks } from '@/ExternalHooks';
|
import { ExternalHooks } from '@/external-hooks';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { VariablesService } from '@/environments/variables/variables.service.ee';
|
import { VariablesService } from '@/environments/variables/variables.service.ee';
|
||||||
import { SecretsHelper } from '@/SecretsHelpers';
|
import { SecretsHelper } from '@/secrets-helpers';
|
||||||
import { CredentialsHelper } from '@/CredentialsHelper';
|
import { CredentialsHelper } from '@/credentials-helper';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
import { NotFoundError } from '@/errors/response-errors/not-found.error';
|
import { NotFoundError } from '@/errors/response-errors/not-found.error';
|
||||||
|
|
||||||
|
|||||||
@@ -11,10 +11,10 @@ import { SharedCredentialsRepository } from '@db/repositories/sharedCredentials.
|
|||||||
import type { ICredentialsDb } from '@/Interfaces';
|
import type { ICredentialsDb } from '@/Interfaces';
|
||||||
import type { OAuthRequest } from '@/requests';
|
import type { OAuthRequest } from '@/requests';
|
||||||
import { RESPONSE_ERROR_MESSAGES } from '@/constants';
|
import { RESPONSE_ERROR_MESSAGES } from '@/constants';
|
||||||
import { CredentialsHelper } from '@/CredentialsHelper';
|
import { CredentialsHelper } from '@/credentials-helper';
|
||||||
import * as WorkflowExecuteAdditionalData from '@/WorkflowExecuteAdditionalData';
|
import * as WorkflowExecuteAdditionalData from '@/workflow-execute-additional-data';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { ExternalHooks } from '@/ExternalHooks';
|
import { ExternalHooks } from '@/external-hooks';
|
||||||
import { UrlService } from '@/services/url.service';
|
import { UrlService } from '@/services/url.service';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
import { NotFoundError } from '@/errors/response-errors/not-found.error';
|
import { NotFoundError } from '@/errors/response-errors/not-found.error';
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import clientOAuth1 from 'oauth-1.0a';
|
|||||||
import { createHmac } from 'crypto';
|
import { createHmac } from 'crypto';
|
||||||
import { Get, RestController } from '@/decorators';
|
import { Get, RestController } from '@/decorators';
|
||||||
import { OAuthRequest } from '@/requests';
|
import { OAuthRequest } from '@/requests';
|
||||||
import { sendErrorResponse } from '@/ResponseHelper';
|
import { sendErrorResponse } from '@/response-helper';
|
||||||
import { AbstractOAuthController, type CsrfStateParam } from './abstractOAuth.controller';
|
import { AbstractOAuthController, type CsrfStateParam } from './abstractOAuth.controller';
|
||||||
import { NotFoundError } from '@/errors/response-errors/not-found.error';
|
import { NotFoundError } from '@/errors/response-errors/not-found.error';
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { Post, RestController, GlobalScope } from '@/decorators';
|
import { Post, RestController, GlobalScope } from '@/decorators';
|
||||||
import { OrchestrationRequest } from '@/requests';
|
import { OrchestrationRequest } from '@/requests';
|
||||||
import { OrchestrationService } from '@/services/orchestration.service';
|
import { OrchestrationService } from '@/services/orchestration.service';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
|
|
||||||
@RestController('/orchestration')
|
@RestController('/orchestration')
|
||||||
export class OrchestrationController {
|
export class OrchestrationController {
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import { Response } from 'express';
|
|||||||
|
|
||||||
import { AuthService } from '@/auth/auth.service';
|
import { AuthService } from '@/auth/auth.service';
|
||||||
import config from '@/config';
|
import config from '@/config';
|
||||||
import { validateEntity } from '@/GenericHelpers';
|
import { validateEntity } from '@/generic-helpers';
|
||||||
import { GlobalScope, Post, RestController } from '@/decorators';
|
import { GlobalScope, Post, RestController } from '@/decorators';
|
||||||
import { PasswordUtility } from '@/services/password.utility';
|
import { PasswordUtility } from '@/services/password.utility';
|
||||||
import { OwnerRequest } from '@/requests';
|
import { OwnerRequest } from '@/requests';
|
||||||
@@ -11,7 +11,7 @@ import { SettingsRepository } from '@db/repositories/settings.repository';
|
|||||||
import { UserRepository } from '@db/repositories/user.repository';
|
import { UserRepository } from '@db/repositories/user.repository';
|
||||||
import { PostHogClient } from '@/posthog';
|
import { PostHogClient } from '@/posthog';
|
||||||
import { UserService } from '@/services/user.service';
|
import { UserService } from '@/services/user.service';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
import { EventService } from '@/events/event.service';
|
import { EventService } from '@/events/event.service';
|
||||||
|
|
||||||
|
|||||||
@@ -4,15 +4,15 @@ import validator from 'validator';
|
|||||||
import { AuthService } from '@/auth/auth.service';
|
import { AuthService } from '@/auth/auth.service';
|
||||||
import { Get, Post, RestController } from '@/decorators';
|
import { Get, Post, RestController } from '@/decorators';
|
||||||
import { PasswordUtility } from '@/services/password.utility';
|
import { PasswordUtility } from '@/services/password.utility';
|
||||||
import { UserManagementMailer } from '@/UserManagement/email';
|
import { UserManagementMailer } from '@/user-management/email';
|
||||||
import { PasswordResetRequest } from '@/requests';
|
import { PasswordResetRequest } from '@/requests';
|
||||||
import { isSamlCurrentAuthenticationMethod } from '@/sso/ssoHelpers';
|
import { isSamlCurrentAuthenticationMethod } from '@/sso/sso-helpers';
|
||||||
import { UserService } from '@/services/user.service';
|
import { UserService } from '@/services/user.service';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import { RESPONSE_ERROR_MESSAGES } from '@/constants';
|
import { RESPONSE_ERROR_MESSAGES } from '@/constants';
|
||||||
import { MfaService } from '@/Mfa/mfa.service';
|
import { MfaService } from '@/mfa/mfa.service';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { ExternalHooks } from '@/ExternalHooks';
|
import { ExternalHooks } from '@/external-hooks';
|
||||||
import { UrlService } from '@/services/url.service';
|
import { UrlService } from '@/services/url.service';
|
||||||
import { InternalServerError } from '@/errors/response-errors/internal-server.error';
|
import { InternalServerError } from '@/errors/response-errors/internal-server.error';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import config from '@/config';
|
|||||||
import { NODES_BASE_DIR } from '@/constants';
|
import { NODES_BASE_DIR } from '@/constants';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
import { InternalServerError } from '@/errors/response-errors/internal-server.error';
|
import { InternalServerError } from '@/errors/response-errors/internal-server.error';
|
||||||
import { CredentialTypes } from '@/CredentialTypes';
|
import { CredentialTypes } from '@/credential-types';
|
||||||
|
|
||||||
export const CREDENTIAL_TRANSLATIONS_DIR = 'n8n-nodes-base/dist/credentials/translations';
|
export const CREDENTIAL_TRANSLATIONS_DIR = 'n8n-nodes-base/dist/credentials/translations';
|
||||||
export const NODE_HEADERS_PATH = join(NODES_BASE_DIR, 'dist/nodes/headers');
|
export const NODE_HEADERS_PATH = join(NODES_BASE_DIR, 'dist/nodes/headers');
|
||||||
|
|||||||
@@ -16,12 +16,12 @@ import { SharedWorkflowRepository } from '@db/repositories/sharedWorkflow.reposi
|
|||||||
import { UserRepository } from '@db/repositories/user.repository';
|
import { UserRepository } from '@db/repositories/user.repository';
|
||||||
import { UserService } from '@/services/user.service';
|
import { UserService } from '@/services/user.service';
|
||||||
import { listQueryMiddleware } from '@/middlewares';
|
import { listQueryMiddleware } from '@/middlewares';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { ForbiddenError } from '@/errors/response-errors/forbidden.error';
|
import { ForbiddenError } from '@/errors/response-errors/forbidden.error';
|
||||||
import { NotFoundError } from '@/errors/response-errors/not-found.error';
|
import { NotFoundError } from '@/errors/response-errors/not-found.error';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
import { ExternalHooks } from '@/ExternalHooks';
|
import { ExternalHooks } from '@/external-hooks';
|
||||||
import { validateEntity } from '@/GenericHelpers';
|
import { validateEntity } from '@/generic-helpers';
|
||||||
import { ProjectRepository } from '@/databases/repositories/project.repository';
|
import { ProjectRepository } from '@/databases/repositories/project.repository';
|
||||||
import { Project } from '@/databases/entities/Project';
|
import { Project } from '@/databases/entities/Project';
|
||||||
import { WorkflowService } from '@/workflows/workflow.service';
|
import { WorkflowService } from '@/workflows/workflow.service';
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { StatisticsNames } from '@db/entities/WorkflowStatistics';
|
|||||||
import { SharedWorkflowRepository } from '@db/repositories/sharedWorkflow.repository';
|
import { SharedWorkflowRepository } from '@db/repositories/sharedWorkflow.repository';
|
||||||
import { WorkflowStatisticsRepository } from '@db/repositories/workflowStatistics.repository';
|
import { WorkflowStatisticsRepository } from '@db/repositories/workflowStatistics.repository';
|
||||||
import type { IWorkflowStatisticsDataLoaded } from '@/Interfaces';
|
import type { IWorkflowStatisticsDataLoaded } from '@/Interfaces';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { NotFoundError } from '@/errors/response-errors/not-found.error';
|
import { NotFoundError } from '@/errors/response-errors/not-found.error';
|
||||||
import { StatisticsRequest } from './workflow-statistics.types';
|
import { StatisticsRequest } from './workflow-statistics.types';
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { Container } from 'typedi';
|
|||||||
import { InstanceSettings } from 'n8n-core';
|
import { InstanceSettings } from 'n8n-core';
|
||||||
import { sleep } from 'n8n-workflow';
|
import { sleep } from 'n8n-workflow';
|
||||||
import { inProduction } from '@/constants';
|
import { inProduction } from '@/constants';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
|
|
||||||
export const touchFile = async (filePath: string): Promise<void> => {
|
export const touchFile = async (filePath: string): Promise<void> => {
|
||||||
await mkdir(dirname(filePath), { recursive: true });
|
await mkdir(dirname(filePath), { recursive: true });
|
||||||
@@ -7,7 +7,7 @@ import {
|
|||||||
type LoadedClass,
|
type LoadedClass,
|
||||||
} from 'n8n-workflow';
|
} from 'n8n-workflow';
|
||||||
import { RESPONSE_ERROR_MESSAGES } from '@/constants';
|
import { RESPONSE_ERROR_MESSAGES } from '@/constants';
|
||||||
import { LoadNodesAndCredentials } from '@/LoadNodesAndCredentials';
|
import { LoadNodesAndCredentials } from '@/load-nodes-and-credentials';
|
||||||
|
|
||||||
@Service()
|
@Service()
|
||||||
export class CredentialTypes implements ICredentialTypes {
|
export class CredentialTypes implements ICredentialTypes {
|
||||||
@@ -30,8 +30,8 @@ import { ICredentialsHelper, NodeHelpers, Workflow, ApplicationError } from 'n8n
|
|||||||
import type { ICredentialsDb } from '@/Interfaces';
|
import type { ICredentialsDb } from '@/Interfaces';
|
||||||
|
|
||||||
import type { CredentialsEntity } from '@db/entities/CredentialsEntity';
|
import type { CredentialsEntity } from '@db/entities/CredentialsEntity';
|
||||||
import { CredentialTypes } from '@/CredentialTypes';
|
import { CredentialTypes } from '@/credential-types';
|
||||||
import { CredentialsOverwrites } from '@/CredentialsOverwrites';
|
import { CredentialsOverwrites } from '@/credentials-overwrites';
|
||||||
import { RESPONSE_ERROR_MESSAGES } from './constants';
|
import { RESPONSE_ERROR_MESSAGES } from './constants';
|
||||||
|
|
||||||
import { CredentialsRepository } from '@db/repositories/credentials.repository';
|
import { CredentialsRepository } from '@db/repositories/credentials.repository';
|
||||||
@@ -3,8 +3,8 @@ import { GlobalConfig } from '@n8n/config';
|
|||||||
import type { ICredentialDataDecryptedObject } from 'n8n-workflow';
|
import type { ICredentialDataDecryptedObject } from 'n8n-workflow';
|
||||||
import { deepCopy, jsonParse } from 'n8n-workflow';
|
import { deepCopy, jsonParse } from 'n8n-workflow';
|
||||||
import type { ICredentialsOverwrite } from '@/Interfaces';
|
import type { ICredentialsOverwrite } from '@/Interfaces';
|
||||||
import { CredentialTypes } from '@/CredentialTypes';
|
import { CredentialTypes } from '@/credential-types';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
|
|
||||||
@Service()
|
@Service()
|
||||||
export class CredentialsOverwrites {
|
export class CredentialsOverwrites {
|
||||||
@@ -2,7 +2,7 @@ import { CREDENTIAL_EMPTY_VALUE, type ICredentialType } from 'n8n-workflow';
|
|||||||
import { mock } from 'jest-mock-extended';
|
import { mock } from 'jest-mock-extended';
|
||||||
import { CREDENTIAL_BLANKING_VALUE } from '@/constants';
|
import { CREDENTIAL_BLANKING_VALUE } from '@/constants';
|
||||||
import type { CredentialsEntity } from '@db/entities/CredentialsEntity';
|
import type { CredentialsEntity } from '@db/entities/CredentialsEntity';
|
||||||
import type { CredentialTypes } from '@/CredentialTypes';
|
import type { CredentialTypes } from '@/credential-types';
|
||||||
import { CredentialsService } from '@/credentials/credentials.service';
|
import { CredentialsService } from '@/credentials/credentials.service';
|
||||||
|
|
||||||
describe('CredentialsService', () => {
|
describe('CredentialsService', () => {
|
||||||
|
|||||||
@@ -5,11 +5,11 @@ import { In } from '@n8n/typeorm';
|
|||||||
|
|
||||||
import { CredentialsService } from './credentials.service';
|
import { CredentialsService } from './credentials.service';
|
||||||
import { CredentialRequest } from '@/requests';
|
import { CredentialRequest } from '@/requests';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { NotFoundError } from '@/errors/response-errors/not-found.error';
|
import { NotFoundError } from '@/errors/response-errors/not-found.error';
|
||||||
import { ForbiddenError } from '@/errors/response-errors/forbidden.error';
|
import { ForbiddenError } from '@/errors/response-errors/forbidden.error';
|
||||||
import { NamingService } from '@/services/naming.service';
|
import { NamingService } from '@/services/naming.service';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import { EnterpriseCredentialsService } from './credentials.service.ee';
|
import { EnterpriseCredentialsService } from './credentials.service.ee';
|
||||||
import {
|
import {
|
||||||
Delete,
|
Delete,
|
||||||
@@ -22,7 +22,7 @@ import {
|
|||||||
ProjectScope,
|
ProjectScope,
|
||||||
} from '@/decorators';
|
} from '@/decorators';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
import { UserManagementMailer } from '@/UserManagement/email';
|
import { UserManagementMailer } from '@/user-management/email';
|
||||||
import * as Db from '@/Db';
|
import * as Db from '@/Db';
|
||||||
import * as utils from '@/utils';
|
import * as utils from '@/utils';
|
||||||
import { listQueryMiddleware } from '@/middlewares';
|
import { listQueryMiddleware } from '@/middlewares';
|
||||||
|
|||||||
@@ -16,17 +16,17 @@ import {
|
|||||||
import type { Scope } from '@n8n/permissions';
|
import type { Scope } from '@n8n/permissions';
|
||||||
import * as Db from '@/Db';
|
import * as Db from '@/Db';
|
||||||
import type { ICredentialsDb } from '@/Interfaces';
|
import type { ICredentialsDb } from '@/Interfaces';
|
||||||
import { createCredentialsFromCredentialsEntity } from '@/CredentialsHelper';
|
import { createCredentialsFromCredentialsEntity } from '@/credentials-helper';
|
||||||
import { CREDENTIAL_BLANKING_VALUE } from '@/constants';
|
import { CREDENTIAL_BLANKING_VALUE } from '@/constants';
|
||||||
import { CredentialsEntity } from '@db/entities/CredentialsEntity';
|
import { CredentialsEntity } from '@db/entities/CredentialsEntity';
|
||||||
import { SharedCredentials } from '@db/entities/SharedCredentials';
|
import { SharedCredentials } from '@db/entities/SharedCredentials';
|
||||||
import { validateEntity } from '@/GenericHelpers';
|
import { validateEntity } from '@/generic-helpers';
|
||||||
import { ExternalHooks } from '@/ExternalHooks';
|
import { ExternalHooks } from '@/external-hooks';
|
||||||
import type { User } from '@db/entities/User';
|
import type { User } from '@db/entities/User';
|
||||||
import type { CredentialRequest, ListQuery } from '@/requests';
|
import type { CredentialRequest, ListQuery } from '@/requests';
|
||||||
import { CredentialTypes } from '@/CredentialTypes';
|
import { CredentialTypes } from '@/credential-types';
|
||||||
import { OwnershipService } from '@/services/ownership.service';
|
import { OwnershipService } from '@/services/ownership.service';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { CredentialsRepository } from '@db/repositories/credentials.repository';
|
import { CredentialsRepository } from '@db/repositories/credentials.repository';
|
||||||
import { SharedCredentialsRepository } from '@db/repositories/sharedCredentials.repository';
|
import { SharedCredentialsRepository } from '@db/repositories/sharedCredentials.repository';
|
||||||
import { Service } from 'typedi';
|
import { Service } from 'typedi';
|
||||||
@@ -38,7 +38,7 @@ import { NotFoundError } from '@/errors/response-errors/not-found.error';
|
|||||||
import type { ProjectRelation } from '@/databases/entities/ProjectRelation';
|
import type { ProjectRelation } from '@/databases/entities/ProjectRelation';
|
||||||
import { RoleService } from '@/services/role.service';
|
import { RoleService } from '@/services/role.service';
|
||||||
import { UserRepository } from '@/databases/repositories/user.repository';
|
import { UserRepository } from '@/databases/repositories/user.repository';
|
||||||
import { userHasScope } from '@/permissions/checkAccess';
|
import { userHasScope } from '@/permissions/check-access';
|
||||||
|
|
||||||
export type CredentialsGetSharedOptions =
|
export type CredentialsGetSharedOptions =
|
||||||
| { allowGlobalScope: true; globalScope: Scope }
|
| { allowGlobalScope: true; globalScope: Scope }
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import type { MigrationContext, ReversibleMigration } from '@db/types';
|
import type { MigrationContext, ReversibleMigration } from '@db/types';
|
||||||
import { LDAP_DEFAULT_CONFIGURATION, LDAP_FEATURE_NAME } from '@/Ldap/constants';
|
import { LDAP_DEFAULT_CONFIGURATION, LDAP_FEATURE_NAME } from '@/ldap/constants';
|
||||||
|
|
||||||
export class CreateLdapEntities1674509946020 implements ReversibleMigration {
|
export class CreateLdapEntities1674509946020 implements ReversibleMigration {
|
||||||
async up({ escape, dbType, isMysql, runQuery }: MigrationContext) {
|
async up({ escape, dbType, isMysql, runQuery }: MigrationContext) {
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ import type { ExecutionData } from '../entities/ExecutionData';
|
|||||||
import { ExecutionEntity } from '../entities/ExecutionEntity';
|
import { ExecutionEntity } from '../entities/ExecutionEntity';
|
||||||
import { ExecutionMetadata } from '../entities/ExecutionMetadata';
|
import { ExecutionMetadata } from '../entities/ExecutionMetadata';
|
||||||
import { ExecutionDataRepository } from './executionData.repository';
|
import { ExecutionDataRepository } from './executionData.repository';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import type { ExecutionSummaries } from '@/executions/execution.types';
|
import type { ExecutionSummaries } from '@/executions/execution.types';
|
||||||
import { PostgresLiveRowsRetrievalError } from '@/errors/postgres-live-rows-retrieval.error';
|
import { PostgresLiveRowsRetrievalError } from '@/errors/postgres-live-rows-retrieval.error';
|
||||||
import { separate } from '@/utils';
|
import { separate } from '@/utils';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { EXTERNAL_SECRETS_DB_KEY } from '@/ExternalSecrets/constants';
|
import { EXTERNAL_SECRETS_DB_KEY } from '@/external-secrets/constants';
|
||||||
import { Service } from 'typedi';
|
import { Service } from 'typedi';
|
||||||
import { DataSource, Repository } from '@n8n/typeorm';
|
import { DataSource, Repository } from '@n8n/typeorm';
|
||||||
import { ErrorReporterProxy as ErrorReporter } from 'n8n-workflow';
|
import { ErrorReporterProxy as ErrorReporter } from 'n8n-workflow';
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { Container } from 'typedi';
|
|||||||
import type { EntitySubscriberInterface, UpdateEvent } from '@n8n/typeorm';
|
import type { EntitySubscriberInterface, UpdateEvent } from '@n8n/typeorm';
|
||||||
import { EventSubscriber } from '@n8n/typeorm';
|
import { EventSubscriber } from '@n8n/typeorm';
|
||||||
import { ApplicationError, ErrorReporterProxy } from 'n8n-workflow';
|
import { ApplicationError, ErrorReporterProxy } from 'n8n-workflow';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
|
|
||||||
import { Project } from '../entities/Project';
|
import { Project } from '../entities/Project';
|
||||||
import { User } from '../entities/User';
|
import { User } from '../entities/User';
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import type { INodeTypes } from 'n8n-workflow';
|
import type { INodeTypes } from 'n8n-workflow';
|
||||||
import type { QueryRunner, ObjectLiteral } from '@n8n/typeorm';
|
import type { QueryRunner, ObjectLiteral } from '@n8n/typeorm';
|
||||||
import type { Logger } from '@/Logger';
|
import type { Logger } from '@/logger';
|
||||||
import type { createSchemaBuilder } from './dsl';
|
import type { createSchemaBuilder } from './dsl';
|
||||||
|
|
||||||
export type DatabaseType = 'mariadb' | 'postgresdb' | 'mysqldb' | 'sqlite';
|
export type DatabaseType = 'mariadb' | 'postgresdb' | 'mysqldb' | 'sqlite';
|
||||||
|
|||||||
@@ -9,8 +9,8 @@ import { ApplicationError, jsonParse } from 'n8n-workflow';
|
|||||||
import { inTest } from '@/constants';
|
import { inTest } from '@/constants';
|
||||||
import type { BaseMigration, Migration, MigrationContext, MigrationFn } from '@db/types';
|
import type { BaseMigration, Migration, MigrationContext, MigrationFn } from '@db/types';
|
||||||
import { createSchemaBuilder } from '@db/dsl';
|
import { createSchemaBuilder } from '@db/dsl';
|
||||||
import { NodeTypes } from '@/NodeTypes';
|
import { NodeTypes } from '@/node-types';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
|
|
||||||
const PERSONALIZATION_SURVEY_FILENAME = 'personalizationSurvey.json';
|
const PERSONALIZATION_SURVEY_FILENAME = 'personalizationSurvey.json';
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ import { mock } from 'jest-mock-extended';
|
|||||||
|
|
||||||
import { ControllerRegistry, Get, Licensed, RestController } from '@/decorators';
|
import { ControllerRegistry, Get, Licensed, RestController } from '@/decorators';
|
||||||
import type { AuthService } from '@/auth/auth.service';
|
import type { AuthService } from '@/auth/auth.service';
|
||||||
import type { License } from '@/License';
|
import type { License } from '@/license';
|
||||||
import type { SuperAgentTest } from '@test-integration/types';
|
import type { SuperAgentTest } from '@test-integration/types';
|
||||||
import type { GlobalConfig } from '@n8n/config';
|
import type { GlobalConfig } from '@n8n/config';
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import Container, { Service } from 'typedi';
|
import Container, { Service } from 'typedi';
|
||||||
import { OnShutdown } from '@/decorators/OnShutdown';
|
import { OnShutdown } from '@/decorators/on-shutdown';
|
||||||
import { ShutdownService } from '@/shutdown/Shutdown.service';
|
import { ShutdownService } from '@/shutdown/shutdown.service';
|
||||||
import { mock } from 'jest-mock-extended';
|
import { mock } from 'jest-mock-extended';
|
||||||
|
|
||||||
describe('OnShutdown', () => {
|
describe('OnShutdown', () => {
|
||||||
@@ -7,10 +7,10 @@ import { AuthService } from '@/auth/auth.service';
|
|||||||
import { UnauthenticatedError } from '@/errors/response-errors/unauthenticated.error';
|
import { UnauthenticatedError } from '@/errors/response-errors/unauthenticated.error';
|
||||||
import { inProduction, RESPONSE_ERROR_MESSAGES } from '@/constants';
|
import { inProduction, RESPONSE_ERROR_MESSAGES } from '@/constants';
|
||||||
import type { BooleanLicenseFeature } from '@/Interfaces';
|
import type { BooleanLicenseFeature } from '@/Interfaces';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import type { AuthenticatedRequest } from '@/requests';
|
import type { AuthenticatedRequest } from '@/requests';
|
||||||
import { send } from '@/ResponseHelper'; // TODO: move `ResponseHelper.send` to this file
|
import { send } from '@/response-helper'; // TODO: move `ResponseHelper.send` to this file
|
||||||
import { userHasScope } from '@/permissions/checkAccess';
|
import { userHasScope } from '@/permissions/check-access';
|
||||||
import { GlobalConfig } from '@n8n/config';
|
import { GlobalConfig } from '@n8n/config';
|
||||||
import type {
|
import type {
|
||||||
AccessScope,
|
AccessScope,
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
export { RestController } from './RestController';
|
export { RestController } from './rest-controller';
|
||||||
export { Get, Post, Put, Patch, Delete } from './Route';
|
export { Get, Post, Put, Patch, Delete } from './route';
|
||||||
export { Middleware } from './Middleware';
|
export { Middleware } from './middleware';
|
||||||
export { ControllerRegistry } from './controller.registry';
|
export { ControllerRegistry } from './controller.registry';
|
||||||
export { Licensed } from './Licensed';
|
export { Licensed } from './licensed';
|
||||||
export { GlobalScope, ProjectScope } from './Scoped';
|
export { GlobalScope, ProjectScope } from './scoped';
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { Container } from 'typedi';
|
import { Container } from 'typedi';
|
||||||
import { ApplicationError } from 'n8n-workflow';
|
import { ApplicationError } from 'n8n-workflow';
|
||||||
import { type ServiceClass, ShutdownService } from '@/shutdown/Shutdown.service';
|
import { type ServiceClass, ShutdownService } from '@/shutdown/shutdown.service';
|
||||||
import { DEFAULT_SHUTDOWN_PRIORITY } from '@/constants';
|
import { DEFAULT_SHUTDOWN_PRIORITY } from '@/constants';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -7,7 +7,7 @@ import {
|
|||||||
getTrackingInformationFromPullResult,
|
getTrackingInformationFromPullResult,
|
||||||
sourceControlFoldersExistCheck,
|
sourceControlFoldersExistCheck,
|
||||||
} from '@/environments/sourceControl/sourceControlHelper.ee';
|
} from '@/environments/sourceControl/sourceControlHelper.ee';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import { SourceControlPreferencesService } from '@/environments/sourceControl/sourceControlPreferences.service.ee';
|
import { SourceControlPreferencesService } from '@/environments/sourceControl/sourceControlPreferences.service.ee';
|
||||||
import { InstanceSettings } from 'n8n-core';
|
import { InstanceSettings } from 'n8n-core';
|
||||||
import path from 'path';
|
import path from 'path';
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ import type { SourceControlWorkflowVersionId } from './types/sourceControlWorkfl
|
|||||||
import type { ExportableCredential } from './types/exportableCredential';
|
import type { ExportableCredential } from './types/exportableCredential';
|
||||||
import { EventService } from '@/events/event.service';
|
import { EventService } from '@/events/event.service';
|
||||||
import { TagRepository } from '@db/repositories/tag.repository';
|
import { TagRepository } from '@db/repositories/tag.repository';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
import { BadRequestError } from '@/errors/response-errors/bad-request.error';
|
||||||
import { ApplicationError } from 'n8n-workflow';
|
import { ApplicationError } from 'n8n-workflow';
|
||||||
|
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ import type { SourceControlledFile } from './types/sourceControlledFile';
|
|||||||
import { VariablesService } from '../variables/variables.service.ee';
|
import { VariablesService } from '../variables/variables.service.ee';
|
||||||
import { TagRepository } from '@db/repositories/tag.repository';
|
import { TagRepository } from '@db/repositories/tag.repository';
|
||||||
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
import { WorkflowRepository } from '@db/repositories/workflow.repository';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { SharedCredentialsRepository } from '@db/repositories/sharedCredentials.repository';
|
import { SharedCredentialsRepository } from '@db/repositories/sharedCredentials.repository';
|
||||||
import { SharedWorkflowRepository } from '@db/repositories/sharedWorkflow.repository';
|
import { SharedWorkflowRepository } from '@db/repositories/sharedWorkflow.repository';
|
||||||
import { WorkflowTagMappingRepository } from '@db/repositories/workflowTagMapping.repository';
|
import { WorkflowTagMappingRepository } from '@db/repositories/workflowTagMapping.repository';
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import {
|
|||||||
} from './constants';
|
} from './constants';
|
||||||
import { sourceControlFoldersExistCheck } from './sourceControlHelper.ee';
|
import { sourceControlFoldersExistCheck } from './sourceControlHelper.ee';
|
||||||
import type { User } from '@db/entities/User';
|
import type { User } from '@db/entities/User';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
import { ApplicationError } from 'n8n-workflow';
|
import { ApplicationError } from 'n8n-workflow';
|
||||||
import { OwnershipService } from '@/services/ownership.service';
|
import { OwnershipService } from '@/services/ownership.service';
|
||||||
import { SourceControlPreferencesService } from './sourceControlPreferences.service.ee';
|
import { SourceControlPreferencesService } from './sourceControlPreferences.service.ee';
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { Container } from 'typedi';
|
import { Container } from 'typedi';
|
||||||
import { License } from '@/License';
|
import { License } from '@/license';
|
||||||
import { generateKeyPairSync } from 'crypto';
|
import { generateKeyPairSync } from 'crypto';
|
||||||
import type { KeyPair } from './types/keyPair';
|
import type { KeyPair } from './types/keyPair';
|
||||||
import { constants as fsConstants, mkdirSync, accessSync } from 'fs';
|
import { constants as fsConstants, mkdirSync, accessSync } from 'fs';
|
||||||
@@ -11,7 +11,7 @@ import {
|
|||||||
import type { SourceControlledFile } from './types/sourceControlledFile';
|
import type { SourceControlledFile } from './types/sourceControlledFile';
|
||||||
import path from 'path';
|
import path from 'path';
|
||||||
import type { KeyPairType } from './types/keyPairType';
|
import type { KeyPairType } from './types/keyPairType';
|
||||||
import { Logger } from '@/Logger';
|
import { Logger } from '@/logger';
|
||||||
|
|
||||||
export function stringContainsExpression(testString: string): boolean {
|
export function stringContainsExpression(testString: string): boolean {
|
||||||
return /^=.*\{\{.*\}\}/.test(testString);
|
return /^=.*\{\{.*\}\}/.test(testString);
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user