windmill-components 1.655.1 → 1.665.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (653) hide show
  1. package/package/components/ApiConnectForm.svelte +6 -6
  2. package/package/components/ApiConnectForm.svelte.d.ts +3 -2
  3. package/package/components/AppConnectDrawer.svelte +3 -1
  4. package/package/components/AppConnectDrawer.svelte.d.ts +2 -0
  5. package/package/components/AppConnectInner.svelte +137 -72
  6. package/package/components/AppConnectInner.svelte.d.ts +1 -0
  7. package/package/components/CompareWorkspaces.svelte +32 -24
  8. package/package/components/DBManager.svelte +7 -13
  9. package/package/components/DBTable.svelte +2 -2
  10. package/package/components/DBTableEditor.svelte +39 -31
  11. package/package/components/DBTableEditor.svelte.d.ts +2 -2
  12. package/package/components/DedicatedWorkersSelector.svelte +292 -85
  13. package/package/components/DeployWorkspace.svelte +30 -26
  14. package/package/components/Dev.svelte +7 -2
  15. package/package/components/Dev.svelte.d.ts +3 -0
  16. package/package/components/Editor.svelte +17 -13
  17. package/package/components/EditorBar.svelte.d.ts +1 -1
  18. package/package/components/FilterSearchbar.svelte +1 -1
  19. package/package/components/FirstStepInputs.svelte +0 -1
  20. package/package/components/FlowBuilder.svelte +5 -0
  21. package/package/components/FlowGraphDiffViewer.svelte +3 -0
  22. package/package/components/FlowGraphViewer.svelte +7 -4
  23. package/package/components/FlowGraphViewer.svelte.d.ts +1 -0
  24. package/package/components/FlowGraphViewerStep.svelte +3 -3
  25. package/package/components/FlowGraphViewerStep.svelte.d.ts +1 -0
  26. package/package/components/FlowPreviewContent.svelte +11 -1
  27. package/package/components/FlowStatusViewer.svelte +4 -1
  28. package/package/components/FlowStatusViewer.svelte.d.ts +3 -1
  29. package/package/components/FlowStatusViewerInner.svelte +46 -11
  30. package/package/components/FlowStatusViewerInner.svelte.d.ts +4 -1
  31. package/package/components/FlowStatusWaitingForEvents.svelte +48 -103
  32. package/package/components/FlowTimeline.svelte +76 -84
  33. package/package/components/FlowViewer.svelte +40 -22
  34. package/package/components/FlowViewer.svelte.d.ts +8 -2
  35. package/package/components/GroupEditor.svelte +7 -9
  36. package/package/components/HistoricList.svelte +12 -4
  37. package/package/components/InstanceGroupEditor.svelte +92 -19
  38. package/package/components/InstanceSetting.svelte +16 -6
  39. package/package/components/InstanceSettings.svelte +51 -7
  40. package/package/components/InstanceSettings.svelte.d.ts +2 -1
  41. package/package/components/JobLoader.svelte +5 -4
  42. package/package/components/JobLoader.svelte.d.ts +1 -1
  43. package/package/components/Login.svelte +9 -1
  44. package/package/components/NoMainFuncBadge.svelte +2 -2
  45. package/package/components/OnBehalfOfSelector.svelte +49 -37
  46. package/package/components/OnBehalfOfSelector.svelte.d.ts +16 -6
  47. package/package/components/ResourceEditor.svelte +16 -11
  48. package/package/components/ResourceEditor.svelte.d.ts +1 -0
  49. package/package/components/ResourceEditorDrawer.svelte +3 -1
  50. package/package/components/ResourceEditorDrawer.svelte.d.ts +6 -2
  51. package/package/components/ResourcePicker.svelte +10 -5
  52. package/package/components/ResourcePicker.svelte.d.ts +2 -0
  53. package/package/components/S3FilePickerInner.svelte +12 -4
  54. package/package/components/SchemaForm.svelte +20 -14
  55. package/package/components/SchemaForm.svelte.d.ts +2 -2
  56. package/package/components/ScriptBuilder.svelte +158 -18
  57. package/package/components/ScriptEditor.svelte +674 -150
  58. package/package/components/ScriptEditor.svelte.d.ts +7 -3
  59. package/package/components/SuperadminSettings.svelte +4 -1
  60. package/package/components/SuperadminSettingsInner.svelte +176 -67
  61. package/package/components/SuperadminSettingsInner.svelte.d.ts +3 -1
  62. package/package/components/SyncResourceTypes.svelte +31 -0
  63. package/package/components/SyncResourceTypes.svelte.d.ts +6 -0
  64. package/package/components/TimelineBar.svelte +14 -8
  65. package/package/components/TimelineBar.svelte.d.ts +1 -0
  66. package/package/components/WorkerGroup.svelte +11 -4
  67. package/package/components/WorkflowTimeline.svelte +386 -58
  68. package/package/components/WorkflowTimeline.svelte.d.ts +6 -1
  69. package/package/components/WorkspaceDependenciesEditor.svelte +32 -2
  70. package/package/components/apps/components/display/dbtable/DeleteRow.svelte +2 -2
  71. package/package/components/apps/components/display/dbtable/InsertRowRunnable.svelte +2 -2
  72. package/package/components/apps/components/display/dbtable/UpdateCell.svelte +2 -2
  73. package/package/components/apps/components/display/dbtable/metadata.js +44 -222
  74. package/package/components/apps/components/display/dbtable/queries/count.d.ts +9 -0
  75. package/package/components/apps/components/display/dbtable/queries/delete.d.ts +9 -0
  76. package/package/components/apps/components/display/dbtable/queries/insert.d.ts +9 -0
  77. package/package/components/apps/components/display/dbtable/queries/relationalKeys.d.ts +7 -0
  78. package/package/components/apps/components/display/dbtable/queries/relationalKeys.js +1 -1
  79. package/package/components/apps/components/display/dbtable/queries/select.d.ts +9 -0
  80. package/package/components/apps/components/display/dbtable/queries/update.d.ts +9 -0
  81. package/package/components/apps/editor/AppEditorHeaderDeploy.svelte +11 -9
  82. package/package/components/apps/editor/appUtilsS3.js +2 -2
  83. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanel.svelte +53 -10
  84. package/package/components/common/clearableInput/ClearableInput.svelte +3 -7
  85. package/package/components/common/confirmationModal/ConfirmationModal.svelte +7 -1
  86. package/package/components/common/confirmationModal/ConfirmationModal.svelte.d.ts +1 -0
  87. package/package/components/common/drawer/Disposable.svelte +24 -2
  88. package/package/components/common/drawer/Disposable.svelte.d.ts +5 -0
  89. package/package/components/common/modal/Modal.svelte +84 -58
  90. package/package/components/common/table/AppRow.svelte.d.ts +1 -1
  91. package/package/components/common/table/FlowRow.svelte.d.ts +1 -1
  92. package/package/components/common/table/ScriptRow.svelte +31 -3
  93. package/package/components/common/table/ScriptRow.svelte.d.ts +1 -1
  94. package/package/components/copilot/MetadataGen.svelte +8 -5
  95. package/package/components/copilot/MetadataGen.svelte.d.ts +1 -0
  96. package/package/components/copilot/TestAIKey.svelte +2 -1
  97. package/package/components/copilot/TestAIKey.svelte.d.ts +1 -0
  98. package/package/components/copilot/chat/AIChatManager.svelte.js +62 -80
  99. package/package/components/copilot/chat/HistoryManager.svelte.d.ts +1 -0
  100. package/package/components/copilot/chat/HistoryManager.svelte.js +3 -0
  101. package/package/components/copilot/chat/__tests__/app/appChat.eval.test.js +47 -31
  102. package/package/components/copilot/chat/__tests__/app/appEvalComparison.d.ts +1 -6
  103. package/package/components/copilot/chat/__tests__/app/appEvalComparison.js +18 -13
  104. package/package/components/copilot/chat/__tests__/app/appEvalRunner.d.ts +14 -5
  105. package/package/components/copilot/chat/__tests__/app/appEvalRunner.js +13 -12
  106. package/package/components/copilot/chat/__tests__/flow/flowChat.eval.test.js +46 -29
  107. package/package/components/copilot/chat/__tests__/flow/flowEvalComparison.js +1 -4
  108. package/package/components/copilot/chat/__tests__/flow/flowEvalRunner.d.ts +14 -5
  109. package/package/components/copilot/chat/__tests__/flow/flowEvalRunner.js +13 -12
  110. package/package/components/copilot/chat/__tests__/shared/baseEvalRunner.d.ts +5 -8
  111. package/package/components/copilot/chat/__tests__/shared/baseEvalRunner.js +82 -108
  112. package/package/components/copilot/chat/__tests__/shared/baseLLMEvaluator.d.ts +4 -7
  113. package/package/components/copilot/chat/__tests__/shared/baseLLMEvaluator.js +19 -11
  114. package/package/components/copilot/chat/__tests__/shared/types.d.ts +3 -0
  115. package/package/components/copilot/chat/anthropic.d.ts +9 -2
  116. package/package/components/copilot/chat/anthropic.js +12 -6
  117. package/package/components/copilot/chat/app/core.js +5 -12
  118. package/package/components/copilot/chat/chatLoop.d.ts +40 -0
  119. package/package/components/copilot/chat/chatLoop.js +97 -0
  120. package/package/components/copilot/chat/openai-responses.d.ts +8 -2
  121. package/package/components/copilot/chat/openai-responses.js +17 -17
  122. package/package/components/copilot/chat/shared.d.ts +2 -1
  123. package/package/components/copilot/chat/shared.js +2 -2
  124. package/package/components/copilot/lib.d.ts +14 -5
  125. package/package/components/copilot/lib.js +68 -48
  126. package/package/components/custom_ui.d.ts +1 -0
  127. package/package/components/dbOps.d.ts +2 -2
  128. package/package/components/dbOps.js +129 -53
  129. package/package/components/debug/debugUtils.d.ts +5 -0
  130. package/package/components/debug/debugUtils.js +20 -0
  131. package/package/components/debug/index.d.ts +1 -1
  132. package/package/components/debug/index.js +3 -7
  133. package/package/components/flows/CreateActionsFlow.svelte +221 -43
  134. package/package/components/flows/DebounceLimit.svelte +42 -9
  135. package/package/components/flows/common/FlowCard.svelte +2 -1
  136. package/package/components/flows/common/FlowCard.svelte.d.ts +1 -0
  137. package/package/components/flows/common/FlowCardHeader.svelte +14 -10
  138. package/package/components/flows/common/FlowCardHeader.svelte.d.ts +1 -0
  139. package/package/components/flows/content/AgentToolWrapper.svelte +2 -1
  140. package/package/components/flows/content/AgentToolWrapper.svelte.d.ts +1 -0
  141. package/package/components/flows/content/FlowEditorPanel.svelte +1 -0
  142. package/package/components/flows/content/FlowInputs.svelte +1 -1
  143. package/package/components/flows/content/FlowInputsQuick.svelte +1 -1
  144. package/package/components/flows/content/FlowModuleComponent.svelte +32 -18
  145. package/package/components/flows/content/FlowModuleComponent.svelte.d.ts +1 -0
  146. package/package/components/flows/content/FlowModuleDebounce.svelte +46 -0
  147. package/package/components/flows/content/FlowModuleDebounce.svelte.d.ts +8 -0
  148. package/package/components/flows/content/FlowModuleEarlyStop.svelte +26 -5
  149. package/package/components/flows/content/FlowModuleWrapper.svelte +1 -0
  150. package/package/components/flows/content/FlowRetries.svelte +57 -57
  151. package/package/components/flows/content/FlowSelectionPanel.svelte +9 -14
  152. package/package/components/flows/content/FlowSelectionPanel.svelte.d.ts +1 -0
  153. package/package/components/flows/content/FlowSettings.svelte +6 -6
  154. package/package/components/flows/content/ScriptEditorDrawer.svelte +1 -1
  155. package/package/components/flows/content/SuspendDrawer.svelte +0 -18
  156. package/package/components/flows/header/FlowYamlEditor.svelte +20 -4
  157. package/package/components/flows/map/FlowErrorHandlerItem.svelte +32 -14
  158. package/package/components/flows/map/FlowErrorHandlerItem.svelte.d.ts +1 -0
  159. package/package/components/flows/map/FlowModuleSchemaItem.svelte +7 -10
  160. package/package/components/flows/map/FlowModuleSchemaItemViewer.svelte +1 -8
  161. package/package/components/flows/map/FlowModuleSchemaItemViewer.svelte.d.ts +0 -2
  162. package/package/components/flows/map/FlowModuleSchemaMap.svelte +343 -137
  163. package/package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +1 -0
  164. package/package/components/flows/map/FlowStickyNode.svelte +24 -16
  165. package/package/components/flows/map/FlowStickyNode.svelte.d.ts +1 -0
  166. package/package/components/flows/map/InsertModuleInner.svelte +2 -0
  167. package/package/components/flows/map/VirtualItemWrapper.svelte +1 -1
  168. package/package/components/flows/pickers/PickHubScriptQuick.svelte.d.ts +1 -1
  169. package/package/components/flows/propPicker/OutputPickerInner.svelte +5 -1
  170. package/package/components/flows/scheduleUtils.js +3 -1
  171. package/package/components/flows/utils.svelte.js +6 -1
  172. package/package/components/git_sync/GitSyncContext.svelte.js +13 -2
  173. package/package/components/git_sync/GitSyncSection.svelte +135 -99
  174. package/package/components/graph/DragGhost.svelte +11 -2
  175. package/package/components/graph/FlowGraphV2.svelte +138 -42
  176. package/package/components/graph/FlowGraphV2.svelte.d.ts +15 -1
  177. package/package/components/graph/GroupActionBar.svelte +124 -0
  178. package/package/components/graph/GroupActionBar.svelte.d.ts +20 -0
  179. package/package/components/graph/GroupHeader.svelte +98 -0
  180. package/package/components/graph/GroupHeader.svelte.d.ts +11 -0
  181. package/package/components/graph/GroupHeaderBlock.svelte +58 -0
  182. package/package/components/graph/GroupHeaderBlock.svelte.d.ts +13 -0
  183. package/package/components/graph/GroupModuleIcons.svelte +163 -0
  184. package/package/components/graph/GroupModuleIcons.svelte.d.ts +11 -0
  185. package/package/components/graph/GroupNodeCard.svelte +127 -0
  186. package/package/components/graph/GroupNodeCard.svelte.d.ts +18 -0
  187. package/package/components/graph/GroupNoteArea.svelte +132 -0
  188. package/package/components/graph/GroupNoteArea.svelte.d.ts +11 -0
  189. package/package/components/graph/GroupOverlay.svelte +71 -0
  190. package/package/components/graph/GroupOverlay.svelte.d.ts +12 -0
  191. package/package/components/graph/MiniFlowGraph.svelte +17 -2
  192. package/package/components/graph/SelectionBoundingBox.svelte +14 -14
  193. package/package/components/graph/compoundLayout.d.ts +17 -1
  194. package/package/components/graph/compoundLayout.js +129 -14
  195. package/package/components/graph/flowStructure.d.ts +63 -0
  196. package/package/components/graph/flowStructure.js +422 -0
  197. package/package/components/graph/flowStructure.test.d.ts +1 -0
  198. package/package/components/graph/flowStructure.test.js +205 -0
  199. package/package/components/graph/graphBuilder.svelte.d.ts +52 -3
  200. package/package/components/graph/graphBuilder.svelte.js +170 -67
  201. package/package/components/graph/graphContext.d.ts +7 -0
  202. package/package/components/graph/groupDetectionUtils.d.ts +24 -1
  203. package/package/components/graph/groupDetectionUtils.js +101 -1
  204. package/package/components/graph/groupEditor.svelte.d.ts +105 -0
  205. package/package/components/graph/groupEditor.svelte.js +253 -0
  206. package/package/components/graph/groupedModulesProxy.svelte.d.ts +55 -0
  207. package/package/components/graph/groupedModulesProxy.svelte.js +130 -0
  208. package/package/components/graph/model.d.ts +2 -1
  209. package/package/components/graph/moveManager.svelte.js +0 -3
  210. package/package/components/graph/nodeExtraSpace.d.ts +32 -0
  211. package/package/components/graph/nodeExtraSpace.js +113 -0
  212. package/package/components/graph/noteColors.d.ts +1 -0
  213. package/package/components/graph/noteColors.js +20 -10
  214. package/package/components/graph/noteUtils.svelte.d.ts +0 -18
  215. package/package/components/graph/noteUtils.svelte.js +6 -41
  216. package/package/components/graph/renderers/edges/BaseEdge.svelte +26 -11
  217. package/package/components/graph/renderers/nodes/AIToolNode.svelte +24 -49
  218. package/package/components/graph/renderers/nodes/AIToolNode.svelte.d.ts +1 -4
  219. package/package/components/graph/renderers/nodes/AssetNode.svelte +1 -27
  220. package/package/components/graph/renderers/nodes/AssetNode.svelte.d.ts +0 -4
  221. package/package/components/graph/renderers/nodes/CollapsedGroupNode.svelte +85 -0
  222. package/package/components/graph/renderers/nodes/CollapsedGroupNode.svelte.d.ts +8 -0
  223. package/package/components/graph/renderers/nodes/ForLoopStartNode.svelte +3 -2
  224. package/package/components/graph/renderers/nodes/GroupEndNode.svelte +9 -0
  225. package/package/components/graph/renderers/nodes/GroupEndNode.svelte.d.ts +6 -0
  226. package/package/components/graph/renderers/nodes/GroupHeadNode.svelte +20 -0
  227. package/package/components/graph/renderers/nodes/GroupHeadNode.svelte.d.ts +8 -0
  228. package/package/components/graph/renderers/nodes/ModuleNode.svelte +8 -5
  229. package/package/components/graph/renderers/triggers/TriggersWrapper.svelte +1 -1
  230. package/package/components/graph/util.d.ts +5 -1
  231. package/package/components/graph/util.js +7 -5
  232. package/package/components/home/Item.svelte +1 -0
  233. package/package/components/home/ItemsList.svelte +1 -1
  234. package/package/components/icons/ActiveCampaignIcon.svelte +10 -0
  235. package/package/components/icons/ActiveCampaignIcon.svelte.d.ts +7 -0
  236. package/package/components/icons/AlgoliaIcon.svelte +7 -0
  237. package/package/components/icons/AlgoliaIcon.svelte.d.ts +7 -0
  238. package/package/components/icons/ApolloIcon.svelte +7 -0
  239. package/package/components/icons/ApolloIcon.svelte.d.ts +7 -0
  240. package/package/components/icons/BambooHrIcon.svelte +7 -0
  241. package/package/components/icons/BambooHrIcon.svelte.d.ts +7 -0
  242. package/package/components/icons/BaremetricsIcon.svelte +7 -0
  243. package/package/components/icons/BaremetricsIcon.svelte.d.ts +7 -0
  244. package/package/components/icons/BitlyIcon.svelte +7 -0
  245. package/package/components/icons/BitlyIcon.svelte.d.ts +7 -0
  246. package/package/components/icons/BloggerIcon.svelte +7 -0
  247. package/package/components/icons/BloggerIcon.svelte.d.ts +7 -0
  248. package/package/components/icons/BlueskyIcon.svelte +7 -0
  249. package/package/components/icons/BlueskyIcon.svelte.d.ts +7 -0
  250. package/package/components/icons/BoxIcon.svelte +7 -0
  251. package/package/components/icons/BoxIcon.svelte.d.ts +7 -0
  252. package/package/components/icons/BrevoIcon.svelte +7 -0
  253. package/package/components/icons/BrevoIcon.svelte.d.ts +7 -0
  254. package/package/components/icons/BrexIcon.svelte +7 -0
  255. package/package/components/icons/BrexIcon.svelte.d.ts +7 -0
  256. package/package/components/icons/BrowserlessIcon.svelte +7 -0
  257. package/package/components/icons/BrowserlessIcon.svelte.d.ts +7 -0
  258. package/package/components/icons/BubbleIcon.svelte +11 -0
  259. package/package/components/icons/BubbleIcon.svelte.d.ts +7 -0
  260. package/package/components/icons/BuildkiteIcon.svelte +7 -0
  261. package/package/components/icons/BuildkiteIcon.svelte.d.ts +7 -0
  262. package/package/components/icons/CalcomIcon.svelte +1 -1
  263. package/package/components/icons/CalendlyIcon.svelte +7 -0
  264. package/package/components/icons/CalendlyIcon.svelte.d.ts +7 -0
  265. package/package/components/icons/CircleCiIcon.svelte +7 -0
  266. package/package/components/icons/CircleCiIcon.svelte.d.ts +7 -0
  267. package/package/components/icons/CiscoIcon.svelte +7 -0
  268. package/package/components/icons/CiscoIcon.svelte.d.ts +7 -0
  269. package/package/components/icons/ClearbitIcon.svelte +7 -0
  270. package/package/components/icons/ClearbitIcon.svelte.d.ts +7 -0
  271. package/package/components/icons/ClerkIcon.svelte +7 -0
  272. package/package/components/icons/ClerkIcon.svelte.d.ts +7 -0
  273. package/package/components/icons/CloseIcon.svelte +37 -0
  274. package/package/components/icons/CloseIcon.svelte.d.ts +7 -0
  275. package/package/components/icons/CloudinaryIcon.svelte +7 -0
  276. package/package/components/icons/CloudinaryIcon.svelte.d.ts +7 -0
  277. package/package/components/icons/CockroachDbIcon.svelte +7 -0
  278. package/package/components/icons/CockroachDbIcon.svelte.d.ts +7 -0
  279. package/package/components/icons/CodaIcon.svelte +7 -0
  280. package/package/components/icons/CodaIcon.svelte.d.ts +7 -0
  281. package/package/components/icons/CohereIcon.svelte +16 -0
  282. package/package/components/icons/CohereIcon.svelte.d.ts +7 -0
  283. package/package/components/icons/CoinMarketCapIcon.svelte +7 -0
  284. package/package/components/icons/CoinMarketCapIcon.svelte.d.ts +7 -0
  285. package/package/components/icons/CoinbaseIcon.svelte +7 -0
  286. package/package/components/icons/CoinbaseIcon.svelte.d.ts +7 -0
  287. package/package/components/icons/ConfluenceIcon.svelte +7 -0
  288. package/package/components/icons/ConfluenceIcon.svelte.d.ts +7 -0
  289. package/package/components/icons/ContentfulIcon.svelte +7 -0
  290. package/package/components/icons/ContentfulIcon.svelte.d.ts +7 -0
  291. package/package/components/icons/ConvertKitIcon.svelte +7 -0
  292. package/package/components/icons/ConvertKitIcon.svelte.d.ts +7 -0
  293. package/package/components/icons/DatoCmsIcon.svelte +7 -0
  294. package/package/components/icons/DatoCmsIcon.svelte.d.ts +7 -0
  295. package/package/components/icons/DeelIcon.svelte +7 -0
  296. package/package/components/icons/DeelIcon.svelte.d.ts +7 -0
  297. package/package/components/icons/DeepLIcon.svelte +7 -0
  298. package/package/components/icons/DeepLIcon.svelte.d.ts +7 -0
  299. package/package/components/icons/DigitalOceanIcon.svelte +7 -0
  300. package/package/components/icons/DigitalOceanIcon.svelte.d.ts +7 -0
  301. package/package/components/icons/DiscourseIcon.svelte +7 -0
  302. package/package/components/icons/DiscourseIcon.svelte.d.ts +7 -0
  303. package/package/components/icons/DocusignIcon.svelte +7 -0
  304. package/package/components/icons/DocusignIcon.svelte.d.ts +7 -0
  305. package/package/components/icons/DropboxIcon.svelte +7 -0
  306. package/package/components/icons/DropboxIcon.svelte.d.ts +7 -0
  307. package/package/components/icons/EdgeDbIcon.svelte +16 -20
  308. package/package/components/icons/EventbriteIcon.svelte +10 -0
  309. package/package/components/icons/EventbriteIcon.svelte.d.ts +7 -0
  310. package/package/components/icons/FigmaIcon.svelte +7 -0
  311. package/package/components/icons/FigmaIcon.svelte.d.ts +7 -0
  312. package/package/components/icons/FlyIcon.svelte +7 -0
  313. package/package/components/icons/FlyIcon.svelte.d.ts +7 -0
  314. package/package/components/icons/FreshdeskIcon.svelte +7 -0
  315. package/package/components/icons/FreshdeskIcon.svelte.d.ts +7 -0
  316. package/package/components/icons/FrontAppIcon.svelte +7 -0
  317. package/package/components/icons/FrontAppIcon.svelte.d.ts +7 -0
  318. package/package/components/icons/GhostCmsIcon.svelte +7 -0
  319. package/package/components/icons/GhostCmsIcon.svelte.d.ts +7 -0
  320. package/package/components/icons/GiphyIcon.svelte +7 -0
  321. package/package/components/icons/GiphyIcon.svelte.d.ts +7 -0
  322. package/package/components/icons/GitBookIcon.svelte +7 -0
  323. package/package/components/icons/GitBookIcon.svelte.d.ts +7 -0
  324. package/package/components/icons/GroqIcon.svelte +7 -0
  325. package/package/components/icons/GroqIcon.svelte.d.ts +7 -0
  326. package/package/components/icons/HoneybadgerIcon.svelte +7 -0
  327. package/package/components/icons/HoneybadgerIcon.svelte.d.ts +7 -0
  328. package/package/components/icons/HttpIcon.svelte +1 -0
  329. package/package/components/icons/IftttIcon.svelte +7 -0
  330. package/package/components/icons/IftttIcon.svelte.d.ts +7 -0
  331. package/package/components/icons/IntercomIcon.svelte +7 -0
  332. package/package/components/icons/IntercomIcon.svelte.d.ts +7 -0
  333. package/package/components/icons/JoomlaIcon.svelte +7 -0
  334. package/package/components/icons/JoomlaIcon.svelte.d.ts +7 -0
  335. package/package/components/icons/LineIcon.svelte +7 -0
  336. package/package/components/icons/LineIcon.svelte.d.ts +7 -0
  337. package/package/components/icons/LinearIcon.svelte +7 -0
  338. package/package/components/icons/LinearIcon.svelte.d.ts +7 -0
  339. package/package/components/icons/LinodeIcon.svelte +7 -0
  340. package/package/components/icons/LinodeIcon.svelte.d.ts +7 -0
  341. package/package/components/icons/LumaAiIcon.svelte +39 -0
  342. package/package/components/icons/LumaAiIcon.svelte.d.ts +7 -0
  343. package/package/components/icons/MSTeamsIcon.svelte +20 -38
  344. package/package/components/icons/MSTeamsIcon.svelte.d.ts +2 -0
  345. package/package/components/icons/MagentoIcon.svelte +7 -0
  346. package/package/components/icons/MagentoIcon.svelte.d.ts +7 -0
  347. package/package/components/icons/MailchimpIcon.svelte +25 -13
  348. package/package/components/icons/MandrillIcon.svelte +7 -0
  349. package/package/components/icons/MandrillIcon.svelte.d.ts +7 -0
  350. package/package/components/icons/MauticIcon.svelte +7 -0
  351. package/package/components/icons/MauticIcon.svelte.d.ts +7 -0
  352. package/package/components/icons/MediumIcon.svelte +7 -0
  353. package/package/components/icons/MediumIcon.svelte.d.ts +7 -0
  354. package/package/components/icons/MiroIcon.svelte +7 -0
  355. package/package/components/icons/MiroIcon.svelte.d.ts +7 -0
  356. package/package/components/icons/MistralIcon.svelte +7 -0
  357. package/package/components/icons/MistralIcon.svelte.d.ts +7 -0
  358. package/package/components/icons/MixpanelIcon.svelte +7 -0
  359. package/package/components/icons/MixpanelIcon.svelte.d.ts +7 -0
  360. package/package/components/icons/MondayIcon.svelte +7 -0
  361. package/package/components/icons/MondayIcon.svelte.d.ts +7 -0
  362. package/package/components/icons/NeonDbIcon.svelte +23 -0
  363. package/package/components/icons/NeonDbIcon.svelte.d.ts +7 -0
  364. package/package/components/icons/NetlifyIcon.svelte +7 -0
  365. package/package/components/icons/NetlifyIcon.svelte.d.ts +7 -0
  366. package/package/components/icons/OneSignalIcon.svelte +9 -0
  367. package/package/components/icons/OneSignalIcon.svelte.d.ts +7 -0
  368. package/package/components/icons/OpenWeatherIcon.svelte +7 -0
  369. package/package/components/icons/OpenWeatherIcon.svelte.d.ts +7 -0
  370. package/package/components/icons/PagerDutyIcon.svelte +7 -0
  371. package/package/components/icons/PagerDutyIcon.svelte.d.ts +7 -0
  372. package/package/components/icons/PandaDocIcon.svelte +7 -0
  373. package/package/components/icons/PandaDocIcon.svelte.d.ts +7 -0
  374. package/package/components/icons/PaypalIcon.svelte +7 -0
  375. package/package/components/icons/PaypalIcon.svelte.d.ts +7 -0
  376. package/package/components/icons/PersonioIcon.svelte +7 -0
  377. package/package/components/icons/PersonioIcon.svelte.d.ts +7 -0
  378. package/package/components/icons/PinterestIcon.svelte +7 -0
  379. package/package/components/icons/PinterestIcon.svelte.d.ts +7 -0
  380. package/package/components/icons/PipedriveIcon.svelte +11 -0
  381. package/package/components/icons/PipedriveIcon.svelte.d.ts +7 -0
  382. package/package/components/icons/PlanetScaleIcon.svelte +7 -0
  383. package/package/components/icons/PlanetScaleIcon.svelte.d.ts +7 -0
  384. package/package/components/icons/PostmarkIcon.svelte +7 -0
  385. package/package/components/icons/PostmarkIcon.svelte.d.ts +7 -0
  386. package/package/components/icons/PusherIcon.svelte +7 -0
  387. package/package/components/icons/PusherIcon.svelte.d.ts +7 -0
  388. package/package/components/icons/QuickbooksIcon.svelte +13 -1
  389. package/package/components/icons/RaindropIcon.svelte +27 -0
  390. package/package/components/icons/RaindropIcon.svelte.d.ts +7 -0
  391. package/package/components/icons/ReadwiseIcon.svelte +12 -0
  392. package/package/components/icons/ReadwiseIcon.svelte.d.ts +7 -0
  393. package/package/components/icons/RenderIcon.svelte +7 -0
  394. package/package/components/icons/RenderIcon.svelte.d.ts +7 -0
  395. package/package/components/icons/ReplicateIcon.svelte +7 -0
  396. package/package/components/icons/ReplicateIcon.svelte.d.ts +7 -0
  397. package/package/components/icons/ResendIcon.svelte +1 -1
  398. package/package/components/icons/RestIcon.svelte +1 -0
  399. package/package/components/icons/RingCentralIcon.svelte +7 -0
  400. package/package/components/icons/RingCentralIcon.svelte.d.ts +7 -0
  401. package/package/components/icons/RocketChatIcon.svelte +7 -0
  402. package/package/components/icons/RocketChatIcon.svelte.d.ts +7 -0
  403. package/package/components/icons/RunPodIcon.svelte +8 -0
  404. package/package/components/icons/RunPodIcon.svelte.d.ts +7 -0
  405. package/package/components/icons/RustIcon.svelte +74 -56
  406. package/package/components/icons/SalesforceIcon.svelte +7 -0
  407. package/package/components/icons/SalesforceIcon.svelte.d.ts +7 -0
  408. package/package/components/icons/SegmentIcon.svelte +7 -0
  409. package/package/components/icons/SegmentIcon.svelte.d.ts +7 -0
  410. package/package/components/icons/SentryIcon.svelte +7 -0
  411. package/package/components/icons/SentryIcon.svelte.d.ts +7 -0
  412. package/package/components/icons/ServiceNowIcon.svelte +7 -0
  413. package/package/components/icons/ServiceNowIcon.svelte.d.ts +7 -0
  414. package/package/components/icons/ShortcutIcon.svelte +7 -0
  415. package/package/components/icons/ShortcutIcon.svelte.d.ts +7 -0
  416. package/package/components/icons/SigNozIcon.svelte +8 -0
  417. package/package/components/icons/SigNozIcon.svelte.d.ts +7 -0
  418. package/package/components/icons/SmartsheetIcon.svelte +7 -0
  419. package/package/components/icons/SmartsheetIcon.svelte.d.ts +7 -0
  420. package/package/components/icons/SpeechifyIcon.svelte +7 -0
  421. package/package/components/icons/SpeechifyIcon.svelte.d.ts +7 -0
  422. package/package/components/icons/SplitwiseIcon.svelte +7 -0
  423. package/package/components/icons/SplitwiseIcon.svelte.d.ts +7 -0
  424. package/package/components/icons/StravaIcon.svelte +7 -0
  425. package/package/components/icons/StravaIcon.svelte.d.ts +7 -0
  426. package/package/components/icons/TallyIcon.svelte +7 -0
  427. package/package/components/icons/TallyIcon.svelte.d.ts +7 -0
  428. package/package/components/icons/TelnyxIcon.svelte +19 -0
  429. package/package/components/icons/TelnyxIcon.svelte.d.ts +7 -0
  430. package/package/components/icons/ThreadsIcon.svelte +7 -0
  431. package/package/components/icons/ThreadsIcon.svelte.d.ts +7 -0
  432. package/package/components/icons/TodoistIcon.svelte +7 -0
  433. package/package/components/icons/TodoistIcon.svelte.d.ts +7 -0
  434. package/package/components/icons/TogetherAiIcon.svelte +23 -0
  435. package/package/components/icons/TogetherAiIcon.svelte.d.ts +7 -0
  436. package/package/components/icons/TrelloIcon.svelte +22 -1
  437. package/package/components/icons/TursoIcon.svelte +7 -0
  438. package/package/components/icons/TursoIcon.svelte.d.ts +7 -0
  439. package/package/components/icons/TwitchIcon.svelte +7 -0
  440. package/package/components/icons/TwitchIcon.svelte.d.ts +7 -0
  441. package/package/components/icons/TwitterIcon.svelte +7 -0
  442. package/package/components/icons/TwitterIcon.svelte.d.ts +7 -0
  443. package/package/components/icons/TypeformIcon.svelte +1 -1
  444. package/package/components/icons/VercelIcon.svelte +7 -0
  445. package/package/components/icons/VercelIcon.svelte.d.ts +7 -0
  446. package/package/components/icons/WebflowIcon.svelte +7 -0
  447. package/package/components/icons/WebflowIcon.svelte.d.ts +7 -0
  448. package/package/components/icons/WooCommerceIcon.svelte +7 -0
  449. package/package/components/icons/WooCommerceIcon.svelte.d.ts +7 -0
  450. package/package/components/icons/WordpressIcon.svelte +7 -0
  451. package/package/components/icons/WordpressIcon.svelte.d.ts +7 -0
  452. package/package/components/icons/XataIcon.svelte +13 -0
  453. package/package/components/icons/XataIcon.svelte.d.ts +7 -0
  454. package/package/components/icons/YelpIcon.svelte +7 -0
  455. package/package/components/icons/YelpIcon.svelte.d.ts +7 -0
  456. package/package/components/icons/YnabIcon.svelte +7 -0
  457. package/package/components/icons/YnabIcon.svelte.d.ts +7 -0
  458. package/package/components/icons/YoutubeIcon.svelte +7 -0
  459. package/package/components/icons/YoutubeIcon.svelte.d.ts +7 -0
  460. package/package/components/icons/ZendeskIcon.svelte +1 -1
  461. package/package/components/icons/ZeroTierIcon.svelte +7 -0
  462. package/package/components/icons/ZeroTierIcon.svelte.d.ts +7 -0
  463. package/package/components/icons/ZoomIcon.svelte +7 -0
  464. package/package/components/icons/ZoomIcon.svelte.d.ts +7 -0
  465. package/package/components/icons/index.d.ts +111 -1
  466. package/package/components/icons/index.js +225 -2
  467. package/package/components/instanceSettings/GhesAppSettings.svelte +161 -0
  468. package/package/components/instanceSettings/GhesAppSettings.svelte.d.ts +8 -0
  469. package/package/components/instanceSettings/IndexerMemorySettings.svelte +19 -8
  470. package/package/components/instanceSettings/InstanceAISettings.svelte +132 -0
  471. package/package/components/instanceSettings/InstanceAISettings.svelte.d.ts +10 -0
  472. package/package/components/instanceSettings/WorkspaceRegistries.svelte +293 -0
  473. package/package/components/instanceSettings/WorkspaceRegistries.svelte.d.ts +8 -0
  474. package/package/components/instanceSettings/WsConnectivityTest.svelte +177 -0
  475. package/package/components/instanceSettings/WsConnectivityTest.svelte.d.ts +7 -0
  476. package/package/components/instanceSettings.d.ts +3 -1
  477. package/package/components/instanceSettings.js +92 -2
  478. package/package/components/mcp/McpScopeSelector.svelte +408 -0
  479. package/package/components/mcp/McpScopeSelector.svelte.d.ts +7 -0
  480. package/package/components/meltComponents/Popover.svelte +0 -1
  481. package/package/components/raw_apps/RawAppPreview.svelte +6 -2
  482. package/package/components/recording/FlowRecordingReplay.svelte +94 -52
  483. package/package/components/recording/FlowRecordingReplay.svelte.d.ts +10 -1
  484. package/package/components/recording/ScriptRecordingReplay.svelte +140 -76
  485. package/package/components/recording/ScriptRecordingReplay.svelte.d.ts +10 -1
  486. package/package/components/runs/JobRunsPreview.svelte +8 -1
  487. package/package/components/runs/TimeframeSelect.svelte +0 -1
  488. package/package/components/schema/JobSchemaPicker.svelte +8 -2
  489. package/package/components/schema/JobSchemaPicker.svelte.d.ts +1 -0
  490. package/package/components/schema/SchemaFormDND.svelte +15 -3
  491. package/package/components/scriptEditor/LogPanel.svelte +78 -68
  492. package/package/components/script_builder.d.ts +1 -1
  493. package/package/components/scripts/CreateActionsScript.svelte +3 -3
  494. package/package/components/scripts/WacExportDrawer.svelte +127 -0
  495. package/package/components/scripts/WacExportDrawer.svelte.d.ts +8 -0
  496. package/package/components/scripts/scriptStore.svelte.d.ts +2 -0
  497. package/package/components/scripts/scriptStore.svelte.js +2 -0
  498. package/package/components/select/SelectDropdown.svelte +1 -1
  499. package/package/components/settings/AIPromptsModal.svelte +5 -2
  500. package/package/components/settings/AIPromptsModal.svelte.d.ts +1 -1
  501. package/package/components/settings/CloudQuotas.svelte +152 -0
  502. package/package/components/settings/CloudQuotas.svelte.d.ts +3 -0
  503. package/package/components/settings/CreateToken.svelte +15 -430
  504. package/package/components/settings/Trashbin.svelte +248 -0
  505. package/package/components/settings/Trashbin.svelte.d.ts +3 -0
  506. package/package/components/sidebar/MultiplayerMenu.svelte +14 -4
  507. package/package/components/triggers/DeleteTriggerButton.svelte +1 -0
  508. package/package/components/triggers/PermissionedAsLine.svelte +66 -0
  509. package/package/components/triggers/PermissionedAsLine.svelte.d.ts +9 -0
  510. package/package/components/triggers/TriggerEditorToolbar.svelte +2 -2
  511. package/package/components/triggers/TriggerTokens.svelte +3 -3
  512. package/package/components/triggers/email/EmailTriggerEditorInner.svelte +19 -1
  513. package/package/components/triggers/email/utils.js +3 -1
  514. package/package/components/triggers/gcp/GcpTriggerEditorInner.svelte +24 -4
  515. package/package/components/triggers/gcp/utils.js +2 -0
  516. package/package/components/triggers/http/RouteEditorConfigSection.svelte +22 -3
  517. package/package/components/triggers/http/RouteEditorInner.svelte +28 -6
  518. package/package/components/triggers/http/RoutesGenerator.svelte +13 -2
  519. package/package/components/triggers/http/utils.js +3 -1
  520. package/package/components/triggers/kafka/KafkaTriggerEditorInner.svelte +23 -6
  521. package/package/components/triggers/kafka/utils.js +3 -1
  522. package/package/components/triggers/mqtt/MqttTriggerEditorInner.svelte +27 -5
  523. package/package/components/triggers/mqtt/utils.js +2 -0
  524. package/package/components/triggers/native/NativeTriggerEditor.svelte +23 -1
  525. package/package/components/triggers/native/NativeTriggerTable.svelte +14 -3
  526. package/package/components/triggers/native/utils.js +3 -2
  527. package/package/components/triggers/nats/NatsTriggerEditorInner.svelte +19 -1
  528. package/package/components/triggers/nats/utils.js +2 -0
  529. package/package/components/triggers/postgres/PostgresTriggerEditorInner.svelte +19 -1
  530. package/package/components/triggers/postgres/utils.js +2 -0
  531. package/package/components/triggers/schedules/ScheduleEditorInner.svelte +29 -7
  532. package/package/components/triggers/sqs/SqsTriggerEditorInner.svelte +19 -1
  533. package/package/components/triggers/sqs/utils.js +2 -0
  534. package/package/components/triggers/utils.js +9 -2
  535. package/package/components/triggers/websocket/WebsocketTriggerEditorInner.svelte +24 -4
  536. package/package/components/triggers/websocket/utils.js +3 -1
  537. package/package/components/workspaceSettings/AISettings.svelte +342 -214
  538. package/package/components/workspaceSettings/AISettings.svelte.d.ts +18 -10
  539. package/package/components/workspaceSettings/CreateWorkspace.svelte +304 -196
  540. package/package/components/workspaceSettings/CustomInstanceDbWizardModal.svelte +1 -2
  541. package/package/components/workspaceSettings/DucklakeSettings.svelte +1 -1
  542. package/package/components/workspaceSettings/InstanceFallbackSettings.svelte +75 -0
  543. package/package/components/workspaceSettings/InstanceFallbackSettings.svelte.d.ts +9 -0
  544. package/package/components/workspaceSettings/StorageSettings.svelte +4 -35
  545. package/package/components/workspaceSettings/VolumeStorageSettings.svelte +80 -0
  546. package/package/components/workspaceSettings/VolumeStorageSettings.svelte.d.ts +10 -0
  547. package/package/components/workspaceSettings/WorkspaceIntegrations.svelte +4 -1
  548. package/package/gen/core/OpenAPI.js +1 -1
  549. package/package/gen/schemas.gen.d.ts +294 -94
  550. package/package/gen/schemas.gen.js +294 -94
  551. package/package/gen/services.gen.d.ts +121 -5
  552. package/package/gen/services.gen.js +237 -5
  553. package/package/gen/types.gen.d.ts +715 -91
  554. package/package/githubApp.js +19 -1
  555. package/package/hubPaths.json +8 -4
  556. package/package/infer.d.ts +1 -1
  557. package/package/infer.js +5 -1
  558. package/package/logoutRedirect.d.ts +1 -0
  559. package/package/logoutRedirect.js +24 -0
  560. package/package/script_helpers.d.ts +8 -2
  561. package/package/script_helpers.js +15 -1
  562. package/package/services/trashService.d.ts +28 -0
  563. package/package/services/trashService.js +47 -0
  564. package/package/stores.d.ts +1 -0
  565. package/package/stores.js +1 -0
  566. package/package/system_prompts/index.d.ts +1 -0
  567. package/package/system_prompts/index.js +7 -0
  568. package/package/system_prompts/prompts.d.ts +7 -5
  569. package/package/system_prompts/prompts.js +182 -11
  570. package/package/templates/wac_python.py.template +42 -0
  571. package/package/templates/wac_typescript.ts.template +48 -0
  572. package/package/utils_deployable.d.ts +22 -21
  573. package/package/utils_deployable.js +58 -25
  574. package/package/utils_workspace_deploy.d.ts +15 -4
  575. package/package/utils_workspace_deploy.js +19 -15
  576. package/package/wsUrl.d.ts +1 -0
  577. package/package/wsUrl.js +15 -0
  578. package/package.json +13 -5
  579. package/dist/sharedUtils/assets/tokens/colorTokensConfig.d.ts +0 -2
  580. package/dist/sharedUtils/base.d.ts +0 -1
  581. package/dist/sharedUtils/cloud.d.ts +0 -1
  582. package/dist/sharedUtils/common.d.ts +0 -111
  583. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/count.d.ts +0 -5
  584. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/delete.d.ts +0 -5
  585. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/insert.d.ts +0 -5
  586. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/select.d.ts +0 -13
  587. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/update.d.ts +0 -11
  588. package/dist/sharedUtils/components/apps/components/display/dbtable/utils.d.ts +0 -95
  589. package/dist/sharedUtils/components/apps/editor/appPolicy.d.ts +0 -6
  590. package/dist/sharedUtils/components/apps/editor/appUtilsCore.d.ts +0 -7
  591. package/dist/sharedUtils/components/apps/editor/appUtilsS3.d.ts +0 -33
  592. package/dist/sharedUtils/components/apps/editor/commonAppUtils.d.ts +0 -10
  593. package/dist/sharedUtils/components/apps/editor/component/components.d.ts +0 -5371
  594. package/dist/sharedUtils/components/apps/editor/component/default-codes.d.ts +0 -3
  595. package/dist/sharedUtils/components/apps/editor/component/index.d.ts +0 -3
  596. package/dist/sharedUtils/components/apps/editor/component/sets.d.ts +0 -7
  597. package/dist/sharedUtils/components/apps/editor/componentsPanel/componentDefaultProps.d.ts +0 -3
  598. package/dist/sharedUtils/components/apps/gridUtils.d.ts +0 -14
  599. package/dist/sharedUtils/components/apps/inputType.d.ts +0 -178
  600. package/dist/sharedUtils/components/apps/rx.d.ts +0 -29
  601. package/dist/sharedUtils/components/apps/sharedTypes.d.ts +0 -21
  602. package/dist/sharedUtils/components/apps/types.d.ts +0 -274
  603. package/dist/sharedUtils/components/assets/lib.d.ts +0 -25
  604. package/dist/sharedUtils/components/common/alert/model.d.ts +0 -2
  605. package/dist/sharedUtils/components/common/badge/model.d.ts +0 -8
  606. package/dist/sharedUtils/components/common/button/model.d.ts +0 -45
  607. package/dist/sharedUtils/components/common/fileInput/model.d.ts +0 -1
  608. package/dist/sharedUtils/components/common/index.d.ts +0 -24
  609. package/dist/sharedUtils/components/common/skeleton/model.d.ts +0 -21
  610. package/dist/sharedUtils/components/dbTypes.d.ts +0 -14
  611. package/dist/sharedUtils/components/diff_drawer.d.ts +0 -26
  612. package/dist/sharedUtils/components/ducklake.d.ts +0 -1
  613. package/dist/sharedUtils/components/flows/scheduleUtils.d.ts +0 -7
  614. package/dist/sharedUtils/components/icons/index.d.ts +0 -101
  615. package/dist/sharedUtils/components/random_positive_adjetive.d.ts +0 -1
  616. package/dist/sharedUtils/components/raw_apps/rawAppPolicy.d.ts +0 -10
  617. package/dist/sharedUtils/components/raw_apps/utils.d.ts +0 -15
  618. package/dist/sharedUtils/components/triggers/email/utils.d.ts +0 -4
  619. package/dist/sharedUtils/components/triggers/gcp/utils.d.ts +0 -2
  620. package/dist/sharedUtils/components/triggers/http/utils.d.ts +0 -11
  621. package/dist/sharedUtils/components/triggers/kafka/utils.d.ts +0 -2
  622. package/dist/sharedUtils/components/triggers/mqtt/utils.d.ts +0 -2
  623. package/dist/sharedUtils/components/triggers/nats/utils.d.ts +0 -2
  624. package/dist/sharedUtils/components/triggers/postgres/utils.d.ts +0 -8
  625. package/dist/sharedUtils/components/triggers/sqs/utils.d.ts +0 -2
  626. package/dist/sharedUtils/components/triggers/triggers.svelte.d.ts +0 -32
  627. package/dist/sharedUtils/components/triggers/utils.d.ts +0 -80
  628. package/dist/sharedUtils/components/triggers/websocket/utils.d.ts +0 -2
  629. package/dist/sharedUtils/components/triggers.d.ts +0 -20
  630. package/dist/sharedUtils/gen/core/ApiError.d.ts +0 -10
  631. package/dist/sharedUtils/gen/core/ApiRequestOptions.d.ts +0 -13
  632. package/dist/sharedUtils/gen/core/ApiResult.d.ts +0 -7
  633. package/dist/sharedUtils/gen/core/CancelablePromise.d.ts +0 -26
  634. package/dist/sharedUtils/gen/core/OpenAPI.d.ts +0 -27
  635. package/dist/sharedUtils/gen/core/request.d.ts +0 -29
  636. package/dist/sharedUtils/gen/index.d.ts +0 -6
  637. package/dist/sharedUtils/gen/schemas.gen.d.ts +0 -7036
  638. package/dist/sharedUtils/gen/services.gen.d.ts +0 -6047
  639. package/dist/sharedUtils/gen/types.gen.d.ts +0 -21881
  640. package/dist/sharedUtils/history.svelte.d.ts +0 -9
  641. package/dist/sharedUtils/hub.d.ts +0 -49
  642. package/dist/sharedUtils/jsr.json +0 -6
  643. package/dist/sharedUtils/lib.d.ts +0 -5
  644. package/dist/sharedUtils/lib.es.js +0 -1588
  645. package/dist/sharedUtils/package.json +0 -12
  646. package/dist/sharedUtils/schema.d.ts +0 -3
  647. package/dist/sharedUtils/stores.d.ts +0 -97
  648. package/dist/sharedUtils/svelte5Utils.svelte.d.ts +0 -80
  649. package/dist/sharedUtils/toast.d.ts +0 -8
  650. package/dist/sharedUtils/utils.d.ts +0 -265
  651. package/package/components/graph/NodeContextMenu.svelte +0 -36
  652. package/package/components/graph/NodeContextMenu.svelte.d.ts +0 -8
  653. package/package/svelte5Utils.svelte.d.ts +0 -184
@@ -15,7 +15,8 @@ import GitHubAppIntegration from './GitHubAppIntegration.svelte';
15
15
  import BedrockCredentialsCheck from './BedrockCredentialsCheck.svelte';
16
16
  import { isCloudHosted } from '../cloud';
17
17
  import ResourceGen from './copilot/ResourceGen.svelte';
18
- let { resourceType, resourceTypeInfo, args = $bindable({}), linkedSecret = $bindable(undefined), isValid = $bindable(true), linkedSecretCandidates = undefined, description = $bindable(undefined) } = $props();
18
+ import SyncResourceTypes from './SyncResourceTypes.svelte';
19
+ let { resourceType, resourceTypeInfo, args = $bindable({}), linkedSecrets = $bindable([]), isValid = $bindable(true), linkedSecretCandidates = undefined, description = $bindable(undefined), onSynced = undefined } = $props();
19
20
  let schema = $state(emptySchema());
20
21
  let notFound = $state(false);
21
22
  let supabaseWizard = $state(false);
@@ -125,7 +126,7 @@ $effect(() => {
125
126
  />
126
127
  <ResourceGen
127
128
  bind:args
128
- resourceType={resourceType}
129
+ {resourceType}
129
130
  resourceSchema={notFound ? undefined : schema}
130
131
  isFileset={resourceTypeInfo?.is_fileset ?? false}
131
132
  />
@@ -200,6 +201,7 @@ $effect(() => {
200
201
  >No corresponding resource type found in your workspace for {resourceType}. Define the value in
201
202
  JSON directly</p
202
203
  >
204
+ <SyncResourceTypes {onSynced} />
203
205
  {/if}
204
206
  {#if notFound || viewJsonSchema}
205
207
  {#if !emptyString(error)}<span class="text-red-400 text-xs mb-1 flex flex-row-reverse"
@@ -219,9 +221,7 @@ $effect(() => {
219
221
  {/await}
220
222
  </div>
221
223
  {:else if resourceTypeInfo?.is_fileset}
222
- <h5 class="mt-1 inline-flex items-center gap-4">
223
- Fileset
224
- </h5>
224
+ <h5 class="mt-1 inline-flex items-center gap-4"> Fileset </h5>
225
225
  <FilesetEditor bind:args />
226
226
  {:else if resourceTypeInfo?.format_extension}
227
227
  <h5 class="mt-4 inline-flex items-center gap-4">
@@ -246,7 +246,7 @@ $effect(() => {
246
246
  onlyMaskPassword
247
247
  noDelete
248
248
  {linkedSecretCandidates}
249
- bind:linkedSecret
249
+ bind:linkedSecrets
250
250
  isValid
251
251
  {schema}
252
252
  bind:args
@@ -3,11 +3,12 @@ interface Props {
3
3
  resourceType: string;
4
4
  resourceTypeInfo: ResourceType | undefined;
5
5
  args?: Record<string, any> | any;
6
- linkedSecret?: string | undefined;
6
+ linkedSecrets?: string[];
7
7
  isValid?: boolean;
8
8
  linkedSecretCandidates?: string[] | undefined;
9
9
  description?: string | undefined;
10
+ onSynced?: () => void;
10
11
  }
11
- declare const ApiConnectForm: import("svelte").Component<Props, {}, "description" | "args" | "linkedSecret" | "isValid">;
12
+ declare const ApiConnectForm: import("svelte").Component<Props, {}, "description" | "args" | "linkedSecrets" | "isValid">;
12
13
  type ApiConnectForm = ReturnType<typeof ApiConnectForm>;
13
14
  export default ApiConnectForm;
@@ -4,7 +4,7 @@ import { Button, Drawer } from './common';
4
4
  import DrawerContent from './common/drawer/DrawerContent.svelte';
5
5
  import AppConnectInner from './AppConnectInner.svelte';
6
6
  import DarkModeObserver from './DarkModeObserver.svelte';
7
- let { expressOAuthSetup = false } = $props();
7
+ let { expressOAuthSetup = false, workspace = undefined, disableChatOffset = false } = $props();
8
8
  let drawer = $state();
9
9
  let resourceType = $state('');
10
10
  let step = $state(1);
@@ -36,6 +36,7 @@ run(() => {
36
36
  dispatch('close')
37
37
  }}
38
38
  size="800px"
39
+ {disableChatOffset}
39
40
  >
40
41
  <DrawerContent
41
42
  title="Add a resource"
@@ -54,6 +55,7 @@ run(() => {
54
55
  on:close={drawer?.closeDrawer}
55
56
  on:refresh
56
57
  express={expressOAuthSetup}
58
+ {workspace}
57
59
  />
58
60
  {#snippet actions()}
59
61
  <div class="flex gap-1">
@@ -1,5 +1,7 @@
1
1
  interface Props {
2
2
  expressOAuthSetup?: boolean;
3
+ workspace?: string;
4
+ disableChatOffset?: boolean;
3
5
  }
4
6
  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> {
5
7
  new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
@@ -1,7 +1,7 @@
1
1
  <script lang="ts">import { run } from 'svelte/legacy';
2
- import { superadmin, userStore, workspaceStore } from '../stores';
2
+ import { userStore, workspaceStore } from '../stores';
3
3
  import IconedResourceType from './IconedResourceType.svelte';
4
- import { OauthService, ResourceService, VariableService, JobService } from '../gen';
4
+ import { OauthService, ResourceService, VariableService } from '../gen';
5
5
  import { emptyString, truncateRev, urlize } from '../utils';
6
6
  import { createEventDispatcher, onDestroy } from 'svelte';
7
7
  import Path from './Path.svelte';
@@ -21,10 +21,10 @@ import GfmMarkdown from './GfmMarkdown.svelte';
21
21
  import { apiTokenApps, forceSecretValue, linkedSecretValue } from './app_connect';
22
22
  import Tooltip from './Tooltip.svelte';
23
23
  import TextInput from './text_input/TextInput.svelte';
24
- import { usePromise } from '../svelte5Utils.svelte';
25
- import { pollJobResult } from './jobs/utils';
26
24
  import { sameTopDomainOrigin } from '../cookies';
27
- let { step = $bindable(1), resourceType = $bindable(''), isGoogleSignin = $bindable(false), disabled = $bindable(false), manual = $bindable(true), express = false } = $props();
25
+ import SyncResourceTypes from './SyncResourceTypes.svelte';
26
+ let { step = $bindable(1), resourceType = $bindable(''), isGoogleSignin = $bindable(false), disabled = $bindable(false), manual = $bindable(true), express = false, workspace = undefined } = $props();
27
+ let effectiveWorkspace = $derived(workspace ?? $workspaceStore);
28
28
  let isValid = $state(true);
29
29
  const nativeLanguagesCategory = [
30
30
  'postgresql',
@@ -48,12 +48,16 @@ function computeCandidates(resourceType, argsKeys, passwords) {
48
48
  : argsKeys.filter((x) => passwords.includes(x) ||
49
49
  ['token', 'secret', 'key', 'pass', 'private'].some((y) => x.toLowerCase().includes(y)));
50
50
  }
51
- let linkedSecret = $state(undefined);
51
+ let linkedSecrets = $state([]);
52
52
  let linkedSecretCandidates = $state(undefined);
53
- function computeLinkedSecret(resourceType, argsKeys, passwords) {
53
+ function computeDefaultLinkedSecrets(resourceType, argsKeys, passwords) {
54
54
  linkedSecretCandidates = computeCandidates(resourceType, argsKeys, passwords);
55
- return (forceSecretValue(resourceType) ??
56
- linkedSecretCandidates?.sort((ua, ub) => linkedSecretValue(ub) - linkedSecretValue(ua))?.[0]);
55
+ const forced = forceSecretValue(resourceType);
56
+ if (forced) {
57
+ return [forced];
58
+ }
59
+ const best = linkedSecretCandidates?.sort((ua, ub) => linkedSecretValue(ub) - linkedSecretValue(ua))?.[0];
60
+ return best ? [best] : [];
57
61
  }
58
62
  let scopes = $state([]);
59
63
  let extra_params = [];
@@ -80,6 +84,7 @@ let clientId = $state('');
80
84
  let clientSecret = $state('');
81
85
  let tokenUrl = $state('');
82
86
  let resourceTypeInfo = $state(undefined);
87
+ let resourceTypeNotFound = $state(false);
83
88
  let pathError = $state('');
84
89
  export async function open(rt) {
85
90
  if (!rt) {
@@ -144,7 +149,7 @@ run(() => {
144
149
  args['password'] == '' &&
145
150
  args['api_key'] == '' &&
146
151
  args['key'] == '' &&
147
- linkedSecret != undefined
152
+ linkedSecrets.length > 0
148
153
  : false)) ||
149
154
  step == 3 ||
150
155
  (step == 4 && pathError != '') ||
@@ -155,7 +160,7 @@ export async function loadResourceTypes() {
155
160
  return;
156
161
  }
157
162
  const availableRts = await ResourceService.listResourceTypeNames({
158
- workspace: $workspaceStore
163
+ workspace: effectiveWorkspace
159
164
  });
160
165
  connectsManual = availableRts
161
166
  .filter((x) => connectAndManual.includes(x) || !Object.keys(connects ?? {}).includes(x))
@@ -239,22 +244,29 @@ async function getScopesAndParams() {
239
244
  supportsClientCredentials = connect.grant_types?.includes('client_credentials') ?? false;
240
245
  }
241
246
  async function getResourceTypeInfo() {
242
- resourceTypeInfo = await ResourceService.getResourceType({
243
- workspace: $workspaceStore,
244
- path: resourceType
245
- });
246
- const props = resourceTypeInfo?.schema?.['properties'] ?? {};
247
- const newArgsKeys = Object.keys(props).filter((x) => props?.[x]?.type == 'string') ?? [];
248
- const passwords = newArgsKeys.filter((x) => {
249
- return props?.[x]?.password;
250
- });
251
- if (!linkedSecret) {
252
- linkedSecret = computeLinkedSecret(resourceType, newArgsKeys, passwords);
247
+ try {
248
+ resourceTypeNotFound = false;
249
+ resourceTypeInfo = await ResourceService.getResourceType({
250
+ workspace: effectiveWorkspace,
251
+ path: resourceType
252
+ });
253
+ const props = resourceTypeInfo?.schema?.['properties'] ?? {};
254
+ const newArgsKeys = Object.keys(props).filter((x) => props?.[x]?.type == 'string') ?? [];
255
+ const passwords = newArgsKeys.filter((x) => {
256
+ return props?.[x]?.password;
257
+ });
258
+ if (linkedSecrets.length === 0) {
259
+ linkedSecrets = computeDefaultLinkedSecrets(resourceType, newArgsKeys, passwords);
260
+ }
261
+ }
262
+ catch (err) {
263
+ resourceTypeInfo = undefined;
264
+ resourceTypeNotFound = true;
253
265
  }
254
266
  }
255
267
  export async function next() {
256
268
  if (step == 1) {
257
- linkedSecret = undefined;
269
+ linkedSecrets = [];
258
270
  if (manual) {
259
271
  getResourceTypeInfo();
260
272
  args = {};
@@ -334,15 +346,30 @@ export async function next() {
334
346
  return;
335
347
  throw Error('Path is not set');
336
348
  }
337
- let exists = await VariableService.existsVariable({
338
- workspace: $workspaceStore,
339
- path
340
- });
341
- if (exists) {
342
- throw Error(`Variable at path ${path} already exists. Delete it or pick another path`);
349
+ // Check if variable paths already exist
350
+ if (!manual || linkedSecrets.length <= 1) {
351
+ const exists = await VariableService.existsVariable({
352
+ workspace: effectiveWorkspace,
353
+ path
354
+ });
355
+ if (exists) {
356
+ throw Error(`Variable at path ${path} already exists. Delete it or pick another path`);
357
+ }
358
+ }
359
+ else {
360
+ for (const secretField of linkedSecrets) {
361
+ const varPath = `${path}_${secretField}`;
362
+ const exists = await VariableService.existsVariable({
363
+ workspace: effectiveWorkspace,
364
+ path: varPath
365
+ });
366
+ if (exists) {
367
+ throw Error(`Variable at path ${varPath} already exists. Delete it or pick another path`);
368
+ }
369
+ }
343
370
  }
344
- exists = await ResourceService.existsResource({
345
- workspace: $workspaceStore,
371
+ let exists = await ResourceService.existsResource({
372
+ workspace: effectiveWorkspace,
346
373
  path
347
374
  });
348
375
  if (exists) {
@@ -365,6 +392,10 @@ export async function next() {
365
392
  client: resourceType,
366
393
  grant_type: valueToken.grant_type || 'authorization_code'
367
394
  };
395
+ // Store scopes so token refresh uses the same scopes
396
+ if (scopes.length > 0) {
397
+ accountData.scopes = scopes;
398
+ }
368
399
  // Add client credentials if using client_credentials flow
369
400
  if (useClientCredentials) {
370
401
  accountData.cc_client_id = clientId.trim();
@@ -375,34 +406,76 @@ export async function next() {
375
406
  }
376
407
  }
377
408
  account = Number(await OauthService.createAccount({
378
- workspace: $workspaceStore,
409
+ workspace: effectiveWorkspace,
379
410
  requestBody: accountData
380
411
  }));
381
412
  }
382
413
  const resourceValue = args;
383
- let saveVariable = false;
384
- if (!manual || linkedSecret != undefined) {
385
- let v = manual ? args[linkedSecret ?? ''] : value;
386
- if (typeof v == 'string' && v != '' && !v.startsWith('$var:')) {
387
- saveVariable = true;
414
+ let savedVariableCount = 0;
415
+ if (!manual) {
416
+ // OAuth flow: single secret variable for the token
417
+ if (typeof value == 'string' && value != '' && !value.startsWith('$var:')) {
418
+ savedVariableCount++;
388
419
  await VariableService.createVariable({
389
- workspace: $workspaceStore,
420
+ workspace: effectiveWorkspace,
390
421
  requestBody: {
391
422
  path,
392
- value: v,
423
+ value: value,
393
424
  is_secret: true,
394
425
  description: emptyString(description)
395
- ? `${manual ? 'Token' : 'OAuth token'} for ${resourceType}`
426
+ ? `OAuth token for ${resourceType}`
396
427
  : description,
397
- is_oauth: !manual,
428
+ is_oauth: true,
398
429
  account: account
399
430
  }
400
431
  });
401
- resourceValue[linkedSecret ?? 'token'] = `$var:${path}`;
432
+ resourceValue['token'] = `$var:${path}`;
433
+ }
434
+ }
435
+ else if (linkedSecrets.length === 1) {
436
+ // Single secret: use the resource path as variable name (original behavior)
437
+ const secretField = linkedSecrets[0];
438
+ const v = args[secretField];
439
+ if (typeof v == 'string' && v != '' && !v.startsWith('$var:')) {
440
+ savedVariableCount++;
441
+ await VariableService.createVariable({
442
+ workspace: effectiveWorkspace,
443
+ requestBody: {
444
+ path,
445
+ value: v,
446
+ is_secret: true,
447
+ description: emptyString(description) ? `Token for ${resourceType}` : description,
448
+ is_oauth: false
449
+ }
450
+ });
451
+ resourceValue[secretField] = `$var:${path}`;
452
+ }
453
+ }
454
+ else if (linkedSecrets.length > 1) {
455
+ // Multiple secrets: append _field_name to each variable path
456
+ for (const secretField of linkedSecrets) {
457
+ const v = args[secretField];
458
+ if (typeof v == 'string' && v != '' && !v.startsWith('$var:')) {
459
+ const varPath = `${path}_${secretField}`;
460
+ savedVariableCount++;
461
+ await VariableService.createVariable({
462
+ workspace: effectiveWorkspace,
463
+ requestBody: {
464
+ path: varPath,
465
+ value: v,
466
+ is_secret: true,
467
+ description: emptyString(description)
468
+ ? `${secretField} for ${resourceType}`
469
+ : description,
470
+ is_oauth: false
471
+ }
472
+ });
473
+ resourceValue[secretField] = `$var:${varPath}`;
474
+ }
402
475
  }
403
476
  }
404
477
  await ResourceService.createResource({
405
- workspace: $workspaceStore,
478
+ workspace: effectiveWorkspace,
406
479
  requestBody: {
407
480
  resource_type: resourceType,
408
481
  path,
@@ -412,7 +485,7 @@ export async function next() {
412
485
  });
413
486
  dispatch('refresh', path);
414
487
  dispatch('close');
415
- sendUserToast(`Saved resource${saveVariable ? ' and variable' : ''} path: ${path}`);
488
+ sendUserToast(`Saved resource${savedVariableCount > 0 ? ` and ${savedVariableCount} variable${savedVariableCount > 1 ? 's' : ''}` : ''} path: ${path}`);
416
489
  step = 1;
417
490
  resourceType = '';
418
491
  }
@@ -433,19 +506,6 @@ const dispatch = createEventDispatcher();
433
506
  let filteredConnects = $state([]);
434
507
  let filteredConnectsManual = $state([]);
435
508
  let editScopes = $state(false);
436
- let hubRtSync = usePromise(async () => {
437
- let jobUuid = await JobService.runScriptByPath({
438
- workspace: 'admins',
439
- path: 'u/admin/hub_sync',
440
- requestBody: {}
441
- });
442
- await pollJobResult(jobUuid, 'admins');
443
- connectsManual = undefined;
444
- await loadResourceTypes();
445
- connects = undefined;
446
- await loadConnects();
447
- sendUserToast('Hub resource types sync completed');
448
- }, { loadInit: false });
449
509
  </script>
450
510
 
451
511
  {#if !express}
@@ -562,20 +622,16 @@ let hubRtSync = usePromise(async () => {
562
622
  {/each}
563
623
  {/if}
564
624
  </div>
565
- {#if $superadmin}
566
- <Button
567
- loading={hubRtSync.status === 'loading'}
568
- onClick={() => hubRtSync.refresh()}
569
- wrapperClasses="mt-6"
570
- >
571
- Sync resource types with Hub
572
- </Button>
573
- {#if hubRtSync.status === 'error'}
574
- <span class="text-red-400 dark:text-red-500 text-xs">
575
- Error syncing resource types : {JSON.stringify(hubRtSync.error)}
576
- </span>
577
- {/if}
578
- {/if}
625
+ <div class="mt-6">
626
+ <SyncResourceTypes
627
+ onSynced={async () => {
628
+ connectsManual = undefined
629
+ await loadResourceTypes()
630
+ connects = undefined
631
+ await loadConnects()
632
+ }}
633
+ />
634
+ </div>
579
635
  {:else if step == 2 && manual}
580
636
  <div class="flex flex-col gap-8">
581
637
  <Path
@@ -646,15 +702,24 @@ let hubRtSync = usePromise(async () => {
646
702
  {/if}
647
703
  </div>
648
704
 
705
+ {#if resourceTypeNotFound}
706
+ <div class="flex flex-col gap-2 mb-4">
707
+ <p class="text-red-500 dark:text-red-400 text-xs">
708
+ Resource type '{resourceType}' not found in your workspace
709
+ </p>
710
+ <SyncResourceTypes onSynced={getResourceTypeInfo} />
711
+ </div>
712
+ {/if}
649
713
  {#key resourceTypeInfo}
650
714
  <ApiConnectForm
651
- bind:linkedSecret
715
+ bind:linkedSecrets
652
716
  bind:description
653
717
  {linkedSecretCandidates}
654
718
  {resourceType}
655
719
  {resourceTypeInfo}
656
720
  bind:args
657
721
  bind:isValid
722
+ onSynced={getResourceTypeInfo}
658
723
  />
659
724
  {/key}
660
725
  </div>
@@ -5,6 +5,7 @@ interface Props {
5
5
  disabled?: boolean;
6
6
  manual?: boolean;
7
7
  express?: boolean;
8
+ workspace?: string;
8
9
  }
9
10
  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> {
10
11
  new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
@@ -1,4 +1,4 @@
1
- <script lang="ts">import { AlertTriangle, ArrowDown, ArrowDownRight, ArrowRight, ArrowUp, ArrowUpRight, Building, DiffIcon, GitFork, Loader2, Trash2, Upload } from 'lucide-svelte';
1
+ <script lang="ts">import { AlertTriangle, ArrowDown, ArrowDownRight, ArrowRight, ArrowUp, ArrowUpRight, Building, DiffIcon, FileJson, GitFork, Loader2, Trash2, Upload } from 'lucide-svelte';
2
2
  import { Alert, Badge } from './common';
3
3
  import { AppService, EmailTriggerService, FlowService, FolderService, GcpTriggerService, HttpTriggerService, KafkaTriggerService, MqttTriggerService, NatsTriggerService, PostgresTriggerService, ScheduleService, ScriptService, SqsTriggerService, UserService, WebsocketTriggerService, WorkspaceService } from '../gen';
4
4
  import Button from './common/button/Button.svelte';
@@ -8,7 +8,7 @@ import DiffDrawer from './DiffDrawer.svelte';
8
8
  import DeployWorkspaceDrawer from './DeployWorkspaceDrawer.svelte';
9
9
  import ParentWorkspaceProtectionAlert from './ParentWorkspaceProtectionAlert.svelte';
10
10
  import { userWorkspaces, workspaceStore } from '../stores';
11
- import { deployItem, getItemValue, getOnBehalfOfEmail } from '../utils_workspace_deploy';
11
+ import { deployItem, getItemValue, getOnBehalfOf } from '../utils_workspace_deploy';
12
12
  import Tooltip from './Tooltip.svelte';
13
13
  import OnBehalfOfSelector, { needsOnBehalfOfSelection } from './OnBehalfOfSelector.svelte';
14
14
  import { sendUserToast } from '../toast';
@@ -54,7 +54,7 @@ let summaryCache = $state({});
54
54
  // Source workspace on_behalf_of emails (keyed by workspace/kind:path)
55
55
  let onBehalfOfInfo = $state({});
56
56
  let onBehalfOfChoice = $state({});
57
- let customOnBehalfOfEmails = $state({});
57
+ let customOnBehalfOf = $state({});
58
58
  let deployTargetWorkspace = $derived(mergeIntoParent ? parentWorkspaceId : currentWorkspaceId);
59
59
  function getItemKey(diff) {
60
60
  return `${diff.kind}:${diff.path}`;
@@ -69,7 +69,7 @@ async function fetchSummary(kind, path, workspace) {
69
69
  const flow = await FlowService.getFlowByPath({ workspace, path });
70
70
  return flow.summary;
71
71
  }
72
- else if (kind === 'app') {
72
+ else if (kind === 'app' || kind === 'raw_app') {
73
73
  const app = await AppService.getAppByPath({ workspace, path });
74
74
  return app.summary;
75
75
  }
@@ -85,7 +85,7 @@ async function fetchSummary(kind, path, workspace) {
85
85
  }
86
86
  async function fetchSummaries(diffs) {
87
87
  // Only fetch summaries for scripts, flows, and apps
88
- const itemsToFetch = diffs.filter((diff) => ['script', 'flow', 'app', 'folder'].includes(diff.kind));
88
+ const itemsToFetch = diffs.filter((diff) => ['script', 'flow', 'app', 'raw_app', 'folder'].includes(diff.kind));
89
89
  for (const diff of itemsToFetch) {
90
90
  const key = getItemKey(diff);
91
91
  // Skip if already cached or loading
@@ -106,14 +106,14 @@ async function fetchSummaries(diffs) {
106
106
  }
107
107
  }
108
108
  async function fetchOnBehalfOfInfo(diffs) {
109
- const flowsAndScripts = diffs.filter((d) => ['flow', 'script', 'app'].includes(d.kind));
109
+ const flowsAndScripts = diffs.filter((d) => ['flow', 'script', 'app', 'raw_app'].includes(d.kind));
110
110
  for (const diff of flowsAndScripts) {
111
111
  for (const workspace of [currentWorkspaceId, parentWorkspaceId]) {
112
112
  const workspacedKey = getWorkspacedKey(workspace, getItemKey(diff));
113
113
  if (onBehalfOfInfo[workspacedKey] !== undefined)
114
114
  continue;
115
115
  try {
116
- onBehalfOfInfo[workspacedKey] = await getOnBehalfOfEmail(diff.kind, diff.path, workspace);
116
+ onBehalfOfInfo[workspacedKey] = await getOnBehalfOf(diff.kind, diff.path, workspace);
117
117
  }
118
118
  catch {
119
119
  onBehalfOfInfo[workspacedKey] = undefined;
@@ -121,19 +121,19 @@ async function fetchOnBehalfOfInfo(diffs) {
121
121
  }
122
122
  }
123
123
  }
124
- // Get source workspace email for an item
125
- function getSourceEmail(itemKey) {
124
+ // Get source workspace on_behalf_of value for an item (email for runnables, permissioned_as for triggers)
125
+ function getSourceOnBehalfOf(itemKey) {
126
126
  const sourceWorkspace = mergeIntoParent ? currentWorkspaceId : parentWorkspaceId;
127
127
  return onBehalfOfInfo[getWorkspacedKey(sourceWorkspace, itemKey)];
128
128
  }
129
- // Get target workspace email for an item (existing item in destination)
130
- function getTargetEmail(itemKey) {
129
+ // Get target workspace on_behalf_of value for an item (existing item in destination)
130
+ function getTargetOnBehalfOf(itemKey) {
131
131
  const targetWorkspace = mergeIntoParent ? parentWorkspaceId : currentWorkspaceId;
132
132
  return onBehalfOfInfo[getWorkspacedKey(targetWorkspace, itemKey)];
133
133
  }
134
134
  // Check if an item needs on_behalf_of selection
135
135
  function itemNeedsOnBehalfOfSelection(itemKey, kind) {
136
- return needsOnBehalfOfSelection(kind, getSourceEmail(itemKey));
136
+ return needsOnBehalfOfSelection(kind, getSourceOnBehalfOf(itemKey));
137
137
  }
138
138
  // Check if all required on_behalf_of selections are made
139
139
  let hasUnselectedOnBehalfOf = $derived(selectedItems.some((itemKey) => {
@@ -142,14 +142,19 @@ let hasUnselectedOnBehalfOf = $derived(selectedItems.some((itemKey) => {
142
142
  return false;
143
143
  return (itemNeedsOnBehalfOfSelection(itemKey, diff.kind) && onBehalfOfChoice[itemKey] === undefined);
144
144
  }));
145
- // Get the email to use for deployment based on user's choice
146
- function getOnBehalfOfEmailForDeploy(itemKey) {
145
+ /**
146
+ * Get the on_behalf_of value for deployment based on user's choice.
147
+ * Returns an email for flows/scripts/apps, or permissioned_as (u/username, g/group) for triggers/schedules.
148
+ */
149
+ function getOnBehalfOfForDeploy(itemKey, kind) {
147
150
  const choice = onBehalfOfChoice[itemKey];
148
151
  if (choice === 'target')
149
- return getTargetEmail(itemKey);
150
- if (choice === 'custom')
151
- return customOnBehalfOfEmails[itemKey];
152
- // 'me' or undefined = don't pass, backend will use deploying user's email
152
+ return getTargetOnBehalfOf(itemKey);
153
+ if (choice === 'custom') {
154
+ const details = customOnBehalfOf[itemKey];
155
+ return kind === 'trigger' ? details?.permissionedAs : details?.email;
156
+ }
157
+ // 'me' or undefined = don't pass, backend will use deploying user's identity
153
158
  return undefined;
154
159
  }
155
160
  let diffDrawer = $state(undefined);
@@ -198,7 +203,7 @@ async function deploy(kind, path, workspaceToDeployTo, workspaceFrom, statusPath
198
203
  path,
199
204
  workspaceFrom,
200
205
  workspaceTo: workspaceToDeployTo,
201
- onBehalfOfEmail: getOnBehalfOfEmailForDeploy(statusPath)
206
+ onBehalfOf: getOnBehalfOfForDeploy(statusPath, kind)
202
207
  });
203
208
  if (result.success) {
204
209
  deploymentStatus[statusPath] = { status: 'deployed' };
@@ -713,7 +718,7 @@ $effect(() => {
713
718
  {#snippet itemActions(item)}
714
719
  {@const diff = item.diff as WorkspaceItemDiff}
715
720
  {@const key = item.key}
716
- {@const targetEmail = getTargetEmail(key)}
721
+ {@const targetOnBehalfOf = getTargetOnBehalfOf(key)}
717
722
  {@const isConflict = diff.ahead > 0 && diff.behind > 0}
718
723
  {@const existsInBothWorkspaces = !(
719
724
  (diff.exists_in_fork && !diff.exists_in_source) ||
@@ -723,17 +728,20 @@ $effect(() => {
723
728
  {#if itemNeedsOnBehalfOfSelection(key, diff.kind)}
724
729
  <OnBehalfOfSelector
725
730
  targetWorkspace={deployTargetWorkspace}
726
- {targetEmail}
731
+ targetValue={targetOnBehalfOf}
727
732
  selected={onBehalfOfChoice[key]}
728
- onSelect={(choice, email) => {
733
+ onSelect={(choice, details) => {
729
734
  onBehalfOfChoice[key] = choice
730
- if (email) customOnBehalfOfEmails[key] = email
735
+ if (details) customOnBehalfOf[key] = details
731
736
  }}
732
737
  kind={diff.kind}
733
738
  canPreserve={canPreserveOnBehalfOf}
734
- customEmail={customOnBehalfOfEmails[key]}
739
+ customValue={customOnBehalfOf[key]?.permissionedAs}
735
740
  />
736
741
  {/if}
742
+ {#if diff.kind === 'raw_app'}
743
+ <Badge small icon={{ icon: FileJson }}>Raw</Badge>
744
+ {/if}
737
745
  <!-- Status badges -->
738
746
  {#if !diff.exists_in_fork && diff.exists_in_source && diff.ahead == 0 && diff.behind > 0}
739
747
  <Badge
@@ -487,36 +487,30 @@ export const dbTable = () => _dbTable;
487
487
  dbTableEditorState = { open: false }
488
488
  }}
489
489
  {dbType}
490
- computePreview={({ values }) => {
490
+ computePreview={async ({ values }) => {
491
491
  if (dbTableEditorState.alterTableKey && dbTableEditorAlterTableData.current) {
492
492
  let diff = diffTableEditorValues(dbTableEditorAlterTableData.current, values)
493
- let queries = dbSchemaOps.previewAlterSql({
494
- values: diff,
495
- schema: selected.schemaKey
496
- })
493
+ let sql = await dbSchemaOps.previewAlterSql({ values: diff, schema: selected.schemaKey })
497
494
  let alert = !dbSupportsTransactionalDdl(dbType)
498
495
  ? {
499
496
  title: capitalize(dbType) + ' does not support transactional DDL',
500
497
  body: 'Any of these statements failing may leave your database in an intermediate state.'
501
498
  }
502
499
  : undefined
503
- return { sql: queries.join('\n'), ...(alert ? { alert } : {}) }
500
+ return { sql, ...(alert ? { alert } : {}) }
504
501
  } else {
505
- return { sql: dbSchemaOps.previewCreateSql({ values, schema: selected.schemaKey }) }
502
+ let sql = await dbSchemaOps.previewCreateSql({ values, schema: selected.schemaKey })
503
+ return { sql }
506
504
  }
507
505
  }}
508
506
  computeBtnProps={({ values }) => {
509
507
  if (dbTableEditorState.alterTableKey && dbTableEditorAlterTableData.current) {
510
508
  let diff = diffTableEditorValues(dbTableEditorAlterTableData.current, values)
511
- let queries = dbSchemaOps.previewAlterSql({
512
- values: diff,
513
- schema: selected.schemaKey
514
- })
515
- if (!queries.length) {
509
+ if (!diff.operations.length) {
516
510
  return { text: 'No changes detected', disabled: true }
517
511
  }
518
512
  return {
519
- text: `Alter table (${pluralize(queries.length, 'change')} detected)`
513
+ text: `Alter table (${pluralize(diff.operations.length, 'change')} detected)`
520
514
  }
521
515
  } else {
522
516
  return { text: 'Create table' }
@@ -104,8 +104,8 @@ function updateGrid() {
104
104
  refresh?.();
105
105
  sendUserToast('Row deleted');
106
106
  })
107
- .catch(() => {
108
- sendUserToast('Error deleting row', true);
107
+ .catch((e) => {
108
+ sendUserToast(`Error deleting row: ${e?.message ?? e}`, true);
109
109
  });
110
110
  }
111
111
  })