windmill-components 1.542.5 → 1.555.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 (399) hide show
  1. package/package/aiStore.d.ts +13 -0
  2. package/package/aiStore.js +70 -0
  3. package/package/common.d.ts +6 -2
  4. package/package/components/AIAgentLogViewer.svelte +1 -1
  5. package/package/components/AIProviderPicker.svelte +25 -8
  6. package/package/components/ArgEnum.svelte +17 -7
  7. package/package/components/ArgEnum.svelte.d.ts +1 -0
  8. package/package/components/ArgInput.svelte +257 -188
  9. package/package/components/ArgInput.svelte.d.ts +4 -1
  10. package/package/components/ArrayTypeNarrowing.svelte +38 -32
  11. package/package/components/AutoscalingEvents.svelte +21 -5
  12. package/package/components/AutoscalingEvents.svelte.d.ts +4 -18
  13. package/package/components/ChannelSelector.svelte +92 -18
  14. package/package/components/ChannelSelector.svelte.d.ts +2 -0
  15. package/package/components/ConnectionSection.svelte +12 -1
  16. package/package/components/DateTimeInput.svelte +8 -6
  17. package/package/components/DeployButton.svelte +1 -1
  18. package/package/components/Dev.svelte +24 -9
  19. package/package/components/Dev.svelte.d.ts +23 -1
  20. package/package/components/DisplayResult.svelte +36 -23
  21. package/package/components/DropdownV2.svelte +8 -2
  22. package/package/components/DropdownV2.svelte.d.ts +1 -0
  23. package/package/components/DynamicInput.svelte +10 -10
  24. package/package/components/EditableSchemaForm.svelte +28 -13
  25. package/package/components/Editor.svelte +2 -1
  26. package/package/components/EditorSettings.svelte +5 -5
  27. package/package/components/EditorSettings.svelte.d.ts +4 -18
  28. package/package/components/ErrorOrRecoveryHandler.svelte +14 -20
  29. package/package/components/FakeMonacoPlaceHolder.svelte +4 -2
  30. package/package/components/FakeMonacoPlaceHolder.svelte.d.ts +1 -0
  31. package/package/components/FieldHeader.svelte +5 -7
  32. package/package/components/FirstStepInputs.svelte +1 -1
  33. package/package/components/FlowHistoryJobPicker.svelte +3 -0
  34. package/package/components/FlowHistoryJobPicker.svelte.d.ts +1 -0
  35. package/package/components/FlowJobResult.svelte +5 -5
  36. package/package/components/FlowLogRow.svelte +2 -2
  37. package/package/components/FlowLogViewer.svelte +228 -57
  38. package/package/components/FlowLogViewer.svelte.d.ts +16 -5
  39. package/package/components/FlowLogViewerWrapper.svelte +56 -3
  40. package/package/components/FlowLogViewerWrapper.svelte.d.ts +4 -3
  41. package/package/components/FlowLoopIterationPreview.svelte +4 -4
  42. package/package/components/FlowLoopIterationPreview.svelte.d.ts +1 -1
  43. package/package/components/FlowMetadata.svelte +3 -4
  44. package/package/components/FlowMetadata.svelte.d.ts +4 -18
  45. package/package/components/FlowPlugConnect.svelte +8 -2
  46. package/package/components/FlowPlugConnect.svelte.d.ts +1 -0
  47. package/package/components/FlowPreviewContent.svelte +121 -94
  48. package/package/components/FlowPreviewContent.svelte.d.ts +3 -3
  49. package/package/components/FlowStatusViewer.svelte +63 -59
  50. package/package/components/FlowStatusViewer.svelte.d.ts +2 -2
  51. package/package/components/FlowStatusViewerInner.svelte +186 -94
  52. package/package/components/FlowStatusViewerInner.svelte.d.ts +10 -3
  53. package/package/components/FlowTimeline.svelte +110 -131
  54. package/package/components/FlowTimeline.svelte.d.ts +13 -4
  55. package/package/components/FlowTimelineBar.svelte +227 -0
  56. package/package/components/FlowTimelineBar.svelte.d.ts +24 -0
  57. package/package/components/FolderEditor.svelte +6 -7
  58. package/package/components/GroupEditor.svelte +148 -141
  59. package/package/components/GroupEditor.svelte.d.ts +5 -4
  60. package/package/components/InputTransformForm.svelte +193 -71
  61. package/package/components/InputTransformForm.svelte.d.ts +3 -0
  62. package/package/components/InputTransformSchemaForm.svelte +10 -5
  63. package/package/components/InputTransformSchemaForm.svelte.d.ts +2 -0
  64. package/package/components/InstanceSetting.svelte +34 -51
  65. package/package/components/InstanceSettings.svelte +12 -21
  66. package/package/components/JobArgs.svelte +15 -16
  67. package/package/components/JobArgs.svelte.d.ts +4 -18
  68. package/package/components/JobLoader.svelte +23 -42
  69. package/package/components/JobLoader.svelte.d.ts +2 -0
  70. package/package/components/JobStatus.svelte +1 -1
  71. package/package/components/JobStatus.svelte.d.ts +4 -18
  72. package/package/components/JsonEditor.svelte +18 -9
  73. package/package/components/JsonEditor.svelte.d.ts +1 -1
  74. package/package/components/JsonInputs.svelte +1 -1
  75. package/package/components/ModulePreviewForm.svelte +23 -19
  76. package/package/components/ModulePreviewResultViewer.svelte +1 -7
  77. package/package/components/NextcloudSetting.svelte +6 -1
  78. package/package/components/NumberTypeNarrowing.svelte +32 -16
  79. package/package/components/ObjectStoreConfigSettings.svelte +27 -19
  80. package/package/components/Password.svelte +7 -11
  81. package/package/components/Password.svelte.d.ts +5 -20
  82. package/package/components/PasswordArgInput.svelte +35 -15
  83. package/package/components/PasswordArgInput.svelte.d.ts +4 -18
  84. package/package/components/Path.svelte +2 -8
  85. package/package/components/Path.svelte.d.ts +1 -1
  86. package/package/components/QueuePosition.svelte +6 -2
  87. package/package/components/ResourceEditor.svelte +3 -10
  88. package/package/components/ResourcePicker.svelte +85 -72
  89. package/package/components/ResourcePicker.svelte.d.ts +2 -0
  90. package/package/components/RunChart.svelte +1 -1
  91. package/package/components/RunForm.svelte +16 -21
  92. package/package/components/S3ArrayHelperButton.svelte +18 -0
  93. package/package/components/S3ArrayHelperButton.svelte.d.ts +9 -0
  94. package/package/components/S3FilePicker.svelte +1 -1
  95. package/package/components/SchemaForm.svelte +18 -10
  96. package/package/components/SchemaForm.svelte.d.ts +7 -1
  97. package/package/components/SchemaFormWithArgPicker.svelte +1 -1
  98. package/package/components/ScriptBuilder.svelte +2 -2
  99. package/package/components/ScriptEditor.svelte +9 -9
  100. package/package/components/ScriptEditor.svelte.d.ts +1 -1
  101. package/package/components/ShareModal.svelte +4 -4
  102. package/package/components/SimpleEditor.svelte +6 -2
  103. package/package/components/SimpleEditor.svelte.d.ts +3 -0
  104. package/package/components/StringTypeNarrowing.svelte +44 -25
  105. package/package/components/StringTypeNarrowing.svelte.d.ts +1 -1
  106. package/package/components/SuperadminSettingsInner.svelte +3 -3
  107. package/package/components/TeamSelector.svelte +83 -37
  108. package/package/components/TeamSelector.svelte.d.ts +0 -1
  109. package/package/components/TemplateEditor.svelte +18 -9
  110. package/package/components/Toast.svelte +2 -7
  111. package/package/components/Toast.svelte.d.ts +4 -18
  112. package/package/components/Toggle.svelte +17 -7
  113. package/package/components/ToggleHubWorkspaceQuick.svelte +3 -3
  114. package/package/components/WorkerGroup.svelte +2 -14
  115. package/package/components/apps/components/buttons/AppButton.svelte +66 -38
  116. package/package/components/apps/components/display/dbtable/InsertRow.svelte +32 -2
  117. package/package/components/apps/components/display/dbtable/queries/insert.js +2 -1
  118. package/package/components/apps/components/display/dbtable/utils.d.ts +8 -8
  119. package/package/components/apps/components/display/table/AppAggridInfiniteTable.svelte +13 -4
  120. package/package/components/apps/components/display/table/SyncColumnDefs.svelte +2 -2
  121. package/package/components/apps/components/display/table/utils.js +14 -4
  122. package/package/components/apps/components/helpers/RefreshButton.svelte +5 -1
  123. package/package/components/apps/components/helpers/RunnableComponent.svelte +3 -5
  124. package/package/components/apps/components/helpers/RunnableWrapper.svelte.d.ts +1 -0
  125. package/package/components/apps/components/inputs/currency/CurrencyInput.svelte +2 -1
  126. package/package/components/apps/components/layout/AppTabs.svelte +116 -71
  127. package/package/components/apps/components/layout/AppTabs.svelte.d.ts +1 -0
  128. package/package/components/apps/editor/AppEditorHeader.svelte +33 -271
  129. package/package/components/apps/editor/AppEditorHeaderDeploy.svelte +233 -0
  130. package/package/components/apps/editor/AppEditorHeaderDeploy.svelte.d.ts +18 -0
  131. package/package/components/apps/editor/AppEditorHeaderDeployInitialDraft.svelte +47 -0
  132. package/package/components/apps/editor/AppEditorHeaderDeployInitialDraft.svelte.d.ts +8 -0
  133. package/package/components/apps/editor/GridEditor.svelte +7 -2
  134. package/package/components/apps/editor/appDeploy.svelte.d.ts +1 -0
  135. package/package/components/apps/editor/appDeploy.svelte.js +6 -0
  136. package/package/components/apps/editor/appUtils.d.ts +1 -0
  137. package/package/components/apps/editor/appUtils.js +30 -1
  138. package/package/components/apps/editor/component/ComponentInner.svelte +1 -0
  139. package/package/components/apps/editor/component/ComponentNavigation.svelte +3 -1
  140. package/package/components/apps/editor/component/components.d.ts +19 -4
  141. package/package/components/apps/editor/component/components.js +23 -3
  142. package/package/components/apps/editor/contextPanel/ComponentOutputViewer.svelte +1 -1
  143. package/package/components/apps/editor/inlineScriptsPanel/EmptyInlineScript.svelte +6 -4
  144. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte.d.ts +1 -1
  145. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorDrawer.svelte.d.ts +1 -1
  146. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte.d.ts +1 -1
  147. package/package/components/apps/editor/settingsPanel/ComponentPanel.svelte +2 -0
  148. package/package/components/apps/editor/settingsPanel/GridTab.svelte +19 -1
  149. package/package/components/apps/editor/settingsPanel/GridTab.svelte.d.ts +3 -1
  150. package/package/components/apps/editor/settingsPanel/GridTabHidden.svelte +52 -0
  151. package/package/components/apps/editor/settingsPanel/GridTabHidden.svelte.d.ts +9 -0
  152. package/package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +58 -8
  153. package/package/components/auditLogs/AuditLogsFilters.svelte +7 -1
  154. package/package/components/auditLogs/AuditLogsTable.svelte +17 -7
  155. package/package/components/auditLogs/AuditLogsTable.svelte.d.ts +1 -0
  156. package/package/components/common/CloseButton.svelte +2 -2
  157. package/package/components/common/CloseButton.svelte.d.ts +1 -0
  158. package/package/components/common/ResizeTransitionWrapper.svelte +39 -0
  159. package/package/components/common/ResizeTransitionWrapper.svelte.d.ts +12 -0
  160. package/package/components/common/badge/CountBadge.svelte +29 -0
  161. package/package/components/common/badge/CountBadge.svelte.d.ts +8 -0
  162. package/package/components/common/button/Button.svelte +1 -0
  163. package/package/components/common/button/ConnectionButton.svelte +6 -1
  164. package/package/components/common/button/ConnectionButton.svelte.d.ts +2 -0
  165. package/package/components/common/button/RefreshButton.svelte +8 -4
  166. package/package/components/common/button/RefreshButton.svelte.d.ts +3 -0
  167. package/package/components/common/calendarPicker/CalendarPicker.svelte +1 -1
  168. package/package/components/common/fileInput/FileInput.svelte +7 -6
  169. package/package/components/common/fileUpload/S3ArgInput.svelte +11 -9
  170. package/package/components/common/fileUpload/S3ArgInput.svelte.d.ts +1 -0
  171. package/package/components/common/layout/List.svelte +3 -7
  172. package/package/components/common/layout/List.svelte.d.ts +7 -29
  173. package/package/components/common/popup/PopupV2.svelte +14 -25
  174. package/package/components/common/popup/PopupV2.svelte.d.ts +4 -2
  175. package/package/components/common/table/ScriptRow.svelte +22 -2
  176. package/package/components/common/toggleButton-v2/ToggleButton.svelte +17 -26
  177. package/package/components/common/toggleButton-v2/ToggleButton.svelte.d.ts +16 -30
  178. package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte +1 -1
  179. package/package/components/common/toggleButton-v2/ToggleButtonMore.svelte +3 -3
  180. package/package/components/common/toggleButton-v2/ToggleButtonMore.svelte.d.ts +1 -0
  181. package/package/components/copilot/CodeCompletionStatus.svelte +2 -1
  182. package/package/components/copilot/CronGen.svelte +1 -1
  183. package/package/components/copilot/FlowCopilotInputsModal.svelte +26 -23
  184. package/package/components/copilot/FlowInlineScriptAIButton.svelte +2 -2
  185. package/package/components/copilot/IteratorGen.svelte +30 -25
  186. package/package/components/copilot/IteratorGen.svelte.d.ts +8 -7
  187. package/package/components/copilot/MetadataGen.svelte +4 -3
  188. package/package/components/copilot/PredicateGen.svelte +15 -12
  189. package/package/components/copilot/PredicateGen.svelte.d.ts +5 -4
  190. package/package/components/copilot/RegexGen.svelte +1 -1
  191. package/package/components/copilot/ScriptFix.svelte +1 -1
  192. package/package/components/copilot/ScriptGen.svelte +2 -1
  193. package/package/components/copilot/StepGenQuick.svelte +15 -16
  194. package/package/components/copilot/StepGenQuick.svelte.d.ts +14 -13
  195. package/package/components/copilot/StepInputGen.svelte +50 -36
  196. package/package/components/copilot/StepInputGen.svelte.d.ts +13 -10
  197. package/package/components/copilot/StepInputsGen.svelte +18 -19
  198. package/package/components/copilot/StepInputsGen.svelte.d.ts +4 -18
  199. package/package/components/copilot/autocomplete/Autocompletor.js +1 -1
  200. package/package/components/copilot/autocomplete/request.js +1 -1
  201. package/package/components/copilot/chat/AIChat.svelte +2 -1
  202. package/package/components/copilot/chat/AIChatManager.svelte.js +5 -3
  203. package/package/components/copilot/chat/AiChatLayout.svelte +2 -1
  204. package/package/components/copilot/chat/ProviderModelSelector.svelte +11 -10
  205. package/package/components/copilot/chat/ProviderModelSelector.svelte.d.ts +2 -17
  206. package/package/components/copilot/chat/flow/FlowAIButton.svelte +1 -1
  207. package/package/components/copilot/chat/flow/FlowAIChat.svelte +4 -2
  208. package/package/components/copilot/chat/script/core.d.ts +4 -4
  209. package/package/components/copilot/chat/script/core.js +95 -35
  210. package/package/components/copilot/chat/shared.js +2 -1
  211. package/package/components/copilot/lib.d.ts +1 -0
  212. package/package/components/copilot/lib.js +7 -3
  213. package/package/components/custom_ui.d.ts +1 -0
  214. package/package/components/details/DetailPageLayout.svelte +3 -2
  215. package/package/components/details/DetailPageLayout.svelte.d.ts +1 -0
  216. package/package/components/flows/CreateActionsFlow.svelte +1 -1
  217. package/package/components/flows/FlowChatInterface.svelte +404 -0
  218. package/package/components/flows/FlowChatInterface.svelte.d.ts +19 -0
  219. package/package/components/flows/FlowChatMessage.svelte +41 -0
  220. package/package/components/flows/FlowChatMessage.svelte.d.ts +9 -0
  221. package/package/components/flows/FlowConversationsSidebar.svelte +213 -0
  222. package/package/components/flows/FlowConversationsSidebar.svelte.d.ts +15 -0
  223. package/package/components/flows/FlowEditor.svelte.d.ts +1 -1
  224. package/package/components/flows/FlowModuleIcon.svelte +10 -10
  225. package/package/components/flows/FlowProgressBar.svelte +16 -16
  226. package/package/components/flows/FlowProgressBar.svelte.d.ts +7 -22
  227. package/package/components/flows/common/FlowCard.svelte +10 -2
  228. package/package/components/flows/common/FlowCard.svelte.d.ts +1 -0
  229. package/package/components/flows/common/FlowCardHeader.svelte +2 -1
  230. package/package/components/flows/common/FlowCardHeader.svelte.d.ts +1 -0
  231. package/package/components/flows/content/DynamicInputHelpBox.svelte +4 -4
  232. package/package/components/flows/content/FlowEditorPanel.svelte.d.ts +1 -1
  233. package/package/components/flows/content/FlowInput.svelte +381 -259
  234. package/package/components/flows/content/FlowInput.svelte.d.ts +1 -1
  235. package/package/components/flows/content/FlowInputsQuick.svelte +56 -34
  236. package/package/components/flows/content/FlowInputsQuick.svelte.d.ts +3 -2
  237. package/package/components/flows/content/FlowModuleComponent.svelte +29 -11
  238. package/package/components/flows/flowInfers.d.ts +60 -0
  239. package/package/components/flows/flowInfers.js +72 -40
  240. package/package/components/flows/{flowStore.d.ts → flowStore.svelte.d.ts} +5 -1
  241. package/package/components/flows/header/FlowPreviewButtons.svelte +1 -1
  242. package/package/components/flows/map/FlowErrorHandlerItem.svelte +4 -2
  243. package/package/components/flows/map/FlowErrorHandlerItem.svelte.d.ts +1 -0
  244. package/package/components/flows/map/FlowJobsMenu.svelte +3 -3
  245. package/package/components/flows/map/FlowJobsMenu.svelte.d.ts +1 -1
  246. package/package/components/flows/map/FlowModuleSchemaItem.svelte +1 -1
  247. package/package/components/flows/map/FlowModuleSchemaMap.svelte +5 -2
  248. package/package/components/flows/map/FlowStickyNode.svelte +2 -2
  249. package/package/components/flows/map/FlowStickyNode.svelte.d.ts +1 -0
  250. package/package/components/flows/map/InsertModuleButton.svelte +8 -15
  251. package/package/components/flows/map/InsertModuleButton.svelte.d.ts +4 -4
  252. package/package/components/flows/map/InsertModuleInner.svelte +19 -20
  253. package/package/components/flows/map/InsertModuleInner.svelte.d.ts +2 -2
  254. package/package/components/flows/map/MapItem.svelte +1 -1
  255. package/package/components/flows/map/VirtualItem.svelte +1 -2
  256. package/package/components/flows/pickers/PickHubScriptQuick.svelte +43 -52
  257. package/package/components/flows/pickers/PickHubScriptQuick.svelte.d.ts +2 -1
  258. package/package/components/flows/pickers/WorkspaceScriptPickerQuick.svelte +41 -26
  259. package/package/components/flows/pickers/WorkspaceScriptPickerQuick.svelte.d.ts +1 -0
  260. package/package/components/flows/propPicker/OutputPicker.svelte +2 -0
  261. package/package/components/flows/propPicker/PropPickerWrapper.svelte +1 -15
  262. package/package/components/git_sync/DetectionFlow.svelte +33 -44
  263. package/package/components/git_sync/DetectionFlow.svelte.d.ts +1 -0
  264. package/package/components/git_sync/GitSyncContext.svelte.d.ts +22 -0
  265. package/package/components/git_sync/GitSyncContext.svelte.js +145 -5
  266. package/package/components/git_sync/GitSyncModeDisplay.svelte +14 -0
  267. package/package/components/git_sync/GitSyncModeDisplay.svelte.d.ts +9 -0
  268. package/package/components/git_sync/GitSyncRepositoryCard.svelte +365 -253
  269. package/package/components/git_sync/GitSyncRepositoryCard.svelte.d.ts +10 -1
  270. package/package/components/git_sync/GitSyncSection.svelte +134 -14
  271. package/package/components/git_sync/PullWorkspaceModal.svelte +24 -32
  272. package/package/components/git_sync/PushWorkspaceModal.svelte +24 -32
  273. package/package/components/graph/FlowGraphV2.svelte +2 -1
  274. package/package/components/graph/FlowGraphV2.svelte.d.ts +1 -0
  275. package/package/components/graph/graphBuilder.svelte.d.ts +2 -0
  276. package/package/components/graph/graphBuilder.svelte.js +1 -0
  277. package/package/components/graph/model.d.ts +5 -5
  278. package/package/components/graph/renderers/edges/BaseEdge.svelte +1 -0
  279. package/package/components/graph/renderers/edges/EmptyEdge.svelte +3 -10
  280. package/package/components/graph/renderers/edges/EmptyEdge.svelte.d.ts +4 -18
  281. package/package/components/graph/renderers/nodes/AIToolNode.svelte +2 -2
  282. package/package/components/graph/renderers/nodes/InputNode.svelte +13 -2
  283. package/package/components/graph/renderers/nodes/NewAIToolNode.svelte +5 -10
  284. package/package/components/graph/renderers/triggers/TriggersBadge.svelte +2 -27
  285. package/package/components/home/ItemsList.svelte +1 -1
  286. package/package/components/instanceSettings.js +17 -0
  287. package/package/components/jobs/JobProgressBar.svelte +27 -21
  288. package/package/components/jobs/JobProgressBar.svelte.d.ts +9 -24
  289. package/package/components/meltComponents/MenuSingleItem.svelte +3 -8
  290. package/package/components/meltComponents/MenuSingleItem.svelte.d.ts +0 -3
  291. package/package/components/meltComponents/Popover.svelte +3 -2
  292. package/package/components/meltComponents/Popover.svelte.d.ts +1 -0
  293. package/package/components/meltComponents/Tooltip.svelte +1 -1
  294. package/package/components/progressBar/ProgressBar.svelte +39 -53
  295. package/package/components/progressBar/ProgressBar.svelte.d.ts +11 -26
  296. package/package/components/raw_apps/FileEditorIcon.svelte +1 -1
  297. package/package/components/raw_apps/FileEditorIcon.svelte.d.ts +4 -18
  298. package/package/components/raw_apps/RawAppBackgroundRunner.svelte +2 -8
  299. package/package/components/raw_apps/RawAppBackgroundRunner.svelte.d.ts +4 -18
  300. package/package/components/raw_apps/RawAppEditor.svelte +6 -7
  301. package/package/components/raw_apps/RawAppEditorHeader.svelte +48 -301
  302. package/package/components/raw_apps/RawAppEditorHeader.svelte.d.ts +18 -19
  303. package/package/components/raw_apps/RawAppInlineScriptEditor.svelte +10 -16
  304. package/package/components/raw_apps/RawAppInlineScriptEditor.svelte.d.ts +13 -13
  305. package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte +8 -11
  306. package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte.d.ts +1 -2
  307. package/package/components/raw_apps/RawAppInlineScriptRunnable.svelte +0 -1
  308. package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte +7 -13
  309. package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte.d.ts +8 -8
  310. package/package/components/raw_apps/RawAppPreview.svelte +3 -7
  311. package/package/components/raw_apps/RawAppPreview.svelte.d.ts +5 -19
  312. package/package/components/raw_apps/utils.d.ts +1 -1
  313. package/package/components/raw_apps/utils.js +3 -3
  314. package/package/components/runs/JobsLoader.svelte +1 -1
  315. package/package/components/runs/NoWorkerWithTagWarning.svelte +3 -3
  316. package/package/components/runs/NoWorkerWithTagWarning.svelte.d.ts +1 -1
  317. package/package/components/runs/RunOption.svelte +2 -2
  318. package/package/components/runs/RunsFilter.svelte +15 -12
  319. package/package/components/runs/RunsFilter.svelte.d.ts +1 -1
  320. package/package/components/schema/AddPropertyV2.svelte +7 -4
  321. package/package/components/schema/EditableSchemaDrawer.svelte +19 -18
  322. package/package/components/schema/FlowPropertyEditor.svelte +9 -2
  323. package/package/components/schema/FlowPropertyEditor.svelte.d.ts +1 -1
  324. package/package/components/schema/PropertyEditor.svelte +22 -26
  325. package/package/components/schema/PropertyEditor.svelte.d.ts +1 -1
  326. package/package/components/schema/SchemaFormDND.svelte +3 -2
  327. package/package/components/schema/SchemaFormDND.svelte.d.ts +1 -0
  328. package/package/components/select/DraggableTags.svelte +2 -2
  329. package/package/components/select/MultiSelect.svelte +15 -9
  330. package/package/components/select/MultiSelect.svelte.d.ts +1 -0
  331. package/package/components/select/Select.svelte +12 -5
  332. package/package/components/select/Select.svelte.d.ts +11 -0
  333. package/package/components/select/SelectDropdown.svelte +98 -46
  334. package/package/components/select/SelectDropdown.svelte.d.ts +10 -0
  335. package/package/components/select/utils.svelte.js +2 -0
  336. package/package/components/settings/CreateToken.svelte +76 -49
  337. package/package/components/settings/WorkspaceUserSettings.svelte +111 -17
  338. package/package/components/sidebar/CriticalAlertTable.svelte +2 -1
  339. package/package/components/sidebar/Linkify.svelte +14 -0
  340. package/package/components/sidebar/Linkify.svelte.d.ts +5 -0
  341. package/package/components/sidebar/MenuLink.svelte +2 -1
  342. package/package/components/sidebar/MenuLink.svelte.d.ts +1 -0
  343. package/package/components/sidebar/SidebarContent.svelte +27 -27
  344. package/package/components/sidebar/WorkspaceMenu.svelte +8 -3
  345. package/package/components/table/Cell.svelte +7 -14
  346. package/package/components/table/Cell.svelte.d.ts +13 -35
  347. package/package/components/table/tableUtils.js +1 -1
  348. package/package/components/text_input/TextInput.svelte +30 -0
  349. package/package/components/text_input/TextInput.svelte.d.ts +17 -0
  350. package/package/components/triggers/AddTriggersButton.svelte +1 -0
  351. package/package/components/triggers/TriggersEditor.svelte +11 -1
  352. package/package/components/triggers/gcp/GcpTriggerEditorConfigSection.svelte +1 -1
  353. package/package/components/triggers/gcp/GcpTriggerEditorConfigSection.svelte.d.ts +2 -1
  354. package/package/components/triggers/gcp/GcpTriggerEditorInner.svelte +28 -5
  355. package/package/components/triggers/gcp/utils.js +1 -0
  356. package/package/components/triggers/schedules/ScheduleEditorInner.svelte +1 -0
  357. package/package/components/triggers/triggers.svelte.d.ts +1 -1
  358. package/package/components/triggers/triggers.svelte.js +8 -4
  359. package/package/components/triggers/webhook/WebhooksConfigSection.svelte +143 -63
  360. package/package/components/triggers/websocket/WebsocketTriggerEditorInner.svelte +22 -0
  361. package/package/components/triggers/websocket/utils.js +1 -0
  362. package/package/components/tutorials/FlowBuilderTutorialErrorHandler.svelte +2 -2
  363. package/package/components/tutorials/FlowBuilderTutorialForLoop.svelte +3 -0
  364. package/package/components/tutorials/FlowBuilderTutorialSimpleFlow.svelte +49 -17
  365. package/package/components/tutorials/Tutorial.svelte +9 -0
  366. package/package/components/tutorials/Tutorial.svelte.d.ts +1 -0
  367. package/package/components/tutorials/app/AppTutorial.svelte +41 -57
  368. package/package/components/tutorials/app/BackgroundRunnablesTutorial.svelte +3 -5
  369. package/package/components/tutorials/app/ConnectionTutorial.svelte +2 -2
  370. package/package/components/tutorials/utils.js +2 -154
  371. package/package/components/vscode.js +16 -8
  372. package/package/components/workspaceSettings/AISettings.svelte +12 -5
  373. package/package/components/workspaceSettings/AISettings.svelte.d.ts +2 -1
  374. package/package/components/workspaceSettings/CreateWorkspace.svelte +2 -2
  375. package/package/components/workspaceSettings/DucklakeSettings.svelte +64 -7
  376. package/package/components/workspaceSettings/ModelTokenLimits.svelte +165 -0
  377. package/package/components/workspaceSettings/ModelTokenLimits.svelte.d.ts +8 -0
  378. package/package/components/workspaceSettings/StorageSettings.svelte +147 -77
  379. package/package/editorUtils.d.ts +1 -1
  380. package/package/gen/core/OpenAPI.js +1 -1
  381. package/package/gen/schemas.gen.d.ts +223 -17
  382. package/package/gen/schemas.gen.js +226 -17
  383. package/package/gen/services.gen.d.ts +221 -27
  384. package/package/gen/services.gen.js +440 -48
  385. package/package/gen/types.gen.d.ts +1067 -218
  386. package/package/hubPaths.json +2 -1
  387. package/package/script_helpers.js +5 -5
  388. package/package/services/JobManager.js +14 -9
  389. package/package/stores.d.ts +4 -12
  390. package/package/stores.js +5 -65
  391. package/package/timelineCompute.svelte.d.ts +21 -0
  392. package/package/timelineCompute.svelte.js +113 -0
  393. package/package/toast.js +2 -1
  394. package/package/utils.d.ts +16 -8
  395. package/package/utils.js +65 -12
  396. package/package/workspace_settings.d.ts +13 -8
  397. package/package/workspace_settings.js +46 -11
  398. package/package.json +4 -4
  399. /package/package/components/flows/{flowStore.js → flowStore.svelte.js} +0 -0
@@ -3,12 +3,7 @@ import { CheckCircle2, XCircleIcon } from 'lucide-svelte';
3
3
  import { onMount } from 'svelte';
4
4
  import Button from './common/button/Button.svelte';
5
5
  import { processMessage } from './toast';
6
- export let message;
7
- export let toastId;
8
- export let error = false;
9
- export let actions = [];
10
- export let errorMessage = undefined;
11
- export let duration = 5000;
6
+ let { message, toastId, error = false, actions = [], errorMessage = undefined, duration = 5000 } = $props();
12
7
  function handleClose() {
13
8
  toast.pop(toastId);
14
9
  }
@@ -46,7 +41,7 @@ onMount(() => {
46
41
  <div class="ml-4 flex flex-shrink-0">
47
42
  <button
48
43
  type="button"
49
- on:click={handleClose}
44
+ onclick={handleClose}
50
45
  class="inline-flex rounded-md bg-surface-secondary text-gray-400 hover:text-tertiary focus:outline-none"
51
46
  >
52
47
  <span class="sr-only">Close</span>
@@ -1,26 +1,12 @@
1
1
  import type { ToastAction } from '../toast';
2
- interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
3
- new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
4
- $$bindings?: Bindings;
5
- } & Exports;
6
- (internal: unknown, props: Props & {
7
- $$events?: Events;
8
- $$slots?: Slots;
9
- }): Exports & {
10
- $set?: any;
11
- $on?: any;
12
- };
13
- z_$$bindings?: Bindings;
14
- }
15
- declare const Toast: $$__sveltets_2_IsomorphicComponent<{
2
+ interface Props {
16
3
  message: string;
17
4
  toastId: string;
18
5
  error?: boolean;
19
6
  actions?: ToastAction[];
20
7
  errorMessage?: string | undefined;
21
8
  duration?: number;
22
- }, {
23
- [evt: string]: CustomEvent<any>;
24
- }, {}, {}, string>;
25
- type Toast = InstanceType<typeof Toast>;
9
+ }
10
+ declare const Toast: import("svelte").Component<Props, {}, "">;
11
+ type Toast = ReturnType<typeof Toast>;
26
12
  export default Toast;
@@ -4,12 +4,13 @@ import { twMerge } from 'tailwind-merge';
4
4
  import Tooltip from './Tooltip.svelte';
5
5
  import { AlertTriangle } from 'lucide-svelte';
6
6
  import { triggerableByAI } from '../actions/triggerableByAI.svelte';
7
+ import { inputBorderClass } from './text_input/TextInput.svelte';
7
8
  export let options = {};
8
9
  export let checked = false;
9
10
  export let disabled = false;
10
11
  export let textClass = '';
11
12
  export let textStyle = '';
12
- export let color = 'blue';
13
+ export let color = 'nord';
13
14
  export let id = (Math.random() + 1).toString(36).substring(10);
14
15
  export let lightMode = false;
15
16
  export let eeOnly = false;
@@ -31,8 +32,12 @@ export let textDisabled = false;
31
32
  {#if Boolean(options?.left)}
32
33
  <span
33
34
  class={twMerge(
34
- 'mr-2 font-medium duration-50 select-none',
35
- bothOptions || textDisabled ? (checked ? 'text-disabled' : 'text-primary') : 'text-primary',
35
+ 'mr-2 font-normal duration-50 select-none',
36
+ bothOptions || textDisabled
37
+ ? checked
38
+ ? 'text-disabled'
39
+ : 'text-tertiary'
40
+ : 'text-tertiary',
36
41
  size === 'xs' || size === '2sm' ? 'text-xs' : size === '2xs' ? 'text-[0.5rem]' : 'text-sm',
37
42
  textClass
38
43
  )}
@@ -77,22 +82,27 @@ export let textDisabled = false;
77
82
  ? 'peer-checked:bg-red-600'
78
83
  : color == 'blue'
79
84
  ? 'peer-checked:bg-blue-600 dark:peer-checked:bg-blue-500'
80
- : 'peer-checked:bg-nord-950 dark:peer-checked:bg-nord-400',
85
+ : 'peer-checked:bg-nord-950 dark:peer-checked:bg-nord-900',
81
86
  size === 'sm'
82
87
  ? 'w-11 h-6 after:top-0.5 after:left-[2px] after:h-5 after:w-5'
83
88
  : size === '2sm'
84
89
  ? 'w-9 h-5 after:top-0.5 after:left-[2px] after:h-4 after:w-4'
85
90
  : size === '2xs'
86
91
  ? 'w-5 h-3 after:top-0.5 after:left-[2px] after:h-2 after:w-2'
87
- : 'w-7 h-4 after:top-0.5 after:left-[2px] after:h-3 after:w-3'
92
+ : 'w-7 h-4 after:top-0.5 after:left-[2px] after:h-3 after:w-3',
93
+ inputBorderClass()
88
94
  )}
89
95
  ></div>
90
96
  </div>
91
97
  {#if Boolean(options?.right)}
92
98
  <span
93
99
  class={twMerge(
94
- 'ml-2 font-medium duration-50 select-none',
95
- bothOptions || textDisabled ? (checked ? 'text-primary' : 'text-disabled') : 'text-primary',
100
+ 'ml-2 font-normal duration-50 select-none',
101
+ bothOptions || textDisabled
102
+ ? checked
103
+ ? 'text-secondary'
104
+ : 'text-disabled'
105
+ : 'text-secondary',
96
106
  size === 'xs' || size === '2sm' ? 'text-xs' : size === '2xs' ? 'text-xs' : 'text-sm',
97
107
  textClass
98
108
  )}
@@ -8,9 +8,9 @@ let { selected = $bindable('all') } = $props();
8
8
  <div class="max-w-min">
9
9
  <ToggleButtonGroup id="flow-editor-flow-providers" bind:selected>
10
10
  {#snippet children({ item })}
11
- <ToggleButton value="all" label="All" light small {item} />
12
- <ToggleButton value="hub" icon={WindmillIcon2} label="Hub" light small {item} />
13
- <ToggleButton value="workspace" icon={Building} label="Workspace" light small {item} />
11
+ <ToggleButton value="all" label="All" light {item} />
12
+ <ToggleButton value="hub" icon={WindmillIcon2} label="Hub" light {item} />
13
+ <ToggleButton value="workspace" icon={Building} label="Workspace" light {item} />
14
14
  {/snippet}
15
15
  </ToggleButtonGroup>
16
16
  </div>
@@ -187,20 +187,8 @@ $effect(() => {
187
187
  class="mb-4"
188
188
  >
189
189
  {#snippet children({ item })}
190
- <ToggleButton
191
- position="left"
192
- value="normal"
193
- size="sm"
194
- label="Any jobs within worker tags"
195
- {item}
196
- />
197
- <ToggleButton
198
- position="dedicated"
199
- value="dedicated"
200
- size="sm"
201
- label="Dedicated to a script/flow"
202
- {item}
203
- />
190
+ <ToggleButton value="normal" small label="Any jobs within worker tags" {item} />
191
+ <ToggleButton value="dedicated" small label="Dedicated to a script/flow" {item} />
204
192
  {/snippet}
205
193
  </ToggleButtonGroup>
206
194
  {#if selected == 'normal'}
@@ -70,6 +70,13 @@ async function handleClick(event) {
70
70
  event?.stopPropagation();
71
71
  event?.preventDefault();
72
72
  $selectedComponent = [id];
73
+ // Show brief feedback for background mode
74
+ if (resolvedConfig.runInBackground) {
75
+ backgroundClickFeedback = true;
76
+ setTimeout(() => {
77
+ backgroundClickFeedback = false;
78
+ }, 300);
79
+ }
73
80
  const action = async () => {
74
81
  const inputOutput = { result: outputs.result.peak(), loading: true };
75
82
  if (rowContext && rowInputs) {
@@ -96,6 +103,7 @@ async function handleClick(event) {
96
103
  }
97
104
  }
98
105
  let loading = $state(false);
106
+ let backgroundClickFeedback = $state(false);
99
107
  let css = $state(initCss($app.css?.buttoncomponent, customCss));
100
108
  $effect(() => {
101
109
  errorHandledByComponent = resolvedConfig?.onError?.selected !== 'errorOverlay';
@@ -150,6 +158,7 @@ let errorsMessage = $derived(Object.values(errors)
150
158
  {render}
151
159
  {outputs}
152
160
  {extraKey}
161
+ allowConcurentRequests={resolvedConfig.runInBackground}
153
162
  onSuccess={(r) => {
154
163
  let inputOutput = { result: r, loading: false }
155
164
  if (rowContext && rowInputs) {
@@ -173,45 +182,64 @@ let errorsMessage = $derived(Object.values(errors)
173
182
  <div class="text-red-500 text-xs">{errorsMessage}</div>
174
183
  {/if}
175
184
  {#key css}
176
- <Button
177
- on:pointerdown={(e) => e.stopPropagation()}
178
- btnClasses={twMerge(
179
- css?.button?.class ?? '',
180
- isMenuItem ? 'flex items-center justify-start' : '',
181
- isMenuItem ? '!border-0' : '',
182
- 'wm-button',
183
- `wm-button-${resolvedConfig.color}`
184
- )}
185
- variant={isMenuItem ? 'border' : 'contained'}
186
- style={css?.button?.style}
187
- wrapperClasses={twMerge(
188
- css?.container?.class ?? '',
189
- resolvedConfig.fillContainer ? 'w-full h-full' : '',
190
- isMenuItem ? 'w-full' : '',
191
- 'wm-button-container',
192
- `wm-button-container-${resolvedConfig.color}`
193
- )}
194
- wrapperStyle={css?.container?.style}
195
- disabled={resolvedConfig.disabled}
196
- on:click={handleClick}
197
- size={resolvedConfig.size}
198
- color={resolvedConfig.color}
199
- {loading}
185
+ <div
186
+ class="inline-flex"
187
+ title={resolvedConfig.tooltip && String(resolvedConfig.tooltip).length > 0
188
+ ? String(resolvedConfig.tooltip)
189
+ : undefined}
200
190
  >
201
- {#if resolvedConfig.beforeIcon}
202
- {#key resolvedConfig.beforeIcon}
203
- <div class={resolvedConfig.label?.toString() && resolvedConfig.label?.toString()?.length > 0 ? "min-w-4" : ""} bind:this={beforeIconComponent}></div>
204
- {/key}
205
- {/if}
206
- {#if resolvedConfig.label?.toString() && resolvedConfig.label?.toString()?.length > 0}
207
- <div>{resolvedConfig.label.toString()}</div>
208
- {/if}
209
- {#if resolvedConfig.afterIcon}
210
- {#key resolvedConfig.afterIcon}
211
- <div class={resolvedConfig.label?.toString() && resolvedConfig.label?.toString()?.length > 0 ? "min-w-4" : ""} bind:this={afterIconComponent}></div>
212
- {/key}
213
- {/if}
214
- </Button>
191
+ <Button
192
+ on:pointerdown={(e) => e.stopPropagation()}
193
+ btnClasses={twMerge(
194
+ css?.button?.class ?? '',
195
+ isMenuItem ? 'flex items-center justify-start' : '',
196
+ isMenuItem ? '!border-0' : '',
197
+ 'wm-button',
198
+ `wm-button-${resolvedConfig.color}`
199
+ )}
200
+ variant={isMenuItem ? 'border' : 'contained'}
201
+ style={css?.button?.style}
202
+ wrapperClasses={twMerge(
203
+ css?.container?.class ?? '',
204
+ resolvedConfig.fillContainer ? 'w-full h-full' : '',
205
+ isMenuItem ? 'w-full' : '',
206
+ 'wm-button-container',
207
+ `wm-button-container-${resolvedConfig.color}`
208
+ )}
209
+ wrapperStyle={css?.container?.style}
210
+ disabled={resolvedConfig.disabled}
211
+ on:click={handleClick}
212
+ size={resolvedConfig.size}
213
+ color={resolvedConfig.color}
214
+ loading={resolvedConfig.runInBackground ? backgroundClickFeedback : loading}
215
+ >
216
+ {#if resolvedConfig.beforeIcon}
217
+ {#key resolvedConfig.beforeIcon}
218
+ <div
219
+ class={resolvedConfig.label?.toString() &&
220
+ resolvedConfig.label?.toString()?.length > 0
221
+ ? 'min-w-4'
222
+ : ''}
223
+ bind:this={beforeIconComponent}
224
+ ></div>
225
+ {/key}
226
+ {/if}
227
+ {#if resolvedConfig.label?.toString() && resolvedConfig.label?.toString()?.length > 0}
228
+ <div>{resolvedConfig.label.toString()}</div>
229
+ {/if}
230
+ {#if resolvedConfig.afterIcon}
231
+ {#key resolvedConfig.afterIcon}
232
+ <div
233
+ class={resolvedConfig.label?.toString() &&
234
+ resolvedConfig.label?.toString()?.length > 0
235
+ ? 'min-w-4'
236
+ : ''}
237
+ bind:this={afterIconComponent}
238
+ ></div>
239
+ {/key}
240
+ {/if}
241
+ </Button>
242
+ </div>
215
243
  {/key}
216
244
  </AlignWrapper>
217
245
  </RunnableWrapper>
@@ -5,6 +5,7 @@ init(wasmUrl);
5
5
  import { argSigToJsonSchemaType } from 'windmill-utils-internal';
6
6
  import SchemaForm from '../../../../SchemaForm.svelte';
7
7
  import { untrack } from 'svelte';
8
+ import Toggle from '../../../../Toggle.svelte';
8
9
  let schema = $state(undefined);
9
10
  function parseSQLArgs(field, dbType) {
10
11
  let rawType = '';
@@ -87,7 +88,9 @@ async function builtSchema(fields, dbType) {
87
88
  let { args = $bindable({}), dbType = 'postgresql', columnDefs = [], isInsertable = $bindable(false) } = $props();
88
89
  let fields = $derived(columnDefs
89
90
  ?.filter((t) => {
90
- const shouldFilter = t.isidentity === ColumnIdentity.Always || t?.hideInsert === true;
91
+ const shouldFilter = t.isidentity === ColumnIdentity.Always ||
92
+ t?.hideInsert === true ||
93
+ t.defaultvalue?.startsWith('nextval('); // exclude postgres serial/auto increment fields
91
94
  return !shouldFilter;
92
95
  })
93
96
  .map((column) => {
@@ -119,5 +122,32 @@ $effect(() => {
119
122
  </script>
120
123
 
121
124
  {#if schema}
122
- <SchemaForm onlyMaskPassword {schema} bind:args />
125
+ <SchemaForm onlyMaskPassword {schema} bind:args>
126
+ {#snippet actions({ item })}
127
+ {@const disabled = fields?.[fields?.findIndex((f) => f.name === item.id)]?.nullable != 'YES'}
128
+ {#if !disabled}
129
+ <Toggle
130
+ options={{ right: 'NULL' }}
131
+ class="pl-2"
132
+ textClass="text-tertiary"
133
+ size="2sm"
134
+ bind:checked={
135
+ () => args[item.id] === null,
136
+ (v) => {
137
+ if (!schema?.properties[item.id]) return
138
+ if (v) {
139
+ schema.properties[item.id].nullable = true
140
+ schema.properties[item.id].disabled = true
141
+ args[item.id] = null
142
+ } else {
143
+ delete schema.properties[item.id].disabled
144
+ delete schema.properties[item.id].nullable
145
+ args[item.id] = schema.properties[item.id].default ?? ''
146
+ }
147
+ }
148
+ }
149
+ />
150
+ {/if}
151
+ {/snippet}
152
+ </SchemaForm>
123
153
  {/if}
@@ -69,7 +69,7 @@ function shouldOmitColumnInInsert(column) {
69
69
  export function makeInsertQuery(table, columns, dbType) {
70
70
  if (!table)
71
71
  throw new Error('Table name is required');
72
- const columnsInsert = columns.filter((x) => !x.hideInsert);
72
+ const columnsInsert = columns.filter((x) => !x.hideInsert && !(dbType == 'postgresql' && x.defaultvalue?.startsWith('nextval(')));
73
73
  const columnsDefault = columns.filter((c) => !shouldOmitColumnInInsert(c));
74
74
  const allInsertColumns = columnsInsert.concat(columnsDefault);
75
75
  let query = buildParameters(columnsInsert, dbType);
@@ -80,6 +80,7 @@ export function makeInsertQuery(table, columns, dbType) {
80
80
  const defaultValues = formatDefaultValues(columnsDefault);
81
81
  const commaOrEmpty = shouldInsertComma ? ', ' : '';
82
82
  query += `INSERT INTO ${table} (${columnNames}) VALUES (${insertValues}${commaOrEmpty}${defaultValues})`;
83
+ console.log(query);
83
84
  return query;
84
85
  }
85
86
  export function getInsertInput(table, columns, resource, dbType) {
@@ -57,6 +57,14 @@ export declare function formatSchema(dbSchema: {
57
57
  schema: SQLSchema['schema'];
58
58
  publicOnly: SQLSchema['publicOnly'];
59
59
  }): {
60
+ [tableKey: string]: {
61
+ [columnKey: string]: {
62
+ type: string;
63
+ default: string;
64
+ required: boolean;
65
+ };
66
+ };
67
+ } | {
60
68
  [schemaKey: string]: {
61
69
  [tableKey: string]: {
62
70
  [columnKey: string]: {
@@ -66,14 +74,6 @@ export declare function formatSchema(dbSchema: {
66
74
  };
67
75
  };
68
76
  };
69
- } | {
70
- [tableKey: string]: {
71
- [columnKey: string]: {
72
- type: string;
73
- default: string;
74
- required: boolean;
75
- };
76
- };
77
77
  };
78
78
  export declare function formatGraphqlSchema(schema: IntrospectionQuery): string;
79
79
  export type DbType = (typeof dbTypes)[number];
@@ -13,6 +13,7 @@ import { getPrimaryKeys } from '../dbtable/utils';
13
13
  import InitializeComponent from '../../helpers/InitializeComponent.svelte';
14
14
  import DebouncedInput from '../../helpers/DebouncedInput.svelte';
15
15
  import RunnableComponent from '../../helpers/RunnableComponent.svelte';
16
+ import { CancelablePromise } from '../../../../../gen';
16
17
  let { id, componentInput, configuration, initializing = $bindable(undefined), render, customCss = undefined, actions = undefined } = $props();
17
18
  let runnableComponent = $state(undefined);
18
19
  function clear() {
@@ -113,6 +114,7 @@ function updateSearchInOutputs() {
113
114
  $effect(() => {
114
115
  searchValue !== undefined && untrack(() => updateSearchInOutputs());
115
116
  });
117
+ let ignoreFirst = true;
116
118
  </script>
117
119
 
118
120
  {#each Object.keys(components['aggridinfinitecomponent'].initialData.configuration) as key (key)}
@@ -144,10 +146,17 @@ $effect(() => {
144
146
  bind:result
145
147
  bind:loading
146
148
  bind:runnableComponent
147
- on:recompute={() => {
148
- console.log('recompute')
149
- clear()
150
- }}
149
+ preventDefaultRefresh
150
+ overrideCallback={() =>
151
+ new CancelablePromise(async (resolve) => {
152
+ if (ignoreFirst) {
153
+ ignoreFirst = false
154
+ resolve()
155
+ return
156
+ }
157
+ clear()
158
+ resolve()
159
+ })}
151
160
  {render}
152
161
  autoRefresh={true}
153
162
  allowConcurentRequests
@@ -88,10 +88,10 @@ $effect(() => {
88
88
  });
89
89
  }
90
90
  });
91
+ let keys = $derived(Object.keys(result[0] ?? []).filter((x) => x !== '__index'));
91
92
  async function syncColumns() {
92
93
  const gridItem = findGridItem($app, id);
93
94
  if (gridItem && result) {
94
- const keys = Object.keys(result[0] ?? {}) ?? [];
95
95
  const conf = gridItem.data.configuration.columnDefs;
96
96
  const newColumns = keys.map((key) => ({
97
97
  field: key,
@@ -136,7 +136,7 @@ async function updateConfiguration() {
136
136
  <div class="flex flex-col items-start gap-2">
137
137
  <div class="text-xs"> No columns definition found. Columns found in data: </div>
138
138
  <div class="text-sm flex flex-row gap-2">
139
- {#each Object.keys(result[0] ?? []) as key}
139
+ {#each keys as key}
140
140
  <Badge small color="dark-gray">{key}</Badge>
141
141
  {/each}
142
142
  </div>
@@ -140,12 +140,22 @@ export function transformColumnDefs({ columnDefs, actions, customActionsHeader,
140
140
  ...(actionsIndex > -1
141
141
  ? {
142
142
  // keep width/pin/flex/align/hide from placeholder when provided
143
- ...(['width', 'minWidth', 'maxWidth', 'flex', 'pinned', 'headerName', 'cellStyle', 'cellClass', 'autoHeight', 'hide']
144
- .reduce((acc, key) => {
143
+ ...[
144
+ 'width',
145
+ 'minWidth',
146
+ 'maxWidth',
147
+ 'flex',
148
+ 'pinned',
149
+ 'headerName',
150
+ 'cellStyle',
151
+ 'cellClass',
152
+ 'autoHeight',
153
+ 'hide'
154
+ ].reduce((acc, key) => {
145
155
  if (r[actionsIndex] && r[actionsIndex][key] !== undefined)
146
156
  acc[key] = r[actionsIndex][key];
147
157
  return acc;
148
- }, {}))
158
+ }, {})
149
159
  }
150
160
  : {}),
151
161
  ...(customActionsHeader?.trim() ? { headerName: customActionsHeader } : {})
@@ -182,7 +192,7 @@ export function validateColumnDefs(columnDefs) {
182
192
  colDef.hideInsert = true;
183
193
  }
184
194
  // Check if 'field' property exists and is a non-empty string
185
- if (noField && !(colDef.children && Array.isArray(colDef.children))) {
195
+ if (noField && !(colDef.children && Array.isArray(colDef.children)) && !colDef.cellRenderer) {
186
196
  isValid = false;
187
197
  errors.push(`Column at index ${index} is missing a valid 'field' property nor having any children.`);
188
198
  }
@@ -23,13 +23,17 @@ let cancelCallbacks = $state(undefined);
23
23
  color="light"
24
24
  size="xs2"
25
25
  btnClasses={twMerge(loading ? ' bg-blue-100 dark:bg-blue-400' : '', 'transition-all')}
26
- on:click={() => {
26
+ on:click={(e) => {
27
27
  if (buttonHover && loading) {
28
28
  cancelCallbacks?.forEach((cb) => cb.cancel())
29
29
  } else {
30
30
  cancelCallbacks = $runnableComponents[id]?.cb?.map((cb) => cb())
31
31
  }
32
32
  }}
33
+ on:pointerdown={(e) => {
34
+ e.preventDefault()
35
+ e.stopPropagation()
36
+ }}
33
37
  iconOnly
34
38
  />
35
39
  {#snippet text()}
@@ -53,8 +53,6 @@ function refreshOnStaticChange() {
53
53
  refreshIfAutoRefresh('static changed');
54
54
  }
55
55
  }
56
- // $: sendUserToast('args' + JSON.stringify(runnableInputValues) + Boolean(extraQueryParams) || args)
57
- // $: console.log(runnableInputValues)
58
56
  let firstRefresh = true;
59
57
  function genCallbacks({ onDone, onCancel, onError }) {
60
58
  const callbacks = {
@@ -404,7 +402,7 @@ async function runTransformer(res) {
404
402
  return {
405
403
  error: {
406
404
  name: 'TransformerError',
407
- message: 'An error occured in the transformer',
405
+ message: 'An error occurred in the transformer',
408
406
  stack: err.message
409
407
  }
410
408
  };
@@ -632,7 +630,7 @@ $effect(() => {
632
630
  <div class="h-full flex relative flex-row flex-wrap {wrapperClass} visible" style={wrapperStyle}>
633
631
  <!-- {Object.keys(schemaStripped?.properties ?? {}).length > 0} -->
634
632
  {#if render && (autoRefresh || forceSchemaDisplay) && schemaStripped && Object.keys(schemaStripped?.properties ?? {}).length > 0}
635
- <div class="px-2 h-fit min-h-0">
633
+ <div class="px-2 h-fit min-h-0 w-full min-w-[350px]">
636
634
  <SchemaForm
637
635
  noVariablePicker
638
636
  onlyMaskPassword
@@ -665,7 +663,7 @@ $effect(() => {
665
663
  <div class="bg-surface">
666
664
  <Alert type="error" title="Error during execution">
667
665
  <div class="flex flex-col gap-2 overflow-auto">
668
- An error occured, please contact the app author.
666
+ An error occurred, please contact the app author.
669
667
 
670
668
  {#if $errorByComponent?.[id]?.error}
671
669
  <div class="font-bold">{$errorByComponent[id].error}</div>
@@ -75,6 +75,7 @@ interface Props {
75
75
  onSuccess?: (result: any) => void;
76
76
  children?: import('svelte').Snippet;
77
77
  nonRenderedPlaceholder?: import('svelte').Snippet;
78
+ preventDefaultRefresh?: boolean;
78
79
  }
79
80
  interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
80
81
  new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
@@ -1,4 +1,5 @@
1
1
  <script lang="ts">import DarkModeObserver from '../../../../DarkModeObserver.svelte';
2
+ import { inputBaseClass, inputBorderClass } from '../../../../text_input/TextInput.svelte';
2
3
  import { onMount, untrack } from 'svelte';
3
4
  /* Forked from MIT LICENSE
4
5
  https://raw.githubusercontent.com/Canutin/svelte-currency-input/main/src/lib/CurrencyInput.svelte
@@ -141,7 +142,7 @@ let darkMode = $state(false);
141
142
  bind:value
142
143
  />
143
144
  <input
144
- class="
145
+ class="{inputBaseClass} {inputBorderClass()}
145
146
  {inputClasses?.formatted ?? DEFAULT_CLASS_FORMATTED}
146
147
  {isNegativeAllowed && !isZero && !isNegative
147
148
  ? (inputClasses?.formattedPositive ?? DEFAULT_CLASS_FORMATTED_POSITIVE)