windmill-components 1.70.0 → 1.77.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 (441) hide show
  1. package/assets/app.css +12 -1
  2. package/components/AppConnect.svelte +4 -3
  3. package/components/DisplayResult.svelte +28 -10
  4. package/components/Dropdown.svelte +14 -4
  5. package/components/FieldHeader.svelte +12 -8
  6. package/components/FlowBuilder.svelte +107 -39
  7. package/components/FlowBuilder.svelte.d.ts +5 -0
  8. package/components/FlowGraphViewer.svelte +6 -5
  9. package/components/FlowJobResult.svelte +3 -3
  10. package/components/FlowPreviewContent.svelte +3 -8
  11. package/components/FlowStatusViewer.svelte +21 -8
  12. package/components/FolderUsageInfo.svelte +16 -6
  13. package/components/FolderUsageInfo.svelte.d.ts +2 -0
  14. package/components/GroupEditor.svelte +8 -0
  15. package/components/InputTransformForm.svelte +13 -20
  16. package/components/InputTransformSchemaForm.svelte +103 -0
  17. package/components/InputTransformSchemaForm.svelte.d.ts +24 -0
  18. package/components/LogViewer.svelte +1 -1
  19. package/components/ModulePreview.svelte +3 -2
  20. package/components/Multiselect.svelte +1 -1
  21. package/components/PageHeader.svelte +1 -1
  22. package/components/Path.svelte +35 -12
  23. package/components/Popover.svelte +2 -13
  24. package/components/ResourcePicker.svelte +33 -14
  25. package/components/RunChart.svelte +24 -5
  26. package/components/RunForm.svelte +5 -6
  27. package/components/RunForm.svelte.d.ts +1 -0
  28. package/components/SchemaForm.svelte +59 -57
  29. package/components/SchemaForm.svelte.d.ts +0 -5
  30. package/components/ScriptBuilder.svelte +151 -135
  31. package/components/ScriptPicker.svelte +3 -0
  32. package/components/SettingSection.svelte +44 -0
  33. package/components/SettingSection.svelte.d.ts +21 -0
  34. package/components/SimpleEditor.svelte +4 -1
  35. package/components/SimpleEditor.svelte.d.ts +2 -0
  36. package/components/Slider.svelte +6 -1
  37. package/components/Slider.svelte.d.ts +1 -0
  38. package/components/TemplateEditor.svelte +1 -1
  39. package/components/TestJobLoader.svelte +2 -2
  40. package/components/Toggle.svelte +17 -4
  41. package/components/Toggle.svelte.d.ts +2 -0
  42. package/components/Tooltip.svelte +4 -2
  43. package/components/UserSettings.svelte +2 -0
  44. package/components/WhitelistIp.svelte +1 -3
  45. package/components/apps/components/buttons/AppButton.svelte +45 -23
  46. package/components/apps/components/buttons/AppButton.svelte.d.ts +2 -0
  47. package/components/apps/components/buttons/AppForm.svelte +18 -12
  48. package/components/apps/components/buttons/AppForm.svelte.d.ts +3 -0
  49. package/components/apps/components/buttons/AppFormButton.svelte +14 -10
  50. package/components/apps/components/buttons/AppFormButton.svelte.d.ts +3 -0
  51. package/components/apps/components/display/AppBarChart.svelte +15 -7
  52. package/components/apps/components/display/AppBarChart.svelte.d.ts +3 -0
  53. package/components/apps/components/display/AppDisplayComponent.svelte +17 -12
  54. package/components/apps/components/display/AppDisplayComponent.svelte.d.ts +1 -0
  55. package/components/apps/components/display/AppHtml.svelte +18 -4
  56. package/components/apps/components/display/AppHtml.svelte.d.ts +3 -0
  57. package/components/apps/components/display/AppIcon.svelte +20 -8
  58. package/components/apps/components/display/AppIcon.svelte.d.ts +3 -0
  59. package/components/apps/components/display/AppImage.svelte +17 -10
  60. package/components/apps/components/display/AppImage.svelte.d.ts +3 -0
  61. package/components/apps/components/display/AppMap.svelte +214 -0
  62. package/components/apps/components/display/AppMap.svelte.d.ts +23 -0
  63. package/components/apps/components/display/AppPdf.svelte +304 -0
  64. package/components/apps/components/display/AppPdf.svelte.d.ts +24 -0
  65. package/components/apps/components/display/AppPieChart.svelte +15 -7
  66. package/components/apps/components/display/AppPieChart.svelte.d.ts +3 -0
  67. package/components/apps/components/display/AppScatterChart.svelte +12 -4
  68. package/components/apps/components/display/AppScatterChart.svelte.d.ts +3 -0
  69. package/components/apps/components/display/AppText.svelte +38 -32
  70. package/components/apps/components/display/AppText.svelte.d.ts +1 -0
  71. package/components/apps/components/display/AppTimeseries.svelte +12 -4
  72. package/components/apps/components/display/AppTimeseries.svelte.d.ts +3 -0
  73. package/components/apps/components/display/PlotlyHtml.svelte +8 -14
  74. package/components/apps/components/display/PlotlyHtml.svelte.d.ts +1 -1
  75. package/components/apps/components/display/VegaLiteHtml.svelte +3 -8
  76. package/components/apps/components/display/VegaLiteHtml.svelte.d.ts +1 -0
  77. package/components/apps/components/display/index.d.ts +3 -0
  78. package/components/apps/components/display/index.js +3 -0
  79. package/components/apps/components/display/table/AppAggridTable.svelte +20 -8
  80. package/components/apps/components/display/table/AppAggridTable.svelte.d.ts +1 -0
  81. package/components/apps/components/display/table/AppTable.svelte +69 -21
  82. package/components/apps/components/display/table/AppTable.svelte.d.ts +3 -1
  83. package/components/apps/components/display/table/AppTableFooter.svelte +8 -1
  84. package/components/apps/components/display/table/AppTableFooter.svelte.d.ts +2 -0
  85. package/components/apps/components/helpers/AlignWrapper.svelte +13 -7
  86. package/components/apps/components/helpers/AlignWrapper.svelte.d.ts +3 -1
  87. package/components/apps/components/helpers/HiddenComponent.svelte +5 -1
  88. package/components/apps/components/helpers/HiddenComponent.svelte.d.ts +1 -0
  89. package/components/apps/components/helpers/InputValue.svelte +58 -52
  90. package/components/apps/components/helpers/InputValue.svelte.d.ts +4 -3
  91. package/components/apps/components/helpers/NonRunnableComponent.svelte +18 -3
  92. package/components/apps/components/helpers/NonRunnableComponent.svelte.d.ts +1 -0
  93. package/components/apps/components/helpers/RefreshButton.svelte +3 -4
  94. package/components/apps/components/helpers/ResizeWrapper.svelte +24 -0
  95. package/components/apps/components/helpers/ResizeWrapper.svelte.d.ts +19 -0
  96. package/components/apps/components/helpers/RunnableComponent.svelte +126 -91
  97. package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +5 -1
  98. package/components/apps/components/helpers/RunnableWrapper.svelte +11 -5
  99. package/components/apps/components/helpers/RunnableWrapper.svelte.d.ts +4 -1
  100. package/components/apps/components/helpers/eval.d.ts +5 -0
  101. package/components/apps/components/helpers/eval.js +57 -0
  102. package/components/apps/components/inputs/AppCheckbox.svelte +8 -2
  103. package/components/apps/components/inputs/AppCheckbox.svelte.d.ts +3 -0
  104. package/components/apps/components/inputs/AppDateInput.svelte +25 -18
  105. package/components/apps/components/inputs/AppDateInput.svelte.d.ts +6 -1
  106. package/components/apps/components/inputs/AppFileInput.svelte +22 -14
  107. package/components/apps/components/inputs/AppFileInput.svelte.d.ts +3 -0
  108. package/components/apps/components/inputs/AppMultiSelect.svelte +82 -0
  109. package/components/apps/components/inputs/AppMultiSelect.svelte.d.ts +27 -0
  110. package/components/apps/components/inputs/AppNumberInput.svelte +20 -16
  111. package/components/apps/components/inputs/AppNumberInput.svelte.d.ts +5 -0
  112. package/components/apps/components/inputs/AppRangeInput.svelte +55 -14
  113. package/components/apps/components/inputs/AppRangeInput.svelte.d.ts +3 -0
  114. package/components/apps/components/inputs/AppSelect.svelte +58 -21
  115. package/components/apps/components/inputs/AppSelect.svelte.d.ts +3 -0
  116. package/components/apps/components/inputs/AppSliderInputs.svelte +41 -9
  117. package/components/apps/components/inputs/AppSliderInputs.svelte.d.ts +3 -0
  118. package/components/apps/components/inputs/AppTextInput.svelte +53 -19
  119. package/components/apps/components/inputs/AppTextInput.svelte.d.ts +6 -0
  120. package/components/apps/components/inputs/currency/AppCurrencyInput.svelte +13 -3
  121. package/components/apps/components/inputs/currency/AppCurrencyInput.svelte.d.ts +3 -0
  122. package/components/apps/components/inputs/currency/CurrencyInput.svelte +2 -0
  123. package/components/apps/components/inputs/currency/CurrencyInput.svelte.d.ts +1 -0
  124. package/components/apps/components/layout/AppContainer.svelte +20 -17
  125. package/components/apps/components/layout/AppContainer.svelte.d.ts +3 -0
  126. package/components/apps/components/layout/AppDivider.svelte +24 -4
  127. package/components/apps/components/layout/AppDivider.svelte.d.ts +3 -1
  128. package/components/apps/components/layout/AppDrawer.svelte +86 -0
  129. package/components/apps/components/layout/AppDrawer.svelte.d.ts +24 -0
  130. package/components/apps/components/layout/AppSplitpanes.svelte +83 -0
  131. package/components/apps/components/layout/AppSplitpanes.svelte.d.ts +26 -0
  132. package/components/apps/components/layout/AppTabs.svelte +112 -40
  133. package/components/apps/components/layout/AppTabs.svelte.d.ts +4 -0
  134. package/components/apps/components/layout/index.d.ts +2 -0
  135. package/components/apps/components/layout/index.js +2 -0
  136. package/components/apps/editor/AppEditor.svelte +201 -132
  137. package/components/apps/editor/AppEditor.svelte.d.ts +3 -1
  138. package/components/apps/editor/AppEditorHeader.svelte +149 -66
  139. package/components/apps/editor/AppInputs.svelte +3 -3
  140. package/components/apps/editor/AppPreview.svelte +21 -7
  141. package/components/apps/editor/ComponentHeader.svelte +17 -4
  142. package/components/apps/editor/ComponentHeader.svelte.d.ts +2 -0
  143. package/components/apps/editor/GridEditor.svelte +86 -70
  144. package/components/apps/editor/GridPanel.svelte +29 -0
  145. package/components/apps/editor/GridPanel.svelte.d.ts +18 -0
  146. package/components/apps/editor/RecomputeAllComponents.svelte +14 -6
  147. package/components/apps/editor/SettingsPanel.svelte +30 -27
  148. package/components/apps/editor/SubGridEditor.svelte +82 -50
  149. package/components/apps/editor/SubGridEditor.svelte.d.ts +8 -4
  150. package/components/apps/editor/appUtils.d.ts +22 -3
  151. package/components/apps/editor/appUtils.js +221 -47
  152. package/components/apps/editor/component/Component.svelte +281 -61
  153. package/components/apps/editor/component/Component.svelte.d.ts +3 -1
  154. package/components/apps/editor/component/ComponentNavigation.svelte +170 -0
  155. package/components/apps/editor/component/ComponentNavigation.svelte.d.ts +14 -0
  156. package/components/apps/editor/component/components.d.ts +15 -3
  157. package/components/apps/editor/component/components.js +409 -54
  158. package/components/apps/editor/component/default-codes.js +6 -6
  159. package/components/apps/editor/component/sets.js +11 -3
  160. package/components/apps/editor/componentsPanel/ComponentList.svelte +72 -29
  161. package/components/apps/editor/componentsPanel/CssProperty.svelte +59 -23
  162. package/components/apps/editor/componentsPanel/CssProperty.svelte.d.ts +2 -1
  163. package/components/apps/editor/componentsPanel/CssSettings.svelte +56 -9
  164. package/components/apps/editor/componentsPanel/ListItem.svelte +23 -12
  165. package/components/apps/editor/componentsPanel/componentStaticValues.d.ts +2 -0
  166. package/components/apps/editor/componentsPanel/componentStaticValues.js +15 -2
  167. package/components/apps/editor/contextPanel/ComponentOutput.svelte +77 -0
  168. package/components/apps/editor/contextPanel/ComponentOutput.svelte.d.ts +21 -0
  169. package/components/apps/editor/contextPanel/ComponentOutputViewer.svelte +10 -6
  170. package/components/apps/editor/contextPanel/ContextPanel.svelte +81 -91
  171. package/components/apps/editor/contextPanel/SubGridOutput.svelte +71 -0
  172. package/components/apps/editor/contextPanel/SubGridOutput.svelte.d.ts +19 -0
  173. package/components/apps/editor/contextPanel/components/BackgroundScriptOutput.svelte +38 -0
  174. package/components/apps/editor/contextPanel/components/BackgroundScriptOutput.svelte.d.ts +19 -0
  175. package/components/apps/editor/contextPanel/components/BackgroundScriptsOutput.svelte +10 -0
  176. package/components/apps/editor/contextPanel/components/BackgroundScriptsOutput.svelte.d.ts +16 -0
  177. package/components/apps/editor/contextPanel/components/MinMaxButton.svelte +25 -0
  178. package/components/apps/editor/contextPanel/components/MinMaxButton.svelte.d.ts +16 -0
  179. package/components/apps/editor/contextPanel/components/OutputHeader.svelte +78 -0
  180. package/components/apps/editor/contextPanel/components/OutputHeader.svelte.d.ts +26 -0
  181. package/components/apps/editor/contextPanel/components/TableActionOutput.svelte +19 -0
  182. package/components/apps/editor/contextPanel/components/TableActionOutput.svelte.d.ts +18 -0
  183. package/components/apps/editor/contextPanel/components/TableActionsOutput.svelte +14 -0
  184. package/components/apps/editor/contextPanel/components/TableActionsOutput.svelte.d.ts +18 -0
  185. package/components/apps/editor/inlineScriptsPanel/EmptyInlineScript.svelte +55 -13
  186. package/components/apps/editor/inlineScriptsPanel/EmptyInlineScript.svelte.d.ts +1 -0
  187. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte +126 -62
  188. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte.d.ts +5 -0
  189. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorDrawer.svelte +1 -1
  190. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorPanel.svelte +11 -5
  191. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorPanel.svelte.d.ts +1 -0
  192. package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanel.svelte +26 -17
  193. package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelList.svelte +95 -85
  194. package/components/apps/editor/inlineScriptsPanel/utils.d.ts +5 -9
  195. package/components/apps/editor/inlineScriptsPanel/utils.js +19 -8
  196. package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +10 -9
  197. package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte.d.ts +21 -12
  198. package/components/apps/editor/settingsPanel/ComponentInputTypeEditor.svelte +1 -1
  199. package/components/apps/editor/settingsPanel/ComponentPanel.svelte +119 -79
  200. package/components/apps/editor/settingsPanel/ComponentPanel.svelte.d.ts +1 -0
  201. package/components/apps/editor/settingsPanel/GridPane.svelte +75 -0
  202. package/components/apps/editor/settingsPanel/GridPane.svelte.d.ts +20 -0
  203. package/components/apps/editor/settingsPanel/GridTab.svelte +9 -17
  204. package/components/apps/editor/settingsPanel/GridTab.svelte.d.ts +2 -0
  205. package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +2 -1
  206. package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +1 -1
  207. package/components/apps/editor/settingsPanel/Recompute.svelte +2 -1
  208. package/components/apps/editor/settingsPanel/SelectedRunnable.svelte +7 -1
  209. package/components/apps/editor/settingsPanel/TableActions.svelte +30 -2
  210. package/components/apps/editor/settingsPanel/common/PanelSection.svelte +2 -2
  211. package/components/apps/editor/settingsPanel/inputEditor/ColorInput.svelte +48 -0
  212. package/components/apps/editor/settingsPanel/inputEditor/ColorInput.svelte.d.ts +19 -0
  213. package/components/apps/editor/settingsPanel/inputEditor/ConnectedInputEditor.svelte +2 -8
  214. package/components/apps/editor/settingsPanel/inputEditor/EvalInputEditor.svelte +2 -2
  215. package/components/apps/editor/settingsPanel/inputEditor/IconSelectInput.svelte +77 -41
  216. package/components/apps/editor/settingsPanel/inputEditor/IconSelectInput.svelte.d.ts +2 -0
  217. package/components/apps/editor/settingsPanel/inputEditor/JsonEditor.svelte +3 -3
  218. package/components/apps/editor/settingsPanel/inputEditor/JsonEditor.svelte.d.ts +4 -1
  219. package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +54 -6
  220. package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte.d.ts +1 -0
  221. package/components/apps/editor/settingsPanel/inputEditor/UploadInputEditor.svelte +7 -9
  222. package/components/apps/editor/settingsPanel/inputEditor/UploadInputEditor.svelte.d.ts +1 -1
  223. package/components/apps/editor/settingsPanel/mainInput/InlineScriptList.svelte +1 -0
  224. package/components/apps/editor/settingsPanel/mainInput/InlineScriptList.svelte.d.ts +1 -0
  225. package/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte +1 -1
  226. package/components/apps/inputType.d.ts +6 -5
  227. package/components/apps/rx.d.ts +6 -4
  228. package/components/apps/rx.js +36 -15
  229. package/components/apps/store.d.ts +6 -1
  230. package/components/apps/svelte-grid/Grid.svelte +171 -0
  231. package/components/apps/svelte-grid/Grid.svelte.d.ts +47 -0
  232. package/components/apps/svelte-grid/LICENSE +23 -0
  233. package/components/apps/svelte-grid/MoveResize.svelte +328 -0
  234. package/components/apps/svelte-grid/MoveResize.svelte.d.ts +46 -0
  235. package/components/apps/svelte-grid/types.d.ts +25 -0
  236. package/components/apps/svelte-grid/utils/container.d.ts +1 -0
  237. package/components/apps/svelte-grid/utils/container.js +4 -0
  238. package/components/apps/svelte-grid/utils/helper.d.ts +14 -0
  239. package/components/apps/svelte-grid/utils/helper.js +36 -0
  240. package/components/apps/svelte-grid/utils/item.d.ts +14 -0
  241. package/components/apps/svelte-grid/utils/item.js +192 -0
  242. package/components/apps/svelte-grid/utils/matrix.d.ts +6 -0
  243. package/components/apps/svelte-grid/utils/matrix.js +53 -0
  244. package/components/apps/svelte-grid/utils/other.d.ts +3 -0
  245. package/components/apps/svelte-grid/utils/other.js +30 -0
  246. package/components/apps/types.d.ts +21 -8
  247. package/components/apps/utils.d.ts +3 -3
  248. package/components/apps/utils.js +34 -56
  249. package/components/common/CloseButton.svelte +18 -0
  250. package/components/common/CloseButton.svelte.d.ts +27 -0
  251. package/components/common/badge/Badge.svelte +6 -1
  252. package/components/common/badge/Badge.svelte.d.ts +1 -0
  253. package/components/common/button/ButtonPopup.svelte +2 -0
  254. package/components/common/button/ButtonPopup.svelte.d.ts +1 -0
  255. package/components/common/button/UndoRedo.svelte +32 -0
  256. package/components/common/button/UndoRedo.svelte.d.ts +20 -0
  257. package/components/common/drawer/Drawer.svelte +10 -4
  258. package/components/common/drawer/Drawer.svelte.d.ts +3 -1
  259. package/components/common/drawer/DrawerContent.svelte +2 -7
  260. package/components/common/fileInput/FileInput.svelte +47 -21
  261. package/components/common/fileInput/FileInput.svelte.d.ts +3 -1
  262. package/components/common/fileInput/model.d.ts +1 -0
  263. package/components/common/fileInput/model.js +1 -0
  264. package/components/common/index.d.ts +1 -0
  265. package/components/common/index.js +1 -0
  266. package/components/common/languageIcons/JavaScript.svelte +11 -0
  267. package/components/common/languageIcons/JavaScript.svelte.d.ts +25 -0
  268. package/components/common/languageIcons/LanguageIcon.svelte +3 -1
  269. package/components/common/languageIcons/LanguageIcon.svelte.d.ts +1 -1
  270. package/components/common/menu/Menu.svelte +3 -2
  271. package/components/common/menu/Menu.svelte.d.ts +2 -1
  272. package/components/common/modal/Modal.svelte +9 -4
  273. package/components/common/modal/Modal.svelte.d.ts +2 -0
  274. package/components/common/popup/Popup.svelte +2 -1
  275. package/components/common/popup/Popup.svelte.d.ts +9 -0
  276. package/components/common/table/AppRow.svelte +14 -8
  277. package/components/common/table/AppRow.svelte.d.ts +1 -0
  278. package/components/common/table/FlowRow.svelte +22 -12
  279. package/components/common/table/FlowRow.svelte.d.ts +1 -0
  280. package/components/common/table/ScriptRow.svelte +43 -14
  281. package/components/common/table/ScriptRow.svelte.d.ts +1 -0
  282. package/components/common/tabs/Tab.svelte +13 -5
  283. package/components/common/tabs/Tab.svelte.d.ts +6 -1
  284. package/components/common/tabs/Tabs.svelte +8 -6
  285. package/components/common/tabs/Tabs.svelte.d.ts +3 -1
  286. package/components/flows/FlowEditor.svelte +6 -4
  287. package/components/flows/common/FlowCardHeader.svelte +4 -1
  288. package/components/flows/content/BranchPredicateEditor.svelte +3 -4
  289. package/components/flows/content/CapturePayload.svelte +1 -2
  290. package/components/flows/content/FlowBranchesAllWrapper.svelte +1 -1
  291. package/components/flows/content/FlowConstants.svelte +7 -13
  292. package/components/flows/content/FlowEditorPanel.svelte +4 -3
  293. package/components/flows/content/FlowFailureModule.svelte +2 -1
  294. package/components/flows/content/FlowInput.svelte +4 -2
  295. package/components/flows/content/FlowLoop.svelte +3 -4
  296. package/components/flows/content/FlowModuleComponent.svelte +23 -11
  297. package/components/flows/content/FlowModuleEarlyStop.svelte +3 -1
  298. package/components/flows/content/FlowModuleHeader.svelte +26 -3
  299. package/components/flows/content/FlowModuleHeader.svelte.d.ts +1 -0
  300. package/components/flows/content/FlowModuleSleep.svelte +2 -2
  301. package/components/flows/content/FlowModuleWrapper.svelte +2 -8
  302. package/components/flows/content/FlowSchedules.svelte +1 -2
  303. package/components/flows/content/FlowSettings.svelte +17 -37
  304. package/components/flows/content/ScriptEditorDrawer.svelte +98 -0
  305. package/components/flows/content/ScriptEditorDrawer.svelte.d.ts +19 -0
  306. package/components/flows/flowState.d.ts +2 -3
  307. package/components/flows/flowState.js +1 -4
  308. package/components/flows/flowStateUtils.d.ts +7 -6
  309. package/components/flows/flowStateUtils.js +5 -9
  310. package/components/flows/flowStore.d.ts +5 -4
  311. package/components/flows/flowStore.js +5 -17
  312. package/components/flows/header/FlowImportExportMenu.svelte +2 -1
  313. package/components/flows/map/FlowConstantsItem.svelte +2 -2
  314. package/components/flows/map/FlowErrorHandlerItem.svelte +12 -13
  315. package/components/flows/map/FlowInputsItem.svelte +2 -3
  316. package/components/flows/map/FlowModuleSchemaItem.svelte +88 -91
  317. package/components/flows/map/FlowModuleSchemaItem.svelte.d.ts +3 -3
  318. package/components/flows/map/FlowModuleSchemaMap.svelte +164 -138
  319. package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +1 -2
  320. package/components/flows/map/FlowSettingsItem.svelte +5 -4
  321. package/components/flows/map/InsertModuleButton.svelte +12 -10
  322. package/components/flows/map/InsertModuleButton.svelte.d.ts +1 -0
  323. package/components/flows/map/MapItem.svelte +176 -103
  324. package/components/flows/map/MapItem.svelte.d.ts +20 -2
  325. package/components/flows/map/VirtualItem.svelte +129 -0
  326. package/components/flows/map/VirtualItem.svelte.d.ts +44 -0
  327. package/components/flows/pickers/FlowScriptPicker.svelte.d.ts +1 -1
  328. package/components/flows/pickers/WorkspaceScriptPicker.svelte +1 -1
  329. package/components/flows/previousResults.d.ts +1 -1
  330. package/components/flows/previousResults.js +32 -17
  331. package/components/flows/types.d.ts +13 -1
  332. package/components/flows/utils.js +1 -1
  333. package/components/graph/FlowGraph.svelte +227 -167
  334. package/components/graph/FlowGraph.svelte.d.ts +14 -1
  335. package/components/graph/model.d.ts +6 -36
  336. package/components/graph/model.js +1 -1
  337. package/components/graph/svelvet/LICENSE +21 -0
  338. package/components/graph/svelvet/collapsible/controllers/util.d.ts +15 -0
  339. package/components/graph/svelvet/collapsible/controllers/util.js +144 -0
  340. package/components/graph/svelvet/collapsible/models/Collapsible.d.ts +17 -0
  341. package/components/graph/svelvet/collapsible/models/Collapsible.js +25 -0
  342. package/components/graph/svelvet/collapsible/types/types.d.ts +8 -0
  343. package/components/graph/svelvet/collapsible/types/types.js +1 -0
  344. package/components/graph/svelvet/container/README.md +7 -0
  345. package/components/graph/svelvet/container/controllers/middleware.d.ts +18 -0
  346. package/components/graph/svelvet/container/controllers/middleware.js +101 -0
  347. package/components/graph/svelvet/container/views/GraphView.svelte +252 -0
  348. package/components/graph/svelvet/container/views/GraphView.svelte.d.ts +25 -0
  349. package/components/graph/svelvet/container/views/Svelvet.svelte +131 -0
  350. package/components/graph/svelvet/container/views/Svelvet.svelte.d.ts +41 -0
  351. package/components/graph/svelvet/customCss/controllers/getCss.d.ts +2 -0
  352. package/components/graph/svelvet/customCss/controllers/getCss.js +57 -0
  353. package/components/graph/svelvet/d3/controllers/d3.d.ts +5 -0
  354. package/components/graph/svelvet/d3/controllers/d3.js +59 -0
  355. package/components/graph/svelvet/edges/controllers/anchorCbDev.d.ts +4 -0
  356. package/components/graph/svelvet/edges/controllers/anchorCbDev.js +92 -0
  357. package/components/graph/svelvet/edges/controllers/anchorCbUser.d.ts +57 -0
  358. package/components/graph/svelvet/edges/controllers/anchorCbUser.js +73 -0
  359. package/components/graph/svelvet/edges/controllers/util.d.ts +37 -0
  360. package/components/graph/svelvet/edges/controllers/util.js +72 -0
  361. package/components/graph/svelvet/edges/models/Anchor.d.ts +48 -0
  362. package/components/graph/svelvet/edges/models/Anchor.js +122 -0
  363. package/components/graph/svelvet/edges/models/Edge.d.ts +47 -0
  364. package/components/graph/svelvet/edges/models/Edge.js +107 -0
  365. package/components/graph/svelvet/edges/types/types.d.ts +18 -0
  366. package/components/graph/svelvet/edges/types/types.js +1 -0
  367. package/components/graph/svelvet/edges/views/Edges/BaseEdge.svelte +105 -0
  368. package/components/graph/svelvet/edges/views/Edges/BaseEdge.svelte.d.ts +18 -0
  369. package/components/graph/svelvet/edges/views/Edges/EdgeAnchor.svelte +12 -0
  370. package/components/graph/svelvet/edges/views/Edges/EdgeAnchor.svelte.d.ts +17 -0
  371. package/components/graph/svelvet/edges/views/Edges/EdgeText.svelte +43 -0
  372. package/components/graph/svelvet/edges/views/Edges/EdgeText.svelte.d.ts +17 -0
  373. package/components/graph/svelvet/edges/views/Edges/SimpleBezierEdge.svelte +137 -0
  374. package/components/graph/svelvet/edges/views/Edges/SimpleBezierEdge.svelte.d.ts +17 -0
  375. package/components/graph/svelvet/edges/views/Edges/SmoothStepEdge.svelte +176 -0
  376. package/components/graph/svelvet/edges/views/Edges/SmoothStepEdge.svelte.d.ts +60 -0
  377. package/components/graph/svelvet/edges/views/Edges/StepEdge.svelte +8 -0
  378. package/components/graph/svelvet/edges/views/Edges/StepEdge.svelte.d.ts +25 -0
  379. package/components/graph/svelvet/edges/views/Edges/types.d.ts +52 -0
  380. package/components/graph/svelvet/edges/views/Edges/types.js +1 -0
  381. package/components/graph/svelvet/edges/views/Edges/utils.d.ts +33 -0
  382. package/components/graph/svelvet/edges/views/Edges/utils.js +31 -0
  383. package/components/graph/svelvet/editEdges/views/EditEdge.svelte +151 -0
  384. package/components/graph/svelvet/editEdges/views/EditEdge.svelte.d.ts +20 -0
  385. package/components/graph/svelvet/nodes/controllers/util.d.ts +9 -0
  386. package/components/graph/svelvet/nodes/controllers/util.js +13 -0
  387. package/components/graph/svelvet/nodes/models/Node.d.ts +78 -0
  388. package/components/graph/svelvet/nodes/models/Node.js +195 -0
  389. package/components/graph/svelvet/nodes/views/EditNode.svelte +147 -0
  390. package/components/graph/svelvet/nodes/views/EditNode.svelte.d.ts +33 -0
  391. package/components/graph/svelvet/nodes/views/Node.svelte +85 -0
  392. package/components/graph/svelvet/nodes/views/Node.svelte.d.ts +22 -0
  393. package/components/graph/svelvet/resizableNodes/controllers/util.d.ts +11 -0
  394. package/components/graph/svelvet/resizableNodes/controllers/util.js +24 -0
  395. package/components/graph/svelvet/resizableNodes/models/ResizeNode.d.ts +33 -0
  396. package/components/graph/svelvet/resizableNodes/models/ResizeNode.js +71 -0
  397. package/components/graph/svelvet/resizableNodes/views/ResizeNode.svelte +81 -0
  398. package/components/graph/svelvet/resizableNodes/views/ResizeNode.svelte.d.ts +20 -0
  399. package/components/graph/svelvet/store/controllers/storeApi.d.ts +32 -0
  400. package/components/graph/svelvet/store/controllers/storeApi.js +111 -0
  401. package/components/graph/svelvet/store/controllers/userApi.d.ts +3 -0
  402. package/components/graph/svelvet/store/controllers/userApi.js +18 -0
  403. package/components/graph/svelvet/store/controllers/util.d.ts +31 -0
  404. package/components/graph/svelvet/store/controllers/util.js +180 -0
  405. package/components/graph/svelvet/store/models/store.d.ts +12 -0
  406. package/components/graph/svelvet/store/models/store.js +9 -0
  407. package/components/graph/svelvet/store/types/types.d.ts +134 -0
  408. package/components/graph/svelvet/store/types/types.js +1 -0
  409. package/components/graph/svelvet/types/README.md +3 -0
  410. package/components/graph/svelvet/types/index.d.ts +2 -0
  411. package/components/graph/svelvet/types/index.js +1 -0
  412. package/components/graph/svelvet/types/types.d.ts +49 -0
  413. package/components/graph/svelvet/types/types.js +18 -0
  414. package/components/graph/util.js +2 -2
  415. package/components/home/ItemsList.svelte +53 -5
  416. package/components/home/ItemsList.svelte.d.ts +1 -0
  417. package/components/home/ListFilters.svelte +7 -2
  418. package/components/jobs/JobDetail.svelte +12 -1
  419. package/components/propertyPicker/ObjectViewer.svelte +6 -4
  420. package/components/sidebar/SidebarContent.svelte +2 -2
  421. package/consts.d.ts +1 -0
  422. package/consts.js +1 -0
  423. package/defaults.d.ts +4 -0
  424. package/defaults.js +4 -0
  425. package/history.d.ts +9 -0
  426. package/history.js +63 -0
  427. package/package.json +87 -9
  428. package/script_helpers.d.ts +1 -1
  429. package/script_helpers.js +1 -0
  430. package/scripts.d.ts +1 -1
  431. package/scripts.js +8 -1
  432. package/utils.d.ts +9 -4
  433. package/utils.js +43 -8
  434. package/components/apps/editor/TablePanel.svelte +0 -19
  435. package/components/apps/editor/TablePanel.svelte.d.ts +0 -17
  436. package/components/apps/editor/settingsPanel/MoveToOtherGrid.svelte +0 -85
  437. package/components/apps/editor/settingsPanel/MoveToOtherGrid.svelte.d.ts +0 -18
  438. package/components/flows/map/FlowBranchAllMap.svelte +0 -100
  439. package/components/flows/map/FlowBranchAllMap.svelte.d.ts +0 -17
  440. package/components/flows/map/FlowBranchOneMap.svelte +0 -124
  441. package/components/flows/map/FlowBranchOneMap.svelte.d.ts +0 -17
@@ -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
  >
@@ -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)) {
@@ -126,7 +119,7 @@ $: schema.properties[argName].default && setDefaultCode();
126
119
  {/if}
127
120
  </div>
128
121
  {#if !noDynamicToggle}
129
- <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">
130
123
  <ToggleButtonGroup
131
124
  bind:selected={propertyType}
132
125
  on:selected={(e) => {
@@ -168,10 +161,10 @@ $: schema.properties[argName].default && setDefaultCode();
168
161
  >
169
162
  {#if isStaticTemplate(inputCat)}
170
163
  <ToggleButton light position="left" value="static" size="xs">
171
- {'${} '}Template &nbsp; <Tooltip
172
- >Write javascript expressions between "{openBracket}" and "{closeBracket}". You may
173
- refer to contextual objects like 'flow_input', or 'result' or functions like
174
- '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.
175
168
  </Tooltip></ToggleButton
176
169
  >
177
170
  {:else}
@@ -184,9 +177,11 @@ $: schema.properties[argName].default && setDefaultCode();
184
177
  value="javascript"
185
178
  startIcon={{ icon: faCode }}
186
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
187
184
  >
188
- Dynamic (JS)
189
- </ToggleButton>
190
185
  </ToggleButtonGroup>
191
186
  <Button
192
187
  variant="contained"
@@ -277,6 +272,4 @@ $: schema.properties[argName].default && setDefaultCode();
277
272
  Not recognized input type {argName}
278
273
  {/if}
279
274
  </div>
280
- {:else}
281
- <p class="text-sm text-gray-700">Argument at {argName} is undefined</p>
282
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 {};
@@ -35,7 +35,7 @@ let logViewer;
35
35
  <button on:click={logViewer.openDrawer}>Expand</button>
36
36
  <div class="py-2 pr-2 text-xs flex gap-2 items-center">
37
37
  Auto scroll
38
- <input type="checkbox" bind:checked={scroll} />
38
+ <input class="windmillapp" type="checkbox" bind:checked={scroll} />
39
39
  </div>
40
40
  </div>
41
41
  </div>
@@ -6,12 +6,12 @@ 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, testStepStore } 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;
@@ -78,6 +78,7 @@ function jobDone() {
78
78
  detailed={false}
79
79
  topButton
80
80
  bind:args={stepArgs}
81
+ isFlow={false}
81
82
  />
82
83
  {#if testIsLoading}
83
84
  <Button on:click={testJobLoader?.cancelJob} btnClasses="w-full mt-4" color="red" size="sm">
@@ -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}
@@ -9,7 +9,7 @@ export let primary = true;
9
9
  <span class="flex items-center space-x-2 mb-2">
10
10
  <h1>{title}</h1>
11
11
  {#if tooltip}
12
- <Tooltip>{tooltip}</Tooltip>
12
+ <Tooltip scale={0.9}>{tooltip}</Tooltip>
13
13
  {/if}
14
14
  </span>
15
15
  {:else}
@@ -12,6 +12,7 @@ import Tooltip from './Tooltip.svelte';
12
12
  import FolderEditor from './FolderEditor.svelte';
13
13
  import GroupEditor from './GroupEditor.svelte';
14
14
  import { random_adj } from './random_positive_adjetive';
15
+ import Badge from './common/badge/Badge.svelte';
15
16
  let meta = undefined;
16
17
  export let namePlaceholder = '';
17
18
  export let initialPath;
@@ -243,15 +244,19 @@ async function addGroup() {
243
244
  folderCreated = undefined
244
245
  }}
245
246
  >
246
- <div class="flex flex-row">
247
- <input class="mr-2" placeholder="New folder name" bind:value={newFolderName} />
248
- <Button size="md" startIcon={{ icon: faPlus }} disabled={!newFolderName} on:click={addFolder}>
249
- New&nbsp;folder
250
- </Button>
251
- </div>
252
-
253
- {#if folderCreated}
254
- <div class="mt-8" />
247
+ {#if !folderCreated}
248
+ <div class="flex flex-row">
249
+ <input class="mr-2" placeholder="New folder name" bind:value={newFolderName} />
250
+ <Button
251
+ size="md"
252
+ startIcon={{ icon: faPlus }}
253
+ disabled={!newFolderName}
254
+ on:click={addFolder}
255
+ >
256
+ New&nbsp;folder
257
+ </Button>
258
+ </div>
259
+ {:else}
255
260
  <FolderEditor name={folderCreated} />
256
261
  {/if}
257
262
  </DrawerContent>
@@ -268,7 +273,7 @@ async function addGroup() {
268
273
  {#if meta != undefined}
269
274
  <div class="flex gap-4 shrink">
270
275
  <label class="block">
271
- <span class="text-gray-700 text-sm whitespace-nowrap">&nbsp;</span>
276
+ <span class="text-gray-700 text-sm whitespace-nowrap">Owner</span>
272
277
 
273
278
  <ToggleButtonGroup
274
279
  class="mt-0.5"
@@ -371,8 +376,26 @@ async function addGroup() {
371
376
  {/if}
372
377
  </div>
373
378
 
374
- <div class="flex-row flex justify-between">
375
- <div><span class="font-mono text-sm">{path}</span></div>
379
+ <div class="flex flex-col w-full mt-4">
380
+ <div class="flex justify-start w-full">
381
+ <Badge
382
+ color="gray"
383
+ class="center-center !bg-gray-300 !text-gray-600 !w-[70px] !h-[24px] rounded-r-none"
384
+ >
385
+ Full path
386
+ </Badge>
387
+ <input
388
+ type="text"
389
+ readonly
390
+ value={path}
391
+ size={path?.length || 50}
392
+ class="font-mono !text-xs max-w-[calc(100%-70px)] !w-auto !h-[24px] !py-0 !border-l-0 !rounded-l-none"
393
+ on:focus={({ currentTarget }) => {
394
+ currentTarget.select()
395
+ }}
396
+ />
397
+ <!-- <span class="font-mono text-sm break-all">{path}</span> -->
398
+ </div>
376
399
  <div class="text-red-600 text-2xs">{error}</div>
377
400
  </div>
378
401
  </div>
@@ -42,22 +42,11 @@ function close() {
42
42
  </script>
43
43
 
44
44
  {#if notClickable}
45
- <span
46
- use:popperRef
47
- on:mouseenter={open}
48
- on:mouseleave={close}
49
- class={$$props.class}
50
- >
45
+ <span use:popperRef on:mouseenter={open} on:mouseleave={close} class={$$props.class}>
51
46
  <slot />
52
47
  </span>
53
48
  {:else}
54
- <button
55
- use:popperRef
56
- on:mouseenter={open}
57
- on:mouseleave={close}
58
- on:click
59
- class={$$props.class}
60
- >
49
+ <button use:popperRef on:mouseenter={open} on:mouseleave={close} on:click class={$$props.class}>
61
50
  <slot />
62
51
  </button>
63
52
  {/if}
@@ -7,15 +7,30 @@ import { Button } from './common';
7
7
  import Select from 'svelte-select';
8
8
  import AppConnect from './AppConnect.svelte';
9
9
  import ResourceEditor from './ResourceEditor.svelte';
10
+ import { SELECT_INPUT_DEFAULT_STYLE } from '../defaults';
10
11
  const dispatch = createEventDispatcher();
11
- let resources = [];
12
12
  export let initialValue = undefined;
13
13
  export let value = initialValue;
14
14
  export let resourceType = undefined;
15
+ let valueSelect = initialValue || value
16
+ ? {
17
+ value: value ?? initialValue,
18
+ label: value ?? initialValue
19
+ }
20
+ : undefined;
21
+ let collection = [valueSelect];
15
22
  async function loadResources(resourceType) {
16
- const v = value;
17
- resources = await ResourceService.listResource({ workspace: $workspaceStore, resourceType });
18
- value = v;
23
+ const nc = (await ResourceService.listResource({
24
+ workspace: $workspaceStore,
25
+ resourceType
26
+ })).map((x) => ({
27
+ value: x.path,
28
+ label: x.path
29
+ }));
30
+ if (!nc.find((x) => x.value == value) && (initialValue || value)) {
31
+ nc.push({ value: value ?? initialValue, label: value ?? initialValue });
32
+ }
33
+ collection = nc;
19
34
  }
20
35
  $: {
21
36
  if ($workspaceStore) {
@@ -23,10 +38,6 @@ $: {
23
38
  }
24
39
  }
25
40
  $: dispatch('change', value);
26
- $: collection = resources.map((x) => ({
27
- value: x.path,
28
- label: x.path
29
- }));
30
41
  let appConnect;
31
42
  let resourceEditor;
32
43
  </script>
@@ -35,6 +46,7 @@ let resourceEditor;
35
46
  on:refresh={async (e) => {
36
47
  await loadResources(resourceType)
37
48
  value = e.detail
49
+ valueSelect = { value: e.detail, label: e.detail }
38
50
  }}
39
51
  newPageOAuth
40
52
  bind:this={appConnect}
@@ -44,22 +56,29 @@ let resourceEditor;
44
56
  bind:this={resourceEditor}
45
57
  on:refresh={async (e) => {
46
58
  await loadResources(resourceType)
47
- console.log(e)
48
59
  if (e.detail) {
49
60
  value = e.detail
61
+ valueSelect = { value: e.detail, label: e.detail }
50
62
  }
51
63
  }}
52
64
  />
53
65
 
54
66
  <div class="flex flex-row gap-x-1 w-full">
55
67
  <Select
56
- listAutoWidth={false}
57
- --height="34px"
58
- value={collection.find((x) => x.value == value)}
59
- bind:justValue={value}
68
+ value={valueSelect}
69
+ on:change={(e) => {
70
+ value = e.detail.value
71
+ valueSelect = e.detail
72
+ }}
73
+ on:clear={() => {
74
+ value = undefined
75
+ valueSelect = undefined
76
+ }}
60
77
  items={collection}
61
78
  class="text-clip grow min-w-0"
62
- placeholder="{resourceType} resource"
79
+ placeholder="{resourceType ?? 'any'} resource"
80
+ inputStyles={SELECT_INPUT_DEFAULT_STYLE.inputStyles}
81
+ containerStyles={SELECT_INPUT_DEFAULT_STYLE.containerStyles}
63
82
  />
64
83
  {#if value && value != ''}
65
84
  <Button variant="border" size="xs" on:click={() => resourceEditor?.initEdit?.(value ?? '')}>
@@ -16,7 +16,7 @@ $: data = {
16
16
  backgroundColor: '#f87171',
17
17
  label: 'Failed',
18
18
  data: failed?.map((job) => ({
19
- x: job.created_at,
19
+ x: job.started_at,
20
20
  y: job.duration_ms,
21
21
  id: job.id,
22
22
  path: job.script_path
@@ -27,7 +27,7 @@ $: data = {
27
27
  backgroundColor: '#4ade80',
28
28
  label: 'Successful',
29
29
  data: success?.map((job) => ({
30
- x: job.created_at,
30
+ x: job.started_at,
31
31
  y: job.duration_ms,
32
32
  id: job.id,
33
33
  path: job.script_path
@@ -40,7 +40,10 @@ const zoomOptions = {
40
40
  enabled: true,
41
41
  modifierKey: 'ctrl',
42
42
  onPanComplete: ({ chart }) => {
43
- dispatch('zoom', { min: new Date(chart.scales.x.min), max: new Date(chart.scales.x.max) });
43
+ dispatch('zoom', {
44
+ min: addSeconds(new Date(chart.scales.x.min), -1),
45
+ max: addSeconds(new Date(chart.scales.x.max), 1)
46
+ });
44
47
  }
45
48
  },
46
49
  zoom: {
@@ -49,13 +52,28 @@ const zoomOptions = {
49
52
  },
50
53
  mode: 'x',
51
54
  onZoom: ({ chart }) => {
52
- dispatch('zoom', { min: new Date(chart.scales.x.min), max: new Date(chart.scales.x.max) });
55
+ dispatch('zoom', {
56
+ min: addSeconds(new Date(chart.scales.x.min), -1),
57
+ max: addSeconds(new Date(chart.scales.x.max), 1)
58
+ });
53
59
  }
54
60
  }
55
61
  };
56
62
  function getPath(x) {
57
63
  return x.path;
58
64
  }
65
+ $: minTime = getMinTime(jobs);
66
+ function addSeconds(date, seconds) {
67
+ date.setTime(date.getTime() + seconds * 1000);
68
+ return date;
69
+ }
70
+ function getMinTime(jobs) {
71
+ return addSeconds(new Date(jobs?.[jobs?.length - 1]?.started_at ?? new Date().toString()), -15);
72
+ }
73
+ $: maxTime = getMaxTime(jobs);
74
+ function getMaxTime(jobs) {
75
+ return addSeconds(new Date(jobs?.[0]?.started_at ?? new Date().toString()), 15);
76
+ }
59
77
  </script>
60
78
 
61
79
  <Scatter
@@ -83,7 +101,8 @@ function getPath(x) {
83
101
  display: false
84
102
  },
85
103
  type: 'time',
86
- min: jobs?.[jobs?.length - 1]?.created_at ?? new Date().toString()
104
+ min: minTime,
105
+ max: maxTime
87
106
  },
88
107
  y: {
89
108
  grid: {
@@ -20,6 +20,7 @@ export let topButton = false;
20
20
  export let loading = false;
21
21
  export let noVariablePicker = false;
22
22
  export let viewCliRun = false;
23
+ export let isFlow;
23
24
  export let args = decodeArgs($page.url.searchParams.get('args') ?? undefined);
24
25
  export function run() {
25
26
  runAction(scheduledForStr, args, invisible_to_owner);
@@ -29,9 +30,7 @@ let viewOptions = false;
29
30
  let viewCliOptions = false;
30
31
  let scheduledForStr;
31
32
  let invisible_to_owner;
32
- $: cliCommand = `wmill ${runnable?.kind} run ${runnable?.path} ${Object.entries(args)
33
- .map(([k, v]) => `-i ${k}=${JSON.stringify(v)}`)
34
- .join(' ')}`;
33
+ $: cliCommand = `wmill ${isFlow ? 'flow' : 'script'} run ${runnable?.path} -d '${JSON.stringify(args)}'`;
35
34
  </script>
36
35
 
37
36
  <div class="max-w-6xl">
@@ -110,7 +109,7 @@ $: cliCommand = `wmill ${runnable?.kind} run ${runnable?.path} ${Object.entries(
110
109
  </Button>
111
110
  </div>
112
111
  {#if viewOptions}
113
- <div transition:slide class="mt-6">
112
+ <div transition:slide|local class="mt-6">
114
113
  <div class="border rounded-md p-3 pt-4">
115
114
  <div class="flex flex-row items-end">
116
115
  <div class="w-max md:w-2/3 mt-2 mb-1">
@@ -178,14 +177,14 @@ $: cliCommand = `wmill ${runnable?.kind} run ${runnable?.path} ${Object.entries(
178
177
  <div class="my-10" />
179
178
  <Button
180
179
  color="light"
181
- size="sm"
180
+ size="xs"
182
181
  endIcon={{ icon: viewCliOptions ? faChevronUp : faChevronDown }}
183
182
  on:click={() => (viewCliOptions = !viewCliOptions)}
184
183
  >
185
184
  Run it from the CLI
186
185
  </Button>
187
186
  {#if viewCliOptions}
188
- <div transition:slide class="mt-2 px-4 pt-2">
187
+ <div transition:slide|local class="mt-2 px-4 pt-2">
189
188
  <InlineCodeCopy content={cliCommand} />
190
189
  <CliHelpBox />
191
190
  </div>
@@ -24,6 +24,7 @@ declare const __propDef: {
24
24
  loading?: boolean | undefined;
25
25
  noVariablePicker?: boolean | undefined;
26
26
  viewCliRun?: boolean | undefined;
27
+ isFlow: boolean;
27
28
  args?: Record<string, any> | undefined;
28
29
  run?: (() => void) | undefined;
29
30
  isValid?: boolean | undefined;