windmill-components 1.122.0 → 1.138.2

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 (624) hide show
  1. package/package/assets/app.css +8 -0
  2. package/package/common.d.ts +1 -0
  3. package/package/common.js +8 -0
  4. package/package/components/AddUser.svelte +27 -5
  5. package/package/components/ApiConnectForm.svelte +14 -39
  6. package/package/components/AppConnect.svelte +25 -9
  7. package/package/components/ArgEnum.svelte +1 -0
  8. package/package/components/ArgInfo.svelte +2 -2
  9. package/package/components/ArgInput.svelte +16 -13
  10. package/package/components/ArgInput.svelte.d.ts +1 -0
  11. package/package/components/ArrayTypeNarrowing.svelte +1 -1
  12. package/package/components/Badge.svelte +1 -1
  13. package/package/components/CenteredModal.svelte +7 -13
  14. package/package/components/ChevronButton.svelte +1 -1
  15. package/package/components/CliHelpBox.svelte +4 -25
  16. package/package/components/CollapseLink.svelte +3 -2
  17. package/package/components/CollapseLink.svelte.d.ts +1 -0
  18. package/package/components/CronInput.svelte +5 -5
  19. package/package/components/DBSchemaExplorer.svelte +160 -0
  20. package/package/components/DBSchemaExplorer.svelte.d.ts +17 -0
  21. package/package/components/DarkModeObserver.svelte +18 -0
  22. package/package/components/DarkModeObserver.svelte.d.ts +16 -0
  23. package/package/components/DeployWorkspace.svelte +1 -1
  24. package/package/components/DiffDrawer.svelte +3 -1
  25. package/package/components/DiffEditor.svelte +69 -0
  26. package/package/components/DiffEditor.svelte.d.ts +35 -0
  27. package/package/components/DisplayResult.svelte +29 -13
  28. package/package/components/DisplayResult.svelte.d.ts +8 -0
  29. package/package/components/Dropdown.svelte +8 -8
  30. package/package/components/Editor.svelte +125 -17
  31. package/package/components/Editor.svelte.d.ts +11 -1
  32. package/package/components/EditorBar.svelte +149 -56
  33. package/package/components/EditorBar.svelte.d.ts +5 -1
  34. package/package/components/EditorTheme.svelte +194 -0
  35. package/package/components/EditorTheme.svelte.d.ts +14 -0
  36. package/package/components/FieldHeader.svelte +6 -6
  37. package/package/components/FlowBuilder.svelte +6 -2
  38. package/package/components/FlowGraphViewer.svelte +9 -11
  39. package/package/components/FlowJobResult.svelte +4 -3
  40. package/package/components/FlowJobResult.svelte.d.ts +1 -0
  41. package/package/components/FlowMetadata.svelte +16 -14
  42. package/package/components/FlowPreviewContent.svelte +4 -4
  43. package/package/components/FlowStatusViewer.svelte +20 -17
  44. package/package/components/FlowStatusWaitingForEvents.svelte +1 -1
  45. package/package/components/FlowViewer.svelte +8 -5
  46. package/package/components/FlowViewer.svelte.d.ts +1 -0
  47. package/package/components/FolderEditor.svelte +3 -3
  48. package/package/components/FolderInfo.svelte +2 -2
  49. package/package/components/FolderUsageInfo.svelte +1 -1
  50. package/package/components/GroupEditor.svelte +40 -13
  51. package/package/components/GroupInfo.svelte +2 -2
  52. package/package/components/HighlightCode.svelte +4 -0
  53. package/package/components/HighlightCode.svelte.d.ts +2 -1
  54. package/package/components/IconedResourceType.svelte +1 -1
  55. package/package/components/InlineCodeCopy.svelte +2 -1
  56. package/package/components/InputTransformForm.svelte +1 -5
  57. package/package/components/InputTransformSchemaForm.svelte +2 -2
  58. package/package/components/InputTransformsViewer.svelte +2 -2
  59. package/package/components/InviteGlobalUser.svelte +39 -28
  60. package/package/components/InviteUser.svelte +27 -5
  61. package/package/components/ItemPicker.svelte +13 -7
  62. package/package/components/JobArgs.svelte +4 -4
  63. package/package/components/LightweightArgInput.svelte +3 -3
  64. package/package/components/LogViewer.svelte +10 -5
  65. package/package/components/LoginPageHeader.svelte +16 -0
  66. package/package/components/LoginPageHeader.svelte.d.ts +23 -0
  67. package/package/components/Modal.svelte +2 -2
  68. package/package/components/ModulePreview.svelte +15 -5
  69. package/package/components/ModulePreview.svelte.d.ts +6 -1
  70. package/package/components/ModuleStatus.svelte +2 -2
  71. package/package/components/MoveDrawer.svelte +3 -3
  72. package/package/components/ObjectResourceInput.svelte +2 -0
  73. package/package/components/ObjectResourceInput.svelte.d.ts +1 -0
  74. package/package/components/Password.svelte +8 -3
  75. package/package/components/Password.svelte.d.ts +1 -0
  76. package/package/components/Path.svelte +31 -18
  77. package/package/components/Path.svelte.d.ts +4 -0
  78. package/package/components/RadioButton.svelte +3 -3
  79. package/package/components/Range.svelte.d.ts +0 -3
  80. package/package/components/Required.svelte +2 -2
  81. package/package/components/ResourceEditor.svelte +10 -9
  82. package/package/components/ResourcePicker.svelte +31 -6
  83. package/package/components/ResourcePicker.svelte.d.ts +1 -0
  84. package/package/components/ResultJobLoader.svelte.d.ts +2 -2
  85. package/package/components/RunForm.svelte +69 -59
  86. package/package/components/RunForm.svelte.d.ts +1 -0
  87. package/package/components/RunPageSchedules.svelte +169 -0
  88. package/package/components/RunPageSchedules.svelte.d.ts +18 -0
  89. package/package/components/SavedInputs.svelte +36 -18
  90. package/package/components/ScheduleEditor.svelte +23 -11
  91. package/package/components/SchemaEditor.svelte +16 -8
  92. package/package/components/SchemaForm.svelte +7 -9
  93. package/package/components/SchemaForm.svelte.d.ts +1 -0
  94. package/package/components/SchemaModal.svelte +41 -13
  95. package/package/components/SchemaModal.svelte.d.ts +2 -1
  96. package/package/components/SchemaViewer.svelte +1 -1
  97. package/package/components/ScriptBuilder.svelte +147 -76
  98. package/package/components/ScriptBuilder.svelte.d.ts +1 -1
  99. package/package/components/ScriptEditor.svelte +22 -2
  100. package/package/components/ScriptEditor.svelte.d.ts +6 -3
  101. package/package/components/ScriptPicker.svelte +84 -32
  102. package/package/components/ScriptPicker.svelte.d.ts +1 -0
  103. package/package/components/ScriptVersionHistory.svelte +20 -2
  104. package/package/components/ScriptVersionHistory.svelte.d.ts +3 -0
  105. package/package/components/SharedBadge.svelte +1 -1
  106. package/package/components/SimpleEditor.svelte +25 -10
  107. package/package/components/SimpleEditor.svelte.d.ts +9 -0
  108. package/package/components/Star.svelte +5 -1
  109. package/package/components/StringTypeNarrowing.svelte +2 -2
  110. package/package/components/SupabaseConnect.svelte +160 -0
  111. package/package/components/SupabaseConnect.svelte.d.ts +19 -0
  112. package/package/components/SuperadminSettings.svelte +9 -8
  113. package/package/components/TableCustom.svelte +2 -2
  114. package/package/components/TableSimple.svelte +5 -5
  115. package/package/components/TemplateEditor.svelte +0 -10
  116. package/package/components/TestConnection.svelte +72 -0
  117. package/package/components/TestConnection.svelte.d.ts +17 -0
  118. package/package/components/TestJobLoader.svelte.d.ts +4 -3
  119. package/package/components/Toast.svelte +7 -5
  120. package/package/components/Toggle.svelte +3 -3
  121. package/package/components/ToggleHubWorkspace.svelte +6 -9
  122. package/package/components/Tooltip.svelte +2 -2
  123. package/package/components/Uptodate.svelte +2 -2
  124. package/package/components/UserSettings.svelte +10 -10
  125. package/package/components/VariableEditor.svelte +21 -20
  126. package/package/components/Version.svelte +3 -1
  127. package/package/components/WhitelistIp.svelte +1 -1
  128. package/package/components/apps/components/buttons/AppButton.svelte +2 -2
  129. package/package/components/apps/components/buttons/AppForm.svelte +5 -4
  130. package/package/components/apps/components/buttons/AppFormButton.svelte +1 -1
  131. package/package/components/apps/components/buttons/AppSchemaForm.svelte +1 -1
  132. package/package/components/apps/components/display/AppBarChart.svelte +13 -1
  133. package/package/components/apps/components/display/AppFlowStatusComponent.svelte +1 -1
  134. package/package/components/apps/components/display/AppJobIdFlowStatus.svelte +64 -0
  135. package/package/components/apps/components/display/AppJobIdFlowStatus.svelte.d.ts +23 -0
  136. package/package/components/apps/components/display/AppJobIdLogComponent.svelte +72 -0
  137. package/package/components/apps/components/display/AppJobIdLogComponent.svelte.d.ts +23 -0
  138. package/package/components/apps/components/display/AppMap.svelte +4 -10
  139. package/package/components/apps/components/display/AppPdf.svelte +6 -6
  140. package/package/components/apps/components/display/AppText.svelte +19 -19
  141. package/package/components/apps/components/display/PlotlyHtml.svelte +16 -4
  142. package/package/components/apps/components/display/table/AppAggridTable.svelte +16 -12
  143. package/package/components/apps/components/display/table/AppAggridTable.svelte.d.ts +1 -0
  144. package/package/components/apps/components/display/table/AppTable.svelte +149 -124
  145. package/package/components/apps/components/helpers/ComponentErrorHandler.svelte +2 -2
  146. package/package/components/apps/components/helpers/HiddenComponent.svelte +1 -1
  147. package/package/components/apps/components/helpers/InputValue.svelte +14 -4
  148. package/package/components/apps/components/helpers/InputValue.svelte.d.ts +2 -0
  149. package/package/components/apps/components/helpers/Loader.svelte +1 -1
  150. package/package/components/apps/components/helpers/MissingConnectionWarning.svelte +1 -1
  151. package/package/components/apps/components/helpers/RefreshButton.svelte +1 -1
  152. package/package/components/apps/components/helpers/RunnableComponent.svelte +57 -21
  153. package/package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +1 -0
  154. package/package/components/apps/components/helpers/RunnableWrapper.svelte +52 -28
  155. package/package/components/apps/components/helpers/RunnableWrapper.svelte.d.ts +15 -2
  156. package/package/components/apps/components/helpers/eval.d.ts +2 -0
  157. package/package/components/apps/components/helpers/eval.js +6 -1
  158. package/package/components/apps/components/inputs/AppCheckbox.svelte +15 -17
  159. package/package/components/apps/components/inputs/AppDateInput.svelte +19 -1
  160. package/package/components/apps/components/inputs/AppMultiSelect.svelte +81 -22
  161. package/package/components/apps/components/inputs/AppMultiSelect.svelte.d.ts +2 -0
  162. package/package/components/apps/components/inputs/AppQuillEditor.svelte +29 -3
  163. package/package/components/apps/components/inputs/AppSelect.svelte +18 -7
  164. package/package/components/apps/components/inputs/AppSelectTab.svelte +3 -8
  165. package/package/components/apps/components/inputs/AppTextInput.svelte +4 -0
  166. package/package/components/apps/components/inputs/AppTextInput.svelte.d.ts +2 -0
  167. package/package/components/apps/components/layout/AppDrawer.svelte +1 -1
  168. package/package/components/apps/components/layout/AppList.svelte +54 -62
  169. package/package/components/apps/components/layout/AppModal.svelte +13 -5
  170. package/package/components/apps/components/layout/AppStepper.svelte +1 -1
  171. package/package/components/apps/components/layout/AppTabs.svelte +3 -3
  172. package/package/components/apps/components/layout/ListWrapper.svelte +0 -1
  173. package/package/components/apps/components/layout/RowWrapper.svelte +22 -0
  174. package/package/components/apps/components/layout/RowWrapper.svelte.d.ts +23 -0
  175. package/package/components/apps/editor/AppComponentInput.svelte +1 -1
  176. package/package/components/apps/editor/AppDeploymentHistory.svelte +34 -0
  177. package/package/components/apps/editor/AppDeploymentHistory.svelte.d.ts +17 -0
  178. package/package/components/apps/editor/AppEditor.svelte +13 -4
  179. package/package/components/apps/editor/AppEditorHeader.svelte +78 -41
  180. package/package/components/apps/editor/AppInputs.svelte +1 -1
  181. package/package/components/apps/editor/AppPreview.svelte +14 -5
  182. package/package/components/apps/editor/ComponentHeader.svelte +4 -4
  183. package/package/components/apps/editor/DeploymentHistory.svelte +8 -6
  184. package/package/components/apps/editor/GridEditor.svelte +4 -4
  185. package/package/components/apps/editor/RecomputeAllComponents.svelte +2 -2
  186. package/package/components/apps/editor/SettingsPanel.svelte +4 -5
  187. package/package/components/apps/editor/TabsDebug.svelte +1 -1
  188. package/package/components/apps/editor/component/Component.svelte +21 -1
  189. package/package/components/apps/editor/component/ComponentNavigation.svelte +15 -1
  190. package/package/components/apps/editor/component/components.d.ts +293 -58
  191. package/package/components/apps/editor/component/components.js +146 -4
  192. package/package/components/apps/editor/component/sets.js +2 -2
  193. package/package/components/apps/editor/componentsPanel/ComponentList.svelte +8 -8
  194. package/package/components/apps/editor/componentsPanel/CssProperty.svelte +4 -4
  195. package/package/components/apps/editor/componentsPanel/CssSettings.svelte +2 -2
  196. package/package/components/apps/editor/componentsPanel/ListItem.svelte +3 -3
  197. package/package/components/apps/editor/componentsPanel/QuickStyleMenu.svelte +2 -2
  198. package/package/components/apps/editor/componentsPanel/QuickStyleProperty.svelte +3 -3
  199. package/package/components/apps/editor/componentsPanel/quickStyleProperties.js +8 -0
  200. package/package/components/apps/editor/contextPanel/ComponentOutputViewer.svelte +3 -3
  201. package/package/components/apps/editor/contextPanel/ContextPanel.svelte +8 -6
  202. package/package/components/apps/editor/contextPanel/SubGridOutput.svelte +6 -3
  203. package/package/components/apps/editor/contextPanel/components/IdEditor.svelte +18 -24
  204. package/package/components/apps/editor/contextPanel/components/IdEditor.svelte.d.ts +1 -0
  205. package/package/components/apps/editor/contextPanel/components/OutputHeader.svelte +16 -9
  206. package/package/components/apps/editor/inlineScriptsPanel/EmptyInlineScript.svelte +16 -26
  207. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte +71 -51
  208. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte.d.ts +2 -0
  209. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorPanel.svelte +1 -1
  210. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptHiddenRunnable.svelte +21 -1
  211. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptHiddenRunnable.svelte.d.ts +1 -0
  212. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte +1 -2
  213. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanel.svelte +9 -3
  214. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelList.svelte +33 -11
  215. package/package/components/apps/editor/settingsPanel/AlignmentEditor.svelte +1 -1
  216. package/package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +1 -1
  217. package/package/components/apps/editor/settingsPanel/ComponentPanel.svelte +24 -11
  218. package/package/components/apps/editor/settingsPanel/ComponentPanel.svelte.d.ts +0 -1
  219. package/package/components/apps/editor/settingsPanel/GridCondition.svelte +2 -3
  220. package/package/components/apps/editor/settingsPanel/GridPane.svelte +1 -1
  221. package/package/components/apps/editor/settingsPanel/GridTab.svelte +2 -2
  222. package/package/components/apps/editor/settingsPanel/GridTabDisabled.svelte +0 -1
  223. package/package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +4 -5
  224. package/package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte.d.ts +0 -1
  225. package/package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +1 -4
  226. package/package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte.d.ts +0 -1
  227. package/package/components/apps/editor/settingsPanel/OneOfInputSpecsEditor.svelte +0 -2
  228. package/package/components/apps/editor/settingsPanel/OneOfInputSpecsEditor.svelte.d.ts +0 -1
  229. package/package/components/apps/editor/settingsPanel/Recompute.svelte +5 -5
  230. package/package/components/apps/editor/settingsPanel/TableActions.svelte +12 -7
  231. package/package/components/apps/editor/settingsPanel/common/PanelSection.svelte +1 -1
  232. package/package/components/apps/editor/settingsPanel/inputEditor/EvalInputEditor.svelte +2 -3
  233. package/package/components/apps/editor/settingsPanel/inputEditor/EvalInputEditor.svelte.d.ts +0 -1
  234. package/package/components/apps/editor/settingsPanel/inputEditor/IconSelectInput.svelte +63 -74
  235. package/package/components/apps/editor/settingsPanel/inputEditor/JsonEditor.svelte +2 -2
  236. package/package/components/apps/editor/settingsPanel/inputEditor/TabSelectInput.svelte +3 -7
  237. package/package/components/apps/editor/settingsPanel/mainInput/InlineScriptList.svelte +5 -5
  238. package/package/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte +2 -1
  239. package/package/components/apps/editor/settingsPanel/mainInput/WorkspaceFlowList.svelte +3 -3
  240. package/package/components/apps/editor/settingsPanel/mainInput/WorkspaceScriptList.svelte +4 -4
  241. package/package/components/apps/editor/settingsPanel/script/BackgroundScriptSettings.svelte +2 -0
  242. package/package/components/apps/editor/settingsPanel/script/ComponentScriptSettings.svelte +2 -2
  243. package/package/components/apps/editor/settingsPanel/script/shared/ScriptSettingHeader.svelte +1 -1
  244. package/package/components/apps/editor/settingsPanel/script/shared/ScriptTransformer.svelte +2 -2
  245. package/package/components/apps/editor/settingsPanel/script/shared/ScriptTransformer.svelte.d.ts +7 -4
  246. package/package/components/apps/editor/settingsPanel/script/shared/ScriptTriggers.svelte +2 -2
  247. package/package/components/apps/editor/settingsPanel/secondaryMenu/SecondaryMenu.svelte +2 -2
  248. package/package/components/apps/rx.d.ts +3 -3
  249. package/package/components/apps/rx.js +4 -5
  250. package/package/components/apps/svelte-select/lib/ChevronIcon.svelte +17 -0
  251. package/package/components/apps/svelte-select/lib/ChevronIcon.svelte.d.ts +23 -0
  252. package/package/components/apps/svelte-select/lib/ClearIcon.svelte +21 -0
  253. package/package/components/apps/svelte-select/lib/ClearIcon.svelte.d.ts +23 -0
  254. package/package/components/apps/svelte-select/lib/ConditionalPortal.svelte +12 -0
  255. package/package/components/apps/svelte-select/lib/ConditionalPortal.svelte.d.ts +18 -0
  256. package/package/components/apps/svelte-select/lib/ConditionalPortalGlobal.svelte +9 -0
  257. package/package/components/apps/svelte-select/lib/ConditionalPortalGlobal.svelte.d.ts +18 -0
  258. package/package/components/apps/svelte-select/lib/LoadingIcon.svelte +33 -0
  259. package/package/components/apps/svelte-select/lib/LoadingIcon.svelte.d.ts +23 -0
  260. package/package/components/apps/svelte-select/lib/Select.svelte +1129 -0
  261. package/package/components/apps/svelte-select/lib/Select.svelte.d.ts +205 -0
  262. package/package/components/apps/svelte-select/lib/filter.d.ts +13 -0
  263. package/package/components/apps/svelte-select/lib/filter.js +32 -0
  264. package/package/components/apps/svelte-select/lib/get-items.d.ts +11 -0
  265. package/package/components/apps/svelte-select/lib/get-items.js +30 -0
  266. package/package/components/apps/svelte-select/lib/index.d.ts +1 -0
  267. package/package/components/apps/svelte-select/lib/index.js +1 -0
  268. package/package/components/apps/svelte-select/lib/tailwind.css +130 -0
  269. package/package/components/apps/types.d.ts +6 -0
  270. package/package/components/apps/utils.d.ts +1 -5
  271. package/package/components/apps/utils.js +6 -34
  272. package/package/components/codeGen/ScriptFix.svelte +123 -0
  273. package/package/components/codeGen/ScriptFix.svelte.d.ts +22 -0
  274. package/package/components/codeGen/ScriptGen.svelte +218 -0
  275. package/package/components/codeGen/ScriptGen.svelte.d.ts +24 -0
  276. package/package/components/codeGen/index.d.ts +1 -0
  277. package/package/components/codeGen/index.js +1 -0
  278. package/package/components/codeGen/lib.d.ts +28 -0
  279. package/package/components/codeGen/lib.js +217 -0
  280. package/package/components/codeGen/prompts/edit.yaml +94 -0
  281. package/package/components/codeGen/prompts/fix.yaml +113 -0
  282. package/package/components/codeGen/prompts/gen.yaml +49 -0
  283. package/package/components/codeGen/prompts/index.d.ts +12 -0
  284. package/package/components/codeGen/prompts/index.js +7 -0
  285. package/package/components/codeGen/utils.d.ts +4 -0
  286. package/package/components/codeGen/utils.js +79 -0
  287. package/package/components/common/CloseButton.svelte +3 -3
  288. package/package/components/common/actionRow/ActionRow.svelte +1 -1
  289. package/package/components/common/alert/Alert.svelte +18 -18
  290. package/package/components/common/breadcrumb/Breadcrumb.svelte +1 -1
  291. package/package/components/common/button/Button.svelte +14 -14
  292. package/package/components/common/button/ButtonDropdown.svelte +2 -2
  293. package/package/components/common/calendarPicker/CalendarPicker.svelte +62 -0
  294. package/package/components/common/calendarPicker/CalendarPicker.svelte.d.ts +19 -0
  295. package/package/components/common/confirmationModal/ConfirmationModal.svelte +7 -5
  296. package/package/components/common/drawer/Drawer.svelte +5 -3
  297. package/package/components/common/drawer/DrawerContent.svelte +3 -2
  298. package/package/components/common/drawer/DrawerContent.svelte.d.ts +1 -0
  299. package/package/components/common/fileInput/FileInput.svelte +3 -3
  300. package/package/components/common/kbd/Kbd.svelte +1 -1
  301. package/package/components/common/languageIcons/LanguageIcon.svelte +22 -1
  302. package/package/components/common/languageIcons/LanguageIcon.svelte.d.ts +1 -1
  303. package/package/components/common/menu/Menu.svelte +1 -1
  304. package/package/components/common/menu/MenuItem.svelte +1 -1
  305. package/package/components/common/modal/AlwaysMountedModal.svelte +4 -4
  306. package/package/components/common/modal/Modal.svelte +3 -3
  307. package/package/components/common/popup/Popup.svelte +33 -157
  308. package/package/components/common/popup/Popup.svelte.d.ts +6 -45
  309. package/package/components/common/skeleton/SkeletonElement.svelte +1 -1
  310. package/package/components/common/stepper/Stepper.svelte +3 -3
  311. package/package/components/common/table/AppRow.svelte +36 -24
  312. package/package/components/common/table/FlowRow.svelte +13 -39
  313. package/package/components/common/table/RawAppRow.svelte +1 -15
  314. package/package/components/common/table/Row.svelte +22 -23
  315. package/package/components/common/table/RowIcon.svelte +7 -7
  316. package/package/components/common/table/ScriptRow.svelte +17 -41
  317. package/package/components/common/table/Table.svelte +1 -1
  318. package/package/components/common/tabs/Tab.svelte +1 -1
  319. package/package/components/common/tabs/Tabs.svelte +1 -4
  320. package/package/components/common/toggleButton-v2/ToggleButton.svelte +9 -2
  321. package/package/components/common/toggleButton-v2/ToggleButton.svelte.d.ts +1 -0
  322. package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte +1 -1
  323. package/package/components/details/ClipboardPanel.svelte +19 -0
  324. package/package/components/details/ClipboardPanel.svelte.d.ts +17 -0
  325. package/package/components/details/DetailPageDetailPanel.svelte +92 -0
  326. package/package/components/details/DetailPageDetailPanel.svelte.d.ts +23 -0
  327. package/package/components/details/DetailPageHeader.svelte +66 -0
  328. package/package/components/details/DetailPageHeader.svelte.d.ts +29 -0
  329. package/package/components/details/DetailPageLayout.svelte +51 -0
  330. package/package/components/details/DetailPageLayout.svelte.d.ts +35 -0
  331. package/package/components/details/Menu.svelte +53 -0
  332. package/package/components/details/Menu.svelte.d.ts +18 -0
  333. package/package/components/details/WebhooksPanel.svelte +236 -0
  334. package/package/components/details/WebhooksPanel.svelte.d.ts +29 -0
  335. package/package/components/details/createAppFromScript.d.ts +719 -0
  336. package/package/components/details/createAppFromScript.js +723 -0
  337. package/package/components/details/utils.d.ts +8 -0
  338. package/package/components/details/utils.js +50 -0
  339. package/package/components/flows/FlowEditor.svelte +1 -1
  340. package/package/components/flows/common/FlowCardHeader.svelte +4 -4
  341. package/package/components/flows/content/CapturePayload.svelte +2 -2
  342. package/package/components/flows/content/DynamicInputHelpBox.svelte +1 -1
  343. package/package/components/flows/content/FlowBranchesAllWrapper.svelte +1 -1
  344. package/package/components/flows/content/FlowBranchesOneWrapper.svelte +2 -2
  345. package/package/components/flows/content/FlowConstants.svelte +43 -3
  346. package/package/components/flows/content/FlowEditorPanel.svelte +1 -1
  347. package/package/components/flows/content/FlowInputs.svelte +85 -34
  348. package/package/components/flows/content/FlowInputsFlow.svelte +2 -2
  349. package/package/components/flows/content/FlowLoop.svelte +29 -29
  350. package/package/components/flows/content/FlowModuleComponent.svelte +61 -1
  351. package/package/components/flows/content/FlowModuleComponent.svelte.d.ts +2 -0
  352. package/package/components/flows/content/FlowModuleConcurrencyLimit.svelte +51 -0
  353. package/package/components/flows/content/FlowModuleConcurrencyLimit.svelte.d.ts +17 -0
  354. package/package/components/flows/content/FlowModuleEarlyStop.svelte +3 -1
  355. package/package/components/flows/content/FlowModuleHeader.svelte +57 -37
  356. package/package/components/flows/content/FlowModuleHeader.svelte.d.ts +1 -0
  357. package/package/components/flows/content/FlowModuleTimeout.svelte +43 -0
  358. package/package/components/flows/content/FlowModuleTimeout.svelte.d.ts +17 -0
  359. package/package/components/flows/content/FlowModuleWrapper.svelte +6 -0
  360. package/package/components/flows/content/FlowRetries.svelte +3 -3
  361. package/package/components/flows/content/FlowSchedules.svelte +1 -1
  362. package/package/components/flows/content/FlowSettings.svelte +102 -24
  363. package/package/components/flows/content/ScriptEditorDrawer.svelte +1 -1
  364. package/package/components/flows/flowStateUtils.js +1 -1
  365. package/package/components/flows/header/FlowPreviewButtons.svelte +1 -0
  366. package/package/components/flows/idUtils.js +1 -1
  367. package/package/components/flows/map/FlowConstantsItem.svelte +1 -1
  368. package/package/components/flows/map/FlowErrorHandlerItem.svelte +1 -1
  369. package/package/components/flows/map/FlowModuleSchemaItem.svelte +24 -12
  370. package/package/components/flows/map/FlowModuleSchemaItem.svelte.d.ts +1 -0
  371. package/package/components/flows/map/FlowModuleSchemaMap.svelte +2 -2
  372. package/package/components/flows/map/FlowSettingsItem.svelte +1 -1
  373. package/package/components/flows/map/InsertModuleButton.svelte +10 -10
  374. package/package/components/flows/map/MapItem.svelte +10 -6
  375. package/package/components/flows/map/VirtualItem.svelte +10 -8
  376. package/package/components/flows/map/VirtualItem.svelte.d.ts +1 -1
  377. package/package/components/flows/pickers/FlowScriptPicker.svelte +28 -21
  378. package/package/components/flows/pickers/FlowScriptPicker.svelte.d.ts +1 -1
  379. package/package/components/flows/pickers/PickHubApp.svelte +3 -3
  380. package/package/components/flows/pickers/PickHubFlow.svelte +3 -3
  381. package/package/components/flows/pickers/PickHubScript.svelte +6 -6
  382. package/package/components/flows/pickers/WorkspaceScriptPicker.svelte +2 -2
  383. package/package/components/flows/utils.js +2 -1
  384. package/package/components/graph/FlowGraph.svelte +53 -34
  385. package/package/components/graph/svelvet/container/views/GraphView.svelte +12 -17
  386. package/package/components/graph/svelvet/container/views/Svelvet.svelte +2 -4
  387. package/package/components/graph/svelvet/edges/views/Edges/EdgeText.svelte.d.ts +2 -2
  388. package/package/components/home/ItemsList.svelte +13 -9
  389. package/package/components/home/ListFilters.svelte +2 -1
  390. package/package/components/home/ListFilters.svelte.d.ts +1 -0
  391. package/package/components/home/NoItemFound.svelte +1 -1
  392. package/package/components/icons/BigQueryIcon.svelte +36 -0
  393. package/package/components/icons/BigQueryIcon.svelte.d.ts +17 -0
  394. package/package/components/icons/PowershellIcon.svelte +56 -0
  395. package/package/components/icons/PowershellIcon.svelte.d.ts +17 -0
  396. package/package/components/icons/RestIcon.svelte +21 -0
  397. package/package/components/icons/RestIcon.svelte.d.ts +17 -0
  398. package/package/components/jobs/JobDetail.svelte +21 -21
  399. package/package/components/jobs/JobPreview.svelte +6 -6
  400. package/package/components/preview/FlowPreviewStatus.svelte +2 -2
  401. package/package/components/progressBar/ProgressBar.svelte +2 -2
  402. package/package/components/propertyPicker/ObjectViewer.svelte +13 -18
  403. package/package/components/propertyPicker/PropPicker.svelte +5 -2
  404. package/package/components/scriptEditor/LogPanel.svelte +13 -4
  405. package/package/components/scriptEditor/LogPanel.svelte.d.ts +4 -0
  406. package/package/components/sidebar/DarkModeToggle.svelte +30 -0
  407. package/package/components/sidebar/DarkModeToggle.svelte.d.ts +17 -0
  408. package/package/components/sidebar/FavoriteMenu.svelte +4 -3
  409. package/package/components/sidebar/MenuLink.svelte +3 -2
  410. package/package/components/sidebar/MultiplayerMenu.svelte +2 -2
  411. package/package/components/sidebar/SidebarContent.svelte +9 -1
  412. package/package/components/sidebar/UserMenu.svelte +11 -10
  413. package/package/components/sidebar/WorkspaceMenu.svelte +11 -10
  414. package/package/components/theme/nord.json +93 -0
  415. package/package/defaults.d.ts +1 -0
  416. package/package/defaults.js +2 -1
  417. package/package/editorUtils.js +2 -0
  418. package/package/gen/core/CancelablePromise.js +1 -0
  419. package/package/gen/core/OpenAPI.d.ts +5 -5
  420. package/package/gen/core/OpenAPI.js +1 -1
  421. package/package/gen/core/request.d.ts +17 -0
  422. package/package/gen/core/request.js +27 -16
  423. package/package/gen/index.d.ts +43 -1
  424. package/package/gen/index.js +2 -0
  425. package/package/gen/models/AccountId.d.ts +1 -0
  426. package/package/gen/models/{Postgresql.js → AccountId.js} +1 -0
  427. package/package/gen/models/ActionKind.d.ts +9 -0
  428. package/package/gen/models/ActionKind.js +14 -0
  429. package/package/gen/models/After.d.ts +4 -0
  430. package/package/gen/models/After.js +5 -0
  431. package/package/gen/models/AppWithLastVersion.js +1 -0
  432. package/package/gen/models/AppWithLastVersionWDraft.js +1 -0
  433. package/package/gen/models/ArgsFilter.d.ts +4 -0
  434. package/package/gen/models/ArgsFilter.js +5 -0
  435. package/package/gen/models/AuditLog.js +1 -0
  436. package/package/gen/models/Before.d.ts +4 -0
  437. package/package/gen/models/Before.js +5 -0
  438. package/package/gen/models/BranchAll.js +1 -0
  439. package/package/gen/models/BranchOne.js +1 -0
  440. package/package/gen/models/ClientName.d.ts +1 -0
  441. package/package/gen/models/ClientName.js +5 -0
  442. package/package/gen/models/CompletedJob.d.ts +8 -4
  443. package/package/gen/models/CompletedJob.js +7 -2
  444. package/package/gen/models/ContextualVariable.js +1 -0
  445. package/package/gen/models/CreateInput.js +1 -0
  446. package/package/gen/models/CreateResource.js +1 -0
  447. package/package/gen/models/CreateVariable.js +1 -0
  448. package/package/gen/models/CreateWorkspace.js +1 -0
  449. package/package/gen/models/CreatedBy.d.ts +4 -0
  450. package/package/gen/models/CreatedBy.js +5 -0
  451. package/package/gen/models/EditResource.js +1 -0
  452. package/package/gen/models/EditResourceType.js +1 -0
  453. package/package/gen/models/EditSchedule.js +1 -0
  454. package/package/gen/models/EditVariable.js +1 -0
  455. package/package/gen/models/EditWorkspaceUser.js +1 -0
  456. package/package/gen/models/Flow.js +1 -0
  457. package/package/gen/models/FlowMetadata.d.ts +1 -0
  458. package/package/gen/models/FlowMetadata.js +1 -0
  459. package/package/gen/models/FlowModule.d.ts +1 -0
  460. package/package/gen/models/FlowModule.js +1 -0
  461. package/package/gen/models/FlowModuleValue.d.ts +1 -2
  462. package/package/gen/models/FlowModuleValue.js +1 -0
  463. package/package/gen/models/FlowPreview.d.ts +1 -0
  464. package/package/gen/models/FlowPreview.js +1 -0
  465. package/package/gen/models/FlowStatus.js +1 -0
  466. package/package/gen/models/FlowStatusModule.js +1 -0
  467. package/package/gen/models/FlowValue.js +1 -0
  468. package/package/gen/models/Folder.js +1 -0
  469. package/package/gen/models/ForloopFlow.js +1 -0
  470. package/package/gen/models/GlobalUserInfo.js +1 -0
  471. package/package/gen/models/Graphql.js +1 -0
  472. package/package/gen/models/Group.js +1 -0
  473. package/package/gen/models/Http.js +1 -0
  474. package/package/gen/models/Identity.js +1 -0
  475. package/package/gen/models/IncludeHeader.d.ts +6 -0
  476. package/package/gen/models/IncludeHeader.js +5 -0
  477. package/package/gen/models/Input.d.ts +1 -0
  478. package/package/gen/models/Input.js +1 -0
  479. package/package/gen/models/InputId.d.ts +1 -0
  480. package/package/gen/models/InputId.js +5 -0
  481. package/package/gen/models/InputTransform.js +1 -0
  482. package/package/gen/models/InstanceGroup.d.ts +4 -0
  483. package/package/gen/models/InstanceGroup.js +5 -0
  484. package/package/gen/models/JavascriptTransform.js +1 -0
  485. package/package/gen/models/Job.js +1 -0
  486. package/package/gen/models/JobId.d.ts +1 -0
  487. package/package/gen/models/JobId.js +5 -0
  488. package/package/gen/models/JobKinds.d.ts +4 -0
  489. package/package/gen/models/JobKinds.js +5 -0
  490. package/package/gen/models/ListableApp.js +1 -0
  491. package/package/gen/models/ListableRawApp.js +1 -0
  492. package/package/gen/models/ListableResource.js +1 -0
  493. package/package/gen/models/ListableVariable.js +1 -0
  494. package/package/gen/models/Login.js +1 -0
  495. package/package/gen/models/MainArgSignature.js +1 -0
  496. package/package/gen/models/Name.d.ts +1 -0
  497. package/package/gen/models/Name.js +5 -0
  498. package/package/gen/models/NewJobId.d.ts +4 -0
  499. package/package/gen/models/NewJobId.js +5 -0
  500. package/package/gen/models/NewSchedule.js +1 -0
  501. package/package/gen/models/NewScript.d.ts +9 -1
  502. package/package/gen/models/NewScript.js +7 -0
  503. package/package/gen/models/NewScriptWithDraft.js +1 -0
  504. package/package/gen/models/NewToken.js +1 -0
  505. package/package/gen/models/NewTokenImpersonate.js +1 -0
  506. package/package/gen/models/NewUser.js +1 -0
  507. package/package/gen/models/OpenFlow.js +1 -0
  508. package/package/gen/models/OpenFlowWPath.d.ts +1 -0
  509. package/package/gen/models/OpenFlowWPath.js +1 -0
  510. package/package/gen/models/Operation.d.ts +4 -0
  511. package/package/gen/models/Operation.js +5 -0
  512. package/package/gen/models/OrderDesc.d.ts +4 -0
  513. package/package/gen/models/OrderDesc.js +5 -0
  514. package/package/gen/models/Page.d.ts +4 -0
  515. package/package/gen/models/Page.js +5 -0
  516. package/package/gen/models/ParentJob.d.ts +4 -0
  517. package/package/gen/models/ParentJob.js +5 -0
  518. package/package/gen/models/Path.d.ts +1 -0
  519. package/package/gen/models/Path.js +5 -0
  520. package/package/gen/models/PathFlow.js +1 -0
  521. package/package/gen/models/PathId.d.ts +1 -0
  522. package/package/gen/models/PathId.js +5 -0
  523. package/package/gen/models/PathScript.js +1 -0
  524. package/package/gen/models/Payload.d.ts +6 -0
  525. package/package/gen/models/Payload.js +5 -0
  526. package/package/gen/models/PerPage.d.ts +4 -0
  527. package/package/gen/models/PerPage.js +5 -0
  528. package/package/gen/models/Policy.js +1 -0
  529. package/package/gen/models/Preview.d.ts +7 -3
  530. package/package/gen/models/Preview.js +7 -2
  531. package/package/gen/models/QueueLimit.d.ts +5 -0
  532. package/package/gen/models/QueueLimit.js +5 -0
  533. package/package/gen/models/QueuedJob.d.ts +8 -4
  534. package/package/gen/models/QueuedJob.js +7 -2
  535. package/package/gen/models/RawScript.d.ts +8 -1
  536. package/package/gen/models/RawScript.js +6 -0
  537. package/package/gen/models/Resource.js +1 -0
  538. package/package/gen/models/ResourceName.d.ts +4 -0
  539. package/package/gen/models/ResourceName.js +5 -0
  540. package/package/gen/models/ResourceType.js +1 -0
  541. package/package/gen/models/ResultFilter.d.ts +4 -0
  542. package/package/gen/models/ResultFilter.js +5 -0
  543. package/package/gen/models/Retry.js +1 -0
  544. package/package/gen/models/RunnableId.d.ts +1 -0
  545. package/package/gen/models/RunnableId.js +5 -0
  546. package/package/gen/models/RunnableType.js +1 -0
  547. package/package/gen/models/RunnableTypeQuery.d.ts +2 -0
  548. package/package/gen/models/RunnableTypeQuery.js +5 -0
  549. package/package/gen/models/Running.d.ts +4 -0
  550. package/package/gen/models/Running.js +5 -0
  551. package/package/gen/models/Schedule.js +1 -0
  552. package/package/gen/models/SchedulePath.d.ts +4 -0
  553. package/package/gen/models/SchedulePath.js +5 -0
  554. package/package/gen/models/ScheduleWJobs.js +1 -0
  555. package/package/gen/models/Script.d.ts +9 -1
  556. package/package/gen/models/Script.js +7 -0
  557. package/package/gen/models/ScriptArgs.js +1 -0
  558. package/package/gen/models/ScriptExactHash.d.ts +4 -0
  559. package/package/gen/models/ScriptExactHash.js +5 -0
  560. package/package/gen/models/ScriptExactPath.d.ts +4 -0
  561. package/package/gen/models/ScriptExactPath.js +5 -0
  562. package/package/gen/models/ScriptHash.d.ts +1 -0
  563. package/package/gen/models/ScriptHash.js +5 -0
  564. package/package/gen/models/ScriptPath.d.ts +1 -0
  565. package/package/gen/models/ScriptPath.js +5 -0
  566. package/package/gen/models/ScriptStartPath.d.ts +4 -0
  567. package/package/gen/models/ScriptStartPath.js +5 -0
  568. package/package/gen/models/SlackToken.js +1 -0
  569. package/package/gen/models/StartedAfter.d.ts +4 -0
  570. package/package/gen/models/StartedAfter.js +5 -0
  571. package/package/gen/models/StartedBefore.d.ts +4 -0
  572. package/package/gen/models/StartedBefore.js +5 -0
  573. package/package/gen/models/StaticTransform.js +1 -0
  574. package/package/gen/models/Success.d.ts +4 -0
  575. package/package/gen/models/Success.js +5 -0
  576. package/package/gen/models/Suspended.d.ts +4 -0
  577. package/package/gen/models/Suspended.js +5 -0
  578. package/package/gen/models/Tag.d.ts +4 -0
  579. package/package/gen/models/Tag.js +5 -0
  580. package/package/gen/models/Token.d.ts +1 -0
  581. package/package/gen/models/Token.js +5 -0
  582. package/package/gen/models/TokenResponse.js +1 -0
  583. package/package/gen/models/TruncatedToken.js +1 -0
  584. package/package/gen/models/UpdateInput.js +1 -0
  585. package/package/gen/models/Usage.js +1 -0
  586. package/package/gen/models/User.js +1 -0
  587. package/package/gen/models/UserWorkspaceList.js +1 -0
  588. package/package/gen/models/Username.d.ts +4 -0
  589. package/package/gen/models/Username.js +5 -0
  590. package/package/gen/models/VersionId.d.ts +1 -0
  591. package/package/gen/models/VersionId.js +5 -0
  592. package/package/gen/models/WorkerPing.d.ts +1 -0
  593. package/package/gen/models/WorkerPing.js +1 -0
  594. package/package/gen/models/Workspace.js +1 -0
  595. package/package/gen/models/WorkspaceId.d.ts +1 -0
  596. package/package/gen/models/WorkspaceId.js +5 -0
  597. package/package/gen/models/WorkspaceInvite.js +1 -0
  598. package/package/gen/services/GroupService.d.ts +15 -0
  599. package/package/gen/services/GroupService.js +25 -0
  600. package/package/gen/services/JobService.d.ts +2 -2
  601. package/package/gen/services/JobService.js +2 -2
  602. package/package/gen/services/OauthService.d.ts +5 -2
  603. package/package/gen/services/OauthService.js +1 -1
  604. package/package/gen/services/ScheduleService.d.ts +6 -1
  605. package/package/gen/services/ScheduleService.js +3 -1
  606. package/package/gen/services/ScriptService.d.ts +1 -1
  607. package/package/gen/services/UserService.d.ts +8 -0
  608. package/package/gen/services/UserService.js +14 -0
  609. package/package/gen/services/WorkspaceService.d.ts +38 -0
  610. package/package/gen/services/WorkspaceService.js +46 -0
  611. package/package/infer.d.ts +6 -2
  612. package/package/infer.js +55 -2
  613. package/package/script_helpers.d.ts +9 -3
  614. package/package/script_helpers.js +77 -57
  615. package/package/scripts.d.ts +3 -1
  616. package/package/scripts.js +26 -2
  617. package/package/stores.d.ts +3 -0
  618. package/package/stores.js +3 -0
  619. package/package/utils.d.ts +5 -3
  620. package/package/utils.js +19 -7
  621. package/package.json +23 -19
  622. package/package/components/common/table/LanguageBadge.svelte +0 -40
  623. package/package/components/common/table/LanguageBadge.svelte.d.ts +0 -17
  624. package/package/gen/models/Postgresql.d.ts +0 -3
@@ -1,7 +1,7 @@
1
- <script>import { defaultIfEmptyString, displayDaysAgo, emptyString, getToday, truncateHash } from '../utils';
2
- import { runFormStore, userStore } from '../stores';
1
+ <script>import { defaultIfEmptyString, displayDaysAgo, emptyString, getModifierKey, getToday, truncateHash } from '../utils';
2
+ import { userStore } from '../stores';
3
3
  import CliHelpBox from './CliHelpBox.svelte';
4
- import { Badge, Button } from './common';
4
+ import { Badge, Button, Kbd } from './common';
5
5
  import InlineCodeCopy from './InlineCodeCopy.svelte';
6
6
  import SchemaForm from './SchemaForm.svelte';
7
7
  import SharedBadge from './SharedBadge.svelte';
@@ -20,11 +20,9 @@ export let loading = false;
20
20
  export let noVariablePicker = false;
21
21
  export let viewCliRun = false;
22
22
  export let isFlow;
23
+ export let viewKeybinding = false;
23
24
  export let args = {};
24
- if ($runFormStore) {
25
- args = $runFormStore;
26
- $runFormStore = undefined;
27
- }
25
+ let reloadArgs = 0;
28
26
  export async function setArgs(nargs) {
29
27
  args = nargs;
30
28
  reloadArgs++;
@@ -36,7 +34,6 @@ export let isValid = true;
36
34
  let scheduledForStr;
37
35
  let invisible_to_owner;
38
36
  $: cliCommand = `wmill ${isFlow ? 'flow' : 'script'} run ${runnable?.path} -d '${JSON.stringify(args)}'`;
39
- let reloadArgs = 0;
40
37
  </script>
41
38
 
42
39
  <div class="max-w-3xl">
@@ -53,7 +50,7 @@ let reloadArgs = 0;
53
50
  {/if}
54
51
 
55
52
  <div class="flex items-center gap-2">
56
- <span class="text-sm text-gray-500">
53
+ <span class="text-sm text-tertiary">
57
54
  {#if runnable}
58
55
  Edited {displayDaysAgo(runnable.created_at || '')} by {runnable.created_by ||
59
56
  'unknown'}
@@ -94,7 +91,7 @@ let reloadArgs = 0;
94
91
  {#if runnable?.schema}
95
92
  <div class="my-2" />
96
93
  {#if !runnable.schema.properties || Object.keys(runnable.schema.properties).length === 0}
97
- <div class="text-sm p-4">No arguments</div>
94
+ <div class="text-sm py-4 italic">No arguments</div>
98
95
  {:else}
99
96
  {#key reloadArgs}
100
97
  <SchemaForm
@@ -108,78 +105,91 @@ let reloadArgs = 0;
108
105
  {/key}
109
106
  {/if}
110
107
  {:else}
111
- <div class="text-xs text-gray-600">No arguments</div>
108
+ <div class="text-xs text-tertiary">No arguments</div>
112
109
  {/if}
113
110
  {#if schedulable}
114
111
  <div class="mt-10" />
115
112
  <div class="flex gap-2 items-start flex-wrap justify-between mt-2 md:mt-6 mb-6">
116
- <div class="flex-row-reverse flex grow">
113
+ <div class="flex-row-reverse flex-wrap flex w-full gap-4">
117
114
  <Button
118
115
  {loading}
119
116
  color="dark"
120
- btnClasses="!px-6 !py-1"
117
+ btnClasses="!px-6 !py-1 !h-8 inline-flex gap-2"
121
118
  disabled={!isValid}
122
119
  on:click={() => runAction(scheduledForStr, args, invisible_to_owner)}
123
120
  >
124
- {scheduledForStr ? 'Schedule to run later' : buttonText}
121
+ {#if viewKeybinding}
122
+ <div class="inline-flex gap-0 items-center">
123
+ <Kbd small>{getModifierKey()}</Kbd><Kbd small>Enter</Kbd>
124
+ </div>{/if}
125
+ <div>
126
+ {scheduledForStr ? 'Schedule to run later' : buttonText}
127
+ </div>
125
128
  </Button>
126
- </div>
127
- </div>
128
- <CollapseLink small text="Advanced">
129
- <div class="flex flex-col gap-4 mt-2 border p-2">
130
- <div class="flex flex-col gap-2">
131
- {#if SCRIPT_VIEW_SHOW_SCHEDULE_RUN_LATER}
132
- <div class="border rounded-md p-3 pt-4">
133
- <div class="px-2 font-semibold text-sm">Schedule to run later</div>
129
+ <div>
130
+ <CollapseLink small text="Advanced" class="justify-end">
131
+ <div class="flex flex-col gap-4 mt-2 border p-2">
132
+ <div class="flex flex-col gap-2">
133
+ {#if SCRIPT_VIEW_SHOW_SCHEDULE_RUN_LATER}
134
+ <div class="border rounded-md p-3 pt-4">
135
+ <div class="px-2 font-semibold text-sm">Schedule to run later</div>
134
136
 
135
- <div class="flex flex-row items-end">
136
- <div class="w-max md:w-2/3 mt-2 mb-1">
137
- <label for="run-time" />
138
- <input
139
- class="inline-block"
140
- type="datetime-local"
141
- id="run-time"
142
- name="run-scheduled-time"
143
- bind:value={scheduledForStr}
144
- min={getToday().toISOString().slice(0, 16)}
137
+ <div class="flex flex-row items-end">
138
+ <div class="w-max md:w-2/3 mt-2 mb-1">
139
+ <label for="run-time" />
140
+ <input
141
+ class="inline-block"
142
+ type="datetime-local"
143
+ id="run-time"
144
+ name="run-scheduled-time"
145
+ bind:value={scheduledForStr}
146
+ min={getToday().toISOString().slice(0, 16)}
147
+ />
148
+ </div>
149
+ <Button
150
+ variant="border"
151
+ color="blue"
152
+ size="sm"
153
+ btnClasses="mx-2 mb-1"
154
+ on:click={() => {
155
+ scheduledForStr = undefined
156
+ }}
157
+ >
158
+ Clear
159
+ </Button>
160
+ </div>
161
+ </div>
162
+ {/if}
163
+ </div>
164
+ {#if runnable?.path?.startsWith(`u/${$userStore?.username}`) != true && (runnable?.path?.split('/')?.length ?? 0) > 2}
165
+ <div class="flex items-center gap-1">
166
+ <Toggle
167
+ options={{
168
+ right: `make run invisible to others`
169
+ }}
170
+ bind:checked={invisible_to_owner}
145
171
  />
172
+ <Tooltip
173
+ >By default, runs are visible to the owner(s) of the script or flow being
174
+ triggered</Tooltip
175
+ >
146
176
  </div>
147
- <Button
148
- variant="border"
149
- color="blue"
150
- size="sm"
151
- btnClasses="mx-2 mb-1"
152
- on:click={() => {
153
- scheduledForStr = undefined
154
- }}
155
- >
156
- Clear
157
- </Button>
158
- </div>
177
+ {/if}
159
178
  </div>
160
- {/if}
179
+ </CollapseLink>
161
180
  </div>
162
- {#if runnable?.path?.startsWith(`u/${$userStore?.username}`) != true && (runnable?.path?.split('/')?.length ?? 0) > 2}
163
- <div class="flex items-center gap-1">
164
- <Toggle
165
- options={{
166
- right: `make run invisible to others`
167
- }}
168
- bind:checked={invisible_to_owner}
169
- />
170
- <Tooltip
171
- >By default, runs are visible to the owner(s) of the script or flow being triggered</Tooltip
172
- >
173
- </div>
174
- {/if}
175
181
  </div>
176
- </CollapseLink>
182
+ </div>
177
183
  {:else if !topButton}
178
184
  <Button
179
185
  btnClasses="!px-6 !py-1 w-full"
180
186
  disabled={!isValid}
181
187
  on:click={() => runAction(undefined, args, invisible_to_owner)}
182
188
  >
189
+ {#if viewKeybinding}
190
+ <div>
191
+ <Kbd small>{getModifierKey()}</Kbd>+<Kbd small>Enter</Kbd>
192
+ </div>{/if}
183
193
  {buttonText}
184
194
  </Button>
185
195
  {/if}
@@ -25,6 +25,7 @@ declare const __propDef: {
25
25
  noVariablePicker?: boolean | undefined;
26
26
  viewCliRun?: boolean | undefined;
27
27
  isFlow: boolean;
28
+ viewKeybinding?: boolean | undefined;
28
29
  args?: Record<string, any> | undefined;
29
30
  setArgs?: ((nargs: Record<string, any>) => Promise<void>) | undefined;
30
31
  run?: (() => void) | undefined;
@@ -0,0 +1,169 @@
1
+ <script>import { faCalendar } from '@fortawesome/free-solid-svg-icons';
2
+ import ScheduleEditor from './ScheduleEditor.svelte';
3
+ import { Badge, Button } from './common';
4
+ import { workspaceStore } from '../stores';
5
+ import { ScheduleService } from '../gen';
6
+ import { sendUserToast } from '../toast';
7
+ import Toggle from './Toggle.svelte';
8
+ import { ListOrdered, PenBox } from 'lucide-svelte';
9
+ import JobArgs from './JobArgs.svelte';
10
+ import Skeleton from './common/skeleton/Skeleton.svelte';
11
+ import Tooltip from './Tooltip.svelte';
12
+ export let isFlow;
13
+ export let path;
14
+ export let can_write;
15
+ let scheduleEditor;
16
+ let schedule = undefined;
17
+ let schedules = undefined;
18
+ $: path && loadSchedule();
19
+ $: path && loadSchedules();
20
+ async function loadSchedule() {
21
+ try {
22
+ let exists = await ScheduleService.existsSchedule({
23
+ workspace: $workspaceStore ?? '',
24
+ path
25
+ });
26
+ if (exists) {
27
+ schedule = await ScheduleService.getSchedule({
28
+ workspace: $workspaceStore ?? '',
29
+ path
30
+ });
31
+ }
32
+ else {
33
+ schedule = false;
34
+ }
35
+ }
36
+ catch (e) {
37
+ console.log('no primary schedule');
38
+ }
39
+ }
40
+ async function loadSchedules() {
41
+ try {
42
+ schedules = (await ScheduleService.listSchedules({
43
+ workspace: $workspaceStore ?? '',
44
+ path,
45
+ isFlow
46
+ })).filter((s) => s.path != path);
47
+ }
48
+ catch (e) {
49
+ console.error('impossible to load schedules');
50
+ }
51
+ }
52
+ async function setScheduleEnabled(path, enabled) {
53
+ try {
54
+ await ScheduleService.setScheduleEnabled({
55
+ path,
56
+ workspace: $workspaceStore,
57
+ requestBody: { enabled }
58
+ });
59
+ loadSchedule();
60
+ sendUserToast(`Schedule ${enabled ? 'enabled' : 'disabled'}`);
61
+ }
62
+ catch (err) {
63
+ sendUserToast(`Cannot ` + (enabled ? 'disable' : 'enable') + ` schedule: ${err}`, true);
64
+ loadSchedule();
65
+ }
66
+ }
67
+ </script>
68
+
69
+ <ScheduleEditor
70
+ on:update={() => {
71
+ loadSchedule()
72
+ loadSchedules()
73
+ }}
74
+ bind:this={scheduleEditor}
75
+ />
76
+
77
+ <div class="p-2 flex flex-col">
78
+ <Button
79
+ on:click={() => scheduleEditor?.openNew(isFlow, path)}
80
+ variant="border"
81
+ color="light"
82
+ size="xs"
83
+ startIcon={{ icon: faCalendar }}
84
+ >
85
+ New Schedule
86
+ </Button>
87
+ </div>
88
+
89
+ {#if schedule}
90
+ <div class="p-2 flex flex-col gap-2">
91
+ <div class="flex flex-row justify-between h-8">
92
+ <div class="flex flex-row gap-2">
93
+ <input
94
+ class="inline-block !w-32"
95
+ type="text"
96
+ id="cron-schedule"
97
+ name="cron-schedule"
98
+ placeholder="*/30 * * * *"
99
+ value={schedule.schedule}
100
+ disabled={true}
101
+ />
102
+ <Badge color="indigo" small
103
+ >Primary schedule&nbsp;<Tooltip
104
+ >Share the same path as the script or flow it is attached to and its path get renamed
105
+ whenever the source path is renamed</Tooltip
106
+ ></Badge
107
+ >
108
+ </div>
109
+ <div class="flex flex-row gap-2">
110
+ <Toggle
111
+ checked={schedule.enabled}
112
+ on:change={(e) => {
113
+ if (can_write) {
114
+ setScheduleEnabled(path, e.detail)
115
+ } else {
116
+ sendUserToast('not enough permission', true)
117
+ }
118
+ }}
119
+ options={{
120
+ right: 'On'
121
+ }}
122
+ size="xs"
123
+ />
124
+ <Button size="xs" variant="border" color="light" href={`/runs/${path}`}>
125
+ <div class="flex flex-row gap-2">
126
+ <ListOrdered size={14} />
127
+ Runs
128
+ </div>
129
+ </Button>
130
+ <Button
131
+ size="xs"
132
+ color="dark"
133
+ on:click={() => scheduleEditor?.openEdit(path ?? '', isFlow)}
134
+ >
135
+ <PenBox size={14} />
136
+ </Button>
137
+ </div>
138
+ </div>
139
+ {#if Object.keys(schedule?.args ?? {}).length > 0}
140
+ <div class="">
141
+ <JobArgs args={schedule.args ?? {}} />
142
+ </div>
143
+ {:else}
144
+ <div class="text-xs texg-gray-700"> No arguments </div>
145
+ {/if}
146
+ </div>
147
+ {:else if schedule == undefined}
148
+ <Skeleton layout={[[6]]} />
149
+ {/if}
150
+
151
+ <h3 class="px-2 pt-4">Other schedules</h3>
152
+
153
+ {#if schedules}
154
+ {#if schedules.length == 0}
155
+ <div class="text-xs text-secondary px-2"> No other schedules </div>
156
+ {:else}
157
+ <div class="flex flex-col divide-y px-2 pt-2">
158
+ {#each schedules as schedule}
159
+ <div class="grid grid-cols-6 text-2xs items-center py-2"
160
+ ><div class="col-span-3 truncate">{schedule.path}</div><div>{schedule.schedule}</div>
161
+ <div>{schedule.enabled ? 'on' : 'off'}</div>
162
+ <button on:click={() => scheduleEditor?.openEdit(path, isFlow)}>edit</button>
163
+ </div>
164
+ {/each}
165
+ </div>
166
+ {/if}
167
+ {:else}
168
+ <Skeleton layout={[[8]]} />
169
+ {/if}
@@ -0,0 +1,18 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: {
4
+ isFlow: boolean;
5
+ path: string;
6
+ can_write: boolean;
7
+ };
8
+ events: {
9
+ [evt: string]: CustomEvent<any>;
10
+ };
11
+ slots: {};
12
+ };
13
+ export type RunPageSchedulesProps = typeof __propDef.props;
14
+ export type RunPageSchedulesEvents = typeof __propDef.events;
15
+ export type RunPageSchedulesSlots = typeof __propDef.slots;
16
+ export default class RunPageSchedules extends SvelteComponentTyped<RunPageSchedulesProps, RunPageSchedulesEvents, RunPageSchedulesSlots> {
17
+ }
18
+ export {};
@@ -6,7 +6,7 @@ import { faSave } from '@fortawesome/free-solid-svg-icons';
6
6
  import { createEventDispatcher } from 'svelte';
7
7
  import { Pane, Splitpanes } from 'svelte-splitpanes';
8
8
  import ObjectViewer from './propertyPicker/ObjectViewer.svelte';
9
- import { ArrowLeftIcon, Edit, X } from 'lucide-svelte';
9
+ import { ArrowLeftIcon, Edit, ExternalLink, X } from 'lucide-svelte';
10
10
  import Toggle from './Toggle.svelte';
11
11
  import Tooltip from './Tooltip.svelte';
12
12
  export let scriptHash = null;
@@ -132,7 +132,7 @@ const selectArgs = (selected_args) => {
132
132
  disabled={!isValid}
133
133
  loading={savingInputs}
134
134
  startIcon={{ icon: faSave }}
135
- color="blue"
135
+ color="light"
136
136
  size="xs"
137
137
  >
138
138
  <span>Save Current Input</span>
@@ -144,8 +144,8 @@ const selectArgs = (selected_args) => {
144
144
  {#each savedInputs as i}
145
145
  <button
146
146
  class={classNames(
147
- `w-full flex items-center group justify-between gap-4 py-2 px-4 text-left border rounded-md hover:bg-gray-100 transition-all`,
148
- selectedInput === i ? 'border-blue-500 bg-blue-50' : ''
147
+ `w-full flex items-center group justify-between gap-4 py-2 px-4 text-left border rounded-md hover:bg-surface-hover transition-all`,
148
+ selectedInput === i ? 'border-blue-500 bg-blue-50 dark:bg-blue-900' : ''
149
149
  )}
150
150
  on:click={() => {
151
151
  if (!i.isEditing) {
@@ -167,7 +167,7 @@ const selectArgs = (selected_args) => {
167
167
  }}
168
168
  class="w-full"
169
169
  >
170
- <input type="text" bind:value={i.name} class="text-gray-700" />
170
+ <input type="text" bind:value={i.name} class="text-secondary" />
171
171
  </form>
172
172
  {:else}
173
173
  <small
@@ -193,7 +193,7 @@ const selectArgs = (selected_args) => {
193
193
 
194
194
  <Button
195
195
  loading={i.isSaving}
196
- color="gray"
196
+ color="light"
197
197
  size="xs"
198
198
  variant="border"
199
199
  spacingSize="xs2"
@@ -221,13 +221,13 @@ const selectArgs = (selected_args) => {
221
221
  </Button>
222
222
  </div>
223
223
  {:else}
224
- <span class="text-xs text-gray-600">By {i.created_by}</span>
224
+ <span class="text-xs text-tertiary">By {i.created_by}</span>
225
225
  {/if}
226
226
  </div>
227
227
  </button>
228
228
  {/each}
229
229
  {:else}
230
- <div class="text-center text-gray-500">No saved Inputs</div>
230
+ <div class="text-center text-tertiary">No saved Inputs</div>
231
231
  {/if}
232
232
  </div>
233
233
  </div>
@@ -235,15 +235,15 @@ const selectArgs = (selected_args) => {
235
235
 
236
236
  <Pane>
237
237
  <div class="w-full flex flex-col gap-4 p-2">
238
- <span class="text-sm font-extrabold">Previous Inputs</span>
238
+ <span class="text-sm font-extrabold">Previous runs</span>
239
239
 
240
240
  <div class="w-full flex flex-col gap-1 p-0 h-full overflow-y-auto">
241
241
  {#if previousInputs.length > 0}
242
242
  {#each previousInputs as i}
243
243
  <button
244
244
  class={classNames(
245
- `w-full flex items-center justify-between gap-4 py-2 px-4 text-left border rounded-sm hover:bg-gray-100 transition-a`,
246
- selectedInput === i ? 'border-blue-500 bg-blue-50' : ''
245
+ `w-full flex items-center justify-between gap-4 py-2 px-4 text-left border rounded-sm hover:bg-surface-hover transition-a`,
246
+ selectedInput === i ? 'border-blue-500 bg-blue-50 dark:bg-blue-900' : ''
247
247
  )}
248
248
  on:click={() => {
249
249
  if (selectedInput === i) {
@@ -253,17 +253,35 @@ const selectArgs = (selected_args) => {
253
253
  }
254
254
  }}
255
255
  >
256
- <div class="w-full h-full items-center flex gap-4 min-w-0">
257
- <small
258
- class="whitespace-nowrap overflow-hidden text-ellipsis flex-shrink text-left"
256
+ <div
257
+ class="w-full h-full items-center text-xs font-normal grid grid-cols-8 gap-4 min-w-0"
258
+ >
259
+ <div class="">
260
+ <div class="rounded-full w-2 h-2 {i.success ? 'bg-green-400' : 'bg-red-400'}" />
261
+ </div>
262
+ <div class="col-span-2">
263
+ {i.created_by}
264
+ </div>
265
+ <div
266
+ class="whitespace-nowrap col-span-3 font-normal overflow-hidden text-ellipsis flex-shrink text-center"
259
267
  >
260
- {displayDaysAgo(i.created_at)} by {i.created_by}
261
- </small>
268
+ {displayDaysAgo(i.created_at)}
269
+ </div>
270
+ <div class="col-span-2">
271
+ <a
272
+ target="_blank"
273
+ href="/runs/{i.id}"
274
+ class="text-right float-right text-secondary"
275
+ title="See run detail in a new tab"
276
+ >
277
+ <ExternalLink size={16} />
278
+ </a>
279
+ </div>
262
280
  </div>
263
281
  </button>
264
282
  {/each}
265
283
  {:else}
266
- <div class="text-center text-gray-500">No previous Inputs</div>
284
+ <div class="text-center text-tertiary">No previous Runs</div>
267
285
  {/if}
268
286
  </div>
269
287
  </div>
@@ -280,7 +298,7 @@ const selectArgs = (selected_args) => {
280
298
  <ObjectViewer json={selectedInput?.args} />
281
299
  </div>
282
300
  {:else}
283
- <div class="text-center text-gray-500">
301
+ <div class="text-center text-tertiary">
284
302
  Select an Input to preview scripts arguments
285
303
  </div>
286
304
  {/if}
@@ -57,6 +57,11 @@ let pathError = '';
57
57
  let validCRON = true;
58
58
  $: allowSchedule = isValid && validCRON && script_path != '';
59
59
  $: script_path != '' && loadScript(script_path);
60
+ // set isValid to true when a script/flow without any properties is selected
61
+ $: runnable?.schema &&
62
+ runnable.schema.properties &&
63
+ Object.keys(runnable.schema.properties).length === 0 &&
64
+ (isValid = true);
60
65
  const dispatch = createEventDispatcher();
61
66
  async function loadScript(p) {
62
67
  if (p) {
@@ -207,7 +212,7 @@ let drawer;
207
212
 
208
213
  <h2 class="border-b pb-1 mt-8 mb-2">Runnable</h2>
209
214
  {#if !edit}
210
- <p class="text-xs mb-1 text-gray-600">
215
+ <p class="text-xs mb-1 text-tertiary">
211
216
  Pick a script or flow to be triggered by the schedule<Required required={true} />
212
217
  </p>
213
218
  <ScriptPicker
@@ -233,8 +238,6 @@ let drawer;
233
238
  />
234
239
  {/if}
235
240
  <div class="mt-6">
236
- <span class="font-semibold text-gray-700">Arguments</span>
237
-
238
241
  {#if runnable}
239
242
  {#if runnable?.schema && runnable.schema.properties && Object.keys(runnable.schema.properties).length > 0}
240
243
  <SchemaForm disabled={!can_write} schema={runnable.schema} bind:isValid bind:args />
@@ -250,21 +253,30 @@ let drawer;
250
253
  {/if}
251
254
  </div>
252
255
  <h2 class="border-b pb-1 mt-8 mb-2">Error Handler</h2>
256
+
253
257
  <ScriptPicker
254
- disabled={initialScriptPath != '' || !can_write}
258
+ disabled={!can_write}
255
259
  initialPath={errorHandlerPath}
256
260
  kind={Script.kind.SCRIPT}
257
261
  allowFlow={true}
258
262
  bind:scriptPath={errorHandlerPath}
259
263
  bind:itemKind={errorHandleritemKind}
264
+ canRefresh
260
265
  />
261
- <div class="text-gray-600 italic text-sm mt-2"
262
- >The following args will be passed to the error handler:
263
- <ul class="mt-1 ml-2">
264
- <li><b>path</b>: The path of the script or flow that errored</li>
265
- <li><b>schedule_path</b>: The path of the schedule</li>
266
- <li><b>error</b>: The error details</li>
267
- </ul>
266
+ <div class="flex gap-20 items-start mt-3">
267
+ <div class="text-tertiary text-sm"
268
+ >The following args will be passed to the error handler:
269
+ <ul class="mt-1 ml-2">
270
+ <li><b>path</b>: The path of the script or flow that errored.</li>
271
+ <li><b>schedule_path</b>: The path of the schedule.</li>
272
+ <li><b>error</b>: The error details.</li>
273
+ </ul>
274
+ </div>
275
+ <Button
276
+ wrapperClasses="mt-6"
277
+ href="/scripts/add?hub=hub%2F1087%2Fwindmill%2Fschedule_error_handler_template"
278
+ target="_blank">Use template</Button
279
+ >
268
280
  </div>
269
281
  </div>
270
282
  </DrawerContent>
@@ -25,6 +25,7 @@ let argError = '';
25
25
  let editing = false;
26
26
  let oldArgName; // when editing argument and changing name
27
27
  let viewJsonSchema = false;
28
+ let jsonEditor;
28
29
  // Binding is not enough because monaco Editor does not support two-way binding
29
30
  export function getSchema() {
30
31
  try {
@@ -50,7 +51,9 @@ function modalToSchema(schema) {
50
51
  enum: schema.enum_,
51
52
  items: schema.items,
52
53
  contentEncoding: schema.contentEncoding,
53
- format: schema.format
54
+ format: schema.format,
55
+ properties: schema.schema?.properties,
56
+ required: schema.schema?.required
54
57
  };
55
58
  }
56
59
  function handleAddOrEditArgument(modalProperty) {
@@ -60,7 +63,8 @@ function handleAddOrEditArgument(modalProperty) {
60
63
  if (modalProperty.name.length === 0) {
61
64
  argError = 'Arguments need to have a name';
62
65
  }
63
- else if (Object.keys(schema.properties).includes(modalProperty.name) && !editing) {
66
+ else if (Object.keys(schema.properties).includes(modalProperty.name) &&
67
+ (!editing || (editing && oldArgName && oldArgName !== modalProperty.name))) {
64
68
  argError = 'There is already an argument with this name';
65
69
  }
66
70
  else {
@@ -86,6 +90,7 @@ function handleAddOrEditArgument(modalProperty) {
86
90
  }
87
91
  schema = schema;
88
92
  schemaString = JSON.stringify(schema, null, '\t');
93
+ jsonEditor?.setCode(schemaString);
89
94
  dispatch('change', schema);
90
95
  }
91
96
  function handleStartEditEvent(event) {
@@ -224,9 +229,9 @@ function displayInfoKey(displayInfo) {
224
229
  />
225
230
  <div class="ml-2">
226
231
  <Tooltip
227
- documentationLink="https://www.windmill.dev/docs/reference/#script-parameters-to-json-schema"
232
+ documentationLink="https://www.windmill.dev/docs/core_concepts/json_schema_and_parsing#script-parameters-to-json-schema"
228
233
  >
229
- Arguments can be edited either using the wizard, or by editing their JSON Schema
234
+ Arguments can be edited either using the wizard, or by editing their JSON Schema.
230
235
  </Tooltip>
231
236
  </div>
232
237
  </div>
@@ -265,15 +270,13 @@ function displayInfoKey(displayInfo) {
265
270
  </tbody>
266
271
  </TableCustom>
267
272
  {:else}
268
- <div class="text-gray-700 text-xs italic mt-2">This schema has no arguments.</div>
273
+ <div class="text-secondary text-xs italic mt-2">This schema has no arguments.</div>
269
274
  {/if}
270
275
  </div>
271
276
  {:else}
272
- {#if !emptyString(error)}<span class="text-red-400">{error}</span>{:else}<div
273
- class="py-6"
274
- />{/if}
275
277
  <div class="border rounded p-2">
276
278
  <SimpleEditor
279
+ bind:this={jsonEditor}
277
280
  fixedOverflowWidgets={false}
278
281
  on:change={() => {
279
282
  try {
@@ -288,6 +291,11 @@ function displayInfoKey(displayInfo) {
288
291
  class="small-editor"
289
292
  />
290
293
  </div>
294
+ {#if !emptyString(error)}
295
+ <div class="text-red-400">{error}</div>
296
+ {:else}
297
+ <div><br /></div>
298
+ {/if}
291
299
  {/if}
292
300
  </div>
293
301
  </div>