windmill-components 1.623.1 → 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 (903) 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/assets/tokens/tokens.json +11 -1
  75. package/package/ata/apis.js +78 -5
  76. package/package/cancelable-promise-utils.js +4 -2
  77. package/package/components/AIAgentLogViewer.svelte +2 -2
  78. package/package/components/AIAgentLogViewer.svelte.d.ts +1 -0
  79. package/package/components/AIProviderPicker.svelte +20 -80
  80. package/package/components/AIProviderPicker.svelte.d.ts +2 -7
  81. package/package/components/AddUser.svelte +3 -3
  82. package/package/components/ApiConnectForm.svelte +13 -1
  83. package/package/components/AppConnectDrawer.svelte +1 -0
  84. package/package/components/AppConnectInner.svelte +1 -0
  85. package/package/components/AppConnectInner.svelte.d.ts +1 -1
  86. package/package/components/ArgInput.svelte +15 -5
  87. package/package/components/ArgInput.svelte.d.ts +3 -4
  88. package/package/components/Auth0Setting.svelte +6 -2
  89. package/package/components/AuthSettings.svelte +71 -40
  90. package/package/components/AuthSettings.svelte.d.ts +3 -1
  91. package/package/components/AutheliaSetting.svelte +3 -2
  92. package/package/components/AuthentikSetting.svelte +3 -2
  93. package/package/components/AutoscalingConfigEditor.svelte +2 -1
  94. package/package/components/AutoscalingConfigEditor.svelte.d.ts +1 -0
  95. package/package/components/BedrockCredentialsCheck.svelte +241 -0
  96. package/package/components/BedrockCredentialsCheck.svelte.d.ts +3 -0
  97. package/package/components/CenteredModal.svelte +42 -24
  98. package/package/components/CenteredModal.svelte.d.ts +8 -27
  99. package/package/components/CenteredPage.svelte +6 -2
  100. package/package/components/CenteredPage.svelte.d.ts +3 -0
  101. package/package/components/ChangeInstanceUsernameInner.svelte +1 -1
  102. package/package/components/CompareWorkspaces.svelte +103 -73
  103. package/package/components/ConcurrentJobsChart.svelte +4 -3
  104. package/package/components/ConcurrentJobsChart.svelte.d.ts +2 -2
  105. package/package/components/ConnectionSection.svelte +69 -73
  106. package/package/components/CustomPopover.svelte +20 -23
  107. package/package/components/CustomPopover.svelte.d.ts +14 -39
  108. package/package/components/CustomSso.svelte +7 -7
  109. package/package/components/DBManager.svelte +147 -44
  110. package/package/components/DBManager.svelte.d.ts +15 -2
  111. package/package/components/DBManagerContent.svelte +30 -63
  112. package/package/components/DBManagerContent.svelte.d.ts +39 -4
  113. package/package/components/DBManagerDrawer.svelte +9 -9
  114. package/package/components/DBTable.svelte +1 -1
  115. package/package/components/DBTable.svelte.d.ts +3 -1
  116. package/package/components/DBTableEditor.svelte +234 -178
  117. package/package/components/DBTableEditor.svelte.d.ts +22 -3
  118. package/package/components/DatatablePicker.svelte +29 -0
  119. package/package/components/DatatablePicker.svelte.d.ts +13 -0
  120. package/package/components/DateInput.svelte +29 -35
  121. package/package/components/DateInput.svelte.d.ts +10 -11
  122. package/package/components/DateTimeInput.svelte +3 -3
  123. package/package/components/DedicatedWorkersSelector.svelte +566 -0
  124. package/package/components/DedicatedWorkersSelector.svelte.d.ts +8 -0
  125. package/package/components/DeployToSetting.svelte +183 -123
  126. package/package/components/DeployToSetting.svelte.d.ts +19 -28
  127. package/package/components/DeployWorkspace.svelte +111 -72
  128. package/package/components/DeployWorkspace.svelte.d.ts +2 -1
  129. package/package/components/DeployWorkspaceDrawer.svelte +18 -7
  130. package/package/components/DeployWorkspaceDrawer.svelte.d.ts +3 -20
  131. package/package/components/Description.svelte +5 -2
  132. package/package/components/Dev.svelte +37 -2
  133. package/package/components/DiffDrawer.svelte +8 -29
  134. package/package/components/DiffEditor.svelte +39 -8
  135. package/package/components/DiffEditor.svelte.d.ts +2 -6
  136. package/package/components/DisplayResult.svelte +34 -26
  137. package/package/components/DropdownMenu.svelte +39 -0
  138. package/package/components/DropdownMenu.svelte.d.ts +14 -0
  139. package/package/components/DropdownSubmenuItem.svelte +68 -0
  140. package/package/components/DropdownSubmenuItem.svelte.d.ts +10 -0
  141. package/package/components/DropdownV2.svelte +5 -4
  142. package/package/components/DropdownV2.svelte.d.ts +1 -0
  143. package/package/components/DropdownV2Inner.svelte +42 -34
  144. package/package/components/DropdownV2Inner.svelte.d.ts +2 -1
  145. package/package/components/DucklakePicker.svelte +2 -5
  146. package/package/components/EEOnly.svelte +4 -14
  147. package/package/components/EEOnly.svelte.d.ts +0 -1
  148. package/package/components/Editor.svelte +72 -27
  149. package/package/components/Editor.svelte.d.ts +4 -0
  150. package/package/components/EditorBar.svelte +3 -5
  151. package/package/components/ErrorOrRecoveryHandler.svelte +62 -53
  152. package/package/components/ErrorOrRecoveryHandler.svelte.d.ts +1 -0
  153. package/package/components/ExploreAssetButton.svelte +1 -2
  154. package/package/components/FakeMonacoPlaceHolder.svelte +1 -1
  155. package/package/components/FileExplorer.svelte +249 -0
  156. package/package/components/FileExplorer.svelte.d.ts +21 -0
  157. package/package/components/FilesetEditor.svelte +103 -0
  158. package/package/components/FilesetEditor.svelte.d.ts +6 -0
  159. package/package/components/FilterSearchbar.svelte +628 -0
  160. package/package/components/FilterSearchbar.svelte.d.ts +86 -0
  161. package/package/components/FlowBuilder.svelte +140 -90
  162. package/package/components/FlowDiffViewer.svelte +37 -0
  163. package/package/components/FlowDiffViewer.svelte.d.ts +7 -0
  164. package/package/components/FlowGraphViewer.svelte +5 -2
  165. package/package/components/FlowGraphViewer.svelte.d.ts +2 -0
  166. package/package/components/FlowGraphViewerStep.svelte +49 -33
  167. package/package/components/FlowHistoryJobPicker.svelte +2 -1
  168. package/package/components/FlowJobResult.svelte +31 -23
  169. package/package/components/FlowJobResult.svelte.d.ts +0 -1
  170. package/package/components/FlowLogRow.svelte +1 -1
  171. package/package/components/FlowLogViewer.svelte +8 -3
  172. package/package/components/FlowLoopIterationPreview.svelte.d.ts +1 -1
  173. package/package/components/FlowPreviewContent.svelte +67 -50
  174. package/package/components/FlowPreviewContent.svelte.d.ts +5 -1
  175. package/package/components/FlowRestartButton.svelte +48 -49
  176. package/package/components/FlowRestartButton.svelte.d.ts +5 -0
  177. package/package/components/FlowStatusViewer.svelte +2 -3
  178. package/package/components/FlowStatusViewer.svelte.d.ts +1 -0
  179. package/package/components/FlowStatusViewerInner.svelte +411 -308
  180. package/package/components/FlowStatusViewerInner.svelte.d.ts +3 -3
  181. package/package/components/FlowStatusWaitingForEvents.svelte +34 -29
  182. package/package/components/FlowStatusWaitingForEvents.svelte.d.ts +4 -18
  183. package/package/components/FlowViewer.svelte +103 -2
  184. package/package/components/FlowViewer.svelte.d.ts +9 -3
  185. package/package/components/FolderPicker.svelte +195 -65
  186. package/package/components/FolderPicker.svelte.d.ts +2 -0
  187. package/package/components/ForkWorkspaceBanner.svelte +32 -13
  188. package/package/components/GraphqlSchemaViewer.svelte +8 -1
  189. package/package/components/HistoricInputs.svelte +24 -27
  190. package/package/components/HistoricInputs.svelte.d.ts +2 -2
  191. package/package/components/IconedResourceType.svelte +8 -2
  192. package/package/components/IconedResourceType.svelte.d.ts +2 -0
  193. package/package/components/InfiniteList.svelte +27 -20
  194. package/package/components/InfiniteList.svelte.d.ts +2 -0
  195. package/package/components/InputError.svelte +9 -0
  196. package/package/components/InputError.svelte.d.ts +6 -0
  197. package/package/components/InputTransformForm.svelte +46 -39
  198. package/package/components/InputTransformForm.svelte.d.ts +1 -0
  199. package/package/components/InputTransformSchemaForm.svelte +2 -1
  200. package/package/components/InputTransformSchemaForm.svelte.d.ts +1 -0
  201. package/package/components/InputTransformsViewer.svelte +37 -20
  202. package/package/components/InstanceNameEditor.svelte +3 -1
  203. package/package/components/InstanceSetting.svelte +187 -373
  204. package/package/components/InstanceSetting.svelte.d.ts +1 -0
  205. package/package/components/InstanceSettings.svelte +804 -193
  206. package/package/components/InstanceSettings.svelte.d.ts +17 -2
  207. package/package/components/IntegerInput.svelte +58 -0
  208. package/package/components/IntegerInput.svelte.d.ts +14 -0
  209. package/package/components/InviteGlobalUser.svelte +25 -25
  210. package/package/components/InviteGlobalUser.svelte.d.ts +4 -2
  211. package/package/components/InviteUser.svelte +16 -42
  212. package/package/components/InviteUser.svelte.d.ts +4 -18
  213. package/package/components/JobArgs.svelte +14 -10
  214. package/package/components/JobLoader.svelte +6 -4
  215. package/package/components/JobLoader.svelte.d.ts +3 -3
  216. package/package/components/JobOtelTraces.svelte +287 -0
  217. package/package/components/JobOtelTraces.svelte.d.ts +6 -0
  218. package/package/components/JobStatus.svelte +29 -26
  219. package/package/components/JobStatus.svelte.d.ts +1 -0
  220. package/package/components/JsonInputs.svelte +6 -8
  221. package/package/components/JsonInputs.svelte.d.ts +7 -8
  222. package/package/components/KanidmSetting.svelte +3 -2
  223. package/package/components/KeycloakSetting.svelte +3 -2
  224. package/package/components/LogViewer.svelte +91 -33
  225. package/package/components/Login.svelte +36 -3
  226. package/package/components/ManualPopover.svelte +5 -6
  227. package/package/components/ManualPopover.svelte.d.ts +9 -35
  228. package/package/components/MemoryFootprintViewer.svelte +2 -6
  229. package/package/components/ModulePreview.svelte +23 -21
  230. package/package/components/ModulePreview.svelte.d.ts +1 -0
  231. package/package/components/ModuleStatus.svelte +5 -5
  232. package/package/components/ModuleTest.svelte +3 -3
  233. package/package/components/MoveDrawer.svelte +47 -76
  234. package/package/components/MoveDrawer.svelte.d.ts +4 -6
  235. package/package/components/NextcloudSetting.svelte +4 -3
  236. package/package/components/NoDirectDeployAlert.svelte +31 -0
  237. package/package/components/NoDirectDeployAlert.svelte.d.ts +6 -0
  238. package/package/components/NumberTypeNarrowing.svelte +65 -67
  239. package/package/components/NumberTypeNarrowing.svelte.d.ts +2 -1
  240. package/package/components/OAuthSetting.svelte +7 -14
  241. package/package/components/ObjectStoreConfigSettings.svelte +150 -55
  242. package/package/components/ObjectStoreConfigSettings.svelte.d.ts +34 -44
  243. package/package/components/OktaSetting.svelte +3 -2
  244. package/package/components/PageHeader.svelte +1 -1
  245. package/package/components/ParentWorkspaceProtectionAlert.svelte +48 -0
  246. package/package/components/ParentWorkspaceProtectionAlert.svelte.d.ts +7 -0
  247. package/package/components/Path.svelte +41 -29
  248. package/package/components/Path.svelte.d.ts +4 -1
  249. package/package/components/PocketIdSetting.svelte +83 -0
  250. package/package/components/PocketIdSetting.svelte.d.ts +6 -0
  251. package/package/components/ResourceEditor.svelte +13 -7
  252. package/package/components/ResourcePicker.svelte +6 -5
  253. package/package/components/ResourcePicker.svelte.d.ts +1 -0
  254. package/package/components/RightClickPopover.svelte +37 -0
  255. package/package/components/RightClickPopover.svelte.d.ts +11 -0
  256. package/package/components/RunButton.svelte +5 -15
  257. package/package/components/RunButton.svelte.d.ts +7 -19
  258. package/package/components/RunChart.svelte +9 -24
  259. package/package/components/RunChart.svelte.d.ts +2 -5
  260. package/package/components/RunForm.svelte +9 -17
  261. package/package/components/RunForm.svelte.d.ts +0 -1
  262. package/package/components/RunFormAdvancedPopup.svelte +1 -1
  263. package/package/components/RunsPage.svelte +489 -926
  264. package/package/components/RunsPage.svelte.d.ts +5 -5
  265. package/package/components/S3FilePicker.svelte +7 -11
  266. package/package/components/S3FilePickerInner.svelte +2 -3
  267. package/package/components/S3FilePickerInner.svelte.d.ts +2 -2
  268. package/package/components/SaveButton.svelte +78 -0
  269. package/package/components/SaveButton.svelte.d.ts +12 -0
  270. package/package/components/SaveInputsButton.svelte +1 -1
  271. package/package/components/SavedInputsPicker.svelte +1 -1
  272. package/package/components/SavedInputsV2.svelte +36 -39
  273. package/package/components/SchemaForm.svelte +26 -19
  274. package/package/components/SchemaFormWithArgPicker.svelte +34 -29
  275. package/package/components/SchemaFormWithArgPicker.svelte.d.ts +12 -21
  276. package/package/components/SchemaViewer.svelte +56 -53
  277. package/package/components/ScriptBuilder.svelte +13 -13
  278. package/package/components/ScriptEditor.svelte +574 -98
  279. package/package/components/Section.svelte +5 -3
  280. package/package/components/ServiceLogsInner.svelte +21 -82
  281. package/package/components/ShareModal.svelte.d.ts +1 -1
  282. package/package/components/SimpleEditor.svelte +46 -2
  283. package/package/components/Star.svelte +13 -31
  284. package/package/components/Star.svelte.d.ts +8 -21
  285. package/package/components/StringTypeNarrowing.svelte +1 -0
  286. package/package/components/StringTypeNarrowing.svelte.d.ts +1 -1
  287. package/package/components/SummaryPathDisplay.svelte +177 -0
  288. package/package/components/SummaryPathDisplay.svelte.d.ts +10 -0
  289. package/package/components/SuperadminSettings.svelte +185 -4
  290. package/package/components/SuperadminSettings.svelte.d.ts +4 -1
  291. package/package/components/SuperadminSettingsInner.svelte +307 -192
  292. package/package/components/SuperadminSettingsInner.svelte.d.ts +12 -1
  293. package/package/components/TaggedTextInput.svelte +449 -0
  294. package/package/components/TaggedTextInput.svelte.d.ts +28 -0
  295. package/package/components/TemplateEditor.svelte +54 -29
  296. package/package/components/TemplateEditor.svelte.d.ts +13 -102
  297. package/package/components/TimeAgo.svelte +49 -7
  298. package/package/components/TimeAgo.svelte.d.ts +1 -0
  299. package/package/components/Toast.svelte +72 -50
  300. package/package/components/Toast.svelte.d.ts +2 -2
  301. package/package/components/Tooltip.svelte +2 -2
  302. package/package/components/Tooltip.svelte.d.ts +2 -0
  303. package/package/components/TooltipInner.svelte +6 -1
  304. package/package/components/TooltipInner.svelte.d.ts +1 -0
  305. package/package/components/Uptodate.svelte +3 -2
  306. package/package/components/UserSettings.svelte +3 -3
  307. package/package/components/UserSettings.svelte.d.ts +1 -0
  308. package/package/components/WorkerGroup.svelte +353 -210
  309. package/package/components/WorkerGroup.svelte.d.ts +3 -0
  310. package/package/components/WorkerTagPicker.svelte +1 -1
  311. package/package/components/WorkerTagSelect.svelte +5 -2
  312. package/package/components/WorkspaceDependenciesEditor.svelte +33 -17
  313. package/package/components/WorkspaceTutorials.svelte +5 -0
  314. package/package/components/ZitadelSetting.svelte +3 -2
  315. package/package/components/aiProviderStorage.d.ts +5 -0
  316. package/package/components/aiProviderStorage.js +50 -0
  317. package/package/components/apps/components/buttons/AppButton.svelte +21 -6
  318. package/package/components/apps/components/buttons/AppForm.svelte +2 -1
  319. package/package/components/apps/components/buttons/AppFormButton.svelte +2 -1
  320. package/package/components/apps/components/display/InsertRowDrawerButton.svelte +1 -1
  321. package/package/components/apps/components/display/dbtable/AppDbExplorer.svelte +24 -16
  322. package/package/components/apps/components/display/dbtable/dbFeatures.d.ts +9 -0
  323. package/package/components/apps/components/display/dbtable/dbFeatures.js +32 -0
  324. package/package/components/apps/components/display/dbtable/metadata.d.ts +4 -3
  325. package/package/components/apps/components/display/dbtable/metadata.js +178 -148
  326. package/package/components/apps/components/display/dbtable/queries/alterTable.d.ts +46 -0
  327. package/package/components/apps/components/display/dbtable/queries/alterTable.js +322 -0
  328. package/package/components/apps/components/display/dbtable/queries/alterTable.test.d.ts +1 -0
  329. package/package/components/apps/components/display/dbtable/queries/alterTable.test.js +867 -0
  330. package/package/components/apps/components/display/dbtable/queries/count.js +3 -1
  331. package/package/components/apps/components/display/dbtable/queries/createTable.d.ts +2 -24
  332. package/package/components/apps/components/display/dbtable/queries/createTable.js +13 -25
  333. package/package/components/apps/components/display/dbtable/queries/dbQueriesUtils.d.ts +9 -0
  334. package/package/components/apps/components/display/dbtable/queries/dbQueriesUtils.js +45 -0
  335. package/package/components/apps/components/display/dbtable/queries/delete.js +3 -1
  336. package/package/components/apps/components/display/dbtable/queries/insert.js +3 -1
  337. package/package/components/apps/components/display/dbtable/queries/relationalKeys.d.ts +45 -0
  338. package/package/components/apps/components/display/dbtable/queries/relationalKeys.js +401 -0
  339. package/package/components/apps/components/display/dbtable/queries/select.d.ts +2 -0
  340. package/package/components/apps/components/display/dbtable/queries/select.js +52 -7
  341. package/package/components/apps/components/display/dbtable/queries/update.js +3 -1
  342. package/package/components/apps/components/display/dbtable/tableEditor.d.ts +35 -0
  343. package/package/components/apps/components/display/dbtable/tableEditor.js +67 -0
  344. package/package/components/apps/components/display/dbtable/utils.d.ts +2 -0
  345. package/package/components/apps/components/display/dbtable/utils.js +61 -36
  346. package/package/components/apps/components/display/table/AppAggridExplorerTable.svelte +6 -0
  347. package/package/components/apps/components/display/table/AppAggridInfiniteTable.svelte +1 -0
  348. package/package/components/apps/components/display/table/AppAggridTable.svelte +15 -0
  349. package/package/components/apps/components/display/table/AppAggridTableActions.svelte +16 -10
  350. package/package/components/apps/components/display/table/AppAggridTableActions.svelte.d.ts +2 -1
  351. package/package/components/apps/components/display/table/theme/windmill-theme.css +8 -7
  352. package/package/components/apps/components/helpers/HiddenComponent.svelte +1 -1
  353. package/package/components/apps/components/helpers/InputValue.svelte +1 -1
  354. package/package/components/apps/components/helpers/ResolveConfig.svelte +1 -1
  355. package/package/components/apps/components/helpers/RunnableComponent.svelte +3 -2
  356. package/package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +1 -1
  357. package/package/components/apps/components/helpers/RunnableWrapper.svelte +2 -2
  358. package/package/components/apps/components/helpers/eval.js +5 -2
  359. package/package/components/apps/components/inputs/AppMultiSelectV2.svelte +2 -4
  360. package/package/components/apps/components/layout/AppModal.svelte +2 -1
  361. package/package/components/apps/components/layout/AppModal.svelte.d.ts +1 -0
  362. package/package/components/apps/editor/AppEditorHeader.svelte +8 -1
  363. package/package/components/apps/editor/AppEditorHeaderDeploy.svelte +32 -29
  364. package/package/components/apps/editor/AppEditorHeaderDeploy.svelte.d.ts +2 -2
  365. package/package/components/apps/editor/AppEditorHeaderDeployInitialDraft.svelte +4 -4
  366. package/package/components/apps/editor/AppEditorHeaderDeployInitialDraft.svelte.d.ts +3 -3
  367. package/package/components/apps/editor/PublicApp.svelte +49 -30
  368. package/package/components/apps/editor/PublicApp.svelte.d.ts +1 -0
  369. package/package/components/apps/editor/appPolicy.js +5 -4
  370. package/package/components/apps/editor/appUtils.d.ts +1 -1
  371. package/package/components/apps/editor/component/components.d.ts +11 -0
  372. package/package/components/apps/editor/component/components.js +19 -2
  373. package/package/components/apps/editor/componentsPanel/CssProperty.svelte +3 -1
  374. package/package/components/apps/editor/inlineScriptsPanel/CacheTtlPopup.svelte +1 -1
  375. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte +77 -7
  376. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte.d.ts +2 -2
  377. package/package/components/apps/editor/inlineScriptsPanel/utils.d.ts +2 -2
  378. package/package/components/apps/editor/inlineScriptsPanel/utils.js +10 -1
  379. package/package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +1 -1
  380. package/package/components/apps/editor/settingsPanel/OneOfInputSpecsEditor.svelte +1 -1
  381. package/package/components/apps/editor/settingsPanel/StylePanel.svelte +66 -29
  382. package/package/components/apps/editor/settingsPanel/StylePanel.svelte.d.ts +2 -17
  383. package/package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +10 -0
  384. package/package/components/apps/inputType.d.ts +8 -3
  385. package/package/components/assets/AssetButtons.svelte +3 -7
  386. package/package/components/assets/AssetButtons.svelte.d.ts +2 -4
  387. package/package/components/assets/AssetColumnBadges.svelte +35 -0
  388. package/package/components/assets/AssetColumnBadges.svelte.d.ts +10 -0
  389. package/package/components/assets/AssetsDropdownButton.svelte +9 -7
  390. package/package/components/assets/AssetsUsageDrawer.svelte +100 -27
  391. package/package/components/assets/AssetsUsageDrawer.svelte.d.ts +5 -6
  392. package/package/components/assets/JobAssetsViewer.svelte +4 -6
  393. package/package/components/assets/assetsFilter.d.ts +50 -0
  394. package/package/components/assets/assetsFilter.js +43 -0
  395. package/package/components/assets/lib.d.ts +6 -4
  396. package/package/components/assets/lib.js +11 -2
  397. package/package/components/auditLogs/AuditLogsFilters.svelte +39 -18
  398. package/package/components/auditLogs/AuditLogsFilters.svelte.d.ts +1 -1
  399. package/package/components/common/CloseButton.svelte +2 -1
  400. package/package/components/common/CloseButton.svelte.d.ts +1 -0
  401. package/package/components/common/InlineCalendarInput.svelte +580 -0
  402. package/package/components/common/InlineCalendarInput.svelte.d.ts +31 -0
  403. package/package/components/common/alert/Alert.svelte +2 -8
  404. package/package/components/common/alert/model.d.ts +1 -0
  405. package/package/components/common/alert/model.js +7 -0
  406. package/package/components/common/badge/Badge.svelte +7 -3
  407. package/package/components/common/badge/Badge.svelte.d.ts +1 -0
  408. package/package/components/common/badge/CountBadge.svelte +4 -3
  409. package/package/components/common/badge/CountBadge.svelte.d.ts +1 -0
  410. package/package/components/common/breadcrumb/Breadcrumb.svelte +10 -14
  411. package/package/components/common/breadcrumb/Breadcrumb.svelte.d.ts +8 -23
  412. package/package/components/common/button/Button.svelte +1 -1
  413. package/package/components/common/button/model.js +1 -1
  414. package/package/components/common/calendarPicker/CalendarPicker.svelte.d.ts +1 -1
  415. package/package/components/common/confirmationModal/ConfirmationModal.svelte +2 -1
  416. package/package/components/common/confirmationModal/ConfirmationModal.svelte.d.ts +1 -0
  417. package/package/components/common/drawer/Drawer.svelte +4 -1
  418. package/package/components/common/drawer/DrawerContent.svelte +7 -4
  419. package/package/components/common/drawer/DrawerContent.svelte.d.ts +1 -0
  420. package/package/components/common/languageIcons/TypeScript.svelte +5 -3
  421. package/package/components/common/languageIcons/TypeScript.svelte.d.ts +1 -0
  422. package/package/components/common/modal/Modal.svelte +3 -3
  423. package/package/components/common/modal/Modal2.svelte +1 -0
  424. package/package/components/common/seconds/SecondsInput.svelte +158 -67
  425. package/package/components/common/seconds/SecondsInput.svelte.d.ts +9 -21
  426. package/package/components/common/sidebar/SidebarNavigation.svelte +50 -0
  427. package/package/components/common/sidebar/SidebarNavigation.svelte.d.ts +25 -0
  428. package/package/components/common/table/AppRow.svelte +7 -7
  429. package/package/components/common/table/AppRow.svelte.d.ts +2 -2
  430. package/package/components/common/table/FlowRow.svelte +12 -12
  431. package/package/components/common/table/FlowRow.svelte.d.ts +2 -2
  432. package/package/components/common/table/RawAppRow.svelte +5 -79
  433. package/package/components/common/table/RawAppRow.svelte.d.ts +2 -23
  434. package/package/components/common/table/Row.svelte +11 -21
  435. package/package/components/common/table/Row.svelte.d.ts +3 -21
  436. package/package/components/common/table/RowIcon.svelte +6 -2
  437. package/package/components/common/table/RowIcon.svelte.d.ts +1 -1
  438. package/package/components/common/table/ScriptRow.svelte +8 -8
  439. package/package/components/common/table/ScriptRow.svelte.d.ts +2 -2
  440. package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte +1 -1
  441. package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte.d.ts +1 -1
  442. package/package/components/copilot/TestAIKey.svelte +1 -1
  443. package/package/components/copilot/autocomplete/Autocompletor.d.ts +1 -1
  444. package/package/components/copilot/autocomplete/Autocompletor.js +7 -6
  445. package/package/components/copilot/autocomplete/request.js +13 -9
  446. package/package/components/copilot/chat/AIButtonStyle.d.ts +1 -1
  447. package/package/components/copilot/chat/AIButtonStyle.js +2 -1
  448. package/package/components/copilot/chat/AIChat.svelte +3 -1
  449. package/package/components/copilot/chat/AIChatDisplay.svelte +89 -4
  450. package/package/components/copilot/chat/AIChatInput.svelte +291 -5
  451. package/package/components/copilot/chat/AIChatManager.svelte.js +122 -18
  452. package/package/components/copilot/chat/AiChatLayout.svelte +15 -30
  453. package/package/components/copilot/chat/AppAvailableContextList.svelte +263 -0
  454. package/package/components/copilot/chat/AppAvailableContextList.svelte.d.ts +13 -0
  455. package/package/components/copilot/chat/AvailableContextList.svelte +215 -12
  456. package/package/components/copilot/chat/AvailableContextList.svelte.d.ts +1 -0
  457. package/package/components/copilot/chat/ContextElementBadge.svelte +44 -0
  458. package/package/components/copilot/chat/ContextTextarea.svelte +15 -2
  459. package/package/components/copilot/chat/DatatableCreationPolicy.svelte +32 -33
  460. package/package/components/copilot/chat/ProviderModelSelector.svelte +1 -1
  461. package/package/components/copilot/chat/__tests__/app/appEvalHelpers.js +3 -0
  462. package/package/components/copilot/chat/__tests__/app/variants/streamlined.js +1 -1
  463. package/package/components/copilot/chat/__tests__/flow/flowEvalHelpers.js +4 -0
  464. package/package/components/copilot/chat/__tests__/flow/variants/minimal-single-tool.js +4 -2
  465. package/package/components/copilot/chat/app/core.d.ts +56 -15
  466. package/package/components/copilot/chat/app/core.js +148 -108
  467. package/package/components/copilot/chat/context.js +9 -2
  468. package/package/components/copilot/chat/flow/FlowAIChat.svelte +22 -0
  469. package/package/components/copilot/chat/flow/core.d.ts +3 -1
  470. package/package/components/copilot/chat/flow/core.js +221 -62
  471. package/package/components/copilot/chat/flow/openFlow.json +1 -1
  472. package/package/components/copilot/chat/flow/openFlowZod.d.ts +3 -2
  473. package/package/components/copilot/chat/flow/openFlowZod.js +16 -6
  474. package/package/components/copilot/chat/navigator/core.d.ts +2 -2
  475. package/package/components/copilot/chat/navigator/core.js +11 -2
  476. package/package/components/copilot/chat/script/core.d.ts +4 -1
  477. package/package/components/copilot/chat/script/core.js +46 -6
  478. package/package/components/copilot/chat/shared.d.ts +63 -1
  479. package/package/components/copilot/chat/shared.js +251 -1
  480. package/package/components/copilot/lib.d.ts +1 -1
  481. package/package/components/copilot/lib.js +44 -9
  482. package/package/components/copilot/utils.d.ts +5 -0
  483. package/package/components/copilot/utils.js +8 -0
  484. package/package/components/custom_ui.d.ts +2 -0
  485. package/package/components/dbOps.d.ts +18 -4
  486. package/package/components/dbOps.js +25 -3
  487. package/package/components/debug/DebugConsole.svelte +277 -0
  488. package/package/components/debug/DebugConsole.svelte.d.ts +13 -0
  489. package/package/components/debug/DebugPanel.svelte +97 -0
  490. package/package/components/debug/DebugPanel.svelte.d.ts +11 -0
  491. package/package/components/debug/DebugToolbar.svelte +148 -0
  492. package/package/components/debug/DebugToolbar.svelte.d.ts +17 -0
  493. package/package/components/debug/DebugVariableViewer.svelte +115 -0
  494. package/package/components/debug/DebugVariableViewer.svelte.d.ts +11 -0
  495. package/package/components/debug/MonacoDebugger.svelte +384 -0
  496. package/package/components/debug/MonacoDebugger.svelte.d.ts +15 -0
  497. package/package/components/debug/dapClient.d.ts +192 -0
  498. package/package/components/debug/dapClient.js +426 -0
  499. package/package/components/debug/debugUtils.d.ts +30 -0
  500. package/package/components/debug/debugUtils.js +131 -0
  501. package/package/components/debug/index.d.ts +75 -0
  502. package/package/components/debug/index.js +82 -0
  503. package/package/components/dedicated_worker.d.ts +7 -0
  504. package/package/components/dedicated_worker.js +36 -0
  505. package/package/components/details/DetailPageHeader.svelte +11 -12
  506. package/package/components/details/DetailPageHeader.svelte.d.ts +3 -1
  507. package/package/components/details/DetailPageLayout.svelte +11 -2
  508. package/package/components/details/DetailPageLayout.svelte.d.ts +1 -0
  509. package/package/components/details/createAppFromScript.d.ts +136 -16
  510. package/package/components/details/createAppFromScript.js +13 -12
  511. package/package/components/diffEditorTypes.d.ts +6 -0
  512. package/package/components/diffEditorTypes.js +1 -0
  513. package/package/components/flows/CreateActionsApp.svelte +32 -80
  514. package/package/components/flows/CreateActionsFlow.svelte +28 -28
  515. package/package/components/flows/DebounceLimit.svelte.d.ts +1 -1
  516. package/package/components/flows/FlowAssetsHandler.svelte +1 -4
  517. package/package/components/flows/FlowHistoryInner.svelte +15 -4
  518. package/package/components/flows/FlowProgressBar.svelte +37 -1
  519. package/package/components/flows/FlowProgressBar.svelte.d.ts +3 -0
  520. package/package/components/flows/agentToolUtils.d.ts +18 -0
  521. package/package/components/flows/agentToolUtils.js +47 -0
  522. package/package/components/flows/common/FlowCardHeader.svelte +8 -9
  523. package/package/components/flows/content/AgentToolWrapper.svelte +1 -1
  524. package/package/components/flows/content/FlowEditorDrawer.svelte +124 -0
  525. package/package/components/{schema/SchemaPicker.svelte.d.ts → flows/content/FlowEditorDrawer.svelte.d.ts} +8 -13
  526. package/package/components/flows/content/FlowEnvironmentVariables.svelte +3 -2
  527. package/package/components/flows/content/FlowInput.svelte +211 -37
  528. package/package/components/flows/content/FlowLoop.svelte +3 -4
  529. package/package/components/flows/content/FlowModuleCache.svelte +1 -3
  530. package/package/components/flows/content/FlowModuleComponent.svelte +571 -69
  531. package/package/components/flows/content/FlowModuleEarlyStop.svelte +8 -10
  532. package/package/components/flows/content/FlowModuleHeader.svelte +7 -4
  533. package/package/components/flows/content/FlowModuleSleep.svelte +1 -1
  534. package/package/components/flows/content/FlowModuleWorkerTagSelect.svelte +1 -1
  535. package/package/components/flows/content/FlowResult.svelte +77 -25
  536. package/package/components/flows/content/FlowRetries.svelte +1 -1
  537. package/package/components/flows/content/FlowSettings.svelte +4 -7
  538. package/package/components/flows/content/McpOAuthConnect.svelte +217 -0
  539. package/package/components/flows/content/McpOAuthConnect.svelte.d.ts +7 -0
  540. package/package/components/flows/content/McpToolEditor.svelte +50 -37
  541. package/package/components/flows/content/McpToolEditor.svelte.d.ts +0 -1
  542. package/package/components/flows/conversations/FlowChat.svelte +16 -2
  543. package/package/components/flows/conversations/FlowChat.svelte.d.ts +2 -1
  544. package/package/components/flows/conversations/FlowChatInterface.svelte +103 -6
  545. package/package/components/flows/conversations/FlowChatInterface.svelte.d.ts +2 -0
  546. package/package/components/flows/conversations/FlowChatManager.svelte.js +53 -21
  547. package/package/components/flows/conversations/FlowConversationsSidebar.svelte +79 -77
  548. package/package/components/flows/flowState.js +6 -0
  549. package/package/components/flows/flowStateUtils.svelte.js +4 -1
  550. package/package/components/flows/flowStore.svelte.d.ts +1 -1
  551. package/package/components/flows/flowStore.svelte.js +4 -2
  552. package/package/components/flows/header/FlowImportExportMenu.svelte +1 -1
  553. package/package/components/flows/header/FlowPreviewButtons.svelte +2 -1
  554. package/package/components/flows/header/FlowYamlEditor.svelte +2 -2
  555. package/package/components/flows/map/FlowModuleSchemaMap.svelte +12 -6
  556. package/package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +2 -2
  557. package/package/components/flows/map/InsertModuleInner.svelte +7 -0
  558. package/package/components/flows/map/InsertModuleInner.svelte.d.ts +1 -0
  559. package/package/components/flows/missingInputWarnings.js +7 -0
  560. package/package/components/flows/pickers/PickHubScriptQuick.svelte +4 -4
  561. package/package/components/flows/propPicker/OutputPicker.svelte +1 -1
  562. package/package/components/flows/propPicker/OutputPickerInner.svelte.d.ts +1 -1
  563. package/package/components/flows/propPicker/PropPickerWrapper.svelte +9 -10
  564. package/package/components/flows/propPicker/PropPickerWrapper.svelte.d.ts +3 -3
  565. package/package/components/flows/scheduleUtils.js +2 -2
  566. package/package/components/flows/types.d.ts +3 -3
  567. package/package/components/flows/utils.svelte.js +5 -1
  568. package/package/components/git_sync/GitSyncRepositoryCard.svelte +33 -23
  569. package/package/components/git_sync/GitSyncSection.svelte +24 -27
  570. package/package/components/graph/FlowGraphV2.svelte +8 -2
  571. package/package/components/graph/graphBuilder.svelte.d.ts +3 -1
  572. package/package/components/graph/model.d.ts +1 -1
  573. package/package/components/graph/renderers/nodes/AIToolNode.svelte +3 -1
  574. package/package/components/graph/renderers/nodes/AssetNode.svelte +25 -13
  575. package/package/components/graph/renderers/nodes/AssetsOverflowedNode.svelte +1 -1
  576. package/package/components/graph/renderers/nodes/NewAIToolNode.svelte +8 -0
  577. package/package/components/graph/renderers/triggers/TriggersBadge.svelte +44 -24
  578. package/package/components/home/Item.svelte +9 -15
  579. package/package/components/home/Item.svelte.d.ts +8 -7
  580. package/package/components/home/ItemsList.svelte +11 -16
  581. package/package/components/home/ItemsList.svelte.d.ts +1 -0
  582. package/package/components/home/TutorialBanner.svelte +34 -18
  583. package/package/components/home/treeViewUtils.js +1 -1
  584. package/package/components/icons/CssIcon.svelte +20 -0
  585. package/package/components/icons/CssIcon.svelte.d.ts +7 -25
  586. package/package/components/icons/GoogleCalendarIcon.svelte +41 -0
  587. package/package/components/icons/GoogleCalendarIcon.svelte.d.ts +7 -0
  588. package/package/components/icons/GoogleDriveIcon.svelte +30 -0
  589. package/package/components/icons/GoogleDriveIcon.svelte.d.ts +7 -0
  590. package/package/components/icons/GoogleIcon.svelte +15 -6
  591. package/package/components/icons/GoogleIcon.svelte.d.ts +5 -2
  592. package/package/components/icons/HtmlIcon.svelte +20 -0
  593. package/package/components/icons/HtmlIcon.svelte.d.ts +8 -0
  594. package/package/components/icons/JavaScriptIcon.svelte +10 -2
  595. package/package/components/icons/JavaScriptIcon.svelte.d.ts +1 -0
  596. package/package/components/icons/JsonIcon.svelte +8 -2
  597. package/package/components/icons/JsonIcon.svelte.d.ts +1 -0
  598. package/package/components/icons/LessIcon.svelte +16 -0
  599. package/package/components/icons/LessIcon.svelte.d.ts +8 -0
  600. package/package/components/icons/MSSqlServerIcon.svelte +111 -47
  601. package/package/components/icons/MarkdownIcon.svelte +20 -0
  602. package/package/components/icons/MarkdownIcon.svelte.d.ts +8 -0
  603. package/package/components/icons/NextcloudIcon.svelte +3 -2
  604. package/package/components/icons/NextcloudIcon.svelte.d.ts +2 -0
  605. package/package/components/icons/PocketIdIcon.svelte +9 -0
  606. package/package/components/icons/PocketIdIcon.svelte.d.ts +9 -0
  607. package/package/components/icons/ReactIcon.svelte +10 -2
  608. package/package/components/icons/ReactIcon.svelte.d.ts +1 -0
  609. package/package/components/icons/SassIcon.svelte +28 -0
  610. package/package/components/icons/SassIcon.svelte.d.ts +8 -0
  611. package/package/components/icons/SvelteIcon.svelte +10 -2
  612. package/package/components/icons/SvelteIcon.svelte.d.ts +1 -0
  613. package/package/components/icons/VueIcon.svelte +10 -2
  614. package/package/components/icons/VueIcon.svelte.d.ts +1 -0
  615. package/package/components/icons/YamlIcon.svelte +20 -0
  616. package/package/components/icons/YamlIcon.svelte.d.ts +8 -0
  617. package/package/components/icons/index.js +3 -1
  618. package/package/components/instanceSettings/IndexerJobIndexSettings.svelte +94 -0
  619. package/package/components/instanceSettings/IndexerJobIndexSettings.svelte.d.ts +9 -0
  620. package/package/components/instanceSettings/IndexerLogIndexSettings.svelte +67 -0
  621. package/package/components/instanceSettings/IndexerLogIndexSettings.svelte.d.ts +9 -0
  622. package/package/components/instanceSettings/IndexerMemorySettings.svelte +109 -0
  623. package/package/components/instanceSettings/IndexerMemorySettings.svelte.d.ts +9 -0
  624. package/package/components/instanceSettings/SecretBackendConfig.svelte +513 -0
  625. package/package/components/instanceSettings/SecretBackendConfig.svelte.d.ts +8 -0
  626. package/package/components/instanceSettings/SettingCard.svelte +47 -0
  627. package/package/components/instanceSettings/SettingCard.svelte.d.ts +19 -0
  628. package/package/components/instanceSettings/SettingsSearchInput.svelte +66 -0
  629. package/package/components/instanceSettings/SettingsSearchInput.svelte.d.ts +9 -0
  630. package/package/components/instanceSettings.d.ts +54 -1
  631. package/package/components/instanceSettings.js +444 -68
  632. package/package/components/jobs/JobPreview.svelte +46 -39
  633. package/package/components/jobs/JobPreview.svelte.d.ts +1 -0
  634. package/package/components/meltComponents/MenuItem.svelte +1 -0
  635. package/package/components/meltComponents/Popover.svelte +10 -1
  636. package/package/components/meltComponents/Popover.svelte.d.ts +2 -0
  637. package/package/components/meltComponents/Tooltip.svelte +2 -1
  638. package/package/components/meltComponents/Tooltip.svelte.d.ts +1 -0
  639. package/package/components/monacoLanguagesOptions.js +16 -15
  640. package/package/components/moveRenameManager.d.ts +21 -0
  641. package/package/components/moveRenameManager.js +61 -0
  642. package/package/components/progressBar/ProgressBar.svelte +69 -27
  643. package/package/components/progressBar/ProgressBar.svelte.d.ts +7 -0
  644. package/package/components/prop_picker.d.ts +0 -3
  645. package/package/components/propertyPicker/PropPicker.svelte +47 -48
  646. package/package/components/propertyPicker/PropPicker.svelte.d.ts +12 -9
  647. package/package/components/raw_apps/DefaultDatabaseSelector.svelte +9 -5
  648. package/package/components/raw_apps/FileEditorIcon.svelte +12 -7
  649. package/package/components/raw_apps/FileEditorIcon.svelte.d.ts +2 -0
  650. package/package/components/raw_apps/FileTreeNode.svelte +120 -83
  651. package/package/components/raw_apps/RawAppBackgroundRunner.svelte +91 -10
  652. package/package/components/raw_apps/RawAppDataTableDrawer.svelte +1 -3
  653. package/package/components/raw_apps/RawAppDataTableList.svelte +12 -9
  654. package/package/components/raw_apps/RawAppEditor.svelte +237 -83
  655. package/package/components/raw_apps/RawAppEditor.svelte.d.ts +4 -4
  656. package/package/components/raw_apps/RawAppEditorHeader.svelte +105 -22
  657. package/package/components/raw_apps/RawAppEditorHeader.svelte.d.ts +1 -1
  658. package/package/components/raw_apps/RawAppHistoryList.svelte +264 -80
  659. package/package/components/raw_apps/RawAppHistoryList.svelte.d.ts +1 -0
  660. package/package/components/raw_apps/RawAppHistoryManager.svelte.d.ts +15 -1
  661. package/package/components/raw_apps/RawAppHistoryManager.svelte.js +46 -12
  662. package/package/components/raw_apps/RawAppInlineScriptEditor.svelte +549 -47
  663. package/package/components/raw_apps/RawAppInlineScriptEditor.svelte.d.ts +32 -7
  664. package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte +66 -19
  665. package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte.d.ts +1 -0
  666. package/package/components/raw_apps/RawAppInlineScriptRunnable.svelte +141 -10
  667. package/package/components/raw_apps/RawAppInlineScriptRunnable.svelte.d.ts +8 -0
  668. package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte +2 -1
  669. package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte.d.ts +9 -2
  670. package/package/components/raw_apps/RawAppInputsSpecEditor.svelte +47 -3
  671. package/package/components/raw_apps/RawAppInputsSpecEditor.svelte.d.ts +2 -2
  672. package/package/components/raw_apps/RawAppModules.svelte +13 -7
  673. package/package/components/raw_apps/RawAppPreview.svelte +48 -6
  674. package/package/components/raw_apps/RawAppSidebar.svelte +52 -235
  675. package/package/components/raw_apps/RawAppSidebar.svelte.d.ts +2 -1
  676. package/package/components/raw_apps/RunnableRow.svelte +95 -0
  677. package/package/components/raw_apps/RunnableRow.svelte.d.ts +15 -0
  678. package/package/components/raw_apps/datatableUtils.svelte.js +1 -1
  679. package/package/components/raw_apps/utils.d.ts +1 -1
  680. package/package/components/raw_apps/utils.js +76 -18
  681. package/package/components/resources/resourcesFilter.d.ts +70 -0
  682. package/package/components/resources/resourcesFilter.js +61 -0
  683. package/package/components/runs/BatchReRunOptionsPane.svelte +130 -121
  684. package/package/components/runs/BatchReRunOptionsPane.svelte.d.ts +3 -2
  685. package/package/components/runs/FlowExecutionStatus.svelte +30 -0
  686. package/package/components/runs/FlowExecutionStatus.svelte.d.ts +15 -0
  687. package/package/components/runs/JobDetailFieldConfig.d.ts +47 -0
  688. package/package/components/runs/JobDetailFieldConfig.js +433 -0
  689. package/package/components/runs/JobDetailHeader.svelte +551 -0
  690. package/package/components/runs/JobDetailHeader.svelte.d.ts +17 -0
  691. package/package/components/runs/JobRunsPreview.svelte +174 -218
  692. package/package/components/runs/JobRunsPreview.svelte.d.ts +0 -1
  693. package/package/components/runs/JobStatusIcon.svelte +47 -0
  694. package/package/components/runs/JobStatusIcon.svelte.d.ts +9 -0
  695. package/package/components/runs/NoWorkerWithTagWarning.svelte +5 -1
  696. package/package/components/runs/RunBadges.svelte +39 -34
  697. package/package/components/runs/RunBadges.svelte.d.ts +2 -1
  698. package/package/components/runs/RunRow.svelte +24 -64
  699. package/package/components/runs/RunRow.svelte.d.ts +1 -2
  700. package/package/components/runs/RunsQueue.svelte.d.ts +1 -1
  701. package/package/components/runs/RunsTable.svelte +312 -131
  702. package/package/components/runs/RunsTable.svelte.d.ts +4 -3
  703. package/package/components/runs/TimeframeSelect.svelte +189 -0
  704. package/package/components/runs/TimeframeSelect.svelte.d.ts +44 -0
  705. package/package/components/runs/runsFilter.d.ts +201 -0
  706. package/package/components/runs/runsFilter.js +182 -0
  707. package/package/components/runs/useJobsLoader.svelte.d.ts +32 -0
  708. package/package/components/runs/useJobsLoader.svelte.js +504 -0
  709. package/package/components/schedules/schedulesFilter.d.ts +65 -0
  710. package/package/components/schedules/schedulesFilter.js +60 -0
  711. package/package/components/schema/EditableSchemaWrapper.svelte +45 -24
  712. package/package/components/schema/EditableSchemaWrapper.svelte.d.ts +1 -1
  713. package/package/components/schema/FlowPropertyEditor.svelte.d.ts +1 -1
  714. package/package/components/schema/PropertyEditor.svelte +1 -0
  715. package/package/components/schema/RunningJobSchemaPicker.svelte +1 -1
  716. package/package/components/schema/editable_schema_wrapper.d.ts +1 -0
  717. package/package/components/scriptEditor/LogPanel.svelte +17 -2
  718. package/package/components/scriptEditor/LogPanel.svelte.d.ts +2 -0
  719. package/package/components/scripts/CreateActionsScript.svelte +0 -1
  720. package/package/components/search/GlobalSearchModal.svelte +1 -8
  721. package/package/components/select/GenericDropdown.svelte +113 -0
  722. package/package/components/select/GenericDropdown.svelte.d.ts +37 -0
  723. package/package/components/select/MultiSelect.svelte +1 -1
  724. package/package/components/select/Select.svelte +17 -4
  725. package/package/components/select/Select.svelte.d.ts +2 -1
  726. package/package/components/select/SelectDropdown.svelte +76 -143
  727. package/package/components/select/SelectDropdown.svelte.d.ts +4 -1
  728. package/package/components/settings/AIPromptsModal.svelte +88 -0
  729. package/package/components/settings/AIPromptsModal.svelte.d.ts +11 -0
  730. package/package/components/settings/ChangeWorkspaceColor.svelte +11 -11
  731. package/package/components/settings/ChangeWorkspaceId.svelte +20 -17
  732. package/package/components/settings/ChangeWorkspaceName.svelte +13 -14
  733. package/package/components/settings/CreateToken.svelte +4 -4
  734. package/package/components/settings/PremiumInfo.svelte +268 -128
  735. package/package/components/settings/SettingsPageHeader.svelte +22 -0
  736. package/package/components/settings/SettingsPageHeader.svelte.d.ts +10 -0
  737. package/package/components/settings/UserAIPromptsSettings.svelte +56 -15
  738. package/package/components/settings/WorkspaceOperatorSettings.svelte +68 -85
  739. package/package/components/settings/WorkspaceUserSettings.svelte +543 -427
  740. package/package/components/sidebar/CriticalAlertModalInner.svelte +28 -22
  741. package/package/components/sidebar/CriticalAlertModalInner.svelte.d.ts +5 -20
  742. package/package/components/sidebar/DarkModeToggle.svelte +2 -2
  743. package/package/components/sidebar/FavoriteMenu.svelte +101 -20
  744. package/package/components/sidebar/FavoriteMenu.svelte.d.ts +29 -1
  745. package/package/components/sidebar/MenuButton.svelte +60 -27
  746. package/package/components/sidebar/MenuButton.svelte.d.ts +4 -0
  747. package/package/components/sidebar/MenuLink.svelte +4 -3
  748. package/package/components/sidebar/MultiplayerMenu.svelte +4 -4
  749. package/package/components/sidebar/OperatorMenu.svelte +66 -89
  750. package/package/components/sidebar/OperatorMenu.svelte.d.ts +6 -1
  751. package/package/components/sidebar/SidebarContent.svelte +42 -9
  752. package/package/components/sidebar/UserMenu.svelte +3 -3
  753. package/package/components/sidebar/WorkspaceMenu.svelte +37 -86
  754. package/package/components/sqlTypeService.js +4 -3
  755. package/package/components/table/AutoDataTable.svelte +2 -2
  756. package/package/components/table/DataTable.svelte +8 -3
  757. package/package/components/table/DataTable.svelte.d.ts +2 -0
  758. package/package/components/text_input/TextInput.svelte +3 -0
  759. package/package/components/text_input/TextInput.svelte.d.ts +2 -0
  760. package/package/components/toast.js +1 -2
  761. package/package/components/triggers/AddTriggersButton.svelte +28 -4
  762. package/package/components/triggers/TriggerFilters.svelte +71 -0
  763. package/package/components/triggers/TriggerFilters.svelte.d.ts +10 -0
  764. package/package/components/triggers/TriggersEditor.svelte +34 -10
  765. package/package/components/triggers/TriggersWrapper.svelte +24 -0
  766. package/package/components/triggers/http/RouteEditorInner.svelte +1 -1
  767. package/package/components/triggers/kafka/KafkaTriggerEditorInner.svelte +7 -0
  768. package/package/components/triggers/kafka/utils.js +1 -0
  769. package/package/components/triggers/native/NativeTriggerEditor.svelte +384 -0
  770. package/package/components/triggers/native/NativeTriggerEditor.svelte.d.ts +26 -0
  771. package/package/components/triggers/native/NativeTriggerTable.svelte +171 -0
  772. package/package/components/triggers/native/NativeTriggerTable.svelte.d.ts +16 -0
  773. package/package/components/triggers/native/NativeTriggersPanel.svelte +40 -0
  774. package/package/components/triggers/native/NativeTriggersPanel.svelte.d.ts +15 -0
  775. package/package/components/triggers/native/services/google/GoogleCalendarPicker.svelte +112 -0
  776. package/package/components/triggers/native/services/google/GoogleCalendarPicker.svelte.d.ts +8 -0
  777. package/package/components/triggers/native/services/google/GoogleDrivePicker.svelte +323 -0
  778. package/package/components/triggers/native/services/google/GoogleDrivePicker.svelte.d.ts +8 -0
  779. package/package/components/triggers/native/services/google/GoogleTriggerForm.svelte +116 -0
  780. package/package/components/triggers/native/services/google/GoogleTriggerForm.svelte.d.ts +12 -0
  781. package/package/components/triggers/native/services/nextcloud/NextcloudTriggerForm.svelte +104 -0
  782. package/package/components/triggers/native/services/nextcloud/NextcloudTriggerForm.svelte.d.ts +18 -0
  783. package/package/components/triggers/native/utils.d.ts +73 -0
  784. package/package/components/triggers/native/utils.js +166 -0
  785. package/package/components/triggers/schedules/ScheduleEditorInner.svelte +3 -3
  786. package/package/components/triggers/triggers.svelte.d.ts +2 -1
  787. package/package/components/triggers/triggers.svelte.js +44 -8
  788. package/package/components/triggers/utils.js +46 -7
  789. package/package/components/triggers/websocket/WebsocketEditorConfigSection.svelte +1 -1
  790. package/package/components/triggers/websocket/WebsocketTriggerEditorInner.svelte +3 -81
  791. package/package/components/triggers.d.ts +1 -1
  792. package/package/components/tutorials/FlowBuilderLiveTutorial.svelte +6 -35
  793. package/package/components/tutorials/RunsTutorial.svelte +399 -0
  794. package/package/components/{flows/propPicker/FlowPropPicker.svelte.d.ts → tutorials/RunsTutorial.svelte.d.ts} +11 -8
  795. package/package/components/tutorials/TroubleshootFlowTutorial.svelte +5 -20
  796. package/package/components/tutorials/utils.d.ts +16 -0
  797. package/package/components/tutorials/utils.js +96 -0
  798. package/package/components/tutorials/workspace/WorkspaceOnboardingOperatorTutorial.svelte +133 -0
  799. package/package/components/{SavedInputs.svelte.d.ts → tutorials/workspace/WorkspaceOnboardingOperatorTutorial.svelte.d.ts} +8 -11
  800. package/package/components/variables/variablesFilter.d.ts +56 -0
  801. package/package/components/variables/variablesFilter.js +51 -0
  802. package/package/components/vscode.js +6 -6
  803. package/package/components/waitJob.d.ts +1 -1
  804. package/package/components/waitJob.js +3 -2
  805. package/package/components/worker_group.d.ts +2 -0
  806. package/package/components/worker_group.js +15 -0
  807. package/package/components/workspace/WorkspaceCard.svelte +184 -0
  808. package/package/components/workspace/WorkspaceCard.svelte.d.ts +24 -0
  809. package/package/components/workspace/WorkspaceIcon.svelte +21 -0
  810. package/package/components/workspace/WorkspaceIcon.svelte.d.ts +9 -0
  811. package/package/components/workspace/WorkspaceTreeView.svelte +331 -0
  812. package/package/components/workspace/WorkspaceTreeView.svelte.d.ts +15 -0
  813. package/package/components/workspaceSettings/AISettings.svelte +149 -116
  814. package/package/components/workspaceSettings/AISettings.svelte.d.ts +2 -0
  815. package/package/components/workspaceSettings/CreateWorkspace.svelte +30 -16
  816. package/package/components/workspaceSettings/CustomInstanceDbSelect.svelte +1 -0
  817. package/package/components/workspaceSettings/CustomInstanceDbWizardModal.svelte +3 -1
  818. package/package/components/workspaceSettings/CustomInstanceDbWizardModal.svelte.d.ts +1 -2
  819. package/package/components/workspaceSettings/DataTableSettings.svelte +29 -17
  820. package/package/components/workspaceSettings/DataTableSettings.svelte.d.ts +1 -0
  821. package/package/components/workspaceSettings/DucklakeSettings.svelte +75 -41
  822. package/package/components/workspaceSettings/DucklakeSettings.svelte.d.ts +3 -1
  823. package/package/components/workspaceSettings/GitSyncFilterSettings.svelte +24 -66
  824. package/package/components/workspaceSettings/ModelTokenLimits.svelte +18 -26
  825. package/package/components/workspaceSettings/OAuthClientConfig.svelte +151 -0
  826. package/package/components/workspaceSettings/OAuthClientConfig.svelte.d.ts +21 -0
  827. package/package/components/workspaceSettings/RulesetEditor.svelte +280 -0
  828. package/package/components/workspaceSettings/RulesetEditor.svelte.d.ts +9 -0
  829. package/package/components/workspaceSettings/SettingsFooter.svelte +35 -0
  830. package/package/components/workspaceSettings/SettingsFooter.svelte.d.ts +12 -0
  831. package/package/components/workspaceSettings/StorageSettings.svelte +322 -264
  832. package/package/components/workspaceSettings/StorageSettings.svelte.d.ts +2 -0
  833. package/package/components/workspaceSettings/WorkspaceDependenciesSettings.svelte +66 -27
  834. package/package/components/workspaceSettings/WorkspaceIntegrations.svelte +466 -0
  835. package/package/components/workspaceSettings/WorkspaceIntegrations.svelte.d.ts +3 -0
  836. package/package/components/workspaceSettings/WorkspaceRulesets.svelte +183 -0
  837. package/package/components/workspaceSettings/WorkspaceRulesets.svelte.d.ts +3 -0
  838. package/package/consts.js +4 -3
  839. package/package/editorLangUtils.d.ts +1 -1
  840. package/package/gen/core/OpenAPI.js +1 -1
  841. package/package/gen/schemas.gen.d.ts +1654 -215
  842. package/package/gen/schemas.gen.js +1987 -494
  843. package/package/gen/services.gen.d.ts +511 -59
  844. package/package/gen/services.gen.js +1064 -170
  845. package/package/gen/types.gen.d.ts +3687 -728
  846. package/package/hub.d.ts +1 -0
  847. package/package/hub.js +9 -2
  848. package/package/hubPaths.json +4 -2
  849. package/package/infer.d.ts +2 -0
  850. package/package/infer.js +2 -0
  851. package/package/logout.d.ts +0 -2
  852. package/package/logout.js +2 -23
  853. package/package/logoutKit.d.ts +2 -0
  854. package/package/logoutKit.js +26 -0
  855. package/package/mcpEndpointTools.d.ts +3 -0
  856. package/package/mcpEndpointTools.js +574 -147
  857. package/package/monaco_workers/graphql.worker.bundle.js +121 -121
  858. package/package/navigation.d.ts +1 -1
  859. package/package/rawAppWmillTs.d.ts +11 -0
  860. package/package/rawAppWmillTs.js +42 -4
  861. package/package/refreshUser.d.ts +5 -1
  862. package/package/refreshUser.js +20 -30
  863. package/package/scripts.d.ts +1 -1
  864. package/package/scripts.js +1 -1
  865. package/package/storeUtils.js +10 -0
  866. package/package/stores.d.ts +1 -1
  867. package/package/stores.js +4 -2
  868. package/package/svelte5Utils.svelte.d.ts +108 -1
  869. package/package/svelte5Utils.svelte.js +351 -2
  870. package/package/svelte5UtilsKit.svelte.d.ts +13 -0
  871. package/package/svelte5UtilsKit.svelte.js +106 -0
  872. package/package/system_prompts/prompts.d.ts +5 -5
  873. package/package/system_prompts/prompts.js +94 -21
  874. package/package/toast.d.ts +5 -1
  875. package/package/toast.js +14 -5
  876. package/package/tutorialUtils.js +0 -4
  877. package/package/tutorials/config.js +31 -3
  878. package/package/tutorials/roleUtils.d.ts +1 -1
  879. package/package/tutorials/roleUtils.js +6 -2
  880. package/package/utils.js +376 -8
  881. package/package/utils_deployable.d.ts +25 -25
  882. package/package/utils_deployable.js +2 -1
  883. package/package/validators/workspaceSettings.d.ts +12 -0
  884. package/package/validators/workspaceSettings.js +72 -0
  885. package/package/workspaceProtectionRules.svelte.d.ts +73 -0
  886. package/package/workspaceProtectionRules.svelte.js +176 -0
  887. package/package.json +8 -5
  888. package/package/components/DropdownSelect.svelte +0 -26
  889. package/package/components/DropdownSelect.svelte.d.ts +0 -11
  890. package/package/components/FlowPreviewResult.svelte +0 -88
  891. package/package/components/FlowPreviewResult.svelte.d.ts +0 -20
  892. package/package/components/SavedInputs.svelte +0 -416
  893. package/package/components/copilot/chat/context.d.ts +0 -62
  894. package/package/components/flows/propPicker/FlowPropPicker.svelte +0 -72
  895. package/package/components/runs/JobsLoader.svelte +0 -468
  896. package/package/components/runs/JobsLoader.svelte.d.ts +0 -49
  897. package/package/components/runs/ManuelDatePicker.svelte +0 -96
  898. package/package/components/runs/ManuelDatePicker.svelte.d.ts +0 -35
  899. package/package/components/runs/RunsBatchActionsDropdown.svelte +0 -82
  900. package/package/components/runs/RunsBatchActionsDropdown.svelte.d.ts +0 -15
  901. package/package/components/runs/RunsFilter.svelte +0 -954
  902. package/package/components/runs/RunsFilter.svelte.d.ts +0 -49
  903. package/package/components/schema/SchemaPicker.svelte +0 -92
@@ -1,4 +1,4 @@
1
- <script lang="ts">import { TriangleAlert, Copy, Plus, RefreshCcwIcon, RotateCcw, Settings, Trash, X, ExternalLink } from 'lucide-svelte';
1
+ <script lang="ts">import { TriangleAlert, Plus, RefreshCcwIcon, RotateCcw, Settings, Trash, X, ExternalLink, FileCode } from 'lucide-svelte';
2
2
  import { Alert, Button, Drawer } from './common';
3
3
  import Badge from './common/badge/Badge.svelte';
4
4
  import ToggleButton from './common/toggleButton-v2/ToggleButton.svelte';
@@ -14,9 +14,8 @@ import Editor from './Editor.svelte';
14
14
  import DrawerContent from './common/drawer/DrawerContent.svelte';
15
15
  import Section from './Section.svelte';
16
16
  import Label from './Label.svelte';
17
- import YAML from 'yaml';
18
17
  import Toggle from './Toggle.svelte';
19
- import { defaultTags, nativeTags } from './worker_group';
18
+ import { cleanWorkerGroupConfig, defaultTags, nativeTags } from './worker_group';
20
19
  import AutoscalingConfigEditor from './AutoscalingConfigEditor.svelte';
21
20
  import TagsToListenTo from './TagsToListenTo.svelte';
22
21
  import Select from './select/Select.svelte';
@@ -25,6 +24,8 @@ import { safeSelectItems } from './select/utils.svelte';
25
24
  import TextInput from './text_input/TextInput.svelte';
26
25
  import Dropdown from './DropdownV2.svelte';
27
26
  import TagList from './TagList.svelte';
27
+ import DedicatedWorkersSelector from './DedicatedWorkersSelector.svelte';
28
+ import { computeHashedTag } from './dedicated_worker';
28
29
  function computeVCpuAndMemory(workers) {
29
30
  let vcpus = 0;
30
31
  let memory = 0;
@@ -49,7 +50,9 @@ function getWorkersWithoutIsolation(workers) {
49
50
  let nconfig = $state({});
50
51
  function loadNConfig() {
51
52
  nconfig = config
52
- ? config.worker_tags != undefined || config.dedicated_worker != undefined
53
+ ? config.worker_tags != undefined ||
54
+ config.dedicated_worker != undefined ||
55
+ config.dedicated_workers != undefined
53
56
  ? config
54
57
  : {
55
58
  worker_tags: []
@@ -60,6 +63,11 @@ function loadNConfig() {
60
63
  if (nconfig.priority_tags === undefined) {
61
64
  nconfig.priority_tags = {};
62
65
  }
66
+ // Convert legacy dedicated_worker to dedicated_workers array
67
+ if (nconfig.dedicated_worker && !nconfig.dedicated_workers?.length) {
68
+ nconfig.dedicated_workers = [nconfig.dedicated_worker];
69
+ nconfig.dedicated_worker = undefined;
70
+ }
63
71
  customEnvVars = [];
64
72
  if (nconfig.env_vars_allowlist === undefined) {
65
73
  nconfig.env_vars_allowlist = [];
@@ -115,15 +123,15 @@ const ssl_env_vars_preset = [
115
123
  'SSL_CERT_DIR'
116
124
  ];
117
125
  let workspaceTag = $state('');
118
- let { name, config = $bindable(), activeWorkers, customTags, workers, isAgent = false, defaultTagPerWorkspace = undefined, width = 0, shouldAutoOpenDrawer = false, onDrawerOpened = () => { }, onDeleted = () => { }, selectGroup = undefined } = $props();
126
+ let { name, config = $bindable(), activeWorkers, customTags, workers, isAgent = false, defaultTagPerWorkspace = undefined, width = 0, shouldAutoOpenDrawer = false, onDrawerOpened = () => { }, onDeleted = () => { }, onOpenYamlEditor = undefined, selectGroup = undefined } = $props();
119
127
  let workspaces = $state([]);
120
128
  async function listWorkspaces() {
121
129
  workspaces = await WorkspaceService.listWorkspacesAsSuperAdmin();
122
130
  }
123
131
  // Centralized permission logic
124
- let canEditConfig = $derived($enterpriseLicense && ($superadmin || $devopsRole));
132
+ let canEditConfig = $derived($superadmin || $devopsRole);
125
133
  let hasEnterpriseFeatures = $derived($enterpriseLicense);
126
- let isReadOnly = $derived(!canEditConfig);
134
+ let canEditEEConfig = $derived(canEditConfig && hasEnterpriseFeatures);
127
135
  const dispatch = createEventDispatcher();
128
136
  async function deleteWorkerGroup() {
129
137
  await ConfigService.deleteConfig({ name: 'worker__' + name });
@@ -142,9 +150,31 @@ let hasChanges = $derived.by(() => {
142
150
  });
143
151
  let openDelete = $state(false);
144
152
  let openClean = $state(false);
153
+ // Compute hashed tags for display (actual tags used by the worker)
154
+ let hashedDedicatedTags = $state(new Map());
155
+ $effect(() => {
156
+ const dws = config?.dedicated_workers ?? (config?.dedicated_worker ? [config.dedicated_worker] : []);
157
+ if (dws.length > 0) {
158
+ Promise.all(dws.map(async (dw) => [dw, await computeHashedTag(dw)])).then((entries) => {
159
+ hashedDedicatedTags = new Map(entries);
160
+ });
161
+ }
162
+ else {
163
+ hashedDedicatedTags = new Map();
164
+ }
165
+ });
145
166
  let drawer = $state();
146
167
  let vcpus_memory = $derived(computeVCpuAndMemory(workers));
147
- let selected = $derived(nconfig?.dedicated_worker != undefined ? 'dedicated' : 'normal');
168
+ let selected = $derived(nconfig?.dedicated_worker != undefined || nconfig?.dedicated_workers != undefined
169
+ ? 'dedicated'
170
+ : 'normal');
171
+ let isNativeMode = $derived(config?.native_mode === true ||
172
+ name === 'native' ||
173
+ (workers.length > 0 &&
174
+ workers.some(([_, pings]) => pings.some((p) => p.native_mode === true))));
175
+ let nonNativeTags = $derived((nconfig?.worker_tags ?? []).filter((t) => !nativeTags.includes(t) && t !== 'flow'));
176
+ let isAutoNativeMode = $derived(name === 'native');
177
+ let isNativeModeEnabled = $derived(nconfig?.native_mode === true || isAutoNativeMode);
148
178
  $effect(() => {
149
179
  ;
150
180
  ($superadmin || $devopsRole) && listWorkspaces();
@@ -210,38 +240,39 @@ $effect(() => {
210
240
  <DrawerContent
211
241
  on:close={() => drawer?.closeDrawer()}
212
242
  title={canEditConfig ? `Edit worker config '${name}'` : `Worker config '${name}'`}
213
- eeOnly
214
243
  >
215
244
  {#if !hasEnterpriseFeatures}
216
- <Alert type="info" title="Worker management UI is EE only" class="mb-4">
217
- Workers can still have their WORKER_TAGS, INIT_SCRIPT and WHITELIST_ENVS passed as env.
218
- Dedicated workers are an enterprise only feature.
245
+ <Alert type="info" title="Enterprise features" class="mb-4">
246
+ Some worker management features require the enterprise edition. In CE, you can configure
247
+ worker tags.
219
248
  </Alert>
220
249
  {:else if !canEditConfig}
221
250
  <Alert type="info" title="Read-only mode" class="mb-4">
222
251
  Only superadmin or devops role can edit the worker config.
223
252
  </Alert>
224
253
  {/if}
225
- <Label label="Workers assignment">
254
+ <Label label="Workers assignment" eeOnly={!hasEnterpriseFeatures}>
226
255
  <ToggleButtonGroup
227
256
  {selected}
228
- disabled={!canEditConfig}
257
+ disabled={!canEditEEConfig}
229
258
  on:selected={(e) => {
230
259
  if (nconfig == undefined) {
231
260
  nconfig = {}
232
261
  }
233
262
  if (e.detail == 'dedicated') {
234
- nconfig.dedicated_worker = ''
263
+ nconfig.dedicated_workers = nconfig.dedicated_workers ?? []
264
+ nconfig.dedicated_worker = undefined
235
265
  nconfig.worker_tags = undefined
236
266
  } else {
237
267
  nconfig.dedicated_worker = undefined
268
+ nconfig.dedicated_workers = undefined
238
269
  nconfig.worker_tags = []
239
270
  }
240
271
  }}
241
272
  >
242
273
  {#snippet children({ item })}
243
274
  <ToggleButton value="normal" label="Any jobs within worker tags" {item} />
244
- <ToggleButton value="dedicated" label="Dedicated to a script/flow" {item} />
275
+ <ToggleButton value="dedicated" label="Dedicated to scripts/flows" {item} />
245
276
  {/snippet}
246
277
  </ToggleButtonGroup>
247
278
  </Label>
@@ -251,33 +282,53 @@ $effect(() => {
251
282
  <Label label="Tags to listen to">
252
283
  {#snippet action()}
253
284
  {#if nconfig?.worker_tags != undefined}
285
+ {@const resetTags = isNativeModeEnabled ? nativeTags : defaultTags.concat(nativeTags)}
254
286
  {@const dropdownResetToAllTags = [
255
287
  {
256
- label: 'Reset to all tags minus native ones',
288
+ label: isNativeModeEnabled
289
+ ? 'Reset to all tags'
290
+ : 'Reset to all tags minus native ones',
257
291
  onClick: () => {
258
292
  if (nconfig != undefined) {
259
- nconfig.worker_tags = defaultTags.concat(nativeTags)
293
+ nconfig.worker_tags = isNativeModeEnabled
294
+ ? defaultTagPerWorkspace && workspaceTag
295
+ ? defaultTags.concat(nativeTags).map((nt) => `${nt}-${workspaceTag}`)
296
+ : defaultTags.concat(nativeTags)
297
+ : defaultTagPerWorkspace && workspaceTag
298
+ ? defaultTags.map((nt) => `${nt}-${workspaceTag}`)
299
+ : defaultTags
260
300
  }
261
301
  },
262
302
  disabled: !canEditConfig,
263
303
  tooltip: (defaultTagPerWorkspace
264
- ? defaultTags.map((nt) => `${nt}-${workspaceTag}`)
265
- : defaultTags
266
- ).join(', ')
267
- },
268
- {
269
- label: 'Reset to native tags',
270
- onClick: () => {
271
- if (nconfig != undefined) {
272
- nconfig.worker_tags = nativeTags
273
- }
274
- },
275
- disabled: !canEditConfig,
276
- tooltip: (defaultTagPerWorkspace && workspaceTag
277
- ? nativeTags.map((nt) => `${nt}-${workspaceTag}`)
278
- : nativeTags
304
+ ? (isNativeModeEnabled ? defaultTags.concat(nativeTags) : defaultTags).map(
305
+ (nt) => `${nt}-${workspaceTag}`
306
+ )
307
+ : isNativeModeEnabled
308
+ ? defaultTags.concat(nativeTags)
309
+ : defaultTags
279
310
  ).join(', ')
280
311
  },
312
+ ...(!isNativeModeEnabled
313
+ ? [
314
+ {
315
+ label: 'Reset to native tags',
316
+ onClick: () => {
317
+ if (nconfig != undefined) {
318
+ nconfig.worker_tags =
319
+ defaultTagPerWorkspace && workspaceTag
320
+ ? nativeTags.map((nt) => `${nt}-${workspaceTag}`)
321
+ : nativeTags
322
+ }
323
+ },
324
+ disabled: !canEditConfig,
325
+ tooltip: (defaultTagPerWorkspace && workspaceTag
326
+ ? nativeTags.map((nt) => `${nt}-${workspaceTag}`)
327
+ : nativeTags
328
+ ).join(', ')
329
+ }
330
+ ]
331
+ : []),
281
332
  {
282
333
  label: 'Clear tags',
283
334
  onClick: () => {
@@ -296,8 +347,8 @@ $effect(() => {
296
347
  if (nconfig != undefined) {
297
348
  nconfig.worker_tags =
298
349
  defaultTagPerWorkspace && workspaceTag
299
- ? defaultTags.concat(nativeTags).map((nt) => `${nt}-${workspaceTag}`)
300
- : defaultTags.concat(nativeTags)
350
+ ? resetTags.map((nt) => `${nt}-${workspaceTag}`)
351
+ : resetTags
301
352
  }
302
353
  }}
303
354
  dropdownItems={dropdownResetToAllTags}
@@ -305,11 +356,12 @@ $effect(() => {
305
356
  startIcon={{ icon: RotateCcw }}
306
357
  disabled={!canEditConfig}
307
358
  >
308
- Reset to all tags <Tooltip>
359
+ {isNativeModeEnabled ? 'Reset to native tags' : 'Reset to all tags'}
360
+ <Tooltip>
309
361
  {#snippet text()}
310
362
  {(defaultTagPerWorkspace && workspaceTag
311
- ? defaultTags.concat(nativeTags).map((nt) => `${nt}-${workspaceTag}`)
312
- : defaultTags.concat(nativeTags)
363
+ ? resetTags.map((nt) => `${nt}-${workspaceTag}`)
364
+ : resetTags
313
365
  ).join(', ')}
314
366
  {/snippet}
315
367
  </Tooltip>
@@ -338,7 +390,7 @@ $effect(() => {
338
390
 
339
391
  {#if nconfig?.worker_tags !== undefined && nconfig?.worker_tags.length > 0}
340
392
  <div class="mt-8"></div>
341
- <Label label="High-priority tags">
393
+ <Label label="High-priority tags" eeOnly={!hasEnterpriseFeatures}>
342
394
  {#snippet header()}
343
395
  <Tooltip>
344
396
  {#snippet text()}
@@ -351,7 +403,7 @@ $effect(() => {
351
403
  </Tooltip>
352
404
  {/snippet}
353
405
  <MultiSelect
354
- disabled={!canEditConfig}
406
+ disabled={!canEditEEConfig}
355
407
  bind:value={
356
408
  () => (nconfig.priority_tags ? Object.keys(nconfig.priority_tags) : []),
357
409
  (v) => {
@@ -365,7 +417,74 @@ $effect(() => {
365
417
 
366
418
  {#if nconfig !== undefined}
367
419
  <div class="mt-8"></div>
368
- <Label label="Alerts" tooltip="Alert is sent to the configured critical error channels">
420
+ <Label label="Native mode">
421
+ {#snippet header()}
422
+ <Tooltip>
423
+ {#snippet text()}
424
+ When enabled, the worker will only accept native jobs (nativets, postgresql, mysql,
425
+ etc.) and automatically runs with 8 subworkers for optimal throughput. Non-native
426
+ jobs will be failed.
427
+ {/snippet}
428
+ </Tooltip>
429
+ {/snippet}
430
+ <Toggle
431
+ size="sm"
432
+ options={{
433
+ right: isAutoNativeMode ? 'Native mode (automatically enabled)' : 'Enable native mode'
434
+ }}
435
+ checked={nconfig?.native_mode === true || isAutoNativeMode}
436
+ on:change={(ev) => {
437
+ if (nconfig !== undefined) {
438
+ nconfig.native_mode = ev.detail ? true : undefined
439
+ }
440
+ }}
441
+ disabled={!canEditConfig || isAutoNativeMode}
442
+ />
443
+ {#if isNativeModeEnabled}
444
+ <p class="text-xs text-secondary mt-1"
445
+ >8 subworkers will automatically be used for optimal throughput.</p
446
+ >
447
+ {/if}
448
+ {#if isNativeModeEnabled && nonNativeTags.length > 0}
449
+ <Alert size="xs" type="warning" title="Non-native tags detected">
450
+ This worker group has native mode enabled but includes non-native tags: {nonNativeTags.join(
451
+ ', '
452
+ )}. Non-native jobs will be failed. This is fine if those custom tags are only used
453
+ for native language jobs.
454
+ </Alert>
455
+ {/if}
456
+ {#if isNativeModeEnabled && nconfig?.worker_tags != undefined && !nconfig.worker_tags.includes(defaultTagPerWorkspace && workspaceTag ? `flow-${workspaceTag}` : 'flow')}
457
+ <Alert size="xs" type="info" title="Flow tag not included">
458
+ Adding the flow tag to native workers can improve efficiency, but may cause issues
459
+ with large inputs.
460
+ <div class="mt-2 w-fit">
461
+ <Button
462
+ variant="default"
463
+ on:click={() => {
464
+ if (nconfig?.worker_tags != undefined) {
465
+ const flowTag =
466
+ defaultTagPerWorkspace && workspaceTag ? `flow-${workspaceTag}` : 'flow'
467
+ nconfig.worker_tags = [...nconfig.worker_tags, flowTag]
468
+ }
469
+ }}
470
+ disabled={!canEditConfig}
471
+ startIcon={{ icon: Plus }}
472
+ >
473
+ Add flow tag
474
+ </Button>
475
+ </div>
476
+ </Alert>
477
+ {/if}
478
+ </Label>
479
+ {/if}
480
+
481
+ {#if nconfig !== undefined}
482
+ <div class="mt-8"></div>
483
+ <Label
484
+ label="Alerts"
485
+ tooltip="Alert is sent to the configured critical error channels"
486
+ eeOnly={!hasEnterpriseFeatures}
487
+ >
369
488
  <Toggle
370
489
  size="sm"
371
490
  options={{
@@ -377,7 +496,7 @@ $effect(() => {
377
496
  nconfig.min_alive_workers_alert_threshold = ev.detail ? 1 : undefined
378
497
  }
379
498
  }}
380
- disabled={!canEditConfig}
499
+ disabled={!canEditEEConfig}
381
500
  />
382
501
  {#if nconfig.min_alive_workers_alert_threshold !== undefined}
383
502
  <div class="flex flex-row items-center text-xs gap-2">
@@ -385,7 +504,7 @@ $effect(() => {
385
504
  <input
386
505
  type="number"
387
506
  class="!w-14 text-center"
388
- disabled={!canEditConfig}
507
+ disabled={!canEditEEConfig}
389
508
  min="1"
390
509
  bind:value={nconfig.min_alive_workers_alert_threshold}
391
510
  />
@@ -394,30 +513,33 @@ $effect(() => {
394
513
  </Label>
395
514
  {/if}
396
515
  {:else if selected == 'dedicated'}
397
- <div class="flex flex-col gap-2">
516
+ <div class="flex flex-col gap-4">
398
517
  {#if $superadmin || $devopsRole}
399
518
  <div class="py-2">
400
519
  <Alert
401
520
  size="xs"
402
521
  type="info"
403
- title="Script's runtime setting 'dedicated worker' must be toggled on as well"
522
+ title="The 'dedicated worker' runtime setting of the runnables must be enabled to be selected here"
404
523
  />
405
524
  </div>
406
525
  {/if}
407
- {#if nconfig?.dedicated_worker != undefined}
408
- <div
409
- ><p class="text-xs text-secondary mb-2"
410
- >Workers will get killed upon detecting changes. It is assumed they are in an
411
- environment where the supervisor will restart them.</p
412
- >
413
- <input
414
- disabled={!canEditConfig}
415
- placeholder="<workspace>:<script path>"
416
- type="text"
417
- onchange={() => {}}
418
- bind:value={nconfig.dedicated_worker}
419
- /></div
420
- >
526
+
527
+ <p class="text-xs text-secondary"
528
+ >Workers will get killed upon detecting changes. It is assumed they are in an environment
529
+ where the supervisor will restart them.</p
530
+ >
531
+
532
+ {#if nconfig !== undefined}
533
+ <DedicatedWorkersSelector
534
+ selectedTags={nconfig.dedicated_workers ?? []}
535
+ disabled={!canEditEEConfig}
536
+ onchange={(tags) => {
537
+ if (nconfig) {
538
+ nconfig.dedicated_workers = tags
539
+ nconfig.dedicated_worker = undefined
540
+ }
541
+ }}
542
+ />
421
543
  {/if}
422
544
  </div>
423
545
  {/if}
@@ -427,19 +549,20 @@ $effect(() => {
427
549
  <Label
428
550
  label="Environment variables passed to jobs"
429
551
  tooltip="Add static and dynamic environment variables that will be passed to jobs handled by this worker group. Dynamic environment variable values will be loaded from the worker host environment variables while static environment variables will be set directly from their values below."
552
+ eeOnly={!hasEnterpriseFeatures}
430
553
  >
431
554
  <div class="flex flex-col gap-y-2 pb-2 max-w">
432
555
  {#each customEnvVars as envvar, i}
433
556
  <div class="flex gap-1 items-center">
434
557
  <input
435
- disabled={isReadOnly}
558
+ disabled={!canEditEEConfig}
436
559
  type="text"
437
560
  placeholder="ENV_VAR_NAME"
438
561
  bind:value={envvar.key}
439
562
  onkeypress={(e) => {}}
440
563
  />
441
564
  <ToggleButtonGroup
442
- disabled={!canEditConfig}
565
+ disabled={!canEditEEConfig}
443
566
  class="w-128"
444
567
  bind:selected={envvar.type}
445
568
  on:selected={(e) => {
@@ -449,20 +572,20 @@ $effect(() => {
449
572
  }}
450
573
  >
451
574
  {#snippet children({ item })}
452
- <ToggleButton value="dynamic" label="Dynamic" {item} disabled={!canEditConfig} />
453
- <ToggleButton value="static" label="Static" {item} disabled={!canEditConfig} />
575
+ <ToggleButton value="dynamic" label="Dynamic" {item} disabled={!canEditEEConfig} />
576
+ <ToggleButton value="static" label="Static" {item} disabled={!canEditEEConfig} />
454
577
  {/snippet}
455
578
  </ToggleButtonGroup>
456
579
  <TextInput
457
580
  inputProps={{
458
581
  type: 'text',
459
- disabled: isReadOnly || envvar.type === 'dynamic',
582
+ disabled: !canEditEEConfig || envvar.type === 'dynamic',
460
583
  placeholder:
461
584
  envvar.type === 'dynamic' ? 'value read from worker env var' : 'static value'
462
585
  }}
463
586
  bind:value={envvar.value}
464
587
  />
465
- {#if canEditConfig}
588
+ {#if canEditEEConfig}
466
589
  <Button
467
590
  wrapperClasses="ml-2"
468
591
  variant="subtle"
@@ -483,12 +606,12 @@ $effect(() => {
483
606
  startIcon={{ icon: Trash }}
484
607
  iconOnly
485
608
  destructive
486
- disabled={!canEditConfig}
609
+ disabled={!canEditEEConfig}
487
610
  />
488
611
  {/if}
489
612
  </div>
490
613
  {/each}
491
- {#if canEditConfig}
614
+ {#if canEditEEConfig}
492
615
  <div class="flex flex-col gap-2">
493
616
  <Button
494
617
  variant="default"
@@ -498,7 +621,7 @@ $effect(() => {
498
621
  customEnvVars.push({ key: '', type: 'dynamic', value: undefined })
499
622
  customEnvVars = [...customEnvVars]
500
623
  }}
501
- disabled={!canEditConfig}
624
+ disabled={!canEditEEConfig}
502
625
  >
503
626
  Add environment variable
504
627
  </Button>
@@ -563,11 +686,17 @@ $effect(() => {
563
686
  <AutoscalingConfigEditor
564
687
  worker_tags={config?.worker_tags}
565
688
  bind:config={nconfig.autoscaling}
566
- disabled={!canEditConfig}
689
+ disabled={!canEditEEConfig}
690
+ eeOnly={!hasEnterpriseFeatures}
567
691
  />
568
692
 
569
693
  <div class="mt-8"></div>
570
- <Section label="Python dependencies overrides" collapsable={true} class="flex flex-col gap-y-6">
694
+ <Section
695
+ label="Python dependencies overrides"
696
+ collapsable={true}
697
+ class="flex flex-col gap-y-6"
698
+ eeOnly={!hasEnterpriseFeatures}
699
+ >
571
700
  <Label
572
701
  label="Additional Python paths"
573
702
  tooltip="Paths to add to the Python path for it to search dependencies, useful if you have packages pre-installed on the workers at a given path."
@@ -578,11 +707,11 @@ $effect(() => {
578
707
  <div class="flex gap-1 items-center">
579
708
  <input
580
709
  type="text"
581
- disabled={!canEditConfig}
710
+ disabled={!canEditEEConfig}
582
711
  placeholder="/path/to/python3.X/site-packages"
583
712
  bind:value={nconfig.additional_python_paths![i]}
584
713
  />
585
- {#if canEditConfig}
714
+ {#if canEditEEConfig}
586
715
  <button
587
716
  class="rounded-full bg-surface/60 hover:bg-surface-hover"
588
717
  aria-label="Clear"
@@ -603,7 +732,7 @@ $effect(() => {
603
732
  </div>
604
733
  {/each}
605
734
  {/if}
606
- {#if canEditConfig}
735
+ {#if canEditEEConfig}
607
736
  <div class="flex">
608
737
  <Button
609
738
  variant="default"
@@ -630,12 +759,12 @@ $effect(() => {
630
759
  {#each nconfig.pip_local_dependencies as _, i}
631
760
  <div class="flex gap-1 items-center">
632
761
  <input
633
- disabled={!canEditConfig}
762
+ disabled={!canEditEEConfig}
634
763
  type="text"
635
764
  placeholder="httpx"
636
765
  bind:value={nconfig.pip_local_dependencies[i]}
637
766
  />
638
- {#if canEditConfig}
767
+ {#if canEditEEConfig}
639
768
  <button
640
769
  class="rounded-full bg-surface/60 hover:bg-surface-hover"
641
770
  aria-label="Clear"
@@ -656,7 +785,7 @@ $effect(() => {
656
785
  </div>
657
786
  {/each}
658
787
  {/if}
659
- {#if canEditConfig}
788
+ {#if canEditEEConfig}
660
789
  <div class="flex">
661
790
  <Button
662
791
  variant="default"
@@ -680,123 +809,144 @@ $effect(() => {
680
809
  <div class="mt-8"></div>
681
810
 
682
811
  <Section
683
- label="Worker scripts"
684
- tooltip="Bash scripts for worker initialization and maintenance. Init scripts run at worker start, periodic scripts run at configurable intervals."
812
+ label="Init script"
813
+ tooltip="Bash script run at start of the workers. More lightweight than requiring custom worker images."
685
814
  collapsable
815
+ initiallyCollapsed={nconfig.init_bash === undefined}
686
816
  >
687
- {#if canEditConfig}
688
- <div class="mb-4">
817
+ {#snippet header()}
818
+ <div class="ml-4 flex flex-row gap-2 items-center">
819
+ {#if nconfig.init_bash !== undefined}
820
+ <Badge color="green">Enabled</Badge>
821
+ {/if}
822
+ </div>
823
+ {/snippet}
824
+ {#if (nconfig.init_bash ?? '') !== (config?.init_bash ?? '')}
825
+ <div class="mb-2">
689
826
  <Alert size="xs" type="info" title="Worker restart required">
690
- Workers will get killed upon detecting any changes in this section (scripts or
691
- interval). It is assumed they are in an environment where the supervisor will restart
692
- them.
827
+ Workers will get killed upon detecting changes to the init script. It is assumed they
828
+ are in an environment where the supervisor will restart them.
693
829
  </Alert>
694
830
  </div>
695
831
  {/if}
832
+ <p class="text-xs text-secondary mb-2">
833
+ Execution logs are visible on the runs page of the admins workspace. Use the script editor
834
+ with Bash to iterate on your script before setting it here.
835
+ </p>
836
+ <div class="border w-full h-40">
837
+ <Editor
838
+ fixedOverflowWidgets={true}
839
+ disabled={!canEditConfig}
840
+ class="flex flex-1 grow h-full w-full"
841
+ automaticLayout
842
+ scriptLang={'bash'}
843
+ useWebsockets={false}
844
+ code={config?.init_bash ?? ''}
845
+ on:change={(e) => {
846
+ if (config) {
847
+ const code = e.detail
848
+ if (code != '') {
849
+ nconfig.init_bash = code?.replace(/\r\n/g, '\n')
850
+ } else {
851
+ nconfig.init_bash = undefined
852
+ }
853
+ }
854
+ }}
855
+ />
856
+ </div>
857
+ </Section>
696
858
 
697
- <div class="space-y-6">
698
- <div>
699
- <div class="text-xs text-secondary mb-1">
700
- Run at start of the workers. More lightweight than requiring custom worker images.
701
- </div>
702
- <Section
703
- small
704
- label="Init script"
705
- collapsable
706
- initiallyCollapsed={nconfig.init_bash === undefined}
707
- >
708
- {#snippet header()}
709
- <div class="ml-4 flex flex-row gap-2 items-center">
710
- {#if nconfig.init_bash !== undefined}
711
- <Badge color="green">Enabled</Badge>
712
- {/if}
713
- </div>
714
- {/snippet}
715
- <div class="border w-full h-40">
716
- <Editor
717
- fixedOverflowWidgets={true}
718
- disabled={!canEditConfig}
719
- class="flex flex-1 grow h-full w-full"
720
- automaticLayout
721
- scriptLang={'bash'}
722
- useWebsockets={false}
723
- code={config?.init_bash ?? ''}
724
- on:change={(e) => {
725
- if (config) {
726
- const code = e.detail
727
- if (code != '') {
728
- nconfig.init_bash = code?.replace(/\r\n/g, '\n')
729
- } else {
730
- nconfig.init_bash = undefined
731
- }
732
- }
733
- }}
734
- />
735
- </div>
736
- </Section>
859
+ <div class="mt-8"></div>
860
+
861
+ <Section
862
+ label="Periodic script"
863
+ tooltip="Bash script run periodically at configurable intervals. Useful for maintenance tasks like cleaning disk space."
864
+ collapsable
865
+ eeOnly={!hasEnterpriseFeatures}
866
+ initiallyCollapsed={nconfig.periodic_script_bash === undefined}
867
+ >
868
+ {#snippet header()}
869
+ <div class="ml-4 flex flex-row gap-2 items-center">
870
+ {#if nconfig.periodic_script_bash !== undefined}
871
+ <Badge color="green">Enabled</Badge>
872
+ {/if}
737
873
  </div>
738
- <div>
739
- <div class="text-xs text-secondary mb-1">
740
- Run periodically at configurable intervals. Useful for maintenance tasks like cleaning
741
- disk space.
742
- </div>
743
- <Section
744
- small
745
- label="Periodic script"
746
- collapsable
747
- initiallyCollapsed={nconfig.periodic_script_bash === undefined}
748
- >
749
- {#snippet header()}
750
- <div class="ml-4 flex flex-row gap-2 items-center">
751
- {#if nconfig.periodic_script_bash !== undefined}
752
- <Badge color="green">Enabled</Badge>
753
- {/if}
754
- </div>
755
- {/snippet}
874
+ {/snippet}
875
+ {#if (nconfig.periodic_script_bash ?? '') !== (config?.periodic_script_bash ?? '') || (nconfig.periodic_script_interval_seconds ?? 0) !== (config?.periodic_script_interval_seconds ?? 0)}
876
+ <div class="mb-2">
877
+ <Alert size="xs" type="info" title="Worker restart required">
878
+ Workers will get killed upon detecting changes to the periodic script or interval. It is
879
+ assumed they are in an environment where the supervisor will restart them.
880
+ </Alert>
881
+ </div>
882
+ {/if}
756
883
 
757
- <div class="flex gap-4 items-center mb-4">
758
- <Label label="Execution interval (seconds)" for="periodic-script-interval-seconds">
759
- <TextInput
760
- inputProps={{
761
- disabled: !canEditConfig,
762
- type: 'number',
763
- min: '60',
764
- placeholder: '3600',
765
- class: '!w-24 '
766
- }}
767
- bind:value={nconfig.periodic_script_interval_seconds}
768
- />
769
- <span class="text-2xs text-hint">Minimum: 60 seconds</span>
770
- </Label>
771
- </div>
884
+ <div class="flex gap-4 items-center mb-4">
885
+ <Label label="Execution interval (seconds)" for="periodic-script-interval-seconds">
886
+ <TextInput
887
+ inputProps={{
888
+ disabled: !canEditEEConfig,
889
+ type: 'number',
890
+ min: '60',
891
+ placeholder: '3600',
892
+ class: '!w-24 '
893
+ }}
894
+ bind:value={nconfig.periodic_script_interval_seconds}
895
+ />
896
+ <span class="text-2xs text-hint">Minimum: 60 seconds</span>
897
+ </Label>
898
+ </div>
772
899
 
773
- <div class="border w-full h-40">
774
- <Editor
775
- disabled={!canEditConfig}
776
- class="flex flex-1 grow h-full w-full"
777
- automaticLayout
778
- scriptLang={'bash'}
779
- useWebsockets={false}
780
- fixedOverflowWidgets={false}
781
- code={config?.periodic_script_bash ?? ''}
782
- on:change={(e) => {
783
- if (config) {
784
- const code = e.detail
785
- if (code != '') {
786
- nconfig.periodic_script_bash = code?.replace(/\r\n/g, '\n')
787
- } else {
788
- nconfig.periodic_script_bash = undefined
789
- }
790
- }
791
- }}
792
- />
793
- </div>
794
- </Section>
795
- </div>
900
+ <div class="border w-full h-40">
901
+ <Editor
902
+ disabled={!canEditEEConfig}
903
+ class="flex flex-1 grow h-full w-full"
904
+ automaticLayout
905
+ scriptLang={'bash'}
906
+ useWebsockets={false}
907
+ fixedOverflowWidgets={false}
908
+ code={config?.periodic_script_bash ?? ''}
909
+ on:change={(e) => {
910
+ if (config) {
911
+ const code = e.detail
912
+ if (code != '') {
913
+ nconfig.periodic_script_bash = code?.replace(/\r\n/g, '\n')
914
+ } else {
915
+ nconfig.periodic_script_bash = undefined
916
+ }
917
+ }
918
+ }}
919
+ />
796
920
  </div>
797
921
  </Section>
922
+
923
+ <div class="mt-8">
924
+ <Section label="Set via API" collapsable headerClass="text-secondary">
925
+ <p class="text-xs text-tertiary">Requires a superadmin token.</p>
926
+ <pre
927
+ class="mt-1 p-2 bg-surface-secondary rounded text-xs overflow-x-auto whitespace-pre-wrap break-all"
928
+ >curl -X POST '{window.location.origin}/api/configs/update/worker__{name}' \
929
+ -H 'Content-Type: application/json' \
930
+ -H 'Authorization: Bearer &lt;token&gt;' \
931
+ -d '{JSON.stringify(cleanWorkerGroupConfig(nconfig ?? {}), null, 2)}'</pre
932
+ >
933
+ </Section>
934
+ </div>
798
935
  {#snippet actions()}
799
936
  <div class="flex gap-4 items-center">
937
+ {#if onOpenYamlEditor}
938
+ <Button
939
+ variant="default"
940
+ unifiedSize="md"
941
+ startIcon={{ icon: FileCode }}
942
+ onClick={() => {
943
+ drawer?.closeDrawer()
944
+ onOpenYamlEditor?.()
945
+ }}
946
+ >
947
+ YAML editor
948
+ </Button>
949
+ {/if}
800
950
  <div class="flex gap-2 items-center">
801
951
  {#if canEditConfig}
802
952
  <Button
@@ -884,6 +1034,9 @@ $effect(() => {
884
1034
  >{#snippet text()}Number of active workers of this group in the last 15 seconds{/snippet}</Tooltip
885
1035
  ></span
886
1036
  >
1037
+ {#if isNativeMode}
1038
+ <Badge color="blue" small>Native</Badge>
1039
+ {/if}
887
1040
  </div>
888
1041
 
889
1042
  {#if vcpus_memory?.vcpus}
@@ -958,36 +1111,9 @@ $effect(() => {
958
1111
  >
959
1112
  Clean cache
960
1113
  </Button>
961
-
962
- {#if config}
963
- <Button
964
- unifiedSize="sm"
965
- variant="subtle"
966
- on:click={() => {
967
- navigator.clipboard.writeText(
968
- YAML.stringify({
969
- name,
970
- ...config
971
- })
972
- )
973
- sendUserToast('Worker config copied to clipboard as YAML')
974
- }}
975
- startIcon={{ icon: Copy }}
976
- >
977
- Copy config
978
- </Button>
979
- {/if}
980
1114
  {:else}
981
1115
  <Dropdown
982
1116
  items={[
983
- {
984
- displayName: 'Copy config',
985
- action: () => {
986
- navigator.clipboard.writeText(YAML.stringify({ name, ...config }))
987
- sendUserToast('Worker config copied to clipboard as YAML')
988
- },
989
- disabled: !config
990
- },
991
1117
  {
992
1118
  displayName: 'Clean cache',
993
1119
  action: () => {
@@ -1046,11 +1172,28 @@ $effect(() => {
1046
1172
  <div class="text-secondary text-xs mt-1">Tags:</div>
1047
1173
  <TagList tags={config.worker_tags} maxVisible={25} class="flex-wrap" />
1048
1174
  </div>
1175
+ {:else if config?.dedicated_workers && config.dedicated_workers.length > 0}
1176
+ <div class="flex flex-row items-start gap-2 w-full min-w-0">
1177
+ <div class="text-secondary text-xs mt-1 flex-shrink-0">Dedicated to:</div>
1178
+ <div class="flex flex-wrap gap-1 min-w-0">
1179
+ {#each config.dedicated_workers as dw}
1180
+ <div
1181
+ class="text-xs bg-surface-secondary px-2 py-1 rounded text-primary font-mono truncate max-w-xs"
1182
+ title={hashedDedicatedTags.get(dw) ?? dw}
1183
+ >
1184
+ {hashedDedicatedTags.get(dw) ?? dw}
1185
+ </div>
1186
+ {/each}
1187
+ </div>
1188
+ </div>
1049
1189
  {:else if config?.dedicated_worker}
1050
- <div class="flex flex-row items-start gap-2 w-full">
1051
- <div class="text-secondary text-xs mt-1">Dedicated to:</div>
1052
- <div class="text-xs bg-surface-secondary px-2 py-1 rounded text-primary font-mono">
1053
- {config.dedicated_worker}
1190
+ <div class="flex flex-row items-start gap-2 w-full min-w-0">
1191
+ <div class="text-secondary text-xs mt-1 flex-shrink-0">Dedicated to:</div>
1192
+ <div
1193
+ class="text-xs bg-surface-secondary px-2 py-1 rounded text-primary font-mono truncate max-w-xs"
1194
+ title={hashedDedicatedTags.get(config.dedicated_worker) ?? config.dedicated_worker}
1195
+ >
1196
+ {hashedDedicatedTags.get(config.dedicated_worker) ?? config.dedicated_worker}
1054
1197
  </div>
1055
1198
  </div>
1056
1199
  {/if}