From 47b4873a595ea485bd0feac415b778df3775ad1c Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Thu, 3 Nov 2022 13:47:40 +0100 Subject: [PATCH] frontend(fix): rework all text inputs --- frontend/package-lock.json | 27 ++++++ frontend/package.json | 1 + frontend/src/lib/components/ArgInput.svelte | 93 +++++++------------ .../lib/components/AutosizedTextarea.svelte | 37 -------- .../src/lib/components/FlowBuilder.svelte | 36 ++++++- .../lib/components/InputTransformForm.svelte | 1 - frontend/src/lib/components/Required.svelte | 2 +- .../src/lib/components/ResourceEditor.svelte | 7 +- .../src/lib/components/SimpleEditor.svelte | 2 +- .../src/lib/components/VariableEditor.svelte | 11 ++- .../src/lib/components/flows/flowState.ts | 4 +- .../src/lib/components/flows/flowStore.ts | 7 +- .../flows/header/FlowImportExportMenu.svelte | 2 +- .../flows/propPicker/PropPickerWrapper.svelte | 2 +- .../components/scripts/CreateActions.svelte | 2 +- frontend/src/routes/flows/add.svelte | 30 +++--- .../src/routes/flows/edit/[...path].svelte | 17 ++-- 17 files changed, 140 insertions(+), 141 deletions(-) delete mode 100644 frontend/src/lib/components/AutosizedTextarea.svelte diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 5eba34ac3d..05dbcc7fa8 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -16,6 +16,7 @@ "monaco-editor": "^0.34.1", "monaco-editor-workers": "^0.34.2", "monaco-languageclient": "4.0.1", + "svelte-autosize": "^1.0.1", "vscode-ws-jsonrpc": "^2.0.0" }, "devDependencies": { @@ -1005,6 +1006,11 @@ "postcss": "^8.1.0" } }, + "node_modules/autosize": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/autosize/-/autosize-5.0.1.tgz", + "integrity": "sha512-UIWUlE4TOVPNNj2jjrU39wI4hEYbneUypEqcyRmRFIx5CC2gNdg3rQr+Zh7/3h6egbBvm33TDQjNQKtj9Tk1HA==" + }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -5622,6 +5628,14 @@ "node": ">= 8" } }, + "node_modules/svelte-autosize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/svelte-autosize/-/svelte-autosize-1.0.1.tgz", + "integrity": "sha512-HBk7Xrt5bS0rpp5zSUZvuXNKc0UhAxvJGLNy1eTHMDK/KkHb0UsgWpbyn60jW3tE2ZfuXfLttnHvvb1H4zZZ0Q==", + "dependencies": { + "autosize": "*" + } + }, "node_modules/svelte-awesome": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/svelte-awesome/-/svelte-awesome-3.0.0.tgz", @@ -7235,6 +7249,11 @@ "postcss-value-parser": "^4.2.0" } }, + "autosize": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/autosize/-/autosize-5.0.1.tgz", + "integrity": "sha512-UIWUlE4TOVPNNj2jjrU39wI4hEYbneUypEqcyRmRFIx5CC2gNdg3rQr+Zh7/3h6egbBvm33TDQjNQKtj9Tk1HA==" + }, "balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -10503,6 +10522,14 @@ "integrity": "sha512-FxcnEUOAVfr10vDU5dVgJN19IvqeHQCS1zfe8vayTfis9A2t5Fhx+JDe5uv/C3j//bB1umpLJ6quhgs9xyUbCQ==", "dev": true }, + "svelte-autosize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/svelte-autosize/-/svelte-autosize-1.0.1.tgz", + "integrity": "sha512-HBk7Xrt5bS0rpp5zSUZvuXNKc0UhAxvJGLNy1eTHMDK/KkHb0UsgWpbyn60jW3tE2ZfuXfLttnHvvb1H4zZZ0Q==", + "requires": { + "autosize": "*" + } + }, "svelte-awesome": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/svelte-awesome/-/svelte-awesome-3.0.0.tgz", diff --git a/frontend/package.json b/frontend/package.json index 17aac144d3..a3b52af8e2 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -62,6 +62,7 @@ "monaco-editor": "^0.34.1", "monaco-editor-workers": "^0.34.2", "monaco-languageclient": "4.0.1", + "svelte-autosize": "^1.0.1", "vscode-ws-jsonrpc": "^2.0.0" } } diff --git a/frontend/src/lib/components/ArgInput.svelte b/frontend/src/lib/components/ArgInput.svelte index 132c752adc..0e309937d7 100644 --- a/frontend/src/lib/components/ArgInput.svelte +++ b/frontend/src/lib/components/ArgInput.svelte @@ -13,6 +13,7 @@ import SchemaForm from './SchemaForm.svelte' import type { SchemaProperty } from '$lib/common' import SimpleEditor from './SimpleEditor.svelte' + import autosize from 'svelte-autosize' export let label: string = '' export let value: any @@ -45,7 +46,7 @@ let error: string = '' - let el: HTMLElement | undefined = undefined + let el: HTMLTextAreaElement | undefined = undefined export let editor: SimpleEditor | undefined = undefined @@ -89,6 +90,7 @@ export function focus() { el?.focus() + el && el.dispatchEvent(new Event('input')) } function validateInput(pattern: string | undefined, v: any): void { @@ -266,24 +268,21 @@ /> {:else} -
- -