windmill-components 1.46.3 → 1.52.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 (496) hide show
  1. package/common.d.ts +6 -5
  2. package/components/ApiConnectForm.svelte +21 -0
  3. package/components/ApiConnectForm.svelte.d.ts +18 -0
  4. package/components/AppConnect.svelte +229 -174
  5. package/components/AppConnect.svelte.d.ts +4 -3
  6. package/components/ArgInfo.svelte +2 -2
  7. package/components/ArgInfo.svelte.d.ts +3 -3
  8. package/components/ArgInput.svelte +82 -28
  9. package/components/ArgInput.svelte.d.ts +10 -3
  10. package/components/Badge.svelte.d.ts +3 -3
  11. package/components/Button.svelte +1 -1
  12. package/components/Button.svelte.d.ts +3 -3
  13. package/components/ButtonAndDropdown.svelte.d.ts +3 -3
  14. package/components/CenteredModal.svelte +20 -13
  15. package/components/CenteredModal.svelte.d.ts +3 -3
  16. package/components/ChevronButton.svelte.d.ts +3 -3
  17. package/components/CollapseLink.svelte.d.ts +3 -3
  18. package/components/CronInput.svelte +1 -1
  19. package/components/CronInput.svelte.d.ts +3 -3
  20. package/components/DisplayResult.svelte.d.ts +3 -3
  21. package/components/Dropdown.svelte +13 -7
  22. package/components/Dropdown.svelte.d.ts +3 -3
  23. package/components/Editor.svelte +3 -2
  24. package/components/Editor.svelte.d.ts +4 -3
  25. package/components/EditorBar.svelte +34 -38
  26. package/components/EditorBar.svelte.d.ts +3 -3
  27. package/components/FieldHeader.svelte +4 -3
  28. package/components/FieldHeader.svelte.d.ts +3 -3
  29. package/components/FlowBuilder.svelte +37 -14
  30. package/components/FlowBuilder.svelte.d.ts +4 -3
  31. package/components/FlowGraphViewer.svelte +76 -0
  32. package/components/FlowGraphViewer.svelte.d.ts +23 -0
  33. package/components/FlowJobResult.svelte.d.ts +3 -3
  34. package/components/FlowMetadata.svelte.d.ts +3 -3
  35. package/components/FlowPreviewContent.svelte +54 -64
  36. package/components/FlowPreviewContent.svelte.d.ts +3 -3
  37. package/components/FlowStatusViewer.svelte +156 -106
  38. package/components/FlowStatusViewer.svelte.d.ts +5 -4
  39. package/components/FlowViewer.svelte +3 -78
  40. package/components/FlowViewer.svelte.d.ts +3 -3
  41. package/components/GroupModal.svelte.d.ts +3 -3
  42. package/components/HighlightCode.svelte.d.ts +3 -3
  43. package/components/IconedPath.svelte.d.ts +3 -3
  44. package/components/IconedResourceType.svelte +3 -61
  45. package/components/IconedResourceType.svelte.d.ts +3 -3
  46. package/components/InputTransformForm.svelte +108 -77
  47. package/components/InputTransformForm.svelte.d.ts +10 -5
  48. package/components/InputTransformsViewer.svelte.d.ts +3 -3
  49. package/components/InviteGlobalUser.svelte.d.ts +3 -3
  50. package/components/InviteUser.svelte.d.ts +3 -3
  51. package/components/ItemPicker.svelte +77 -29
  52. package/components/ItemPicker.svelte.d.ts +6 -4
  53. package/components/JobArgs.svelte +5 -5
  54. package/components/JobArgs.svelte.d.ts +3 -3
  55. package/components/JobStatus.svelte.d.ts +3 -3
  56. package/components/LogViewer.svelte +19 -4
  57. package/components/LogViewer.svelte.d.ts +3 -3
  58. package/components/Modal.svelte.d.ts +3 -3
  59. package/components/ModulePreview.svelte +8 -0
  60. package/components/ModulePreview.svelte.d.ts +3 -3
  61. package/components/ObjectResourceInput.svelte +37 -21
  62. package/components/ObjectResourceInput.svelte.d.ts +4 -3
  63. package/components/ObjectTypeNarrowing.svelte.d.ts +3 -3
  64. package/components/PageHeader.svelte +2 -2
  65. package/components/PageHeader.svelte.d.ts +3 -3
  66. package/components/Password.svelte +2 -2
  67. package/components/Password.svelte.d.ts +4 -4
  68. package/components/Path.svelte +4 -1
  69. package/components/Path.svelte.d.ts +5 -4
  70. package/components/Popover.svelte.d.ts +3 -3
  71. package/components/RadioButton.svelte.d.ts +3 -3
  72. package/components/Required.svelte.d.ts +3 -3
  73. package/components/ResourceEditor.svelte +73 -163
  74. package/components/ResourceEditor.svelte.d.ts +3 -5
  75. package/components/ResourcePicker.svelte +33 -30
  76. package/components/ResourcePicker.svelte.d.ts +3 -3
  77. package/components/ResourceTypePicker.svelte.d.ts +3 -3
  78. package/components/RunChart.svelte.d.ts +3 -3
  79. package/components/RunForm.svelte.d.ts +3 -3
  80. package/components/SchemaEditor.svelte +55 -23
  81. package/components/SchemaEditor.svelte.d.ts +3 -3
  82. package/components/SchemaEditorProperty.svelte.d.ts +3 -3
  83. package/components/SchemaForm.svelte +97 -33
  84. package/components/SchemaForm.svelte.d.ts +8 -4
  85. package/components/SchemaModal.svelte.d.ts +4 -4
  86. package/components/SchemaViewer.svelte.d.ts +3 -3
  87. package/components/ScriptBuilder.svelte +64 -66
  88. package/components/ScriptBuilder.svelte.d.ts +3 -3
  89. package/components/ScriptEditor.svelte +26 -28
  90. package/components/ScriptEditor.svelte.d.ts +4 -3
  91. package/components/ScriptPicker.svelte +28 -38
  92. package/components/ScriptPicker.svelte.d.ts +4 -3
  93. package/components/ScriptSchema.svelte +1 -1
  94. package/components/ScriptSchema.svelte.d.ts +3 -3
  95. package/components/SearchItems.svelte +29 -0
  96. package/components/SearchItems.svelte.d.ts +23 -0
  97. package/components/ShareModal.svelte.d.ts +3 -3
  98. package/components/SharedBadge.svelte +4 -2
  99. package/components/SharedBadge.svelte.d.ts +3 -3
  100. package/components/SimpleEditor.svelte +33 -7
  101. package/components/SimpleEditor.svelte.d.ts +4 -4
  102. package/components/Star.svelte +42 -0
  103. package/components/Star.svelte.d.ts +19 -0
  104. package/components/StringTypeNarrowing.svelte.d.ts +3 -3
  105. package/components/SuperadminSettings.svelte +18 -15
  106. package/components/SuperadminSettings.svelte.d.ts +3 -3
  107. package/components/TableCustom.svelte +1 -1
  108. package/components/TableCustom.svelte.d.ts +3 -3
  109. package/components/TableSimple.svelte.d.ts +3 -3
  110. package/components/TestJobLoader.svelte +41 -24
  111. package/components/TestJobLoader.svelte.d.ts +9 -3
  112. package/components/Toggle.svelte.d.ts +3 -3
  113. package/components/Tooltip.svelte.d.ts +3 -3
  114. package/components/UserSettings.svelte.d.ts +3 -3
  115. package/components/VariableEditor.svelte +71 -32
  116. package/components/VariableEditor.svelte.d.ts +5 -3
  117. package/components/apps/CreateApp.svelte +65 -0
  118. package/components/apps/CreateApp.svelte.d.ts +14 -0
  119. package/components/apps/components/DisplayComponent.svelte +23 -0
  120. package/components/apps/components/DisplayComponent.svelte.d.ts +19 -0
  121. package/components/apps/components/buttons/AppButton.svelte +42 -0
  122. package/components/apps/components/buttons/AppButton.svelte.d.ts +25 -0
  123. package/components/apps/components/dataDisplay/AppBarChart.svelte +18 -0
  124. package/components/apps/components/dataDisplay/AppBarChart.svelte.d.ts +23 -0
  125. package/components/apps/components/dataDisplay/AppPieChart.svelte +22 -0
  126. package/components/apps/components/dataDisplay/AppPieChart.svelte.d.ts +23 -0
  127. package/components/apps/components/dataDisplay/AppTable.svelte +135 -0
  128. package/components/apps/components/dataDisplay/AppTable.svelte.d.ts +27 -0
  129. package/components/apps/components/dataDisplay/AppText.svelte +15 -0
  130. package/components/apps/components/dataDisplay/AppText.svelte.d.ts +21 -0
  131. package/components/apps/components/helpers/AlignWrapper.svelte +29 -0
  132. package/components/apps/components/helpers/AlignWrapper.svelte.d.ts +19 -0
  133. package/components/apps/components/helpers/DebouncedInput.svelte +16 -0
  134. package/components/apps/components/helpers/DebouncedInput.svelte.d.ts +19 -0
  135. package/components/apps/components/helpers/InputValue.svelte +37 -0
  136. package/components/apps/components/helpers/InputValue.svelte.d.ts +18 -0
  137. package/components/apps/components/helpers/RunnableComponent.svelte +182 -0
  138. package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +28 -0
  139. package/components/apps/components/index.d.ts +22 -0
  140. package/components/apps/components/index.js +42 -0
  141. package/components/apps/components/selectInputs/AppCheckbox.svelte +26 -0
  142. package/components/apps/components/selectInputs/AppCheckbox.svelte.d.ts +22 -0
  143. package/components/apps/editor/AppEditor.svelte +105 -0
  144. package/components/apps/editor/AppEditor.svelte.d.ts +19 -0
  145. package/components/apps/editor/AppEditorHeader.svelte +75 -0
  146. package/components/apps/editor/AppEditorHeader.svelte.d.ts +19 -0
  147. package/components/apps/editor/ComponentEditor.svelte +64 -0
  148. package/components/apps/editor/ComponentEditor.svelte.d.ts +18 -0
  149. package/components/apps/editor/GridEditor.svelte +45 -0
  150. package/components/apps/editor/GridEditor.svelte.d.ts +14 -0
  151. package/components/apps/editor/componentsPanel/ComponentList.svelte +92 -0
  152. package/components/apps/editor/componentsPanel/ComponentList.svelte.d.ts +14 -0
  153. package/components/apps/editor/componentsPanel/componentDefaultProps.d.ts +7 -0
  154. package/components/apps/editor/componentsPanel/componentDefaultProps.js +9 -0
  155. package/components/apps/editor/componentsPanel/componentStaticValues.d.ts +4 -0
  156. package/components/apps/editor/componentsPanel/componentStaticValues.js +6 -0
  157. package/components/apps/editor/componentsPanel/data.d.ts +3 -0
  158. package/components/apps/editor/componentsPanel/data.js +158 -0
  159. package/components/apps/editor/componentsPanel/store.d.ts +9 -0
  160. package/components/apps/editor/componentsPanel/store.js +16 -0
  161. package/components/apps/editor/contextPanel/ComponentOutputViewer.svelte +22 -0
  162. package/components/apps/editor/contextPanel/ComponentOutputViewer.svelte.d.ts +19 -0
  163. package/components/apps/editor/contextPanel/ContextPanel.svelte +184 -0
  164. package/components/apps/editor/contextPanel/ContextPanel.svelte.d.ts +16 -0
  165. package/components/apps/editor/contextPanel/InlineScriptCreationPanel.svelte +29 -0
  166. package/components/apps/editor/contextPanel/InlineScriptCreationPanel.svelte.d.ts +16 -0
  167. package/components/apps/editor/settingsPanel/ComponentPanel.svelte +196 -0
  168. package/components/apps/editor/settingsPanel/ComponentPanel.svelte.d.ts +18 -0
  169. package/components/apps/editor/settingsPanel/DynamicInputEditor.svelte +64 -0
  170. package/components/apps/editor/settingsPanel/DynamicInputEditor.svelte.d.ts +17 -0
  171. package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +11 -0
  172. package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte.d.ts +18 -0
  173. package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +99 -0
  174. package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte.d.ts +20 -0
  175. package/components/apps/editor/settingsPanel/PickFlow.svelte +37 -0
  176. package/components/apps/editor/settingsPanel/PickFlow.svelte.d.ts +16 -0
  177. package/components/apps/editor/settingsPanel/PickInlineScript.svelte +38 -0
  178. package/components/apps/editor/settingsPanel/PickInlineScript.svelte.d.ts +20 -0
  179. package/components/apps/editor/settingsPanel/SectionPanel.svelte +70 -0
  180. package/components/apps/editor/settingsPanel/SectionPanel.svelte.d.ts +19 -0
  181. package/components/apps/editor/settingsPanel/StaticInputEditor.svelte +29 -0
  182. package/components/apps/editor/settingsPanel/StaticInputEditor.svelte.d.ts +18 -0
  183. package/components/apps/editor/settingsPanel/TableActions.svelte +107 -0
  184. package/components/apps/editor/settingsPanel/TableActions.svelte.d.ts +19 -0
  185. package/components/apps/editor/settingsPanel/UserInputEditor.svelte +2 -0
  186. package/components/apps/editor/settingsPanel/UserInputEditor.svelte.d.ts +14 -0
  187. package/components/apps/editor/settingsPanel/common/PanelSection.svelte +11 -0
  188. package/components/apps/editor/settingsPanel/common/PanelSection.svelte.d.ts +19 -0
  189. package/components/apps/gridUtils.d.ts +11 -0
  190. package/components/apps/gridUtils.js +24 -0
  191. package/components/apps/rx.d.ts +27 -0
  192. package/components/apps/rx.js +87 -0
  193. package/components/apps/types.d.ts +120 -0
  194. package/components/apps/types.js +1 -0
  195. package/components/apps/utils.d.ts +36 -0
  196. package/components/apps/utils.js +96 -0
  197. package/components/common/actionRow/ActionRow.svelte.d.ts +3 -3
  198. package/components/common/alert/Alert.svelte +29 -7
  199. package/components/common/alert/Alert.svelte.d.ts +4 -3
  200. package/components/common/alert/model.d.ts +1 -1
  201. package/components/common/badge/Badge.svelte +3 -7
  202. package/components/common/badge/Badge.svelte.d.ts +6 -4
  203. package/components/common/badge/model.d.ts +2 -2
  204. package/components/common/breadcrumb/Breadcrumb.svelte.d.ts +3 -3
  205. package/components/common/button/Button.svelte +24 -6
  206. package/components/common/button/Button.svelte.d.ts +6 -4
  207. package/components/common/button/ButtonPopup.svelte +3 -1
  208. package/components/common/button/ButtonPopup.svelte.d.ts +5 -4
  209. package/components/common/button/ButtonPopupItem.svelte.d.ts +3 -3
  210. package/components/common/button/model.d.ts +2 -1
  211. package/components/common/button/model.js +2 -1
  212. package/components/common/confirmationModal/ConfirmationModal.svelte.d.ts +3 -3
  213. package/components/common/confirmationModal/UnsavedConfirmationModal.svelte.d.ts +3 -3
  214. package/components/common/drawer/Drawer.svelte +5 -1
  215. package/components/common/drawer/Drawer.svelte.d.ts +3 -3
  216. package/components/common/drawer/DrawerContent.svelte +11 -3
  217. package/components/common/drawer/DrawerContent.svelte.d.ts +5 -3
  218. package/components/common/languageIcons/LanguageIcon.svelte +6 -4
  219. package/components/common/languageIcons/LanguageIcon.svelte.d.ts +4 -4
  220. package/components/common/menu/Menu.svelte +7 -5
  221. package/components/common/menu/Menu.svelte.d.ts +7 -6
  222. package/components/common/menu/MenuItem.svelte +1 -0
  223. package/components/common/popup/Popup.svelte.d.ts +3 -3
  224. package/components/common/skeleton/Skeleton.svelte.d.ts +3 -3
  225. package/components/common/skeleton/SkeletonElement.svelte.d.ts +3 -3
  226. package/components/common/skeleton/model.d.ts +4 -4
  227. package/components/common/table/AppRow.svelte +61 -0
  228. package/components/common/table/AppRow.svelte.d.ts +23 -0
  229. package/components/common/table/FlowRow.svelte +136 -0
  230. package/components/common/table/FlowRow.svelte.d.ts +25 -0
  231. package/components/common/table/LanguageBadge.svelte +32 -0
  232. package/components/common/table/LanguageBadge.svelte.d.ts +24 -0
  233. package/components/common/table/Row.svelte +47 -0
  234. package/components/common/table/Row.svelte.d.ts +27 -0
  235. package/components/common/table/RowIcon.svelte +23 -0
  236. package/components/common/table/RowIcon.svelte.d.ts +16 -0
  237. package/components/common/table/ScriptRow.svelte +147 -0
  238. package/components/common/table/ScriptRow.svelte.d.ts +25 -0
  239. package/components/common/table/Table.svelte +9 -0
  240. package/components/common/table/Table.svelte.d.ts +23 -0
  241. package/components/common/tabs/Tab.svelte +15 -4
  242. package/components/common/tabs/Tab.svelte.d.ts +5 -3
  243. package/components/common/tabs/TabContent.svelte.d.ts +3 -3
  244. package/components/common/tabs/Tabs.svelte +5 -1
  245. package/components/common/tabs/Tabs.svelte.d.ts +4 -4
  246. package/components/common/toggleButton/ToggleButton.svelte +12 -9
  247. package/components/common/toggleButton/ToggleButton.svelte.d.ts +6 -4
  248. package/components/common/toggleButton/ToggleButtonGroup.svelte +12 -19
  249. package/components/common/toggleButton/ToggleButtonGroup.svelte.d.ts +10 -8
  250. package/components/flows/CreateActionsFlow.svelte +66 -0
  251. package/components/flows/CreateActionsFlow.svelte.d.ts +14 -0
  252. package/components/flows/FlowEditor.svelte +22 -5
  253. package/components/flows/FlowEditor.svelte.d.ts +4 -3
  254. package/components/flows/FlowProgressBar.svelte.d.ts +3 -3
  255. package/components/flows/common/FlowCard.svelte.d.ts +3 -3
  256. package/components/flows/common/FlowCardHeader.svelte +3 -1
  257. package/components/flows/common/FlowCardHeader.svelte.d.ts +3 -3
  258. package/components/flows/content/CapturePayload.svelte.d.ts +3 -3
  259. package/components/flows/content/DynamicInputHelpBox.svelte +2 -32
  260. package/components/flows/content/DynamicInputHelpBox.svelte.d.ts +4 -6
  261. package/components/flows/content/FlowBranchAllWrapper.svelte.d.ts +3 -3
  262. package/components/flows/content/FlowBranchOneWrapper.svelte +3 -2
  263. package/components/flows/content/FlowBranchOneWrapper.svelte.d.ts +3 -3
  264. package/components/flows/content/FlowBranchesWrapper.svelte +2 -2
  265. package/components/flows/content/FlowBranchesWrapper.svelte.d.ts +3 -3
  266. package/components/flows/content/FlowEditorPanel.svelte +2 -0
  267. package/components/flows/content/FlowEditorPanel.svelte.d.ts +3 -3
  268. package/components/flows/content/FlowFailureModule.svelte.d.ts +3 -3
  269. package/components/flows/content/FlowInput.svelte +9 -12
  270. package/components/flows/content/FlowInput.svelte.d.ts +3 -3
  271. package/components/flows/content/FlowInputs.svelte +119 -140
  272. package/components/flows/content/FlowInputs.svelte.d.ts +4 -7
  273. package/components/flows/content/FlowLoop.svelte +3 -2
  274. package/components/flows/content/FlowLoop.svelte.d.ts +3 -3
  275. package/components/flows/content/FlowModuleComponent.svelte +49 -45
  276. package/components/flows/content/FlowModuleComponent.svelte.d.ts +3 -3
  277. package/components/flows/content/FlowModuleEarlyStop.svelte +3 -2
  278. package/components/flows/content/FlowModuleEarlyStop.svelte.d.ts +3 -3
  279. package/components/flows/content/FlowModuleHeader.svelte +6 -3
  280. package/components/flows/content/FlowModuleHeader.svelte.d.ts +3 -3
  281. package/components/flows/content/FlowModuleScript.svelte.d.ts +3 -3
  282. package/components/flows/content/FlowModuleSuspend.svelte +9 -3
  283. package/components/flows/content/FlowModuleSuspend.svelte.d.ts +3 -3
  284. package/components/flows/content/FlowModuleWrapper.svelte +0 -22
  285. package/components/flows/content/FlowModuleWrapper.svelte.d.ts +3 -3
  286. package/components/flows/content/FlowRetries.svelte.d.ts +3 -3
  287. package/components/flows/content/FlowSchedules.svelte.d.ts +3 -3
  288. package/components/flows/content/FlowSettings.svelte +88 -93
  289. package/components/flows/content/FlowSettings.svelte.d.ts +3 -3
  290. package/components/flows/content/RemoveStepConfirmationModal.svelte.d.ts +3 -3
  291. package/components/flows/flowState.d.ts +2 -2
  292. package/components/flows/flowStateUtils.d.ts +1 -0
  293. package/components/flows/flowStateUtils.js +13 -2
  294. package/components/flows/flowStore.d.ts +1 -1
  295. package/components/flows/flowStore.js +1 -1
  296. package/components/flows/header/FlowImportExportMenu.svelte +9 -23
  297. package/components/flows/header/FlowImportExportMenu.svelte.d.ts +3 -3
  298. package/components/flows/header/FlowPreviewButtons.svelte +20 -16
  299. package/components/flows/header/FlowPreviewButtons.svelte.d.ts +3 -3
  300. package/components/flows/map/FlowBranchAllMap.svelte +47 -37
  301. package/components/flows/map/FlowBranchAllMap.svelte.d.ts +3 -3
  302. package/components/flows/map/FlowBranchOneMap.svelte +50 -42
  303. package/components/flows/map/FlowBranchOneMap.svelte.d.ts +3 -3
  304. package/components/flows/map/FlowErrorHandlerItem.svelte +5 -3
  305. package/components/flows/map/FlowErrorHandlerItem.svelte.d.ts +3 -3
  306. package/components/flows/map/FlowInputsItem.svelte +3 -2
  307. package/components/flows/map/FlowInputsItem.svelte.d.ts +3 -3
  308. package/components/flows/map/FlowModuleSchemaItem.svelte +26 -31
  309. package/components/flows/map/FlowModuleSchemaItem.svelte.d.ts +5 -5
  310. package/components/flows/map/FlowModuleSchemaMap.svelte +50 -92
  311. package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +3 -4
  312. package/components/flows/map/FlowSettingsItem.svelte +8 -7
  313. package/components/flows/map/FlowSettingsItem.svelte.d.ts +3 -3
  314. package/components/flows/map/InsertModuleButton.svelte +62 -8
  315. package/components/flows/map/InsertModuleButton.svelte.d.ts +4 -4
  316. package/components/flows/map/MapItem.svelte +30 -16
  317. package/components/flows/map/MapItem.svelte.d.ts +4 -6
  318. package/components/flows/pickers/FlowScriptPicker.svelte +11 -4
  319. package/components/flows/pickers/FlowScriptPicker.svelte.d.ts +8 -6
  320. package/components/flows/pickers/PickHubScript.svelte +74 -29
  321. package/components/flows/pickers/PickHubScript.svelte.d.ts +5 -6
  322. package/components/flows/pickers/PickScript.svelte +16 -9
  323. package/components/flows/pickers/PickScript.svelte.d.ts +3 -4
  324. package/components/flows/pickers/WorkspaceScriptPicker.svelte +53 -0
  325. package/components/flows/pickers/WorkspaceScriptPicker.svelte.d.ts +19 -0
  326. package/components/flows/pickers/model.d.ts +5 -3
  327. package/components/flows/previousResults.d.ts +2 -2
  328. package/components/flows/previousResults.js +5 -5
  329. package/components/flows/propPicker/PropPickerWrapper.svelte +2 -2
  330. package/components/flows/propPicker/PropPickerWrapper.svelte.d.ts +7 -7
  331. package/components/flows/scheduleUtils.d.ts +1 -1
  332. package/components/flows/scheduleUtils.js +1 -1
  333. package/components/flows/types.d.ts +1 -1
  334. package/components/flows/utils.d.ts +1 -1
  335. package/components/flows/utils.js +4 -9
  336. package/components/graph/FlowGraph.svelte +57 -18
  337. package/components/graph/FlowGraph.svelte.d.ts +6 -4
  338. package/components/graph/model.d.ts +7 -6
  339. package/components/icons/AirtableIcon.svelte.d.ts +3 -3
  340. package/components/icons/DbIcon.svelte.d.ts +3 -3
  341. package/components/icons/DiscordIcon.svelte.d.ts +3 -3
  342. package/components/icons/GCloudIcon.svelte.d.ts +3 -3
  343. package/components/icons/GItlabIcon.svelte.d.ts +3 -3
  344. package/components/icons/GSheetsIcon.svelte.d.ts +3 -3
  345. package/components/icons/GcalIcon.svelte.d.ts +3 -3
  346. package/components/icons/GdriveIcon.svelte.d.ts +3 -3
  347. package/components/icons/GithubIcon.svelte.d.ts +3 -3
  348. package/components/icons/GmailIcon.svelte.d.ts +3 -3
  349. package/components/icons/HatIcon.svelte.d.ts +3 -3
  350. package/components/icons/HttpIcon.svelte.d.ts +3 -3
  351. package/components/icons/Mail.svelte.d.ts +3 -3
  352. package/components/icons/MailchimpIcon.svelte +18 -0
  353. package/components/icons/MailchimpIcon.svelte.d.ts +17 -0
  354. package/components/icons/MastodonIcon.svelte.d.ts +3 -3
  355. package/components/icons/MatrixIcon.svelte.d.ts +3 -3
  356. package/components/icons/Mysql.svelte.d.ts +3 -3
  357. package/components/icons/PostgresIcon.svelte.d.ts +3 -3
  358. package/components/icons/S3Icon.svelte.d.ts +3 -3
  359. package/components/icons/SendgridIcon.svelte +66 -0
  360. package/components/icons/SendgridIcon.svelte.d.ts +17 -0
  361. package/components/icons/Slack.svelte.d.ts +3 -3
  362. package/components/icons/TogglIcon.svelte.d.ts +3 -3
  363. package/components/icons/WindmillIcon.svelte.d.ts +3 -3
  364. package/components/icons/index.d.ts +48 -0
  365. package/components/icons/index.js +48 -0
  366. package/components/jobs/JobDetail.svelte +2 -2
  367. package/components/jobs/JobDetail.svelte.d.ts +3 -3
  368. package/components/preview/FlowPreviewStatus.svelte.d.ts +3 -3
  369. package/components/progressBar/ProgressBar.svelte.d.ts +3 -3
  370. package/components/progressBar/ProgressBarGeneralPart.svelte.d.ts +3 -3
  371. package/components/progressBar/ProgressBarLoopAccessor.svelte.d.ts +3 -3
  372. package/components/progressBar/ProgressBarLoopPart.svelte.d.ts +3 -3
  373. package/components/progressBar/model.d.ts +9 -9
  374. package/components/propertyPicker/ObjectViewer.svelte +34 -9
  375. package/components/propertyPicker/ObjectViewer.svelte.d.ts +4 -3
  376. package/components/propertyPicker/PropPicker.svelte +118 -110
  377. package/components/propertyPicker/PropPicker.svelte.d.ts +3 -3
  378. package/components/propertyPicker/PropPickerResult.svelte +0 -1
  379. package/components/propertyPicker/PropPickerResult.svelte.d.ts +3 -3
  380. package/components/scriptEditor/LogPanel.svelte +4 -4
  381. package/components/scriptEditor/LogPanel.svelte.d.ts +3 -3
  382. package/components/scripts/{CreateActions.svelte → CreateActionsScript.svelte} +7 -46
  383. package/components/scripts/CreateActionsScript.svelte.d.ts +14 -0
  384. package/components/sidebar/MenuLink.svelte +7 -4
  385. package/components/sidebar/MenuLink.svelte.d.ts +4 -3
  386. package/components/sidebar/SidebarContent.svelte +25 -18
  387. package/components/sidebar/SidebarContent.svelte.d.ts +7 -3
  388. package/components/sidebar/UserMenu.svelte +1 -1
  389. package/components/sidebar/UserMenu.svelte.d.ts +3 -3
  390. package/components/sidebar/WorkspaceMenu.svelte +3 -3
  391. package/components/sidebar/WorkspaceMenu.svelte.d.ts +3 -3
  392. package/components/splitPanes/SplitPanesWrapper.svelte.d.ts +3 -3
  393. package/editorUtils.d.ts +1 -1
  394. package/editorUtils.js +2 -2
  395. package/gen/core/ApiRequestOptions.d.ts +1 -1
  396. package/gen/core/ApiResult.d.ts +1 -1
  397. package/gen/core/OpenAPI.d.ts +3 -3
  398. package/gen/core/OpenAPI.js +1 -1
  399. package/gen/index.d.ts +2 -0
  400. package/gen/index.js +1 -0
  401. package/gen/models/AppWithLastVersion.d.ts +12 -12
  402. package/gen/models/AuditLog.d.ts +1 -1
  403. package/gen/models/BranchAll.d.ts +1 -1
  404. package/gen/models/BranchOne.d.ts +1 -1
  405. package/gen/models/CompletedJob.d.ts +1 -1
  406. package/gen/models/ContextualVariable.d.ts +1 -1
  407. package/gen/models/CreateResource.d.ts +1 -2
  408. package/gen/models/CreateVariable.d.ts +1 -1
  409. package/gen/models/CreateWorkspace.d.ts +1 -1
  410. package/gen/models/EditResource.d.ts +1 -1
  411. package/gen/models/EditResourceType.d.ts +1 -1
  412. package/gen/models/EditSchedule.d.ts +1 -1
  413. package/gen/models/EditVariable.d.ts +1 -1
  414. package/gen/models/EditWorkspaceUser.d.ts +1 -1
  415. package/gen/models/Flow.d.ts +1 -1
  416. package/gen/models/FlowMetadata.d.ts +2 -1
  417. package/gen/models/FlowModule.d.ts +1 -1
  418. package/gen/models/FlowModuleValue.d.ts +1 -1
  419. package/gen/models/FlowPreview.d.ts +1 -1
  420. package/gen/models/FlowStatus.d.ts +1 -1
  421. package/gen/models/FlowStatusModule.d.ts +1 -1
  422. package/gen/models/FlowValue.d.ts +1 -1
  423. package/gen/models/ForloopFlow.d.ts +1 -1
  424. package/gen/models/GlobalUserInfo.d.ts +1 -1
  425. package/gen/models/Group.d.ts +1 -1
  426. package/gen/models/Identity.d.ts +1 -1
  427. package/gen/models/InputTransform.d.ts +1 -1
  428. package/gen/models/JavascriptTransform.d.ts +1 -1
  429. package/gen/models/Job.d.ts +1 -1
  430. package/gen/models/ListableApp.d.ts +10 -8
  431. package/gen/models/ListableResource.d.ts +13 -0
  432. package/gen/models/ListableResource.js +4 -0
  433. package/gen/models/ListableVariable.d.ts +4 -1
  434. package/gen/models/Login.d.ts +1 -1
  435. package/gen/models/MainArgSignature.d.ts +1 -1
  436. package/gen/models/NewSchedule.d.ts +1 -1
  437. package/gen/models/NewToken.d.ts +1 -1
  438. package/gen/models/NewUser.d.ts +1 -1
  439. package/gen/models/OpenFlow.d.ts +1 -1
  440. package/gen/models/OpenFlowWPath.d.ts +1 -1
  441. package/gen/models/PathScript.d.ts +1 -1
  442. package/gen/models/Policy.d.ts +1 -1
  443. package/gen/models/Preview.d.ts +1 -1
  444. package/gen/models/QueuedJob.d.ts +1 -1
  445. package/gen/models/RawScript.d.ts +2 -1
  446. package/gen/models/Resource.d.ts +1 -1
  447. package/gen/models/ResourceType.d.ts +1 -1
  448. package/gen/models/Retry.d.ts +1 -1
  449. package/gen/models/Schedule.d.ts +1 -1
  450. package/gen/models/Script.d.ts +2 -1
  451. package/gen/models/ScriptArgs.d.ts +1 -1
  452. package/gen/models/SlackToken.d.ts +1 -1
  453. package/gen/models/StaticTransform.d.ts +1 -1
  454. package/gen/models/TokenResponse.d.ts +1 -1
  455. package/gen/models/TruncatedToken.d.ts +1 -1
  456. package/gen/models/Usage.d.ts +1 -1
  457. package/gen/models/User.d.ts +1 -1
  458. package/gen/models/UserWorkspaceList.d.ts +1 -1
  459. package/gen/models/WorkerPing.d.ts +1 -1
  460. package/gen/models/Workspace.d.ts +1 -1
  461. package/gen/models/WorkspaceInvite.d.ts +1 -1
  462. package/gen/services/AppService.d.ts +101 -1
  463. package/gen/services/AppService.js +88 -1
  464. package/gen/services/FavoriteService.d.ts +27 -0
  465. package/gen/services/FavoriteService.js +36 -0
  466. package/gen/services/FlowService.d.ts +7 -91
  467. package/gen/services/FlowService.js +2 -73
  468. package/gen/services/JobService.d.ts +15 -0
  469. package/gen/services/JobService.js +19 -0
  470. package/gen/services/ResourceService.d.ts +3 -2
  471. package/gen/services/ResourceService.js +1 -1
  472. package/gen/services/ScheduleService.d.ts +1 -1
  473. package/gen/services/ScheduleService.js +1 -1
  474. package/gen/services/ScriptService.d.ts +7 -1
  475. package/gen/services/ScriptService.js +2 -1
  476. package/package.json +422 -361
  477. package/script_helpers.d.ts +3 -1
  478. package/script_helpers.js +73 -25
  479. package/stateMachine.d.ts +4 -4
  480. package/stores.d.ts +2 -0
  481. package/stores.js +1 -0
  482. package/utils.d.ts +4 -2
  483. package/utils.js +20 -3
  484. package/components/FlowModulesViewer.svelte +0 -191
  485. package/components/FlowModulesViewer.svelte.d.ts +0 -18
  486. package/components/landing/FlowGettingStarted.svelte +0 -50
  487. package/components/landing/FlowGettingStarted.svelte.d.ts +0 -19
  488. package/components/landing/FlowLandingBox.svelte +0 -39
  489. package/components/landing/FlowLandingBox.svelte.d.ts +0 -17
  490. package/components/landing/RessourceGettingStarted.svelte +0 -21
  491. package/components/landing/RessourceGettingStarted.svelte.d.ts +0 -19
  492. package/components/landing/ScriptBox.svelte +0 -52
  493. package/components/landing/ScriptBox.svelte.d.ts +0 -17
  494. package/components/landing/ScriptGettingStarted.svelte +0 -48
  495. package/components/landing/ScriptGettingStarted.svelte.d.ts +0 -19
  496. package/components/scripts/CreateActions.svelte.d.ts +0 -14
@@ -1,16 +1,18 @@
1
- <script>import { sendUserToast } from '../utils';
1
+ <script>import { canWrite, sendUserToast } from '../utils';
2
2
  import { VariableService } from '../gen';
3
3
  import Path from './Path.svelte';
4
4
  import { createEventDispatcher } from 'svelte';
5
- import { workspaceStore } from '../stores';
5
+ import { userStore, workspaceStore } from '../stores';
6
6
  import Required from './Required.svelte';
7
7
  import Tooltip from './Tooltip.svelte';
8
- import { Button } from './common';
8
+ import { Button, ToggleButton, ToggleButtonGroup } from './common';
9
9
  import Drawer from './common/drawer/Drawer.svelte';
10
10
  import DrawerContent from './common/drawer/DrawerContent.svelte';
11
11
  import Alert from './common/alert/Alert.svelte';
12
12
  import autosize from 'svelte-autosize';
13
13
  import Toggle from './Toggle.svelte';
14
+ import { faSave } from '@fortawesome/free-solid-svg-icons';
15
+ import SimpleEditor from './SimpleEditor.svelte';
14
16
  const dispatch = createEventDispatcher();
15
17
  let path = '';
16
18
  let variable = {
@@ -23,6 +25,7 @@ let drawer;
23
25
  let edit = false;
24
26
  let initialPath;
25
27
  let pathError = '';
28
+ let can_write = true;
26
29
  export function initNew() {
27
30
  variable = {
28
31
  value: '',
@@ -32,6 +35,7 @@ export function initNew() {
32
35
  edit = false;
33
36
  initialPath = '';
34
37
  path = '';
38
+ can_write = true;
35
39
  drawer.openDrawer();
36
40
  }
37
41
  export async function editVariable(path) {
@@ -41,6 +45,8 @@ export async function editVariable(path) {
41
45
  path,
42
46
  decryptSecret: false
43
47
  });
48
+ can_write =
49
+ getV.workspace_id == $workspaceStore && canWrite(path, getV.extra_perms ?? {}, $userStore);
44
50
  variable = {
45
51
  value: getV.value ?? '',
46
52
  is_secret: getV.is_secret,
@@ -49,6 +55,15 @@ export async function editVariable(path) {
49
55
  initialPath = path;
50
56
  drawer.openDrawer();
51
57
  }
58
+ export async function loadVariable(path) {
59
+ const getV = await VariableService.getVariable({
60
+ workspace: $workspaceStore ?? '',
61
+ path,
62
+ decryptSecret: true
63
+ });
64
+ variable.value = getV.value ?? '';
65
+ editor?.setCode(variable.value);
66
+ }
52
67
  const MAX_VARIABLE_LENGTH = 3000;
53
68
  $: valid = variable.value.length <= MAX_VARIABLE_LENGTH;
54
69
  async function createVariable() {
@@ -90,9 +105,11 @@ async function updateVariable() {
90
105
  sendUserToast(`Could not update variable: ${err.body}`, true);
91
106
  }
92
107
  }
108
+ let editorKind = 'plain';
109
+ let editor = undefined;
93
110
  </script>
94
111
 
95
- <Drawer bind:this={drawer}>
112
+ <Drawer bind:this={drawer} size="900px">
96
113
  <DrawerContent
97
114
  title={edit ? `Update variable at ${initialPath}` : 'Add a variable'}
98
115
  on:close={drawer.closeDrawer}
@@ -100,8 +117,16 @@ async function updateVariable() {
100
117
  <div class="flex flex-col gap-6">
101
118
  <div>
102
119
  <div>
120
+ {#if !can_write}
121
+ <div class="m-2">
122
+ <Alert type="warning" title="Only read access"
123
+ >You only have read access to this resource and cannot edit it</Alert
124
+ >
125
+ </div>
126
+ {/if}
103
127
  <div class="mb-1 font-semibold text-gray-700">General</div>
104
128
  <Path
129
+ disabled={!can_write}
105
130
  bind:error={pathError}
106
131
  bind:path
107
132
  {initialPath}
@@ -112,40 +137,52 @@ async function updateVariable() {
112
137
  <div class="mt-4">
113
138
  <Toggle bind:checked={variable.is_secret} options={{ right: 'Secret' }} />
114
139
  {#if variable.is_secret}
115
- <Alert type="warning" title="Not visible after this">
116
- If the variable is a secret, you will not be able to read the value of it from the
117
- variable editor UI but only within scripts.
118
- <Tooltip>
119
- Within scripts, every read of the value create the audit log:
120
- 'variables.decrypt_secret'
121
- </Tooltip>
140
+ <Alert type="warning" title="Audit log for each access">
141
+ Every secret is encrypted at rest and in transit with a key specific to this
142
+ workspace. In addition, any read of a secret variable generates an audit log whose
143
+ operation name is: variables.decrypt_secret
122
144
  </Alert>
123
145
  {/if}
124
146
  </div>
125
147
  </div>
126
- <!--
127
- {#if variable.is_secret}
128
- <div class="mb-1 col-span-10">
129
- <Password
130
- bind:password={variable.value}
131
- placeholder={'******** (only fill to update value)'}
132
- label={`<span class="font-semibold text-gray-700">Secret value</span>
133
- <span class="text-sm text-gray-500">(${variable.value.length}/3000 characters)</span>`}
134
- />
135
- </div>
136
- {:else} -->
148
+
137
149
  <div>
138
150
  <div class="mb-1">
139
151
  <span class="font-semibold text-gray-700">Variable value</span>
140
- <span class="text-sm text-gray-500">({variable.value.length}/3000 characters)</span>
152
+ <span class="text-sm text-gray-500 mr-4">({variable.value.length}/3000 characters)</span>
153
+ {#if edit && variable.is_secret}<Button
154
+ variant="border"
155
+ size="xs"
156
+ on:click={() => loadVariable(initialPath)}
157
+ >Load secret value<Tooltip>Will generate an audit log</Tooltip></Button
158
+ >{/if}
159
+ </div>
160
+ <div class="flex flex-row">
161
+ {#if editorKind == 'plain'}
162
+ <textarea
163
+ disabled={!can_write}
164
+ rows="4"
165
+ type="text"
166
+ use:autosize
167
+ bind:value={variable.value}
168
+ placeholder="Update variable value"
169
+ />
170
+ {:else if editorKind == 'json'}
171
+ <div class="border rounded mb-4 w-full border-gray-700">
172
+ <SimpleEditor bind:this={editor} autoHeight lang="json" bind:code={variable.value} />
173
+ </div>
174
+ {:else if editorKind == 'yaml'}
175
+ <div class="border rounded mb-4 w-full border-gray-700">
176
+ <SimpleEditor bind:this={editor} autoHeight lang="yaml" bind:code={variable.value} />
177
+ </div>
178
+ {/if}
179
+
180
+ <ToggleButtonGroup col bind:selected={editorKind}>
181
+ <ToggleButton light position="center" value="plain" size="xs">Plain</ToggleButton>
182
+ <ToggleButton light position="center" value="json" size="xs">Json</ToggleButton>
183
+ <ToggleButton light position="center" value="yaml" size="xs">YAML</ToggleButton>
184
+ </ToggleButtonGroup>
141
185
  </div>
142
- <textarea
143
- rows="4"
144
- type="text"
145
- use:autosize
146
- bind:value={variable.value}
147
- placeholder="My variable value"
148
- />
149
186
  </div>
150
187
  <!-- {/if} -->
151
188
 
@@ -166,9 +203,11 @@ async function updateVariable() {
166
203
  <div slot="submission">
167
204
  <Button
168
205
  on:click={() => (edit ? updateVariable() : createVariable())}
169
- disabled={!valid || pathError != ''}
206
+ disabled={!can_write || !valid || pathError != ''}
207
+ btnClasses="mr-2"
208
+ startIcon={{ icon: faSave }}
170
209
  >
171
- {edit ? 'Save' : 'Add'}
210
+ {edit ? 'Update' : 'Save'}
172
211
  </Button>
173
212
  </div>
174
213
  </DrawerContent>
@@ -3,6 +3,7 @@ declare const __propDef: {
3
3
  props: {
4
4
  initNew?: (() => void) | undefined;
5
5
  editVariable?: ((path: string) => Promise<void>) | undefined;
6
+ loadVariable?: ((path: string) => Promise<void>) | undefined;
6
7
  };
7
8
  events: {
8
9
  create: CustomEvent<any>;
@@ -11,11 +12,12 @@ declare const __propDef: {
11
12
  };
12
13
  slots: {};
13
14
  };
14
- export declare type VariableEditorProps = typeof __propDef.props;
15
- export declare type VariableEditorEvents = typeof __propDef.events;
16
- export declare type VariableEditorSlots = typeof __propDef.slots;
15
+ export type VariableEditorProps = typeof __propDef.props;
16
+ export type VariableEditorEvents = typeof __propDef.events;
17
+ export type VariableEditorSlots = typeof __propDef.slots;
17
18
  export default class VariableEditor extends SvelteComponentTyped<VariableEditorProps, VariableEditorEvents, VariableEditorSlots> {
18
19
  get initNew(): () => void;
19
20
  get editVariable(): (path: string) => Promise<void>;
21
+ get loadVariable(): (path: string) => Promise<void>;
20
22
  }
21
23
  export {};
@@ -0,0 +1,65 @@
1
+ <script>import { faPlus } from '@fortawesome/free-solid-svg-icons';
2
+ import { AppService, Policy } from '../../gen';
3
+ import { userStore, workspaceStore } from '../../stores';
4
+ import { sendUserToast } from '../../utils';
5
+ import { Button, Drawer, DrawerContent } from '../common';
6
+ let path = '';
7
+ let initialPath = '';
8
+ let pathError = '';
9
+ import { goto } from '$app/navigation';
10
+ import Path from '../Path.svelte';
11
+ let drawerOpen = false;
12
+ function closeDrawer() {
13
+ drawerOpen = false;
14
+ }
15
+ async function createApp() {
16
+ const appJson = {
17
+ grid: [],
18
+ title: 'New app',
19
+ inlineScripts: {}
20
+ };
21
+ const policy = {
22
+ triggerables: {},
23
+ execution_mode: Policy.execution_mode.PUBLISHER,
24
+ on_behalf_of: `u/${$userStore?.username}`
25
+ };
26
+ try {
27
+ const appId = await AppService.createApp({
28
+ workspace: $workspaceStore,
29
+ requestBody: {
30
+ value: appJson,
31
+ path,
32
+ summary: 'App summary',
33
+ policy
34
+ }
35
+ });
36
+ goto(`/apps/edit/${appId}`);
37
+ }
38
+ catch (e) {
39
+ sendUserToast('Error creating app', e);
40
+ }
41
+ }
42
+ </script>
43
+
44
+ <Drawer bind:open={drawerOpen} size="800px">
45
+ <DrawerContent title="Add an app" on:close={() => closeDrawer()}>
46
+ <Path bind:error={pathError} bind:path {initialPath} namePlaceholder="my_app" kind="app">
47
+ <div slot="ownerToolkit">
48
+ App permissions depend on their path. Select the group <span class="font-mono">all</span>
49
+ to share it, and <span class="font-mono">user</span> to keep it private.
50
+ <a href="https://docs.windmill.dev/docs/reference/namespaces">docs</a>
51
+ </div>
52
+ </Path>
53
+
54
+ <Button on:click={() => createApp()}>Create app</Button>
55
+ </DrawerContent>
56
+ </Drawer>
57
+
58
+ <Button
59
+ size="sm"
60
+ spacingSize="lg"
61
+ startIcon={{ icon: faPlus }}
62
+ on:click={() => (drawerOpen = true)}
63
+ >
64
+ New app
65
+ </Button>
@@ -0,0 +1,14 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: {};
4
+ events: {
5
+ [evt: string]: CustomEvent<any>;
6
+ };
7
+ slots: {};
8
+ };
9
+ export type CreateAppProps = typeof __propDef.props;
10
+ export type CreateAppEvents = typeof __propDef.events;
11
+ export type CreateAppSlots = typeof __propDef.slots;
12
+ export default class CreateApp extends SvelteComponentTyped<CreateAppProps, CreateAppEvents, CreateAppSlots> {
13
+ }
14
+ export {};
@@ -0,0 +1,23 @@
1
+ <script>import DisplayResult from '../../DisplayResult.svelte';
2
+ import { getContext } from 'svelte';
3
+ import InputValue from './helpers/InputValue.svelte';
4
+ export let componentInputs;
5
+ const { worldStore } = getContext('AppEditorContext');
6
+ let resultValue = undefined;
7
+ export const staticOutputs = [];
8
+ </script>
9
+
10
+ <InputValue input={componentInputs.result} bind:value={resultValue} />
11
+
12
+ {#if $worldStore}
13
+ <div class="w-full border-b px-2 text-xs p-1 font-semibold bg-gray-500 text-white rounded-t-sm">
14
+ Results
15
+ </div>
16
+ <div class="p-2">
17
+ {#if resultValue === undefined && componentInputs.result.type === 'output'}
18
+ <span class="text-sm">Waiting for result</span>
19
+ {:else}
20
+ <DisplayResult result={resultValue} />
21
+ {/if}
22
+ </div>
23
+ {/if}
@@ -0,0 +1,19 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ import type { InputsSpec } from '../types';
3
+ declare const __propDef: {
4
+ props: {
5
+ componentInputs: InputsSpec;
6
+ staticOutputs?: string[] | undefined;
7
+ };
8
+ events: {
9
+ [evt: string]: CustomEvent<any>;
10
+ };
11
+ slots: {};
12
+ };
13
+ export type DisplayComponentProps = typeof __propDef.props;
14
+ export type DisplayComponentEvents = typeof __propDef.events;
15
+ export type DisplayComponentSlots = typeof __propDef.slots;
16
+ export default class DisplayComponent extends SvelteComponentTyped<DisplayComponentProps, DisplayComponentEvents, DisplayComponentSlots> {
17
+ get staticOutputs(): string[];
18
+ }
19
+ export {};
@@ -0,0 +1,42 @@
1
+ <script>import { Button } from '../../../common';
2
+ import InputValue from '../helpers/InputValue.svelte';
3
+ import RunnableComponent from '../helpers/RunnableComponent.svelte';
4
+ export let id;
5
+ export let inputs;
6
+ export let path = undefined;
7
+ export let runType = undefined;
8
+ export let inlineScriptName = undefined;
9
+ export let componentInputs;
10
+ export let extraQueryParams = {};
11
+ export const staticOutputs = ['loading', 'result'];
12
+ let labelValue = 'Default label';
13
+ let color;
14
+ let size;
15
+ let runnableComponent;
16
+ </script>
17
+
18
+ <InputValue input={componentInputs.label} bind:value={labelValue} />
19
+ <InputValue input={componentInputs.color} bind:value={color} />
20
+ <InputValue input={componentInputs.size} bind:value={size} />
21
+
22
+ <RunnableComponent
23
+ bind:this={runnableComponent}
24
+ bind:inputs
25
+ {path}
26
+ {runType}
27
+ {inlineScriptName}
28
+ {id}
29
+ autoRefresh={false}
30
+ {extraQueryParams}
31
+ >
32
+ <Button
33
+ on:click={() => {
34
+ runnableComponent?.runComponent()
35
+ }}
36
+ btnClasses="w-full h-full"
37
+ {size}
38
+ {color}
39
+ >
40
+ {labelValue}
41
+ </Button>
42
+ </RunnableComponent>
@@ -0,0 +1,25 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ import type { InputsSpec } from '../../types';
3
+ declare const __propDef: {
4
+ props: {
5
+ id: string;
6
+ inputs: InputsSpec;
7
+ path?: string | undefined;
8
+ runType?: 'script' | 'flow' | undefined;
9
+ inlineScriptName?: string | undefined;
10
+ componentInputs: InputsSpec;
11
+ extraQueryParams?: Record<string, any> | undefined;
12
+ staticOutputs?: string[] | undefined;
13
+ };
14
+ events: {
15
+ [evt: string]: CustomEvent<any>;
16
+ };
17
+ slots: {};
18
+ };
19
+ export type AppButtonProps = typeof __propDef.props;
20
+ export type AppButtonEvents = typeof __propDef.events;
21
+ export type AppButtonSlots = typeof __propDef.slots;
22
+ export default class AppButton extends SvelteComponentTyped<AppButtonProps, AppButtonEvents, AppButtonSlots> {
23
+ get staticOutputs(): string[];
24
+ }
25
+ export {};
@@ -0,0 +1,18 @@
1
+ <script>import { Bar } from 'svelte-chartjs';
2
+ import { Chart as ChartJS, Title, Tooltip, Legend, LineElement, LinearScale, PointElement, CategoryScale, BarElement } from 'chart.js';
3
+ import RunnableComponent from '../helpers/RunnableComponent.svelte';
4
+ export let id;
5
+ export let inputs;
6
+ export let path = undefined;
7
+ export let runType = undefined;
8
+ export let inlineScriptName = undefined;
9
+ export const staticOutputs = ['loading', 'result'];
10
+ ChartJS.register(Title, Tooltip, Legend, LineElement, LinearScale, PointElement, CategoryScale, BarElement);
11
+ let result = undefined;
12
+ </script>
13
+
14
+ <RunnableComponent {id} {path} {runType} {inlineScriptName} bind:inputs bind:result>
15
+ {#if result}
16
+ <Bar data={result} options={{ responsive: true, animation: false }} />
17
+ {/if}
18
+ </RunnableComponent>
@@ -0,0 +1,23 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ import type { InputsSpec } from '../../types';
3
+ declare const __propDef: {
4
+ props: {
5
+ id: string;
6
+ inputs: InputsSpec;
7
+ path?: string | undefined;
8
+ runType?: 'script' | 'flow' | undefined;
9
+ inlineScriptName?: string | undefined;
10
+ staticOutputs?: string[] | undefined;
11
+ };
12
+ events: {
13
+ [evt: string]: CustomEvent<any>;
14
+ };
15
+ slots: {};
16
+ };
17
+ export type AppBarChartProps = typeof __propDef.props;
18
+ export type AppBarChartEvents = typeof __propDef.events;
19
+ export type AppBarChartSlots = typeof __propDef.slots;
20
+ export default class AppBarChart extends SvelteComponentTyped<AppBarChartProps, AppBarChartEvents, AppBarChartSlots> {
21
+ get staticOutputs(): string[];
22
+ }
23
+ export {};
@@ -0,0 +1,22 @@
1
+ <script>import { Pie } from 'svelte-chartjs';
2
+ import { Chart as ChartJS, Title, Tooltip, Legend, LineElement, LinearScale, PointElement, CategoryScale, ArcElement } from 'chart.js';
3
+ import RunnableComponent from '../helpers/RunnableComponent.svelte';
4
+ export let id;
5
+ export let inputs;
6
+ export let path = undefined;
7
+ export let runType = undefined;
8
+ export let inlineScriptName = undefined;
9
+ export const staticOutputs = ['loading', 'result'];
10
+ ChartJS.register(Title, Tooltip, Legend, LineElement, LinearScale, PointElement, CategoryScale, ArcElement);
11
+ let options = {
12
+ responsive: true,
13
+ animation: false
14
+ };
15
+ let result = undefined;
16
+ </script>
17
+
18
+ <RunnableComponent {id} {path} {runType} {inlineScriptName} bind:inputs bind:result>
19
+ {#if result}
20
+ <Pie data={result} {options} />
21
+ {/if}
22
+ </RunnableComponent>
@@ -0,0 +1,23 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ import type { InputsSpec } from '../../types';
3
+ declare const __propDef: {
4
+ props: {
5
+ id: string;
6
+ inputs: InputsSpec;
7
+ path?: string | undefined;
8
+ runType?: 'script' | 'flow' | undefined;
9
+ inlineScriptName?: string | undefined;
10
+ staticOutputs?: string[] | undefined;
11
+ };
12
+ events: {
13
+ [evt: string]: CustomEvent<any>;
14
+ };
15
+ slots: {};
16
+ };
17
+ export type AppPieChartProps = typeof __propDef.props;
18
+ export type AppPieChartEvents = typeof __propDef.events;
19
+ export type AppPieChartSlots = typeof __propDef.slots;
20
+ export default class AppPieChart extends SvelteComponentTyped<AppPieChartProps, AppPieChartEvents, AppPieChartSlots> {
21
+ get staticOutputs(): string[];
22
+ }
23
+ export {};
@@ -0,0 +1,135 @@
1
+ <script>import Button from '../../../common/button/Button.svelte';
2
+ import { classNames } from '../../../../utils';
3
+ import { getContext } from 'svelte';
4
+ import InputValue from '../helpers/InputValue.svelte';
5
+ import DebouncedInput from '../helpers/DebouncedInput.svelte';
6
+ import RunnableComponent from '../helpers/RunnableComponent.svelte';
7
+ import AppButton from '../buttons/AppButton.svelte';
8
+ export let id;
9
+ export let inputs;
10
+ export let path = undefined;
11
+ export let runType = undefined;
12
+ export let inlineScriptName = undefined;
13
+ export let componentInputs;
14
+ export let actionButtons;
15
+ const { worldStore, staticOutputs: staticOutputsStore } = getContext('AppEditorContext');
16
+ export const staticOutputs = ['selectedRow', 'loading', 'result'];
17
+ $: outputs = $worldStore?.outputsById[id];
18
+ let selectedRowIndex = -1;
19
+ function toggleRow(row, rowIndex) {
20
+ if (selectedRowIndex === rowIndex) {
21
+ selectedRowIndex = -1;
22
+ outputs.selectedRow.set(null);
23
+ }
24
+ else {
25
+ selectedRowIndex = rowIndex;
26
+ outputs?.selectedRow.set(row);
27
+ }
28
+ }
29
+ let searchEnabledValue = undefined;
30
+ let paginationEnabled = undefined;
31
+ let page = 1;
32
+ let search = '';
33
+ let result = [];
34
+ $: headers = Object.keys(result[0] || {}) || [];
35
+ const extraQueryParams = { search, page };
36
+ export const reservedKeys = Object.keys(extraQueryParams);
37
+ </script>
38
+
39
+ <InputValue input={componentInputs.searchEnabled} bind:value={searchEnabledValue} />
40
+ <InputValue input={componentInputs.paginationEnabled} bind:value={paginationEnabled} />
41
+
42
+ <RunnableComponent
43
+ {id}
44
+ {path}
45
+ {runType}
46
+ {inlineScriptName}
47
+ bind:inputs
48
+ bind:result
49
+ extraQueryParams={{ search, page }}
50
+ >
51
+ <div class="gap-2 flex flex-col mt-2">
52
+ {#if searchEnabledValue}
53
+ <div>
54
+ <div>
55
+ <DebouncedInput placeholder="Search..." bind:value={search} />
56
+ </div>
57
+ </div>
58
+ {/if}
59
+ <div class="flex flex-col">
60
+ <table class="divide-y divide-gray-300 border">
61
+ {#if headers}
62
+ <thead class="bg-gray-50">
63
+ <tr>
64
+ {#each headers as header}
65
+ <th
66
+ scope="col"
67
+ class="px-4 py-2 text-left text-xs font-medium text-gray-500 tracking-wider"
68
+ >
69
+ {header.replace(/([A-Z]+)*([A-Z][a-z])/g, '$1 $2')}
70
+ </th>
71
+ {/each}
72
+ <th scope="col" class="relative py-2 px-4">
73
+ <span class="sr-only">Edit</span>
74
+ </th>
75
+ </tr>
76
+ </thead>
77
+ {/if}
78
+ <tbody class="divide-y divide-gray-200 bg-white">
79
+ {#each result as row, rowIndex (rowIndex)}
80
+ <tr
81
+ class={classNames(
82
+ selectedRowIndex === rowIndex ? 'bg-blue-100 hover:bg-blue-200' : 'hover:bg-blue-50'
83
+ )}
84
+ on:click={() => toggleRow(row, rowIndex)}
85
+ >
86
+ {#each headers as header}
87
+ <td class="px-4 py-2 whitespace-nowrap text-sm text-gray-900">
88
+ {row[header]}
89
+ </td>
90
+ {/each}
91
+ <td class="relative whitespace-nowrap px-4 py-2 text-right ">
92
+ {#if actionButtons?.length > 0}
93
+ <div class="center-center gap-2">
94
+ {#each actionButtons as props}
95
+ <AppButton
96
+ {...props}
97
+ extraQueryParams={{ row }}
98
+ bind:inputs={props.inputs}
99
+ bind:staticOutputs={$staticOutputsStore[props.id]}
100
+ />
101
+ {/each}
102
+ </div>
103
+ {/if}
104
+ </td>
105
+ </tr>
106
+ {/each}
107
+ </tbody>
108
+ </table>
109
+ </div>
110
+
111
+ {#if paginationEnabled}
112
+ <div class="flex flex-row gap-2">
113
+ <Button
114
+ on:click={() => {
115
+ page = page - 1
116
+ }}
117
+ color="light"
118
+ size="xs"
119
+ variant="border"
120
+ disabled={page === 1}
121
+ >
122
+ Previous
123
+ </Button>
124
+ <Button
125
+ on:click={() => {
126
+ page = page + 1
127
+ }}
128
+ color="light"
129
+ size="xs"
130
+ variant="border">Next</Button
131
+ >
132
+ </div>
133
+ {/if}
134
+ </div>
135
+ </RunnableComponent>
@@ -0,0 +1,27 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ import type { BaseAppComponent, ButtonComponent, InputsSpec } from '../../types';
3
+ declare const __propDef: {
4
+ props: {
5
+ id: string;
6
+ inputs: InputsSpec;
7
+ path?: string | undefined;
8
+ runType?: 'script' | 'flow' | undefined;
9
+ inlineScriptName?: string | undefined;
10
+ componentInputs: InputsSpec;
11
+ actionButtons: (BaseAppComponent & ButtonComponent)[];
12
+ staticOutputs?: string[] | undefined;
13
+ reservedKeys?: string[] | undefined;
14
+ };
15
+ events: {
16
+ [evt: string]: CustomEvent<any>;
17
+ };
18
+ slots: {};
19
+ };
20
+ export type AppTableProps = typeof __propDef.props;
21
+ export type AppTableEvents = typeof __propDef.events;
22
+ export type AppTableSlots = typeof __propDef.slots;
23
+ export default class AppTable extends SvelteComponentTyped<AppTableProps, AppTableEvents, AppTableSlots> {
24
+ get staticOutputs(): string[];
25
+ get reservedKeys(): string[];
26
+ }
27
+ export {};
@@ -0,0 +1,15 @@
1
+ <script>import SvelteMarkdown from 'svelte-markdown';
2
+ import AlignWrapper from '../helpers/AlignWrapper.svelte';
3
+ import InputValue from '../helpers/InputValue.svelte';
4
+ export let componentInputs;
5
+ export let horizontalAlignment = undefined;
6
+ export let verticalAlignment = undefined;
7
+ export const staticOutputs = [];
8
+ let contentValue = '';
9
+ </script>
10
+
11
+ <InputValue input={componentInputs.content} bind:value={contentValue} />
12
+
13
+ <AlignWrapper {horizontalAlignment} {verticalAlignment}>
14
+ <SvelteMarkdown source={String(contentValue)} />
15
+ </AlignWrapper>