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
@@ -1,5 +1,5 @@
1
1
  <script>import Button from '../../../common/button/Button.svelte';
2
- import { faCopy, faTrashAlt } from '@fortawesome/free-solid-svg-icons';
2
+ import { faChevronDown, faChevronUp, faCopy, faTrashAlt } from '@fortawesome/free-solid-svg-icons';
3
3
  import { getContext } from 'svelte';
4
4
  import PanelSection from './common/PanelSection.svelte';
5
5
  import InputsSpecsEditor from './InputsSpecsEditor.svelte';
@@ -16,27 +16,26 @@ import AlignmentEditor from './AlignmentEditor.svelte';
16
16
  import RunnableInputEditor from './inputEditor/RunnableInputEditor.svelte';
17
17
  import TemplateEditor from '../../../TemplateEditor.svelte';
18
18
  import CssProperty from '../componentsPanel/CssProperty.svelte';
19
- import { dirtyStore } from '../../../common/confirmationModal/dirtyStore';
20
19
  import GridTab from './GridTab.svelte';
21
- import { duplicateGridItem } from '../appUtils';
22
20
  import { deleteGridItem } from '../appUtils';
23
- import MoveToOtherGrid from './MoveToOtherGrid.svelte';
21
+ import GridPane from './GridPane.svelte';
22
+ import { slide } from 'svelte/transition';
23
+ import { push } from '../../../../history';
24
+ import Kbd from '../../../common/kbd/Kbd.svelte';
24
25
  export let component;
25
26
  export let rowColumns = false;
26
27
  export let onDelete = undefined;
27
28
  export let parent;
28
29
  export let noGrid = false;
29
- const { app, staticOutputs, runnableComponents, selectedComponent, worldStore, focusedGrid } = getContext('AppEditorContext');
30
- function duplicateElement(id) {
31
- $dirtyStore = true;
32
- const newId = duplicateGridItem($app, parent, id);
33
- $selectedComponent = newId;
34
- }
30
+ export let duplicateMoveAllowed = true;
31
+ const { app, staticOutputs, runnableComponents, selectedComponent, worldStore, focusedGrid, stateId, state } = getContext('AppViewerContext');
32
+ const { history } = getContext('AppEditorContext');
35
33
  function removeGridElement() {
34
+ push(history, $app);
36
35
  $selectedComponent = undefined;
37
36
  $focusedGrid = undefined;
38
37
  if (component && !noGrid) {
39
- let ids = deleteGridItem($app, component, parent);
38
+ let ids = deleteGridItem($app, component, parent, false);
40
39
  for (const key of ids) {
41
40
  delete $staticOutputs[key];
42
41
  delete $runnableComponents[key];
@@ -49,14 +48,26 @@ function removeGridElement() {
49
48
  $runnableComponents = $runnableComponents;
50
49
  onDelete?.();
51
50
  }
51
+ let viewCssOptions = false;
52
52
  $: extraLib =
53
53
  component?.componentInput?.type === 'template' && $worldStore
54
- ? buildExtraLib($worldStore?.outputsById ?? {}, component?.id, false)
54
+ ? buildExtraLib($worldStore?.outputsById ?? {}, component?.id, false, $state, false)
55
55
  : undefined;
56
+ function keydown(event) {
57
+ switch (event.key) {
58
+ case 'Delete': {
59
+ removeGridElement();
60
+ event.stopPropagation();
61
+ break;
62
+ }
63
+ }
64
+ }
56
65
  </script>
57
66
 
67
+ <svelte:window on:keydown={keydown} />
68
+
58
69
  {#if component}
59
- <div class="flex flex-col min-w-[150px] w-full divide-y">
70
+ <div class="flex min-h-full flex-col min-w-[150px] w-full divide-y">
60
71
  {#if component.componentInput}
61
72
  <PanelSection
62
73
  smallPadding
@@ -95,38 +106,42 @@ $: extraLib =
95
106
  {:else if component.componentInput?.type === 'runnable' && component.componentInput !== undefined}
96
107
  <RunnableInputEditor
97
108
  bind:appInput={component.componentInput}
98
- defaultUserInput={component.type == 'formcomponent'}
109
+ defaultUserInput={component.type == 'formcomponent' ||
110
+ component.type == 'formbuttoncomponent'}
99
111
  />
100
112
  {/if}
101
113
  </div>
102
- {#if component.componentInput?.type === 'runnable' && Object.keys(component.componentInput.fields ?? {}).length > 0}
103
- <div class="border w-full">
104
- <PanelSection
105
- smallPadding
106
- title={`Runnable Inputs (${
107
- Object.keys(component.componentInput.fields ?? {}).length
108
- })`}
109
- >
110
- <svelte:fragment slot="action">
111
- <Tooltip>
112
- The runnable inputs of a button component are not settable by the user. They must
113
- be defined statically or connected.
114
- </Tooltip>
115
- </svelte:fragment>
114
+ {#key $stateId}
115
+ {#if component.componentInput?.type === 'runnable'}
116
+ {#if Object.keys(component.componentInput.fields ?? {}).length > 0}
117
+ <div class="border w-full">
118
+ <PanelSection
119
+ smallPadding
120
+ title={`Runnable Inputs (${
121
+ Object.keys(component.componentInput.fields ?? {}).length
122
+ })`}
123
+ >
124
+ <svelte:fragment slot="action">
125
+ <Tooltip>
126
+ The runnable inputs of a button component are not settable by the user. They
127
+ must be defined statically or connected.
128
+ </Tooltip>
129
+ </svelte:fragment>
116
130
 
117
- <InputsSpecsEditor
118
- id={component.id}
119
- shouldCapitalize={false}
120
- bind:inputSpecs={component.componentInput.fields}
121
- userInputEnabled={component.type !== 'buttoncomponent'}
122
- {rowColumns}
123
- />
124
- </PanelSection>
125
- </div>
126
- {/if}
131
+ <InputsSpecsEditor
132
+ id={component.id}
133
+ shouldCapitalize={false}
134
+ bind:inputSpecs={component.componentInput.fields}
135
+ userInputEnabled={component.type !== 'buttoncomponent'}
136
+ {rowColumns}
137
+ />
138
+ </PanelSection>
139
+ </div>
140
+ {/if}
141
+ {/if}
142
+ {/key}
127
143
  </PanelSection>
128
144
  {/if}
129
-
130
145
  {#if Object.values(component.configuration).length > 0}
131
146
  <PanelSection title={`Configuration (${Object.values(component.configuration).length})`}>
132
147
  <InputsSpecsEditor
@@ -140,9 +155,9 @@ $: extraLib =
140
155
 
141
156
  {#if component.type === 'tabscomponent'}
142
157
  <GridTab bind:tabs={component.tabs} {component} />
143
- {/if}
144
-
145
- {#if component.type === 'tablecomponent' && Array.isArray(component.actionButtons)}
158
+ {:else if component.type === 'verticalsplitpanescomponent' || component.type === 'horizontalsplitpanescomponent'}
159
+ <GridPane bind:panes={component.panes} {component} />
160
+ {:else if component.type === 'tablecomponent' && Array.isArray(component.actionButtons)}
146
161
  <TableActions id={component.id} bind:components={component.actionButtons} />
147
162
  {/if}
148
163
 
@@ -151,47 +166,72 @@ $: extraLib =
151
166
  <Recompute bind:recomputeIds={component.recomputeIds} ownId={component.id} />
152
167
  {/if}
153
168
 
169
+ <div class="grow shrink" />
170
+
154
171
  {#if Object.keys(component.customCss ?? {}).length > 0}
155
172
  <PanelSection title="Custom CSS">
156
- {#each Object.keys(component.customCss ?? {}) as name}
157
- {#if component?.customCss?.[name]}
158
- <div class="mb-2">
159
- <CssProperty {name} bind:value={component.customCss[name]} />
160
- </div>
161
- {/if}
162
- {/each}
173
+ <div slot="action">
174
+ <Button
175
+ color="light"
176
+ size="xs"
177
+ endIcon={{ icon: viewCssOptions ? faChevronUp : faChevronDown }}
178
+ on:click={() => (viewCssOptions = !viewCssOptions)}
179
+ >
180
+ {viewCssOptions ? 'Hide' : 'Show'}
181
+ </Button>
182
+ </div>
183
+ {#if viewCssOptions}
184
+ <div transition:slide|local>
185
+ {#each Object.keys(component.customCss ?? {}) as name}
186
+ {#if component?.customCss?.[name]}
187
+ <div class="w-full mb-2">
188
+ <CssProperty {name} bind:value={component.customCss[name]} />
189
+ </div>
190
+ {/if}
191
+ {/each}
192
+ </div>
193
+ {/if}
163
194
  </PanelSection>
164
195
  {/if}
165
196
 
166
- <PanelSection title="Duplicate">
167
- <Button
168
- size="xs"
169
- color="dark"
170
- startIcon={{ icon: faCopy }}
171
- on:click={() => {
172
- if (component) {
173
- duplicateElement(component.id)
174
- }
175
- }}
176
- >
177
- Duplicate component: {component.id}
178
- </Button>
179
- </PanelSection>
180
-
181
- <PanelSection title="Move to other grid">
182
- <MoveToOtherGrid bind:component {parent} />
183
- </PanelSection>
184
-
185
- <PanelSection title="Danger zone">
186
- <Button
187
- size="xs"
188
- color="red"
189
- variant="border"
190
- startIcon={{ icon: faTrashAlt }}
191
- on:click={removeGridElement}
192
- >
193
- Delete component: {component.id}
194
- </Button>
195
- </PanelSection>
197
+ {#if duplicateMoveAllowed}
198
+ <PanelSection title="Copy/Move">
199
+ <div slot="action">
200
+ <Button size="xs" color="red" variant="border" on:click={removeGridElement}>
201
+ Delete&nbsp;&nbsp;
202
+ <Kbd>Del</Kbd>
203
+ </Button>
204
+ </div>
205
+ <div class="flex flex-col">
206
+ <div
207
+ ><span class="text-gray-600 text-xs mr-2">Copy:</span><Kbd>CTRL+C</Kbd> + <Kbd
208
+ >CTRL+V</Kbd
209
+ ></div
210
+ >
211
+ <!-- <Button
212
+ size="xs"
213
+ color="dark"
214
+ startIcon={{ icon: faCopy }}
215
+ on:click={() => {
216
+ if (component) {
217
+ duplicateElement(component.id)
218
+ }
219
+ }}
220
+ >
221
+ Duplicate component: {component.id}
222
+ </Button> -->
223
+ <div
224
+ ><span class="text-gray-600 text-xs mr-2">Move:</span><Kbd>CTRL+X</Kbd> + <Kbd
225
+ >CTRL+V</Kbd
226
+ ></div
227
+ >
228
+ <div
229
+ ><span class="text-gray-600 text-xs mr-2">Navigate:</span><Kbd>&leftarrow;</Kbd><Kbd
230
+ >&uparrow;</Kbd
231
+ ><Kbd>&rightarrow;</Kbd><Kbd>ESC</Kbd></div
232
+ >
233
+ </div>
234
+ </PanelSection>
235
+ {/if}
196
236
  </div>
197
237
  {/if}
@@ -7,6 +7,7 @@ declare const __propDef: {
7
7
  onDelete?: (() => void) | undefined;
8
8
  parent: string | undefined;
9
9
  noGrid?: boolean | undefined;
10
+ duplicateMoveAllowed?: boolean | undefined;
10
11
  };
11
12
  events: {
12
13
  [evt: string]: CustomEvent<any>;
@@ -0,0 +1,75 @@
1
+ <script>import Button from '../../../common/button/Button.svelte';
2
+ import { faPlus, faTrashAlt } from '@fortawesome/free-solid-svg-icons';
3
+ import { getContext } from 'svelte';
4
+ import { deleteGridItem } from '../appUtils';
5
+ import PanelSection from './common/PanelSection.svelte';
6
+ export let panes;
7
+ export let component;
8
+ const { app, staticOutputs, runnableComponents } = getContext('AppViewerContext');
9
+ function addTab() {
10
+ const numberOfPanes = panes.length;
11
+ panes = Array(panes.length + 1)
12
+ .fill(0)
13
+ .map((_) => Math.floor(100 / (panes.length + 1)));
14
+ if (!$app.subgrids) {
15
+ $app.subgrids = {};
16
+ }
17
+ $app.subgrids[`${component.id}-${numberOfPanes}`] = [];
18
+ component.numberOfSubgrids = panes.length;
19
+ }
20
+ function deleteSubgrid(index) {
21
+ let subgrid = `${component.id}-${index}`;
22
+ for (const item of $app.subgrids[subgrid]) {
23
+ const components = deleteGridItem($app, item.data, subgrid, false);
24
+ console.log(components);
25
+ for (const key in components) {
26
+ delete $staticOutputs[key];
27
+ delete $runnableComponents[key];
28
+ }
29
+ }
30
+ $staticOutputs = $staticOutputs;
31
+ $runnableComponents = $runnableComponents;
32
+ for (let i = index; i < panes.length - 1; i++) {
33
+ $app.subgrids[`${component.id}-${i}`] = $app.subgrids[`${component.id}-${i + 1}`];
34
+ }
35
+ panes.splice(index, 1);
36
+ panes = panes;
37
+ component.numberOfSubgrids = panes.length;
38
+ $app = $app;
39
+ }
40
+ </script>
41
+
42
+ <PanelSection title={`panes ${panes.length > 0 ? `(${panes.length})` : ''}`}>
43
+ {#if panes.length == 0}
44
+ <span class="text-xs text-gray-500">No panes</span>
45
+ {/if}
46
+ <div class="w-full flex gap-2 flex-col mt-2">
47
+ {#each panes as value, index (index)}
48
+ <div class="w-full flex flex-row gap-2 items-center relative">
49
+ <input on:keydown|stopPropagation type="number" bind:value />
50
+
51
+ <div class="absolute top-1 right-1">
52
+ <Button
53
+ size="xs"
54
+ color="light"
55
+ variant="border"
56
+ on:click={() => {
57
+ deleteSubgrid(index)
58
+ }}
59
+ iconOnly
60
+ btnClasses="!text-red-500"
61
+ startIcon={{ icon: faTrashAlt }}
62
+ />
63
+ </div>
64
+ </div>
65
+ {/each}
66
+ <Button
67
+ size="xs"
68
+ color="light"
69
+ variant="border"
70
+ startIcon={{ icon: faPlus }}
71
+ on:click={addTab}
72
+ iconOnly
73
+ />
74
+ </div>
75
+ </PanelSection>
@@ -0,0 +1,20 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ import type { AppComponent } from '../component';
3
+ declare const __propDef: {
4
+ props: {
5
+ panes: number[];
6
+ component: AppComponent;
7
+ };
8
+ events: {
9
+ keydown: KeyboardEvent;
10
+ } & {
11
+ [evt: string]: CustomEvent<any>;
12
+ };
13
+ slots: {};
14
+ };
15
+ export type GridPaneProps = typeof __propDef.props;
16
+ export type GridPaneEvents = typeof __propDef.events;
17
+ export type GridPaneSlots = typeof __propDef.slots;
18
+ export default class GridPane extends SvelteComponentTyped<GridPaneProps, GridPaneEvents, GridPaneSlots> {
19
+ }
20
+ export {};
@@ -1,11 +1,13 @@
1
1
  <script>import Button from '../../../common/button/Button.svelte';
2
+ import CloseButton from '../../../common/CloseButton.svelte';
2
3
  import { faPlus, faTrashAlt } from '@fortawesome/free-solid-svg-icons';
4
+ import { CrossIcon } from 'lucide-svelte';
3
5
  import { getContext } from 'svelte';
4
6
  import { deleteGridItem } from '../appUtils';
5
7
  import PanelSection from './common/PanelSection.svelte';
6
8
  export let tabs;
7
9
  export let component;
8
- const { app, staticOutputs, runnableComponents } = getContext('AppEditorContext');
10
+ const { app, staticOutputs, runnableComponents, focusedGrid } = getContext('AppViewerContext');
9
11
  function addTab() {
10
12
  const numberOfTabs = tabs.length;
11
13
  tabs = [...tabs, `Tab ${numberOfTabs + 1}`];
@@ -18,7 +20,7 @@ function addTab() {
18
20
  function deleteSubgrid(index) {
19
21
  let subgrid = `${component.id}-${index}`;
20
22
  for (const item of $app.subgrids[subgrid]) {
21
- const components = deleteGridItem($app, item.data, subgrid);
23
+ const components = deleteGridItem($app, item.data, subgrid, false);
22
24
  console.log(components);
23
25
  for (const key in components) {
24
26
  delete $staticOutputs[key];
@@ -41,23 +43,13 @@ function deleteSubgrid(index) {
41
43
  {#if tabs.length == 0}
42
44
  <span class="text-xs text-gray-500">No Tabs</span>
43
45
  {/if}
44
- <div class="flex gap-2 flex-col mt-2">
46
+ <div class="w-full flex gap-2 flex-col mt-2">
45
47
  {#each tabs as value, index (index)}
46
- <div class="flex flex-row gap-2 items-center relative">
47
- <input type="text" bind:value />
48
+ <div class="w-full flex flex-row gap-2 items-center relative">
49
+ <input on:keydown|stopPropagation type="text" bind:value />
48
50
 
49
- <div class="absolute top-1 right-1">
50
- <Button
51
- size="xs"
52
- color="light"
53
- variant="border"
54
- on:click={() => {
55
- deleteSubgrid(index)
56
- }}
57
- iconOnly
58
- btnClasses="!text-red-500"
59
- startIcon={{ icon: faTrashAlt }}
60
- />
51
+ <div class="absolute right-1">
52
+ <CloseButton noBg on:close={() => deleteSubgrid(index)} />
61
53
  </div>
62
54
  </div>
63
55
  {/each}
@@ -6,6 +6,8 @@ declare const __propDef: {
6
6
  component: AppComponent;
7
7
  };
8
8
  events: {
9
+ keydown: KeyboardEvent;
10
+ } & {
9
11
  [evt: string]: CustomEvent<any>;
10
12
  };
11
13
  slots: {};
@@ -1,4 +1,5 @@
1
- <script>import ConnectedInputEditor from './inputEditor/ConnectedInputEditor.svelte';
1
+ <script>import VariableEditor from '../../../VariableEditor.svelte';
2
+ import ConnectedInputEditor from './inputEditor/ConnectedInputEditor.svelte';
2
3
  import EvalInputEditor from './inputEditor/EvalInputEditor.svelte';
3
4
  import RowInputEditor from './inputEditor/RowInputEditor.svelte';
4
5
  import StaticInputEditor from './inputEditor/StaticInputEditor.svelte';
@@ -12,7 +12,7 @@ export let userInputEnabled = true;
12
12
  export let shouldCapitalize = true;
13
13
  export let rowColumns = false;
14
14
  export let resourceOnly = false;
15
- const { connectingInput } = getContext('AppEditorContext');
15
+ const { connectingInput } = getContext('AppViewerContext');
16
16
  </script>
17
17
 
18
18
  {#if inputSpecs}
@@ -3,7 +3,7 @@ import { getContext } from 'svelte';
3
3
  import PanelSection from './common/PanelSection.svelte';
4
4
  export let recomputeIds = undefined;
5
5
  export let ownId;
6
- const { runnableComponents } = getContext('AppEditorContext');
6
+ const { runnableComponents } = getContext('AppViewerContext');
7
7
  function onChange(event, id) {
8
8
  if (event.currentTarget.checked) {
9
9
  recomputeIds = [...(recomputeIds ?? []), id];
@@ -38,6 +38,7 @@ function onChange(event, id) {
38
38
  </td>
39
39
  <td class="relative whitespace-nowrap px-4 py-2 ">
40
40
  <input
41
+ class="windmillapp"
41
42
  type="checkbox"
42
43
  on:change={(event) => onChange(event, id)}
43
44
  checked={recomputeIds?.includes(id)}
@@ -4,7 +4,7 @@ import { faClose, faEdit } from '@fortawesome/free-solid-svg-icons';
4
4
  import { getContext } from 'svelte';
5
5
  import { clearResultAppInput } from '../../utils';
6
6
  import InlineScriptEditorDrawer from '../inlineScriptsPanel/InlineScriptEditorDrawer.svelte';
7
- const { app } = getContext('AppEditorContext');
7
+ const { app } = getContext('AppViewerContext');
8
8
  export let appInput;
9
9
  let inlineScriptEditorDrawer;
10
10
  function edit() {
@@ -63,3 +63,9 @@ function clear() {
63
63
  Please configure the language in the inline script panel
64
64
  </span>
65
65
  {/if}
66
+ {#if appInput.runnable?.type === 'runnableByName' && appInput.runnable.inlineScript?.language === 'frontend'}
67
+ <span class="text-xs text-gray-500">
68
+ If the component is a display component. The script will be recomputed upon any changes to any
69
+ output or to the state.
70
+ </span>
71
+ {/if}
@@ -9,7 +9,7 @@ import PanelSection from './common/PanelSection.svelte';
9
9
  import TableActionLabel from './TableActionLabel.svelte';
10
10
  export let components;
11
11
  export let id;
12
- const { selectedComponent, staticOutputs } = getContext('AppEditorContext');
12
+ const { selectedComponent, staticOutputs } = getContext('AppViewerContext');
13
13
  function addComponent() {
14
14
  const actionId = getNextId(components.map((x) => x.id.split('_')[1]));
15
15
  const newComponent = {
@@ -36,7 +36,32 @@ function addComponent() {
36
36
  disabled: {
37
37
  fieldType: 'boolean',
38
38
  type: 'eval',
39
- expr: 'false'
39
+ expr: 'false',
40
+ tooltip: "Disabled based on a predicate. Use `row` to access the current row's data"
41
+ },
42
+ goto: {
43
+ tooltip: 'Go to an url on success if not empty',
44
+ fieldType: 'text',
45
+ type: 'static',
46
+ value: ''
47
+ },
48
+ gotoNewTab: {
49
+ tooltip: 'Go to create a new tab',
50
+ fieldType: 'boolean',
51
+ type: 'static',
52
+ value: true
53
+ },
54
+ beforeIcon: {
55
+ type: 'static',
56
+ value: undefined,
57
+ fieldType: 'icon-select',
58
+ onlyStatic: true
59
+ },
60
+ afterIcon: {
61
+ type: 'static',
62
+ value: undefined,
63
+ fieldType: 'icon-select',
64
+ onlyStatic: true
40
65
  }
41
66
  },
42
67
  componentInput: {
@@ -47,6 +72,9 @@ function addComponent() {
47
72
  value: undefined
48
73
  },
49
74
  recomputeIds: undefined,
75
+ customCss: {
76
+ button: { style: '', class: '' }
77
+ },
50
78
  card: false
51
79
  };
52
80
  components = [...components, newComponent];
@@ -15,12 +15,12 @@ export let tooltip = '';
15
15
  )}
16
16
  >
17
17
  <div class="flex justify-between flex-wrap items-center w-full gap-1">
18
- <div class="text-sm inline-flex items-center font-extrabold {titlePadding}">
18
+ <div class="text-sm inline-flex items-center font-extrabold {titlePadding} gap-1">
19
19
  <span class="truncate">
20
20
  {title}
21
21
  </span>
22
22
  {#if tooltip}
23
- <Tooltip>
23
+ <Tooltip light>
24
24
  {tooltip}
25
25
  </Tooltip>
26
26
  {/if}
@@ -0,0 +1,48 @@
1
+ <script>import ColorPicker, { ChromeVariant } from 'svelte-awesome-color-picker';
2
+ export let componentInput;
3
+ let isOpen = false;
4
+ </script>
5
+
6
+ <div class="color-picker-input">
7
+ <input
8
+ type="text"
9
+ readonly
10
+ value={componentInput.value}
11
+ on:focus|preventDefault|stopPropagation={() => (isOpen = true)}
12
+ />
13
+ <ColorPicker
14
+ bind:isOpen
15
+ bind:hex={componentInput.value}
16
+ label={componentInput.value}
17
+ canChangeMode={false}
18
+ components={ChromeVariant}
19
+ toRight
20
+ --focus-color="#e0e7ff"
21
+ />
22
+ </div>
23
+
24
+ <style global>
25
+ :global(.color-picker-input) :global(span) > :global(label.svelte-rogbpz) {
26
+ display: none;
27
+ }
28
+
29
+ :global(.color-picker-input) :global(span) > :global(div.wrapper) {
30
+ box-shadow: 0 10px 40px -5px rgba(0, 0, 0, 0.25) !important;
31
+ border-style: none !important;
32
+ border-radius: 0.375rem !important;
33
+ }
34
+
35
+ :global(.color-picker-input) :global(.slider-wrapper) {
36
+ overflow: visible !important;
37
+ }
38
+
39
+ :global(.color-picker-input) :global(.slider-indicator) {
40
+ width: 14px !important;
41
+ height: 14px !important;
42
+ border-radius: 7px !important;
43
+ margin-top: 0 !important;
44
+ background-color: #fafafa !important;
45
+ border: 1px solid #2e2e2eaf !important;
46
+ top: -2px !important;
47
+ box-shadow: 0 2px 6px -2px rgba(0, 0, 0, 0.5) !important;
48
+ }</style>
@@ -0,0 +1,19 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ import type { AppInput, StaticInput } from '../../../inputType';
3
+ declare const __propDef: {
4
+ props: {
5
+ componentInput: StaticInput<string> & Extract<AppInput, {
6
+ fieldType: 'color';
7
+ }>;
8
+ };
9
+ events: {
10
+ [evt: string]: CustomEvent<any>;
11
+ };
12
+ slots: {};
13
+ };
14
+ export type ColorInputProps = typeof __propDef.props;
15
+ export type ColorInputEvents = typeof __propDef.events;
16
+ export type ColorInputSlots = typeof __propDef.slots;
17
+ export default class ColorInput extends SvelteComponentTyped<ColorInputProps, ColorInputEvents, ColorInputSlots> {
18
+ }
19
+ export {};
@@ -2,7 +2,7 @@
2
2
  import { faArrowRight, faClose } from '@fortawesome/free-solid-svg-icons';
3
3
  import { getContext } from 'svelte';
4
4
  export let componentInput;
5
- const { connectingInput } = getContext('AppEditorContext');
5
+ const { connectingInput, app } = getContext('AppViewerContext');
6
6
  function applyConnection() {
7
7
  if (!$connectingInput.opened &&
8
8
  $connectingInput.input !== undefined &&
@@ -15,13 +15,6 @@ function applyConnection() {
15
15
  };
16
16
  }
17
17
  }
18
- function startConnecting() {
19
- $connectingInput = {
20
- opened: true,
21
- input: undefined,
22
- hoveredComponent: undefined
23
- };
24
- }
25
18
  $: $connectingInput && applyConnection();
26
19
  </script>
27
20
 
@@ -47,6 +40,7 @@ $: $connectingInput && applyConnection();
47
40
  if (componentInput.type === 'connected') {
48
41
  componentInput.connection = undefined
49
42
  }
43
+ $app = $app
50
44
  }}
51
45
  >
52
46
  Disconnect