@synergenius/flow-weaver 0.2.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/LICENSE +122 -0
- package/README.md +315 -0
- package/dist/annotation-generator.d.ts +45 -0
- package/dist/annotation-generator.js +557 -0
- package/dist/api/builder.d.ts +223 -0
- package/dist/api/builder.js +345 -0
- package/dist/api/compile.d.ts +92 -0
- package/dist/api/compile.js +149 -0
- package/dist/api/extract-types.d.ts +29 -0
- package/dist/api/extract-types.js +57 -0
- package/dist/api/generate-in-place.d.ts +73 -0
- package/dist/api/generate-in-place.js +1353 -0
- package/dist/api/generate.d.ts +83 -0
- package/dist/api/generate.js +510 -0
- package/dist/api/helpers.d.ts +248 -0
- package/dist/api/helpers.js +285 -0
- package/dist/api/index.d.ts +46 -0
- package/dist/api/index.js +45 -0
- package/dist/api/inline-runtime.d.ts +27 -0
- package/dist/api/inline-runtime.js +551 -0
- package/dist/api/manipulation/connections.d.ts +79 -0
- package/dist/api/manipulation/connections.js +151 -0
- package/dist/api/manipulation/index.d.ts +34 -0
- package/dist/api/manipulation/index.js +41 -0
- package/dist/api/manipulation/node-types.d.ts +123 -0
- package/dist/api/manipulation/node-types.js +200 -0
- package/dist/api/manipulation/nodes.d.ts +144 -0
- package/dist/api/manipulation/nodes.js +333 -0
- package/dist/api/manipulation/ports.d.ts +59 -0
- package/dist/api/manipulation/ports.js +228 -0
- package/dist/api/manipulation/scopes.d.ts +52 -0
- package/dist/api/manipulation/scopes.js +156 -0
- package/dist/api/manipulation/validation.d.ts +6 -0
- package/dist/api/manipulation/validation.js +6 -0
- package/dist/api/manipulation/workflow.d.ts +81 -0
- package/dist/api/manipulation/workflow.js +116 -0
- package/dist/api/manipulation.d.ts +8 -0
- package/dist/api/manipulation.js +8 -0
- package/dist/api/parse.d.ts +48 -0
- package/dist/api/parse.js +110 -0
- package/dist/api/patterns.d.ts +112 -0
- package/dist/api/patterns.js +306 -0
- package/dist/api/query.d.ts +429 -0
- package/dist/api/query.js +816 -0
- package/dist/api/templates.d.ts +98 -0
- package/dist/api/templates.js +117 -0
- package/dist/api/transform.d.ts +31 -0
- package/dist/api/transform.js +40 -0
- package/dist/api/validate.d.ts +25 -0
- package/dist/api/validate.js +39 -0
- package/dist/api/workflow-file-operations.d.ts +29 -0
- package/dist/api/workflow-file-operations.js +180 -0
- package/dist/ast/builder.d.ts +210 -0
- package/dist/ast/builder.js +395 -0
- package/dist/ast/index.d.ts +5 -0
- package/dist/ast/index.js +5 -0
- package/dist/ast/serialization-node.d.ts +6 -0
- package/dist/ast/serialization-node.js +30 -0
- package/dist/ast/serialization.d.ts +43 -0
- package/dist/ast/serialization.js +134 -0
- package/dist/ast/types.d.ts +852 -0
- package/dist/ast/types.js +2 -0
- package/dist/ast/workflow-utils.d.ts +54 -0
- package/dist/ast/workflow-utils.js +114 -0
- package/dist/body-generator.d.ts +31 -0
- package/dist/body-generator.js +35 -0
- package/dist/built-in-nodes/delay.d.ts +11 -0
- package/dist/built-in-nodes/delay.js +29 -0
- package/dist/built-in-nodes/index.d.ts +5 -0
- package/dist/built-in-nodes/index.js +4 -0
- package/dist/built-in-nodes/invoke-workflow.d.ts +13 -0
- package/dist/built-in-nodes/invoke-workflow.js +25 -0
- package/dist/built-in-nodes/mock-types.d.ts +18 -0
- package/dist/built-in-nodes/mock-types.js +12 -0
- package/dist/built-in-nodes/wait-for-event.d.ts +13 -0
- package/dist/built-in-nodes/wait-for-event.js +25 -0
- package/dist/chevrotain-parser/connect-parser.d.ts +24 -0
- package/dist/chevrotain-parser/connect-parser.js +98 -0
- package/dist/chevrotain-parser/grammar-diagrams.d.ts +29 -0
- package/dist/chevrotain-parser/grammar-diagrams.js +264 -0
- package/dist/chevrotain-parser/index.d.ts +25 -0
- package/dist/chevrotain-parser/index.js +27 -0
- package/dist/chevrotain-parser/map-parser.d.ts +33 -0
- package/dist/chevrotain-parser/map-parser.js +130 -0
- package/dist/chevrotain-parser/node-parser.d.ts +36 -0
- package/dist/chevrotain-parser/node-parser.js +466 -0
- package/dist/chevrotain-parser/path-parser.d.ts +28 -0
- package/dist/chevrotain-parser/path-parser.js +118 -0
- package/dist/chevrotain-parser/port-parser.d.ts +36 -0
- package/dist/chevrotain-parser/port-parser.js +442 -0
- package/dist/chevrotain-parser/position-parser.d.ts +20 -0
- package/dist/chevrotain-parser/position-parser.js +83 -0
- package/dist/chevrotain-parser/scope-parser.d.ts +19 -0
- package/dist/chevrotain-parser/scope-parser.js +104 -0
- package/dist/chevrotain-parser/tokens.d.ts +78 -0
- package/dist/chevrotain-parser/tokens.js +384 -0
- package/dist/chevrotain-parser/trigger-cancel-parser.d.ts +50 -0
- package/dist/chevrotain-parser/trigger-cancel-parser.js +282 -0
- package/dist/cli/commands/changelog.d.ts +13 -0
- package/dist/cli/commands/changelog.js +135 -0
- package/dist/cli/commands/compile.d.ts +64 -0
- package/dist/cli/commands/compile.js +278 -0
- package/dist/cli/commands/create.d.ts +33 -0
- package/dist/cli/commands/create.js +147 -0
- package/dist/cli/commands/describe.d.ts +68 -0
- package/dist/cli/commands/describe.js +377 -0
- package/dist/cli/commands/dev.d.ts +32 -0
- package/dist/cli/commands/dev.js +384 -0
- package/dist/cli/commands/diagram.d.ts +13 -0
- package/dist/cli/commands/diagram.js +33 -0
- package/dist/cli/commands/diff.d.ts +11 -0
- package/dist/cli/commands/diff.js +59 -0
- package/dist/cli/commands/doctor.d.ts +57 -0
- package/dist/cli/commands/doctor.js +719 -0
- package/dist/cli/commands/export.d.ts +57 -0
- package/dist/cli/commands/export.js +163 -0
- package/dist/cli/commands/grammar.d.ts +9 -0
- package/dist/cli/commands/grammar.js +39 -0
- package/dist/cli/commands/init.d.ts +59 -0
- package/dist/cli/commands/init.js +435 -0
- package/dist/cli/commands/listen.d.ts +16 -0
- package/dist/cli/commands/listen.js +39 -0
- package/dist/cli/commands/market.d.ts +52 -0
- package/dist/cli/commands/market.js +436 -0
- package/dist/cli/commands/migrate.d.ts +13 -0
- package/dist/cli/commands/migrate.js +89 -0
- package/dist/cli/commands/openapi.d.ts +37 -0
- package/dist/cli/commands/openapi.js +67 -0
- package/dist/cli/commands/pattern.d.ts +34 -0
- package/dist/cli/commands/pattern.js +185 -0
- package/dist/cli/commands/plugin.d.ts +16 -0
- package/dist/cli/commands/plugin.js +176 -0
- package/dist/cli/commands/run.d.ts +49 -0
- package/dist/cli/commands/run.js +191 -0
- package/dist/cli/commands/serve.d.ts +45 -0
- package/dist/cli/commands/serve.js +81 -0
- package/dist/cli/commands/templates.d.ts +8 -0
- package/dist/cli/commands/templates.js +54 -0
- package/dist/cli/commands/ui.d.ts +16 -0
- package/dist/cli/commands/ui.js +130 -0
- package/dist/cli/commands/validate.d.ts +12 -0
- package/dist/cli/commands/validate.js +247 -0
- package/dist/cli/commands/watch.d.ts +9 -0
- package/dist/cli/commands/watch.js +70 -0
- package/dist/cli/flow-weaver.mjs +92924 -0
- package/dist/cli/index.d.ts +9 -0
- package/dist/cli/index.js +742 -0
- package/dist/cli/templates/ai/mock-provider.d.ts +7 -0
- package/dist/cli/templates/ai/mock-provider.js +64 -0
- package/dist/cli/templates/ai/types.d.ts +47 -0
- package/dist/cli/templates/ai/types.js +5 -0
- package/dist/cli/templates/approvals/index.d.ts +15 -0
- package/dist/cli/templates/approvals/index.js +241 -0
- package/dist/cli/templates/index.d.ts +102 -0
- package/dist/cli/templates/index.js +101 -0
- package/dist/cli/templates/nodes/agent-router.d.ts +3 -0
- package/dist/cli/templates/nodes/agent-router.js +114 -0
- package/dist/cli/templates/nodes/aggregator.d.ts +7 -0
- package/dist/cli/templates/nodes/aggregator.js +63 -0
- package/dist/cli/templates/nodes/conversation-memory.d.ts +3 -0
- package/dist/cli/templates/nodes/conversation-memory.js +85 -0
- package/dist/cli/templates/nodes/http.d.ts +7 -0
- package/dist/cli/templates/nodes/http.js +80 -0
- package/dist/cli/templates/nodes/human-approval.d.ts +3 -0
- package/dist/cli/templates/nodes/human-approval.js +110 -0
- package/dist/cli/templates/nodes/json-extractor.d.ts +3 -0
- package/dist/cli/templates/nodes/json-extractor.js +119 -0
- package/dist/cli/templates/nodes/llm-call.d.ts +3 -0
- package/dist/cli/templates/nodes/llm-call.js +106 -0
- package/dist/cli/templates/nodes/prompt-template.d.ts +3 -0
- package/dist/cli/templates/nodes/prompt-template.js +52 -0
- package/dist/cli/templates/nodes/rag-retriever.d.ts +3 -0
- package/dist/cli/templates/nodes/rag-retriever.js +128 -0
- package/dist/cli/templates/nodes/tool-executor.d.ts +3 -0
- package/dist/cli/templates/nodes/tool-executor.js +108 -0
- package/dist/cli/templates/nodes/transformer.d.ts +7 -0
- package/dist/cli/templates/nodes/transformer.js +68 -0
- package/dist/cli/templates/nodes/validator.d.ts +7 -0
- package/dist/cli/templates/nodes/validator.js +62 -0
- package/dist/cli/templates/providers/index.d.ts +14 -0
- package/dist/cli/templates/providers/index.js +239 -0
- package/dist/cli/templates/shared/approval-types.d.ts +9 -0
- package/dist/cli/templates/shared/approval-types.js +31 -0
- package/dist/cli/templates/shared/llm-types.d.ts +15 -0
- package/dist/cli/templates/shared/llm-types.js +104 -0
- package/dist/cli/templates/workflows/aggregator.d.ts +7 -0
- package/dist/cli/templates/workflows/aggregator.js +104 -0
- package/dist/cli/templates/workflows/ai-agent-durable.d.ts +8 -0
- package/dist/cli/templates/workflows/ai-agent-durable.js +338 -0
- package/dist/cli/templates/workflows/ai-agent.d.ts +31 -0
- package/dist/cli/templates/workflows/ai-agent.js +326 -0
- package/dist/cli/templates/workflows/ai-chat.d.ts +7 -0
- package/dist/cli/templates/workflows/ai-chat.js +169 -0
- package/dist/cli/templates/workflows/ai-pipeline-durable.d.ts +8 -0
- package/dist/cli/templates/workflows/ai-pipeline-durable.js +330 -0
- package/dist/cli/templates/workflows/ai-rag.d.ts +7 -0
- package/dist/cli/templates/workflows/ai-rag.js +186 -0
- package/dist/cli/templates/workflows/ai-react.d.ts +7 -0
- package/dist/cli/templates/workflows/ai-react.js +294 -0
- package/dist/cli/templates/workflows/conditional.d.ts +12 -0
- package/dist/cli/templates/workflows/conditional.js +142 -0
- package/dist/cli/templates/workflows/error-handler.d.ts +7 -0
- package/dist/cli/templates/workflows/error-handler.js +147 -0
- package/dist/cli/templates/workflows/foreach.d.ts +7 -0
- package/dist/cli/templates/workflows/foreach.js +143 -0
- package/dist/cli/templates/workflows/sequential.d.ts +7 -0
- package/dist/cli/templates/workflows/sequential.js +198 -0
- package/dist/cli/templates/workflows/webhook.d.ts +7 -0
- package/dist/cli/templates/workflows/webhook.js +161 -0
- package/dist/cli/utils/logger.d.ts +15 -0
- package/dist/cli/utils/logger.js +46 -0
- package/dist/constants.d.ts +100 -0
- package/dist/constants.js +125 -0
- package/dist/defaults.d.ts +3 -0
- package/dist/defaults.js +3 -0
- package/dist/deployment/config/defaults.d.ts +29 -0
- package/dist/deployment/config/defaults.js +98 -0
- package/dist/deployment/config/loader.d.ts +24 -0
- package/dist/deployment/config/loader.js +236 -0
- package/dist/deployment/config/types.d.ts +117 -0
- package/dist/deployment/config/types.js +5 -0
- package/dist/deployment/core/adapters.d.ts +90 -0
- package/dist/deployment/core/adapters.js +251 -0
- package/dist/deployment/core/executor.d.ts +62 -0
- package/dist/deployment/core/executor.js +197 -0
- package/dist/deployment/core/formatters.d.ts +57 -0
- package/dist/deployment/core/formatters.js +170 -0
- package/dist/deployment/index.d.ts +31 -0
- package/dist/deployment/index.js +48 -0
- package/dist/deployment/openapi/generator.d.ts +146 -0
- package/dist/deployment/openapi/generator.js +347 -0
- package/dist/deployment/openapi/schema-converter.d.ts +49 -0
- package/dist/deployment/openapi/schema-converter.js +192 -0
- package/dist/deployment/targets/base.d.ts +316 -0
- package/dist/deployment/targets/base.js +823 -0
- package/dist/deployment/targets/cloudflare.d.ts +23 -0
- package/dist/deployment/targets/cloudflare.js +1125 -0
- package/dist/deployment/targets/inngest.d.ts +38 -0
- package/dist/deployment/targets/inngest.js +926 -0
- package/dist/deployment/targets/lambda.d.ts +23 -0
- package/dist/deployment/targets/lambda.js +1289 -0
- package/dist/deployment/targets/vercel.d.ts +23 -0
- package/dist/deployment/targets/vercel.js +886 -0
- package/dist/deployment/types.d.ts +183 -0
- package/dist/deployment/types.js +8 -0
- package/dist/diagram/geometry.d.ts +26 -0
- package/dist/diagram/geometry.js +850 -0
- package/dist/diagram/index.d.ts +16 -0
- package/dist/diagram/index.js +42 -0
- package/dist/diagram/layout.d.ts +11 -0
- package/dist/diagram/layout.js +143 -0
- package/dist/diagram/orthogonal-router.d.ts +79 -0
- package/dist/diagram/orthogonal-router.js +568 -0
- package/dist/diagram/renderer.d.ts +3 -0
- package/dist/diagram/renderer.js +207 -0
- package/dist/diagram/theme.d.ts +20 -0
- package/dist/diagram/theme.js +189 -0
- package/dist/diagram/types.d.ts +70 -0
- package/dist/diagram/types.js +2 -0
- package/dist/diff/WorkflowDiffer.d.ts +13 -0
- package/dist/diff/WorkflowDiffer.js +429 -0
- package/dist/diff/formatDiff.d.ts +10 -0
- package/dist/diff/formatDiff.js +220 -0
- package/dist/diff/impact.d.ts +29 -0
- package/dist/diff/impact.js +119 -0
- package/dist/diff/index.d.ts +10 -0
- package/dist/diff/index.js +9 -0
- package/dist/diff/types.d.ts +138 -0
- package/dist/diff/types.js +35 -0
- package/dist/doc-metadata/extractors/annotations.d.ts +56 -0
- package/dist/doc-metadata/extractors/annotations.js +337 -0
- package/dist/doc-metadata/extractors/cli-commands.d.ts +17 -0
- package/dist/doc-metadata/extractors/cli-commands.js +355 -0
- package/dist/doc-metadata/extractors/mcp-tools.d.ts +16 -0
- package/dist/doc-metadata/extractors/mcp-tools.js +689 -0
- package/dist/doc-metadata/extractors/plugin-api.d.ts +19 -0
- package/dist/doc-metadata/extractors/plugin-api.js +279 -0
- package/dist/doc-metadata/index.d.ts +5 -0
- package/dist/doc-metadata/index.js +4 -0
- package/dist/doc-metadata/types.d.ts +120 -0
- package/dist/doc-metadata/types.js +5 -0
- package/dist/editor-completions/annotationValues.d.ts +12 -0
- package/dist/editor-completions/annotationValues.js +138 -0
- package/dist/editor-completions/contextParser.d.ts +40 -0
- package/dist/editor-completions/contextParser.js +410 -0
- package/dist/editor-completions/dataTypes.d.ts +16 -0
- package/dist/editor-completions/dataTypes.js +95 -0
- package/dist/editor-completions/goToDefinition.d.ts +27 -0
- package/dist/editor-completions/goToDefinition.js +112 -0
- package/dist/editor-completions/index.d.ts +39 -0
- package/dist/editor-completions/index.js +181 -0
- package/dist/editor-completions/jsDocAnnotations.d.ts +29 -0
- package/dist/editor-completions/jsDocAnnotations.js +357 -0
- package/dist/editor-completions/modifierCompletions.d.ts +17 -0
- package/dist/editor-completions/modifierCompletions.js +197 -0
- package/dist/editor-completions/types.d.ts +119 -0
- package/dist/editor-completions/types.js +8 -0
- package/dist/export/index.d.ts +68 -0
- package/dist/export/index.js +1074 -0
- package/dist/export/templates.d.ts +24 -0
- package/dist/export/templates.js +186 -0
- package/dist/friendly-errors.d.ts +35 -0
- package/dist/friendly-errors.js +375 -0
- package/dist/function-like.d.ts +38 -0
- package/dist/function-like.js +83 -0
- package/dist/generated-branding.d.ts +16 -0
- package/dist/generated-branding.js +22 -0
- package/dist/generator/async-detection.d.ts +27 -0
- package/dist/generator/async-detection.js +56 -0
- package/dist/generator/code-utils.d.ts +76 -0
- package/dist/generator/code-utils.js +410 -0
- package/dist/generator/control-flow.d.ts +54 -0
- package/dist/generator/control-flow.js +284 -0
- package/dist/generator/inngest.d.ts +53 -0
- package/dist/generator/inngest.js +1126 -0
- package/dist/generator/scope-function-generator.d.ts +78 -0
- package/dist/generator/scope-function-generator.js +360 -0
- package/dist/generator/unified.d.ts +42 -0
- package/dist/generator/unified.js +1504 -0
- package/dist/generator.d.ts +54 -0
- package/dist/generator.js +100 -0
- package/dist/index.d.ts +85 -0
- package/dist/index.js +89 -0
- package/dist/jsdoc-parser.d.ts +308 -0
- package/dist/jsdoc-parser.js +923 -0
- package/dist/jsdoc-port-sync/constants.d.ts +41 -0
- package/dist/jsdoc-port-sync/constants.js +103 -0
- package/dist/jsdoc-port-sync/diff.d.ts +76 -0
- package/dist/jsdoc-port-sync/diff.js +319 -0
- package/dist/jsdoc-port-sync/index.d.ts +42 -0
- package/dist/jsdoc-port-sync/index.js +45 -0
- package/dist/jsdoc-port-sync/port-parser.d.ts +68 -0
- package/dist/jsdoc-port-sync/port-parser.js +579 -0
- package/dist/jsdoc-port-sync/rename.d.ts +21 -0
- package/dist/jsdoc-port-sync/rename.js +256 -0
- package/dist/jsdoc-port-sync/signature-parser.d.ts +104 -0
- package/dist/jsdoc-port-sync/signature-parser.js +559 -0
- package/dist/jsdoc-port-sync/sync.d.ts +36 -0
- package/dist/jsdoc-port-sync/sync.js +644 -0
- package/dist/jsdoc-port-sync.d.ts +10 -0
- package/dist/jsdoc-port-sync.js +10 -0
- package/dist/marketplace/index.d.ts +11 -0
- package/dist/marketplace/index.js +10 -0
- package/dist/marketplace/manifest.d.ts +32 -0
- package/dist/marketplace/manifest.js +176 -0
- package/dist/marketplace/registry.d.ts +30 -0
- package/dist/marketplace/registry.js +100 -0
- package/dist/marketplace/types.d.ts +154 -0
- package/dist/marketplace/types.js +9 -0
- package/dist/marketplace/validator.d.ts +13 -0
- package/dist/marketplace/validator.js +131 -0
- package/dist/mcp/auto-registration.d.ts +3 -0
- package/dist/mcp/auto-registration.js +62 -0
- package/dist/mcp/editor-connection.d.ts +50 -0
- package/dist/mcp/editor-connection.js +125 -0
- package/dist/mcp/event-buffer.d.ts +62 -0
- package/dist/mcp/event-buffer.js +150 -0
- package/dist/mcp/index.d.ts +12 -0
- package/dist/mcp/index.js +11 -0
- package/dist/mcp/resources.d.ts +14 -0
- package/dist/mcp/resources.js +55 -0
- package/dist/mcp/response-utils.d.ts +63 -0
- package/dist/mcp/response-utils.js +89 -0
- package/dist/mcp/server.d.ts +4 -0
- package/dist/mcp/server.js +99 -0
- package/dist/mcp/tools-diagram.d.ts +8 -0
- package/dist/mcp/tools-diagram.js +53 -0
- package/dist/mcp/tools-editor.d.ts +5 -0
- package/dist/mcp/tools-editor.js +190 -0
- package/dist/mcp/tools-export.d.ts +9 -0
- package/dist/mcp/tools-export.js +180 -0
- package/dist/mcp/tools-marketplace.d.ts +9 -0
- package/dist/mcp/tools-marketplace.js +132 -0
- package/dist/mcp/tools-pattern.d.ts +3 -0
- package/dist/mcp/tools-pattern.js +783 -0
- package/dist/mcp/tools-query.d.ts +3 -0
- package/dist/mcp/tools-query.js +364 -0
- package/dist/mcp/tools-template.d.ts +10 -0
- package/dist/mcp/tools-template.js +119 -0
- package/dist/mcp/types.d.ts +70 -0
- package/dist/mcp/types.js +8 -0
- package/dist/mcp/workflow-executor.d.ts +47 -0
- package/dist/mcp/workflow-executor.js +133 -0
- package/dist/migration/registry.d.ts +30 -0
- package/dist/migration/registry.js +29 -0
- package/dist/node-types-generator.d.ts +49 -0
- package/dist/node-types-generator.js +139 -0
- package/dist/npm-packages.d.ts +56 -0
- package/dist/npm-packages.js +255 -0
- package/dist/parser.d.ts +204 -0
- package/dist/parser.js +2100 -0
- package/dist/plugin/PluginPanel.d.ts +12 -0
- package/dist/plugin/PluginPanel.js +5 -0
- package/dist/plugin/index.d.ts +13 -0
- package/dist/plugin/index.js +14 -0
- package/dist/plugin/types.d.ts +75 -0
- package/dist/plugin/types.js +8 -0
- package/dist/resolve-package-types.d.ts +17 -0
- package/dist/resolve-package-types.js +123 -0
- package/dist/runtime/CancellationError.d.ts +11 -0
- package/dist/runtime/CancellationError.js +20 -0
- package/dist/runtime/ExecutionContext.d.ts +146 -0
- package/dist/runtime/ExecutionContext.js +235 -0
- package/dist/runtime/builtin-functions.d.ts +8 -0
- package/dist/runtime/builtin-functions.js +549 -0
- package/dist/runtime/events.d.ts +50 -0
- package/dist/runtime/events.js +2 -0
- package/dist/runtime/function-registry.d.ts +59 -0
- package/dist/runtime/function-registry.js +66 -0
- package/dist/runtime/index.d.ts +7 -0
- package/dist/runtime/index.js +7 -0
- package/dist/runtime/parameter-resolver.d.ts +62 -0
- package/dist/runtime/parameter-resolver.js +113 -0
- package/dist/server/index.d.ts +7 -0
- package/dist/server/index.js +6 -0
- package/dist/server/types.d.ts +93 -0
- package/dist/server/types.js +5 -0
- package/dist/server/webhook-server.d.ts +50 -0
- package/dist/server/webhook-server.js +269 -0
- package/dist/server/workflow-registry.d.ts +61 -0
- package/dist/server/workflow-registry.js +202 -0
- package/dist/shared-project.d.ts +9 -0
- package/dist/shared-project.js +28 -0
- package/dist/sugar-optimizer.d.ts +40 -0
- package/dist/sugar-optimizer.js +387 -0
- package/dist/testing/assertions.d.ts +51 -0
- package/dist/testing/assertions.js +127 -0
- package/dist/testing/index.d.ts +30 -0
- package/dist/testing/index.js +24 -0
- package/dist/testing/mock-approval.d.ts +81 -0
- package/dist/testing/mock-approval.js +98 -0
- package/dist/testing/mock-llm.d.ts +124 -0
- package/dist/testing/mock-llm.js +119 -0
- package/dist/testing/recorder.d.ts +72 -0
- package/dist/testing/recorder.js +70 -0
- package/dist/testing/replayer.d.ts +56 -0
- package/dist/testing/replayer.js +143 -0
- package/dist/testing/token-tracker.d.ts +71 -0
- package/dist/testing/token-tracker.js +94 -0
- package/dist/type-checker.d.ts +42 -0
- package/dist/type-checker.js +190 -0
- package/dist/type-mappings.d.ts +29 -0
- package/dist/type-mappings.js +125 -0
- package/dist/types/branded-ports.d.ts +151 -0
- package/dist/types/branded-ports.js +121 -0
- package/dist/types/index.d.ts +5 -0
- package/dist/types/index.js +5 -0
- package/dist/types.d.ts +139 -0
- package/dist/types.js +15 -0
- package/dist/utils/error-utils.d.ts +15 -0
- package/dist/utils/error-utils.js +27 -0
- package/dist/utils/lru-cache.d.ts +15 -0
- package/dist/utils/lru-cache.js +40 -0
- package/dist/utils/port-ordering.d.ts +26 -0
- package/dist/utils/port-ordering.js +88 -0
- package/dist/utils/port-tag-utils.d.ts +23 -0
- package/dist/utils/port-tag-utils.js +41 -0
- package/dist/utils/string-distance.d.ts +14 -0
- package/dist/utils/string-distance.js +56 -0
- package/dist/validation/agent-detection.d.ts +33 -0
- package/dist/validation/agent-detection.js +115 -0
- package/dist/validation/agent-rules.d.ts +48 -0
- package/dist/validation/agent-rules.js +262 -0
- package/dist/validator.d.ts +92 -0
- package/dist/validator.js +970 -0
- package/package.json +109 -0
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import * as fs from 'node:fs/promises';
|
|
2
|
+
import { createRequire } from 'node:module';
|
|
3
|
+
import * as path from 'node:path';
|
|
4
|
+
const require = createRequire(import.meta.url);
|
|
5
|
+
const { version: COMPILER_VERSION } = require('../../package.json');
|
|
6
|
+
import { generateCode } from './generate.js';
|
|
7
|
+
import { generateInPlace } from './generate-in-place.js';
|
|
8
|
+
import { parseWorkflow } from './parse.js';
|
|
9
|
+
/**
|
|
10
|
+
* Compile a workflow file from TypeScript annotations to executable code.
|
|
11
|
+
*
|
|
12
|
+
* By default, compiles in-place (updates the source file with generated code).
|
|
13
|
+
* Set inPlace=false to generate to a separate file.
|
|
14
|
+
*
|
|
15
|
+
* @param filePath - Path to the workflow file
|
|
16
|
+
* @param options - Compilation options
|
|
17
|
+
* @returns CompileResult with code, AST, and metadata
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* // Compile in-place (default)
|
|
22
|
+
* const result = await compileWorkflow('./workflow.ts');
|
|
23
|
+
*
|
|
24
|
+
* // Generate to separate file for production
|
|
25
|
+
* const result = await compileWorkflow('./workflow.ts', {
|
|
26
|
+
* inPlace: false,
|
|
27
|
+
* outputFile: './dist/workflow.ts',
|
|
28
|
+
* generate: { production: true }
|
|
29
|
+
* });
|
|
30
|
+
* ```
|
|
31
|
+
*
|
|
32
|
+
* @throws {Error} If parsing fails or workflow contains errors
|
|
33
|
+
*/
|
|
34
|
+
export async function compileWorkflow(filePath, options = {}) {
|
|
35
|
+
const startTime = Date.now();
|
|
36
|
+
const { inPlace = true } = options;
|
|
37
|
+
const parseResult = await parseWorkflow(filePath, options.parse);
|
|
38
|
+
if (parseResult.errors.length > 0) {
|
|
39
|
+
throw new Error(`Parse errors:\n${parseResult.errors.join('\n')}`);
|
|
40
|
+
}
|
|
41
|
+
// Validate before generating
|
|
42
|
+
const { validateWorkflow } = await import('./validate.js');
|
|
43
|
+
const validationResult = validateWorkflow(parseResult.ast);
|
|
44
|
+
if (validationResult.errors.length > 0) {
|
|
45
|
+
const errorMessages = validationResult.errors.map((e) => typeof e === 'string' ? e : e.message);
|
|
46
|
+
throw new Error(`Validation errors:\n${errorMessages.join('\n')}`);
|
|
47
|
+
}
|
|
48
|
+
let code;
|
|
49
|
+
let outputFile;
|
|
50
|
+
if (inPlace) {
|
|
51
|
+
// In-place compilation: update source file
|
|
52
|
+
const sourceCode = await fs.readFile(filePath, 'utf-8');
|
|
53
|
+
const result = generateInPlace(sourceCode, parseResult.ast, {
|
|
54
|
+
...options.generate,
|
|
55
|
+
allWorkflows: parseResult.allWorkflows,
|
|
56
|
+
sourceFile: options.generate?.sourceFile || path.resolve(filePath),
|
|
57
|
+
});
|
|
58
|
+
code = result.code;
|
|
59
|
+
outputFile = filePath;
|
|
60
|
+
if (options.write !== false) {
|
|
61
|
+
await fs.writeFile(filePath, code, 'utf-8');
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
// Separate file compilation
|
|
66
|
+
code = generateCode(parseResult.ast, options.generate);
|
|
67
|
+
outputFile = options.outputFile || getDefaultOutputFile(filePath);
|
|
68
|
+
if (options.write !== false) {
|
|
69
|
+
await fs.writeFile(outputFile, code, 'utf-8');
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
if (options.saveAST) {
|
|
73
|
+
const { saveASTAlongside } = await import('../ast/serialization-node.js');
|
|
74
|
+
await saveASTAlongside(parseResult.ast);
|
|
75
|
+
}
|
|
76
|
+
const result = {
|
|
77
|
+
code,
|
|
78
|
+
ast: parseResult.ast,
|
|
79
|
+
analysis: {
|
|
80
|
+
controlFlowGraph: { nodes: [], edges: [], inDegree: {}, outDegree: {} },
|
|
81
|
+
executionOrder: [],
|
|
82
|
+
branchingNodes: [],
|
|
83
|
+
branchRegions: [],
|
|
84
|
+
mergeNodes: [],
|
|
85
|
+
errors: [],
|
|
86
|
+
warnings: [],
|
|
87
|
+
unusedNodes: [],
|
|
88
|
+
inlineCandidates: [],
|
|
89
|
+
},
|
|
90
|
+
metadata: {
|
|
91
|
+
sourceFile: filePath,
|
|
92
|
+
outputFile,
|
|
93
|
+
compiledAt: new Date().toISOString(),
|
|
94
|
+
compilerVersion: COMPILER_VERSION,
|
|
95
|
+
generationTime: Date.now() - startTime,
|
|
96
|
+
},
|
|
97
|
+
};
|
|
98
|
+
return result;
|
|
99
|
+
}
|
|
100
|
+
function getDefaultOutputFile(sourceFile) {
|
|
101
|
+
const dir = path.dirname(sourceFile);
|
|
102
|
+
// Remove .ts extension to get basename
|
|
103
|
+
const basename = path.basename(sourceFile, '.ts');
|
|
104
|
+
return path.join(dir, `${basename}.generated.ts`);
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Compile multiple workflow files in parallel
|
|
108
|
+
*
|
|
109
|
+
* @param filePaths - Array of workflow file paths to compile
|
|
110
|
+
* @param options - Compilation options applied to all files
|
|
111
|
+
* @returns Array of CompileResults for each file
|
|
112
|
+
*
|
|
113
|
+
* @example
|
|
114
|
+
* ```typescript
|
|
115
|
+
* const results = await compileWorkflows([
|
|
116
|
+
* './workflow-1.ts',
|
|
117
|
+
* './workflow-2.ts'
|
|
118
|
+
* ]);
|
|
119
|
+
* ```
|
|
120
|
+
*/
|
|
121
|
+
export async function compileWorkflows(filePaths, options = {}) {
|
|
122
|
+
return Promise.all(filePaths.map((filePath) => compileWorkflow(filePath, options)));
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Compile all workflow files matching a glob pattern
|
|
126
|
+
*
|
|
127
|
+
* Uses the glob library to find matching files and compiles them in parallel.
|
|
128
|
+
*
|
|
129
|
+
* @param pattern - Glob pattern (e.g., "src/**\/*.ts")
|
|
130
|
+
* @param options - Compilation options applied to all files
|
|
131
|
+
* @returns Array of CompileResults for each matched file
|
|
132
|
+
*
|
|
133
|
+
* @example
|
|
134
|
+
* ```typescript
|
|
135
|
+
* // Compile all workflow files in src directory
|
|
136
|
+
* const results = await compilePattern('src/**\/*.ts');
|
|
137
|
+
*
|
|
138
|
+
* // Compile with custom options
|
|
139
|
+
* const results = await compilePattern('workflows/**\/*.ts', {
|
|
140
|
+
* generate: { production: true }
|
|
141
|
+
* });
|
|
142
|
+
* ```
|
|
143
|
+
*/
|
|
144
|
+
export async function compilePattern(pattern, options = {}) {
|
|
145
|
+
const glob = await import('glob');
|
|
146
|
+
const files = await glob.glob(pattern);
|
|
147
|
+
return compileWorkflows(files, options);
|
|
148
|
+
}
|
|
149
|
+
//# sourceMappingURL=compile.js.map
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type Declaration Extraction
|
|
3
|
+
*
|
|
4
|
+
* Extracts interface and type alias declarations from TypeScript source code.
|
|
5
|
+
* Used by generateCode to preserve type definitions in generated output.
|
|
6
|
+
*/
|
|
7
|
+
export interface ExtractedTypes {
|
|
8
|
+
/** Interface declarations (e.g., "interface Foo { ... }") */
|
|
9
|
+
interfaces: string[];
|
|
10
|
+
/** Type alias declarations (e.g., "type Bar = ...") */
|
|
11
|
+
typeAliases: string[];
|
|
12
|
+
/** Combined declarations in source order */
|
|
13
|
+
all: string[];
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Extract interface and type alias declarations from TypeScript source code.
|
|
17
|
+
*
|
|
18
|
+
* @param sourceCode - The TypeScript source code
|
|
19
|
+
* @returns Object containing extracted type declarations
|
|
20
|
+
*/
|
|
21
|
+
export declare function extractTypeDeclarations(sourceCode: string): ExtractedTypes;
|
|
22
|
+
/**
|
|
23
|
+
* Extract type declarations from a source file path.
|
|
24
|
+
*
|
|
25
|
+
* @param filePath - Path to the TypeScript source file
|
|
26
|
+
* @returns Object containing extracted type declarations, or empty if file can't be read
|
|
27
|
+
*/
|
|
28
|
+
export declare function extractTypeDeclarationsFromFile(filePath: string): ExtractedTypes;
|
|
29
|
+
//# sourceMappingURL=extract-types.d.ts.map
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type Declaration Extraction
|
|
3
|
+
*
|
|
4
|
+
* Extracts interface and type alias declarations from TypeScript source code.
|
|
5
|
+
* Used by generateCode to preserve type definitions in generated output.
|
|
6
|
+
*/
|
|
7
|
+
import * as ts from "typescript";
|
|
8
|
+
import * as fs from "fs";
|
|
9
|
+
/**
|
|
10
|
+
* Extract interface and type alias declarations from TypeScript source code.
|
|
11
|
+
*
|
|
12
|
+
* @param sourceCode - The TypeScript source code
|
|
13
|
+
* @returns Object containing extracted type declarations
|
|
14
|
+
*/
|
|
15
|
+
export function extractTypeDeclarations(sourceCode) {
|
|
16
|
+
const sourceFile = ts.createSourceFile("temp.ts", sourceCode, ts.ScriptTarget.Latest, true);
|
|
17
|
+
const interfaces = [];
|
|
18
|
+
const typeAliases = [];
|
|
19
|
+
const all = [];
|
|
20
|
+
ts.forEachChild(sourceFile, (node) => {
|
|
21
|
+
// Interface declarations
|
|
22
|
+
if (ts.isInterfaceDeclaration(node)) {
|
|
23
|
+
const text = sourceCode.slice(node.getFullStart(), node.getEnd()).trim();
|
|
24
|
+
interfaces.push(text);
|
|
25
|
+
all.push({ text, pos: node.getFullStart(), kind: "interface" });
|
|
26
|
+
}
|
|
27
|
+
// Type alias declarations
|
|
28
|
+
if (ts.isTypeAliasDeclaration(node)) {
|
|
29
|
+
const text = sourceCode.slice(node.getFullStart(), node.getEnd()).trim();
|
|
30
|
+
typeAliases.push(text);
|
|
31
|
+
all.push({ text, pos: node.getFullStart(), kind: "type" });
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
// Sort by source position to maintain original order
|
|
35
|
+
all.sort((a, b) => a.pos - b.pos);
|
|
36
|
+
return {
|
|
37
|
+
interfaces,
|
|
38
|
+
typeAliases,
|
|
39
|
+
all: all.map((item) => item.text),
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Extract type declarations from a source file path.
|
|
44
|
+
*
|
|
45
|
+
* @param filePath - Path to the TypeScript source file
|
|
46
|
+
* @returns Object containing extracted type declarations, or empty if file can't be read
|
|
47
|
+
*/
|
|
48
|
+
export function extractTypeDeclarationsFromFile(filePath) {
|
|
49
|
+
try {
|
|
50
|
+
const sourceCode = fs.readFileSync(filePath, "utf-8");
|
|
51
|
+
return extractTypeDeclarations(sourceCode);
|
|
52
|
+
}
|
|
53
|
+
catch {
|
|
54
|
+
return { interfaces: [], typeAliases: [], all: [] };
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=extract-types.js.map
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* In-Place Code Generation
|
|
3
|
+
*
|
|
4
|
+
* Generates executable code directly into the source file while preserving
|
|
5
|
+
* user code (node functions). Updates:
|
|
6
|
+
* - Runtime section (between markers)
|
|
7
|
+
* - Workflow JSDoc annotations (when AST changes)
|
|
8
|
+
* - Function body (between markers)
|
|
9
|
+
*/
|
|
10
|
+
import type { TWorkflowAST, TModuleFormat } from '../ast/types.js';
|
|
11
|
+
export declare const MARKERS: {
|
|
12
|
+
RUNTIME_START: string;
|
|
13
|
+
RUNTIME_END: string;
|
|
14
|
+
BODY_START: string;
|
|
15
|
+
BODY_END: string;
|
|
16
|
+
};
|
|
17
|
+
export interface InPlaceGenerateOptions {
|
|
18
|
+
/**
|
|
19
|
+
* Whether to generate production-optimized code (no debug events)
|
|
20
|
+
*/
|
|
21
|
+
production?: boolean;
|
|
22
|
+
/**
|
|
23
|
+
* All workflows in the file (needed to avoid orphaning node types
|
|
24
|
+
* used by other workflows during multi-workflow compilation)
|
|
25
|
+
*/
|
|
26
|
+
allWorkflows?: TWorkflowAST[];
|
|
27
|
+
/**
|
|
28
|
+
* Module format for generated code ('esm' or 'cjs')
|
|
29
|
+
* @default 'esm'
|
|
30
|
+
*/
|
|
31
|
+
moduleFormat?: TModuleFormat;
|
|
32
|
+
/**
|
|
33
|
+
* Force inline runtime even when @synergenius/flow-weaver package is installed.
|
|
34
|
+
* When false/undefined, the compiler auto-detects the package and uses
|
|
35
|
+
* external imports when available (smaller generated code, shared runtime).
|
|
36
|
+
* @default false
|
|
37
|
+
*/
|
|
38
|
+
inlineRuntime?: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Absolute path to the source file being compiled.
|
|
41
|
+
* Used to detect if @synergenius/flow-weaver is installed relative to the file.
|
|
42
|
+
* If not provided, falls back to process.cwd().
|
|
43
|
+
*/
|
|
44
|
+
sourceFile?: string;
|
|
45
|
+
/**
|
|
46
|
+
* When true, omit @param/@returns annotations from the workflow JSDoc.
|
|
47
|
+
* The parser auto-infers Start/Exit ports from function signatures,
|
|
48
|
+
* so these annotations are redundant for non-visual-editor users.
|
|
49
|
+
*/
|
|
50
|
+
skipParamReturns?: boolean;
|
|
51
|
+
}
|
|
52
|
+
export interface InPlaceGenerateResult {
|
|
53
|
+
code: string;
|
|
54
|
+
hasChanges: boolean;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Generate executable code in-place, preserving user code.
|
|
58
|
+
*
|
|
59
|
+
* @param sourceCode - The original source code
|
|
60
|
+
* @param ast - The parsed workflow AST
|
|
61
|
+
* @param options - Generation options
|
|
62
|
+
* @returns The updated source code with generated sections
|
|
63
|
+
*/
|
|
64
|
+
export declare function generateInPlace(sourceCode: string, ast: TWorkflowAST, options?: InPlaceGenerateOptions): InPlaceGenerateResult;
|
|
65
|
+
/**
|
|
66
|
+
* Check if source code has in-place generation markers
|
|
67
|
+
*/
|
|
68
|
+
export declare function hasInPlaceMarkers(source: string): boolean;
|
|
69
|
+
/**
|
|
70
|
+
* Remove all generated sections from source code
|
|
71
|
+
*/
|
|
72
|
+
export declare function stripGeneratedSections(source: string): string;
|
|
73
|
+
//# sourceMappingURL=generate-in-place.d.ts.map
|