windmill-components 1.613.5 → 1.623.1

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 (429) hide show
  1. package/package/assets/tokens/tokens.json +1 -11
  2. package/package/ata/apis.js +5 -78
  3. package/package/components/AddUser.svelte +1 -1
  4. package/package/components/CenteredModal.svelte +24 -32
  5. package/package/components/CenteredModal.svelte.d.ts +27 -7
  6. package/package/components/CenteredPage.svelte +2 -5
  7. package/package/components/CenteredPage.svelte.d.ts +0 -2
  8. package/package/components/ConcurrentJobsChart.svelte +2 -3
  9. package/package/components/ConcurrentJobsChart.svelte.d.ts +2 -2
  10. package/package/components/CustomPopover.svelte +23 -20
  11. package/package/components/CustomPopover.svelte.d.ts +39 -14
  12. package/package/components/DBManager.svelte +17 -105
  13. package/package/components/DBManager.svelte.d.ts +1 -2
  14. package/package/components/DBManagerContent.svelte +3 -4
  15. package/package/components/DBManagerContent.svelte.d.ts +1 -1
  16. package/package/components/DBTableEditor.svelte +171 -210
  17. package/package/components/DBTableEditor.svelte.d.ts +3 -22
  18. package/package/components/Description.svelte +2 -3
  19. package/package/components/Dev.svelte +2 -36
  20. package/package/components/DiffDrawer.svelte +29 -8
  21. package/package/components/DiffEditor.svelte +2 -32
  22. package/package/components/DisplayResult.svelte +24 -32
  23. package/package/components/Editor.svelte +16 -70
  24. package/package/components/Editor.svelte.d.ts +0 -3
  25. package/package/components/EditorBar.svelte +1 -1
  26. package/package/components/FakeMonacoPlaceHolder.svelte +1 -1
  27. package/package/components/FlowBuilder.svelte +11 -17
  28. package/package/components/FlowPreviewContent.svelte +2 -3
  29. package/package/components/FlowPreviewResult.svelte +4 -0
  30. package/package/components/FlowRestartButton.svelte +3 -2
  31. package/package/components/FlowRestartButton.svelte.d.ts +0 -3
  32. package/package/components/FlowStatusViewerInner.svelte +33 -50
  33. package/package/components/FlowStatusViewerInner.svelte.d.ts +1 -1
  34. package/package/components/FlowStatusWaitingForEvents.svelte +23 -27
  35. package/package/components/FlowStatusWaitingForEvents.svelte.d.ts +18 -4
  36. package/package/components/FlowViewer.svelte +2 -103
  37. package/package/components/FlowViewer.svelte.d.ts +3 -9
  38. package/package/components/ForkWorkspaceBanner.svelte +13 -16
  39. package/package/components/GraphqlSchemaViewer.svelte +1 -8
  40. package/package/components/HistoricInputs.svelte +27 -25
  41. package/package/components/HistoricInputs.svelte.d.ts +2 -2
  42. package/package/components/InstanceSetting.svelte +0 -38
  43. package/package/components/InviteUser.svelte +42 -16
  44. package/package/components/InviteUser.svelte.d.ts +18 -4
  45. package/package/components/JsonInputs.svelte +8 -6
  46. package/package/components/JsonInputs.svelte.d.ts +8 -7
  47. package/package/components/LogViewer.svelte +33 -91
  48. package/package/components/Login.svelte +0 -21
  49. package/package/components/ManualPopover.svelte +6 -5
  50. package/package/components/ManualPopover.svelte.d.ts +35 -9
  51. package/package/components/MemoryFootprintViewer.svelte +6 -2
  52. package/package/components/ModulePreview.svelte +21 -23
  53. package/package/components/ModulePreview.svelte.d.ts +0 -1
  54. package/package/components/OAuthSetting.svelte +11 -23
  55. package/package/components/Path.svelte +2 -2
  56. package/package/components/Path.svelte.d.ts +1 -1
  57. package/package/components/ResourcePicker.svelte +0 -3
  58. package/package/components/ResourcePicker.svelte.d.ts +0 -1
  59. package/package/components/RunButton.svelte +15 -5
  60. package/package/components/RunButton.svelte.d.ts +19 -7
  61. package/package/components/RunChart.svelte +4 -8
  62. package/package/components/RunChart.svelte.d.ts +2 -2
  63. package/package/components/RunFormAdvancedPopup.svelte +1 -1
  64. package/package/components/RunsPage.svelte +539 -170
  65. package/package/components/RunsPage.svelte.d.ts +5 -5
  66. package/package/components/S3FilePicker.svelte +11 -7
  67. package/package/components/S3FilePickerInner.svelte +3 -2
  68. package/package/components/S3FilePickerInner.svelte.d.ts +2 -2
  69. package/package/components/SavedInputs.svelte +416 -0
  70. package/package/components/{tutorials/workspace/WorkspaceOnboardingOperatorTutorial.svelte.d.ts → SavedInputs.svelte.d.ts} +11 -8
  71. package/package/components/SchemaForm.svelte +19 -26
  72. package/package/components/SchemaFormWithArgPicker.svelte +3 -4
  73. package/package/components/ScriptBuilder.svelte +1 -1
  74. package/package/components/ScriptEditor.svelte +101 -575
  75. package/package/components/Section.svelte +1 -3
  76. package/package/components/ServiceLogsInner.svelte +4 -4
  77. package/package/components/ShareModal.svelte.d.ts +1 -1
  78. package/package/components/SimpleEditor.svelte +2 -46
  79. package/package/components/SuperadminSettingsInner.svelte +1 -1
  80. package/package/components/TemplateEditor.svelte +29 -54
  81. package/package/components/TemplateEditor.svelte.d.ts +102 -13
  82. package/package/components/UserSettings.svelte +1 -1
  83. package/package/components/WorkerTagPicker.svelte +1 -1
  84. package/package/components/WorkerTagSelect.svelte +2 -5
  85. package/package/components/WorkspaceTutorials.svelte +0 -5
  86. package/package/components/apps/components/buttons/AppButton.svelte +6 -21
  87. package/package/components/apps/components/buttons/AppForm.svelte +1 -2
  88. package/package/components/apps/components/buttons/AppFormButton.svelte +1 -2
  89. package/package/components/apps/components/display/dbtable/AppDbExplorer.svelte +4 -0
  90. package/package/components/apps/components/display/dbtable/metadata.js +30 -69
  91. package/package/components/apps/components/display/dbtable/queries/createTable.d.ts +24 -2
  92. package/package/components/apps/components/display/dbtable/queries/createTable.js +25 -11
  93. package/package/components/apps/components/display/dbtable/queries/select.d.ts +0 -2
  94. package/package/components/apps/components/display/dbtable/queries/select.js +6 -37
  95. package/package/components/apps/components/display/dbtable/utils.d.ts +1 -10
  96. package/package/components/apps/components/display/dbtable/utils.js +20 -52
  97. package/package/components/apps/components/helpers/HiddenComponent.svelte +1 -1
  98. package/package/components/apps/components/helpers/InputValue.svelte +1 -1
  99. package/package/components/apps/components/helpers/ResolveConfig.svelte +1 -1
  100. package/package/components/apps/components/helpers/RunnableComponent.svelte +2 -3
  101. package/package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +1 -1
  102. package/package/components/apps/components/helpers/RunnableWrapper.svelte +2 -2
  103. package/package/components/apps/editor/AppEditorHeader.svelte +1 -8
  104. package/package/components/apps/editor/AppEditorHeaderDeploy.svelte +29 -32
  105. package/package/components/apps/editor/AppEditorHeaderDeploy.svelte.d.ts +2 -2
  106. package/package/components/apps/editor/AppEditorHeaderDeployInitialDraft.svelte +4 -4
  107. package/package/components/apps/editor/AppEditorHeaderDeployInitialDraft.svelte.d.ts +3 -3
  108. package/package/components/apps/editor/PublicApp.svelte +30 -49
  109. package/package/components/apps/editor/PublicApp.svelte.d.ts +0 -1
  110. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte +7 -77
  111. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte.d.ts +2 -2
  112. package/package/components/apps/editor/inlineScriptsPanel/utils.d.ts +2 -2
  113. package/package/components/apps/editor/inlineScriptsPanel/utils.js +1 -10
  114. package/package/components/apps/inputType.d.ts +1 -6
  115. package/package/components/auditLogs/AuditLogsFilters.svelte +17 -9
  116. package/package/components/auditLogs/AuditLogsFilters.svelte.d.ts +1 -1
  117. package/package/components/common/button/model.js +1 -1
  118. package/package/components/common/calendarPicker/CalendarPicker.svelte.d.ts +1 -1
  119. package/package/components/common/languageIcons/TypeScript.svelte +3 -5
  120. package/package/components/common/languageIcons/TypeScript.svelte.d.ts +0 -1
  121. package/package/components/common/modal/Modal.svelte +3 -3
  122. package/package/components/copilot/autocomplete/Autocompletor.js +2 -3
  123. package/package/components/copilot/chat/AIButtonStyle.d.ts +1 -1
  124. package/package/components/copilot/chat/AIButtonStyle.js +1 -2
  125. package/package/components/copilot/chat/AIChat.svelte +1 -3
  126. package/package/components/copilot/chat/AIChatDisplay.svelte +4 -89
  127. package/package/components/copilot/chat/AIChatInput.svelte +0 -275
  128. package/package/components/copilot/chat/AIChatManager.svelte.js +1 -107
  129. package/package/components/copilot/chat/AiChatLayout.svelte +30 -15
  130. package/package/components/copilot/chat/ContextElementBadge.svelte +0 -44
  131. package/package/components/copilot/chat/DatatableCreationPolicy.svelte +33 -32
  132. package/package/components/copilot/chat/ProviderModelSelector.svelte +1 -1
  133. package/package/components/copilot/chat/__tests__/app/appEvalHelpers.js +0 -3
  134. package/package/components/copilot/chat/__tests__/flow/flowEvalHelpers.js +0 -4
  135. package/package/components/copilot/chat/app/core.d.ts +15 -56
  136. package/package/components/copilot/chat/app/core.js +22 -141
  137. package/package/components/copilot/chat/context.d.ts +2 -59
  138. package/package/components/copilot/chat/context.js +2 -6
  139. package/package/components/copilot/chat/flow/FlowAIChat.svelte +0 -22
  140. package/package/components/copilot/chat/flow/core.d.ts +1 -3
  141. package/package/components/copilot/chat/flow/core.js +2 -29
  142. package/package/components/copilot/chat/flow/openFlow.json +1 -1
  143. package/package/components/copilot/chat/flow/openFlowZod.d.ts +0 -1
  144. package/package/components/copilot/chat/flow/openFlowZod.js +2 -14
  145. package/package/components/copilot/chat/script/core.d.ts +1 -4
  146. package/package/components/copilot/chat/script/core.js +2 -38
  147. package/package/components/copilot/chat/shared.d.ts +0 -10
  148. package/package/components/copilot/chat/shared.js +0 -24
  149. package/package/components/copilot/lib.d.ts +1 -1
  150. package/package/components/custom_ui.d.ts +0 -2
  151. package/package/components/dbOps.d.ts +4 -18
  152. package/package/components/dbOps.js +3 -25
  153. package/package/components/flows/CreateActionsApp.svelte +4 -6
  154. package/package/components/flows/DebounceLimit.svelte.d.ts +1 -1
  155. package/package/components/flows/FlowHistoryInner.svelte +4 -15
  156. package/package/components/flows/content/AgentToolWrapper.svelte +1 -1
  157. package/package/components/flows/content/FlowInput.svelte +37 -211
  158. package/package/components/flows/content/FlowModuleComponent.svelte +67 -553
  159. package/package/components/flows/content/FlowModuleEarlyStop.svelte +10 -8
  160. package/package/components/flows/content/FlowModuleHeader.svelte +4 -7
  161. package/package/components/flows/content/FlowModuleWorkerTagSelect.svelte +1 -1
  162. package/package/components/flows/content/McpToolEditor.svelte +37 -50
  163. package/package/components/flows/content/McpToolEditor.svelte.d.ts +1 -0
  164. package/package/components/flows/conversations/FlowChat.svelte +2 -16
  165. package/package/components/flows/conversations/FlowChat.svelte.d.ts +1 -2
  166. package/package/components/flows/conversations/FlowChatInterface.svelte +6 -103
  167. package/package/components/flows/conversations/FlowChatInterface.svelte.d.ts +0 -2
  168. package/package/components/flows/conversations/FlowChatManager.svelte.js +21 -53
  169. package/package/components/flows/header/FlowImportExportMenu.svelte +1 -1
  170. package/package/components/flows/propPicker/PropPickerWrapper.svelte +1 -3
  171. package/package/components/flows/types.d.ts +0 -2
  172. package/package/components/git_sync/GitSyncRepositoryCard.svelte +8 -16
  173. package/package/components/home/ItemsList.svelte +5 -5
  174. package/package/components/home/TutorialBanner.svelte +18 -34
  175. package/package/components/icons/CssIcon.svelte +0 -20
  176. package/package/components/icons/CssIcon.svelte.d.ts +25 -7
  177. package/package/components/icons/JavaScriptIcon.svelte +2 -10
  178. package/package/components/icons/JavaScriptIcon.svelte.d.ts +0 -1
  179. package/package/components/icons/JsonIcon.svelte +2 -8
  180. package/package/components/icons/JsonIcon.svelte.d.ts +0 -1
  181. package/package/components/icons/ReactIcon.svelte +2 -10
  182. package/package/components/icons/ReactIcon.svelte.d.ts +0 -1
  183. package/package/components/icons/SvelteIcon.svelte +2 -10
  184. package/package/components/icons/SvelteIcon.svelte.d.ts +0 -1
  185. package/package/components/icons/VueIcon.svelte +2 -10
  186. package/package/components/icons/VueIcon.svelte.d.ts +0 -1
  187. package/package/components/instanceSettings.d.ts +1 -2
  188. package/package/components/instanceSettings.js +1 -32
  189. package/package/components/jobs/JobPreview.svelte +39 -46
  190. package/package/components/jobs/JobPreview.svelte.d.ts +0 -1
  191. package/package/components/monacoLanguagesOptions.js +15 -16
  192. package/package/components/propertyPicker/PropPicker.svelte +2 -16
  193. package/package/components/propertyPicker/PropPicker.svelte.d.ts +0 -2
  194. package/package/components/raw_apps/DefaultDatabaseSelector.svelte +5 -9
  195. package/package/components/raw_apps/FileEditorIcon.svelte +7 -12
  196. package/package/components/raw_apps/FileEditorIcon.svelte.d.ts +0 -2
  197. package/package/components/raw_apps/FileTreeNode.svelte +83 -119
  198. package/package/components/raw_apps/RawAppBackgroundRunner.svelte +8 -88
  199. package/package/components/raw_apps/RawAppDataTableList.svelte +9 -12
  200. package/package/components/raw_apps/RawAppEditor.svelte +68 -218
  201. package/package/components/raw_apps/RawAppEditorHeader.svelte +16 -33
  202. package/package/components/raw_apps/RawAppHistoryList.svelte +80 -264
  203. package/package/components/raw_apps/RawAppHistoryList.svelte.d.ts +0 -1
  204. package/package/components/raw_apps/RawAppHistoryManager.svelte.d.ts +1 -15
  205. package/package/components/raw_apps/RawAppHistoryManager.svelte.js +12 -46
  206. package/package/components/raw_apps/RawAppInlineScriptEditor.svelte +47 -549
  207. package/package/components/raw_apps/RawAppInlineScriptEditor.svelte.d.ts +5 -31
  208. package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte +18 -25
  209. package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte.d.ts +0 -1
  210. package/package/components/raw_apps/RawAppInlineScriptRunnable.svelte +10 -141
  211. package/package/components/raw_apps/RawAppInlineScriptRunnable.svelte.d.ts +0 -8
  212. package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte +1 -2
  213. package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte.d.ts +1 -9
  214. package/package/components/raw_apps/RawAppInputsSpecEditor.svelte +3 -47
  215. package/package/components/raw_apps/RawAppInputsSpecEditor.svelte.d.ts +2 -2
  216. package/package/components/raw_apps/RawAppModules.svelte +7 -13
  217. package/package/components/raw_apps/RawAppPreview.svelte +6 -48
  218. package/package/components/raw_apps/RawAppSidebar.svelte +125 -194
  219. package/package/components/raw_apps/RawAppSidebar.svelte.d.ts +0 -1
  220. package/package/components/raw_apps/utils.d.ts +1 -1
  221. package/package/components/raw_apps/utils.js +18 -76
  222. package/package/components/runs/JobsLoader.svelte +468 -0
  223. package/package/components/runs/JobsLoader.svelte.d.ts +49 -0
  224. package/package/components/runs/ManuelDatePicker.svelte +3 -3
  225. package/package/components/runs/ManuelDatePicker.svelte.d.ts +3 -3
  226. package/package/components/runs/NoWorkerWithTagWarning.svelte +1 -5
  227. package/package/components/runs/RunsFilter.svelte +63 -75
  228. package/package/components/runs/RunsFilter.svelte.d.ts +4 -35
  229. package/package/components/runs/RunsQueue.svelte.d.ts +1 -1
  230. package/package/components/runs/RunsTable.svelte +1 -1
  231. package/package/components/runs/RunsTable.svelte.d.ts +1 -1
  232. package/package/components/schema/SchemaPicker.svelte +92 -0
  233. package/package/components/{tutorials/RunsTutorial.svelte.d.ts → schema/SchemaPicker.svelte.d.ts} +12 -11
  234. package/package/components/scriptEditor/LogPanel.svelte +2 -17
  235. package/package/components/scriptEditor/LogPanel.svelte.d.ts +0 -2
  236. package/package/components/select/SelectDropdown.svelte +2 -2
  237. package/package/components/settings/ChangeWorkspaceColor.svelte +3 -4
  238. package/package/components/settings/ChangeWorkspaceId.svelte +10 -14
  239. package/package/components/settings/ChangeWorkspaceName.svelte +6 -7
  240. package/package/components/settings/CreateToken.svelte +1 -1
  241. package/package/components/settings/UserAIPromptsSettings.svelte +15 -56
  242. package/package/components/settings/WorkspaceOperatorSettings.svelte +85 -68
  243. package/package/components/settings/WorkspaceUserSettings.svelte +406 -531
  244. package/package/components/sidebar/MenuButton.svelte +24 -46
  245. package/package/components/sidebar/MenuButton.svelte.d.ts +0 -2
  246. package/package/components/sidebar/MultiplayerMenu.svelte +3 -3
  247. package/package/components/sidebar/OperatorMenu.svelte +88 -63
  248. package/package/components/sidebar/SidebarContent.svelte +2 -7
  249. package/package/components/sidebar/UserMenu.svelte +1 -1
  250. package/package/components/sidebar/WorkspaceMenu.svelte +85 -35
  251. package/package/components/sqlTypeService.js +3 -4
  252. package/package/components/table/DataTable.svelte +2 -3
  253. package/package/components/table/DataTable.svelte.d.ts +0 -1
  254. package/package/components/text_input/TextInput.svelte +0 -3
  255. package/package/components/text_input/TextInput.svelte.d.ts +0 -2
  256. package/package/components/triggers/utils.js +1 -0
  257. package/package/components/tutorials/FlowBuilderLiveTutorial.svelte +35 -6
  258. package/package/components/tutorials/TroubleshootFlowTutorial.svelte +20 -5
  259. package/package/components/tutorials/utils.d.ts +0 -16
  260. package/package/components/tutorials/utils.js +0 -96
  261. package/package/components/vscode.js +6 -6
  262. package/package/components/workspaceSettings/AISettings.svelte +108 -146
  263. package/package/components/workspaceSettings/CreateWorkspace.svelte +12 -26
  264. package/package/components/workspaceSettings/DucklakeSettings.svelte +23 -46
  265. package/package/components/workspaceSettings/DucklakeSettings.svelte.d.ts +1 -2
  266. package/package/components/workspaceSettings/ModelTokenLimits.svelte +18 -14
  267. package/package/components/workspaceSettings/StorageSettings.svelte +241 -280
  268. package/package/components/workspaceSettings/StorageSettings.svelte.d.ts +0 -1
  269. package/package/consts.js +1 -4
  270. package/package/gen/core/OpenAPI.js +1 -1
  271. package/package/gen/schemas.gen.d.ts +1 -133
  272. package/package/gen/schemas.gen.js +1 -133
  273. package/package/gen/services.gen.d.ts +10 -160
  274. package/package/gen/services.gen.js +20 -319
  275. package/package/gen/types.gen.d.ts +19 -609
  276. package/package/hubPaths.json +2 -3
  277. package/package/infer.js +0 -2
  278. package/package/logout.d.ts +2 -0
  279. package/package/logout.js +23 -2
  280. package/package/monaco_workers/graphql.worker.bundle.js +121 -121
  281. package/package/navigation.d.ts +1 -1
  282. package/package/rawAppWmillTs.d.ts +0 -11
  283. package/package/rawAppWmillTs.js +1 -38
  284. package/package/svelte5Utils.svelte.d.ts +1 -7
  285. package/package/svelte5Utils.svelte.js +2 -23
  286. package/package/tutorialUtils.js +4 -0
  287. package/package/tutorials/config.js +3 -31
  288. package/package/tutorials/roleUtils.d.ts +1 -1
  289. package/package/tutorials/roleUtils.js +2 -6
  290. package/package/utils.js +1 -159
  291. package/package.json +4 -6
  292. package/dist/sharedUtils/assets/tokens/colorTokensConfig.d.ts +0 -2
  293. package/dist/sharedUtils/base.d.ts +0 -1
  294. package/dist/sharedUtils/cloud.d.ts +0 -1
  295. package/dist/sharedUtils/common.d.ts +0 -111
  296. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/count.d.ts +0 -5
  297. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/delete.d.ts +0 -5
  298. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/insert.d.ts +0 -5
  299. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/select.d.ts +0 -13
  300. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/update.d.ts +0 -11
  301. package/dist/sharedUtils/components/apps/components/display/dbtable/utils.d.ts +0 -95
  302. package/dist/sharedUtils/components/apps/editor/appPolicy.d.ts +0 -6
  303. package/dist/sharedUtils/components/apps/editor/appUtilsCore.d.ts +0 -7
  304. package/dist/sharedUtils/components/apps/editor/appUtilsS3.d.ts +0 -33
  305. package/dist/sharedUtils/components/apps/editor/commonAppUtils.d.ts +0 -10
  306. package/dist/sharedUtils/components/apps/editor/component/components.d.ts +0 -5371
  307. package/dist/sharedUtils/components/apps/editor/component/default-codes.d.ts +0 -3
  308. package/dist/sharedUtils/components/apps/editor/component/index.d.ts +0 -3
  309. package/dist/sharedUtils/components/apps/editor/component/sets.d.ts +0 -7
  310. package/dist/sharedUtils/components/apps/editor/componentsPanel/componentDefaultProps.d.ts +0 -3
  311. package/dist/sharedUtils/components/apps/gridUtils.d.ts +0 -14
  312. package/dist/sharedUtils/components/apps/inputType.d.ts +0 -178
  313. package/dist/sharedUtils/components/apps/rx.d.ts +0 -29
  314. package/dist/sharedUtils/components/apps/sharedTypes.d.ts +0 -21
  315. package/dist/sharedUtils/components/apps/types.d.ts +0 -274
  316. package/dist/sharedUtils/components/assets/lib.d.ts +0 -25
  317. package/dist/sharedUtils/components/common/alert/model.d.ts +0 -2
  318. package/dist/sharedUtils/components/common/badge/model.d.ts +0 -8
  319. package/dist/sharedUtils/components/common/button/model.d.ts +0 -45
  320. package/dist/sharedUtils/components/common/fileInput/model.d.ts +0 -1
  321. package/dist/sharedUtils/components/common/index.d.ts +0 -24
  322. package/dist/sharedUtils/components/common/skeleton/model.d.ts +0 -21
  323. package/dist/sharedUtils/components/dbTypes.d.ts +0 -14
  324. package/dist/sharedUtils/components/diff_drawer.d.ts +0 -26
  325. package/dist/sharedUtils/components/ducklake.d.ts +0 -1
  326. package/dist/sharedUtils/components/flows/scheduleUtils.d.ts +0 -7
  327. package/dist/sharedUtils/components/icons/index.d.ts +0 -101
  328. package/dist/sharedUtils/components/random_positive_adjetive.d.ts +0 -1
  329. package/dist/sharedUtils/components/raw_apps/rawAppPolicy.d.ts +0 -10
  330. package/dist/sharedUtils/components/raw_apps/utils.d.ts +0 -15
  331. package/dist/sharedUtils/components/triggers/email/utils.d.ts +0 -4
  332. package/dist/sharedUtils/components/triggers/gcp/utils.d.ts +0 -2
  333. package/dist/sharedUtils/components/triggers/http/utils.d.ts +0 -11
  334. package/dist/sharedUtils/components/triggers/kafka/utils.d.ts +0 -2
  335. package/dist/sharedUtils/components/triggers/mqtt/utils.d.ts +0 -2
  336. package/dist/sharedUtils/components/triggers/nats/utils.d.ts +0 -2
  337. package/dist/sharedUtils/components/triggers/postgres/utils.d.ts +0 -8
  338. package/dist/sharedUtils/components/triggers/sqs/utils.d.ts +0 -2
  339. package/dist/sharedUtils/components/triggers/triggers.svelte.d.ts +0 -32
  340. package/dist/sharedUtils/components/triggers/utils.d.ts +0 -80
  341. package/dist/sharedUtils/components/triggers/websocket/utils.d.ts +0 -2
  342. package/dist/sharedUtils/components/triggers.d.ts +0 -20
  343. package/dist/sharedUtils/gen/core/ApiError.d.ts +0 -10
  344. package/dist/sharedUtils/gen/core/ApiRequestOptions.d.ts +0 -13
  345. package/dist/sharedUtils/gen/core/ApiResult.d.ts +0 -7
  346. package/dist/sharedUtils/gen/core/CancelablePromise.d.ts +0 -26
  347. package/dist/sharedUtils/gen/core/OpenAPI.d.ts +0 -27
  348. package/dist/sharedUtils/gen/core/request.d.ts +0 -29
  349. package/dist/sharedUtils/gen/index.d.ts +0 -6
  350. package/dist/sharedUtils/gen/schemas.gen.d.ts +0 -7036
  351. package/dist/sharedUtils/gen/services.gen.d.ts +0 -6047
  352. package/dist/sharedUtils/gen/types.gen.d.ts +0 -21881
  353. package/dist/sharedUtils/history.svelte.d.ts +0 -9
  354. package/dist/sharedUtils/hub.d.ts +0 -49
  355. package/dist/sharedUtils/jsr.json +0 -6
  356. package/dist/sharedUtils/lib.d.ts +0 -5
  357. package/dist/sharedUtils/lib.es.js +0 -1588
  358. package/dist/sharedUtils/package.json +0 -12
  359. package/dist/sharedUtils/schema.d.ts +0 -3
  360. package/dist/sharedUtils/stores.d.ts +0 -97
  361. package/dist/sharedUtils/svelte5Utils.svelte.d.ts +0 -80
  362. package/dist/sharedUtils/toast.d.ts +0 -8
  363. package/dist/sharedUtils/utils.d.ts +0 -265
  364. package/package/components/FlowDiffViewer.svelte +0 -37
  365. package/package/components/FlowDiffViewer.svelte.d.ts +0 -7
  366. package/package/components/JobOtelTraces.svelte +0 -287
  367. package/package/components/JobOtelTraces.svelte.d.ts +0 -6
  368. package/package/components/apps/components/display/dbtable/queries/alterTable.d.ts +0 -46
  369. package/package/components/apps/components/display/dbtable/queries/alterTable.js +0 -314
  370. package/package/components/apps/components/display/dbtable/queries/alterTable.test.d.ts +0 -1
  371. package/package/components/apps/components/display/dbtable/queries/alterTable.test.js +0 -867
  372. package/package/components/apps/components/display/dbtable/queries/dbQueriesUtils.d.ts +0 -9
  373. package/package/components/apps/components/display/dbtable/queries/dbQueriesUtils.js +0 -45
  374. package/package/components/apps/components/display/dbtable/queries/relationalKeys.d.ts +0 -47
  375. package/package/components/apps/components/display/dbtable/queries/relationalKeys.js +0 -402
  376. package/package/components/apps/components/display/dbtable/tableEditor.d.ts +0 -35
  377. package/package/components/apps/components/display/dbtable/tableEditor.js +0 -49
  378. package/package/components/copilot/chat/AppAvailableContextList.svelte +0 -263
  379. package/package/components/copilot/chat/AppAvailableContextList.svelte.d.ts +0 -13
  380. package/package/components/debug/DebugConsole.svelte +0 -277
  381. package/package/components/debug/DebugConsole.svelte.d.ts +0 -13
  382. package/package/components/debug/DebugPanel.svelte +0 -97
  383. package/package/components/debug/DebugPanel.svelte.d.ts +0 -11
  384. package/package/components/debug/DebugToolbar.svelte +0 -148
  385. package/package/components/debug/DebugToolbar.svelte.d.ts +0 -17
  386. package/package/components/debug/DebugVariableViewer.svelte +0 -115
  387. package/package/components/debug/DebugVariableViewer.svelte.d.ts +0 -11
  388. package/package/components/debug/MonacoDebugger.svelte +0 -384
  389. package/package/components/debug/MonacoDebugger.svelte.d.ts +0 -15
  390. package/package/components/debug/dapClient.d.ts +0 -192
  391. package/package/components/debug/dapClient.js +0 -426
  392. package/package/components/debug/debugUtils.d.ts +0 -30
  393. package/package/components/debug/debugUtils.js +0 -131
  394. package/package/components/debug/index.d.ts +0 -75
  395. package/package/components/debug/index.js +0 -82
  396. package/package/components/flows/content/FlowEditorDrawer.svelte +0 -124
  397. package/package/components/flows/content/FlowEditorDrawer.svelte.d.ts +0 -22
  398. package/package/components/flows/content/McpOAuthConnect.svelte +0 -217
  399. package/package/components/flows/content/McpOAuthConnect.svelte.d.ts +0 -7
  400. package/package/components/icons/HtmlIcon.svelte +0 -20
  401. package/package/components/icons/HtmlIcon.svelte.d.ts +0 -8
  402. package/package/components/icons/LessIcon.svelte +0 -16
  403. package/package/components/icons/LessIcon.svelte.d.ts +0 -8
  404. package/package/components/icons/MarkdownIcon.svelte +0 -20
  405. package/package/components/icons/MarkdownIcon.svelte.d.ts +0 -8
  406. package/package/components/icons/SassIcon.svelte +0 -28
  407. package/package/components/icons/SassIcon.svelte.d.ts +0 -8
  408. package/package/components/icons/YamlIcon.svelte +0 -20
  409. package/package/components/icons/YamlIcon.svelte.d.ts +0 -8
  410. package/package/components/instanceSettings/SecretBackendConfig.svelte +0 -514
  411. package/package/components/instanceSettings/SecretBackendConfig.svelte.d.ts +0 -8
  412. package/package/components/raw_apps/RunnableRow.svelte +0 -41
  413. package/package/components/raw_apps/RunnableRow.svelte.d.ts +0 -11
  414. package/package/components/runs/useJobsLoader.svelte.d.ts +0 -34
  415. package/package/components/runs/useJobsLoader.svelte.js +0 -507
  416. package/package/components/settings/AIPromptsModal.svelte +0 -88
  417. package/package/components/settings/AIPromptsModal.svelte.d.ts +0 -11
  418. package/package/components/tutorials/RunsTutorial.svelte +0 -399
  419. package/package/components/tutorials/workspace/WorkspaceOnboardingOperatorTutorial.svelte +0 -133
  420. package/package/components/workspace/WorkspaceCard.svelte +0 -184
  421. package/package/components/workspace/WorkspaceCard.svelte.d.ts +0 -24
  422. package/package/components/workspace/WorkspaceIcon.svelte +0 -21
  423. package/package/components/workspace/WorkspaceIcon.svelte.d.ts +0 -9
  424. package/package/components/workspace/WorkspaceTreeView.svelte +0 -331
  425. package/package/components/workspace/WorkspaceTreeView.svelte.d.ts +0 -15
  426. package/package/logoutKit.d.ts +0 -2
  427. package/package/logoutKit.js +0 -26
  428. package/package/svelte5UtilsKit.svelte.d.ts +0 -3
  429. package/package/svelte5UtilsKit.svelte.js +0 -30
@@ -1,11 +0,0 @@
1
- interface Props {
2
- open?: boolean;
3
- customPrompts: Record<string, string>;
4
- onSave?: () => void;
5
- onReset: () => void;
6
- hasChanges: boolean;
7
- isWorkspaceSettings?: boolean;
8
- }
9
- declare const AIPromptsModal: import("svelte").Component<Props, {}, "open" | "customPrompts">;
10
- type AIPromptsModal = ReturnType<typeof AIPromptsModal>;
11
- export default AIPromptsModal;
@@ -1,399 +0,0 @@
1
- <script lang="ts">import Tutorial from './Tutorial.svelte';
2
- import { updateProgress } from '../../tutorialUtils';
3
- import { JobService, FlowService } from '../../gen';
4
- import { workspaceStore, userStore } from '../../stores';
5
- import { wait } from '../../utils';
6
- import { waitJob } from '../waitJob';
7
- import { DELAY_SHORT, DELAY_MEDIUM, DELAY_LONG, createFakeCursor, animateCursorToElementAndClick, animateFakeCursorClick } from './utils';
8
- import { goto } from '$app/navigation';
9
- import { base } from '../../base';
10
- import { sendUserToast } from '../../toast';
11
- let { index } = $props();
12
- let tutorial = $state(undefined);
13
- let tutorialFlowPaths = $state([]);
14
- // Flags to track if steps are complete
15
- let step2Complete = $state(false);
16
- let step3Complete = $state(false);
17
- let step5Complete = $state(false);
18
- let step6Complete = $state(false);
19
- // Create a simple flow
20
- async function createTutorialFlow() {
21
- const flowPath = `f/tutorial/runs-tutorial-flow-${Date.now()}`;
22
- const flow = {
23
- summary: 'Tutorial: Simple Hello World Flow',
24
- description: 'A simple flow created for the runs tutorial',
25
- value: {
26
- modules: [
27
- {
28
- id: 'hello',
29
- value: {
30
- type: 'rawscript',
31
- content: 'export async function main() {\n return {\n message: "Hello from the Runs tutorial!",\n timestamp: new Date().toISOString()\n };\n}',
32
- language: 'bun',
33
- input_transforms: {}
34
- },
35
- summary: 'Say hello'
36
- }
37
- ]
38
- },
39
- schema: {
40
- $schema: 'https://json-schema.org/draft/2020-12/schema',
41
- type: 'object',
42
- properties: {},
43
- required: [],
44
- order: []
45
- },
46
- path: flowPath,
47
- edited_at: '',
48
- edited_by: '',
49
- archived: false,
50
- extra_perms: {}
51
- };
52
- await FlowService.createFlow({
53
- workspace: $workspaceStore,
54
- requestBody: flow
55
- });
56
- return flowPath;
57
- }
58
- // Create a broken flow that will fail
59
- async function createBrokenFlow() {
60
- const flowPath = `f/tutorial/runs-tutorial-broken-${Date.now()}`;
61
- const flow = {
62
- summary: 'Tutorial: Broken Flow Example',
63
- description: 'A flow that intentionally fails to demonstrate error handling',
64
- value: {
65
- modules: [
66
- {
67
- id: 'error',
68
- value: {
69
- type: 'rawscript',
70
- content: 'export async function main() {\n throw new Error("Intentional error for tutorial - this demonstrates how failed jobs appear in the runs list");\n}',
71
- language: 'bun',
72
- input_transforms: {}
73
- },
74
- summary: 'Throw error'
75
- }
76
- ]
77
- },
78
- schema: {
79
- $schema: 'https://json-schema.org/draft/2020-12/schema',
80
- type: 'object',
81
- properties: {},
82
- required: [],
83
- order: []
84
- },
85
- path: flowPath,
86
- edited_at: '',
87
- edited_by: '',
88
- archived: false,
89
- extra_perms: {}
90
- };
91
- await FlowService.createFlow({
92
- workspace: $workspaceStore,
93
- requestBody: flow
94
- });
95
- return flowPath;
96
- }
97
- // Run the flow and wait for completion
98
- async function runFlowAndWait(flowPath) {
99
- const jobId = await JobService.runFlowByPath({
100
- workspace: $workspaceStore,
101
- path: flowPath,
102
- requestBody: {},
103
- skipPreprocessor: true
104
- });
105
- // Wait for job to complete
106
- await waitJob(jobId);
107
- return jobId;
108
- }
109
- function getTutorialSteps(driver) {
110
- return [
111
- {
112
- popover: {
113
- title: 'Welcome to your Monitoring Dashboard!',
114
- description: "<p>Before we dive in, let's define a key term: a Job. A &quot;Job&quot; is simply a single run of a script or flow. Every time you run code, Windmill creates a Job to track if it succeeded or failed, how long it took, and what the results were.</p><p style='margin-top: 12px;'>In this tutorial, we will explore:</p><ul style='margin-top: 8px; padding-left: 20px;'><li style='margin-bottom: 8px;'><svg width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' style='color: #22c55e; display: inline-block; vertical-align: middle; margin-right: 6px;'><circle cx='12' cy='12' r='10'/><path d='m9 12 2 2 4-4'/></svg>A successful job execution.</li><li style='margin-bottom: 8px;'><svg width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' style='color: #ef4444; display: inline-block; vertical-align: middle; margin-right: 6px;'><circle cx='12' cy='12' r='10'/><path d='m12 8v4'/><path d='m12 16h.01'/></svg>A failed job execution.</li><li><svg width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' style='color: #3b82f6; display: inline-block; vertical-align: middle; margin-right: 6px;'><circle cx='11' cy='11' r='8'/><path d='m21 21-4.35-4.35'/></svg>How to filter your monitoring view.</li></ul>",
115
- onNextClick: () => {
116
- driver.moveNext();
117
- },
118
- onPrevClick: () => {
119
- sendUserToast('Previous is not available for this step', true, [], undefined, 3000);
120
- }
121
- }
122
- },
123
- {
124
- element: '#runs-table-wrapper',
125
- onHighlighted: async () => {
126
- step2Complete = false;
127
- await wait(DELAY_MEDIUM);
128
- // Find all jobs
129
- const allJobRows = Array.from(document.querySelectorAll('#runs-table-wrapper .cursor-pointer'));
130
- // Find successful job (green badge/check icon) - first one that's not failed
131
- const successfulJobRow = allJobRows.find((el) => {
132
- const hasRedBadge = el.querySelector('[class*="bg-red"], [class*="text-red"]');
133
- const hasGreenBadge = el.querySelector('[class*="bg-green"], [class*="text-green"]');
134
- return !hasRedBadge && hasGreenBadge !== null;
135
- }) || allJobRows[0];
136
- if (successfulJobRow) {
137
- // Create cursor
138
- const cursor = createFakeCursor();
139
- // Click on successful job
140
- await animateCursorToElementAndClick(cursor, successfulJobRow);
141
- // Wait for navigation to job details page
142
- await wait(DELAY_LONG);
143
- // Navigate back to runs page using SvelteKit navigation
144
- await goto(`${base}/runs?tutorial=runs-tutorial`, { replaceState: true });
145
- await wait(DELAY_LONG);
146
- // Remove the cursor
147
- cursor.remove();
148
- step2Complete = true;
149
- }
150
- },
151
- popover: {
152
- title: 'Exploring successful job runs <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="color: #22c55e; display: inline-block; vertical-align: middle;"><circle cx="12" cy="12" r="10"/><path d="m9 12 2 2 4-4"/></svg>',
153
- description: 'Let\'s click on a successful job to see how to inspect a completed execution.',
154
- side: 'bottom',
155
- onNextClick: async () => {
156
- if (!step2Complete) {
157
- sendUserToast('Please wait for the job click to complete...', false, [], undefined, 3000);
158
- return;
159
- }
160
- // Click on the successful job again (without showing cursor)
161
- const successfulJobRow = Array.from(document.querySelectorAll('#runs-table-wrapper .cursor-pointer')).find((el) => {
162
- const hasRedBadge = el.querySelector('[class*="bg-red"], [class*="text-red"]');
163
- const hasGreenBadge = el.querySelector('[class*="bg-green"], [class*="text-green"]');
164
- return !hasRedBadge && hasGreenBadge !== null;
165
- }) || Array.from(document.querySelectorAll('#runs-table-wrapper .cursor-pointer'))[0];
166
- if (successfulJobRow) {
167
- successfulJobRow.click();
168
- await wait(DELAY_SHORT);
169
- // Wait for navigation to job details page
170
- await wait(DELAY_LONG);
171
- // Navigate back to runs page using SvelteKit navigation
172
- await goto(`${base}/runs?tutorial=runs-tutorial`, { replaceState: true });
173
- await wait(DELAY_LONG);
174
- }
175
- driver.moveNext();
176
- },
177
- onPrevClick: () => {
178
- sendUserToast('Previous is not available for this step', true, [], undefined, 3000);
179
- }
180
- }
181
- },
182
- {
183
- element: '#runs-table-wrapper',
184
- onHighlighted: async () => {
185
- step3Complete = false;
186
- await wait(DELAY_MEDIUM);
187
- // Find all jobs
188
- const allJobRows = Array.from(document.querySelectorAll('#runs-table-wrapper .cursor-pointer'));
189
- // Find failed job (red badge/X icon)
190
- const failedJobRow = allJobRows.find((el) => {
191
- const badge = el.querySelector('[class*="bg-red"], [class*="text-red"]');
192
- return badge !== null;
193
- });
194
- if (failedJobRow) {
195
- // Create cursor
196
- const cursor = createFakeCursor();
197
- // Click on failed job
198
- await animateCursorToElementAndClick(cursor, failedJobRow);
199
- // Wait for navigation to job details page
200
- await wait(DELAY_LONG);
201
- // Navigate back to runs page using SvelteKit navigation
202
- await goto(`${base}/runs?tutorial=runs-tutorial`, { replaceState: true });
203
- await wait(DELAY_LONG);
204
- // Remove the cursor
205
- cursor.remove();
206
- step3Complete = true;
207
- }
208
- },
209
- popover: {
210
- title: 'Exploring failed job runs <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="color: #ef4444; display: inline-block; vertical-align: middle;"><circle cx="12" cy="12" r="10"/><path d="m12 8v4"/><path d="m12 16h.01"/></svg>',
211
- description: 'Now let\'s click on a failed job to see how to inspect a failed execution.',
212
- side: 'bottom',
213
- onNextClick: async () => {
214
- if (!step3Complete) {
215
- sendUserToast('Please wait for the job click to complete...', false, [], undefined, 3000);
216
- return;
217
- }
218
- // Click on the failed job again (without showing cursor)
219
- const failedJobRow = Array.from(document.querySelectorAll('#runs-table-wrapper .cursor-pointer')).find((el) => {
220
- const badge = el.querySelector('[class*="bg-red"], [class*="text-red"]');
221
- return badge !== null;
222
- });
223
- if (failedJobRow) {
224
- failedJobRow.click();
225
- await wait(DELAY_SHORT);
226
- // Wait for navigation to job details page
227
- await wait(DELAY_LONG);
228
- // Navigate back to runs page using SvelteKit navigation
229
- await goto(`${base}/runs?tutorial=runs-tutorial`, { replaceState: true });
230
- await wait(DELAY_LONG);
231
- }
232
- driver.moveNext();
233
- },
234
- onPrevClick: () => {
235
- sendUserToast('Previous is not available for this step', true, [], undefined, 3000);
236
- }
237
- }
238
- },
239
- {
240
- element: 'div.p-2.px-4.pt-8.w-full.border-b',
241
- popover: {
242
- title: 'Visual run history',
243
- description: 'This chart gives you a visual overview of your run history at a glance. The duration chart shows how long each job takes to complete over time.',
244
- side: 'bottom',
245
- onNextClick: () => {
246
- driver.moveNext();
247
- },
248
- onPrevClick: () => {
249
- sendUserToast('Previous is not available for this step', true, [], undefined, 3000);
250
- }
251
- }
252
- },
253
- {
254
- element: 'div.p-2.px-4.pt-8.w-full.border-b',
255
- onHighlighted: async () => {
256
- step5Complete = false;
257
- await wait(DELAY_MEDIUM);
258
- // Find the button with data-value="ConcurrencyChart"
259
- const concurrencyButton = document.querySelector('button[data-value="ConcurrencyChart"]');
260
- if (concurrencyButton) {
261
- await animateFakeCursorClick(concurrencyButton);
262
- await wait(DELAY_MEDIUM);
263
- step5Complete = true;
264
- }
265
- },
266
- popover: {
267
- title: 'Switching chart views',
268
- description: 'You can switch between different chart views to analyze your runs. The concurrency chart allows you to see how many jobs are running concurrently over time.',
269
- side: 'bottom',
270
- onNextClick: () => {
271
- if (!step5Complete) {
272
- sendUserToast('Please wait for the chart switch to complete...', false, [], undefined, 3000);
273
- return;
274
- }
275
- driver.moveNext();
276
- },
277
- onPrevClick: () => {
278
- sendUserToast('Previous is not available for this step', true, [], undefined, 3000);
279
- }
280
- }
281
- },
282
- {
283
- element: 'div.flex.flex-row.items-start.w-full.border-b.px-4.gap-8',
284
- onHighlighted: async () => {
285
- step6Complete = false;
286
- await wait(DELAY_MEDIUM);
287
- // Find the success and failure filter buttons
288
- const successButton = document.querySelector('button[data-value="success"]');
289
- const failureButton = document.querySelector('button[data-value="failure"]');
290
- if (successButton && failureButton) {
291
- // Create cursor once for both clicks
292
- const cursor = createFakeCursor();
293
- // Click on failure button first
294
- await animateCursorToElementAndClick(cursor, failureButton);
295
- await wait(DELAY_MEDIUM);
296
- // Click on success button
297
- await animateCursorToElementAndClick(cursor, successButton);
298
- // Remove the cursor
299
- cursor.remove();
300
- await wait(DELAY_MEDIUM);
301
- step6Complete = true;
302
- }
303
- },
304
- popover: {
305
- title: 'Filtering jobs date, kind, status',
306
- description: 'You can filter jobs, for example by status (failed, running, success). This helps you focus on specific types of executions.',
307
- side: 'bottom',
308
- onNextClick: () => {
309
- if (!step6Complete) {
310
- sendUserToast('Please wait for the filter clicks to complete...', false, [], undefined, 3000);
311
- return;
312
- }
313
- driver.moveNext();
314
- },
315
- onPrevClick: () => {
316
- sendUserToast('Previous is not available for this step', true, [], undefined, 3000);
317
- }
318
- }
319
- },
320
- {
321
- element: 'div.flex.flex-row.gap-4.items-center.px-2.py-1.grow-0.justify-between',
322
- popover: {
323
- title: 'More filtering options',
324
- description: 'Even more filters are available to help you find exactly what you\'re looking for. Explore the additional filtering options to refine your search.',
325
- side: 'bottom',
326
- onNextClick: () => {
327
- driver.moveNext();
328
- },
329
- onPrevClick: () => {
330
- sendUserToast('Previous is not available for this step', true, [], undefined, 3000);
331
- }
332
- }
333
- },
334
- {
335
- popover: {
336
- title: 'Tutorial complete! 🎉',
337
- description: 'You now know how to use the Runs page to monitor your executions, view successful results, and debug failed jobs.<p style="margin-top: 12px; padding-top: 12px; border-top: 1px solid rgba(128,128,128,0.3); font-size: 0.9em; opacity: 0.9;"><strong>💡 Want to learn more?</strong> Access more tutorials from the <strong>Tutorials</strong> page in the main menu.</p>',
338
- onNextClick: async () => {
339
- updateProgress(index);
340
- driver.destroy();
341
- // Cleanup tutorial flows silently
342
- await cleanupTutorialFlows();
343
- }
344
- }
345
- }
346
- ];
347
- }
348
- // Cleanup function to delete tutorial flows
349
- async function cleanupTutorialFlows() {
350
- // Don't delete flows if user is an operator (they don't have permission)
351
- if ($userStore?.operator) {
352
- return;
353
- }
354
- for (const flowPath of tutorialFlowPaths) {
355
- try {
356
- await FlowService.deleteFlowByPath({
357
- workspace: $workspaceStore,
358
- path: flowPath
359
- });
360
- }
361
- catch (error) {
362
- console.error(`Error deleting tutorial flow ${flowPath}:`, error);
363
- }
364
- }
365
- }
366
- // Start tutorial - create and run both jobs first
367
- export async function runTutorial() {
368
- // Create and run both flows at the beginning
369
- try {
370
- const successfulFlowPath = await createTutorialFlow();
371
- const brokenFlowPath = await createBrokenFlow();
372
- // Store flow paths for cleanup
373
- tutorialFlowPaths = [successfulFlowPath, brokenFlowPath];
374
- // Run both flows in parallel
375
- await Promise.all([
376
- runFlowAndWait(successfulFlowPath),
377
- runFlowAndWait(brokenFlowPath)
378
- ]);
379
- // Wait a bit for jobs to appear
380
- await wait(DELAY_LONG);
381
- }
382
- catch (error) {
383
- console.error('Error creating/running tutorial flows:', error);
384
- }
385
- tutorial?.runTutorial();
386
- }
387
- </script>
388
-
389
- <Tutorial
390
- bind:this={tutorial}
391
- {index}
392
- name="runs-tutorial"
393
- tainted={false}
394
- on:error
395
- on:skipAll
396
- getSteps={(driver) => {
397
- return getTutorialSteps(driver)
398
- }}
399
- />
@@ -1,133 +0,0 @@
1
- <script lang="ts">import { updateProgress } from '../../../tutorialUtils';
2
- import Tutorial from '../Tutorial.svelte';
3
- import { goto } from '$app/navigation';
4
- import { base } from '../../../base';
5
- import { page } from '$app/stores';
6
- import { wait } from '../../../utils';
7
- import { DELAY_MEDIUM } from '../utils';
8
- let { index } = $props();
9
- let tutorial = $state(undefined);
10
- export function runTutorial() {
11
- // Check if we're on the homepage
12
- if ($page.url.pathname !== `${base}/` && $page.url.pathname !== `${base}`) {
13
- // Redirect to homepage with a tutorial parameter
14
- goto(`${base}/?tutorial=workspace-onboarding-operator`);
15
- }
16
- else {
17
- tutorial?.runTutorial();
18
- }
19
- }
20
- </script>
21
-
22
- <Tutorial
23
- bind:this={tutorial}
24
- {index}
25
- name="workspace-onboarding-operator"
26
- tainted={false}
27
- on:skipAll
28
- getSteps={(driver) => {
29
- const steps: DriveStep[] = [
30
- {
31
- popover: {
32
- title: 'Welcome to Windmill! 🎉',
33
- description:
34
- "Let's take a quick tour! We'll show you the three main tools you can use: Scripts, Flows, and Apps.",
35
- onNextClick: () => {
36
- // Wait a bit to ensure the page is fully rendered before moving to next step
37
- setTimeout(() => {
38
- // Try to find the script tab button
39
- const scriptsButton = document.querySelector('[data-value="script"]') as HTMLElement | null
40
-
41
- if (scriptsButton) {
42
- driver.moveNext()
43
- } else {
44
- // If we can't find the button, just move to next step anyway
45
- driver.moveNext()
46
- }
47
- }, 100)
48
- }
49
- }
50
- },
51
- {
52
- popover: {
53
- title: 'Scripts - Run automated tasks',
54
- description:
55
- '<img src="/script-tutorial-operator.png" alt="Script Example" style="width: 100%; max-width: 400px; margin-bottom: 12px; border-radius: 8px; display: block; margin-left: auto; margin-right: auto;" /><p><strong>Scripts</strong> are ready-to-use tasks that do things automatically for you.</p><p style="margin-top: 8px;">You can <strong>run scripts</strong> whenever you need them - like generating a report, sending notifications, or processing data.</p>',
56
- onNextClick: async () => {
57
- // Move to the next step (Flows)
58
- setTimeout(() => {
59
- const flowsButton = document.querySelector('[data-value="flow"]') as HTMLElement | null
60
-
61
- if (flowsButton) {
62
- driver.moveNext()
63
- } else {
64
- driver.moveNext()
65
- }
66
- }, 100)
67
- }
68
- },
69
- element: '[data-value="script"]'
70
- },
71
- {
72
- popover: {
73
- title: 'Flows - Run step-by-step processes',
74
- description:
75
- '<img src="/flow.png" alt="Flow" style="width: 100%; max-width: 400px; margin-bottom: 12px; border-radius: 8px; display: block; margin-left: auto; margin-right: auto;" /><p><strong>Flows</strong> are processes that run multiple tasks in order, one after another.</p><p style="margin-top: 8px;">You can <strong>start a flow</strong> and watch it complete each step automatically - perfect for tasks that have multiple stages.</p>',
76
- onNextClick: async () => {
77
- // Move to the next step (Apps)
78
- setTimeout(() => {
79
- const appsButton = document.querySelector('[data-value="app"]') as HTMLElement | null
80
-
81
- if (appsButton) {
82
- driver.moveNext()
83
- } else {
84
- driver.moveNext()
85
- }
86
- }, 100)
87
- }
88
- },
89
- element: '[data-value="flow"]'
90
- },
91
- {
92
- popover: {
93
- title: 'Apps - Use custom tools',
94
- description:
95
- '<img src="/app.png" alt="App" style="width: 100%; max-width: 400px; margin-bottom: 12px; border-radius: 8px; display: block; margin-left: auto; margin-right: auto;" /><p><strong>Apps</strong> are easy-to-use tools with buttons, forms, and displays built just for your team.</p><p style="margin-top: 8px;">You can <strong>open an app</strong> to work with your data, fill out forms, or trigger tasks - no technical knowledge needed!</p>',
96
- onNextClick: async () => {
97
- // Move to the next step (cursor animation)
98
- driver.moveNext()
99
- }
100
- },
101
- element: '[data-value="app"]'
102
- },
103
- {
104
- popover: {
105
- title: 'Finally, the Menu section',
106
- description: 'Explore available tabs where you can access your history of runs, your scheduled scripts, your tutorials progress etc.<p style="margin-top: 12px; padding-top: 12px; border-top: 1px solid rgba(128,128,128,0.3); font-size: 0.9em; opacity: 0.9;"><strong>💡 Want to learn more?</strong> Access more tutorials from the <strong>Tutorials</strong> page in the main menu.</p>',
107
- onNextClick: async () => {
108
- // Find the target button and click it
109
- const targetButton = document.querySelector('[role="menuitem"]') as HTMLElement | null
110
- if (targetButton) {
111
- targetButton.click()
112
- }
113
-
114
- // Wait for menu to open
115
- await wait(DELAY_MEDIUM)
116
-
117
- // Mark tutorial as complete
118
- updateProgress(index)
119
- driver.destroy()
120
-
121
- // Clean up URL parameter if present
122
- if ($page.url.searchParams.has('tutorial')) {
123
- goto(`${base}/`, { replaceState: true })
124
- }
125
- }
126
- },
127
- element: '[role="menuitem"]'
128
- }
129
- ]
130
-
131
- return steps
132
- }}
133
- />