diff --git a/frontend/src/lib/components/ScriptVersionHistory.svelte b/frontend/src/lib/components/ScriptVersionHistory.svelte
index 723169e7df..d3c53c5b1a 100644
--- a/frontend/src/lib/components/ScriptVersionHistory.svelte
+++ b/frontend/src/lib/components/ScriptVersionHistory.svelte
@@ -190,9 +190,15 @@
{#if selectedVersionIndex !== undefined && versions?.slice(selectedVersionIndex + 1).length}
-
-
-
+ {
+ showDiff = detail === 'diff'
+ }}
+ >
+
+
diff --git a/frontend/src/lib/components/ShareModal.svelte b/frontend/src/lib/components/ShareModal.svelte
index fe6dcda387..6a7a815b7d 100644
--- a/frontend/src/lib/components/ShareModal.svelte
+++ b/frontend/src/lib/components/ShareModal.svelte
@@ -122,9 +122,13 @@
{#if own}
- (owner = '')}>
-
-
+ (owner = '')}
+ let:item
+ >
+
+
{#key ownerKind}
@@ -162,9 +166,10 @@
}
loadAcls()
}}
+ let:item
>
-
-
+
+
{:else}{write}{/if}
{#each FIELD_SETTINGS as x}
-
+
{/each}
{/if}
diff --git a/frontend/src/lib/components/SuperadminSettings.svelte b/frontend/src/lib/components/SuperadminSettings.svelte
index c115d3d26a..9cf313c326 100644
--- a/frontend/src/lib/components/SuperadminSettings.svelte
+++ b/frontend/src/lib/components/SuperadminSettings.svelte
@@ -292,15 +292,22 @@
sendUserToast('User updated')
listUsers(activeOnly)
}}
+ let:item
>
-
+
+
-
diff --git a/frontend/src/lib/components/ToggleHubWorkspace.svelte b/frontend/src/lib/components/ToggleHubWorkspace.svelte
index f80480439e..4954f41a55 100644
--- a/frontend/src/lib/components/ToggleHubWorkspace.svelte
+++ b/frontend/src/lib/components/ToggleHubWorkspace.svelte
@@ -7,8 +7,8 @@
-
-
-
+
+
+
diff --git a/frontend/src/lib/components/ToggleHubWorkspaceQuick.svelte b/frontend/src/lib/components/ToggleHubWorkspaceQuick.svelte
index 9d6ec306a6..5f00c33a97 100644
--- a/frontend/src/lib/components/ToggleHubWorkspaceQuick.svelte
+++ b/frontend/src/lib/components/ToggleHubWorkspaceQuick.svelte
@@ -7,9 +7,9 @@
-
-
-
-
+
+
+
+
diff --git a/frontend/src/lib/components/VariableEditor.svelte b/frontend/src/lib/components/VariableEditor.svelte
index b1e49bfac4..5b4f304bea 100644
--- a/frontend/src/lib/components/VariableEditor.svelte
+++ b/frontend/src/lib/components/VariableEditor.svelte
@@ -183,10 +183,10 @@
>{/if}{/if}
-
-
-
-
+
+
+
+
{#if editorKind == 'plain'}
{#if selected == 'normal'}
diff --git a/frontend/src/lib/components/apps/editor/AppEditorHeader.svelte b/frontend/src/lib/components/apps/editor/AppEditorHeader.svelte
index f0dd0f234a..8865f32cb1 100644
--- a/frontend/src/lib/components/apps/editor/AppEditorHeader.svelte
+++ b/frontend/src/lib/components/apps/editor/AppEditorHeader.svelte
@@ -85,7 +85,6 @@
import { getDeleteInput } from '../components/display/dbtable/queries/delete'
import { collectOneOfFields } from './appUtils'
import Summary from '$lib/components/Summary.svelte'
- import ToggleEnable from '$lib/components/common/toggleButton-v2/ToggleEnable.svelte'
import HideButton from './settingsPanel/HideButton.svelte'
import DeployOverrideConfirmationModal from '$lib/components/common/confirmationModal/DeployOverrideConfirmationModal.svelte'
import { computeS3FileInputPolicy, computeWorkspaceS3FileInputPolicy } from './appUtilsS3'
@@ -1547,70 +1546,92 @@
/>
{#if $app}
-
+ {
+ $app.fullscreen = detail === 'true'
+ }}
+ let:item
+ >
{/if}
{#if $app}
{
- setTheme(e.detail)
+ on:selected={({ detail }) => {
+ console.log('dbg detail', detail)
+ const theme = detail === 'dark' ? true : detail === 'sun' ? false : undefined
+ console.log('dbg settheme', theme)
+ setTheme(theme)
}}
- bind:selected={$app.darkMode}
+ selected={$app.darkMode === undefined ? 'auto' : $app.darkMode ? 'dark' : 'sun'}
+ let:item
>
{/if}
-
+
{#if $breakpoint === 'sm'}
-
{/if}
diff --git a/frontend/src/lib/components/apps/editor/PreviewToggle.svelte b/frontend/src/lib/components/apps/editor/PreviewToggle.svelte
index 1a9d7b99b4..c7aff1cdc1 100644
--- a/frontend/src/lib/components/apps/editor/PreviewToggle.svelte
+++ b/frontend/src/lib/components/apps/editor/PreviewToggle.svelte
@@ -18,6 +18,7 @@
jobsById.set({})
jobs.set([])
}}
+ let:item
>
diff --git a/frontend/src/lib/components/apps/editor/componentsPanel/CssProperty.svelte b/frontend/src/lib/components/apps/editor/componentsPanel/CssProperty.svelte
index 659e669b6e..ebd42f963a 100644
--- a/frontend/src/lib/components/apps/editor/componentsPanel/CssProperty.svelte
+++ b/frontend/src/lib/components/apps/editor/componentsPanel/CssProperty.svelte
@@ -124,27 +124,31 @@
{/if}
{#if quickStyleProperties?.length}
{
+ selected={richEditorOpen ? 'true' : 'false'}
+ on:selected={({ detail }) => {
+ richEditorOpen = detail === 'true'
if (richEditorOpen !== isQuickMenuOpen) {
toggleQuickMenu()
richEditorOpen = isQuickMenuOpen
}
}}
+ let:item
>
{/if}
diff --git a/frontend/src/lib/components/apps/editor/settingsPanel/AlignmentEditor.svelte b/frontend/src/lib/components/apps/editor/settingsPanel/AlignmentEditor.svelte
index d1254e0042..4622a5a36c 100644
--- a/frontend/src/lib/components/apps/editor/settingsPanel/AlignmentEditor.svelte
+++ b/frontend/src/lib/components/apps/editor/settingsPanel/AlignmentEditor.svelte
@@ -26,10 +26,11 @@
noWFull
on:selected={() => ($app = $app)}
bind:selected={component.horizontalAlignment}
+ let:item
>
-
-
-
+
+
+
{/if}
{#if component.type !== 'formcomponent' && component.verticalAlignment}
@@ -37,10 +38,11 @@
noWFull
on:selected={() => ($app = $app)}
bind:selected={component.verticalAlignment}
+ let:item
>
-
-
-
+
+
+
{/if}
diff --git a/frontend/src/lib/components/apps/editor/settingsPanel/ComponentInputTypeEditor.svelte b/frontend/src/lib/components/apps/editor/settingsPanel/ComponentInputTypeEditor.svelte
index eb4695f6b7..0e61057025 100644
--- a/frontend/src/lib/components/apps/editor/settingsPanel/ComponentInputTypeEditor.svelte
+++ b/frontend/src/lib/components/apps/editor/settingsPanel/ComponentInputTypeEditor.svelte
@@ -56,6 +56,7 @@
}}
noWFull
bind:selected={componentInput.type}
+ let:item
>
{#if componentInput.fieldType === 'template'}
{#if componentInput.type == 'template'}
@@ -65,6 +66,7 @@
disabled={disableStatic}
icon={CurlyBraces}
label="Template"
+ {item}
/>
{:else}
{/if}
{:else if componentInput.noStatic !== true}
@@ -82,6 +85,7 @@
disabled={disableStatic}
iconOnly={clientWidth < iconOnlyThreshold}
icon={Pen}
+ {item}
/>
{/if}
{#if componentInput.type == 'connected'}
@@ -90,6 +94,7 @@
icon={Plug2}
iconOnly={clientWidth < iconOnlyThreshold}
label="Connect"
+ {item}
/>
{/if}
diff --git a/frontend/src/lib/components/apps/editor/settingsPanel/ComponentPanelDataSource.svelte b/frontend/src/lib/components/apps/editor/settingsPanel/ComponentPanelDataSource.svelte
index 68fbcd803e..a91e356e3c 100644
--- a/frontend/src/lib/components/apps/editor/settingsPanel/ComponentPanelDataSource.svelte
+++ b/frontend/src/lib/components/apps/editor/settingsPanel/ComponentPanelDataSource.svelte
@@ -397,16 +397,19 @@
on:selected={() => {
handleSelected(selected)
}}
+ let:item
>
diff --git a/frontend/src/lib/components/apps/editor/settingsPanel/InputsSpecEditor.svelte b/frontend/src/lib/components/apps/editor/settingsPanel/InputsSpecEditor.svelte
index 4d02ce08f2..2ddf99b0f3 100644
--- a/frontend/src/lib/components/apps/editor/settingsPanel/InputsSpecEditor.svelte
+++ b/frontend/src/lib/components/apps/editor/settingsPanel/InputsSpecEditor.svelte
@@ -137,21 +137,28 @@
componentInput['expr'] = JSON.stringify(JSON.parse(componentInput['expr']), null, 4)
}
}}
+ let:item
>
-
+
{#if userInputEnabled}
-
+
{/if}
{#if fileUpload}
-
+
{/if}
{#if componentInput?.type === 'connected'}
-
+
{/if}
{#if componentInput?.type === 'eval'}
-
+
{/if}
-
+
{/if}
diff --git a/frontend/src/lib/components/common/toggleButton-v2/ToggleButton.svelte b/frontend/src/lib/components/common/toggleButton-v2/ToggleButton.svelte
index fc2f01ad80..567a4e46cc 100644
--- a/frontend/src/lib/components/common/toggleButton-v2/ToggleButton.svelte
+++ b/frontend/src/lib/components/common/toggleButton-v2/ToggleButton.svelte
@@ -1,13 +1,10 @@
-
-
-
+ select(value)}
+ use:melt={$item(value)}
+ style={`--selected-color: ${selectedColor}`}
>
{#if icon}
{/if}
{#if label && !iconOnly}
@@ -58,9 +59,10 @@
{#if showTooltipIcon}
{/if}
-
-
-
- {tooltip}
-
-
+
+
+
+ {tooltip}
+
+
+{/if}
diff --git a/frontend/src/lib/components/common/toggleButton-v2/ToggleButtonGroup.svelte b/frontend/src/lib/components/common/toggleButton-v2/ToggleButtonGroup.svelte
index b688c94bfa..7f6277aa0a 100644
--- a/frontend/src/lib/components/common/toggleButton-v2/ToggleButtonGroup.svelte
+++ b/frontend/src/lib/components/common/toggleButton-v2/ToggleButtonGroup.svelte
@@ -1,53 +1,51 @@
-
-
-
-
-
-
-
+
+
+
+
diff --git a/frontend/src/lib/components/common/toggleButton-v2/ToggleButtonMore.svelte b/frontend/src/lib/components/common/toggleButton-v2/ToggleButtonMore.svelte
index 669ef6d114..20147fb0c2 100644
--- a/frontend/src/lib/components/common/toggleButton-v2/ToggleButtonMore.svelte
+++ b/frontend/src/lib/components/common/toggleButton-v2/ToggleButtonMore.svelte
@@ -1,16 +1,15 @@
@@ -34,21 +36,16 @@
disappearTimeout={0}
>
- {#if isAnOptionSelected($selected)}
-
- {togglableItems.find((i) => i.value === $selected)?.label}
-
+ value={selected}
+ {item}
+ {small}
+ {light}
+ {id}
+ label={togglableItems.find((i) => i.value === selected)?.label}
+ />
{/if}
diff --git a/frontend/src/lib/components/common/toggleButton-v2/ToggleEnable.svelte b/frontend/src/lib/components/common/toggleButton-v2/ToggleEnable.svelte
deleted file mode 100644
index 54b5a44d3c..0000000000
--- a/frontend/src/lib/components/common/toggleButton-v2/ToggleEnable.svelte
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
-
-
-
diff --git a/frontend/src/lib/components/copilot/ScriptGen.svelte b/frontend/src/lib/components/copilot/ScriptGen.svelte
index f8812be4b5..6c323003aa 100644
--- a/frontend/src/lib/components/copilot/ScriptGen.svelte
+++ b/frontend/src/lib/components/copilot/ScriptGen.svelte
@@ -249,6 +249,11 @@
}
$: $copilotInfo && checkForInvalidModel()
+ function handlePublicOnlySelected({ detail }: { detail: string }) {
+ if (!dbSchema) return
+ ;(dbSchema as any).publicOnly = detail === 'true'
+ }
+
onDestroy(() => {
abortController?.abort()
})
@@ -401,9 +406,15 @@
{:else if $copilotInfo.exists_ai_resource}
-
-
-
+
+
+
@@ -502,14 +513,20 @@
{/if}
{#if dbSchema && dbSchema.lang !== 'graphql' && (dbSchema.schema?.public || dbSchema.schema?.PUBLIC || dbSchema.schema?.dbo)}
-
+
-
+
{/if}
diff --git a/frontend/src/lib/components/details/DetailPageTriggerPanel.svelte b/frontend/src/lib/components/details/DetailPageTriggerPanel.svelte
index 3bf60b99ab..6a3dd033fc 100644
--- a/frontend/src/lib/components/details/DetailPageTriggerPanel.svelte
+++ b/frontend/src/lib/components/details/DetailPageTriggerPanel.svelte
@@ -8,9 +8,7 @@
Webhook,
Unplug,
PlugZap,
-
Database
-
} from 'lucide-svelte'
import HighlightTheme from '../HighlightTheme.svelte'
@@ -111,9 +109,9 @@
{:else if triggerSelected === 'kafka' || triggerSelected === 'nats'}
-
-
-
+
+
+
{#if eventStreamType === 'kafka'}
diff --git a/frontend/src/lib/components/details/EmailTriggerConfigSection.svelte b/frontend/src/lib/components/details/EmailTriggerConfigSection.svelte
index bd8576971b..e85e4f9de0 100644
--- a/frontend/src/lib/components/details/EmailTriggerConfigSection.svelte
+++ b/frontend/src/lib/components/details/EmailTriggerConfigSection.svelte
@@ -110,9 +110,9 @@
diff --git a/frontend/src/lib/components/flows/content/FlowInputs.svelte b/frontend/src/lib/components/flows/content/FlowInputs.svelte
index 65c8b137f6..45c4ebd396 100644
--- a/frontend/src/lib/components/flows/content/FlowInputs.svelte
+++ b/frontend/src/lib/components/flows/content/FlowInputs.svelte
@@ -68,12 +68,13 @@
{:else}{#if !failureModule && !preprocessorModule}
-
+
{#if !shouldDisableTriggerScripts}
{/if}
diff --git a/frontend/src/lib/components/flows/content/FlowModuleComponent.svelte b/frontend/src/lib/components/flows/content/FlowModuleComponent.svelte
index f9625b2f2f..a3935490d4 100644
--- a/frontend/src/lib/components/flows/content/FlowModuleComponent.svelte
+++ b/frontend/src/lib/components/flows/content/FlowModuleComponent.svelte
@@ -629,13 +629,18 @@
-
+
{#if flowModule.value['language'] === 'deno'}
-
+
{:else}
-
-
-
+
+
+
{/if}
diff --git a/frontend/src/lib/components/flows/content/FlowRetries.svelte b/frontend/src/lib/components/flows/content/FlowRetries.svelte
index 1717c36937..6c8588dc93 100644
--- a/frontend/src/lib/components/flows/content/FlowRetries.svelte
+++ b/frontend/src/lib/components/flows/content/FlowRetries.svelte
@@ -68,10 +68,11 @@
setExponentialRetries()
}
}}
+ let:item
>
-
-
-
+
+
+
diff --git a/frontend/src/lib/components/home/ItemsList.svelte b/frontend/src/lib/components/home/ItemsList.svelte
index 32f78c5b6a..34cdf9999f 100644
--- a/frontend/src/lib/components/home/ItemsList.svelte
+++ b/frontend/src/lib/components/home/ItemsList.svelte
@@ -344,9 +344,16 @@
setQuery($page.url, 'kind', itemKind)
}}
class="h-10"
+ let:item
>
-
-
+
+
{#if HOME_SEARCH_SHOW_FLOW}
{/if}
diff --git a/frontend/src/lib/components/runs/RunsFilter.svelte b/frontend/src/lib/components/runs/RunsFilter.svelte
index 11155fea98..83ad3841b7 100644
--- a/frontend/src/lib/components/runs/RunsFilter.svelte
+++ b/frontend/src/lib/components/runs/RunsFilter.svelte
@@ -103,6 +103,8 @@
let labelTimeout: NodeJS.Timeout | undefined = undefined
let concurrencyKeyTimeout: NodeJS.Timeout | undefined = undefined
let tagTimeout: NodeJS.Timeout | undefined = undefined
+
+ let allWorkspacesValue = allWorkspaces ? 'all' : 'admins'
@@ -111,9 +113,13 @@
{#if $workspaceStore == 'admins'}
Workspaces
-
-
-
+ (allWorkspaces = detail === 'all')}
+ let:item
+ >
+
+
{/if}
@@ -135,10 +141,11 @@
autoSet = false
}
}}
+ let:item
>
-
-
-
+
+
+
@@ -410,47 +419,53 @@
Kind
-
-
+
+
Status
dispatch('successChange', success)}
+ let:item
>
-
{#if success == 'waiting'}
{:else if success == 'suspended'}
{/if}
@@ -501,9 +520,10 @@
- {#if mobile}
+ {#if mobile || true}
{
if (!autoSet) {
@@ -519,13 +539,13 @@
}
}}
>
-
-
-
-
-
-
-
+
+
+
+
+
+
+
@@ -725,41 +745,44 @@
{/if}
-
-
+
+
-
-
-
-
-
+
+
+
+
{/if}
diff --git a/frontend/src/lib/components/schema/FlowPropertyEditor.svelte b/frontend/src/lib/components/schema/FlowPropertyEditor.svelte
index f61a687f79..419a9ccc8c 100644
--- a/frontend/src/lib/components/schema/FlowPropertyEditor.svelte
+++ b/frontend/src/lib/components/schema/FlowPropertyEditor.svelte
@@ -181,9 +181,14 @@
{#if type === 'object' && schema.oneOf && schema.oneOf.length >= 2}
-
+
{#each schema.oneOf as obj}
-
+
{/each}
diff --git a/frontend/src/lib/components/schema/PropertyEditor.svelte b/frontend/src/lib/components/schema/PropertyEditor.svelte
index f9e479a9ff..30b7cb03ec 100644
--- a/frontend/src/lib/components/schema/PropertyEditor.svelte
+++ b/frontend/src/lib/components/schema/PropertyEditor.svelte
@@ -193,9 +193,9 @@
bind:currencyLocale={extra['currencyLocale']}
/>
{:else if type == 'object' && oneOf && oneOf.length >= 2 && !isFlowInput && !isAppInput}
-
+
{#each oneOf as obj}
-
+
{/each}
{#if oneOfSelected && oneOfSchemas}
diff --git a/frontend/src/lib/components/settings/WorkspaceOperatorSettings.svelte b/frontend/src/lib/components/settings/WorkspaceOperatorSettings.svelte
index f12062493f..17f51b2236 100644
--- a/frontend/src/lib/components/settings/WorkspaceOperatorSettings.svelte
+++ b/frontend/src/lib/components/settings/WorkspaceOperatorSettings.svelte
@@ -71,9 +71,9 @@
$: enableAllState = (() => {
const values = Object.values(operatorWorkspaceSettings)
- if (values.every((v) => v === true)) return true
- if (values.every((v) => v === false)) return false
- return null
+ if (values.every((v) => v === true)) return 'true'
+ if (values.every((v) => v === false)) return 'false'
+ return undefined
})()
function toggleAllSettings(event) {
@@ -111,9 +111,25 @@
Section |
Description |
-
-
-
+
+
+
|
@@ -124,9 +140,13 @@
{title} |
{description} |
-
-
-
+ (operatorWorkspaceSettings[key] = detail === 'on')}
+ let:item
+ >
+
+
|
diff --git a/frontend/src/lib/components/settings/WorkspaceUserSettings.svelte b/frontend/src/lib/components/settings/WorkspaceUserSettings.svelte
index 2ef54c8d4a..010f3be086 100644
--- a/frontend/src/lib/components/settings/WorkspaceUserSettings.svelte
+++ b/frontend/src/lib/components/settings/WorkspaceUserSettings.svelte
@@ -204,9 +204,10 @@
autoAdd = e.detail === 'add'
}
}}
+ let:item
>
-
-
+
+
{/if}
@@ -233,18 +234,21 @@
operatorOnly = e.detail === 'operator'
}
}}
+ let:item
>
@@ -363,12 +367,14 @@
})
listUsers()
}}
+ let:item
>
@@ -492,12 +500,14 @@
})
listUsers()
}}
+ let:item
>
diff --git a/frontend/src/lib/components/triggers/CaptureTable.svelte b/frontend/src/lib/components/triggers/CaptureTable.svelte
index 70596003fc..9dbc1c67f1 100644
--- a/frontend/src/lib/components/triggers/CaptureTable.svelte
+++ b/frontend/src/lib/components/triggers/CaptureTable.svelte
@@ -208,13 +208,15 @@
on:selected={(e) => {
initLoadCaptures(e.detail)
}}
+ let:item
>
-
+
diff --git a/frontend/src/lib/components/triggers/TriggersEditor.svelte b/frontend/src/lib/components/triggers/TriggersEditor.svelte
index 68bf72a88b..9d554892b6 100644
--- a/frontend/src/lib/components/triggers/TriggersEditor.svelte
+++ b/frontend/src/lib/components/triggers/TriggersEditor.svelte
@@ -155,9 +155,9 @@
{:else if $selectedTrigger === 'kafka' || $selectedTrigger === 'nats'}
-
-
-
+
+
+
{#if eventStreamType === 'kafka'}
-
-
-
-
-
+
+
+
+
+
diff --git a/frontend/src/lib/components/triggers/http/RouteEditorInner.svelte b/frontend/src/lib/components/triggers/http/RouteEditorInner.svelte
index f8412a1cbe..270e2103d1 100644
--- a/frontend/src/lib/components/triggers/http/RouteEditorInner.svelte
+++ b/frontend/src/lib/components/triggers/http/RouteEditorInner.svelte
@@ -262,10 +262,11 @@
static_asset_config = undefined
}
}}
+ let:item
>
-
-
-
+
+
+
{/if}
@@ -385,18 +386,24 @@
{
+ is_async = detail === 'async'
+ }}
disabled={!can_write || !!static_asset_config}
+ let:item
>
@@ -407,14 +414,19 @@
{
+ requires_auth = detail === 'required'
+ }}
disabled={!can_write}
+ let:item
>
-
+
diff --git a/frontend/src/lib/components/triggers/kafka/KafkaTriggersConfigSection.svelte b/frontend/src/lib/components/triggers/kafka/KafkaTriggersConfigSection.svelte
index 6084de018a..a50cd7bb76 100644
--- a/frontend/src/lib/components/triggers/kafka/KafkaTriggersConfigSection.svelte
+++ b/frontend/src/lib/components/triggers/kafka/KafkaTriggersConfigSection.svelte
@@ -200,9 +200,10 @@
delete args.security
}
}}
+ let:item
>
-
-
+
+
{/if}
diff --git a/frontend/src/lib/components/triggers/nats/NatsTriggersConfigSection.svelte b/frontend/src/lib/components/triggers/nats/NatsTriggersConfigSection.svelte
index 7d65ac60c8..f39940474f 100644
--- a/frontend/src/lib/components/triggers/nats/NatsTriggersConfigSection.svelte
+++ b/frontend/src/lib/components/triggers/nats/NatsTriggersConfigSection.svelte
@@ -251,9 +251,10 @@
delete args.require_tls
}
}}
+ let:item
>
-
-
+
+
{/if}
diff --git a/frontend/src/lib/components/triggers/postgres/PostgresTriggerEditorInner.svelte b/frontend/src/lib/components/triggers/postgres/PostgresTriggerEditorInner.svelte
index 71919774c9..c0f369c51e 100644
--- a/frontend/src/lib/components/triggers/postgres/PostgresTriggerEditorInner.svelte
+++ b/frontend/src/lib/components/triggers/postgres/PostgresTriggerEditorInner.svelte
@@ -488,9 +488,10 @@
replication_slot_name = ''
}}
disabled={!can_write}
+ let:item
>
-
-
+
+
{#if selectedSlotAction === 'create'}
diff --git a/frontend/src/lib/components/triggers/postgres/RelationPicker.svelte b/frontend/src/lib/components/triggers/postgres/RelationPicker.svelte
index bc0d8a06a1..d493b5ff57 100644
--- a/frontend/src/lib/components/triggers/postgres/RelationPicker.svelte
+++ b/frontend/src/lib/components/triggers/postgres/RelationPicker.svelte
@@ -45,9 +45,10 @@
}
}}
bind:selected={selectedTable}
+ let:item
>
-
-
+
+
diff --git a/frontend/src/lib/components/triggers/webhook/WebhooksConfigSection.svelte b/frontend/src/lib/components/triggers/webhook/WebhooksConfigSection.svelte
index d222fde08f..d589c709fb 100644
--- a/frontend/src/lib/components/triggers/webhook/WebhooksConfigSection.svelte
+++ b/frontend/src/lib/components/triggers/webhook/WebhooksConfigSection.svelte
@@ -308,26 +308,29 @@ done`
Call method
-
+
{#if !isFlow}
@@ -337,6 +340,7 @@ done`
icon={ArrowUpRight}
selectedColor="#fb923c"
disabled={!hash}
+ {item}
/>
{/if}
@@ -345,6 +349,7 @@ done`
value="get_path"
icon={ArrowDownRight}
disabled={webhookType !== 'sync'}
+ {item}
selectedColor="#14b8a6"
/>
@@ -353,9 +358,9 @@ done`
Token configuration
-
-
-
+
+
+
diff --git a/frontend/src/lib/components/triggers/websocket/WebsocketEditorConfigSection.svelte b/frontend/src/lib/components/triggers/websocket/WebsocketEditorConfigSection.svelte
index 649b7bcff1..36651c4c2a 100644
--- a/frontend/src/lib/components/triggers/websocket/WebsocketEditorConfigSection.svelte
+++ b/frontend/src/lib/components/triggers/websocket/WebsocketEditorConfigSection.svelte
@@ -102,9 +102,10 @@
url = ev.detail === 'runnable' ? '$script:' : ''
url_runnable_args = {}
}}
+ let:item
>
-
-
+
+
{#if url?.startsWith('$')}
diff --git a/frontend/src/routes/(root)/(logged)/kafka_triggers/+page.svelte b/frontend/src/routes/(root)/(logged)/kafka_triggers/+page.svelte
index d4dba36df7..b0d339a812 100644
--- a/frontend/src/routes/(root)/(logged)/kafka_triggers/+page.svelte
+++ b/frontend/src/routes/(root)/(logged)/kafka_triggers/+page.svelte
@@ -244,9 +244,9 @@
/>
Filter by path of
-
-
-
+
+
+
diff --git a/frontend/src/routes/(root)/(logged)/nats_triggers/+page.svelte b/frontend/src/routes/(root)/(logged)/nats_triggers/+page.svelte
index 50f2cd2956..a51b011613 100644
--- a/frontend/src/routes/(root)/(logged)/nats_triggers/+page.svelte
+++ b/frontend/src/routes/(root)/(logged)/nats_triggers/+page.svelte
@@ -208,223 +208,230 @@
f={(x) => (x.summary ?? '') + ' ' + x.path + ' (' + x.script_path + ')'}
/>
-{#if $userStore?.operator && $workspaceStore && !$userWorkspaces.find(_ => _.id === $workspaceStore)?.operator_settings?.triggers}
-
-
Unauthorized
-
Page not available for operators
-
+{#if $userStore?.operator && $workspaceStore && !$userWorkspaces.find((_) => _.id === $workspaceStore)?.operator_settings?.triggers}
+
+
Unauthorized
+
Page not available for operators
+
{:else}
-
-
- natsTriggerEditor.openNew(false)}>
- New NATS trigger
-
-
+
+
+ natsTriggerEditor.openNew(false)}
+ >
+ New NATS trigger
+
+
- {#if isCloudHosted()}
-
- NATS triggers are disabled in the multi-tenant cloud.
-
-
- {/if}
-
-
-
-
-
Filter by path of
-
-
-
-
+ {#if isCloudHosted()}
+
+ NATS triggers are disabled in the multi-tenant cloud.
+
+
+ {/if}
+
+
+
+
+
Filter by path of
+
+
+
+
+
+
+
+
+ {#if $userStore?.is_super_admin && $userStore.username.includes('@')}
+
+ {:else if $userStore?.is_admin || $userStore?.is_super_admin}
+
+ {/if}
+
-
+ {#if loading}
+ {#each new Array(6) as _}
+
+ {/each}
+ {:else if !triggers?.length}
+
No NATS triggers
+ {:else if items?.length}
+
+ {#each items.slice(0, nbDisplayed) as { path, edited_by, edited_at, script_path, is_flow, nats_resource_path, subjects, extra_perms, canWrite, marked, server_id, error, last_server_ping, enabled } (path)}
+ {@const href = `${is_flow ? '/flows/get' : '/scripts/get'}/${script_path}`}
+ {@const ping = last_server_ping ? new Date(last_server_ping) : undefined}
+ {@const pinging = ping && ping.getTime() > new Date().getTime() - 15 * 1000}
-
- {#if $userStore?.is_super_admin && $userStore.username.includes('@')}
-
- {:else if $userStore?.is_admin || $userStore?.is_super_admin}
-
- {/if}
-
-
- {#if loading}
- {#each new Array(6) as _}
-
- {/each}
- {:else if !triggers?.length}
-
No NATS triggers
- {:else if items?.length}
-
- {#each items.slice(0, nbDisplayed) as { path, edited_by, edited_at, script_path, is_flow, nats_resource_path, subjects, extra_perms, canWrite, marked, server_id, error, last_server_ping, enabled } (path)}
- {@const href = `${is_flow ? '/flows/get' : '/scripts/get'}/${script_path}`}
- {@const ping = last_server_ping ? new Date(last_server_ping) : undefined}
- {@const pinging = ping && ping.getTime() > new Date().getTime() - 15 * 1000}
-
-
-
-
+ >
+
+
-
natsTriggerEditor?.openEdit(path, is_flow)}
- class="min-w-0 grow hover:underline decoration-gray-400"
- >
-
- {#if marked}
-
- {@html marked}
-
- {:else}
- {nats_resource_path} - {subjects.join(', ')}
+
natsTriggerEditor?.openEdit(path, is_flow)}
+ class="min-w-0 grow hover:underline decoration-gray-400"
+ >
+
+ {#if marked}
+
+ {@html marked}
+
+ {:else}
+ {nats_resource_path} - {subjects.join(', ')}
+ {/if}
+
+
+ {path}
+
+
+ runnable: {script_path}
+
+
+
+
+
+
+
+
+ {#if (enabled && (!pinging || error)) || (!enabled && error) || (enabled && !server_id)}
+
+
+
+
+
+
+ {#if enabled}
+ {#if !server_id}
+ Consumer is starting...
+ {:else}
+ Consumer is not connected{error ? ': ' + error : ''}
+ {/if}
+ {:else}
+ Consumer was disabled because of an error: {error}
+ {/if}
+
+
+ {:else if enabled}
+
+
+
+
+ Consumer is connected
+
{/if}
-
- {path}
-
-
- runnable: {script_path}
-
-
-
-
-
-
-
- {#if (enabled && (!pinging || error)) || (!enabled && error) || (enabled && !server_id)}
-
-
-
-
-
-
- {#if enabled}
- {#if !server_id}
- Consumer is starting...
- {:else}
- Consumer is not connected{error ? ': ' + error : ''}
- {/if}
- {:else}
- Consumer was disabled because of an error: {error}
- {/if}
-
-
- {:else if enabled}
-
-
-
-
- Consumer is connected
-
- {/if}
-
-
-
{
- setTriggerEnabled(path, e.detail)
- }}
- />
-
-
-
natsTriggerEditor?.openEdit(path, is_flow)}
- size="xs"
- startIcon={canWrite
- ? { icon: Pen }
- : {
- icon: Eye
- }}
- color="dark"
- >
- {canWrite ? 'Edit' : 'View'}
-
-
{
- goto(href)
- }
- },
- {
- displayName: 'Delete',
- type: 'delete',
- icon: Trash,
- disabled: !canWrite,
- action: async () => {
- await NatsTriggerService.deleteNatsTrigger({
- workspace: $workspaceStore ?? '',
- path
- })
- loadTriggers()
- }
- },
- {
- displayName: canWrite ? 'Edit' : 'View',
- icon: canWrite ? Pen : Eye,
- action: () => {
- natsTriggerEditor?.openEdit(path, is_flow)
- }
- },
- {
- displayName: 'Audit logs',
- icon: Eye,
- href: `${base}/audit_logs?resource=${path}`
- },
- {
- displayName: canWrite ? 'Share' : 'See Permissions',
- icon: Share,
- action: () => {
- shareModal.openDrawer(path, 'nats_trigger')
- }
- }
- ]}
+ {
+ setTriggerEnabled(path, e.detail)
+ }}
/>
+
+
+ natsTriggerEditor?.openEdit(path, is_flow)}
+ size="xs"
+ startIcon={canWrite
+ ? { icon: Pen }
+ : {
+ icon: Eye
+ }}
+ color="dark"
+ >
+ {canWrite ? 'Edit' : 'View'}
+
+ {
+ goto(href)
+ }
+ },
+ {
+ displayName: 'Delete',
+ type: 'delete',
+ icon: Trash,
+ disabled: !canWrite,
+ action: async () => {
+ await NatsTriggerService.deleteNatsTrigger({
+ workspace: $workspaceStore ?? '',
+ path
+ })
+ loadTriggers()
+ }
+ },
+ {
+ displayName: canWrite ? 'Edit' : 'View',
+ icon: canWrite ? Pen : Eye,
+ action: () => {
+ natsTriggerEditor?.openEdit(path, is_flow)
+ }
+ },
+ {
+ displayName: 'Audit logs',
+ icon: Eye,
+ href: `${base}/audit_logs?resource=${path}`
+ },
+ {
+ displayName: canWrite ? 'Share' : 'See Permissions',
+ icon: Share,
+ action: () => {
+ shareModal.openDrawer(path, 'nats_trigger')
+ }
+ }
+ ]}
+ />
+
-
-
-
edited by {edited_by}
the {displayDate(edited_at)}
+
edited by {edited_by}
the {displayDate(edited_at)}
-
- {/each}
-
- {:else}
-
+ >
+
+ {/each}
+
+ {:else}
+
+ {/if}
+
+ {#if items && items?.length > 15 && nbDisplayed < items.length}
+
{nbDisplayed} items out of {items.length}
+ (nbDisplayed += 30)}>load 30 more
{/if}
-
- {#if items && items?.length > 15 && nbDisplayed < items.length}
-
{nbDisplayed} items out of {items.length}
- (nbDisplayed += 30)}>load 30 more
- {/if}
-
+
{/if}
Filter by path of
-
-
-
+
+
+
diff --git a/frontend/src/routes/(root)/(logged)/routes/+page.svelte b/frontend/src/routes/(root)/(logged)/routes/+page.svelte
index 395264f987..3efd9a3a3b 100644
--- a/frontend/src/routes/(root)/(logged)/routes/+page.svelte
+++ b/frontend/src/routes/(root)/(logged)/routes/+page.svelte
@@ -183,9 +183,9 @@
Filter by path of
-
-
-
+
+
+
diff --git a/frontend/src/routes/(root)/(logged)/runs/[...path]/+page.svelte b/frontend/src/routes/(root)/(logged)/runs/[...path]/+page.svelte
index f1c1bd2578..78e9083054 100644
--- a/frontend/src/routes/(root)/(logged)/runs/[...path]/+page.svelte
+++ b/frontend/src/routes/(root)/(logged)/runs/[...path]/+page.svelte
@@ -89,7 +89,7 @@
let maxTs = $page.url.searchParams.get('max_ts') ?? undefined
let schedulePath = $page.url.searchParams.get('schedule_path') ?? undefined
let jobKindsCat = $page.url.searchParams.get('job_kinds') ?? 'runs'
- let allWorkspaces = $page.url.searchParams.get('all_workspaces') == 'true' ?? false
+ let allWorkspaces = $page.url.searchParams.get('all_workspaces') == 'true'
let lastFetchWentToEnd = false
function loadFromQuery() {
@@ -135,7 +135,7 @@
maxTs = $page.url.searchParams.get('max_ts') ?? undefined
schedulePath = $page.url.searchParams.get('schedule_path') ?? undefined
jobKindsCat = $page.url.searchParams.get('job_kinds') ?? 'runs'
- allWorkspaces = $page.url.searchParams.get('all_workspaces') == 'true' ?? false
+ allWorkspaces = $page.url.searchParams.get('all_workspaces') == 'true'
}
let queue_count: Tweened
| undefined = undefined
@@ -639,13 +639,12 @@
}}
/>
-{#if $userStore?.operator && $workspaceStore && !$userWorkspaces.find(_ => _.id === $workspaceStore)?.operator_settings?.runs}
-
-
Unauthorized
-
Page not available for operators
-
-{:else}
-{#if innerWidth > 900}
+{#if $userStore?.operator && $workspaceStore && !$userWorkspaces.find((_) => _.id === $workspaceStore)?.operator_settings?.runs}
+
+
Unauthorized
+
Page not available for operators
+
+{:else if innerWidth > 900}
@@ -706,9 +705,11 @@
on:selected={() => {
graphIsRunsChart = graph === 'RunChart'
}}
+ let:item
>
-
+
{
graphIsRunsChart = graph == 'RunChart'
}}
+ let:item
>
-
-
+
+
{#if !graphIsRunsChart}
{/if}
-{/if}
diff --git a/frontend/src/routes/(root)/(logged)/schedules/+page.svelte b/frontend/src/routes/(root)/(logged)/schedules/+page.svelte
index cce869583c..d09e06659e 100644
--- a/frontend/src/routes/(root)/(logged)/schedules/+page.svelte
+++ b/frontend/src/routes/(root)/(logged)/schedules/+page.svelte
@@ -268,18 +268,18 @@
Filter by path of
-
-
-
+
+
+
-
-
-
-
+
+
+
+
{#if $userStore?.is_super_admin && $userStore.username.includes('@')}
diff --git a/frontend/src/routes/(root)/(logged)/user/(user)/create_workspace/+page.svelte b/frontend/src/routes/(root)/(logged)/user/(user)/create_workspace/+page.svelte
index a5fb6ee636..6a66665870 100644
--- a/frontend/src/routes/(root)/(logged)/user/(user)/create_workspace/+page.svelte
+++ b/frontend/src/routes/(root)/(logged)/user/(user)/create_workspace/+page.svelte
@@ -233,8 +233,8 @@
{/if}
{/if}
-
-
+
+
AI key for Windmill AI
@@ -246,19 +246,22 @@
(optional but recommended)
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
+
+
{/if}
-
+
{
operatorOnly = e.detail == 'operator'
}}
+ let:item
>
-
-
+
+
diff --git a/frontend/src/routes/(root)/(logged)/websocket_triggers/+page.svelte b/frontend/src/routes/(root)/(logged)/websocket_triggers/+page.svelte
index 67ce9c8eb6..8941aeb54b 100644
--- a/frontend/src/routes/(root)/(logged)/websocket_triggers/+page.svelte
+++ b/frontend/src/routes/(root)/(logged)/websocket_triggers/+page.svelte
@@ -232,9 +232,9 @@
Filter by path of
-
-
-
+
+
+
diff --git a/frontend/src/routes/(root)/(logged)/workspace_settings/+page.svelte b/frontend/src/routes/(root)/(logged)/workspace_settings/+page.svelte
index 55726138c0..b346468802 100644
--- a/frontend/src/routes/(root)/(logged)/workspace_settings/+page.svelte
+++ b/frontend/src/routes/(root)/(logged)/workspace_settings/+page.svelte
@@ -1071,19 +1071,21 @@
aiModels = []
codeCompletionModel = undefined
}}
+ let:item
>
-
-
-
-
-
-
+
+
+
+
+
+