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
@@ -31,7 +31,9 @@ import { base } from '../base';
31
31
  import { workspaceStore } from '../stores';
32
32
  import { getJsonSchemaFromResource } from './schema/jsonSchemaResource.svelte';
33
33
  import AIProviderPicker from './AIProviderPicker.svelte';
34
- let { label = '', value = $bindable(), defaultValue = $bindable(undefined), description = $bindable(undefined), format = $bindable(undefined), contentEncoding = undefined, type = undefined, oneOf = $bindable(undefined), required = false, pattern = $bindable(undefined), valid = $bindable(undefined), enum_ = $bindable(undefined), disabled = false, itemsType = $bindable(undefined), displayHeader = true, properties = $bindable(undefined), nestedRequired = undefined, autofocus = null, compact = false, password = false, pickForField = $bindable(undefined), variableEditor = undefined, itemPicker = undefined, noMargin = false, extra = {}, minW = true, prettifyHeader = false, resourceTypes, disablePortal = false, showSchemaExplorer = false, simpleTooltip = undefined, customErrorMessage = undefined, onlyMaskPassword = false, nullable = false, title = $bindable(undefined), placeholder = $bindable(undefined), order = $bindable(undefined), editor = $bindable(undefined), orderEditable = false, shouldDispatchChanges = false, noDefaultOnSelectFirst = false, helperScript = undefined, otherArgs = {}, lightHeader = false, diffStatus = undefined, hideNested = false, nestedParent = undefined, nestedClasses = '', displayType = true, css = undefined, appPath = undefined, computeS3ForceViewerPolicies = undefined, workspace = undefined, actions } = $props();
34
+ import TextInput, { inputBaseClass, inputBorderClass } from './text_input/TextInput.svelte';
35
+ let { label = '', value = $bindable(), defaultValue = $bindable(undefined), description = $bindable(undefined), format = $bindable(undefined), contentEncoding = undefined, type = undefined, oneOf = $bindable(undefined), required = false, pattern = $bindable(undefined), valid = $bindable(undefined), // Note : this should not exist, valid and error should be one coherent state
36
+ enum_ = $bindable(undefined), disabled = false, itemsType = $bindable(undefined), displayHeader = true, properties = $bindable(undefined), nestedRequired = undefined, autofocus = null, compact = false, password = false, pickForField = $bindable(undefined), variableEditor = undefined, itemPicker = undefined, noMargin = false, extra = {}, minW = true, prettifyHeader = false, resourceTypes, disablePortal = false, showSchemaExplorer = false, simpleTooltip = undefined, customErrorMessage = undefined, onlyMaskPassword = false, nullable = false, title = $bindable(undefined), placeholder = $bindable(undefined), order = $bindable(undefined), editor = $bindable(undefined), orderEditable = false, shouldDispatchChanges = false, noDefaultOnSelectFirst = false, helperScript = undefined, otherArgs = {}, lightHeader = false, diffStatus = undefined, hideNested = false, nestedParent = undefined, nestedClasses = '', displayType = true, css = undefined, appPath = undefined, computeS3ForceViewerPolicies = undefined, workspace = undefined, actions, innerBottomSnippet, fieldHeaderActions, lightHeaderFont = false } = $props();
35
37
  $effect(() => {
36
38
  if (description == undefined) {
37
39
  description = '';
@@ -92,7 +94,13 @@ function computeDefaultValue(inputCat, defaultValue, nnullable) {
92
94
  nvalue = nullable ? null : '';
93
95
  }
94
96
  else if (inputCat == 'enum' && required) {
95
- nvalue = enum_?.[0];
97
+ let firstV = enum_?.[0];
98
+ if (typeof firstV === 'string') {
99
+ nvalue = firstV;
100
+ }
101
+ else if (firstV && typeof firstV === 'object') {
102
+ nvalue = firstV.value;
103
+ }
96
104
  }
97
105
  else if (inputCat == 'boolean') {
98
106
  nvalue = false;
@@ -118,7 +126,7 @@ function computeDefaultValue(inputCat, defaultValue, nnullable) {
118
126
  function checkArrayValueType() {
119
127
  try {
120
128
  if (Array.isArray(value) && value.length > 0) {
121
- const firstItem = value?.[0];
129
+ let firstItem = value?.[0];
122
130
  const type = itemsType?.type;
123
131
  switch (type) {
124
132
  case 'string':
@@ -297,6 +305,9 @@ function compareValues(value) {
297
305
  }
298
306
  let { debounced, clearDebounce } = debounce(() => compareValues(value), 50);
299
307
  let inputCat = $derived(computeInputCat(type, format, itemsType?.type, enum_, contentEncoding));
308
+ let displayJsonToggleHeader = $derived(displayHeader &&
309
+ inputCat === 'list' &&
310
+ !(itemsType?.resourceType === 's3_object' || itemsType?.resourceType === 's3object'));
300
311
  $effect(() => {
301
312
  oneOf && untrack(() => updateOneOfSelected(oneOf));
302
313
  });
@@ -315,6 +326,7 @@ $effect.pre(() => {
315
326
  $effect.pre(() => {
316
327
  !isListJson &&
317
328
  inputCat === 'list' &&
329
+ enum_ == undefined &&
318
330
  value != lastValue &&
319
331
  itemsType?.type &&
320
332
  !hasIsListJsonChanged &&
@@ -345,10 +357,10 @@ onDestroy(() => {
345
357
 
346
358
  {#snippet variableInput()}
347
359
  {#if variableEditor}
348
- <div class="text-sm text-tertiary">
360
+ <div class="text-sm text-hint">
349
361
  {#if value && typeof value == 'string' && value?.startsWith('$var:')}
350
362
  Linked to variable <button
351
- class="text-blue-500 underline"
363
+ class="text-nord-950 underline font-normal"
352
364
  onclick={() => variableEditor?.editVariable?.(value.slice(5))}>{value.slice(5)}</button
353
365
  >
354
366
  {/if}
@@ -372,7 +384,7 @@ onDestroy(() => {
372
384
  <!-- svelte-ignore a11y_autofocus -->
373
385
  <div
374
386
  class={twMerge(
375
- 'flex flex-col w-full rounded-md relative',
387
+ 'flex flex-col w-full rounded-md relative group',
376
388
  minW ? 'min-w-[250px]' : '',
377
389
  diffStatus?.diff ? 'px-2' : '',
378
390
  diffStatus?.diff == 'added'
@@ -414,24 +426,43 @@ onDestroy(() => {
414
426
  </div>
415
427
  {/if}
416
428
  {#if displayHeader}
417
- <FieldHeader
418
- prettify={prettifyHeader}
419
- label={title && !emptyString(title) ? title : label}
420
- {disabled}
421
- {required}
422
- {type}
423
- {contentEncoding}
424
- {format}
425
- {simpleTooltip}
426
- {lightHeader}
427
- {displayType}
428
- labelClass={css?.label?.class}
429
- />
430
- {/if}
429
+ <div class="flex min-h-7 items-end pb-1">
430
+ <FieldHeader
431
+ prettify={prettifyHeader}
432
+ label={title && !emptyString(title) ? title : label}
433
+ {disabled}
434
+ {required}
435
+ {type}
436
+ {contentEncoding}
437
+ {format}
438
+ {simpleTooltip}
439
+ {lightHeader}
440
+ {displayType}
441
+ labelClass={twMerge(
442
+ lightHeaderFont ? '!font-normal !text-sm text-tertiary' : '',
443
+ css?.label?.class
444
+ )}
445
+ />
446
+ <div class="ml-auto flex gap-2">
447
+ {#if displayJsonToggleHeader}
448
+ <Toggle
449
+ on:change={(e) => {
450
+ // Once the user has changed the input type, we should not change it back automatically
451
+ if (!hasIsListJsonChanged) {
452
+ hasIsListJsonChanged = true
453
+ }
431
454
 
432
- {#if description}
433
- <div class={twMerge('text-xs italic pb-1 text-secondary', css?.description?.class)}>
434
- <pre class="font-main whitespace-normal">{description}</pre>
455
+ evalValueToRaw()
456
+ isListJson = !isListJson
457
+ }}
458
+ checked={isListJson}
459
+ textClass="text-secondary"
460
+ size="xs"
461
+ options={{ left: 'json' }}
462
+ />
463
+ {/if}
464
+ {@render fieldHeaderActions?.()}
465
+ </div>
435
466
  </div>
436
467
  {/if}
437
468
 
@@ -456,7 +487,22 @@ onDestroy(() => {
456
487
  />
457
488
  {:else}
458
489
  <div class="relative w-full">
459
- <input
490
+ <TextInput
491
+ inputProps={{
492
+ autofocus,
493
+ onfocus: bubble('focus'),
494
+ onblur: bubble('blur'),
495
+ disabled,
496
+ type: 'number',
497
+ onkeydown: () => (ignoreValueUndefined = true),
498
+ placeholder: placeholder ?? defaultValue ?? '',
499
+ min: extra['min'],
500
+ max: extra['max']
501
+ }}
502
+ {error}
503
+ bind:value
504
+ />
505
+ <!-- <input
460
506
  {autofocus}
461
507
  onfocus={bubble('focus')}
462
508
  onblur={bubble('blur')}
@@ -472,7 +518,7 @@ onDestroy(() => {
472
518
  bind:value
473
519
  min={extra['min']}
474
520
  max={extra['max']}
475
- />
521
+ /> -->
476
522
  </div>
477
523
  {/if}
478
524
  {:else if inputCat == 'boolean'}
@@ -506,6 +552,7 @@ onDestroy(() => {
506
552
  bind:editor
507
553
  {appPath}
508
554
  {computeS3ForceViewerPolicies}
555
+ bottom={innerBottomSnippet}
509
556
  />
510
557
  {:else if inputCat == 'object' && format == 'json-schema'}
511
558
  {#await import('./EditableSchemaForm.svelte')}
@@ -549,8 +596,9 @@ onDestroy(() => {
549
596
  <Module.default code={JSON.stringify(value, null, 2)} bind:value />
550
597
  {/await}
551
598
  {:else}
552
- <div class="py-4 pr-2 pl-6 border rounded-md w-full">
599
+ <div class="px-3 pt-6 border rounded-md w-full">
553
600
  <SchemaForm
601
+ lightHeaderFont
554
602
  {onlyMaskPassword}
555
603
  {disablePortal}
556
604
  {disabled}
@@ -595,14 +643,34 @@ onDestroy(() => {
595
643
  />
596
644
  </div>
597
645
  {:else}
598
- <div class="w-full">
646
+ <div class="w-full flex flex-col gap-y-1">
599
647
  {#key redraw}
600
648
  {#if Array.isArray(value)}
601
649
  {#each value ?? [] as v, i}
602
650
  {#if i < itemsLimit}
603
- <div class="flex max-w-md mt-1 w-full items-center">
651
+ <div class="flex w-full items-center relative">
652
+ {#snippet deleteItemBtn()}
653
+ <button
654
+ transition:fade|local={{ duration: 100 }}
655
+ class="rounded-full p-1 bg-surface-secondary duration-200 hover:bg-surface-hover ml-2"
656
+ aria-label="Clear"
657
+ onclick={() => {
658
+ value = value.filter((_, index) => index !== i)
659
+ redraw += 1
660
+ }}
661
+ >
662
+ <X size={14} />
663
+ </button>
664
+ {/snippet}
604
665
  {#if itemsType?.type == 'number'}
605
- <input type="number" bind:value={value[i]} id="arg-input-number-array" />
666
+ <TextInput
667
+ inputProps={{ type: 'number', id: 'arg-input-number-array' }}
668
+ class="pr-8"
669
+ bind:value={value[i]}
670
+ />
671
+ <div class="absolute z-10 right-1.5">
672
+ {@render deleteItemBtn()}
673
+ </div>
606
674
  {:else if itemsType?.type == 'string' && itemsType?.contentEncoding == 'base64'}
607
675
  <input
608
676
  type="file"
@@ -610,6 +678,7 @@ onDestroy(() => {
610
678
  onchange={(x) => fileChanged(x, (val) => (value[i] = val))}
611
679
  multiple={false}
612
680
  />
681
+ {@render deleteItemBtn()}
613
682
  {:else if itemsType?.type == 'object' && itemsType?.resourceType === undefined && itemsType?.properties === undefined && !(format?.startsWith('resource-') && resourceTypes?.includes(format.split('-')[1]))}
614
683
  {#await import('./JsonEditor.svelte')}
615
684
  <Loader2 class="animate-spin" />
@@ -619,6 +688,7 @@ onDestroy(() => {
619
688
  bind:value={value[i]}
620
689
  />
621
690
  {/await}
691
+ {@render deleteItemBtn()}
622
692
  {:else if Array.isArray(itemsType?.enum)}
623
693
  <ArgEnum
624
694
  create={extra['disableCreate'] != true}
@@ -636,6 +706,7 @@ onDestroy(() => {
636
706
  enum_={itemsType?.enum ?? []}
637
707
  enumLabels={extra['enumLabels']}
638
708
  />
709
+ {@render deleteItemBtn()}
639
710
  {:else if (itemsType?.type == 'resource' && itemsType?.resourceType && resourceTypes?.includes(itemsType.resourceType)) || (format?.startsWith('resource-') && resourceTypes?.includes(format.split('-')[1]))}
640
711
  {@const resourceFormat =
641
712
  itemsType?.type == 'resource' &&
@@ -648,6 +719,7 @@ onDestroy(() => {
648
719
  format={resourceFormat}
649
720
  defaultValue={undefined}
650
721
  />
722
+ {@render deleteItemBtn()}
651
723
  {:else if itemsType?.type == 'resource'}
652
724
  {#await import('./JsonEditor.svelte')}
653
725
  <Loader2 class="animate-spin" />
@@ -664,9 +736,11 @@ onDestroy(() => {
664
736
  bind:value={value[i]}
665
737
  />
666
738
  {/await}
739
+ {@render deleteItemBtn()}
667
740
  {:else if itemsType?.type === 'object' && itemsType?.properties}
668
741
  <div class="p-8 border rounded-md w-full">
669
742
  <SchemaForm
743
+ lightHeaderFont
670
744
  {onlyMaskPassword}
671
745
  {disablePortal}
672
746
  {disabled}
@@ -675,20 +749,17 @@ onDestroy(() => {
675
749
  bind:args={value[i]}
676
750
  />
677
751
  </div>
752
+ {@render deleteItemBtn()}
678
753
  {:else}
679
- <input type="text" bind:value={value[i]} id="arg-input-array" />
754
+ <TextInput
755
+ inputProps={{ type: 'text', id: 'arg-input-array' }}
756
+ class="pr-8"
757
+ bind:value={value[i]}
758
+ />
759
+ <div class="absolute z-10 right-1.5">
760
+ {@render deleteItemBtn()}
761
+ </div>
680
762
  {/if}
681
- <button
682
- transition:fade|local={{ duration: 100 }}
683
- class="rounded-full p-1 bg-surface-secondary duration-200 hover:bg-surface-hover ml-2"
684
- aria-label="Clear"
685
- onclick={() => {
686
- value = value.filter((_, index) => index !== i)
687
- redraw += 1
688
- }}
689
- >
690
- <X size={14} />
691
- </button>
692
763
  </div>
693
764
  {/if}
694
765
  {/each}
@@ -701,7 +772,7 @@ onDestroy(() => {
701
772
  {#if value.startsWith('$res:')}
702
773
  {@render resourceInput()}
703
774
  {:else}
704
- <div class="text-red-500">
775
+ <div class="text-red-500 text-xs">
705
776
  Invalid string value: "{value}", expected array. Click add item to turn it
706
777
  into an array.
707
778
  </div>
@@ -709,59 +780,58 @@ onDestroy(() => {
709
780
  {/if}
710
781
  {/key}
711
782
  </div>
712
- <div class="flex mt-2 gap-20 items-baseline">
713
- <Button
714
- variant="border"
715
- color="light"
716
- size="xs"
717
- btnClasses="mt-1"
718
- on:click={() => {
719
- if (value == undefined || !Array.isArray(value)) {
720
- value = []
721
- }
722
- if (itemsType?.type == 'number') {
723
- value = value.concat(0)
724
- } else if (
725
- (itemsType?.type == 'object' &&
726
- !(
727
- format?.startsWith('resource-') &&
728
- resourceTypes?.includes(format.split('-')[1])
729
- )) ||
730
- (itemsType?.type == 'resource' &&
731
- !(
732
- itemsType?.resourceType && resourceTypes?.includes(itemsType?.resourceType)
733
- ))
734
- ) {
735
- value = value.concat({})
736
- } else {
737
- value = value.concat('')
738
- }
739
- }}
740
- id="arg-input-add-item"
741
- startIcon={{ icon: Plus }}
742
- >
743
- Add item
744
- </Button>
745
- </div>
783
+ <Button
784
+ variant="border"
785
+ color="light"
786
+ size="xs"
787
+ btnClasses="text-tertiary py-2.5"
788
+ wrapperClasses="w-full {Array.isArray(value) && value.length > 0 ? 'mt-1.5' : ''}"
789
+ on:click={() => {
790
+ if (value == undefined || !Array.isArray(value)) {
791
+ value = []
792
+ }
793
+ if (itemsType?.type == 'number') {
794
+ value = value.concat(0)
795
+ } else if (
796
+ (itemsType?.type == 'object' &&
797
+ !(
798
+ format?.startsWith('resource-') &&
799
+ resourceTypes?.includes(format.split('-')[1])
800
+ )) ||
801
+ (itemsType?.type == 'resource' &&
802
+ !(itemsType?.resourceType && resourceTypes?.includes(itemsType?.resourceType)))
803
+ ) {
804
+ value = value.concat({})
805
+ } else {
806
+ value = value.concat('')
807
+ }
808
+ }}
809
+ id="arg-input-add-item"
810
+ startIcon={{ icon: Plus }}
811
+ >
812
+ Add item
813
+ </Button>
746
814
  {/if}
747
815
  </div>
748
- <div class="mt-2 mr-4">
749
- <Toggle
750
- on:change={(e) => {
751
- // Once the user has changed the input type, we should not change it back automatically
752
- if (!hasIsListJsonChanged) {
753
- hasIsListJsonChanged = true
754
- }
816
+ {#if !displayHeader}
817
+ <div class="block mt-2.5 pl-2">
818
+ <Toggle
819
+ on:change={(e) => {
820
+ // Once the user has changed the input type, we should not change it back automatically
821
+ if (!hasIsListJsonChanged) {
822
+ hasIsListJsonChanged = true
823
+ }
755
824
 
756
- evalValueToRaw()
757
- isListJson = !isListJson
758
- }}
759
- checked={isListJson}
760
- textClass="text-secondary"
761
- size="xs"
762
- options={{ right: 'json' }}
763
- />
764
- </div>
825
+ evalValueToRaw()
826
+ isListJson = !isListJson
827
+ }}
828
+ checked={isListJson}
829
+ textClass="text-secondary"
830
+ size="xs"
831
+ options={{ left: 'json' }}
832
+ />
833
+ </div>
834
+ {/if}
765
835
  </div>
766
836
  {:else if inputCat == 'dynamic'}
767
837
  <DynamicInput name={label} {otherArgs} {helperScript} bind:value format={format ?? ''} />
@@ -784,7 +854,7 @@ onDestroy(() => {
784
854
  />
785
855
  {:else if inputCat == 'object' || inputCat == 'resource-object' || isListJson}
786
856
  {#if oneOf && oneOf.length >= 2}
787
- <div class="flex flex-col gap-2 w-full">
857
+ <div class="flex flex-col gap-2 w-full border rounded-md p-2">
788
858
  {#if oneOf && oneOf.length >= 2}
789
859
  <ToggleButtonGroup
790
860
  selected={oneOfSelected}
@@ -824,70 +894,70 @@ onDestroy(() => {
824
894
  {@const obj = oneOf[objIdx]}
825
895
  {#if obj && obj.properties && Object.keys(obj.properties).length > 0}
826
896
  {#key redraw}
827
- <div class="py-4 pr-2 pl-6 border rounded w-full">
828
- {#if orderEditable}
829
- <SchemaFormDnd
830
- {nestedClasses}
831
- {onlyMaskPassword}
832
- {disablePortal}
833
- {disabled}
834
- {prettifyHeader}
835
- bind:schema={
836
- () => ({
837
- properties: obj.properties ?? {},
838
- order: obj.order,
839
- $schema: '',
840
- required: obj.required ?? [],
841
- type: 'object'
842
- }),
843
- () => {
844
- dispatch('nestedChange')
845
- }
846
- }
847
- bind:args={value}
848
- hiddenArgs={[
849
- oneOf?.find((o) => Object.keys(o.properties ?? {}).includes('kind'))
850
- ? 'kind'
851
- : 'label'
852
- ]}
853
- on:reorder={(e) => {
854
- if (oneOf && oneOf[objIdx]) {
855
- const keys = e.detail
856
- oneOf[objIdx].order = keys
857
- }
858
- }}
859
- on:nestedChange
860
- {shouldDispatchChanges}
861
- />
862
- {:else}
863
- <SchemaForm
864
- {nestedClasses}
865
- {onlyMaskPassword}
866
- {disablePortal}
867
- {disabled}
868
- {prettifyHeader}
869
- hiddenArgs={['label', 'kind']}
870
- schema={{
871
- properties: obj.properties,
897
+ {#if orderEditable}
898
+ <SchemaFormDnd
899
+ lightHeaderFont
900
+ {nestedClasses}
901
+ {onlyMaskPassword}
902
+ {disablePortal}
903
+ {disabled}
904
+ {prettifyHeader}
905
+ bind:schema={
906
+ () => ({
907
+ properties: obj.properties ?? {},
872
908
  order: obj.order,
873
909
  $schema: '',
874
910
  required: obj.required ?? [],
875
911
  type: 'object'
876
- }}
877
- bind:args={
878
- () => value,
879
- (v) => {
880
- value = { ...v, [tagKey]: oneOfSelected }
881
- }
882
- }
883
- {shouldDispatchChanges}
884
- on:change={() => {
912
+ }),
913
+ () => {
885
914
  dispatch('nestedChange')
886
- }}
887
- on:nestedChange
888
- />
889
- {/if}
890
- </div>
915
+ }
916
+ }
917
+ bind:args={value}
918
+ hiddenArgs={[
919
+ oneOf?.find((o) => Object.keys(o.properties ?? {}).includes('kind'))
920
+ ? 'kind'
921
+ : 'label'
922
+ ]}
923
+ on:reorder={(e) => {
924
+ if (oneOf && oneOf[objIdx]) {
925
+ const keys = e.detail
926
+ oneOf[objIdx].order = keys
927
+ }
928
+ }}
929
+ on:nestedChange
930
+ {shouldDispatchChanges}
931
+ />
932
+ {:else}
933
+ <SchemaForm
934
+ lightHeaderFont
935
+ {nestedClasses}
936
+ {onlyMaskPassword}
937
+ {disablePortal}
938
+ {disabled}
939
+ {prettifyHeader}
940
+ hiddenArgs={['label', 'kind']}
941
+ schema={{
942
+ properties: obj.properties,
943
+ order: obj.order,
944
+ $schema: '',
945
+ required: obj.required ?? [],
946
+ type: 'object'
947
+ }}
948
+ bind:args={
949
+ () => value,
950
+ (v) => {
951
+ value = { ...v, [tagKey]: oneOfSelected }
952
+ }
953
+ }
954
+ {shouldDispatchChanges}
955
+ on:change={() => {
956
+ dispatch('nestedChange')
957
+ }}
958
+ on:nestedChange
959
+ />
960
+ {/if}
891
961
  {/key}
892
962
  {:else if disabled}
893
963
  <textarea disabled></textarea>
@@ -934,9 +1004,10 @@ onDestroy(() => {
934
1004
  {/if}
935
1005
  </div>
936
1006
  {:else if properties && Object.keys(properties).length > 0 && inputCat !== 'list'}
937
- <div class={hideNested ? 'hidden' : 'py-4 pr-2 pl-6 border rounded-md w-full'}>
1007
+ <div class={hideNested ? 'hidden' : 'px-3 pt-6 border rounded-md w-full'}>
938
1008
  {#if orderEditable}
939
1009
  <SchemaFormDnd
1010
+ lightHeaderFont
940
1011
  {nestedClasses}
941
1012
  {onlyMaskPassword}
942
1013
  {disablePortal}
@@ -967,6 +1038,7 @@ onDestroy(() => {
967
1038
  />
968
1039
  {:else}
969
1040
  <SchemaForm
1041
+ lightHeaderFont
970
1042
  {nestedClasses}
971
1043
  {onlyMaskPassword}
972
1044
  {disablePortal}
@@ -1017,8 +1089,8 @@ onDestroy(() => {
1017
1089
  />
1018
1090
  {/await}
1019
1091
  {/if}
1020
- {#if inputCat == 'list'}
1021
- <div class="block">
1092
+ {#if inputCat == 'list' && !displayHeader}
1093
+ <div class="block mt-2.5 pl-2">
1022
1094
  <Toggle
1023
1095
  on:change={(e) => {
1024
1096
  isListJson = !isListJson
@@ -1026,7 +1098,7 @@ onDestroy(() => {
1026
1098
  checked={isListJson}
1027
1099
  textClass="text-secondary"
1028
1100
  size="xs"
1029
- options={{ right: 'json' }}
1101
+ options={{ left: 'json' }}
1030
1102
  />
1031
1103
  </div>
1032
1104
  {/if}
@@ -1047,6 +1119,7 @@ onDestroy(() => {
1047
1119
  dispatch('blur')
1048
1120
  }}
1049
1121
  enumLabels={extra['enumLabels']}
1122
+ selectClass="min-h-10"
1050
1123
  />
1051
1124
  </div>
1052
1125
  {:else if inputCat == 'date'}
@@ -1155,29 +1228,26 @@ onDestroy(() => {
1155
1228
  use:autosize
1156
1229
  onkeydown={onKeyDown}
1157
1230
  {disabled}
1158
- class={twMerge(
1159
- 'w-full',
1160
- valid
1161
- ? ''
1162
- : 'border border-red-700 border-opacity-30 focus:border-red-700 focus:border-opacity-3'
1163
- )}
1231
+ class={twMerge('w-full', inputBaseClass, inputBorderClass({ error: !!error }))}
1164
1232
  placeholder={placeholder ?? defaultValue ?? ''}
1165
1233
  bind:value
1166
1234
  ></textarea>
1167
1235
  {/key}
1168
- {#if !disabled && itemPicker && extra?.['disableVariablePicker'] != true}
1169
- <!-- svelte-ignore a11y_click_events_have_key_events -->
1170
- <button
1171
- class="absolute right-1 top-1 py-1 min-w-min !px-2 items-center text-gray-800 bg-surface-secondary border rounded center-center hover:bg-gray-300 transition-all cursor-pointer"
1172
- onclick={() => {
1173
- pickForField = label
1174
- itemPicker?.openDrawer?.()
1175
- }}
1176
- title="Insert a Variable"
1177
- >
1178
- <DollarSign class="!text-tertiary" size={14} />
1179
- </button>
1180
- {/if}
1236
+ {/if}
1237
+ {#if !disabled && itemPicker && extra?.['disableVariablePicker'] != true}
1238
+ <!-- svelte-ignore a11y_click_events_have_key_events -->
1239
+ <button
1240
+ class="absolute {password || extra?.['password'] == true
1241
+ ? 'right-16 top-1.5'
1242
+ : 'right-1 top-[7px]'} opacity-0 group-hover:opacity-100 duration-200 py-1 min-w-min !px-2 items-center text-gray-800 bg-surface-secondary border rounded center-center hover:bg-gray-300 transition-all cursor-pointer"
1243
+ onclick={() => {
1244
+ pickForField = label
1245
+ itemPicker?.openDrawer?.()
1246
+ }}
1247
+ title="Insert a Variable"
1248
+ >
1249
+ <DollarSign class="!text-tertiary" size={14} />
1250
+ </button>
1181
1251
  {/if}
1182
1252
  </div>
1183
1253
  {@render variableInput()}
@@ -1187,14 +1257,20 @@ onDestroy(() => {
1187
1257
  {@render actions?.()}
1188
1258
  </div>
1189
1259
 
1260
+ {#if description}
1261
+ <div class={twMerge('text-2xs italic py-1 text-hint', css?.description?.class)}>
1262
+ <pre class="font-main whitespace-normal">{description}</pre>
1263
+ </div>
1264
+ {/if}
1265
+
1190
1266
  {#if !compact || (error && error != '')}
1191
- <div class="text-right text-xs text-red-600 dark:text-red-400">
1192
- {#if disabled || error === ''}
1193
- &nbsp;
1194
- {:else}
1267
+ {#if disabled || error === ''}
1268
+ &nbsp;
1269
+ {:else}
1270
+ <div class="text-right text-xs text-red-600 dark:text-red-400 mb-2">
1195
1271
  {error}
1196
- {/if}
1197
- </div>
1272
+ </div>
1273
+ {/if}
1198
1274
  {:else if !noMargin}
1199
1275
  <div class="mb-2"></div>
1200
1276
  {/if}
@@ -1205,11 +1281,4 @@ onDestroy(() => {
1205
1281
  input::-webkit-inner-spin-button {
1206
1282
  -webkit-appearance: none !important;
1207
1283
  margin: 0;
1208
- }
1209
-
1210
- /* Firefox */
1211
- input[type='number'] {
1212
- -moz-appearance: textfield !important;
1213
- -webkit-appearance: textfield !important;
1214
- appearance: textfield !important;
1215
1284
  }</style>