From 0e4cda5763bdb6b8214115dd03473a07e5bea493 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20Ovejero?= Date: Thu, 15 Dec 2022 14:06:00 +0100 Subject: [PATCH] refactor: Phase out TSLint in `editor-ui` (no-changelog) (#4935) * :fire: Remove `tslint.json` * :fire: Remove TSLint commands * :fire: Remove exceptions in `editor-ui` * :fire: Remove from `.npmignore` * :fire: Remove from `eslint-config` * :fire: Remove exception from `design-system` * :art: Prettify * :package: Update pnpm-lock * :fire: Remove duplicate import * :fire: Remove exemption for `no-explicit-any` * :shirt: Inline `no-explicit-any` exemptions --- .npmignore | 1 - packages/@n8n_io/eslint-config/package.json | 3 +- .../NodeCreatorNode.stories.ts | 1 - packages/editor-ui/.eslintrc.js | 1 - packages/editor-ui/package.json | 4 +- packages/editor-ui/src/Interface.ts | 15 ++-- .../src/components/BreakpointsObserver.vue | 2 +- .../CredentialEdit/CredentialEdit.vue | 2 +- .../src/components/ExpressionEdit.vue | 6 +- .../ExpressionEditorModalOutput.vue | 3 +- .../InlineExpressionEditorOutput.vue | 3 +- packages/editor-ui/src/components/Node.vue | 7 +- .../components/Node/NodeCreator/NodeItem.vue | 1 + .../editor-ui/src/components/NodeSettings.vue | 1 + .../src/components/ParameterInput.vue | 9 ++- .../editor-ui/src/components/TagsDropdown.vue | 3 +- .../TagsManager/TagsView/TagsTable.vue | 6 +- .../src/components/WorkflowSettings.vue | 15 +++- packages/editor-ui/src/mixins/debounce.ts | 4 +- packages/editor-ui/src/mixins/emitter.ts | 5 +- .../editor-ui/src/mixins/genericHelpers.ts | 3 +- packages/editor-ui/src/mixins/restApi.ts | 2 +- .../editor-ui/src/mixins/workflowHelpers.ts | 1 - packages/editor-ui/src/plugins/icons.ts | 2 +- packages/editor-ui/src/shims.d.ts | 2 - packages/editor-ui/src/stores/nodeTypes.ts | 1 - packages/editor-ui/src/stores/workflows.ts | 2 +- packages/editor-ui/src/utils/sortUtils.ts | 3 +- packages/editor-ui/src/views/NodeView.vue | 1 + .../editor-ui/src/views/SettingsUsersView.vue | 10 +-- packages/editor-ui/tslint.json | 75 ------------------- pnpm-lock.yaml | 40 ---------- 32 files changed, 69 insertions(+), 165 deletions(-) delete mode 100644 packages/editor-ui/tslint.json diff --git a/.npmignore b/.npmignore index d4691ccbea..64227343cc 100644 --- a/.npmignore +++ b/.npmignore @@ -23,7 +23,6 @@ yarn-error.log* .editorconfig .eslintrc.js tsconfig.json -tslint.json .turbo *.tsbuildinfo diff --git a/packages/@n8n_io/eslint-config/package.json b/packages/@n8n_io/eslint-config/package.json index fce1baee03..3ccc51e4b0 100644 --- a/packages/@n8n_io/eslint-config/package.json +++ b/packages/@n8n_io/eslint-config/package.json @@ -14,8 +14,7 @@ "eslint-plugin-import": "~2.26", "eslint-plugin-n8n-local-rules": "~1.0", "eslint-plugin-prettier": "~4.2", - "eslint-plugin-vue": "~7.17", - "tslint": "^6.1.3" + "eslint-plugin-vue": "~7.17" }, "scripts": { "clean": "rimraf .turbo", diff --git a/packages/design-system/src/components/N8nNodeCreatorNode/NodeCreatorNode.stories.ts b/packages/design-system/src/components/N8nNodeCreatorNode/NodeCreatorNode.stories.ts index 7991eccca4..77156838bc 100644 --- a/packages/design-system/src/components/N8nNodeCreatorNode/NodeCreatorNode.stories.ts +++ b/packages/design-system/src/components/N8nNodeCreatorNode/NodeCreatorNode.stories.ts @@ -1,4 +1,3 @@ -/* tslint:disable:variable-name */ import N8nNodeCreatorNode from './NodeCreatorNode.vue'; import { StoryFn } from '@storybook/vue'; diff --git a/packages/editor-ui/.eslintrc.js b/packages/editor-ui/.eslintrc.js index af3078e56a..242e5be707 100644 --- a/packages/editor-ui/.eslintrc.js +++ b/packages/editor-ui/.eslintrc.js @@ -28,7 +28,6 @@ module.exports = { '@typescript-eslint/naming-convention': 'off', '@typescript-eslint/no-duplicate-imports': 'off', '@typescript-eslint/no-empty-interface': 'off', - '@typescript-eslint/no-explicit-any': 'off', '@typescript-eslint/no-floating-promises': 'off', '@typescript-eslint/no-for-in-array': 'off', '@typescript-eslint/no-loop-func': 'off', diff --git a/packages/editor-ui/package.json b/packages/editor-ui/package.json index 8b135558b9..6110762564 100644 --- a/packages/editor-ui/package.json +++ b/packages/editor-ui/package.json @@ -18,8 +18,8 @@ "build": "cross-env VUE_APP_PUBLIC_PATH=\"/{{BASE_PATH}}/\" NODE_OPTIONS=\"--max-old-space-size=8192\" vite build", "typecheck": "vue-tsc --emitDeclarationOnly", "dev": "pnpm serve", - "lint": "tslint -p tsconfig.json -c tslint.json && eslint --ext .js,.ts,.vue src", - "lintfix": "tslint --fix -p tsconfig.json -c tslint.json && eslint --ext .js,.ts,.vue src --fix", + "lint": "eslint --ext .js,.ts,.vue src", + "lintfix": "eslint --ext .js,.ts,.vue src --fix", "format": "prettier --write . --ignore-path ../../.prettierignore", "serve": "cross-env VUE_APP_URL_BASE_API=http://localhost:5678/ vite --host 0.0.0.0 --port 8080 dev", "test": "vitest run", diff --git a/packages/editor-ui/src/Interface.ts b/packages/editor-ui/src/Interface.ts index 1abeb6d1fb..2f0cb3f740 100644 --- a/packages/editor-ui/src/Interface.ts +++ b/packages/editor-ui/src/Interface.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import { IMenuItem } from 'n8n-design-system'; import { jsPlumbInstance, @@ -75,19 +76,19 @@ declare module 'jsplumb' { }; }; - // bind(event: string, (connection: Connection): void;): void; // tslint:disable-line:no-any + // bind(event: string, (connection: Connection): void;): void; bind(event: string, callback: Function): void; removeOverlay(name: string): void; removeOverlays(): void; - setParameter(name: string, value: any): void; // tslint:disable-line:no-any + setParameter(name: string, value: any): void; setPaintStyle(arg0: PaintStyle): void; - addOverlay(arg0: any[]): void; // tslint:disable-line:no-any - setConnector(arg0: any[]): void; // tslint:disable-line:no-any + addOverlay(arg0: any[]): void; + setConnector(arg0: any[]): void; getUuids(): [string, string]; } interface Endpoint { - endpoint: any; // tslint:disable-line:no-any + endpoint: any; elementId: string; __meta?: { nodeName: string; @@ -96,7 +97,7 @@ declare module 'jsplumb' { totalEndpoints: number; }; getUuid(): string; - getOverlay(name: string): any; // tslint:disable-line:no-any + getOverlay(name: string): any; repaint(params?: object): void; } @@ -219,7 +220,7 @@ export interface IRestApi { firstId?: string | number, ): Promise; stopCurrentExecution(executionId: string): Promise; - makeRestApiRequest(method: string, endpoint: string, data?: any): Promise; // tslint:disable-line:no-any + makeRestApiRequest(method: string, endpoint: string, data?: any): Promise; getCredentialTranslation(credentialType: string): Promise; removeTestWebhook(workflowId: string): Promise; runWorkflow(runData: IStartRunData): Promise; diff --git a/packages/editor-ui/src/components/BreakpointsObserver.vue b/packages/editor-ui/src/components/BreakpointsObserver.vue index 50c1e4e2b7..9912664368 100644 --- a/packages/editor-ui/src/components/BreakpointsObserver.vue +++ b/packages/editor-ui/src/components/BreakpointsObserver.vue @@ -62,8 +62,8 @@ export default mixins(genericHelpers, debounceHelper).extend({ return 'SM'; }, + // eslint-disable-next-line @typescript-eslint/no-explicit-any value(): any | undefined { - // tslint:disable-line:no-any if (this.$props.valueXS !== undefined && this.$data.width < BREAKPOINT_SM) { return this.$props.valueXS; } diff --git a/packages/editor-ui/src/components/CredentialEdit/CredentialEdit.vue b/packages/editor-ui/src/components/CredentialEdit/CredentialEdit.vue index 3bc9a2b643..b29ce600b1 100644 --- a/packages/editor-ui/src/components/CredentialEdit/CredentialEdit.vue +++ b/packages/editor-ui/src/components/CredentialEdit/CredentialEdit.vue @@ -601,8 +601,8 @@ export default mixins(showMessage, nodeHelpers).extend({ Vue.set(this.credentialData, 'sharedWith', sharees); this.hasUnsavedChanges = true; }, + // eslint-disable-next-line @typescript-eslint/no-explicit-any onDataChange({ name, value }: { name: string; value: any }) { - // tslint:disable-line:no-any this.hasUnsavedChanges = true; const { oauthTokenData, ...credData } = this.credentialData; diff --git a/packages/editor-ui/src/components/ExpressionEdit.vue b/packages/editor-ui/src/components/ExpressionEdit.vue index 16dcb9fc1e..6983487f0e 100644 --- a/packages/editor-ui/src/components/ExpressionEdit.vue +++ b/packages/editor-ui/src/components/ExpressionEdit.vue @@ -139,7 +139,8 @@ export default mixins(externalHooks, genericHelpers, debounceHelper).extend({ }, itemSelected(eventData: IVariableItemSelected) { - (this.$refs.inputFieldExpression as any).itemSelected(eventData); // tslint:disable-line:no-any + // eslint-disable-next-line @typescript-eslint/no-explicit-any + (this.$refs.inputFieldExpression as any).itemSelected(eventData); this.$externalHooks().run('expressionEdit.itemSelected', { parameter: this.parameter, value: this.value, @@ -215,8 +216,9 @@ export default mixins(externalHooks, genericHelpers, debounceHelper).extend({ this.latestValue = this.value; const resolvedExpressionValue = + // eslint-disable-next-line @typescript-eslint/no-explicit-any (this.$refs.expressionResult && (this.$refs.expressionResult as any).getValue()) || - undefined; // tslint:disable-line:no-any + undefined; this.$externalHooks().run('expressionEdit.dialogVisibleChanged', { dialogVisible: newValue, parameter: this.parameter, diff --git a/packages/editor-ui/src/components/ExpressionEditorModal/ExpressionEditorModalOutput.vue b/packages/editor-ui/src/components/ExpressionEditorModal/ExpressionEditorModalOutput.vue index b6545b2bda..a773769b1b 100644 --- a/packages/editor-ui/src/components/ExpressionEditorModal/ExpressionEditorModalOutput.vue +++ b/packages/editor-ui/src/components/ExpressionEditorModal/ExpressionEditorModalOutput.vue @@ -70,7 +70,8 @@ export default Vue.extend({ cursor += segment.kind === 'plaintext' ? segment.plaintext.length - : (segment.resolved as any).toString().length; + : // eslint-disable-next-line @typescript-eslint/no-explicit-any + (segment.resolved as any).toString().length; segment.to = cursor; diff --git a/packages/editor-ui/src/components/InlineExpressionEditor/InlineExpressionEditorOutput.vue b/packages/editor-ui/src/components/InlineExpressionEditor/InlineExpressionEditorOutput.vue index bf5c111494..5f855591aa 100644 --- a/packages/editor-ui/src/components/InlineExpressionEditor/InlineExpressionEditorOutput.vue +++ b/packages/editor-ui/src/components/InlineExpressionEditor/InlineExpressionEditorOutput.vue @@ -67,7 +67,8 @@ export default Vue.extend({ cursor += segment.kind === 'plaintext' ? segment.plaintext.length - : (segment.resolved as any).toString().length; + : // eslint-disable-next-line @typescript-eslint/no-explicit-any + (segment.resolved as any).toString().length; segment.to = cursor; return segment; }) diff --git a/packages/editor-ui/src/components/Node.vue b/packages/editor-ui/src/components/Node.vue index 8323857011..cb8f880f4d 100644 --- a/packages/editor-ui/src/components/Node.vue +++ b/packages/editor-ui/src/components/Node.vue @@ -87,7 +87,12 @@
-
+
(() => ({ const isCommunityNode = computed(() => isCommunityPackageName(props.nodeType.name)); +// eslint-disable-next-line @typescript-eslint/no-explicit-any const displayName = computed(() => { const displayName = props.nodeType.displayName.trimEnd(); diff --git a/packages/editor-ui/src/components/NodeSettings.vue b/packages/editor-ui/src/components/NodeSettings.vue index fd066aeb63..b6a2789029 100644 --- a/packages/editor-ui/src/components/NodeSettings.vue +++ b/packages/editor-ui/src/components/NodeSettings.vue @@ -428,6 +428,7 @@ export default mixins(externalHooks, nodeHelpers).extend({ try { parameters = JSON.parse(parameters) as { + // eslint-disable-next-line @typescript-eslint/no-explicit-any [key: string]: any; }; diff --git a/packages/editor-ui/src/components/ParameterInput.vue b/packages/editor-ui/src/components/ParameterInput.vue index da565e27a7..2d9076a2e3 100644 --- a/packages/editor-ui/src/components/ParameterInput.vue +++ b/packages/editor-ui/src/components/ParameterInput.vue @@ -444,14 +444,16 @@ export default mixins( shortcuts: [ { text: 'Today', // TODO - // tslint:disable-next-line:no-any + + // eslint-disable-next-line @typescript-eslint/no-explicit-any onClick(picker: any) { picker.$emit('pick', new Date()); }, }, { text: 'Yesterday', // TODO - // tslint:disable-next-line:no-any + + // eslint-disable-next-line @typescript-eslint/no-explicit-any onClick(picker: any) { const date = new Date(); date.setTime(date.getTime() - 3600 * 1000 * 24); @@ -460,7 +462,8 @@ export default mixins( }, { text: 'A week ago', // TODO - // tslint:disable-next-line:no-any + + // eslint-disable-next-line @typescript-eslint/no-explicit-any onClick(picker: any) { const date = new Date(); date.setTime(date.getTime() - 3600 * 1000 * 24 * 7); diff --git a/packages/editor-ui/src/components/TagsDropdown.vue b/packages/editor-ui/src/components/TagsDropdown.vue index 44908094fa..936a4a16f2 100644 --- a/packages/editor-ui/src/components/TagsDropdown.vue +++ b/packages/editor-ui/src/components/TagsDropdown.vue @@ -188,7 +188,8 @@ export default mixins(showMessage).extend({ focusOnTag(tagId: string) { const tagOptions = (this.$refs.tag as Vue[]) || []; if (tagOptions && tagOptions.length) { - const added = tagOptions.find((ref: any) => ref.value === tagId); // tslint:disable-line:no-any + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const added = tagOptions.find((ref: any) => ref.value === tagId); } }, focusOnInput() { diff --git a/packages/editor-ui/src/components/TagsManager/TagsView/TagsTable.vue b/packages/editor-ui/src/components/TagsManager/TagsView/TagsTable.vue index 7b663d630e..3c6cf43faf 100644 --- a/packages/editor-ui/src/components/TagsManager/TagsView/TagsTable.vue +++ b/packages/editor-ui/src/components/TagsManager/TagsView/TagsTable.vue @@ -171,7 +171,8 @@ export default Vue.extend({ focusOnInput(): void { setTimeout(() => { - const input = this.$refs.nameInput as any; // tslint:disable-line:no-any + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const input = this.$refs.nameInput as any; if (input && input.focus) { input.focus(); } @@ -180,7 +181,8 @@ export default Vue.extend({ focusOnDelete(): void { setTimeout(() => { - const input = this.$refs.deleteHiddenInput as any; // tslint:disable-line:no-any + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const input = this.$refs.deleteHiddenInput as any; if (input && input.focus) { input.focus(); } diff --git a/packages/editor-ui/src/components/WorkflowSettings.vue b/packages/editor-ui/src/components/WorkflowSettings.vue index c22b6fb484..856c478117 100644 --- a/packages/editor-ui/src/components/WorkflowSettings.vue +++ b/packages/editor-ui/src/components/WorkflowSettings.vue @@ -259,7 +259,10 @@
-
+
{{ $locale.baseText('workflowSettings.timeoutAfter') + ':' }} @@ -334,7 +337,11 @@ import { WorkflowCallerPolicyDefaultOption, } from '@/Interface'; import Modal from './Modal.vue'; -import {EnterpriseEditionFeature, PLACEHOLDER_EMPTY_WORKFLOW_ID, WORKFLOW_SETTINGS_MODAL_KEY} from '../constants'; +import { + EnterpriseEditionFeature, + PLACEHOLDER_EMPTY_WORKFLOW_ID, + WORKFLOW_SETTINGS_MODAL_KEY, +} from '../constants'; import mixins from 'vue-typed-mixins'; @@ -409,7 +416,9 @@ export default mixins(externalHooks, genericHelpers, restApi, showMessage).exten return this.workflowsStore.workflowId; }, isWorkflowSharingEnabled(): boolean { - return this.settingsStore.isEnterpriseFeatureEnabled(EnterpriseEditionFeature.WorkflowSharing); + return this.settingsStore.isEnterpriseFeatureEnabled( + EnterpriseEditionFeature.WorkflowSharing, + ); }, }, async mounted() { diff --git a/packages/editor-ui/src/mixins/debounce.ts b/packages/editor-ui/src/mixins/debounce.ts index 619e857e80..08b2d6f734 100644 --- a/packages/editor-ui/src/mixins/debounce.ts +++ b/packages/editor-ui/src/mixins/debounce.ts @@ -4,11 +4,11 @@ import Vue from 'vue'; export const debounceHelper = Vue.extend({ data() { return { - debouncedFunctions: [] as any[], // tslint:disable-line:no-any + debouncedFunctions: [] as any[], }; }, methods: { - // tslint:disable-next-line:no-any + // eslint-disable-next-line @typescript-eslint/no-explicit-any async callDebounced(...inputParameters: any[]): Promise { const functionName = inputParameters.shift() as string; const { trailing, debounceTime } = inputParameters.shift(); diff --git a/packages/editor-ui/src/mixins/emitter.ts b/packages/editor-ui/src/mixins/emitter.ts index 984a0a84f1..ab645d6e10 100644 --- a/packages/editor-ui/src/mixins/emitter.ts +++ b/packages/editor-ui/src/mixins/emitter.ts @@ -1,6 +1,6 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import Vue from 'vue'; -// tslint:disable-next-line:no-any function broadcast(componentName: string, eventName: string, params: any) { // @ts-ignore (this as Vue).$children.forEach((child) => { @@ -19,7 +19,6 @@ function broadcast(componentName: string, eventName: string, params: any) { export default Vue.extend({ methods: { - // tslint:disable-next-line:no-any $dispatch(componentName: string, eventName: string, params: any) { let parent = this.$parent || this.$root; let name = parent.$options.name; @@ -37,7 +36,7 @@ export default Vue.extend({ parent.$emit.apply(parent, [eventName].concat(params)); } }, - // tslint:disable-next-line:no-any + $broadcast(componentName: string, eventName: string, params: any) { broadcast.call(this, componentName, eventName, params); }, diff --git a/packages/editor-ui/src/mixins/genericHelpers.ts b/packages/editor-ui/src/mixins/genericHelpers.ts index 4c1c0ccff4..52e057f962 100644 --- a/packages/editor-ui/src/mixins/genericHelpers.ts +++ b/packages/editor-ui/src/mixins/genericHelpers.ts @@ -6,7 +6,8 @@ import mixins from 'vue-typed-mixins'; export const genericHelpers = mixins(showMessage).extend({ data() { return { - loadingService: null as any | null, // tslint:disable-line:no-any + // eslint-disable-next-line @typescript-eslint/no-explicit-any + loadingService: null as any | null, }; }, computed: { diff --git a/packages/editor-ui/src/mixins/restApi.ts b/packages/editor-ui/src/mixins/restApi.ts index c322f6f946..eeda2ccf98 100644 --- a/packages/editor-ui/src/mixins/restApi.ts +++ b/packages/editor-ui/src/mixins/restApi.ts @@ -65,7 +65,7 @@ export const restApi = Vue.extend({ method: Method, endpoint: string, data?: IDataObject, - // tslint:disable-next-line:no-any + // eslint-disable-next-line @typescript-eslint/no-explicit-any ): Promise { return makeRestApiRequest(self.rootStore.getRestApiContext, method, endpoint, data); }, diff --git a/packages/editor-ui/src/mixins/workflowHelpers.ts b/packages/editor-ui/src/mixins/workflowHelpers.ts index ddc41848cf..ec73d0c2d2 100644 --- a/packages/editor-ui/src/mixins/workflowHelpers.ts +++ b/packages/editor-ui/src/mixins/workflowHelpers.ts @@ -68,7 +68,6 @@ import { useTemplatesStore } from '@/stores/templates'; import { useNodeTypesStore } from '@/stores/nodeTypes'; import { useUsersStore } from '@/stores/users'; import { useWorkflowsEEStore } from '@/stores/workflows.ee'; -import { ICredentialMap, ICredentialsResponse, IUsedCredential } from '@/Interface'; import { getWorkflowPermissions, IPermissions } from '@/permissions'; import { ICredentialsResponse } from '@/Interface'; diff --git a/packages/editor-ui/src/plugins/icons.ts b/packages/editor-ui/src/plugins/icons.ts index 0d9f12ae3c..13bc639959 100644 --- a/packages/editor-ui/src/plugins/icons.ts +++ b/packages/editor-ui/src/plugins/icons.ts @@ -124,7 +124,7 @@ import { import { faStickyNote } from '@fortawesome/free-regular-svg-icons'; import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome'; -// tslint:disable-next-line:no-any +// eslint-disable-next-line @typescript-eslint/no-explicit-any function addIcon(icon: any) { library.add(icon as IconDefinition); } diff --git a/packages/editor-ui/src/shims.d.ts b/packages/editor-ui/src/shims.d.ts index 4a96a7cb53..732441c6ae 100644 --- a/packages/editor-ui/src/shims.d.ts +++ b/packages/editor-ui/src/shims.d.ts @@ -10,9 +10,7 @@ declare global { } namespace JSX { - // tslint:disable no-empty-interface interface Element extends VNode {} - // tslint:disable no-empty-interface interface ElementClass extends Vue {} interface IntrinsicElements { [elem: string]: any; diff --git a/packages/editor-ui/src/stores/nodeTypes.ts b/packages/editor-ui/src/stores/nodeTypes.ts index 337d062b53..e4ad1b3d63 100644 --- a/packages/editor-ui/src/stores/nodeTypes.ts +++ b/packages/editor-ui/src/stores/nodeTypes.ts @@ -125,7 +125,6 @@ export const useNodeTypesStore = defineStore(STORES.NODE_TYPES, { Vue.set(this, 'nodeTypes', nodeTypes); // Trigger compute of mergedAppNodes getter so it's ready when user opens the node creator - // tslint:disable-next-line: no-unused-expression useNodeCreatorStore().mergedAppNodes; }, removeNodeTypes(nodeTypesToRemove: INodeTypeDescription[]): void { diff --git a/packages/editor-ui/src/stores/workflows.ts b/packages/editor-ui/src/stores/workflows.ts index 2634cf84b0..3e59524d04 100644 --- a/packages/editor-ui/src/stores/workflows.ts +++ b/packages/editor-ui/src/stores/workflows.ts @@ -557,7 +557,7 @@ export const useWorkflowsStore = defineStore(STORES.WORKFLOWS, { ][sourceData.index]) { for (propertyName of checkProperties) { if ( - // tslint:disable-next-line:no-any + // eslint-disable-next-line @typescript-eslint/no-explicit-any (existingConnection as any)[propertyName] !== (destinationData as any)[propertyName] ) { continue connectionLoop; diff --git a/packages/editor-ui/src/utils/sortUtils.ts b/packages/editor-ui/src/utils/sortUtils.ts index cca9acb702..edea740f04 100644 --- a/packages/editor-ui/src/utils/sortUtils.ts +++ b/packages/editor-ui/src/utils/sortUtils.ts @@ -202,7 +202,8 @@ function getValue(obj: T, prop: string): unknown { } const segments = prop.split('.'); - let result: any = obj; // tslint:disable-line:no-any + // eslint-disable-next-line @typescript-eslint/no-explicit-any + let result: any = obj; let i = 0; while (result && i < segments.length) { result = result[segments[i]]; diff --git a/packages/editor-ui/src/views/NodeView.vue b/packages/editor-ui/src/views/NodeView.vue index 8025d23a9e..9e1f784e39 100644 --- a/packages/editor-ui/src/views/NodeView.vue +++ b/packages/editor-ui/src/views/NodeView.vue @@ -2401,6 +2401,7 @@ export default mixins( this.canvasStore.setZoomLevel(1, 0); this.canvasStore.zoomToFit(); }, + // eslint-disable-next-line @typescript-eslint/no-explicit-any tryToAddWelcomeSticky: once(async function (this: any) { const newWorkflow = this.workflowData; if (window.posthog?.getFeatureFlag?.('welcome-note') === 'test') { diff --git a/packages/editor-ui/src/views/SettingsUsersView.vue b/packages/editor-ui/src/views/SettingsUsersView.vue index e0ce88817d..9ee3119c51 100644 --- a/packages/editor-ui/src/views/SettingsUsersView.vue +++ b/packages/editor-ui/src/views/SettingsUsersView.vue @@ -30,7 +30,9 @@
@@ -51,11 +53,7 @@