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
@@ -9,7 +9,8 @@ import { dragHandle, dragHandleZone } from '@windmill-labs/svelte-dnd-action';
9
9
  import { generateRandomString } from '../../../../utils';
10
10
  import { GripVertical, Plus } from 'lucide-svelte';
11
11
  import GridTabDisabled from './GridTabDisabled.svelte';
12
- let { tabs = $bindable(undefined), disabledTabs = $bindable(undefined), canDisableTabs = false, word = 'Tab', component = $bindable() } = $props();
12
+ import GridTabHidden from './GridTabHidden.svelte';
13
+ let { tabs = $bindable(undefined), disabledTabs = $bindable(undefined), hiddenTabs = $bindable(undefined), canDisableTabs = false, canHideTabs = false, word = 'Tab', component = $bindable() } = $props();
13
14
  $effect.pre(() => {
14
15
  if (tabs == undefined) {
15
16
  tabs = [];
@@ -20,6 +21,12 @@ $effect.pre(() => {
20
21
  { type: 'static', value: false, fieldType: 'boolean' }
21
22
  ];
22
23
  }
24
+ if (hiddenTabs == undefined) {
25
+ hiddenTabs = [
26
+ { type: 'static', value: false, fieldType: 'boolean' },
27
+ { type: 'static', value: false, fieldType: 'boolean' }
28
+ ];
29
+ }
23
30
  });
24
31
  let items = $state.raw((tabs ?? []).map((tab, index) => {
25
32
  return { value: tab, id: generateRandomString(), originalIndex: index };
@@ -47,6 +54,7 @@ function addTab() {
47
54
  ];
48
55
  component.numberOfSubgrids = items.length;
49
56
  disabledTabs = [...(disabledTabs ?? []), { type: 'static', value: false, fieldType: 'boolean' }];
57
+ hiddenTabs = [...(hiddenTabs ?? []), { type: 'static', value: false, fieldType: 'boolean' }];
50
58
  }
51
59
  function deleteSubgrid(index) {
52
60
  let subgrid = `${component.id}-${index}`;
@@ -64,6 +72,8 @@ function deleteSubgrid(index) {
64
72
  items = items.filter((item) => item.originalIndex !== index);
65
73
  // Delete the item in the disabledTabs array
66
74
  disabledTabs = (disabledTabs ?? []).filter((_, i) => i !== index);
75
+ // Delete the item in the hiddenTabs array
76
+ hiddenTabs = (hiddenTabs ?? []).filter((_, i) => i !== index);
67
77
  component.numberOfSubgrids = items.length;
68
78
  // Update the originalIndex of the remaining items
69
79
  items.forEach((item, i) => {
@@ -93,10 +103,13 @@ function handleFinalize(e) {
93
103
  $app.subgrids[`${component.id}-${items[i].originalIndex}`] ?? [];
94
104
  }
95
105
  const newDisabledTabs = [];
106
+ const newHiddenTabs = [];
96
107
  for (let i = 0; i < items.length; i++) {
97
108
  disabledTabs && newDisabledTabs.push(disabledTabs[items[i].originalIndex]);
109
+ hiddenTabs && newHiddenTabs.push(hiddenTabs[items[i].originalIndex]);
98
110
  }
99
111
  disabledTabs = newDisabledTabs;
112
+ hiddenTabs = newHiddenTabs;
100
113
  // update originalIndex
101
114
  items.forEach((item, i) => {
102
115
  item.originalIndex = i;
@@ -156,6 +169,11 @@ const rnd = generateRandomString();
156
169
  {#if canDisableTabs && disabledTabs}
157
170
  <GridTabDisabled {index} bind:field={disabledTabs[index]} id={component.id} />
158
171
  {/if}
172
+ {#if canHideTabs && hiddenTabs}
173
+ <div class="mt-2">
174
+ <GridTabHidden {index} bind:field={hiddenTabs[index]} id={component.id} />
175
+ </div>
176
+ {/if}
159
177
  </div>
160
178
  {/each}
161
179
  </section>
@@ -3,10 +3,12 @@ import type { AppComponent } from '../component';
3
3
  interface Props {
4
4
  tabs?: string[];
5
5
  disabledTabs?: RichConfiguration[];
6
+ hiddenTabs?: RichConfiguration[];
6
7
  canDisableTabs?: boolean;
8
+ canHideTabs?: boolean;
7
9
  word?: string;
8
10
  component: AppComponent;
9
11
  }
10
- declare const GridTab: import("svelte").Component<Props, {}, "component" | "tabs" | "disabledTabs">;
12
+ declare const GridTab: import("svelte").Component<Props, {}, "component" | "tabs" | "disabledTabs" | "hiddenTabs">;
11
13
  type GridTab = ReturnType<typeof GridTab>;
12
14
  export default GridTab;
@@ -0,0 +1,52 @@
1
+ <script lang="ts">import Toggle from '../../../Toggle.svelte';
2
+ import InputsSpecEditor from './InputsSpecEditor.svelte';
3
+ import { slide } from 'svelte/transition';
4
+ let { id, field = $bindable(), index } = $props();
5
+ let hideable = $state(field && !(field?.type === 'static' && field?.value === false));
6
+ </script>
7
+
8
+ <Toggle
9
+ bind:checked={hideable}
10
+ size="xs"
11
+ options={{
12
+ right: 'Can be hidden'
13
+ }}
14
+ on:change={() => {
15
+ if (hideable) {
16
+ field = {
17
+ type: 'evalv2',
18
+ expr: 'false',
19
+ fieldType: 'boolean',
20
+ connections: []
21
+ }
22
+ } else {
23
+ field = {
24
+ type: 'static',
25
+ value: false,
26
+ fieldType: 'boolean'
27
+ }
28
+ }
29
+ }}
30
+ />
31
+
32
+ {#if hideable}
33
+ <div transition:slide|local>
34
+ <InputsSpecEditor
35
+ key="tabHidden {index}"
36
+ bind:componentInput={field}
37
+ {id}
38
+ userInputEnabled={false}
39
+ shouldCapitalize={true}
40
+ resourceOnly={false}
41
+ fieldType={field?.['fieldType']}
42
+ subFieldType={field?.['subFieldType']}
43
+ format={field?.['format']}
44
+ selectOptions={field?.['selectOptions']}
45
+ tooltip={field?.['tooltip']}
46
+ fileUpload={field?.['fileUpload']}
47
+ placeholder={field?.['placeholder']}
48
+ customTitle={field?.['customTitle']}
49
+ displayType={false}
50
+ />
51
+ </div>
52
+ {/if}
@@ -0,0 +1,9 @@
1
+ import type { RichConfiguration } from '../../types';
2
+ interface Props {
3
+ id: string;
4
+ field: RichConfiguration;
5
+ index: number;
6
+ }
7
+ declare const GridTabHidden: import("svelte").Component<Props, {}, "field">;
8
+ type GridTabHidden = ReturnType<typeof GridTabHidden>;
9
+ export default GridTabHidden;
@@ -77,7 +77,7 @@ function openConnection() {
77
77
  </script>
78
78
 
79
79
  {#if !(resourceOnly && (fieldType !== 'object' || !format?.startsWith('resource-')))}
80
- <div class={classNames('flex gap-1', 'flex-col')}>
80
+ <div class={classNames('flex gap-1 flex-col group')}>
81
81
  <div class="flex justify-between items-end">
82
82
  <div class="flex flex-row gap-4 items-center">
83
83
  <div class="flex items-center">
@@ -108,8 +108,15 @@ function openConnection() {
108
108
 
109
109
  <div class={classNames('flex gap-x-2 gap-y-1 justify-end items-center')}>
110
110
  {#if componentInput?.type && allowTypeChange !== false}
111
+ <ConnectionButton
112
+ {closeConnection}
113
+ {openConnection}
114
+ isOpen={!!$connectingInput.opened}
115
+ btnWrapperClasses={'h-6 w-8 opacity-0 group-hover:opacity-100 transition-opacity'}
116
+ id="schema-plug-{key}"
117
+ />
111
118
  <ToggleButtonGroup
112
- class="h-7"
119
+ class="h-6"
113
120
  bind:selected={componentInput.type}
114
121
  on:selected={(e) => {
115
122
  if (
@@ -131,38 +138,81 @@ function openConnection() {
131
138
  }}
132
139
  >
133
140
  {#snippet children({ item })}
134
- <ToggleButton value="static" icon={Pen} iconOnly tooltip="Static" {item} />
141
+ <ToggleButton
142
+ small
143
+ light
144
+ value="static"
145
+ icon={Pen}
146
+ iconOnly
147
+ tooltip="Static"
148
+ {item}
149
+ />
135
150
  {#if userInputEnabled}
136
- <ToggleButton value="user" icon={User} iconOnly tooltip="User Input" {item} />
151
+ <ToggleButton
152
+ small
153
+ light
154
+ value="user"
155
+ icon={User}
156
+ iconOnly
157
+ tooltip="User Input"
158
+ {item}
159
+ />
137
160
  {/if}
138
161
  {#if fileUpload}
139
- <ToggleButton value="upload" icon={Upload} iconOnly tooltip="Upload" {item} />
162
+ <ToggleButton
163
+ small
164
+ light
165
+ value="upload"
166
+ icon={Upload}
167
+ iconOnly
168
+ tooltip="Upload"
169
+ {item}
170
+ />
140
171
  {/if}
141
172
  {#if fileUploadS3}
142
173
  <ToggleButton
143
174
  value="uploadS3"
144
175
  icon={UploadCloud}
145
176
  iconOnly
177
+ light
178
+ small
146
179
  tooltip="Upload S3"
147
180
  {item}
148
181
  />
149
182
  {/if}
150
183
  {#if componentInput?.type === 'connected'}
151
- <ToggleButton value="connected" icon={Plug2} iconOnly tooltip="Connect" {item} />
184
+ <ToggleButton
185
+ light
186
+ value="connected"
187
+ icon={Plug2}
188
+ iconOnly
189
+ small
190
+ tooltip="Connect"
191
+ {item}
192
+ />
152
193
  {/if}
153
194
  {#if componentInput?.type === 'eval'}
154
195
  <ToggleButton
155
196
  value="eval"
156
197
  icon={FunctionSquare}
157
198
  iconOnly
199
+ light
200
+ small
158
201
  tooltip="Eval Legacy"
159
202
  {item}
160
203
  />
161
204
  {/if}
162
- <ToggleButton value="evalv2" icon={FunctionSquare} iconOnly tooltip="Eval" {item} />
205
+ <ToggleButton
206
+ value="evalv2"
207
+ light
208
+ icon={FunctionSquare}
209
+ iconOnly
210
+ small
211
+ tooltip="Eval"
212
+ {item}
213
+ />
163
214
  {/snippet}
164
215
  </ToggleButtonGroup>
165
- <ConnectionButton {closeConnection} {openConnection} isOpen={!!$connectingInput.opened} />
166
216
  {/if}
167
217
  </div>
168
218
  </div>
@@ -190,6 +190,9 @@ const operations = {
190
190
  USERS_ADD_GLOBAL: 'users.add_global',
191
191
  USERS_IMPERSONATE: 'users.impersonate',
192
192
  USERS_LEAVE_WORKSPACE: 'users.leave_workspace',
193
+ USERS_SCIM_CREATE: 'users.scim_create',
194
+ USERS_SCIM_DELETE: 'users.scim_delete',
195
+ USERS_SCIM_UPDATE: 'users.scim_update',
193
196
  OAUTH_LOGIN: 'oauth.login',
194
197
  OAUTH_LOGIN_FAILURE: 'oauth.login_failure',
195
198
  OAUTH_SIGNUP: 'oauth.signup',
@@ -217,6 +220,9 @@ const operations = {
217
220
  IGROUP_DELETE: 'igroup.delete',
218
221
  IGROUP_ADDUSER: 'igroup.adduser',
219
222
  IGROUP_REMOVEUSER: 'igroup.removeuser',
223
+ INSTANCE_GROUPS_SCIM_CREATE: 'instance_groups.scim_create',
224
+ INSTANCE_GROUPS_SCIM_DELETE: 'instance_groups.scim_delete',
225
+ INSTANCE_GROUPS_SCIM_UPDATE: 'instance_groups.scim_update',
220
226
  VARIABLES_DECRYPT_SECRET: 'variables.decrypt_secret',
221
227
  WORKSPACES_EDIT_COMMAND_SCRIPT: 'workspaces.edit_command_script',
222
228
  WORKSPACES_EDIT_DEPLOY_TO: 'workspaces.edit_deploy_to',
@@ -347,7 +353,7 @@ $effect(() => {
347
353
 
348
354
  <Select
349
355
  bind:value={operation}
350
- items={['all', ...Object.keys(operations)].map((r) => ({ value: r, label: r }))}
356
+ items={['all', ...Object.values(operations)].map((r) => ({ value: r, label: r }))}
351
357
  inputClass="dark:!bg-gray-700"
352
358
  RightIcon={ChevronDown}
353
359
  />
@@ -5,7 +5,7 @@ import Button from '../common/button/Button.svelte';
5
5
  import { ListFilter, ChevronLeft, ChevronRight } from 'lucide-svelte';
6
6
  import VirtualList from '@tutorlatin/svelte-tiny-virtual-list';
7
7
  import { twMerge } from 'tailwind-merge';
8
- let { logs = [], pageIndex = $bindable(1), perPage = $bindable(100), hasMore = $bindable(true), actionKind = $bindable(), operation = $bindable(), selectedId = undefined, usernameFilter = $bindable(), resourceFilter = $bindable(), onselect } = $props();
8
+ let { logs = [], pageIndex = $bindable(1), perPage = $bindable(100), hasMore = $bindable(true), actionKind = $bindable(), operation = $bindable(), selectedId = undefined, usernameFilter = $bindable(), resourceFilter = $bindable(), showWorkspace = false, onselect } = $props();
9
9
  function groupLogsByDay(logs) {
10
10
  const groupedLogs = {};
11
11
  if (!logs)
@@ -82,9 +82,12 @@ function kindToBadgeColor(kind) {
82
82
  class="flex flex-row bg-surface-secondary sticky top-0 w-full p-2 pr-4 text-xs font-semibold"
83
83
  >
84
84
  <div class="w-1/12">ID</div>
85
- <div class="w-3/12">Timestamp</div>
86
- <div class="w-3/12">Username</div>
87
- <div class="w-3/12">Operation</div>
85
+ <div class={showWorkspace ? "w-2/12" : "w-3/12"}>Timestamp</div>
86
+ <div class={showWorkspace ? "w-2/12" : "w-3/12"}>Username</div>
87
+ {#if showWorkspace}
88
+ <div class="w-2/12">Workspace</div>
89
+ {/if}
90
+ <div class={showWorkspace ? "w-2/12" : "w-3/12"}>Operation</div>
88
91
  <div class="w-2/12">Resource</div>
89
92
  </div>
90
93
  </div>
@@ -128,10 +131,10 @@ function kindToBadgeColor(kind) {
128
131
  <div class="w-1/12 text-xs truncate">
129
132
  {logOrDate.log.id}
130
133
  </div>
131
- <div class="w-3/12 text-xs">
134
+ <div class={showWorkspace ? "w-2/12 text-xs" : "w-3/12 text-xs"}>
132
135
  {displayDate(logOrDate.log.timestamp)}
133
136
  </div>
134
- <div class="w-3/12 text-xs">
137
+ <div class={showWorkspace ? "w-2/12 text-xs" : "w-3/12 text-xs"}>
135
138
  <div class="flex flex-row gap-2 items-center">
136
139
  <div class="whitespace-nowrap overflow-x-auto no-scrollbar max-w-60">
137
140
  {logOrDate.log.username}
@@ -150,7 +153,14 @@ function kindToBadgeColor(kind) {
150
153
  />
151
154
  </div>
152
155
  </div>
153
- <div class="w-3/12 text-xs">
156
+ {#if showWorkspace}
157
+ <div class="w-2/12 text-xs">
158
+ <div class="whitespace-nowrap overflow-x-auto no-scrollbar max-w-60">
159
+ {logOrDate.log.workspace_id}
160
+ </div>
161
+ </div>
162
+ {/if}
163
+ <div class={showWorkspace ? "w-2/12 text-xs" : "w-3/12 text-xs"}>
154
164
  <div class="flex flex-row gap-1">
155
165
  <Badge
156
166
  on:click={() => {
@@ -9,6 +9,7 @@ interface Props {
9
9
  selectedId?: number | undefined;
10
10
  usernameFilter?: string | undefined;
11
11
  resourceFilter?: string | undefined;
12
+ showWorkspace?: boolean;
12
13
  onselect?: (id: number) => void;
13
14
  }
14
15
  declare const AuditLogsTable: import("svelte").Component<Props, {}, "operation" | "perPage" | "hasMore" | "pageIndex" | "actionKind" | "usernameFilter" | "resourceFilter">;
@@ -2,12 +2,12 @@
2
2
  import Button from './button/Button.svelte';
3
3
  import { X } from 'lucide-svelte';
4
4
  import { twMerge } from 'tailwind-merge';
5
- let { noBg = false, small = false, Icon, class: className } = $props();
5
+ let { noBg = false, small = false, Icon, class: className, onClick } = $props();
6
6
  const dispatch = createEventDispatcher();
7
7
  </script>
8
8
 
9
9
  <Button
10
- on:click={() => dispatch('close')}
10
+ on:click={() => (dispatch('close'), onClick?.())}
11
11
  on:pointerdown={(e) => e.stopPropagation()}
12
12
  startIcon={{ icon: Icon ?? X }}
13
13
  iconOnly
@@ -3,6 +3,7 @@ interface Props {
3
3
  small?: boolean;
4
4
  Icon?: any | undefined;
5
5
  class?: string;
6
+ onClick?: () => void | undefined | any;
6
7
  }
7
8
  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> {
8
9
  new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
@@ -0,0 +1,39 @@
1
+ <script lang="ts">import { twMerge } from 'tailwind-merge';
2
+ let { children, innerClass, class: className = '', horizontal, vertical, outerDivProps } = $props();
3
+ let innerContainer = $state(null);
4
+ let outerContainer = $state(null);
5
+ let width = $state(null);
6
+ let height = $state(null);
7
+ let style = $derived.by(() => {
8
+ let s = 'transition: width 0.2s, height 0.2s; overflow: clip;';
9
+ if (width !== null)
10
+ s += `width: ${width}px;`;
11
+ if (height !== null)
12
+ s += `height: ${height}px;`;
13
+ return s;
14
+ });
15
+ $effect(() => {
16
+ if (!innerContainer || !outerContainer)
17
+ return;
18
+ let observer = new ResizeObserver((entries) => {
19
+ for (const entry of entries) {
20
+ if (horizontal)
21
+ width = entry.contentRect.width;
22
+ if (vertical)
23
+ height = entry.contentRect.height;
24
+ }
25
+ });
26
+ observer.observe(innerContainer);
27
+ return () => {
28
+ if (innerContainer)
29
+ observer.unobserve(innerContainer);
30
+ observer.disconnect();
31
+ };
32
+ });
33
+ </script>
34
+
35
+ <div bind:this={outerContainer} {...outerDivProps} class={className} {style}>
36
+ <div class={twMerge('absolute', innerClass)} bind:this={innerContainer}>
37
+ {@render children()}
38
+ </div>
39
+ </div>
@@ -0,0 +1,12 @@
1
+ import type { HTMLAttributes } from 'svelte/elements';
2
+ type Props = {
3
+ children: import('svelte').Snippet;
4
+ innerClass?: string;
5
+ class?: string;
6
+ horizontal?: boolean;
7
+ vertical?: boolean;
8
+ outerDivProps?: HTMLAttributes<HTMLDivElement>;
9
+ };
10
+ declare const ResizeTransitionWrapper: import("svelte").Component<Props, {}, "">;
11
+ type ResizeTransitionWrapper = ReturnType<typeof ResizeTransitionWrapper>;
12
+ export default ResizeTransitionWrapper;
@@ -0,0 +1,29 @@
1
+ <script lang="ts">import { Loader2 } from 'lucide-svelte';
2
+ import { twMerge } from 'tailwind-merge';
3
+ let { count, small = true, alwaysVisible = false } = $props();
4
+ </script>
5
+
6
+ {#if count === undefined || count > 0 || alwaysVisible}
7
+ <div
8
+ class={twMerge(
9
+ // Base styles that apply in all cases
10
+ 'absolute z-10 rounded-full overflow-hidden',
11
+ 'flex center-center text-primary-inverse font-mono',
12
+ 'bg-tertiary/50 group-hover:bg-primary transition-all duration-[100ms]',
13
+ alwaysVisible || count === undefined ? 'bg-primary' : '',
14
+
15
+ // Size variants based on small prop
16
+ small ? '-right-[3px] -top-[3px] h-3 w-3 text-[8px]' : '-right-1.5 -top-1.5 h-4 w-4 text-xs',
17
+
18
+ // Special case for always visible
19
+ alwaysVisible && small ? 'h-3 w-3 text-[8px] -right-0.5 -top-0.5' : '',
20
+ alwaysVisible && !small ? 'h-4 w-4 text-xs -right-1 -top-1' : ''
21
+ )}
22
+ >
23
+ {#if count === undefined}
24
+ <Loader2 class="animate-spin text-2xs" />
25
+ {:else}
26
+ <p>{count}</p>
27
+ {/if}
28
+ </div>
29
+ {/if}
@@ -0,0 +1,8 @@
1
+ interface Props {
2
+ count: number | undefined;
3
+ small?: boolean;
4
+ alwaysVisible?: boolean;
5
+ }
6
+ declare const CountBadge: import("svelte").Component<Props, {}, "">;
7
+ type CountBadge = ReturnType<typeof CountBadge>;
8
+ export default CountBadge;
@@ -227,6 +227,7 @@ $effect(() => {
227
227
  on:open={() => dispatch('dropdownOpen', true)}
228
228
  on:close={() => dispatch('dropdownOpen', false)}
229
229
  bind:open={dropdownOpen}
230
+ enableFlyTransition
230
231
  >
231
232
  {#snippet buttonReplacement()}
232
233
  <div
@@ -3,9 +3,12 @@ import { pointerDownOutside } from '../../../utils';
3
3
  import AnimatedButton from './AnimatedButton.svelte';
4
4
  import Button from './Button.svelte';
5
5
  import { getContext } from 'svelte';
6
+ import { twMerge } from 'tailwind-merge';
6
7
  export let isOpen = false;
7
8
  export let openConnection;
8
9
  export let closeConnection;
10
+ export let btnWrapperClasses = '';
11
+ export let id = undefined;
9
12
  let selected = false;
10
13
  const { panzoomActive } = getContext('AppViewerContext');
11
14
  async function getConnectionButtonElements() {
@@ -67,7 +70,9 @@ $: !isOpen && (selected = false);
67
70
  color="light"
68
71
  title="Connect"
69
72
  on:click={() => handleConnect(true)}
70
- id="schema-plug"
73
+ {id}
74
+ wrapperClasses={twMerge(btnWrapperClasses, selected ? 'opacity-100' : '')}
75
+ btnClasses="p-0"
71
76
  >
72
77
  <Plug size={14} />
73
78
  </Button>
@@ -15,6 +15,8 @@ declare const ConnectionButton: $$__sveltets_2_IsomorphicComponent<{
15
15
  isOpen?: boolean;
16
16
  openConnection: () => void;
17
17
  closeConnection: () => void;
18
+ btnWrapperClasses?: string;
19
+ id?: string | undefined;
18
20
  }, {
19
21
  [evt: string]: CustomEvent<any>;
20
22
  }, {}, {}, string>;
@@ -1,7 +1,8 @@
1
- <script lang="ts">import { Button } from '..';
1
+ <script lang="ts">import { Button, ButtonType } from '..';
2
2
  import { RefreshCw } from 'lucide-svelte';
3
3
  import Popover from '../../Popover.svelte';
4
- let { loading } = $props();
4
+ import { twMerge } from 'tailwind-merge';
5
+ let { loading, size = 'xs2', light = false } = $props();
5
6
  let buttonHover = $state(false);
6
7
  </script>
7
8
 
@@ -10,11 +11,14 @@ let buttonHover = $state(false);
10
11
  on:mouseenter={() => (buttonHover = true)}
11
12
  on:mouseleave={() => (buttonHover = false)}
12
13
  color="light"
13
- size="xs2"
14
+ {size}
14
15
  variant="border"
15
16
  on:click
16
17
  >
17
- <RefreshCw class={loading ? 'animate-spin ' : ''} size="14" />
18
+ <RefreshCw
19
+ class={twMerge(loading ? 'animate-spin ' : '', light ? 'text-secondary' : '')}
20
+ size="14"
21
+ />
18
22
  </Button>
19
23
  {#snippet text()}
20
24
  {#if loading}
@@ -1,5 +1,8 @@
1
+ import { ButtonType } from '..';
1
2
  interface Props {
2
3
  loading: boolean;
4
+ size?: ButtonType.Size;
5
+ light?: boolean;
3
6
  }
4
7
  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> {
5
8
  new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
@@ -22,7 +22,7 @@ export let placement = 'top-end';
22
22
  <button
23
23
  title="Open calendar picker"
24
24
  class={twMerge(
25
- 'absolute bottom-1 right-2 top-1 py-1 min-w-min !px-2 items-center text-primary bg-surface border rounded center-center hover:bg-surface-hover transition-all cursor-pointer',
25
+ 'absolute bottom-1 right-2 top-1 py-1 min-w-min !px-2.5 items-center text-primary bg-surface-secondary rounded center-center hover:bg-surface-hover transition-all cursor-pointer',
26
26
  $$props.class
27
27
  )}
28
28
  aria-label="Open calendar picker"
@@ -10,7 +10,7 @@ export let accept = '*';
10
10
  export let multiple = false;
11
11
  export let convertTo = undefined;
12
12
  export let hideIcon = false;
13
- export let iconSize = 36;
13
+ export let iconSize = 24;
14
14
  export let returnFileNames = false;
15
15
  export let submittedText = undefined;
16
16
  export let defaultFile = undefined;
@@ -164,10 +164,11 @@ export function clearFiles() {
164
164
 
165
165
  <button
166
166
  class={twMerge(
167
- `relative center-center flex-col text-center font-medium text-tertiary
168
- border border-dashed border-gray-400 hover:border-blue-500
167
+ `relative center-center flex flex-col gap-x-2 gap-y-1 justify-center items-center flex-wrap text-center font-normal text-hint text-xs rounded-md
168
+ bg-surface-secondary
169
+ border border-dashed border-nord-400 dark:border-nord-300 hover:border-nord-900 dark:hover:border-nord-900
169
170
  focus-within:border-blue-300 hover:bg-blue-50 dark:hover:bg-frost-900
170
- duration-200 rounded-component p-1`,
171
+ duration-200 px-1 py-8`,
171
172
  c
172
173
  )}
173
174
  on:dragover={handleDragOver}
@@ -186,7 +187,7 @@ export function clearFiles() {
186
187
  {disabled}
187
188
  >
188
189
  {#if !hideIcon && !files}
189
- <FileUp size={iconSize} class="mb-2" />
190
+ <FileUp size={iconSize} />
190
191
  {/if}
191
192
  {#if files}
192
193
  <div class="w-full max-h-full overflow-auto px-6">
@@ -235,7 +236,7 @@ export function clearFiles() {
235
236
  />
236
237
  {#if defaultFile && (!Array.isArray(defaultFile) || defaultFile.length > 0)}
237
238
  <div class="w-full border-dashed border-t-2 text-2xs pt-1 text-tertiary mt-2">
238
- Default file: <span class="text-blue-500">{defaultFile}</span>
239
+ Default file: <span class="text-nord-900">{defaultFile}</span>
239
240
  </div>
240
241
  {/if}
241
242
  </button>
@@ -4,7 +4,7 @@ import { Loader2, Pipette } from 'lucide-svelte';
4
4
  import FileUpload from './FileUpload.svelte';
5
5
  import Button from '../button/Button.svelte';
6
6
  import { userStore } from '../../../stores';
7
- let { multiple, value = $bindable(), defaultValue, setNewValueFromCode, onFocus, onBlur, computeS3ForceViewerPolicies, workspace, editor = $bindable(), appPath } = $props();
7
+ let { multiple, value = $bindable(), defaultValue, setNewValueFromCode, onFocus, onBlur, computeS3ForceViewerPolicies, workspace, editor = $bindable(), appPath, bottom } = $props();
8
8
  let s3FileUploadRawMode = $state(false);
9
9
  let s3FilePicker = $state(undefined);
10
10
  let fileUpload = $state(undefined);
@@ -31,13 +31,7 @@ let fileUpload = $state(undefined);
31
31
  />
32
32
  {/if}
33
33
 
34
- <div class="flex flex-col w-full gap-1">
35
- <Toggle
36
- class="flex justify-end"
37
- bind:checked={s3FileUploadRawMode}
38
- size="xs"
39
- options={{ left: `Raw S3 object${multiple ? 's' : ''} input` }}
40
- />
34
+ <div class="flex flex-col w-full gap-1 relative">
41
35
  {#if s3FileUploadRawMode}
42
36
  {#await import('../../JsonEditor.svelte')}
43
37
  <Loader2 class="animate-spin" />
@@ -99,7 +93,7 @@ let fileUpload = $state(undefined);
99
93
  variant="border"
100
94
  color="light"
101
95
  size="xs"
102
- btnClasses="mt-1"
96
+ btnClasses="mt-1 font-normal text-tertiary"
103
97
  on:click={() => {
104
98
  s3FilePicker?.open?.(value)
105
99
  }}
@@ -108,4 +102,12 @@ let fileUpload = $state(undefined);
108
102
  {multiple ? 'Add' : 'Choose'} an object from the catalog
109
103
  </Button>
110
104
  {/if}
105
+ {@render bottom?.()}
106
+ <Toggle
107
+ class="mt-1"
108
+ textClass="font-normal text-hint"
109
+ bind:checked={s3FileUploadRawMode}
110
+ size="xs"
111
+ options={{ right: `Raw S3 object${multiple ? 's' : ''} input` }}
112
+ />
111
113
  </div>
@@ -15,6 +15,7 @@ type $$ComponentProps = {
15
15
  workspace: string | undefined;
16
16
  editor: SimpleEditor | undefined;
17
17
  appPath: string | undefined;
18
+ bottom?: import('svelte').Snippet;
18
19
  };
19
20
  declare const S3ArgInput: import("svelte").Component<$$ComponentProps, {}, "value" | "editor">;
20
21
  type S3ArgInput = ReturnType<typeof S3ArgInput>;