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.
- package/dist/client/components/ai-elements/canvas.d.ts +9 -0
- package/dist/client/components/ai-elements/canvas.d.ts.map +1 -0
- package/dist/client/components/ai-elements/canvas.js +7 -0
- package/dist/client/components/ai-elements/canvas.js.map +1 -0
- package/dist/client/components/ai-elements/connection.d.ts +3 -0
- package/dist/client/components/ai-elements/connection.d.ts.map +1 -0
- package/dist/client/components/ai-elements/connection.js +4 -0
- package/dist/client/components/ai-elements/connection.js.map +1 -0
- package/dist/client/components/ai-elements/controls.d.ts +2 -0
- package/dist/client/components/ai-elements/controls.d.ts.map +1 -0
- package/dist/client/components/ai-elements/controls.js +26 -0
- package/dist/client/components/ai-elements/controls.js.map +1 -0
- package/dist/client/components/ai-elements/edge.d.ts +6 -0
- package/dist/client/components/ai-elements/edge.d.ts.map +1 -0
- package/dist/client/components/ai-elements/edge.js +86 -0
- package/dist/client/components/ai-elements/edge.js.map +1 -0
- package/dist/client/components/ai-elements/node.d.ts +23 -0
- package/dist/client/components/ai-elements/node.d.ts.map +1 -0
- package/dist/client/components/ai-elements/node.js +13 -0
- package/dist/client/components/ai-elements/node.js.map +1 -0
- package/dist/client/components/ai-elements/panel.d.ts +6 -0
- package/dist/client/components/ai-elements/panel.d.ts.map +1 -0
- package/dist/client/components/ai-elements/panel.js +5 -0
- package/dist/client/components/ai-elements/panel.js.map +1 -0
- package/dist/client/components/ai-elements/prompt.d.ts +7 -0
- package/dist/client/components/ai-elements/prompt.d.ts.map +1 -0
- package/dist/client/components/ai-elements/prompt.js +220 -0
- package/dist/client/components/ai-elements/prompt.js.map +1 -0
- package/dist/client/components/ai-elements/shimmer.d.ts +10 -0
- package/dist/client/components/ai-elements/shimmer.d.ts.map +1 -0
- package/dist/client/components/ai-elements/shimmer.js +19 -0
- package/dist/client/components/ai-elements/shimmer.js.map +1 -0
- package/dist/client/components/auth/dialog.d.ts +8 -0
- package/dist/client/components/auth/dialog.d.ts.map +1 -0
- package/dist/client/components/auth/dialog.js +181 -0
- package/dist/client/components/auth/dialog.js.map +1 -0
- package/dist/client/components/deploy-button.d.ts +2 -0
- package/dist/client/components/deploy-button.d.ts.map +1 -0
- package/dist/client/components/deploy-button.js +8 -0
- package/dist/client/components/deploy-button.js.map +1 -0
- package/dist/client/components/global-modals.d.ts +2 -0
- package/dist/client/components/global-modals.d.ts.map +1 -0
- package/dist/client/components/global-modals.js +8 -0
- package/dist/client/components/global-modals.js.map +1 -0
- package/dist/client/components/icons/github-icon.d.ts +4 -0
- package/dist/client/components/icons/github-icon.d.ts.map +1 -0
- package/dist/client/components/icons/github-icon.js +5 -0
- package/dist/client/components/icons/github-icon.js.map +1 -0
- package/dist/client/components/index.d.ts +7 -0
- package/dist/client/components/index.d.ts.map +1 -0
- package/dist/client/components/index.js +8 -0
- package/dist/client/components/index.js.map +1 -0
- package/dist/client/components/layout-provider.d.ts +4 -0
- package/dist/client/components/layout-provider.d.ts.map +1 -0
- package/dist/client/components/layout-provider.js +20 -0
- package/dist/client/components/layout-provider.js.map +1 -0
- package/dist/client/components/overlays/add-connection-overlay.d.ts +14 -0
- package/dist/client/components/overlays/add-connection-overlay.d.ts.map +1 -0
- package/dist/client/components/overlays/add-connection-overlay.js +218 -0
- package/dist/client/components/overlays/add-connection-overlay.js.map +1 -0
- package/dist/client/components/overlays/api-keys-overlay.d.ts +6 -0
- package/dist/client/components/overlays/api-keys-overlay.d.ts.map +1 -0
- package/dist/client/components/overlays/api-keys-overlay.js +124 -0
- package/dist/client/components/overlays/api-keys-overlay.js.map +1 -0
- package/dist/client/components/overlays/configuration-overlay.d.ts +5 -0
- package/dist/client/components/overlays/configuration-overlay.d.ts.map +1 -0
- package/dist/client/components/overlays/configuration-overlay.js +325 -0
- package/dist/client/components/overlays/configuration-overlay.js.map +1 -0
- package/dist/client/components/overlays/confirm-overlay.d.ts +15 -0
- package/dist/client/components/overlays/confirm-overlay.d.ts.map +1 -0
- package/dist/client/components/overlays/confirm-overlay.js +31 -0
- package/dist/client/components/overlays/confirm-overlay.js.map +1 -0
- package/dist/client/components/overlays/edit-connection-overlay.d.ts +16 -0
- package/dist/client/components/overlays/edit-connection-overlay.d.ts.map +1 -0
- package/dist/client/components/overlays/edit-connection-overlay.js +213 -0
- package/dist/client/components/overlays/edit-connection-overlay.js.map +1 -0
- package/dist/client/components/overlays/export-workflow-overlay.d.ts +8 -0
- package/dist/client/components/overlays/export-workflow-overlay.d.ts.map +1 -0
- package/dist/client/components/overlays/export-workflow-overlay.js +22 -0
- package/dist/client/components/overlays/export-workflow-overlay.js.map +1 -0
- package/dist/client/components/overlays/integrations-overlay.d.ts +6 -0
- package/dist/client/components/overlays/integrations-overlay.d.ts.map +1 -0
- package/dist/client/components/overlays/integrations-overlay.js +56 -0
- package/dist/client/components/overlays/integrations-overlay.js.map +1 -0
- package/dist/client/components/overlays/make-public-overlay.d.ts +7 -0
- package/dist/client/components/overlays/make-public-overlay.d.ts.map +1 -0
- package/dist/client/components/overlays/make-public-overlay.js +17 -0
- package/dist/client/components/overlays/make-public-overlay.js.map +1 -0
- package/dist/client/components/overlays/overlay-container.d.ts +2 -0
- package/dist/client/components/overlays/overlay-container.d.ts.map +1 -0
- package/dist/client/components/overlays/overlay-container.js +236 -0
- package/dist/client/components/overlays/overlay-container.js.map +1 -0
- package/dist/client/components/overlays/overlay-footer.d.ts +3 -0
- package/dist/client/components/overlays/overlay-footer.d.ts.map +1 -0
- package/dist/client/components/overlays/overlay-footer.js +25 -0
- package/dist/client/components/overlays/overlay-footer.js.map +1 -0
- package/dist/client/components/overlays/overlay-header.d.ts +8 -0
- package/dist/client/components/overlays/overlay-header.d.ts.map +1 -0
- package/dist/client/components/overlays/overlay-header.js +32 -0
- package/dist/client/components/overlays/overlay-header.js.map +1 -0
- package/dist/client/components/overlays/overlay-provider.d.ts +17 -0
- package/dist/client/components/overlays/overlay-provider.d.ts.map +1 -0
- package/dist/client/components/overlays/overlay-provider.js +120 -0
- package/dist/client/components/overlays/overlay-provider.js.map +1 -0
- package/dist/client/components/overlays/overlay-sync.d.ts +2 -0
- package/dist/client/components/overlays/overlay-sync.d.ts.map +1 -0
- package/dist/client/components/overlays/overlay-sync.js +21 -0
- package/dist/client/components/overlays/overlay-sync.js.map +1 -0
- package/dist/client/components/overlays/overlay.d.ts +7 -0
- package/dist/client/components/overlays/overlay.d.ts.map +1 -0
- package/dist/client/components/overlays/overlay.js +9 -0
- package/dist/client/components/overlays/overlay.js.map +1 -0
- package/dist/client/components/overlays/settings-overlay.d.ts +6 -0
- package/dist/client/components/overlays/settings-overlay.d.ts.map +1 -0
- package/dist/client/components/overlays/settings-overlay.js +64 -0
- package/dist/client/components/overlays/settings-overlay.js.map +1 -0
- package/dist/client/components/overlays/types.d.ts +64 -0
- package/dist/client/components/overlays/types.d.ts.map +1 -0
- package/dist/client/components/overlays/types.js +2 -0
- package/dist/client/components/overlays/types.js.map +1 -0
- package/dist/client/components/overlays/workflow-issues-overlay.d.ts +37 -0
- package/dist/client/components/overlays/workflow-issues-overlay.d.ts.map +1 -0
- package/dist/client/components/overlays/workflow-issues-overlay.js +67 -0
- package/dist/client/components/overlays/workflow-issues-overlay.js.map +1 -0
- package/dist/client/components/pages/home-page.d.ts +3 -0
- package/dist/client/components/pages/home-page.d.ts.map +1 -0
- package/dist/client/components/pages/home-page.js +100 -0
- package/dist/client/components/pages/home-page.js.map +1 -0
- package/dist/client/components/pages/workflow-page.d.ts +4 -0
- package/dist/client/components/pages/workflow-page.d.ts.map +1 -0
- package/dist/client/components/pages/workflow-page.js +23 -0
- package/dist/client/components/pages/workflow-page.js.map +1 -0
- package/dist/client/components/pages/workflows-redirect.d.ts +3 -0
- package/dist/client/components/pages/workflows-redirect.d.ts.map +1 -0
- package/dist/client/components/pages/workflows-redirect.js +30 -0
- package/dist/client/components/pages/workflows-redirect.js.map +1 -0
- package/dist/client/components/settings/account-settings.d.ts +9 -0
- package/dist/client/components/settings/account-settings.d.ts.map +1 -0
- package/dist/client/components/settings/account-settings.js +8 -0
- package/dist/client/components/settings/account-settings.js.map +1 -0
- package/dist/client/components/settings/integrations-manager.d.ts +7 -0
- package/dist/client/components/settings/integrations-manager.d.ts.map +1 -0
- package/dist/client/components/settings/integrations-manager.js +120 -0
- package/dist/client/components/settings/integrations-manager.js.map +1 -0
- package/dist/client/components/theme-provider.d.ts +5 -0
- package/dist/client/components/theme-provider.d.ts.map +1 -0
- package/dist/client/components/theme-provider.js +6 -0
- package/dist/client/components/theme-provider.js.map +1 -0
- package/dist/client/components/ui/alert-dialog.d.ts +15 -0
- package/dist/client/components/ui/alert-dialog.d.ts.map +1 -0
- package/dist/client/components/ui/alert-dialog.js +40 -0
- package/dist/client/components/ui/alert-dialog.js.map +1 -0
- package/dist/client/components/ui/alert.d.ts +10 -0
- package/dist/client/components/ui/alert.d.ts.map +1 -0
- package/dist/client/components/ui/alert.js +25 -0
- package/dist/client/components/ui/alert.js.map +1 -0
- package/dist/client/components/ui/animated-border.d.ts +6 -0
- package/dist/client/components/ui/animated-border.d.ts.map +1 -0
- package/dist/client/components/ui/animated-border.js +34 -0
- package/dist/client/components/ui/animated-border.js.map +1 -0
- package/dist/client/components/ui/avatar.d.ts +7 -0
- package/dist/client/components/ui/avatar.d.ts.map +1 -0
- package/dist/client/components/ui/avatar.js +15 -0
- package/dist/client/components/ui/avatar.js.map +1 -0
- package/dist/client/components/ui/button-group.d.ts +12 -0
- package/dist/client/components/ui/button-group.d.ts.map +1 -0
- package/dist/client/components/ui/button-group.js +28 -0
- package/dist/client/components/ui/button-group.js.map +1 -0
- package/dist/client/components/ui/button.d.ts +11 -0
- package/dist/client/components/ui/button.d.ts.map +1 -0
- package/dist/client/components/ui/button.js +34 -0
- package/dist/client/components/ui/button.js.map +1 -0
- package/dist/client/components/ui/card.d.ts +10 -0
- package/dist/client/components/ui/card.d.ts.map +1 -0
- package/dist/client/components/ui/card.js +25 -0
- package/dist/client/components/ui/card.js.map +1 -0
- package/dist/client/components/ui/checkbox.d.ts +5 -0
- package/dist/client/components/ui/checkbox.d.ts.map +1 -0
- package/dist/client/components/ui/checkbox.js +10 -0
- package/dist/client/components/ui/checkbox.js.map +1 -0
- package/dist/client/components/ui/code-editor.d.ts +3 -0
- package/dist/client/components/ui/code-editor.d.ts.map +1 -0
- package/dist/client/components/ui/code-editor.js +17 -0
- package/dist/client/components/ui/code-editor.js.map +1 -0
- package/dist/client/components/ui/collapsible.d.ts +6 -0
- package/dist/client/components/ui/collapsible.d.ts.map +1 -0
- package/dist/client/components/ui/collapsible.js +14 -0
- package/dist/client/components/ui/collapsible.js.map +1 -0
- package/dist/client/components/ui/context-menu.d.ts +26 -0
- package/dist/client/components/ui/context-menu.d.ts.map +1 -0
- package/dist/client/components/ui/context-menu.js +52 -0
- package/dist/client/components/ui/context-menu.js.map +1 -0
- package/dist/client/components/ui/dialog.d.ts +16 -0
- package/dist/client/components/ui/dialog.d.ts.map +1 -0
- package/dist/client/components/ui/dialog.js +37 -0
- package/dist/client/components/ui/dialog.js.map +1 -0
- package/dist/client/components/ui/drawer.d.ts +14 -0
- package/dist/client/components/ui/drawer.d.ts.map +1 -0
- package/dist/client/components/ui/drawer.js +36 -0
- package/dist/client/components/ui/drawer.js.map +1 -0
- package/dist/client/components/ui/dropdown-menu.d.ts +26 -0
- package/dist/client/components/ui/dropdown-menu.d.ts.map +1 -0
- package/dist/client/components/ui/dropdown-menu.js +52 -0
- package/dist/client/components/ui/dropdown-menu.js.map +1 -0
- package/dist/client/components/ui/input.d.ts +4 -0
- package/dist/client/components/ui/input.d.ts.map +1 -0
- package/dist/client/components/ui/input.js +7 -0
- package/dist/client/components/ui/input.js.map +1 -0
- package/dist/client/components/ui/integration-icon.d.ts +7 -0
- package/dist/client/components/ui/integration-icon.d.ts.map +1 -0
- package/dist/client/components/ui/integration-icon.js +25 -0
- package/dist/client/components/ui/integration-icon.js.map +1 -0
- package/dist/client/components/ui/integration-selector.d.ts +12 -0
- package/dist/client/components/ui/integration-selector.d.ts.map +1 -0
- package/dist/client/components/ui/integration-selector.js +198 -0
- package/dist/client/components/ui/integration-selector.js.map +1 -0
- package/dist/client/components/ui/label.d.ts +5 -0
- package/dist/client/components/ui/label.d.ts.map +1 -0
- package/dist/client/components/ui/label.js +9 -0
- package/dist/client/components/ui/label.js.map +1 -0
- package/dist/client/components/ui/resizable.d.ts +9 -0
- package/dist/client/components/ui/resizable.d.ts.map +1 -0
- package/dist/client/components/ui/resizable.js +16 -0
- package/dist/client/components/ui/resizable.js.map +1 -0
- package/dist/client/components/ui/select.d.ts +16 -0
- package/dist/client/components/ui/select.d.ts.map +1 -0
- package/dist/client/components/ui/select.js +39 -0
- package/dist/client/components/ui/select.js.map +1 -0
- package/dist/client/components/ui/separator.d.ts +5 -0
- package/dist/client/components/ui/separator.d.ts.map +1 -0
- package/dist/client/components/ui/separator.js +9 -0
- package/dist/client/components/ui/separator.js.map +1 -0
- package/dist/client/components/ui/sheet.d.ts +14 -0
- package/dist/client/components/ui/sheet.d.ts.map +1 -0
- package/dist/client/components/ui/sheet.js +41 -0
- package/dist/client/components/ui/sheet.js.map +1 -0
- package/dist/client/components/ui/sonner.d.ts +4 -0
- package/dist/client/components/ui/sonner.d.ts.map +1 -0
- package/dist/client/components/ui/sonner.js +22 -0
- package/dist/client/components/ui/sonner.js.map +1 -0
- package/dist/client/components/ui/spinner.d.ts +4 -0
- package/dist/client/components/ui/spinner.d.ts.map +1 -0
- package/dist/client/components/ui/spinner.js +9 -0
- package/dist/client/components/ui/spinner.js.map +1 -0
- package/dist/client/components/ui/tabs.d.ts +8 -0
- package/dist/client/components/ui/tabs.d.ts.map +1 -0
- package/dist/client/components/ui/tabs.js +18 -0
- package/dist/client/components/ui/tabs.js.map +1 -0
- package/dist/client/components/ui/template-autocomplete.d.ts +14 -0
- package/dist/client/components/ui/template-autocomplete.d.ts.map +1 -0
- package/dist/client/components/ui/template-autocomplete.js +239 -0
- package/dist/client/components/ui/template-autocomplete.js.map +1 -0
- package/dist/client/components/ui/template-badge-input.d.ts +10 -0
- package/dist/client/components/ui/template-badge-input.d.ts.map +1 -0
- package/dist/client/components/ui/template-badge-input.js +360 -0
- package/dist/client/components/ui/template-badge-input.js.map +1 -0
- package/dist/client/components/ui/template-badge-textarea.d.ts +11 -0
- package/dist/client/components/ui/template-badge-textarea.d.ts.map +1 -0
- package/dist/client/components/ui/template-badge-textarea.js +431 -0
- package/dist/client/components/ui/template-badge-textarea.js.map +1 -0
- package/dist/client/components/ui/timezone-select.d.ts +9 -0
- package/dist/client/components/ui/timezone-select.d.ts.map +1 -0
- package/dist/client/components/ui/timezone-select.js +87 -0
- package/dist/client/components/ui/timezone-select.js.map +1 -0
- package/dist/client/components/ui/tooltip.d.ts +8 -0
- package/dist/client/components/ui/tooltip.d.ts.map +1 -0
- package/dist/client/components/ui/tooltip.js +18 -0
- package/dist/client/components/ui/tooltip.js.map +1 -0
- package/dist/client/components/ui/workflow-icon.d.ts +4 -0
- package/dist/client/components/ui/workflow-icon.d.ts.map +1 -0
- package/dist/client/components/ui/workflow-icon.js +5 -0
- package/dist/client/components/ui/workflow-icon.js.map +1 -0
- package/dist/client/components/workflow/config/action-config-renderer.d.ts +10 -0
- package/dist/client/components/workflow/config/action-config-renderer.d.ts.map +1 -0
- package/dist/client/components/workflow/config/action-config-renderer.js +64 -0
- package/dist/client/components/workflow/config/action-config-renderer.js.map +1 -0
- package/dist/client/components/workflow/config/action-config.d.ts +9 -0
- package/dist/client/components/workflow/config/action-config.d.ts.map +1 -0
- package/dist/client/components/workflow/config/action-config.js +174 -0
- package/dist/client/components/workflow/config/action-config.js.map +1 -0
- package/dist/client/components/workflow/config/action-grid.d.ts +8 -0
- package/dist/client/components/workflow/config/action-grid.d.ts.map +1 -0
- package/dist/client/components/workflow/config/action-grid.js +162 -0
- package/dist/client/components/workflow/config/action-grid.js.map +1 -0
- package/dist/client/components/workflow/config/condition-config.d.ts +8 -0
- package/dist/client/components/workflow/config/condition-config.d.ts.map +1 -0
- package/dist/client/components/workflow/config/condition-config.js +7 -0
- package/dist/client/components/workflow/config/condition-config.js.map +1 -0
- package/dist/client/components/workflow/config/editor-config.d.ts +13 -0
- package/dist/client/components/workflow/config/editor-config.d.ts.map +1 -0
- package/dist/client/components/workflow/config/editor-config.js +34 -0
- package/dist/client/components/workflow/config/editor-config.js.map +1 -0
- package/dist/client/components/workflow/config/schema-builder.d.ts +17 -0
- package/dist/client/components/workflow/config/schema-builder.d.ts.map +1 -0
- package/dist/client/components/workflow/config/schema-builder.js +55 -0
- package/dist/client/components/workflow/config/schema-builder.js.map +1 -0
- package/dist/client/components/workflow/config/system-action.d.ts +9 -0
- package/dist/client/components/workflow/config/system-action.d.ts.map +1 -0
- package/dist/client/components/workflow/config/system-action.js +33 -0
- package/dist/client/components/workflow/config/system-action.js.map +1 -0
- package/dist/client/components/workflow/config/trigger-config.d.ts +9 -0
- package/dist/client/components/workflow/config/trigger-config.d.ts.map +1 -0
- package/dist/client/components/workflow/config/trigger-config.js +33 -0
- package/dist/client/components/workflow/config/trigger-config.js.map +1 -0
- package/dist/client/components/workflow/node-config-panel.d.ts +3 -0
- package/dist/client/components/workflow/node-config-panel.d.ts.map +1 -0
- package/dist/client/components/workflow/node-config-panel.js +353 -0
- package/dist/client/components/workflow/node-config-panel.js.map +1 -0
- package/dist/client/components/workflow/nodes/action-node.d.ts +10 -0
- package/dist/client/components/workflow/nodes/action-node.d.ts.map +1 -0
- package/dist/client/components/workflow/nodes/action-node.js +176 -0
- package/dist/client/components/workflow/nodes/action-node.js.map +1 -0
- package/dist/client/components/workflow/nodes/add-node.d.ts +9 -0
- package/dist/client/components/workflow/nodes/add-node.d.ts.map +1 -0
- package/dist/client/components/workflow/nodes/add-node.js +8 -0
- package/dist/client/components/workflow/nodes/add-node.js.map +1 -0
- package/dist/client/components/workflow/nodes/trigger-node.d.ts +8 -0
- package/dist/client/components/workflow/nodes/trigger-node.d.ts.map +1 -0
- package/dist/client/components/workflow/nodes/trigger-node.js +25 -0
- package/dist/client/components/workflow/nodes/trigger-node.js.map +1 -0
- package/dist/client/components/workflow/persistent-canvas.d.ts +2 -0
- package/dist/client/components/workflow/persistent-canvas.d.ts.map +1 -0
- package/dist/client/components/workflow/persistent-canvas.js +13 -0
- package/dist/client/components/workflow/persistent-canvas.js.map +1 -0
- package/dist/client/components/workflow/utils/code-generators.d.ts +12 -0
- package/dist/client/components/workflow/utils/code-generators.d.ts.map +1 -0
- package/dist/client/components/workflow/utils/code-generators.js +70 -0
- package/dist/client/components/workflow/utils/code-generators.js.map +1 -0
- package/dist/client/components/workflow/workflow-canvas.d.ts +3 -0
- package/dist/client/components/workflow/workflow-canvas.d.ts.map +1 -0
- package/dist/client/components/workflow/workflow-canvas.js +347 -0
- package/dist/client/components/workflow/workflow-canvas.js.map +1 -0
- package/dist/client/components/workflow/workflow-context-menu.d.ts +27 -0
- package/dist/client/components/workflow/workflow-context-menu.d.ts.map +1 -0
- package/dist/client/components/workflow/workflow-context-menu.js +156 -0
- package/dist/client/components/workflow/workflow-context-menu.js.map +1 -0
- package/dist/client/components/workflow/workflow-editor.d.ts +6 -0
- package/dist/client/components/workflow/workflow-editor.d.ts.map +1 -0
- package/dist/client/components/workflow/workflow-editor.js +443 -0
- package/dist/client/components/workflow/workflow-editor.js.map +1 -0
- package/dist/client/components/workflow/workflow-runs.d.ts +8 -0
- package/dist/client/components/workflow/workflow-runs.d.ts.map +1 -0
- package/dist/client/components/workflow/workflow-runs.js +336 -0
- package/dist/client/components/workflow/workflow-runs.js.map +1 -0
- package/dist/client/components/workflow/workflow-toolbar.d.ts +6 -0
- package/dist/client/components/workflow/workflow-toolbar.d.ts.map +1 -0
- package/dist/client/components/workflow/workflow-toolbar.js +707 -0
- package/dist/client/components/workflow/workflow-toolbar.js.map +1 -0
- package/dist/client/components/workflows/user-menu.d.ts +2 -0
- package/dist/client/components/workflows/user-menu.d.ts.map +1 -0
- package/dist/client/components/workflows/user-menu.js +65 -0
- package/dist/client/components/workflows/user-menu.js.map +1 -0
- package/dist/client/hooks/use-mobile.d.ts +2 -0
- package/dist/client/hooks/use-mobile.d.ts.map +1 -0
- package/dist/client/hooks/use-mobile.js +16 -0
- package/dist/client/hooks/use-mobile.js.map +1 -0
- package/dist/client/hooks/use-touch.d.ts +2 -0
- package/dist/client/hooks/use-touch.d.ts.map +1 -0
- package/dist/client/hooks/use-touch.js +12 -0
- package/dist/client/hooks/use-touch.js.map +1 -0
- package/dist/client/index.d.ts +11 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +12 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/package.json +1 -0
- package/dist/lib/api-client.d.ts +330 -0
- package/dist/lib/api-client.d.ts.map +1 -0
- package/dist/lib/api-client.js +274 -0
- package/dist/lib/api-client.js.map +1 -0
- package/dist/lib/atoms/overlay.d.ts +15 -0
- package/dist/lib/atoms/overlay.d.ts.map +1 -0
- package/dist/lib/atoms/overlay.js +78 -0
- package/dist/lib/atoms/overlay.js.map +1 -0
- package/dist/lib/auth-client.d.ts +871 -0
- package/dist/lib/auth-client.d.ts.map +1 -0
- package/dist/lib/auth-client.js +10 -0
- package/dist/lib/auth-client.js.map +1 -0
- package/dist/lib/auth-providers.d.ts +12 -0
- package/dist/lib/auth-providers.d.ts.map +1 -0
- package/dist/lib/auth-providers.js +27 -0
- package/dist/lib/auth-providers.js.map +1 -0
- package/dist/lib/auth.d.ts +5 -0
- package/dist/lib/auth.d.ts.map +1 -0
- package/dist/lib/auth.js +62 -0
- package/dist/lib/auth.js.map +1 -0
- package/dist/lib/codegen-templates/condition.d.ts +3 -0
- package/dist/lib/codegen-templates/condition.d.ts.map +1 -0
- package/dist/lib/codegen-templates/condition.js +9 -0
- package/dist/lib/codegen-templates/condition.js.map +1 -0
- package/dist/lib/codegen-templates/database-query.d.ts +3 -0
- package/dist/lib/codegen-templates/database-query.d.ts.map +1 -0
- package/dist/lib/codegen-templates/database-query.js +24 -0
- package/dist/lib/codegen-templates/database-query.js.map +1 -0
- package/dist/lib/codegen-templates/http-request.d.ts +3 -0
- package/dist/lib/codegen-templates/http-request.d.ts.map +1 -0
- package/dist/lib/codegen-templates/http-request.js +44 -0
- package/dist/lib/codegen-templates/http-request.js.map +1 -0
- package/dist/lib/condition-validator.d.ts +10 -0
- package/dist/lib/condition-validator.d.ts.map +1 -0
- package/dist/lib/condition-validator.js +230 -0
- package/dist/lib/condition-validator.js.map +1 -0
- package/dist/lib/constants.d.ts +3 -0
- package/dist/lib/constants.d.ts.map +1 -0
- package/dist/lib/constants.js +3 -0
- package/dist/lib/constants.js.map +1 -0
- package/dist/lib/credential-fetcher.d.ts +4 -0
- package/dist/lib/credential-fetcher.d.ts.map +1 -0
- package/dist/lib/credential-fetcher.js +38 -0
- package/dist/lib/credential-fetcher.js.map +1 -0
- package/dist/lib/db/index.d.ts +4 -0
- package/dist/lib/db/index.d.ts.map +1 -0
- package/dist/lib/db/index.js +17 -0
- package/dist/lib/db/index.js.map +1 -0
- package/dist/lib/db/integrations.d.ts +36 -0
- package/dist/lib/db/integrations.d.ts.map +1 -0
- package/dist/lib/db/integrations.js +170 -0
- package/dist/lib/db/integrations.js.map +1 -0
- package/dist/lib/db/schema.d.ts +1474 -0
- package/dist/lib/db/schema.d.ts.map +1 -0
- package/dist/lib/db/schema.js +143 -0
- package/dist/lib/db/schema.js.map +1 -0
- package/dist/lib/integrations-store.d.ts +13 -0
- package/dist/lib/integrations-store.d.ts.map +1 -0
- package/dist/lib/integrations-store.js +10 -0
- package/dist/lib/integrations-store.js.map +1 -0
- package/dist/lib/managed-connection.d.ts +49 -0
- package/dist/lib/managed-connection.d.ts.map +1 -0
- package/dist/lib/managed-connection.js +21 -0
- package/dist/lib/managed-connection.js.map +1 -0
- package/dist/lib/monaco-theme.d.ts +29 -0
- package/dist/lib/monaco-theme.d.ts.map +1 -0
- package/dist/lib/monaco-theme.js +54 -0
- package/dist/lib/monaco-theme.js.map +1 -0
- package/dist/lib/plugin-registry.d.ts +10 -0
- package/dist/lib/plugin-registry.d.ts.map +1 -0
- package/dist/lib/plugin-registry.js +16 -0
- package/dist/lib/plugin-registry.js.map +1 -0
- package/dist/lib/steps/credentials.d.ts +14 -0
- package/dist/lib/steps/credentials.d.ts.map +1 -0
- package/dist/lib/steps/credentials.js +65 -0
- package/dist/lib/steps/credentials.js.map +1 -0
- package/dist/lib/steps/http-request.d.ts +22 -0
- package/dist/lib/steps/http-request.d.ts.map +1 -0
- package/dist/lib/steps/http-request.js +72 -0
- package/dist/lib/steps/http-request.js.map +1 -0
- package/dist/lib/steps/index.d.ts +10 -0
- package/dist/lib/steps/index.d.ts.map +1 -0
- package/dist/lib/steps/index.js +14 -0
- package/dist/lib/steps/index.js.map +1 -0
- package/dist/lib/steps/step-handler.d.ts +30 -0
- package/dist/lib/steps/step-handler.d.ts.map +1 -0
- package/dist/lib/steps/step-handler.js +105 -0
- package/dist/lib/steps/step-handler.js.map +1 -0
- package/dist/lib/steps/trigger.d.ts +21 -0
- package/dist/lib/steps/trigger.d.ts.map +1 -0
- package/dist/lib/steps/trigger.js +17 -0
- package/dist/lib/steps/trigger.js.map +1 -0
- package/dist/lib/types/integration.d.ts +3 -0
- package/dist/lib/types/integration.d.ts.map +1 -0
- package/dist/lib/types/integration.js +2 -0
- package/dist/lib/types/integration.js.map +1 -0
- package/dist/lib/utils/format-number.d.ts +2 -0
- package/dist/lib/utils/format-number.d.ts.map +1 -0
- package/dist/lib/utils/format-number.js +16 -0
- package/dist/lib/utils/format-number.js.map +1 -0
- package/dist/lib/utils/id.d.ts +2 -0
- package/dist/lib/utils/id.d.ts.map +1 -0
- package/dist/lib/utils/id.js +6 -0
- package/dist/lib/utils/id.js.map +1 -0
- package/dist/lib/utils/redact.d.ts +4 -0
- package/dist/lib/utils/redact.d.ts.map +1 -0
- package/dist/lib/utils/redact.js +143 -0
- package/dist/lib/utils/redact.js.map +1 -0
- package/dist/lib/utils/template.d.ts +18 -0
- package/dist/lib/utils/template.d.ts.map +1 -0
- package/dist/lib/utils/template.js +323 -0
- package/dist/lib/utils/template.js.map +1 -0
- package/dist/lib/utils/time.d.ts +2 -0
- package/dist/lib/utils/time.d.ts.map +1 -0
- package/dist/lib/utils/time.js +34 -0
- package/dist/lib/utils/time.js.map +1 -0
- package/dist/lib/utils.d.ts +5 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +99 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/lib/workflow-codegen-sdk.d.ts +4 -0
- package/dist/lib/workflow-codegen-sdk.d.ts.map +1 -0
- package/dist/lib/workflow-codegen-sdk.js +482 -0
- package/dist/lib/workflow-codegen-sdk.js.map +1 -0
- package/dist/lib/workflow-codegen-shared.d.ts +26 -0
- package/dist/lib/workflow-codegen-shared.d.ts.map +1 -0
- package/dist/lib/workflow-codegen-shared.js +232 -0
- package/dist/lib/workflow-codegen-shared.js.map +1 -0
- package/dist/lib/workflow-codegen.d.ts +18 -0
- package/dist/lib/workflow-codegen.d.ts.map +1 -0
- package/dist/lib/workflow-codegen.js +786 -0
- package/dist/lib/workflow-codegen.js.map +1 -0
- package/dist/lib/workflow-executor.workflow.d.ts +33 -0
- package/dist/lib/workflow-executor.workflow.d.ts.map +1 -0
- package/dist/lib/workflow-executor.workflow.js +605 -0
- package/dist/lib/workflow-executor.workflow.js.map +1 -0
- package/dist/lib/workflow-logging.d.ts +29 -0
- package/dist/lib/workflow-logging.d.ts.map +1 -0
- package/dist/lib/workflow-logging.js +48 -0
- package/dist/lib/workflow-logging.js.map +1 -0
- package/dist/lib/workflow-store.d.ts +118 -0
- package/dist/lib/workflow-store.d.ts.map +1 -0
- package/dist/lib/workflow-store.js +351 -0
- package/dist/lib/workflow-store.js.map +1 -0
- package/dist/plugins/condition/components/condition-fields.d.ts +7 -0
- package/dist/plugins/condition/components/condition-fields.d.ts.map +1 -0
- package/dist/plugins/condition/components/condition-fields.js +8 -0
- package/dist/plugins/condition/components/condition-fields.js.map +1 -0
- package/dist/plugins/condition/index.d.ts +4 -0
- package/dist/plugins/condition/index.d.ts.map +1 -0
- package/dist/plugins/condition/index.js +23 -0
- package/dist/plugins/condition/index.js.map +1 -0
- package/dist/plugins/condition/steps/evaluate.d.ts +15 -0
- package/dist/plugins/condition/steps/evaluate.d.ts.map +1 -0
- package/dist/plugins/condition/steps/evaluate.js +10 -0
- package/dist/plugins/condition/steps/evaluate.js.map +1 -0
- package/dist/plugins/database/components/database-query-fields.d.ts +7 -0
- package/dist/plugins/database/components/database-query-fields.d.ts.map +1 -0
- package/dist/plugins/database/components/database-query-fields.js +18 -0
- package/dist/plugins/database/components/database-query-fields.js.map +1 -0
- package/dist/plugins/database/index.d.ts +4 -0
- package/dist/plugins/database/index.d.ts.map +1 -0
- package/dist/plugins/database/index.js +23 -0
- package/dist/plugins/database/index.js.map +1 -0
- package/dist/plugins/database/steps/query.d.ts +20 -0
- package/dist/plugins/database/steps/query.d.ts.map +1 -0
- package/dist/plugins/database/steps/query.js +92 -0
- package/dist/plugins/database/steps/query.js.map +1 -0
- package/dist/plugins/index.d.ts +10 -0
- package/dist/plugins/index.d.ts.map +1 -0
- package/dist/plugins/index.js +6 -0
- package/dist/plugins/index.js.map +1 -0
- package/dist/plugins/legacy-mappings.d.ts +2 -0
- package/dist/plugins/legacy-mappings.d.ts.map +1 -0
- package/dist/plugins/legacy-mappings.js +2 -0
- package/dist/plugins/legacy-mappings.js.map +1 -0
- package/dist/plugins/loop/components/loop-fields.d.ts +7 -0
- package/dist/plugins/loop/components/loop-fields.d.ts.map +1 -0
- package/dist/plugins/loop/components/loop-fields.js +8 -0
- package/dist/plugins/loop/components/loop-fields.js.map +1 -0
- package/dist/plugins/loop/icon.d.ts +4 -0
- package/dist/plugins/loop/icon.d.ts.map +1 -0
- package/dist/plugins/loop/icon.js +5 -0
- package/dist/plugins/loop/icon.js.map +1 -0
- package/dist/plugins/loop/index.d.ts +4 -0
- package/dist/plugins/loop/index.d.ts.map +1 -0
- package/dist/plugins/loop/index.js +52 -0
- package/dist/plugins/loop/index.js.map +1 -0
- package/dist/plugins/loop/steps/iterate.d.ts +24 -0
- package/dist/plugins/loop/steps/iterate.d.ts.map +1 -0
- package/dist/plugins/loop/steps/iterate.js +31 -0
- package/dist/plugins/loop/steps/iterate.js.map +1 -0
- package/dist/plugins/registry.d.ts +136 -0
- package/dist/plugins/registry.d.ts.map +1 -0
- package/dist/plugins/registry.js +241 -0
- package/dist/plugins/registry.js.map +1 -0
- package/dist/plugins/switch/icon.d.ts +4 -0
- package/dist/plugins/switch/icon.d.ts.map +1 -0
- package/dist/plugins/switch/icon.js +5 -0
- package/dist/plugins/switch/icon.js.map +1 -0
- package/dist/plugins/switch/index.d.ts +4 -0
- package/dist/plugins/switch/index.d.ts.map +1 -0
- package/dist/plugins/switch/index.js +81 -0
- package/dist/plugins/switch/index.js.map +1 -0
- package/dist/plugins/switch/steps/evaluate.d.ts +27 -0
- package/dist/plugins/switch/steps/evaluate.d.ts.map +1 -0
- package/dist/plugins/switch/steps/evaluate.js +81 -0
- package/dist/plugins/switch/steps/evaluate.js.map +1 -0
- package/dist/scripts/create-plugin.d.ts +3 -0
- package/dist/scripts/create-plugin.d.ts.map +1 -0
- package/dist/scripts/create-plugin.js +205 -0
- package/dist/scripts/create-plugin.js.map +1 -0
- package/dist/scripts/discover-plugins.d.ts +3 -0
- package/dist/scripts/discover-plugins.d.ts.map +1 -0
- package/dist/scripts/discover-plugins.js +729 -0
- package/dist/scripts/discover-plugins.js.map +1 -0
- package/dist/scripts/migrate-prod.d.ts +2 -0
- package/dist/scripts/migrate-prod.d.ts.map +1 -0
- package/dist/scripts/migrate-prod.js +17 -0
- package/dist/scripts/migrate-prod.js.map +1 -0
- package/dist/scripts/nwb.d.ts +3 -0
- package/dist/scripts/nwb.d.ts.map +1 -0
- package/dist/scripts/nwb.js +33 -0
- package/dist/scripts/nwb.js.map +1 -0
- package/dist/server/api/handler-utils.d.ts +22 -0
- package/dist/server/api/handler-utils.d.ts.map +1 -0
- package/dist/server/api/handler-utils.js +42 -0
- package/dist/server/api/handler-utils.js.map +1 -0
- package/dist/server/api/handlers/ai/generate/route.d.ts +3 -0
- package/dist/server/api/handlers/ai/generate/route.d.ts.map +1 -0
- package/dist/server/api/handlers/ai/generate/route.js +260 -0
- package/dist/server/api/handlers/ai/generate/route.js.map +1 -0
- package/dist/server/api/handlers/api-keys/[keyId]/route.d.ts +3 -0
- package/dist/server/api/handlers/api-keys/[keyId]/route.d.ts.map +1 -0
- package/dist/server/api/handlers/api-keys/[keyId]/route.js +25 -0
- package/dist/server/api/handlers/api-keys/[keyId]/route.js.map +1 -0
- package/dist/server/api/handlers/api-keys/route.d.ts +3 -0
- package/dist/server/api/handlers/api-keys/route.d.ts.map +1 -0
- package/dist/server/api/handlers/api-keys/route.js +84 -0
- package/dist/server/api/handlers/api-keys/route.js.map +1 -0
- package/dist/server/api/handlers/auth/route.d.ts +3 -0
- package/dist/server/api/handlers/auth/route.d.ts.map +1 -0
- package/dist/server/api/handlers/auth/route.js +14 -0
- package/dist/server/api/handlers/auth/route.js.map +1 -0
- package/dist/server/api/handlers/integrations/[integrationId]/route.d.ts +16 -0
- package/dist/server/api/handlers/integrations/[integrationId]/route.d.ts.map +1 -0
- package/dist/server/api/handlers/integrations/[integrationId]/route.js +117 -0
- package/dist/server/api/handlers/integrations/[integrationId]/route.js.map +1 -0
- package/dist/server/api/handlers/integrations/[integrationId]/test/route.d.ts +7 -0
- package/dist/server/api/handlers/integrations/[integrationId]/test/route.d.ts.map +1 -0
- package/dist/server/api/handlers/integrations/[integrationId]/test/route.js +96 -0
- package/dist/server/api/handlers/integrations/[integrationId]/test/route.js.map +1 -0
- package/dist/server/api/handlers/integrations/route.d.ts +24 -0
- package/dist/server/api/handlers/integrations/route.d.ts.map +1 -0
- package/dist/server/api/handlers/integrations/route.js +80 -0
- package/dist/server/api/handlers/integrations/route.js.map +1 -0
- package/dist/server/api/handlers/integrations/test/route.d.ts +12 -0
- package/dist/server/api/handlers/integrations/test/route.d.ts.map +1 -0
- package/dist/server/api/handlers/integrations/test/route.js +76 -0
- package/dist/server/api/handlers/integrations/test/route.js.map +1 -0
- package/dist/server/api/handlers/og/workflow/[workflowId]/route.d.ts +7 -0
- package/dist/server/api/handlers/og/workflow/[workflowId]/route.d.ts.map +1 -0
- package/dist/server/api/handlers/og/workflow/[workflowId]/route.js +197 -0
- package/dist/server/api/handlers/og/workflow/[workflowId]/route.js.map +1 -0
- package/dist/server/api/handlers/user/route.d.ts +3 -0
- package/dist/server/api/handlers/user/route.d.ts.map +1 -0
- package/dist/server/api/handlers/user/route.js +81 -0
- package/dist/server/api/handlers/user/route.js.map +1 -0
- package/dist/server/api/handlers/workflow/[workflowId]/cron/route.d.ts +3 -0
- package/dist/server/api/handlers/workflow/[workflowId]/cron/route.d.ts.map +1 -0
- package/dist/server/api/handlers/workflow/[workflowId]/cron/route.js +65 -0
- package/dist/server/api/handlers/workflow/[workflowId]/cron/route.js.map +1 -0
- package/dist/server/api/handlers/workflow/[workflowId]/execute/route.d.ts +3 -0
- package/dist/server/api/handlers/workflow/[workflowId]/execute/route.d.ts.map +1 -0
- package/dist/server/api/handlers/workflow/[workflowId]/execute/route.js +72 -0
- package/dist/server/api/handlers/workflow/[workflowId]/execute/route.js.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/code/route.d.ts +3 -0
- package/dist/server/api/handlers/workflows/[workflowId]/code/route.d.ts.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/code/route.js +24 -0
- package/dist/server/api/handlers/workflows/[workflowId]/code/route.js.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/cron/route.d.ts +3 -0
- package/dist/server/api/handlers/workflows/[workflowId]/cron/route.d.ts.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/cron/route.js +65 -0
- package/dist/server/api/handlers/workflows/[workflowId]/cron/route.js.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/download/route.d.ts +3 -0
- package/dist/server/api/handlers/workflows/[workflowId]/download/route.d.ts.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/download/route.js +24 -0
- package/dist/server/api/handlers/workflows/[workflowId]/download/route.js.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/duplicate/route.d.ts +3 -0
- package/dist/server/api/handlers/workflows/[workflowId]/duplicate/route.d.ts.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/duplicate/route.js +89 -0
- package/dist/server/api/handlers/workflows/[workflowId]/duplicate/route.js.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/execute/route.d.ts +3 -0
- package/dist/server/api/handlers/workflows/[workflowId]/execute/route.d.ts.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/execute/route.js +72 -0
- package/dist/server/api/handlers/workflows/[workflowId]/execute/route.js.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/executions/route.d.ts +3 -0
- package/dist/server/api/handlers/workflows/[workflowId]/executions/route.d.ts.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/executions/route.js +63 -0
- package/dist/server/api/handlers/workflows/[workflowId]/executions/route.js.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/route.d.ts +3 -0
- package/dist/server/api/handlers/workflows/[workflowId]/route.d.ts.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/route.js +132 -0
- package/dist/server/api/handlers/workflows/[workflowId]/route.js.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/webhook/route.d.ts +3 -0
- package/dist/server/api/handlers/workflows/[workflowId]/webhook/route.d.ts.map +1 -0
- package/dist/server/api/handlers/workflows/[workflowId]/webhook/route.js +111 -0
- package/dist/server/api/handlers/workflows/[workflowId]/webhook/route.js.map +1 -0
- package/dist/server/api/handlers/workflows/create/route.d.ts +3 -0
- package/dist/server/api/handlers/workflows/create/route.d.ts.map +1 -0
- package/dist/server/api/handlers/workflows/create/route.js +67 -0
- package/dist/server/api/handlers/workflows/create/route.js.map +1 -0
- package/dist/server/api/handlers/workflows/current/route.d.ts +3 -0
- package/dist/server/api/handlers/workflows/current/route.d.ts.map +1 -0
- package/dist/server/api/handlers/workflows/current/route.js +89 -0
- package/dist/server/api/handlers/workflows/current/route.js.map +1 -0
- package/dist/server/api/handlers/workflows/executions/[executionId]/logs/route.d.ts +3 -0
- package/dist/server/api/handlers/workflows/executions/[executionId]/logs/route.d.ts.map +1 -0
- package/dist/server/api/handlers/workflows/executions/[executionId]/logs/route.js +38 -0
- package/dist/server/api/handlers/workflows/executions/[executionId]/logs/route.js.map +1 -0
- package/dist/server/api/handlers/workflows/executions/[executionId]/status/route.d.ts +3 -0
- package/dist/server/api/handlers/workflows/executions/[executionId]/status/route.d.ts.map +1 -0
- package/dist/server/api/handlers/workflows/executions/[executionId]/status/route.js +35 -0
- package/dist/server/api/handlers/workflows/executions/[executionId]/status/route.js.map +1 -0
- package/dist/server/api/handlers/workflows/route.d.ts +3 -0
- package/dist/server/api/handlers/workflows/route.d.ts.map +1 -0
- package/dist/server/api/handlers/workflows/route.js +22 -0
- package/dist/server/api/handlers/workflows/route.js.map +1 -0
- package/dist/server/api/routes.d.ts +4 -0
- package/dist/server/api/routes.d.ts.map +1 -0
- package/dist/server/api/routes.js +51 -0
- package/dist/server/api/routes.js.map +1 -0
- package/dist/server/api/types.d.ts +41 -0
- package/dist/server/api/types.d.ts.map +1 -0
- package/dist/server/api/types.js +2 -0
- package/dist/server/api/types.js.map +1 -0
- package/dist/server/api/workflows.d.ts +8 -0
- package/dist/server/api/workflows.d.ts.map +1 -0
- package/dist/server/api/workflows.js +75 -0
- package/dist/server/api/workflows.js.map +1 -0
- package/dist/server/db/migrate.d.ts +2 -0
- package/dist/server/db/migrate.d.ts.map +1 -0
- package/dist/server/db/migrate.js +2 -0
- package/dist/server/db/migrate.js.map +1 -0
- package/dist/server/db/schema.d.ts +1465 -0
- package/dist/server/db/schema.d.ts.map +1 -0
- package/dist/server/db/schema.js +15 -0
- package/dist/server/db/schema.js.map +1 -0
- package/dist/server/index.d.ts +11 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +9 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/plugin.d.ts +17 -0
- package/dist/server/plugin.d.ts.map +1 -0
- package/dist/server/plugin.js +27 -0
- package/dist/server/plugin.js.map +1 -0
- package/dist/server/utils.d.ts +3 -0
- package/dist/server/utils.d.ts.map +1 -0
- package/dist/server/utils.js +7 -0
- package/dist/server/utils.js.map +1 -0
- package/dist/styles/globals.css +254 -0
- package/package.json +130 -0
- package/src/plugins/_template/credentials.ts.txt +10 -0
- package/src/plugins/_template/icon.tsx.txt +28 -0
- package/src/plugins/_template/index.ts.txt +122 -0
- package/src/plugins/_template/steps/action.ts.txt +103 -0
- package/src/plugins/_template/test.ts.txt +57 -0
- package/src/plugins/condition/components/condition-fields.tsx +32 -0
- package/src/plugins/condition/index.ts +27 -0
- package/src/plugins/condition/steps/evaluate.ts +32 -0
- package/src/plugins/database/components/database-query-fields.tsx +58 -0
- package/src/plugins/database/index.ts +27 -0
- package/src/plugins/database/steps/query.ts +141 -0
- package/src/plugins/index.ts +37 -0
- package/src/plugins/legacy-mappings.ts +11 -0
- package/src/plugins/loop/components/loop-fields.tsx +46 -0
- package/src/plugins/loop/icon.tsx +21 -0
- package/src/plugins/loop/index.ts +57 -0
- package/src/plugins/loop/steps/iterate.ts +74 -0
- package/src/plugins/loop/workflow-executor.patch +241 -0
- package/src/plugins/registry.ts +660 -0
- package/src/plugins/switch/icon.tsx +23 -0
- package/src/plugins/switch/index.ts +87 -0
- package/src/plugins/switch/steps/evaluate.ts +139 -0
- package/src/plugins/switch/workflow-executor.patch +130 -0
- package/src/scripts/create-plugin.ts +301 -0
- package/src/scripts/discover-plugins.ts +1122 -0
- package/src/scripts/migrate-prod.ts +16 -0
- package/src/scripts/nwb.ts +54 -0
|
@@ -0,0 +1,729 @@
|
|
|
1
|
+
#!/usr/bin/env tsx
|
|
2
|
+
import { existsSync, mkdirSync, readdirSync, readFileSync, statSync, writeFileSync } from "node:fs";
|
|
3
|
+
import { dirname, join, relative } from "node:path";
|
|
4
|
+
import { pathToFileURL } from "node:url";
|
|
5
|
+
import ts from "typescript";
|
|
6
|
+
const PLUGINS_DIR = join(process.cwd(), "plugins");
|
|
7
|
+
const OUTPUT_FILE = join(PLUGINS_DIR, "index.ts");
|
|
8
|
+
const TYPES_FILE = join(process.cwd(), "lib", "types", "integration.ts");
|
|
9
|
+
const STEP_REGISTRY_FILE = join(process.cwd(), "lib", "step-registry.ts");
|
|
10
|
+
const OUTPUT_CONFIGS_FILE = join(process.cwd(), "lib", "output-display-configs.ts");
|
|
11
|
+
const CODEGEN_REGISTRY_FILE = join(process.cwd(), "lib", "codegen-registry.ts");
|
|
12
|
+
const ROUTE_REGISTRY_FILE = join(process.cwd(), "lib", "route-registry.ts");
|
|
13
|
+
const README_FILE = join(process.cwd(), "README.md");
|
|
14
|
+
const PLUGINS_MARKER_REGEX = /<!-- PLUGINS:START[^>]*-->[\s\S]*?<!-- PLUGINS:END -->/;
|
|
15
|
+
const SYSTEM_INTEGRATION_TYPES = ["database"];
|
|
16
|
+
const LEADING_WHITESPACE_PATTERN = /^\s*/;
|
|
17
|
+
async function importPackageOrLocal(localRelPath) {
|
|
18
|
+
const localPath = join(import.meta.dirname, "..", "plugins", localRelPath);
|
|
19
|
+
if (existsSync(localPath)) {
|
|
20
|
+
return await import(pathToFileURL(localPath).href);
|
|
21
|
+
}
|
|
22
|
+
return await import("next-workflow-builder/plugins");
|
|
23
|
+
}
|
|
24
|
+
function parsePluginImports() {
|
|
25
|
+
if (!existsSync(OUTPUT_FILE))
|
|
26
|
+
return [];
|
|
27
|
+
const content = readFileSync(OUTPUT_FILE, "utf-8");
|
|
28
|
+
const importRegex = /^\s*import\s+["']([^"']+)["']\s*;/gm;
|
|
29
|
+
const specifiers = [];
|
|
30
|
+
let match;
|
|
31
|
+
while ((match = importRegex.exec(content)) !== null) {
|
|
32
|
+
const spec = match[1];
|
|
33
|
+
if (spec.includes("/client") ||
|
|
34
|
+
spec.startsWith("../lib/") ||
|
|
35
|
+
spec.startsWith("../") ||
|
|
36
|
+
spec === "next-workflow-builder/components" ||
|
|
37
|
+
spec.startsWith("next-workflow-builder/")) {
|
|
38
|
+
continue;
|
|
39
|
+
}
|
|
40
|
+
specifiers.push(spec);
|
|
41
|
+
}
|
|
42
|
+
return specifiers;
|
|
43
|
+
}
|
|
44
|
+
async function importPluginsFromIndex() {
|
|
45
|
+
const localRegistry = await import("../plugins/registry.js");
|
|
46
|
+
const specifiers = parsePluginImports();
|
|
47
|
+
if (specifiers.length === 0) {
|
|
48
|
+
console.log("No plugin imports found in plugins/index.ts");
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
console.log(`Importing ${specifiers.length} plugin(s) from plugins/index.ts...`);
|
|
52
|
+
for (const spec of specifiers) {
|
|
53
|
+
let resolvedPath;
|
|
54
|
+
if (spec.startsWith(".")) {
|
|
55
|
+
resolvedPath = pathToFileURL(join(PLUGINS_DIR, spec, "index.ts")).href;
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
try {
|
|
59
|
+
const { createRequire } = await import("node:module");
|
|
60
|
+
const require = createRequire(join(process.cwd(), "package.json"));
|
|
61
|
+
resolvedPath = pathToFileURL(require.resolve(spec)).href;
|
|
62
|
+
}
|
|
63
|
+
catch {
|
|
64
|
+
resolvedPath = spec;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
try {
|
|
68
|
+
const mod = await import(resolvedPath);
|
|
69
|
+
if (mod.default) {
|
|
70
|
+
localRegistry.registerIntegration(mod.default);
|
|
71
|
+
if (!spec.startsWith(".")) {
|
|
72
|
+
npmPluginSpecifiers.set(mod.default.type, spec);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
console.log(` - ${spec}`);
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
console.warn(` Warning: Failed to import plugin "${spec}":`, error);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
console.log(`Registered ${specifiers.length} plugin(s) with local registry`);
|
|
82
|
+
}
|
|
83
|
+
async function formatCode(code) {
|
|
84
|
+
try {
|
|
85
|
+
const prettier = await import("prettier");
|
|
86
|
+
return await prettier.format(code, { parser: "typescript" });
|
|
87
|
+
}
|
|
88
|
+
catch (error) {
|
|
89
|
+
console.warn(" Warning: Failed to format generated code:", error);
|
|
90
|
+
return code;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
const generatedCodegenTemplates = new Map();
|
|
94
|
+
const npmPluginSpecifiers = new Map();
|
|
95
|
+
function discoverLocalPluginDirs() {
|
|
96
|
+
if (!existsSync(PLUGINS_DIR))
|
|
97
|
+
return [];
|
|
98
|
+
const entries = readdirSync(PLUGINS_DIR);
|
|
99
|
+
return entries.filter((entry) => {
|
|
100
|
+
if (entry.startsWith("_") ||
|
|
101
|
+
entry.startsWith(".") ||
|
|
102
|
+
entry === "index.ts" ||
|
|
103
|
+
entry === "registry.ts" ||
|
|
104
|
+
entry === "system") {
|
|
105
|
+
return false;
|
|
106
|
+
}
|
|
107
|
+
const fullPath = join(PLUGINS_DIR, entry);
|
|
108
|
+
try {
|
|
109
|
+
return statSync(fullPath).isDirectory();
|
|
110
|
+
}
|
|
111
|
+
catch {
|
|
112
|
+
return false;
|
|
113
|
+
}
|
|
114
|
+
}).sort();
|
|
115
|
+
}
|
|
116
|
+
function scaffoldIndexFile() {
|
|
117
|
+
if (existsSync(OUTPUT_FILE)) {
|
|
118
|
+
console.log("plugins/index.ts already exists, skipping scaffold");
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
const localPlugins = discoverLocalPluginDirs();
|
|
122
|
+
const imports = localPlugins.length > 0
|
|
123
|
+
? localPlugins.map((plugin) => `import "./${plugin}";`).join("\n")
|
|
124
|
+
: "// import \"./my-plugin\";";
|
|
125
|
+
const clientImports = localPlugins
|
|
126
|
+
.filter((plugin) => existsSync(join(PLUGINS_DIR, plugin, "client.ts")))
|
|
127
|
+
.map((plugin) => `import "./${plugin}/client";`)
|
|
128
|
+
.join("\n");
|
|
129
|
+
const content = `/**
|
|
130
|
+
* Plugins Index
|
|
131
|
+
*
|
|
132
|
+
* This file is managed by you. Add or remove plugin imports as needed.
|
|
133
|
+
*
|
|
134
|
+
* To add a local plugin:
|
|
135
|
+
* import "./my-plugin";
|
|
136
|
+
*
|
|
137
|
+
* To add an npm-installed plugin:
|
|
138
|
+
* import "@next-workflow-builder/loop";
|
|
139
|
+
*
|
|
140
|
+
* After editing, run: pnpm discover-plugins (or it runs automatically on build)
|
|
141
|
+
*/
|
|
142
|
+
"use client";
|
|
143
|
+
|
|
144
|
+
// Local plugins (side-effect imports trigger registration)
|
|
145
|
+
${imports}
|
|
146
|
+
|
|
147
|
+
// Register auto-generated data into the plugin registry
|
|
148
|
+
import "../lib/output-display-configs";
|
|
149
|
+
import "../lib/codegen-registry";
|
|
150
|
+
${clientImports ? `\n// Client-only registrations (managed connections, etc.)\n${clientImports}` : ""}
|
|
151
|
+
|
|
152
|
+
// Re-export LayoutProvider with plugins pre-registered via side-effect imports above
|
|
153
|
+
export { LayoutProvider } from "next-workflow-builder/components";
|
|
154
|
+
`;
|
|
155
|
+
writeFileSync(OUTPUT_FILE, content, "utf-8");
|
|
156
|
+
console.log("Scaffolded plugins/index.ts");
|
|
157
|
+
}
|
|
158
|
+
function ensureGitignore() {
|
|
159
|
+
const gitignorePath = join(process.cwd(), ".gitignore");
|
|
160
|
+
const SECTION_HEADER = "# Auto-generated by discover-plugins";
|
|
161
|
+
const filesToIgnore = [
|
|
162
|
+
TYPES_FILE,
|
|
163
|
+
STEP_REGISTRY_FILE,
|
|
164
|
+
OUTPUT_CONFIGS_FILE,
|
|
165
|
+
CODEGEN_REGISTRY_FILE,
|
|
166
|
+
ROUTE_REGISTRY_FILE,
|
|
167
|
+
];
|
|
168
|
+
const relativePaths = filesToIgnore.map((file) => relative(process.cwd(), file));
|
|
169
|
+
let content = "";
|
|
170
|
+
if (existsSync(gitignorePath)) {
|
|
171
|
+
content = readFileSync(gitignorePath, "utf-8");
|
|
172
|
+
}
|
|
173
|
+
const existingLines = new Set(content.split("\n").map((line) => line.trim()));
|
|
174
|
+
const newEntries = relativePaths.filter((entry) => !existingLines.has(entry));
|
|
175
|
+
if (newEntries.length > 0) {
|
|
176
|
+
let textToAppend = "";
|
|
177
|
+
if (content.length > 0 && !content.endsWith("\n")) {
|
|
178
|
+
textToAppend += "\n";
|
|
179
|
+
}
|
|
180
|
+
if (!content.includes(SECTION_HEADER)) {
|
|
181
|
+
textToAppend += `${SECTION_HEADER}\n`;
|
|
182
|
+
}
|
|
183
|
+
textToAppend += newEntries.join("\n") + "\n";
|
|
184
|
+
writeFileSync(gitignorePath, content + textToAppend, "utf-8");
|
|
185
|
+
console.log(`Updated .gitignore with ${newEntries.length} new file(s).`);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
async function updateReadme() {
|
|
189
|
+
const { getAllIntegrations } = await importPackageOrLocal("registry.ts");
|
|
190
|
+
const integrations = getAllIntegrations();
|
|
191
|
+
if (integrations.length === 0) {
|
|
192
|
+
console.log("No integrations found, skipping README update");
|
|
193
|
+
return;
|
|
194
|
+
}
|
|
195
|
+
const actionsList = integrations
|
|
196
|
+
.map((integration) => {
|
|
197
|
+
const actionLabels = integration.actions.map((a) => a.label).join(", ");
|
|
198
|
+
return `- **${integration.label}**: ${actionLabels}`;
|
|
199
|
+
})
|
|
200
|
+
.join("\n");
|
|
201
|
+
const readme = readFileSync(README_FILE, "utf-8");
|
|
202
|
+
if (!readme.includes("<!-- PLUGINS:START")) {
|
|
203
|
+
console.log("README markers not found, skipping README update");
|
|
204
|
+
return;
|
|
205
|
+
}
|
|
206
|
+
const updated = readme.replace(PLUGINS_MARKER_REGEX, `<!-- PLUGINS:START - Do not remove. Auto-generated by discover-plugins -->\n${actionsList}\n<!-- PLUGINS:END -->`);
|
|
207
|
+
writeFileSync(README_FILE, updated, "utf-8");
|
|
208
|
+
console.log(`Updated README.md with ${integrations.length} integration(s)`);
|
|
209
|
+
}
|
|
210
|
+
async function generateTypesFile() {
|
|
211
|
+
const typesDir = dirname(TYPES_FILE);
|
|
212
|
+
if (!existsSync(typesDir)) {
|
|
213
|
+
mkdirSync(typesDir, { recursive: true });
|
|
214
|
+
}
|
|
215
|
+
const { getIntegrationTypes } = await import("../plugins/registry.js");
|
|
216
|
+
const pluginTypes = getIntegrationTypes();
|
|
217
|
+
const allTypes = [...pluginTypes, ...SYSTEM_INTEGRATION_TYPES].sort();
|
|
218
|
+
const unionType = allTypes.map((t) => ` | "${t}"`).join("\n");
|
|
219
|
+
const content = `/**
|
|
220
|
+
* Integration Types (Auto-Generated)
|
|
221
|
+
*
|
|
222
|
+
* This file is automatically generated by scripts/discover-plugins.ts
|
|
223
|
+
* DO NOT EDIT MANUALLY - your changes will be overwritten!
|
|
224
|
+
*
|
|
225
|
+
* To add a new integration type:
|
|
226
|
+
* 1. Create a plugin in plugins/ directory, OR
|
|
227
|
+
* 2. Add a system integration to SYSTEM_INTEGRATION_TYPES in discover-plugins.ts
|
|
228
|
+
* 3. Run: pnpm discover-plugins
|
|
229
|
+
*
|
|
230
|
+
* Generated types: ${allTypes.join(", ")}
|
|
231
|
+
*/
|
|
232
|
+
|
|
233
|
+
// Integration type union - plugins + system integrations
|
|
234
|
+
export type IntegrationType =
|
|
235
|
+
${unionType};
|
|
236
|
+
|
|
237
|
+
// Generic config type - plugins define their own keys via formFields[].configKey
|
|
238
|
+
export type IntegrationConfig = Record<string, string | undefined>;
|
|
239
|
+
`;
|
|
240
|
+
writeFileSync(TYPES_FILE, content, "utf-8");
|
|
241
|
+
console.log(`Generated lib/types/integration.ts with ${allTypes.length} type(s)`);
|
|
242
|
+
}
|
|
243
|
+
function createEmptyAnalysis() {
|
|
244
|
+
return {
|
|
245
|
+
hasExportCore: false,
|
|
246
|
+
integrationType: null,
|
|
247
|
+
coreFunction: null,
|
|
248
|
+
inputTypes: [],
|
|
249
|
+
imports: [],
|
|
250
|
+
};
|
|
251
|
+
}
|
|
252
|
+
function processExportedVariable(decl, result) {
|
|
253
|
+
if (!ts.isIdentifier(decl.name)) {
|
|
254
|
+
return;
|
|
255
|
+
}
|
|
256
|
+
const name = decl.name.text;
|
|
257
|
+
const init = decl.initializer;
|
|
258
|
+
if (name === "_integrationType" && init && ts.isStringLiteral(init)) {
|
|
259
|
+
result.integrationType = init.text;
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
function shouldIncludeType(typeName) {
|
|
263
|
+
return (typeName.endsWith("Result") ||
|
|
264
|
+
typeName.endsWith("Credentials") ||
|
|
265
|
+
typeName.endsWith("CoreInput"));
|
|
266
|
+
}
|
|
267
|
+
function shouldIncludeImport(moduleSpec, importText) {
|
|
268
|
+
if (moduleSpec.startsWith("@/") || moduleSpec.startsWith(".")) {
|
|
269
|
+
return false;
|
|
270
|
+
}
|
|
271
|
+
if (importText.includes("server-only")) {
|
|
272
|
+
return false;
|
|
273
|
+
}
|
|
274
|
+
return true;
|
|
275
|
+
}
|
|
276
|
+
function extractFunctionInfo(node, sourceCode) {
|
|
277
|
+
if (!(node.name && node.body)) {
|
|
278
|
+
return null;
|
|
279
|
+
}
|
|
280
|
+
const params = node.parameters
|
|
281
|
+
.map((p) => sourceCode.slice(p.pos, p.end).trim())
|
|
282
|
+
.join(", ");
|
|
283
|
+
const returnType = node.type
|
|
284
|
+
? sourceCode.slice(node.type.pos, node.type.end).trim()
|
|
285
|
+
: "Promise<unknown>";
|
|
286
|
+
const body = sourceCode.slice(node.body.pos, node.body.end).trim();
|
|
287
|
+
return {
|
|
288
|
+
name: node.name.text,
|
|
289
|
+
params,
|
|
290
|
+
returnType,
|
|
291
|
+
body,
|
|
292
|
+
};
|
|
293
|
+
}
|
|
294
|
+
function processVariableStatement(node, result) {
|
|
295
|
+
const isExported = node.modifiers?.some((m) => m.kind === ts.SyntaxKind.ExportKeyword);
|
|
296
|
+
if (!isExported) {
|
|
297
|
+
return;
|
|
298
|
+
}
|
|
299
|
+
for (const decl of node.declarationList.declarations) {
|
|
300
|
+
processExportedVariable(decl, result);
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
function processTypeAlias(node, sourceCode, result) {
|
|
304
|
+
if (shouldIncludeType(node.name.text)) {
|
|
305
|
+
result.inputTypes.push(sourceCode.slice(node.pos, node.end).trim());
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
function processImportDeclaration(node, sourceCode, result) {
|
|
309
|
+
const spec = node.moduleSpecifier;
|
|
310
|
+
if (!ts.isStringLiteral(spec)) {
|
|
311
|
+
return;
|
|
312
|
+
}
|
|
313
|
+
const importText = sourceCode.slice(node.pos, node.end).trim();
|
|
314
|
+
if (shouldIncludeImport(spec.text, importText)) {
|
|
315
|
+
result.imports.push(importText);
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
function processNode(node, sourceCode, result) {
|
|
319
|
+
if (ts.isVariableStatement(node)) {
|
|
320
|
+
processVariableStatement(node, result);
|
|
321
|
+
return;
|
|
322
|
+
}
|
|
323
|
+
if (ts.isTypeAliasDeclaration(node)) {
|
|
324
|
+
processTypeAlias(node, sourceCode, result);
|
|
325
|
+
return;
|
|
326
|
+
}
|
|
327
|
+
if (ts.isImportDeclaration(node)) {
|
|
328
|
+
processImportDeclaration(node, sourceCode, result);
|
|
329
|
+
return;
|
|
330
|
+
}
|
|
331
|
+
if (ts.isFunctionDeclaration(node) && node.name?.text === "stepHandler") {
|
|
332
|
+
result.hasExportCore = true;
|
|
333
|
+
result.coreFunction = extractFunctionInfo(node, sourceCode);
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
function analyzeStepFile(filePath) {
|
|
337
|
+
const result = createEmptyAnalysis();
|
|
338
|
+
if (!existsSync(filePath)) {
|
|
339
|
+
return result;
|
|
340
|
+
}
|
|
341
|
+
const sourceCode = readFileSync(filePath, "utf-8");
|
|
342
|
+
const sourceFile = ts.createSourceFile(filePath, sourceCode, ts.ScriptTarget.Latest, true);
|
|
343
|
+
ts.forEachChild(sourceFile, (node) => {
|
|
344
|
+
processNode(node, sourceCode, result);
|
|
345
|
+
});
|
|
346
|
+
return result;
|
|
347
|
+
}
|
|
348
|
+
async function generateCodegenTemplate(stepFilePath, stepFunctionName) {
|
|
349
|
+
const analysis = analyzeStepFile(stepFilePath);
|
|
350
|
+
if (!(analysis.hasExportCore && analysis.coreFunction)) {
|
|
351
|
+
return null;
|
|
352
|
+
}
|
|
353
|
+
const { coreFunction, integrationType, inputTypes, imports } = analysis;
|
|
354
|
+
let innerBody = coreFunction.body.trim();
|
|
355
|
+
if (innerBody.startsWith("{")) {
|
|
356
|
+
innerBody = innerBody.slice(1);
|
|
357
|
+
}
|
|
358
|
+
if (innerBody.endsWith("}")) {
|
|
359
|
+
innerBody = innerBody.slice(0, -1);
|
|
360
|
+
}
|
|
361
|
+
innerBody = innerBody.trim();
|
|
362
|
+
const inputType = coreFunction.params
|
|
363
|
+
.split(",")[0]
|
|
364
|
+
.replace(LEADING_WHITESPACE_PATTERN, "")
|
|
365
|
+
.split(":")[1]
|
|
366
|
+
?.trim() || "unknown";
|
|
367
|
+
const rawTemplate = `${imports.join("\n")}
|
|
368
|
+
import { fetchCredentials } from './lib/credential-helper.js';
|
|
369
|
+
|
|
370
|
+
function getErrorMessage(error: unknown): string {
|
|
371
|
+
if (error instanceof Error) return error.message;
|
|
372
|
+
return String(error);
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
${inputTypes.join("\n\n")}
|
|
376
|
+
|
|
377
|
+
export async function ${stepFunctionName}(input: ${inputType}): ${coreFunction.returnType} {
|
|
378
|
+
"use step";
|
|
379
|
+
const credentials = await fetchCredentials("${integrationType || "unknown"}");
|
|
380
|
+
${innerBody}
|
|
381
|
+
}`;
|
|
382
|
+
return await formatCode(rawTemplate);
|
|
383
|
+
}
|
|
384
|
+
async function processStepFilesForCodegen() {
|
|
385
|
+
const { getAllIntegrations, computeActionId } = await import("../plugins/registry.js");
|
|
386
|
+
const integrations = getAllIntegrations();
|
|
387
|
+
for (const integration of integrations) {
|
|
388
|
+
for (const action of integration.actions) {
|
|
389
|
+
let stepFilePath;
|
|
390
|
+
const npmSpec = npmPluginSpecifiers.get(integration.type);
|
|
391
|
+
if (npmSpec) {
|
|
392
|
+
try {
|
|
393
|
+
const { createRequire } = await import("node:module");
|
|
394
|
+
const require = createRequire(join(process.cwd(), "package.json"));
|
|
395
|
+
const pkgDir = dirname(require.resolve(`${npmSpec}/package.json`));
|
|
396
|
+
stepFilePath = join(pkgDir, "steps", `${action.stepImportPath}.ts`);
|
|
397
|
+
}
|
|
398
|
+
catch {
|
|
399
|
+
continue;
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
else {
|
|
403
|
+
stepFilePath = join(PLUGINS_DIR, integration.type, "steps", `${action.stepImportPath}.ts`);
|
|
404
|
+
}
|
|
405
|
+
const template = await generateCodegenTemplate(stepFilePath, action.stepFunction);
|
|
406
|
+
if (template) {
|
|
407
|
+
const actionId = computeActionId(integration.type, action.slug);
|
|
408
|
+
generatedCodegenTemplates.set(actionId, {
|
|
409
|
+
template,
|
|
410
|
+
integrationType: integration.type,
|
|
411
|
+
});
|
|
412
|
+
console.log(` Generated codegen template for ${actionId}`);
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
}
|
|
416
|
+
}
|
|
417
|
+
function generateCodegenRegistry() {
|
|
418
|
+
const entries = Array.from(generatedCodegenTemplates.entries());
|
|
419
|
+
if (entries.length === 0) {
|
|
420
|
+
console.log("No codegen templates generated");
|
|
421
|
+
return;
|
|
422
|
+
}
|
|
423
|
+
const templateEntries = entries
|
|
424
|
+
.map(([actionId, { template }]) => {
|
|
425
|
+
const escapedTemplate = template
|
|
426
|
+
.replace(/\\/g, "\\\\")
|
|
427
|
+
.replace(/`/g, "\\`")
|
|
428
|
+
.replace(/\$\{/g, "\\${");
|
|
429
|
+
return ` "${actionId}": \`${escapedTemplate}\`,`;
|
|
430
|
+
})
|
|
431
|
+
.join("\n\n");
|
|
432
|
+
const content = `/**
|
|
433
|
+
* Codegen Registry (Auto-Generated)
|
|
434
|
+
*
|
|
435
|
+
* This file is automatically generated by scripts/discover-plugins.ts
|
|
436
|
+
* DO NOT EDIT MANUALLY - your changes will be overwritten!
|
|
437
|
+
*
|
|
438
|
+
* Contains auto-generated codegen templates for steps with stepHandler.
|
|
439
|
+
* These templates are used when exporting workflows to standalone projects.
|
|
440
|
+
*
|
|
441
|
+
* Generated templates: ${entries.length}
|
|
442
|
+
*/
|
|
443
|
+
|
|
444
|
+
import { registerCodegenTemplates } from "next-workflow-builder/plugins";
|
|
445
|
+
|
|
446
|
+
/**
|
|
447
|
+
* Auto-generated codegen templates
|
|
448
|
+
* Maps action IDs to their generated export code templates
|
|
449
|
+
*/
|
|
450
|
+
export const AUTO_GENERATED_TEMPLATES: Record<string, string> = {
|
|
451
|
+
${templateEntries}
|
|
452
|
+
};
|
|
453
|
+
|
|
454
|
+
// Register templates into the plugin registry so the package can access them
|
|
455
|
+
registerCodegenTemplates(AUTO_GENERATED_TEMPLATES);
|
|
456
|
+
`;
|
|
457
|
+
writeFileSync(CODEGEN_REGISTRY_FILE, content, "utf-8");
|
|
458
|
+
console.log(`Generated lib/codegen-registry.ts with ${entries.length} template(s)`);
|
|
459
|
+
}
|
|
460
|
+
async function generateStepRegistry() {
|
|
461
|
+
const { getAllIntegrations, computeActionId } = await import("../plugins/registry.js");
|
|
462
|
+
const { LEGACY_ACTION_MAPPINGS } = await import("../plugins/legacy-mappings.js");
|
|
463
|
+
const integrations = getAllIntegrations();
|
|
464
|
+
console.log("Generating step registry for integrations...");
|
|
465
|
+
const stepEntries = [];
|
|
466
|
+
for (const integration of integrations) {
|
|
467
|
+
for (const action of integration.actions) {
|
|
468
|
+
const fullActionId = computeActionId(integration.type, action.slug);
|
|
469
|
+
stepEntries.push({
|
|
470
|
+
actionId: fullActionId,
|
|
471
|
+
label: action.label,
|
|
472
|
+
integration: integration.type,
|
|
473
|
+
stepImportPath: action.stepImportPath,
|
|
474
|
+
stepFunction: action.stepFunction,
|
|
475
|
+
});
|
|
476
|
+
}
|
|
477
|
+
}
|
|
478
|
+
const legacyLabelsForAction = {};
|
|
479
|
+
for (const [legacyLabel, actionId] of Object.entries(LEGACY_ACTION_MAPPINGS)) {
|
|
480
|
+
if (!legacyLabelsForAction[actionId]) {
|
|
481
|
+
legacyLabelsForAction[actionId] = [];
|
|
482
|
+
}
|
|
483
|
+
legacyLabelsForAction[actionId].push(legacyLabel);
|
|
484
|
+
}
|
|
485
|
+
const importerEntries = stepEntries
|
|
486
|
+
.flatMap(({ actionId, integration, stepImportPath, stepFunction }) => {
|
|
487
|
+
const npmSpec = npmPluginSpecifiers.get(integration);
|
|
488
|
+
const importPath = npmSpec
|
|
489
|
+
? `${npmSpec}/steps/${stepImportPath}`
|
|
490
|
+
: `@/plugins/${integration}/steps/${stepImportPath}`;
|
|
491
|
+
const entries = [
|
|
492
|
+
` "${actionId}": {
|
|
493
|
+
importer: () => import("${importPath}"),
|
|
494
|
+
stepFunction: "${stepFunction}",
|
|
495
|
+
},`,
|
|
496
|
+
];
|
|
497
|
+
const legacyLabels = legacyLabelsForAction[actionId] || [];
|
|
498
|
+
for (const legacyLabel of legacyLabels) {
|
|
499
|
+
entries.push(` "${legacyLabel}": {
|
|
500
|
+
importer: () => import("${importPath}"),
|
|
501
|
+
stepFunction: "${stepFunction}",
|
|
502
|
+
},`);
|
|
503
|
+
}
|
|
504
|
+
return entries;
|
|
505
|
+
})
|
|
506
|
+
.join("\n");
|
|
507
|
+
const labelEntries = stepEntries
|
|
508
|
+
.map(({ actionId, label }) => ` "${actionId}": "${label}",`)
|
|
509
|
+
.join("\n");
|
|
510
|
+
const legacyLabelEntries = Object.entries(legacyLabelsForAction)
|
|
511
|
+
.flatMap(([actionId, legacyLabels]) => {
|
|
512
|
+
const entry = stepEntries.find((e) => e.actionId === actionId);
|
|
513
|
+
if (!entry) {
|
|
514
|
+
return [];
|
|
515
|
+
}
|
|
516
|
+
return legacyLabels.map((legacyLabel) => ` "${legacyLabel}": "${entry.label}",`);
|
|
517
|
+
})
|
|
518
|
+
.join("\n");
|
|
519
|
+
const content = `/**
|
|
520
|
+
* Step Registry (Auto-Generated)
|
|
521
|
+
*
|
|
522
|
+
* This file is automatically generated by scripts/discover-plugins.ts
|
|
523
|
+
* DO NOT EDIT MANUALLY - your changes will be overwritten!
|
|
524
|
+
*
|
|
525
|
+
* This registry enables dynamic step imports that are statically analyzable
|
|
526
|
+
* by the bundler. Each action type maps to its step importer function.
|
|
527
|
+
*
|
|
528
|
+
* Generated entries: ${stepEntries.length}
|
|
529
|
+
*/
|
|
530
|
+
|
|
531
|
+
import "server-only";
|
|
532
|
+
|
|
533
|
+
// biome-ignore lint/suspicious/noExplicitAny: Dynamic step module types - step functions take any input
|
|
534
|
+
export type StepFunction = (input: any) => Promise<any>;
|
|
535
|
+
|
|
536
|
+
// Step modules may contain the step function plus other exports (types, constants, etc.)
|
|
537
|
+
// biome-ignore lint/suspicious/noExplicitAny: Dynamic module with mixed exports
|
|
538
|
+
export type StepModule = Record<string, any>;
|
|
539
|
+
|
|
540
|
+
export type StepImporter = {
|
|
541
|
+
importer: () => Promise<StepModule>;
|
|
542
|
+
stepFunction: string;
|
|
543
|
+
};
|
|
544
|
+
|
|
545
|
+
/**
|
|
546
|
+
* Plugin step importers - maps action types to their step import functions
|
|
547
|
+
* These imports are statically analyzable by the bundler
|
|
548
|
+
*/
|
|
549
|
+
export const PLUGIN_STEP_IMPORTERS: Record<string, StepImporter> = {
|
|
550
|
+
${importerEntries}
|
|
551
|
+
};
|
|
552
|
+
|
|
553
|
+
/**
|
|
554
|
+
* Action labels - maps action IDs to human-readable labels
|
|
555
|
+
* Used for displaying friendly names in the UI (e.g., Runs tab)
|
|
556
|
+
*/
|
|
557
|
+
export const ACTION_LABELS: Record<string, string> = {
|
|
558
|
+
${labelEntries}
|
|
559
|
+
${legacyLabelEntries}
|
|
560
|
+
};
|
|
561
|
+
|
|
562
|
+
/**
|
|
563
|
+
* Get a step importer for an action type
|
|
564
|
+
*/
|
|
565
|
+
export function getStepImporter(actionType: string): StepImporter | undefined {
|
|
566
|
+
return PLUGIN_STEP_IMPORTERS[actionType];
|
|
567
|
+
}
|
|
568
|
+
|
|
569
|
+
/**
|
|
570
|
+
* Get the human-readable label for an action type
|
|
571
|
+
*/
|
|
572
|
+
export function getActionLabel(actionType: string): string | undefined {
|
|
573
|
+
return ACTION_LABELS[actionType];
|
|
574
|
+
}
|
|
575
|
+
`;
|
|
576
|
+
writeFileSync(STEP_REGISTRY_FILE, content, "utf-8");
|
|
577
|
+
console.log(`Generated lib/step-registry.ts with ${stepEntries.length} step(s)`);
|
|
578
|
+
}
|
|
579
|
+
async function generateOutputDisplayConfigs() {
|
|
580
|
+
const { getAllIntegrations, computeActionId } = await import("../plugins/registry.js");
|
|
581
|
+
const integrations = getAllIntegrations();
|
|
582
|
+
const outputConfigs = [];
|
|
583
|
+
for (const integration of integrations) {
|
|
584
|
+
for (const action of integration.actions) {
|
|
585
|
+
if (action.outputConfig && action.outputConfig.type !== "component") {
|
|
586
|
+
outputConfigs.push({
|
|
587
|
+
actionId: computeActionId(integration.type, action.slug),
|
|
588
|
+
type: action.outputConfig.type,
|
|
589
|
+
field: action.outputConfig.field,
|
|
590
|
+
});
|
|
591
|
+
}
|
|
592
|
+
}
|
|
593
|
+
}
|
|
594
|
+
const outputConfigEntries = outputConfigs
|
|
595
|
+
.map(({ actionId, type, field }) => ` "${actionId}": { type: "${type}", field: "${field}" },`)
|
|
596
|
+
.join("\n");
|
|
597
|
+
const content = `/**
|
|
598
|
+
* Output Display Configs (Auto-Generated)
|
|
599
|
+
*
|
|
600
|
+
* This file is automatically generated by scripts/discover-plugins.ts
|
|
601
|
+
* DO NOT EDIT MANUALLY - your changes will be overwritten!
|
|
602
|
+
*
|
|
603
|
+
* This file is CLIENT-SAFE and can be imported in client components.
|
|
604
|
+
* It maps action IDs to their output display configuration.
|
|
605
|
+
*
|
|
606
|
+
* Generated configs: ${outputConfigs.length}
|
|
607
|
+
*/
|
|
608
|
+
|
|
609
|
+
import { registerOutputDisplayConfigs } from "next-workflow-builder/plugins";
|
|
610
|
+
|
|
611
|
+
export type OutputDisplayConfig = {
|
|
612
|
+
type: "image" | "video" | "url";
|
|
613
|
+
field: string;
|
|
614
|
+
};
|
|
615
|
+
|
|
616
|
+
/**
|
|
617
|
+
* Output display configs - maps action IDs to their display configuration
|
|
618
|
+
* Used for rendering outputs in the workflow runs panel
|
|
619
|
+
*/
|
|
620
|
+
export const OUTPUT_DISPLAY_CONFIGS: Record<string, OutputDisplayConfig> = {
|
|
621
|
+
${outputConfigEntries}
|
|
622
|
+
};
|
|
623
|
+
|
|
624
|
+
// Register configs into the plugin registry so the package can access them
|
|
625
|
+
registerOutputDisplayConfigs(OUTPUT_DISPLAY_CONFIGS);
|
|
626
|
+
`;
|
|
627
|
+
writeFileSync(OUTPUT_CONFIGS_FILE, content, "utf-8");
|
|
628
|
+
console.log(`Generated lib/output-display-configs.ts with ${outputConfigs.length} config(s)`);
|
|
629
|
+
}
|
|
630
|
+
async function generateRouteRegistry() {
|
|
631
|
+
const { getAllIntegrations } = await import("../plugins/registry.js");
|
|
632
|
+
const integrations = getAllIntegrations();
|
|
633
|
+
const routeEntries = [];
|
|
634
|
+
for (const integration of integrations) {
|
|
635
|
+
if (!integration.routes)
|
|
636
|
+
continue;
|
|
637
|
+
for (const route of integration.routes) {
|
|
638
|
+
routeEntries.push({
|
|
639
|
+
...route,
|
|
640
|
+
pluginType: integration.type,
|
|
641
|
+
});
|
|
642
|
+
}
|
|
643
|
+
}
|
|
644
|
+
if (routeEntries.length === 0) {
|
|
645
|
+
const content = `/**
|
|
646
|
+
* Route Registry (Auto-Generated)
|
|
647
|
+
*
|
|
648
|
+
* This file is automatically generated by scripts/discover-plugins.ts
|
|
649
|
+
* DO NOT EDIT MANUALLY - your changes will be overwritten!
|
|
650
|
+
*
|
|
651
|
+
* No plugin routes found.
|
|
652
|
+
*/
|
|
653
|
+
|
|
654
|
+
import "server-only";
|
|
655
|
+
import type { RouteDefinition } from "next-workflow-builder";
|
|
656
|
+
|
|
657
|
+
const PLUGIN_ROUTES: RouteDefinition[] = [];
|
|
658
|
+
|
|
659
|
+
export default PLUGIN_ROUTES;
|
|
660
|
+
`;
|
|
661
|
+
writeFileSync(ROUTE_REGISTRY_FILE, content, "utf-8");
|
|
662
|
+
console.log("Generated lib/route-registry.ts with 0 route(s)");
|
|
663
|
+
return;
|
|
664
|
+
}
|
|
665
|
+
const importLines = [];
|
|
666
|
+
const routeDefLines = [];
|
|
667
|
+
for (const entry of routeEntries) {
|
|
668
|
+
const npmSpec = npmPluginSpecifiers.get(entry.pluginType);
|
|
669
|
+
const importPath = npmSpec
|
|
670
|
+
? `${npmSpec}/${entry.handlerImportPath}`
|
|
671
|
+
: `@/plugins/${entry.pluginType}/${entry.handlerImportPath}`;
|
|
672
|
+
const methodsStr = entry.methods.map((m) => `"${m}"`).join(", ");
|
|
673
|
+
importLines.push(`import { ${entry.handler} } from "${importPath}";`);
|
|
674
|
+
routeDefLines.push(` { path: "${entry.path}", handler: ${entry.handler}, methods: [${methodsStr}] },`);
|
|
675
|
+
}
|
|
676
|
+
const content = `/**
|
|
677
|
+
* Route Registry (Auto-Generated)
|
|
678
|
+
*
|
|
679
|
+
* This file is automatically generated by scripts/discover-plugins.ts
|
|
680
|
+
* DO NOT EDIT MANUALLY - your changes will be overwritten!
|
|
681
|
+
*
|
|
682
|
+
* This file is SERVER-ONLY. Plugin route handlers are imported statically
|
|
683
|
+
* so the bundler can tree-shake unused code.
|
|
684
|
+
*
|
|
685
|
+
* Generated routes: ${routeEntries.length}
|
|
686
|
+
*/
|
|
687
|
+
|
|
688
|
+
import "server-only";
|
|
689
|
+
import type { RouteDefinition } from "next-workflow-builder";
|
|
690
|
+
${importLines.join("\n")}
|
|
691
|
+
|
|
692
|
+
const PLUGIN_ROUTES: RouteDefinition[] = [
|
|
693
|
+
${routeDefLines.join("\n")}
|
|
694
|
+
];
|
|
695
|
+
|
|
696
|
+
export default PLUGIN_ROUTES;
|
|
697
|
+
`;
|
|
698
|
+
writeFileSync(ROUTE_REGISTRY_FILE, content, "utf-8");
|
|
699
|
+
console.log(`Generated lib/route-registry.ts with ${routeEntries.length} route(s)`);
|
|
700
|
+
}
|
|
701
|
+
async function main() {
|
|
702
|
+
if (!existsSync(PLUGINS_DIR)) {
|
|
703
|
+
mkdirSync(PLUGINS_DIR, { recursive: true });
|
|
704
|
+
}
|
|
705
|
+
console.log("Checking plugins/index.ts...");
|
|
706
|
+
scaffoldIndexFile();
|
|
707
|
+
await importPluginsFromIndex();
|
|
708
|
+
ensureGitignore();
|
|
709
|
+
console.log("Updating README.md...");
|
|
710
|
+
await updateReadme();
|
|
711
|
+
console.log("Generating lib/types/integration.ts...");
|
|
712
|
+
await generateTypesFile();
|
|
713
|
+
console.log("Generating lib/step-registry.ts...");
|
|
714
|
+
await generateStepRegistry();
|
|
715
|
+
console.log("Generating lib/output-display-configs.ts...");
|
|
716
|
+
await generateOutputDisplayConfigs();
|
|
717
|
+
console.log("\nProcessing step files for codegen templates...");
|
|
718
|
+
await processStepFilesForCodegen();
|
|
719
|
+
console.log("Generating lib/codegen-registry.ts...");
|
|
720
|
+
generateCodegenRegistry();
|
|
721
|
+
console.log("Generating lib/route-registry.ts...");
|
|
722
|
+
await generateRouteRegistry();
|
|
723
|
+
console.log("Done! Plugin registry updated.\n");
|
|
724
|
+
}
|
|
725
|
+
main().catch((error) => {
|
|
726
|
+
console.error("Error:", error);
|
|
727
|
+
process.exit(1);
|
|
728
|
+
});
|
|
729
|
+
//# sourceMappingURL=discover-plugins.js.map
|