windmill-components 1.623.2 → 1.642.0
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/dist/sharedUtils/assets/tokens/colorTokensConfig.d.ts +2 -0
- package/dist/sharedUtils/base.d.ts +1 -0
- package/dist/sharedUtils/cloud.d.ts +1 -0
- package/dist/sharedUtils/common.d.ts +111 -0
- package/dist/sharedUtils/components/apps/components/display/dbtable/queries/count.d.ts +5 -0
- package/dist/sharedUtils/components/apps/components/display/dbtable/queries/delete.d.ts +5 -0
- package/dist/sharedUtils/components/apps/components/display/dbtable/queries/insert.d.ts +5 -0
- package/dist/sharedUtils/components/apps/components/display/dbtable/queries/select.d.ts +13 -0
- package/dist/sharedUtils/components/apps/components/display/dbtable/queries/update.d.ts +11 -0
- package/dist/sharedUtils/components/apps/components/display/dbtable/utils.d.ts +95 -0
- package/dist/sharedUtils/components/apps/editor/appPolicy.d.ts +6 -0
- package/dist/sharedUtils/components/apps/editor/appUtilsCore.d.ts +7 -0
- package/dist/sharedUtils/components/apps/editor/appUtilsS3.d.ts +33 -0
- package/dist/sharedUtils/components/apps/editor/commonAppUtils.d.ts +10 -0
- package/dist/sharedUtils/components/apps/editor/component/components.d.ts +5371 -0
- package/dist/sharedUtils/components/apps/editor/component/default-codes.d.ts +3 -0
- package/dist/sharedUtils/components/apps/editor/component/index.d.ts +3 -0
- package/dist/sharedUtils/components/apps/editor/component/sets.d.ts +7 -0
- package/dist/sharedUtils/components/apps/editor/componentsPanel/componentDefaultProps.d.ts +3 -0
- package/dist/sharedUtils/components/apps/gridUtils.d.ts +14 -0
- package/dist/sharedUtils/components/apps/inputType.d.ts +178 -0
- package/dist/sharedUtils/components/apps/rx.d.ts +29 -0
- package/dist/sharedUtils/components/apps/sharedTypes.d.ts +21 -0
- package/dist/sharedUtils/components/apps/types.d.ts +274 -0
- package/dist/sharedUtils/components/assets/lib.d.ts +25 -0
- package/dist/sharedUtils/components/common/alert/model.d.ts +2 -0
- package/dist/sharedUtils/components/common/badge/model.d.ts +8 -0
- package/dist/sharedUtils/components/common/button/model.d.ts +45 -0
- package/dist/sharedUtils/components/common/fileInput/model.d.ts +1 -0
- package/dist/sharedUtils/components/common/index.d.ts +24 -0
- package/dist/sharedUtils/components/common/skeleton/model.d.ts +21 -0
- package/dist/sharedUtils/components/dbTypes.d.ts +14 -0
- package/dist/sharedUtils/components/diff_drawer.d.ts +26 -0
- package/dist/sharedUtils/components/ducklake.d.ts +1 -0
- package/dist/sharedUtils/components/flows/scheduleUtils.d.ts +7 -0
- package/dist/sharedUtils/components/icons/index.d.ts +101 -0
- package/dist/sharedUtils/components/random_positive_adjetive.d.ts +1 -0
- package/dist/sharedUtils/components/raw_apps/rawAppPolicy.d.ts +10 -0
- package/dist/sharedUtils/components/raw_apps/utils.d.ts +15 -0
- package/dist/sharedUtils/components/triggers/email/utils.d.ts +4 -0
- package/dist/sharedUtils/components/triggers/gcp/utils.d.ts +2 -0
- package/dist/sharedUtils/components/triggers/http/utils.d.ts +11 -0
- package/dist/sharedUtils/components/triggers/kafka/utils.d.ts +2 -0
- package/dist/sharedUtils/components/triggers/mqtt/utils.d.ts +2 -0
- package/dist/sharedUtils/components/triggers/nats/utils.d.ts +2 -0
- package/dist/sharedUtils/components/triggers/postgres/utils.d.ts +8 -0
- package/dist/sharedUtils/components/triggers/sqs/utils.d.ts +2 -0
- package/dist/sharedUtils/components/triggers/triggers.svelte.d.ts +32 -0
- package/dist/sharedUtils/components/triggers/utils.d.ts +80 -0
- package/dist/sharedUtils/components/triggers/websocket/utils.d.ts +2 -0
- package/dist/sharedUtils/components/triggers.d.ts +20 -0
- package/dist/sharedUtils/gen/core/ApiError.d.ts +10 -0
- package/dist/sharedUtils/gen/core/ApiRequestOptions.d.ts +13 -0
- package/dist/sharedUtils/gen/core/ApiResult.d.ts +7 -0
- package/dist/sharedUtils/gen/core/CancelablePromise.d.ts +26 -0
- package/dist/sharedUtils/gen/core/OpenAPI.d.ts +27 -0
- package/dist/sharedUtils/gen/core/request.d.ts +29 -0
- package/dist/sharedUtils/gen/index.d.ts +6 -0
- package/dist/sharedUtils/gen/schemas.gen.d.ts +7036 -0
- package/dist/sharedUtils/gen/services.gen.d.ts +6047 -0
- package/dist/sharedUtils/gen/types.gen.d.ts +21881 -0
- package/dist/sharedUtils/history.svelte.d.ts +9 -0
- package/dist/sharedUtils/hub.d.ts +49 -0
- package/dist/sharedUtils/jsr.json +6 -0
- package/dist/sharedUtils/lib.d.ts +5 -0
- package/dist/sharedUtils/lib.es.js +1588 -0
- package/dist/sharedUtils/package.json +12 -0
- package/dist/sharedUtils/schema.d.ts +3 -0
- package/dist/sharedUtils/stores.d.ts +97 -0
- package/dist/sharedUtils/svelte5Utils.svelte.d.ts +80 -0
- package/dist/sharedUtils/toast.d.ts +8 -0
- package/dist/sharedUtils/utils.d.ts +265 -0
- package/package/assets/app.css +32 -13
- package/package/components/AIAgentLogViewer.svelte +2 -2
- package/package/components/AIAgentLogViewer.svelte.d.ts +1 -0
- package/package/components/AIProviderPicker.svelte +20 -80
- package/package/components/AIProviderPicker.svelte.d.ts +2 -7
- package/package/components/AddUser.svelte +2 -2
- package/package/components/ApiConnectForm.svelte +7 -1
- package/package/components/AppConnectInner.svelte.d.ts +1 -1
- package/package/components/ArgInput.svelte +15 -5
- package/package/components/ArgInput.svelte.d.ts +3 -4
- package/package/components/Auth0Setting.svelte +6 -2
- package/package/components/AuthSettings.svelte +68 -39
- package/package/components/AuthSettings.svelte.d.ts +3 -1
- package/package/components/AutheliaSetting.svelte +3 -2
- package/package/components/AuthentikSetting.svelte +3 -2
- package/package/components/AutoscalingConfigEditor.svelte +2 -1
- package/package/components/AutoscalingConfigEditor.svelte.d.ts +1 -0
- package/package/components/CenteredModal.svelte +14 -4
- package/package/components/CenteredModal.svelte.d.ts +1 -0
- package/package/components/ChangeInstanceUsernameInner.svelte +1 -1
- package/package/components/CompareWorkspaces.svelte +29 -57
- package/package/components/ConcurrentJobsChart.svelte +1 -1
- package/package/components/ConnectionSection.svelte +69 -73
- package/package/components/CustomSso.svelte +7 -7
- package/package/components/DBManager.svelte +15 -4
- package/package/components/DBManager.svelte.d.ts +2 -0
- package/package/components/DBManagerContent.svelte +5 -0
- package/package/components/DBManagerContent.svelte.d.ts +1 -0
- package/package/components/DBManagerDrawer.svelte +2 -0
- package/package/components/DatatablePicker.svelte +29 -0
- package/package/components/DatatablePicker.svelte.d.ts +13 -0
- package/package/components/DateTimeInput.svelte +3 -3
- package/package/components/DedicatedWorkersSelector.svelte +39 -42
- package/package/components/DeployToSetting.svelte +183 -123
- package/package/components/DeployToSetting.svelte.d.ts +19 -28
- package/package/components/DeployWorkspace.svelte +6 -44
- package/package/components/DeployWorkspace.svelte.d.ts +2 -1
- package/package/components/DeployWorkspaceDrawer.svelte +18 -7
- package/package/components/DeployWorkspaceDrawer.svelte.d.ts +3 -20
- package/package/components/Description.svelte +3 -1
- package/package/components/Dev.svelte +1 -0
- package/package/components/DiffEditor.svelte +7 -6
- package/package/components/DiffEditor.svelte.d.ts +2 -6
- package/package/components/DisplayResult.svelte +2 -2
- package/package/components/DropdownMenu.svelte +39 -0
- package/package/components/DropdownMenu.svelte.d.ts +14 -0
- package/package/components/DropdownSubmenuItem.svelte +68 -0
- package/package/components/DropdownSubmenuItem.svelte.d.ts +10 -0
- package/package/components/DropdownV2.svelte +3 -3
- package/package/components/DropdownV2Inner.svelte +42 -34
- package/package/components/DropdownV2Inner.svelte.d.ts +2 -1
- package/package/components/DucklakePicker.svelte +2 -5
- package/package/components/EEOnly.svelte +4 -14
- package/package/components/EEOnly.svelte.d.ts +0 -1
- package/package/components/Editor.svelte +2 -2
- package/package/components/Editor.svelte.d.ts +1 -0
- package/package/components/EditorBar.svelte +2 -4
- package/package/components/ErrorOrRecoveryHandler.svelte +62 -53
- package/package/components/ErrorOrRecoveryHandler.svelte.d.ts +1 -0
- package/package/components/ExploreAssetButton.svelte +1 -2
- package/package/components/FileExplorer.svelte +249 -0
- package/package/components/FileExplorer.svelte.d.ts +21 -0
- package/package/components/FilesetEditor.svelte +103 -0
- package/package/components/FilesetEditor.svelte.d.ts +6 -0
- package/package/components/FilterSearchbar.svelte +628 -0
- package/package/components/FilterSearchbar.svelte.d.ts +86 -0
- package/package/components/FlowBuilder.svelte +123 -79
- package/package/components/FlowGraphViewerStep.svelte +49 -33
- package/package/components/FlowHistoryJobPicker.svelte +2 -1
- package/package/components/FlowJobResult.svelte +31 -23
- package/package/components/FlowJobResult.svelte.d.ts +0 -1
- package/package/components/FlowLogRow.svelte +1 -1
- package/package/components/FlowLogViewer.svelte +8 -3
- package/package/components/FlowPreviewContent.svelte +65 -49
- package/package/components/FlowPreviewContent.svelte.d.ts +4 -0
- package/package/components/FlowRestartButton.svelte +47 -47
- package/package/components/FlowRestartButton.svelte.d.ts +2 -0
- package/package/components/FlowStatusViewer.svelte +2 -3
- package/package/components/FlowStatusViewer.svelte.d.ts +1 -0
- package/package/components/FlowStatusViewerInner.svelte +380 -297
- package/package/components/FlowStatusViewerInner.svelte.d.ts +2 -2
- package/package/components/FlowStatusWaitingForEvents.svelte +11 -10
- package/package/components/FolderPicker.svelte +195 -65
- package/package/components/FolderPicker.svelte.d.ts +2 -0
- package/package/components/HistoricInputs.svelte +3 -4
- package/package/components/IconedResourceType.svelte +8 -2
- package/package/components/IconedResourceType.svelte.d.ts +2 -0
- package/package/components/InputError.svelte +9 -0
- package/package/components/InputError.svelte.d.ts +6 -0
- package/package/components/InputTransformForm.svelte +46 -39
- package/package/components/InputTransformForm.svelte.d.ts +1 -0
- package/package/components/InputTransformSchemaForm.svelte +2 -1
- package/package/components/InputTransformSchemaForm.svelte.d.ts +1 -0
- package/package/components/InputTransformsViewer.svelte +37 -20
- package/package/components/InstanceNameEditor.svelte +3 -1
- package/package/components/InstanceSetting.svelte +150 -374
- package/package/components/InstanceSetting.svelte.d.ts +1 -0
- package/package/components/InstanceSettings.svelte +804 -193
- package/package/components/InstanceSettings.svelte.d.ts +17 -2
- package/package/components/IntegerInput.svelte +58 -0
- package/package/components/IntegerInput.svelte.d.ts +14 -0
- package/package/components/InviteGlobalUser.svelte +25 -25
- package/package/components/InviteGlobalUser.svelte.d.ts +4 -2
- package/package/components/JobArgs.svelte +14 -10
- package/package/components/JobLoader.svelte +6 -4
- package/package/components/JobLoader.svelte.d.ts +2 -2
- package/package/components/JobStatus.svelte +29 -26
- package/package/components/JobStatus.svelte.d.ts +1 -0
- package/package/components/KanidmSetting.svelte +3 -2
- package/package/components/KeycloakSetting.svelte +3 -2
- package/package/components/Login.svelte +9 -3
- package/package/components/ModuleStatus.svelte +5 -5
- package/package/components/ModuleTest.svelte +3 -3
- package/package/components/MoveDrawer.svelte +47 -76
- package/package/components/MoveDrawer.svelte.d.ts +4 -6
- package/package/components/NextcloudSetting.svelte +3 -2
- package/package/components/NoDirectDeployAlert.svelte +31 -0
- package/package/components/NoDirectDeployAlert.svelte.d.ts +6 -0
- package/package/components/NumberTypeNarrowing.svelte +65 -67
- package/package/components/NumberTypeNarrowing.svelte.d.ts +2 -1
- package/package/components/OAuthSetting.svelte +6 -14
- package/package/components/ObjectStoreConfigSettings.svelte +150 -55
- package/package/components/ObjectStoreConfigSettings.svelte.d.ts +34 -44
- package/package/components/OktaSetting.svelte +3 -2
- package/package/components/PageHeader.svelte +1 -1
- package/package/components/ParentWorkspaceProtectionAlert.svelte +48 -0
- package/package/components/ParentWorkspaceProtectionAlert.svelte.d.ts +7 -0
- package/package/components/Path.svelte +40 -28
- package/package/components/Path.svelte.d.ts +3 -0
- package/package/components/PocketIdSetting.svelte +3 -2
- package/package/components/ResourceEditor.svelte +9 -3
- package/package/components/ResourcePicker.svelte +2 -5
- package/package/components/RightClickPopover.svelte +37 -0
- package/package/components/RightClickPopover.svelte.d.ts +11 -0
- package/package/components/RunChart.svelte +2 -21
- package/package/components/RunChart.svelte.d.ts +0 -3
- package/package/components/RunsPage.svelte +458 -560
- package/package/components/SaveButton.svelte +78 -0
- package/package/components/SaveButton.svelte.d.ts +12 -0
- package/package/components/SaveInputsButton.svelte +1 -1
- package/package/components/SavedInputsV2.svelte +1 -3
- package/package/components/SchemaFormWithArgPicker.svelte +34 -30
- package/package/components/SchemaFormWithArgPicker.svelte.d.ts +12 -21
- package/package/components/SchemaViewer.svelte +56 -53
- package/package/components/ScriptBuilder.svelte +12 -12
- package/package/components/ScriptEditor.svelte +30 -28
- package/package/components/Section.svelte +2 -2
- package/package/components/ServiceLogsInner.svelte +21 -82
- package/package/components/Star.svelte +8 -22
- package/package/components/Star.svelte.d.ts +4 -4
- package/package/components/StringTypeNarrowing.svelte +1 -0
- package/package/components/SummaryPathDisplay.svelte +177 -0
- package/package/components/SummaryPathDisplay.svelte.d.ts +10 -0
- package/package/components/SuperadminSettings.svelte +185 -4
- package/package/components/SuperadminSettings.svelte.d.ts +4 -1
- package/package/components/SuperadminSettingsInner.svelte +307 -192
- package/package/components/SuperadminSettingsInner.svelte.d.ts +12 -1
- package/package/components/TaggedTextInput.svelte +449 -0
- package/package/components/TaggedTextInput.svelte.d.ts +28 -0
- package/package/components/Toast.svelte +69 -51
- package/package/components/Toast.svelte.d.ts +2 -2
- package/package/components/Tooltip.svelte +2 -2
- package/package/components/Tooltip.svelte.d.ts +2 -0
- package/package/components/TooltipInner.svelte +6 -1
- package/package/components/TooltipInner.svelte.d.ts +1 -0
- package/package/components/Uptodate.svelte +3 -2
- package/package/components/UserSettings.svelte +2 -2
- package/package/components/UserSettings.svelte.d.ts +1 -0
- package/package/components/WorkerGroup.svelte +320 -192
- package/package/components/WorkerGroup.svelte.d.ts +2 -0
- package/package/components/WorkspaceDependenciesEditor.svelte +33 -17
- package/package/components/ZitadelSetting.svelte +3 -2
- package/package/components/aiProviderStorage.d.ts +5 -0
- package/package/components/aiProviderStorage.js +50 -0
- package/package/components/apps/components/display/dbtable/AppDbExplorer.svelte +24 -13
- package/package/components/apps/components/display/dbtable/metadata.d.ts +1 -0
- package/package/components/apps/components/display/dbtable/metadata.js +1 -0
- package/package/components/apps/components/display/dbtable/queries/count.js +3 -1
- package/package/components/apps/components/display/dbtable/queries/delete.js +3 -1
- package/package/components/apps/components/display/dbtable/queries/insert.js +3 -1
- package/package/components/apps/components/display/dbtable/queries/select.js +15 -1
- package/package/components/apps/components/display/dbtable/queries/update.js +3 -1
- package/package/components/apps/components/display/table/AppAggridExplorerTable.svelte +6 -0
- package/package/components/apps/components/display/table/AppAggridInfiniteTable.svelte +1 -0
- package/package/components/apps/components/display/table/AppAggridTable.svelte +7 -0
- package/package/components/apps/components/display/table/AppAggridTableActions.svelte +9 -3
- package/package/components/apps/components/display/table/AppAggridTableActions.svelte.d.ts +1 -0
- package/package/components/apps/components/display/table/theme/windmill-theme.css +8 -7
- package/package/components/apps/components/helpers/eval.js +5 -2
- package/package/components/apps/components/layout/AppModal.svelte +2 -1
- package/package/components/apps/components/layout/AppModal.svelte.d.ts +1 -0
- package/package/components/apps/editor/appPolicy.js +5 -4
- package/package/components/apps/editor/appUtils.d.ts +1 -1
- package/package/components/apps/editor/component/components.d.ts +11 -0
- package/package/components/apps/editor/component/components.js +19 -2
- package/package/components/apps/editor/componentsPanel/CssProperty.svelte +3 -1
- package/package/components/apps/editor/inlineScriptsPanel/CacheTtlPopup.svelte +1 -1
- package/package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +1 -1
- package/package/components/apps/editor/settingsPanel/OneOfInputSpecsEditor.svelte +1 -1
- package/package/components/apps/editor/settingsPanel/StylePanel.svelte +66 -29
- package/package/components/apps/editor/settingsPanel/StylePanel.svelte.d.ts +2 -17
- package/package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +10 -0
- package/package/components/apps/inputType.d.ts +2 -2
- package/package/components/assets/AssetButtons.svelte +3 -7
- package/package/components/assets/AssetButtons.svelte.d.ts +2 -4
- package/package/components/assets/AssetColumnBadges.svelte +35 -0
- package/package/components/assets/AssetColumnBadges.svelte.d.ts +10 -0
- package/package/components/assets/AssetsDropdownButton.svelte +8 -6
- package/package/components/assets/AssetsUsageDrawer.svelte +16 -14
- package/package/components/assets/JobAssetsViewer.svelte +4 -6
- package/package/components/assets/assetsFilter.d.ts +50 -0
- package/package/components/assets/assetsFilter.js +43 -0
- package/package/components/assets/lib.d.ts +3 -2
- package/package/components/assets/lib.js +8 -1
- package/package/components/auditLogs/AuditLogsFilters.svelte +30 -1
- package/package/components/common/InlineCalendarInput.svelte +580 -0
- package/package/components/common/InlineCalendarInput.svelte.d.ts +31 -0
- package/package/components/common/alert/Alert.svelte +2 -8
- package/package/components/common/alert/model.d.ts +1 -0
- package/package/components/common/alert/model.js +7 -0
- package/package/components/common/badge/Badge.svelte +7 -3
- package/package/components/common/badge/Badge.svelte.d.ts +1 -0
- package/package/components/common/breadcrumb/Breadcrumb.svelte +10 -14
- package/package/components/common/breadcrumb/Breadcrumb.svelte.d.ts +8 -23
- package/package/components/common/drawer/DrawerContent.svelte +1 -1
- package/package/components/common/seconds/SecondsInput.svelte +158 -67
- package/package/components/common/seconds/SecondsInput.svelte.d.ts +9 -21
- package/package/components/common/sidebar/SidebarNavigation.svelte +50 -0
- package/package/components/common/sidebar/SidebarNavigation.svelte.d.ts +25 -0
- package/package/components/common/table/AppRow.svelte +7 -10
- package/package/components/common/table/AppRow.svelte.d.ts +2 -2
- package/package/components/common/table/FlowRow.svelte +12 -15
- package/package/components/common/table/FlowRow.svelte.d.ts +2 -2
- package/package/components/common/table/RawAppRow.svelte +5 -82
- package/package/components/common/table/RawAppRow.svelte.d.ts +2 -23
- package/package/components/common/table/Row.svelte +2 -2
- package/package/components/common/table/Row.svelte.d.ts +0 -2
- package/package/components/common/table/ScriptRow.svelte +8 -11
- package/package/components/common/table/ScriptRow.svelte.d.ts +2 -2
- package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte +1 -1
- package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte.d.ts +1 -1
- package/package/components/copilot/TestAIKey.svelte +1 -1
- package/package/components/copilot/chat/AIChatInput.svelte +22 -11
- package/package/components/copilot/chat/AIChatManager.svelte.js +15 -17
- package/package/components/copilot/chat/AvailableContextList.svelte +215 -12
- package/package/components/copilot/chat/AvailableContextList.svelte.d.ts +1 -0
- package/package/components/copilot/chat/ContextTextarea.svelte +15 -2
- package/package/components/copilot/chat/__tests__/app/variants/streamlined.js +1 -1
- package/package/components/copilot/chat/__tests__/flow/variants/minimal-single-tool.js +4 -2
- package/package/components/copilot/chat/app/core.js +7 -86
- package/package/components/copilot/chat/context.js +4 -1
- package/package/components/copilot/chat/flow/core.js +193 -61
- package/package/components/copilot/chat/flow/openFlow.json +1 -1
- package/package/components/copilot/chat/flow/openFlowZod.d.ts +2 -2
- package/package/components/copilot/chat/flow/openFlowZod.js +6 -8
- package/package/components/copilot/chat/navigator/core.d.ts +2 -2
- package/package/components/copilot/chat/navigator/core.js +11 -2
- package/package/components/copilot/chat/script/core.js +4 -1
- package/package/components/copilot/chat/shared.d.ts +53 -1
- package/package/components/copilot/chat/shared.js +227 -1
- package/package/components/copilot/lib.js +42 -0
- package/package/components/dedicated_worker.d.ts +7 -0
- package/package/components/dedicated_worker.js +36 -0
- package/package/components/details/DetailPageHeader.svelte +8 -23
- package/package/components/details/DetailPageHeader.svelte.d.ts +1 -0
- package/package/components/details/DetailPageLayout.svelte +1 -1
- package/package/components/details/createAppFromScript.d.ts +136 -16
- package/package/components/details/createAppFromScript.js +13 -12
- package/package/components/diffEditorTypes.d.ts +6 -0
- package/package/components/diffEditorTypes.js +1 -0
- package/package/components/flows/CreateActionsApp.svelte +32 -82
- package/package/components/flows/CreateActionsFlow.svelte +28 -28
- package/package/components/flows/FlowAssetsHandler.svelte +1 -4
- package/package/components/flows/FlowProgressBar.svelte +37 -1
- package/package/components/flows/FlowProgressBar.svelte.d.ts +3 -0
- package/package/components/flows/agentToolUtils.d.ts +18 -0
- package/package/components/flows/agentToolUtils.js +47 -0
- package/package/components/flows/common/FlowCardHeader.svelte +8 -9
- package/package/components/flows/content/FlowEnvironmentVariables.svelte +3 -2
- package/package/components/flows/content/FlowLoop.svelte +3 -4
- package/package/components/flows/content/FlowModuleCache.svelte +1 -3
- package/package/components/flows/content/FlowModuleComponent.svelte +22 -6
- package/package/components/flows/content/FlowModuleSleep.svelte +1 -1
- package/package/components/flows/content/FlowResult.svelte +77 -25
- package/package/components/flows/content/FlowRetries.svelte +1 -1
- package/package/components/flows/content/FlowSettings.svelte +4 -7
- package/package/components/flows/flowState.js +6 -0
- package/package/components/flows/flowStateUtils.svelte.js +4 -1
- package/package/components/flows/flowStore.svelte.d.ts +1 -1
- package/package/components/flows/flowStore.svelte.js +4 -2
- package/package/components/flows/header/FlowPreviewButtons.svelte +2 -1
- package/package/components/flows/header/FlowYamlEditor.svelte +2 -2
- package/package/components/flows/map/FlowModuleSchemaMap.svelte +12 -6
- package/package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +2 -2
- package/package/components/flows/map/InsertModuleInner.svelte +7 -0
- package/package/components/flows/map/InsertModuleInner.svelte.d.ts +1 -0
- package/package/components/flows/missingInputWarnings.js +7 -0
- package/package/components/flows/pickers/PickHubScriptQuick.svelte +4 -4
- package/package/components/flows/propPicker/OutputPicker.svelte +1 -1
- package/package/components/flows/propPicker/PropPickerWrapper.svelte +6 -9
- package/package/components/flows/propPicker/PropPickerWrapper.svelte.d.ts +3 -3
- package/package/components/flows/scheduleUtils.js +2 -2
- package/package/components/flows/types.d.ts +1 -3
- package/package/components/flows/utils.svelte.js +5 -1
- package/package/components/git_sync/GitSyncRepositoryCard.svelte +23 -21
- package/package/components/git_sync/GitSyncSection.svelte +24 -27
- package/package/components/graph/FlowGraphV2.svelte +1 -1
- package/package/components/graph/graphBuilder.svelte.d.ts +3 -1
- package/package/components/graph/model.d.ts +1 -1
- package/package/components/graph/renderers/nodes/AIToolNode.svelte +3 -1
- package/package/components/graph/renderers/nodes/AssetNode.svelte +25 -13
- package/package/components/graph/renderers/nodes/AssetsOverflowedNode.svelte +1 -1
- package/package/components/graph/renderers/nodes/NewAIToolNode.svelte +8 -0
- package/package/components/graph/renderers/triggers/TriggersBadge.svelte +5 -2
- package/package/components/home/Item.svelte +9 -15
- package/package/components/home/Item.svelte.d.ts +8 -7
- package/package/components/home/ItemsList.svelte +4 -10
- package/package/components/home/ItemsList.svelte.d.ts +1 -0
- package/package/components/icons/GoogleCalendarIcon.svelte +41 -0
- package/package/components/icons/GoogleCalendarIcon.svelte.d.ts +7 -0
- package/package/components/icons/GoogleDriveIcon.svelte +30 -0
- package/package/components/icons/GoogleDriveIcon.svelte.d.ts +7 -0
- package/package/components/icons/GoogleIcon.svelte +15 -6
- package/package/components/icons/GoogleIcon.svelte.d.ts +5 -2
- package/package/components/icons/MSSqlServerIcon.svelte +111 -47
- package/package/components/instanceSettings/IndexerJobIndexSettings.svelte +94 -0
- package/package/components/instanceSettings/IndexerJobIndexSettings.svelte.d.ts +9 -0
- package/package/components/instanceSettings/IndexerLogIndexSettings.svelte +67 -0
- package/package/components/instanceSettings/IndexerLogIndexSettings.svelte.d.ts +9 -0
- package/package/components/instanceSettings/IndexerMemorySettings.svelte +109 -0
- package/package/components/instanceSettings/IndexerMemorySettings.svelte.d.ts +9 -0
- package/package/components/instanceSettings/SecretBackendConfig.svelte +15 -16
- package/package/components/instanceSettings/SettingCard.svelte +47 -0
- package/package/components/instanceSettings/SettingCard.svelte.d.ts +19 -0
- package/package/components/instanceSettings/SettingsSearchInput.svelte +66 -0
- package/package/components/instanceSettings/SettingsSearchInput.svelte.d.ts +9 -0
- package/package/components/instanceSettings.d.ts +52 -0
- package/package/components/instanceSettings.js +413 -69
- package/package/components/meltComponents/MenuItem.svelte +1 -0
- package/package/components/meltComponents/Popover.svelte +10 -1
- package/package/components/meltComponents/Popover.svelte.d.ts +2 -0
- package/package/components/meltComponents/Tooltip.svelte +2 -1
- package/package/components/meltComponents/Tooltip.svelte.d.ts +1 -0
- package/package/components/moveRenameManager.d.ts +21 -0
- package/package/components/moveRenameManager.js +61 -0
- package/package/components/progressBar/ProgressBar.svelte +69 -27
- package/package/components/progressBar/ProgressBar.svelte.d.ts +7 -0
- package/package/components/prop_picker.d.ts +0 -3
- package/package/components/propertyPicker/PropPicker.svelte +34 -49
- package/package/components/propertyPicker/PropPicker.svelte.d.ts +12 -11
- package/package/components/raw_apps/FileTreeNode.svelte +1 -0
- package/package/components/raw_apps/RawAppBackgroundRunner.svelte +3 -2
- package/package/components/raw_apps/RawAppEditor.svelte +20 -16
- package/package/components/raw_apps/RawAppEditor.svelte.d.ts +4 -4
- package/package/components/raw_apps/RawAppEditorHeader.svelte +73 -7
- package/package/components/raw_apps/RawAppEditorHeader.svelte.d.ts +1 -1
- package/package/components/raw_apps/RawAppInlineScriptEditor.svelte.d.ts +1 -2
- package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte +41 -1
- package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte.d.ts +0 -1
- package/package/components/raw_apps/RawAppSidebar.svelte +32 -284
- package/package/components/raw_apps/RawAppSidebar.svelte.d.ts +1 -1
- package/package/components/raw_apps/RunnableRow.svelte +88 -34
- package/package/components/raw_apps/RunnableRow.svelte.d.ts +4 -0
- package/package/components/resources/resourcesFilter.d.ts +70 -0
- package/package/components/resources/resourcesFilter.js +61 -0
- package/package/components/runs/BatchReRunOptionsPane.svelte +130 -121
- package/package/components/runs/BatchReRunOptionsPane.svelte.d.ts +3 -2
- package/package/components/runs/FlowExecutionStatus.svelte +30 -0
- package/package/components/runs/FlowExecutionStatus.svelte.d.ts +15 -0
- package/package/components/runs/JobDetailFieldConfig.d.ts +47 -0
- package/package/components/runs/JobDetailFieldConfig.js +433 -0
- package/package/components/runs/JobDetailHeader.svelte +551 -0
- package/package/components/runs/JobDetailHeader.svelte.d.ts +17 -0
- package/package/components/runs/JobRunsPreview.svelte +174 -218
- package/package/components/runs/JobRunsPreview.svelte.d.ts +0 -1
- package/package/components/runs/JobStatusIcon.svelte +47 -0
- package/package/components/runs/JobStatusIcon.svelte.d.ts +9 -0
- package/package/components/runs/RunBadges.svelte +39 -34
- package/package/components/runs/RunBadges.svelte.d.ts +2 -1
- package/package/components/runs/RunRow.svelte +24 -64
- package/package/components/runs/RunRow.svelte.d.ts +1 -2
- package/package/components/runs/RunsTable.svelte +312 -131
- package/package/components/runs/RunsTable.svelte.d.ts +4 -3
- package/package/components/runs/TimeframeSelect.svelte +189 -0
- package/package/components/runs/TimeframeSelect.svelte.d.ts +44 -0
- package/package/components/runs/runsFilter.d.ts +201 -0
- package/package/components/runs/runsFilter.js +182 -0
- package/package/components/runs/useJobsLoader.svelte.d.ts +5 -7
- package/package/components/runs/useJobsLoader.svelte.js +27 -30
- package/package/components/schedules/schedulesFilter.d.ts +65 -0
- package/package/components/schedules/schedulesFilter.js +60 -0
- package/package/components/schema/EditableSchemaWrapper.svelte +43 -22
- package/package/components/schema/EditableSchemaWrapper.svelte.d.ts +1 -1
- package/package/components/schema/FlowPropertyEditor.svelte.d.ts +1 -1
- package/package/components/schema/PropertyEditor.svelte +1 -0
- package/package/components/schema/RunningJobSchemaPicker.svelte +1 -1
- package/package/components/schema/editable_schema_wrapper.d.ts +1 -0
- package/package/components/scripts/CreateActionsScript.svelte +0 -1
- package/package/components/search/GlobalSearchModal.svelte +1 -8
- package/package/components/select/GenericDropdown.svelte +113 -0
- package/package/components/select/GenericDropdown.svelte.d.ts +37 -0
- package/package/components/select/Select.svelte +17 -4
- package/package/components/select/Select.svelte.d.ts +2 -1
- package/package/components/select/SelectDropdown.svelte +76 -155
- package/package/components/select/SelectDropdown.svelte.d.ts +4 -1
- package/package/components/settings/ChangeWorkspaceColor.svelte +7 -8
- package/package/components/settings/ChangeWorkspaceId.svelte +4 -6
- package/package/components/settings/ChangeWorkspaceName.svelte +6 -8
- package/package/components/settings/PremiumInfo.svelte +268 -128
- package/package/components/settings/SettingsPageHeader.svelte +22 -0
- package/package/components/settings/SettingsPageHeader.svelte.d.ts +10 -0
- package/package/components/settings/WorkspaceUserSettings.svelte +13 -23
- package/package/components/sidebar/CriticalAlertModalInner.svelte +28 -22
- package/package/components/sidebar/CriticalAlertModalInner.svelte.d.ts +5 -20
- package/package/components/sidebar/DarkModeToggle.svelte +2 -2
- package/package/components/sidebar/FavoriteMenu.svelte +101 -20
- package/package/components/sidebar/FavoriteMenu.svelte.d.ts +29 -1
- package/package/components/sidebar/MenuButton.svelte +10 -7
- package/package/components/sidebar/MenuButton.svelte.d.ts +2 -0
- package/package/components/sidebar/MenuLink.svelte +4 -3
- package/package/components/sidebar/OperatorMenu.svelte +3 -1
- package/package/components/sidebar/OperatorMenu.svelte.d.ts +6 -1
- package/package/components/sidebar/SidebarContent.svelte +3 -3
- package/package/components/sidebar/WorkspaceMenu.svelte +3 -2
- package/package/components/table/AutoDataTable.svelte +2 -2
- package/package/components/toast.js +1 -2
- package/package/components/triggers/AddTriggersButton.svelte +11 -0
- package/package/components/triggers/TriggerFilters.svelte +71 -0
- package/package/components/triggers/TriggerFilters.svelte.d.ts +10 -0
- package/package/components/triggers/TriggersEditor.svelte +31 -11
- package/package/components/triggers/TriggersWrapper.svelte +10 -0
- package/package/components/triggers/http/RouteEditorInner.svelte +1 -1
- package/package/components/triggers/kafka/KafkaTriggerEditorInner.svelte +7 -0
- package/package/components/triggers/kafka/utils.js +1 -0
- package/package/components/triggers/native/NativeTriggerEditor.svelte +22 -17
- package/package/components/triggers/native/NativeTriggerTable.svelte +16 -0
- package/package/components/triggers/native/services/google/GoogleCalendarPicker.svelte +112 -0
- package/package/components/triggers/native/services/google/GoogleCalendarPicker.svelte.d.ts +8 -0
- package/package/components/triggers/native/services/google/GoogleDrivePicker.svelte +323 -0
- package/package/components/triggers/native/services/google/GoogleDrivePicker.svelte.d.ts +8 -0
- package/package/components/triggers/native/services/google/GoogleTriggerForm.svelte +116 -0
- package/package/components/triggers/native/services/google/GoogleTriggerForm.svelte.d.ts +12 -0
- package/package/components/triggers/native/utils.d.ts +0 -1
- package/package/components/triggers/native/utils.js +15 -1
- package/package/components/triggers/schedules/ScheduleEditorInner.svelte +3 -3
- package/package/components/triggers/triggers.svelte.d.ts +1 -1
- package/package/components/triggers/triggers.svelte.js +11 -3
- package/package/components/triggers/utils.js +33 -6
- package/package/components/triggers/websocket/WebsocketEditorConfigSection.svelte +1 -1
- package/package/components/triggers/websocket/WebsocketTriggerEditorInner.svelte +3 -81
- package/package/components/triggers.d.ts +1 -1
- package/package/components/variables/variablesFilter.d.ts +56 -0
- package/package/components/variables/variablesFilter.js +51 -0
- package/package/components/waitJob.d.ts +1 -1
- package/package/components/waitJob.js +3 -2
- package/package/components/worker_group.d.ts +2 -0
- package/package/components/worker_group.js +15 -0
- package/package/components/workspaceSettings/AISettings.svelte +36 -42
- package/package/components/workspaceSettings/AISettings.svelte.d.ts +2 -0
- package/package/components/workspaceSettings/CreateWorkspace.svelte +4 -4
- package/package/components/workspaceSettings/CustomInstanceDbWizardModal.svelte.d.ts +1 -2
- package/package/components/workspaceSettings/DataTableSettings.svelte +27 -16
- package/package/components/workspaceSettings/DataTableSettings.svelte.d.ts +1 -0
- package/package/components/workspaceSettings/DucklakeSettings.svelte +21 -15
- package/package/components/workspaceSettings/DucklakeSettings.svelte.d.ts +1 -0
- package/package/components/workspaceSettings/GitSyncFilterSettings.svelte +24 -66
- package/package/components/workspaceSettings/ModelTokenLimits.svelte +6 -10
- package/package/components/workspaceSettings/OAuthClientConfig.svelte +46 -75
- package/package/components/workspaceSettings/OAuthClientConfig.svelte.d.ts +8 -1
- package/package/components/workspaceSettings/RulesetEditor.svelte +280 -0
- package/package/components/workspaceSettings/RulesetEditor.svelte.d.ts +9 -0
- package/package/components/workspaceSettings/SettingsFooter.svelte +35 -0
- package/package/components/workspaceSettings/SettingsFooter.svelte.d.ts +12 -0
- package/package/components/workspaceSettings/StorageSettings.svelte +48 -34
- package/package/components/workspaceSettings/StorageSettings.svelte.d.ts +1 -0
- package/package/components/workspaceSettings/WorkspaceDependenciesSettings.svelte +66 -27
- package/package/components/workspaceSettings/WorkspaceIntegrations.svelte +237 -73
- package/package/components/workspaceSettings/WorkspaceRulesets.svelte +183 -0
- package/package/components/workspaceSettings/WorkspaceRulesets.svelte.d.ts +3 -0
- package/package/editorLangUtils.d.ts +1 -1
- package/package/gen/core/OpenAPI.js +1 -1
- package/package/gen/schemas.gen.d.ts +996 -70
- package/package/gen/schemas.gen.js +1352 -378
- package/package/gen/services.gen.d.ts +156 -41
- package/package/gen/services.gen.js +319 -83
- package/package/gen/types.gen.d.ts +1896 -317
- package/package/hub.d.ts +1 -0
- package/package/hub.js +7 -0
- package/package/hubPaths.json +2 -1
- package/package/infer.d.ts +2 -0
- package/package/mcpEndpointTools.d.ts +3 -0
- package/package/mcpEndpointTools.js +574 -147
- package/package/rawAppWmillTs.js +12 -11
- package/package/scripts.d.ts +1 -1
- package/package/scripts.js +1 -1
- package/package/storeUtils.js +8 -0
- package/package/stores.d.ts +1 -1
- package/package/stores.js +4 -2
- package/package/svelte5Utils.svelte.d.ts +40 -0
- package/package/svelte5Utils.svelte.js +158 -0
- package/package/svelte5UtilsKit.svelte.d.ts +13 -3
- package/package/svelte5UtilsKit.svelte.js +96 -20
- package/package/system_prompts/prompts.d.ts +5 -5
- package/package/system_prompts/prompts.js +94 -21
- package/package/toast.d.ts +5 -1
- package/package/toast.js +14 -5
- package/package/utils.js +214 -7
- package/package/utils_deployable.d.ts +25 -25
- package/package/utils_deployable.js +2 -1
- package/package/validators/workspaceSettings.d.ts +12 -0
- package/package/validators/workspaceSettings.js +72 -0
- package/package/workspaceProtectionRules.svelte.d.ts +73 -0
- package/package/workspaceProtectionRules.svelte.js +176 -0
- package/package.json +8 -5
- package/package/components/DropdownSelect.svelte +0 -26
- package/package/components/DropdownSelect.svelte.d.ts +0 -11
- package/package/components/FlowPreviewResult.svelte +0 -84
- package/package/components/FlowPreviewResult.svelte.d.ts +0 -20
- package/package/components/copilot/chat/context.d.ts +0 -119
- package/package/components/flows/propPicker/FlowPropPicker.svelte +0 -72
- package/package/components/flows/propPicker/FlowPropPicker.svelte.d.ts +0 -23
- package/package/components/runs/ManuelDatePicker.svelte +0 -96
- package/package/components/runs/ManuelDatePicker.svelte.d.ts +0 -35
- package/package/components/runs/RunsBatchActionsDropdown.svelte +0 -82
- package/package/components/runs/RunsBatchActionsDropdown.svelte.d.ts +0 -15
- package/package/components/runs/RunsFilter.svelte +0 -966
- package/package/components/runs/RunsFilter.svelte.d.ts +0 -80
package/package/utils.js
CHANGED
|
@@ -75,13 +75,6 @@ export function isJobReRunnable(j) {
|
|
|
75
75
|
return (j.job_kind === 'script' || j.job_kind === 'flow') && j.parent_job === undefined;
|
|
76
76
|
}
|
|
77
77
|
export const WORKER_NAME_PREFIX = 'wk';
|
|
78
|
-
export function isJobSelectable(selectionType) {
|
|
79
|
-
const f = {
|
|
80
|
-
cancel: isJobCancelable,
|
|
81
|
-
're-run': isJobReRunnable
|
|
82
|
-
}[selectionType];
|
|
83
|
-
return f;
|
|
84
|
-
}
|
|
85
78
|
export function escapeHtml(unsafe) {
|
|
86
79
|
return unsafe
|
|
87
80
|
.replace(/&/g, '&')
|
|
@@ -1103,6 +1096,12 @@ export function cleanValueProperties(obj) {
|
|
|
1103
1096
|
return newObj;
|
|
1104
1097
|
}
|
|
1105
1098
|
}
|
|
1099
|
+
export function hasUnsavedChanges(saved, modified) {
|
|
1100
|
+
const normalizedSaved = cleanValueProperties({ ...saved, path: undefined });
|
|
1101
|
+
const normalizedModified = cleanValueProperties({ ...modified, path: undefined });
|
|
1102
|
+
return (orderedJsonStringify(replaceFalseWithUndefined(normalizedSaved)) !==
|
|
1103
|
+
orderedJsonStringify(replaceFalseWithUndefined(normalizedModified)));
|
|
1104
|
+
}
|
|
1106
1105
|
export function orderedJsonStringify(obj, space) {
|
|
1107
1106
|
const allKeys = new Set();
|
|
1108
1107
|
JSON.stringify(obj, (key, value) => (value != undefined && value != null && allKeys.add(key), value));
|
|
@@ -1330,6 +1329,37 @@ export function formatDateShort(dateString) {
|
|
|
1330
1329
|
day: 'numeric'
|
|
1331
1330
|
}).format(date);
|
|
1332
1331
|
}
|
|
1332
|
+
export function formatDateRange(start, end) {
|
|
1333
|
+
if (typeof start === 'string')
|
|
1334
|
+
start = new Date(start);
|
|
1335
|
+
if (typeof end === 'string')
|
|
1336
|
+
end = new Date(end);
|
|
1337
|
+
if (start && end) {
|
|
1338
|
+
const differentDays = start.getFullYear() !== end.getFullYear() ||
|
|
1339
|
+
start.getMonth() !== end.getMonth() ||
|
|
1340
|
+
start.getDate() !== end.getDate();
|
|
1341
|
+
const differentYears = start.getFullYear() !== end.getFullYear();
|
|
1342
|
+
if (differentDays || differentYears) {
|
|
1343
|
+
// Clone to avoid mutating originals
|
|
1344
|
+
start = new Date(start);
|
|
1345
|
+
end = new Date(end);
|
|
1346
|
+
// Zero out time for display
|
|
1347
|
+
start.setHours(0, 0, 0, 0);
|
|
1348
|
+
end.setHours(0, 0, 0, 0);
|
|
1349
|
+
}
|
|
1350
|
+
if (differentYears) {
|
|
1351
|
+
// Zero out month and day for display
|
|
1352
|
+
start.setMonth(0, 1);
|
|
1353
|
+
end.setMonth(0, 1);
|
|
1354
|
+
}
|
|
1355
|
+
return `${formatDatePretty(start)} to ${formatDatePretty(end)}`;
|
|
1356
|
+
}
|
|
1357
|
+
if (!end && start)
|
|
1358
|
+
return `After ${formatDatePretty(start)}`;
|
|
1359
|
+
if (!start && end)
|
|
1360
|
+
return `Before ${formatDatePretty(end)}`;
|
|
1361
|
+
return 'No input';
|
|
1362
|
+
}
|
|
1333
1363
|
export function toJsonStr(result) {
|
|
1334
1364
|
try {
|
|
1335
1365
|
// console.log(result)
|
|
@@ -1675,3 +1705,180 @@ export function pick(obj, keys) {
|
|
|
1675
1705
|
}
|
|
1676
1706
|
return result;
|
|
1677
1707
|
}
|
|
1708
|
+
export function parseDbInputFromAssetSyntax(path) {
|
|
1709
|
+
const [p1, _p2] = path.split('://');
|
|
1710
|
+
const [p2, _p3] = _p2.split('/');
|
|
1711
|
+
const [p3, p4] = _p3.split('.');
|
|
1712
|
+
return p1 === 'ducklake'
|
|
1713
|
+
? { type: 'ducklake', ducklake: p2 || 'main', specificTable: p4 ?? p3 }
|
|
1714
|
+
: p1 === 'datatable'
|
|
1715
|
+
? {
|
|
1716
|
+
type: 'database',
|
|
1717
|
+
resourcePath: `datatable://${p2 || 'main'}`,
|
|
1718
|
+
resourceType: 'postgresql',
|
|
1719
|
+
specificTable: p4 ?? p3,
|
|
1720
|
+
specificSchema: p4 ? p3 : undefined
|
|
1721
|
+
}
|
|
1722
|
+
: null;
|
|
1723
|
+
}
|
|
1724
|
+
export function formatMemory(sizeInKb, includeTooltip = false) {
|
|
1725
|
+
const precise = `${sizeInKb.toLocaleString()}KB`;
|
|
1726
|
+
let display;
|
|
1727
|
+
if (sizeInKb >= 1024 * 1024) {
|
|
1728
|
+
// Convert to GB for values >= 1GB
|
|
1729
|
+
display = `${(sizeInKb / (1024 * 1024)).toFixed(0)}GB`;
|
|
1730
|
+
}
|
|
1731
|
+
else if (sizeInKb >= 1024) {
|
|
1732
|
+
// Convert to MB for values >= 1MB
|
|
1733
|
+
display = `${(sizeInKb / 1024).toFixed(0)}MB`;
|
|
1734
|
+
}
|
|
1735
|
+
else {
|
|
1736
|
+
// Keep as KB for smaller values
|
|
1737
|
+
display = `${sizeInKb.toFixed(0)}KB`;
|
|
1738
|
+
}
|
|
1739
|
+
if (includeTooltip) {
|
|
1740
|
+
return {
|
|
1741
|
+
display,
|
|
1742
|
+
tooltip: `${precise} (${(sizeInKb / 1024).toFixed(2)}MB)`
|
|
1743
|
+
};
|
|
1744
|
+
}
|
|
1745
|
+
return display;
|
|
1746
|
+
}
|
|
1747
|
+
export function assignObjInPlace(target, source, options = { onDelete: 'Delete' }) {
|
|
1748
|
+
for (const key in target) {
|
|
1749
|
+
if (!(key in source)) {
|
|
1750
|
+
if (options?.onDelete === 'Delete')
|
|
1751
|
+
delete target[key];
|
|
1752
|
+
else if (options?.onDelete === 'SetNull')
|
|
1753
|
+
target[key] = null;
|
|
1754
|
+
}
|
|
1755
|
+
}
|
|
1756
|
+
for (const key in source)
|
|
1757
|
+
target[key] = source[key];
|
|
1758
|
+
}
|
|
1759
|
+
export function isUSLocale() {
|
|
1760
|
+
try {
|
|
1761
|
+
const locale = Intl.DateTimeFormat().resolvedOptions().locale;
|
|
1762
|
+
return locale.startsWith('en-US');
|
|
1763
|
+
}
|
|
1764
|
+
catch {
|
|
1765
|
+
return false;
|
|
1766
|
+
}
|
|
1767
|
+
}
|
|
1768
|
+
export function formatDatePretty(date) {
|
|
1769
|
+
if (!date || isNaN(date.getTime()))
|
|
1770
|
+
return '';
|
|
1771
|
+
const now = new Date();
|
|
1772
|
+
const year = date.getFullYear();
|
|
1773
|
+
const month = date.getMonth() + 1;
|
|
1774
|
+
const day = date.getDate();
|
|
1775
|
+
const hours = date.getHours();
|
|
1776
|
+
const minutes = date.getMinutes();
|
|
1777
|
+
const isCurrentYear = year === now.getFullYear();
|
|
1778
|
+
const isToday = isCurrentYear && month === now.getMonth() + 1 && day === now.getDate();
|
|
1779
|
+
const isOnlyYear = month === 1 && day === 1 && hours === 0 && minutes === 0;
|
|
1780
|
+
const hasTime = hours !== 0 || minutes !== 0;
|
|
1781
|
+
// If only year is defined (rest is 01/01 00:00)
|
|
1782
|
+
if (isOnlyYear) {
|
|
1783
|
+
return String(year);
|
|
1784
|
+
}
|
|
1785
|
+
// Format month/day depending on locale: MM/DD for US, DD/MM otherwise
|
|
1786
|
+
const mm = String(month).padStart(2, '0');
|
|
1787
|
+
const dd = String(day).padStart(2, '0');
|
|
1788
|
+
const monthDay = isUSLocale() ? `${mm}/${dd}` : `${dd}/${mm}`;
|
|
1789
|
+
// Format time if present (12-hour format with AM/PM)
|
|
1790
|
+
let timeStr = '';
|
|
1791
|
+
if (hasTime) {
|
|
1792
|
+
const isPM = hours >= 12;
|
|
1793
|
+
const displayHours = hours % 12 || 12;
|
|
1794
|
+
const displayMinutes = String(minutes).padStart(2, '0');
|
|
1795
|
+
timeStr = ` ${displayHours}:${displayMinutes} ${isPM ? 'PM' : 'AM'}`;
|
|
1796
|
+
}
|
|
1797
|
+
// If today and same year, only show time (if present)
|
|
1798
|
+
if (isToday) {
|
|
1799
|
+
return timeStr ? timeStr.trim() : monthDay;
|
|
1800
|
+
}
|
|
1801
|
+
// If same year, show month/day and time (if present)
|
|
1802
|
+
if (isCurrentYear) {
|
|
1803
|
+
return `${monthDay}${timeStr}`;
|
|
1804
|
+
}
|
|
1805
|
+
// Otherwise, show full date with year and time (if present)
|
|
1806
|
+
return `${monthDay}/${year}${timeStr}`;
|
|
1807
|
+
}
|
|
1808
|
+
export function parsePrettyDate(text) {
|
|
1809
|
+
if (!text)
|
|
1810
|
+
return null;
|
|
1811
|
+
const now = new Date();
|
|
1812
|
+
const currentYear = now.getFullYear();
|
|
1813
|
+
// Try parsing as year-only (e.g., "2025")
|
|
1814
|
+
if (/^\d{4}$/.test(text)) {
|
|
1815
|
+
const year = parseInt(text);
|
|
1816
|
+
return new Date(year, 0, 1, 0, 0, 0);
|
|
1817
|
+
}
|
|
1818
|
+
// Try parsing time-only (e.g., "11:02 AM") - assumes today
|
|
1819
|
+
const timeOnlyMatch = text.match(/^(\d{1,2}):(\d{2})\s+(AM|PM)$/i);
|
|
1820
|
+
if (timeOnlyMatch) {
|
|
1821
|
+
const [, hourStr, minuteStr, meridiem] = timeOnlyMatch;
|
|
1822
|
+
let hours = parseInt(hourStr);
|
|
1823
|
+
const minutes = parseInt(minuteStr);
|
|
1824
|
+
if (meridiem.toUpperCase() === 'PM' && hours !== 12)
|
|
1825
|
+
hours += 12;
|
|
1826
|
+
if (meridiem.toUpperCase() === 'AM' && hours === 12)
|
|
1827
|
+
hours = 0;
|
|
1828
|
+
return new Date(currentYear, now.getMonth(), now.getDate(), hours, minutes, 0);
|
|
1829
|
+
}
|
|
1830
|
+
const usLocale = isUSLocale();
|
|
1831
|
+
// Parse a "first/second" pair as month/day (US) or day/month (non-US)
|
|
1832
|
+
function parseFirstSecond(firstStr, secondStr) {
|
|
1833
|
+
const first = parseInt(firstStr);
|
|
1834
|
+
const second = parseInt(secondStr);
|
|
1835
|
+
return usLocale ? { month: first - 1, day: second } : { month: second - 1, day: first };
|
|
1836
|
+
}
|
|
1837
|
+
// Try parsing NN/NN (e.g., "01/04") - assumes current year, no time
|
|
1838
|
+
// US: MM/DD, non-US: DD/MM
|
|
1839
|
+
const monthDayMatch = text.match(/^(\d{2})\/(\d{2})$/);
|
|
1840
|
+
if (monthDayMatch) {
|
|
1841
|
+
const { month, day } = parseFirstSecond(monthDayMatch[1], monthDayMatch[2]);
|
|
1842
|
+
return new Date(currentYear, month, day, 0, 0, 0);
|
|
1843
|
+
}
|
|
1844
|
+
// Try parsing NN/NN TIME (e.g., "01/04 11:02 AM") - assumes current year with time
|
|
1845
|
+
// US: MM/DD TIME, non-US: DD/MM TIME
|
|
1846
|
+
const monthDayTimeMatch = text.match(/^(\d{2})\/(\d{2})\s+(\d{1,2}):(\d{2})\s+(AM|PM)$/i);
|
|
1847
|
+
if (monthDayTimeMatch) {
|
|
1848
|
+
const { month, day } = parseFirstSecond(monthDayTimeMatch[1], monthDayTimeMatch[2]);
|
|
1849
|
+
let hours = parseInt(monthDayTimeMatch[3]);
|
|
1850
|
+
const minutes = parseInt(monthDayTimeMatch[4]);
|
|
1851
|
+
const meridiem = monthDayTimeMatch[5];
|
|
1852
|
+
if (meridiem.toUpperCase() === 'PM' && hours !== 12)
|
|
1853
|
+
hours += 12;
|
|
1854
|
+
if (meridiem.toUpperCase() === 'AM' && hours === 12)
|
|
1855
|
+
hours = 0;
|
|
1856
|
+
return new Date(currentYear, month, day, hours, minutes, 0);
|
|
1857
|
+
}
|
|
1858
|
+
// Try parsing NN/NN/YYYY (e.g., "01/04/2025") - no time
|
|
1859
|
+
// US: MM/DD/YYYY, non-US: DD/MM/YYYY
|
|
1860
|
+
const fullDateMatch = text.match(/^(\d{2})\/(\d{2})\/(\d{4})$/);
|
|
1861
|
+
if (fullDateMatch) {
|
|
1862
|
+
const { month, day } = parseFirstSecond(fullDateMatch[1], fullDateMatch[2]);
|
|
1863
|
+
const year = parseInt(fullDateMatch[3]);
|
|
1864
|
+
return new Date(year, month, day, 0, 0, 0);
|
|
1865
|
+
}
|
|
1866
|
+
// Try parsing NN/NN/YYYY TIME (e.g., "01/04/2025 3:00 PM")
|
|
1867
|
+
// US: MM/DD/YYYY TIME, non-US: DD/MM/YYYY TIME
|
|
1868
|
+
const fullDateTimeMatch = text.match(/^(\d{2})\/(\d{2})\/(\d{4})\s+(\d{1,2}):(\d{2})\s+(AM|PM)$/i);
|
|
1869
|
+
if (fullDateTimeMatch) {
|
|
1870
|
+
const { month, day } = parseFirstSecond(fullDateTimeMatch[1], fullDateTimeMatch[2]);
|
|
1871
|
+
const year = parseInt(fullDateTimeMatch[3]);
|
|
1872
|
+
let hours = parseInt(fullDateTimeMatch[4]);
|
|
1873
|
+
const minutes = parseInt(fullDateTimeMatch[5]);
|
|
1874
|
+
const meridiem = fullDateTimeMatch[6];
|
|
1875
|
+
if (meridiem.toUpperCase() === 'PM' && hours !== 12)
|
|
1876
|
+
hours += 12;
|
|
1877
|
+
if (meridiem.toUpperCase() === 'AM' && hours === 12)
|
|
1878
|
+
hours = 0;
|
|
1879
|
+
return new Date(year, month, day, hours, minutes, 0);
|
|
1880
|
+
}
|
|
1881
|
+
// Fallback to standard Date parsing (e.g., ISO strings)
|
|
1882
|
+
const date = new Date(text);
|
|
1883
|
+
return isNaN(date.getTime()) ? null : date;
|
|
1884
|
+
}
|
|
@@ -56,7 +56,7 @@ export declare function getTriggerValue(kind: TriggerKind, path: string, workspa
|
|
|
56
56
|
is_flow: boolean;
|
|
57
57
|
queue_url: string;
|
|
58
58
|
aws_resource_path: string;
|
|
59
|
-
message_attributes: string[] | undefined;
|
|
59
|
+
message_attributes: string[] | null | undefined;
|
|
60
60
|
kafka_resource_path?: undefined;
|
|
61
61
|
topics?: undefined;
|
|
62
62
|
group_id?: undefined;
|
|
@@ -165,11 +165,11 @@ export declare function getTriggerValue(kind: TriggerKind, path: string, workspa
|
|
|
165
165
|
script_path: string;
|
|
166
166
|
is_flow: boolean;
|
|
167
167
|
mqtt_resource_path: string;
|
|
168
|
-
v3_config: import("./gen").MqttV3Config | undefined;
|
|
169
|
-
v5_config: import("./gen").MqttV5Config | undefined;
|
|
170
|
-
client_id: string | undefined;
|
|
168
|
+
v3_config: import("./gen").MqttV3Config | null | undefined;
|
|
169
|
+
v5_config: import("./gen").MqttV5Config | null | undefined;
|
|
170
|
+
client_id: string | null | undefined;
|
|
171
171
|
subscribe_topics: import("./gen").MqttSubscribeTopic[];
|
|
172
|
-
client_version: import("./gen").MqttClientVersion | undefined;
|
|
172
|
+
client_version: import("./gen").MqttClientVersion | null | undefined;
|
|
173
173
|
queue_url?: undefined;
|
|
174
174
|
aws_resource_path?: undefined;
|
|
175
175
|
message_attributes?: undefined;
|
|
@@ -221,8 +221,8 @@ export declare function getTriggerValue(kind: TriggerKind, path: string, workspa
|
|
|
221
221
|
is_flow: boolean;
|
|
222
222
|
nats_resource_path: string;
|
|
223
223
|
use_jetstream: boolean;
|
|
224
|
-
stream_name: string | undefined;
|
|
225
|
-
consumer_name: string | undefined;
|
|
224
|
+
stream_name: string | null | undefined;
|
|
225
|
+
consumer_name: string | null | undefined;
|
|
226
226
|
subjects: string[];
|
|
227
227
|
queue_url?: undefined;
|
|
228
228
|
aws_resource_path?: undefined;
|
|
@@ -385,13 +385,13 @@ export declare function getTriggerValue(kind: TriggerKind, path: string, workspa
|
|
|
385
385
|
script_path: string;
|
|
386
386
|
is_flow: boolean;
|
|
387
387
|
url: string;
|
|
388
|
-
url_runnable_args: import("./gen").ScriptArgs | undefined;
|
|
388
|
+
url_runnable_args: import("./gen").ScriptArgs | null | undefined;
|
|
389
389
|
can_return_message: boolean;
|
|
390
390
|
filters: {
|
|
391
391
|
key: string;
|
|
392
392
|
value: unknown;
|
|
393
393
|
}[];
|
|
394
|
-
initial_messages: import("./gen").WebsocketTriggerInitialMessage[] | undefined;
|
|
394
|
+
initial_messages: import("./gen").WebsocketTriggerInitialMessage[] | null | undefined;
|
|
395
395
|
queue_url?: undefined;
|
|
396
396
|
aws_resource_path?: undefined;
|
|
397
397
|
message_attributes?: undefined;
|
|
@@ -447,11 +447,11 @@ export declare function getTriggerValue(kind: TriggerKind, path: string, workspa
|
|
|
447
447
|
s3: string;
|
|
448
448
|
storage?: string;
|
|
449
449
|
filename?: string;
|
|
450
|
-
} | undefined;
|
|
450
|
+
} | null | undefined;
|
|
451
451
|
request_type: import("./gen").HttpRequestType;
|
|
452
452
|
authentication_method: import("./gen").AuthenticationMethod;
|
|
453
453
|
is_static_website: boolean;
|
|
454
|
-
authentication_resource_path: string | undefined;
|
|
454
|
+
authentication_resource_path: string | null | undefined;
|
|
455
455
|
mode?: undefined;
|
|
456
456
|
queue_url?: undefined;
|
|
457
457
|
aws_resource_path?: undefined;
|
|
@@ -500,24 +500,24 @@ export declare function getTriggerValue(kind: TriggerKind, path: string, workspa
|
|
|
500
500
|
} | {
|
|
501
501
|
script_path: string;
|
|
502
502
|
is_flow: boolean;
|
|
503
|
-
on_failure: string | undefined;
|
|
503
|
+
on_failure: string | null | undefined;
|
|
504
504
|
schedule: string;
|
|
505
505
|
timezone: string;
|
|
506
|
-
on_failure_times: number | undefined;
|
|
507
|
-
on_failure_exact: boolean | undefined;
|
|
508
|
-
on_failure_extra_args: import("./gen").ScriptArgs | undefined;
|
|
509
|
-
on_recovery: string | undefined;
|
|
510
|
-
on_recovery_times: number | undefined;
|
|
511
|
-
on_recovery_extra_args: import("./gen").ScriptArgs | undefined;
|
|
512
|
-
on_success: string | undefined;
|
|
513
|
-
on_success_extra_args: import("./gen").ScriptArgs | undefined;
|
|
506
|
+
on_failure_times: number | null | undefined;
|
|
507
|
+
on_failure_exact: boolean | null | undefined;
|
|
508
|
+
on_failure_extra_args: import("./gen").ScriptArgs | null | undefined;
|
|
509
|
+
on_recovery: string | null | undefined;
|
|
510
|
+
on_recovery_times: number | null | undefined;
|
|
511
|
+
on_recovery_extra_args: import("./gen").ScriptArgs | null | undefined;
|
|
512
|
+
on_success: string | null | undefined;
|
|
513
|
+
on_success_extra_args: import("./gen").ScriptArgs | null | undefined;
|
|
514
514
|
ws_error_handler_muted: boolean | undefined;
|
|
515
|
-
retry: import("./gen").Retry | undefined;
|
|
516
|
-
summary: string | undefined;
|
|
515
|
+
retry: import("./gen").Retry | null | undefined;
|
|
516
|
+
summary: string | null | undefined;
|
|
517
517
|
no_flow_overlap: boolean | undefined;
|
|
518
|
-
tag: string | undefined;
|
|
519
|
-
paused_until: string | undefined;
|
|
520
|
-
cron_version: string | undefined;
|
|
518
|
+
tag: string | null | undefined;
|
|
519
|
+
paused_until: string | null | undefined;
|
|
520
|
+
cron_version: string | null | undefined;
|
|
521
521
|
mode?: undefined;
|
|
522
522
|
queue_url?: undefined;
|
|
523
523
|
aws_resource_path?: undefined;
|
|
@@ -106,6 +106,7 @@ export async function getTriggersDeployData(kind, path, workspace) {
|
|
|
106
106
|
}
|
|
107
107
|
const data = {
|
|
108
108
|
...gcpTrigger,
|
|
109
|
+
delivery_config: gcpTrigger.delivery_config ?? undefined,
|
|
109
110
|
base_endpoint: gcpTrigger.delivery_type === 'push' ? `${window.location.origin}${base}` : undefined
|
|
110
111
|
};
|
|
111
112
|
return {
|
|
@@ -395,7 +396,7 @@ export async function getTriggerDependency(kind, path, workspace) {
|
|
|
395
396
|
result = retrieveKindsValues({
|
|
396
397
|
script_path,
|
|
397
398
|
is_flow,
|
|
398
|
-
resource_path: authentication_resource_path
|
|
399
|
+
resource_path: authentication_resource_path ?? undefined
|
|
399
400
|
});
|
|
400
401
|
}
|
|
401
402
|
else if (kind === 'schedules') {
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare function validateDeployPathFilters(paths: string[]): {
|
|
2
|
+
isValid: boolean;
|
|
3
|
+
errors: Record<number, string>;
|
|
4
|
+
};
|
|
5
|
+
export declare function validateWebhookUrl(url: string): {
|
|
6
|
+
isValid: boolean;
|
|
7
|
+
error?: string;
|
|
8
|
+
};
|
|
9
|
+
export declare function validateEncryptionKey(key: string): {
|
|
10
|
+
isValid: boolean;
|
|
11
|
+
error?: string;
|
|
12
|
+
};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
// Deploy path filter validation
|
|
3
|
+
const deployPathFilterSchema = z
|
|
4
|
+
.string()
|
|
5
|
+
.min(1, 'Path filter cannot be empty')
|
|
6
|
+
.refine((val) => {
|
|
7
|
+
// Allow alphanumeric characters, underscores, slashes, asterisks, and hyphens
|
|
8
|
+
// But don't allow consecutive slashes or ending with slash
|
|
9
|
+
const validChars = /^[a-zA-Z0-9/_*-]+$/;
|
|
10
|
+
const noConsecutiveSlashes = !/\/\//.test(val);
|
|
11
|
+
const noEndingSlash = !val.endsWith('/');
|
|
12
|
+
const noEndingDash = !val.endsWith('-');
|
|
13
|
+
return validChars.test(val) && noConsecutiveSlashes && noEndingSlash && noEndingDash;
|
|
14
|
+
}, {
|
|
15
|
+
message: 'Path filter contains invalid characters or format. Allowed: letters, numbers, /, _, -, *. Cannot end with / or -'
|
|
16
|
+
})
|
|
17
|
+
.refine((val) => {
|
|
18
|
+
// Validate glob patterns - * and ** are allowed, but *** is not
|
|
19
|
+
const invalidGlobPattern = /\*{3,}/.test(val);
|
|
20
|
+
return !invalidGlobPattern;
|
|
21
|
+
}, {
|
|
22
|
+
message: 'Invalid glob pattern. Use * for single level wildcard or ** for multi-level wildcard'
|
|
23
|
+
});
|
|
24
|
+
// Webhook URL validation
|
|
25
|
+
const webhookUrlSchema = z
|
|
26
|
+
.string()
|
|
27
|
+
.refine((val) => {
|
|
28
|
+
if (!val || val.trim() === '')
|
|
29
|
+
return true; // Allow empty
|
|
30
|
+
try {
|
|
31
|
+
new URL(val);
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
}, {
|
|
38
|
+
message: 'Please enter a valid URL (e.g., https://example.com/webhook)'
|
|
39
|
+
})
|
|
40
|
+
.optional()
|
|
41
|
+
.or(z.literal(''));
|
|
42
|
+
// Workspace encryption key validation
|
|
43
|
+
const encryptionKeySchema = z.string().regex(/^[a-zA-Z0-9]{64}$/, {
|
|
44
|
+
message: 'Encryption key must be exactly 64 characters long and contain only letters and numbers'
|
|
45
|
+
});
|
|
46
|
+
export function validateDeployPathFilters(paths) {
|
|
47
|
+
const errors = {};
|
|
48
|
+
paths.forEach((path, index) => {
|
|
49
|
+
const result = deployPathFilterSchema.safeParse(path);
|
|
50
|
+
if (!result.success) {
|
|
51
|
+
errors[index] = result.error.issues[0]?.message || 'Invalid path filter';
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
return {
|
|
55
|
+
isValid: Object.keys(errors).length === 0,
|
|
56
|
+
errors
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
export function validateWebhookUrl(url) {
|
|
60
|
+
const result = webhookUrlSchema.safeParse(url);
|
|
61
|
+
return {
|
|
62
|
+
isValid: result.success,
|
|
63
|
+
error: result.success ? undefined : result.error.issues[0]?.message || 'Invalid URL'
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
export function validateEncryptionKey(key) {
|
|
67
|
+
const result = encryptionKeySchema.safeParse(key);
|
|
68
|
+
return {
|
|
69
|
+
isValid: result.success,
|
|
70
|
+
error: result.success ? undefined : result.error.issues[0]?.message || 'Invalid encryption key'
|
|
71
|
+
};
|
|
72
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { type ProtectionRuleset, type ProtectionRuleKind } from './gen';
|
|
2
|
+
import type { UserExt } from './stores';
|
|
3
|
+
/**
|
|
4
|
+
* Exported reactive state object with readonly getters
|
|
5
|
+
*/
|
|
6
|
+
export declare const protectionRulesState: {
|
|
7
|
+
readonly rulesets: ProtectionRuleset[] | undefined;
|
|
8
|
+
readonly loading: boolean;
|
|
9
|
+
readonly error: string | undefined;
|
|
10
|
+
readonly workspace: string | undefined;
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Internal function to reset state (used by storeUtils)
|
|
14
|
+
*/
|
|
15
|
+
export declare function resetProtectionRules(): void;
|
|
16
|
+
/**
|
|
17
|
+
* Loads protection rules for a workspace from the API and updates the state
|
|
18
|
+
* Early returns if already loading the same workspace to prevent duplicate requests
|
|
19
|
+
*/
|
|
20
|
+
export declare function loadProtectionRules(workspace: string): Promise<void>;
|
|
21
|
+
/**
|
|
22
|
+
* Fetches protection rules for a specific workspace without updating the state
|
|
23
|
+
* @param workspace The workspace ID to fetch rules for
|
|
24
|
+
* @returns Array of protection rulesets, or empty array on error
|
|
25
|
+
*/
|
|
26
|
+
export declare function fetchProtectionRulesForWorkspace(workspace: string): Promise<ProtectionRuleset[]>;
|
|
27
|
+
/**
|
|
28
|
+
* Checks if a user can bypass a specific ruleset
|
|
29
|
+
* @param ruleset The protection ruleset to check
|
|
30
|
+
* @param userInfo The user information
|
|
31
|
+
* @returns true if user can bypass (is admin, in bypass_users, or has group in bypass_groups)
|
|
32
|
+
*/
|
|
33
|
+
export declare function canUserBypassRule(ruleset: ProtectionRuleset, userInfo: UserExt): boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Checks if a specific rule type is active in ANY ruleset
|
|
36
|
+
* FIXED: No longer uses await without async context
|
|
37
|
+
* @param ruleKind The rule type to check
|
|
38
|
+
* @returns true if the rule is active in at least one ruleset, false if not loaded or not active
|
|
39
|
+
*/
|
|
40
|
+
export declare function isRuleActive(ruleKind: ProtectionRuleKind): boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Checks if a user can bypass a specific rule type
|
|
43
|
+
* @param ruleKind The rule type to check
|
|
44
|
+
* @param userInfo The user information
|
|
45
|
+
* @returns true if the rule is not active OR user can bypass ALL rulesets containing it
|
|
46
|
+
*/
|
|
47
|
+
export declare function canUserBypassRuleKind(ruleKind: ProtectionRuleKind, userInfo: UserExt | undefined): boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Returns all rulesets that contain a specific rule kind
|
|
50
|
+
*/
|
|
51
|
+
export declare function getActiveRulesetsForKind(ruleKind: ProtectionRuleKind): ProtectionRuleset[];
|
|
52
|
+
/**
|
|
53
|
+
* Checks if a specific rule kind is active in given rulesets (workspace-agnostic version)
|
|
54
|
+
* @param rulesets Array of protection rulesets to check
|
|
55
|
+
* @param ruleKind The rule type to check
|
|
56
|
+
* @returns true if the rule is active in at least one ruleset
|
|
57
|
+
*/
|
|
58
|
+
export declare function isRuleActiveInRulesets(rulesets: ProtectionRuleset[], ruleKind: ProtectionRuleKind): boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Checks if user can bypass a rule kind in given rulesets (workspace-agnostic version)
|
|
61
|
+
* @param rulesets Array of protection rulesets to check
|
|
62
|
+
* @param ruleKind The rule type to check
|
|
63
|
+
* @param userInfo The user information
|
|
64
|
+
* @returns true if the rule is not active OR user can bypass ALL rulesets containing it
|
|
65
|
+
*/
|
|
66
|
+
export declare function canUserBypassRuleKindInRulesets(rulesets: ProtectionRuleset[], ruleKind: ProtectionRuleKind, userInfo: UserExt | undefined): boolean;
|
|
67
|
+
/**
|
|
68
|
+
* Returns rulesets that contain a specific rule kind from given rulesets (workspace-agnostic version)
|
|
69
|
+
* @param rulesets Array of protection rulesets to filter
|
|
70
|
+
* @param ruleKind The rule type to filter by
|
|
71
|
+
* @returns Array of rulesets containing the specified rule
|
|
72
|
+
*/
|
|
73
|
+
export declare function getActiveRulesetsForKindInRulesets(rulesets: ProtectionRuleset[], ruleKind: ProtectionRuleKind): ProtectionRuleset[];
|