next-workflow-builder 0.1.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 (754) hide show
  1. package/dist/client/components/ai-elements/canvas.d.ts +9 -0
  2. package/dist/client/components/ai-elements/canvas.d.ts.map +1 -0
  3. package/dist/client/components/ai-elements/canvas.js +7 -0
  4. package/dist/client/components/ai-elements/canvas.js.map +1 -0
  5. package/dist/client/components/ai-elements/connection.d.ts +3 -0
  6. package/dist/client/components/ai-elements/connection.d.ts.map +1 -0
  7. package/dist/client/components/ai-elements/connection.js +4 -0
  8. package/dist/client/components/ai-elements/connection.js.map +1 -0
  9. package/dist/client/components/ai-elements/controls.d.ts +2 -0
  10. package/dist/client/components/ai-elements/controls.d.ts.map +1 -0
  11. package/dist/client/components/ai-elements/controls.js +26 -0
  12. package/dist/client/components/ai-elements/controls.js.map +1 -0
  13. package/dist/client/components/ai-elements/edge.d.ts +6 -0
  14. package/dist/client/components/ai-elements/edge.d.ts.map +1 -0
  15. package/dist/client/components/ai-elements/edge.js +86 -0
  16. package/dist/client/components/ai-elements/edge.js.map +1 -0
  17. package/dist/client/components/ai-elements/node.d.ts +23 -0
  18. package/dist/client/components/ai-elements/node.d.ts.map +1 -0
  19. package/dist/client/components/ai-elements/node.js +13 -0
  20. package/dist/client/components/ai-elements/node.js.map +1 -0
  21. package/dist/client/components/ai-elements/panel.d.ts +6 -0
  22. package/dist/client/components/ai-elements/panel.d.ts.map +1 -0
  23. package/dist/client/components/ai-elements/panel.js +5 -0
  24. package/dist/client/components/ai-elements/panel.js.map +1 -0
  25. package/dist/client/components/ai-elements/prompt.d.ts +7 -0
  26. package/dist/client/components/ai-elements/prompt.d.ts.map +1 -0
  27. package/dist/client/components/ai-elements/prompt.js +220 -0
  28. package/dist/client/components/ai-elements/prompt.js.map +1 -0
  29. package/dist/client/components/ai-elements/shimmer.d.ts +10 -0
  30. package/dist/client/components/ai-elements/shimmer.d.ts.map +1 -0
  31. package/dist/client/components/ai-elements/shimmer.js +19 -0
  32. package/dist/client/components/ai-elements/shimmer.js.map +1 -0
  33. package/dist/client/components/auth/dialog.d.ts +8 -0
  34. package/dist/client/components/auth/dialog.d.ts.map +1 -0
  35. package/dist/client/components/auth/dialog.js +181 -0
  36. package/dist/client/components/auth/dialog.js.map +1 -0
  37. package/dist/client/components/deploy-button.d.ts +2 -0
  38. package/dist/client/components/deploy-button.d.ts.map +1 -0
  39. package/dist/client/components/deploy-button.js +8 -0
  40. package/dist/client/components/deploy-button.js.map +1 -0
  41. package/dist/client/components/global-modals.d.ts +2 -0
  42. package/dist/client/components/global-modals.d.ts.map +1 -0
  43. package/dist/client/components/global-modals.js +8 -0
  44. package/dist/client/components/global-modals.js.map +1 -0
  45. package/dist/client/components/icons/github-icon.d.ts +4 -0
  46. package/dist/client/components/icons/github-icon.d.ts.map +1 -0
  47. package/dist/client/components/icons/github-icon.js +5 -0
  48. package/dist/client/components/icons/github-icon.js.map +1 -0
  49. package/dist/client/components/index.d.ts +7 -0
  50. package/dist/client/components/index.d.ts.map +1 -0
  51. package/dist/client/components/index.js +8 -0
  52. package/dist/client/components/index.js.map +1 -0
  53. package/dist/client/components/layout-provider.d.ts +4 -0
  54. package/dist/client/components/layout-provider.d.ts.map +1 -0
  55. package/dist/client/components/layout-provider.js +20 -0
  56. package/dist/client/components/layout-provider.js.map +1 -0
  57. package/dist/client/components/overlays/add-connection-overlay.d.ts +14 -0
  58. package/dist/client/components/overlays/add-connection-overlay.d.ts.map +1 -0
  59. package/dist/client/components/overlays/add-connection-overlay.js +218 -0
  60. package/dist/client/components/overlays/add-connection-overlay.js.map +1 -0
  61. package/dist/client/components/overlays/api-keys-overlay.d.ts +6 -0
  62. package/dist/client/components/overlays/api-keys-overlay.d.ts.map +1 -0
  63. package/dist/client/components/overlays/api-keys-overlay.js +124 -0
  64. package/dist/client/components/overlays/api-keys-overlay.js.map +1 -0
  65. package/dist/client/components/overlays/configuration-overlay.d.ts +5 -0
  66. package/dist/client/components/overlays/configuration-overlay.d.ts.map +1 -0
  67. package/dist/client/components/overlays/configuration-overlay.js +325 -0
  68. package/dist/client/components/overlays/configuration-overlay.js.map +1 -0
  69. package/dist/client/components/overlays/confirm-overlay.d.ts +15 -0
  70. package/dist/client/components/overlays/confirm-overlay.d.ts.map +1 -0
  71. package/dist/client/components/overlays/confirm-overlay.js +31 -0
  72. package/dist/client/components/overlays/confirm-overlay.js.map +1 -0
  73. package/dist/client/components/overlays/edit-connection-overlay.d.ts +16 -0
  74. package/dist/client/components/overlays/edit-connection-overlay.d.ts.map +1 -0
  75. package/dist/client/components/overlays/edit-connection-overlay.js +213 -0
  76. package/dist/client/components/overlays/edit-connection-overlay.js.map +1 -0
  77. package/dist/client/components/overlays/export-workflow-overlay.d.ts +8 -0
  78. package/dist/client/components/overlays/export-workflow-overlay.d.ts.map +1 -0
  79. package/dist/client/components/overlays/export-workflow-overlay.js +22 -0
  80. package/dist/client/components/overlays/export-workflow-overlay.js.map +1 -0
  81. package/dist/client/components/overlays/integrations-overlay.d.ts +6 -0
  82. package/dist/client/components/overlays/integrations-overlay.d.ts.map +1 -0
  83. package/dist/client/components/overlays/integrations-overlay.js +56 -0
  84. package/dist/client/components/overlays/integrations-overlay.js.map +1 -0
  85. package/dist/client/components/overlays/make-public-overlay.d.ts +7 -0
  86. package/dist/client/components/overlays/make-public-overlay.d.ts.map +1 -0
  87. package/dist/client/components/overlays/make-public-overlay.js +17 -0
  88. package/dist/client/components/overlays/make-public-overlay.js.map +1 -0
  89. package/dist/client/components/overlays/overlay-container.d.ts +2 -0
  90. package/dist/client/components/overlays/overlay-container.d.ts.map +1 -0
  91. package/dist/client/components/overlays/overlay-container.js +236 -0
  92. package/dist/client/components/overlays/overlay-container.js.map +1 -0
  93. package/dist/client/components/overlays/overlay-footer.d.ts +3 -0
  94. package/dist/client/components/overlays/overlay-footer.d.ts.map +1 -0
  95. package/dist/client/components/overlays/overlay-footer.js +25 -0
  96. package/dist/client/components/overlays/overlay-footer.js.map +1 -0
  97. package/dist/client/components/overlays/overlay-header.d.ts +8 -0
  98. package/dist/client/components/overlays/overlay-header.d.ts.map +1 -0
  99. package/dist/client/components/overlays/overlay-header.js +32 -0
  100. package/dist/client/components/overlays/overlay-header.js.map +1 -0
  101. package/dist/client/components/overlays/overlay-provider.d.ts +17 -0
  102. package/dist/client/components/overlays/overlay-provider.d.ts.map +1 -0
  103. package/dist/client/components/overlays/overlay-provider.js +120 -0
  104. package/dist/client/components/overlays/overlay-provider.js.map +1 -0
  105. package/dist/client/components/overlays/overlay-sync.d.ts +2 -0
  106. package/dist/client/components/overlays/overlay-sync.d.ts.map +1 -0
  107. package/dist/client/components/overlays/overlay-sync.js +21 -0
  108. package/dist/client/components/overlays/overlay-sync.js.map +1 -0
  109. package/dist/client/components/overlays/overlay.d.ts +7 -0
  110. package/dist/client/components/overlays/overlay.d.ts.map +1 -0
  111. package/dist/client/components/overlays/overlay.js +9 -0
  112. package/dist/client/components/overlays/overlay.js.map +1 -0
  113. package/dist/client/components/overlays/settings-overlay.d.ts +6 -0
  114. package/dist/client/components/overlays/settings-overlay.d.ts.map +1 -0
  115. package/dist/client/components/overlays/settings-overlay.js +64 -0
  116. package/dist/client/components/overlays/settings-overlay.js.map +1 -0
  117. package/dist/client/components/overlays/types.d.ts +64 -0
  118. package/dist/client/components/overlays/types.d.ts.map +1 -0
  119. package/dist/client/components/overlays/types.js +2 -0
  120. package/dist/client/components/overlays/types.js.map +1 -0
  121. package/dist/client/components/overlays/workflow-issues-overlay.d.ts +37 -0
  122. package/dist/client/components/overlays/workflow-issues-overlay.d.ts.map +1 -0
  123. package/dist/client/components/overlays/workflow-issues-overlay.js +67 -0
  124. package/dist/client/components/overlays/workflow-issues-overlay.js.map +1 -0
  125. package/dist/client/components/pages/home-page.d.ts +3 -0
  126. package/dist/client/components/pages/home-page.d.ts.map +1 -0
  127. package/dist/client/components/pages/home-page.js +100 -0
  128. package/dist/client/components/pages/home-page.js.map +1 -0
  129. package/dist/client/components/pages/workflow-page.d.ts +4 -0
  130. package/dist/client/components/pages/workflow-page.d.ts.map +1 -0
  131. package/dist/client/components/pages/workflow-page.js +23 -0
  132. package/dist/client/components/pages/workflow-page.js.map +1 -0
  133. package/dist/client/components/pages/workflows-redirect.d.ts +3 -0
  134. package/dist/client/components/pages/workflows-redirect.d.ts.map +1 -0
  135. package/dist/client/components/pages/workflows-redirect.js +30 -0
  136. package/dist/client/components/pages/workflows-redirect.js.map +1 -0
  137. package/dist/client/components/settings/account-settings.d.ts +9 -0
  138. package/dist/client/components/settings/account-settings.d.ts.map +1 -0
  139. package/dist/client/components/settings/account-settings.js +8 -0
  140. package/dist/client/components/settings/account-settings.js.map +1 -0
  141. package/dist/client/components/settings/integrations-manager.d.ts +7 -0
  142. package/dist/client/components/settings/integrations-manager.d.ts.map +1 -0
  143. package/dist/client/components/settings/integrations-manager.js +120 -0
  144. package/dist/client/components/settings/integrations-manager.js.map +1 -0
  145. package/dist/client/components/theme-provider.d.ts +5 -0
  146. package/dist/client/components/theme-provider.d.ts.map +1 -0
  147. package/dist/client/components/theme-provider.js +6 -0
  148. package/dist/client/components/theme-provider.js.map +1 -0
  149. package/dist/client/components/ui/alert-dialog.d.ts +15 -0
  150. package/dist/client/components/ui/alert-dialog.d.ts.map +1 -0
  151. package/dist/client/components/ui/alert-dialog.js +40 -0
  152. package/dist/client/components/ui/alert-dialog.js.map +1 -0
  153. package/dist/client/components/ui/alert.d.ts +10 -0
  154. package/dist/client/components/ui/alert.d.ts.map +1 -0
  155. package/dist/client/components/ui/alert.js +25 -0
  156. package/dist/client/components/ui/alert.js.map +1 -0
  157. package/dist/client/components/ui/animated-border.d.ts +6 -0
  158. package/dist/client/components/ui/animated-border.d.ts.map +1 -0
  159. package/dist/client/components/ui/animated-border.js +34 -0
  160. package/dist/client/components/ui/animated-border.js.map +1 -0
  161. package/dist/client/components/ui/avatar.d.ts +7 -0
  162. package/dist/client/components/ui/avatar.d.ts.map +1 -0
  163. package/dist/client/components/ui/avatar.js +15 -0
  164. package/dist/client/components/ui/avatar.js.map +1 -0
  165. package/dist/client/components/ui/button-group.d.ts +12 -0
  166. package/dist/client/components/ui/button-group.d.ts.map +1 -0
  167. package/dist/client/components/ui/button-group.js +28 -0
  168. package/dist/client/components/ui/button-group.js.map +1 -0
  169. package/dist/client/components/ui/button.d.ts +11 -0
  170. package/dist/client/components/ui/button.d.ts.map +1 -0
  171. package/dist/client/components/ui/button.js +34 -0
  172. package/dist/client/components/ui/button.js.map +1 -0
  173. package/dist/client/components/ui/card.d.ts +10 -0
  174. package/dist/client/components/ui/card.d.ts.map +1 -0
  175. package/dist/client/components/ui/card.js +25 -0
  176. package/dist/client/components/ui/card.js.map +1 -0
  177. package/dist/client/components/ui/checkbox.d.ts +5 -0
  178. package/dist/client/components/ui/checkbox.d.ts.map +1 -0
  179. package/dist/client/components/ui/checkbox.js +10 -0
  180. package/dist/client/components/ui/checkbox.js.map +1 -0
  181. package/dist/client/components/ui/code-editor.d.ts +3 -0
  182. package/dist/client/components/ui/code-editor.d.ts.map +1 -0
  183. package/dist/client/components/ui/code-editor.js +17 -0
  184. package/dist/client/components/ui/code-editor.js.map +1 -0
  185. package/dist/client/components/ui/collapsible.d.ts +6 -0
  186. package/dist/client/components/ui/collapsible.d.ts.map +1 -0
  187. package/dist/client/components/ui/collapsible.js +14 -0
  188. package/dist/client/components/ui/collapsible.js.map +1 -0
  189. package/dist/client/components/ui/context-menu.d.ts +26 -0
  190. package/dist/client/components/ui/context-menu.d.ts.map +1 -0
  191. package/dist/client/components/ui/context-menu.js +52 -0
  192. package/dist/client/components/ui/context-menu.js.map +1 -0
  193. package/dist/client/components/ui/dialog.d.ts +16 -0
  194. package/dist/client/components/ui/dialog.d.ts.map +1 -0
  195. package/dist/client/components/ui/dialog.js +37 -0
  196. package/dist/client/components/ui/dialog.js.map +1 -0
  197. package/dist/client/components/ui/drawer.d.ts +14 -0
  198. package/dist/client/components/ui/drawer.d.ts.map +1 -0
  199. package/dist/client/components/ui/drawer.js +36 -0
  200. package/dist/client/components/ui/drawer.js.map +1 -0
  201. package/dist/client/components/ui/dropdown-menu.d.ts +26 -0
  202. package/dist/client/components/ui/dropdown-menu.d.ts.map +1 -0
  203. package/dist/client/components/ui/dropdown-menu.js +52 -0
  204. package/dist/client/components/ui/dropdown-menu.js.map +1 -0
  205. package/dist/client/components/ui/input.d.ts +4 -0
  206. package/dist/client/components/ui/input.d.ts.map +1 -0
  207. package/dist/client/components/ui/input.js +7 -0
  208. package/dist/client/components/ui/input.js.map +1 -0
  209. package/dist/client/components/ui/integration-icon.d.ts +7 -0
  210. package/dist/client/components/ui/integration-icon.d.ts.map +1 -0
  211. package/dist/client/components/ui/integration-icon.js +25 -0
  212. package/dist/client/components/ui/integration-icon.js.map +1 -0
  213. package/dist/client/components/ui/integration-selector.d.ts +12 -0
  214. package/dist/client/components/ui/integration-selector.d.ts.map +1 -0
  215. package/dist/client/components/ui/integration-selector.js +198 -0
  216. package/dist/client/components/ui/integration-selector.js.map +1 -0
  217. package/dist/client/components/ui/label.d.ts +5 -0
  218. package/dist/client/components/ui/label.d.ts.map +1 -0
  219. package/dist/client/components/ui/label.js +9 -0
  220. package/dist/client/components/ui/label.js.map +1 -0
  221. package/dist/client/components/ui/resizable.d.ts +9 -0
  222. package/dist/client/components/ui/resizable.d.ts.map +1 -0
  223. package/dist/client/components/ui/resizable.js +16 -0
  224. package/dist/client/components/ui/resizable.js.map +1 -0
  225. package/dist/client/components/ui/select.d.ts +16 -0
  226. package/dist/client/components/ui/select.d.ts.map +1 -0
  227. package/dist/client/components/ui/select.js +39 -0
  228. package/dist/client/components/ui/select.js.map +1 -0
  229. package/dist/client/components/ui/separator.d.ts +5 -0
  230. package/dist/client/components/ui/separator.d.ts.map +1 -0
  231. package/dist/client/components/ui/separator.js +9 -0
  232. package/dist/client/components/ui/separator.js.map +1 -0
  233. package/dist/client/components/ui/sheet.d.ts +14 -0
  234. package/dist/client/components/ui/sheet.d.ts.map +1 -0
  235. package/dist/client/components/ui/sheet.js +41 -0
  236. package/dist/client/components/ui/sheet.js.map +1 -0
  237. package/dist/client/components/ui/sonner.d.ts +4 -0
  238. package/dist/client/components/ui/sonner.d.ts.map +1 -0
  239. package/dist/client/components/ui/sonner.js +22 -0
  240. package/dist/client/components/ui/sonner.js.map +1 -0
  241. package/dist/client/components/ui/spinner.d.ts +4 -0
  242. package/dist/client/components/ui/spinner.d.ts.map +1 -0
  243. package/dist/client/components/ui/spinner.js +9 -0
  244. package/dist/client/components/ui/spinner.js.map +1 -0
  245. package/dist/client/components/ui/tabs.d.ts +8 -0
  246. package/dist/client/components/ui/tabs.d.ts.map +1 -0
  247. package/dist/client/components/ui/tabs.js +18 -0
  248. package/dist/client/components/ui/tabs.js.map +1 -0
  249. package/dist/client/components/ui/template-autocomplete.d.ts +14 -0
  250. package/dist/client/components/ui/template-autocomplete.d.ts.map +1 -0
  251. package/dist/client/components/ui/template-autocomplete.js +239 -0
  252. package/dist/client/components/ui/template-autocomplete.js.map +1 -0
  253. package/dist/client/components/ui/template-badge-input.d.ts +10 -0
  254. package/dist/client/components/ui/template-badge-input.d.ts.map +1 -0
  255. package/dist/client/components/ui/template-badge-input.js +360 -0
  256. package/dist/client/components/ui/template-badge-input.js.map +1 -0
  257. package/dist/client/components/ui/template-badge-textarea.d.ts +11 -0
  258. package/dist/client/components/ui/template-badge-textarea.d.ts.map +1 -0
  259. package/dist/client/components/ui/template-badge-textarea.js +431 -0
  260. package/dist/client/components/ui/template-badge-textarea.js.map +1 -0
  261. package/dist/client/components/ui/timezone-select.d.ts +9 -0
  262. package/dist/client/components/ui/timezone-select.d.ts.map +1 -0
  263. package/dist/client/components/ui/timezone-select.js +87 -0
  264. package/dist/client/components/ui/timezone-select.js.map +1 -0
  265. package/dist/client/components/ui/tooltip.d.ts +8 -0
  266. package/dist/client/components/ui/tooltip.d.ts.map +1 -0
  267. package/dist/client/components/ui/tooltip.js +18 -0
  268. package/dist/client/components/ui/tooltip.js.map +1 -0
  269. package/dist/client/components/ui/workflow-icon.d.ts +4 -0
  270. package/dist/client/components/ui/workflow-icon.d.ts.map +1 -0
  271. package/dist/client/components/ui/workflow-icon.js +5 -0
  272. package/dist/client/components/ui/workflow-icon.js.map +1 -0
  273. package/dist/client/components/workflow/config/action-config-renderer.d.ts +10 -0
  274. package/dist/client/components/workflow/config/action-config-renderer.d.ts.map +1 -0
  275. package/dist/client/components/workflow/config/action-config-renderer.js +64 -0
  276. package/dist/client/components/workflow/config/action-config-renderer.js.map +1 -0
  277. package/dist/client/components/workflow/config/action-config.d.ts +9 -0
  278. package/dist/client/components/workflow/config/action-config.d.ts.map +1 -0
  279. package/dist/client/components/workflow/config/action-config.js +174 -0
  280. package/dist/client/components/workflow/config/action-config.js.map +1 -0
  281. package/dist/client/components/workflow/config/action-grid.d.ts +8 -0
  282. package/dist/client/components/workflow/config/action-grid.d.ts.map +1 -0
  283. package/dist/client/components/workflow/config/action-grid.js +162 -0
  284. package/dist/client/components/workflow/config/action-grid.js.map +1 -0
  285. package/dist/client/components/workflow/config/condition-config.d.ts +8 -0
  286. package/dist/client/components/workflow/config/condition-config.d.ts.map +1 -0
  287. package/dist/client/components/workflow/config/condition-config.js +7 -0
  288. package/dist/client/components/workflow/config/condition-config.js.map +1 -0
  289. package/dist/client/components/workflow/config/editor-config.d.ts +13 -0
  290. package/dist/client/components/workflow/config/editor-config.d.ts.map +1 -0
  291. package/dist/client/components/workflow/config/editor-config.js +34 -0
  292. package/dist/client/components/workflow/config/editor-config.js.map +1 -0
  293. package/dist/client/components/workflow/config/schema-builder.d.ts +17 -0
  294. package/dist/client/components/workflow/config/schema-builder.d.ts.map +1 -0
  295. package/dist/client/components/workflow/config/schema-builder.js +55 -0
  296. package/dist/client/components/workflow/config/schema-builder.js.map +1 -0
  297. package/dist/client/components/workflow/config/system-action.d.ts +9 -0
  298. package/dist/client/components/workflow/config/system-action.d.ts.map +1 -0
  299. package/dist/client/components/workflow/config/system-action.js +33 -0
  300. package/dist/client/components/workflow/config/system-action.js.map +1 -0
  301. package/dist/client/components/workflow/config/trigger-config.d.ts +9 -0
  302. package/dist/client/components/workflow/config/trigger-config.d.ts.map +1 -0
  303. package/dist/client/components/workflow/config/trigger-config.js +33 -0
  304. package/dist/client/components/workflow/config/trigger-config.js.map +1 -0
  305. package/dist/client/components/workflow/node-config-panel.d.ts +3 -0
  306. package/dist/client/components/workflow/node-config-panel.d.ts.map +1 -0
  307. package/dist/client/components/workflow/node-config-panel.js +353 -0
  308. package/dist/client/components/workflow/node-config-panel.js.map +1 -0
  309. package/dist/client/components/workflow/nodes/action-node.d.ts +10 -0
  310. package/dist/client/components/workflow/nodes/action-node.d.ts.map +1 -0
  311. package/dist/client/components/workflow/nodes/action-node.js +176 -0
  312. package/dist/client/components/workflow/nodes/action-node.js.map +1 -0
  313. package/dist/client/components/workflow/nodes/add-node.d.ts +9 -0
  314. package/dist/client/components/workflow/nodes/add-node.d.ts.map +1 -0
  315. package/dist/client/components/workflow/nodes/add-node.js +8 -0
  316. package/dist/client/components/workflow/nodes/add-node.js.map +1 -0
  317. package/dist/client/components/workflow/nodes/trigger-node.d.ts +8 -0
  318. package/dist/client/components/workflow/nodes/trigger-node.d.ts.map +1 -0
  319. package/dist/client/components/workflow/nodes/trigger-node.js +25 -0
  320. package/dist/client/components/workflow/nodes/trigger-node.js.map +1 -0
  321. package/dist/client/components/workflow/persistent-canvas.d.ts +2 -0
  322. package/dist/client/components/workflow/persistent-canvas.d.ts.map +1 -0
  323. package/dist/client/components/workflow/persistent-canvas.js +13 -0
  324. package/dist/client/components/workflow/persistent-canvas.js.map +1 -0
  325. package/dist/client/components/workflow/utils/code-generators.d.ts +12 -0
  326. package/dist/client/components/workflow/utils/code-generators.d.ts.map +1 -0
  327. package/dist/client/components/workflow/utils/code-generators.js +70 -0
  328. package/dist/client/components/workflow/utils/code-generators.js.map +1 -0
  329. package/dist/client/components/workflow/workflow-canvas.d.ts +3 -0
  330. package/dist/client/components/workflow/workflow-canvas.d.ts.map +1 -0
  331. package/dist/client/components/workflow/workflow-canvas.js +347 -0
  332. package/dist/client/components/workflow/workflow-canvas.js.map +1 -0
  333. package/dist/client/components/workflow/workflow-context-menu.d.ts +27 -0
  334. package/dist/client/components/workflow/workflow-context-menu.d.ts.map +1 -0
  335. package/dist/client/components/workflow/workflow-context-menu.js +156 -0
  336. package/dist/client/components/workflow/workflow-context-menu.js.map +1 -0
  337. package/dist/client/components/workflow/workflow-editor.d.ts +6 -0
  338. package/dist/client/components/workflow/workflow-editor.d.ts.map +1 -0
  339. package/dist/client/components/workflow/workflow-editor.js +443 -0
  340. package/dist/client/components/workflow/workflow-editor.js.map +1 -0
  341. package/dist/client/components/workflow/workflow-runs.d.ts +8 -0
  342. package/dist/client/components/workflow/workflow-runs.d.ts.map +1 -0
  343. package/dist/client/components/workflow/workflow-runs.js +336 -0
  344. package/dist/client/components/workflow/workflow-runs.js.map +1 -0
  345. package/dist/client/components/workflow/workflow-toolbar.d.ts +6 -0
  346. package/dist/client/components/workflow/workflow-toolbar.d.ts.map +1 -0
  347. package/dist/client/components/workflow/workflow-toolbar.js +707 -0
  348. package/dist/client/components/workflow/workflow-toolbar.js.map +1 -0
  349. package/dist/client/components/workflows/user-menu.d.ts +2 -0
  350. package/dist/client/components/workflows/user-menu.d.ts.map +1 -0
  351. package/dist/client/components/workflows/user-menu.js +65 -0
  352. package/dist/client/components/workflows/user-menu.js.map +1 -0
  353. package/dist/client/hooks/use-mobile.d.ts +2 -0
  354. package/dist/client/hooks/use-mobile.d.ts.map +1 -0
  355. package/dist/client/hooks/use-mobile.js +16 -0
  356. package/dist/client/hooks/use-mobile.js.map +1 -0
  357. package/dist/client/hooks/use-touch.d.ts +2 -0
  358. package/dist/client/hooks/use-touch.d.ts.map +1 -0
  359. package/dist/client/hooks/use-touch.js +12 -0
  360. package/dist/client/hooks/use-touch.js.map +1 -0
  361. package/dist/client/index.d.ts +11 -0
  362. package/dist/client/index.d.ts.map +1 -0
  363. package/dist/client/index.js +12 -0
  364. package/dist/client/index.js.map +1 -0
  365. package/dist/client/package.json +1 -0
  366. package/dist/lib/api-client.d.ts +330 -0
  367. package/dist/lib/api-client.d.ts.map +1 -0
  368. package/dist/lib/api-client.js +274 -0
  369. package/dist/lib/api-client.js.map +1 -0
  370. package/dist/lib/atoms/overlay.d.ts +15 -0
  371. package/dist/lib/atoms/overlay.d.ts.map +1 -0
  372. package/dist/lib/atoms/overlay.js +78 -0
  373. package/dist/lib/atoms/overlay.js.map +1 -0
  374. package/dist/lib/auth-client.d.ts +871 -0
  375. package/dist/lib/auth-client.d.ts.map +1 -0
  376. package/dist/lib/auth-client.js +10 -0
  377. package/dist/lib/auth-client.js.map +1 -0
  378. package/dist/lib/auth-providers.d.ts +12 -0
  379. package/dist/lib/auth-providers.d.ts.map +1 -0
  380. package/dist/lib/auth-providers.js +27 -0
  381. package/dist/lib/auth-providers.js.map +1 -0
  382. package/dist/lib/auth.d.ts +5 -0
  383. package/dist/lib/auth.d.ts.map +1 -0
  384. package/dist/lib/auth.js +62 -0
  385. package/dist/lib/auth.js.map +1 -0
  386. package/dist/lib/codegen-templates/condition.d.ts +3 -0
  387. package/dist/lib/codegen-templates/condition.d.ts.map +1 -0
  388. package/dist/lib/codegen-templates/condition.js +9 -0
  389. package/dist/lib/codegen-templates/condition.js.map +1 -0
  390. package/dist/lib/codegen-templates/database-query.d.ts +3 -0
  391. package/dist/lib/codegen-templates/database-query.d.ts.map +1 -0
  392. package/dist/lib/codegen-templates/database-query.js +24 -0
  393. package/dist/lib/codegen-templates/database-query.js.map +1 -0
  394. package/dist/lib/codegen-templates/http-request.d.ts +3 -0
  395. package/dist/lib/codegen-templates/http-request.d.ts.map +1 -0
  396. package/dist/lib/codegen-templates/http-request.js +44 -0
  397. package/dist/lib/codegen-templates/http-request.js.map +1 -0
  398. package/dist/lib/condition-validator.d.ts +10 -0
  399. package/dist/lib/condition-validator.d.ts.map +1 -0
  400. package/dist/lib/condition-validator.js +230 -0
  401. package/dist/lib/condition-validator.js.map +1 -0
  402. package/dist/lib/constants.d.ts +3 -0
  403. package/dist/lib/constants.d.ts.map +1 -0
  404. package/dist/lib/constants.js +3 -0
  405. package/dist/lib/constants.js.map +1 -0
  406. package/dist/lib/credential-fetcher.d.ts +4 -0
  407. package/dist/lib/credential-fetcher.d.ts.map +1 -0
  408. package/dist/lib/credential-fetcher.js +38 -0
  409. package/dist/lib/credential-fetcher.js.map +1 -0
  410. package/dist/lib/db/index.d.ts +4 -0
  411. package/dist/lib/db/index.d.ts.map +1 -0
  412. package/dist/lib/db/index.js +17 -0
  413. package/dist/lib/db/index.js.map +1 -0
  414. package/dist/lib/db/integrations.d.ts +36 -0
  415. package/dist/lib/db/integrations.d.ts.map +1 -0
  416. package/dist/lib/db/integrations.js +170 -0
  417. package/dist/lib/db/integrations.js.map +1 -0
  418. package/dist/lib/db/schema.d.ts +1474 -0
  419. package/dist/lib/db/schema.d.ts.map +1 -0
  420. package/dist/lib/db/schema.js +143 -0
  421. package/dist/lib/db/schema.js.map +1 -0
  422. package/dist/lib/integrations-store.d.ts +13 -0
  423. package/dist/lib/integrations-store.d.ts.map +1 -0
  424. package/dist/lib/integrations-store.js +10 -0
  425. package/dist/lib/integrations-store.js.map +1 -0
  426. package/dist/lib/managed-connection.d.ts +49 -0
  427. package/dist/lib/managed-connection.d.ts.map +1 -0
  428. package/dist/lib/managed-connection.js +21 -0
  429. package/dist/lib/managed-connection.js.map +1 -0
  430. package/dist/lib/monaco-theme.d.ts +29 -0
  431. package/dist/lib/monaco-theme.d.ts.map +1 -0
  432. package/dist/lib/monaco-theme.js +54 -0
  433. package/dist/lib/monaco-theme.js.map +1 -0
  434. package/dist/lib/plugin-registry.d.ts +10 -0
  435. package/dist/lib/plugin-registry.d.ts.map +1 -0
  436. package/dist/lib/plugin-registry.js +16 -0
  437. package/dist/lib/plugin-registry.js.map +1 -0
  438. package/dist/lib/steps/credentials.d.ts +14 -0
  439. package/dist/lib/steps/credentials.d.ts.map +1 -0
  440. package/dist/lib/steps/credentials.js +65 -0
  441. package/dist/lib/steps/credentials.js.map +1 -0
  442. package/dist/lib/steps/http-request.d.ts +22 -0
  443. package/dist/lib/steps/http-request.d.ts.map +1 -0
  444. package/dist/lib/steps/http-request.js +72 -0
  445. package/dist/lib/steps/http-request.js.map +1 -0
  446. package/dist/lib/steps/index.d.ts +10 -0
  447. package/dist/lib/steps/index.d.ts.map +1 -0
  448. package/dist/lib/steps/index.js +14 -0
  449. package/dist/lib/steps/index.js.map +1 -0
  450. package/dist/lib/steps/step-handler.d.ts +30 -0
  451. package/dist/lib/steps/step-handler.d.ts.map +1 -0
  452. package/dist/lib/steps/step-handler.js +105 -0
  453. package/dist/lib/steps/step-handler.js.map +1 -0
  454. package/dist/lib/steps/trigger.d.ts +21 -0
  455. package/dist/lib/steps/trigger.d.ts.map +1 -0
  456. package/dist/lib/steps/trigger.js +17 -0
  457. package/dist/lib/steps/trigger.js.map +1 -0
  458. package/dist/lib/types/integration.d.ts +3 -0
  459. package/dist/lib/types/integration.d.ts.map +1 -0
  460. package/dist/lib/types/integration.js +2 -0
  461. package/dist/lib/types/integration.js.map +1 -0
  462. package/dist/lib/utils/format-number.d.ts +2 -0
  463. package/dist/lib/utils/format-number.d.ts.map +1 -0
  464. package/dist/lib/utils/format-number.js +16 -0
  465. package/dist/lib/utils/format-number.js.map +1 -0
  466. package/dist/lib/utils/id.d.ts +2 -0
  467. package/dist/lib/utils/id.d.ts.map +1 -0
  468. package/dist/lib/utils/id.js +6 -0
  469. package/dist/lib/utils/id.js.map +1 -0
  470. package/dist/lib/utils/redact.d.ts +4 -0
  471. package/dist/lib/utils/redact.d.ts.map +1 -0
  472. package/dist/lib/utils/redact.js +143 -0
  473. package/dist/lib/utils/redact.js.map +1 -0
  474. package/dist/lib/utils/template.d.ts +18 -0
  475. package/dist/lib/utils/template.d.ts.map +1 -0
  476. package/dist/lib/utils/template.js +323 -0
  477. package/dist/lib/utils/template.js.map +1 -0
  478. package/dist/lib/utils/time.d.ts +2 -0
  479. package/dist/lib/utils/time.d.ts.map +1 -0
  480. package/dist/lib/utils/time.js +34 -0
  481. package/dist/lib/utils/time.js.map +1 -0
  482. package/dist/lib/utils.d.ts +5 -0
  483. package/dist/lib/utils.d.ts.map +1 -0
  484. package/dist/lib/utils.js +99 -0
  485. package/dist/lib/utils.js.map +1 -0
  486. package/dist/lib/workflow-codegen-sdk.d.ts +4 -0
  487. package/dist/lib/workflow-codegen-sdk.d.ts.map +1 -0
  488. package/dist/lib/workflow-codegen-sdk.js +482 -0
  489. package/dist/lib/workflow-codegen-sdk.js.map +1 -0
  490. package/dist/lib/workflow-codegen-shared.d.ts +26 -0
  491. package/dist/lib/workflow-codegen-shared.d.ts.map +1 -0
  492. package/dist/lib/workflow-codegen-shared.js +232 -0
  493. package/dist/lib/workflow-codegen-shared.js.map +1 -0
  494. package/dist/lib/workflow-codegen.d.ts +18 -0
  495. package/dist/lib/workflow-codegen.d.ts.map +1 -0
  496. package/dist/lib/workflow-codegen.js +786 -0
  497. package/dist/lib/workflow-codegen.js.map +1 -0
  498. package/dist/lib/workflow-executor.workflow.d.ts +33 -0
  499. package/dist/lib/workflow-executor.workflow.d.ts.map +1 -0
  500. package/dist/lib/workflow-executor.workflow.js +605 -0
  501. package/dist/lib/workflow-executor.workflow.js.map +1 -0
  502. package/dist/lib/workflow-logging.d.ts +29 -0
  503. package/dist/lib/workflow-logging.d.ts.map +1 -0
  504. package/dist/lib/workflow-logging.js +48 -0
  505. package/dist/lib/workflow-logging.js.map +1 -0
  506. package/dist/lib/workflow-store.d.ts +118 -0
  507. package/dist/lib/workflow-store.d.ts.map +1 -0
  508. package/dist/lib/workflow-store.js +351 -0
  509. package/dist/lib/workflow-store.js.map +1 -0
  510. package/dist/plugins/condition/components/condition-fields.d.ts +7 -0
  511. package/dist/plugins/condition/components/condition-fields.d.ts.map +1 -0
  512. package/dist/plugins/condition/components/condition-fields.js +8 -0
  513. package/dist/plugins/condition/components/condition-fields.js.map +1 -0
  514. package/dist/plugins/condition/index.d.ts +4 -0
  515. package/dist/plugins/condition/index.d.ts.map +1 -0
  516. package/dist/plugins/condition/index.js +23 -0
  517. package/dist/plugins/condition/index.js.map +1 -0
  518. package/dist/plugins/condition/steps/evaluate.d.ts +15 -0
  519. package/dist/plugins/condition/steps/evaluate.d.ts.map +1 -0
  520. package/dist/plugins/condition/steps/evaluate.js +10 -0
  521. package/dist/plugins/condition/steps/evaluate.js.map +1 -0
  522. package/dist/plugins/database/components/database-query-fields.d.ts +7 -0
  523. package/dist/plugins/database/components/database-query-fields.d.ts.map +1 -0
  524. package/dist/plugins/database/components/database-query-fields.js +18 -0
  525. package/dist/plugins/database/components/database-query-fields.js.map +1 -0
  526. package/dist/plugins/database/index.d.ts +4 -0
  527. package/dist/plugins/database/index.d.ts.map +1 -0
  528. package/dist/plugins/database/index.js +23 -0
  529. package/dist/plugins/database/index.js.map +1 -0
  530. package/dist/plugins/database/steps/query.d.ts +20 -0
  531. package/dist/plugins/database/steps/query.d.ts.map +1 -0
  532. package/dist/plugins/database/steps/query.js +92 -0
  533. package/dist/plugins/database/steps/query.js.map +1 -0
  534. package/dist/plugins/index.d.ts +10 -0
  535. package/dist/plugins/index.d.ts.map +1 -0
  536. package/dist/plugins/index.js +6 -0
  537. package/dist/plugins/index.js.map +1 -0
  538. package/dist/plugins/legacy-mappings.d.ts +2 -0
  539. package/dist/plugins/legacy-mappings.d.ts.map +1 -0
  540. package/dist/plugins/legacy-mappings.js +2 -0
  541. package/dist/plugins/legacy-mappings.js.map +1 -0
  542. package/dist/plugins/loop/components/loop-fields.d.ts +7 -0
  543. package/dist/plugins/loop/components/loop-fields.d.ts.map +1 -0
  544. package/dist/plugins/loop/components/loop-fields.js +8 -0
  545. package/dist/plugins/loop/components/loop-fields.js.map +1 -0
  546. package/dist/plugins/loop/icon.d.ts +4 -0
  547. package/dist/plugins/loop/icon.d.ts.map +1 -0
  548. package/dist/plugins/loop/icon.js +5 -0
  549. package/dist/plugins/loop/icon.js.map +1 -0
  550. package/dist/plugins/loop/index.d.ts +4 -0
  551. package/dist/plugins/loop/index.d.ts.map +1 -0
  552. package/dist/plugins/loop/index.js +52 -0
  553. package/dist/plugins/loop/index.js.map +1 -0
  554. package/dist/plugins/loop/steps/iterate.d.ts +24 -0
  555. package/dist/plugins/loop/steps/iterate.d.ts.map +1 -0
  556. package/dist/plugins/loop/steps/iterate.js +31 -0
  557. package/dist/plugins/loop/steps/iterate.js.map +1 -0
  558. package/dist/plugins/registry.d.ts +136 -0
  559. package/dist/plugins/registry.d.ts.map +1 -0
  560. package/dist/plugins/registry.js +241 -0
  561. package/dist/plugins/registry.js.map +1 -0
  562. package/dist/plugins/switch/icon.d.ts +4 -0
  563. package/dist/plugins/switch/icon.d.ts.map +1 -0
  564. package/dist/plugins/switch/icon.js +5 -0
  565. package/dist/plugins/switch/icon.js.map +1 -0
  566. package/dist/plugins/switch/index.d.ts +4 -0
  567. package/dist/plugins/switch/index.d.ts.map +1 -0
  568. package/dist/plugins/switch/index.js +81 -0
  569. package/dist/plugins/switch/index.js.map +1 -0
  570. package/dist/plugins/switch/steps/evaluate.d.ts +27 -0
  571. package/dist/plugins/switch/steps/evaluate.d.ts.map +1 -0
  572. package/dist/plugins/switch/steps/evaluate.js +81 -0
  573. package/dist/plugins/switch/steps/evaluate.js.map +1 -0
  574. package/dist/scripts/create-plugin.d.ts +3 -0
  575. package/dist/scripts/create-plugin.d.ts.map +1 -0
  576. package/dist/scripts/create-plugin.js +205 -0
  577. package/dist/scripts/create-plugin.js.map +1 -0
  578. package/dist/scripts/discover-plugins.d.ts +3 -0
  579. package/dist/scripts/discover-plugins.d.ts.map +1 -0
  580. package/dist/scripts/discover-plugins.js +729 -0
  581. package/dist/scripts/discover-plugins.js.map +1 -0
  582. package/dist/scripts/migrate-prod.d.ts +2 -0
  583. package/dist/scripts/migrate-prod.d.ts.map +1 -0
  584. package/dist/scripts/migrate-prod.js +17 -0
  585. package/dist/scripts/migrate-prod.js.map +1 -0
  586. package/dist/scripts/nwb.d.ts +3 -0
  587. package/dist/scripts/nwb.d.ts.map +1 -0
  588. package/dist/scripts/nwb.js +33 -0
  589. package/dist/scripts/nwb.js.map +1 -0
  590. package/dist/server/api/handler-utils.d.ts +22 -0
  591. package/dist/server/api/handler-utils.d.ts.map +1 -0
  592. package/dist/server/api/handler-utils.js +42 -0
  593. package/dist/server/api/handler-utils.js.map +1 -0
  594. package/dist/server/api/handlers/ai/generate/route.d.ts +3 -0
  595. package/dist/server/api/handlers/ai/generate/route.d.ts.map +1 -0
  596. package/dist/server/api/handlers/ai/generate/route.js +260 -0
  597. package/dist/server/api/handlers/ai/generate/route.js.map +1 -0
  598. package/dist/server/api/handlers/api-keys/[keyId]/route.d.ts +3 -0
  599. package/dist/server/api/handlers/api-keys/[keyId]/route.d.ts.map +1 -0
  600. package/dist/server/api/handlers/api-keys/[keyId]/route.js +25 -0
  601. package/dist/server/api/handlers/api-keys/[keyId]/route.js.map +1 -0
  602. package/dist/server/api/handlers/api-keys/route.d.ts +3 -0
  603. package/dist/server/api/handlers/api-keys/route.d.ts.map +1 -0
  604. package/dist/server/api/handlers/api-keys/route.js +84 -0
  605. package/dist/server/api/handlers/api-keys/route.js.map +1 -0
  606. package/dist/server/api/handlers/auth/route.d.ts +3 -0
  607. package/dist/server/api/handlers/auth/route.d.ts.map +1 -0
  608. package/dist/server/api/handlers/auth/route.js +14 -0
  609. package/dist/server/api/handlers/auth/route.js.map +1 -0
  610. package/dist/server/api/handlers/integrations/[integrationId]/route.d.ts +16 -0
  611. package/dist/server/api/handlers/integrations/[integrationId]/route.d.ts.map +1 -0
  612. package/dist/server/api/handlers/integrations/[integrationId]/route.js +117 -0
  613. package/dist/server/api/handlers/integrations/[integrationId]/route.js.map +1 -0
  614. package/dist/server/api/handlers/integrations/[integrationId]/test/route.d.ts +7 -0
  615. package/dist/server/api/handlers/integrations/[integrationId]/test/route.d.ts.map +1 -0
  616. package/dist/server/api/handlers/integrations/[integrationId]/test/route.js +96 -0
  617. package/dist/server/api/handlers/integrations/[integrationId]/test/route.js.map +1 -0
  618. package/dist/server/api/handlers/integrations/route.d.ts +24 -0
  619. package/dist/server/api/handlers/integrations/route.d.ts.map +1 -0
  620. package/dist/server/api/handlers/integrations/route.js +80 -0
  621. package/dist/server/api/handlers/integrations/route.js.map +1 -0
  622. package/dist/server/api/handlers/integrations/test/route.d.ts +12 -0
  623. package/dist/server/api/handlers/integrations/test/route.d.ts.map +1 -0
  624. package/dist/server/api/handlers/integrations/test/route.js +76 -0
  625. package/dist/server/api/handlers/integrations/test/route.js.map +1 -0
  626. package/dist/server/api/handlers/og/workflow/[workflowId]/route.d.ts +7 -0
  627. package/dist/server/api/handlers/og/workflow/[workflowId]/route.d.ts.map +1 -0
  628. package/dist/server/api/handlers/og/workflow/[workflowId]/route.js +197 -0
  629. package/dist/server/api/handlers/og/workflow/[workflowId]/route.js.map +1 -0
  630. package/dist/server/api/handlers/user/route.d.ts +3 -0
  631. package/dist/server/api/handlers/user/route.d.ts.map +1 -0
  632. package/dist/server/api/handlers/user/route.js +81 -0
  633. package/dist/server/api/handlers/user/route.js.map +1 -0
  634. package/dist/server/api/handlers/workflow/[workflowId]/cron/route.d.ts +3 -0
  635. package/dist/server/api/handlers/workflow/[workflowId]/cron/route.d.ts.map +1 -0
  636. package/dist/server/api/handlers/workflow/[workflowId]/cron/route.js +65 -0
  637. package/dist/server/api/handlers/workflow/[workflowId]/cron/route.js.map +1 -0
  638. package/dist/server/api/handlers/workflow/[workflowId]/execute/route.d.ts +3 -0
  639. package/dist/server/api/handlers/workflow/[workflowId]/execute/route.d.ts.map +1 -0
  640. package/dist/server/api/handlers/workflow/[workflowId]/execute/route.js +72 -0
  641. package/dist/server/api/handlers/workflow/[workflowId]/execute/route.js.map +1 -0
  642. package/dist/server/api/handlers/workflows/[workflowId]/code/route.d.ts +3 -0
  643. package/dist/server/api/handlers/workflows/[workflowId]/code/route.d.ts.map +1 -0
  644. package/dist/server/api/handlers/workflows/[workflowId]/code/route.js +24 -0
  645. package/dist/server/api/handlers/workflows/[workflowId]/code/route.js.map +1 -0
  646. package/dist/server/api/handlers/workflows/[workflowId]/cron/route.d.ts +3 -0
  647. package/dist/server/api/handlers/workflows/[workflowId]/cron/route.d.ts.map +1 -0
  648. package/dist/server/api/handlers/workflows/[workflowId]/cron/route.js +65 -0
  649. package/dist/server/api/handlers/workflows/[workflowId]/cron/route.js.map +1 -0
  650. package/dist/server/api/handlers/workflows/[workflowId]/download/route.d.ts +3 -0
  651. package/dist/server/api/handlers/workflows/[workflowId]/download/route.d.ts.map +1 -0
  652. package/dist/server/api/handlers/workflows/[workflowId]/download/route.js +24 -0
  653. package/dist/server/api/handlers/workflows/[workflowId]/download/route.js.map +1 -0
  654. package/dist/server/api/handlers/workflows/[workflowId]/duplicate/route.d.ts +3 -0
  655. package/dist/server/api/handlers/workflows/[workflowId]/duplicate/route.d.ts.map +1 -0
  656. package/dist/server/api/handlers/workflows/[workflowId]/duplicate/route.js +89 -0
  657. package/dist/server/api/handlers/workflows/[workflowId]/duplicate/route.js.map +1 -0
  658. package/dist/server/api/handlers/workflows/[workflowId]/execute/route.d.ts +3 -0
  659. package/dist/server/api/handlers/workflows/[workflowId]/execute/route.d.ts.map +1 -0
  660. package/dist/server/api/handlers/workflows/[workflowId]/execute/route.js +72 -0
  661. package/dist/server/api/handlers/workflows/[workflowId]/execute/route.js.map +1 -0
  662. package/dist/server/api/handlers/workflows/[workflowId]/executions/route.d.ts +3 -0
  663. package/dist/server/api/handlers/workflows/[workflowId]/executions/route.d.ts.map +1 -0
  664. package/dist/server/api/handlers/workflows/[workflowId]/executions/route.js +63 -0
  665. package/dist/server/api/handlers/workflows/[workflowId]/executions/route.js.map +1 -0
  666. package/dist/server/api/handlers/workflows/[workflowId]/route.d.ts +3 -0
  667. package/dist/server/api/handlers/workflows/[workflowId]/route.d.ts.map +1 -0
  668. package/dist/server/api/handlers/workflows/[workflowId]/route.js +132 -0
  669. package/dist/server/api/handlers/workflows/[workflowId]/route.js.map +1 -0
  670. package/dist/server/api/handlers/workflows/[workflowId]/webhook/route.d.ts +3 -0
  671. package/dist/server/api/handlers/workflows/[workflowId]/webhook/route.d.ts.map +1 -0
  672. package/dist/server/api/handlers/workflows/[workflowId]/webhook/route.js +111 -0
  673. package/dist/server/api/handlers/workflows/[workflowId]/webhook/route.js.map +1 -0
  674. package/dist/server/api/handlers/workflows/create/route.d.ts +3 -0
  675. package/dist/server/api/handlers/workflows/create/route.d.ts.map +1 -0
  676. package/dist/server/api/handlers/workflows/create/route.js +67 -0
  677. package/dist/server/api/handlers/workflows/create/route.js.map +1 -0
  678. package/dist/server/api/handlers/workflows/current/route.d.ts +3 -0
  679. package/dist/server/api/handlers/workflows/current/route.d.ts.map +1 -0
  680. package/dist/server/api/handlers/workflows/current/route.js +89 -0
  681. package/dist/server/api/handlers/workflows/current/route.js.map +1 -0
  682. package/dist/server/api/handlers/workflows/executions/[executionId]/logs/route.d.ts +3 -0
  683. package/dist/server/api/handlers/workflows/executions/[executionId]/logs/route.d.ts.map +1 -0
  684. package/dist/server/api/handlers/workflows/executions/[executionId]/logs/route.js +38 -0
  685. package/dist/server/api/handlers/workflows/executions/[executionId]/logs/route.js.map +1 -0
  686. package/dist/server/api/handlers/workflows/executions/[executionId]/status/route.d.ts +3 -0
  687. package/dist/server/api/handlers/workflows/executions/[executionId]/status/route.d.ts.map +1 -0
  688. package/dist/server/api/handlers/workflows/executions/[executionId]/status/route.js +35 -0
  689. package/dist/server/api/handlers/workflows/executions/[executionId]/status/route.js.map +1 -0
  690. package/dist/server/api/handlers/workflows/route.d.ts +3 -0
  691. package/dist/server/api/handlers/workflows/route.d.ts.map +1 -0
  692. package/dist/server/api/handlers/workflows/route.js +22 -0
  693. package/dist/server/api/handlers/workflows/route.js.map +1 -0
  694. package/dist/server/api/routes.d.ts +4 -0
  695. package/dist/server/api/routes.d.ts.map +1 -0
  696. package/dist/server/api/routes.js +51 -0
  697. package/dist/server/api/routes.js.map +1 -0
  698. package/dist/server/api/types.d.ts +41 -0
  699. package/dist/server/api/types.d.ts.map +1 -0
  700. package/dist/server/api/types.js +2 -0
  701. package/dist/server/api/types.js.map +1 -0
  702. package/dist/server/api/workflows.d.ts +8 -0
  703. package/dist/server/api/workflows.d.ts.map +1 -0
  704. package/dist/server/api/workflows.js +75 -0
  705. package/dist/server/api/workflows.js.map +1 -0
  706. package/dist/server/db/migrate.d.ts +2 -0
  707. package/dist/server/db/migrate.d.ts.map +1 -0
  708. package/dist/server/db/migrate.js +2 -0
  709. package/dist/server/db/migrate.js.map +1 -0
  710. package/dist/server/db/schema.d.ts +1465 -0
  711. package/dist/server/db/schema.d.ts.map +1 -0
  712. package/dist/server/db/schema.js +15 -0
  713. package/dist/server/db/schema.js.map +1 -0
  714. package/dist/server/index.d.ts +11 -0
  715. package/dist/server/index.d.ts.map +1 -0
  716. package/dist/server/index.js +9 -0
  717. package/dist/server/index.js.map +1 -0
  718. package/dist/server/plugin.d.ts +17 -0
  719. package/dist/server/plugin.d.ts.map +1 -0
  720. package/dist/server/plugin.js +27 -0
  721. package/dist/server/plugin.js.map +1 -0
  722. package/dist/server/utils.d.ts +3 -0
  723. package/dist/server/utils.d.ts.map +1 -0
  724. package/dist/server/utils.js +7 -0
  725. package/dist/server/utils.js.map +1 -0
  726. package/dist/styles/globals.css +254 -0
  727. package/package.json +130 -0
  728. package/src/plugins/_template/credentials.ts.txt +10 -0
  729. package/src/plugins/_template/icon.tsx.txt +28 -0
  730. package/src/plugins/_template/index.ts.txt +122 -0
  731. package/src/plugins/_template/steps/action.ts.txt +103 -0
  732. package/src/plugins/_template/test.ts.txt +57 -0
  733. package/src/plugins/condition/components/condition-fields.tsx +32 -0
  734. package/src/plugins/condition/index.ts +27 -0
  735. package/src/plugins/condition/steps/evaluate.ts +32 -0
  736. package/src/plugins/database/components/database-query-fields.tsx +58 -0
  737. package/src/plugins/database/index.ts +27 -0
  738. package/src/plugins/database/steps/query.ts +141 -0
  739. package/src/plugins/index.ts +37 -0
  740. package/src/plugins/legacy-mappings.ts +11 -0
  741. package/src/plugins/loop/components/loop-fields.tsx +46 -0
  742. package/src/plugins/loop/icon.tsx +21 -0
  743. package/src/plugins/loop/index.ts +57 -0
  744. package/src/plugins/loop/steps/iterate.ts +74 -0
  745. package/src/plugins/loop/workflow-executor.patch +241 -0
  746. package/src/plugins/registry.ts +660 -0
  747. package/src/plugins/switch/icon.tsx +23 -0
  748. package/src/plugins/switch/index.ts +87 -0
  749. package/src/plugins/switch/steps/evaluate.ts +139 -0
  750. package/src/plugins/switch/workflow-executor.patch +130 -0
  751. package/src/scripts/create-plugin.ts +301 -0
  752. package/src/scripts/discover-plugins.ts +1122 -0
  753. package/src/scripts/migrate-prod.ts +16 -0
  754. package/src/scripts/nwb.ts +54 -0
@@ -0,0 +1,660 @@
1
+ import type { IntegrationType } from "../lib/types/integration";
2
+ import { LEGACY_ACTION_MAPPINGS } from "./legacy-mappings";
3
+
4
+ /**
5
+ * Select Option
6
+ * Used for select/dropdown fields
7
+ */
8
+ export type SelectOption = {
9
+ value: string;
10
+ label: string;
11
+ };
12
+
13
+ /**
14
+ * Base Action Config Field
15
+ * Declarative definition of a config field for an action
16
+ */
17
+ export type ActionConfigFieldBase = {
18
+ // Unique key for this field in the config object
19
+ key: string;
20
+
21
+ // Human-readable label
22
+ label: string;
23
+
24
+ // Field type
25
+ type:
26
+ | "template-input" // TemplateBadgeInput - supports {{variable}}
27
+ | "template-textarea" // TemplateBadgeTextarea - supports {{variable}}
28
+ | "text" // Regular text input
29
+ | "number" // Number input
30
+ | "select" // Dropdown select
31
+ | "schema-builder"; // Schema builder for structured output
32
+
33
+ // Placeholder text
34
+ placeholder?: string;
35
+
36
+ // Default value
37
+ defaultValue?: string;
38
+
39
+ // Example value for AI prompt generation
40
+ example?: string;
41
+
42
+ // For select fields: list of options
43
+ options?: SelectOption[];
44
+
45
+ // Number of rows (for textarea)
46
+ rows?: number;
47
+
48
+ // Min value (for number fields)
49
+ min?: number;
50
+
51
+ // Whether this field is required (defaults to false)
52
+ required?: boolean;
53
+
54
+ // Conditional rendering: only show if another field has a specific value
55
+ showWhen?: {
56
+ field: string;
57
+ equals: string;
58
+ };
59
+ };
60
+
61
+ /**
62
+ * Config Field Group
63
+ * Groups related fields together in a collapsible section
64
+ */
65
+ export type ActionConfigFieldGroup = {
66
+ // Human-readable label for the group
67
+ label: string;
68
+
69
+ // Field type (always "group" for groups)
70
+ type: "group";
71
+
72
+ // Nested fields within this group
73
+ fields: ActionConfigFieldBase[];
74
+
75
+ // Whether the group is expanded by default (defaults to false)
76
+ defaultExpanded?: boolean;
77
+ };
78
+
79
+ /**
80
+ * Action Config Field
81
+ * Can be either a regular field or a group of fields
82
+ */
83
+ export type ActionConfigField = ActionConfigFieldBase | ActionConfigFieldGroup;
84
+
85
+ /**
86
+ * Output Field Definition
87
+ * Describes an output field available for template autocomplete
88
+ */
89
+ export type OutputField = {
90
+ field: string;
91
+ description: string;
92
+ };
93
+
94
+ /**
95
+ * Result Component Props
96
+ * Props passed to custom result components
97
+ */
98
+ export type ResultComponentProps = {
99
+ output: unknown;
100
+ input?: unknown;
101
+ };
102
+
103
+ /**
104
+ * Output Display Config
105
+ * Specifies how to render step output in the workflow runs panel
106
+ */
107
+ export type OutputDisplayConfig =
108
+ | {
109
+ // Built-in display types
110
+ type: "image" | "video" | "url";
111
+ // Field name in the step output that contains the displayable value
112
+ field: string;
113
+ }
114
+ | {
115
+ // Custom component display
116
+ type: "component";
117
+ // React component to render the output
118
+ component: React.ComponentType<ResultComponentProps>;
119
+ };
120
+
121
+ /**
122
+ * Action Definition
123
+ * Describes a single action provided by a plugin
124
+ */
125
+ export type PluginAction = {
126
+ // Unique slug for this action (e.g., "send-email")
127
+ // Full action ID will be computed as `{integration}/{slug}` (e.g., "resend/send-email")
128
+ slug: string;
129
+
130
+ // Human-readable label (e.g., "Send Email")
131
+ label: string;
132
+
133
+ // Description of what this action does
134
+ description: string;
135
+
136
+ // Category for grouping in UI
137
+ category: string;
138
+
139
+ // Step configuration
140
+ stepFunction: string; // Name of the exported function in the step file
141
+ stepImportPath: string; // Path to import from, relative to plugins/[plugin-name]/steps/
142
+
143
+ // Config fields for the action (declarative definition)
144
+ configFields: ActionConfigField[];
145
+
146
+ // Output fields for template autocomplete (what this action returns)
147
+ outputFields?: OutputField[];
148
+
149
+ // Output display configuration (how to render output in workflow runs panel)
150
+ outputConfig?: OutputDisplayConfig;
151
+
152
+ // Code generation template (the actual template string, not a path)
153
+ // Optional - if not provided, will fall back to auto-generated template
154
+ // from steps that export _exportCore
155
+ codegenTemplate?: string;
156
+ };
157
+
158
+ /**
159
+ * Integration Plugin Definition
160
+ * All information needed to register a new integration in one place
161
+ */
162
+ export type IntegrationPlugin = {
163
+ // Basic info
164
+ type: IntegrationType;
165
+ label: string;
166
+ description: string;
167
+
168
+ /**
169
+ * Whether this is a built-in system plugin included with the package.
170
+ * Used by discover-plugins to generate correct import paths.
171
+ */
172
+ isBuiltIn?: boolean;
173
+
174
+ // Icon component (should be exported from plugins/[name]/icon.tsx)
175
+ icon: React.ComponentType<{ className?: string }>;
176
+
177
+ // Form fields for the integration dialog
178
+ formFields: Array<{
179
+ id: string;
180
+ label: string;
181
+ type: "text" | "password" | "url";
182
+ placeholder?: string;
183
+ helpText?: string;
184
+ helpLink?: { text: string; url: string };
185
+ configKey: string; // Which key in IntegrationConfig to store the value
186
+ envVar?: string; // Environment variable this field maps to (e.g., "RESEND_API_KEY")
187
+ }>;
188
+
189
+ // Testing configuration (lazy-loaded to avoid bundling Node.js packages in client)
190
+ testConfig?: {
191
+ // Returns a promise that resolves to the test function
192
+ // This allows the test module to be loaded only on the server when needed
193
+ getTestFunction: () => Promise<
194
+ (
195
+ credentials: Record<string, string>,
196
+ ) => Promise<{ success: boolean; error?: string }>
197
+ >;
198
+ };
199
+
200
+ // Avoid using this field. Plugins should use fetch instead of SDK dependencies
201
+ // to reduce supply chain attack surface. Only use for codegen if absolutely necessary.
202
+ dependencies?: Record<string, string>;
203
+
204
+ // Actions provided by this integration
205
+ actions: PluginAction[];
206
+
207
+ // API routes provided by this integration (server-only)
208
+ // Stores metadata only — actual handlers are imported via discover-plugins codegen
209
+ routes?: Array<{
210
+ /** Route path relative to /api, e.g. "/ai-gateway/consent" */
211
+ path: string;
212
+ /** Allowed HTTP methods, e.g. ["POST", "DELETE"] */
213
+ methods: string[];
214
+ /** Export name of the handler function, e.g. "aiGatewayConsent" */
215
+ handler: string;
216
+ /** Import path relative to the plugin directory, e.g. "routes/consent" */
217
+ handlerImportPath: string;
218
+ }>;
219
+ };
220
+
221
+ /**
222
+ * Action with full ID
223
+ * Includes the computed full action ID (integration/slug)
224
+ */
225
+ export type ActionWithFullId = PluginAction & {
226
+ id: string; // Full action ID: {integration}/{slug}
227
+ integration: IntegrationType;
228
+ };
229
+
230
+ /**
231
+ * Integration Registry
232
+ * Auto-populated by plugin files
233
+ */
234
+ const integrationRegistry = new Map<IntegrationType, IntegrationPlugin>();
235
+
236
+ /**
237
+ * Codegen Template Registry
238
+ * Auto-populated by consumer's generated lib/codegen-registry.ts
239
+ */
240
+ const codegenTemplateRegistry = new Map<string, string>();
241
+
242
+ /**
243
+ * Register codegen templates (called from consumer's auto-generated codegen-registry.ts)
244
+ */
245
+ export function registerCodegenTemplates(templates: Record<string, string>) {
246
+ for (const [actionId, template] of Object.entries(templates)) {
247
+ codegenTemplateRegistry.set(actionId, template);
248
+ }
249
+ }
250
+
251
+ /**
252
+ * Get a codegen template for an action
253
+ */
254
+ export function getCodegenTemplate(actionId: string): string | undefined {
255
+ return codegenTemplateRegistry.get(actionId);
256
+ }
257
+
258
+ /**
259
+ * Output Display Config (serializable subset for built-in types only)
260
+ */
261
+ export type SerializableOutputDisplayConfig = {
262
+ type: "image" | "video" | "url";
263
+ field: string;
264
+ };
265
+
266
+ /**
267
+ * Output Display Config Registry
268
+ * Auto-populated by consumer's generated lib/output-display-configs.ts
269
+ */
270
+ const outputDisplayConfigRegistry = new Map<string, SerializableOutputDisplayConfig>();
271
+
272
+ /**
273
+ * Register output display configs (called from consumer's auto-generated output-display-configs.ts)
274
+ */
275
+ export function registerOutputDisplayConfigs(configs: Record<string, SerializableOutputDisplayConfig>) {
276
+ for (const [actionId, config] of Object.entries(configs)) {
277
+ outputDisplayConfigRegistry.set(actionId, config);
278
+ }
279
+ }
280
+
281
+ /**
282
+ * Get the output display config for an action
283
+ */
284
+ export function getOutputDisplayConfig(actionId: string): SerializableOutputDisplayConfig | undefined {
285
+ return outputDisplayConfigRegistry.get(actionId);
286
+ }
287
+
288
+ /**
289
+ * Compute full action ID from integration type and action slug
290
+ */
291
+ export function computeActionId(
292
+ integrationType: IntegrationType,
293
+ actionSlug: string,
294
+ ): string {
295
+ return `${ integrationType }/${ actionSlug }`;
296
+ }
297
+
298
+ /**
299
+ * Parse a full action ID into integration type and action slug
300
+ */
301
+ export function parseActionId(actionId: string | undefined | null): {
302
+ integration: string;
303
+ slug: string;
304
+ } | null {
305
+ if (!actionId || typeof actionId !== "string") {
306
+ return null;
307
+ }
308
+ const parts = actionId.split("/");
309
+ if (parts.length !== 2) {
310
+ return null;
311
+ }
312
+ return { integration: parts[0], slug: parts[1] };
313
+ }
314
+
315
+ /**
316
+ * Register an integration plugin
317
+ */
318
+ export function registerIntegration(plugin: IntegrationPlugin) {
319
+ integrationRegistry.set(plugin.type, plugin);
320
+ }
321
+
322
+ /**
323
+ * Get an integration plugin
324
+ */
325
+ export function getIntegration(
326
+ type: IntegrationType,
327
+ ): IntegrationPlugin | undefined {
328
+ return integrationRegistry.get(type);
329
+ }
330
+
331
+ /**
332
+ * Get all registered integrations
333
+ */
334
+ export function getAllIntegrations(): IntegrationPlugin[] {
335
+ return Array.from(integrationRegistry.values());
336
+ }
337
+
338
+ /**
339
+ * Get all integration types
340
+ */
341
+ export function getIntegrationTypes(): IntegrationType[] {
342
+ return Array.from(integrationRegistry.keys());
343
+ }
344
+
345
+ /**
346
+ * Get a system integration plugin
347
+ */
348
+ export function getSystemIntegration(
349
+ type: IntegrationType,
350
+ ): IntegrationPlugin | undefined {
351
+ const integration = integrationRegistry.get(type);
352
+ if (integration?.isBuiltIn) return integration;
353
+ return undefined;
354
+ }
355
+
356
+ /**
357
+ * Get all system integrations
358
+ */
359
+ export function getSystemIntegrations(): IntegrationPlugin[] {
360
+ return getAllIntegrations().filter((i) => i.isBuiltIn);
361
+ }
362
+
363
+ /**
364
+ * Get all actions across all integrations with full IDs
365
+ */
366
+ export function getAllActions(): ActionWithFullId[] {
367
+ const actions: ActionWithFullId[] = [];
368
+
369
+ for (const plugin of integrationRegistry.values()) {
370
+ for (const action of plugin.actions) {
371
+ actions.push({
372
+ ...action,
373
+ id: computeActionId(plugin.type, action.slug),
374
+ integration: plugin.type,
375
+ });
376
+ }
377
+ }
378
+
379
+ return actions;
380
+ }
381
+
382
+ /**
383
+ * Get actions by category
384
+ */
385
+ export function getActionsByCategory(): Record<string, ActionWithFullId[]> {
386
+ const categories: Record<string, ActionWithFullId[]> = {};
387
+
388
+ for (const plugin of integrationRegistry.values()) {
389
+ for (const action of plugin.actions) {
390
+ if (!categories[action.category]) {
391
+ categories[action.category] = [];
392
+ }
393
+ categories[action.category].push({
394
+ ...action,
395
+ id: computeActionId(plugin.type, action.slug),
396
+ integration: plugin.type,
397
+ });
398
+ }
399
+ }
400
+
401
+ return categories;
402
+ }
403
+
404
+ /**
405
+ * Find an action by full ID (e.g., "resend/send-email")
406
+ * Also supports legacy IDs (e.g., "Send Email") for backward compatibility
407
+ */
408
+ export function findActionById(
409
+ actionId: string | undefined | null,
410
+ ): ActionWithFullId | undefined {
411
+ if (!actionId) {
412
+ return undefined;
413
+ }
414
+
415
+ // First try parsing as a namespaced ID
416
+ const parsed = parseActionId(actionId);
417
+ if (parsed) {
418
+ const plugin = integrationRegistry.get(parsed.integration as IntegrationType);
419
+ if (plugin) {
420
+ const action = plugin.actions.find((a) => a.slug === parsed.slug);
421
+ if (action) {
422
+ return {
423
+ ...action,
424
+ id: actionId,
425
+ integration: plugin.type,
426
+ };
427
+ }
428
+ }
429
+ }
430
+
431
+ // Check legacy mappings for backward compatibility
432
+ const mappedId = LEGACY_ACTION_MAPPINGS[actionId];
433
+ if (mappedId) {
434
+ // Recursively look up the mapped ID
435
+ return findActionById(mappedId);
436
+ }
437
+
438
+ // Fall back to legacy label-based lookup (exact label match)
439
+ for (const plugin of integrationRegistry.values()) {
440
+ const action = plugin.actions.find((a) => a.label === actionId);
441
+ if (action) {
442
+ return {
443
+ ...action,
444
+ id: computeActionId(plugin.type, action.slug),
445
+ integration: plugin.type,
446
+ };
447
+ }
448
+ }
449
+
450
+ return undefined;
451
+ }
452
+
453
+ /**
454
+ * Get integration labels map
455
+ */
456
+ export function getIntegrationLabels(): Record<IntegrationType, string> {
457
+ const labels: Record<string, string> = {};
458
+ for (const plugin of integrationRegistry.values()) {
459
+ labels[plugin.type] = plugin.label;
460
+ }
461
+ return labels as Record<IntegrationType, string>;
462
+ }
463
+
464
+ /**
465
+ * Get integration descriptions map
466
+ */
467
+ export function getIntegrationDescriptions(): Record<IntegrationType, string> {
468
+ const descriptions: Record<string, string> = {};
469
+ for (const plugin of integrationRegistry.values()) {
470
+ descriptions[plugin.type] = plugin.description;
471
+ }
472
+ return descriptions as Record<IntegrationType, string>;
473
+ }
474
+
475
+ /**
476
+ * Check if an integration type requires credentials (has formFields).
477
+ * Plugins with no formFields (e.g. facebook-event-scraper) don't need a connection.
478
+ */
479
+ export function integrationRequiresCredentials(
480
+ type: IntegrationType,
481
+ ): boolean {
482
+ const plugin = integrationRegistry.get(type);
483
+ return !!plugin && plugin.formFields.length > 0;
484
+ }
485
+
486
+ /**
487
+ * Get sorted integration types for dropdowns
488
+ */
489
+ export function getSortedIntegrationTypes(): IntegrationType[] {
490
+ return Array.from(integrationRegistry.keys()).sort();
491
+ }
492
+
493
+ /**
494
+ * Get all NPM dependencies across all integrations
495
+ */
496
+ export function getAllDependencies(): Record<string, string> {
497
+ const deps: Record<string, string> = {};
498
+
499
+ for (const plugin of integrationRegistry.values()) {
500
+ if (plugin.dependencies) {
501
+ Object.assign(deps, plugin.dependencies);
502
+ }
503
+ }
504
+
505
+ return deps;
506
+ }
507
+
508
+ /**
509
+ * Get NPM dependencies for specific action IDs
510
+ */
511
+ export function getDependenciesForActions(
512
+ actionIds: string[],
513
+ ): Record<string, string> {
514
+ const deps: Record<string, string> = {};
515
+ const integrations = new Set<IntegrationType>();
516
+
517
+ // Find which integrations are used
518
+ for (const actionId of actionIds) {
519
+ const action = findActionById(actionId);
520
+ if (action) {
521
+ integrations.add(action.integration);
522
+ }
523
+ }
524
+
525
+ // Get dependencies for those integrations
526
+ for (const integrationType of integrations) {
527
+ const plugin = integrationRegistry.get(integrationType);
528
+ if (plugin?.dependencies) {
529
+ Object.assign(deps, plugin.dependencies);
530
+ }
531
+ }
532
+
533
+ return deps;
534
+ }
535
+
536
+ /**
537
+ * Get environment variables for a single plugin (from formFields)
538
+ */
539
+ export function getPluginEnvVars(
540
+ plugin: IntegrationPlugin,
541
+ ): Array<{ name: string; description: string }> {
542
+ const envVars: Array<{ name: string; description: string }> = [];
543
+
544
+ // Get env vars from form fields
545
+ for (const field of plugin.formFields) {
546
+ if (field.envVar) {
547
+ envVars.push({
548
+ name: field.envVar,
549
+ description: field.helpText || field.label,
550
+ });
551
+ }
552
+ }
553
+
554
+ return envVars;
555
+ }
556
+
557
+ /**
558
+ * Get all environment variables across all integrations
559
+ */
560
+ export function getAllEnvVars(): Array<{ name: string; description: string }> {
561
+ const envVars: Array<{ name: string; description: string }> = [];
562
+
563
+ for (const plugin of integrationRegistry.values()) {
564
+ envVars.push(...getPluginEnvVars(plugin));
565
+ }
566
+
567
+ return envVars;
568
+ }
569
+
570
+ /**
571
+ * Get credential mapping for a plugin (auto-generated from formFields)
572
+ */
573
+ export function getCredentialMapping(
574
+ plugin: IntegrationPlugin,
575
+ config: Record<string, unknown>,
576
+ ): Record<string, string> {
577
+ const creds: Record<string, string> = {};
578
+
579
+ for (const field of plugin.formFields) {
580
+ if (field.envVar && config[field.configKey]) {
581
+ creds[field.envVar] = String(config[field.configKey]);
582
+ }
583
+ }
584
+
585
+ return creds;
586
+ }
587
+
588
+ /**
589
+ * Type guard to check if a field is a group
590
+ */
591
+ export function isFieldGroup(
592
+ field: ActionConfigField,
593
+ ): field is ActionConfigFieldGroup {
594
+ return field.type === "group";
595
+ }
596
+
597
+ /**
598
+ * Flatten config fields, extracting fields from groups
599
+ * Useful for validation and AI prompt generation
600
+ */
601
+ export function flattenConfigFields(
602
+ fields: ActionConfigField[],
603
+ ): ActionConfigFieldBase[] {
604
+ const result: ActionConfigFieldBase[] = [];
605
+
606
+ for (const field of fields) {
607
+ if (isFieldGroup(field)) {
608
+ result.push(...field.fields);
609
+ } else {
610
+ result.push(field);
611
+ }
612
+ }
613
+
614
+ return result;
615
+ }
616
+
617
+ /**
618
+ * Generate AI prompt section for all available actions
619
+ * This dynamically builds the action types documentation for the AI
620
+ */
621
+ export function generateAIActionPrompts(): string {
622
+ const lines: string[] = [];
623
+
624
+ for (const plugin of integrationRegistry.values()) {
625
+ for (const action of plugin.actions) {
626
+ const fullId = computeActionId(plugin.type, action.slug);
627
+
628
+ // Build example config from configFields (flatten groups)
629
+ const exampleConfig: Record<string, string | number> = {
630
+ actionType: fullId,
631
+ };
632
+
633
+ const flatFields = flattenConfigFields(action.configFields);
634
+
635
+ for (const field of flatFields) {
636
+ // Skip conditional fields in the example
637
+ if (field.showWhen) continue;
638
+
639
+ // Use example, defaultValue, or a sensible default based on type
640
+ if (field.example !== undefined) {
641
+ exampleConfig[field.key] = field.example;
642
+ } else if (field.defaultValue !== undefined) {
643
+ exampleConfig[field.key] = field.defaultValue;
644
+ } else if (field.type === "number") {
645
+ exampleConfig[field.key] = 10;
646
+ } else if (field.type === "select" && field.options?.[0]) {
647
+ exampleConfig[field.key] = field.options[0].value;
648
+ } else {
649
+ exampleConfig[field.key] = `Your ${ field.label.toLowerCase() }`;
650
+ }
651
+ }
652
+
653
+ lines.push(
654
+ `- ${ action.label } (${ fullId }): ${ JSON.stringify(exampleConfig) }`,
655
+ );
656
+ }
657
+ }
658
+
659
+ return lines.join("\n");
660
+ }
@@ -0,0 +1,23 @@
1
+ export function SwitchIcon({ className }: { className?: string }) {
2
+ return (
3
+ <svg
4
+ aria-label="Switch icon"
5
+ className={className}
6
+ fill="none"
7
+ stroke="currentColor"
8
+ strokeLinecap="round"
9
+ strokeLinejoin="round"
10
+ strokeWidth="2"
11
+ viewBox="0 0 24 24"
12
+ xmlns="http://www.w3.org/2000/svg"
13
+ >
14
+ <title>Switch</title>
15
+ <circle cx="18" cy="18" r="3" />
16
+ <circle cx="18" cy="6" r="3" />
17
+ <circle cx="6" cy="12" r="3" />
18
+ <path d="M9 12h3" />
19
+ <path d="M15 6.5l-3 4" />
20
+ <path d="M15 17.5l-3-4" />
21
+ </svg>
22
+ );
23
+ }