windmill-components 1.37.0 → 1.46.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/common.d.ts +1 -0
- package/components/AppConnect.svelte +45 -49
- package/components/ArgInfo.svelte +37 -15
- package/components/ArgInput.svelte +33 -34
- package/components/ArgInput.svelte.d.ts +3 -1
- package/components/ButtonAndDropdown.svelte +1 -1
- package/components/CenteredPage.svelte +2 -2
- package/components/CronInput.svelte +24 -20
- package/components/CronInput.svelte.d.ts +1 -0
- package/components/DisplayResult.svelte +2 -2
- package/components/Dropdown.svelte +10 -13
- package/components/Dropdown.svelte.d.ts +4 -1
- package/components/Editor.svelte +27 -3
- package/components/Editor.svelte.d.ts +3 -1
- package/components/EditorBar.svelte +77 -30
- package/components/EditorBar.svelte.d.ts +3 -1
- package/components/FieldHeader.svelte +6 -5
- package/components/FlowBuilder.svelte +52 -55
- package/components/FlowBuilder.svelte.d.ts +2 -0
- package/components/FlowJobResult.svelte +11 -18
- package/components/FlowJobResult.svelte.d.ts +2 -2
- package/components/FlowMetadata.svelte +65 -0
- package/components/FlowMetadata.svelte.d.ts +17 -0
- package/components/FlowModulesViewer.svelte +18 -4
- package/components/FlowPreviewContent.svelte +88 -50
- package/components/FlowPreviewContent.svelte.d.ts +1 -0
- package/components/FlowStatusViewer.svelte +123 -61
- package/components/FlowStatusViewer.svelte.d.ts +8 -3
- package/components/FlowViewer.svelte +84 -9
- package/components/FlowViewer.svelte.d.ts +1 -0
- package/components/GroupModal.svelte +43 -44
- package/components/GroupModal.svelte.d.ts +2 -2
- package/components/HighlightCode.svelte +4 -1
- package/components/HighlightCode.svelte.d.ts +1 -1
- package/components/IconedResourceType.svelte +6 -4
- package/components/IconedResourceType.svelte.d.ts +1 -0
- package/components/InputTransformForm.svelte +38 -27
- package/components/InputTransformsViewer.svelte +2 -1
- package/components/InviteGlobalUser.svelte +6 -10
- package/components/InviteGlobalUser.svelte.d.ts +1 -4
- package/components/InviteUser.svelte +4 -8
- package/components/InviteUser.svelte.d.ts +1 -4
- package/components/ItemPicker.svelte +50 -43
- package/components/ItemPicker.svelte.d.ts +2 -2
- package/components/JobArgs.svelte +33 -0
- package/components/JobArgs.svelte.d.ts +16 -0
- package/components/JobStatus.svelte +21 -17
- package/components/LogViewer.svelte +11 -6
- package/components/Modal.svelte +5 -5
- package/components/Modal.svelte.d.ts +4 -4
- package/components/ModulePreview.svelte +47 -63
- package/components/ModulePreview.svelte.d.ts +0 -1
- package/components/PageHeader.svelte +6 -6
- package/components/Password.svelte +1 -1
- package/components/Path.svelte +28 -7
- package/components/Path.svelte.d.ts +3 -3
- package/components/Popover.svelte +61 -0
- package/components/Popover.svelte.d.ts +17 -0
- package/components/Required.svelte +4 -4
- package/components/Required.svelte.d.ts +1 -0
- package/components/ResourceEditor.svelte +105 -116
- package/components/ResourceEditor.svelte.d.ts +0 -1
- package/components/ResourcePicker.svelte +9 -6
- package/components/ResourceTypePicker.svelte +3 -1
- package/components/RunChart.svelte +102 -0
- package/components/RunChart.svelte.d.ts +20 -0
- package/components/RunForm.svelte +58 -40
- package/components/RunForm.svelte.d.ts +13 -0
- package/components/SchemaEditor.svelte +5 -5
- package/components/SchemaEditorProperty.svelte +1 -1
- package/components/SchemaForm.svelte +3 -1
- package/components/SchemaForm.svelte.d.ts +1 -0
- package/components/SchemaModal.svelte +113 -105
- package/components/SchemaModal.svelte.d.ts +4 -4
- package/components/SchemaViewer.svelte +7 -4
- package/components/ScriptBuilder.svelte +143 -163
- package/components/ScriptBuilder.svelte.d.ts +1 -0
- package/components/ScriptEditor.svelte +117 -114
- package/components/ScriptEditor.svelte.d.ts +1 -0
- package/components/ScriptPicker.svelte +16 -24
- package/components/ScriptSchema.svelte +33 -32
- package/components/ShareModal.svelte +74 -68
- package/components/ShareModal.svelte.d.ts +2 -2
- package/components/SimpleEditor.svelte +4 -2
- package/components/SuperadminSettings.svelte +134 -0
- package/components/SuperadminSettings.svelte.d.ts +19 -0
- package/components/TableCustom.svelte +1 -1
- package/components/TableSimple.svelte +1 -1
- package/components/TestJobLoader.svelte +14 -6
- package/components/TestJobLoader.svelte.d.ts +4 -2
- package/components/Toggle.svelte +5 -3
- package/components/Toggle.svelte.d.ts +2 -0
- package/components/Tooltip.svelte +9 -64
- package/components/UserSettings.svelte +241 -0
- package/components/UserSettings.svelte.d.ts +19 -0
- package/components/VariableEditor.svelte +80 -74
- package/components/common/actionRow/ActionRow.svelte +5 -4
- package/components/common/alert/Alert.svelte +1 -1
- package/components/common/alert/Alert.svelte.d.ts +1 -0
- package/components/common/badge/Badge.svelte +2 -2
- package/components/common/breadcrumb/Breadcrumb.svelte +24 -0
- package/components/common/breadcrumb/Breadcrumb.svelte.d.ts +22 -0
- package/components/common/button/Button.svelte +20 -8
- package/components/common/button/Button.svelte.d.ts +1 -0
- package/components/common/button/model.d.ts +1 -1
- package/components/common/confirmationModal/ConfirmationModal.svelte +1 -0
- package/components/common/drawer/Drawer.svelte +38 -7
- package/components/common/drawer/Drawer.svelte.d.ts +6 -0
- package/components/common/drawer/DrawerContent.svelte +21 -7
- package/components/common/drawer/DrawerContent.svelte.d.ts +4 -0
- package/components/common/index.d.ts +1 -0
- package/components/common/index.js +1 -0
- package/components/common/kbd/Kbd.svelte +1 -1
- package/components/common/languageIcons/Bash.svelte +18 -0
- package/components/common/languageIcons/Bash.svelte.d.ts +27 -0
- package/components/common/languageIcons/Go.svelte +34 -0
- package/components/common/languageIcons/Go.svelte.d.ts +27 -0
- package/components/common/languageIcons/LanguageIcon.svelte +19 -0
- package/components/common/languageIcons/LanguageIcon.svelte.d.ts +21 -0
- package/components/common/languageIcons/Python.svelte +51 -0
- package/components/common/languageIcons/Python.svelte.d.ts +27 -0
- package/components/common/languageIcons/TypeScript.svelte +31 -0
- package/components/common/languageIcons/TypeScript.svelte.d.ts +27 -0
- package/components/common/languageIcons/index.d.ts +5 -0
- package/components/common/languageIcons/index.js +5 -0
- package/components/common/menu/Menu.svelte +15 -19
- package/components/common/skeleton/Skeleton.svelte +1 -2
- package/components/common/skeleton/Skeleton.svelte.d.ts +0 -1
- package/components/common/skeleton/SkeletonElement.svelte +1 -1
- package/components/common/tabs/TabContent.svelte +2 -1
- package/components/common/tabs/TabContent.svelte.d.ts +1 -0
- package/components/common/tabs/Tabs.svelte +8 -6
- package/components/common/tabs/Tabs.svelte.d.ts +1 -0
- package/components/flows/FlowEditor.svelte +11 -20
- package/components/flows/FlowProgressBar.svelte +55 -0
- package/components/flows/FlowProgressBar.svelte.d.ts +21 -0
- package/components/flows/common/FlowCardHeader.svelte +5 -6
- package/components/flows/content/CapturePayload.svelte +112 -0
- package/components/flows/content/CapturePayload.svelte.d.ts +17 -0
- package/components/flows/content/DynamicInputHelpBox.svelte +6 -10
- package/components/flows/content/FlowBranchAllWrapper.svelte +21 -0
- package/components/flows/content/FlowBranchAllWrapper.svelte.d.ts +21 -0
- package/components/flows/content/FlowBranchOneWrapper.svelte +49 -0
- package/components/flows/content/FlowBranchOneWrapper.svelte.d.ts +23 -0
- package/components/flows/content/FlowBranchesWrapper.svelte +140 -0
- package/components/flows/content/FlowBranchesWrapper.svelte.d.ts +19 -0
- package/components/flows/content/FlowEditorPanel.svelte +8 -6
- package/components/flows/content/FlowFailureModule.svelte +4 -6
- package/components/flows/content/FlowInput.svelte +31 -5
- package/components/flows/content/FlowInputs.svelte +119 -50
- package/components/flows/content/FlowInputs.svelte.d.ts +5 -4
- package/components/flows/content/FlowLoop.svelte +85 -142
- package/components/flows/content/FlowLoop.svelte.d.ts +2 -1
- package/components/flows/content/FlowModuleComponent.svelte +231 -0
- package/components/flows/content/FlowModuleComponent.svelte.d.ts +20 -0
- package/components/flows/content/FlowModuleEarlyStop.svelte +45 -48
- package/components/flows/content/FlowModuleEarlyStop.svelte.d.ts +1 -0
- package/components/flows/content/FlowModuleHeader.svelte +11 -40
- package/components/flows/content/FlowModuleHeader.svelte.d.ts +0 -1
- package/components/flows/content/FlowModuleScript.svelte +7 -12
- package/components/flows/content/FlowModuleScript.svelte.d.ts +1 -2
- package/components/flows/content/FlowModuleSuspend.svelte +31 -15
- package/components/flows/content/FlowModuleSuspend.svelte.d.ts +1 -0
- package/components/flows/content/FlowModuleWrapper.svelte +138 -38
- package/components/flows/content/FlowModuleWrapper.svelte.d.ts +6 -1
- package/components/flows/content/FlowRetries.svelte +13 -2
- package/components/flows/content/FlowRetries.svelte.d.ts +1 -0
- package/components/flows/content/FlowSchedules.svelte +0 -2
- package/components/flows/content/FlowSettings.svelte +103 -72
- package/components/flows/flowState.d.ts +8 -8
- package/components/flows/flowState.js +32 -17
- package/components/flows/flowStateUtils.d.ts +21 -38
- package/components/flows/flowStateUtils.js +86 -158
- package/components/flows/flowStore.d.ts +3 -2
- package/components/flows/flowStore.js +60 -7
- package/components/flows/header/FlowImportExportMenu.svelte +12 -22
- package/components/flows/header/FlowPreviewButtons.svelte +11 -11
- package/components/flows/map/FlowBranchAllMap.svelte +90 -0
- package/components/flows/map/FlowBranchAllMap.svelte.d.ts +17 -0
- package/components/flows/map/FlowBranchOneMap.svelte +116 -0
- package/components/flows/map/FlowBranchOneMap.svelte.d.ts +17 -0
- package/components/flows/map/FlowErrorHandlerItem.svelte +14 -11
- package/components/flows/map/FlowInputsItem.svelte +19 -0
- package/components/flows/map/FlowInputsItem.svelte.d.ts +14 -0
- package/components/flows/map/FlowModuleSchemaItem.svelte +53 -36
- package/components/flows/map/FlowModuleSchemaItem.svelte.d.ts +5 -5
- package/components/flows/map/FlowModuleSchemaMap.svelte +73 -144
- package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +2 -3
- package/components/flows/map/FlowSettingsItem.svelte +29 -0
- package/components/flows/map/FlowSettingsItem.svelte.d.ts +14 -0
- package/components/flows/map/InsertModuleButton.svelte +11 -0
- package/components/flows/map/InsertModuleButton.svelte.d.ts +16 -0
- package/components/flows/map/MapItem.svelte +105 -0
- package/components/flows/map/MapItem.svelte.d.ts +22 -0
- package/components/flows/pickers/FlowScriptPicker.svelte +14 -4
- package/components/flows/pickers/FlowScriptPicker.svelte.d.ts +1 -1
- package/components/flows/pickers/PickHubScript.svelte +5 -4
- package/components/flows/pickers/PickHubScript.svelte.d.ts +1 -0
- package/components/flows/pickers/PickScript.svelte +6 -5
- package/components/flows/pickers/PickScript.svelte.d.ts +1 -0
- package/components/flows/previousResults.d.ts +14 -0
- package/components/flows/previousResults.js +118 -0
- package/components/flows/propPicker/PropPickerWrapper.svelte +22 -15
- package/components/flows/propPicker/PropPickerWrapper.svelte.d.ts +6 -2
- package/components/flows/utils.d.ts +8 -5
- package/components/flows/utils.js +86 -56
- package/components/graph/FlowGraph.svelte +259 -0
- package/components/graph/FlowGraph.svelte.d.ts +20 -0
- package/components/graph/index.d.ts +3 -0
- package/components/graph/index.js +3 -0
- package/components/graph/model.d.ts +20 -0
- package/components/graph/model.js +9 -0
- package/components/graph/util.d.ts +9 -0
- package/components/graph/util.js +14 -0
- package/components/icons/WindmillIcon.svelte +85 -52
- package/components/icons/WindmillIcon.svelte.d.ts +2 -0
- package/components/jobs/JobDetail.svelte +40 -30
- package/components/landing/FlowGettingStarted.svelte +4 -3
- package/components/landing/FlowLandingBox.svelte +23 -53
- package/components/landing/RessourceGettingStarted.svelte +1 -1
- package/components/landing/ScriptBox.svelte +25 -27
- package/components/landing/ScriptGettingStarted.svelte +4 -3
- package/components/preview/FlowPreviewStatus.svelte +1 -1
- package/components/progressBar/ProgressBar.svelte +89 -0
- package/components/{ProgressBar.svelte.d.ts → progressBar/ProgressBar.svelte.d.ts} +5 -2
- package/components/progressBar/ProgressBarGeneralPart.svelte +22 -0
- package/components/progressBar/ProgressBarGeneralPart.svelte.d.ts +19 -0
- package/components/progressBar/ProgressBarLoopAccessor.svelte +14 -0
- package/components/progressBar/ProgressBarLoopAccessor.svelte.d.ts +19 -0
- package/components/progressBar/ProgressBarLoopPart.svelte +34 -0
- package/components/progressBar/ProgressBarLoopPart.svelte.d.ts +19 -0
- package/components/progressBar/index.d.ts +2 -0
- package/components/progressBar/index.js +2 -0
- package/components/progressBar/model.d.ts +32 -0
- package/components/progressBar/model.js +14 -0
- package/components/propertyPicker/ObjectViewer.svelte +18 -13
- package/components/propertyPicker/ObjectViewer.svelte.d.ts +1 -0
- package/components/propertyPicker/PropPicker.svelte +90 -44
- package/components/propertyPicker/PropPicker.svelte.d.ts +4 -1
- package/components/propertyPicker/PropPickerResult.svelte +12 -0
- package/components/propertyPicker/PropPickerResult.svelte.d.ts +18 -0
- package/components/propertyPicker/utils.d.ts +1 -1
- package/components/propertyPicker/utils.js +4 -1
- package/components/{script_editor → scriptEditor}/LogPanel.svelte +30 -20
- package/components/{script_editor → scriptEditor}/LogPanel.svelte.d.ts +0 -0
- package/components/scripts/CreateActions.svelte +2 -2
- package/components/sidebar/SidebarContent.svelte +1 -1
- package/components/sidebar/UserMenu.svelte +17 -1
- package/components/sidebar/UserMenu.svelte.d.ts +3 -0
- package/components/sidebar/WorkspaceMenu.svelte +16 -14
- package/components/splitPanes/SplitPanesWrapper.svelte +34 -0
- package/components/splitPanes/SplitPanesWrapper.svelte.d.ts +20 -0
- package/editorUtils.js +2 -0
- package/gen/core/OpenAPI.js +1 -1
- package/gen/index.d.ts +8 -1
- package/gen/index.js +5 -0
- package/gen/models/AppWithLastVersion.d.ts +21 -0
- package/gen/models/AppWithLastVersion.js +12 -0
- package/gen/models/BranchAll.d.ts +10 -0
- package/gen/models/{Branches.js → BranchAll.js} +0 -0
- package/gen/models/{Branches.d.ts → BranchOne.d.ts} +3 -5
- package/gen/models/BranchOne.js +4 -0
- package/gen/models/CompletedJob.d.ts +4 -2
- package/gen/models/CompletedJob.js +2 -0
- package/gen/models/FlowModule.d.ts +2 -1
- package/gen/models/FlowModuleValue.d.ts +4 -2
- package/gen/models/FlowStatusModule.d.ts +11 -2
- package/gen/models/ForloopFlow.d.ts +1 -0
- package/gen/models/Identity.d.ts +3 -0
- package/gen/models/Identity.js +4 -0
- package/gen/models/ListableApp.d.ts +16 -0
- package/gen/models/ListableApp.js +12 -0
- package/gen/models/ListableVariable.d.ts +1 -1
- package/gen/models/PathScript.d.ts +2 -0
- package/gen/models/Policy.d.ts +12 -0
- package/gen/models/Policy.js +12 -0
- package/gen/models/Preview.d.ts +2 -1
- package/gen/models/Preview.js +1 -0
- package/gen/models/QueuedJob.d.ts +4 -2
- package/gen/models/QueuedJob.js +2 -0
- package/gen/models/RawScript.d.ts +4 -1
- package/gen/models/RawScript.js +1 -0
- package/gen/models/Script.d.ts +4 -2
- package/gen/models/Script.js +2 -0
- package/gen/services/AppService.d.ts +31 -0
- package/gen/services/AppService.js +49 -0
- package/gen/services/CaptureService.d.ts +30 -0
- package/gen/services/CaptureService.js +52 -0
- package/gen/services/FlowService.d.ts +90 -0
- package/gen/services/FlowService.js +72 -0
- package/gen/services/JobService.d.ts +57 -8
- package/gen/services/JobService.js +78 -10
- package/gen/services/OauthService.d.ts +6 -15
- package/gen/services/OauthService.js +6 -19
- package/gen/services/ResourceService.d.ts +10 -1
- package/gen/services/ResourceService.js +16 -1
- package/gen/services/ScriptService.d.ts +28 -3
- package/gen/services/ScriptService.js +27 -0
- package/gen/services/UserService.d.ts +14 -6
- package/gen/services/UserService.js +25 -11
- package/infer.d.ts +1 -1
- package/infer.js +35 -18
- package/logout.d.ts +1 -1
- package/logout.js +7 -9
- package/package.json +74 -68
- package/script_helpers.d.ts +5 -3
- package/script_helpers.js +42 -12
- package/scripts.js +9 -4
- package/utils.d.ts +8 -9
- package/utils.js +42 -81
- package/components/AutosizedTextarea.svelte +0 -34
- package/components/AutosizedTextarea.svelte.d.ts +0 -19
- package/components/ProgressBar.svelte +0 -31
- package/components/ProgressBarPart.svelte +0 -20
- package/components/ProgressBarPart.svelte.d.ts +0 -20
- package/components/Switch.svelte +0 -61
- package/components/Switch.svelte.d.ts +0 -31
- package/components/flows/content/CopyFirstStepSchema.svelte +0 -13
- package/components/flows/content/CopyFirstStepSchema.svelte.d.ts +0 -14
- package/components/flows/content/FlowLoopWrapper.svelte +0 -9
- package/components/flows/content/FlowLoopWrapper.svelte.d.ts +0 -14
- package/components/flows/content/FlowModule.svelte +0 -217
- package/components/flows/content/FlowModule.svelte.d.ts +0 -29
- package/gen/schemas/$AuditLog.d.ts +0 -32
- package/gen/schemas/$AuditLog.js +0 -35
- package/gen/schemas/$CompletedJob.d.ts +0 -98
- package/gen/schemas/$CompletedJob.js +0 -103
- package/gen/schemas/$ContextualVariable.d.ts +0 -16
- package/gen/schemas/$ContextualVariable.js +0 -19
- package/gen/schemas/$CreateResource.d.ts +0 -22
- package/gen/schemas/$CreateResource.js +0 -25
- package/gen/schemas/$CreateVariable.d.ts +0 -26
- package/gen/schemas/$CreateVariable.js +0 -29
- package/gen/schemas/$CreateWorkspace.d.ts +0 -20
- package/gen/schemas/$CreateWorkspace.js +0 -23
- package/gen/schemas/$EditResource.d.ts +0 -13
- package/gen/schemas/$EditResource.js +0 -16
- package/gen/schemas/$EditResourceType.d.ts +0 -10
- package/gen/schemas/$EditResourceType.js +0 -13
- package/gen/schemas/$EditSchedule.d.ts +0 -20
- package/gen/schemas/$EditSchedule.js +0 -23
- package/gen/schemas/$EditVariable.d.ts +0 -16
- package/gen/schemas/$EditVariable.js +0 -19
- package/gen/schemas/$EditWorkspaceUser.d.ts +0 -7
- package/gen/schemas/$EditWorkspaceUser.js +0 -10
- package/gen/schemas/$Flow.d.ts +0 -23
- package/gen/schemas/$Flow.js +0 -26
- package/gen/schemas/$FlowMetadata.d.ts +0 -31
- package/gen/schemas/$FlowMetadata.js +0 -34
- package/gen/schemas/$FlowPreview.d.ts +0 -80
- package/gen/schemas/$FlowPreview.js +0 -83
- package/gen/schemas/$GlobalUserInfo.d.ts +0 -26
- package/gen/schemas/$GlobalUserInfo.js +0 -29
- package/gen/schemas/$Group.d.ts +0 -23
- package/gen/schemas/$Group.js +0 -26
- package/gen/schemas/$Job.d.ts +0 -17
- package/gen/schemas/$Job.js +0 -20
- package/gen/schemas/$ListableVariable.d.ts +0 -35
- package/gen/schemas/$ListableVariable.js +0 -38
- package/gen/schemas/$Login.d.ts +0 -12
- package/gen/schemas/$Login.js +0 -15
- package/gen/schemas/$MainArgSignature.d.ts +0 -50
- package/gen/schemas/$MainArgSignature.js +0 -53
- package/gen/schemas/$NewSchedule.d.ts +0 -30
- package/gen/schemas/$NewSchedule.js +0 -33
- package/gen/schemas/$NewToken.d.ts +0 -11
- package/gen/schemas/$NewToken.js +0 -14
- package/gen/schemas/$NewUser.d.ts +0 -16
- package/gen/schemas/$NewUser.js +0 -19
- package/gen/schemas/$Preview.d.ts +0 -19
- package/gen/schemas/$Preview.js +0 -22
- package/gen/schemas/$QueuedJob.d.ts +0 -139
- package/gen/schemas/$QueuedJob.js +0 -144
- package/gen/schemas/$Resource.d.ts +0 -31
- package/gen/schemas/$Resource.js +0 -34
- package/gen/schemas/$ResourceType.d.ts +0 -17
- package/gen/schemas/$ResourceType.js +0 -20
- package/gen/schemas/$Schedule.d.ts +0 -47
- package/gen/schemas/$Schedule.js +0 -50
- package/gen/schemas/$Script.d.ts +0 -77
- package/gen/schemas/$Script.js +0 -80
- package/gen/schemas/$ScriptArgs.d.ts +0 -6
- package/gen/schemas/$ScriptArgs.js +0 -9
- package/gen/schemas/$SlackToken.d.ts +0 -24
- package/gen/schemas/$SlackToken.js +0 -27
- package/gen/schemas/$TokenResponse.d.ts +0 -23
- package/gen/schemas/$TokenResponse.js +0 -26
- package/gen/schemas/$TruncatedToken.d.ts +0 -25
- package/gen/schemas/$TruncatedToken.js +0 -28
- package/gen/schemas/$Usage.d.ts +0 -13
- package/gen/schemas/$Usage.js +0 -16
- package/gen/schemas/$User.d.ts +0 -42
- package/gen/schemas/$User.js +0 -45
- package/gen/schemas/$UserWorkspaceList.d.ts +0 -28
- package/gen/schemas/$UserWorkspaceList.js +0 -31
- package/gen/schemas/$WorkerPing.d.ts +0 -31
- package/gen/schemas/$WorkerPing.js +0 -34
- package/gen/schemas/$Workspace.d.ts +0 -19
- package/gen/schemas/$Workspace.js +0 -22
- package/gen/schemas/$WorkspaceInvite.d.ts +0 -16
- package/gen/schemas/$WorkspaceInvite.js +0 -19
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { Node as SvelvetNode } from "svelvet";
|
|
2
|
+
export declare type ModuleHost = 'workspace' | 'inline' | 'hub';
|
|
3
|
+
export declare type Node = SvelvetNode & {
|
|
4
|
+
parentIds: string[];
|
|
5
|
+
edgeLabel?: string;
|
|
6
|
+
host?: ModuleHost;
|
|
7
|
+
};
|
|
8
|
+
export declare type Loop = {
|
|
9
|
+
type: 'loop';
|
|
10
|
+
items: NestedNodes;
|
|
11
|
+
};
|
|
12
|
+
export declare type Branch = {
|
|
13
|
+
type: 'branch';
|
|
14
|
+
items: NestedNodes[];
|
|
15
|
+
};
|
|
16
|
+
export declare type GraphItem = Node | Loop | Branch;
|
|
17
|
+
export declare type NestedNodes = GraphItem[];
|
|
18
|
+
export declare function isNode(item: GraphItem | NestedNodes | undefined): item is Node;
|
|
19
|
+
export declare function isLoop(item: GraphItem | NestedNodes | undefined): item is Loop;
|
|
20
|
+
export declare function isBranch(item: GraphItem | NestedNodes | undefined): item is Branch;
|
|
@@ -1,68 +1,101 @@
|
|
|
1
1
|
<script>export let height = '24px';
|
|
2
2
|
export let width = '24px';
|
|
3
|
+
export let white = false;
|
|
3
4
|
</script>
|
|
4
5
|
|
|
6
|
+
<!-- Generator: Adobe Illustrator 26.5.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
5
7
|
<svg
|
|
8
|
+
class={$$props.class}
|
|
9
|
+
version="1.1"
|
|
10
|
+
id="Calque_1"
|
|
6
11
|
xmlns="http://www.w3.org/2000/svg"
|
|
12
|
+
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
7
13
|
x="0px"
|
|
8
14
|
y="0px"
|
|
9
15
|
{width}
|
|
10
16
|
{height}
|
|
11
|
-
viewBox="0 0
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
inkscape:export-filename="/home/rfiszel/Downloads/windmill.png"
|
|
15
|
-
inkscape:export-xdpi="31.02663"
|
|
16
|
-
inkscape:export-ydpi="31.02663"
|
|
17
|
+
viewBox="0 0 256 256"
|
|
18
|
+
style="enable-background:new 0 0 256 256;"
|
|
19
|
+
xml:space="preserve"
|
|
17
20
|
>
|
|
18
|
-
<
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
21
|
+
<style>
|
|
22
|
+
.st0 {
|
|
23
|
+
fill: #ffffff;
|
|
24
|
+
}
|
|
25
|
+
.st1 {
|
|
26
|
+
opacity: 0.4;
|
|
27
|
+
fill: #ffffff;
|
|
28
|
+
}
|
|
29
|
+
.st2 {
|
|
30
|
+
fill: #999;
|
|
31
|
+
}
|
|
32
|
+
.st3 {
|
|
33
|
+
fill: black;
|
|
34
|
+
}
|
|
35
|
+
.st4 {
|
|
36
|
+
fill: #999;
|
|
37
|
+
}
|
|
38
|
+
.st5 {
|
|
39
|
+
fill: url(#SVGID_1_);
|
|
40
|
+
}
|
|
41
|
+
.st6 {
|
|
42
|
+
fill: url(#SVGID_00000021089067129159788970000008246765442136188072_);
|
|
43
|
+
}
|
|
44
|
+
.st7 {
|
|
45
|
+
fill: url(#SVGID_00000117639240116366130650000015074833605515028638_);
|
|
46
|
+
}
|
|
47
|
+
.st8 {
|
|
48
|
+
opacity: 0.4;
|
|
49
|
+
fill: url(#SVGID_00000101781798616409025840000016567063639337360777_);
|
|
50
|
+
}
|
|
51
|
+
.st9 {
|
|
52
|
+
opacity: 0.4;
|
|
53
|
+
fill: url(#SVGID_00000052086836598721292040000002033117744178971046_);
|
|
54
|
+
}
|
|
55
|
+
.st10 {
|
|
56
|
+
opacity: 0.4;
|
|
57
|
+
fill: url(#SVGID_00000159460939004760751800000002448009281983951536_);
|
|
58
|
+
}
|
|
59
|
+
.st11 {
|
|
60
|
+
opacity: 0.4;
|
|
61
|
+
fill: url(#SVGID_00000013177830667419993080000017721442101626521532_);
|
|
62
|
+
}
|
|
63
|
+
.st12 {
|
|
64
|
+
opacity: 0.4;
|
|
65
|
+
fill: url(#SVGID_00000152235521444854938490000006526001119318383285_);
|
|
66
|
+
}
|
|
67
|
+
.st13 {
|
|
68
|
+
opacity: 0.4;
|
|
69
|
+
fill: url(#SVGID_00000119823135212293698520000012774889010992664993_);
|
|
70
|
+
}</style>
|
|
71
|
+
<g>
|
|
72
|
+
<polygon
|
|
73
|
+
class="st2"
|
|
74
|
+
points="134.78,14.22 114.31,48.21 101.33,69.75 158.22,69.75 177.97,36.95 191.67,14.22 "
|
|
56
75
|
/>
|
|
57
|
-
<
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
76
|
+
<polygon
|
|
77
|
+
class:st3={!white}
|
|
78
|
+
class:st0={white}
|
|
79
|
+
points="227.55,69.75 186.61,69.75 101.33,69.75 129.78,119.02 158.16,119.02 228.61,119.02 256,119.02 "
|
|
61
80
|
/>
|
|
62
|
-
<
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
81
|
+
<polygon
|
|
82
|
+
class:st3={!white}
|
|
83
|
+
class:st0={white}
|
|
84
|
+
points="136.93,132.47 116.46,167.93 73.82,241.78 130.71,241.78 144.9,217.2 180.13,156.18 193.82,132.46
|
|
85
|
+
"
|
|
86
|
+
/>
|
|
87
|
+
<polygon
|
|
88
|
+
class:st3={!white}
|
|
89
|
+
class:st0={white}
|
|
90
|
+
points="121.7,131.95 101.23,96.49 58.59,22.63 30.15,71.91 44.34,96.49 79.57,157.5 93.26,181.22 "
|
|
91
|
+
/>
|
|
92
|
+
<polygon
|
|
93
|
+
class="st2"
|
|
94
|
+
points="64.81,131.95 25.15,131.21 0,130.74 28.44,180.01 66.73,180.72 93.26,181.21 "
|
|
95
|
+
/>
|
|
96
|
+
<polygon
|
|
97
|
+
class="st2"
|
|
98
|
+
points="165.38,181.74 184.58,216.46 196.75,238.47 225.19,189.2 206.66,155.69 193.83,132.46 "
|
|
66
99
|
/>
|
|
67
100
|
</g>
|
|
68
101
|
</svg>
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
<script>import {
|
|
2
|
-
import {
|
|
1
|
+
<script>import { goto } from '$app/navigation';
|
|
2
|
+
import { page } from '$app/stores';
|
|
3
|
+
import { displayDate, displayDaysAgo, forLater, msToSec, truncateHash, truncateRev } from '../../utils';
|
|
4
|
+
import { faCalendar, faCircle, faClock, faFastForward, faHourglassHalf, faRobot, faSearch, faTimes, faUser, faWind } from '@fortawesome/free-solid-svg-icons';
|
|
3
5
|
import Icon from 'svelte-awesome';
|
|
4
6
|
import { check } from 'svelte-awesome/icons';
|
|
7
|
+
import { Badge, Button } from '../common';
|
|
5
8
|
const SMALL_ICON_SCALE = 0.7;
|
|
6
9
|
export let job;
|
|
7
10
|
</script>
|
|
@@ -13,7 +16,7 @@ export let job;
|
|
|
13
16
|
{#if job === undefined}
|
|
14
17
|
No job found
|
|
15
18
|
{:else}
|
|
16
|
-
<div class="block text-center align-middle
|
|
19
|
+
<div class="block text-center align-middle px-6">
|
|
17
20
|
{#if 'success' in job && job.success}
|
|
18
21
|
{#if job.is_skipped}
|
|
19
22
|
<Icon
|
|
@@ -61,36 +64,43 @@ export let job;
|
|
|
61
64
|
{/if}
|
|
62
65
|
</div>
|
|
63
66
|
|
|
64
|
-
<
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
class="
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
<span class="bg-blue-200 text-gray-700 text-xs rounded px-1 mx-3"
|
|
83
|
-
><a href="/run/{job.parent_job}">step of flow</a></span
|
|
67
|
+
<div class="flex flex-row space-x-2">
|
|
68
|
+
<div class="whitespace-nowrap">
|
|
69
|
+
{#if job.script_path}
|
|
70
|
+
<a href="/run/{job.id}?workspace={job.workspace_id}">{job.script_path} </a>
|
|
71
|
+
{:else if 'job_kind' in job && job.job_kind == 'preview'}
|
|
72
|
+
<a href="/run/{job.id}?workspace={job.workspace_id}">Preview without path </a>
|
|
73
|
+
{:else if 'job_kind' in job && job.job_kind == 'dependencies'}
|
|
74
|
+
<a href="/run/{job.id}?workspace={job.workspace_id}"
|
|
75
|
+
>lock deps of {truncateHash(job.script_hash ?? '')}</a
|
|
76
|
+
>
|
|
77
|
+
{:else if 'job_kind' in job && job.job_kind == 'identity'}
|
|
78
|
+
<a href="/run/{job.id}?workspace={job.workspace_id}">no op</a>
|
|
79
|
+
{/if}
|
|
80
|
+
<button
|
|
81
|
+
class="ml-1"
|
|
82
|
+
on:click={() => {
|
|
83
|
+
goto(`/runs/${job.script_path}?${$page.url.searchParams.toString()}`)
|
|
84
|
+
}}><Badge><Icon scale={0.7} data={faSearch} /></Badge></button
|
|
84
85
|
>
|
|
85
|
-
|
|
86
|
-
|
|
86
|
+
</div>
|
|
87
|
+
<div class="whitespace-nowrap">
|
|
88
|
+
{#if 'job_kind' in job}<a href="/run/{job.id}"
|
|
89
|
+
><Badge color="blue">{job.job_kind}</Badge></a
|
|
90
|
+
>
|
|
91
|
+
{/if}
|
|
92
|
+
{#if job.is_flow_step && (job.job_kind == 'script' || job.job_kind == 'preview')}
|
|
93
|
+
<a href="/run/{job.parent_job}?workspace={job.workspace_id}"
|
|
94
|
+
><Badge color="gray">flow step</Badge></a
|
|
95
|
+
>
|
|
96
|
+
{/if}
|
|
97
|
+
</div>
|
|
98
|
+
</div>
|
|
87
99
|
{/if}
|
|
88
100
|
</div>
|
|
89
|
-
<div
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
>
|
|
93
|
-
</div>
|
|
101
|
+
<div class="pl-14 italic text-gray-500 text-2xs whitespace-nowrap overflow-hidden"
|
|
102
|
+
>{truncateRev(job.id, 8, '')}</div
|
|
103
|
+
>
|
|
94
104
|
</div>
|
|
95
105
|
<div class="bg-white grid grid-cols-2 gap-x-2 col-span-2">
|
|
96
106
|
<div class="w-full text-gray-500 text-xs text-left flex flex-col gap-1 mx-4 overflow-hidden">
|
|
@@ -5,9 +5,9 @@
|
|
|
5
5
|
import HatIcon from '../icons/HatIcon.svelte'
|
|
6
6
|
</script>
|
|
7
7
|
|
|
8
|
-
<div class="p-4 border border-gray-300 rounded-md bg-gray-50 ">
|
|
8
|
+
<div class="p-4 border border-gray-300 rounded-md bg-gray-50 overflow-auto">
|
|
9
9
|
<div class="flex items-center">
|
|
10
|
-
<h3 class="inline-flex items-center
|
|
10
|
+
<h3 class="inline-flex items-center font-semibold">
|
|
11
11
|
<HatIcon class="w-6 h-6 mr-2" />
|
|
12
12
|
Getting started
|
|
13
13
|
</h3>
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
together. Each Flow is composed of one or more steps. Create a new flow or find inspiration on
|
|
18
18
|
the Hub!
|
|
19
19
|
</div>
|
|
20
|
-
<div class="
|
|
20
|
+
<div class="flex flex-row flex-wrap gap-y-2">
|
|
21
21
|
<Button
|
|
22
22
|
on:click={() => goto('flows/add')}
|
|
23
23
|
color="dark"
|
|
@@ -42,6 +42,7 @@
|
|
|
42
42
|
variant="border"
|
|
43
43
|
size="xs"
|
|
44
44
|
startIcon={{ icon: faExternalLink }}
|
|
45
|
+
target="_blank"
|
|
45
46
|
>
|
|
46
47
|
Explore community flows on WindmillHub
|
|
47
48
|
</Button>
|
|
@@ -1,69 +1,39 @@
|
|
|
1
1
|
<script>import { goto } from '$app/navigation';
|
|
2
|
+
import { faPencil, faPlay } from '@fortawesome/free-solid-svg-icons';
|
|
3
|
+
import { Button } from '../common';
|
|
2
4
|
export let flow;
|
|
3
5
|
</script>
|
|
4
6
|
|
|
5
|
-
<
|
|
6
|
-
|
|
7
|
+
<a
|
|
8
|
+
href="#{flow.path}"
|
|
9
|
+
class="border p-4 rounded-sm shadow-sm space-y-2 hover:border-blue-600 text-gray-800 flex flex-col justify-between cursor-pointer"
|
|
7
10
|
on:click={() => goto(`/flows/get/${flow.path}`)}
|
|
8
11
|
>
|
|
9
|
-
<div class="font-bold">{flow.summary}</div>
|
|
12
|
+
<div class="font-bold">{flow.summary || flow.path}</div>
|
|
10
13
|
|
|
11
|
-
<div class="inline-flex justify-between w-full
|
|
14
|
+
<div class="inline-flex justify-between w-full break-words">
|
|
12
15
|
<div class="text-xs">{flow.path}</div>
|
|
13
16
|
</div>
|
|
14
17
|
|
|
15
|
-
<div
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
data-dismiss-target="#alert-additional-content-5"
|
|
23
|
-
aria-label="Close"
|
|
18
|
+
<div class="flex flex-row-reverse gap-x-2">
|
|
19
|
+
<Button
|
|
20
|
+
on:click={() => goto(`/flows/edit/${flow.path}`)}
|
|
21
|
+
color="dark"
|
|
22
|
+
size="xs"
|
|
23
|
+
variant="border"
|
|
24
|
+
startIcon={{ icon: faPencil }}
|
|
24
25
|
>
|
|
25
|
-
<svg
|
|
26
|
-
class="w-4 h-4 mr-2"
|
|
27
|
-
fill="none"
|
|
28
|
-
stroke="currentColor"
|
|
29
|
-
viewBox="0 0 24 24"
|
|
30
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
31
|
-
><path
|
|
32
|
-
stroke-linecap="round"
|
|
33
|
-
stroke-linejoin="round"
|
|
34
|
-
stroke-width="2"
|
|
35
|
-
d="M15.232 5.232l3.536 3.536m-2.036-5.036a2.5 2.5 0 113.536 3.536L6.5 21.036H3v-3.572L16.732 3.732z"
|
|
36
|
-
/>
|
|
37
|
-
</svg>
|
|
38
26
|
Edit
|
|
39
|
-
</
|
|
27
|
+
</Button>
|
|
40
28
|
|
|
41
|
-
<
|
|
42
|
-
on:click
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
29
|
+
<Button
|
|
30
|
+
on:click={() => goto(`/flows/run/${flow.path}`)}
|
|
31
|
+
color="dark"
|
|
32
|
+
size="xs"
|
|
33
|
+
variant="border"
|
|
34
|
+
startIcon={{ icon: faPlay }}
|
|
47
35
|
>
|
|
48
|
-
<svg
|
|
49
|
-
class="w-4 h-4 mr-2"
|
|
50
|
-
fill="none"
|
|
51
|
-
stroke="currentColor"
|
|
52
|
-
viewBox="0 0 24 24"
|
|
53
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
54
|
-
><path
|
|
55
|
-
stroke-linecap="round"
|
|
56
|
-
stroke-linejoin="round"
|
|
57
|
-
stroke-width="2"
|
|
58
|
-
d="M14.752 11.168l-3.197-2.132A1 1 0 0010 9.87v4.263a1 1 0 001.555.832l3.197-2.132a1 1 0 000-1.664z"
|
|
59
|
-
/><path
|
|
60
|
-
stroke-linecap="round"
|
|
61
|
-
stroke-linejoin="round"
|
|
62
|
-
stroke-width="2"
|
|
63
|
-
d="M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
|
|
64
|
-
/>
|
|
65
|
-
</svg>
|
|
66
36
|
Run
|
|
67
|
-
</
|
|
37
|
+
</Button>
|
|
68
38
|
</div>
|
|
69
|
-
</
|
|
39
|
+
</a>
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
<div class="p-4 border border-gray-300 rounded-md bg-gray-50 dark:border-gray-600 dark:bg-gray-700">
|
|
9
9
|
<div class="flex items-center">
|
|
10
|
-
<h3 class="inline-flex items-center
|
|
10
|
+
<h3 class="inline-flex items-center font-semibold">
|
|
11
11
|
<HatIcon class="w-6 h-6 mr-2" />
|
|
12
12
|
Getting started
|
|
13
13
|
</h3>
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
<script>import { goto } from '$app/navigation';
|
|
2
2
|
import { truncateHash } from '../../utils';
|
|
3
3
|
import { faPencil, faPlay } from '@fortawesome/free-solid-svg-icons';
|
|
4
|
-
import { Button, Badge
|
|
4
|
+
import { Button, Badge } from '../common';
|
|
5
5
|
export let script;
|
|
6
6
|
</script>
|
|
7
7
|
|
|
8
|
-
<
|
|
9
|
-
class="border p-4 rounded-sm shadow-sm space-y-2 hover:border-blue-600 flex flex-col justify-between
|
|
10
|
-
|
|
8
|
+
<a
|
|
9
|
+
class="border p-4 rounded-sm shadow-sm space-y-2 hover:border-blue-600 text-gray-800 flex flex-col justify-between"
|
|
10
|
+
href="/scripts/get/{script.hash}"
|
|
11
11
|
>
|
|
12
12
|
<div class="font-bold">{script.summary || script.path}</div>
|
|
13
13
|
|
|
@@ -28,27 +28,25 @@ export let script;
|
|
|
28
28
|
</Badge>
|
|
29
29
|
{/if}
|
|
30
30
|
</div>
|
|
31
|
-
<
|
|
32
|
-
<
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
</Button>
|
|
31
|
+
<div class="flex flex-row-reverse gap-x-2">
|
|
32
|
+
<Button
|
|
33
|
+
on:click={() => goto(`/scripts/edit/${script.hash}?step=2`)}
|
|
34
|
+
color="dark"
|
|
35
|
+
size="xs"
|
|
36
|
+
variant="border"
|
|
37
|
+
startIcon={{ icon: faPencil }}
|
|
38
|
+
>
|
|
39
|
+
Edit
|
|
40
|
+
</Button>
|
|
42
41
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
</div>
|
|
42
|
+
<Button
|
|
43
|
+
on:click={() => goto(`/scripts/run/${script.hash}`)}
|
|
44
|
+
color="dark"
|
|
45
|
+
size="xs"
|
|
46
|
+
variant="border"
|
|
47
|
+
startIcon={{ icon: faPlay }}
|
|
48
|
+
>
|
|
49
|
+
Run
|
|
50
|
+
</Button>
|
|
51
|
+
</div>
|
|
52
|
+
</a>
|
|
@@ -5,9 +5,9 @@
|
|
|
5
5
|
import HatIcon from '../icons/HatIcon.svelte'
|
|
6
6
|
</script>
|
|
7
7
|
|
|
8
|
-
<div class="p-4 border border-gray-300 rounded-md bg-gray-50 ">
|
|
8
|
+
<div class="p-4 border border-gray-300 rounded-md bg-gray-50 overflow-auto">
|
|
9
9
|
<div class="flex items-center">
|
|
10
|
-
<h3 class="inline-flex items-center
|
|
10
|
+
<h3 class="inline-flex items-center font-semibold">
|
|
11
11
|
<HatIcon class="w-6 h-6 mr-2" />
|
|
12
12
|
Getting started
|
|
13
13
|
</h3>
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
<div class="mt-2 mb-4 text-sm text-gray-700 ">
|
|
16
16
|
Create a new script or find inspiration on the Hub!
|
|
17
17
|
</div>
|
|
18
|
-
<div class="inline-flex flex-wrap gap-y-2
|
|
18
|
+
<div class="inline-flex flex-wrap gap-y-2">
|
|
19
19
|
<Button
|
|
20
20
|
on:click={() => goto('scripts/add')}
|
|
21
21
|
color="dark"
|
|
@@ -40,6 +40,7 @@
|
|
|
40
40
|
variant="border"
|
|
41
41
|
size="xs"
|
|
42
42
|
startIcon={{ icon: faExternalLink }}
|
|
43
|
+
target="_blank"
|
|
43
44
|
>
|
|
44
45
|
Explore community scripts on WindmillHub
|
|
45
46
|
</Button>
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
<script>import { setContext } from 'svelte';
|
|
2
|
+
import { writable } from 'svelte/store';
|
|
3
|
+
import { isLoopStep, isLoopState, getTween } from './model';
|
|
4
|
+
import ProgressBarGeneralPart from './ProgressBarGeneralPart.svelte';
|
|
5
|
+
import ProgressBarLoopPart from './ProgressBarLoopPart.svelte';
|
|
6
|
+
export let steps;
|
|
7
|
+
export let error = false;
|
|
8
|
+
export let duration = 100;
|
|
9
|
+
let percent = getTween(0, duration);
|
|
10
|
+
let finished = false;
|
|
11
|
+
let state = [];
|
|
12
|
+
const stateStore = writable({
|
|
13
|
+
length: state.length,
|
|
14
|
+
index: 0,
|
|
15
|
+
finished,
|
|
16
|
+
error
|
|
17
|
+
});
|
|
18
|
+
setContext('state', stateStore);
|
|
19
|
+
$: state = steps.map((step, i) => {
|
|
20
|
+
if (isLoopStep(step)) {
|
|
21
|
+
return {
|
|
22
|
+
type: step.type,
|
|
23
|
+
isDone: error ? false : step.isDone,
|
|
24
|
+
isDoneChanged: !state[i]?.isDone && step.isDone,
|
|
25
|
+
length: step.length,
|
|
26
|
+
index: step.index,
|
|
27
|
+
indexChanged: state[i]?.index !== step.index
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
return {
|
|
32
|
+
type: step.type,
|
|
33
|
+
isDone: step.isDone,
|
|
34
|
+
isDoneChanged: !state[i]?.isDone && step.isDone
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
$: stateStore.update(({ index }) => ({ length: state.length, index, finished, error }));
|
|
39
|
+
$: stepIndex = state.findIndex(({ isDone }) => !isDone);
|
|
40
|
+
$: lastStep = state.at(-1);
|
|
41
|
+
$: if (typeof lastStep?.isDone === 'boolean') {
|
|
42
|
+
finished = lastStep.isDone;
|
|
43
|
+
if ($percent >= 100 && !lastStep.isDone) {
|
|
44
|
+
percent = getTween(0, duration);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
$: subStepIndex = lastStep ? lastStep['index'] : undefined;
|
|
48
|
+
$: length = 100 / (state.length || 1);
|
|
49
|
+
$: if (finished) {
|
|
50
|
+
percent.set(100);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
const product = length * stepIndex;
|
|
54
|
+
percent.set(product < 0 ? 0 : product);
|
|
55
|
+
}
|
|
56
|
+
</script>
|
|
57
|
+
|
|
58
|
+
<div class={$$props.class}>
|
|
59
|
+
<div
|
|
60
|
+
class="flex justify-between items-end font-medium mb-1 {error
|
|
61
|
+
? 'text-red-700'
|
|
62
|
+
: 'text-blue-700'}"
|
|
63
|
+
>
|
|
64
|
+
<span class="text-base">
|
|
65
|
+
{error
|
|
66
|
+
? 'Error occured'
|
|
67
|
+
: finished
|
|
68
|
+
? 'Done'
|
|
69
|
+
: `Step ${stepIndex + 1}${subStepIndex !== undefined ? `.${subStepIndex + 1}` : ''}`}
|
|
70
|
+
</span>
|
|
71
|
+
<span class="text-sm">
|
|
72
|
+
{state.length ? $percent.toFixed(0) : 0}%
|
|
73
|
+
</span>
|
|
74
|
+
</div>
|
|
75
|
+
<div class="flex w-full bg-gray-200 rounded-full h-4 overflow-hidden">
|
|
76
|
+
{#each state as step, index}
|
|
77
|
+
<div
|
|
78
|
+
class="h-full relative border-white {index === 0 ? '' : 'border-l'}"
|
|
79
|
+
style="width: {length}%;"
|
|
80
|
+
>
|
|
81
|
+
{#if isLoopState(step)}
|
|
82
|
+
<ProgressBarLoopPart {step} {index} {duration} />
|
|
83
|
+
{:else}
|
|
84
|
+
<ProgressBarGeneralPart {step} {index} {duration} />
|
|
85
|
+
{/if}
|
|
86
|
+
</div>
|
|
87
|
+
{/each}
|
|
88
|
+
</div>
|
|
89
|
+
</div>
|