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} -
- -