From 61e2e34caa966763b3c6f94119e64abf61e3c775 Mon Sep 17 00:00:00 2001 From: Daria Date: Tue, 15 Jul 2025 11:52:23 +0300 Subject: [PATCH] feat(editor): Make auto-focus work for Focus Panel (no-changelog) (#17294) --- .../CodeNodeEditor/CodeNodeEditor.vue | 6 +- .../src/components/CssEditor/CssEditor.vue | 10 ++- .../editor-ui/src/components/FocusPanel.vue | 71 +++++++++++++++++-- .../src/components/HtmlEditor/HtmlEditor.vue | 10 ++- .../src/components/JsEditor/JsEditor.vue | 11 +++ .../src/components/JsonEditor/JsonEditor.vue | 11 +++ .../src/components/SqlEditor/SqlEditor.vue | 9 ++- .../editor-ui/src/stores/focusPanel.store.ts | 20 +++++- .../frontend/editor-ui/src/views/NodeView.vue | 6 +- 9 files changed, 140 insertions(+), 14 deletions(-) diff --git a/packages/frontend/editor-ui/src/components/CodeNodeEditor/CodeNodeEditor.vue b/packages/frontend/editor-ui/src/components/CodeNodeEditor/CodeNodeEditor.vue index a03cf7f558..8484596e27 100644 --- a/packages/frontend/editor-ui/src/components/CodeNodeEditor/CodeNodeEditor.vue +++ b/packages/frontend/editor-ui/src/components/CodeNodeEditor/CodeNodeEditor.vue @@ -71,7 +71,7 @@ const dragAndDropEnabled = computed(() => { return !props.isReadOnly; }); -const { highlightLine, readEditorValue, editor } = useCodeEditor({ +const { highlightLine, readEditorValue, editor, focus } = useCodeEditor({ id: props.id, editorRef: codeNodeEditorRef, language: () => props.language, @@ -208,6 +208,10 @@ async function onDrop(value: string, event: MouseEvent) { await dropInCodeEditor(toRaw(editor.value), event, valueToInsert); } + +defineExpose({ + focus, +});