{@render openEditTab?.()}
{#if !noPreview}
{#if addProperty}
0 ? `width: 100%;` : `width: calc(100% - ${panelButtonWidth - pannelExtraButtonWidth}px);`} > {@render addProperty?.()}
{/if}
(previewSchema ? previewSchema : schema), (newSchema) => { schema = newSchema } } {hiddenArgs} {disableDnd} {onlyMaskPassword} {workspace} bind:args on:click={(e) => { opened = e.detail }} on:reorder={(e) => { let order = e.detail let newProperties = {} for (let key of order) { newProperties[key] = schema.properties[key] } schema = { ...schema, properties: newProperties, order: e.detail } }} helperScript={{ source: 'inline', code: dynCode!, lang: dynLang! }} prettifyHeader={isAppInput} disabled={!!previewSchema} {diff} on:acceptChange on:rejectChange {shouldDispatchChanges} bind:isValid noVariablePicker={noVariablePicker || customUi?.disableVariablePicker === true} /> {@render runButton?.()} {#if dynamicFunctions.length > 0}
{#if dynamicFunctions.length > 0}
Expected Functions for Dynamic Input Fields:
    {#each dynamicFunctions as functionName}
  • {functionName}()
  • {/each}
{/if} { dynCode = initDynFn(detail) }} > {#snippet children({ item })} {/snippet} {#key dynLang}
{/key}
{/if}
{/if} {#if editPanelSize > 0} 0 ? 'rounded-tl-none' : '')} > {#if editTab !== 'inputEditor'} {@render extraTab?.()} {:else} {#if jsonEnabled && customUi?.jsonOnly != true}
{#if addPropertyInEditorTab} { openField(propertyName) }} > {#snippet trigger()}
{/if} {#if !jsonView}
{#if keys.length > 0} {#each keys as argName, i (argName)} {@const locked = lockedArgs.includes(argName)}
{ if (opened === argName) { opened = undefined } else { opened = argName } }} >
{argName} {#if !uiOnly && !locked}
{#snippet trigger()}
{/snippet}
{/if}
{#if schema.required?.includes(argName)} Required {/if} {#if !uiOnly && !locked} {/if}
{#if opened === argName}
{#if Object.keys(schema?.properties ?? {}).includes(argName)} {#if typeof args == 'object' && schema?.properties[argName]} {#snippet typeeditor()} {#if isFlowInput || isAppInput} {/if} {/snippet} {#if isFlowInput || isAppInput} { dndType = generateRandomString() }} bind:defaultValue={schema.properties[argName].default} {variableEditor} {itemPicker} bind:nullable={schema.properties[argName].nullable} bind:disabled={schema.properties[argName].disabled} type={schema.properties[argName]?.type} bind:oneOf={schema.properties[argName].oneOf} bind:format={schema.properties[argName].format} contentEncoding={schema.properties[argName].contentEncoding} required={schema.required?.includes(argName) ?? false} pattern={schema.properties[argName].pattern} password={schema.properties[argName].password} propsNames={schema.properties[argName].propsNames} bind:showExpr={schema.properties[argName].showExpr} extra={schema.properties[argName]} customErrorMessage={schema.properties[argName].customErrorMessage} itemsType={schema.properties[argName].items} bind:properties={schema.properties[argName].properties} bind:order={schema.properties[argName].order} bind:requiredProperty={schema.properties[argName].required} bind:hideCatalogPicker={ schema.properties[argName].hideCatalogPicker } bind:hideRawInput={schema.properties[argName].hideRawInput} {displayWebhookWarning} on:requiredChange={(event) => { if (event.detail.required) { schema.required = schema.required ?? [] schema.required.push(argName) } else { schema.required = schema.required?.filter( (x) => x !== argName ) } }} /> {/if} {/if} {/if}
{/if}
{/each} {:else if !shouldHideNoInputs}
No inputs
{/if}
{:else}
{ try { schema = JSON.parse(schemaString) error = '' } catch (err) { error = err.message } }} bind:code={schemaString} lang="json" autoHeight automaticLayout />
{#if !emptyString(error)}
{error}
{:else}

{/if}
{/if} {/if} {/if} {#if !noVariablePicker} { if (pickForField) { if (args) { args[pickForField] = '$var:' + path } } }} itemName="Variable" tooltip="Variables are dynamic values that have a key associated to them and can be retrieved during the execution of a Script or Flow." documentationLink="https://www.windmill.dev/docs/core_concepts/variables_and_secrets" extraField="path" loadItems={async () => (await VariableService.listVariable({ workspace: ws ?? '' })).map((x) => ({ name: x.path, ...x }))} > {#snippet submission()}
{/snippet}
{/if}