windmill-components 1.60.4 → 1.75.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 (549) hide show
  1. package/assets/app.css +15 -1
  2. package/common.d.ts +5 -1
  3. package/components/ApiConnectForm.svelte +66 -5
  4. package/components/AppConnect.svelte +26 -10
  5. package/components/ArgInput.svelte +1 -1
  6. package/components/CliHelpBox.svelte +49 -0
  7. package/components/CliHelpBox.svelte.d.ts +14 -0
  8. package/components/DisplayResult.svelte +78 -10
  9. package/components/DisplayResult.svelte.d.ts +1 -0
  10. package/components/Editor.svelte +17 -7
  11. package/components/EditorBar.svelte +129 -111
  12. package/components/FieldHeader.svelte +12 -8
  13. package/components/FlowBuilder.svelte +107 -39
  14. package/components/FlowBuilder.svelte.d.ts +5 -0
  15. package/components/FlowGraphViewer.svelte +5 -4
  16. package/components/FlowJobResult.svelte +13 -5
  17. package/components/FlowJobResult.svelte.d.ts +1 -0
  18. package/components/FlowMetadata.svelte +24 -8
  19. package/components/FlowPreviewContent.svelte +5 -11
  20. package/components/FlowStatusViewer.svelte +62 -17
  21. package/components/FolderEditor.svelte +3 -2
  22. package/components/GroupEditor.svelte +8 -0
  23. package/components/HighlightCode.svelte +7 -1
  24. package/components/InlineCodeCopy.svelte +11 -0
  25. package/components/InlineCodeCopy.svelte.d.ts +16 -0
  26. package/components/InputTransformForm.svelte +22 -25
  27. package/components/InputTransformSchemaForm.svelte +103 -0
  28. package/components/InputTransformSchemaForm.svelte.d.ts +24 -0
  29. package/components/LogViewer.svelte +7 -1
  30. package/components/LogViewer.svelte.d.ts +1 -0
  31. package/components/ModulePreview.svelte +13 -3
  32. package/components/MoveDrawer.svelte +1 -1
  33. package/components/Multiselect.svelte +1 -1
  34. package/components/Multiselect.svelte.d.ts +2 -2
  35. package/components/ObjectResourceInput.svelte +6 -1
  36. package/components/Path.svelte +29 -16
  37. package/components/Popover.svelte +10 -15
  38. package/components/Popover.svelte.d.ts +1 -0
  39. package/components/Range.svelte.d.ts +2 -2
  40. package/components/ResourceEditor.svelte +39 -16
  41. package/components/ResourcePicker.svelte +33 -15
  42. package/components/RunChart.svelte +24 -5
  43. package/components/RunForm.svelte +26 -3
  44. package/components/RunForm.svelte.d.ts +2 -0
  45. package/components/ScheduleEditor.svelte +1 -1
  46. package/components/SchemaEditor.svelte +2 -2
  47. package/components/SchemaForm.svelte +72 -60
  48. package/components/SchemaForm.svelte.d.ts +1 -5
  49. package/components/ScriptBuilder.svelte +69 -30
  50. package/components/ScriptBuilder.svelte.d.ts +1 -0
  51. package/components/ScriptEditor.svelte +1 -0
  52. package/components/ScriptPicker.svelte +3 -0
  53. package/components/SharedBadge.svelte +5 -5
  54. package/components/SimpleEditor.svelte +4 -1
  55. package/components/SimpleEditor.svelte.d.ts +2 -0
  56. package/components/Slider.svelte +19 -0
  57. package/components/Slider.svelte.d.ts +20 -0
  58. package/components/StringTypeNarrowing.svelte +0 -1
  59. package/components/SuperadminSettings.svelte +11 -3
  60. package/components/SuperadminSettings.svelte.d.ts +2 -0
  61. package/components/TemplateEditor.svelte +1 -1
  62. package/components/TemplateEditor.svelte.d.ts +204 -0
  63. package/components/TestJobLoader.svelte +5 -5
  64. package/components/Toggle.svelte +18 -6
  65. package/components/Toggle.svelte.d.ts +2 -0
  66. package/components/Tooltip.svelte +1 -1
  67. package/components/UserSettings.svelte +13 -3
  68. package/components/UserSettings.svelte.d.ts +2 -0
  69. package/components/VariableEditor.svelte +1 -1
  70. package/components/WhitelistIp.svelte +23 -0
  71. package/components/WhitelistIp.svelte.d.ts +14 -0
  72. package/components/apps/components/buttons/AppButton.svelte +79 -17
  73. package/components/apps/components/buttons/AppButton.svelte.d.ts +4 -0
  74. package/components/apps/components/{form → buttons}/AppForm.svelte +19 -7
  75. package/components/apps/components/{form → buttons}/AppForm.svelte.d.ts +3 -0
  76. package/components/apps/components/buttons/AppFormButton.svelte +145 -0
  77. package/components/apps/components/buttons/AppFormButton.svelte.d.ts +28 -0
  78. package/components/apps/components/buttons/index.d.ts +3 -0
  79. package/components/apps/components/buttons/index.js +3 -0
  80. package/components/apps/components/{dataDisplay → display}/AppBarChart.svelte +27 -8
  81. package/components/apps/components/{dataDisplay → display}/AppBarChart.svelte.d.ts +4 -0
  82. package/components/apps/components/display/AppDisplayComponent.svelte +36 -0
  83. package/components/apps/components/display/AppDisplayComponent.svelte.d.ts +24 -0
  84. package/components/apps/components/display/AppHtml.svelte +46 -0
  85. package/components/apps/components/{dataDisplay → display}/AppHtml.svelte.d.ts +4 -1
  86. package/components/apps/components/display/AppIcon.svelte +47 -0
  87. package/components/apps/components/display/AppIcon.svelte.d.ts +25 -0
  88. package/components/apps/components/display/AppImage.svelte +34 -0
  89. package/components/apps/components/display/AppImage.svelte.d.ts +25 -0
  90. package/components/apps/components/display/AppMap.svelte +214 -0
  91. package/components/apps/components/display/AppMap.svelte.d.ts +23 -0
  92. package/components/apps/components/display/AppPdf.svelte +304 -0
  93. package/components/apps/components/display/AppPdf.svelte.d.ts +24 -0
  94. package/components/apps/components/{dataDisplay → display}/AppPieChart.svelte +16 -7
  95. package/components/apps/components/{dataDisplay → display}/AppPieChart.svelte.d.ts +4 -0
  96. package/components/apps/components/{dataDisplay → display}/AppScatterChart.svelte +13 -4
  97. package/components/apps/components/{dataDisplay → display}/AppScatterChart.svelte.d.ts +4 -0
  98. package/components/apps/components/{dataDisplay → display}/AppText.svelte +42 -34
  99. package/components/apps/components/{dataDisplay → display}/AppText.svelte.d.ts +4 -0
  100. package/components/apps/components/{dataDisplay → display}/AppTimeseries.svelte +14 -5
  101. package/components/apps/components/{dataDisplay → display}/AppTimeseries.svelte.d.ts +4 -0
  102. package/components/apps/components/display/PlotlyHtml.svelte +32 -0
  103. package/components/apps/components/display/PlotlyHtml.svelte.d.ts +24 -0
  104. package/components/apps/components/{dataDisplay → display}/VegaLiteHtml.svelte +4 -10
  105. package/components/apps/components/{dataDisplay → display}/VegaLiteHtml.svelte.d.ts +2 -0
  106. package/components/apps/components/display/index.d.ts +15 -0
  107. package/components/apps/components/display/index.js +15 -0
  108. package/components/apps/components/display/table/AppAggridTable.svelte +92 -0
  109. package/components/apps/components/display/table/AppAggridTable.svelte.d.ts +25 -0
  110. package/components/apps/components/{table → display/table}/AppTable.svelte +85 -29
  111. package/components/apps/components/{table → display/table}/AppTable.svelte.d.ts +6 -2
  112. package/components/apps/components/{table → display/table}/AppTableFooter.svelte +9 -2
  113. package/components/apps/components/{table → display/table}/AppTableFooter.svelte.d.ts +2 -0
  114. package/components/apps/components/helpers/AlignWrapper.svelte +29 -23
  115. package/components/apps/components/helpers/AlignWrapper.svelte.d.ts +6 -2
  116. package/components/apps/components/helpers/HiddenComponent.svelte +23 -0
  117. package/components/apps/components/helpers/HiddenComponent.svelte.d.ts +25 -0
  118. package/components/apps/components/helpers/InputDefaultValue.svelte +17 -0
  119. package/components/apps/components/helpers/InputDefaultValue.svelte.d.ts +17 -0
  120. package/components/apps/components/helpers/InputValue.svelte +39 -18
  121. package/components/apps/components/helpers/InputValue.svelte.d.ts +0 -1
  122. package/components/apps/components/helpers/NonRunnableComponent.svelte +18 -3
  123. package/components/apps/components/helpers/NonRunnableComponent.svelte.d.ts +1 -0
  124. package/components/apps/components/helpers/RefreshButton.svelte +1 -1
  125. package/components/apps/components/helpers/ResizeWrapper.svelte +24 -0
  126. package/components/apps/components/helpers/ResizeWrapper.svelte.d.ts +19 -0
  127. package/components/apps/components/helpers/RunnableComponent.svelte +99 -102
  128. package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +5 -2
  129. package/components/apps/components/helpers/RunnableWrapper.svelte +16 -7
  130. package/components/apps/components/helpers/RunnableWrapper.svelte.d.ts +5 -2
  131. package/components/apps/components/helpers/index.d.ts +10 -0
  132. package/components/apps/components/helpers/index.js +10 -0
  133. package/components/apps/components/icon.d.ts +1 -0
  134. package/components/apps/components/icon.js +18 -0
  135. package/components/apps/components/index.d.ts +5 -0
  136. package/components/apps/components/index.js +5 -0
  137. package/components/apps/components/{selectInputs → inputs}/AppCheckbox.svelte +12 -4
  138. package/components/apps/components/{selectInputs → inputs}/AppCheckbox.svelte.d.ts +3 -0
  139. package/components/apps/components/inputs/AppDateInput.svelte +47 -0
  140. package/components/apps/components/{dateInputs → inputs}/AppDateInput.svelte.d.ts +6 -1
  141. package/components/apps/components/inputs/AppFileInput.svelte +42 -0
  142. package/components/apps/components/inputs/AppFileInput.svelte.d.ts +23 -0
  143. package/components/apps/components/inputs/AppMultiSelect.svelte +82 -0
  144. package/components/apps/components/inputs/AppMultiSelect.svelte.d.ts +27 -0
  145. package/components/apps/components/inputs/AppNumberInput.svelte +52 -0
  146. package/components/apps/components/{numberInputs → inputs}/AppNumberInput.svelte.d.ts +5 -0
  147. package/components/apps/components/inputs/AppRangeInput.svelte +85 -0
  148. package/components/apps/components/inputs/AppRangeInput.svelte.d.ts +26 -0
  149. package/components/apps/components/inputs/AppSelect.svelte +127 -0
  150. package/components/apps/components/{selectInputs → inputs}/AppSelect.svelte.d.ts +5 -0
  151. package/components/apps/components/inputs/AppSliderInputs.svelte +73 -0
  152. package/components/apps/components/{numberInputs → inputs}/AppSliderInputs.svelte.d.ts +3 -0
  153. package/components/apps/components/inputs/AppTextInput.svelte +71 -0
  154. package/components/apps/components/{textInputs → inputs}/AppTextInput.svelte.d.ts +6 -0
  155. package/components/apps/components/inputs/currency/AppCurrencyInput.svelte +59 -0
  156. package/components/apps/components/inputs/currency/AppCurrencyInput.svelte.d.ts +24 -0
  157. package/components/apps/components/inputs/currency/CurrencyInput.svelte +183 -0
  158. package/components/apps/components/inputs/currency/CurrencyInput.svelte.d.ts +33 -0
  159. package/components/apps/components/inputs/index.d.ts +9 -0
  160. package/components/apps/components/inputs/index.js +9 -0
  161. package/components/apps/components/layout/AppContainer.svelte +40 -0
  162. package/components/apps/components/layout/AppContainer.svelte.d.ts +24 -0
  163. package/components/apps/components/layout/AppDivider.svelte +40 -0
  164. package/components/apps/components/layout/AppDivider.svelte.d.ts +24 -0
  165. package/components/apps/components/layout/AppDrawer.svelte +89 -0
  166. package/components/apps/components/layout/AppDrawer.svelte.d.ts +24 -0
  167. package/components/apps/components/layout/AppSplitpanes.svelte +88 -0
  168. package/components/apps/components/layout/AppSplitpanes.svelte.d.ts +26 -0
  169. package/components/apps/components/layout/AppTabs.svelte +99 -0
  170. package/components/apps/components/layout/AppTabs.svelte.d.ts +27 -0
  171. package/components/apps/components/layout/index.d.ts +5 -0
  172. package/components/apps/components/layout/index.js +5 -0
  173. package/components/apps/editor/AppComponentInput.svelte +33 -0
  174. package/components/apps/editor/AppComponentInput.svelte.d.ts +18 -0
  175. package/components/apps/editor/AppComponentInputs.svelte +13 -0
  176. package/components/apps/editor/AppComponentInputs.svelte.d.ts +20 -0
  177. package/components/apps/editor/AppEditor.svelte +134 -35
  178. package/components/apps/editor/AppEditor.svelte.d.ts +4 -1
  179. package/components/apps/editor/AppEditorHeader.svelte +178 -47
  180. package/components/apps/editor/AppEditorHeader.svelte.d.ts +1 -0
  181. package/components/apps/editor/AppInputs.svelte +60 -0
  182. package/components/apps/editor/AppInputs.svelte.d.ts +14 -0
  183. package/components/apps/editor/AppPreview.svelte +30 -12
  184. package/components/apps/editor/ComponentHeader.svelte +52 -3
  185. package/components/apps/editor/ComponentHeader.svelte.d.ts +2 -1
  186. package/components/apps/editor/GridEditor.svelte +134 -77
  187. package/components/apps/editor/GridEditor.svelte.d.ts +2 -0
  188. package/components/apps/editor/GridPanel.svelte +29 -0
  189. package/components/apps/editor/GridPanel.svelte.d.ts +18 -0
  190. package/components/apps/editor/RecomputeAllComponents.svelte +8 -6
  191. package/components/apps/editor/SettingsPanel.svelte +26 -8
  192. package/components/apps/editor/SubGridEditor.svelte +139 -0
  193. package/components/apps/editor/SubGridEditor.svelte.d.ts +29 -0
  194. package/components/apps/editor/appUtils.d.ts +19 -0
  195. package/components/apps/editor/appUtils.js +241 -0
  196. package/components/apps/editor/component/Component.svelte +434 -0
  197. package/components/apps/editor/{ComponentEditor.svelte.d.ts → component/Component.svelte.d.ts} +7 -5
  198. package/components/apps/editor/component/ComponentNavigation.svelte +125 -0
  199. package/components/apps/editor/component/ComponentNavigation.svelte.d.ts +14 -0
  200. package/components/apps/editor/component/README.md +15 -0
  201. package/components/apps/editor/component/components.d.ts +77 -0
  202. package/components/apps/editor/component/components.js +1476 -0
  203. package/components/apps/editor/component/default-codes.d.ts +3 -0
  204. package/components/apps/editor/component/default-codes.js +322 -0
  205. package/components/apps/editor/component/index.d.ts +4 -0
  206. package/components/apps/editor/component/index.js +4 -0
  207. package/components/apps/editor/component/sets.d.ts +2 -0
  208. package/components/apps/editor/component/sets.js +55 -0
  209. package/components/apps/editor/componentsPanel/ComponentList.svelte +75 -108
  210. package/components/apps/editor/componentsPanel/CssProperty.svelte +67 -0
  211. package/components/apps/editor/componentsPanel/CssProperty.svelte.d.ts +21 -0
  212. package/components/apps/editor/componentsPanel/CssSettings.svelte +188 -0
  213. package/components/apps/editor/componentsPanel/CssSettings.svelte.d.ts +14 -0
  214. package/components/apps/editor/componentsPanel/ListItem.svelte +39 -0
  215. package/components/apps/editor/componentsPanel/ListItem.svelte.d.ts +20 -0
  216. package/components/apps/editor/componentsPanel/componentStaticValues.d.ts +5 -1
  217. package/components/apps/editor/componentsPanel/componentStaticValues.js +16 -1
  218. package/components/apps/editor/contextPanel/ComponentOutputViewer.svelte +1 -1
  219. package/components/apps/editor/contextPanel/ContextPanel.svelte +115 -67
  220. package/components/apps/editor/inlineScriptsPanel/EmptyInlineScript.svelte +109 -10
  221. package/components/apps/editor/inlineScriptsPanel/EmptyInlineScript.svelte.d.ts +1 -0
  222. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte +88 -41
  223. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte.d.ts +5 -0
  224. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorPanel.svelte +32 -6
  225. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorPanel.svelte.d.ts +1 -0
  226. package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanel.svelte +75 -8
  227. package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelList.svelte +128 -72
  228. package/components/apps/editor/inlineScriptsPanel/utils.d.ts +5 -5
  229. package/components/apps/editor/inlineScriptsPanel/utils.js +48 -7
  230. package/components/apps/editor/settingsPanel/AlignmentEditor.svelte +1 -1
  231. package/components/apps/editor/settingsPanel/AlignmentEditor.svelte.d.ts +1 -1
  232. package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +14 -10
  233. package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte.d.ts +68 -1
  234. package/components/apps/editor/settingsPanel/ComponentInputTypeEditor.svelte +1 -1
  235. package/components/apps/editor/settingsPanel/ComponentPanel.svelte +130 -61
  236. package/components/apps/editor/settingsPanel/ComponentPanel.svelte.d.ts +6 -3
  237. package/components/apps/editor/settingsPanel/GridPane.svelte +75 -0
  238. package/components/apps/editor/settingsPanel/GridPane.svelte.d.ts +20 -0
  239. package/components/apps/editor/settingsPanel/GridTab.svelte +73 -0
  240. package/components/apps/editor/settingsPanel/GridTab.svelte.d.ts +20 -0
  241. package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +5 -1
  242. package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte.d.ts +2 -2
  243. package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +93 -78
  244. package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte.d.ts +1 -0
  245. package/components/apps/editor/settingsPanel/MoveToOtherGrid.svelte +92 -0
  246. package/components/apps/editor/settingsPanel/MoveToOtherGrid.svelte.d.ts +18 -0
  247. package/components/apps/editor/settingsPanel/Recompute.svelte +5 -2
  248. package/components/apps/editor/settingsPanel/SelectedRunnable.svelte +1 -1
  249. package/components/apps/editor/settingsPanel/TableActions.svelte +45 -7
  250. package/components/apps/editor/settingsPanel/TableActions.svelte.d.ts +2 -1
  251. package/components/apps/editor/settingsPanel/common/PanelSection.svelte +6 -4
  252. package/components/apps/editor/settingsPanel/inputEditor/ColorInput.svelte +48 -0
  253. package/components/apps/editor/settingsPanel/inputEditor/ColorInput.svelte.d.ts +19 -0
  254. package/components/apps/editor/settingsPanel/inputEditor/ConnectedInputEditor.svelte +1 -1
  255. package/components/apps/editor/settingsPanel/inputEditor/EvalInputEditor.svelte +1 -1
  256. package/components/apps/editor/settingsPanel/inputEditor/IconSelectInput.svelte +107 -0
  257. package/components/apps/editor/settingsPanel/inputEditor/IconSelectInput.svelte.d.ts +21 -0
  258. package/components/apps/editor/settingsPanel/inputEditor/JsonEditor.svelte +2 -2
  259. package/components/apps/editor/settingsPanel/inputEditor/JsonEditor.svelte.d.ts +2 -1
  260. package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +59 -6
  261. package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte.d.ts +3 -0
  262. package/components/apps/editor/settingsPanel/inputEditor/UploadInputEditor.svelte +21 -0
  263. package/components/apps/editor/settingsPanel/inputEditor/UploadInputEditor.svelte.d.ts +17 -0
  264. package/components/apps/editor/settingsPanel/mainInput/InlineScriptList.svelte +1 -0
  265. package/components/apps/editor/settingsPanel/mainInput/InlineScriptList.svelte.d.ts +1 -0
  266. package/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte +4 -21
  267. package/components/apps/gridUtils.d.ts +3 -1
  268. package/components/apps/gridUtils.js +5 -3
  269. package/components/apps/inputType.d.ts +34 -6
  270. package/components/apps/rx.js +2 -1
  271. package/components/apps/store.d.ts +6 -1
  272. package/components/apps/types.d.ts +47 -42
  273. package/components/apps/types.js +1 -1
  274. package/components/apps/utils.d.ts +6 -5
  275. package/components/apps/utils.js +63 -95
  276. package/components/common/button/Button.svelte +12 -5
  277. package/components/common/button/Button.svelte.d.ts +3 -1
  278. package/components/common/button/ButtonPopup.svelte +2 -0
  279. package/components/common/button/ButtonPopup.svelte.d.ts +2 -1
  280. package/components/common/button/UndoRedo.svelte +32 -0
  281. package/components/common/button/UndoRedo.svelte.d.ts +20 -0
  282. package/components/common/button/model.d.ts +2 -2
  283. package/components/common/button/model.js +21 -6
  284. package/components/common/confirmationModal/ConfirmationModal.svelte +8 -1
  285. package/components/common/confirmationModal/UnsavedConfirmationModal.svelte +4 -4
  286. package/components/common/drawer/Drawer.svelte +13 -5
  287. package/components/common/drawer/Drawer.svelte.d.ts +3 -1
  288. package/components/common/drawer/DrawerContent.svelte +0 -1
  289. package/components/common/fileInput/FileInput.svelte +138 -0
  290. package/components/common/fileInput/FileInput.svelte.d.ts +29 -0
  291. package/components/common/fileInput/model.d.ts +1 -0
  292. package/components/common/fileInput/model.js +1 -0
  293. package/components/common/index.d.ts +2 -0
  294. package/components/common/index.js +2 -0
  295. package/components/common/kbd/Kbd.svelte.d.ts +2 -2
  296. package/components/common/menu/Menu.svelte +3 -2
  297. package/components/common/menu/Menu.svelte.d.ts +2 -1
  298. package/components/common/modal/Modal.svelte +79 -0
  299. package/components/common/modal/Modal.svelte.d.ts +24 -0
  300. package/components/common/popup/Popup.svelte +34 -17
  301. package/components/common/popup/Popup.svelte.d.ts +11 -4
  302. package/components/common/table/AppRow.svelte +13 -4
  303. package/components/common/table/AppRow.svelte.d.ts +1 -0
  304. package/components/common/table/FlowRow.svelte +40 -8
  305. package/components/common/table/FlowRow.svelte.d.ts +1 -0
  306. package/components/common/table/LanguageBadge.svelte +10 -4
  307. package/components/common/table/Row.svelte +1 -1
  308. package/components/common/table/ScriptRow.svelte +44 -12
  309. package/components/common/table/ScriptRow.svelte.d.ts +1 -0
  310. package/components/common/tabs/Tab.svelte +12 -5
  311. package/components/common/tabs/Tab.svelte.d.ts +4 -1
  312. package/components/common/tabs/Tabs.svelte +12 -8
  313. package/components/common/tabs/Tabs.svelte.d.ts +6 -2
  314. package/components/flows/CreateActionsFlow.svelte +2 -3
  315. package/components/flows/FlowEditor.svelte +6 -4
  316. package/components/flows/common/FlowCardHeader.svelte +4 -1
  317. package/components/flows/content/BranchPredicateEditor.svelte +13 -12
  318. package/components/flows/content/CapturePayload.svelte +1 -2
  319. package/components/flows/content/FlowBranchesAllWrapper.svelte +1 -1
  320. package/components/flows/content/FlowConstants.svelte +7 -13
  321. package/components/flows/content/FlowEditorPanel.svelte +4 -3
  322. package/components/flows/content/FlowFailureModule.svelte +2 -1
  323. package/components/flows/content/FlowInput.svelte +4 -2
  324. package/components/flows/content/FlowInputs.svelte +109 -99
  325. package/components/flows/content/FlowLoop.svelte +4 -5
  326. package/components/flows/content/FlowModuleComponent.svelte +26 -13
  327. package/components/flows/content/FlowModuleEarlyStop.svelte +3 -1
  328. package/components/flows/content/FlowModuleHeader.svelte +26 -3
  329. package/components/flows/content/FlowModuleHeader.svelte.d.ts +1 -0
  330. package/components/flows/content/FlowModuleSleep.svelte +2 -2
  331. package/components/flows/content/FlowModuleWrapper.svelte +2 -8
  332. package/components/flows/content/FlowRetries.svelte +8 -6
  333. package/components/flows/content/FlowSchedules.svelte +1 -2
  334. package/components/flows/content/FlowSettings.svelte +77 -51
  335. package/components/flows/content/ScriptEditorDrawer.svelte +98 -0
  336. package/components/flows/content/ScriptEditorDrawer.svelte.d.ts +19 -0
  337. package/components/flows/flowState.d.ts +2 -2
  338. package/components/flows/flowState.js +1 -3
  339. package/components/flows/flowStateUtils.d.ts +7 -6
  340. package/components/flows/flowStateUtils.js +9 -11
  341. package/components/flows/flowStore.d.ts +5 -3
  342. package/components/flows/flowStore.js +6 -17
  343. package/components/flows/header/FlowImportExportMenu.svelte +2 -1
  344. package/components/flows/map/FlowConstantsItem.svelte +2 -2
  345. package/components/flows/map/FlowErrorHandlerItem.svelte +12 -13
  346. package/components/flows/map/FlowInputsItem.svelte +2 -3
  347. package/components/flows/map/FlowModuleSchemaItem.svelte +88 -91
  348. package/components/flows/map/FlowModuleSchemaItem.svelte.d.ts +3 -3
  349. package/components/flows/map/FlowModuleSchemaMap.svelte +163 -130
  350. package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +1 -1
  351. package/components/flows/map/FlowSettingsItem.svelte +5 -4
  352. package/components/flows/map/InsertModuleButton.svelte +34 -18
  353. package/components/flows/map/InsertModuleButton.svelte.d.ts +2 -0
  354. package/components/flows/map/MapItem.svelte +176 -101
  355. package/components/flows/map/MapItem.svelte.d.ts +20 -2
  356. package/components/flows/map/VirtualItem.svelte +129 -0
  357. package/components/flows/map/VirtualItem.svelte.d.ts +44 -0
  358. package/components/flows/pickers/WorkspaceScriptPicker.svelte +1 -1
  359. package/components/flows/previousResults.d.ts +1 -1
  360. package/components/flows/previousResults.js +32 -17
  361. package/components/flows/types.d.ts +13 -1
  362. package/components/flows/utils.js +17 -11
  363. package/components/graph/FlowGraph.svelte +247 -164
  364. package/components/graph/FlowGraph.svelte.d.ts +15 -1
  365. package/components/graph/model.d.ts +6 -36
  366. package/components/graph/model.js +1 -1
  367. package/components/graph/svelvet/LICENSE +21 -0
  368. package/components/graph/svelvet/collapsible/controllers/util.d.ts +15 -0
  369. package/components/graph/svelvet/collapsible/controllers/util.js +144 -0
  370. package/components/graph/svelvet/collapsible/models/Collapsible.d.ts +17 -0
  371. package/components/graph/svelvet/collapsible/models/Collapsible.js +25 -0
  372. package/components/graph/svelvet/collapsible/types/types.d.ts +8 -0
  373. package/components/graph/svelvet/collapsible/types/types.js +1 -0
  374. package/components/graph/svelvet/container/README.md +7 -0
  375. package/components/graph/svelvet/container/controllers/middleware.d.ts +18 -0
  376. package/components/graph/svelvet/container/controllers/middleware.js +101 -0
  377. package/components/graph/svelvet/container/views/GraphView.svelte +252 -0
  378. package/components/graph/svelvet/container/views/GraphView.svelte.d.ts +25 -0
  379. package/components/graph/svelvet/container/views/Svelvet.svelte +131 -0
  380. package/components/graph/svelvet/container/views/Svelvet.svelte.d.ts +41 -0
  381. package/components/graph/svelvet/customCss/controllers/getCss.d.ts +2 -0
  382. package/components/graph/svelvet/customCss/controllers/getCss.js +57 -0
  383. package/components/graph/svelvet/d3/controllers/README.md +3 -0
  384. package/components/graph/svelvet/d3/controllers/d3.d.ts +5 -0
  385. package/components/graph/svelvet/d3/controllers/d3.js +59 -0
  386. package/components/graph/svelvet/d3/controllers/d3Old.d.ts +1 -0
  387. package/components/graph/svelvet/d3/controllers/d3Old.js +43 -0
  388. package/components/graph/svelvet/docs/CHANGELOG.md +145 -0
  389. package/components/graph/svelvet/docs/DESIGN_PATTERNS.md +44 -0
  390. package/components/graph/svelvet/docs/DOCUMENTATION.md +5 -0
  391. package/components/graph/svelvet/docs/README.md +34 -0
  392. package/components/graph/svelvet/docs/TODO.md +14 -0
  393. package/components/graph/svelvet/docs/Tutorials.md +25 -0
  394. package/components/graph/svelvet/docs/images/css-background-after.png +0 -0
  395. package/components/graph/svelvet/docs/images/css-background-before.png +0 -0
  396. package/components/graph/svelvet/docs/images/custom-edges-after.png +0 -0
  397. package/components/graph/svelvet/docs/images/custom-edges-before.png +0 -0
  398. package/components/graph/svelvet/docs/images/custom-nodes-after.png +0 -0
  399. package/components/graph/svelvet/docs/images/custom-nodes-before.png +0 -0
  400. package/components/graph/svelvet/docs/images/custom-svelte-components-after.png +0 -0
  401. package/components/graph/svelvet/docs/images/custom-svelte-components-before.png +0 -0
  402. package/components/graph/svelvet/docs/images/html-docs-after.png +0 -0
  403. package/components/graph/svelvet/docs/images/html-docs-before.png +0 -0
  404. package/components/graph/svelvet/docs/images/minimap-after.png +0 -0
  405. package/components/graph/svelvet/docs/images/minimap-before.png +0 -0
  406. package/components/graph/svelvet/docs/images/node-classes-after.png +0 -0
  407. package/components/graph/svelvet/docs/images/node-classes-before.png +0 -0
  408. package/components/graph/svelvet/docs/images/node-create-after.png +0 -0
  409. package/components/graph/svelvet/docs/images/node-create-before.png +0 -0
  410. package/components/graph/svelvet/edges/controllers/anchorCbDev.d.ts +4 -0
  411. package/components/graph/svelvet/edges/controllers/anchorCbDev.js +92 -0
  412. package/components/graph/svelvet/edges/controllers/anchorCbUser.d.ts +57 -0
  413. package/components/graph/svelvet/edges/controllers/anchorCbUser.js +73 -0
  414. package/components/graph/svelvet/edges/controllers/util.d.ts +37 -0
  415. package/components/graph/svelvet/edges/controllers/util.js +72 -0
  416. package/components/graph/svelvet/edges/models/Anchor.d.ts +48 -0
  417. package/components/graph/svelvet/edges/models/Anchor.js +122 -0
  418. package/components/graph/svelvet/edges/models/Edge.d.ts +47 -0
  419. package/components/graph/svelvet/edges/models/Edge.js +107 -0
  420. package/components/graph/svelvet/edges/types/types.d.ts +18 -0
  421. package/components/graph/svelvet/edges/types/types.js +1 -0
  422. package/components/graph/svelvet/edges/views/Edges/BaseEdge.svelte +105 -0
  423. package/components/graph/svelvet/edges/views/Edges/BaseEdge.svelte.d.ts +18 -0
  424. package/components/graph/svelvet/edges/views/Edges/EdgeAnchor.svelte +12 -0
  425. package/components/graph/svelvet/edges/views/Edges/EdgeAnchor.svelte.d.ts +17 -0
  426. package/components/graph/svelvet/edges/views/Edges/EdgeText.svelte +43 -0
  427. package/components/graph/svelvet/edges/views/Edges/EdgeText.svelte.d.ts +17 -0
  428. package/components/graph/svelvet/edges/views/Edges/SimpleBezierEdge.svelte +137 -0
  429. package/components/graph/svelvet/edges/views/Edges/SimpleBezierEdge.svelte.d.ts +17 -0
  430. package/components/graph/svelvet/edges/views/Edges/SmoothStepEdge.svelte +176 -0
  431. package/components/graph/svelvet/edges/views/Edges/SmoothStepEdge.svelte.d.ts +60 -0
  432. package/components/graph/svelvet/edges/views/Edges/StepEdge.svelte +8 -0
  433. package/components/graph/svelvet/edges/views/Edges/StepEdge.svelte.d.ts +25 -0
  434. package/components/graph/svelvet/edges/views/Edges/types.d.ts +52 -0
  435. package/components/graph/svelvet/edges/views/Edges/types.js +1 -0
  436. package/components/graph/svelvet/edges/views/Edges/utils.d.ts +33 -0
  437. package/components/graph/svelvet/edges/views/Edges/utils.js +31 -0
  438. package/components/graph/svelvet/editEdges/views/EditEdge.svelte +151 -0
  439. package/components/graph/svelvet/editEdges/views/EditEdge.svelte.d.ts +20 -0
  440. package/components/graph/svelvet/nodes/controllers/util.d.ts +9 -0
  441. package/components/graph/svelvet/nodes/controllers/util.js +13 -0
  442. package/components/graph/svelvet/nodes/models/Node.d.ts +78 -0
  443. package/components/graph/svelvet/nodes/models/Node.js +195 -0
  444. package/components/graph/svelvet/nodes/views/EditNode.svelte +147 -0
  445. package/components/graph/svelvet/nodes/views/EditNode.svelte.d.ts +33 -0
  446. package/components/graph/svelvet/nodes/views/Node.svelte +85 -0
  447. package/components/graph/svelvet/nodes/views/Node.svelte.d.ts +22 -0
  448. package/components/graph/svelvet/resizableNodes/controllers/util.d.ts +11 -0
  449. package/components/graph/svelvet/resizableNodes/controllers/util.js +24 -0
  450. package/components/graph/svelvet/resizableNodes/models/ResizeNode.d.ts +33 -0
  451. package/components/graph/svelvet/resizableNodes/models/ResizeNode.js +71 -0
  452. package/components/graph/svelvet/resizableNodes/views/ResizeNode.svelte +81 -0
  453. package/components/graph/svelvet/resizableNodes/views/ResizeNode.svelte.d.ts +20 -0
  454. package/components/graph/svelvet/store/controllers/storeApi.d.ts +32 -0
  455. package/components/graph/svelvet/store/controllers/storeApi.js +111 -0
  456. package/components/graph/svelvet/store/controllers/userApi.d.ts +3 -0
  457. package/components/graph/svelvet/store/controllers/userApi.js +18 -0
  458. package/components/graph/svelvet/store/controllers/util.d.ts +31 -0
  459. package/components/graph/svelvet/store/controllers/util.js +180 -0
  460. package/components/graph/svelvet/store/models/store.d.ts +12 -0
  461. package/components/graph/svelvet/store/models/store.js +9 -0
  462. package/components/graph/svelvet/store/types/types.d.ts +134 -0
  463. package/components/graph/svelvet/store/types/types.js +1 -0
  464. package/components/graph/svelvet/types/README.md +3 -0
  465. package/components/graph/svelvet/types/index.d.ts +2 -0
  466. package/components/graph/svelvet/types/index.js +1 -0
  467. package/components/graph/svelvet/types/types.d.ts +49 -0
  468. package/components/graph/svelvet/types/types.js +18 -0
  469. package/components/graph/util.js +2 -2
  470. package/components/home/ItemsList.svelte +53 -5
  471. package/components/home/ItemsList.svelte.d.ts +1 -0
  472. package/components/home/ListFilters.svelte +7 -2
  473. package/components/icons/SquareIcon.svelte +9 -0
  474. package/components/icons/SquareIcon.svelte.d.ts +17 -0
  475. package/components/icons/index.d.ts +2 -0
  476. package/components/icons/index.js +2 -0
  477. package/components/jobs/JobDetail.svelte +40 -5
  478. package/components/propertyPicker/ObjectViewer.svelte +14 -9
  479. package/components/propertyPicker/ObjectViewer.svelte.d.ts +1 -0
  480. package/components/propertyPicker/PropPicker.svelte +8 -1
  481. package/components/propertyPicker/PropPickerResult.svelte +1 -1
  482. package/components/random_positive_adjetive.d.ts +1 -0
  483. package/components/random_positive_adjetive.js +961 -0
  484. package/components/scriptEditor/LogPanel.svelte +2 -1
  485. package/components/sidebar/SidebarContent.svelte +1 -1
  486. package/components/sidebar/UserMenu.svelte +46 -16
  487. package/components/sidebar/UserMenu.svelte.d.ts +0 -3
  488. package/components/sidebar/WorkspaceMenu.svelte +3 -1
  489. package/components/sidebar/settings.d.ts +2 -0
  490. package/components/sidebar/settings.js +2 -0
  491. package/consts.d.ts +1 -0
  492. package/consts.js +1 -0
  493. package/defaults.d.ts +4 -0
  494. package/defaults.js +4 -0
  495. package/gen/core/OpenAPI.js +1 -1
  496. package/gen/models/CompletedJob.d.ts +1 -0
  497. package/gen/models/FlowModule.d.ts +0 -1
  498. package/gen/models/QueuedJob.d.ts +1 -0
  499. package/gen/models/WorkerPing.d.ts +1 -1
  500. package/gen/services/FlowService.d.ts +9 -0
  501. package/gen/services/FlowService.js +15 -0
  502. package/gen/services/JobService.d.ts +97 -15
  503. package/gen/services/JobService.js +74 -15
  504. package/gen/services/ScriptService.d.ts +10 -1
  505. package/gen/services/ScriptService.js +16 -1
  506. package/gen/services/VariableService.d.ts +4 -2
  507. package/gen/services/VariableService.js +8 -2
  508. package/gen/services/WorkspaceService.d.ts +17 -0
  509. package/gen/services/WorkspaceService.js +16 -0
  510. package/history.d.ts +9 -0
  511. package/history.js +56 -0
  512. package/infer.js +3 -0
  513. package/init_scripts/python_failure_module.py +10 -0
  514. package/init_scripts/python_init_code.py +37 -0
  515. package/init_scripts/python_init_code_clear.py +5 -0
  516. package/init_scripts/python_init_code_trigger.py +14 -0
  517. package/logout.js +2 -1
  518. package/package.json +661 -522
  519. package/script_helpers.d.ts +6 -5
  520. package/script_helpers.js +8 -73
  521. package/scripts.d.ts +1 -1
  522. package/scripts.js +8 -1
  523. package/stores.d.ts +5 -1
  524. package/stores.js +8 -1
  525. package/user.d.ts +1 -1
  526. package/user.js +14 -8
  527. package/utils.d.ts +10 -5
  528. package/utils.js +51 -14
  529. package/components/apps/components/DisplayComponent.svelte +0 -16
  530. package/components/apps/components/DisplayComponent.svelte.d.ts +0 -20
  531. package/components/apps/components/dataDisplay/AppHtml.svelte +0 -31
  532. package/components/apps/components/dateInputs/AppDateInput.svelte +0 -34
  533. package/components/apps/components/numberInputs/AppNumberInput.svelte +0 -33
  534. package/components/apps/components/numberInputs/AppSliderInputs.svelte +0 -37
  535. package/components/apps/components/selectInputs/AppSelect.svelte +0 -47
  536. package/components/apps/components/textInputs/AppTextInput.svelte +0 -31
  537. package/components/apps/editor/ComponentEditor.svelte +0 -145
  538. package/components/apps/editor/TablePanel.svelte +0 -17
  539. package/components/apps/editor/TablePanel.svelte.d.ts +0 -17
  540. package/components/apps/editor/componentsPanel/data.d.ts +0 -3
  541. package/components/apps/editor/componentsPanel/data.js +0 -499
  542. package/components/apps/editorUtils.d.ts +0 -1
  543. package/components/apps/editorUtils.js +0 -292
  544. package/components/flows/map/FlowBranchAllMap.svelte +0 -100
  545. package/components/flows/map/FlowBranchAllMap.svelte.d.ts +0 -17
  546. package/components/flows/map/FlowBranchOneMap.svelte +0 -124
  547. package/components/flows/map/FlowBranchOneMap.svelte.d.ts +0 -17
  548. /package/components/apps/components/{table → display/table}/tableOptions.d.ts +0 -0
  549. /package/components/apps/components/{table → display/table}/tableOptions.js +0 -0
@@ -4,12 +4,11 @@ import { faClose, faPlay, faRefresh } from '@fortawesome/free-solid-svg-icons';
4
4
  import { Button, Kbd } from './common';
5
5
  import { createEventDispatcher, getContext } from 'svelte';
6
6
  import Icon from 'svelte-awesome';
7
- import { dfs, flowStore } from './flows/flowStore';
7
+ import { dfs } from './flows/flowStore';
8
8
  import { runFlowPreview } from './flows/utils';
9
9
  import SchemaForm from './SchemaForm.svelte';
10
10
  import FlowStatusViewer from '../components/FlowStatusViewer.svelte';
11
11
  import FlowProgressBar from './flows/FlowProgressBar.svelte';
12
- import { flowStateStore } from './flows/flowState';
13
12
  import CapturePayload from './flows/content/CapturePayload.svelte';
14
13
  import { Loader2 } from 'lucide-svelte';
15
14
  let capturePayload;
@@ -17,10 +16,9 @@ export let previewMode;
17
16
  export let open;
18
17
  export let jobId = undefined;
19
18
  export let job = undefined;
20
- let isValid = true;
21
19
  let isRunning = false;
22
20
  let jobProgressReset;
23
- const { selectedId, previewArgs } = getContext('FlowEditorContext');
21
+ const { selectedId, previewArgs, flowStateStore, flowStore } = getContext('FlowEditorContext');
24
22
  const dispatch = createEventDispatcher();
25
23
  function sliceModules(modules, upTo, idOrders) {
26
24
  return modules
@@ -97,7 +95,6 @@ $: if (job?.type === 'CompletedJob') {
97
95
 
98
96
  {#if isRunning}
99
97
  <Button
100
- disabled={!isValid}
101
98
  color="red"
102
99
  on:click={async () => {
103
100
  isRunning = false
@@ -124,7 +121,6 @@ $: if (job?.type === 'CompletedJob') {
124
121
  color="blue"
125
122
  size="sm"
126
123
  btnClasses="w-full max-w-lg"
127
- disabled={!isValid}
128
124
  on:click={() => runPreview($previewArgs)}
129
125
  >
130
126
  Test flow <Kbd class="ml-2">Ctrl+Enter</Kbd>
@@ -141,19 +137,17 @@ $: if (job?.type === 'CompletedJob') {
141
137
  </div>
142
138
  <FlowProgressBar {job} bind:reset={jobProgressReset} />
143
139
 
144
- <div class="overflow-y-auto grow flex-col flex divide-y divide-gray-600 ">
145
- <div class="max-h-1/2 overflow-auto">
140
+ <div class="overflow-y-auto grow divide-y divide-gray-600 pr-4">
141
+ <div class="max-h-1/2 overflow-auto border-b border-gray-700">
146
142
  <SchemaForm
147
143
  noVariablePicker
148
144
  compact
149
145
  class="py-4 max-w-3xl"
150
146
  schema={$flowStore.schema}
151
- bind:isValid
152
147
  bind:args={$previewArgs}
153
148
  />
154
149
  </div>
155
-
156
- <div class="h-full pt-4 grow">
150
+ <div class="pt-4 grow">
157
151
  {#if jobId}
158
152
  <FlowStatusViewer bind:flowState={$flowStateStore} {jobId} bind:job />
159
153
  {:else}
@@ -11,7 +11,7 @@ import DisplayResult from './DisplayResult.svelte';
11
11
  import Tabs from './common/tabs/Tabs.svelte';
12
12
  import { FlowGraph } from './graph';
13
13
  import ModuleStatus from './ModuleStatus.svelte';
14
- import { displayDate, isOwner, pluralize, truncateRev } from '../utils';
14
+ import { displayDate, emptyString, isOwner, pluralize, truncateRev } from '../utils';
15
15
  import JobArgs from './JobArgs.svelte';
16
16
  import Tooltip from './Tooltip.svelte';
17
17
  import SimpleEditor from './SimpleEditor.svelte';
@@ -68,7 +68,7 @@ function updateInnerModules() {
68
68
  if (mod.type === FlowStatusModule.type.WAITING_FOR_EVENTS &&
69
69
  localFlowModuleStates?.[innerModules?.[i - 1]?.id ?? '']?.type ==
70
70
  FlowStatusModule.type.SUCCESS) {
71
- localFlowModuleStates[mod.id ?? ''] = { type: mod.type };
71
+ localFlowModuleStates[mod.id ?? ''] = { type: mod.type, args: job?.args };
72
72
  }
73
73
  else if (mod.type === FlowStatusModule.type.WAITING_FOR_EXECUTOR &&
74
74
  localFlowModuleStates[mod.id ?? '']?.scheduled_for == undefined) {
@@ -80,7 +80,8 @@ function updateInnerModules() {
80
80
  type: mod.type,
81
81
  scheduled_for: 'scheduled for ' + displayDate(job?.['scheduled_for'], true),
82
82
  job_id: job?.id,
83
- parent_module: mod['parent_module']
83
+ parent_module: mod['parent_module'],
84
+ args: job?.args
84
85
  };
85
86
  });
86
87
  }
@@ -127,6 +128,14 @@ async function loadOwner(path) {
127
128
  }
128
129
  let selected = 'graph';
129
130
  let payload = '"a test payload in json"';
131
+ function isSuccess(arg) {
132
+ if (arg == undefined) {
133
+ return undefined;
134
+ }
135
+ else {
136
+ return arg == true;
137
+ }
138
+ }
130
139
  </script>
131
140
 
132
141
  {#if job}
@@ -143,7 +152,11 @@ let payload = '"a test payload in json"';
143
152
  <FlowPreviewStatus {job} />
144
153
  {#if `result` in job}
145
154
  <div class="w-full h-full">
146
- <FlowJobResult result={job.result} logs={job.logs ?? ''} />
155
+ <FlowJobResult
156
+ loading={job['running'] == true}
157
+ result={job.result}
158
+ logs={job.logs ?? ''}
159
+ />
147
160
  </div>
148
161
  {:else if job.flow_status?.modules?.[job?.flow_status?.step]?.type === FlowStatusModule.type.WAITING_FOR_EVENTS}
149
162
  <div class="w-full h-full mt-2 text-sm text-gray-600">
@@ -189,14 +202,21 @@ let payload = '"a test payload in json"';
189
202
  <div class="flex flex-col gap-1">
190
203
  {#each innerModules as mod, i (mod.id)}
191
204
  {#if mod.type == FlowStatusModule.type.IN_PROGRESS}
205
+ {@const rawMod = job.raw_flow?.modules[i]}
206
+
192
207
  <div
193
208
  ><span class="inline-flex gap-1"
194
209
  ><Badge color="indigo">{mod.id}</Badge>
195
- {#if job.raw_flow?.modules[i]?.summary}
196
- <span class="font-medium text-gray-900">
197
- {job.raw_flow?.modules[i]?.summary ?? ''}
198
- </span>
199
- {/if}
210
+ <span class="font-medium text-gray-900">
211
+ {#if !emptyString(rawMod?.summary)}
212
+ {rawMod?.summary ?? ''}
213
+ {:else if rawMod?.value.type == 'script'}
214
+ {rawMod.value.path ?? ''}
215
+ {:else if rawMod?.value.type}
216
+ {rawMod?.value.type}
217
+ {/if}
218
+ </span>
219
+
200
220
  <Loader2 class="animate-spin" /></span
201
221
  ></div
202
222
  >
@@ -273,10 +293,12 @@ let payload = '"a test payload in json"';
273
293
  type: FlowStatusModule.type.IN_PROGRESS,
274
294
  logs: e.detail.logs,
275
295
  job_id: e.detail.id,
296
+ args: e.detail.args,
276
297
  iteration_total: flowJobIds?.flowJobs.length
277
298
  }
278
299
  } else {
279
300
  localFlowModuleStates[flowJobIds.moduleId] = {
301
+ args: e.detail.args,
280
302
  type: e.detail.success
281
303
  ? FlowStatusModule.type.SUCCESS
282
304
  : FlowStatusModule.type.FAILURE,
@@ -341,10 +363,12 @@ let payload = '"a test payload in json"';
341
363
  localFlowModuleStates[mod.id] = {
342
364
  type: FlowStatusModule.type.IN_PROGRESS,
343
365
  logs: e.detail.logs,
366
+ args: e.detail.args,
344
367
  parent_module: mod['parent_module']
345
368
  }
346
369
  } else {
347
370
  localFlowModuleStates[mod.id] = {
371
+ args: e.detail.args,
348
372
  type: e.detail.success
349
373
  ? FlowStatusModule.type.SUCCESS
350
374
  : FlowStatusModule.type.FAILURE,
@@ -389,14 +413,19 @@ let payload = '"a test payload in json"';
389
413
  </div>
390
414
 
391
415
  <FlowGraph
416
+ success={isSuccess(job?.['success'])}
392
417
  flowModuleStates={localFlowModuleStates}
393
- on:click={(e) => {
394
- if (e.detail.id) {
418
+ on:select={(e) => {
419
+ if (typeof e.detail == 'string') {
420
+ if (e.detail == 'Input') {
421
+ selectedNode = 'start'
422
+ } else if (e.detail == 'Result') {
423
+ selectedNode = 'end'
424
+ } else {
425
+ selectedNode = e.detail
426
+ }
427
+ } else {
395
428
  selectedNode = e.detail.id
396
- } else if (e.detail == 'Result') {
397
- selectedNode = 'end'
398
- } else if (e.detail == 'Input') {
399
- selectedNode = 'start'
400
429
  }
401
430
  }}
402
431
  modules={job.raw_flow?.modules ?? []}
@@ -407,7 +436,13 @@ let payload = '"a test payload in json"';
407
436
  {#if selectedNode}
408
437
  {@const node = localFlowModuleStates[selectedNode]}
409
438
  {#if selectedNode == 'end'}
410
- <FlowJobResult noBorder col result={job['result'] ?? {}} logs={job.logs ?? ''} />
439
+ <FlowJobResult
440
+ loading={job['running']}
441
+ noBorder
442
+ col
443
+ result={job['result']}
444
+ logs={job.logs ?? ''}
445
+ />
411
446
  {:else if selectedNode == 'start'}
412
447
  {#if job.args}
413
448
  <div class="p-2">
@@ -434,7 +469,17 @@ let payload = '"a test payload in json"';
434
469
  </div>
435
470
  {/if}
436
471
  </div>
437
- <FlowJobResult noBorder col result={node.result ?? {}} logs={node.logs ?? ''} />
472
+ <div class="px-1 border-b border-black">
473
+ <JobArgs args={node.args} />
474
+ </div>
475
+
476
+ <FlowJobResult
477
+ loading={job['running'] == true}
478
+ noBorder
479
+ col
480
+ result={node.result}
481
+ logs={node.logs ?? ''}
482
+ />
438
483
  {:else}
439
484
  <p class="p-2 text-gray-600 italic"
440
485
  >The execution of this node has no information attached to it. The job likely did
@@ -50,7 +50,7 @@ async function loadFolder() {
50
50
  can_write =
51
51
  $userStore != undefined &&
52
52
  (folder?.owners.includes('u/' + $userStore.username) ||
53
- ($userStore.is_admin ?? false) ||
53
+ ($userStore.is_admin ?? false) || ($userStore.is_super_admin ?? false) ||
54
54
  $userStore.pgroups.findIndex((x) => folder?.owners.includes(x)) != -1);
55
55
  perms = Array.from(new Set(Object.entries(folder?.extra_perms ?? {})
56
56
  .map((x) => x[0])
@@ -146,7 +146,8 @@ let ownerKind = 'user';
146
146
  path: name,
147
147
  kind: 'folder',
148
148
  requestBody: {
149
- owner: owner_name
149
+ owner: owner_name,
150
+ write: true
150
151
  }
151
152
  })
152
153
  } else if (role == 'writer') {
@@ -219,6 +219,14 @@ function getRole(x) {
219
219
  name,
220
220
  requestBody: { username: member_name }
221
221
  })
222
+ await GranularAclService.removeGranularAcls({
223
+ workspace: $workspaceStore ?? '',
224
+ path: name,
225
+ kind: 'group_',
226
+ requestBody: {
227
+ owner: 'u/' + member_name
228
+ }
229
+ })
222
230
  loadGroup()
223
231
  }}>remove</button
224
232
  >
@@ -22,4 +22,10 @@ function getLang(lang) {
22
22
  $: lang = getLang(language);
23
23
  </script>
24
24
 
25
- <Highlight className="nowrap {$$props.class}" language={lang} {code} />
25
+ {#if code?.length < 5000}
26
+ <Highlight className="nowrap {$$props.class}" language={lang} {code} />
27
+ {:else}
28
+ <pre class="overflow-auto max-h-screen {$$props.class}"
29
+ ><code class="language-{language}">{code}</code></pre
30
+ >
31
+ {/if}
@@ -0,0 +1,11 @@
1
+ <script>import { copyToClipboard } from '../utils';
2
+ import { faClipboard } from '@fortawesome/free-solid-svg-icons';
3
+ import { Icon } from 'svelte-awesome';
4
+ export let content;
5
+ </script>
6
+
7
+ <pre class="bg-gray-700 text-gray-100 p-2 font-mono text-sm whitespace-pre-wrap"
8
+ >{content} <span on:click={() => copyToClipboard(content)} class="cursor-pointer ml-2"
9
+ ><Icon data={faClipboard} /></span
10
+ ></pre
11
+ >
@@ -0,0 +1,16 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: {
4
+ content: string;
5
+ };
6
+ events: {
7
+ [evt: string]: CustomEvent<any>;
8
+ };
9
+ slots: {};
10
+ };
11
+ export type InlineCodeCopyProps = typeof __propDef.props;
12
+ export type InlineCodeCopyEvents = typeof __propDef.events;
13
+ export type InlineCodeCopySlots = typeof __propDef.slots;
14
+ export default class InlineCodeCopy extends SvelteComponentTyped<InlineCodeCopyProps, InlineCodeCopyEvents, InlineCodeCopySlots> {
15
+ }
16
+ export {};
@@ -40,7 +40,7 @@ function setPropertyType(rawValue) {
40
40
  return;
41
41
  }
42
42
  if (isCodeInjection(rawValue)) {
43
- arg.expr = getDefaultExpr(argName, previousModuleId, `\`${rawValue}\``);
43
+ arg.expr = getDefaultExpr(argName, previousModuleId, `\`${rawValue.toString().replaceAll('`', '\\`')}\``);
44
44
  arg.type = 'javascript';
45
45
  propertyType = 'static';
46
46
  }
@@ -57,17 +57,10 @@ function isStaticTemplate(inputCat) {
57
57
  return inputCat === 'string' || inputCat === 'sql' || inputCat == 'yaml';
58
58
  }
59
59
  function connectProperty(rawValue) {
60
- if (isStaticTemplate(inputCat)) {
61
- arg.value = `\$\{${rawValue}}`;
62
- setPropertyType(arg.value);
63
- monacoTemplate?.setCode(arg.value);
64
- }
65
- else {
66
- arg.expr = getDefaultExpr(undefined, previousModuleId, rawValue);
67
- arg.type = 'javascript';
68
- propertyType = 'javascript';
69
- monaco?.setCode(arg.expr);
70
- }
60
+ arg.expr = getDefaultExpr(undefined, previousModuleId, rawValue);
61
+ arg.type = 'javascript';
62
+ propertyType = 'javascript';
63
+ monaco?.setCode(arg.expr);
71
64
  }
72
65
  function onFocus() {
73
66
  if (isStaticTemplate(inputCat)) {
@@ -94,9 +87,12 @@ const { focusProp, propPickerConfig } = getContext('PropPickerWrapper');
94
87
  $: isStaticTemplate(inputCat) && propertyType == 'static' && setPropertyType(arg?.value);
95
88
  const openBracket = '${';
96
89
  const closeBracket = '}';
97
- $: schema.properties[argName].default &&
98
- !arg?.value &&
99
- monacoTemplate?.setCode(schema.properties[argName].default);
90
+ function setDefaultCode() {
91
+ if (!arg?.value) {
92
+ monacoTemplate?.setCode(schema.properties[argName].default);
93
+ }
94
+ }
95
+ $: schema.properties[argName].default && setDefaultCode();
100
96
  </script>
101
97
 
102
98
  {#if arg != undefined}
@@ -123,7 +119,7 @@ $: schema.properties[argName].default &&
123
119
  {/if}
124
120
  </div>
125
121
  {#if !noDynamicToggle}
126
- <div class="flex flex-row gap-x-4 gap-y-1 flex-wrap">
122
+ <div class="flex flex-row gap-x-4 gap-y-1 flex-wrap z-10">
127
123
  <ToggleButtonGroup
128
124
  bind:selected={propertyType}
129
125
  on:selected={(e) => {
@@ -134,7 +130,7 @@ $: schema.properties[argName].default &&
134
130
  argName,
135
131
  previousModuleId,
136
132
  staticTemplate
137
- ? `\`${arg?.value ?? ''}\``
133
+ ? `\`${arg?.value?.toString().replaceAll('`', '\\`') ?? ''}\``
138
134
  : arg.value
139
135
  ? JSON.stringify(arg?.value, null, 4)
140
136
  : ''
@@ -149,6 +145,7 @@ $: schema.properties[argName].default &&
149
145
  if (staticTemplate) {
150
146
  if (arg) {
151
147
  arg.value = codeToStaticTemplate(arg.expr)
148
+ arg.expr = undefined
152
149
  }
153
150
  setPropertyType(arg?.value)
154
151
  } else {
@@ -164,10 +161,10 @@ $: schema.properties[argName].default &&
164
161
  >
165
162
  {#if isStaticTemplate(inputCat)}
166
163
  <ToggleButton light position="left" value="static" size="xs">
167
- {'${} '}Template &nbsp; <Tooltip
168
- >Write javascript expressions between "{openBracket}" and "{closeBracket}". You may
169
- refer to contextual objects like 'flow_input', or 'result' or functions like
170
- 'resource' and 'variable'
164
+ {'${} '}&nbsp;
165
+ <Tooltip
166
+ >Write text or surround javascript with "{openBracket}" and "{closeBracket}". Use
167
+ `result` to connect to another node's output.
171
168
  </Tooltip></ToggleButton
172
169
  >
173
170
  {:else}
@@ -180,9 +177,11 @@ $: schema.properties[argName].default &&
180
177
  value="javascript"
181
178
  startIcon={{ icon: faCode }}
182
179
  size="xs"
180
+ >&nbsp;<Tooltip
181
+ >Write javascript expressions directly, using 'flow_input' or 'result'. You can use
182
+ multiline javascript.
183
+ </Tooltip></ToggleButton
183
184
  >
184
- Dynamic (JS)
185
- </ToggleButton>
186
185
  </ToggleButtonGroup>
187
186
  <Button
188
187
  variant="contained"
@@ -273,6 +272,4 @@ $: schema.properties[argName].default &&
273
272
  Not recognized input type {argName}
274
273
  {/if}
275
274
  </div>
276
- {:else}
277
- <p class="text-sm text-gray-700">Argument at {argName} is undefined</p>
278
275
  {/if}
@@ -0,0 +1,103 @@
1
+ <script>import { VariableService } from '../gen';
2
+ import { workspaceStore } from '../stores';
3
+ import { allTrue } from '../utils';
4
+ import { faPlus } from '@fortawesome/free-solid-svg-icons';
5
+ import { Button } from './common';
6
+ import InputTransformForm from './InputTransformForm.svelte';
7
+ import ItemPicker from './ItemPicker.svelte';
8
+ import VariableEditor from './VariableEditor.svelte';
9
+ export let schema;
10
+ export let args = {};
11
+ export let isValid = true;
12
+ export let extraLib = 'missing extraLib';
13
+ export let previousModuleId = undefined;
14
+ export let filter = undefined;
15
+ export let noDynamicToggle = false;
16
+ let clazz = '';
17
+ export { clazz as class };
18
+ let inputCheck = {};
19
+ $: isValid = allTrue(inputCheck) ?? false;
20
+ $: if (args == undefined || typeof args !== 'object') {
21
+ args = {};
22
+ }
23
+ function removeExtraKey() {
24
+ const nargs = {};
25
+ Object.keys(args ?? {}).forEach((key) => {
26
+ if (keys.includes(key)) {
27
+ nargs[key] = args[key];
28
+ }
29
+ });
30
+ args = nargs;
31
+ }
32
+ let pickForField;
33
+ let itemPicker = undefined;
34
+ let variableEditor = undefined;
35
+ let keys = [];
36
+ $: {
37
+ let lkeys = Object.keys(schema?.properties ?? {});
38
+ if (schema?.properties && JSON.stringify(lkeys) != JSON.stringify(keys)) {
39
+ keys = lkeys;
40
+ removeExtraKey();
41
+ }
42
+ }
43
+ </script>
44
+
45
+ <div class="w-full {clazz}">
46
+ {#if keys.length > 0}
47
+ {#each keys as argName, i (argName)}
48
+ {#if (!filter || filter.includes(argName)) && Object.keys(schema.properties ?? {}).includes(argName)}
49
+ <div class="z-10">
50
+ <InputTransformForm
51
+ {previousModuleId}
52
+ bind:arg={args[argName]}
53
+ bind:schema
54
+ bind:argName
55
+ bind:inputCheck={inputCheck[argName]}
56
+ bind:extraLib
57
+ {variableEditor}
58
+ {itemPicker}
59
+ bind:pickForField
60
+ {noDynamicToggle}
61
+ />
62
+ </div>
63
+ {/if}
64
+ {/each}
65
+ {:else}
66
+ <div class="text-gray-500 text-sm">No inputs</div>
67
+ {/if}
68
+ </div>
69
+
70
+ <ItemPicker
71
+ bind:this={itemPicker}
72
+ pickCallback={(path, _) => {
73
+ if (pickForField) {
74
+ args[pickForField].value = '$var:' + path
75
+ }
76
+ }}
77
+ itemName="Variable"
78
+ extraField="path"
79
+ loadItems={async () =>
80
+ (await VariableService.listVariable({ workspace: $workspaceStore ?? '' })).map((x) => ({
81
+ name: x.path,
82
+ ...x
83
+ }))}
84
+ >
85
+ <div
86
+ slot="submission"
87
+ class="flex flex-row-reverse w-full bg-white border-t border-gray-200 rounded-bl-lg rounded-br-lg"
88
+ >
89
+ <Button
90
+ variant="border"
91
+ color="blue"
92
+ size="sm"
93
+ startIcon={{ icon: faPlus }}
94
+ on:click={() => {
95
+ variableEditor?.initNew?.()
96
+ }}
97
+ >
98
+ New variable
99
+ </Button>
100
+ </div>
101
+ </ItemPicker>
102
+
103
+ <VariableEditor bind:this={variableEditor} />
@@ -0,0 +1,24 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ import type { Schema } from '../common';
3
+ declare const __propDef: {
4
+ props: {
5
+ schema: Schema;
6
+ args?: Record<string, any> | undefined;
7
+ isValid?: boolean | undefined;
8
+ extraLib?: string | undefined;
9
+ previousModuleId?: string | undefined;
10
+ filter?: string[] | undefined;
11
+ noDynamicToggle?: boolean | undefined;
12
+ class?: string | undefined;
13
+ };
14
+ events: {
15
+ [evt: string]: CustomEvent<any>;
16
+ };
17
+ slots: {};
18
+ };
19
+ export type InputTransformSchemaFormProps = typeof __propDef.props;
20
+ export type InputTransformSchemaFormEvents = typeof __propDef.events;
21
+ export type InputTransformSchemaFormSlots = typeof __propDef.slots;
22
+ export default class InputTransformSchemaForm extends SvelteComponentTyped<InputTransformSchemaFormProps, InputTransformSchemaFormEvents, InputTransformSchemaFormSlots> {
23
+ }
24
+ export {};
@@ -3,6 +3,7 @@ import { Drawer, DrawerContent } from './common';
3
3
  export let content;
4
4
  export let isLoading;
5
5
  export let duration = undefined;
6
+ export let mem = undefined;
6
7
  let scroll = true;
7
8
  let div = null;
8
9
  $: if (content != undefined) {
@@ -34,7 +35,7 @@ let logViewer;
34
35
  <button on:click={logViewer.openDrawer}>Expand</button>
35
36
  <div class="py-2 pr-2 text-xs flex gap-2 items-center">
36
37
  Auto scroll
37
- <input type="checkbox" bind:checked={scroll} />
38
+ <input class="windmillapp" type="checkbox" bind:checked={scroll} />
38
39
  </div>
39
40
  </div>
40
41
  </div>
@@ -43,6 +44,11 @@ let logViewer;
43
44
  {:else if duration}
44
45
  <span class="absolute text-xs text-gray-500 top-2 left-2">took {duration}ms</span>
45
46
  {/if}
47
+ {#if mem}
48
+ <span class="absolute text-xs text-gray-500 top-2 left-36"
49
+ >mem peak: {(mem / 1024).toPrecision(4)}MB</span
50
+ >
51
+ {/if}
46
52
  <pre class="whitespace-pre-wrap break-words bg-gray-50 text-xs w-full p-2"
47
53
  >{#if content}<span>{content}</span>{:else if !isLoading}<span class="text-gray-600"
48
54
  >No logs are available yet</span
@@ -4,6 +4,7 @@ declare const __propDef: {
4
4
  content: string | undefined;
5
5
  isLoading: boolean;
6
6
  duration?: number | undefined;
7
+ mem?: number | undefined;
7
8
  scrollToBottom?: (() => void) | undefined;
8
9
  };
9
10
  events: {
@@ -6,17 +6,26 @@ import TestJobLoader from './TestJobLoader.svelte';
6
6
  import LogViewer from './LogViewer.svelte';
7
7
  import DisplayResult from './DisplayResult.svelte';
8
8
  import Button from './common/button/Button.svelte';
9
- import { flowStateStore } from './flows/flowState';
10
- import { flowStore } from './flows/flowStore';
11
9
  import { workspaceStore } from '../stores';
12
10
  import { Loader2 } from 'lucide-svelte';
11
+ import { getContext } from 'svelte';
13
12
  export let mod;
14
13
  export let schema;
14
+ const { flowStore, flowStateStore, testStepStore } = getContext('FlowEditorContext');
15
15
  // Test
16
16
  let testJobLoader;
17
17
  let testIsLoading = false;
18
18
  let testJob = undefined;
19
- let stepArgs = {};
19
+ let stepArgs = $testStepStore[mod.id] ??
20
+ Object.entries(mod.value['input_transforms'] ?? {}).reduce((acc, [k, v]) => {
21
+ let t = v;
22
+ if (t.type == 'static') {
23
+ acc[k] = t.value;
24
+ return acc;
25
+ }
26
+ return acc;
27
+ }, {});
28
+ $: $testStepStore[mod.id] = stepArgs;
20
29
  export function runTestWithStepArgs() {
21
30
  runTest(stepArgs);
22
31
  }
@@ -69,6 +78,7 @@ function jobDone() {
69
78
  detailed={false}
70
79
  topButton
71
80
  bind:args={stepArgs}
81
+ isFlow={false}
72
82
  />
73
83
  {#if testIsLoading}
74
84
  <Button on:click={testJobLoader?.cancelJob} btnClasses="w-full mt-4" color="red" size="sm">
@@ -85,7 +85,7 @@ async function updatePath() {
85
85
  <input
86
86
  type="text"
87
87
  bind:value={summary}
88
- placeholder="A short summary displayed when it is listed"
88
+ placeholder="Short summary to be displayed when listed"
89
89
  disabled={!own}
90
90
  />
91
91
 
@@ -167,7 +167,7 @@
167
167
  {#if showOptions}
168
168
  <ul
169
169
  class="options"
170
- transition:fly={{ duration: 200, y: 5 }}
170
+ transition:fly|local={{ duration: 200, y: 5 }}
171
171
  on:mousedown|preventDefault={handleOptionMousedown}
172
172
  >
173
173
  {#each filtered as option}
@@ -4,8 +4,8 @@
4
4
  export default class Multiselect extends SvelteComponentTyped<{
5
5
  value?: any[] | undefined;
6
6
  id?: string | undefined;
7
- readonly?: boolean | undefined;
8
7
  placeholder?: string | undefined;
8
+ readonly?: boolean | undefined;
9
9
  }, {
10
10
  [evt: string]: CustomEvent<any>;
11
11
  }, {
@@ -20,8 +20,8 @@ declare const __propDef: {
20
20
  props: {
21
21
  value?: any[] | undefined;
22
22
  id?: string | undefined;
23
- readonly?: boolean | undefined;
24
23
  placeholder?: string | undefined;
24
+ readonly?: boolean | undefined;
25
25
  };
26
26
  events: {
27
27
  [evt: string]: CustomEvent<any>;
@@ -24,7 +24,12 @@ async function loadSchema(format) {
24
24
  }
25
25
  }
26
26
  function resourceToValue() {
27
- value = `$res:${path}`;
27
+ if (path) {
28
+ value = `$res:${path}`;
29
+ }
30
+ else {
31
+ value = undefined;
32
+ }
28
33
  }
29
34
  function isResource() {
30
35
  return isString(value) && value.length >= '$res:'.length;