windmill-components 1.70.0 → 1.75.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (408) hide show
  1. package/assets/app.css +12 -1
  2. package/components/AppConnect.svelte +4 -3
  3. package/components/DisplayResult.svelte +27 -9
  4. package/components/FieldHeader.svelte +12 -8
  5. package/components/FlowBuilder.svelte +107 -39
  6. package/components/FlowBuilder.svelte.d.ts +5 -0
  7. package/components/FlowGraphViewer.svelte +5 -4
  8. package/components/FlowJobResult.svelte +3 -3
  9. package/components/FlowPreviewContent.svelte +3 -8
  10. package/components/FlowStatusViewer.svelte +21 -8
  11. package/components/GroupEditor.svelte +8 -0
  12. package/components/InputTransformForm.svelte +13 -20
  13. package/components/InputTransformSchemaForm.svelte +103 -0
  14. package/components/InputTransformSchemaForm.svelte.d.ts +24 -0
  15. package/components/LogViewer.svelte +1 -1
  16. package/components/ModulePreview.svelte +3 -2
  17. package/components/Multiselect.svelte +1 -1
  18. package/components/Path.svelte +15 -11
  19. package/components/Popover.svelte +2 -13
  20. package/components/ResourcePicker.svelte +33 -14
  21. package/components/RunChart.svelte +24 -5
  22. package/components/RunForm.svelte +5 -6
  23. package/components/RunForm.svelte.d.ts +1 -0
  24. package/components/SchemaForm.svelte +59 -57
  25. package/components/SchemaForm.svelte.d.ts +0 -5
  26. package/components/ScriptBuilder.svelte +30 -14
  27. package/components/ScriptPicker.svelte +3 -0
  28. package/components/SimpleEditor.svelte +4 -1
  29. package/components/SimpleEditor.svelte.d.ts +2 -0
  30. package/components/Slider.svelte +6 -1
  31. package/components/Slider.svelte.d.ts +1 -0
  32. package/components/TemplateEditor.svelte +1 -1
  33. package/components/TestJobLoader.svelte +2 -2
  34. package/components/Toggle.svelte +17 -4
  35. package/components/Toggle.svelte.d.ts +2 -0
  36. package/components/Tooltip.svelte +1 -1
  37. package/components/UserSettings.svelte +2 -0
  38. package/components/apps/components/buttons/AppButton.svelte +38 -22
  39. package/components/apps/components/buttons/AppButton.svelte.d.ts +1 -0
  40. package/components/apps/components/buttons/AppForm.svelte +16 -6
  41. package/components/apps/components/buttons/AppForm.svelte.d.ts +3 -0
  42. package/components/apps/components/buttons/AppFormButton.svelte +12 -4
  43. package/components/apps/components/buttons/AppFormButton.svelte.d.ts +3 -0
  44. package/components/apps/components/display/AppBarChart.svelte +15 -7
  45. package/components/apps/components/display/AppBarChart.svelte.d.ts +3 -0
  46. package/components/apps/components/display/AppDisplayComponent.svelte +17 -12
  47. package/components/apps/components/display/AppDisplayComponent.svelte.d.ts +1 -0
  48. package/components/apps/components/display/AppHtml.svelte +18 -4
  49. package/components/apps/components/display/AppHtml.svelte.d.ts +3 -0
  50. package/components/apps/components/display/AppIcon.svelte +20 -8
  51. package/components/apps/components/display/AppIcon.svelte.d.ts +3 -0
  52. package/components/apps/components/display/AppImage.svelte +17 -10
  53. package/components/apps/components/display/AppImage.svelte.d.ts +3 -0
  54. package/components/apps/components/display/AppMap.svelte +214 -0
  55. package/components/apps/components/display/AppMap.svelte.d.ts +23 -0
  56. package/components/apps/components/display/AppPdf.svelte +304 -0
  57. package/components/apps/components/display/AppPdf.svelte.d.ts +24 -0
  58. package/components/apps/components/display/AppPieChart.svelte +15 -7
  59. package/components/apps/components/display/AppPieChart.svelte.d.ts +3 -0
  60. package/components/apps/components/display/AppScatterChart.svelte +12 -4
  61. package/components/apps/components/display/AppScatterChart.svelte.d.ts +3 -0
  62. package/components/apps/components/display/AppText.svelte +38 -32
  63. package/components/apps/components/display/AppText.svelte.d.ts +1 -0
  64. package/components/apps/components/display/AppTimeseries.svelte +12 -4
  65. package/components/apps/components/display/AppTimeseries.svelte.d.ts +3 -0
  66. package/components/apps/components/display/PlotlyHtml.svelte +8 -14
  67. package/components/apps/components/display/PlotlyHtml.svelte.d.ts +1 -1
  68. package/components/apps/components/display/VegaLiteHtml.svelte +3 -8
  69. package/components/apps/components/display/VegaLiteHtml.svelte.d.ts +1 -0
  70. package/components/apps/components/display/index.d.ts +3 -0
  71. package/components/apps/components/display/index.js +3 -0
  72. package/components/apps/components/display/table/AppAggridTable.svelte +16 -7
  73. package/components/apps/components/display/table/AppAggridTable.svelte.d.ts +1 -0
  74. package/components/apps/components/display/table/AppTable.svelte +65 -20
  75. package/components/apps/components/display/table/AppTable.svelte.d.ts +3 -1
  76. package/components/apps/components/display/table/AppTableFooter.svelte +8 -1
  77. package/components/apps/components/display/table/AppTableFooter.svelte.d.ts +2 -0
  78. package/components/apps/components/helpers/AlignWrapper.svelte +13 -7
  79. package/components/apps/components/helpers/AlignWrapper.svelte.d.ts +3 -1
  80. package/components/apps/components/helpers/HiddenComponent.svelte +2 -1
  81. package/components/apps/components/helpers/InputValue.svelte +38 -15
  82. package/components/apps/components/helpers/NonRunnableComponent.svelte +18 -3
  83. package/components/apps/components/helpers/NonRunnableComponent.svelte.d.ts +1 -0
  84. package/components/apps/components/helpers/RefreshButton.svelte +1 -1
  85. package/components/apps/components/helpers/ResizeWrapper.svelte +24 -0
  86. package/components/apps/components/helpers/ResizeWrapper.svelte.d.ts +19 -0
  87. package/components/apps/components/helpers/RunnableComponent.svelte +76 -68
  88. package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +3 -1
  89. package/components/apps/components/helpers/RunnableWrapper.svelte +9 -5
  90. package/components/apps/components/helpers/RunnableWrapper.svelte.d.ts +3 -1
  91. package/components/apps/components/inputs/AppCheckbox.svelte +8 -2
  92. package/components/apps/components/inputs/AppCheckbox.svelte.d.ts +3 -0
  93. package/components/apps/components/inputs/AppDateInput.svelte +25 -18
  94. package/components/apps/components/inputs/AppDateInput.svelte.d.ts +6 -1
  95. package/components/apps/components/inputs/AppFileInput.svelte +22 -14
  96. package/components/apps/components/inputs/AppFileInput.svelte.d.ts +3 -0
  97. package/components/apps/components/inputs/AppMultiSelect.svelte +82 -0
  98. package/components/apps/components/inputs/AppMultiSelect.svelte.d.ts +27 -0
  99. package/components/apps/components/inputs/AppNumberInput.svelte +20 -16
  100. package/components/apps/components/inputs/AppNumberInput.svelte.d.ts +5 -0
  101. package/components/apps/components/inputs/AppRangeInput.svelte +55 -14
  102. package/components/apps/components/inputs/AppRangeInput.svelte.d.ts +3 -0
  103. package/components/apps/components/inputs/AppSelect.svelte +58 -21
  104. package/components/apps/components/inputs/AppSelect.svelte.d.ts +3 -0
  105. package/components/apps/components/inputs/AppSliderInputs.svelte +41 -9
  106. package/components/apps/components/inputs/AppSliderInputs.svelte.d.ts +3 -0
  107. package/components/apps/components/inputs/AppTextInput.svelte +53 -19
  108. package/components/apps/components/inputs/AppTextInput.svelte.d.ts +6 -0
  109. package/components/apps/components/inputs/currency/AppCurrencyInput.svelte +13 -3
  110. package/components/apps/components/inputs/currency/AppCurrencyInput.svelte.d.ts +3 -0
  111. package/components/apps/components/inputs/currency/CurrencyInput.svelte +2 -0
  112. package/components/apps/components/inputs/currency/CurrencyInput.svelte.d.ts +1 -0
  113. package/components/apps/components/layout/AppContainer.svelte +21 -13
  114. package/components/apps/components/layout/AppContainer.svelte.d.ts +3 -0
  115. package/components/apps/components/layout/AppDivider.svelte +24 -4
  116. package/components/apps/components/layout/AppDivider.svelte.d.ts +3 -1
  117. package/components/apps/components/layout/AppDrawer.svelte +89 -0
  118. package/components/apps/components/layout/AppDrawer.svelte.d.ts +24 -0
  119. package/components/apps/components/layout/AppSplitpanes.svelte +88 -0
  120. package/components/apps/components/layout/AppSplitpanes.svelte.d.ts +26 -0
  121. package/components/apps/components/layout/AppTabs.svelte +62 -21
  122. package/components/apps/components/layout/AppTabs.svelte.d.ts +3 -0
  123. package/components/apps/components/layout/index.d.ts +2 -0
  124. package/components/apps/components/layout/index.js +2 -0
  125. package/components/apps/editor/AppEditor.svelte +83 -19
  126. package/components/apps/editor/AppEditor.svelte.d.ts +3 -1
  127. package/components/apps/editor/AppEditorHeader.svelte +107 -32
  128. package/components/apps/editor/AppInputs.svelte +3 -3
  129. package/components/apps/editor/AppPreview.svelte +20 -7
  130. package/components/apps/editor/ComponentHeader.svelte +14 -3
  131. package/components/apps/editor/ComponentHeader.svelte.d.ts +1 -0
  132. package/components/apps/editor/GridEditor.svelte +85 -71
  133. package/components/apps/editor/GridPanel.svelte +29 -0
  134. package/components/apps/editor/GridPanel.svelte.d.ts +18 -0
  135. package/components/apps/editor/RecomputeAllComponents.svelte +8 -6
  136. package/components/apps/editor/SettingsPanel.svelte +14 -24
  137. package/components/apps/editor/SubGridEditor.svelte +46 -18
  138. package/components/apps/editor/SubGridEditor.svelte.d.ts +5 -0
  139. package/components/apps/editor/appUtils.d.ts +12 -2
  140. package/components/apps/editor/appUtils.js +121 -21
  141. package/components/apps/editor/component/Component.svelte +282 -57
  142. package/components/apps/editor/component/Component.svelte.d.ts +3 -1
  143. package/components/apps/editor/component/ComponentNavigation.svelte +125 -0
  144. package/components/apps/editor/component/ComponentNavigation.svelte.d.ts +14 -0
  145. package/components/apps/editor/component/components.d.ts +14 -2
  146. package/components/apps/editor/component/components.js +417 -43
  147. package/components/apps/editor/component/default-codes.js +6 -6
  148. package/components/apps/editor/component/sets.js +11 -3
  149. package/components/apps/editor/componentsPanel/ComponentList.svelte +72 -29
  150. package/components/apps/editor/componentsPanel/CssProperty.svelte +59 -23
  151. package/components/apps/editor/componentsPanel/CssProperty.svelte.d.ts +2 -1
  152. package/components/apps/editor/componentsPanel/CssSettings.svelte +56 -9
  153. package/components/apps/editor/componentsPanel/ListItem.svelte +23 -12
  154. package/components/apps/editor/componentsPanel/componentStaticValues.d.ts +1 -0
  155. package/components/apps/editor/componentsPanel/componentStaticValues.js +14 -2
  156. package/components/apps/editor/contextPanel/ComponentOutputViewer.svelte +1 -1
  157. package/components/apps/editor/contextPanel/ContextPanel.svelte +107 -61
  158. package/components/apps/editor/inlineScriptsPanel/EmptyInlineScript.svelte +13 -3
  159. package/components/apps/editor/inlineScriptsPanel/EmptyInlineScript.svelte.d.ts +1 -0
  160. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte +63 -25
  161. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte.d.ts +5 -0
  162. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorPanel.svelte +11 -5
  163. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorPanel.svelte.d.ts +1 -0
  164. package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanel.svelte +26 -17
  165. package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelList.svelte +95 -85
  166. package/components/apps/editor/inlineScriptsPanel/utils.d.ts +5 -9
  167. package/components/apps/editor/inlineScriptsPanel/utils.js +19 -8
  168. package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +10 -9
  169. package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte.d.ts +21 -12
  170. package/components/apps/editor/settingsPanel/ComponentInputTypeEditor.svelte +1 -1
  171. package/components/apps/editor/settingsPanel/ComponentPanel.svelte +95 -56
  172. package/components/apps/editor/settingsPanel/ComponentPanel.svelte.d.ts +1 -0
  173. package/components/apps/editor/settingsPanel/GridPane.svelte +75 -0
  174. package/components/apps/editor/settingsPanel/GridPane.svelte.d.ts +20 -0
  175. package/components/apps/editor/settingsPanel/GridTab.svelte +5 -5
  176. package/components/apps/editor/settingsPanel/GridTab.svelte.d.ts +2 -0
  177. package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +2 -1
  178. package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +1 -1
  179. package/components/apps/editor/settingsPanel/MoveToOtherGrid.svelte +13 -6
  180. package/components/apps/editor/settingsPanel/Recompute.svelte +1 -1
  181. package/components/apps/editor/settingsPanel/SelectedRunnable.svelte +1 -1
  182. package/components/apps/editor/settingsPanel/TableActions.svelte +28 -1
  183. package/components/apps/editor/settingsPanel/common/PanelSection.svelte +2 -2
  184. package/components/apps/editor/settingsPanel/inputEditor/ColorInput.svelte +48 -0
  185. package/components/apps/editor/settingsPanel/inputEditor/ColorInput.svelte.d.ts +19 -0
  186. package/components/apps/editor/settingsPanel/inputEditor/ConnectedInputEditor.svelte +1 -1
  187. package/components/apps/editor/settingsPanel/inputEditor/EvalInputEditor.svelte +1 -1
  188. package/components/apps/editor/settingsPanel/inputEditor/IconSelectInput.svelte +27 -3
  189. package/components/apps/editor/settingsPanel/inputEditor/IconSelectInput.svelte.d.ts +2 -0
  190. package/components/apps/editor/settingsPanel/inputEditor/JsonEditor.svelte +2 -2
  191. package/components/apps/editor/settingsPanel/inputEditor/JsonEditor.svelte.d.ts +2 -1
  192. package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +54 -6
  193. package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte.d.ts +1 -0
  194. package/components/apps/editor/settingsPanel/inputEditor/UploadInputEditor.svelte +7 -9
  195. package/components/apps/editor/settingsPanel/inputEditor/UploadInputEditor.svelte.d.ts +1 -1
  196. package/components/apps/editor/settingsPanel/mainInput/InlineScriptList.svelte +1 -0
  197. package/components/apps/editor/settingsPanel/mainInput/InlineScriptList.svelte.d.ts +1 -0
  198. package/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte +1 -1
  199. package/components/apps/inputType.d.ts +6 -5
  200. package/components/apps/rx.js +2 -1
  201. package/components/apps/store.d.ts +6 -1
  202. package/components/apps/types.d.ts +14 -4
  203. package/components/apps/utils.d.ts +2 -2
  204. package/components/apps/utils.js +21 -49
  205. package/components/common/button/ButtonPopup.svelte +2 -0
  206. package/components/common/button/ButtonPopup.svelte.d.ts +1 -0
  207. package/components/common/button/UndoRedo.svelte +32 -0
  208. package/components/common/button/UndoRedo.svelte.d.ts +20 -0
  209. package/components/common/drawer/Drawer.svelte +10 -4
  210. package/components/common/drawer/Drawer.svelte.d.ts +3 -1
  211. package/components/common/drawer/DrawerContent.svelte +0 -1
  212. package/components/common/fileInput/FileInput.svelte +47 -21
  213. package/components/common/fileInput/FileInput.svelte.d.ts +3 -1
  214. package/components/common/fileInput/model.d.ts +1 -0
  215. package/components/common/fileInput/model.js +1 -0
  216. package/components/common/index.d.ts +1 -0
  217. package/components/common/index.js +1 -0
  218. package/components/common/menu/Menu.svelte +3 -2
  219. package/components/common/menu/Menu.svelte.d.ts +2 -1
  220. package/components/common/modal/Modal.svelte +9 -4
  221. package/components/common/modal/Modal.svelte.d.ts +2 -0
  222. package/components/common/table/AppRow.svelte +13 -4
  223. package/components/common/table/AppRow.svelte.d.ts +1 -0
  224. package/components/common/table/FlowRow.svelte +21 -8
  225. package/components/common/table/FlowRow.svelte.d.ts +1 -0
  226. package/components/common/table/ScriptRow.svelte +42 -10
  227. package/components/common/table/ScriptRow.svelte.d.ts +1 -0
  228. package/components/common/tabs/Tab.svelte +12 -5
  229. package/components/common/tabs/Tab.svelte.d.ts +4 -1
  230. package/components/common/tabs/Tabs.svelte +8 -6
  231. package/components/common/tabs/Tabs.svelte.d.ts +3 -1
  232. package/components/flows/FlowEditor.svelte +6 -4
  233. package/components/flows/common/FlowCardHeader.svelte +4 -1
  234. package/components/flows/content/BranchPredicateEditor.svelte +3 -4
  235. package/components/flows/content/CapturePayload.svelte +1 -2
  236. package/components/flows/content/FlowBranchesAllWrapper.svelte +1 -1
  237. package/components/flows/content/FlowConstants.svelte +7 -13
  238. package/components/flows/content/FlowEditorPanel.svelte +4 -3
  239. package/components/flows/content/FlowFailureModule.svelte +2 -1
  240. package/components/flows/content/FlowInput.svelte +4 -2
  241. package/components/flows/content/FlowLoop.svelte +3 -4
  242. package/components/flows/content/FlowModuleComponent.svelte +23 -11
  243. package/components/flows/content/FlowModuleEarlyStop.svelte +3 -1
  244. package/components/flows/content/FlowModuleHeader.svelte +26 -3
  245. package/components/flows/content/FlowModuleHeader.svelte.d.ts +1 -0
  246. package/components/flows/content/FlowModuleSleep.svelte +2 -2
  247. package/components/flows/content/FlowModuleWrapper.svelte +2 -8
  248. package/components/flows/content/FlowSchedules.svelte +1 -2
  249. package/components/flows/content/FlowSettings.svelte +17 -37
  250. package/components/flows/content/ScriptEditorDrawer.svelte +98 -0
  251. package/components/flows/content/ScriptEditorDrawer.svelte.d.ts +19 -0
  252. package/components/flows/flowState.d.ts +2 -3
  253. package/components/flows/flowState.js +1 -4
  254. package/components/flows/flowStateUtils.d.ts +7 -6
  255. package/components/flows/flowStateUtils.js +5 -9
  256. package/components/flows/flowStore.d.ts +5 -4
  257. package/components/flows/flowStore.js +5 -17
  258. package/components/flows/header/FlowImportExportMenu.svelte +2 -1
  259. package/components/flows/map/FlowConstantsItem.svelte +2 -2
  260. package/components/flows/map/FlowErrorHandlerItem.svelte +12 -13
  261. package/components/flows/map/FlowInputsItem.svelte +2 -3
  262. package/components/flows/map/FlowModuleSchemaItem.svelte +88 -91
  263. package/components/flows/map/FlowModuleSchemaItem.svelte.d.ts +3 -3
  264. package/components/flows/map/FlowModuleSchemaMap.svelte +164 -138
  265. package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +1 -2
  266. package/components/flows/map/FlowSettingsItem.svelte +5 -4
  267. package/components/flows/map/InsertModuleButton.svelte +12 -10
  268. package/components/flows/map/InsertModuleButton.svelte.d.ts +1 -0
  269. package/components/flows/map/MapItem.svelte +176 -103
  270. package/components/flows/map/MapItem.svelte.d.ts +20 -2
  271. package/components/flows/map/VirtualItem.svelte +129 -0
  272. package/components/flows/map/VirtualItem.svelte.d.ts +44 -0
  273. package/components/flows/pickers/WorkspaceScriptPicker.svelte +1 -1
  274. package/components/flows/previousResults.d.ts +1 -1
  275. package/components/flows/previousResults.js +32 -17
  276. package/components/flows/types.d.ts +13 -1
  277. package/components/flows/utils.js +1 -1
  278. package/components/graph/FlowGraph.svelte +227 -167
  279. package/components/graph/FlowGraph.svelte.d.ts +14 -1
  280. package/components/graph/model.d.ts +6 -36
  281. package/components/graph/model.js +1 -1
  282. package/components/graph/svelvet/LICENSE +21 -0
  283. package/components/graph/svelvet/collapsible/controllers/util.d.ts +15 -0
  284. package/components/graph/svelvet/collapsible/controllers/util.js +144 -0
  285. package/components/graph/svelvet/collapsible/models/Collapsible.d.ts +17 -0
  286. package/components/graph/svelvet/collapsible/models/Collapsible.js +25 -0
  287. package/components/graph/svelvet/collapsible/types/types.d.ts +8 -0
  288. package/components/graph/svelvet/collapsible/types/types.js +1 -0
  289. package/components/graph/svelvet/container/README.md +7 -0
  290. package/components/graph/svelvet/container/controllers/middleware.d.ts +18 -0
  291. package/components/graph/svelvet/container/controllers/middleware.js +101 -0
  292. package/components/graph/svelvet/container/views/GraphView.svelte +252 -0
  293. package/components/graph/svelvet/container/views/GraphView.svelte.d.ts +25 -0
  294. package/components/graph/svelvet/container/views/Svelvet.svelte +131 -0
  295. package/components/graph/svelvet/container/views/Svelvet.svelte.d.ts +41 -0
  296. package/components/graph/svelvet/customCss/controllers/getCss.d.ts +2 -0
  297. package/components/graph/svelvet/customCss/controllers/getCss.js +57 -0
  298. package/components/graph/svelvet/d3/controllers/README.md +3 -0
  299. package/components/graph/svelvet/d3/controllers/d3.d.ts +5 -0
  300. package/components/graph/svelvet/d3/controllers/d3.js +59 -0
  301. package/components/graph/svelvet/d3/controllers/d3Old.d.ts +1 -0
  302. package/components/graph/svelvet/d3/controllers/d3Old.js +43 -0
  303. package/components/graph/svelvet/docs/CHANGELOG.md +145 -0
  304. package/components/graph/svelvet/docs/DESIGN_PATTERNS.md +44 -0
  305. package/components/graph/svelvet/docs/DOCUMENTATION.md +5 -0
  306. package/components/graph/svelvet/docs/README.md +34 -0
  307. package/components/graph/svelvet/docs/TODO.md +14 -0
  308. package/components/graph/svelvet/docs/Tutorials.md +25 -0
  309. package/components/graph/svelvet/docs/images/css-background-after.png +0 -0
  310. package/components/graph/svelvet/docs/images/css-background-before.png +0 -0
  311. package/components/graph/svelvet/docs/images/custom-edges-after.png +0 -0
  312. package/components/graph/svelvet/docs/images/custom-edges-before.png +0 -0
  313. package/components/graph/svelvet/docs/images/custom-nodes-after.png +0 -0
  314. package/components/graph/svelvet/docs/images/custom-nodes-before.png +0 -0
  315. package/components/graph/svelvet/docs/images/custom-svelte-components-after.png +0 -0
  316. package/components/graph/svelvet/docs/images/custom-svelte-components-before.png +0 -0
  317. package/components/graph/svelvet/docs/images/html-docs-after.png +0 -0
  318. package/components/graph/svelvet/docs/images/html-docs-before.png +0 -0
  319. package/components/graph/svelvet/docs/images/minimap-after.png +0 -0
  320. package/components/graph/svelvet/docs/images/minimap-before.png +0 -0
  321. package/components/graph/svelvet/docs/images/node-classes-after.png +0 -0
  322. package/components/graph/svelvet/docs/images/node-classes-before.png +0 -0
  323. package/components/graph/svelvet/docs/images/node-create-after.png +0 -0
  324. package/components/graph/svelvet/docs/images/node-create-before.png +0 -0
  325. package/components/graph/svelvet/edges/controllers/anchorCbDev.d.ts +4 -0
  326. package/components/graph/svelvet/edges/controllers/anchorCbDev.js +92 -0
  327. package/components/graph/svelvet/edges/controllers/anchorCbUser.d.ts +57 -0
  328. package/components/graph/svelvet/edges/controllers/anchorCbUser.js +73 -0
  329. package/components/graph/svelvet/edges/controllers/util.d.ts +37 -0
  330. package/components/graph/svelvet/edges/controllers/util.js +72 -0
  331. package/components/graph/svelvet/edges/models/Anchor.d.ts +48 -0
  332. package/components/graph/svelvet/edges/models/Anchor.js +122 -0
  333. package/components/graph/svelvet/edges/models/Edge.d.ts +47 -0
  334. package/components/graph/svelvet/edges/models/Edge.js +107 -0
  335. package/components/graph/svelvet/edges/types/types.d.ts +18 -0
  336. package/components/graph/svelvet/edges/types/types.js +1 -0
  337. package/components/graph/svelvet/edges/views/Edges/BaseEdge.svelte +105 -0
  338. package/components/graph/svelvet/edges/views/Edges/BaseEdge.svelte.d.ts +18 -0
  339. package/components/graph/svelvet/edges/views/Edges/EdgeAnchor.svelte +12 -0
  340. package/components/graph/svelvet/edges/views/Edges/EdgeAnchor.svelte.d.ts +17 -0
  341. package/components/graph/svelvet/edges/views/Edges/EdgeText.svelte +43 -0
  342. package/components/graph/svelvet/edges/views/Edges/EdgeText.svelte.d.ts +17 -0
  343. package/components/graph/svelvet/edges/views/Edges/SimpleBezierEdge.svelte +137 -0
  344. package/components/graph/svelvet/edges/views/Edges/SimpleBezierEdge.svelte.d.ts +17 -0
  345. package/components/graph/svelvet/edges/views/Edges/SmoothStepEdge.svelte +176 -0
  346. package/components/graph/svelvet/edges/views/Edges/SmoothStepEdge.svelte.d.ts +60 -0
  347. package/components/graph/svelvet/edges/views/Edges/StepEdge.svelte +8 -0
  348. package/components/graph/svelvet/edges/views/Edges/StepEdge.svelte.d.ts +25 -0
  349. package/components/graph/svelvet/edges/views/Edges/types.d.ts +52 -0
  350. package/components/graph/svelvet/edges/views/Edges/types.js +1 -0
  351. package/components/graph/svelvet/edges/views/Edges/utils.d.ts +33 -0
  352. package/components/graph/svelvet/edges/views/Edges/utils.js +31 -0
  353. package/components/graph/svelvet/editEdges/views/EditEdge.svelte +151 -0
  354. package/components/graph/svelvet/editEdges/views/EditEdge.svelte.d.ts +20 -0
  355. package/components/graph/svelvet/nodes/controllers/util.d.ts +9 -0
  356. package/components/graph/svelvet/nodes/controllers/util.js +13 -0
  357. package/components/graph/svelvet/nodes/models/Node.d.ts +78 -0
  358. package/components/graph/svelvet/nodes/models/Node.js +195 -0
  359. package/components/graph/svelvet/nodes/views/EditNode.svelte +147 -0
  360. package/components/graph/svelvet/nodes/views/EditNode.svelte.d.ts +33 -0
  361. package/components/graph/svelvet/nodes/views/Node.svelte +85 -0
  362. package/components/graph/svelvet/nodes/views/Node.svelte.d.ts +22 -0
  363. package/components/graph/svelvet/resizableNodes/controllers/util.d.ts +11 -0
  364. package/components/graph/svelvet/resizableNodes/controllers/util.js +24 -0
  365. package/components/graph/svelvet/resizableNodes/models/ResizeNode.d.ts +33 -0
  366. package/components/graph/svelvet/resizableNodes/models/ResizeNode.js +71 -0
  367. package/components/graph/svelvet/resizableNodes/views/ResizeNode.svelte +81 -0
  368. package/components/graph/svelvet/resizableNodes/views/ResizeNode.svelte.d.ts +20 -0
  369. package/components/graph/svelvet/store/controllers/storeApi.d.ts +32 -0
  370. package/components/graph/svelvet/store/controllers/storeApi.js +111 -0
  371. package/components/graph/svelvet/store/controllers/userApi.d.ts +3 -0
  372. package/components/graph/svelvet/store/controllers/userApi.js +18 -0
  373. package/components/graph/svelvet/store/controllers/util.d.ts +31 -0
  374. package/components/graph/svelvet/store/controllers/util.js +180 -0
  375. package/components/graph/svelvet/store/models/store.d.ts +12 -0
  376. package/components/graph/svelvet/store/models/store.js +9 -0
  377. package/components/graph/svelvet/store/types/types.d.ts +134 -0
  378. package/components/graph/svelvet/store/types/types.js +1 -0
  379. package/components/graph/svelvet/types/README.md +3 -0
  380. package/components/graph/svelvet/types/index.d.ts +2 -0
  381. package/components/graph/svelvet/types/index.js +1 -0
  382. package/components/graph/svelvet/types/types.d.ts +49 -0
  383. package/components/graph/svelvet/types/types.js +18 -0
  384. package/components/graph/util.js +2 -2
  385. package/components/home/ItemsList.svelte +53 -5
  386. package/components/home/ItemsList.svelte.d.ts +1 -0
  387. package/components/home/ListFilters.svelte +7 -2
  388. package/components/jobs/JobDetail.svelte +12 -1
  389. package/components/propertyPicker/ObjectViewer.svelte +6 -4
  390. package/consts.d.ts +1 -0
  391. package/consts.js +1 -0
  392. package/defaults.d.ts +4 -0
  393. package/defaults.js +4 -0
  394. package/history.d.ts +9 -0
  395. package/history.js +56 -0
  396. package/package.json +92 -8
  397. package/script_helpers.d.ts +1 -1
  398. package/script_helpers.js +1 -0
  399. package/scripts.d.ts +1 -1
  400. package/scripts.js +8 -1
  401. package/utils.d.ts +9 -4
  402. package/utils.js +44 -8
  403. package/components/apps/editor/TablePanel.svelte +0 -19
  404. package/components/apps/editor/TablePanel.svelte.d.ts +0 -17
  405. package/components/flows/map/FlowBranchAllMap.svelte +0 -100
  406. package/components/flows/map/FlowBranchAllMap.svelte.d.ts +0 -17
  407. package/components/flows/map/FlowBranchOneMap.svelte +0 -124
  408. package/components/flows/map/FlowBranchOneMap.svelte.d.ts +0 -17
@@ -1,12 +1,14 @@
1
- <script>import { createEventDispatcher } from "svelte";
2
- import { FileUp } from "lucide-svelte";
3
- import Button from "../../common/button/Button.svelte";
4
- import { faTrash } from "@fortawesome/free-solid-svg-icons";
1
+ <script>import { createEventDispatcher } from 'svelte';
2
+ import { FileUp } from 'lucide-svelte';
3
+ import Button from '../../common/button/Button.svelte';
4
+ import { faTrash } from '@fortawesome/free-solid-svg-icons';
5
+ import { twMerge } from 'tailwind-merge';
5
6
  let c = '';
6
7
  export { c as class };
8
+ export let style = '';
7
9
  export let accept = '*';
8
10
  export let multiple = false;
9
- export let convertToBase64 = false;
11
+ export let convertTo = undefined;
10
12
  export let hideIcon = false;
11
13
  export let iconSize = 36;
12
14
  const dispatch = createEventDispatcher();
@@ -26,18 +28,34 @@ async function onChange(fileList) {
26
28
  if (file)
27
29
  files.push(file);
28
30
  }
29
- // Needs to be reset so the same file can be selected
31
+ // Needs to be reset so the same file can be selected
30
32
  // multiple times in a row
31
33
  input.value = '';
32
34
  dispatchChange();
33
35
  }
34
- async function fileToBase64(file) {
36
+ async function convertFile(file) {
35
37
  return new Promise((resolve) => {
38
+ if (!convertTo) {
39
+ return resolve(null);
40
+ }
36
41
  const reader = new FileReader();
37
42
  reader.onloadend = () => {
38
43
  resolve(reader.result);
39
44
  };
40
- reader.readAsDataURL(file);
45
+ switch (convertTo) {
46
+ case 'buffer':
47
+ reader.readAsArrayBuffer(file);
48
+ break;
49
+ case 'binary':
50
+ reader.readAsBinaryString(file);
51
+ break;
52
+ case 'base64':
53
+ reader.readAsDataURL(file);
54
+ break;
55
+ case 'text':
56
+ reader.readAsText(file);
57
+ break;
58
+ }
41
59
  });
42
60
  }
43
61
  function removeFile(index) {
@@ -49,10 +67,10 @@ function removeFile(index) {
49
67
  }
50
68
  async function dispatchChange() {
51
69
  files = files;
52
- if (convertToBase64 && files) {
53
- const promises = files.map(fileToBase64);
54
- const b64s = await Promise.all(promises);
55
- dispatch('change', b64s);
70
+ if (convertTo && files) {
71
+ const promises = files.map(convertFile);
72
+ const converted = await Promise.all(promises);
73
+ dispatch('change', converted);
56
74
  }
57
75
  else {
58
76
  dispatch('change', files);
@@ -61,10 +79,14 @@ async function dispatchChange() {
61
79
  </script>
62
80
 
63
81
  <button
64
- class="relative center-center flex-col text-center font-medium text-gray-600
65
- border-2 border-dashed border-gray-400 hover:border-blue-500
66
- focus-within:border-blue-500 hover:bg-blue-50 focus-within:bg-blue-50
67
- duration-200 rounded-lg p-1 {c ?? ''}"
82
+ class={twMerge(
83
+ `relative center-center flex-col text-center font-medium text-gray-600
84
+ border-2 border-dashed border-gray-400 hover:border-blue-500
85
+ focus-within:border-blue-500 hover:bg-blue-50 focus-within:bg-blue-50
86
+ duration-200 rounded-lg p-1`,
87
+ c
88
+ )}
89
+ {style}
68
90
  >
69
91
  {#if !hideIcon && !files}
70
92
  <FileUp size={iconSize} class="mb-2" />
@@ -77,9 +99,11 @@ async function dispatchChange() {
77
99
  </div>
78
100
  </slot>
79
101
  <ul class="relative z-20 max-w-[250px] bg-white rounded-lg overflow-hidden mx-auto">
80
- {#each files as {name}, i}
81
- <li class="flex justify-between items-center font-normal text-sm
82
- hover:bg-gray-300/20 duration-200 py-1 px-2 cursor-default">
102
+ {#each files as { name }, i}
103
+ <li
104
+ class="flex justify-between items-center font-normal text-sm
105
+ hover:bg-gray-300/20 duration-200 py-1 px-2 cursor-default"
106
+ >
83
107
  <span class="pr-2 ellipsize">{name}</span>
84
108
  <Button
85
109
  size="xs"
@@ -104,9 +128,11 @@ async function dispatchChange() {
104
128
  type="file"
105
129
  title={files ? `${files.length} file${files.length > 1 ? 's' : ''} chosen` : 'No file chosen'}
106
130
  bind:this={input}
107
- on:change={({currentTarget}) => {onChange(currentTarget.files)}}
131
+ on:change={({ currentTarget }) => {
132
+ onChange(currentTarget.files)
133
+ }}
108
134
  {accept}
109
135
  {multiple}
110
136
  {...$$restProps}
111
137
  />
112
- </button>
138
+ </button>
@@ -1,11 +1,13 @@
1
1
  import { SvelteComponentTyped } from "svelte";
2
+ import type { ReadFileAs } from './model';
2
3
  declare const __propDef: {
3
4
  props: {
4
5
  [x: string]: any;
5
6
  class?: string | undefined;
7
+ style?: string | undefined;
6
8
  accept?: string | undefined;
7
9
  multiple?: boolean | undefined;
8
- convertToBase64?: boolean | undefined;
10
+ convertTo?: ReadFileAs | undefined;
9
11
  hideIcon?: boolean | undefined;
10
12
  iconSize?: number | undefined;
11
13
  };
@@ -0,0 +1 @@
1
+ export type ReadFileAs = 'buffer' | 'binary' | 'base64' | 'text';
@@ -0,0 +1 @@
1
+ export {};
@@ -4,6 +4,7 @@ export { default as Badge } from './badge/Badge.svelte';
4
4
  export { default as Button } from './button/Button.svelte';
5
5
  export { default as ButtonPopup } from './button/ButtonPopup.svelte';
6
6
  export { default as ButtonPopupItem } from './button/ButtonPopupItem.svelte';
7
+ export { default as UndoRedo } from './button/UndoRedo.svelte';
7
8
  export { default as Drawer } from './drawer/Drawer.svelte';
8
9
  export { default as DrawerContent } from './drawer/DrawerContent.svelte';
9
10
  export { default as Kbd } from './kbd/Kbd.svelte';
@@ -4,6 +4,7 @@ export { default as Badge } from './badge/Badge.svelte';
4
4
  export { default as Button } from './button/Button.svelte';
5
5
  export { default as ButtonPopup } from './button/ButtonPopup.svelte';
6
6
  export { default as ButtonPopupItem } from './button/ButtonPopupItem.svelte';
7
+ export { default as UndoRedo } from './button/UndoRedo.svelte';
7
8
  export { default as Drawer } from './drawer/Drawer.svelte';
8
9
  export { default as DrawerContent } from './drawer/DrawerContent.svelte';
9
10
  export { default as Kbd } from './kbd/Kbd.svelte';
@@ -5,7 +5,7 @@ let current = undefined;
5
5
  <script>import { classNames } from '../../../utils';
6
6
  import { onMount } from 'svelte';
7
7
  export let noMinW = false;
8
- let show = false;
8
+ export let show = false;
9
9
  let menu;
10
10
  export let placement = 'bottom-start';
11
11
  function handleOutsideClick(event) {
@@ -32,6 +32,7 @@ onMount(() => {
32
32
  };
33
33
  });
34
34
  const placementsClasses = {
35
+ 'bottom-center': 'origin-top-left left-1/2 transform -translate-x-1/2',
35
36
  'bottom-start': 'origin-top-left left-0',
36
37
  'bottom-end': 'origin-top-right right-0',
37
38
  'top-start': 'origin-bottom-left left-0 bottom-0',
@@ -49,7 +50,7 @@ const placementsClasses = {
49
50
  }
50
51
  show = !show
51
52
  }}
52
- class="cursor-pointer hover:bg-gray-100/30"
53
+ class="relative cursor-pointer hover:bg-gray-100/30"
53
54
  >
54
55
  <slot class="triggerable" name="trigger" />
55
56
  </div>
@@ -2,7 +2,8 @@ import { SvelteComponentTyped } from "svelte";
2
2
  declare const __propDef: {
3
3
  props: {
4
4
  noMinW?: boolean | undefined;
5
- placement?: "top-start" | "top-end" | "bottom-start" | "bottom-end" | undefined;
5
+ show?: boolean | undefined;
6
+ placement?: "top-start" | "top-end" | "bottom-start" | "bottom-end" | "top-center" | "bottom-center" | undefined;
6
7
  };
7
8
  events: {
8
9
  [evt: string]: CustomEvent<any>;
@@ -1,10 +1,13 @@
1
- <script>import { classNames } from '../../../utils';
2
- import { createEventDispatcher } from 'svelte';
1
+ <script>import { createEventDispatcher } from 'svelte';
3
2
  import { fade } from 'svelte/transition';
4
3
  import Button from '../button/Button.svelte';
5
4
  import Badge from '../badge/Badge.svelte';
5
+ import { twMerge } from 'tailwind-merge';
6
6
  export let title;
7
7
  export let open = false;
8
+ let c = '';
9
+ export { c as class };
10
+ export let style = '';
8
11
  const dispatch = createEventDispatcher();
9
12
  function onKeyDown(event) {
10
13
  if (open) {
@@ -36,7 +39,7 @@ function fadeFast(node) {
36
39
  role="dialog"
37
40
  >
38
41
  <div
39
- class={classNames(
42
+ class={twMerge(
40
43
  'fixed inset-0 bg-gray-500 bg-opacity-75 transition-opacity',
41
44
  open ? 'ease-out duration-300 opacity-100' : 'ease-in duration-200 opacity-0'
42
45
  )}
@@ -45,12 +48,14 @@ function fadeFast(node) {
45
48
  <div class="fixed inset-0 z-10 overflow-y-auto">
46
49
  <div class="flex min-h-full items-center justify-center p-4">
47
50
  <div
48
- class={classNames(
51
+ class={twMerge(
49
52
  'relative transform overflow-hidden rounded-lg bg-white px-4 pt-5 pb-4 text-left shadow-xl transition-all sm:my-8 sm:w-full sm:max-w-lg sm:p-6',
53
+ c,
50
54
  open
51
55
  ? 'ease-out duration-300 opacity-100 translate-y-0 sm:scale-100'
52
56
  : 'ease-in duration-200 opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95'
53
57
  )}
58
+ {style}
54
59
  >
55
60
  <div class="flex">
56
61
  <div class="ml-4 text-left flex-1">
@@ -3,6 +3,8 @@ declare const __propDef: {
3
3
  props: {
4
4
  title: string;
5
5
  open?: boolean | undefined;
6
+ class?: string | undefined;
7
+ style?: string | undefined;
6
8
  };
7
9
  events: {
8
10
  canceled: CustomEvent<any>;
@@ -12,6 +12,7 @@ export let marked;
12
12
  export let starred;
13
13
  export let shareModal;
14
14
  export let moveDrawer;
15
+ export let deleteConfirmedCallback;
15
16
  let { summary, path, extra_perms, canWrite, workspace_id } = app;
16
17
  const dispatch = createEventDispatcher();
17
18
  </script>
@@ -81,7 +82,8 @@ const dispatch = createEventDispatcher();
81
82
  {
82
83
  displayName: 'Edit',
83
84
  icon: faPen,
84
- href: `/apps/edit/${path}?nodraft=true`
85
+ href: `/apps/edit/${path}?nodraft=true`,
86
+ disabled: !canWrite
85
87
  },
86
88
  {
87
89
  displayName: 'Use as template',
@@ -106,9 +108,16 @@ const dispatch = createEventDispatcher();
106
108
  {
107
109
  displayName: 'Delete',
108
110
  icon: faTrashAlt,
109
- action: async () => {
110
- await AppService.deleteApp({ workspace: $workspaceStore ?? '', path })
111
- dispatch('change')
111
+ action: async (event) => {
112
+ if (event?.shiftKey) {
113
+ await AppService.deleteApp({ workspace: $workspaceStore ?? '', path })
114
+ dispatch('change')
115
+ } else {
116
+ deleteConfirmedCallback = async () => {
117
+ await AppService.deleteApp({ workspace: $workspaceStore ?? '', path })
118
+ dispatch('change')
119
+ }
120
+ }
112
121
  },
113
122
  type: 'delete',
114
123
  disabled: !canWrite
@@ -11,6 +11,7 @@ declare const __propDef: {
11
11
  starred: boolean;
12
12
  shareModal: ShareModal;
13
13
  moveDrawer: MoveDrawer;
14
+ deleteConfirmedCallback: (() => void) | undefined;
14
15
  };
15
16
  events: {
16
17
  change: CustomEvent<any>;
@@ -8,6 +8,7 @@ import { sendUserToast } from '../../../utils';
8
8
  import { faArchive, faCalendarAlt, faCodeFork, faEdit, faEye, faFileExport, faList, faPlay, faShare, faTrashAlt } from '@fortawesome/free-solid-svg-icons';
9
9
  import { MoreVertical } from 'lucide-svelte';
10
10
  import { createEventDispatcher } from 'svelte';
11
+ import Badge from '../badge/Badge.svelte';
11
12
  import Button from '../button/Button.svelte';
12
13
  import Row from './Row.svelte';
13
14
  export let flow;
@@ -15,7 +16,8 @@ export let marked;
15
16
  export let starred;
16
17
  export let shareModal;
17
18
  export let moveDrawer;
18
- let { summary, path, extra_perms, canWrite, workspace_id } = flow;
19
+ export let deleteConfirmedCallback;
20
+ let { summary, path, extra_perms, canWrite, workspace_id, archived } = flow;
19
21
  const dispatch = createEventDispatcher();
20
22
  async function archiveFlow(path) {
21
23
  try {
@@ -53,11 +55,15 @@ let scheduleEditor;
53
55
  >
54
56
  <svelte:fragment slot="badges">
55
57
  <SharedBadge {canWrite} extraPerms={extra_perms} />
58
+
59
+ {#if archived}
60
+ <Badge color="red" baseClass="border">archived</Badge>
61
+ {/if}
56
62
  </svelte:fragment>
57
63
  <svelte:fragment slot="actions">
58
64
  <span class="hidden md:inline-flex gap-x-1">
59
65
  {#if !$userStore?.operator}
60
- {#if canWrite}
66
+ {#if canWrite && !archived}
61
67
  <div>
62
68
  <Button
63
69
  color="light"
@@ -118,7 +124,7 @@ let scheduleEditor;
118
124
  displayName: 'Edit',
119
125
  icon: faEdit,
120
126
  href: `/flows/edit/${path}?nodraft=true`,
121
- disabled: !canWrite
127
+ disabled: !canWrite || archived
122
128
  },
123
129
  {
124
130
  displayName: 'Use as template/Fork',
@@ -136,14 +142,15 @@ let scheduleEditor;
136
142
  action: () => {
137
143
  moveDrawer.openDrawer(path, summary, 'flow')
138
144
  },
139
- disabled: !canWrite
145
+ disabled: !canWrite || archived
140
146
  },
141
147
  {
142
148
  displayName: 'Schedule',
143
149
  icon: faCalendarAlt,
144
150
  action: () => {
145
151
  scheduleEditor.openNew(true, path)
146
- }
152
+ },
153
+ disabled: archived
147
154
  },
148
155
  {
149
156
  displayName: canWrite ? 'Share' : 'See Permissions',
@@ -159,13 +166,19 @@ let scheduleEditor;
159
166
  path ? archiveFlow(path) : null
160
167
  },
161
168
  type: 'delete',
162
- disabled: !canWrite
169
+ disabled: !canWrite || archived
163
170
  },
164
171
  {
165
172
  displayName: 'Delete',
166
173
  icon: faTrashAlt,
167
- action: () => {
168
- path ? deleteFlow(path) : null
174
+ action: (event) => {
175
+ if (event?.shiftKey) {
176
+ deleteFlow(path)
177
+ } else {
178
+ deleteConfirmedCallback = () => {
179
+ deleteFlow(path)
180
+ }
181
+ }
169
182
  },
170
183
  type: 'delete',
171
184
  disabled: !canWrite
@@ -11,6 +11,7 @@ declare const __propDef: {
11
11
  starred: boolean;
12
12
  shareModal: ShareModal;
13
13
  moveDrawer: MoveDrawer;
14
+ deleteConfirmedCallback: (() => void) | undefined;
14
15
  };
15
16
  events: {
16
17
  change: CustomEvent<any>;
@@ -5,7 +5,7 @@ import SharedBadge from '../../SharedBadge.svelte';
5
5
  import { ScriptService } from '../../../gen';
6
6
  import { userStore, workspaceStore } from '../../../stores';
7
7
  import { capitalize, sendUserToast } from '../../../utils';
8
- import { faArchive, faCalendarAlt, faCodeFork, faEdit, faEye, faFileExport, faList, faPlay, faShare } from '@fortawesome/free-solid-svg-icons';
8
+ import { faArchive, faCalendarAlt, faCodeFork, faEdit, faEye, faFileExport, faList, faPlay, faShare, faTrashAlt } from '@fortawesome/free-solid-svg-icons';
9
9
  import { MoreVertical } from 'lucide-svelte';
10
10
  import { createEventDispatcher } from 'svelte';
11
11
  import Badge from '../badge/Badge.svelte';
@@ -17,14 +17,21 @@ export let marked;
17
17
  export let starred;
18
18
  export let shareModal;
19
19
  export let moveDrawer;
20
- let { summary, path, hash, language, extra_perms, canWrite, lock_error_logs, kind, workspace_id } = script;
20
+ export let deleteConfirmedCallback;
21
+ let { summary, path, hash, language, extra_perms, canWrite, lock_error_logs, kind, workspace_id, archived } = script;
21
22
  const dispatch = createEventDispatcher();
22
23
  async function archiveScript(path) {
23
24
  await ScriptService.archiveScriptByPath({ workspace: $workspaceStore, path });
24
25
  dispatch('change');
25
26
  sendUserToast(`Archived script ${path}`);
26
27
  }
28
+ async function deleteScript(path) {
29
+ await ScriptService.deleteScriptByPath({ workspace: $workspaceStore, path });
30
+ dispatch('change');
31
+ sendUserToast(`Delete script ${path}`);
32
+ }
27
33
  let scheduleEditor;
34
+ const dlt = 'delete';
28
35
  </script>
29
36
 
30
37
  <ScheduleEditor on:update={() => goto('/schedules')} bind:this={scheduleEditor} />
@@ -48,13 +55,17 @@ let scheduleEditor;
48
55
  <Badge color="gray" baseClass="border">{capitalize(kind)}</Badge>
49
56
  {/if}
50
57
 
58
+ {#if archived}
59
+ <Badge color="red" baseClass="border">archived</Badge>
60
+ {/if}
61
+
51
62
  <LanguageBadge {language} />
52
63
  </svelte:fragment>
53
64
 
54
65
  <svelte:fragment slot="actions">
55
66
  <span class="hidden md:inline-flex gap-x-1">
56
67
  {#if !$userStore?.operator}
57
- {#if canWrite}
68
+ {#if canWrite && !archived}
58
69
  <div>
59
70
  <Button
60
71
  color="light"
@@ -115,13 +126,13 @@ let scheduleEditor;
115
126
  displayName: 'Edit',
116
127
  icon: faEdit,
117
128
  href: `/scripts/edit/${hash}`,
118
- disabled: !canWrite
129
+ disabled: !canWrite || archived
119
130
  },
120
131
  {
121
132
  displayName: 'Edit code',
122
133
  icon: faEdit,
123
134
  href: `/scripts/edit/${hash}?step=2`,
124
- disabled: !canWrite
135
+ disabled: !canWrite || archived
125
136
  },
126
137
  {
127
138
  displayName: 'Use as template',
@@ -134,7 +145,7 @@ let scheduleEditor;
134
145
  action: () => {
135
146
  moveDrawer.openDrawer(path, summary, 'script')
136
147
  },
137
- disabled: !canWrite
148
+ disabled: !canWrite || archived
138
149
  },
139
150
  {
140
151
  displayName: 'View runs',
@@ -146,14 +157,16 @@ let scheduleEditor;
146
157
  icon: faCalendarAlt,
147
158
  action: () => {
148
159
  scheduleEditor.openNew(false, path)
149
- }
160
+ },
161
+ disabled: archived
150
162
  },
151
163
  {
152
164
  displayName: canWrite ? 'Share' : 'See Permissions',
153
165
  icon: faShare,
154
166
  action: () => {
155
167
  shareModal.openDrawer && shareModal.openDrawer(path, 'script')
156
- }
168
+ },
169
+ disabled: archived
157
170
  },
158
171
  {
159
172
  displayName: 'Archive',
@@ -162,8 +175,27 @@ let scheduleEditor;
162
175
  path ? archiveScript(path) : null
163
176
  },
164
177
  type: 'delete',
165
- disabled: !canWrite
166
- }
178
+ disabled: !canWrite || archived
179
+ },
180
+ ...($userStore?.is_admin || $userStore?.is_super_admin
181
+ ? []
182
+ : [
183
+ {
184
+ displayName: 'Delete',
185
+ icon: faTrashAlt,
186
+ action: (event) => {
187
+ if (event?.shiftKey) {
188
+ deleteScript(path)
189
+ } else {
190
+ deleteConfirmedCallback = () => {
191
+ deleteScript(path)
192
+ }
193
+ }
194
+ },
195
+ type: dlt,
196
+ disabled: !canWrite
197
+ }
198
+ ])
167
199
  ]}
168
200
  >
169
201
  <MoreVertical size={20} />
@@ -11,6 +11,7 @@ declare const __propDef: {
11
11
  starred: boolean;
12
12
  shareModal: ShareModal;
13
13
  moveDrawer: MoveDrawer;
14
+ deleteConfirmedCallback: (() => void) | undefined;
14
15
  };
15
16
  events: {
16
17
  change: CustomEvent<any>;
@@ -1,7 +1,12 @@
1
- <script>import { classNames } from '../../../utils';
2
- import { getContext } from 'svelte';
1
+ <script>import { getContext } from 'svelte';
2
+ import { twMerge } from 'tailwind-merge';
3
3
  export let value;
4
4
  export let size = 'sm';
5
+ let c = '';
6
+ export { c as class };
7
+ export let style = '';
8
+ export let selectedClass = '';
9
+ export let selectedStyle = '';
5
10
  const fontSizeClasses = {
6
11
  xs: 'text-xs',
7
12
  sm: 'text-sm',
@@ -14,14 +19,16 @@ const { selected, update } = getContext('Tabs');
14
19
 
15
20
  <!-- svelte-ignore a11y-click-events-have-key-events -->
16
21
  <div
17
- class={classNames(
22
+ class={twMerge(
23
+ 'border-b-2 py-1 px-4 cursor-pointer transition-all z-10 ease-linear font-medium',
18
24
  $selected?.startsWith(value)
19
25
  ? 'border-gray-600 text-gray-800 '
20
26
  : 'border-gray-300 border-opacity-0 hover:border-opacity-100 text-gray-600',
21
- 'border-b-2 py-1 px-4 cursor-pointer transition-all ease-linear font-medium',
22
27
  fontSizeClasses[size],
23
- $$props.class
28
+ c,
29
+ $selected?.startsWith(value) ? selectedClass : ''
24
30
  )}
31
+ style={`${style} ${$selected?.startsWith(value) ? selectedStyle : ''}`}
25
32
  on:click={() => update(value)}
26
33
  >
27
34
  <slot />
@@ -1,9 +1,12 @@
1
1
  import { SvelteComponentTyped } from "svelte";
2
2
  declare const __propDef: {
3
3
  props: {
4
- [x: string]: any;
5
4
  value: string;
6
5
  size?: "xs" | "sm" | "md" | "lg" | "xl" | undefined;
6
+ class?: string | undefined;
7
+ style?: string | undefined;
8
+ selectedClass?: string | undefined;
9
+ selectedStyle?: string | undefined;
7
10
  };
8
11
  events: {
9
12
  [evt: string]: CustomEvent<any>;
@@ -4,9 +4,13 @@
4
4
  <script>import { setContext } from 'svelte';
5
5
  import { writable } from 'svelte/store';
6
6
  import { createEventDispatcher } from 'svelte';
7
- import { classNames } from '../../../utils';
7
+ import { twMerge } from 'tailwind-merge';
8
8
  const dispatch = createEventDispatcher();
9
9
  export let selected;
10
+ let c = '';
11
+ export { c as class };
12
+ export let wrapperClass = '';
13
+ export let style = '';
10
14
  $: selected && updateSelected();
11
15
  const selectedStore = writable(selected);
12
16
  $: $selectedStore && dispatch('selected', $selectedStore);
@@ -22,12 +26,10 @@ function updateSelected() {
22
26
  }
23
27
  </script>
24
28
 
25
- <div class="overflow-x-auto">
29
+ <div class="overflow-x-auto {wrapperClass}">
26
30
  <div
27
- class={classNames(
28
- 'border-b border-gray-200 flex flex-row whitespace-nowrap scrollbar-hidden',
29
- $$props.class
30
- )}
31
+ class={twMerge('border-b border-gray-200 flex flex-row whitespace-nowrap scrollbar-hidden', c)}
32
+ {style}
31
33
  >
32
34
  <slot {selected} />
33
35
  </div>
@@ -6,8 +6,10 @@ export type TabsContext = {
6
6
  import { type Writable } from 'svelte/store';
7
7
  declare const __propDef: {
8
8
  props: {
9
- [x: string]: any;
10
9
  selected: string;
10
+ class?: string | undefined;
11
+ wrapperClass?: string | undefined;
12
+ style?: string | undefined;
11
13
  };
12
14
  events: {
13
15
  selected: CustomEvent<any>;
@@ -1,16 +1,18 @@
1
1
  <script>import { Pane, Splitpanes } from 'svelte-splitpanes';
2
2
  import FlowEditorPanel from './content/FlowEditorPanel.svelte';
3
3
  import FlowModuleSchemaMap from './map/FlowModuleSchemaMap.svelte';
4
- import { flowStore } from './flowStore';
5
4
  import WindmillIcon from '../icons/WindmillIcon.svelte';
6
5
  import { Skeleton } from '../common';
6
+ import { getContext } from 'svelte';
7
7
  export let initialPath;
8
8
  export let loading;
9
+ const { flowStore } = getContext('FlowEditorContext');
10
+ let size = 50;
9
11
  </script>
10
12
 
11
13
  <div class="h-full overflow-hidden border-t">
12
14
  <Splitpanes>
13
- <Pane size={20} minSize={15} class="h-full">
15
+ <Pane {size} minSize={15} class="h-full">
14
16
  <div class="grow overflow-auto bg-gray h-full bg-gray-50 relative">
15
17
  {#if loading}
16
18
  <div class="p-2 pt-10">
@@ -19,11 +21,11 @@ export let loading;
19
21
  {/each}
20
22
  </div>
21
23
  {:else if $flowStore.value.modules}
22
- <FlowModuleSchemaMap bind:modules={$flowStore.value.modules} root />
24
+ <FlowModuleSchemaMap bind:modules={$flowStore.value.modules} />
23
25
  {/if}
24
26
  </div>
25
27
  </Pane>
26
- <Pane size={80} minSize={40}>
28
+ <Pane class="drop-shadow-2xl" size={100 - size} minSize={40}>
27
29
  {#if loading}
28
30
  <div class="w-full h-full ">
29
31
  <div class="block m-auto mt-40 w-10">