1
1
mirror of https://github.com/n8n-io/n8n.git synced 2024-08-16 16:40:30 +03:00

ci: Upgrade eslint, prettier, typescript, and some other dev tooling (no-changelog) (#8895)

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
This commit is contained in:
कारतोफ्फेलस्क्रिप्ट™ 2024-03-26 14:22:57 +01:00 committed by GitHub
parent 117b57ccc5
commit 372d5c7d01
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
190 changed files with 1142 additions and 1198 deletions

View File

@ -83,12 +83,11 @@
"axios": "1.6.7",
"chokidar": "3.5.2",
"formidable": "3.5.1",
"ip": "2.0.1",
"prettier": "^3.1.0",
"prettier": "^3.2.5",
"semver": "^7.5.4",
"tslib": "^2.6.1",
"tslib": "^2.6.2",
"tsconfig-paths": "^4.2.0",
"typescript": "^5.3.0"
"typescript": "^5.4.2"
},
"patchedDependencies": {
"typedi@0.10.0": "patches/typedi@0.10.0.patch",

View File

@ -250,7 +250,7 @@ export class LmChatOpenAi implements INodeType {
modelKwargs: options.responseFormat
? {
response_format: { type: options.responseFormat },
}
}
: undefined,
});

View File

@ -3,23 +3,23 @@
"private": true,
"version": "0.0.1",
"devDependencies": {
"@types/eslint": "^8.44.7",
"@typescript-eslint/eslint-plugin": "^6.12.0",
"@typescript-eslint/parser": "^6.12.0",
"@vue/eslint-config-prettier": "^8.0.0",
"@vue/eslint-config-typescript": "^12.0.0",
"eslint": "^8.54.0",
"eslint-config-airbnb-typescript": "^17.1.0",
"eslint-config-prettier": "^9.0.0",
"@types/eslint": "^8.56.5",
"@typescript-eslint/eslint-plugin": "^7.2.0",
"@typescript-eslint/parser": "^7.2.0",
"@vue/eslint-config-prettier": "^9.0.0",
"@vue/eslint-config-typescript": "^13.0.0",
"eslint": "^8.57.0",
"eslint-config-airbnb-typescript": "^18.0.0",
"eslint-config-prettier": "^9.1.0",
"eslint-import-resolver-typescript": "^3.6.1",
"eslint-plugin-import": "^2.29.0",
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-lodash": "^7.4.0",
"eslint-plugin-n8n-local-rules": "^1.0.0",
"eslint-plugin-prettier": "^5.0.1",
"eslint-plugin-unicorn": "^49.0.0",
"eslint-plugin-unused-imports": "^3.0.0",
"eslint-plugin-vue": "^9.18.1",
"vue-eslint-parser": "^9.3.2"
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-unicorn": "^51.0.1",
"eslint-plugin-unused-imports": "^3.1.0",
"eslint-plugin-vue": "^9.23.0",
"vue-eslint-parser": "^9.4.2"
},
"scripts": {
"clean": "rimraf .turbo",

View File

@ -488,7 +488,7 @@ export class InternalHooks {
? this.eventBus.sendWorkflowEvent({
eventName: 'n8n.workflow.success',
payload: sharedEventPayload,
})
})
: this.eventBus.sendWorkflowEvent({
eventName: 'n8n.workflow.failed',
payload: {
@ -498,7 +498,7 @@ export class InternalHooks {
errorNodeId: telemetryProperties.error_node_id?.toString(),
errorMessage: telemetryProperties.error_message?.toString(),
},
}),
}),
);
void Promise.all([...promises, this.telemetry.trackWorkflowExecution(telemetryProperties)]);

View File

@ -133,7 +133,7 @@ export class LoadNodesAndCredentials {
: [
...(await glob('n8n-nodes-*', globOptions)),
...(await glob('@*/n8n-nodes-*', { ...globOptions, deep: 2 })),
];
];
for (const packagePath of installedPackagePaths) {
try {

View File

@ -108,7 +108,7 @@ export class TestWebhooks implements IWebhookManager {
const executionMode = 'manual';
const executionId = await WebhookHelpers.executeWebhook(
workflow,
webhook!,
webhook,
workflowEntity,
workflowStartNode,
executionMode,

View File

@ -828,7 +828,7 @@ export async function executeWebhook(
: new ApplicationError('There was a problem executing the workflow', {
level: 'warning',
cause: e,
});
});
if (didSendResponse) throw error;
responseCallback(error, {});
return;

View File

@ -19,7 +19,7 @@ type GetPathSegments<Traversable, Filter> = Traversable extends Filter
? []
: {
[K in ValidKeys<Traversable>]: [K, ...GetPathSegments<Traversable[K], Filter>];
}[ValidKeys<Traversable>];
}[ValidKeys<Traversable>];
/**
* Transform a union of string arrays (path segments) into a union of strings (dotted paths).
@ -31,12 +31,12 @@ type GetPathSegments<Traversable, Filter> = Traversable extends Filter
type JoinByDotting<T extends string[]> = T extends [infer F]
? F
: T extends [infer F, ...infer R]
? F extends string
? F extends string
? R extends string[]
? `${F}.${JoinByDotting<R>}`
: never
: never
: string;
: string;
type ToDottedPath<T> = JoinByDotting<RemoveExcess<T>>;
@ -64,14 +64,14 @@ type ConfigOptionPath =
type ToReturnType<T extends ConfigOptionPath> = T extends NumericPath
? number
: T extends BooleanPath
? boolean
: T extends StringLiteralArrayPath
? StringLiteralMap[T]
: T extends keyof ExceptionPaths
? ExceptionPaths[T]
: T extends StringPath
? string
: unknown;
? boolean
: T extends StringLiteralArrayPath
? StringLiteralMap[T]
: T extends keyof ExceptionPaths
? ExceptionPaths[T]
: T extends StringPath
? string
: unknown;
type ExceptionPaths = {
'queue.bull.redis': object;
@ -86,11 +86,12 @@ type ExceptionPaths = {
// string literals map
// -----------------------------------
type GetPathSegmentsWithUnions<T> = T extends ReadonlyArray<infer C>
? [C]
: {
[K in ValidKeys<T>]: [K, ...GetPathSegmentsWithUnions<T[K]>];
}[ValidKeys<T>];
type GetPathSegmentsWithUnions<T> =
T extends ReadonlyArray<infer C>
? [C]
: {
[K in ValidKeys<T>]: [K, ...GetPathSegmentsWithUnions<T[K]>];
}[ValidKeys<T>];
type ToPathUnionPair<T extends string[]> = T extends [...infer Path, infer Union]
? Path extends string[]

View File

@ -358,7 +358,7 @@ export class CredentialsController {
);
if (newShareeIds.length) {
await this.enterpriseCredentialsService.share(trx, credential!, newShareeIds);
await this.enterpriseCredentialsService.share(trx, credential, newShareeIds);
}
});

View File

@ -29,15 +29,15 @@ export class CreateLdapEntities1674509946020 implements ReversibleMigration {
dbType === 'sqlite'
? 'INTEGER PRIMARY KEY AUTOINCREMENT'
: dbType === 'postgresdb'
? 'SERIAL NOT NULL PRIMARY KEY'
: 'INTEGER NOT NULL AUTO_INCREMENT';
? 'SERIAL NOT NULL PRIMARY KEY'
: 'INTEGER NOT NULL AUTO_INCREMENT';
const timestampColumn =
dbType === 'sqlite'
? 'DATETIME NOT NULL'
: dbType === 'postgresdb'
? 'TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP'
: 'DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP';
? 'TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP'
: 'DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP';
await runQuery(
`CREATE TABLE IF NOT EXISTS ${escape.tableName('auth_provider_sync_history')} (

View File

@ -31,7 +31,7 @@ export class InstalledPackagesRepository extends Repository<InstalledPackages> {
installedPackage.installedNodes = [];
return loadedNodes.map(async (loadedNode) => {
for (const loadedNode of loadedNodes) {
const installedNode = this.installedNodesRepository.create({
name: nodeTypes[loadedNode.name].type.description.displayName,
type: loadedNode.name,
@ -41,8 +41,8 @@ export class InstalledPackagesRepository extends Repository<InstalledPackages> {
installedPackage.installedNodes.push(installedNode);
return await manager.save(installedNode);
});
await manager.save(installedNode);
}
});
return installedPackage!;

View File

@ -136,7 +136,7 @@ export class WorkflowRepository extends Repository<WorkflowEntity> {
updatedAt: true,
versionId: true,
shared: { userId: true, role: true },
};
};
delete select?.ownedBy; // remove non-entity field, handled after query

View File

@ -26,7 +26,7 @@ export function getLabelsForEvent(event: EventMessageTypes): Record<string, stri
credential_type: getLabelValueForCredential(
event.payload.credentialType ?? 'unknown',
),
}
}
: {};
}

View File

@ -127,11 +127,11 @@ export class CredentialsTester {
? {
status: 'OK',
message: OAUTH2_CREDENTIAL_TEST_SUCCEEDED,
}
}
: {
status: 'Error',
message: OAUTH2_CREDENTIAL_TEST_FAILED,
};
};
};
}

View File

@ -49,13 +49,12 @@ export function getWorkerCommandReceivedHandler(options: WorkerCommandReceivedHa
arch: os.arch(),
platform: os.platform(),
hostname: os.hostname(),
interfaces: Object.values(os.networkInterfaces()).flatMap(
(interfaces) =>
(interfaces ?? [])?.map((net) => ({
family: net.family,
address: net.address,
internal: net.internal,
})),
interfaces: Object.values(os.networkInterfaces()).flatMap((interfaces) =>
(interfaces ?? [])?.map((net) => ({
family: net.family,
address: net.address,
internal: net.internal,
})),
),
version: N8N_VERSION,
},

View File

@ -51,7 +51,7 @@ export class WorkflowService {
? {
workflows: workflows.map((w) => this.ownershipService.addOwnedByAndSharedWith(w)),
count,
}
}
: { workflows, count };
}

View File

@ -393,7 +393,7 @@ export class WorkflowsController {
if (newShareeIds.length) {
const users = await this.userRepository.getByIds(trx, newShareeIds);
await this.sharedWorkflowRepository.share(trx, workflow!, users);
await this.sharedWorkflowRepository.share(trx, workflow, users);
}
});

View File

@ -66,7 +66,7 @@ describe('GET /workflow-history/:workflowId', () => {
),
);
const last = versions.sort((a, b) => b.createdAt.valueOf() - a.createdAt.valueOf())[0]! as any;
const last = versions.sort((a, b) => b.createdAt.valueOf() - a.createdAt.valueOf())[0] as any;
delete last.nodes;
delete last.connections;
@ -95,7 +95,7 @@ describe('GET /workflow-history/:workflowId', () => {
new Array(10).fill(undefined).map(async (_) => await createWorkflowHistoryItem(workflow2.id)),
);
const last = versions.sort((a, b) => b.createdAt.valueOf() - a.createdAt.valueOf())[0]! as any;
const last = versions.sort((a, b) => b.createdAt.valueOf() - a.createdAt.valueOf())[0] as any;
delete last.nodes;
delete last.connections;
@ -119,7 +119,7 @@ describe('GET /workflow-history/:workflowId', () => {
),
);
const last = versions.sort((a, b) => b.createdAt.valueOf() - a.createdAt.valueOf())[0]! as any;
const last = versions.sort((a, b) => b.createdAt.valueOf() - a.createdAt.valueOf())[0] as any;
delete last.nodes;
delete last.connections;
@ -143,7 +143,7 @@ describe('GET /workflow-history/:workflowId', () => {
),
);
const last = versions.sort((a, b) => b.createdAt.valueOf() - a.createdAt.valueOf())[5]! as any;
const last = versions.sort((a, b) => b.createdAt.valueOf() - a.createdAt.valueOf())[5] as any;
delete last.nodes;
delete last.connections;

View File

@ -810,7 +810,7 @@ export async function proxyRequestToAxios(
statusCode: response.status,
statusMessage: response.statusText,
request: response.request,
}
}
: body;
} catch (error) {
const { config, response } = error;
@ -1042,7 +1042,7 @@ export function assertBinaryData(
propertyName: string,
inputIndex: number,
): IBinaryData {
const binaryKeyData = inputData.main[inputIndex]![itemIndex]!.binary;
const binaryKeyData = inputData.main[inputIndex]![itemIndex].binary;
if (binaryKeyData === undefined) {
throw new NodeOperationError(
node,
@ -1079,7 +1079,7 @@ export async function getBinaryDataBuffer(
propertyName: string,
inputIndex: number,
): Promise<Buffer> {
const binaryData = inputData.main[inputIndex]![itemIndex]!.binary![propertyName]!;
const binaryData = inputData.main[inputIndex]![itemIndex].binary![propertyName];
return await Container.get(BinaryDataService).getAsBuffer(binaryData);
}
@ -1940,7 +1940,7 @@ export function getAdditionalKeys(
getAll(): Record<string, string> {
return getAllWorkflowExecutionMetadata(runExecutionData);
},
}
}
: undefined,
},
$vars: additionalData.variables,
@ -3204,7 +3204,7 @@ const getFileSystemHelperFunctions = (node: INode): FileSystemHelperFunctions =>
? new NodeOperationError(node, error, {
message: `The file "${String(filePath)}" could not be accessed.`,
level: 'warning',
})
})
: error;
}
if (isFilePathBlocked(filePath as string)) {

View File

@ -1575,9 +1575,9 @@ export class WorkflowExecute {
// array as this shows that the parent nodes executed but they did not have any
// data to pass on.
const inputsWithData = this.runExecutionData
.executionData!.waitingExecution[nodeName][firstRunIndex].main.map((data, index) =>
data === null ? null : index,
)
.executionData!.waitingExecution[
nodeName
][firstRunIndex].main.map((data, index) => (data === null ? null : index))
.filter((data) => data !== null);
if (requiredInputs !== undefined) {

View File

@ -6,7 +6,7 @@
:disabled="disabled"
:indeterminate="indeterminate"
:model-value="modelValue"
@update:modelValue="onUpdateModelValue"
@update:model-value="onUpdateModelValue"
>
<slot></slot>
<N8nInputLabel

View File

@ -79,7 +79,7 @@ const onActiveChange = (value: string) => {
:model-value="color"
:name="name"
type="text"
@update:modelValue="onInput"
@update:model-value="onInput"
/>
</span>
</template>

View File

@ -36,7 +36,7 @@
layout="prev, pager, next"
:total="totalRows"
:current-page="currentPage"
@update:currentPage="onUpdateCurrentPage"
@update:current-page="onUpdateCurrentPage"
/>
<div :class="$style.pageSizeSelector">
@ -44,7 +44,7 @@
size="mini"
:model-value="rowsPerPage"
teleported
@update:modelValue="onRowsPerPageChange"
@update:model-value="onRowsPerPageChange"
>
<template #prepend>{{ t('datatable.pageSize') }}</template>
<N8nOption

View File

@ -3,7 +3,7 @@
v-if="type === 'checkbox'"
v-bind="$props"
ref="inputRef"
@update:modelValue="onUpdateModelValue"
@update:model-value="onUpdateModelValue"
@focus="onFocus"
/>
<N8nInputLabel
@ -20,7 +20,7 @@
:model-value="modelValue"
:active-color="activeColor"
:inactive-color="inactiveColor"
@update:modelValue="onUpdateModelValue"
@update:model-value="onUpdateModelValue"
></ElSwitch>
</N8nInputLabel>
<N8nInputLabel
@ -42,7 +42,7 @@
:disabled="disabled"
:name="name"
:teleported="teleported"
@update:modelValue="onUpdateModelValue"
@update:model-value="onUpdateModelValue"
@focus="onFocus"
@blur="onBlur"
>
@ -65,7 +65,7 @@
:maxlength="maxlength"
:autocomplete="autocomplete"
:disabled="disabled"
@update:modelValue="onUpdateModelValue"
@update:model-value="onUpdateModelValue"
@blur="onBlur"
@focus="onFocus"
/>

View File

@ -27,7 +27,7 @@
:show-validation-warnings="showValidationWarnings"
:teleported="teleported"
:tag-size="tagSize"
@update:modelValue="(value) => onUpdateModelValue(input.name, value)"
@update:model-value="(value) => onUpdateModelValue(input.name, value)"
@validate="(value) => onValidate(input.name, value)"
@enter="onSubmit"
/>

View File

@ -44,7 +44,7 @@
type="textarea"
:rows="5"
@blur="onInputBlur"
@update:modelValue="onUpdateModelValue"
@update:model-value="onUpdateModelValue"
@wheel="onInputScroll"
/>
</div>

View File

@ -81,6 +81,6 @@ export function createComponentRenderer(
...defaultOptions.global,
...options.global,
},
},
},
);
}

View File

@ -25,7 +25,7 @@
<template #footer="{ close }">
<div :class="$style.footer">
<el-checkbox :model-value="checked" @update:modelValue="handleCheckboxChange">{{
<el-checkbox :model-value="checked" @update:model-value="handleCheckboxChange">{{
$locale.baseText('generic.dontShowAgain')
}}</el-checkbox>
<n8n-button :label="$locale.baseText('activationModal.gotIt')" @click="close" />

View File

@ -32,7 +32,7 @@
<AskAI
:key="activeTab"
:has-changes="hasChanges"
@replaceCode="onReplaceCode"
@replace-code="onReplaceCode"
@started-loading="isLoadingAIResponse = true"
@finished-loading="isLoadingAIResponse = false"
/>

View File

@ -161,7 +161,7 @@ export const codeNodeEditorTheme = ({
{ tag: [tags.processingInstruction, tags.string, tags.inserted], color: '#98c379' },
{ tag: tags.invalid, color: 'red', 'font-weight': 'bold' },
]),
)
)
: syntaxHighlighting(
HighlightStyle.define([
{
@ -204,5 +204,5 @@ export const codeNodeEditorTheme = ({
color: 'var(--color-code-tags-definition)',
},
]),
),
),
];

View File

@ -13,7 +13,7 @@
:hide-delete="hideDelete"
:indent="true"
:is-read-only="isReadOnly"
@valueChanged="valueChanged"
@value-changed="valueChanged"
/>
</Suspense>
@ -31,7 +31,7 @@
:placeholder="getPlaceholderText"
size="small"
filterable
@update:modelValue="optionSelected"
@update:model-value="optionSelected"
>
<n8n-option
v-for="item in parameterOptions"

View File

@ -61,7 +61,7 @@
:class="[$style.checkbox, checkboxWarning ? $style.error : '', 'mt-l']"
:disabled="loading"
data-test-id="user-agreement-checkbox"
@update:modelValue="onCheckboxChecked"
@update:model-value="onCheckboxChecked"
>
<n8n-text>
{{ $locale.baseText('settings.communityNodes.installModal.checkbox.label') }} </n8n-text

View File

@ -50,7 +50,7 @@ function onVisibleChange(open: boolean) {
data-test-id="context-menu"
:hide-arrow="target.source !== 'node-button'"
@select="onActionSelect"
@visibleChange="onVisibleChange"
@visible-change="onVisibleChange"
>
<template #activator>
<div :class="$style.activator"></div>

View File

@ -116,7 +116,7 @@ export default defineComponent({
label: this.$locale.baseText('credentials.item.delete'),
value: CREDENTIAL_LIST_ITEM_ACTIONS.DELETE,
},
]
]
: [],
);
},

View File

@ -140,7 +140,7 @@ defineExpose({
:label="prop.value"
:class="$style.authRadioButton"
border
@update:modelValue="onAuthTypeChange"
@update:model-value="onAuthTypeChange"
>{{ prop.name }}</el-radio
>
</div>

View File

@ -74,7 +74,7 @@
<AuthTypeSelector
v-if="showAuthTypeSelector && isNewCredential"
:credential-type="credentialType"
@authTypeChanged="onAuthTypeChange"
@auth-type-changed="onAuthTypeChange"
/>
<CopyInput

View File

@ -20,7 +20,7 @@
:readonly="!credentialPermissions.update || !credentialType"
type="Credential"
data-test-id="credential-name"
@update:modelValue="onNameEdit"
@update:model-value="onNameEdit"
/>
</div>
<div :class="$style.credActions">
@ -81,8 +81,8 @@
@update="onDataChange"
@oauth="oAuthCredentialAuthorize"
@retest="retestCredential"
@scrollToTop="scrollToTop"
@authTypeChanged="onAuthTypeChanged"
@scroll-to-top="scrollToTop"
@auth-type-changed="onAuthTypeChanged"
/>
</div>
<div v-else-if="activeTab === 'sharing' && credentialType" :class="$style.mainContent">
@ -92,7 +92,7 @@
:credential-id="credentialId"
:credential-permissions="credentialPermissions"
:modal-bus="modalBus"
@update:modelValue="onChangeSharedWith"
@update:model-value="onChangeSharedWith"
/>
</div>
<div v-else-if="activeTab === 'details' && credentialType" :class="$style.mainContent">

View File

@ -64,7 +64,7 @@
:current-user-id="usersStore.currentUser.id"
:placeholder="$locale.baseText('credentialEdit.credentialSharing.select.placeholder')"
data-test-id="credential-sharing-modal-users-select"
@update:modelValue="onAddSharee"
@update:model-value="onAddSharee"
>
<template #prefix>
<n8n-icon icon="search" />

View File

@ -41,7 +41,7 @@ const onCredentialSelected = (credentialId: string) => {
<n8n-select
size="small"
:model-value="props.selectedCredentialId"
@update:modelValue="onCredentialSelected"
@update:model-value="onCredentialSelected"
>
<n8n-option
v-for="item in props.credentialOptions"

View File

@ -12,7 +12,7 @@
:title="displayTitle"
:disabled="isReadOnly"
data-test-id="credential-select"
@update:modelValue="(value) => $emit('update:modelValue', value)"
@update:model-value="(value) => $emit('update:modelValue', value)"
@keydown.stop
@focus="$emit('setFocus')"
@blur="$emit('onBlur')"
@ -48,7 +48,7 @@
<NodeCredentials
:node="node"
:override-cred-type="node.parameters[parameter.name]"
@credentialSelected="(updateInformation) => $emit('credentialSelected', updateInformation)"
@credential-selected="(updateInformation) => $emit('credentialSelected', updateInformation)"
/>
</div>
</div>

View File

@ -26,7 +26,7 @@
size="xlarge"
:model-value="selected"
data-test-id="new-credential-type-select"
@update:modelValue="onSelect"
@update:model-value="onSelect"
>
<template #prefix>
<font-awesome-icon icon="search" />

View File

@ -23,7 +23,7 @@
<el-radio
:model-value="operation"
label="transfer"
@update:modelValue="() => setOperation('transfer')"
@update:model-value="() => setOperation('transfer')"
>
<n8n-text color="text-dark">{{
$locale.baseText('settings.users.transferWorkflowsAndCredentials')
@ -36,14 +36,14 @@
:model-value="transferId"
:ignore-ids="ignoreIds"
:current-user-id="usersStore.currentUserId"
@update:modelValue="setTransferId"
@update:model-value="setTransferId"
/>
</n8n-input-label>
</div>
<el-radio
:model-value="operation"
label="delete"
@update:modelValue="() => setOperation('delete')"
@update:model-value="() => setOperation('delete')"
>
<n8n-text color="text-dark">{{
$locale.baseText('settings.users.deleteWorkflowsAndCredentials')
@ -58,7 +58,7 @@
<n8n-input
:model-value="deleteConfirmText"
:placeholder="$locale.baseText('settings.users.deleteConfirmationText')"
@update:modelValue="setConfirmText"
@update:model-value="setConfirmText"
/>
</n8n-input-label>
</div>

View File

@ -198,7 +198,7 @@ onBeforeMount(() => {
:model-value="filter.tags"
:create-enabled="false"
data-test-id="executions-filter-tags-select"
@update:modelValue="onTagsChange"
@update:model-value="onTagsChange"
/>
</div>
<div :class="$style.group">
@ -289,7 +289,7 @@ onBeforeMount(() => {
:placeholder="locale.baseText('executionsFilter.savedDataKeyPlaceholder')"
:model-value="filter.metadata[0]?.key"
data-test-id="execution-filter-saved-data-key-input"
@update:modelValue="onFilterMetaChange(0, 'key', $event)"
@update:model-value="onFilterMetaChange(0, 'key', $event)"
/>
</n8n-tooltip>
<label for="execution-filter-saved-data-value">{{
@ -313,7 +313,7 @@ onBeforeMount(() => {
:placeholder="locale.baseText('executionsFilter.savedDataValuePlaceholder')"
:model-value="filter.metadata[0]?.value"
data-test-id="execution-filter-saved-data-value-input"
@update:modelValue="onFilterMetaChange(0, 'value', $event)"
@update:model-value="onFilterMetaChange(0, 'value', $event)"
/>
</n8n-tooltip>
</div>

View File

@ -10,14 +10,14 @@
v-model="autoRefresh"
class="mr-xl"
data-test-id="execution-auto-refresh-checkbox"
@update:modelValue="handleAutoRefreshToggle"
@update:model-value="handleAutoRefreshToggle"
>
{{ i18n.baseText('executionsList.autoRefresh') }}
</el-checkbox>
<ExecutionFilter
v-show="!isMounting"
:workflows="workflows"
@filterChanged="onFilterChanged"
@filter-changed="onFilterChanged"
/>
</div>
</div>
@ -33,7 +33,7 @@
"
:model-value="allExistingSelected"
data-test-id="select-all-executions-checkbox"
@update:modelValue="handleCheckAllExistingChange"
@update:model-value="handleCheckAllExistingChange"
/>
<div v-if="isMounting">
@ -50,7 +50,7 @@
:disabled="finishedExecutionsCount < 1"
label=""
data-test-id="select-visible-executions-checkbox"
@update:modelValue="handleCheckAllVisibleChange"
@update:model-value="handleCheckAllVisibleChange"
/>
</th>
<th>{{ i18n.baseText('executionsList.name') }}</th>
@ -75,7 +75,7 @@
:model-value="selectedItems[execution.id] || allExistingSelected"
label=""
data-test-id="select-execution-checkbox"
@update:modelValue="handleCheckboxChanged(execution.id)"
@update:model-value="handleCheckboxChanged(execution.id)"
/>
</td>
<td>

View File

@ -191,11 +191,11 @@ export default defineComponent({
? {
text: this.$locale.baseText('executionsList.debug.button.copyToEditor'),
type: 'secondary',
}
}
: {
text: this.$locale.baseText('executionsList.debug.button.debugInEditor'),
type: 'primary',
};
};
},
},
methods: {

View File

@ -6,7 +6,7 @@
:initially-expanded="shouldExpandAccordion"
:header-icon="accordionIcon"
@click:body="onAccordionClick"
@tooltipClick="onItemTooltipClick"
@tooltip-click="onItemTooltipClick"
>
<template #customContent>
<footer class="mt-2xs">
@ -110,7 +110,7 @@ export default defineComponent({
this.productionExecutionsStatus === 'unknown'
? this.$locale.baseText(
'executionsLandingPage.emptyState.accordion.productionExecutionsWarningTooltip',
)
)
: null,
},
{

View File

@ -6,18 +6,18 @@
:loading-more="loadingMore"
:temporary-execution="temporaryExecution"
:auto-refresh="autoRefresh"
@update:autoRefresh="onAutoRefreshToggle"
@reloadExecutions="setExecutions"
@filterUpdated="onFilterUpdated"
@loadMore="onLoadMore"
@retryExecution="onRetryExecution"
@update:auto-refresh="onAutoRefreshToggle"
@reload-executions="setExecutions"
@filter-updated="onFilterUpdated"
@load-more="onLoadMore"
@retry-execution="onRetryExecution"
/>
<div v-if="!hidePreview" :class="$style.content">
<router-view
name="executionPreview"
@deleteCurrentExecution="onDeleteCurrentExecution"
@retryExecution="onRetryExecution"
@stopExecution="onStopExecution"
@delete-current-execution="onDeleteCurrentExecution"
@retry-execution="onRetryExecution"
@stop-execution="onStopExecution"
/>
</div>
</div>

View File

@ -13,11 +13,11 @@
<el-checkbox
:model-value="autoRefresh"
data-test-id="auto-refresh-checkbox"
@update:modelValue="$emit('update:autoRefresh', $event)"
@update:model-value="$emit('update:autoRefresh', $event)"
>
{{ $locale.baseText('executionsList.autoRefresh') }}
</el-checkbox>
<ExecutionFilter popover-placement="left-start" @filterChanged="onFilterChanged" />
<ExecutionFilter popover-placement="left-start" @filter-changed="onFilterChanged" />
</div>
<div
ref="executionList"
@ -39,7 +39,7 @@
:execution="temporaryExecution"
:data-test-id="`execution-details-${temporaryExecution.id}`"
:show-gap="true"
@retryExecution="onRetryExecution"
@retry-execution="onRetryExecution"
/>
<ExecutionCard
v-for="execution in executions"
@ -47,7 +47,7 @@
:ref="`execution-${execution.id}`"
:execution="execution"
:data-test-id="`execution-details-${execution.id}`"
@retryExecution="onRetryExecution"
@retry-execution="onRetryExecution"
/>
<div v-if="loadingMore" class="mr-m">
<n8n-loading variant="p" :rows="1" />

View File

@ -22,7 +22,7 @@
<VariableSelector
:path="path"
:redact-values="redactValues"
@itemSelected="itemSelected"
@item-selected="itemSelected"
></VariableSelector>
</div>
</el-col>

View File

@ -48,8 +48,8 @@ export default defineComponent({
segment.kind === 'plaintext'
? segment.plaintext.length
: segment.resolved
? segment.resolved.toString().length
: 0;
? segment.resolved.toString().length
: 0;
segment.to = cursor;

View File

@ -45,7 +45,7 @@ const actionDropdownOptions = computed(() => [
value: 'reload',
label: i18n.baseText('settings.externalSecrets.card.actionDropdown.reload'),
},
]
]
: []),
]);

View File

@ -95,7 +95,7 @@ async function onUpdateConnected(value: boolean) {
"
:disabled="disabled"
data-test-id="settings-external-secrets-connected-switch"
@update:modelValue="onUpdateConnected"
@update:model-value="onUpdateConnected"
>
</el-switch>
</div>

View File

@ -26,7 +26,12 @@ const onCombinatorChange = (combinator: FilterTypeCombinator): void => {
<div v-if="readOnly || options.length === 1">
{{ i18n.baseText(`filter.combinator.${selected}`) }}
</div>
<n8n-select v-else size="small" :model-value="selected" @update:modelValue="onCombinatorChange">
<n8n-select
v-else
size="small"
:model-value="selected"
@update:model-value="onCombinatorChange"
>
<n8n-option
v-for="option in options"
:key="option"

View File

@ -171,7 +171,7 @@ const onBlur = (): void => {
<OperatorSelect
:selected="`${operator.type}:${operator.operation}`"
:read-only="readOnly"
@operatorChange="onOperatorChange"
@operator-change="onOperatorChange"
></OperatorSelect>
</template>
<template v-if="!operator.singleValue" #right="{ breakpoint }">

View File

@ -168,7 +168,7 @@ function getIssues(index: number): string[] {
:options="allowedCombinators"
:selected="state.paramValue.combinator"
:class="$style.combinator"
@combinatorChange="onCombinatorChange"
@combinator-change="onCombinatorChange"
/>
<Condition

View File

@ -60,7 +60,7 @@ function onGroupSelect(group: string) {
size="small"
:model-value="selected"
:disabled="readOnly"
@update:modelValue="onOperatorChange"
@update:model-value="onOperatorChange"
@visible-change="onSelectVisibleChange"
@mouseenter="shouldRenderItems = true"
>

View File

@ -62,7 +62,7 @@
:path="getPropertyPath(property.name, index)"
:hide-delete="true"
:is-read-only="isReadOnly"
@valueChanged="valueChanged"
@value-changed="valueChanged"
/>
</Suspense>
</div>
@ -87,7 +87,7 @@
:is-read-only="isReadOnly"
class="parameter-item"
:hide-delete="true"
@valueChanged="valueChanged"
@value-changed="valueChanged"
/>
</div>
</div>
@ -107,7 +107,7 @@
:placeholder="getPlaceholderText"
size="small"
filterable
@update:modelValue="optionSelected"
@update:model-value="optionSelected"
>
<n8n-option
v-for="item in parameterOptions"

View File

@ -15,7 +15,7 @@
type="textarea"
:rows="5"
:placeholder="$locale.baseText('importCurlModal.input.placeholder')"
@update:modelValue="onInput"
@update:model-value="onInput"
@focus="$event.target.select()"
/>
</n8n-input-label>

View File

@ -78,8 +78,8 @@ const resolvedSegments = computed<Resolved[]>(() => {
segment.kind === 'plaintext'
? segment.plaintext.length
: segment.resolved
? (segment.resolved as string | number | boolean).toString().length
: 0;
? (segment.resolved as string | number | boolean).toString().length
: 0;
segment.to = cursor;
return segment;
})

View File

@ -20,7 +20,7 @@
:model-value="modelValue"
size="xlarge"
:maxlength="64"
@update:modelValue="onNameEdit"
@update:model-value="onNameEdit"
@change="disableNameEdit"
/>
</div>

View File

@ -7,7 +7,7 @@
:maxlength="maxLength"
:autofocus="true"
:event-bus="inputBus"
@update:modelValue="onInput"
@update:model-value="onInput"
@esc="onEscape"
@blur="onBlur"
@enter="submit"

View File

@ -16,12 +16,12 @@
:is-pane-active="isPaneActive"
pane-type="input"
data-test-id="ndv-input-panel"
@activatePane="activatePane"
@itemHover="$emit('itemHover', $event)"
@linkRun="onLinkRun"
@unlinkRun="onUnlinkRun"
@runChange="onRunIndexChange"
@tableMounted="$emit('tableMounted', $event)"
@activate-pane="activatePane"
@item-hover="$emit('itemHover', $event)"
@link-run="onLinkRun"
@unlink-run="onUnlinkRun"
@run-change="onRunIndexChange"
@table-mounted="$emit('tableMounted', $event)"
@search="$emit('search', $event)"
>
<template #header>
@ -35,7 +35,7 @@
:placeholder="$locale.baseText('ndv.input.parentNodes')"
filterable
data-test-id="ndv-input-select"
@update:modelValue="onInputNodeChange"
@update:model-value="onInputNodeChange"
>
<template #prepend>
<span :class="$style.title">{{ $locale.baseText('ndv.input') }}</span>
@ -62,7 +62,7 @@
v-if="isActiveNodeConfig && !readOnly"
:options="inputModes"
:model-value="inputMode"
@update:modelValue="onInputModeChange"
@update:model-value="onInputModeChange"
/>
</div>
</template>
@ -77,7 +77,7 @@
:model-value="mappedNode"
size="small"
teleported
@update:modelValue="onMappedNodeSelected"
@update:model-value="onMappedNodeSelected"
@click.stop
>
<template #prepend>{{ $locale.baseText('ndv.input.previousNode') }}</template>

View File

@ -186,7 +186,7 @@ export default defineComponent({
return this.showInviteUrls
? this.usersStore.allUsers.filter((user) =>
this.showInviteUrls!.find((invite) => invite.user.id === user.id),
)
)
: [];
},
isAdvancedPermissionsEnabled(): boolean {

View File

@ -162,11 +162,11 @@ export default defineComponent({
? {
name: VIEWS.EXECUTION_PREVIEW,
params: { name: routeWorkflowId, executionId: this.activeExecution.id },
}
}
: {
name: VIEWS.EXECUTION_HOME,
params: { name: routeWorkflowId },
};
};
if (openInNewTab) {
const { href } = this.$router.resolve(routeToNavigateTo);

View File

@ -7,7 +7,7 @@
[$style.menuCollapsed]: mainSidebarCollapsed,
}"
>
<n8n-radio-buttons :model-value="activeTab" :options="items" @update:modelValue="onSelect" />
<n8n-radio-buttons :model-value="activeTab" :options="items" @update:model-value="onSelect" />
</div>
</template>

View File

@ -217,7 +217,7 @@ export default defineComponent({
tooltip: {
content: this.$locale.baseText('mainSidebar.workflows.readOnlyEnv.tooltip'),
},
}
}
: undefined,
};

View File

@ -45,7 +45,7 @@
:path="getPath(index)"
:hide-delete="hideDelete"
:is-read-only="isReadOnly"
@valueChanged="valueChanged"
@value-changed="valueChanged"
/>
</div>
<div v-else>

View File

@ -3,7 +3,7 @@
<NDVFloatingNodes
v-if="activeNode"
:root-node="activeNode"
@switchSelectedNode="onSwitchSelectedNode"
@switch-selected-node="onSwitchSelectedNode"
/>
<div v-if="!hideInputAndOutput" :class="$style.inputPanel" :style="inputPanelStyles">
<slot name="input"></slot>

View File

@ -137,8 +137,8 @@ function nodeTypeSelected(nodeTypes: string[]) {
<Suspense>
<NodeCreator
:active="createNodeActive"
@nodeTypeSelected="nodeTypeSelected"
@closeNodeCreator="closeNodeCreator"
@node-type-selected="nodeTypeSelected"
@close-node-creator="closeNodeCreator"
/>
</Suspense>
</div>

View File

@ -64,7 +64,7 @@ function onSelected(item: INodeCreateElement) {
icon: item.properties.icon,
iconType: 'icon',
},
}
}
: {}),
...(item.properties.panelClass ? { panelClass: item.properties.panelClass } : {}),
rootView: activeViewStack.value.rootView,
@ -218,8 +218,8 @@ registerKeyHook('MainViewArrowLeft', {
:root-view="activeViewStack.rootView"
show-icon
show-request
@addWebhookNode="selectNodeType([WEBHOOK_NODE_TYPE])"
@addHttpNode="selectNodeType([HTTP_REQUEST_NODE_TYPE])"
@add-webhook-node="selectNodeType([WEBHOOK_NODE_TYPE])"
@add-http-node="selectNodeType([HTTP_REQUEST_NODE_TYPE])"
/>
</template>
</ItemsRenderer>

View File

@ -13,7 +13,7 @@
@mousedown="onMouseDown"
@mouseup="onMouseUp"
>
<NodesListPanel @nodeTypeSelected="onNodeTypeSelected" />
<NodesListPanel @node-type-selected="onNodeTypeSelected" />
</div>
</SlideTransition>
</div>

View File

@ -33,7 +33,7 @@ const searchPlaceholder = computed(() =>
isActionsMode.value
? i18n.baseText('nodeCreator.actionsCategory.searchActions', {
interpolate: { node: activeViewStack.value.title as string },
})
})
: i18n.baseText('nodeCreator.searchBar.searchNodes'),
);
@ -118,7 +118,7 @@ function onBackButton() {
<transition
v-if="viewStacks.length > 0"
:name="`panel-slide-${activeViewStack.transitionDirection}`"
@afterLeave="onTransitionEnd"
@after-leave="onTransitionEnd"
>
<aside
:key="`${activeViewStack.uuid}`"
@ -169,7 +169,7 @@ function onBackButton() {
: $locale.baseText('nodeCreator.searchBar.searchNodes')
"
:model-value="activeViewStack.search"
@update:modelValue="onSearch"
@update:model-value="onSearch"
/>
<div :class="$style.renderedItems">
<n8n-notice

View File

@ -116,7 +116,7 @@ function getAiNodesBySubcategory(nodes: INodeTypeDescription[], subcategory: str
type: 'file',
icon: 'openai',
fileBuffer: '/static/open-ai.svg',
}
}
: undefined,
},
}))

View File

@ -32,7 +32,7 @@
:model-value="getSelectedId(credentialTypeDescription.name)"
:placeholder="getSelectPlaceholder(credentialTypeDescription.name, issues)"
size="small"
@update:modelValue="
@update:model-value="
(value) =>
onCredentialSelected(
credentialTypeDescription.name,
@ -369,7 +369,7 @@ export default defineComponent({
return issues.length && this.getSelectedName(type)
? this.$locale.baseText('nodeCredentials.selectedCredentialUnavailable', {
interpolate: { name: this.getSelectedName(type) },
})
})
: this.$locale.baseText('nodeCredentials.selectCredential');
},
credentialInputWrapperStyle(credentialType: string) {

View File

@ -44,8 +44,8 @@
:is-draggable="!isTriggerNode"
:has-double-width="activeNodeType?.parameterPane === 'wide'"
:node-type="activeNodeType"
@switchSelectedNode="onSwitchSelectedNode"
@openConnectionNodeCreator="onOpenConnectionNodeCreator"
@switch-selected-node="onSwitchSelectedNode"
@open-connection-node-creator="onOpenConnectionNodeCreator"
@close="close"
@init="onPanelsInit"
@dragstart="onDragStart"
@ -70,15 +70,15 @@
:read-only="readOnly || hasForeignCredential"
:is-production-execution-preview="isProductionExecutionPreview"
:is-pane-active="isInputPaneActive"
@activatePane="activateInputPane"
@linkRun="onLinkRunToInput"
@unlinkRun="() => onUnlinkRun('input')"
@runChange="onRunInputIndexChange"
@openSettings="openSettings"
@changeInputNode="onInputNodeChange"
@activate-pane="activateInputPane"
@link-run="onLinkRunToInput"
@unlink-run="() => onUnlinkRun('input')"
@run-change="onRunInputIndexChange"
@open-settings="openSettings"
@change-input-node="onInputNodeChange"
@execute="onNodeExecute"
@tableMounted="onInputTableMounted"
@itemHover="onInputItemHover"
@table-mounted="onInputTableMounted"
@item-hover="onInputItemHover"
@search="onSearch"
/>
</template>
@ -93,13 +93,13 @@
:block-u-i="blockUi && isTriggerNode && !isExecutableTriggerNode"
:is-production-execution-preview="isProductionExecutionPreview"
:is-pane-active="isOutputPaneActive"
@activatePane="activateOutputPane"
@linkRun="onLinkRunToOutput"
@unlinkRun="() => onUnlinkRun('output')"
@runChange="onRunOutputIndexChange"
@openSettings="openSettings"
@tableMounted="onOutputTableMounted"
@itemHover="onOutputItemHover"
@activate-pane="activateOutputPane"
@link-run="onLinkRunToOutput"
@unlink-run="() => onUnlinkRun('output')"
@run-change="onRunOutputIndexChange"
@open-settings="openSettings"
@table-mounted="onOutputTableMounted"
@item-hover="onOutputItemHover"
@search="onSearch"
/>
</template>
@ -113,13 +113,13 @@
:read-only="readOnly"
:block-u-i="blockUi && showTriggerPanel"
:executable="!readOnly"
@valueChanged="valueChanged"
@value-changed="valueChanged"
@execute="onNodeExecute"
@stopExecution="onStopExecution"
@redrawRequired="redrawRequired = true"
@stop-execution="onStopExecution"
@redraw-required="redrawRequired = true"
@activate="onWorkflowActivate"
@switchSelectedNode="onSwitchSelectedNode"
@openConnectionNodeCreator="onOpenConnectionNodeCreator"
@switch-selected-node="onSwitchSelectedNode"
@open-connection-node-creator="onOpenConnectionNodeCreator"
/>
<a
v-if="featureRequestUrl"

View File

@ -14,7 +14,7 @@
:model-value="node.name"
:node-type="nodeType"
:read-only="isReadOnly"
@update:modelValue="nameChanged"
@update:model-value="nameChanged"
></NodeTitle>
<div v-if="isExecutable">
<NodeExecuteButton
@ -25,7 +25,7 @@
size="small"
telemetry-source="parameters"
@execute="onNodeExecute"
@stopExecution="onStopExecution"
@stop-execution="onStopExecution"
/>
</div>
</div>
@ -98,17 +98,17 @@
:is-read-only="isReadOnly"
:hidden-issues-inputs="hiddenIssuesInputs"
path="parameters"
@valueChanged="valueChanged"
@value-changed="valueChanged"
@activate="onWorkflowActivate"
@parameterBlur="onParameterBlur"
@parameter-blur="onParameterBlur"
>
<NodeCredentials
:node="node"
:readonly="isReadOnly"
:show-all="true"
:hide-issues="hiddenIssuesInputs.includes('credentials')"
@credentialSelected="credentialSelected"
@valueChanged="valueChanged"
@credential-selected="credentialSelected"
@value-changed="valueChanged"
@blur="onParameterBlur"
/>
</ParameterInputList>
@ -139,8 +139,8 @@
:is-read-only="isReadOnly"
:hidden-issues-inputs="hiddenIssuesInputs"
path="parameters"
@valueChanged="valueChanged"
@parameterBlur="onParameterBlur"
@value-changed="valueChanged"
@parameter-blur="onParameterBlur"
/>
<ParameterInputList
:parameters="nodeSettings"
@ -149,8 +149,8 @@
:is-read-only="isReadOnly"
:hidden-issues-inputs="hiddenIssuesInputs"
path=""
@valueChanged="valueChanged"
@parameterBlur="onParameterBlur"
@value-changed="valueChanged"
@parameter-blur="onParameterBlur"
/>
<div class="node-version" data-test-id="node-version">
{{
@ -169,8 +169,8 @@
v-if="node"
ref="subConnections"
:root-node="node"
@switchSelectedNode="onSwitchSelectedNode"
@openConnectionNodeCreator="onOpenConnectionNodeCreator"
@switch-selected-node="onSwitchSelectedNode"
@open-connection-node-creator="onOpenConnectionNodeCreator"
/>
<n8n-block-ui :show="blockUI" />
</div>
@ -376,7 +376,7 @@ export default defineComponent({
const credential = this.usedCredentials
? Object.values(this.usedCredentials).find((credential) => {
return credential.id === this.foreignCredentials[0];
})
})
: undefined;
return this.credentialsStore.getCredentialOwnerName(credential);

View File

@ -2,8 +2,8 @@
<n8n-tabs
:options="options"
:model-value="modelValue"
@update:modelValue="onTabSelect"
@tooltipClick="onTooltipClick"
@update:model-value="onTabSelect"
@tooltip-click="onTooltipClick"
/>
</template>

View File

@ -15,12 +15,12 @@
:is-pane-active="isPaneActive"
pane-type="output"
:data-output-type="outputMode"
@activatePane="activatePane"
@runChange="onRunIndexChange"
@linkRun="onLinkRun"
@unlinkRun="onUnlinkRun"
@tableMounted="$emit('tableMounted', $event)"
@itemHover="$emit('itemHover', $event)"
@activate-pane="activatePane"
@run-change="onRunIndexChange"
@link-run="onLinkRun"
@unlink-run="onUnlinkRun"
@table-mounted="$emit('tableMounted', $event)"
@item-hover="$emit('itemHover', $event)"
@search="$emit('search', $event)"
>
<template #header>
@ -29,7 +29,7 @@
<n8n-radio-buttons
v-model="outputMode"
:options="outputTypes"
@update:modelValue="onUpdateOutputMode"
@update:model-value="onUpdateOutputMode"
/>
</template>
<span v-else :class="$style.title">

View File

@ -14,7 +14,7 @@
:event-source="eventSource || 'ndv'"
:is-read-only="isReadOnly"
:redact-values="shouldRedactValue"
@closeDialog="closeExpressionEditDialog"
@close-dialog="closeExpressionEditDialog"
@update:model-value="expressionUpdated"
></ExpressionEdit>
<div class="parameter-input ignore-key-press" :style="parameterInputWrapperStyle">
@ -35,7 +35,7 @@
:path="path"
:event-bus="eventBus"
@update:model-value="valueChanged"
@modalOpenerClick="openExpressionEditorModal"
@modal-opener-click="openExpressionEditorModal"
@focus="setFocus"
@blur="onBlur"
@drop="onResourceLocatorDrop"
@ -53,7 +53,7 @@
:class="{ 'ph-no-capture': shouldRedactValue }"
:event-bus="eventBus"
@update:model-value="expressionUpdated"
@modalOpenerClick="openExpressionEditorModal"
@modal-opener-click="openExpressionEditorModal"
@focus="setFocus"
@blur="onBlur"
/>
@ -128,7 +128,7 @@
:parameter="parameter"
:path="path"
:is-read-only="isReadOnly"
@closeDialog="closeTextEditDialog"
@close-dialog="closeTextEditDialog"
@update:model-value="expressionUpdated"
></TextEdit>
@ -360,10 +360,10 @@
:display-value="displayValue"
:is-read-only="isReadOnly"
:display-title="displayTitle"
@credentialSelected="credentialSelected"
@credential-selected="credentialSelected"
@update:model-value="valueChanged"
@setFocus="setFocus"
@onBlur="onBlur"
@set-focus="setFocus"
@on-blur="onBlur"
>
<template #issues-and-options>
<ParameterIssues :issues="getIssues" />

View File

@ -15,7 +15,7 @@
:is-read-only="false"
:show-options="true"
:is-value-expression="isValueExpression"
@update:modelValue="optionSelected"
@update:model-value="optionSelected"
@menu-expanded="onMenuExpanded"
/>
</template>
@ -34,7 +34,7 @@
:event-bus="eventBus"
@focus="onFocus"
@blur="onBlur"
@textInput="valueChanged"
@text-input="valueChanged"
@update="valueChanged"
/>
<div v-if="showRequiredErrors" :class="$style.errors">

View File

@ -17,7 +17,7 @@
:is-read-only="isReadOnly"
:show-options="displayOptions"
:show-expression-selector="showExpressionSelector"
@update:modelValue="optionSelected"
@update:model-value="optionSelected"
@menu-expanded="onMenuExpanded"
/>
</template>
@ -47,7 +47,7 @@
:event-bus="eventBus"
input-size="small"
@update="valueChanged"
@textInput="onTextInput"
@text-input="onTextInput"
@focus="onFocus"
@blur="onBlur"
@drop="onDrop"
@ -70,7 +70,7 @@
:is-read-only="isReadOnly"
:show-options="displayOptions"
:show-expression-selector="showExpressionSelector"
@update:modelValue="optionSelected"
@update:model-value="optionSelected"
@menu-expanded="onMenuExpanded"
/>
</div>

View File

@ -18,14 +18,14 @@
:node-values="nodeValues"
:path="getPath(parameter.name)"
:is-read-only="isReadOnly"
@valueChanged="valueChanged"
@value-changed="valueChanged"
/>
</div>
<ImportParameter
v-else-if="parameter.type === 'curlImport'"
:is-read-only="isReadOnly"
@valueChanged="valueChanged"
@value-changed="valueChanged"
/>
<n8n-notice
@ -74,7 +74,7 @@
:node-values="nodeValues"
:path="getPath(parameter.name)"
:is-read-only="isReadOnly"
@valueChanged="valueChanged"
@value-changed="valueChanged"
/>
<FixedCollectionParameter
v-else-if="parameter.type === 'fixedCollection'"
@ -83,7 +83,7 @@
:node-values="nodeValues"
:path="getPath(parameter.name)"
:is-read-only="isReadOnly"
@valueChanged="valueChanged"
@value-changed="valueChanged"
/>
</template>
<template #fallback>
@ -106,7 +106,7 @@
:dependent-parameters-values="getDependentParametersValues(parameter)"
input-size="small"
label-size="small"
@valueChanged="valueChanged"
@value-changed="valueChanged"
/>
<FilterConditions
v-else-if="parameter.type === 'filter'"
@ -115,7 +115,7 @@
:path="getPath(parameter.name)"
:node="node"
:read-only="isReadOnly"
@valueChanged="valueChanged"
@value-changed="valueChanged"
/>
<AssignmentCollection
v-else-if="parameter.type === 'assignmentCollection'"
@ -124,7 +124,7 @@
:path="getPath(parameter.name)"
:node="node"
:is-read-only="isReadOnly"
@valueChanged="valueChanged"
@value-changed="valueChanged"
/>
<div
v-else-if="displayNodeParameter(parameter) && credentialsParameterIndex !== index"

View File

@ -25,7 +25,7 @@
@focus="onFocus"
@blur="onBlur"
@drop="onDrop"
@textInput="onTextInput"
@text-input="onTextInput"
@update="onValueChanged"
/>
<div v-if="!hideHint && (expressionOutput || parameterHint)" :class="$style.hint">

View File

@ -33,7 +33,7 @@
{ label: $locale.baseText('parameterInput.fixed'), value: 'fixed' },
{ label: $locale.baseText('parameterInput.expression'), value: 'expression' },
]"
@update:modelValue="onViewSelected"
@update:model-value="onViewSelected"
/>
</div>
</div>

View File

@ -18,9 +18,9 @@
:error-view="currentQueryError"
:width="width"
:event-bus="eventBus"
@update:modelValue="onListItemSelected"
@update:model-value="onListItemSelected"
@filter="onSearchFilter"
@loadMore="loadResourcesDebounced"
@load-more="loadResourcesDebounced"
>
<template #error>
<div :class="$style.error" data-test-id="rlc-error-container">
@ -52,7 +52,7 @@
:disabled="isReadOnly"
:placeholder="$locale.baseText('resourceLocator.modeSelector.placeholder')"
data-test-id="rlc-mode-selector"
@update:modelValue="onModeSelected"
@update:model-value="onModeSelected"
>
<n8n-option
v-for="mode in parameter.modes"
@ -94,8 +94,8 @@
:model-value="expressionDisplayValue"
:path="path"
:rows="3"
@update:modelValue="onInputChange"
@modalOpenerClick="$emit('modalOpenerClick')"
@update:model-value="onInputChange"
@modal-opener-click="$emit('modalOpenerClick')"
/>
<n8n-input
v-else
@ -109,7 +109,7 @@
:placeholder="inputPlaceholder"
type="text"
data-test-id="rlc-input"
@update:modelValue="onInputChange"
@update:model-value="onInputChange"
@focus="onInputFocus"
@blur="onInputBlur"
>

View File

@ -17,7 +17,7 @@
:clearable="true"
:placeholder="$locale.baseText('resourceLocator.search.placeholder')"
data-test-id="rlc-search"
@update:modelValue="onFilterInput"
@update:model-value="onFilterInput"
>
<template #prefix>
<font-awesome-icon :class="$style.searchIcon" icon="search" />

View File

@ -300,7 +300,7 @@ defineExpose({
:custom-actions="parameterActions"
:loading="props.refreshInProgress"
:loading-message="fetchingFieldsLabel"
@update:modelValue="onParameterActionSelected"
@update:model-value="onParameterActionSelected"
/>
</template>
</n8n-input-label>
@ -388,7 +388,7 @@ defineExpose({
size="small"
:teleported="teleported"
:disabled="addFieldOptions.length == 0"
@update:modelValue="addField"
@update:model-value="addField"
>
<n8n-option
v-for="item in addFieldOptions"

View File

@ -115,7 +115,7 @@ defineExpose({
:model-value="selected"
:teleported="teleported"
:size="props.inputSize"
@update:modelValue="onModeChanged"
@update:model-value="onModeChanged"
>
<n8n-option
v-for="option in mappingModeOptions"

View File

@ -182,7 +182,7 @@ defineExpose({
:custom-actions="parameterActions"
:loading="props.refreshInProgress"
:loading-message="fetchingFieldsLabel"
@update:modelValue="onParameterActionSelected"
@update:model-value="onParameterActionSelected"
/>
</template>
<n8n-select
@ -191,7 +191,7 @@ defineExpose({
:size="props.inputSize"
:disabled="loading"
:teleported="teleported"
@update:modelValue="onSelectionChange"
@update:model-value="onSelectionChange"
>
<n8n-option
v-for="field in availableMatchingFields"

View File

@ -189,7 +189,7 @@ const defaultSelectedMatchingColumns = computed<string[]>(() => {
acc.push(field.id);
}
return acc;
}, [] as string[]);
}, [] as string[]);
});
const pluralFieldWord = computed<string>(() => {
@ -461,8 +461,8 @@ defineExpose({
:loading-error="state.loadingError"
:fields-to-map="state.paramValue.schema"
:teleported="teleported"
@modeChanged="onModeChanged"
@retryFetch="initFetching"
@mode-changed="onModeChanged"
@retry-fetch="initFetching"
/>
<MatchingColumnsSelect
v-if="showMatchingColumnsSelector"
@ -476,8 +476,8 @@ defineExpose({
:service-name="nodeType?.displayName || locale.baseText('generic.service')"
:teleported="teleported"
:refresh-in-progress="state.refreshInProgress"
@matchingColumnsChanged="onMatchingColumnsChanged"
@refreshFieldList="initFetching(true)"
@matching-columns-changed="onMatchingColumnsChanged"
@refresh-field-list="initFetching(true)"
/>
<n8n-text v-if="!showMappingModeSelect && state.loading" size="small">
<n8n-icon icon="sync-alt" size="xsmall" :spin="true" />
@ -502,10 +502,10 @@ defineExpose({
:loading="state.loading"
:teleported="teleported"
:refresh-in-progress="state.refreshInProgress"
@fieldValueChanged="fieldValueChanged"
@removeField="removeField"
@addField="addField"
@refreshFieldList="initFetching(true)"
@field-value-changed="fieldValueChanged"
@remove-field="removeField"
@add-field="addField"
@refresh-field-list="initFetching(true)"
/>
<n8n-notice
v-if="state.paramValue.mappingMode === 'autoMapInputData' && hasAvailableMatchingColumns"

View File

@ -56,7 +56,7 @@
:model-value="displayMode"
:options="buttons"
data-test-id="ndv-run-data-display-mode"
@update:modelValue="onDisplayModeChange"
@update:model-value="onDisplayModeChange"
/>
<n8n-icon-button
v-if="canPinData && !isReadOnlyRoute && !readOnlyEnv"
@ -116,7 +116,7 @@
size="small"
:model-value="runIndex"
teleported
@update:modelValue="onRunIndexChange"
@update:model-value="onRunIndexChange"
@click.stop
>
<template #prepend>{{ $locale.baseText('ndv.output.run') }}</template>
@ -160,7 +160,7 @@
<n8n-tabs
:model-value="currentOutputIndex"
:options="branches"
@update:modelValue="onBranchChange"
@update:model-value="onBranchChange"
/>
<RunDataSearch
v-if="showIOSearch"
@ -217,7 +217,7 @@
<div :class="[$style.editModeBody, 'ignore-key-press']">
<JsonEditor
:model-value="editMode.value"
@update:modelValue="ndvStore.setOutputPanelEditModeValue($event)"
@update:model-value="ndvStore.setOutputPanelEditModeValue($event)"
/>
</div>
<div :class="$style.editModeFooter">
@ -372,8 +372,8 @@
:has-default-hover-state="paneType === 'input' && !search"
:search="search"
@mounted="$emit('tableMounted', $event)"
@activeRowChanged="onItemHover"
@displayModeChange="onDisplayModeChange"
@active-row-changed="onItemHover"
@display-mode-change="onDisplayModeChange"
/>
</Suspense>
@ -527,7 +527,7 @@
size="mini"
:model-value="pageSize"
teleported
@update:modelValue="onPageSizeChange"
@update:model-value="onPageSizeChange"
>
<template #prepend>{{ $locale.baseText('ndv.output.pageSize') }}</template>
<n8n-option v-for="size in pageSizes" :key="size" :label="size" :value="size">
@ -986,11 +986,11 @@ export default defineComponent({
? this.$locale.baseText('ndv.search.items', {
adjustToNumber: totalItemsCount,
interpolate: { matched: itemsCount, total: totalItemsCount },
})
})
: this.$locale.baseText('ndv.output.items', {
adjustToNumber: itemsCount,
interpolate: { count: itemsCount },
});
});
let outputName = this.getOutputName(i);
if (`${outputName}` === `${i}`) {
@ -1327,12 +1327,12 @@ export default defineComponent({
return Array.isArray(this.pinnedData.data.value)
? this.pinnedData.data.value.map((value) => ({
json: value,
}))
}))
: [
{
json: this.pinnedData.data.value,
},
];
];
}
return inputData;
},

View File

@ -30,7 +30,7 @@
root-path=""
selectable-type="single"
class="json-data"
@update:selectedValue="selectedJsonPath = $event"
@update:selected-value="selectedJsonPath = $event"
>
<template #renderNodeKey="{ node }">
<TextWithHighlights

View File

@ -80,7 +80,7 @@ onUnmounted(() => {
:model-value="modelValue"
:placeholder="placeholder"
size="small"
@update:modelValue="onSearchUpdate"
@update:model-value="onSearchUpdate"
@focus="onFocus"
@blur="onBlur"
>

View File

@ -35,7 +35,7 @@
active-color="#13ce66"
inactive-color="#8899AA"
data-test-id="workflow-activate-switch"
@update:modelValue="onEnabledSwitched($event, destination.id)"
@update:model-value="onEnabledSwitched($event, destination.id)"
>
</el-switch>

View File

@ -27,7 +27,7 @@
:readonly="isTypeAbstract"
type="Credential"
data-test-id="subtitle-showing-type"
@update:modelValue="onLabelChange"
@update:model-value="onLabelChange"
/>
</div>
<div :class="$style.destinationActions">
@ -86,7 +86,7 @@
:placeholder="typeSelectPlaceholder"
data-test-id="select-destination-type"
name="name"
@update:modelValue="onTypeSelectInput"
@update:model-value="onTypeSelectInput"
>
<n8n-option
v-for="option in typeSelectOptions || []"
@ -119,7 +119,7 @@
:node-values="nodeParameters"
:is-read-only="!canManageLogStreaming"
path=""
@valueChanged="valueChanged"
@value-changed="valueChanged"
/>
</template>
<template v-else-if="isTypeSyslog">
@ -129,7 +129,7 @@
:node-values="nodeParameters"
:is-read-only="!canManageLogStreaming"
path=""
@valueChanged="valueChanged"
@value-changed="valueChanged"
/>
</template>
<template v-else-if="isTypeSentry">
@ -139,7 +139,7 @@
:node-values="nodeParameters"
:is-read-only="!canManageLogStreaming"
path=""
@valueChanged="valueChanged"
@value-changed="valueChanged"
/>
</template>
</div>

View File

@ -10,7 +10,7 @@
:model-value="group.selected"
:indeterminate="!group.selected && group.indeterminate"
:disabled="readonly"
@update:modelValue="onInput"
@update:model-value="onInput"
@change="onCheckboxChecked(group.name, $event)"
>
<strong>{{ groupLabelName(group.name) }}</strong>
@ -30,7 +30,7 @@
v-if="group.name === 'n8n.audit'"
:model-value="logStreamingStore.items[destinationId]?.destination.anonymizeAuditMessages"
:disabled="readonly"
@update:modelValue="onInput"
@update:model-value="onInput"
@change="anonymizeAuditMessagesChanged"
>
{{ $locale.baseText('settings.log-streaming.tab.events.anonymize') }}
@ -52,7 +52,7 @@
:model-value="event.selected || group.selected"
:indeterminate="event.indeterminate"
:disabled="group.selected || readonly"
@update:modelValue="onInput"
@update:model-value="onInput"
@change="onCheckboxChecked(event.name, $event)"
>
{{ event.label }}

View File

@ -252,7 +252,7 @@ async function commitAndPush() {
<n8n-checkbox
:indeterminate="selectAllIndeterminate"
:model-value="selectAll"
@update:modelValue="onToggleSelectAll"
@update:model-value="onToggleSelectAll"
>
<n8n-text bold tag="strong">
{{ i18n.baseText('settings.sourceControl.modals.push.workflowsToCommit') }}
@ -273,7 +273,7 @@ async function commitAndPush() {
<n8n-checkbox
:model-value="staged[file.file]"
:class="$style.listItemCheckbox"
@update:modelValue="setStagedStatus(file, !staged[file.file])"
@update:model-value="setStagedStatus(file, !staged[file.file])"
/>
<div>
<n8n-text v-if="file.status === 'deleted'" color="text-light">

View File

@ -40,7 +40,7 @@
@resize="onResize"
@resizeend="onResizeEnd"
@markdown-click="onMarkdownClick"
@update:modelValue="onInputChange"
@update:model-value="onInputChange"
/>
</div>
@ -257,8 +257,8 @@ export default defineComponent({
isOnboardingNote && isWelcomeVideo
? 'welcome_video'
: isOnboardingNote && link.getAttribute('href') === '/templates'
? 'templates'
: 'other';
? 'templates'
: 'other';
this.$telemetry.track('User clicked note link', { type });
}

View File

@ -67,7 +67,7 @@ function onOpenCollection({ id }: { event: Event; id: number }) {
:show-item-count="false"
:show-navigation="false"
cards-width="24%"
@openCollection="onOpenCollection"
@open-collection="onOpenCollection"
/>
</div>
</div>

View File

@ -18,7 +18,7 @@
loading-text="..."
popper-class="tags-dropdown"
data-test-id="tags-dropdown"
@update:modelValue="onTagsUpdated"
@update:model-value="onTagsUpdated"
@visible-change="onVisibleChange"
@remove-tag="onRemoveTag"
>

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