diff --git a/frontend/src/lib/components/workspaceSettings/GitSyncFilterSettings.svelte b/frontend/src/lib/components/workspaceSettings/GitSyncFilterSettings.svelte
index 8347944b0b..406649ffcd 100644
--- a/frontend/src/lib/components/workspaceSettings/GitSyncFilterSettings.svelte
+++ b/frontend/src/lib/components/workspaceSettings/GitSyncFilterSettings.svelte
@@ -443,8 +443,8 @@ git commit
git push
# Push changes to workspace or click the pull settings button above{#if useIndividualBranch}
- wmill gitsync-settings push --workspace {$workspaceStore} --repository {git_repo_resource_path} --promotion main{:else}
- wmill gitsync-settings push --workspace {$workspaceStore} --repository {git_repo_resource_path}{/if}
{#if useIndividualBranch}
From 4a6d02960c4fee4f574480d697803b607ee0daec Mon Sep 17 00:00:00 2001
From: Ruben Fiszel
Date: Tue, 4 Nov 2025 19:13:05 +0000
Subject: [PATCH 026/105] nits
---
backend/windmill-common/src/flows.rs | 9 ++++++--
.../src/lib/components/FlowBuilder.svelte | 6 +++---
.../FlowLoopIterationPreview.svelte | 2 +-
.../lib/components/FlowPreviewContent.svelte | 2 +-
.../src/lib/components/FlowViewerInner.svelte | 2 +-
.../lib/components/InputTransformForm.svelte | 2 +-
.../lib/components/ModulePreviewForm.svelte | 2 +-
.../flows/content/FlowModuleComponent.svelte | 2 +-
.../src/lib/components/flows/flowState.ts | 2 +-
.../components/flows/flowStateUtils.svelte.ts | 2 +-
.../flows/header/FlowImportExportMenu.svelte | 4 ++--
.../flows/header/FlowYamlEditor.svelte | 2 +-
.../flows/map/FlowModuleSchemaMap.svelte | 2 +-
.../lib/components/flows/map/MapItem.svelte | 2 +-
.../components/flows/stepsInputArgs.svelte.ts | 4 ++--
.../flows/{utils.ts => utils.svelte.ts} | 21 ++++++++++++-------
.../FlowBuilderTutorialForLoop.svelte | 2 +-
17 files changed, 40 insertions(+), 28 deletions(-)
rename frontend/src/lib/components/flows/{utils.ts => utils.svelte.ts} (93%)
diff --git a/backend/windmill-common/src/flows.rs b/backend/windmill-common/src/flows.rs
index 09861d6b10..fcfac158d3 100644
--- a/backend/windmill-common/src/flows.rs
+++ b/backend/windmill-common/src/flows.rs
@@ -816,6 +816,11 @@ pub struct McpToolValue {
pub exclude_tools: Vec,
}
+fn is_none_or_empty_vec(expr: &Option>) -> bool
+{
+ expr.is_none() || expr.as_ref().unwrap().is_empty()
+}
+
#[derive(Serialize, Debug, Clone)]
#[serde(
tag = "type",
@@ -907,7 +912,7 @@ pub enum FlowModuleValue {
concurrency_time_window_s: Option,
#[serde(skip_serializing_if = "Option::is_none")]
is_trigger: Option,
- #[serde(skip_serializing_if = "Option::is_none")]
+ #[serde(skip_serializing_if = "is_none_or_empty_vec")]
assets: Option>,
},
@@ -933,7 +938,7 @@ pub enum FlowModuleValue {
concurrency_time_window_s: Option,
#[serde(skip_serializing_if = "Option::is_none")]
is_trigger: Option,
- #[serde(skip_serializing_if = "Option::is_none")]
+ #[serde(skip_serializing_if = "is_none_or_empty_vec")]
assets: Option>,
},
diff --git a/frontend/src/lib/components/FlowBuilder.svelte b/frontend/src/lib/components/FlowBuilder.svelte
index 505720bd1b..2ed847bff4 100644
--- a/frontend/src/lib/components/FlowBuilder.svelte
+++ b/frontend/src/lib/components/FlowBuilder.svelte
@@ -43,7 +43,7 @@
import FlowImportExportMenu from './flows/header/FlowImportExportMenu.svelte'
import FlowPreviewButtons from './flows/header/FlowPreviewButtons.svelte'
import type { FlowEditorContext, FlowInput, FlowInputEditorState } from './flows/types'
- import { cleanInputs } from './flows/utils'
+ import { cleanFlow } from './flows/utils.svelte'
import {
Calendar,
Pen,
@@ -267,7 +267,7 @@
}
loadingDraft = true
try {
- const flow = cleanInputs(flowStore.val)
+ const flow = cleanFlow(flowStore.val)
try {
localStorage.removeItem('flow')
localStorage.removeItem(`flow-${$pathStore}`)
@@ -428,7 +428,7 @@
loadingSave = true
try {
- const flow = cleanInputs(flowStore.val)
+ const flow = cleanFlow(flowStore.val)
if (flow.value?.modules) {
const validationErrors: string[] = []
diff --git a/frontend/src/lib/components/FlowLoopIterationPreview.svelte b/frontend/src/lib/components/FlowLoopIterationPreview.svelte
index 33f7796a93..f92072b5fd 100644
--- a/frontend/src/lib/components/FlowLoopIterationPreview.svelte
+++ b/frontend/src/lib/components/FlowLoopIterationPreview.svelte
@@ -4,7 +4,7 @@
import { Button } from './common'
import { createEventDispatcher, getContext } from 'svelte'
import type { FlowEditorContext } from './flows/types'
- import { runFlowPreview } from './flows/utils'
+ import { runFlowPreview } from './flows/utils.svelte'
import SchemaForm from './SchemaForm.svelte'
import FlowStatusViewer from '../components/FlowStatusViewer.svelte'
import FlowProgressBar from './flows/FlowProgressBar.svelte'
diff --git a/frontend/src/lib/components/FlowPreviewContent.svelte b/frontend/src/lib/components/FlowPreviewContent.svelte
index 616e7fcac5..3c5267917d 100644
--- a/frontend/src/lib/components/FlowPreviewContent.svelte
+++ b/frontend/src/lib/components/FlowPreviewContent.svelte
@@ -13,7 +13,7 @@
import Popover from '$lib/components/meltComponents/Popover.svelte'
import { createEventDispatcher, getContext, untrack } from 'svelte'
import type { FlowEditorContext } from './flows/types'
- import { runFlowPreview } from './flows/utils'
+ import { runFlowPreview } from './flows/utils.svelte'
import SchemaForm from './SchemaForm.svelte'
import SchemaFormWithArgPicker from './SchemaFormWithArgPicker.svelte'
import FlowStatusViewer from '../components/FlowStatusViewer.svelte'
diff --git a/frontend/src/lib/components/FlowViewerInner.svelte b/frontend/src/lib/components/FlowViewerInner.svelte
index e0d024e60e..7fab797408 100644
--- a/frontend/src/lib/components/FlowViewerInner.svelte
+++ b/frontend/src/lib/components/FlowViewerInner.svelte
@@ -9,7 +9,7 @@
import YAML from 'yaml'
import { yaml } from 'svelte-highlight/languages'
import HighlightTheme from './HighlightTheme.svelte'
- import { filteredContentForExport } from './flows/utils'
+ import { filteredContentForExport } from './flows/utils.svelte'
interface Props {
flow: {
diff --git a/frontend/src/lib/components/InputTransformForm.svelte b/frontend/src/lib/components/InputTransformForm.svelte
index ca033335a9..43e4cbd924 100644
--- a/frontend/src/lib/components/InputTransformForm.svelte
+++ b/frontend/src/lib/components/InputTransformForm.svelte
@@ -17,7 +17,7 @@
import FieldHeader from './FieldHeader.svelte'
import DynamicInputHelpBox from './flows/content/DynamicInputHelpBox.svelte'
import type { PropPickerWrapperContext } from './flows/propPicker/PropPickerWrapper.svelte'
- import { codeToStaticTemplate, getDefaultExpr } from './flows/utils'
+ import { codeToStaticTemplate, getDefaultExpr } from './flows/utils.svelte'
import SimpleEditor from './SimpleEditor.svelte'
import { Button, ButtonType } from '$lib/components/common'
import ToggleButtonGroup from '$lib/components/common/toggleButton-v2/ToggleButtonGroup.svelte'
diff --git a/frontend/src/lib/components/ModulePreviewForm.svelte b/frontend/src/lib/components/ModulePreviewForm.svelte
index 63b6f47ec2..b8867c75e4 100644
--- a/frontend/src/lib/components/ModulePreviewForm.svelte
+++ b/frontend/src/lib/components/ModulePreviewForm.svelte
@@ -7,7 +7,7 @@
import { Button } from './common'
import { getContext, untrack } from 'svelte'
import type { FlowEditorContext } from './flows/types'
- import { evalValue } from './flows/utils'
+ import { evalValue } from './flows/utils.svelte'
import type { FlowModule } from '$lib/gen'
import type { PickableProperties } from './flows/previousResults'
import type SimpleEditor from './SimpleEditor.svelte'
diff --git a/frontend/src/lib/components/flows/content/FlowModuleComponent.svelte b/frontend/src/lib/components/flows/content/FlowModuleComponent.svelte
index 956cbb93a7..d7b1266868 100644
--- a/frontend/src/lib/components/flows/content/FlowModuleComponent.svelte
+++ b/frontend/src/lib/components/flows/content/FlowModuleComponent.svelte
@@ -49,7 +49,7 @@
import FlowModuleSkip from './FlowModuleSkip.svelte'
import { type Job } from '$lib/gen'
import { workspaceStore } from '$lib/stores'
- import { checkIfParentLoop } from '../utils'
+ import { checkIfParentLoop } from '../utils.svelte'
import ModulePreviewResultViewer from '$lib/components/ModulePreviewResultViewer.svelte'
import { refreshStateStore } from '$lib/svelte5Utils.svelte'
import { getStepHistoryLoaderContext } from '$lib/components/stepHistoryLoader.svelte'
diff --git a/frontend/src/lib/components/flows/flowState.ts b/frontend/src/lib/components/flows/flowState.ts
index 8ac15d32d5..05a3483702 100644
--- a/frontend/src/lib/components/flows/flowState.ts
+++ b/frontend/src/lib/components/flows/flowState.ts
@@ -1,7 +1,7 @@
import type { Schema } from '$lib/common'
import type { Flow, FlowModule } from '$lib/gen'
import { loadFlowModuleState } from './flowStateUtils.svelte'
-import { emptyFlowModuleState } from './utils'
+import { emptyFlowModuleState } from './utils.svelte'
import type { StateStore } from '$lib/utils'
export type FlowModuleState = {
diff --git a/frontend/src/lib/components/flows/flowStateUtils.svelte.ts b/frontend/src/lib/components/flows/flowStateUtils.svelte.ts
index c27bae97f3..4e543b7fed 100644
--- a/frontend/src/lib/components/flows/flowStateUtils.svelte.ts
+++ b/frontend/src/lib/components/flows/flowStateUtils.svelte.ts
@@ -13,7 +13,7 @@ import { userStore, workspaceStore } from '$lib/stores'
import { getScriptByPath } from '$lib/scripts'
import { get } from 'svelte/store'
import type { FlowModuleState, FlowState } from './flowState'
-import { emptyFlowModuleState } from './utils'
+import { emptyFlowModuleState } from './utils.svelte'
import { NEVER_TESTED_THIS_FAR } from './models'
import { loadSchemaFromModule } from './flowInfers'
import { nextId } from './flowModuleNextId'
diff --git a/frontend/src/lib/components/flows/header/FlowImportExportMenu.svelte b/frontend/src/lib/components/flows/header/FlowImportExportMenu.svelte
index acd8d93fce..a9cbeecabb 100644
--- a/frontend/src/lib/components/flows/header/FlowImportExportMenu.svelte
+++ b/frontend/src/lib/components/flows/header/FlowImportExportMenu.svelte
@@ -4,7 +4,7 @@
import FlowViewer from '$lib/components/FlowViewer.svelte'
import { getContext } from 'svelte'
import type { FlowEditorContext } from '../types'
- import { cleanInputs } from '../utils'
+ import { cleanFlow } from '../utils.svelte'
import { aiChatManager } from '$lib/components/copilot/chat/AIChatManager.svelte'
interface Props {
@@ -21,7 +21,7 @@
drawer?.toggleDrawer()}>
{#if flow}
-