From c724efd3d0007a39d62255d2eddd9b7dbf48ec26 Mon Sep 17 00:00:00 2001 From: Diego Imbert Date: Thu, 30 Oct 2025 16:39:33 +0100 Subject: [PATCH] Migrate all to Svelte 5 and fix npm check type stuff --- .../lib/components/AppConnectDrawer.svelte | 47 +++-- .../src/lib/components/AppTutorials.svelte | 6 +- .../src/lib/components/AutheliaSetting.svelte | 18 +- .../lib/components/AuthentikSetting.svelte | 18 +- .../lib/components/AzureOauthSettings.svelte | 42 ++-- frontend/src/lib/components/Badge.svelte | 18 +- .../src/lib/components/CenteredModal.svelte | 21 +- .../src/lib/components/CenteredPage.svelte | 12 +- .../ChangeInstanceUsernameInner.svelte | 23 +- .../src/lib/components/CollapseLink.svelte | 22 +- .../src/lib/components/ConfirmButton.svelte | 11 +- .../lib/components/ConnectionSection.svelte | 46 ++-- .../ContextualVariableEditor.svelte | 16 +- frontend/src/lib/components/CronInput.svelte | 2 +- .../src/lib/components/CustomOauth.svelte | 34 +-- .../src/lib/components/CustomPopover.svelte | 1 + frontend/src/lib/components/CustomSso.svelte | 36 ++-- frontend/src/lib/components/DBManager.svelte | 14 +- frontend/src/lib/components/DateInput.svelte | 34 ++- .../src/lib/components/DefaultScripts.svelte | 12 +- .../lib/components/DefaultScriptsInner.svelte | 12 +- .../lib/components/DefaultTagsInner.svelte | 14 +- .../src/lib/components/DeployToSetting.svelte | 35 ++-- .../components/DeployWorkspaceDrawer.svelte | 12 +- .../src/lib/components/Description.svelte | 1 + frontend/src/lib/components/Dev.svelte | 8 +- .../src/lib/components/DisplayResult.svelte | 2 +- frontend/src/lib/components/DurationMs.svelte | 10 +- .../lib/components/ExecutionDuration.svelte | 54 +++-- .../src/lib/components/FieldHeader.svelte | 52 +++-- .../src/lib/components/FlowGraphViewer.svelte | 29 ++- .../lib/components/FlowGraphViewerStep.svelte | 25 ++- .../src/lib/components/FlowInputViewer.svelte | 6 +- .../src/lib/components/FlowPlugConnect.svelte | 10 +- .../FlowStatusWaitingForEvents.svelte | 39 ++-- .../src/lib/components/FolderEditor.svelte | 3 +- .../src/lib/components/FolderUsageInfo.svelte | 18 +- .../src/lib/components/GfmMarkdown.svelte | 6 +- .../lib/components/GraphqlSchemaViewer.svelte | 1 + .../src/lib/components/GroupEditor.svelte | 6 +- .../src/lib/components/HighlightCode.svelte | 6 +- frontend/src/lib/components/IconedPath.svelte | 1 + .../components/InputTransformsViewer.svelte | 8 +- .../lib/components/InstanceGroupEditor.svelte | 47 +++-- .../lib/components/InstanceNameEditor.svelte | 49 +++-- .../lib/components/InviteGlobalUser.svelte | 6 +- frontend/src/lib/components/JsonInputs.svelte | 19 +- .../src/lib/components/KanidmSetting.svelte | 30 ++- .../src/lib/components/KeycloakSetting.svelte | 18 +- frontend/src/lib/components/LogId.svelte | 12 +- .../lib/components/LogSnippetViewer.svelte | 21 +- .../src/lib/components/ManualPopover.svelte | 1 + frontend/src/lib/components/MapResult.svelte | 75 ++++--- .../components/MemoryFootprintViewer.svelte | 18 +- .../src/lib/components/ModuleStatus.svelte | 10 +- frontend/src/lib/components/MoveDrawer.svelte | 16 +- .../src/lib/components/OAuthSetting.svelte | 35 +++- .../lib/components/OauthExtraParams.svelte | 12 +- .../src/lib/components/OauthScopes.svelte | 10 +- .../ObjectStoreConfigSettings.svelte | 19 +- frontend/src/lib/components/PageHeader.svelte | 23 +- ....svelte => ParquetCsvTableRenderer.svelte} | 31 +-- .../components/PersistentScriptDrawer.svelte | 93 +++++---- .../lib/components/QueueMetricsDrawer.svelte | 43 ++-- .../components/QueueMetricsDrawerInner.svelte | 22 +- .../src/lib/components/RadioButton.svelte | 25 ++- frontend/src/lib/components/Range.svelte | 52 +++-- frontend/src/lib/components/Required.svelte | 1 + .../components/ResourceEditorDrawer.svelte | 29 +-- frontend/src/lib/components/RunButton.svelte | 17 +- .../components/RunFormAdvancedPopup.svelte | 19 +- .../src/lib/components/S3ObjectPicker.svelte | 14 +- .../lib/components/SaveInputsButton.svelte | 25 ++- .../components/SavedInputsPickerViewer.svelte | 172 ++++++++------- .../components/SchemaEditorProperty.svelte | 6 +- .../components/SchemaFormWithArgPicker.svelte | 80 ++++--- .../src/lib/components/SchemaViewer.svelte | 3 +- .../src/lib/components/ScriptBuilder.svelte | 2 + frontend/src/lib/components/Scrollable.svelte | 23 +- .../lib/components/ServiceLogsInner.svelte | 20 +- frontend/src/lib/components/ShareModal.svelte | 3 +- frontend/src/lib/components/Slider.svelte | 21 +- frontend/src/lib/components/Star.svelte | 26 ++- frontend/src/lib/components/Summary.svelte | 8 +- .../src/lib/components/SupabaseConnect.svelte | 36 ++-- .../components/SuperadminSettingsInner.svelte | 9 +- .../src/lib/components/TableCustom.svelte | 1 + .../src/lib/components/TemplateEditor.svelte | 1 + .../src/lib/components/TestConnection.svelte | 19 +- frontend/src/lib/components/TimeAgo.svelte | 25 ++- .../src/lib/components/TooltipInner.svelte | 11 +- frontend/src/lib/components/Uptodate.svelte | 2 +- frontend/src/lib/components/Urlize.svelte | 8 +- frontend/src/lib/components/Version.svelte | 2 +- .../src/lib/components/WhitelistIp.svelte | 2 +- .../src/lib/components/WorkerGroup.svelte | 2 + .../lib/components/WorkflowTimeline.svelte | 34 +-- .../src/lib/components/ZitadelSetting.svelte | 18 +- .../display/InsertRowDrawerButton.svelte | 2 +- .../apps/editor/AppExportButton.svelte | 8 +- .../components/apps/editor/AppInputs.svelte | 2 +- .../apps/editor/AppJsonEditor.svelte | 10 +- .../apps/editor/RecomputeAllComponents.svelte | 20 +- .../componentsPanel/CssHelperPanel.svelte | 17 +- .../CustomComponentsList.svelte | 14 +- .../componentsPanel/QuickStyleMenu.svelte | 12 +- .../editor/componentsPanel/ThemeList.svelte | 10 +- .../editor/contextPanel/DebugPanel.svelte | 8 +- .../editor/settingsPanel/StylePanel.svelte | 24 ++- .../inputEditor/UploadInputEditor.svelte | 3 +- .../lib/components/assets/AssetButtons.svelte | 4 +- .../assets/AssetsDropdownButton.svelte | 196 +++++++++--------- .../auditLogs/AuditLogsFilters.svelte | 2 + .../components/common/FileProgressBar.svelte | 24 ++- .../common/alert/Notification.svelte | 8 +- .../common/breadcrumb/Breadcrumb.svelte | 18 +- .../common/button/AnimatedButton.svelte | 32 ++- .../common/button/AnimatedButtonInner.svelte | 40 ++-- .../common/button/PulseButton.svelte | 24 ++- .../common/button/RoundIconButton.svelte | 15 +- .../components/common/button/UndoRedo.svelte | 8 +- .../calendarPicker/CalendarPicker.svelte | 1 + .../clearableInput/ClearableInput.svelte | 72 ++++--- .../ConfirmationModal.svelte | 2 +- .../common/fileInput/FileInput.svelte | 1 + .../common/fileUpload/FileUploadModal.svelte | 12 +- .../common/layout/ListElement.svelte | 10 +- .../components/common/menu/MenuItem.svelte | 19 +- .../components/common/menu/ResolveOpen.svelte | 12 +- .../common/modal/AlwaysMountedModal.svelte | 1 + .../lib/components/common/modal/Modal.svelte | 52 +++-- .../lib/components/common/modal/Modal2.svelte | 1 + .../common/seconds/SecondsInput.svelte | 48 +++-- .../components/common/stepper/Stepper.svelte | 29 ++- .../components/common/table/RowIcon.svelte | 8 +- .../lib/components/common/table/Table.svelte | 10 +- .../src/lib/components/copilot/CronGen.svelte | 142 +++++++------ .../copilot/FlowCopilotInputsModal.svelte | 32 +-- .../lib/components/copilot/MetadataGen.svelte | 1 + .../lib/components/copilot/RegexGen.svelte | 166 ++++++++------- .../lib/components/copilot/ScriptFix.svelte | 70 ++++--- .../lib/components/copilot/chat/AIChat.svelte | 2 +- .../copilot/chat/AIChatDisplay.svelte | 100 ++++----- .../copilot/chat/AIChatInput.svelte | 36 ++-- .../copilot/chat/AssistantMessage.svelte | 6 +- .../components/copilot/chat/ChatMode.svelte | 70 ++++--- .../chat/flow/AIChangesWarningModal.svelte | 15 +- .../components/details/ClipboardPanel.svelte | 1 + .../details/CopyableCodeBlock.svelte | 16 +- .../details/ErrorHandlerToggleButton.svelte | 17 +- .../details/ErrorHandlerToggleButtonV2.svelte | 22 +- .../components/flows/CreateActionsApp.svelte | 6 +- .../flows/content/AgentToolWrapper.svelte | 2 + .../flows/content/DynamicInputHelpBox.svelte | 3 +- .../flows/content/FlowFailureModule.svelte | 10 +- .../flows/content/FlowInputsFlow.svelte | 36 ++-- .../flows/content/FlowInputsFlowQuick.svelte | 32 ++- .../FlowModuleMockTransitionMessage.svelte | 26 +-- .../flows/content/FlowPathViewer.svelte | 16 +- .../content/FlowPreprocessorModule.svelte | 10 +- .../flows/content/FlowSettings.svelte | 2 + .../flows/content/GenAiQuick.svelte | 17 +- .../flows/content/ScriptEditorDrawer.svelte | 8 +- .../flows/content/SuspendDrawer.svelte | 14 +- .../components/flows/map/FlowJobsMenu.svelte | 2 + .../lib/components/flows/map/MapItem.svelte | 2 + .../pickers/FlowScriptPickerQuick.svelte | 22 +- .../flows/pickers/FlowToplevelNode.svelte | 10 +- .../pickers/WorkspaceScriptPicker.svelte | 58 ++++-- .../flows/propPicker/FlowPropPicker.svelte | 42 ++-- .../flows/propPicker/JobPickerLight.svelte | 6 +- .../flows/propPicker/OutputBadge.svelte | 1 + .../git_sync/GitSyncModalManager.svelte | 2 +- .../lib/components/graph/FlowGraphV2.svelte | 2 + .../renderers/edges/HiddenBaseEdge.svelte | 6 +- .../graph/renderers/nodes/AssetNode.svelte | 48 +++-- .../nodes/AssetsOverflowedNode.svelte | 28 +-- .../graph/renderers/nodes/TriggersNode.svelte | 18 +- .../renderers/triggers/TriggerButton.svelte | 14 +- .../renderers/triggers/TriggerCount.svelte | 6 +- .../src/lib/components/home/FlowIcon.svelte | 1 + frontend/src/lib/components/home/Item.svelte | 25 ++- .../src/lib/components/home/ItemsList.svelte | 6 +- .../components/home/ListFiltersQuick.svelte | 16 +- .../src/lib/components/icons/RubyIcon.svelte | 4 +- .../meltComponents/MeltButton.svelte | 1 + .../components/meltComponents/Menubar.svelte | 10 +- .../components/meltComponents/Popover.svelte | 1 + .../components/meltComponents/Tooltip.svelte | 1 + .../propertyPicker/ObjectViewerWrapper.svelte | 2 + .../propertyPicker/PropPicker.svelte | 58 ++++-- .../propertyPicker/PropPickerResult.svelte | 17 +- .../lib/components/runs/MobileFilters.svelte | 29 ++- .../runs/PreprocessedArgsDisplay.svelte | 11 +- .../lib/components/runs/QueuePopover.svelte | 8 +- .../lib/components/schema/AddProperty.svelte | 6 +- .../components/schema/AddPropertyForm.svelte | 2 +- .../schema/RunningJobSchemaPicker.svelte | 69 +++--- .../lib/components/schema/SchemaPicker.svelte | 48 +++-- .../components/select/SelectDropdown.svelte | 2 +- .../settings/ChangeWorkspaceColor.svelte | 22 +- .../settings/ChangeWorkspaceId.svelte | 52 +++-- .../settings/ChangeWorkspaceName.svelte | 24 ++- .../components/settings/PremiumInfo.svelte | 70 ++++--- .../components/settings/TokensTable.svelte | 3 +- .../sidebar/CriticalAlertModal.svelte | 58 ++++-- .../sidebar/CriticalAlertModalInner.svelte | 60 ++++-- .../sidebar/CriticalAlertTable.svelte | 41 ++-- .../components/sidebar/DarkModeToggle.svelte | 10 +- .../components/sidebar/MultiplayerMenu.svelte | 20 +- .../sidebar/SideBarNotification.svelte | 8 +- .../components/sidebar/SidebarContent.svelte | 6 +- .../components/sidebar/WorkspaceMenu.svelte | 8 +- .../splitPanes/SplitPanesWrapper.svelte | 1 + .../lib/components/table/DownloadCsv.svelte | 8 +- frontend/src/lib/components/table/Head.svelte | 13 +- frontend/src/lib/components/table/Row.svelte | 1 + .../components/triggers/CaptureIcon.svelte | 8 +- .../triggers/TestTriggerConnection.svelte | 17 +- .../triggers/TriggerEditorToolbar.svelte | 20 +- .../components/triggers/TriggerTokens.svelte | 20 +- .../triggers/email/EmailCapture.svelte | 2 +- .../EmailTriggerEditorConfigSection.svelte | 2 +- .../triggers/http/RouteCapture.svelte | 2 +- .../http/RouteEditorConfigSection.svelte | 2 +- .../postgres/CheckPostgresRequirement.svelte | 12 +- .../PostgresTriggerEditorInner.svelte | 4 +- .../postgres/PublicationPicker.svelte | 38 +++- .../triggers/postgres/SlotPicker.svelte | 23 +- .../components/triggers/testingBadge.svelte | 4 +- .../webhook/WebhooksConfigSection.svelte | 2 +- .../websocket/WebsocketCapture.svelte | 28 +-- .../FlowBuilderTutorialBranchAll.svelte | 2 +- .../FlowBuilderTutorialBranchOne.svelte | 2 +- .../FlowBuilderTutorialErrorHandler.svelte | 4 +- .../FlowBuilderTutorialForLoop.svelte | 4 +- .../FlowBuilderTutorialSimpleFlow.svelte | 4 +- .../lib/components/tutorials/Tutorial.svelte | 22 +- .../tutorials/TutorialControls.svelte | 8 +- .../tutorials/app/AppTutorial.svelte | 10 +- .../app/BackgroundRunnablesTutorial.svelte | 10 +- .../tutorials/app/ConnectionTutorial.svelte | 10 +- .../app/ExpressionEvaluationTutorial.svelte | 10 +- .../lib/components/wizards/AppPicker.svelte | 10 +- .../workspaceSettings/CreateWorkspace.svelte | 8 +- .../workspaceSettings/DucklakeSettings.svelte | 62 +++--- .../workspaceSettings/StorageSettings.svelte | 182 ++++++++-------- .../src/routes/(root)/(logged)/+layout.svelte | 26 +-- .../src/routes/(root)/(logged)/+page.svelte | 35 ++-- .../(root)/(logged)/apps/add/+page.svelte | 16 +- .../get_raw/[version]/[...path]/+page.svelte | 2 +- .../(root)/(logged)/apps_raw/add/+page.svelte | 14 +- .../apps_raw/edit/[...path]/+page.svelte | 34 +-- .../(root)/(logged)/assets/+page.svelte | 8 +- .../(logged)/concurrency_groups/+page.svelte | 67 +++--- .../(root)/(logged)/flows/add/+page.svelte | 16 +- .../(logged)/instance_groups/+page.svelte | 89 ++++---- .../oauth/callback_slack/+page.svelte | 8 +- .../callback_slack/instance/+page.svelte | 8 +- .../oauth/callback_supabase/+page.svelte | 8 +- .../(root)/(logged)/resources/+page.svelte | 8 +- .../(root)/(logged)/run/[...run]/+page.svelte | 4 +- .../(root)/(logged)/scripts/add/+page.svelte | 16 +- .../(root)/(logged)/service_logs/+page.svelte | 4 +- .../svix/create-webhook/+page@(root).svelte | 25 ++- .../user/(user)/accept_invite/+page.svelte | 18 +- .../(user)/instance_settings/+page.svelte | 2 +- .../(logged)/user/(user)/login/+page.svelte | 12 +- .../(logged)/user/(user)/logout/+page@.svelte | 6 +- .../user/(user)/workspaces/+page.svelte | 69 +++--- .../(root)/(logged)/user/cli/+page.svelte | 13 +- .../(root)/(logged)/workers/+page.svelte | 66 +++--- .../(logged)/workspace_settings/+page.svelte | 4 +- .../workspace_settings/checkout/+page.svelte | 2 +- frontend/src/routes/+layout.svelte | 4 +- .../[workspace]/[...version]/+page.svelte | 6 +- frontend/src/routes/flows/dev/+page.svelte | 10 +- frontend/src/routes/gh_success/+page.svelte | 10 +- .../src/routes/scripts/p/[...path].svelte | 2 +- 279 files changed, 3653 insertions(+), 2254 deletions(-) rename frontend/src/lib/components/{ParqetCsvTableRenderer.svelte => ParquetCsvTableRenderer.svelte} (90%) diff --git a/frontend/src/lib/components/AppConnectDrawer.svelte b/frontend/src/lib/components/AppConnectDrawer.svelte index fa7393bcfc..44aacc4bab 100644 --- a/frontend/src/lib/components/AppConnectDrawer.svelte +++ b/frontend/src/lib/components/AppConnectDrawer.svelte @@ -1,4 +1,6 @@ @@ -46,7 +53,7 @@ > drawer?.closeDrawer()} tooltip="Resources represent connections to third party systems. Learn more on how to integrate external APIs." documentationLink="https://www.windmill.dev/docs/integrations/integrations_on_windmill" > @@ -57,7 +64,7 @@ bind:isGoogleSignin bind:disabled bind:manual - on:close={drawer?.closeDrawer} + on:close={() => drawer?.closeDrawer()} on:refresh express={expressOAuthSetup} /> @@ -67,7 +74,7 @@ {/if} {#if isGoogleSignin} - {@render children?.()} {:else} {confirmation} diff --git a/frontend/src/lib/components/ConnectionSection.svelte b/frontend/src/lib/components/ConnectionSection.svelte index 8f42e08f05..0a28921cf9 100644 --- a/frontend/src/lib/components/ConnectionSection.svelte +++ b/frontend/src/lib/components/ConnectionSection.svelte @@ -15,21 +15,39 @@ team_name: string } - export let platform: 'slack' | 'teams' - export let teamName: string | undefined - export let display_name: string | undefined - export let scriptPath: string - export let initialPath: string - export let onDisconnect: () => Promise - export let onSelect: () => Promise - export let connectHref: string | undefined - export let createScriptHref: string - export let createFlowHref: string - export let documentationLink: string - export let onLoadSettings: () => void - export let itemKind: 'flow' | 'script' = 'script' + interface Props { + platform: 'slack' | 'teams'; + teamName: string | undefined; + display_name: string | undefined; + scriptPath: string; + initialPath: string; + onDisconnect: () => Promise; + onSelect: () => Promise; + connectHref: string | undefined; + createScriptHref: string; + createFlowHref: string; + documentationLink: string; + onLoadSettings: () => void; + itemKind?: 'flow' | 'script'; + } - let selectedTeam: TeamItem | undefined = undefined + let { + platform, + teamName, + display_name, + scriptPath = $bindable(), + initialPath, + onDisconnect, + onSelect, + connectHref, + createScriptHref, + createFlowHref, + documentationLink, + onLoadSettings, + itemKind = $bindable('script') + }: Props = $props(); + + let selectedTeam: TeamItem | undefined = $state(undefined) async function connectTeams() { if (!selectedTeam) return diff --git a/frontend/src/lib/components/ContextualVariableEditor.svelte b/frontend/src/lib/components/ContextualVariableEditor.svelte index b859e08691..43277787ba 100644 --- a/frontend/src/lib/components/ContextualVariableEditor.svelte +++ b/frontend/src/lib/components/ContextualVariableEditor.svelte @@ -13,25 +13,25 @@ const dispatch = createEventDispatcher() - let edit: boolean = false - let name: string = '' - let value: string = '' + let edit: boolean = $state(false) + let name: string = $state('') + let value: string = $state('') export function initNew(): void { edit = false name = '' value = '' - drawer.openDrawer() + drawer?.openDrawer() } export function editVariable(editName: string, editValue: string): void { edit = true name = editName value = editValue - drawer.openDrawer() + drawer?.openDrawer() } - let drawer: Drawer + let drawer: Drawer | undefined = $state() async function updateVariable(): Promise { await WorkspaceService.setEnvironmentVariable({ @@ -48,7 +48,7 @@ ) dispatch('update') - drawer.closeDrawer() + drawer?.closeDrawer() setTimeout(() => { dispatch('update') }, 5000) @@ -58,7 +58,7 @@
{#if !edit} diff --git a/frontend/src/lib/components/CronInput.svelte b/frontend/src/lib/components/CronInput.svelte index b7febcdaca..87b9b183e1 100644 --- a/frontend/src/lib/components/CronInput.svelte +++ b/frontend/src/lib/components/CronInput.svelte @@ -219,7 +219,7 @@ {#if !disabled}
{@render cronBuilder()} - +
{/if}
diff --git a/frontend/src/lib/components/CustomOauth.svelte b/frontend/src/lib/components/CustomOauth.svelte index 5ae21602df..0cca13b465 100644 --- a/frontend/src/lib/components/CustomOauth.svelte +++ b/frontend/src/lib/components/CustomOauth.svelte @@ -1,28 +1,32 @@ - + - + - + - +