feat: Replace this.$refs.refName as Vue with InstanceType<T> (no-changelog) (#6050)

* refactor: use InstanceType<T> for all this.$refs types

* refactor: update refs type in N8nSelect

* fix: remove inputRef non-null assertion

Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>

* fix: remove non-null assertion

---------

Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>
This commit is contained in:
Alex Grozav
2023-04-21 16:59:04 +03:00
committed by GitHub
parent 19f540ecf9
commit 54f99a7d0d
41 changed files with 427 additions and 318 deletions

View File

@@ -79,6 +79,8 @@ import { EXPRESSIONS_DOCS_URL } from '@/constants';
import type { Segment } from '@/types/expressions';
import type { TargetItem } from '@/Interface';
type InlineExpressionEditorInputRef = InstanceType<typeof InlineExpressionEditorInput>;
export default Vue.extend({
name: 'ExpressionParameterInput',
components: {
@@ -127,9 +129,10 @@ export default Vue.extend({
},
methods: {
focus() {
const inlineInput = this.$refs.inlineInput as (Vue & HTMLElement) | undefined;
if (inlineInput?.$el) inlineInput.focus();
const inlineInputRef = this.$refs.inlineInput as InlineExpressionEditorInputRef | undefined;
if (inlineInputRef?.$el) {
inlineInputRef.focus();
}
},
onFocus() {
this.isFocused = true;