From 3413a856dc88894d1323c53c53a5e77b0eb44de2 Mon Sep 17 00:00:00 2001 From: Diego Imbert <70353967+diegoimbert@users.noreply.github.com> Date: Tue, 28 Oct 2025 23:00:57 +0100 Subject: [PATCH] Better AI Fill inputs (#6984) * Remove most yPadding={7} * migrate DynamicInputHelpBox to Alert * fix button heights * Fix TemplateEditor padding and FakeMonacoPlaceholder * SimpleEditor fix left padding * Better AI Fill inputs * update svelte * Fix svelte bug, propertyType not updating * Revert "update svelte" This reverts commit 1c0f5ed15caecc62f289330b60af32fb7fb9ddcb. * MONACO_Y_PADDING var * Fixed Flow Loop AI gen * nit button fixes --- frontend/src/lib/components/ArgInput.svelte | 13 +- .../src/lib/components/AuthSettings.svelte | 2 +- frontend/src/lib/components/Editor.svelte | 12 +- .../components/ErrorOrRecoveryHandler.svelte | 4 +- .../components/FakeMonacoPlaceHolder.svelte | 17 +- .../lib/components/InputTransformForm.svelte | 348 +++++++++--------- frontend/src/lib/components/JsonEditor.svelte | 1 - .../src/lib/components/SimpleEditor.svelte | 62 ++-- .../src/lib/components/TemplateEditor.svelte | 41 ++- .../settingsPanel/ComponentPanel.svelte | 15 +- .../components/copilot/StepInputGen.svelte | 110 +++--- .../copilot/chat/flow/FlowAIButton.svelte | 1 - .../flows/content/DynamicInputHelpBox.svelte | 11 +- .../components/flows/content/FlowLoop.svelte | 42 ++- .../flows/content/FlowModuleEarlyStop.svelte | 2 - .../flows/content/FlowModuleSkip.svelte | 1 - .../flows/content/FlowRetries.svelte | 1 - .../flows/content/FlowSettings.svelte | 1 - .../flows/map/FlowErrorHandlerItem.svelte | 4 +- .../schema/FlowPropertyEditor.svelte | 1 - .../components/text_input/TextInput.svelte | 15 +- frontend/src/lib/components/vscode.ts | 2 + 22 files changed, 349 insertions(+), 357 deletions(-) diff --git a/frontend/src/lib/components/ArgInput.svelte b/frontend/src/lib/components/ArgInput.svelte index 501c347ffe..d89495b351 100644 --- a/frontend/src/lib/components/ArgInput.svelte +++ b/frontend/src/lib/components/ArgInput.svelte @@ -46,7 +46,11 @@ import { workspaceStore } from '$lib/stores' import { getJsonSchemaFromResource } from './schema/jsonSchemaResource.svelte' import AIProviderPicker from './AIProviderPicker.svelte' - import TextInput, { inputBaseClass, inputBorderClass } from './text_input/TextInput.svelte' + import TextInput, { + inputBaseClass, + inputBorderClass, + inputSizeClasses + } from './text_input/TextInput.svelte' import FileInput from './common/fileInput/FileInput.svelte' interface Props { @@ -1401,7 +1405,12 @@ use:autosize onkeydown={onKeyDown} {disabled} - class={twMerge('w-full', inputBaseClass, inputBorderClass({ error: !!error }))} + class={twMerge( + 'w-full', + inputBaseClass, + inputSizeClasses.md, + inputBorderClass({ error: !!error }) + )} placeholder={placeholder ?? defaultValue ?? ''} bind:value > diff --git a/frontend/src/lib/components/AuthSettings.svelte b/frontend/src/lib/components/AuthSettings.svelte index 6e9ea3b533..0959970b8c 100644 --- a/frontend/src/lib/components/AuthSettings.svelte +++ b/frontend/src/lib/components/AuthSettings.svelte @@ -169,7 +169,7 @@ {/if} {/each} -
{schema.properties[argName].description}
+ {/if}
+
- {schema.properties[argName].description}
-
+ {schema.properties[argName].description}
+
+ {schema.properties[argName].description}
+
+ {schema.properties[argName].description}
+ label={argName}
+ bind:editor={monaco}
+ bind:description={schema.properties[argName].description}
+ bind:value={arg.value}
+ type={schema.properties[argName].type}
+ oneOf={schema.properties[argName].oneOf}
+ required={schema.required?.includes(argName)}
+ bind:pattern={schema.properties[argName].pattern}
+ bind:valid={inputCheck}
+ defaultValue={schema.properties[argName].default}
+ bind:enum_={schema.properties[argName].enum}
+ bind:format={schema.properties[argName].format}
+ contentEncoding={schema.properties[argName].contentEncoding}
+ bind:itemsType={schema.properties[argName].items}
+ properties={schema.properties[argName].properties}
+ nestedRequired={schema.properties[argName].required}
+ displayHeader={false}
+ extra={argExtra}
+ {variableEditor}
+ {itemPicker}
+ bind:pickForField
+ showSchemaExplorer
+ nullable={schema.properties[argName].nullable}
+ bind:title={schema.properties[argName].title}
+ bind:placeholder={schema.properties[argName].placeholder}
+ {helperScript}
+ otherArgs={Object.fromEntries(
+ Object.entries(otherArgs).map(([key, transform]) => [
+ key,
+ transform?.type === 'static' ? transform.value : transform?.expr
+ ])
+ )}
+ >
+ {#snippet innerBottomSnippet()}
+ {#if shouldShowS3ArrayHelper}
+ {schema.properties[argName].description}
+