refactor: Impose import/order linting rule across nodes packages (no-changelog) (#12314)

This commit is contained in:
कारतोफ्फेलस्क्रिप्ट™ 2024-12-19 18:46:14 +01:00 committed by GitHub
parent 8c635993bd
commit bafac73eb5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
1120 changed files with 2677 additions and 2827 deletions

View file

@ -15,7 +15,6 @@ module.exports = {
eqeqeq: 'warn',
'id-denylist': 'warn',
'import/extensions': 'warn',
'import/order': 'warn',
'prefer-spread': 'warn',
'@typescript-eslint/naming-convention': ['error', { selector: 'memberLike', format: null }],

View file

@ -10,6 +10,7 @@ import {
import { logWrapper } from '@utils/logWrapper';
import { N8nBinaryLoader } from '@utils/N8nBinaryLoader';
import { N8nJsonLoader } from '@utils/N8nJsonLoader';
import { metadataFilterField } from '@utils/sharedFields';
// Dependencies needed underneath the hood for the loaders. We add them
@ -18,7 +19,6 @@ import { metadataFilterField } from '@utils/sharedFields';
import 'mammoth'; // for docx
import 'epub2'; // for epub
import 'pdf-parse'; // for pdf
import { N8nJsonLoader } from '@utils/N8nJsonLoader';
export class DocumentDefaultDataLoader implements INodeType {
description: INodeTypeDescription = {

View file

@ -10,8 +10,8 @@
"build": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && pnpm n8n-copy-icons && pnpm n8n-generate-metadata",
"format": "biome format --write .",
"format:check": "biome ci .",
"lint": "eslint nodes credentials --quiet",
"lintfix": "eslint nodes credentials --fix",
"lint": "eslint nodes credentials utils --quiet",
"lintfix": "eslint nodes credentials utils --fix",
"watch": "tsc-watch -p tsconfig.build.json --onCompilationComplete \"tsc-alias -p tsconfig.build.json\" --onSuccess \"pnpm n8n-generate-metadata\"",
"test": "jest",
"test:dev": "jest --watch"

View file

@ -1,5 +1,12 @@
import { pipeline } from 'stream/promises';
import { CSVLoader } from '@langchain/community/document_loaders/fs/csv';
import { DocxLoader } from '@langchain/community/document_loaders/fs/docx';
import { EPubLoader } from '@langchain/community/document_loaders/fs/epub';
import { PDFLoader } from '@langchain/community/document_loaders/fs/pdf';
import type { Document } from '@langchain/core/documents';
import type { TextSplitter } from '@langchain/textsplitters';
import { createWriteStream } from 'fs';
import { JSONLoader } from 'langchain/document_loaders/fs/json';
import { TextLoader } from 'langchain/document_loaders/fs/text';
import type {
IBinaryData,
IExecuteFunctions,
@ -7,15 +14,7 @@ import type {
ISupplyDataFunctions,
} from 'n8n-workflow';
import { NodeOperationError, BINARY_ENCODING } from 'n8n-workflow';
import type { TextSplitter } from '@langchain/textsplitters';
import type { Document } from '@langchain/core/documents';
import { CSVLoader } from '@langchain/community/document_loaders/fs/csv';
import { DocxLoader } from '@langchain/community/document_loaders/fs/docx';
import { JSONLoader } from 'langchain/document_loaders/fs/json';
import { PDFLoader } from '@langchain/community/document_loaders/fs/pdf';
import { TextLoader } from 'langchain/document_loaders/fs/text';
import { EPubLoader } from '@langchain/community/document_loaders/fs/epub';
import { pipeline } from 'stream/promises';
import { file as tmpFile, type DirectoryResult } from 'tmp-promise';
import { getMetadataFiltersValues } from './helpers';

View file

@ -1,3 +1,7 @@
import type { Document } from '@langchain/core/documents';
import type { TextSplitter } from '@langchain/textsplitters';
import { JSONLoader } from 'langchain/document_loaders/fs/json';
import { TextLoader } from 'langchain/document_loaders/fs/text';
import {
type IExecuteFunctions,
type INodeExecutionData,
@ -5,10 +9,6 @@ import {
NodeOperationError,
} from 'n8n-workflow';
import type { TextSplitter } from '@langchain/textsplitters';
import type { Document } from '@langchain/core/documents';
import { JSONLoader } from 'langchain/document_loaders/fs/json';
import { TextLoader } from 'langchain/document_loaders/fs/text';
import { getMetadataFiltersValues } from './helpers';
export class N8nJsonLoader {

View file

@ -1,8 +1,9 @@
import { N8nTool } from './N8nTool';
import { createMockExecuteFunction } from 'n8n-nodes-base/test/nodes/Helpers';
import { z } from 'zod';
import type { INode } from 'n8n-workflow';
import { DynamicStructuredTool, DynamicTool } from '@langchain/core/tools';
import { createMockExecuteFunction } from 'n8n-nodes-base/test/nodes/Helpers';
import type { INode } from 'n8n-workflow';
import { z } from 'zod';
import { N8nTool } from './N8nTool';
const mockNode: INode = {
id: '1',

View file

@ -1,8 +1,8 @@
import type { DynamicStructuredToolInput } from '@langchain/core/tools';
import { DynamicStructuredTool, DynamicTool } from '@langchain/core/tools';
import { StructuredOutputParser } from 'langchain/output_parsers';
import type { ISupplyDataFunctions, IDataObject } from 'n8n-workflow';
import { NodeConnectionType, jsonParse, NodeOperationError } from 'n8n-workflow';
import { StructuredOutputParser } from 'langchain/output_parsers';
import type { ZodTypeAny } from 'zod';
import { ZodBoolean, ZodNullable, ZodNumber, ZodObject, ZodOptional } from 'zod';

View file

@ -10,7 +10,6 @@ module.exports = {
'templates/**', // TODO: remove this
],
rules: {
'import/order': 'off', // TODO: remove this
'@typescript-eslint/ban-ts-comment': ['warn', { 'ts-ignore': true }],
'n8n-local-rules/no-plain-errors': 'off',
},

View file

@ -1,6 +1,6 @@
import { Container } from 'typedi';
import { Command, Flags } from '@oclif/core';
import { InstanceSettings } from 'n8n-core';
import { Container } from 'typedi';
import type { IBuildOptions } from '../src';
import { buildFiles } from '../src';

View file

@ -1,14 +1,14 @@
/* eslint-disable @typescript-eslint/no-unsafe-argument */
/* eslint-disable @typescript-eslint/no-unsafe-member-access */
import glob from 'fast-glob';
import { spawn } from 'child_process';
import glob from 'fast-glob';
import { copyFile, mkdir, readFile, writeFile } from 'fs/promises';
import { join, dirname, resolve as resolvePath } from 'path';
import { Container } from 'typedi';
import { file as tmpFile } from 'tmp-promise';
import { jsonParse } from 'n8n-workflow';
import { InstanceSettings } from 'n8n-core';
import { jsonParse } from 'n8n-workflow';
import { join, dirname, resolve as resolvePath } from 'path';
import { file as tmpFile } from 'tmp-promise';
import { Container } from 'typedi';
import type { IBuildOptions } from './Interfaces';
/**

View file

@ -15,7 +15,6 @@ module.exports = {
eqeqeq: 'warn',
'id-denylist': 'warn',
'import/extensions': 'warn',
'import/order': 'warn',
'prefer-spread': 'warn',
'import/no-extraneous-dependencies': 'warn',

View file

@ -1,6 +1,5 @@
import type { Request } from 'aws4';
import { sign } from 'aws4';
import type {
ICredentialDataDecryptedObject,
ICredentialTestRequest,

View file

@ -1,3 +1,4 @@
import axios from 'axios';
import type {
ICredentialDataDecryptedObject,
ICredentialTestRequest,
@ -6,8 +7,6 @@ import type {
INodeProperties,
} from 'n8n-workflow';
import axios from 'axios';
export class CiscoSecureEndpointApi implements ICredentialType {
name = 'ciscoSecureEndpointApi';

View file

@ -1,3 +1,4 @@
import jwt from 'jsonwebtoken';
import type {
ICredentialDataDecryptedObject,
ICredentialTestRequest,
@ -6,7 +7,6 @@ import type {
INodeProperties,
} from 'n8n-workflow';
import jwt from 'jsonwebtoken';
export class GhostAdminApi implements ICredentialType {
name = 'ghostAdminApi';

View file

@ -1,3 +1,7 @@
import type { AxiosRequestConfig } from 'axios';
import axios from 'axios';
import jwt from 'jsonwebtoken';
import moment from 'moment-timezone';
import type {
ICredentialDataDecryptedObject,
ICredentialType,
@ -6,14 +10,6 @@ import type {
Icon,
} from 'n8n-workflow';
import moment from 'moment-timezone';
import jwt from 'jsonwebtoken';
import type { AxiosRequestConfig } from 'axios';
import axios from 'axios';
export class GoogleApi implements ICredentialType {
name = 'googleApi';

View file

@ -1,4 +1,5 @@
import type { ICredentialType, INodeProperties } from 'n8n-workflow';
import { sshTunnelProperties } from '@utils/sshTunnel.properties';
export class MySql implements ICredentialType {

View file

@ -1,4 +1,5 @@
import type { ICredentialType, INodeProperties } from 'n8n-workflow';
import { sshTunnelProperties } from '@utils/sshTunnel.properties';
export class Postgres implements ICredentialType {

View file

@ -1,6 +1,5 @@
import type { ICredentialType, INodeProperties, INodePropertyOptions } from 'n8n-workflow';
import moment from 'moment-timezone';
import type { ICredentialType, INodeProperties, INodePropertyOptions } from 'n8n-workflow';
// Get options for timezones
const timezones: INodePropertyOptions[] = moment.tz

View file

@ -1,5 +1,6 @@
import { sign, type Request } from 'aws4';
import type { IHttpRequestOptions } from 'n8n-workflow';
import { Aws, type AwsCredentialsType } from '../Aws.credentials';
jest.mock('aws4', () => ({

View file

@ -7,17 +7,6 @@ import type {
} from 'n8n-workflow';
import { NodeConnectionType, NodeOperationError } from 'n8n-workflow';
import {
actionNetworkApiRequest,
adjustEventPayload,
adjustPersonPayload,
adjustPetitionPayload,
handleListing,
makeOsdiLink,
resourceLoaders,
simplifyResponse,
} from './GenericFunctions';
import {
attendanceFields,
attendanceOperations,
@ -34,7 +23,16 @@ import {
tagFields,
tagOperations,
} from './descriptions';
import {
actionNetworkApiRequest,
adjustEventPayload,
adjustPersonPayload,
adjustPetitionPayload,
handleListing,
makeOsdiLink,
resourceLoaders,
simplifyResponse,
} from './GenericFunctions';
import type {
AllFieldsUi,
EmailAddressUi,

View file

@ -1,3 +1,5 @@
import flow from 'lodash/flow';
import omit from 'lodash/omit';
import type {
IDataObject,
IExecuteFunctions,
@ -6,9 +8,6 @@ import type {
IRequestOptions,
} from 'n8n-workflow';
import flow from 'lodash/flow';
import omit from 'lodash/omit';
import type {
AllFieldsUi,
FieldWithPrimaryField,

View file

@ -10,35 +10,23 @@ import type {
} from 'n8n-workflow';
import { NodeConnectionType, NodeOperationError } from 'n8n-workflow';
import type { IProduct } from './GenericFunctions';
import { activeCampaignApiRequest, activeCampaignApiRequestAllItems } from './GenericFunctions';
import { accountContactFields, accountContactOperations } from './AccountContactDescription';
import { accountFields, accountOperations } from './AccountDescription';
import { connectionFields, connectionOperations } from './ConnectionDescription';
import { contactFields, contactOperations } from './ContactDescription';
import { contactListFields, contactListOperations } from './ContactListDescription';
import { contactTagFields, contactTagOperations } from './ContactTagDescription';
import { dealFields, dealOperations } from './DealDescription';
import { ecomOrderFields, ecomOrderOperations } from './EcomOrderDescription';
import { ecomCustomerFields, ecomCustomerOperations } from './EcomCustomerDescription';
import { ecomOrderFields, ecomOrderOperations } from './EcomOrderDescription';
import {
ecomOrderProductsFields,
ecomOrderProductsOperations,
} from './EcomOrderProductsDescription';
import { connectionFields, connectionOperations } from './ConnectionDescription';
import { accountFields, accountOperations } from './AccountDescription';
import { tagFields, tagOperations } from './TagDescription';
import { accountContactFields, accountContactOperations } from './AccountContactDescription';
import { contactListFields, contactListOperations } from './ContactListDescription';
import { contactTagFields, contactTagOperations } from './ContactTagDescription';
import { activeCampaignApiRequest, activeCampaignApiRequestAllItems } from './GenericFunctions';
import type { IProduct } from './GenericFunctions';
import { listFields, listOperations } from './ListDescription';
import { tagFields, tagOperations } from './TagDescription';
interface CustomProperty {
name: string;

View file

@ -1,7 +1,6 @@
import type { INodeProperties } from 'n8n-workflow';
import { allCurrencies } from './currencies';
import { activeCampaignDefaultGetAllProperties } from './GenericFunctions';
export const dealOperations: INodeProperties[] = [

View file

@ -1,7 +1,6 @@
import type { INodeProperties } from 'n8n-workflow';
import { allCurrencies } from './currencies';
import { activeCampaignDefaultGetAllProperties } from './GenericFunctions';
export const ecomOrderOperations: INodeProperties[] = [

View file

@ -6,6 +6,7 @@ import {
type INodeType,
type INodeTypeDescription,
} from 'n8n-workflow';
import { collectionFields } from './CollectionDescription';
import type { FieldsUiValues } from './types';

View file

@ -10,17 +10,11 @@ import type {
import { NodeConnectionType } from 'n8n-workflow';
import { affinityApiRequest, affinityApiRequestAllItems } from './GenericFunctions';
import { organizationFields, organizationOperations } from './OrganizationDescription';
import { personFields, personOperations } from './PersonDescription';
import { listFields, listOperations } from './ListDescription';
import { listEntryFields, listEntryOperations } from './ListEntryDescription';
import { organizationFields, organizationOperations } from './OrganizationDescription';
import type { IOrganization } from './OrganizationInterface';
import { personFields, personOperations } from './PersonDescription';
import type { IPerson } from './PersonInterface';
export class Affinity implements INodeType {

View file

@ -7,14 +7,12 @@ import type {
} from 'n8n-workflow';
import { NodeConnectionType, jsonParse, NodeOperationError } from 'n8n-workflow';
import { contactFields, contactOperations } from './ContactDescription';
import { companyFields, companyOperations } from './CompanyDescription';
import { dealFields, dealOperations } from './DealDescription';
import { contactFields, contactOperations } from './ContactDescription';
import type { IContact, IContactUpdate } from './ContactInterface';
import { dealFields, dealOperations } from './DealDescription';
import type { IDeal } from './DealInterface';
import type { IFilter, ISearchConditions } from './FilterInterface';
import {
agileCrmApiRequest,
agileCrmApiRequestAllItems,
@ -24,10 +22,6 @@ import {
validateJSON,
} from './GenericFunctions';
import type { IDeal } from './DealInterface';
import type { IFilter, ISearchConditions } from './FilterInterface';
export class AgileCrm implements INodeType {
description: INodeTypeDescription = {
displayName: 'Agile CRM',

View file

@ -10,7 +10,6 @@ import type {
import { NodeApiError } from 'n8n-workflow';
import type { IContactUpdate } from './ContactInterface';
import type { IFilterRules, ISearchConditions } from './FilterInterface';
export async function agileCrmApiRequest(

View file

@ -1,3 +1,4 @@
import set from 'lodash/set';
import {
NodeOperationError,
NodeConnectionType,
@ -9,8 +10,6 @@ import {
AI_TRANSFORM_JS_CODE,
} from 'n8n-workflow';
import set from 'lodash/set';
import { JavaScriptSandbox } from '../Code/JavaScriptSandbox';
import { getSandboxContext } from '../Code/Sandbox';
import { standardizeOutput } from '../Code/utils';

View file

@ -1,3 +1,4 @@
import moment from 'moment-timezone';
import type {
IPollFunctions,
IDataObject,
@ -7,7 +8,6 @@ import type {
} from 'n8n-workflow';
import { NodeConnectionType, NodeOperationError } from 'n8n-workflow';
import moment from 'moment-timezone';
import type { IRecord } from './v1/GenericFunctions';
import { apiRequestAllItems, downloadRecordAttachments } from './v1/GenericFunctions';

View file

@ -1,7 +1,6 @@
import nock from 'nock';
import * as getMany from '../../../../v2/actions/base/getMany.operation';
import * as transport from '../../../../v2/transport';
import { createMockExecuteFunction } from '../helpers';

View file

@ -1,7 +1,6 @@
import nock from 'nock';
import * as getSchema from '../../../../v2/actions/base/getSchema.operation';
import * as transport from '../../../../v2/transport';
import { createMockExecuteFunction } from '../helpers';

View file

@ -1,7 +1,6 @@
import type { IDataObject, IExecuteFunctions, IGetNodeParameterOptions, INode } from 'n8n-workflow';
import { get } from 'lodash';
import { constructExecutionMetaData } from 'n8n-core';
import type { IDataObject, IExecuteFunctions, IGetNodeParameterOptions, INode } from 'n8n-workflow';
export const node: INode = {
id: '11',

View file

@ -1,7 +1,6 @@
import nock from 'nock';
import * as create from '../../../../v2/actions/record/create.operation';
import * as transport from '../../../../v2/transport';
import { createMockExecuteFunction } from '../helpers';

View file

@ -1,7 +1,6 @@
import nock from 'nock';
import * as deleteRecord from '../../../../v2/actions/record/deleteRecord.operation';
import * as transport from '../../../../v2/transport';
import { createMockExecuteFunction } from '../helpers';

View file

@ -1,7 +1,6 @@
import nock from 'nock';
import * as get from '../../../../v2/actions/record/get.operation';
import * as transport from '../../../../v2/transport';
import { createMockExecuteFunction } from '../helpers';

View file

@ -1,7 +1,6 @@
import nock from 'nock';
import * as search from '../../../../v2/actions/record/search.operation';
import * as transport from '../../../../v2/transport';
import { createMockExecuteFunction } from '../helpers';

View file

@ -1,7 +1,6 @@
import nock from 'nock';
import * as update from '../../../../v2/actions/record/update.operation';
import * as transport from '../../../../v2/transport';
import { createMockExecuteFunction } from '../helpers';

View file

@ -9,10 +9,10 @@ import type {
} from 'n8n-workflow';
import { NodeConnectionType, NodeOperationError } from 'n8n-workflow';
import { oldVersionNotice } from '../../../utils/descriptions';
import { generatePairedItemData } from '../../../utils/utilities';
import type { IRecord } from './GenericFunctions';
import { apiRequest, apiRequestAllItems, downloadRecordAttachments } from './GenericFunctions';
import { oldVersionNotice } from '../../../utils/descriptions';
import { generatePairedItemData } from '../../../utils/utilities';
const versionDescription: INodeTypeDescription = {
displayName: 'Airtable',

View file

@ -5,8 +5,8 @@ import type {
INodeTypeBaseDescription,
} from 'n8n-workflow';
import { versionDescription } from './actions/versionDescription';
import { router } from './actions/router';
import { versionDescription } from './actions/versionDescription';
import { listSearch, loadOptions, resourceMapping } from './methods';
export class AirtableV2 implements INodeType {

View file

@ -4,6 +4,7 @@ import type {
INodeProperties,
IExecuteFunctions,
} from 'n8n-workflow';
import {
generatePairedItemData,
updateDisplayOptions,

View file

@ -5,10 +5,11 @@ import type {
IExecuteFunctions,
NodeApiError,
} from 'n8n-workflow';
import { updateDisplayOptions, wrapData } from '../../../../../utils/utilities';
import { processAirtableError } from '../../helpers/utils';
import { apiRequest } from '../../transport';
import { baseRLC } from '../common.descriptions';
import { processAirtableError } from '../../helpers/utils';
const properties: INodeProperties[] = [
{

View file

@ -1,5 +1,4 @@
import type { INodeProperties } from 'n8n-workflow';
import { baseRLC, tableRLC } from '../common.descriptions';
import * as create from './create.operation';
import * as deleteRecord from './deleteRecord.operation';
@ -7,6 +6,7 @@ import * as get from './get.operation';
import * as search from './search.operation';
import * as update from './update.operation';
import * as upsert from './upsert.operation';
import { baseRLC, tableRLC } from '../common.descriptions';
export { create, deleteRecord, get, search, update, upsert };

View file

@ -5,10 +5,11 @@ import type {
IExecuteFunctions,
NodeApiError,
} from 'n8n-workflow';
import { updateDisplayOptions, wrapData } from '../../../../../utils/utilities';
import { processAirtableError, removeIgnored } from '../../helpers/utils';
import { apiRequest } from '../../transport';
import { insertUpdateOptions } from '../common.descriptions';
import { processAirtableError, removeIgnored } from '../../helpers/utils';
const properties: INodeProperties[] = [
{

View file

@ -5,9 +5,10 @@ import type {
NodeApiError,
IExecuteFunctions,
} from 'n8n-workflow';
import { updateDisplayOptions, wrapData } from '../../../../../utils/utilities';
import { apiRequest } from '../../transport';
import { processAirtableError } from '../../helpers/utils';
import { apiRequest } from '../../transport';
const properties: INodeProperties[] = [
{

View file

@ -5,10 +5,11 @@ import type {
NodeApiError,
IExecuteFunctions,
} from 'n8n-workflow';
import { updateDisplayOptions, wrapData } from '../../../../../utils/utilities';
import { apiRequest, downloadRecordAttachments } from '../../transport';
import { flattenOutput, processAirtableError } from '../../helpers/utils';
import type { IRecord } from '../../helpers/interfaces';
import { flattenOutput, processAirtableError } from '../../helpers/utils';
import { apiRequest, downloadRecordAttachments } from '../../transport';
const properties: INodeProperties[] = [
{

View file

@ -4,10 +4,11 @@ import type {
INodeProperties,
IExecuteFunctions,
} from 'n8n-workflow';
import { generatePairedItemData, updateDisplayOptions } from '../../../../../utils/utilities';
import { apiRequest, apiRequestAllItems, downloadRecordAttachments } from '../../transport';
import type { IRecord } from '../../helpers/interfaces';
import { flattenOutput } from '../../helpers/utils';
import { apiRequest, apiRequestAllItems, downloadRecordAttachments } from '../../transport';
import { viewRLC } from '../common.descriptions';
const properties: INodeProperties[] = [

View file

@ -5,10 +5,11 @@ import type {
NodeApiError,
IExecuteFunctions,
} from 'n8n-workflow';
import { updateDisplayOptions, wrapData } from '../../../../../utils/utilities';
import { apiRequestAllItems, batchUpdate } from '../../transport';
import { findMatches, processAirtableError, removeIgnored } from '../../helpers/utils';
import type { UpdateRecord } from '../../helpers/interfaces';
import { findMatches, processAirtableError, removeIgnored } from '../../helpers/utils';
import { apiRequestAllItems, batchUpdate } from '../../transport';
import { insertUpdateOptions } from '../common.descriptions';
const properties: INodeProperties[] = [

View file

@ -5,10 +5,11 @@ import type {
IExecuteFunctions,
NodeApiError,
} from 'n8n-workflow';
import { updateDisplayOptions, wrapData } from '../../../../../utils/utilities';
import { apiRequest, apiRequestAllItems, batchUpdate } from '../../transport';
import { processAirtableError, removeIgnored } from '../../helpers/utils';
import type { UpdateRecord } from '../../helpers/interfaces';
import { processAirtableError, removeIgnored } from '../../helpers/utils';
import { apiRequest, apiRequestAllItems, batchUpdate } from '../../transport';
import { insertUpdateOptions } from '../common.descriptions';
const properties: INodeProperties[] = [

View file

@ -1,9 +1,9 @@
import type { IExecuteFunctions, INodeExecutionData } from 'n8n-workflow';
import { NodeOperationError } from 'n8n-workflow';
import type { AirtableType } from './node.type';
import * as record from './record/Record.resource';
import * as base from './base/Base.resource';
import type { AirtableType } from './node.type';
import * as record from './record/Record.resource';
export async function router(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
let returnData: INodeExecutionData[] = [];

View file

@ -1,8 +1,8 @@
/* eslint-disable n8n-nodes-base/node-filename-against-convention */
import { NodeConnectionType, type INodeTypeDescription } from 'n8n-workflow';
import * as record from './record/Record.resource';
import * as base from './base/Base.resource';
import * as record from './record/Record.resource';
export const versionDescription: INodeTypeDescription = {
displayName: 'Airtable',

View file

@ -1,5 +1,6 @@
import { ApplicationError, type IDataObject, type NodeApiError } from 'n8n-workflow';
import set from 'lodash/set';
import { ApplicationError, type IDataObject, type NodeApiError } from 'n8n-workflow';
import type { UpdateRecord } from './interfaces';
export function removeIgnored(data: IDataObject, ignore: string | string[]) {

View file

@ -5,6 +5,7 @@ import type {
INodeListSearchResult,
} from 'n8n-workflow';
import { NodeOperationError } from 'n8n-workflow';
import { apiRequest } from '../transport';
export async function baseSearch(

View file

@ -1,5 +1,6 @@
import type { IDataObject, ILoadOptionsFunctions, INodePropertyOptions } from 'n8n-workflow';
import { NodeOperationError } from 'n8n-workflow';
import { apiRequest } from '../transport';
export async function getColumns(this: ILoadOptionsFunctions): Promise<INodePropertyOptions[]> {

View file

@ -7,6 +7,7 @@ import type {
ResourceMapperFields,
} from 'n8n-workflow';
import { NodeOperationError } from 'n8n-workflow';
import { apiRequest } from '../transport';
type AirtableSchema = {

View file

@ -10,6 +10,7 @@ import type {
IRequestOptions,
} from 'n8n-workflow';
import { ApplicationError } from 'n8n-workflow';
import type { IAttachment, IRecord } from '../helpers/interfaces';
import { flattenOutput } from '../helpers/utils';

View file

@ -1,6 +1,3 @@
import type { Connection, ContainerOptions, Dictionary, EventContext, Sender } from 'rhea';
import { create_container } from 'rhea';
import type {
IExecuteFunctions,
IDataObject,
@ -13,6 +10,8 @@ import type {
ICredentialDataDecryptedObject,
} from 'n8n-workflow';
import { NodeConnectionType, NodeOperationError } from 'n8n-workflow';
import type { Connection, ContainerOptions, Dictionary, EventContext, Sender } from 'rhea';
import { create_container } from 'rhea';
async function checkIfCredentialsValid(
credentials: IDataObject,

View file

@ -1,6 +1,3 @@
import type { ContainerOptions, EventContext, Message, ReceiverOptions } from 'rhea';
import { create_container } from 'rhea';
import type {
ITriggerFunctions,
IDataObject,
@ -11,6 +8,8 @@ import type {
IRun,
} from 'n8n-workflow';
import { deepCopy, jsonParse, NodeConnectionType, NodeOperationError } from 'n8n-workflow';
import type { ContainerOptions, EventContext, Message, ReceiverOptions } from 'rhea';
import { create_container } from 'rhea';
export class AmqpTrigger implements INodeType {
description: INodeTypeDescription = {

View file

@ -1,3 +1,5 @@
import { snakeCase } from 'change-case';
import moment from 'moment-timezone';
import type {
IExecuteFunctions,
IDataObject,
@ -10,9 +12,6 @@ import type {
} from 'n8n-workflow';
import { NodeConnectionType, NodeApiError, NodeOperationError } from 'n8n-workflow';
import moment from 'moment-timezone';
import { snakeCase } from 'change-case';
import {
asanaApiRequest,
asanaApiRequestAllItems,

View file

@ -1,3 +1,4 @@
import get from 'lodash/get';
import type {
IDataObject,
IExecuteFunctions,
@ -8,8 +9,6 @@ import type {
INodePropertyOptions,
} from 'n8n-workflow';
import get from 'lodash/get';
/**
* Make an API request to Asana
*

View file

@ -10,10 +10,8 @@ import {
NodeConnectionType,
} from 'n8n-workflow';
import { automizyApiRequest, automizyApiRequestAllItems } from './GenericFunctions';
import { contactFields, contactOperations } from './ContactDescription';
import { automizyApiRequest, automizyApiRequestAllItems } from './GenericFunctions';
import { listFields, listOperations } from './ListDescription';
export class Automizy implements INodeType {

View file

@ -10,14 +10,10 @@ import {
NodeConnectionType,
} from 'n8n-workflow';
import { autopilotApiRequest, autopilotApiRequestAllItems } from './GenericFunctions';
import { contactFields, contactOperations } from './ContactDescription';
import { contactJourneyFields, contactJourneyOperations } from './ContactJourneyDescription';
import { contactListFields, contactListOperations } from './ContactListDescription';
import { autopilotApiRequest, autopilotApiRequestAllItems } from './GenericFunctions';
import { listFields, listOperations } from './ListDescription';
export class Autopilot implements INodeType {

View file

@ -1,3 +1,4 @@
import { snakeCase } from 'change-case';
import type {
IHookFunctions,
IWebhookFunctions,
@ -8,7 +9,6 @@ import type {
} from 'n8n-workflow';
import { NodeConnectionType } from 'n8n-workflow';
import { snakeCase } from 'change-case';
import { autopilotApiRequest } from './GenericFunctions';
export class AutopilotTrigger implements INodeType {

View file

@ -1,3 +1,4 @@
import get from 'lodash/get';
import type {
IHookFunctions,
IWebhookFunctions,
@ -10,7 +11,6 @@ import type {
} from 'n8n-workflow';
import { jsonParse, NodeConnectionType, NodeOperationError } from 'n8n-workflow';
import get from 'lodash/get';
import { awsApiRequestSOAP } from './GenericFunctions';
export class AwsSnsTrigger implements INodeType {

View file

@ -8,7 +8,6 @@ import type {
import { NodeConnectionType } from 'n8n-workflow';
import { certificateFields, certificateOperations } from './CertificateDescription';
import { awsApiRequestAllItems, awsApiRequestREST } from './GenericFunctions';
export class AwsCertificateManager implements INodeType {

View file

@ -1,5 +1,4 @@
import get from 'lodash/get';
import type {
IDataObject,
IExecuteFunctions,

View file

@ -1,5 +1,3 @@
import { parseString } from 'xml2js';
import type {
IExecuteFunctions,
IHookFunctions,
@ -8,6 +6,7 @@ import type {
IHttpRequestOptions,
IHttpRequestMethods,
} from 'n8n-workflow';
import { parseString } from 'xml2js';
export async function awsApiRequest(
this: IHookFunctions | IExecuteFunctions | ILoadOptionsFunctions | IWebhookFunctions,

View file

@ -1,4 +1,5 @@
import nock from 'nock';
import { getWorkflowFilenames, initBinaryDataService, testWorkflows } from '@test/nodes/Helpers';
const workflows = getWorkflowFilenames(__dirname);

View file

@ -11,9 +11,7 @@ import {
} from 'n8n-workflow';
import { awsApiRequest, awsApiRequestAllItems } from './GenericFunctions';
import { itemFields, itemOperations } from './ItemDescription';
import type {
FieldsUiValues,
IAttributeNameUi,
@ -22,7 +20,6 @@ import type {
IRequestBody,
PutItemUi,
} from './types';
import {
adjustExpressionAttributeName,
adjustExpressionAttributeValues,

View file

@ -11,13 +11,11 @@ import type {
import { NodeConnectionType } from 'n8n-workflow';
import { awsApiRequestSOAP, awsApiRequestSOAPAllItems } from './GenericFunctions';
import { loadBalancerFields, loadBalancerOperations } from './LoadBalancerDescription';
import {
listenerCertificateFields,
listenerCertificateOperations,
} from './ListenerCertificateDescription';
import { loadBalancerFields, loadBalancerOperations } from './LoadBalancerDescription';
export class AwsElb implements INodeType {
description: INodeTypeDescription = {

View file

@ -1,7 +1,4 @@
import get from 'lodash/get';
import { parseString } from 'xml2js';
import type {
IDataObject,
IExecuteFunctions,
@ -13,6 +10,7 @@ import type {
IHttpRequestMethods,
} from 'n8n-workflow';
import { NodeApiError } from 'n8n-workflow';
import { parseString } from 'xml2js';
export async function awsApiRequest(
this: IHookFunctions | IExecuteFunctions | ILoadOptionsFunctions | IWebhookFunctions,

View file

@ -1,5 +1,3 @@
import { parseString as parseXml } from 'xml2js';
import type {
IExecuteFunctions,
IHookFunctions,
@ -10,6 +8,7 @@ import type {
IHttpRequestMethods,
} from 'n8n-workflow';
import { NodeApiError } from 'n8n-workflow';
import { parseString as parseXml } from 'xml2js';
export async function awsApiRequest(
this: IHookFunctions | IExecuteFunctions | ILoadOptionsFunctions | IWebhookFunctions,

View file

@ -1,7 +1,5 @@
import { pascalCase } from 'change-case';
import get from 'lodash/get';
import { parseString } from 'xml2js';
import type {
IDataObject,
IExecuteFunctions,
@ -11,8 +9,7 @@ import type {
IHttpRequestOptions,
IHttpRequestMethods,
} from 'n8n-workflow';
import { pascalCase } from 'change-case';
import { parseString } from 'xml2js';
export async function awsApiRequest(
this: IHookFunctions | IExecuteFunctions | ILoadOptionsFunctions | IWebhookFunctions,

View file

@ -1,4 +1,5 @@
import nock from 'nock';
import { getWorkflowFilenames, testWorkflows } from '@test/nodes/Helpers';
const responseLabels = [

View file

@ -2,7 +2,6 @@ import type { INodeTypeBaseDescription, IVersionedNodeType } from 'n8n-workflow'
import { VersionedNodeType } from 'n8n-workflow';
import { AwsS3V1 } from './V1/AwsS3V1.node';
import { AwsS3V2 } from './V2/AwsS3V2.node';
export class AwsS3 extends VersionedNodeType {

View file

@ -1,8 +1,5 @@
import { createHash } from 'crypto';
import { paramCase, snakeCase } from 'change-case';
import { Builder } from 'xml2js';
import { createHash } from 'crypto';
import type {
IDataObject,
IExecuteFunctions,
@ -12,13 +9,11 @@ import type {
INodeTypeDescription,
} from 'n8n-workflow';
import { NodeConnectionType, NodeOperationError } from 'n8n-workflow';
import { Builder } from 'xml2js';
import { bucketFields, bucketOperations } from './BucketDescription';
import { folderFields, folderOperations } from './FolderDescription';
import { fileFields, fileOperations } from './FileDescription';
import { folderFields, folderOperations } from './FolderDescription';
import {
awsApiRequestREST,
awsApiRequestSOAP,

View file

@ -1,7 +1,4 @@
import get from 'lodash/get';
import { parseString } from 'xml2js';
import type {
IDataObject,
IExecuteFunctions,
@ -11,6 +8,7 @@ import type {
IHttpRequestOptions,
IHttpRequestMethods,
} from 'n8n-workflow';
import { parseString } from 'xml2js';
export async function awsApiRequest(
this: IHookFunctions | IExecuteFunctions | ILoadOptionsFunctions | IWebhookFunctions,

View file

@ -1,9 +1,5 @@
import { createHash } from 'crypto';
import type { Readable } from 'stream';
import { paramCase, snakeCase } from 'change-case';
import { Builder } from 'xml2js';
import { createHash } from 'crypto';
import type {
IDataObject,
IExecuteFunctions,
@ -13,13 +9,12 @@ import type {
INodeTypeDescription,
} from 'n8n-workflow';
import { NodeConnectionType, NodeOperationError } from 'n8n-workflow';
import type { Readable } from 'stream';
import { Builder } from 'xml2js';
import { bucketFields, bucketOperations } from './BucketDescription';
import { folderFields, folderOperations } from './FolderDescription';
import { fileFields, fileOperations } from './FileDescription';
import { folderFields, folderOperations } from './FolderDescription';
import { awsApiRequestREST, awsApiRequestRESTAllItems } from './GenericFunctions';
// Minimum size 5MB for multipart upload in S3

View file

@ -1,7 +1,4 @@
import get from 'lodash/get';
import { parseString } from 'xml2js';
import type {
IDataObject,
IExecuteFunctions,
@ -11,6 +8,7 @@ import type {
IHttpRequestOptions,
IHttpRequestMethods,
} from 'n8n-workflow';
import { parseString } from 'xml2js';
export async function awsApiRequest(
this: IHookFunctions | IExecuteFunctions | ILoadOptionsFunctions | IWebhookFunctions,

View file

@ -1,4 +1,5 @@
import nock from 'nock';
import { getWorkflowFilenames, initBinaryDataService, testWorkflows } from '@test/nodes/Helpers';
const workflows = getWorkflowFilenames(__dirname);

View file

@ -1,4 +1,5 @@
import nock from 'nock';
import { getWorkflowFilenames, initBinaryDataService, testWorkflows } from '@test/nodes/Helpers';
const workflows = getWorkflowFilenames(__dirname);

View file

@ -1,4 +1,3 @@
import qs from 'node:querystring';
import type {
IExecuteFunctions,
IDataObject,
@ -9,6 +8,7 @@ import type {
INodeTypeDescription,
} from 'n8n-workflow';
import { NodeConnectionType, NodeOperationError } from 'n8n-workflow';
import qs from 'node:querystring';
import { awsApiRequestSOAP, awsApiRequestSOAPAllItems } from './GenericFunctions';

View file

@ -1,5 +1,4 @@
import { parseString } from 'xml2js';
import get from 'lodash/get';
import type {
IDataObject,
IExecuteFunctions,
@ -11,8 +10,7 @@ import type {
IHttpRequestMethods,
} from 'n8n-workflow';
import { NodeApiError } from 'n8n-workflow';
import get from 'lodash/get';
import { parseString } from 'xml2js';
export async function awsApiRequest(
this: IHookFunctions | IExecuteFunctions | ILoadOptionsFunctions | IWebhookFunctions,

View file

@ -1,9 +1,10 @@
import qs from 'node:querystring';
import assert from 'node:assert';
import { NodeConnectionType } from 'n8n-workflow';
import type { WorkflowTestData } from '@test/nodes/types';
import assert from 'node:assert';
import qs from 'node:querystring';
import { executeWorkflow } from '@test/nodes/ExecuteWorkflow';
import * as Helpers from '@test/nodes/Helpers';
import type { WorkflowTestData } from '@test/nodes/types';
describe('AwsSes Node', () => {
const tests: WorkflowTestData[] = [

View file

@ -1,4 +1,4 @@
import { URL } from 'url';
import { pascalCase } from 'change-case';
import type {
IDataObject,
IExecuteFunctions,
@ -11,8 +11,8 @@ import type {
JsonObject,
} from 'n8n-workflow';
import { NodeApiError, NodeConnectionType } from 'n8n-workflow';
import { URL } from 'url';
import { pascalCase } from 'change-case';
import { awsApiRequestSOAP } from '../GenericFunctions';
export class AwsSqs implements INodeType {

View file

@ -1,10 +1,5 @@
import { URL } from 'url';
import type { Request } from 'aws4';
import { sign } from 'aws4';
import { parseString } from 'xml2js';
import type {
ICredentialDataDecryptedObject,
ICredentialTestFunctions,
@ -18,6 +13,8 @@ import type {
IRequestOptions,
} from 'n8n-workflow';
import { NodeApiError } from 'n8n-workflow';
import { URL } from 'url';
import { parseString } from 'xml2js';
function getEndpointForService(
service: string,

View file

@ -1,8 +1,6 @@
import { URL } from 'url';
import type { Request } from 'aws4';
import { sign } from 'aws4';
import get from 'lodash/get';
import type {
ICredentialDataDecryptedObject,
IDataObject,
@ -15,8 +13,7 @@ import type {
JsonObject,
} from 'n8n-workflow';
import { NodeApiError } from 'n8n-workflow';
import get from 'lodash/get';
import { URL } from 'url';
function getEndpointForService(
service: string,

View file

@ -1,4 +1,4 @@
import { get as execute } from './execute';
import { companyReportGetDescription as description } from './description';
import { get as execute } from './execute';
export { description, execute };

View file

@ -1,4 +1,5 @@
import type { INodeProperties } from 'n8n-workflow';
import * as get from './get';
export { get };

View file

@ -1,6 +1,5 @@
import type { EmployeeProperties } from '../../Interfaces';
import { createEmployeeSharedDescription } from './shareDescription';
import type { EmployeeProperties } from '../../Interfaces';
export const employeeCreateDescription: EmployeeProperties = [
{

View file

@ -1,8 +1,7 @@
import { capitalCase } from 'change-case';
import moment from 'moment-timezone';
import type { IExecuteFunctions, IDataObject, INodeExecutionData } from 'n8n-workflow';
import moment from 'moment-timezone';
import { capitalCase } from 'change-case';
import { apiRequest } from '../../../transport';
export async function create(

View file

@ -1,4 +1,4 @@
import { create as execute } from './execute';
import { employeeCreateDescription as description } from './description';
import { create as execute } from './execute';
export { description, execute };

View file

@ -1,4 +1,4 @@
import { get as execute } from './execute';
import { employeeGetDescription as description } from './description';
import { get as execute } from './execute';
export { description, execute };

View file

@ -1,4 +1,4 @@
import { getAll as execute } from './execute';
import { employeeGetAllDescription as description } from './description';
import { getAll as execute } from './execute';
export { description, execute };

View file

@ -1,4 +1,5 @@
import type { INodeProperties } from 'n8n-workflow';
import * as create from './create';
import * as get from './get';
import * as getAll from './getAll';

View file

@ -1,5 +1,5 @@
import type { EmployeeProperties } from '../../Interfaces';
import { updateEmployeeSharedDescription } from './sharedDescription';
import type { EmployeeProperties } from '../../Interfaces';
export const employeeUpdateDescription: EmployeeProperties = [
{

View file

@ -1,9 +1,8 @@
import { capitalCase } from 'change-case';
import moment from 'moment-timezone';
import type { IExecuteFunctions, IDataObject, INodeExecutionData } from 'n8n-workflow';
import { NodeOperationError } from 'n8n-workflow';
import moment from 'moment-timezone';
import { capitalCase } from 'change-case';
import { apiRequest } from '../../../transport';
export async function update(

View file

@ -1,4 +1,4 @@
import { update as execute } from './execute';
import { employeeUpdateDescription as description } from './description';
import { update as execute } from './execute';
export { description, execute };

View file

@ -1,4 +1,4 @@
import { del as execute } from './execute';
import { employeeDocumentDelDescription as description } from './description';
import { del as execute } from './execute';
export { description, execute };

View file

@ -1,4 +1,4 @@
import { download as execute } from './execute';
import { employeeDocumentDownloadDescription as description } from './description';
import { download as execute } from './execute';
export { description, execute };

Some files were not shown because too many files have changed in this diff Show more