windmill-components 1.448.50 → 1.472.2
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/package/components/AddUser.svelte +52 -54
- package/package/components/ApiConnectForm.svelte +57 -45
- package/package/components/AppConnectInner.svelte +18 -8
- package/package/components/ArgInput.svelte +132 -83
- package/package/components/ArgInput.svelte.d.ts +12 -1
- package/package/components/ArrayTypeNarrowing.svelte +35 -30
- package/package/components/ArrayTypeNarrowing.svelte.d.ts +1 -0
- package/package/components/AssignableTags.svelte +10 -6
- package/package/components/AssignableTagsInner.svelte +1 -1
- package/package/components/Auth0Setting.svelte +103 -0
- package/package/components/Auth0Setting.svelte.d.ts +16 -0
- package/package/components/AuthSettings.svelte +7 -2
- package/package/components/AutoscalingConfigEditor.svelte +12 -17
- package/package/components/ChangeInstanceUsername.svelte +15 -13
- package/package/components/ChangeInstanceUsernameInner.svelte +4 -5
- package/package/components/ChangeInstanceUsernameInner.svelte.d.ts +1 -0
- package/package/components/ConnectionSection.svelte +176 -0
- package/package/components/ConnectionSection.svelte.d.ts +28 -0
- package/package/components/ContentSearchInner.svelte +13 -3
- package/package/components/CronBuilder.svelte +12 -13
- package/package/components/CronBuilder.svelte.d.ts +1 -1
- package/package/components/CronInput.svelte +1 -1
- package/package/components/DBSchemaExplorer.svelte +18 -5
- package/package/components/DateTimeInput.svelte +3 -3
- package/package/components/DefaultTags.svelte +8 -8
- package/package/components/Dev.svelte +30 -8
- package/package/components/DisplayResult.svelte +132 -80
- package/package/components/DisplayResult.svelte.d.ts +2 -0
- package/package/components/DropdownV2.svelte +89 -16
- package/package/components/DropdownV2.svelte.d.ts +10 -27
- package/package/components/DropdownV2Inner.svelte +7 -4
- package/package/components/DropdownV2Inner.svelte.d.ts +4 -25
- package/package/components/DynSelect.svelte +6 -2
- package/package/components/EditableSchemaForm.svelte +48 -45
- package/package/components/EditableSchemaForm.svelte.d.ts +4 -1
- package/package/components/Editor.svelte +1 -1
- package/package/components/EditorBar.svelte +15 -13
- package/package/components/EditorBar.svelte.d.ts +1 -1
- package/package/components/EditorSettings.svelte +9 -7
- package/package/components/ErrorOrRecoveryHandler.svelte +195 -18
- package/package/components/ErrorOrRecoveryHandler.svelte.d.ts +2 -2
- package/package/components/FlowBuilder.svelte +10 -31
- package/package/components/FlowBuilder.svelte.d.ts +3 -0
- package/package/components/FlowBuilderTutorials.svelte +34 -64
- package/package/components/FlowBuilderTutorials.svelte.d.ts +0 -1
- package/package/components/FlowHistoryJobPicker.svelte +48 -0
- package/package/components/FlowHistoryJobPicker.svelte.d.ts +21 -0
- package/package/components/FlowJobResult.svelte +6 -3
- package/package/components/FlowPreviewContent.svelte +264 -182
- package/package/components/FlowPreviewContent.svelte.d.ts +3 -0
- package/package/components/FlowStatusViewerInner.svelte +28 -7
- package/package/components/FlowStatusWaitingForEvents.svelte +2 -2
- package/package/components/FolderEditor.svelte +14 -7
- package/package/components/GroupEditor.svelte +4 -0
- package/package/components/HistoricInputs.svelte +51 -110
- package/package/components/HistoricInputs.svelte.d.ts +9 -3
- package/package/components/HistoricList.svelte +95 -0
- package/package/components/HistoricList.svelte.d.ts +24 -0
- package/package/components/IconedResourceType.svelte +4 -1
- package/package/components/InfiniteList.svelte +12 -6
- package/package/components/InputTransformForm.svelte +25 -5
- package/package/components/InstanceNameEditor.svelte +100 -103
- package/package/components/InstanceSetting.svelte +777 -607
- package/package/components/InstanceSettings.svelte +33 -36
- package/package/components/InviteUser.svelte +43 -43
- package/package/components/{apps/editor/settingsPanel/inputEditor/JsonEditor.svelte → JsonEditor.svelte} +1 -1
- package/package/components/{apps/editor/settingsPanel/inputEditor/JsonEditor.svelte.d.ts → JsonEditor.svelte.d.ts} +1 -1
- package/package/components/JsonInputs.svelte +63 -0
- package/package/components/JsonInputs.svelte.d.ts +23 -0
- package/package/components/Label.svelte +6 -4
- package/package/components/Login.svelte +8 -2
- package/package/components/OAuthSetting.svelte +42 -15
- package/package/components/OAuthSetting.svelte.d.ts +1 -0
- package/package/components/ObjectResourceInput.svelte +6 -3
- package/package/components/ObjectResourceInput.svelte.d.ts +1 -1
- package/package/components/OktaSetting.svelte +9 -3
- package/package/components/PasswordArgInput.svelte +1 -1
- package/package/components/Path.svelte +16 -1
- package/package/components/Path.svelte.d.ts +1 -1
- package/package/components/ResourceEditor.svelte +6 -2
- package/package/components/ResourcePicker.svelte +3 -3
- package/package/components/ResourceTypePicker.svelte +10 -11
- package/package/components/ResultJobLoader.svelte.d.ts +1 -1
- package/package/components/RunForm.svelte +51 -47
- package/package/components/RunForm.svelte.d.ts +3 -0
- package/package/components/RunFormAdvancedPopup.svelte +2 -7
- package/package/components/RunFormAdvancedPopup.svelte.d.ts +0 -2
- package/package/components/RunPageSchedules.svelte +3 -2
- package/package/components/S3FilePicker.svelte +9 -1
- package/package/components/S3FilePicker.svelte.d.ts +1 -0
- package/package/components/S3ObjectPicker.svelte +13 -12
- package/package/components/S3ObjectPicker.svelte.d.ts +1 -1
- package/package/components/SavedInputsPicker.svelte +95 -56
- package/package/components/SavedInputsPicker.svelte.d.ts +10 -1
- package/package/components/SavedInputsV2.svelte +113 -0
- package/package/components/SavedInputsV2.svelte.d.ts +26 -0
- package/package/components/ScheduleEditorInner.svelte +40 -13
- package/package/components/SchemaForm.svelte +158 -191
- package/package/components/SchemaForm.svelte.d.ts +16 -3
- package/package/components/SchemaFormWithArgPicker.svelte +166 -0
- package/package/components/SchemaFormWithArgPicker.svelte.d.ts +29 -0
- package/package/components/ScriptBuilder.svelte +139 -71
- package/package/components/ScriptBuilder.svelte.d.ts +3 -0
- package/package/components/ScriptEditor.svelte +28 -2
- package/package/components/ScriptEditor.svelte.d.ts +2 -2
- package/package/components/ScriptPicker.svelte +6 -3
- package/package/components/ScriptSchema.svelte +2 -1
- package/package/components/ScriptSchema.svelte.d.ts +2 -0
- package/package/components/ScriptVersionHistory.svelte +9 -3
- package/package/components/Section.svelte +21 -9
- package/package/components/Section.svelte.d.ts +4 -0
- package/package/components/ShareModal.svelte +10 -5
- package/package/components/ShareModal.svelte.d.ts +2 -2
- package/package/components/SharedBadge.svelte +3 -3
- package/package/components/StringTypeNarrowing.svelte +10 -1
- package/package/components/SuperadminSettings.svelte +9 -2
- package/package/components/TestJobLoader.svelte +1 -1
- package/package/components/TestJobLoader.svelte.d.ts +1 -1
- package/package/components/TimelineBar.svelte.d.ts +1 -1
- package/package/components/ToggleHubWorkspace.svelte +3 -3
- package/package/components/ToggleHubWorkspaceQuick.svelte +4 -4
- package/package/components/Tooltip.svelte +36 -30
- package/package/components/VariableEditor.svelte +27 -20
- package/package/components/WorkerGroup.svelte +12 -3
- package/package/components/apps/components/buttons/AppButton.svelte +22 -2
- package/package/components/apps/components/buttons/AppFormButton.svelte +74 -70
- package/package/components/apps/components/buttons/AppSchemaForm.svelte +4 -2
- package/package/components/apps/components/display/AppAccordionList.svelte +149 -0
- package/package/components/apps/components/display/AppAccordionList.svelte.d.ts +25 -0
- package/package/components/apps/components/display/AppCarouselList.svelte +114 -106
- package/package/components/apps/components/display/AppCustomComponent.svelte +13 -13
- package/package/components/apps/components/display/AppDisplayComponent.svelte +2 -1
- package/package/components/apps/components/display/AppDisplayComponentByJobId.svelte +3 -1
- package/package/components/apps/components/display/AppHtml.svelte +28 -22
- package/package/components/apps/components/display/AppMarkdown.svelte +98 -31
- package/package/components/apps/components/display/AppMenu.svelte +77 -66
- package/package/components/apps/components/display/AppMenu.svelte.d.ts +0 -3
- package/package/components/apps/components/display/AppRecomputeAll.svelte +12 -1
- package/package/components/apps/components/display/AppText.svelte +8 -3
- package/package/components/apps/components/display/PlotlyHtml.svelte +16 -12
- package/package/components/apps/components/display/PlotlyHtmlV2.svelte +16 -12
- package/package/components/apps/components/display/VegaLiteHtml.svelte +9 -5
- package/package/components/apps/components/display/dbtable/AppDbExplorer.svelte +1 -1
- package/package/components/apps/components/display/dbtable/InsertRow.svelte +4 -4
- package/package/components/apps/components/display/dbtable/utils.js +19 -1
- package/package/components/apps/components/display/table/AppAggridExplorerTable.svelte +6 -0
- package/package/components/apps/components/display/table/AppAggridInfiniteTable.svelte +4 -0
- package/package/components/apps/components/display/table/AppAggridTable.svelte +1 -1
- package/package/components/apps/components/display/table/AppAggridTableActions.svelte +27 -19
- package/package/components/apps/components/display/table/AppTable.svelte +19 -15
- package/package/components/apps/components/helpers/InitializeComponent.svelte +1 -0
- package/package/components/apps/components/helpers/InputValue.svelte +4 -3
- package/package/components/apps/components/helpers/NonRunnableComponent.svelte +0 -2
- package/package/components/apps/components/helpers/RunnableComponent.svelte +16 -4
- package/package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +1 -0
- package/package/components/apps/components/helpers/RunnableWrapper.svelte +32 -3
- package/package/components/apps/components/helpers/RunnableWrapper.svelte.d.ts +1 -0
- package/package/components/apps/components/inputs/AppS3FileInput.svelte +1 -0
- package/package/components/apps/components/layout/AppConditionalWrapper.svelte +29 -21
- package/package/components/apps/components/layout/AppContainer.svelte +28 -20
- package/package/components/apps/components/layout/AppDecisionTree.svelte +59 -49
- package/package/components/apps/components/layout/AppDrawer.svelte +94 -87
- package/package/components/apps/components/layout/AppList.svelte +70 -62
- package/package/components/apps/components/layout/AppModal.svelte +83 -79
- package/package/components/apps/components/layout/AppSplitpanes.svelte +51 -43
- package/package/components/apps/components/layout/AppStepper.svelte +97 -83
- package/package/components/apps/components/layout/AppTabs.svelte +128 -74
- package/package/components/apps/editor/AppEditor.svelte +21 -3
- package/package/components/apps/editor/AppEditor.svelte.d.ts +24 -1
- package/package/components/apps/editor/AppEditorHeader.svelte +73 -61
- package/package/components/apps/editor/AppEditorHeader.svelte.d.ts +24 -1
- package/package/components/apps/editor/AppEditorTutorial.svelte +53 -60
- package/package/components/apps/editor/AppJsonEditor.svelte +1 -1
- package/package/components/apps/editor/AppPreview.svelte +5 -5
- package/package/components/apps/editor/AppReportsDrawerInner.svelte +1 -0
- package/package/components/apps/editor/ComponentHeader.svelte +44 -20
- package/package/components/apps/editor/ComponentHeader.svelte.d.ts +1 -0
- package/package/components/apps/editor/DecisionTreeDebug.svelte +56 -73
- package/package/components/apps/editor/GridEditor.svelte +7 -4
- package/package/components/apps/editor/GridViewer.svelte +19 -7
- package/package/components/apps/editor/GridViewer.svelte.d.ts +1 -3
- package/package/components/apps/editor/PreviewToggle.svelte +3 -0
- package/package/components/apps/editor/RecomputeAllButton.svelte +7 -40
- package/package/components/apps/editor/RecomputeAllComponents.svelte +52 -19
- package/package/components/apps/editor/RecomputeAllWrapper.svelte +1 -10
- package/package/components/apps/editor/SubGridEditor.svelte +147 -145
- package/package/components/apps/editor/TabsDebug.svelte +43 -56
- package/package/components/apps/editor/component/Component.svelte +26 -926
- package/package/components/apps/editor/component/Component.svelte.d.ts +2 -3
- package/package/components/apps/editor/component/ComponentInner.svelte +775 -0
- package/package/components/apps/editor/component/ComponentInner.svelte.d.ts +22 -0
- package/package/components/apps/editor/component/ComponentRendered.svelte +195 -0
- package/package/components/apps/editor/component/ComponentRendered.svelte.d.ts +28 -0
- package/package/components/apps/editor/component/components.d.ts +154 -83
- package/package/components/apps/editor/component/components.js +59 -5
- package/package/components/apps/editor/component/sets.js +2 -1
- package/package/components/apps/editor/componentsPanel/CssProperty.svelte +8 -4
- package/package/components/apps/editor/componentsPanel/CustomComponentRow.svelte +12 -22
- package/package/components/apps/editor/componentsPanel/CustomComponentRow.svelte.d.ts +0 -1
- package/package/components/apps/editor/componentsPanel/CustomComponentsList.svelte +0 -2
- package/package/components/apps/editor/componentsPanel/GroupRow.svelte +12 -22
- package/package/components/apps/editor/componentsPanel/GroupRow.svelte.d.ts +0 -1
- package/package/components/apps/editor/componentsPanel/NameEditor.svelte +21 -20
- package/package/components/apps/editor/componentsPanel/ThemeNameEditor.svelte +9 -9
- package/package/components/apps/editor/componentsPanel/ThemeRow.svelte +32 -52
- package/package/components/apps/editor/componentsPanel/ThemeRow.svelte.d.ts +0 -1
- package/package/components/apps/editor/componentsPanel/cssUtils.js +7 -0
- package/package/components/apps/editor/componentsPanel/quickStyleProperties.js +3 -0
- package/package/components/apps/editor/contextPanel/LazyModePanel.svelte +46 -0
- package/package/components/apps/editor/contextPanel/LazyModePanel.svelte.d.ts +14 -0
- package/package/components/apps/editor/contextPanel/components/IdEditor.svelte +19 -13
- package/package/components/apps/editor/inlineScriptsPanel/CacheTtlPopup.svelte +10 -7
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte +11 -7
- package/package/components/apps/editor/inlineScriptsPanel/RunButton.svelte +2 -2
- package/package/components/apps/editor/settingsPanel/AlignmentEditor.svelte +8 -6
- package/package/components/apps/editor/settingsPanel/ComponentInputTypeEditor.svelte +7 -0
- package/package/components/apps/editor/settingsPanel/ComponentPanelDataSource.svelte +5 -2
- package/package/components/apps/editor/settingsPanel/HideButton.svelte.d.ts +1 -1
- package/package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +17 -7
- package/package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte.d.ts +3 -0
- package/package/components/apps/editor/settingsPanel/TableActions.svelte +10 -1
- package/package/components/apps/editor/settingsPanel/inputEditor/IconSelectInput.svelte +53 -51
- package/package/components/apps/editor/settingsPanel/inputEditor/IconSelectInput.svelte.d.ts +0 -1
- package/package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +1 -1
- package/package/components/apps/rx.d.ts +3 -3
- package/package/components/apps/rx.js +5 -5
- package/package/components/apps/svelte-grid/Grid.svelte +121 -99
- package/package/components/apps/svelte-grid/Grid.svelte.d.ts +0 -1
- package/package/components/apps/svelte-grid/MoveResize.svelte +2 -1
- package/package/components/apps/svelte-grid/MoveResize.svelte.d.ts +1 -0
- package/package/components/apps/svelte-select/lib/Select.svelte.d.ts +8 -8
- package/package/components/apps/types.d.ts +2 -0
- package/package/components/apps/utils.js +1 -1
- package/package/components/auditLogs/AuditLogMobileFilters.svelte +7 -6
- package/package/components/auditLogs/AuditLogsFilters.svelte +75 -37
- package/package/components/auditLogs/AuditLogsFilters.svelte.d.ts +2 -0
- package/package/components/auditLogs/AuditLogsTable.svelte +2 -1
- package/package/components/auditLogs/AuditLogsTable.svelte.d.ts +1 -0
- package/package/components/common/alert/Alert.svelte +2 -27
- package/package/components/common/alert/Alert.svelte.d.ts +1 -1
- package/package/components/common/alert/model.d.ts +1 -0
- package/package/components/common/alert/model.js +26 -1
- package/package/components/common/button/Button.svelte +25 -39
- package/package/components/common/button/Button.svelte.d.ts +0 -1
- package/package/components/common/calendarPicker/CalendarPicker.svelte +30 -25
- package/package/components/common/confirmationModal/UnsavedConfirmationModal.svelte +12 -10
- package/package/components/common/confirmationModal/UnsavedConfirmationModal.svelte.d.ts +2 -3
- package/package/components/common/confirmationModal/unsavedTypes.d.ts +6 -0
- package/package/components/common/confirmationModal/unsavedTypes.js +1 -0
- package/package/components/common/drawer/Disposable.svelte +3 -1
- package/package/components/common/drawer/Disposable.svelte.d.ts +1 -0
- package/package/components/common/drawer/Drawer.svelte +2 -0
- package/package/components/common/drawer/Drawer.svelte.d.ts +1 -0
- package/package/components/common/fileInput/FileInput.svelte +63 -20
- package/package/components/common/fileInput/FileInput.svelte.d.ts +4 -1
- package/package/components/common/fileUpload/FileUpload.svelte +102 -20
- package/package/components/common/fileUpload/FileUpload.svelte.d.ts +7 -0
- package/package/components/common/index.d.ts +0 -1
- package/package/components/common/index.js +0 -1
- package/package/components/common/layout/List.svelte.d.ts +1 -1
- package/package/components/common/toggleButton-v2/ToggleButton.svelte +42 -39
- package/package/components/common/toggleButton-v2/ToggleButton.svelte.d.ts +3 -1
- package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte +28 -29
- package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte.d.ts +23 -7
- package/package/components/common/toggleButton-v2/ToggleButtonMore.svelte +17 -18
- package/package/components/common/toggleButton-v2/ToggleButtonMore.svelte.d.ts +2 -1
- package/package/components/common/waitTimeWarning/WaitTimeWarning.svelte.d.ts +1 -1
- package/package/components/copilot/CodeCompletionStatus.svelte +1 -1
- package/package/components/copilot/CronGen.svelte +50 -50
- package/package/components/copilot/FlowCopilotDrawer.svelte +3 -2
- package/package/components/copilot/FlowCopilotStatus.svelte +16 -19
- package/package/components/copilot/PredicateGen.svelte +9 -10
- package/package/components/copilot/RegexGen.svelte +67 -66
- package/package/components/copilot/ScriptFix.svelte +122 -105
- package/package/components/copilot/ScriptGen.svelte +177 -135
- package/package/components/copilot/StepInputsGen.svelte +31 -28
- package/package/components/copilot/{TestAiKey.svelte → TestAIKey.svelte} +13 -2
- package/package/components/copilot/{TestAiKey.svelte.d.ts → TestAIKey.svelte.d.ts} +4 -2
- package/package/components/copilot/completion.d.ts +2 -2
- package/package/components/copilot/completion.js +1 -1
- package/package/components/copilot/flow.d.ts +3 -4
- package/package/components/copilot/flow.js +1 -1
- package/package/components/copilot/lib.d.ts +46 -54
- package/package/components/copilot/lib.js +278 -209
- package/package/components/copilot/prompts/edit.yaml +19 -0
- package/package/components/copilot/prompts/editPrompt.d.ts +3 -0
- package/package/components/copilot/prompts/editPrompt.js +3 -0
- package/package/components/copilot/prompts/fix.yaml +19 -0
- package/package/components/copilot/prompts/fixPrompt.d.ts +3 -0
- package/package/components/copilot/prompts/fixPrompt.js +3 -0
- package/package/components/copilot/prompts/gen.yaml +12 -0
- package/package/components/copilot/prompts/genPrompt.d.ts +3 -0
- package/package/components/copilot/prompts/genPrompt.js +3 -0
- package/package/components/custom_ui.d.ts +37 -0
- package/package/components/details/DetailPageDetailPanel.svelte +3 -1
- package/package/components/details/DetailPageDetailPanel.svelte.d.ts +7 -1
- package/package/components/details/DetailPageHeader.svelte +12 -27
- package/package/components/details/DetailPageLayout.svelte +4 -0
- package/package/components/details/DetailPageLayout.svelte.d.ts +6 -0
- package/package/components/details/DetailPageTriggerPanel.svelte +20 -8
- package/package/components/details/DetailPageTriggerPanel.svelte.d.ts +4 -2
- package/package/components/details/EmailTriggerConfigSection.svelte +3 -3
- package/package/components/details/EmailTriggerConfigSection.svelte.d.ts +3 -1
- package/package/components/details/EmailTriggerPanel.svelte +1 -0
- package/package/components/flows/content/FlowInput.svelte +35 -44
- package/package/components/flows/content/FlowInputs.svelte +4 -1
- package/package/components/flows/content/FlowModuleComponent.svelte +10 -5
- package/package/components/flows/content/FlowModuleComponent.svelte.d.ts +1 -1
- package/package/components/flows/content/FlowModuleMock.svelte +1 -1
- package/package/components/flows/content/FlowModuleSuspend.svelte +15 -2
- package/package/components/flows/content/FlowRetries.svelte +4 -3
- package/package/components/flows/content/ScriptEditorDrawer.svelte +0 -1
- package/package/components/flows/flowStateUtils.js +1 -1
- package/package/components/flows/flowStore.d.ts +1 -1
- package/package/components/flows/header/FlowPreviewButtons.svelte +25 -16
- package/package/components/flows/header/FlowPreviewButtons.svelte.d.ts +1 -0
- package/package/components/flows/map/FlowJobsMenu.svelte +60 -47
- package/package/components/flows/previousResults.js +1 -1
- package/package/components/flows/propPicker/FlowPropPicker.svelte +28 -25
- package/package/components/flows/propPicker/PropPickerWrapper.svelte +1 -0
- package/package/components/flows/scheduleUtils.d.ts +2 -2
- package/package/components/flows/scheduleUtils.js +17 -13
- package/package/components/graph/FlowGraphV2.svelte +3 -2
- package/package/components/graph/renderers/triggers/TriggersBadge.svelte +9 -4
- package/package/components/graph/renderers/triggers/TriggersBadge.svelte.d.ts +1 -1
- package/package/components/home/FlowIcon.svelte +4 -1
- package/package/components/home/FlowIcon.svelte.d.ts +1 -0
- package/package/components/home/ItemsList.svelte +32 -24
- package/package/components/icons/Auth0Icon.svelte +17 -0
- package/package/components/icons/Auth0Icon.svelte.d.ts +23 -0
- package/package/components/icons/AwsIcon.svelte +25 -6
- package/package/components/icons/AwsIcon.svelte.d.ts +3 -2
- package/package/components/icons/brands/Auth0.svelte +24 -0
- package/package/components/icons/brands/Auth0.svelte.d.ts +18 -0
- package/package/components/icons/index.d.ts +3 -1
- package/package/components/icons/index.js +3 -1
- package/package/components/instanceSettings.d.ts +5 -0
- package/package/components/instanceSettings.js +34 -3
- package/package/components/meltComponents/MeltButton.svelte +10 -0
- package/package/components/meltComponents/MeltButton.svelte.d.ts +23 -0
- package/package/components/meltComponents/Menu.svelte +70 -0
- package/package/components/meltComponents/Menu.svelte.d.ts +51 -0
- package/package/components/meltComponents/MenuItem.svelte +42 -0
- package/package/components/meltComponents/MenuItem.svelte.d.ts +27 -0
- package/package/components/meltComponents/MenuSingleItem.svelte +12 -0
- package/package/components/meltComponents/MenuSingleItem.svelte.d.ts +36 -0
- package/package/components/meltComponents/Menubar.svelte +7 -0
- package/package/components/meltComponents/Menubar.svelte.d.ts +255 -0
- package/package/components/meltComponents/Popover.svelte +78 -24
- package/package/components/meltComponents/Popover.svelte.d.ts +23 -4
- package/package/components/meltComponents/SideBarTab.svelte +18 -6
- package/package/components/meltComponents/SideBarTab.svelte.d.ts +2 -0
- package/package/components/meltComponents/Tooltip.svelte +66 -0
- package/package/components/meltComponents/Tooltip.svelte.d.ts +29 -0
- package/package/components/meltComponents/index.d.ts +5 -0
- package/package/components/meltComponents/index.js +5 -0
- package/package/components/preview/FlowPreviewStatus.svelte +2 -1
- package/package/components/propertyPicker/ObjectViewer.svelte +15 -3
- package/package/components/propertyPicker/PropPicker.svelte +0 -1
- package/package/components/runs/JobLoader.svelte +18 -18
- package/package/components/runs/JobLoader.svelte.d.ts +1 -1
- package/package/components/runs/MobileFilters.svelte +12 -11
- package/package/components/runs/PreprocessedArgsDisplay.svelte +2 -3
- package/package/components/runs/PreprocessedArgsDisplay.svelte.d.ts +1 -1
- package/package/components/runs/RunsFilter.svelte +350 -320
- package/package/components/schema/AddPropertyFormV2.svelte +7 -7
- package/package/components/schema/AddPropertyFormV2.svelte.d.ts +3 -1
- package/package/components/schema/EditableSchemaDrawer.svelte +0 -1
- package/package/components/schema/EditableSchemaWrapper.svelte +1 -2
- package/package/components/schema/EditableSchemaWrapper.svelte.d.ts +0 -1
- package/package/components/schema/FlowPropertyEditor.svelte +51 -67
- package/package/components/schema/FlowPropertyEditor.svelte.d.ts +0 -1
- package/package/components/schema/InputSelectedBadge.svelte +28 -0
- package/package/components/schema/InputSelectedBadge.svelte.d.ts +18 -0
- package/package/components/schema/PropertyEditor.svelte +7 -3
- package/package/components/schema/SchemaFormDND.svelte +4 -2
- package/package/components/schema/SchemaFormDND.svelte.d.ts +2 -1
- package/package/components/schema/SchemaPickerRow.svelte +11 -3
- package/package/components/schema/SchemaPickerRow.svelte.d.ts +1 -1
- package/package/components/scriptEditor/LogPanel.svelte +8 -2
- package/package/components/scriptEditor/LogPanel.svelte.d.ts +2 -0
- package/package/components/settings/ChangeWorkspaceId.svelte +24 -12
- package/package/components/settings/PremiumInfo.svelte +4 -4
- package/package/components/settings/WorkspaceOperatorSettings.svelte +159 -0
- package/package/components/settings/WorkspaceOperatorSettings.svelte.d.ts +14 -0
- package/package/components/settings/WorkspaceUserSettings.svelte +108 -96
- package/package/components/sidebar/CriticalAlertModal.svelte +66 -60
- package/package/components/sidebar/FavoriteMenu.svelte +30 -21
- package/package/components/sidebar/FavoriteMenu.svelte.d.ts +2 -0
- package/package/components/sidebar/MenuButton.svelte +20 -5
- package/package/components/sidebar/MenuButton.svelte.d.ts +3 -0
- package/package/components/sidebar/MenuLink.svelte +8 -5
- package/package/components/sidebar/MenuLink.svelte.d.ts +2 -0
- package/package/components/sidebar/OperatorMenu.svelte +219 -126
- package/package/components/sidebar/SidebarContent.svelte +107 -127
- package/package/components/sidebar/SidebarContent.svelte.d.ts +0 -1
- package/package/components/sidebar/UserMenu.svelte +91 -111
- package/package/components/sidebar/UserMenu.svelte.d.ts +2 -0
- package/package/components/sidebar/WorkspaceMenu.svelte +59 -54
- package/package/components/sidebar/WorkspaceMenu.svelte.d.ts +2 -0
- package/package/components/sidebar/changelogs.js +55 -0
- package/package/components/table/DataTable.svelte +6 -14
- package/package/components/table/DataTable.svelte.d.ts +1 -0
- package/package/components/triggers/CaptureButton.svelte +51 -68
- package/package/components/triggers/CaptureSection.svelte +5 -2
- package/package/components/triggers/CaptureSection.svelte.d.ts +3 -1
- package/package/components/triggers/CaptureTable.svelte +61 -23
- package/package/components/triggers/CaptureWrapper.svelte +87 -46
- package/package/components/triggers/CaptureWrapper.svelte.d.ts +8 -4
- package/package/components/triggers/TestTriggerConnection.svelte +82 -0
- package/package/components/triggers/TestTriggerConnection.svelte.d.ts +21 -0
- package/package/components/triggers/TriggersEditor.svelte +46 -14
- package/package/components/triggers/TriggersEditorSection.svelte +53 -46
- package/package/components/triggers/TriggersEditorSection.svelte.d.ts +3 -0
- package/package/components/triggers/TriggersWrapper.svelte +26 -8
- package/package/components/triggers/{RouteEditorConfigSection.svelte → http/RouteEditorConfigSection.svelte} +57 -57
- package/package/components/triggers/{RouteEditorConfigSection.svelte.d.ts → http/RouteEditorConfigSection.svelte.d.ts} +8 -9
- package/package/components/triggers/{RouteEditorInner.svelte → http/RouteEditorInner.svelte} +190 -147
- package/package/components/triggers/{RoutesPanel.svelte → http/RoutesPanel.svelte} +44 -47
- package/package/components/triggers/{KafkaTriggerEditorInner.svelte → kafka/KafkaTriggerEditorInner.svelte} +23 -23
- package/package/components/triggers/{KafkaTriggersConfigSection.svelte → kafka/KafkaTriggersConfigSection.svelte} +29 -17
- package/package/components/triggers/{KafkaTriggersConfigSection.svelte.d.ts → kafka/KafkaTriggersConfigSection.svelte.d.ts} +5 -3
- package/package/components/triggers/{KafkaTriggersPanel.svelte → kafka/KafkaTriggersPanel.svelte} +40 -45
- package/package/components/triggers/{NatsTriggerEditorInner.svelte → nats/NatsTriggerEditorInner.svelte} +19 -20
- package/package/components/triggers/{NatsTriggersConfigSection.svelte → nats/NatsTriggersConfigSection.svelte} +25 -18
- package/package/components/triggers/{NatsTriggersConfigSection.svelte.d.ts → nats/NatsTriggersConfigSection.svelte.d.ts} +5 -3
- package/package/components/triggers/{NatsTriggersPanel.svelte → nats/NatsTriggersPanel.svelte} +41 -44
- package/package/components/triggers/postgres/CheckPostgresRequirement.svelte +71 -0
- package/package/components/triggers/postgres/CheckPostgresRequirement.svelte.d.ts +18 -0
- package/package/components/triggers/postgres/PostgresEditorConfigSection.svelte +152 -0
- package/package/components/triggers/postgres/PostgresEditorConfigSection.svelte.d.ts +40 -0
- package/package/components/triggers/postgres/PostgresTriggerEditor.svelte +19 -0
- package/package/components/triggers/postgres/PostgresTriggerEditor.svelte.d.ts +21 -0
- package/package/components/triggers/postgres/PostgresTriggerEditorInner.svelte +578 -0
- package/package/components/triggers/postgres/PostgresTriggerEditorInner.svelte.d.ts +21 -0
- package/package/components/triggers/postgres/PostgresTriggersPanel.svelte +112 -0
- package/package/components/triggers/postgres/PostgresTriggersPanel.svelte.d.ts +28 -0
- package/package/components/triggers/postgres/PublicationPicker.svelte +129 -0
- package/package/components/triggers/postgres/PublicationPicker.svelte.d.ts +23 -0
- package/package/components/triggers/postgres/RelationPicker.svelte +266 -0
- package/package/components/triggers/postgres/RelationPicker.svelte.d.ts +19 -0
- package/package/components/triggers/postgres/SlotPicker.svelte +92 -0
- package/package/components/triggers/postgres/SlotPicker.svelte.d.ts +18 -0
- package/package/components/triggers/postgres/utils.d.ts +5 -0
- package/package/components/triggers/postgres/utils.js +80 -0
- package/package/components/triggers/{ScheduledPollPanel.svelte → scheduled/ScheduledPollPanel.svelte} +3 -3
- package/package/components/triggers/sqs/SqsTriggerEditor.svelte +19 -0
- package/package/components/triggers/sqs/SqsTriggerEditor.svelte.d.ts +21 -0
- package/package/components/triggers/sqs/SqsTriggerEditorConfigSection.svelte +152 -0
- package/package/components/triggers/sqs/SqsTriggerEditorConfigSection.svelte.d.ts +40 -0
- package/package/components/triggers/sqs/SqsTriggerEditorInner.svelte +234 -0
- package/package/components/triggers/sqs/SqsTriggerEditorInner.svelte.d.ts +21 -0
- package/package/components/triggers/sqs/SqsTriggerPanel.svelte +123 -0
- package/package/components/triggers/sqs/SqsTriggerPanel.svelte.d.ts +28 -0
- package/package/components/triggers/{WebhooksConfigSection.svelte → webhook/WebhooksConfigSection.svelte} +26 -21
- package/package/components/triggers/{WebhooksConfigSection.svelte.d.ts → webhook/WebhooksConfigSection.svelte.d.ts} +6 -4
- package/package/components/triggers/{WebhooksPanel.svelte → webhook/WebhooksPanel.svelte} +5 -4
- package/package/components/triggers/{WebsocketEditorConfigSection.svelte → websocket/WebsocketEditorConfigSection.svelte} +42 -34
- package/package/components/triggers/{WebsocketEditorConfigSection.svelte.d.ts → websocket/WebsocketEditorConfigSection.svelte.d.ts} +5 -3
- package/package/components/triggers/{WebsocketTriggerEditorInner.svelte → websocket/WebsocketTriggerEditorInner.svelte} +62 -43
- package/package/components/triggers/{WebsocketTriggersPanel.svelte → websocket/WebsocketTriggersPanel.svelte} +45 -49
- package/package/components/triggers.d.ts +1 -1
- package/package/components/triggers.js +4 -0
- package/package/components/tutorials/FlowBuilderTutorialErrorHandler.svelte +1 -1
- package/package/components/wizards/AgChartWizard.svelte +26 -24
- package/package/components/wizards/AgGridWizard.svelte +166 -161
- package/package/components/wizards/ChartJSWizard.svelte +32 -30
- package/package/components/wizards/DBExplorerWizard.svelte +21 -12
- package/package/components/wizards/NavbarWizard.svelte +108 -107
- package/package/components/wizards/PlotlyWizard.svelte +84 -75
- package/package/components/wizards/TableActionsWizard.svelte +69 -66
- package/package/components/wizards/TableColumnWizard.svelte +52 -47
- package/package/gen/core/OpenAPI.js +1 -1
- package/package/gen/schemas.gen.d.ts +456 -111
- package/package/gen/schemas.gen.js +470 -112
- package/package/gen/services.gen.d.ts +429 -2
- package/package/gen/services.gen.js +890 -17
- package/package/gen/types.gen.d.ts +1491 -158
- package/package/hub.d.ts +3 -0
- package/package/hubPaths.json +5 -1
- package/package/inferArgSig.js +11 -4
- package/package/script_helpers.d.ts +5 -3
- package/package/script_helpers.js +138 -98
- package/package/scripts.d.ts +1 -1
- package/package/stores.d.ts +6 -3
- package/package/stores.js +5 -3
- package/package/utils.d.ts +15 -0
- package/package/utils.js +17 -3
- package/package/zIndexes.d.ts +2 -0
- package/package/zIndexes.js +3 -1
- package/package.json +5 -5
- package/package/components/CapturesInputs.svelte +0 -16
- package/package/components/CapturesInputs.svelte.d.ts +0 -21
- package/package/components/LightweightArgInput.svelte +0 -622
- package/package/components/LightweightArgInput.svelte.d.ts +0 -70
- package/package/components/LightweightObjectResourceInput.svelte +0 -40
- package/package/components/LightweightObjectResourceInput.svelte.d.ts +0 -19
- package/package/components/LightweightSchemaForm.svelte +0 -100
- package/package/components/LightweightSchemaForm.svelte.d.ts +0 -43
- package/package/components/common/button/ButtonDropdown.svelte +0 -61
- package/package/components/common/button/ButtonDropdown.svelte.d.ts +0 -22
- package/package/components/common/menu/MenuV2.svelte +0 -51
- package/package/components/common/menu/MenuV2.svelte.d.ts +0 -26
- package/package/components/common/popup/Popup.svelte +0 -66
- package/package/components/common/popup/Popup.svelte.d.ts +0 -35
- package/package/components/common/toggleButton-v2/ToggleEnable.svelte +0 -34
- package/package/components/common/toggleButton-v2/ToggleEnable.svelte.d.ts +0 -23
- package/package/components/details/Menu.svelte +0 -58
- package/package/components/details/Menu.svelte.d.ts +0 -16
- package/package/components/flows/map/FlowCopilotButton.svelte +0 -54
- package/package/components/flows/map/FlowCopilotButton.svelte.d.ts +0 -16
- package/package/components/meltComponents/ButtonDropDown.svelte +0 -32
- package/package/components/meltComponents/ButtonDropDown.svelte.d.ts +0 -27
- package/package/components/tutorials/TutorialItem.svelte +0 -27
- package/package/components/tutorials/TutorialItem.svelte.d.ts +0 -22
- /package/package/components/triggers/{RouteEditor.svelte → http/RouteEditor.svelte} +0 -0
- /package/package/components/triggers/{RouteEditor.svelte.d.ts → http/RouteEditor.svelte.d.ts} +0 -0
- /package/package/components/triggers/{RouteEditorInner.svelte.d.ts → http/RouteEditorInner.svelte.d.ts} +0 -0
- /package/package/components/triggers/{RoutesPanel.svelte.d.ts → http/RoutesPanel.svelte.d.ts} +0 -0
- /package/package/components/triggers/{KafkaTriggerEditor.svelte → kafka/KafkaTriggerEditor.svelte} +0 -0
- /package/package/components/triggers/{KafkaTriggerEditor.svelte.d.ts → kafka/KafkaTriggerEditor.svelte.d.ts} +0 -0
- /package/package/components/triggers/{KafkaTriggerEditorInner.svelte.d.ts → kafka/KafkaTriggerEditorInner.svelte.d.ts} +0 -0
- /package/package/components/triggers/{KafkaTriggersPanel.svelte.d.ts → kafka/KafkaTriggersPanel.svelte.d.ts} +0 -0
- /package/package/components/triggers/{NatsTriggerEditor.svelte → nats/NatsTriggerEditor.svelte} +0 -0
- /package/package/components/triggers/{NatsTriggerEditor.svelte.d.ts → nats/NatsTriggerEditor.svelte.d.ts} +0 -0
- /package/package/components/triggers/{NatsTriggerEditorInner.svelte.d.ts → nats/NatsTriggerEditorInner.svelte.d.ts} +0 -0
- /package/package/components/triggers/{NatsTriggersPanel.svelte.d.ts → nats/NatsTriggersPanel.svelte.d.ts} +0 -0
- /package/package/components/triggers/{ScheduledPollPanel.svelte.d.ts → scheduled/ScheduledPollPanel.svelte.d.ts} +0 -0
- /package/package/components/triggers/{WebhooksPanel.svelte.d.ts → webhook/WebhooksPanel.svelte.d.ts} +0 -0
- /package/package/components/triggers/{WebsocketTriggerEditor.svelte → websocket/WebsocketTriggerEditor.svelte} +0 -0
- /package/package/components/triggers/{WebsocketTriggerEditor.svelte.d.ts → websocket/WebsocketTriggerEditor.svelte.d.ts} +0 -0
- /package/package/components/triggers/{WebsocketTriggerEditorInner.svelte.d.ts → websocket/WebsocketTriggerEditorInner.svelte.d.ts} +0 -0
- /package/package/components/triggers/{WebsocketTriggersPanel.svelte.d.ts → websocket/WebsocketTriggersPanel.svelte.d.ts} +0 -0
|
@@ -26,7 +26,7 @@ import { setLicense } from '../enterpriseUtils';
|
|
|
26
26
|
import { pickScript } from './flows/flowStateUtils';
|
|
27
27
|
import { approximateFindPythonRelativePath, isTypescriptRelativePath, parseTypescriptDeps } from '../relative_imports';
|
|
28
28
|
import Tooltip from './Tooltip.svelte';
|
|
29
|
-
import {
|
|
29
|
+
import { workspaceAIClients } from './copilot/lib';
|
|
30
30
|
$: token = $page.url.searchParams.get('wm_token') ?? undefined;
|
|
31
31
|
$: workspace = $page.url.searchParams.get('workspace') ?? undefined;
|
|
32
32
|
$: themeDarkRaw = $page.url.searchParams.get('activeColorTheme');
|
|
@@ -65,15 +65,20 @@ async function genFlow(idx, flowModules, stepOnly = false) {
|
|
|
65
65
|
setContext('FlowCopilotContext', flowCopilotContext);
|
|
66
66
|
async function setCopilotInfo() {
|
|
67
67
|
if (workspace) {
|
|
68
|
-
|
|
68
|
+
workspaceAIClients.init(workspace);
|
|
69
69
|
try {
|
|
70
|
-
|
|
70
|
+
const info = await WorkspaceService.getCopilotInfo({ workspace });
|
|
71
|
+
copilotInfo.set({
|
|
72
|
+
...info,
|
|
73
|
+
ai_provider: info.ai_provider ?? 'openai'
|
|
74
|
+
});
|
|
71
75
|
}
|
|
72
76
|
catch (err) {
|
|
73
77
|
copilotInfo.set({
|
|
74
|
-
ai_provider: '',
|
|
78
|
+
ai_provider: 'openai',
|
|
75
79
|
exists_ai_resource: false,
|
|
76
|
-
|
|
80
|
+
code_completion_model: undefined,
|
|
81
|
+
ai_models: []
|
|
77
82
|
});
|
|
78
83
|
console.error('Could not get copilot info');
|
|
79
84
|
}
|
|
@@ -137,7 +142,6 @@ const el = (event) => {
|
|
|
137
142
|
event.preventDefault();
|
|
138
143
|
}
|
|
139
144
|
else if (event.data.type == 'replaceScript') {
|
|
140
|
-
mode = 'script';
|
|
141
145
|
replaceScript(event.data);
|
|
142
146
|
}
|
|
143
147
|
else if (event.data.type == 'testBundle') {
|
|
@@ -161,7 +165,6 @@ const el = (event) => {
|
|
|
161
165
|
sendUserToast(typeof event.data.error == 'object' ? JSON.stringify(event.data.error) : event.data.error, true);
|
|
162
166
|
}
|
|
163
167
|
else if (event.data.type == 'replaceFlow') {
|
|
164
|
-
mode = 'flow';
|
|
165
168
|
lockChanges = true;
|
|
166
169
|
replaceFlow(event.data);
|
|
167
170
|
timeout && clearTimeout(timeout);
|
|
@@ -248,6 +251,14 @@ onDestroy(() => {
|
|
|
248
251
|
}
|
|
249
252
|
});
|
|
250
253
|
function connectWs() {
|
|
254
|
+
try {
|
|
255
|
+
if (socket) {
|
|
256
|
+
socket.close();
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
catch (e) {
|
|
260
|
+
console.error('Failed to close websocket', e);
|
|
261
|
+
}
|
|
251
262
|
const port = searchParams?.get('port') || '3001';
|
|
252
263
|
try {
|
|
253
264
|
socket = new WebSocket(`ws://localhost:${port}/ws`);
|
|
@@ -264,7 +275,15 @@ function connectWs() {
|
|
|
264
275
|
console.log('Received invalid JSON: ' + msg);
|
|
265
276
|
return;
|
|
266
277
|
}
|
|
267
|
-
|
|
278
|
+
if (data.type == 'script') {
|
|
279
|
+
replaceScript(data);
|
|
280
|
+
}
|
|
281
|
+
else if (data.type == 'flow') {
|
|
282
|
+
replaceFlow(data);
|
|
283
|
+
}
|
|
284
|
+
else {
|
|
285
|
+
sendUserToast(`Received invalid message type ${data.type}`, true);
|
|
286
|
+
}
|
|
268
287
|
}
|
|
269
288
|
}
|
|
270
289
|
catch (e) {
|
|
@@ -325,6 +344,7 @@ async function onKeyDown(event) {
|
|
|
325
344
|
let relativePaths = [];
|
|
326
345
|
let lastPath = undefined;
|
|
327
346
|
async function replaceScript(lastEdit) {
|
|
347
|
+
mode = 'script';
|
|
328
348
|
currentScript = lastEdit;
|
|
329
349
|
if (lastPath !== lastEdit.path) {
|
|
330
350
|
schema = emptySchema();
|
|
@@ -356,6 +376,7 @@ const flowStore = writable({
|
|
|
356
376
|
});
|
|
357
377
|
let lastUriPath = undefined;
|
|
358
378
|
async function replaceFlow(lastEdit) {
|
|
379
|
+
mode = 'flow';
|
|
359
380
|
lastUriPath = lastEdit.uriPath;
|
|
360
381
|
// sendUserToast(JSON.stringify(lastEdit.flow), true)
|
|
361
382
|
// return
|
|
@@ -605,6 +626,7 @@ async function inferModuleArgs(selectedIdStore) {
|
|
|
605
626
|
<Splitpanes horizontal class="h-full max-h-screen grow">
|
|
606
627
|
<Pane size={67}>
|
|
607
628
|
{#if $flowStore?.value?.modules}
|
|
629
|
+
<div id="flow-editor" />
|
|
608
630
|
<FlowModuleSchemaMap
|
|
609
631
|
bind:modules={$flowStore.value.modules}
|
|
610
632
|
disableAi
|
|
@@ -22,6 +22,7 @@ import { convertJsonToCsv } from './table/tableUtils';
|
|
|
22
22
|
import Tooltip from './Tooltip.svelte';
|
|
23
23
|
import HighlightTheme from './HighlightTheme.svelte';
|
|
24
24
|
import PdfViewer from './display/PdfViewer.svelte';
|
|
25
|
+
import { getContext, hasContext } from 'svelte';
|
|
25
26
|
export let result;
|
|
26
27
|
export let requireHtmlApproval = false;
|
|
27
28
|
export let filename = undefined;
|
|
@@ -34,10 +35,12 @@ export let drawerOpen = false;
|
|
|
34
35
|
export let nodeId = undefined;
|
|
35
36
|
export let language = undefined;
|
|
36
37
|
export let appPath = undefined;
|
|
38
|
+
export let customUi = undefined;
|
|
37
39
|
const IMG_MAX_SIZE = 10000000;
|
|
38
40
|
const TABLE_MAX_SIZE = 5000000;
|
|
39
41
|
const DISPLAY_MAX_SIZE = 100000;
|
|
40
42
|
let resultKind;
|
|
43
|
+
let hasBigInt = false;
|
|
41
44
|
$: resultKind = inferResultKind(result);
|
|
42
45
|
export let forceJson = false;
|
|
43
46
|
let enableHtml = false;
|
|
@@ -109,6 +112,12 @@ function inferResultKind(result) {
|
|
|
109
112
|
else {
|
|
110
113
|
largeObject = size > DISPLAY_MAX_SIZE;
|
|
111
114
|
}
|
|
115
|
+
if (!largeObject) {
|
|
116
|
+
hasBigInt = checkIfHasBigInt(result);
|
|
117
|
+
if (hasBigInt) {
|
|
118
|
+
return 'json';
|
|
119
|
+
}
|
|
120
|
+
}
|
|
112
121
|
if (Array.isArray(result)) {
|
|
113
122
|
if (result.length === 0) {
|
|
114
123
|
return 'json';
|
|
@@ -207,6 +216,18 @@ function toJsonStr(result) {
|
|
|
207
216
|
return 'error stringifying object: ' + e.toString();
|
|
208
217
|
}
|
|
209
218
|
}
|
|
219
|
+
function checkIfHasBigInt(result) {
|
|
220
|
+
if (typeof result === 'number' && Number.isInteger(result) && !Number.isSafeInteger(result)) {
|
|
221
|
+
return true;
|
|
222
|
+
}
|
|
223
|
+
if (Array.isArray(result)) {
|
|
224
|
+
return result.some(checkIfHasBigInt);
|
|
225
|
+
}
|
|
226
|
+
if (result && typeof result === 'object') {
|
|
227
|
+
return Object.values(result).some(checkIfHasBigInt);
|
|
228
|
+
}
|
|
229
|
+
return false;
|
|
230
|
+
}
|
|
210
231
|
function contentOrRootString(obj) {
|
|
211
232
|
if (obj == undefined || obj == null) {
|
|
212
233
|
return '';
|
|
@@ -286,6 +307,9 @@ function arrayOfRowsToObjects(input) {
|
|
|
286
307
|
}
|
|
287
308
|
let globalForceJson = false;
|
|
288
309
|
let seeS3PreviewFileFromList = '';
|
|
310
|
+
const disableTooltips = hasContext('disableTooltips')
|
|
311
|
+
? getContext('disableTooltips') === true
|
|
312
|
+
: false;
|
|
289
313
|
</script>
|
|
290
314
|
|
|
291
315
|
<HighlightTheme />
|
|
@@ -299,10 +323,11 @@ let seeS3PreviewFileFromList = '';
|
|
|
299
323
|
on:selected={(ev) => {
|
|
300
324
|
globalForceJson = ev.detail === 'json'
|
|
301
325
|
}}
|
|
326
|
+
let:item
|
|
302
327
|
>
|
|
303
|
-
<ToggleButton class="px-1.5" value="pretty" label="Pretty" icon={Highlighter} />
|
|
328
|
+
<ToggleButton class="px-1.5" value="pretty" label="Pretty" icon={Highlighter} {item} />
|
|
304
329
|
|
|
305
|
-
<ToggleButton class="px-1.5" value="json" label="JSON" icon={Braces} />
|
|
330
|
+
<ToggleButton class="px-1.5" value="json" label="JSON" icon={Braces} {item} />
|
|
306
331
|
</ToggleButtonGroup>
|
|
307
332
|
</div>
|
|
308
333
|
{/if}
|
|
@@ -321,55 +346,71 @@ let seeS3PreviewFileFromList = '';
|
|
|
321
346
|
/>
|
|
322
347
|
{/each}</div
|
|
323
348
|
>
|
|
324
|
-
{:else if resultKind === 'nondisplayable'}
|
|
325
|
-
|
|
349
|
+
{:else if resultKind === 'nondisplayable'}
|
|
350
|
+
<div class="text-red-400">Non displayable object</div>
|
|
351
|
+
{:else}
|
|
352
|
+
<div
|
|
326
353
|
class="inline-highlight relative grow {['plain', 'markdown'].includes(resultKind ?? '')
|
|
327
354
|
? ''
|
|
328
355
|
: 'min-h-[160px]'}"
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
356
|
+
>
|
|
357
|
+
{#if result != undefined && length != undefined && largeObject != undefined}
|
|
358
|
+
<div class="flex justify-between items-center w-full">
|
|
359
|
+
<div class="text-tertiary text-sm flex flex-row gap-2 items-center">
|
|
332
360
|
{#if !hideAsJson && !['json', 's3object'].includes(resultKind ?? '') && typeof result === 'object'}<ToggleButtonGroup
|
|
333
361
|
class="h-6"
|
|
334
362
|
selected={forceJson ? 'json' : resultKind?.startsWith('table-') ? 'table' : 'pretty'}
|
|
363
|
+
let:item
|
|
335
364
|
on:selected={(ev) => {
|
|
336
365
|
forceJson = ev.detail === 'json'
|
|
337
366
|
}}
|
|
338
367
|
>
|
|
339
368
|
{#if ['table-col', 'table-row', 'table-row-object'].includes(resultKind ?? '')}
|
|
340
|
-
<ToggleButton class="px-1.5" value="table" label="Table" icon={Table2} />
|
|
369
|
+
<ToggleButton class="px-1.5" value="table" label="Table" icon={Table2} {item} />
|
|
341
370
|
{:else}
|
|
342
|
-
<ToggleButton
|
|
371
|
+
<ToggleButton
|
|
372
|
+
class="px-1.5"
|
|
373
|
+
value="pretty"
|
|
374
|
+
label="Pretty"
|
|
375
|
+
icon={Highlighter}
|
|
376
|
+
{item}
|
|
377
|
+
/>
|
|
343
378
|
{/if}
|
|
344
|
-
<ToggleButton class="px-1.5" value="json" label="JSON" icon={Braces} />
|
|
379
|
+
<ToggleButton class="px-1.5" value="json" label="JSON" icon={Braces} {item} />
|
|
345
380
|
</ToggleButtonGroup>
|
|
346
381
|
{/if}
|
|
347
382
|
</div>
|
|
348
383
|
<div class="text-secondary text-xs flex gap-2.5 z-10 items-center">
|
|
349
|
-
|
|
384
|
+
{#if customUi?.disableAiFix !== true}
|
|
385
|
+
<slot name="copilot-fix" />
|
|
386
|
+
{/if}
|
|
350
387
|
{#if !disableExpand && !noControls}
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
?
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
<
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
388
|
+
{#if customUi?.disableDownload !== true}
|
|
389
|
+
<a
|
|
390
|
+
download="{filename ?? 'result'}.json"
|
|
391
|
+
class="-mt-1 text-current"
|
|
392
|
+
href={workspaceId && jobId
|
|
393
|
+
? nodeId
|
|
394
|
+
? `${base}/api/w/${workspaceId}/jobs/result_by_id/${jobId}/${nodeId}`
|
|
395
|
+
: `${base}/api/w/${workspaceId}/jobs_u/completed/get_result/${jobId}`
|
|
396
|
+
: `data:text/json;charset=utf-8,${encodeURIComponent(toJsonStr(result))}`}
|
|
397
|
+
>
|
|
398
|
+
<Download size={14} />
|
|
399
|
+
</a>
|
|
400
|
+
{/if}
|
|
401
|
+
{#if disableTooltips !== true}
|
|
402
|
+
<Popover
|
|
403
|
+
documentationLink="https://www.windmill.dev/docs/core_concepts/rich_display_rendering"
|
|
404
|
+
>
|
|
405
|
+
<svelte:fragment slot="text">
|
|
406
|
+
The result renderer in Windmill supports rich display rendering, allowing you to
|
|
407
|
+
customize the display format of your results.
|
|
408
|
+
</svelte:fragment>
|
|
409
|
+
<div class="-mt-1">
|
|
410
|
+
<InfoIcon size={14} />
|
|
411
|
+
</div>
|
|
412
|
+
</Popover>
|
|
413
|
+
{/if}
|
|
373
414
|
<button on:click={() => copyToClipboard(toJsonStr(result))} class="-mt-1">
|
|
374
415
|
<ClipboardCopy size={14} />
|
|
375
416
|
</button>
|
|
@@ -378,8 +419,9 @@ let seeS3PreviewFileFromList = '';
|
|
|
378
419
|
</button>
|
|
379
420
|
{/if}
|
|
380
421
|
</div>
|
|
381
|
-
</div
|
|
382
|
-
|
|
422
|
+
</div>
|
|
423
|
+
<div class="grow">
|
|
424
|
+
{#if !forceJson && resultKind === 'table-col'}
|
|
383
425
|
{@const data = 'table-col' in result ? result['table-col'] : result}
|
|
384
426
|
<AutoDataTable objects={objectOfArraysToObjects(data)} />
|
|
385
427
|
{:else if !forceJson && resultKind === 'table-row'}
|
|
@@ -597,16 +639,22 @@ let seeS3PreviewFileFromList = '';
|
|
|
597
639
|
<img
|
|
598
640
|
alt="preview rendered"
|
|
599
641
|
class="w-auto h-full"
|
|
600
|
-
src={`/api/w/${workspaceId}/${
|
|
601
|
-
|
|
642
|
+
src={`/api/w/${workspaceId}/${
|
|
643
|
+
appPath
|
|
644
|
+
? 'apps_u/load_image_preview/' + appPath
|
|
645
|
+
: 'job_helpers/load_image_preview'
|
|
646
|
+
}?file_key=${result.s3}` + (result.storage ? `&storage=${result.storage}` : '')}
|
|
602
647
|
/>
|
|
603
648
|
</div>
|
|
604
649
|
{:else if result?.s3?.endsWith('.pdf')}
|
|
605
650
|
<div class="h-96 mt-2 border">
|
|
606
651
|
<PdfViewer
|
|
607
652
|
allowFullscreen
|
|
608
|
-
source={`/api/w/${workspaceId}/${
|
|
609
|
-
|
|
653
|
+
source={`/api/w/${workspaceId}/${
|
|
654
|
+
appPath
|
|
655
|
+
? 'apps_u/load_image_preview/' + appPath
|
|
656
|
+
: 'job_helpers/load_image_preview'
|
|
657
|
+
}?file_key=${result.s3}` + (result.storage ? `&storage=${result.storage}` : '')}
|
|
610
658
|
/>
|
|
611
659
|
</div>
|
|
612
660
|
{/if}
|
|
@@ -693,7 +741,7 @@ let seeS3PreviewFileFromList = '';
|
|
|
693
741
|
<div class="prose-xs dark:prose-invert !list-disc !list-outside">
|
|
694
742
|
<Markdown md={result?.md ?? result?.markdown} />
|
|
695
743
|
</div>
|
|
696
|
-
{:else if largeObject}
|
|
744
|
+
{:else if largeObject || hasBigInt}
|
|
697
745
|
{#if result && typeof result === 'object' && 'file' in result}
|
|
698
746
|
<div
|
|
699
747
|
><a
|
|
@@ -703,34 +751,36 @@ let seeS3PreviewFileFromList = '';
|
|
|
703
751
|
>
|
|
704
752
|
</div>
|
|
705
753
|
{:else}
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
?
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
754
|
+
{#if largeObject}
|
|
755
|
+
<div class="text-sm text-tertiary"
|
|
756
|
+
><a
|
|
757
|
+
download="{filename ?? 'result'}.json"
|
|
758
|
+
href={workspaceId && jobId
|
|
759
|
+
? nodeId
|
|
760
|
+
? `${base}/api/w/${workspaceId}/jobs/result_by_id/${jobId}/${nodeId}`
|
|
761
|
+
: `${base}/api/w/${workspaceId}/jobs_u/completed/get_result/${jobId}`
|
|
762
|
+
: `data:text/json;charset=utf-8,${encodeURIComponent(toJsonStr(result))}`}
|
|
763
|
+
>
|
|
764
|
+
Download {filename ? '' : 'as JSON'}
|
|
765
|
+
</a>
|
|
766
|
+
{#if download_as_csv}
|
|
767
|
+
<DownloadCsv
|
|
768
|
+
getContent={() => convertJsonToCsv(result)}
|
|
769
|
+
customText="Download as CSV"
|
|
770
|
+
/>
|
|
771
|
+
{/if}
|
|
772
|
+
</div>
|
|
724
773
|
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
774
|
+
<div class="mt-1 mb-2">
|
|
775
|
+
<Alert
|
|
776
|
+
size="xs"
|
|
777
|
+
title="Large result detected"
|
|
778
|
+
type="warning"
|
|
779
|
+
tooltip="We recommend using persistent object storage for large result. See docs for setting up an object storage service integration using s3 or any other s3 compatible services."
|
|
780
|
+
documentationLink="https://www.windmill.dev/docs/core_concepts/persistent_storage#object-storage-for-large-data-s3-r2-minio-azure-blob"
|
|
781
|
+
/>
|
|
782
|
+
</div>
|
|
783
|
+
{/if}
|
|
734
784
|
{#if result && result != 'WINDMILL_TOO_BIG'}
|
|
735
785
|
<ObjectViewer json={result} />
|
|
736
786
|
{/if}
|
|
@@ -770,19 +820,21 @@ let seeS3PreviewFileFromList = '';
|
|
|
770
820
|
<Drawer bind:this={jsonViewer} bind:open={drawerOpen} size="900px">
|
|
771
821
|
<DrawerContent title="Expanded Result" on:close={jsonViewer.closeDrawer}>
|
|
772
822
|
<svelte:fragment slot="actions">
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
?
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
823
|
+
{#if customUi?.disableDownload !== true}
|
|
824
|
+
<Button
|
|
825
|
+
download="{filename ?? 'result'}.json"
|
|
826
|
+
href={workspaceId && jobId
|
|
827
|
+
? nodeId
|
|
828
|
+
? `${base}/api/w/${workspaceId}/jobs/result_by_id/${jobId}/${nodeId}`
|
|
829
|
+
: `${base}/api/w/${workspaceId}/jobs_u/completed/get_result/${jobId}`
|
|
830
|
+
: `data:text/json;charset=utf-8,${encodeURIComponent(toJsonStr(result))}`}
|
|
831
|
+
startIcon={{ icon: Download }}
|
|
832
|
+
color="light"
|
|
833
|
+
size="xs"
|
|
834
|
+
>
|
|
835
|
+
Download
|
|
836
|
+
</Button>
|
|
837
|
+
{/if}
|
|
786
838
|
<Button
|
|
787
839
|
on:click={() => copyToClipboard(toJsonStr(result))}
|
|
788
840
|
color="light"
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SvelteComponent } from "svelte";
|
|
2
|
+
import type { DisplayResultUi } from './custom_ui';
|
|
2
3
|
declare const __propDef: {
|
|
3
4
|
props: {
|
|
4
5
|
result: any;
|
|
@@ -13,6 +14,7 @@ declare const __propDef: {
|
|
|
13
14
|
nodeId?: string | undefined;
|
|
14
15
|
language?: string | undefined;
|
|
15
16
|
appPath?: string | undefined;
|
|
17
|
+
customUi?: DisplayResultUi | undefined;
|
|
16
18
|
forceJson?: boolean | undefined;
|
|
17
19
|
};
|
|
18
20
|
events: {
|
|
@@ -1,30 +1,103 @@
|
|
|
1
|
+
<script context="module">import { writable } from 'svelte/store';
|
|
2
|
+
const activeDropdown = writable({
|
|
3
|
+
id: null,
|
|
4
|
+
close: null
|
|
5
|
+
});
|
|
6
|
+
</script>
|
|
7
|
+
|
|
1
8
|
<script>import { MoreVertical } from 'lucide-svelte';
|
|
2
|
-
import Menu from './common/menu/MenuV2.svelte';
|
|
3
9
|
import DropdownV2Inner from './DropdownV2Inner.svelte';
|
|
10
|
+
import { pointerDownOutside } from '../utils';
|
|
11
|
+
import { createDropdownMenu, melt, createSync } from '@melt-ui/svelte';
|
|
12
|
+
import ResolveOpen from './common/menu/ResolveOpen.svelte';
|
|
13
|
+
import Button from './common/button/Button.svelte';
|
|
14
|
+
import { twMerge } from 'tailwind-merge';
|
|
4
15
|
export let items = [];
|
|
5
|
-
export let justifyEnd = true;
|
|
6
16
|
export let disabled = false;
|
|
17
|
+
export let placement = 'bottom-end';
|
|
18
|
+
export let usePointerDownOutside = false;
|
|
19
|
+
export let closeOnOtherDropdownOpen = true;
|
|
20
|
+
const { elements: { menu, item, trigger }, states, ids: { menu: dropdownId } } = createDropdownMenu({
|
|
21
|
+
positioning: {
|
|
22
|
+
placement
|
|
23
|
+
},
|
|
24
|
+
loop: true,
|
|
25
|
+
onOpenChange: ({ next }) => {
|
|
26
|
+
if (closeOnOtherDropdownOpen) {
|
|
27
|
+
if (next) {
|
|
28
|
+
// Close previous dropdown if exists
|
|
29
|
+
if ($activeDropdown.close && $activeDropdown.id !== $dropdownId) {
|
|
30
|
+
$activeDropdown.close();
|
|
31
|
+
}
|
|
32
|
+
// Set this dropdown as active
|
|
33
|
+
activeDropdown.set({ id: $dropdownId, close });
|
|
34
|
+
}
|
|
35
|
+
else if ($activeDropdown.id === $dropdownId) {
|
|
36
|
+
activeDropdown.set({ id: null, close: null });
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
return next;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
let open = false;
|
|
43
|
+
const sync = createSync(states);
|
|
44
|
+
$: sync.open(open, (v) => (open = Boolean(v)));
|
|
45
|
+
export function close() {
|
|
46
|
+
open = false;
|
|
47
|
+
}
|
|
7
48
|
async function computeItems() {
|
|
8
49
|
if (typeof items === 'function') {
|
|
9
|
-
|
|
50
|
+
const result = await items();
|
|
51
|
+
return Array.isArray(result) ? result.filter((item) => !item.hide) : [];
|
|
10
52
|
}
|
|
11
53
|
else {
|
|
12
54
|
return items.filter((item) => !item.hide);
|
|
13
55
|
}
|
|
14
56
|
}
|
|
57
|
+
async function getMenuElements() {
|
|
58
|
+
return Array.from(document.querySelectorAll('[data-menu]'));
|
|
59
|
+
}
|
|
15
60
|
</script>
|
|
16
61
|
|
|
17
|
-
<
|
|
18
|
-
<div slot="trigger">
|
|
19
|
-
{#if $$slots.buttonReplacement}
|
|
20
|
-
<slot name="buttonReplacement" />
|
|
21
|
-
{:else}
|
|
22
|
-
<MoreVertical
|
|
23
|
-
size={16}
|
|
24
|
-
class="w-8 h-8 p-2 hover:bg-surface-hover cursor-pointer rounded-md"
|
|
25
|
-
/>
|
|
26
|
-
{/if}
|
|
27
|
-
</div>
|
|
62
|
+
<ResolveOpen {open} on:open on:close />
|
|
28
63
|
|
|
29
|
-
|
|
30
|
-
|
|
64
|
+
<button
|
|
65
|
+
class={twMerge('w-full h-8 flex items-center justify-end', $$props.class)}
|
|
66
|
+
{...$trigger} use:$trigger.action
|
|
67
|
+
{disabled}
|
|
68
|
+
on:click={(e) => e.stopPropagation()}
|
|
69
|
+
use:pointerDownOutside={{
|
|
70
|
+
capture: true,
|
|
71
|
+
stopPropagation: false,
|
|
72
|
+
exclude: getMenuElements,
|
|
73
|
+
customEventName: 'pointerdown_menu'
|
|
74
|
+
}}
|
|
75
|
+
on:pointerdown_outside={() => {
|
|
76
|
+
if (usePointerDownOutside) {
|
|
77
|
+
close()
|
|
78
|
+
}
|
|
79
|
+
}}
|
|
80
|
+
data-menu
|
|
81
|
+
>
|
|
82
|
+
{#if $$slots.buttonReplacement}
|
|
83
|
+
<slot name="buttonReplacement" />
|
|
84
|
+
{:else}
|
|
85
|
+
<Button
|
|
86
|
+
nonCaptureEvent
|
|
87
|
+
size="xs"
|
|
88
|
+
color="light"
|
|
89
|
+
startIcon={{ icon: MoreVertical }}
|
|
90
|
+
btnClasses="bg-transparent"
|
|
91
|
+
/>
|
|
92
|
+
{/if}
|
|
93
|
+
</button>
|
|
94
|
+
|
|
95
|
+
{#if open}
|
|
96
|
+
<div {...$menu} use:$menu.action data-menu class="z-[6000]">
|
|
97
|
+
<div
|
|
98
|
+
class="bg-surface border w-56 origin-top-right rounded-md shadow-md focus:outline-none overflow-y-auto py-1 max-h-[50vh]"
|
|
99
|
+
>
|
|
100
|
+
<DropdownV2Inner items={computeItems} meltItem={item} />
|
|
101
|
+
</div>
|
|
102
|
+
</div>
|
|
103
|
+
{/if}
|
|
@@ -1,37 +1,19 @@
|
|
|
1
1
|
import { SvelteComponent } from "svelte";
|
|
2
|
+
import type { Placement } from '@floating-ui/core';
|
|
3
|
+
import type { Item } from '../utils';
|
|
2
4
|
declare const __propDef: {
|
|
3
5
|
props: {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
action?: ((e: CustomEvent<any>) => void) | undefined;
|
|
7
|
-
icon?: any;
|
|
8
|
-
href?: string | undefined;
|
|
9
|
-
disabled?: boolean | undefined;
|
|
10
|
-
type?: "delete" | "action" | undefined;
|
|
11
|
-
hide?: boolean | undefined;
|
|
12
|
-
}[] | (() => {
|
|
13
|
-
displayName: string;
|
|
14
|
-
action?: ((e: CustomEvent<any>) => void) | undefined;
|
|
15
|
-
icon?: any;
|
|
16
|
-
href?: string | undefined;
|
|
17
|
-
disabled?: boolean | undefined;
|
|
18
|
-
type?: "delete" | "action" | undefined;
|
|
19
|
-
hide?: boolean | undefined;
|
|
20
|
-
}[]) | (() => Promise<{
|
|
21
|
-
displayName: string;
|
|
22
|
-
action?: ((e: CustomEvent<any>) => void) | undefined;
|
|
23
|
-
icon?: any;
|
|
24
|
-
href?: string | undefined;
|
|
25
|
-
disabled?: boolean | undefined;
|
|
26
|
-
type?: "delete" | "action" | undefined;
|
|
27
|
-
hide?: boolean | undefined;
|
|
28
|
-
}[]>) | undefined;
|
|
29
|
-
justifyEnd?: boolean | undefined;
|
|
6
|
+
[x: string]: any;
|
|
7
|
+
items?: Item[] | (() => Item[]) | (() => Promise<Item[]>) | undefined;
|
|
30
8
|
disabled?: boolean | undefined;
|
|
9
|
+
placement?: Placement | undefined;
|
|
10
|
+
usePointerDownOutside?: boolean | undefined;
|
|
11
|
+
closeOnOtherDropdownOpen?: boolean | undefined;
|
|
12
|
+
close?: (() => void) | undefined;
|
|
31
13
|
};
|
|
32
14
|
events: {
|
|
33
|
-
close: CustomEvent<any>;
|
|
34
15
|
open: CustomEvent<any>;
|
|
16
|
+
close: CustomEvent<any>;
|
|
35
17
|
} & {
|
|
36
18
|
[evt: string]: CustomEvent<any>;
|
|
37
19
|
};
|
|
@@ -43,5 +25,6 @@ export type DropdownV2Props = typeof __propDef.props;
|
|
|
43
25
|
export type DropdownV2Events = typeof __propDef.events;
|
|
44
26
|
export type DropdownV2Slots = typeof __propDef.slots;
|
|
45
27
|
export default class DropdownV2 extends SvelteComponent<DropdownV2Props, DropdownV2Events, DropdownV2Slots> {
|
|
28
|
+
get close(): () => void;
|
|
46
29
|
}
|
|
47
30
|
export {};
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
<script>import { MenuItem } from '
|
|
1
|
+
<script>import { MenuItem } from './meltComponents';
|
|
2
2
|
import { Loader2 } from 'lucide-svelte';
|
|
3
3
|
import { twMerge } from 'tailwind-merge';
|
|
4
4
|
export let items = [];
|
|
5
|
+
export let meltItem;
|
|
5
6
|
let computedItems = undefined;
|
|
6
7
|
async function computeItems() {
|
|
7
8
|
if (typeof items === 'function') {
|
|
@@ -22,16 +23,18 @@ computeItems();
|
|
|
22
23
|
href={item?.href}
|
|
23
24
|
disabled={item?.disabled}
|
|
24
25
|
class={twMerge(
|
|
25
|
-
'px-4 py-2 text-primary hover:bg-surface-hover
|
|
26
|
+
'px-4 py-2 text-primary font-semibold hover:bg-surface-hover cursor-pointer text-xs transition-all',
|
|
27
|
+
'data-[highlighted]:bg-surface-hover',
|
|
26
28
|
'flex flex-row gap-2 items-center',
|
|
27
29
|
item?.disabled && 'text-gray-400 cursor-not-allowed',
|
|
28
30
|
item?.type === 'delete' &&
|
|
29
31
|
!item?.disabled &&
|
|
30
|
-
'text-red-500 hover:bg-red-100 hover:text-red-500'
|
|
32
|
+
'text-red-500 hover:bg-red-100 hover:text-red-500 data-[highlighted]:text-red-500 data-[highlighted]:bg-red-100'
|
|
31
33
|
)}
|
|
34
|
+
item={meltItem}
|
|
32
35
|
>
|
|
33
36
|
{#if item.icon}
|
|
34
|
-
<svelte:component this={item.icon} size={14} />
|
|
37
|
+
<svelte:component this={item.icon} size={14} color={item.iconColor} />
|
|
35
38
|
{/if}
|
|
36
39
|
{item.displayName}
|
|
37
40
|
</MenuItem>
|