windmill-components 1.60.3 → 1.70.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 (335) hide show
  1. package/assets/app.css +3 -0
  2. package/common.d.ts +5 -1
  3. package/components/ApiConnectForm.svelte +66 -5
  4. package/components/AppConnect.svelte +24 -9
  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 +51 -1
  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/FlowBuilder.svelte +2 -2
  13. package/components/FlowJobResult.svelte +10 -2
  14. package/components/FlowJobResult.svelte.d.ts +1 -0
  15. package/components/FlowMetadata.svelte +24 -8
  16. package/components/FlowPreviewContent.svelte +3 -4
  17. package/components/FlowStatusViewer.svelte +41 -9
  18. package/components/FolderEditor.svelte +4 -3
  19. package/components/HighlightCode.svelte +7 -1
  20. package/components/InlineCodeCopy.svelte +11 -0
  21. package/components/InlineCodeCopy.svelte.d.ts +16 -0
  22. package/components/InputTransformForm.svelte +9 -5
  23. package/components/LogViewer.svelte +6 -0
  24. package/components/LogViewer.svelte.d.ts +1 -0
  25. package/components/ModulePreview.svelte +11 -2
  26. package/components/MoveDrawer.svelte +1 -1
  27. package/components/Multiselect.svelte.d.ts +2 -2
  28. package/components/ObjectResourceInput.svelte +6 -1
  29. package/components/Path.svelte +14 -5
  30. package/components/Popover.svelte +8 -2
  31. package/components/Popover.svelte.d.ts +1 -0
  32. package/components/Range.svelte.d.ts +2 -2
  33. package/components/ResourceEditor.svelte +39 -16
  34. package/components/ResourcePicker.svelte +0 -1
  35. package/components/RunForm.svelte +26 -2
  36. package/components/RunForm.svelte.d.ts +1 -0
  37. package/components/ScheduleEditor.svelte +1 -1
  38. package/components/SchemaEditor.svelte +2 -2
  39. package/components/SchemaForm.svelte +14 -4
  40. package/components/SchemaForm.svelte.d.ts +1 -0
  41. package/components/ScriptBuilder.svelte +45 -22
  42. package/components/ScriptBuilder.svelte.d.ts +1 -0
  43. package/components/ScriptEditor.svelte +1 -0
  44. package/components/SharedBadge.svelte +5 -5
  45. package/components/Slider.svelte +14 -0
  46. package/components/Slider.svelte.d.ts +19 -0
  47. package/components/StringTypeNarrowing.svelte +0 -1
  48. package/components/SuperadminSettings.svelte +11 -3
  49. package/components/SuperadminSettings.svelte.d.ts +2 -0
  50. package/components/TemplateEditor.svelte.d.ts +204 -0
  51. package/components/TestJobLoader.svelte +3 -3
  52. package/components/Toggle.svelte +1 -2
  53. package/components/UserSettings.svelte +25 -28
  54. package/components/UserSettings.svelte.d.ts +2 -0
  55. package/components/VariableEditor.svelte +1 -1
  56. package/components/WhitelistIp.svelte +23 -0
  57. package/components/WhitelistIp.svelte.d.ts +14 -0
  58. package/components/apps/components/buttons/AppButton.svelte +52 -6
  59. package/components/apps/components/buttons/AppButton.svelte.d.ts +3 -0
  60. package/components/apps/components/{form → buttons}/AppForm.svelte +3 -1
  61. package/components/apps/components/buttons/AppFormButton.svelte +137 -0
  62. package/components/apps/components/buttons/AppFormButton.svelte.d.ts +25 -0
  63. package/components/apps/components/buttons/index.d.ts +3 -0
  64. package/components/apps/components/buttons/index.js +3 -0
  65. package/components/apps/components/{dataDisplay → display}/AppBarChart.svelte +15 -4
  66. package/components/apps/components/{dataDisplay → display}/AppBarChart.svelte.d.ts +1 -0
  67. package/components/apps/components/display/AppDisplayComponent.svelte +31 -0
  68. package/components/apps/components/display/AppDisplayComponent.svelte.d.ts +23 -0
  69. package/components/apps/components/display/AppHtml.svelte +32 -0
  70. package/components/apps/components/{dataDisplay → display}/AppHtml.svelte.d.ts +1 -3
  71. package/components/apps/components/display/AppIcon.svelte +35 -0
  72. package/components/apps/components/display/AppIcon.svelte.d.ts +22 -0
  73. package/components/apps/components/display/AppImage.svelte +27 -0
  74. package/components/apps/components/display/AppImage.svelte.d.ts +22 -0
  75. package/components/apps/components/{dataDisplay → display}/AppPieChart.svelte +2 -1
  76. package/components/apps/components/{dataDisplay → display}/AppPieChart.svelte.d.ts +1 -0
  77. package/components/apps/components/{dataDisplay → display}/AppScatterChart.svelte +2 -1
  78. package/components/apps/components/{dataDisplay → display}/AppScatterChart.svelte.d.ts +1 -0
  79. package/components/apps/components/{dataDisplay → display}/AppText.svelte +16 -14
  80. package/components/apps/components/{dataDisplay → display}/AppText.svelte.d.ts +3 -0
  81. package/components/apps/components/{dataDisplay → display}/AppTimeseries.svelte +3 -2
  82. package/components/apps/components/{dataDisplay → display}/AppTimeseries.svelte.d.ts +1 -0
  83. package/components/apps/components/display/PlotlyHtml.svelte +38 -0
  84. package/components/apps/components/display/PlotlyHtml.svelte.d.ts +24 -0
  85. package/components/apps/components/display/VegaLiteHtml.svelte +52 -0
  86. package/components/apps/components/{dataDisplay → display}/VegaLiteHtml.svelte.d.ts +3 -2
  87. package/components/apps/components/display/index.d.ts +12 -0
  88. package/components/apps/components/display/index.js +12 -0
  89. package/components/apps/components/display/table/AppAggridTable.svelte +83 -0
  90. package/components/apps/components/display/table/AppAggridTable.svelte.d.ts +24 -0
  91. package/components/apps/components/{table → display/table}/AppTable.svelte +44 -23
  92. package/components/apps/components/{table → display/table}/AppTable.svelte.d.ts +4 -2
  93. package/components/apps/components/{table → display/table}/AppTableFooter.svelte +1 -1
  94. package/components/apps/components/helpers/AlignWrapper.svelte +19 -19
  95. package/components/apps/components/helpers/AlignWrapper.svelte.d.ts +4 -2
  96. package/components/apps/components/helpers/HiddenComponent.svelte +22 -0
  97. package/components/apps/components/helpers/HiddenComponent.svelte.d.ts +25 -0
  98. package/components/apps/components/helpers/InputDefaultValue.svelte +17 -0
  99. package/components/apps/components/helpers/InputDefaultValue.svelte.d.ts +17 -0
  100. package/components/apps/components/helpers/InputValue.svelte +5 -7
  101. package/components/apps/components/helpers/InputValue.svelte.d.ts +0 -1
  102. package/components/apps/components/helpers/RunnableComponent.svelte +37 -48
  103. package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +2 -1
  104. package/components/apps/components/helpers/RunnableWrapper.svelte +7 -2
  105. package/components/apps/components/helpers/RunnableWrapper.svelte.d.ts +2 -1
  106. package/components/apps/components/helpers/index.d.ts +10 -0
  107. package/components/apps/components/helpers/index.js +10 -0
  108. package/components/apps/components/icon.d.ts +1 -0
  109. package/components/apps/components/icon.js +18 -0
  110. package/components/apps/components/index.d.ts +5 -0
  111. package/components/apps/components/index.js +5 -0
  112. package/components/apps/components/{selectInputs → inputs}/AppCheckbox.svelte +4 -2
  113. package/components/apps/components/{dateInputs → inputs}/AppDateInput.svelte +6 -0
  114. package/components/apps/components/inputs/AppFileInput.svelte +34 -0
  115. package/components/apps/components/inputs/AppFileInput.svelte.d.ts +20 -0
  116. package/components/apps/components/inputs/AppNumberInput.svelte +48 -0
  117. package/components/apps/components/inputs/AppRangeInput.svelte +44 -0
  118. package/components/apps/components/inputs/AppRangeInput.svelte.d.ts +23 -0
  119. package/components/apps/components/inputs/AppSelect.svelte +90 -0
  120. package/components/apps/components/{selectInputs → inputs}/AppSelect.svelte.d.ts +2 -0
  121. package/components/apps/components/{numberInputs → inputs}/AppSliderInputs.svelte +13 -9
  122. package/components/apps/components/{textInputs → inputs}/AppTextInput.svelte +6 -0
  123. package/components/apps/components/inputs/currency/AppCurrencyInput.svelte +49 -0
  124. package/components/apps/components/inputs/currency/AppCurrencyInput.svelte.d.ts +21 -0
  125. package/components/apps/components/inputs/currency/CurrencyInput.svelte +181 -0
  126. package/components/apps/components/inputs/currency/CurrencyInput.svelte.d.ts +32 -0
  127. package/components/apps/components/inputs/index.d.ts +9 -0
  128. package/components/apps/components/inputs/index.js +9 -0
  129. package/components/apps/components/layout/AppContainer.svelte +32 -0
  130. package/components/apps/components/layout/AppContainer.svelte.d.ts +21 -0
  131. package/components/apps/components/layout/AppDivider.svelte +20 -0
  132. package/components/apps/components/layout/AppDivider.svelte.d.ts +22 -0
  133. package/components/apps/components/layout/AppTabs.svelte +58 -0
  134. package/components/apps/components/layout/AppTabs.svelte.d.ts +24 -0
  135. package/components/apps/components/layout/index.d.ts +3 -0
  136. package/components/apps/components/layout/index.js +3 -0
  137. package/components/apps/editor/AppComponentInput.svelte +33 -0
  138. package/components/apps/editor/AppComponentInput.svelte.d.ts +18 -0
  139. package/components/apps/editor/AppComponentInputs.svelte +13 -0
  140. package/components/apps/editor/AppComponentInputs.svelte.d.ts +20 -0
  141. package/components/apps/editor/AppEditor.svelte +66 -31
  142. package/components/apps/editor/AppEditor.svelte.d.ts +1 -0
  143. package/components/apps/editor/AppEditorHeader.svelte +74 -18
  144. package/components/apps/editor/AppEditorHeader.svelte.d.ts +1 -0
  145. package/components/apps/editor/AppInputs.svelte +60 -0
  146. package/components/apps/editor/AppInputs.svelte.d.ts +14 -0
  147. package/components/apps/editor/AppPreview.svelte +32 -5
  148. package/components/apps/editor/AppPreview.svelte.d.ts +2 -0
  149. package/components/apps/editor/ComponentHeader.svelte +40 -2
  150. package/components/apps/editor/ComponentHeader.svelte.d.ts +1 -1
  151. package/components/apps/editor/GridEditor.svelte +75 -32
  152. package/components/apps/editor/GridEditor.svelte.d.ts +2 -0
  153. package/components/apps/editor/SettingsPanel.svelte +31 -3
  154. package/components/apps/editor/SubGridEditor.svelte +111 -0
  155. package/components/apps/editor/SubGridEditor.svelte.d.ts +24 -0
  156. package/components/apps/editor/TablePanel.svelte +2 -0
  157. package/components/apps/editor/TablePanel.svelte.d.ts +1 -1
  158. package/components/apps/editor/appUtils.d.ts +9 -0
  159. package/components/apps/editor/appUtils.js +141 -0
  160. package/components/apps/editor/component/Component.svelte +209 -0
  161. package/components/apps/editor/component/Component.svelte.d.ts +23 -0
  162. package/components/apps/editor/component/README.md +15 -0
  163. package/components/apps/editor/component/components.d.ts +65 -0
  164. package/components/apps/editor/component/components.js +1102 -0
  165. package/components/apps/editor/component/default-codes.d.ts +3 -0
  166. package/components/apps/editor/component/default-codes.js +322 -0
  167. package/components/apps/editor/component/index.d.ts +4 -0
  168. package/components/apps/editor/component/index.js +4 -0
  169. package/components/apps/editor/component/sets.d.ts +2 -0
  170. package/components/apps/editor/component/sets.js +47 -0
  171. package/components/apps/editor/componentsPanel/ComponentList.svelte +30 -105
  172. package/components/apps/editor/componentsPanel/CssProperty.svelte +31 -0
  173. package/components/apps/editor/componentsPanel/CssProperty.svelte.d.ts +20 -0
  174. package/components/apps/editor/componentsPanel/CssSettings.svelte +141 -0
  175. package/components/apps/editor/componentsPanel/CssSettings.svelte.d.ts +14 -0
  176. package/components/apps/editor/componentsPanel/ListItem.svelte +28 -0
  177. package/components/apps/editor/componentsPanel/ListItem.svelte.d.ts +20 -0
  178. package/components/apps/editor/componentsPanel/componentStaticValues.d.ts +4 -1
  179. package/components/apps/editor/componentsPanel/componentStaticValues.js +4 -1
  180. package/components/apps/editor/contextPanel/ContextPanel.svelte +8 -6
  181. package/components/apps/editor/inlineScriptsPanel/EmptyInlineScript.svelte +98 -9
  182. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte +38 -29
  183. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorPanel.svelte +21 -1
  184. package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanel.svelte +66 -8
  185. package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelList.svelte +92 -46
  186. package/components/apps/editor/inlineScriptsPanel/utils.d.ts +5 -1
  187. package/components/apps/editor/inlineScriptsPanel/utils.js +30 -0
  188. package/components/apps/editor/settingsPanel/AlignmentEditor.svelte +1 -1
  189. package/components/apps/editor/settingsPanel/AlignmentEditor.svelte.d.ts +1 -1
  190. package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +4 -1
  191. package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte.d.ts +59 -1
  192. package/components/apps/editor/settingsPanel/ComponentPanel.svelte +64 -34
  193. package/components/apps/editor/settingsPanel/ComponentPanel.svelte.d.ts +5 -3
  194. package/components/apps/editor/settingsPanel/GridTab.svelte +73 -0
  195. package/components/apps/editor/settingsPanel/GridTab.svelte.d.ts +18 -0
  196. package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +3 -0
  197. package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte.d.ts +2 -2
  198. package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +92 -77
  199. package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte.d.ts +1 -0
  200. package/components/apps/editor/settingsPanel/MoveToOtherGrid.svelte +85 -0
  201. package/components/apps/editor/settingsPanel/MoveToOtherGrid.svelte.d.ts +18 -0
  202. package/components/apps/editor/settingsPanel/Recompute.svelte +4 -1
  203. package/components/apps/editor/settingsPanel/TableActions.svelte +17 -6
  204. package/components/apps/editor/settingsPanel/TableActions.svelte.d.ts +2 -1
  205. package/components/apps/editor/settingsPanel/common/PanelSection.svelte +5 -3
  206. package/components/apps/editor/settingsPanel/inputEditor/IconSelectInput.svelte +83 -0
  207. package/components/apps/editor/settingsPanel/inputEditor/IconSelectInput.svelte.d.ts +19 -0
  208. package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +6 -1
  209. package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte.d.ts +2 -0
  210. package/components/apps/editor/settingsPanel/inputEditor/UploadInputEditor.svelte +23 -0
  211. package/components/apps/editor/settingsPanel/inputEditor/UploadInputEditor.svelte.d.ts +17 -0
  212. package/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte +3 -20
  213. package/components/apps/gridUtils.d.ts +3 -1
  214. package/components/apps/gridUtils.js +5 -3
  215. package/components/apps/inputType.d.ts +33 -6
  216. package/components/apps/types.d.ts +35 -39
  217. package/components/apps/types.js +1 -1
  218. package/components/apps/utils.d.ts +6 -5
  219. package/components/apps/utils.js +90 -90
  220. package/components/common/button/Button.svelte +12 -5
  221. package/components/common/button/Button.svelte.d.ts +3 -1
  222. package/components/common/button/ButtonPopup.svelte.d.ts +1 -1
  223. package/components/common/button/model.d.ts +2 -2
  224. package/components/common/button/model.js +21 -6
  225. package/components/common/confirmationModal/ConfirmationModal.svelte +8 -1
  226. package/components/common/confirmationModal/UnsavedConfirmationModal.svelte +4 -4
  227. package/components/common/drawer/Drawer.svelte +3 -1
  228. package/components/common/fileInput/FileInput.svelte +112 -0
  229. package/components/common/fileInput/FileInput.svelte.d.ts +27 -0
  230. package/components/common/index.d.ts +1 -0
  231. package/components/common/index.js +1 -0
  232. package/components/common/kbd/Kbd.svelte.d.ts +2 -2
  233. package/components/common/modal/Modal.svelte +74 -0
  234. package/components/common/modal/Modal.svelte.d.ts +22 -0
  235. package/components/common/popup/Popup.svelte +34 -17
  236. package/components/common/popup/Popup.svelte.d.ts +11 -4
  237. package/components/common/table/FlowRow.svelte +22 -3
  238. package/components/common/table/LanguageBadge.svelte +10 -4
  239. package/components/common/table/Row.svelte +1 -1
  240. package/components/common/table/ScriptRow.svelte +2 -2
  241. package/components/common/tabs/Tabs.svelte +9 -7
  242. package/components/common/tabs/Tabs.svelte.d.ts +3 -1
  243. package/components/flows/CreateActionsFlow.svelte +2 -3
  244. package/components/flows/content/BranchPredicateEditor.svelte +10 -8
  245. package/components/flows/content/CapturePayload.svelte +3 -3
  246. package/components/flows/content/FlowInputs.svelte +109 -99
  247. package/components/flows/content/FlowLoop.svelte +1 -1
  248. package/components/flows/content/FlowModuleComponent.svelte +3 -2
  249. package/components/flows/content/FlowRetries.svelte +8 -6
  250. package/components/flows/content/FlowSettings.svelte +72 -26
  251. package/components/flows/flowState.d.ts +1 -0
  252. package/components/flows/flowState.js +1 -0
  253. package/components/flows/flowStateUtils.js +4 -2
  254. package/components/flows/flowStore.d.ts +1 -0
  255. package/components/flows/flowStore.js +1 -0
  256. package/components/flows/map/FlowBranchAllMap.svelte +1 -1
  257. package/components/flows/map/FlowBranchOneMap.svelte +2 -2
  258. package/components/flows/map/FlowModuleSchemaItem.svelte +5 -5
  259. package/components/flows/map/FlowModuleSchemaMap.svelte +15 -8
  260. package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +1 -0
  261. package/components/flows/map/InsertModuleButton.svelte +24 -10
  262. package/components/flows/map/InsertModuleButton.svelte.d.ts +1 -0
  263. package/components/flows/map/MapItem.svelte +3 -1
  264. package/components/flows/utils.js +16 -10
  265. package/components/graph/FlowGraph.svelte +38 -15
  266. package/components/graph/FlowGraph.svelte.d.ts +1 -0
  267. package/components/icons/SquareIcon.svelte +9 -0
  268. package/components/icons/SquareIcon.svelte.d.ts +17 -0
  269. package/components/icons/index.d.ts +2 -0
  270. package/components/icons/index.js +2 -0
  271. package/components/jobs/JobDetail.svelte +29 -5
  272. package/components/propertyPicker/ObjectViewer.svelte +8 -5
  273. package/components/propertyPicker/ObjectViewer.svelte.d.ts +1 -0
  274. package/components/propertyPicker/PropPicker.svelte +8 -1
  275. package/components/propertyPicker/PropPickerResult.svelte +1 -1
  276. package/components/random_positive_adjetive.d.ts +1 -0
  277. package/components/random_positive_adjetive.js +961 -0
  278. package/components/scriptEditor/LogPanel.svelte +2 -1
  279. package/components/sidebar/SidebarContent.svelte +1 -1
  280. package/components/sidebar/UserMenu.svelte +46 -16
  281. package/components/sidebar/UserMenu.svelte.d.ts +0 -3
  282. package/components/sidebar/WorkspaceMenu.svelte +3 -1
  283. package/components/sidebar/settings.d.ts +2 -0
  284. package/components/sidebar/settings.js +2 -0
  285. package/gen/core/OpenAPI.js +1 -1
  286. package/gen/models/CompletedJob.d.ts +1 -0
  287. package/gen/models/FlowModule.d.ts +0 -1
  288. package/gen/models/QueuedJob.d.ts +1 -0
  289. package/gen/models/WorkerPing.d.ts +1 -1
  290. package/gen/services/FlowService.d.ts +9 -0
  291. package/gen/services/FlowService.js +15 -0
  292. package/gen/services/JobService.d.ts +97 -15
  293. package/gen/services/JobService.js +74 -15
  294. package/gen/services/ScriptService.d.ts +10 -1
  295. package/gen/services/ScriptService.js +16 -1
  296. package/gen/services/VariableService.d.ts +4 -2
  297. package/gen/services/VariableService.js +8 -2
  298. package/gen/services/WorkspaceService.d.ts +17 -0
  299. package/gen/services/WorkspaceService.js +16 -0
  300. package/infer.js +3 -0
  301. package/init_scripts/python_failure_module.py +10 -0
  302. package/init_scripts/python_init_code.py +37 -0
  303. package/init_scripts/python_init_code_clear.py +5 -0
  304. package/init_scripts/python_init_code_trigger.py +14 -0
  305. package/logout.js +2 -1
  306. package/package.json +577 -522
  307. package/script_helpers.d.ts +6 -5
  308. package/script_helpers.js +7 -73
  309. package/stores.d.ts +5 -1
  310. package/stores.js +8 -1
  311. package/user.d.ts +1 -1
  312. package/user.js +14 -8
  313. package/utils.d.ts +1 -1
  314. package/utils.js +8 -7
  315. package/components/apps/components/DisplayComponent.svelte +0 -16
  316. package/components/apps/components/DisplayComponent.svelte.d.ts +0 -20
  317. package/components/apps/components/dataDisplay/AppHtml.svelte +0 -35
  318. package/components/apps/components/dataDisplay/VegaLiteHtml.svelte +0 -28
  319. package/components/apps/components/numberInputs/AppNumberInput.svelte +0 -33
  320. package/components/apps/components/selectInputs/AppSelect.svelte +0 -47
  321. package/components/apps/editor/ComponentEditor.svelte +0 -138
  322. package/components/apps/editor/ComponentEditor.svelte.d.ts +0 -23
  323. package/components/apps/editor/componentsPanel/data.d.ts +0 -3
  324. package/components/apps/editor/componentsPanel/data.js +0 -465
  325. package/components/apps/editorUtils.d.ts +0 -1
  326. package/components/apps/editorUtils.js +0 -253
  327. /package/components/apps/components/{form → buttons}/AppForm.svelte.d.ts +0 -0
  328. /package/components/apps/components/{table → display/table}/AppTableFooter.svelte.d.ts +0 -0
  329. /package/components/apps/components/{table → display/table}/tableOptions.d.ts +0 -0
  330. /package/components/apps/components/{table → display/table}/tableOptions.js +0 -0
  331. /package/components/apps/components/{selectInputs → inputs}/AppCheckbox.svelte.d.ts +0 -0
  332. /package/components/apps/components/{dateInputs → inputs}/AppDateInput.svelte.d.ts +0 -0
  333. /package/components/apps/components/{numberInputs → inputs}/AppNumberInput.svelte.d.ts +0 -0
  334. /package/components/apps/components/{numberInputs → inputs}/AppSliderInputs.svelte.d.ts +0 -0
  335. /package/components/apps/components/{textInputs → inputs}/AppTextInput.svelte.d.ts +0 -0
@@ -16,6 +16,8 @@ import WorkspaceScriptPicker from './flows/pickers/WorkspaceScriptPicker.svelte'
16
16
  import PickHubScript from './flows/pickers/PickHubScript.svelte';
17
17
  import ToggleHubWorkspace from './ToggleHubWorkspace.svelte';
18
18
  import Skeleton from './common/skeleton/Skeleton.svelte';
19
+ import Popover from './Popover.svelte';
20
+ import Kbd from './common/kbd/Kbd.svelte';
19
21
  export let lang;
20
22
  export let editor;
21
23
  export let websocketAlive;
@@ -202,121 +204,137 @@ async function onScriptPick(e) {
202
204
  <ResourceEditor bind:this={resourceEditor} on:refresh={resourcePicker.openDrawer} />
203
205
  <VariableEditor bind:this={variableEditor} on:create={variablePicker.openDrawer} />
204
206
 
205
- <div class="flex flex-row justify-between items-center overflow-hidden w-full px-1">
206
- <div class="flex flex-row divide-x items-center">
207
- <div class="mx-2">
208
- {#if validCode}
209
- <Badge color="green">Inputs</Badge>
210
- {:else}
211
- <Badge color="red">Inputs</Badge>
212
- {/if}
213
- </div>
214
- <div>
215
- <Button
216
- color="light"
217
- btnClasses="mr-1 !font-medium"
218
- on:click={contextualVariablePicker.openDrawer}
219
- size="xs"
220
- spacingSize="md"
221
- startIcon={{ icon: faDollarSign }}
222
- {iconOnly}
223
- >
224
- +Context Var
225
- </Button>
226
- </div>
227
- <div>
228
- <Button
229
- color="light"
230
- btnClasses="mx-1 !font-medium"
231
- on:click={variablePicker.openDrawer}
232
- size="xs"
233
- spacingSize="md"
234
- startIcon={{ icon: faDollarSign }}
235
- {iconOnly}
236
- >
237
- +Variable
238
- </Button>
239
- </div>
240
- <div>
241
- <Button
242
- btnClasses="mx-1 !font-medium"
243
- size="xs"
244
- spacingSize="md"
245
- color="light"
246
- on:click={resourcePicker.openDrawer}
247
- {iconOnly}
248
- startIcon={{ icon: faCube }}
249
- >
250
- +Resource
251
- </Button>
252
- </div>
253
- <div>
254
- <Button
255
- btnClasses="mx-1 !font-medium"
256
- size="xs"
257
- spacingSize="md"
258
- color="light"
259
- on:click={editor.clearContent}
260
- {iconOnly}
261
- startIcon={{ icon: faRotateLeft }}
262
- >
263
- Reset
264
- </Button>
265
- </div>
266
- <div>
267
- <Button
268
- btnClasses="!font-medium"
269
- size="xs"
270
- spacingSize="md"
271
- color="light"
272
- on:click={editor.reloadWebsocket}
273
- startIcon={{ icon: faRotate }}
274
- >
275
- {#if !iconOnly}
276
- Assistant
277
- {/if}
278
- <span class="ml-1 -my-1">
279
- {#if lang == 'deno'}
280
- (<span class={websocketAlive.deno ? 'green' : 'text-red-700'}>Deno</span>)
281
- {:else if lang == 'go'}
282
- (<span class={websocketAlive.go ? 'green' : 'text-red-700'}>Go</span>)
283
- {:else if lang == 'python3'}
284
- (<span class={websocketAlive.pyright ? 'green' : 'text-red-700'}>Pyright</span>
285
- <span class={websocketAlive.black ? 'green' : 'text-red-700'}>Black</span>)
207
+ <div class="flex justify-between items-center overflow-y-auto w-full p-1">
208
+ <div class="flex items-center">
209
+ <Badge color={validCode ? 'green' : 'red'} class="min-w-[60px] mr-3">
210
+ {validCode ? 'Valid' : 'Invalid'}
211
+ </Badge>
212
+ <div class="flex items-center divide-x">
213
+ <Popover notClickable placement="bottom" disapperTimoout={0} class="pr-1" disablePopup={!iconOnly}>
214
+ <Button
215
+ color="light"
216
+ btnClasses="!font-medium !h-full"
217
+ on:click={contextualVariablePicker.openDrawer}
218
+ size="xs"
219
+ spacingSize="md"
220
+ startIcon={{ icon: faDollarSign }}
221
+ {iconOnly}
222
+ >
223
+ +Context Var
224
+ </Button>
225
+ <svelte:fragment slot="text">
226
+ Add context variable
227
+ </svelte:fragment>
228
+ </Popover>
229
+ <Popover notClickable placement="bottom" disapperTimoout={0} class="px-1" disablePopup={!iconOnly}>
230
+ <Button
231
+ color="light"
232
+ btnClasses="!font-medium !h-full"
233
+ on:click={variablePicker.openDrawer}
234
+ size="xs"
235
+ spacingSize="md"
236
+ startIcon={{ icon: faDollarSign }}
237
+ {iconOnly}
238
+ >
239
+ +Variable
240
+ </Button>
241
+ <svelte:fragment slot="text">
242
+ Add variable
243
+ </svelte:fragment>
244
+ </Popover>
245
+ <Popover notClickable placement="bottom" disapperTimoout={0} class="px-1" disablePopup={!iconOnly}>
246
+ <Button
247
+ btnClasses="!font-medium !h-full"
248
+ size="xs"
249
+ spacingSize="md"
250
+ color="light"
251
+ on:click={resourcePicker.openDrawer}
252
+ {iconOnly}
253
+ startIcon={{ icon: faCube }}
254
+ >
255
+ +Resource
256
+ </Button>
257
+ <svelte:fragment slot="text">
258
+ Add resource
259
+ </svelte:fragment>
260
+ </Popover>
261
+ <Popover notClickable placement="bottom" disapperTimoout={0} class="px-1" disablePopup={!iconOnly}>
262
+ <Button
263
+ btnClasses="!font-medium !h-full"
264
+ size="xs"
265
+ spacingSize="md"
266
+ color="light"
267
+ on:click={editor.clearContent}
268
+ {iconOnly}
269
+ startIcon={{ icon: faRotateLeft }}
270
+ >
271
+ Reset
272
+ </Button>
273
+ <svelte:fragment slot="text">
274
+ Reset
275
+ </svelte:fragment>
276
+ </Popover>
277
+ <Popover notClickable placement="bottom" disapperTimoout={0} class="px-1" disablePopup={!iconOnly}>
278
+ <Button
279
+ btnClasses="!font-medium !h-full"
280
+ size="xs"
281
+ spacingSize="md"
282
+ color="light"
283
+ on:click={editor.reloadWebsocket}
284
+ startIcon={{ icon: faRotate }}
285
+ >
286
+ {#if !iconOnly}
287
+ Assistant
286
288
  {/if}
287
- </span>
288
- </Button></div
289
- >
290
- <div>
291
- <Button
292
- btnClasses="!font-medium"
293
- size="xs"
294
- spacingSize="md"
295
- color="light"
296
- on:click={editor.format}
297
- startIcon={{ icon: faBroom }}
298
- >
299
- {#if !iconOnly}
289
+ <span class="ml-1 -my-1">
290
+ {#if lang == 'deno'}
291
+ (<span class={websocketAlive.deno ? 'green' : 'text-red-700'}>Deno</span>)
292
+ {:else if lang == 'go'}
293
+ (<span class={websocketAlive.go ? 'green' : 'text-red-700'}>Go</span>)
294
+ {:else if lang == 'python3'}
295
+ (<span class={websocketAlive.pyright ? 'green' : 'text-red-700'}>Pyright</span>
296
+ <span class={websocketAlive.black ? 'green' : 'text-red-700'}>Black</span>)
297
+ {/if}
298
+ </span>
299
+ </Button>
300
+ <svelte:fragment slot="text">
301
+ Reload assistant
302
+ </svelte:fragment>
303
+ </Popover>
304
+ <Popover notClickable placement="bottom" disapperTimoout={0} class="px-1" disablePopup={!iconOnly}>
305
+ <Button
306
+ btnClasses="!font-medium"
307
+ size="xs"
308
+ spacingSize="md"
309
+ color="light"
310
+ on:click={editor.format}
311
+ {iconOnly}
312
+ startIcon={{ icon: faBroom }}
313
+ >
300
314
  Format (Ctrl+S)
301
- {/if}
302
- </Button></div
303
- >
304
- </div>
305
- <div class="py-1">
306
- <div>
307
- <Button
308
- btnClasses="mx-1 !font-medium"
309
- size="xs"
310
- spacingSize="md"
311
- color="light"
312
- on:click={scriptPicker.openDrawer}
313
- {iconOnly}
314
- startIcon={{ icon: faEye }}
315
- >
316
- Script
317
- </Button>
315
+ </Button>
316
+ <svelte:fragment slot="text">
317
+ Format <Kbd class="!text-gray-800">Ctrl</Kbd> + <Kbd class="!text-gray-800">S</Kbd>
318
+ </svelte:fragment>
319
+ </Popover>
318
320
  </div>
319
321
  </div>
322
+ <Popover notClickable placement="bottom" disapperTimoout={0} class="px-1" disablePopup={!iconOnly}>
323
+ <Button
324
+ btnClasses="!font-medium"
325
+ size="xs"
326
+ spacingSize="md"
327
+ color="light"
328
+ on:click={scriptPicker.openDrawer}
329
+ {iconOnly}
330
+ startIcon={{ icon: faEye }}
331
+ >
332
+ Script
333
+ </Button>
334
+ <svelte:fragment slot="text">
335
+ Script
336
+ </svelte:fragment>
337
+ </Popover>
320
338
  </div>
321
339
 
322
340
  <style>
@@ -108,8 +108,8 @@ async function saveFlow() {
108
108
  await createSchedule(flow.path);
109
109
  }
110
110
  }
111
- sendUserToast(`Success! flow saved at ${$flowStore.path}`);
112
- goto(`/flows/get/${$flowStore.path}`);
111
+ sendUserToast(`Flow saved at ${$flowStore.path}`);
112
+ goto(`/flows/get/${$flowStore.path}?workspace_id=${$workspaceStore}`);
113
113
  }
114
114
  let timeout = undefined;
115
115
  $: {
@@ -1,9 +1,11 @@
1
- <script>import DisplayResult from './DisplayResult.svelte';
1
+ <script>import { Loader2 } from 'lucide-svelte';
2
+ import DisplayResult from './DisplayResult.svelte';
2
3
  import LogViewer from './LogViewer.svelte';
3
4
  export let result;
4
5
  export let logs;
5
6
  export let col = false;
6
7
  export let noBorder = false;
8
+ export let loading;
7
9
  </script>
8
10
 
9
11
  <div
@@ -12,7 +14,13 @@ export let noBorder = false;
12
14
  >
13
15
  <div class="bg-white max-h-80 h-full p-1 overflow-auto relative">
14
16
  <span class="text-gray-500">Result</span>
15
- <DisplayResult {result} />
17
+ {#if result}
18
+ <DisplayResult {result} />
19
+ {:else if loading}
20
+ <Loader2 class="animate-spin" />
21
+ {:else}
22
+ <div class="text-gray-400">No result (result is undefined)</div>
23
+ {/if}
16
24
  </div>
17
25
  <div class="overflow-auto max-h-80 h-full relative">
18
26
  <LogViewer content={logs ?? ''} isLoading={false} />
@@ -5,6 +5,7 @@ declare const __propDef: {
5
5
  logs: string;
6
6
  col?: boolean | undefined;
7
7
  noBorder?: boolean | undefined;
8
+ loading: any;
8
9
  };
9
10
  events: {
10
11
  [evt: string]: CustomEvent<any>;
@@ -1,7 +1,7 @@
1
1
  <script>import JobStatus from './JobStatus.svelte';
2
2
  import Icon from 'svelte-awesome';
3
- import { displayDaysAgo } from '../utils';
4
- import { faCalendar, faClock, faRobot, faScroll, faUser, faBarsStaggered } from '@fortawesome/free-solid-svg-icons';
3
+ import { displayDate, displayDaysAgo } from '../utils';
4
+ import { faCalendar, faClock, faRobot, faScroll, faUser, faBarsStaggered, faMemory } from '@fortawesome/free-solid-svg-icons';
5
5
  import ScheduleEditor from './ScheduleEditor.svelte';
6
6
  import { onDestroy, onMount } from 'svelte';
7
7
  let time = Date.now();
@@ -27,16 +27,31 @@ let scheduleEditor;
27
27
  <Icon class="text-gray-700" data={faClock} scale={SMALL_ICON_SCALE} /><span
28
28
  class="mx-2 text-2xs text-gray-600"
29
29
  >
30
- {#key time}
31
- Received job {displayDaysAgo(job.created_at ?? '')}
32
- {/key}</span
30
+ {#if job['success'] != undefined}
31
+ Received job: {displayDate(job.created_at ?? '')}
32
+ {:else}
33
+ {#key time}
34
+ Received job {displayDaysAgo(job.created_at ?? '')}
35
+ {/key}
36
+ {/if}</span
33
37
  >
34
38
  </div>
35
39
  {#if job && 'started_at' in job && job.started_at}
36
40
  <div>
37
41
  <Icon class="text-gray-700" data={faClock} scale={SMALL_ICON_SCALE} /><span class="mx-2">
38
- {#key time}
39
- Started {displayDaysAgo(job.started_at ?? '')}{/key}</span
42
+ {#if job['success'] != undefined}
43
+ Started: {displayDate(job.started_at ?? '')}
44
+ {:else}
45
+ {#key time}
46
+ Started {displayDaysAgo(job.started_at ?? '')}{/key}
47
+ {/if}
48
+ </span>
49
+ </div>
50
+ {/if}
51
+ {#if job && job['mem_peak']}
52
+ <div>
53
+ <Icon class="text-gray-700" data={faMemory} scale={SMALL_ICON_SCALE} /><span class="mx-2">
54
+ Mem peak: {(job['mem_peak'] / 1024).toPrecision(5)}MB</span
40
55
  >
41
56
  </div>
42
57
  {/if}
@@ -78,7 +93,8 @@ let scheduleEditor;
78
93
  <div>
79
94
  <Icon class="text-gray-700" data={faUser} scale={SMALL_ICON_SCALE} /><span class="mx-2">
80
95
  By {job.created_by}
81
- {#if job.permissioned_as !== `u/${job.created_by}`}but permissioned as {job.permissioned_as}{/if}
96
+ {#if job.permissioned_as !== `u/${job.created_by}` && job.permissioned_as != job.created_by}but
97
+ permissioned as {job.permissioned_as}{/if}
82
98
  </span>
83
99
  </div>
84
100
  </div>
@@ -141,8 +141,8 @@ $: if (job?.type === 'CompletedJob') {
141
141
  </div>
142
142
  <FlowProgressBar {job} bind:reset={jobProgressReset} />
143
143
 
144
- <div class="overflow-y-auto grow flex-col flex divide-y divide-gray-600 ">
145
- <div class="max-h-1/2 overflow-auto">
144
+ <div class="overflow-y-auto grow divide-y divide-gray-600 ">
145
+ <div class="max-h-1/2 overflow-auto border-b border-gray-700">
146
146
  <SchemaForm
147
147
  noVariablePicker
148
148
  compact
@@ -152,8 +152,7 @@ $: if (job?.type === 'CompletedJob') {
152
152
  bind:args={$previewArgs}
153
153
  />
154
154
  </div>
155
-
156
- <div class="h-full pt-4 grow">
155
+ <div class="pt-4 grow">
157
156
  {#if jobId}
158
157
  <FlowStatusViewer bind:flowState={$flowStateStore} {jobId} bind:job />
159
158
  {: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';
@@ -127,6 +127,14 @@ async function loadOwner(path) {
127
127
  }
128
128
  let selected = 'graph';
129
129
  let payload = '"a test payload in json"';
130
+ function isSuccess(arg) {
131
+ if (arg == undefined) {
132
+ return undefined;
133
+ }
134
+ else {
135
+ return arg == true;
136
+ }
137
+ }
130
138
  </script>
131
139
 
132
140
  {#if job}
@@ -143,7 +151,11 @@ let payload = '"a test payload in json"';
143
151
  <FlowPreviewStatus {job} />
144
152
  {#if `result` in job}
145
153
  <div class="w-full h-full">
146
- <FlowJobResult result={job.result} logs={job.logs ?? ''} />
154
+ <FlowJobResult
155
+ loading={job['running'] == true}
156
+ result={job.result}
157
+ logs={job.logs ?? ''}
158
+ />
147
159
  </div>
148
160
  {:else if job.flow_status?.modules?.[job?.flow_status?.step]?.type === FlowStatusModule.type.WAITING_FOR_EVENTS}
149
161
  <div class="w-full h-full mt-2 text-sm text-gray-600">
@@ -189,14 +201,21 @@ let payload = '"a test payload in json"';
189
201
  <div class="flex flex-col gap-1">
190
202
  {#each innerModules as mod, i (mod.id)}
191
203
  {#if mod.type == FlowStatusModule.type.IN_PROGRESS}
204
+ {@const rawMod = job.raw_flow?.modules[i]}
205
+
192
206
  <div
193
207
  ><span class="inline-flex gap-1"
194
208
  ><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}
209
+ <span class="font-medium text-gray-900">
210
+ {#if !emptyString(rawMod?.summary)}
211
+ {rawMod?.summary ?? ''}
212
+ {:else if rawMod?.value.type == 'script'}
213
+ {rawMod.value.path ?? ''}
214
+ {:else if rawMod?.value.type}
215
+ {rawMod?.value.type}
216
+ {/if}
217
+ </span>
218
+
200
219
  <Loader2 class="animate-spin" /></span
201
220
  ></div
202
221
  >
@@ -389,6 +408,7 @@ let payload = '"a test payload in json"';
389
408
  </div>
390
409
 
391
410
  <FlowGraph
411
+ success={isSuccess(job?.['success'])}
392
412
  flowModuleStates={localFlowModuleStates}
393
413
  on:click={(e) => {
394
414
  if (e.detail.id) {
@@ -407,7 +427,13 @@ let payload = '"a test payload in json"';
407
427
  {#if selectedNode}
408
428
  {@const node = localFlowModuleStates[selectedNode]}
409
429
  {#if selectedNode == 'end'}
410
- <FlowJobResult noBorder col result={job['result'] ?? {}} logs={job.logs ?? ''} />
430
+ <FlowJobResult
431
+ loading={job['running']}
432
+ noBorder
433
+ col
434
+ result={job['result']}
435
+ logs={job.logs ?? ''}
436
+ />
411
437
  {:else if selectedNode == 'start'}
412
438
  {#if job.args}
413
439
  <div class="p-2">
@@ -434,7 +460,13 @@ let payload = '"a test payload in json"';
434
460
  </div>
435
461
  {/if}
436
462
  </div>
437
- <FlowJobResult noBorder col result={node.result ?? {}} logs={node.logs ?? ''} />
463
+ <FlowJobResult
464
+ loading={job['running'] == true}
465
+ noBorder
466
+ col
467
+ result={node.result}
468
+ logs={node.logs ?? ''}
469
+ />
438
470
  {:else}
439
471
  <p class="p-2 text-gray-600 italic"
440
472
  >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])
@@ -115,7 +115,7 @@ let ownerKind = 'user';
115
115
  {#if perms}
116
116
  <TableCustom>
117
117
  <tr slot="header-row">
118
- <th>user</th>
118
+ <th>user/group</th>
119
119
  <th />
120
120
  <th />
121
121
  </tr>
@@ -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') {
@@ -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
  }
@@ -94,9 +94,12 @@ const { focusProp, propPickerConfig } = getContext('PropPickerWrapper');
94
94
  $: isStaticTemplate(inputCat) && propertyType == 'static' && setPropertyType(arg?.value);
95
95
  const openBracket = '${';
96
96
  const closeBracket = '}';
97
- $: schema.properties[argName].default &&
98
- !arg?.value &&
99
- monacoTemplate?.setCode(schema.properties[argName].default);
97
+ function setDefaultCode() {
98
+ if (!arg?.value) {
99
+ monacoTemplate?.setCode(schema.properties[argName].default);
100
+ }
101
+ }
102
+ $: schema.properties[argName].default && setDefaultCode();
100
103
  </script>
101
104
 
102
105
  {#if arg != undefined}
@@ -134,7 +137,7 @@ $: schema.properties[argName].default &&
134
137
  argName,
135
138
  previousModuleId,
136
139
  staticTemplate
137
- ? `\`${arg?.value ?? ''}\``
140
+ ? `\`${arg?.value?.toString().replaceAll('`', '\\`') ?? ''}\``
138
141
  : arg.value
139
142
  ? JSON.stringify(arg?.value, null, 4)
140
143
  : ''
@@ -149,6 +152,7 @@ $: schema.properties[argName].default &&
149
152
  if (staticTemplate) {
150
153
  if (arg) {
151
154
  arg.value = codeToStaticTemplate(arg.expr)
155
+ arg.expr = undefined
152
156
  }
153
157
  setPropertyType(arg?.value)
154
158
  } else {
@@ -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) {
@@ -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,7 +6,7 @@ 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';
9
+ import { flowStateStore, testStepStore } from './flows/flowState';
10
10
  import { flowStore } from './flows/flowStore';
11
11
  import { workspaceStore } from '../stores';
12
12
  import { Loader2 } from 'lucide-svelte';
@@ -16,7 +16,16 @@ export let schema;
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
  }