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.
Files changed (599) hide show
  1. package/dist/sharedUtils/assets/tokens/colorTokensConfig.d.ts +2 -0
  2. package/dist/sharedUtils/base.d.ts +1 -0
  3. package/dist/sharedUtils/cloud.d.ts +1 -0
  4. package/dist/sharedUtils/common.d.ts +111 -0
  5. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/count.d.ts +5 -0
  6. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/delete.d.ts +5 -0
  7. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/insert.d.ts +5 -0
  8. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/select.d.ts +13 -0
  9. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/update.d.ts +11 -0
  10. package/dist/sharedUtils/components/apps/components/display/dbtable/utils.d.ts +95 -0
  11. package/dist/sharedUtils/components/apps/editor/appPolicy.d.ts +6 -0
  12. package/dist/sharedUtils/components/apps/editor/appUtilsCore.d.ts +7 -0
  13. package/dist/sharedUtils/components/apps/editor/appUtilsS3.d.ts +33 -0
  14. package/dist/sharedUtils/components/apps/editor/commonAppUtils.d.ts +10 -0
  15. package/dist/sharedUtils/components/apps/editor/component/components.d.ts +5371 -0
  16. package/dist/sharedUtils/components/apps/editor/component/default-codes.d.ts +3 -0
  17. package/dist/sharedUtils/components/apps/editor/component/index.d.ts +3 -0
  18. package/dist/sharedUtils/components/apps/editor/component/sets.d.ts +7 -0
  19. package/dist/sharedUtils/components/apps/editor/componentsPanel/componentDefaultProps.d.ts +3 -0
  20. package/dist/sharedUtils/components/apps/gridUtils.d.ts +14 -0
  21. package/dist/sharedUtils/components/apps/inputType.d.ts +178 -0
  22. package/dist/sharedUtils/components/apps/rx.d.ts +29 -0
  23. package/dist/sharedUtils/components/apps/sharedTypes.d.ts +21 -0
  24. package/dist/sharedUtils/components/apps/types.d.ts +274 -0
  25. package/dist/sharedUtils/components/assets/lib.d.ts +25 -0
  26. package/dist/sharedUtils/components/common/alert/model.d.ts +2 -0
  27. package/dist/sharedUtils/components/common/badge/model.d.ts +8 -0
  28. package/dist/sharedUtils/components/common/button/model.d.ts +45 -0
  29. package/dist/sharedUtils/components/common/fileInput/model.d.ts +1 -0
  30. package/dist/sharedUtils/components/common/index.d.ts +24 -0
  31. package/dist/sharedUtils/components/common/skeleton/model.d.ts +21 -0
  32. package/dist/sharedUtils/components/dbTypes.d.ts +14 -0
  33. package/dist/sharedUtils/components/diff_drawer.d.ts +26 -0
  34. package/dist/sharedUtils/components/ducklake.d.ts +1 -0
  35. package/dist/sharedUtils/components/flows/scheduleUtils.d.ts +7 -0
  36. package/dist/sharedUtils/components/icons/index.d.ts +101 -0
  37. package/dist/sharedUtils/components/random_positive_adjetive.d.ts +1 -0
  38. package/dist/sharedUtils/components/raw_apps/rawAppPolicy.d.ts +10 -0
  39. package/dist/sharedUtils/components/raw_apps/utils.d.ts +15 -0
  40. package/dist/sharedUtils/components/triggers/email/utils.d.ts +4 -0
  41. package/dist/sharedUtils/components/triggers/gcp/utils.d.ts +2 -0
  42. package/dist/sharedUtils/components/triggers/http/utils.d.ts +11 -0
  43. package/dist/sharedUtils/components/triggers/kafka/utils.d.ts +2 -0
  44. package/dist/sharedUtils/components/triggers/mqtt/utils.d.ts +2 -0
  45. package/dist/sharedUtils/components/triggers/nats/utils.d.ts +2 -0
  46. package/dist/sharedUtils/components/triggers/postgres/utils.d.ts +8 -0
  47. package/dist/sharedUtils/components/triggers/sqs/utils.d.ts +2 -0
  48. package/dist/sharedUtils/components/triggers/triggers.svelte.d.ts +32 -0
  49. package/dist/sharedUtils/components/triggers/utils.d.ts +80 -0
  50. package/dist/sharedUtils/components/triggers/websocket/utils.d.ts +2 -0
  51. package/dist/sharedUtils/components/triggers.d.ts +20 -0
  52. package/dist/sharedUtils/gen/core/ApiError.d.ts +10 -0
  53. package/dist/sharedUtils/gen/core/ApiRequestOptions.d.ts +13 -0
  54. package/dist/sharedUtils/gen/core/ApiResult.d.ts +7 -0
  55. package/dist/sharedUtils/gen/core/CancelablePromise.d.ts +26 -0
  56. package/dist/sharedUtils/gen/core/OpenAPI.d.ts +27 -0
  57. package/dist/sharedUtils/gen/core/request.d.ts +29 -0
  58. package/dist/sharedUtils/gen/index.d.ts +6 -0
  59. package/dist/sharedUtils/gen/schemas.gen.d.ts +7036 -0
  60. package/dist/sharedUtils/gen/services.gen.d.ts +6047 -0
  61. package/dist/sharedUtils/gen/types.gen.d.ts +21881 -0
  62. package/dist/sharedUtils/history.svelte.d.ts +9 -0
  63. package/dist/sharedUtils/hub.d.ts +49 -0
  64. package/dist/sharedUtils/jsr.json +6 -0
  65. package/dist/sharedUtils/lib.d.ts +5 -0
  66. package/dist/sharedUtils/lib.es.js +1588 -0
  67. package/dist/sharedUtils/package.json +12 -0
  68. package/dist/sharedUtils/schema.d.ts +3 -0
  69. package/dist/sharedUtils/stores.d.ts +97 -0
  70. package/dist/sharedUtils/svelte5Utils.svelte.d.ts +80 -0
  71. package/dist/sharedUtils/toast.d.ts +8 -0
  72. package/dist/sharedUtils/utils.d.ts +265 -0
  73. package/package/assets/app.css +32 -13
  74. package/package/components/AIAgentLogViewer.svelte +2 -2
  75. package/package/components/AIAgentLogViewer.svelte.d.ts +1 -0
  76. package/package/components/AIProviderPicker.svelte +20 -80
  77. package/package/components/AIProviderPicker.svelte.d.ts +2 -7
  78. package/package/components/AddUser.svelte +2 -2
  79. package/package/components/ApiConnectForm.svelte +7 -1
  80. package/package/components/AppConnectInner.svelte.d.ts +1 -1
  81. package/package/components/ArgInput.svelte +15 -5
  82. package/package/components/ArgInput.svelte.d.ts +3 -4
  83. package/package/components/Auth0Setting.svelte +6 -2
  84. package/package/components/AuthSettings.svelte +68 -39
  85. package/package/components/AuthSettings.svelte.d.ts +3 -1
  86. package/package/components/AutheliaSetting.svelte +3 -2
  87. package/package/components/AuthentikSetting.svelte +3 -2
  88. package/package/components/AutoscalingConfigEditor.svelte +2 -1
  89. package/package/components/AutoscalingConfigEditor.svelte.d.ts +1 -0
  90. package/package/components/CenteredModal.svelte +14 -4
  91. package/package/components/CenteredModal.svelte.d.ts +1 -0
  92. package/package/components/ChangeInstanceUsernameInner.svelte +1 -1
  93. package/package/components/CompareWorkspaces.svelte +29 -57
  94. package/package/components/ConcurrentJobsChart.svelte +1 -1
  95. package/package/components/ConnectionSection.svelte +69 -73
  96. package/package/components/CustomSso.svelte +7 -7
  97. package/package/components/DBManager.svelte +15 -4
  98. package/package/components/DBManager.svelte.d.ts +2 -0
  99. package/package/components/DBManagerContent.svelte +5 -0
  100. package/package/components/DBManagerContent.svelte.d.ts +1 -0
  101. package/package/components/DBManagerDrawer.svelte +2 -0
  102. package/package/components/DatatablePicker.svelte +29 -0
  103. package/package/components/DatatablePicker.svelte.d.ts +13 -0
  104. package/package/components/DateTimeInput.svelte +3 -3
  105. package/package/components/DedicatedWorkersSelector.svelte +39 -42
  106. package/package/components/DeployToSetting.svelte +183 -123
  107. package/package/components/DeployToSetting.svelte.d.ts +19 -28
  108. package/package/components/DeployWorkspace.svelte +6 -44
  109. package/package/components/DeployWorkspace.svelte.d.ts +2 -1
  110. package/package/components/DeployWorkspaceDrawer.svelte +18 -7
  111. package/package/components/DeployWorkspaceDrawer.svelte.d.ts +3 -20
  112. package/package/components/Description.svelte +3 -1
  113. package/package/components/Dev.svelte +1 -0
  114. package/package/components/DiffEditor.svelte +7 -6
  115. package/package/components/DiffEditor.svelte.d.ts +2 -6
  116. package/package/components/DisplayResult.svelte +2 -2
  117. package/package/components/DropdownMenu.svelte +39 -0
  118. package/package/components/DropdownMenu.svelte.d.ts +14 -0
  119. package/package/components/DropdownSubmenuItem.svelte +68 -0
  120. package/package/components/DropdownSubmenuItem.svelte.d.ts +10 -0
  121. package/package/components/DropdownV2.svelte +3 -3
  122. package/package/components/DropdownV2Inner.svelte +42 -34
  123. package/package/components/DropdownV2Inner.svelte.d.ts +2 -1
  124. package/package/components/DucklakePicker.svelte +2 -5
  125. package/package/components/EEOnly.svelte +4 -14
  126. package/package/components/EEOnly.svelte.d.ts +0 -1
  127. package/package/components/Editor.svelte +2 -2
  128. package/package/components/Editor.svelte.d.ts +1 -0
  129. package/package/components/EditorBar.svelte +2 -4
  130. package/package/components/ErrorOrRecoveryHandler.svelte +62 -53
  131. package/package/components/ErrorOrRecoveryHandler.svelte.d.ts +1 -0
  132. package/package/components/ExploreAssetButton.svelte +1 -2
  133. package/package/components/FileExplorer.svelte +249 -0
  134. package/package/components/FileExplorer.svelte.d.ts +21 -0
  135. package/package/components/FilesetEditor.svelte +103 -0
  136. package/package/components/FilesetEditor.svelte.d.ts +6 -0
  137. package/package/components/FilterSearchbar.svelte +628 -0
  138. package/package/components/FilterSearchbar.svelte.d.ts +86 -0
  139. package/package/components/FlowBuilder.svelte +123 -79
  140. package/package/components/FlowGraphViewerStep.svelte +49 -33
  141. package/package/components/FlowHistoryJobPicker.svelte +2 -1
  142. package/package/components/FlowJobResult.svelte +31 -23
  143. package/package/components/FlowJobResult.svelte.d.ts +0 -1
  144. package/package/components/FlowLogRow.svelte +1 -1
  145. package/package/components/FlowLogViewer.svelte +8 -3
  146. package/package/components/FlowPreviewContent.svelte +65 -49
  147. package/package/components/FlowPreviewContent.svelte.d.ts +4 -0
  148. package/package/components/FlowRestartButton.svelte +47 -47
  149. package/package/components/FlowRestartButton.svelte.d.ts +2 -0
  150. package/package/components/FlowStatusViewer.svelte +2 -3
  151. package/package/components/FlowStatusViewer.svelte.d.ts +1 -0
  152. package/package/components/FlowStatusViewerInner.svelte +380 -297
  153. package/package/components/FlowStatusViewerInner.svelte.d.ts +2 -2
  154. package/package/components/FlowStatusWaitingForEvents.svelte +11 -10
  155. package/package/components/FolderPicker.svelte +195 -65
  156. package/package/components/FolderPicker.svelte.d.ts +2 -0
  157. package/package/components/HistoricInputs.svelte +3 -4
  158. package/package/components/IconedResourceType.svelte +8 -2
  159. package/package/components/IconedResourceType.svelte.d.ts +2 -0
  160. package/package/components/InputError.svelte +9 -0
  161. package/package/components/InputError.svelte.d.ts +6 -0
  162. package/package/components/InputTransformForm.svelte +46 -39
  163. package/package/components/InputTransformForm.svelte.d.ts +1 -0
  164. package/package/components/InputTransformSchemaForm.svelte +2 -1
  165. package/package/components/InputTransformSchemaForm.svelte.d.ts +1 -0
  166. package/package/components/InputTransformsViewer.svelte +37 -20
  167. package/package/components/InstanceNameEditor.svelte +3 -1
  168. package/package/components/InstanceSetting.svelte +150 -374
  169. package/package/components/InstanceSetting.svelte.d.ts +1 -0
  170. package/package/components/InstanceSettings.svelte +804 -193
  171. package/package/components/InstanceSettings.svelte.d.ts +17 -2
  172. package/package/components/IntegerInput.svelte +58 -0
  173. package/package/components/IntegerInput.svelte.d.ts +14 -0
  174. package/package/components/InviteGlobalUser.svelte +25 -25
  175. package/package/components/InviteGlobalUser.svelte.d.ts +4 -2
  176. package/package/components/JobArgs.svelte +14 -10
  177. package/package/components/JobLoader.svelte +6 -4
  178. package/package/components/JobLoader.svelte.d.ts +2 -2
  179. package/package/components/JobStatus.svelte +29 -26
  180. package/package/components/JobStatus.svelte.d.ts +1 -0
  181. package/package/components/KanidmSetting.svelte +3 -2
  182. package/package/components/KeycloakSetting.svelte +3 -2
  183. package/package/components/Login.svelte +9 -3
  184. package/package/components/ModuleStatus.svelte +5 -5
  185. package/package/components/ModuleTest.svelte +3 -3
  186. package/package/components/MoveDrawer.svelte +47 -76
  187. package/package/components/MoveDrawer.svelte.d.ts +4 -6
  188. package/package/components/NextcloudSetting.svelte +3 -2
  189. package/package/components/NoDirectDeployAlert.svelte +31 -0
  190. package/package/components/NoDirectDeployAlert.svelte.d.ts +6 -0
  191. package/package/components/NumberTypeNarrowing.svelte +65 -67
  192. package/package/components/NumberTypeNarrowing.svelte.d.ts +2 -1
  193. package/package/components/OAuthSetting.svelte +6 -14
  194. package/package/components/ObjectStoreConfigSettings.svelte +150 -55
  195. package/package/components/ObjectStoreConfigSettings.svelte.d.ts +34 -44
  196. package/package/components/OktaSetting.svelte +3 -2
  197. package/package/components/PageHeader.svelte +1 -1
  198. package/package/components/ParentWorkspaceProtectionAlert.svelte +48 -0
  199. package/package/components/ParentWorkspaceProtectionAlert.svelte.d.ts +7 -0
  200. package/package/components/Path.svelte +40 -28
  201. package/package/components/Path.svelte.d.ts +3 -0
  202. package/package/components/PocketIdSetting.svelte +3 -2
  203. package/package/components/ResourceEditor.svelte +9 -3
  204. package/package/components/ResourcePicker.svelte +2 -5
  205. package/package/components/RightClickPopover.svelte +37 -0
  206. package/package/components/RightClickPopover.svelte.d.ts +11 -0
  207. package/package/components/RunChart.svelte +2 -21
  208. package/package/components/RunChart.svelte.d.ts +0 -3
  209. package/package/components/RunsPage.svelte +458 -560
  210. package/package/components/SaveButton.svelte +78 -0
  211. package/package/components/SaveButton.svelte.d.ts +12 -0
  212. package/package/components/SaveInputsButton.svelte +1 -1
  213. package/package/components/SavedInputsV2.svelte +1 -3
  214. package/package/components/SchemaFormWithArgPicker.svelte +34 -30
  215. package/package/components/SchemaFormWithArgPicker.svelte.d.ts +12 -21
  216. package/package/components/SchemaViewer.svelte +56 -53
  217. package/package/components/ScriptBuilder.svelte +12 -12
  218. package/package/components/ScriptEditor.svelte +30 -28
  219. package/package/components/Section.svelte +2 -2
  220. package/package/components/ServiceLogsInner.svelte +21 -82
  221. package/package/components/Star.svelte +8 -22
  222. package/package/components/Star.svelte.d.ts +4 -4
  223. package/package/components/StringTypeNarrowing.svelte +1 -0
  224. package/package/components/SummaryPathDisplay.svelte +177 -0
  225. package/package/components/SummaryPathDisplay.svelte.d.ts +10 -0
  226. package/package/components/SuperadminSettings.svelte +185 -4
  227. package/package/components/SuperadminSettings.svelte.d.ts +4 -1
  228. package/package/components/SuperadminSettingsInner.svelte +307 -192
  229. package/package/components/SuperadminSettingsInner.svelte.d.ts +12 -1
  230. package/package/components/TaggedTextInput.svelte +449 -0
  231. package/package/components/TaggedTextInput.svelte.d.ts +28 -0
  232. package/package/components/Toast.svelte +69 -51
  233. package/package/components/Toast.svelte.d.ts +2 -2
  234. package/package/components/Tooltip.svelte +2 -2
  235. package/package/components/Tooltip.svelte.d.ts +2 -0
  236. package/package/components/TooltipInner.svelte +6 -1
  237. package/package/components/TooltipInner.svelte.d.ts +1 -0
  238. package/package/components/Uptodate.svelte +3 -2
  239. package/package/components/UserSettings.svelte +2 -2
  240. package/package/components/UserSettings.svelte.d.ts +1 -0
  241. package/package/components/WorkerGroup.svelte +320 -192
  242. package/package/components/WorkerGroup.svelte.d.ts +2 -0
  243. package/package/components/WorkspaceDependenciesEditor.svelte +33 -17
  244. package/package/components/ZitadelSetting.svelte +3 -2
  245. package/package/components/aiProviderStorage.d.ts +5 -0
  246. package/package/components/aiProviderStorage.js +50 -0
  247. package/package/components/apps/components/display/dbtable/AppDbExplorer.svelte +24 -13
  248. package/package/components/apps/components/display/dbtable/metadata.d.ts +1 -0
  249. package/package/components/apps/components/display/dbtable/metadata.js +1 -0
  250. package/package/components/apps/components/display/dbtable/queries/count.js +3 -1
  251. package/package/components/apps/components/display/dbtable/queries/delete.js +3 -1
  252. package/package/components/apps/components/display/dbtable/queries/insert.js +3 -1
  253. package/package/components/apps/components/display/dbtable/queries/select.js +15 -1
  254. package/package/components/apps/components/display/dbtable/queries/update.js +3 -1
  255. package/package/components/apps/components/display/table/AppAggridExplorerTable.svelte +6 -0
  256. package/package/components/apps/components/display/table/AppAggridInfiniteTable.svelte +1 -0
  257. package/package/components/apps/components/display/table/AppAggridTable.svelte +7 -0
  258. package/package/components/apps/components/display/table/AppAggridTableActions.svelte +9 -3
  259. package/package/components/apps/components/display/table/AppAggridTableActions.svelte.d.ts +1 -0
  260. package/package/components/apps/components/display/table/theme/windmill-theme.css +8 -7
  261. package/package/components/apps/components/helpers/eval.js +5 -2
  262. package/package/components/apps/components/layout/AppModal.svelte +2 -1
  263. package/package/components/apps/components/layout/AppModal.svelte.d.ts +1 -0
  264. package/package/components/apps/editor/appPolicy.js +5 -4
  265. package/package/components/apps/editor/appUtils.d.ts +1 -1
  266. package/package/components/apps/editor/component/components.d.ts +11 -0
  267. package/package/components/apps/editor/component/components.js +19 -2
  268. package/package/components/apps/editor/componentsPanel/CssProperty.svelte +3 -1
  269. package/package/components/apps/editor/inlineScriptsPanel/CacheTtlPopup.svelte +1 -1
  270. package/package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +1 -1
  271. package/package/components/apps/editor/settingsPanel/OneOfInputSpecsEditor.svelte +1 -1
  272. package/package/components/apps/editor/settingsPanel/StylePanel.svelte +66 -29
  273. package/package/components/apps/editor/settingsPanel/StylePanel.svelte.d.ts +2 -17
  274. package/package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +10 -0
  275. package/package/components/apps/inputType.d.ts +2 -2
  276. package/package/components/assets/AssetButtons.svelte +3 -7
  277. package/package/components/assets/AssetButtons.svelte.d.ts +2 -4
  278. package/package/components/assets/AssetColumnBadges.svelte +35 -0
  279. package/package/components/assets/AssetColumnBadges.svelte.d.ts +10 -0
  280. package/package/components/assets/AssetsDropdownButton.svelte +8 -6
  281. package/package/components/assets/AssetsUsageDrawer.svelte +16 -14
  282. package/package/components/assets/JobAssetsViewer.svelte +4 -6
  283. package/package/components/assets/assetsFilter.d.ts +50 -0
  284. package/package/components/assets/assetsFilter.js +43 -0
  285. package/package/components/assets/lib.d.ts +3 -2
  286. package/package/components/assets/lib.js +8 -1
  287. package/package/components/auditLogs/AuditLogsFilters.svelte +30 -1
  288. package/package/components/common/InlineCalendarInput.svelte +580 -0
  289. package/package/components/common/InlineCalendarInput.svelte.d.ts +31 -0
  290. package/package/components/common/alert/Alert.svelte +2 -8
  291. package/package/components/common/alert/model.d.ts +1 -0
  292. package/package/components/common/alert/model.js +7 -0
  293. package/package/components/common/badge/Badge.svelte +7 -3
  294. package/package/components/common/badge/Badge.svelte.d.ts +1 -0
  295. package/package/components/common/breadcrumb/Breadcrumb.svelte +10 -14
  296. package/package/components/common/breadcrumb/Breadcrumb.svelte.d.ts +8 -23
  297. package/package/components/common/drawer/DrawerContent.svelte +1 -1
  298. package/package/components/common/seconds/SecondsInput.svelte +158 -67
  299. package/package/components/common/seconds/SecondsInput.svelte.d.ts +9 -21
  300. package/package/components/common/sidebar/SidebarNavigation.svelte +50 -0
  301. package/package/components/common/sidebar/SidebarNavigation.svelte.d.ts +25 -0
  302. package/package/components/common/table/AppRow.svelte +7 -10
  303. package/package/components/common/table/AppRow.svelte.d.ts +2 -2
  304. package/package/components/common/table/FlowRow.svelte +12 -15
  305. package/package/components/common/table/FlowRow.svelte.d.ts +2 -2
  306. package/package/components/common/table/RawAppRow.svelte +5 -82
  307. package/package/components/common/table/RawAppRow.svelte.d.ts +2 -23
  308. package/package/components/common/table/Row.svelte +2 -2
  309. package/package/components/common/table/Row.svelte.d.ts +0 -2
  310. package/package/components/common/table/ScriptRow.svelte +8 -11
  311. package/package/components/common/table/ScriptRow.svelte.d.ts +2 -2
  312. package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte +1 -1
  313. package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte.d.ts +1 -1
  314. package/package/components/copilot/TestAIKey.svelte +1 -1
  315. package/package/components/copilot/chat/AIChatInput.svelte +22 -11
  316. package/package/components/copilot/chat/AIChatManager.svelte.js +15 -17
  317. package/package/components/copilot/chat/AvailableContextList.svelte +215 -12
  318. package/package/components/copilot/chat/AvailableContextList.svelte.d.ts +1 -0
  319. package/package/components/copilot/chat/ContextTextarea.svelte +15 -2
  320. package/package/components/copilot/chat/__tests__/app/variants/streamlined.js +1 -1
  321. package/package/components/copilot/chat/__tests__/flow/variants/minimal-single-tool.js +4 -2
  322. package/package/components/copilot/chat/app/core.js +7 -86
  323. package/package/components/copilot/chat/context.js +4 -1
  324. package/package/components/copilot/chat/flow/core.js +193 -61
  325. package/package/components/copilot/chat/flow/openFlow.json +1 -1
  326. package/package/components/copilot/chat/flow/openFlowZod.d.ts +2 -2
  327. package/package/components/copilot/chat/flow/openFlowZod.js +6 -8
  328. package/package/components/copilot/chat/navigator/core.d.ts +2 -2
  329. package/package/components/copilot/chat/navigator/core.js +11 -2
  330. package/package/components/copilot/chat/script/core.js +4 -1
  331. package/package/components/copilot/chat/shared.d.ts +53 -1
  332. package/package/components/copilot/chat/shared.js +227 -1
  333. package/package/components/copilot/lib.js +42 -0
  334. package/package/components/dedicated_worker.d.ts +7 -0
  335. package/package/components/dedicated_worker.js +36 -0
  336. package/package/components/details/DetailPageHeader.svelte +8 -23
  337. package/package/components/details/DetailPageHeader.svelte.d.ts +1 -0
  338. package/package/components/details/DetailPageLayout.svelte +1 -1
  339. package/package/components/details/createAppFromScript.d.ts +136 -16
  340. package/package/components/details/createAppFromScript.js +13 -12
  341. package/package/components/diffEditorTypes.d.ts +6 -0
  342. package/package/components/diffEditorTypes.js +1 -0
  343. package/package/components/flows/CreateActionsApp.svelte +32 -82
  344. package/package/components/flows/CreateActionsFlow.svelte +28 -28
  345. package/package/components/flows/FlowAssetsHandler.svelte +1 -4
  346. package/package/components/flows/FlowProgressBar.svelte +37 -1
  347. package/package/components/flows/FlowProgressBar.svelte.d.ts +3 -0
  348. package/package/components/flows/agentToolUtils.d.ts +18 -0
  349. package/package/components/flows/agentToolUtils.js +47 -0
  350. package/package/components/flows/common/FlowCardHeader.svelte +8 -9
  351. package/package/components/flows/content/FlowEnvironmentVariables.svelte +3 -2
  352. package/package/components/flows/content/FlowLoop.svelte +3 -4
  353. package/package/components/flows/content/FlowModuleCache.svelte +1 -3
  354. package/package/components/flows/content/FlowModuleComponent.svelte +22 -6
  355. package/package/components/flows/content/FlowModuleSleep.svelte +1 -1
  356. package/package/components/flows/content/FlowResult.svelte +77 -25
  357. package/package/components/flows/content/FlowRetries.svelte +1 -1
  358. package/package/components/flows/content/FlowSettings.svelte +4 -7
  359. package/package/components/flows/flowState.js +6 -0
  360. package/package/components/flows/flowStateUtils.svelte.js +4 -1
  361. package/package/components/flows/flowStore.svelte.d.ts +1 -1
  362. package/package/components/flows/flowStore.svelte.js +4 -2
  363. package/package/components/flows/header/FlowPreviewButtons.svelte +2 -1
  364. package/package/components/flows/header/FlowYamlEditor.svelte +2 -2
  365. package/package/components/flows/map/FlowModuleSchemaMap.svelte +12 -6
  366. package/package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +2 -2
  367. package/package/components/flows/map/InsertModuleInner.svelte +7 -0
  368. package/package/components/flows/map/InsertModuleInner.svelte.d.ts +1 -0
  369. package/package/components/flows/missingInputWarnings.js +7 -0
  370. package/package/components/flows/pickers/PickHubScriptQuick.svelte +4 -4
  371. package/package/components/flows/propPicker/OutputPicker.svelte +1 -1
  372. package/package/components/flows/propPicker/PropPickerWrapper.svelte +6 -9
  373. package/package/components/flows/propPicker/PropPickerWrapper.svelte.d.ts +3 -3
  374. package/package/components/flows/scheduleUtils.js +2 -2
  375. package/package/components/flows/types.d.ts +1 -3
  376. package/package/components/flows/utils.svelte.js +5 -1
  377. package/package/components/git_sync/GitSyncRepositoryCard.svelte +23 -21
  378. package/package/components/git_sync/GitSyncSection.svelte +24 -27
  379. package/package/components/graph/FlowGraphV2.svelte +1 -1
  380. package/package/components/graph/graphBuilder.svelte.d.ts +3 -1
  381. package/package/components/graph/model.d.ts +1 -1
  382. package/package/components/graph/renderers/nodes/AIToolNode.svelte +3 -1
  383. package/package/components/graph/renderers/nodes/AssetNode.svelte +25 -13
  384. package/package/components/graph/renderers/nodes/AssetsOverflowedNode.svelte +1 -1
  385. package/package/components/graph/renderers/nodes/NewAIToolNode.svelte +8 -0
  386. package/package/components/graph/renderers/triggers/TriggersBadge.svelte +5 -2
  387. package/package/components/home/Item.svelte +9 -15
  388. package/package/components/home/Item.svelte.d.ts +8 -7
  389. package/package/components/home/ItemsList.svelte +4 -10
  390. package/package/components/home/ItemsList.svelte.d.ts +1 -0
  391. package/package/components/icons/GoogleCalendarIcon.svelte +41 -0
  392. package/package/components/icons/GoogleCalendarIcon.svelte.d.ts +7 -0
  393. package/package/components/icons/GoogleDriveIcon.svelte +30 -0
  394. package/package/components/icons/GoogleDriveIcon.svelte.d.ts +7 -0
  395. package/package/components/icons/GoogleIcon.svelte +15 -6
  396. package/package/components/icons/GoogleIcon.svelte.d.ts +5 -2
  397. package/package/components/icons/MSSqlServerIcon.svelte +111 -47
  398. package/package/components/instanceSettings/IndexerJobIndexSettings.svelte +94 -0
  399. package/package/components/instanceSettings/IndexerJobIndexSettings.svelte.d.ts +9 -0
  400. package/package/components/instanceSettings/IndexerLogIndexSettings.svelte +67 -0
  401. package/package/components/instanceSettings/IndexerLogIndexSettings.svelte.d.ts +9 -0
  402. package/package/components/instanceSettings/IndexerMemorySettings.svelte +109 -0
  403. package/package/components/instanceSettings/IndexerMemorySettings.svelte.d.ts +9 -0
  404. package/package/components/instanceSettings/SecretBackendConfig.svelte +15 -16
  405. package/package/components/instanceSettings/SettingCard.svelte +47 -0
  406. package/package/components/instanceSettings/SettingCard.svelte.d.ts +19 -0
  407. package/package/components/instanceSettings/SettingsSearchInput.svelte +66 -0
  408. package/package/components/instanceSettings/SettingsSearchInput.svelte.d.ts +9 -0
  409. package/package/components/instanceSettings.d.ts +52 -0
  410. package/package/components/instanceSettings.js +413 -69
  411. package/package/components/meltComponents/MenuItem.svelte +1 -0
  412. package/package/components/meltComponents/Popover.svelte +10 -1
  413. package/package/components/meltComponents/Popover.svelte.d.ts +2 -0
  414. package/package/components/meltComponents/Tooltip.svelte +2 -1
  415. package/package/components/meltComponents/Tooltip.svelte.d.ts +1 -0
  416. package/package/components/moveRenameManager.d.ts +21 -0
  417. package/package/components/moveRenameManager.js +61 -0
  418. package/package/components/progressBar/ProgressBar.svelte +69 -27
  419. package/package/components/progressBar/ProgressBar.svelte.d.ts +7 -0
  420. package/package/components/prop_picker.d.ts +0 -3
  421. package/package/components/propertyPicker/PropPicker.svelte +34 -49
  422. package/package/components/propertyPicker/PropPicker.svelte.d.ts +12 -11
  423. package/package/components/raw_apps/FileTreeNode.svelte +1 -0
  424. package/package/components/raw_apps/RawAppBackgroundRunner.svelte +3 -2
  425. package/package/components/raw_apps/RawAppEditor.svelte +20 -16
  426. package/package/components/raw_apps/RawAppEditor.svelte.d.ts +4 -4
  427. package/package/components/raw_apps/RawAppEditorHeader.svelte +73 -7
  428. package/package/components/raw_apps/RawAppEditorHeader.svelte.d.ts +1 -1
  429. package/package/components/raw_apps/RawAppInlineScriptEditor.svelte.d.ts +1 -2
  430. package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte +41 -1
  431. package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte.d.ts +0 -1
  432. package/package/components/raw_apps/RawAppSidebar.svelte +32 -284
  433. package/package/components/raw_apps/RawAppSidebar.svelte.d.ts +1 -1
  434. package/package/components/raw_apps/RunnableRow.svelte +88 -34
  435. package/package/components/raw_apps/RunnableRow.svelte.d.ts +4 -0
  436. package/package/components/resources/resourcesFilter.d.ts +70 -0
  437. package/package/components/resources/resourcesFilter.js +61 -0
  438. package/package/components/runs/BatchReRunOptionsPane.svelte +130 -121
  439. package/package/components/runs/BatchReRunOptionsPane.svelte.d.ts +3 -2
  440. package/package/components/runs/FlowExecutionStatus.svelte +30 -0
  441. package/package/components/runs/FlowExecutionStatus.svelte.d.ts +15 -0
  442. package/package/components/runs/JobDetailFieldConfig.d.ts +47 -0
  443. package/package/components/runs/JobDetailFieldConfig.js +433 -0
  444. package/package/components/runs/JobDetailHeader.svelte +551 -0
  445. package/package/components/runs/JobDetailHeader.svelte.d.ts +17 -0
  446. package/package/components/runs/JobRunsPreview.svelte +174 -218
  447. package/package/components/runs/JobRunsPreview.svelte.d.ts +0 -1
  448. package/package/components/runs/JobStatusIcon.svelte +47 -0
  449. package/package/components/runs/JobStatusIcon.svelte.d.ts +9 -0
  450. package/package/components/runs/RunBadges.svelte +39 -34
  451. package/package/components/runs/RunBadges.svelte.d.ts +2 -1
  452. package/package/components/runs/RunRow.svelte +24 -64
  453. package/package/components/runs/RunRow.svelte.d.ts +1 -2
  454. package/package/components/runs/RunsTable.svelte +312 -131
  455. package/package/components/runs/RunsTable.svelte.d.ts +4 -3
  456. package/package/components/runs/TimeframeSelect.svelte +189 -0
  457. package/package/components/runs/TimeframeSelect.svelte.d.ts +44 -0
  458. package/package/components/runs/runsFilter.d.ts +201 -0
  459. package/package/components/runs/runsFilter.js +182 -0
  460. package/package/components/runs/useJobsLoader.svelte.d.ts +5 -7
  461. package/package/components/runs/useJobsLoader.svelte.js +27 -30
  462. package/package/components/schedules/schedulesFilter.d.ts +65 -0
  463. package/package/components/schedules/schedulesFilter.js +60 -0
  464. package/package/components/schema/EditableSchemaWrapper.svelte +43 -22
  465. package/package/components/schema/EditableSchemaWrapper.svelte.d.ts +1 -1
  466. package/package/components/schema/FlowPropertyEditor.svelte.d.ts +1 -1
  467. package/package/components/schema/PropertyEditor.svelte +1 -0
  468. package/package/components/schema/RunningJobSchemaPicker.svelte +1 -1
  469. package/package/components/schema/editable_schema_wrapper.d.ts +1 -0
  470. package/package/components/scripts/CreateActionsScript.svelte +0 -1
  471. package/package/components/search/GlobalSearchModal.svelte +1 -8
  472. package/package/components/select/GenericDropdown.svelte +113 -0
  473. package/package/components/select/GenericDropdown.svelte.d.ts +37 -0
  474. package/package/components/select/Select.svelte +17 -4
  475. package/package/components/select/Select.svelte.d.ts +2 -1
  476. package/package/components/select/SelectDropdown.svelte +76 -155
  477. package/package/components/select/SelectDropdown.svelte.d.ts +4 -1
  478. package/package/components/settings/ChangeWorkspaceColor.svelte +7 -8
  479. package/package/components/settings/ChangeWorkspaceId.svelte +4 -6
  480. package/package/components/settings/ChangeWorkspaceName.svelte +6 -8
  481. package/package/components/settings/PremiumInfo.svelte +268 -128
  482. package/package/components/settings/SettingsPageHeader.svelte +22 -0
  483. package/package/components/settings/SettingsPageHeader.svelte.d.ts +10 -0
  484. package/package/components/settings/WorkspaceUserSettings.svelte +13 -23
  485. package/package/components/sidebar/CriticalAlertModalInner.svelte +28 -22
  486. package/package/components/sidebar/CriticalAlertModalInner.svelte.d.ts +5 -20
  487. package/package/components/sidebar/DarkModeToggle.svelte +2 -2
  488. package/package/components/sidebar/FavoriteMenu.svelte +101 -20
  489. package/package/components/sidebar/FavoriteMenu.svelte.d.ts +29 -1
  490. package/package/components/sidebar/MenuButton.svelte +10 -7
  491. package/package/components/sidebar/MenuButton.svelte.d.ts +2 -0
  492. package/package/components/sidebar/MenuLink.svelte +4 -3
  493. package/package/components/sidebar/OperatorMenu.svelte +3 -1
  494. package/package/components/sidebar/OperatorMenu.svelte.d.ts +6 -1
  495. package/package/components/sidebar/SidebarContent.svelte +3 -3
  496. package/package/components/sidebar/WorkspaceMenu.svelte +3 -2
  497. package/package/components/table/AutoDataTable.svelte +2 -2
  498. package/package/components/toast.js +1 -2
  499. package/package/components/triggers/AddTriggersButton.svelte +11 -0
  500. package/package/components/triggers/TriggerFilters.svelte +71 -0
  501. package/package/components/triggers/TriggerFilters.svelte.d.ts +10 -0
  502. package/package/components/triggers/TriggersEditor.svelte +31 -11
  503. package/package/components/triggers/TriggersWrapper.svelte +10 -0
  504. package/package/components/triggers/http/RouteEditorInner.svelte +1 -1
  505. package/package/components/triggers/kafka/KafkaTriggerEditorInner.svelte +7 -0
  506. package/package/components/triggers/kafka/utils.js +1 -0
  507. package/package/components/triggers/native/NativeTriggerEditor.svelte +22 -17
  508. package/package/components/triggers/native/NativeTriggerTable.svelte +16 -0
  509. package/package/components/triggers/native/services/google/GoogleCalendarPicker.svelte +112 -0
  510. package/package/components/triggers/native/services/google/GoogleCalendarPicker.svelte.d.ts +8 -0
  511. package/package/components/triggers/native/services/google/GoogleDrivePicker.svelte +323 -0
  512. package/package/components/triggers/native/services/google/GoogleDrivePicker.svelte.d.ts +8 -0
  513. package/package/components/triggers/native/services/google/GoogleTriggerForm.svelte +116 -0
  514. package/package/components/triggers/native/services/google/GoogleTriggerForm.svelte.d.ts +12 -0
  515. package/package/components/triggers/native/utils.d.ts +0 -1
  516. package/package/components/triggers/native/utils.js +15 -1
  517. package/package/components/triggers/schedules/ScheduleEditorInner.svelte +3 -3
  518. package/package/components/triggers/triggers.svelte.d.ts +1 -1
  519. package/package/components/triggers/triggers.svelte.js +11 -3
  520. package/package/components/triggers/utils.js +33 -6
  521. package/package/components/triggers/websocket/WebsocketEditorConfigSection.svelte +1 -1
  522. package/package/components/triggers/websocket/WebsocketTriggerEditorInner.svelte +3 -81
  523. package/package/components/triggers.d.ts +1 -1
  524. package/package/components/variables/variablesFilter.d.ts +56 -0
  525. package/package/components/variables/variablesFilter.js +51 -0
  526. package/package/components/waitJob.d.ts +1 -1
  527. package/package/components/waitJob.js +3 -2
  528. package/package/components/worker_group.d.ts +2 -0
  529. package/package/components/worker_group.js +15 -0
  530. package/package/components/workspaceSettings/AISettings.svelte +36 -42
  531. package/package/components/workspaceSettings/AISettings.svelte.d.ts +2 -0
  532. package/package/components/workspaceSettings/CreateWorkspace.svelte +4 -4
  533. package/package/components/workspaceSettings/CustomInstanceDbWizardModal.svelte.d.ts +1 -2
  534. package/package/components/workspaceSettings/DataTableSettings.svelte +27 -16
  535. package/package/components/workspaceSettings/DataTableSettings.svelte.d.ts +1 -0
  536. package/package/components/workspaceSettings/DucklakeSettings.svelte +21 -15
  537. package/package/components/workspaceSettings/DucklakeSettings.svelte.d.ts +1 -0
  538. package/package/components/workspaceSettings/GitSyncFilterSettings.svelte +24 -66
  539. package/package/components/workspaceSettings/ModelTokenLimits.svelte +6 -10
  540. package/package/components/workspaceSettings/OAuthClientConfig.svelte +46 -75
  541. package/package/components/workspaceSettings/OAuthClientConfig.svelte.d.ts +8 -1
  542. package/package/components/workspaceSettings/RulesetEditor.svelte +280 -0
  543. package/package/components/workspaceSettings/RulesetEditor.svelte.d.ts +9 -0
  544. package/package/components/workspaceSettings/SettingsFooter.svelte +35 -0
  545. package/package/components/workspaceSettings/SettingsFooter.svelte.d.ts +12 -0
  546. package/package/components/workspaceSettings/StorageSettings.svelte +48 -34
  547. package/package/components/workspaceSettings/StorageSettings.svelte.d.ts +1 -0
  548. package/package/components/workspaceSettings/WorkspaceDependenciesSettings.svelte +66 -27
  549. package/package/components/workspaceSettings/WorkspaceIntegrations.svelte +237 -73
  550. package/package/components/workspaceSettings/WorkspaceRulesets.svelte +183 -0
  551. package/package/components/workspaceSettings/WorkspaceRulesets.svelte.d.ts +3 -0
  552. package/package/editorLangUtils.d.ts +1 -1
  553. package/package/gen/core/OpenAPI.js +1 -1
  554. package/package/gen/schemas.gen.d.ts +996 -70
  555. package/package/gen/schemas.gen.js +1352 -378
  556. package/package/gen/services.gen.d.ts +156 -41
  557. package/package/gen/services.gen.js +319 -83
  558. package/package/gen/types.gen.d.ts +1896 -317
  559. package/package/hub.d.ts +1 -0
  560. package/package/hub.js +7 -0
  561. package/package/hubPaths.json +2 -1
  562. package/package/infer.d.ts +2 -0
  563. package/package/mcpEndpointTools.d.ts +3 -0
  564. package/package/mcpEndpointTools.js +574 -147
  565. package/package/rawAppWmillTs.js +12 -11
  566. package/package/scripts.d.ts +1 -1
  567. package/package/scripts.js +1 -1
  568. package/package/storeUtils.js +8 -0
  569. package/package/stores.d.ts +1 -1
  570. package/package/stores.js +4 -2
  571. package/package/svelte5Utils.svelte.d.ts +40 -0
  572. package/package/svelte5Utils.svelte.js +158 -0
  573. package/package/svelte5UtilsKit.svelte.d.ts +13 -3
  574. package/package/svelte5UtilsKit.svelte.js +96 -20
  575. package/package/system_prompts/prompts.d.ts +5 -5
  576. package/package/system_prompts/prompts.js +94 -21
  577. package/package/toast.d.ts +5 -1
  578. package/package/toast.js +14 -5
  579. package/package/utils.js +214 -7
  580. package/package/utils_deployable.d.ts +25 -25
  581. package/package/utils_deployable.js +2 -1
  582. package/package/validators/workspaceSettings.d.ts +12 -0
  583. package/package/validators/workspaceSettings.js +72 -0
  584. package/package/workspaceProtectionRules.svelte.d.ts +73 -0
  585. package/package/workspaceProtectionRules.svelte.js +176 -0
  586. package/package.json +8 -5
  587. package/package/components/DropdownSelect.svelte +0 -26
  588. package/package/components/DropdownSelect.svelte.d.ts +0 -11
  589. package/package/components/FlowPreviewResult.svelte +0 -84
  590. package/package/components/FlowPreviewResult.svelte.d.ts +0 -20
  591. package/package/components/copilot/chat/context.d.ts +0 -119
  592. package/package/components/flows/propPicker/FlowPropPicker.svelte +0 -72
  593. package/package/components/flows/propPicker/FlowPropPicker.svelte.d.ts +0 -23
  594. package/package/components/runs/ManuelDatePicker.svelte +0 -96
  595. package/package/components/runs/ManuelDatePicker.svelte.d.ts +0 -35
  596. package/package/components/runs/RunsBatchActionsDropdown.svelte +0 -82
  597. package/package/components/runs/RunsBatchActionsDropdown.svelte.d.ts +0 -15
  598. package/package/components/runs/RunsFilter.svelte +0 -966
  599. 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[];