windmill-components 1.623.1 → 1.623.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 (480) hide show
  1. package/package/assets/tokens/tokens.json +11 -1
  2. package/package/ata/apis.js +78 -5
  3. package/package/cancelable-promise-utils.js +4 -2
  4. package/package/components/AddUser.svelte +1 -1
  5. package/package/components/ApiConnectForm.svelte +6 -0
  6. package/package/components/AppConnectDrawer.svelte +1 -0
  7. package/package/components/AppConnectInner.svelte +1 -0
  8. package/package/components/AuthSettings.svelte +3 -1
  9. package/package/components/BedrockCredentialsCheck.svelte +241 -0
  10. package/package/components/BedrockCredentialsCheck.svelte.d.ts +3 -0
  11. package/package/components/CenteredModal.svelte +32 -24
  12. package/package/components/CenteredModal.svelte.d.ts +7 -27
  13. package/package/components/CenteredPage.svelte +6 -2
  14. package/package/components/CenteredPage.svelte.d.ts +3 -0
  15. package/package/components/CompareWorkspaces.svelte +74 -16
  16. package/package/components/ConcurrentJobsChart.svelte +3 -2
  17. package/package/components/ConcurrentJobsChart.svelte.d.ts +2 -2
  18. package/package/components/CustomPopover.svelte +20 -23
  19. package/package/components/CustomPopover.svelte.d.ts +14 -39
  20. package/package/components/DBManager.svelte +134 -42
  21. package/package/components/DBManager.svelte.d.ts +13 -2
  22. package/package/components/DBManagerContent.svelte +25 -63
  23. package/package/components/DBManagerContent.svelte.d.ts +38 -4
  24. package/package/components/DBManagerDrawer.svelte +7 -9
  25. package/package/components/DBTable.svelte +1 -1
  26. package/package/components/DBTable.svelte.d.ts +3 -1
  27. package/package/components/DBTableEditor.svelte +234 -178
  28. package/package/components/DBTableEditor.svelte.d.ts +22 -3
  29. package/package/components/DateInput.svelte +29 -35
  30. package/package/components/DateInput.svelte.d.ts +10 -11
  31. package/package/components/DedicatedWorkersSelector.svelte +569 -0
  32. package/package/components/DedicatedWorkersSelector.svelte.d.ts +8 -0
  33. package/package/components/DeployWorkspace.svelte +106 -29
  34. package/package/components/Description.svelte +3 -2
  35. package/package/components/Dev.svelte +36 -2
  36. package/package/components/DiffDrawer.svelte +8 -29
  37. package/package/components/DiffEditor.svelte +32 -2
  38. package/package/components/DisplayResult.svelte +32 -24
  39. package/package/components/DropdownV2.svelte +2 -1
  40. package/package/components/DropdownV2.svelte.d.ts +1 -0
  41. package/package/components/Editor.svelte +71 -26
  42. package/package/components/Editor.svelte.d.ts +3 -0
  43. package/package/components/EditorBar.svelte +1 -1
  44. package/package/components/FakeMonacoPlaceHolder.svelte +1 -1
  45. package/package/components/FlowBuilder.svelte +17 -11
  46. package/package/components/FlowDiffViewer.svelte +37 -0
  47. package/package/components/FlowDiffViewer.svelte.d.ts +7 -0
  48. package/package/components/FlowGraphViewer.svelte +5 -2
  49. package/package/components/FlowGraphViewer.svelte.d.ts +2 -0
  50. package/package/components/FlowLoopIterationPreview.svelte.d.ts +1 -1
  51. package/package/components/FlowPreviewContent.svelte +3 -2
  52. package/package/components/FlowPreviewContent.svelte.d.ts +1 -1
  53. package/package/components/FlowPreviewResult.svelte +0 -4
  54. package/package/components/FlowRestartButton.svelte +2 -3
  55. package/package/components/FlowRestartButton.svelte.d.ts +3 -0
  56. package/package/components/FlowStatusViewerInner.svelte +55 -35
  57. package/package/components/FlowStatusViewerInner.svelte.d.ts +1 -1
  58. package/package/components/FlowStatusWaitingForEvents.svelte +27 -23
  59. package/package/components/FlowStatusWaitingForEvents.svelte.d.ts +4 -18
  60. package/package/components/FlowViewer.svelte +103 -2
  61. package/package/components/FlowViewer.svelte.d.ts +9 -3
  62. package/package/components/ForkWorkspaceBanner.svelte +32 -13
  63. package/package/components/GraphqlSchemaViewer.svelte +8 -1
  64. package/package/components/HistoricInputs.svelte +25 -27
  65. package/package/components/HistoricInputs.svelte.d.ts +2 -2
  66. package/package/components/InfiniteList.svelte +27 -20
  67. package/package/components/InfiniteList.svelte.d.ts +2 -0
  68. package/package/components/InstanceSetting.svelte +38 -0
  69. package/package/components/InviteUser.svelte +16 -42
  70. package/package/components/InviteUser.svelte.d.ts +4 -18
  71. package/package/components/JobLoader.svelte.d.ts +1 -1
  72. package/package/components/JobOtelTraces.svelte +287 -0
  73. package/package/components/JobOtelTraces.svelte.d.ts +6 -0
  74. package/package/components/JsonInputs.svelte +6 -8
  75. package/package/components/JsonInputs.svelte.d.ts +7 -8
  76. package/package/components/LogViewer.svelte +91 -33
  77. package/package/components/Login.svelte +27 -0
  78. package/package/components/ManualPopover.svelte +5 -6
  79. package/package/components/ManualPopover.svelte.d.ts +9 -35
  80. package/package/components/MemoryFootprintViewer.svelte +2 -6
  81. package/package/components/ModulePreview.svelte +23 -21
  82. package/package/components/ModulePreview.svelte.d.ts +1 -0
  83. package/package/components/NextcloudSetting.svelte +1 -1
  84. package/package/components/OAuthSetting.svelte +1 -0
  85. package/package/components/Path.svelte +2 -2
  86. package/package/components/Path.svelte.d.ts +1 -1
  87. package/package/components/PocketIdSetting.svelte +82 -0
  88. package/package/components/PocketIdSetting.svelte.d.ts +6 -0
  89. package/package/components/ResourceEditor.svelte +4 -4
  90. package/package/components/ResourcePicker.svelte +4 -0
  91. package/package/components/ResourcePicker.svelte.d.ts +1 -0
  92. package/package/components/RunButton.svelte +5 -15
  93. package/package/components/RunButton.svelte.d.ts +7 -19
  94. package/package/components/RunChart.svelte +8 -4
  95. package/package/components/RunChart.svelte.d.ts +2 -2
  96. package/package/components/RunForm.svelte +9 -17
  97. package/package/components/RunForm.svelte.d.ts +0 -1
  98. package/package/components/RunFormAdvancedPopup.svelte +1 -1
  99. package/package/components/RunsPage.svelte +202 -537
  100. package/package/components/RunsPage.svelte.d.ts +5 -5
  101. package/package/components/S3FilePicker.svelte +7 -11
  102. package/package/components/S3FilePickerInner.svelte +2 -3
  103. package/package/components/S3FilePickerInner.svelte.d.ts +2 -2
  104. package/package/components/SavedInputsPicker.svelte +1 -1
  105. package/package/components/SavedInputsV2.svelte +35 -36
  106. package/package/components/SchemaForm.svelte +26 -19
  107. package/package/components/SchemaFormWithArgPicker.svelte +4 -3
  108. package/package/components/ScriptBuilder.svelte +1 -1
  109. package/package/components/ScriptEditor.svelte +575 -101
  110. package/package/components/Section.svelte +4 -2
  111. package/package/components/ServiceLogsInner.svelte +4 -4
  112. package/package/components/ShareModal.svelte.d.ts +1 -1
  113. package/package/components/SimpleEditor.svelte +46 -2
  114. package/package/components/Star.svelte +8 -12
  115. package/package/components/Star.svelte.d.ts +6 -19
  116. package/package/components/StringTypeNarrowing.svelte.d.ts +1 -1
  117. package/package/components/SuperadminSettingsInner.svelte +1 -1
  118. package/package/components/TemplateEditor.svelte +54 -29
  119. package/package/components/TemplateEditor.svelte.d.ts +13 -102
  120. package/package/components/TimeAgo.svelte +49 -7
  121. package/package/components/TimeAgo.svelte.d.ts +1 -0
  122. package/package/components/Toast.svelte +5 -1
  123. package/package/components/UserSettings.svelte +1 -1
  124. package/package/components/WorkerGroup.svelte +35 -20
  125. package/package/components/WorkerGroup.svelte.d.ts +1 -0
  126. package/package/components/WorkerTagPicker.svelte +1 -1
  127. package/package/components/WorkerTagSelect.svelte +5 -2
  128. package/package/components/WorkspaceTutorials.svelte +5 -0
  129. package/package/components/apps/components/buttons/AppButton.svelte +21 -6
  130. package/package/components/apps/components/buttons/AppForm.svelte +2 -1
  131. package/package/components/apps/components/buttons/AppFormButton.svelte +2 -1
  132. package/package/components/apps/components/display/InsertRowDrawerButton.svelte +1 -1
  133. package/package/components/apps/components/display/dbtable/AppDbExplorer.svelte +2 -5
  134. package/package/components/apps/components/display/dbtable/dbFeatures.d.ts +9 -0
  135. package/package/components/apps/components/display/dbtable/dbFeatures.js +32 -0
  136. package/package/components/apps/components/display/dbtable/metadata.d.ts +3 -3
  137. package/package/components/apps/components/display/dbtable/metadata.js +177 -148
  138. package/package/components/apps/components/display/dbtable/queries/alterTable.d.ts +46 -0
  139. package/package/components/apps/components/display/dbtable/queries/alterTable.js +322 -0
  140. package/package/components/apps/components/display/dbtable/queries/alterTable.test.d.ts +1 -0
  141. package/package/components/apps/components/display/dbtable/queries/alterTable.test.js +867 -0
  142. package/package/components/apps/components/display/dbtable/queries/createTable.d.ts +2 -24
  143. package/package/components/apps/components/display/dbtable/queries/createTable.js +13 -25
  144. package/package/components/apps/components/display/dbtable/queries/dbQueriesUtils.d.ts +9 -0
  145. package/package/components/apps/components/display/dbtable/queries/dbQueriesUtils.js +45 -0
  146. package/package/components/apps/components/display/dbtable/queries/relationalKeys.d.ts +45 -0
  147. package/package/components/apps/components/display/dbtable/queries/relationalKeys.js +401 -0
  148. package/package/components/apps/components/display/dbtable/queries/select.d.ts +2 -0
  149. package/package/components/apps/components/display/dbtable/queries/select.js +37 -6
  150. package/package/components/apps/components/display/dbtable/tableEditor.d.ts +35 -0
  151. package/package/components/apps/components/display/dbtable/tableEditor.js +67 -0
  152. package/package/components/apps/components/display/dbtable/utils.d.ts +2 -0
  153. package/package/components/apps/components/display/dbtable/utils.js +61 -36
  154. package/package/components/apps/components/display/table/AppAggridTable.svelte +8 -0
  155. package/package/components/apps/components/display/table/AppAggridTableActions.svelte +9 -9
  156. package/package/components/apps/components/display/table/AppAggridTableActions.svelte.d.ts +1 -1
  157. package/package/components/apps/components/helpers/HiddenComponent.svelte +1 -1
  158. package/package/components/apps/components/helpers/InputValue.svelte +1 -1
  159. package/package/components/apps/components/helpers/ResolveConfig.svelte +1 -1
  160. package/package/components/apps/components/helpers/RunnableComponent.svelte +3 -2
  161. package/package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +1 -1
  162. package/package/components/apps/components/helpers/RunnableWrapper.svelte +2 -2
  163. package/package/components/apps/components/inputs/AppMultiSelectV2.svelte +2 -4
  164. package/package/components/apps/editor/AppEditorHeader.svelte +8 -1
  165. package/package/components/apps/editor/AppEditorHeaderDeploy.svelte +32 -29
  166. package/package/components/apps/editor/AppEditorHeaderDeploy.svelte.d.ts +2 -2
  167. package/package/components/apps/editor/AppEditorHeaderDeployInitialDraft.svelte +4 -4
  168. package/package/components/apps/editor/AppEditorHeaderDeployInitialDraft.svelte.d.ts +3 -3
  169. package/package/components/apps/editor/PublicApp.svelte +49 -30
  170. package/package/components/apps/editor/PublicApp.svelte.d.ts +1 -0
  171. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte +77 -7
  172. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte.d.ts +2 -2
  173. package/package/components/apps/editor/inlineScriptsPanel/utils.d.ts +2 -2
  174. package/package/components/apps/editor/inlineScriptsPanel/utils.js +10 -1
  175. package/package/components/apps/inputType.d.ts +6 -1
  176. package/package/components/assets/AssetsDropdownButton.svelte +1 -1
  177. package/package/components/assets/AssetsUsageDrawer.svelte +98 -27
  178. package/package/components/assets/AssetsUsageDrawer.svelte.d.ts +5 -6
  179. package/package/components/assets/lib.d.ts +3 -2
  180. package/package/components/assets/lib.js +3 -1
  181. package/package/components/auditLogs/AuditLogsFilters.svelte +9 -17
  182. package/package/components/auditLogs/AuditLogsFilters.svelte.d.ts +1 -1
  183. package/package/components/common/CloseButton.svelte +2 -1
  184. package/package/components/common/CloseButton.svelte.d.ts +1 -0
  185. package/package/components/common/badge/CountBadge.svelte +4 -3
  186. package/package/components/common/badge/CountBadge.svelte.d.ts +1 -0
  187. package/package/components/common/button/Button.svelte +1 -1
  188. package/package/components/common/button/model.js +1 -1
  189. package/package/components/common/calendarPicker/CalendarPicker.svelte.d.ts +1 -1
  190. package/package/components/common/confirmationModal/ConfirmationModal.svelte +2 -1
  191. package/package/components/common/confirmationModal/ConfirmationModal.svelte.d.ts +1 -0
  192. package/package/components/common/drawer/Drawer.svelte +4 -1
  193. package/package/components/common/drawer/DrawerContent.svelte +6 -3
  194. package/package/components/common/drawer/DrawerContent.svelte.d.ts +1 -0
  195. package/package/components/common/languageIcons/TypeScript.svelte +5 -3
  196. package/package/components/common/languageIcons/TypeScript.svelte.d.ts +1 -0
  197. package/package/components/common/modal/Modal.svelte +3 -3
  198. package/package/components/common/modal/Modal2.svelte +1 -0
  199. package/package/components/common/table/AppRow.svelte +4 -1
  200. package/package/components/common/table/FlowRow.svelte +4 -1
  201. package/package/components/common/table/RawAppRow.svelte +4 -1
  202. package/package/components/common/table/Row.svelte +11 -21
  203. package/package/components/common/table/Row.svelte.d.ts +4 -20
  204. package/package/components/common/table/RowIcon.svelte +6 -2
  205. package/package/components/common/table/RowIcon.svelte.d.ts +1 -1
  206. package/package/components/common/table/ScriptRow.svelte +4 -1
  207. package/package/components/copilot/autocomplete/Autocompletor.d.ts +1 -1
  208. package/package/components/copilot/autocomplete/Autocompletor.js +7 -6
  209. package/package/components/copilot/autocomplete/request.js +13 -9
  210. package/package/components/copilot/chat/AIButtonStyle.d.ts +1 -1
  211. package/package/components/copilot/chat/AIButtonStyle.js +2 -1
  212. package/package/components/copilot/chat/AIChat.svelte +3 -1
  213. package/package/components/copilot/chat/AIChatDisplay.svelte +89 -4
  214. package/package/components/copilot/chat/AIChatInput.svelte +275 -0
  215. package/package/components/copilot/chat/AIChatManager.svelte.js +107 -1
  216. package/package/components/copilot/chat/AiChatLayout.svelte +15 -30
  217. package/package/components/copilot/chat/AppAvailableContextList.svelte +263 -0
  218. package/package/components/copilot/chat/AppAvailableContextList.svelte.d.ts +13 -0
  219. package/package/components/copilot/chat/ContextElementBadge.svelte +44 -0
  220. package/package/components/copilot/chat/DatatableCreationPolicy.svelte +32 -33
  221. package/package/components/copilot/chat/ProviderModelSelector.svelte +1 -1
  222. package/package/components/copilot/chat/__tests__/app/appEvalHelpers.js +3 -0
  223. package/package/components/copilot/chat/__tests__/flow/flowEvalHelpers.js +4 -0
  224. package/package/components/copilot/chat/app/core.d.ts +56 -15
  225. package/package/components/copilot/chat/app/core.js +141 -22
  226. package/package/components/copilot/chat/context.d.ts +59 -2
  227. package/package/components/copilot/chat/context.js +6 -2
  228. package/package/components/copilot/chat/flow/FlowAIChat.svelte +22 -0
  229. package/package/components/copilot/chat/flow/core.d.ts +3 -1
  230. package/package/components/copilot/chat/flow/core.js +29 -2
  231. package/package/components/copilot/chat/flow/openFlow.json +1 -1
  232. package/package/components/copilot/chat/flow/openFlowZod.d.ts +1 -0
  233. package/package/components/copilot/chat/flow/openFlowZod.js +14 -2
  234. package/package/components/copilot/chat/script/core.d.ts +4 -1
  235. package/package/components/copilot/chat/script/core.js +43 -6
  236. package/package/components/copilot/chat/shared.d.ts +10 -0
  237. package/package/components/copilot/chat/shared.js +24 -0
  238. package/package/components/copilot/lib.d.ts +1 -1
  239. package/package/components/copilot/lib.js +2 -9
  240. package/package/components/copilot/utils.d.ts +5 -0
  241. package/package/components/copilot/utils.js +8 -0
  242. package/package/components/custom_ui.d.ts +2 -0
  243. package/package/components/dbOps.d.ts +18 -4
  244. package/package/components/dbOps.js +25 -3
  245. package/package/components/debug/DebugConsole.svelte +277 -0
  246. package/package/components/debug/DebugConsole.svelte.d.ts +13 -0
  247. package/package/components/debug/DebugPanel.svelte +97 -0
  248. package/package/components/debug/DebugPanel.svelte.d.ts +11 -0
  249. package/package/components/debug/DebugToolbar.svelte +148 -0
  250. package/package/components/debug/DebugToolbar.svelte.d.ts +17 -0
  251. package/package/components/debug/DebugVariableViewer.svelte +115 -0
  252. package/package/components/debug/DebugVariableViewer.svelte.d.ts +11 -0
  253. package/package/components/debug/MonacoDebugger.svelte +384 -0
  254. package/package/components/debug/MonacoDebugger.svelte.d.ts +15 -0
  255. package/package/components/debug/dapClient.d.ts +192 -0
  256. package/package/components/debug/dapClient.js +426 -0
  257. package/package/components/debug/debugUtils.d.ts +30 -0
  258. package/package/components/debug/debugUtils.js +131 -0
  259. package/package/components/debug/index.d.ts +75 -0
  260. package/package/components/debug/index.js +82 -0
  261. package/package/components/details/DetailPageHeader.svelte +21 -7
  262. package/package/components/details/DetailPageHeader.svelte.d.ts +2 -1
  263. package/package/components/details/DetailPageLayout.svelte +10 -1
  264. package/package/components/details/DetailPageLayout.svelte.d.ts +1 -0
  265. package/package/components/flows/CreateActionsApp.svelte +6 -4
  266. package/package/components/flows/DebounceLimit.svelte.d.ts +1 -1
  267. package/package/components/flows/FlowHistoryInner.svelte +15 -4
  268. package/package/components/flows/content/AgentToolWrapper.svelte +1 -1
  269. package/package/components/flows/content/FlowEditorDrawer.svelte +124 -0
  270. package/package/components/flows/content/FlowEditorDrawer.svelte.d.ts +22 -0
  271. package/package/components/flows/content/FlowInput.svelte +211 -37
  272. package/package/components/flows/content/FlowModuleComponent.svelte +553 -67
  273. package/package/components/flows/content/FlowModuleEarlyStop.svelte +8 -10
  274. package/package/components/flows/content/FlowModuleHeader.svelte +7 -4
  275. package/package/components/flows/content/FlowModuleWorkerTagSelect.svelte +1 -1
  276. package/package/components/flows/content/McpOAuthConnect.svelte +217 -0
  277. package/package/components/flows/content/McpOAuthConnect.svelte.d.ts +7 -0
  278. package/package/components/flows/content/McpToolEditor.svelte +50 -37
  279. package/package/components/flows/content/McpToolEditor.svelte.d.ts +0 -1
  280. package/package/components/flows/conversations/FlowChat.svelte +16 -2
  281. package/package/components/flows/conversations/FlowChat.svelte.d.ts +2 -1
  282. package/package/components/flows/conversations/FlowChatInterface.svelte +103 -6
  283. package/package/components/flows/conversations/FlowChatInterface.svelte.d.ts +2 -0
  284. package/package/components/flows/conversations/FlowChatManager.svelte.js +53 -21
  285. package/package/components/flows/conversations/FlowConversationsSidebar.svelte +79 -77
  286. package/package/components/flows/header/FlowImportExportMenu.svelte +1 -1
  287. package/package/components/flows/propPicker/OutputPickerInner.svelte.d.ts +1 -1
  288. package/package/components/flows/propPicker/PropPickerWrapper.svelte +3 -1
  289. package/package/components/flows/types.d.ts +2 -0
  290. package/package/components/git_sync/GitSyncRepositoryCard.svelte +16 -8
  291. package/package/components/graph/FlowGraphV2.svelte +7 -1
  292. package/package/components/graph/renderers/triggers/TriggersBadge.svelte +41 -24
  293. package/package/components/home/ItemsList.svelte +7 -6
  294. package/package/components/home/TutorialBanner.svelte +34 -18
  295. package/package/components/home/treeViewUtils.js +1 -1
  296. package/package/components/icons/CssIcon.svelte +20 -0
  297. package/package/components/icons/CssIcon.svelte.d.ts +7 -25
  298. package/package/components/icons/HtmlIcon.svelte +20 -0
  299. package/package/components/icons/HtmlIcon.svelte.d.ts +8 -0
  300. package/package/components/icons/JavaScriptIcon.svelte +10 -2
  301. package/package/components/icons/JavaScriptIcon.svelte.d.ts +1 -0
  302. package/package/components/icons/JsonIcon.svelte +8 -2
  303. package/package/components/icons/JsonIcon.svelte.d.ts +1 -0
  304. package/package/components/icons/LessIcon.svelte +16 -0
  305. package/package/components/icons/LessIcon.svelte.d.ts +8 -0
  306. package/package/components/icons/MarkdownIcon.svelte +20 -0
  307. package/package/components/icons/MarkdownIcon.svelte.d.ts +8 -0
  308. package/package/components/icons/NextcloudIcon.svelte +3 -2
  309. package/package/components/icons/NextcloudIcon.svelte.d.ts +2 -0
  310. package/package/components/icons/PocketIdIcon.svelte +9 -0
  311. package/package/components/icons/PocketIdIcon.svelte.d.ts +9 -0
  312. package/package/components/icons/ReactIcon.svelte +10 -2
  313. package/package/components/icons/ReactIcon.svelte.d.ts +1 -0
  314. package/package/components/icons/SassIcon.svelte +28 -0
  315. package/package/components/icons/SassIcon.svelte.d.ts +8 -0
  316. package/package/components/icons/SvelteIcon.svelte +10 -2
  317. package/package/components/icons/SvelteIcon.svelte.d.ts +1 -0
  318. package/package/components/icons/VueIcon.svelte +10 -2
  319. package/package/components/icons/VueIcon.svelte.d.ts +1 -0
  320. package/package/components/icons/YamlIcon.svelte +20 -0
  321. package/package/components/icons/YamlIcon.svelte.d.ts +8 -0
  322. package/package/components/icons/index.js +3 -1
  323. package/package/components/instanceSettings/SecretBackendConfig.svelte +514 -0
  324. package/package/components/instanceSettings/SecretBackendConfig.svelte.d.ts +8 -0
  325. package/package/components/instanceSettings.d.ts +2 -1
  326. package/package/components/instanceSettings.js +33 -1
  327. package/package/components/jobs/JobPreview.svelte +46 -39
  328. package/package/components/jobs/JobPreview.svelte.d.ts +1 -0
  329. package/package/components/monacoLanguagesOptions.js +16 -15
  330. package/package/components/propertyPicker/PropPicker.svelte +16 -2
  331. package/package/components/propertyPicker/PropPicker.svelte.d.ts +2 -0
  332. package/package/components/raw_apps/DefaultDatabaseSelector.svelte +9 -5
  333. package/package/components/raw_apps/FileEditorIcon.svelte +12 -7
  334. package/package/components/raw_apps/FileEditorIcon.svelte.d.ts +2 -0
  335. package/package/components/raw_apps/FileTreeNode.svelte +119 -83
  336. package/package/components/raw_apps/RawAppBackgroundRunner.svelte +88 -8
  337. package/package/components/raw_apps/RawAppDataTableDrawer.svelte +1 -3
  338. package/package/components/raw_apps/RawAppDataTableList.svelte +12 -9
  339. package/package/components/raw_apps/RawAppEditor.svelte +218 -68
  340. package/package/components/raw_apps/RawAppEditorHeader.svelte +33 -16
  341. package/package/components/raw_apps/RawAppHistoryList.svelte +264 -80
  342. package/package/components/raw_apps/RawAppHistoryList.svelte.d.ts +1 -0
  343. package/package/components/raw_apps/RawAppHistoryManager.svelte.d.ts +15 -1
  344. package/package/components/raw_apps/RawAppHistoryManager.svelte.js +46 -12
  345. package/package/components/raw_apps/RawAppInlineScriptEditor.svelte +549 -47
  346. package/package/components/raw_apps/RawAppInlineScriptEditor.svelte.d.ts +31 -5
  347. package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte +25 -18
  348. package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte.d.ts +1 -0
  349. package/package/components/raw_apps/RawAppInlineScriptRunnable.svelte +141 -10
  350. package/package/components/raw_apps/RawAppInlineScriptRunnable.svelte.d.ts +8 -0
  351. package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte +2 -1
  352. package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte.d.ts +9 -1
  353. package/package/components/raw_apps/RawAppInputsSpecEditor.svelte +47 -3
  354. package/package/components/raw_apps/RawAppInputsSpecEditor.svelte.d.ts +2 -2
  355. package/package/components/raw_apps/RawAppModules.svelte +13 -7
  356. package/package/components/raw_apps/RawAppPreview.svelte +48 -6
  357. package/package/components/raw_apps/RawAppSidebar.svelte +194 -125
  358. package/package/components/raw_apps/RawAppSidebar.svelte.d.ts +1 -0
  359. package/package/components/raw_apps/RunnableRow.svelte +41 -0
  360. package/package/components/raw_apps/RunnableRow.svelte.d.ts +11 -0
  361. package/package/components/raw_apps/datatableUtils.svelte.js +1 -1
  362. package/package/components/raw_apps/utils.d.ts +1 -1
  363. package/package/components/raw_apps/utils.js +76 -18
  364. package/package/components/runs/ManuelDatePicker.svelte +3 -3
  365. package/package/components/runs/ManuelDatePicker.svelte.d.ts +3 -3
  366. package/package/components/runs/NoWorkerWithTagWarning.svelte +5 -1
  367. package/package/components/runs/RunsFilter.svelte +75 -63
  368. package/package/components/runs/RunsFilter.svelte.d.ts +35 -4
  369. package/package/components/runs/RunsQueue.svelte.d.ts +1 -1
  370. package/package/components/runs/RunsTable.svelte +1 -1
  371. package/package/components/runs/RunsTable.svelte.d.ts +1 -1
  372. package/package/components/runs/useJobsLoader.svelte.d.ts +34 -0
  373. package/package/components/runs/useJobsLoader.svelte.js +507 -0
  374. package/package/components/schema/EditableSchemaWrapper.svelte +2 -2
  375. package/package/components/scriptEditor/LogPanel.svelte +17 -2
  376. package/package/components/scriptEditor/LogPanel.svelte.d.ts +2 -0
  377. package/package/components/select/MultiSelect.svelte +1 -1
  378. package/package/components/select/SelectDropdown.svelte +17 -5
  379. package/package/components/settings/AIPromptsModal.svelte +88 -0
  380. package/package/components/settings/AIPromptsModal.svelte.d.ts +11 -0
  381. package/package/components/settings/ChangeWorkspaceColor.svelte +4 -3
  382. package/package/components/settings/ChangeWorkspaceId.svelte +16 -11
  383. package/package/components/settings/ChangeWorkspaceName.svelte +7 -6
  384. package/package/components/settings/CreateToken.svelte +4 -4
  385. package/package/components/settings/UserAIPromptsSettings.svelte +56 -15
  386. package/package/components/settings/WorkspaceOperatorSettings.svelte +68 -85
  387. package/package/components/settings/WorkspaceUserSettings.svelte +537 -411
  388. package/package/components/sidebar/MenuButton.svelte +54 -24
  389. package/package/components/sidebar/MenuButton.svelte.d.ts +2 -0
  390. package/package/components/sidebar/MultiplayerMenu.svelte +4 -4
  391. package/package/components/sidebar/OperatorMenu.svelte +63 -88
  392. package/package/components/sidebar/SidebarContent.svelte +39 -6
  393. package/package/components/sidebar/UserMenu.svelte +3 -3
  394. package/package/components/sidebar/WorkspaceMenu.svelte +35 -85
  395. package/package/components/sqlTypeService.js +4 -3
  396. package/package/components/table/DataTable.svelte +8 -3
  397. package/package/components/table/DataTable.svelte.d.ts +2 -0
  398. package/package/components/text_input/TextInput.svelte +3 -0
  399. package/package/components/text_input/TextInput.svelte.d.ts +2 -0
  400. package/package/components/triggers/AddTriggersButton.svelte +17 -4
  401. package/package/components/triggers/TriggersEditor.svelte +4 -0
  402. package/package/components/triggers/TriggersWrapper.svelte +14 -0
  403. package/package/components/triggers/native/NativeTriggerEditor.svelte +379 -0
  404. package/package/components/triggers/native/NativeTriggerEditor.svelte.d.ts +26 -0
  405. package/package/components/triggers/native/NativeTriggerTable.svelte +155 -0
  406. package/package/components/triggers/native/NativeTriggerTable.svelte.d.ts +16 -0
  407. package/package/components/triggers/native/NativeTriggersPanel.svelte +40 -0
  408. package/package/components/triggers/native/NativeTriggersPanel.svelte.d.ts +15 -0
  409. package/package/components/triggers/native/services/nextcloud/NextcloudTriggerForm.svelte +104 -0
  410. package/package/components/triggers/native/services/nextcloud/NextcloudTriggerForm.svelte.d.ts +18 -0
  411. package/package/components/triggers/native/utils.d.ts +74 -0
  412. package/package/components/triggers/native/utils.js +152 -0
  413. package/package/components/triggers/triggers.svelte.d.ts +2 -1
  414. package/package/components/triggers/triggers.svelte.js +36 -8
  415. package/package/components/triggers/utils.js +18 -6
  416. package/package/components/triggers.d.ts +1 -1
  417. package/package/components/tutorials/FlowBuilderLiveTutorial.svelte +6 -35
  418. package/package/components/tutorials/RunsTutorial.svelte +399 -0
  419. package/package/components/{schema/SchemaPicker.svelte.d.ts → tutorials/RunsTutorial.svelte.d.ts} +11 -12
  420. package/package/components/tutorials/TroubleshootFlowTutorial.svelte +5 -20
  421. package/package/components/tutorials/utils.d.ts +16 -0
  422. package/package/components/tutorials/utils.js +96 -0
  423. package/package/components/tutorials/workspace/WorkspaceOnboardingOperatorTutorial.svelte +133 -0
  424. package/package/components/{SavedInputs.svelte.d.ts → tutorials/workspace/WorkspaceOnboardingOperatorTutorial.svelte.d.ts} +8 -11
  425. package/package/components/vscode.js +6 -6
  426. package/package/components/workspace/WorkspaceCard.svelte +184 -0
  427. package/package/components/workspace/WorkspaceCard.svelte.d.ts +24 -0
  428. package/package/components/workspace/WorkspaceIcon.svelte +21 -0
  429. package/package/components/workspace/WorkspaceIcon.svelte.d.ts +9 -0
  430. package/package/components/workspace/WorkspaceTreeView.svelte +331 -0
  431. package/package/components/workspace/WorkspaceTreeView.svelte.d.ts +15 -0
  432. package/package/components/workspaceSettings/AISettings.svelte +147 -108
  433. package/package/components/workspaceSettings/CreateWorkspace.svelte +26 -12
  434. package/package/components/workspaceSettings/CustomInstanceDbSelect.svelte +1 -0
  435. package/package/components/workspaceSettings/CustomInstanceDbWizardModal.svelte +3 -1
  436. package/package/components/workspaceSettings/DataTableSettings.svelte +2 -1
  437. package/package/components/workspaceSettings/DucklakeSettings.svelte +54 -26
  438. package/package/components/workspaceSettings/DucklakeSettings.svelte.d.ts +2 -1
  439. package/package/components/workspaceSettings/ModelTokenLimits.svelte +14 -18
  440. package/package/components/workspaceSettings/OAuthClientConfig.svelte +180 -0
  441. package/package/components/workspaceSettings/OAuthClientConfig.svelte.d.ts +14 -0
  442. package/package/components/workspaceSettings/StorageSettings.svelte +285 -241
  443. package/package/components/workspaceSettings/StorageSettings.svelte.d.ts +1 -0
  444. package/package/components/workspaceSettings/WorkspaceIntegrations.svelte +302 -0
  445. package/package/components/workspaceSettings/WorkspaceIntegrations.svelte.d.ts +3 -0
  446. package/package/consts.js +4 -3
  447. package/package/gen/core/OpenAPI.js +1 -1
  448. package/package/gen/schemas.gen.d.ts +517 -4
  449. package/package/gen/schemas.gen.js +523 -4
  450. package/package/gen/services.gen.d.ts +359 -22
  451. package/package/gen/services.gen.js +702 -44
  452. package/package/gen/types.gen.d.ts +1501 -121
  453. package/package/hub.js +2 -2
  454. package/package/hubPaths.json +3 -2
  455. package/package/infer.js +2 -0
  456. package/package/logout.d.ts +0 -2
  457. package/package/logout.js +2 -23
  458. package/package/logoutKit.d.ts +2 -0
  459. package/package/logoutKit.js +26 -0
  460. package/package/monaco_workers/graphql.worker.bundle.js +121 -121
  461. package/package/navigation.d.ts +1 -1
  462. package/package/rawAppWmillTs.d.ts +11 -0
  463. package/package/rawAppWmillTs.js +38 -1
  464. package/package/refreshUser.d.ts +5 -1
  465. package/package/refreshUser.js +20 -30
  466. package/package/storeUtils.js +2 -0
  467. package/package/svelte5Utils.svelte.d.ts +68 -1
  468. package/package/svelte5Utils.svelte.js +193 -2
  469. package/package/svelte5UtilsKit.svelte.d.ts +3 -0
  470. package/package/svelte5UtilsKit.svelte.js +30 -0
  471. package/package/tutorialUtils.js +0 -4
  472. package/package/tutorials/config.js +31 -3
  473. package/package/tutorials/roleUtils.d.ts +1 -1
  474. package/package/tutorials/roleUtils.js +6 -2
  475. package/package/utils.js +162 -1
  476. package/package.json +1 -1
  477. package/package/components/SavedInputs.svelte +0 -416
  478. package/package/components/runs/JobsLoader.svelte +0 -468
  479. package/package/components/runs/JobsLoader.svelte.d.ts +0 -49
  480. package/package/components/schema/SchemaPicker.svelte +0 -92
@@ -226,7 +226,17 @@
226
226
  "yellow-700": "#8a6e31",
227
227
  "yellow-800": "#61512d",
228
228
  "yellow-900": "#443d22",
229
- "yellow-950": "#3a351a"
229
+ "yellow-950": "#3a351a",
230
+ "magenta-100": "#fae8fd",
231
+ "magenta-200": "#f0c6fb",
232
+ "magenta-300": "#e89ffa",
233
+ "magenta-400": "#de75f8",
234
+ "magenta-500": "#d551f5",
235
+ "magenta-600": "#bf41dd",
236
+ "magenta-700": "#b03dd8",
237
+ "magenta-800": "#963cc7",
238
+ "magenta-900": "#8537c0",
239
+ "magenta-950": "#6e2ba1"
230
240
  }
231
241
  },
232
242
  "guidelines": { "mode-1": { "blue": "#5e81ac", "demo-background": "#ffffff00" } },
@@ -1,20 +1,80 @@
1
1
  // https://github.com/jsdelivr/data.jsdelivr.com
2
2
  import pLimit from 'p-limit';
3
- export const getNPMVersionsForModule = (moduleName, resLimit) => {
3
+ import { workspaceStore } from '../stores';
4
+ import { get } from 'svelte/store';
5
+ // Backend proxy fallback functions
6
+ const getBackendProxyUrl = () => {
7
+ const workspace = get(workspaceStore);
8
+ if (!workspace) {
9
+ throw new Error('No workspace available');
10
+ }
11
+ return `/api/w/${workspace}/npm_proxy`;
12
+ };
13
+ const backendProxyApi = async (endpoint, resLimit) => {
14
+ if (isOverlimit(resLimit)) {
15
+ console.warn(`Exceeded limit of types downloaded for the needs of the assistant fetching: ${endpoint}, ${resLimit.usage}`);
16
+ return new Error('Exceeded limit of 100MB of data downloaded.');
17
+ }
18
+ try {
19
+ const baseUrl = getBackendProxyUrl();
20
+ const url = `${baseUrl}${endpoint}`;
21
+ return limit(() => fetch(url, { credentials: 'include' }).then((res) => {
22
+ if (res.ok) {
23
+ return res.text().then((text) => {
24
+ resLimit.usage += text.length;
25
+ console.log('resLimit (backend proxy)', url, resLimit.usage);
26
+ return JSON.parse(text);
27
+ });
28
+ }
29
+ else {
30
+ return new Error('Backend proxy request failed');
31
+ }
32
+ }));
33
+ }
34
+ catch (e) {
35
+ return new Error('Backend proxy not available');
36
+ }
37
+ };
38
+ export const getNPMVersionsForModule = async (moduleName, resLimit) => {
4
39
  const url = `https://data.jsdelivr.com/v1/package/npm/${moduleName}`;
5
- return api(url, resLimit, {
40
+ const result = await api(url, resLimit, {
6
41
  cache: 'no-store'
7
42
  });
43
+ // If jsdelivr fails, try backend proxy
44
+ if (result instanceof Error) {
45
+ console.log('jsdelivr failed for', moduleName, 'trying backend proxy');
46
+ return backendProxyApi(`/metadata/${encodeURIComponent(moduleName)}`, resLimit);
47
+ }
48
+ return result;
8
49
  };
9
- export const getNPMVersionForModuleReference = (moduleName, reference, resLimit) => {
50
+ export const getNPMVersionForModuleReference = async (moduleName, reference, resLimit) => {
10
51
  const url = `https://data.jsdelivr.com/v1/package/resolve/npm/${moduleName}@${reference}`;
11
- return api(url, resLimit);
52
+ const result = await api(url, resLimit);
53
+ // If jsdelivr fails, try backend proxy
54
+ if (result instanceof Error) {
55
+ console.log('jsdelivr failed for', moduleName, reference, 'trying backend proxy');
56
+ return backendProxyApi(`/resolve/${encodeURIComponent(moduleName)}?tag=${encodeURIComponent(reference)}`, resLimit);
57
+ }
58
+ return result;
12
59
  };
13
60
  export const getFiletreeForModuleWithVersion = async (moduleName, version, raw, resLimit) => {
14
61
  const url = `https://data.jsdelivr.com/v1/package/npm/${moduleName}@${version}/flat`;
15
62
  const res = await api(url, resLimit);
16
63
  if (res instanceof Error) {
17
- return res;
64
+ // Try backend proxy
65
+ console.log('jsdelivr failed for', moduleName, version, 'trying backend proxy');
66
+ const backendRes = await backendProxyApi(`/filetree/${encodeURIComponent(moduleName)}/${encodeURIComponent(version)}`, resLimit);
67
+ if (backendRes instanceof Error) {
68
+ return res;
69
+ }
70
+ else {
71
+ return {
72
+ ...backendRes,
73
+ moduleName,
74
+ version,
75
+ raw
76
+ };
77
+ }
18
78
  }
19
79
  else {
20
80
  return {
@@ -33,6 +93,19 @@ export const getDTSFileForModuleWithVersion = async (moduleName, version, file)
33
93
  return res.text();
34
94
  }
35
95
  else {
96
+ // Try backend proxy
97
+ console.log('jsdelivr failed for file', moduleName, version, file, 'trying backend proxy');
98
+ try {
99
+ const baseUrl = getBackendProxyUrl();
100
+ const proxyUrl = `${baseUrl}/file/${encodeURIComponent(moduleName)}/${encodeURIComponent(version)}${file}`;
101
+ const proxyRes = await limit(() => fetch(proxyUrl, { credentials: 'include' }));
102
+ if (proxyRes.ok) {
103
+ return proxyRes.text();
104
+ }
105
+ }
106
+ catch (e) {
107
+ console.log('Backend proxy failed for file', e);
108
+ }
36
109
  return new Error('OK');
37
110
  }
38
111
  };
@@ -29,8 +29,10 @@ export var CancelablePromiseUtils;
29
29
  }
30
30
  CancelablePromiseUtils.map = map;
31
31
  function pipe(promise, f) {
32
- promise.then((value) => {
33
- f(value);
32
+ promise
33
+ .then((value) => f(value))
34
+ .catch(() => {
35
+ // we are just piping, ignore errors
34
36
  });
35
37
  return promise;
36
38
  }
@@ -78,7 +78,7 @@ let selected = $state('developer');
78
78
  <input type="text" onkeyup={handleKeyUp} placeholder="username" bind:value={username} />
79
79
  {/if}
80
80
 
81
- <span class="text-xs mb-1 pt-2 leading-6">Role</span>
81
+ <span class="text-xs mb-1 pt-6 leading-6">Role</span>
82
82
  <ToggleButtonGroup bind:selected class="mb-4">
83
83
  {#snippet children({ item })}
84
84
  <ToggleButton
@@ -11,6 +11,8 @@ import { Loader2 } from 'lucide-svelte';
11
11
  import { untrack } from 'svelte';
12
12
  import { base } from '../base';
13
13
  import GitHubAppIntegration from './GitHubAppIntegration.svelte';
14
+ import BedrockCredentialsCheck from './BedrockCredentialsCheck.svelte';
15
+ import { isCloudHosted } from '../cloud';
14
16
  let { resourceType, resourceTypeInfo, args = $bindable({}), linkedSecret = $bindable(undefined), isValid = $bindable(true), linkedSecretCandidates = undefined, description = $bindable(undefined) } = $props();
15
17
  let schema = $state(emptySchema());
16
18
  let notFound = $state(false);
@@ -117,6 +119,7 @@ $effect(() => {
117
119
  options={{
118
120
  right: 'As JSON'
119
121
  }}
122
+ class="as-json-toggle"
120
123
  />
121
124
  <TestConnection {resourceType} {args} />
122
125
  {#if resourceType == 'postgresql'}
@@ -181,6 +184,9 @@ $effect(() => {
181
184
  onDescriptionUpdate={(newDescription) => (description = newDescription)}
182
185
  />
183
186
  </div>
187
+ {#if resourceType?.includes('bedrock') && !isCloudHosted()}
188
+ <BedrockCredentialsCheck />
189
+ {/if}
184
190
  {:else}
185
191
  <p class="text-primary font-normal text-xs mb-4"
186
192
  >No corresponding resource type found in your workspace for {resourceType}. Define the value in
@@ -36,6 +36,7 @@ let darkMode = false;
36
36
  >
37
37
  <DrawerContent
38
38
  title="Add a resource"
39
+ id="add-resource-drawer"
39
40
  on:close={drawer.closeDrawer}
40
41
  tooltip="Resources represent connections to third party systems. Learn more on how to integrate external APIs."
41
42
  documentationLink="https://www.windmill.dev/docs/integrations/integrations_on_windmill"
@@ -470,6 +470,7 @@ let hubRtSync = usePromise(async () => {
470
470
  placeholder="Search resource type"
471
471
  bind:value={filter}
472
472
  class="text-2xl grow"
473
+ id="search-resource-type"
473
474
  />
474
475
  </div>
475
476
 
@@ -7,6 +7,7 @@ import KeycloakSetting from './KeycloakSetting.svelte';
7
7
  import CustomSso from './CustomSso.svelte';
8
8
  import AuthentikSetting from './AuthentikSetting.svelte';
9
9
  import AutheliaSetting from './AutheliaSetting.svelte';
10
+ import PocketIdSetting from './PocketIdSetting.svelte';
10
11
  import KanidmSetting from './KanidmSetting.svelte';
11
12
  import ZitadelSetting from './ZitadelSetting.svelte';
12
13
  import NextcloudSetting from './NextcloudSetting.svelte';
@@ -223,11 +224,12 @@ function generateOAuthDropdownItems() {
223
224
  <KeycloakSetting bind:value={oauths['keycloak']} />
224
225
  <AuthentikSetting bind:value={oauths['authentik']} />
225
226
  <AutheliaSetting bind:value={oauths['authelia']} />
227
+ <PocketIdSetting bind:value={oauths['pocketid']} />
226
228
  <KanidmSetting bind:value={oauths['kanidm']} />
227
229
  <ZitadelSetting bind:value={oauths['zitadel']} />
228
230
  <NextcloudSetting bind:value={oauths['nextcloud']} {baseUrl} />
229
231
  {#each Object.keys(oauths) as k}
230
- {#if !['authelia', 'authentik', 'google', 'microsoft', 'github', 'gitlab', 'jumpcloud', 'okta', 'auth0', 'keycloak', 'slack', 'kanidm', 'zitadel', 'nextcloud'].includes(k) && oauths[k] && 'login_config' in oauths[k]}
232
+ {#if !['authelia', 'authentik', 'google', 'microsoft', 'github', 'gitlab', 'jumpcloud', 'okta', 'auth0', 'keycloak', 'slack', 'kanidm', 'zitadel', 'nextcloud', 'pocketid'].includes(k) && oauths[k] && 'login_config' in oauths[k]}
231
233
  {#if oauths[k]}
232
234
  <div class="flex flex-col gap-2 pb-4">
233
235
  <div class="flex flex-row items-center gap-2">
@@ -0,0 +1,241 @@
1
+ <script lang="ts">import { JobService } from '../gen';
2
+ import { workspaceStore } from '../stores';
3
+ import { tryEvery } from '../utils';
4
+ import { Check, LoaderCircle, Server, X, Cpu } from 'lucide-svelte';
5
+ import Button from './common/button/Button.svelte';
6
+ let apiStatus = $state('idle');
7
+ let apiResult = $state(null);
8
+ let workerStatus = $state('idle');
9
+ let workerResult = $state(null);
10
+ let isChecking = $state(false);
11
+ async function checkApiCredentials() {
12
+ apiStatus = 'loading';
13
+ apiResult = null;
14
+ try {
15
+ const response = await fetch(`/api/w/${$workspaceStore}/ai/check_bedrock_credentials`);
16
+ if (!response.ok) {
17
+ throw new Error(`HTTP error: ${response.status}`);
18
+ }
19
+ apiResult = await response.json();
20
+ apiStatus = apiResult?.available ? 'success' : 'error';
21
+ }
22
+ catch (err) {
23
+ apiResult = {
24
+ available: false,
25
+ error: err instanceof Error ? err.message : 'Unknown error'
26
+ };
27
+ apiStatus = 'error';
28
+ }
29
+ }
30
+ async function checkWorkerCredentials() {
31
+ workerStatus = 'loading';
32
+ workerResult = null;
33
+ try {
34
+ // Create minimal flow with AI agent dry_run step
35
+ const flowValue = {
36
+ modules: [
37
+ {
38
+ id: 'a',
39
+ value: {
40
+ type: 'aiagent',
41
+ input_transforms: {
42
+ provider: {
43
+ type: 'static',
44
+ value: {
45
+ kind: 'aws_bedrock',
46
+ resource: {
47
+ api_key: 'dry_run_placeholder',
48
+ region: 'us-east-1'
49
+ },
50
+ model: 'dry_run_placeholder'
51
+ }
52
+ },
53
+ user_message: { type: 'static', value: 'dry_run_placeholder' },
54
+ output_type: { type: 'static', value: 'text' },
55
+ credentials_check: { type: 'static', value: true }
56
+ },
57
+ tools: []
58
+ }
59
+ }
60
+ ]
61
+ };
62
+ const job = await JobService.runFlowPreview({
63
+ workspace: $workspaceStore,
64
+ requestBody: {
65
+ value: flowValue,
66
+ args: {}
67
+ }
68
+ });
69
+ tryEvery({
70
+ tryCode: async () => {
71
+ const testResult = await JobService.getCompletedJob({
72
+ workspace: $workspaceStore,
73
+ id: job
74
+ });
75
+ if (testResult.success && testResult.result) {
76
+ const result = testResult.result;
77
+ if (result?.credentials_check && result?.credentials) {
78
+ workerResult = {
79
+ ...result.credentials,
80
+ source: 'worker_process',
81
+ worker: testResult.worker ?? undefined
82
+ };
83
+ workerStatus = workerResult.available ? 'success' : 'error';
84
+ }
85
+ else {
86
+ workerResult = {
87
+ available: false,
88
+ error: 'Unexpected response format',
89
+ worker: testResult.worker ?? undefined
90
+ };
91
+ workerStatus = 'error';
92
+ }
93
+ }
94
+ else {
95
+ workerResult = {
96
+ available: false,
97
+ error: testResult.result?.['error']?.['message'] ?? 'Job failed',
98
+ worker: testResult.worker ?? undefined
99
+ };
100
+ workerStatus = 'error';
101
+ }
102
+ },
103
+ timeoutCode: async () => {
104
+ workerResult = {
105
+ available: false,
106
+ error: 'Timeout: job did not complete within 10s'
107
+ };
108
+ workerStatus = 'error';
109
+ try {
110
+ await JobService.cancelQueuedJob({
111
+ workspace: $workspaceStore,
112
+ id: job,
113
+ requestBody: {
114
+ reason: 'Timeout checking Bedrock credentials'
115
+ }
116
+ });
117
+ }
118
+ catch (err) {
119
+ console.error(err);
120
+ }
121
+ },
122
+ interval: 500,
123
+ timeout: 10000
124
+ });
125
+ }
126
+ catch (err) {
127
+ workerResult = {
128
+ available: false,
129
+ error: err instanceof Error ? err.message : 'Unknown error'
130
+ };
131
+ workerStatus = 'error';
132
+ }
133
+ }
134
+ async function checkBoth() {
135
+ if (isChecking)
136
+ return;
137
+ isChecking = true;
138
+ try {
139
+ await Promise.all([checkApiCredentials(), checkWorkerCredentials()]);
140
+ }
141
+ finally {
142
+ isChecking = false;
143
+ }
144
+ }
145
+ </script>
146
+
147
+ <div class="flex flex-col gap-3 p-3 border rounded-md bg-surface-secondary">
148
+ <div class="flex items-center justify-between">
149
+ <h4 class="text-sm font-semibold">AWS Environment Credentials Check</h4>
150
+ <Button size="xs" variant="border" on:click={checkBoth} disabled={isChecking}>
151
+ {#if isChecking}
152
+ <LoaderCircle class="animate-spin mr-1.5 h-3.5 w-3.5" />
153
+ {/if}
154
+ Check Credentials
155
+ </Button>
156
+ </div>
157
+
158
+ <p class="text-xs text-secondary">
159
+ Check if AWS credentials are available from the environment. If available, you do not need to
160
+ configure credentials manually.
161
+ </p>
162
+
163
+ <div class="grid grid-cols-2 gap-3">
164
+ <!-- API Server Check -->
165
+ <div class="flex flex-col gap-1.5 p-2 border rounded bg-surface">
166
+ <div class="flex items-center gap-1.5 text-xs font-medium">
167
+ <Server class="h-3.5 w-3.5" />
168
+ <span>API Server</span>
169
+ {#if apiStatus === 'loading'}
170
+ <LoaderCircle class="animate-spin h-3.5 w-3.5 ml-auto text-blue-500" />
171
+ {:else if apiStatus === 'success'}
172
+ <Check class="h-3.5 w-3.5 ml-auto text-green-500" />
173
+ {:else if apiStatus === 'error'}
174
+ <X class="h-3.5 w-3.5 ml-auto text-red-500" />
175
+ {/if}
176
+ </div>
177
+
178
+ {#if apiResult}
179
+ <div class="text-xs">
180
+ {#if apiResult.available}
181
+ <div class="text-green-600 dark:text-green-400">
182
+ Available: {apiResult.access_key_id_prefix}
183
+ </div>
184
+ {#if apiResult.region}
185
+ <div class="text-secondary">Region: {apiResult.region}</div>
186
+ {/if}
187
+ {:else}
188
+ <div class="text-red-600 dark:text-red-400 break-words">
189
+ {apiResult.error ?? 'Not available'}
190
+ </div>
191
+ {/if}
192
+ </div>
193
+ {:else if apiStatus === 'idle'}
194
+ <div class="text-xs text-tertiary">Click "Check Credentials" to test</div>
195
+ {/if}
196
+ </div>
197
+
198
+ <!-- Worker Check -->
199
+ <div class="flex flex-col gap-1.5 p-2 border rounded bg-surface">
200
+ <div class="flex items-center gap-1.5 text-xs font-medium">
201
+ <Cpu class="h-3.5 w-3.5" />
202
+ <span>Worker</span>
203
+ {#if workerStatus === 'loading'}
204
+ <LoaderCircle class="animate-spin h-3.5 w-3.5 ml-auto text-blue-500" />
205
+ {:else if workerStatus === 'success'}
206
+ <Check class="h-3.5 w-3.5 ml-auto text-green-500" />
207
+ {:else if workerStatus === 'error'}
208
+ <X class="h-3.5 w-3.5 ml-auto text-red-500" />
209
+ {/if}
210
+ </div>
211
+
212
+ {#if workerResult}
213
+ <div class="text-xs">
214
+ {#if workerResult.available}
215
+ <div class="text-green-600 dark:text-green-400">
216
+ Available: {workerResult.access_key_id_prefix}
217
+ </div>
218
+ {#if workerResult.region}
219
+ <div class="text-secondary">Region: {workerResult.region}</div>
220
+ {/if}
221
+ {#if workerResult.source}
222
+ <div class="text-secondary">Source: {workerResult.source}</div>
223
+ {/if}
224
+ {#if workerResult.worker}
225
+ <div class="text-secondary">Worker: {workerResult.worker}</div>
226
+ {/if}
227
+ {:else}
228
+ <div class="text-red-600 dark:text-red-400 break-words">
229
+ {workerResult.error ?? 'Not available'}
230
+ </div>
231
+ {#if workerResult.worker}
232
+ <div class="text-secondary">Worker: {workerResult.worker}</div>
233
+ {/if}
234
+ {/if}
235
+ </div>
236
+ {:else if workerStatus === 'idle'}
237
+ <div class="text-xs text-tertiary">Click "Check Credentials" to test</div>
238
+ {/if}
239
+ </div>
240
+ </div>
241
+ </div>
@@ -0,0 +1,3 @@
1
+ declare const BedrockCredentialsCheck: import("svelte").Component<Record<string, never>, {}, "">;
2
+ type BedrockCredentialsCheck = ReturnType<typeof BedrockCredentialsCheck>;
3
+ export default BedrockCredentialsCheck;
@@ -1,42 +1,50 @@
1
1
  <script lang="ts">import { setLicense } from '../enterpriseUtils';
2
2
  import { enterpriseLicense, whitelabelNameStore } from '../stores';
3
+ import { twMerge } from 'tailwind-merge';
3
4
  import WindmillIcon from './icons/WindmillIcon.svelte';
4
5
  import LoginPageHeader from './LoginPageHeader.svelte';
5
- export let subtitle = undefined;
6
- export let title = 'Windmill';
7
- export let disableLogo = false;
8
- export let large = false;
6
+ let { subtitle = undefined, title = 'Windmill', disableLogo = false, large = false, centerVertically = true, loading = false, children } = $props();
9
7
  setLicense();
8
+ let height = $state(0);
10
9
  </script>
11
10
 
12
- <div class="center-center min-h-screen p-4 relative bg-surface-secondary">
13
- <div class="flex flex-col gap-2 items-center w-full">
11
+ <div
12
+ class="flex justify-center h-screen p-4 relative bg-surface-secondary overflow-auto"
13
+ class:items-center={centerVertically}
14
+ style="scrollbar-gutter: stable both-edges;"
15
+ bind:clientHeight={height}
16
+ >
17
+ <div class={twMerge("flex flex-col gap-2 items-center w-full pb-8 h-fit", height > 1080 ? 'pt-28' : 'pt-12')} >
14
18
  {#if (!disableLogo && !$enterpriseLicense) || !$whitelabelNameStore}
15
19
  <div class="hidden lg:block">
16
20
  <div>
17
- <WindmillIcon height="100px" width="100px" spin="slow" />
21
+ <WindmillIcon size={centerVertically ? 64 : 48} spin={loading ? 'fast' : 'slow'} />
18
22
  </div>
19
- <h2 class="text-center py-2 text-primary">Windmill</h2>
20
23
  </div>
24
+ {:else}
25
+ <div class="pt-8"></div>
21
26
  {/if}
22
27
 
23
- <div
24
- class="rounded-md bg-surface w-full {large
25
- ? 'max-w-5xl'
26
- : 'max-w-[640px]'} p-4 sm:py-8 sm:px-10 mb-6 md:mb-20 z-10"
27
- >
28
- <div class="mb-10">
29
- <h1 class="text-center text-lg text-emphasis font-semibold">
30
- {title}
31
- </h1>
32
- {#if subtitle}
33
- <p class="text-sm font-semibold text-emphasis text-center mt-2">
34
- {subtitle}
35
- </p>
36
- {/if}
37
- </div>
38
- <slot />
28
+ <div class="mb-4">
29
+ <h1 class="text-center text-lg text-emphasis font-semibold">
30
+ {title}
31
+ </h1>
32
+ {#if subtitle}
33
+ <p class="text-xs font-normal text-primary text-center mt-2">
34
+ {subtitle}
35
+ </p>
36
+ {/if}
39
37
  </div>
38
+
39
+ {#if children}
40
+ <div
41
+ class="rounded-md bg-surface w-full {large
42
+ ? 'max-w-5xl'
43
+ : 'max-w-[640px]'} p-4 sm:py-8 sm:px-10 z-10"
44
+ >
45
+ {@render children()}
46
+ </div>
47
+ {/if}
40
48
  </div>
41
49
 
42
50
  <LoginPageHeader />
@@ -1,32 +1,12 @@
1
- interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
2
- new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
3
- $$bindings?: Bindings;
4
- } & Exports;
5
- (internal: unknown, props: Props & {
6
- $$events?: Events;
7
- $$slots?: Slots;
8
- }): Exports & {
9
- $set?: any;
10
- $on?: any;
11
- };
12
- z_$$bindings?: Bindings;
13
- }
14
- type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
15
- default: any;
16
- } ? Props extends Record<string, never> ? any : {
17
- children?: any;
18
- } : {});
19
- declare const CenteredModal: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<{
1
+ interface Props {
20
2
  subtitle?: string | undefined;
21
3
  title?: string;
22
4
  disableLogo?: boolean;
23
5
  large?: boolean;
24
- }, {
25
- default: {};
26
- }>, {
27
- [evt: string]: CustomEvent<any>;
28
- }, {
29
- default: {};
30
- }, {}, string>;
31
- type CenteredModal = InstanceType<typeof CenteredModal>;
6
+ centerVertically?: boolean;
7
+ loading?: boolean;
8
+ children?: import('svelte').Snippet;
9
+ }
10
+ declare const CenteredModal: import("svelte").Component<Props, {}, "">;
11
+ type CenteredModal = ReturnType<typeof CenteredModal>;
32
12
  export default CenteredModal;
@@ -1,9 +1,13 @@
1
1
  <script lang="ts">import { twMerge } from 'tailwind-merge';
2
- let { class: clazz = '', children } = $props();
2
+ let { class: clazz = '', id, children, wrapperClasses = '', handleOverflow = true } = $props();
3
3
  let width = $state(0);
4
4
  </script>
5
5
 
6
- <div class="pb-8">
6
+ <div
7
+ class={twMerge('pb-8', wrapperClasses, handleOverflow ? 'h-full overflow-y-auto' : '')}
8
+ style={handleOverflow ? 'scrollbar-gutter: stable both-edges;' : ''}
9
+ {id}
10
+ >
7
11
  <div class={twMerge('max-w-7xl mx-auto px-4 sm:px-6 md:px-8', clazz)} bind:clientWidth={width}
8
12
  >{@render children?.({ width })}</div
9
13
  >
@@ -1,8 +1,11 @@
1
1
  interface Props {
2
2
  class?: string;
3
+ id?: string;
3
4
  children?: import('svelte').Snippet<[{
4
5
  width: number;
5
6
  }]>;
7
+ wrapperClasses?: string;
8
+ handleOverflow?: boolean;
6
9
  }
7
10
  declare const CenteredPage: import("svelte").Component<Props, {}, "">;
8
11
  type CenteredPage = ReturnType<typeof CenteredPage>;