@motiadev/core 0.13.2-beta.164-110989 → 0.14.0-beta.164
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/index.d.ts +30 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +72 -0
- package/dist/jest.config.d.ts +8 -0
- package/dist/jest.config.d.ts.map +1 -0
- package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.d.ts +13 -0
- package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.d.ts.map +1 -0
- package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.js +53 -0
- package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.d.ts +15 -0
- package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.d.ts.map +1 -0
- package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.js +49 -0
- package/dist/src/adapters/defaults/index.d.ts +9 -0
- package/dist/src/adapters/defaults/index.d.ts.map +1 -0
- package/dist/src/adapters/defaults/index.js +19 -0
- package/dist/src/adapters/defaults/state/file-state-adapter.d.ts +23 -0
- package/dist/src/adapters/defaults/state/file-state-adapter.d.ts.map +1 -0
- package/dist/src/adapters/defaults/state/file-state-adapter.js +149 -0
- package/dist/src/adapters/defaults/state/memory-state-adapter.d.ts +16 -0
- package/dist/src/adapters/defaults/state/memory-state-adapter.d.ts.map +1 -0
- package/dist/src/adapters/defaults/state/memory-state-adapter.js +69 -0
- package/dist/src/adapters/defaults/state/utils.d.ts +4 -0
- package/dist/src/adapters/defaults/state/utils.d.ts.map +1 -0
- package/dist/src/adapters/defaults/state/utils.js +66 -0
- package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.d.ts +9 -0
- package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.d.ts.map +1 -0
- package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.js +14 -0
- package/dist/src/adapters/defaults/stream/file-stream-adapter.d.ts +22 -0
- package/dist/src/adapters/defaults/stream/file-stream-adapter.d.ts.map +1 -0
- package/dist/src/adapters/defaults/stream/file-stream-adapter.js +125 -0
- package/dist/src/adapters/defaults/stream/index.d.ts +5 -0
- package/dist/src/adapters/defaults/stream/index.d.ts.map +1 -0
- package/dist/src/adapters/defaults/stream/index.js +11 -0
- package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.d.ts +6 -0
- package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.d.ts.map +1 -0
- package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.js +10 -0
- package/dist/src/adapters/defaults/stream/memory-stream-adapter.d.ts +16 -0
- package/dist/src/adapters/defaults/stream/memory-stream-adapter.d.ts.map +1 -0
- package/dist/src/adapters/defaults/stream/memory-stream-adapter.js +55 -0
- package/dist/src/adapters/interfaces/cron-adapter.interface.d.ts +29 -0
- package/dist/src/adapters/interfaces/cron-adapter.interface.d.ts.map +1 -0
- package/dist/src/adapters/interfaces/cron-adapter.interface.js +2 -0
- package/dist/src/adapters/interfaces/event-adapter.interface.d.ts +15 -0
- package/dist/src/adapters/interfaces/event-adapter.interface.d.ts.map +1 -0
- package/dist/src/adapters/interfaces/event-adapter.interface.js +2 -0
- package/dist/src/adapters/interfaces/index.d.ts +7 -0
- package/dist/src/adapters/interfaces/index.d.ts.map +1 -0
- package/dist/src/adapters/interfaces/index.js +5 -0
- package/dist/src/adapters/interfaces/observability-adapter.interface.d.ts +23 -0
- package/dist/src/adapters/interfaces/observability-adapter.interface.d.ts.map +1 -0
- package/dist/src/adapters/interfaces/observability-adapter.interface.js +2 -0
- package/dist/src/adapters/interfaces/state-adapter.interface.d.ts +24 -0
- package/dist/src/adapters/interfaces/state-adapter.interface.d.ts.map +1 -0
- package/dist/src/adapters/interfaces/state-adapter.interface.js +2 -0
- package/dist/src/adapters/interfaces/stream-adapter-manager.interface.d.ts +6 -0
- package/dist/src/adapters/interfaces/stream-adapter-manager.interface.d.ts.map +1 -0
- package/dist/src/adapters/interfaces/stream-adapter-manager.interface.js +2 -0
- package/dist/src/adapters/interfaces/stream-adapter.interface.d.ts +22 -0
- package/dist/src/adapters/interfaces/stream-adapter.interface.d.ts.map +1 -0
- package/dist/src/adapters/interfaces/stream-adapter.interface.js +16 -0
- package/dist/src/analytics/utils.d.ts +6 -0
- package/dist/src/analytics/utils.d.ts.map +1 -0
- package/dist/src/analytics/utils.js +51 -0
- package/dist/src/call-step-file.d.ts +16 -0
- package/dist/src/call-step-file.d.ts.map +1 -0
- package/dist/src/call-step-file.js +198 -0
- package/dist/src/config.d.ts +3 -0
- package/dist/src/config.d.ts.map +1 -0
- package/dist/src/config.js +5 -0
- package/dist/src/config.types.d.ts +17 -0
- package/dist/src/config.types.d.ts.map +1 -0
- package/dist/src/config.types.js +2 -0
- package/dist/src/cron-handler.d.ts +14 -0
- package/dist/src/cron-handler.d.ts.map +1 -0
- package/dist/src/cron-handler.js +132 -0
- package/dist/src/endpoints/analytics-endpoint.d.ts +3 -0
- package/dist/src/endpoints/analytics-endpoint.d.ts.map +1 -0
- package/dist/src/endpoints/analytics-endpoint.js +28 -0
- package/dist/src/endpoints/flows-config-endpoint.d.ts +4 -0
- package/dist/src/endpoints/flows-config-endpoint.d.ts.map +1 -0
- package/dist/src/endpoints/flows-config-endpoint.js +34 -0
- package/dist/src/endpoints/flows-endpoint.d.ts +3 -0
- package/dist/src/endpoints/flows-endpoint.d.ts.map +1 -0
- package/dist/src/endpoints/flows-endpoint.js +29 -0
- package/dist/src/endpoints/step-endpoint.d.ts +4 -0
- package/dist/src/endpoints/step-endpoint.d.ts.map +1 -0
- package/dist/src/endpoints/step-endpoint.js +45 -0
- package/dist/src/generate-trace-id.d.ts +3 -0
- package/dist/src/generate-trace-id.d.ts.map +1 -0
- package/dist/src/generate-trace-id.js +14 -0
- package/dist/src/get-step-config.d.ts +5 -0
- package/dist/src/get-step-config.d.ts.map +1 -0
- package/dist/src/get-step-config.js +68 -0
- package/dist/src/get-step-language.d.ts +2 -0
- package/dist/src/get-step-language.d.ts.map +1 -0
- package/dist/src/get-step-language.js +27 -0
- package/dist/src/guards.d.ts +6 -0
- package/dist/src/guards.d.ts.map +1 -0
- package/dist/src/guards.js +11 -0
- package/dist/src/helper/flows-helper.d.ts +6 -0
- package/dist/src/helper/flows-helper.d.ts.map +1 -0
- package/dist/src/helper/flows-helper.js +143 -0
- package/dist/src/infrastructure-validator/defaults.d.ts +4 -0
- package/dist/src/infrastructure-validator/defaults.d.ts.map +1 -0
- package/dist/src/infrastructure-validator/defaults.js +16 -0
- package/dist/src/infrastructure-validator/index.d.ts +4 -0
- package/dist/src/infrastructure-validator/index.d.ts.map +1 -0
- package/dist/src/infrastructure-validator/index.js +13 -0
- package/dist/src/infrastructure-validator/schemas.d.ts +45 -0
- package/dist/src/infrastructure-validator/schemas.d.ts.map +1 -0
- package/dist/src/infrastructure-validator/schemas.js +100 -0
- package/dist/src/infrastructure-validator/types.d.ts +21 -0
- package/dist/src/infrastructure-validator/types.d.ts.map +1 -0
- package/dist/src/infrastructure-validator/types.js +2 -0
- package/dist/src/infrastructure-validator/validations.d.ts +4 -0
- package/dist/src/infrastructure-validator/validations.d.ts.map +1 -0
- package/dist/src/infrastructure-validator/validations.js +62 -0
- package/dist/src/language-runner.d.ts +15 -0
- package/dist/src/language-runner.d.ts.map +1 -0
- package/dist/src/language-runner.js +31 -0
- package/dist/src/locked-data.d.ts +78 -0
- package/dist/src/locked-data.d.ts.map +1 -0
- package/dist/src/locked-data.js +284 -0
- package/dist/src/logger-factory.d.ts +19 -0
- package/dist/src/logger-factory.d.ts.map +1 -0
- package/dist/src/logger-factory.js +27 -0
- package/dist/src/logger.d.ts +26 -0
- package/dist/src/logger.d.ts.map +1 -0
- package/dist/src/logger.js +60 -0
- package/dist/src/mermaid-generator.d.ts +5 -0
- package/dist/src/mermaid-generator.d.ts.map +1 -0
- package/dist/src/mermaid-generator.js +203 -0
- package/dist/src/motia.d.ts +33 -0
- package/dist/src/motia.d.ts.map +1 -0
- package/dist/src/motia.js +4 -0
- package/dist/src/node/can-access.d.ts +2 -0
- package/dist/src/node/can-access.d.ts.map +1 -0
- package/dist/src/node/can-access.js +44 -0
- package/dist/src/node/get-config.d.ts +2 -0
- package/dist/src/node/get-config.d.ts.map +1 -0
- package/dist/src/node/get-config.js +64 -0
- package/dist/src/node/logger.d.ts +16 -0
- package/dist/src/node/logger.d.ts.map +1 -0
- package/dist/src/node/logger.js +48 -0
- package/dist/src/node/middleware-compose.d.ts +2 -0
- package/dist/src/node/middleware-compose.d.ts.map +1 -0
- package/dist/src/node/middleware-compose.js +10 -0
- package/dist/src/node/node-runner.d.ts +2 -0
- package/dist/src/node/node-runner.d.ts.map +1 -0
- package/dist/src/node/node-runner.js +83 -0
- package/dist/src/node/rpc-state-manager.d.ts +12 -0
- package/dist/src/node/rpc-state-manager.d.ts.map +1 -0
- package/dist/src/node/rpc-state-manager.js +24 -0
- package/dist/src/node/rpc.d.ts +10 -0
- package/dist/src/node/rpc.d.ts.map +1 -0
- package/dist/src/node/rpc.js +50 -0
- package/dist/src/observability/create-trace.d.ts +4 -0
- package/dist/src/observability/create-trace.d.ts.map +1 -0
- package/dist/src/observability/create-trace.js +22 -0
- package/dist/src/observability/index.d.ts +4 -0
- package/dist/src/observability/index.d.ts.map +1 -0
- package/dist/src/observability/index.js +2 -0
- package/dist/src/observability/no-tracer.d.ts +10 -0
- package/dist/src/observability/no-tracer.d.ts.map +1 -0
- package/dist/src/observability/no-tracer.js +22 -0
- package/dist/src/observability/redis-trace-stream-adapter.d.ts +17 -0
- package/dist/src/observability/redis-trace-stream-adapter.d.ts.map +1 -0
- package/dist/src/observability/redis-trace-stream-adapter.js +65 -0
- package/dist/src/observability/stream-tracer.d.ts +23 -0
- package/dist/src/observability/stream-tracer.d.ts.map +1 -0
- package/dist/src/observability/stream-tracer.js +114 -0
- package/dist/src/observability/trace-manager.d.ts +14 -0
- package/dist/src/observability/trace-manager.d.ts.map +1 -0
- package/dist/src/observability/trace-manager.js +26 -0
- package/dist/src/observability/tracer.d.ts +19 -0
- package/dist/src/observability/tracer.d.ts.map +1 -0
- package/dist/src/observability/tracer.js +98 -0
- package/dist/src/observability/types.d.ts +75 -0
- package/dist/src/observability/types.d.ts.map +1 -0
- package/dist/src/observability/types.js +2 -0
- package/dist/src/pretty-print.d.ts +2 -0
- package/dist/src/pretty-print.d.ts.map +1 -0
- package/dist/src/pretty-print.js +63 -0
- package/dist/src/printer.d.ts +61 -0
- package/dist/src/printer.d.ts.map +1 -0
- package/dist/src/printer.js +164 -0
- package/dist/src/process-communication/communication-config.d.ts +8 -0
- package/dist/src/process-communication/communication-config.d.ts.map +1 -0
- package/dist/src/process-communication/communication-config.js +18 -0
- package/dist/src/process-communication/process-manager.d.ts +32 -0
- package/dist/src/process-communication/process-manager.d.ts.map +1 -0
- package/dist/src/process-communication/process-manager.js +88 -0
- package/dist/src/process-communication/rpc-processor-interface.d.ts +10 -0
- package/dist/src/process-communication/rpc-processor-interface.d.ts.map +1 -0
- package/dist/src/process-communication/rpc-processor-interface.js +2 -0
- package/dist/src/queue-manager.d.ts +42 -0
- package/dist/src/queue-manager.d.ts.map +1 -0
- package/dist/src/queue-manager.js +252 -0
- package/dist/src/ruby/get-ruby-config.d.ts +3 -0
- package/dist/src/ruby/get-ruby-config.d.ts.map +1 -0
- package/dist/src/ruby/get-ruby-config.js +34 -0
- package/dist/src/run-stream-can-access.d.ts +10 -0
- package/dist/src/run-stream-can-access.d.ts.map +1 -0
- package/dist/src/run-stream-can-access.js +59 -0
- package/dist/src/schema-utils.d.ts +9 -0
- package/dist/src/schema-utils.d.ts.map +1 -0
- package/dist/src/schema-utils.js +80 -0
- package/dist/src/server.d.ts +37 -0
- package/dist/src/server.d.ts.map +1 -0
- package/dist/src/server.js +344 -0
- package/dist/src/socket-server/helpers.d.ts +53 -0
- package/dist/src/socket-server/helpers.d.ts.map +1 -0
- package/dist/src/socket-server/helpers.js +28 -0
- package/dist/src/socket-server.d.ts +21 -0
- package/dist/src/socket-server.d.ts.map +1 -0
- package/dist/src/socket-server.js +127 -0
- package/dist/src/state/create-state-adapter.d.ts +8 -0
- package/dist/src/state/create-state-adapter.d.ts.map +1 -0
- package/dist/src/state/create-state-adapter.js +8 -0
- package/dist/src/step-handler-rpc-processor.d.ts +22 -0
- package/dist/src/step-handler-rpc-processor.d.ts.map +1 -0
- package/dist/src/step-handler-rpc-processor.js +63 -0
- package/dist/src/step-handler-rpc-stdin-processor.d.ts +23 -0
- package/dist/src/step-handler-rpc-stdin-processor.d.ts.map +1 -0
- package/dist/src/step-handler-rpc-stdin-processor.js +83 -0
- package/dist/src/step-handlers.d.ts +9 -0
- package/dist/src/step-handlers.d.ts.map +1 -0
- package/dist/src/step-handlers.js +77 -0
- package/dist/src/step-validator.d.ts +15 -0
- package/dist/src/step-validator.d.ts.map +1 -0
- package/dist/src/step-validator.js +135 -0
- package/dist/src/steps/emit.step.d.ts +12 -0
- package/dist/src/steps/emit.step.d.ts.map +1 -0
- package/dist/src/steps/emit.step.js +27 -0
- package/dist/src/steps/index.d.ts +3 -0
- package/dist/src/steps/index.d.ts.map +1 -0
- package/dist/src/steps/index.js +16 -0
- package/dist/src/streams/flows-config-stream.d.ts +14 -0
- package/dist/src/streams/flows-config-stream.d.ts.map +1 -0
- package/dist/src/streams/flows-config-stream.js +49 -0
- package/dist/src/streams/flows-stream.d.ts +12 -0
- package/dist/src/streams/flows-stream.d.ts.map +1 -0
- package/dist/src/streams/flows-stream.js +35 -0
- package/dist/src/streams/redis-logs-stream.d.ts +31 -0
- package/dist/src/streams/redis-logs-stream.d.ts.map +1 -0
- package/dist/src/streams/redis-logs-stream.js +84 -0
- package/dist/src/streams/stream-factory.d.ts +3 -0
- package/dist/src/streams/stream-factory.d.ts.map +1 -0
- package/dist/src/streams/stream-factory.js +2 -0
- package/dist/src/types/app-config-types.d.ts +45 -0
- package/dist/src/types/app-config-types.d.ts.map +1 -0
- package/dist/src/types/app-config-types.js +2 -0
- package/dist/src/types/flows-config-types.d.ts +10 -0
- package/dist/src/types/flows-config-types.d.ts.map +1 -0
- package/dist/src/types/flows-config-types.js +2 -0
- package/dist/src/types/flows-types.d.ts +39 -0
- package/dist/src/types/flows-types.d.ts.map +1 -0
- package/dist/src/types/flows-types.js +2 -0
- package/dist/src/types/generate-type-from-schema.d.ts +3 -0
- package/dist/src/types/generate-type-from-schema.d.ts.map +1 -0
- package/dist/src/types/generate-type-from-schema.js +49 -0
- package/dist/src/types/generate-types-from-response.d.ts +3 -0
- package/dist/src/types/generate-types-from-response.d.ts.map +1 -0
- package/dist/src/types/generate-types-from-response.js +13 -0
- package/dist/src/types/generate-types.d.ts +13 -0
- package/dist/src/types/generate-types.d.ts.map +1 -0
- package/dist/src/types/generate-types.js +127 -0
- package/dist/src/types/merge-schemas.d.ts +5 -0
- package/dist/src/types/merge-schemas.d.ts.map +1 -0
- package/dist/src/types/merge-schemas.js +183 -0
- package/dist/src/types/schema.types.d.ts +9 -0
- package/dist/src/types/schema.types.d.ts.map +1 -0
- package/dist/src/types/schema.types.js +14 -0
- package/dist/src/types-stream.d.ts +42 -0
- package/dist/src/types-stream.d.ts.map +1 -0
- package/dist/src/types-stream.js +2 -0
- package/dist/src/types.d.ts +190 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/types.js +17 -0
- package/dist/src/utils.d.ts +3 -0
- package/dist/src/utils.d.ts.map +1 -0
- package/dist/src/utils.js +12 -0
- package/dist/src/validate-event-input.d.ts +3 -0
- package/dist/src/validate-event-input.d.ts.map +1 -0
- package/dist/src/validate-event-input.js +74 -0
- package/package.json +8 -21
- package/dist/index.d.mts +0 -38
- package/dist/index.mjs +0 -30
- package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.d.mts +0 -17
- package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.d.mts.map +0 -1
- package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.mjs +0 -51
- package/dist/src/adapters/defaults/cron/in-memory-cron-adapter.mjs.map +0 -1
- package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.d.mts +0 -19
- package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.d.mts.map +0 -1
- package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.mjs +0 -54
- package/dist/src/adapters/defaults/event/in-memory-queue-event-adapter.mjs.map +0 -1
- package/dist/src/adapters/defaults/index.d.mts +0 -8
- package/dist/src/adapters/defaults/index.mjs +0 -10
- package/dist/src/adapters/defaults/state/file-state-adapter.d.mts +0 -27
- package/dist/src/adapters/defaults/state/file-state-adapter.d.mts.map +0 -1
- package/dist/src/adapters/defaults/state/file-state-adapter.mjs +0 -105
- package/dist/src/adapters/defaults/state/file-state-adapter.mjs.map +0 -1
- package/dist/src/adapters/defaults/state/memory-state-adapter.d.mts +0 -20
- package/dist/src/adapters/defaults/state/memory-state-adapter.d.mts.map +0 -1
- package/dist/src/adapters/defaults/state/memory-state-adapter.mjs +0 -58
- package/dist/src/adapters/defaults/state/memory-state-adapter.mjs.map +0 -1
- package/dist/src/adapters/defaults/state/utils.mjs +0 -40
- package/dist/src/adapters/defaults/state/utils.mjs.map +0 -1
- package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.d.mts +0 -13
- package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.d.mts.map +0 -1
- package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.mjs +0 -16
- package/dist/src/adapters/defaults/stream/file-stream-adapter-manager.mjs.map +0 -1
- package/dist/src/adapters/defaults/stream/file-stream-adapter.d.mts +0 -24
- package/dist/src/adapters/defaults/stream/file-stream-adapter.d.mts.map +0 -1
- package/dist/src/adapters/defaults/stream/file-stream-adapter.mjs +0 -84
- package/dist/src/adapters/defaults/stream/file-stream-adapter.mjs.map +0 -1
- package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.d.mts +0 -10
- package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.d.mts.map +0 -1
- package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.mjs +0 -12
- package/dist/src/adapters/defaults/stream/memory-stream-adapter-manager.mjs.map +0 -1
- package/dist/src/adapters/defaults/stream/memory-stream-adapter.d.mts +0 -20
- package/dist/src/adapters/defaults/stream/memory-stream-adapter.d.mts.map +0 -1
- package/dist/src/adapters/defaults/stream/memory-stream-adapter.mjs +0 -58
- package/dist/src/adapters/defaults/stream/memory-stream-adapter.mjs.map +0 -1
- package/dist/src/adapters/interfaces/cron-adapter.interface.d.mts +0 -32
- package/dist/src/adapters/interfaces/cron-adapter.interface.d.mts.map +0 -1
- package/dist/src/adapters/interfaces/event-adapter.interface.d.mts +0 -19
- package/dist/src/adapters/interfaces/event-adapter.interface.d.mts.map +0 -1
- package/dist/src/adapters/interfaces/observability-adapter.interface.d.mts +0 -27
- package/dist/src/adapters/interfaces/observability-adapter.interface.d.mts.map +0 -1
- package/dist/src/adapters/interfaces/state-adapter.interface.d.mts +0 -28
- package/dist/src/adapters/interfaces/state-adapter.interface.d.mts.map +0 -1
- package/dist/src/adapters/interfaces/stream-adapter-manager.interface.d.mts +0 -10
- package/dist/src/adapters/interfaces/stream-adapter-manager.interface.d.mts.map +0 -1
- package/dist/src/adapters/interfaces/stream-adapter.interface.d.mts +0 -26
- package/dist/src/adapters/interfaces/stream-adapter.interface.d.mts.map +0 -1
- package/dist/src/adapters/interfaces/stream-adapter.interface.mjs +0 -17
- package/dist/src/adapters/interfaces/stream-adapter.interface.mjs.map +0 -1
- package/dist/src/analytics/utils.d.mts +0 -9
- package/dist/src/analytics/utils.d.mts.map +0 -1
- package/dist/src/analytics/utils.mjs +0 -35
- package/dist/src/analytics/utils.mjs.map +0 -1
- package/dist/src/call-step-file.mjs +0 -213
- package/dist/src/call-step-file.mjs.map +0 -1
- package/dist/src/config.d.mts +0 -7
- package/dist/src/config.d.mts.map +0 -1
- package/dist/src/config.mjs +0 -6
- package/dist/src/config.mjs.map +0 -1
- package/dist/src/cron-handler.d.mts +0 -18
- package/dist/src/cron-handler.d.mts.map +0 -1
- package/dist/src/cron-handler.mjs +0 -103
- package/dist/src/cron-handler.mjs.map +0 -1
- package/dist/src/endpoints/analytics-endpoint.mjs +0 -29
- package/dist/src/endpoints/analytics-endpoint.mjs.map +0 -1
- package/dist/src/endpoints/flows-config-endpoint.mjs +0 -38
- package/dist/src/endpoints/flows-config-endpoint.mjs.map +0 -1
- package/dist/src/endpoints/flows-endpoint.mjs +0 -39
- package/dist/src/endpoints/flows-endpoint.mjs.map +0 -1
- package/dist/src/endpoints/step-endpoint.mjs +0 -41
- package/dist/src/endpoints/step-endpoint.mjs.map +0 -1
- package/dist/src/generate-trace-id.mjs +0 -13
- package/dist/src/generate-trace-id.mjs.map +0 -1
- package/dist/src/get-step-config.d.mts +0 -9
- package/dist/src/get-step-config.d.mts.map +0 -1
- package/dist/src/get-step-config.mjs +0 -63
- package/dist/src/get-step-config.mjs.map +0 -1
- package/dist/src/get-step-language.mjs +0 -14
- package/dist/src/get-step-language.mjs.map +0 -1
- package/dist/src/guards.d.mts +0 -10
- package/dist/src/guards.d.mts.map +0 -1
- package/dist/src/guards.mjs +0 -9
- package/dist/src/guards.mjs.map +0 -1
- package/dist/src/helper/flows-helper.mjs +0 -126
- package/dist/src/helper/flows-helper.mjs.map +0 -1
- package/dist/src/infrastructure-validator/defaults.mjs +0 -17
- package/dist/src/infrastructure-validator/defaults.mjs.map +0 -1
- package/dist/src/infrastructure-validator/index.d.mts +0 -3
- package/dist/src/infrastructure-validator/index.mjs +0 -4
- package/dist/src/infrastructure-validator/schemas.d.mts +0 -1
- package/dist/src/infrastructure-validator/schemas.mjs +0 -77
- package/dist/src/infrastructure-validator/schemas.mjs.map +0 -1
- package/dist/src/infrastructure-validator/types.d.mts +0 -14
- package/dist/src/infrastructure-validator/types.d.mts.map +0 -1
- package/dist/src/infrastructure-validator/validations.d.mts +0 -7
- package/dist/src/infrastructure-validator/validations.d.mts.map +0 -1
- package/dist/src/infrastructure-validator/validations.mjs +0 -29
- package/dist/src/infrastructure-validator/validations.mjs.map +0 -1
- package/dist/src/language-runner.mjs +0 -55
- package/dist/src/language-runner.mjs.map +0 -1
- package/dist/src/locked-data.d.mts +0 -81
- package/dist/src/locked-data.d.mts.map +0 -1
- package/dist/src/locked-data.mjs +0 -223
- package/dist/src/locked-data.mjs.map +0 -1
- package/dist/src/logger-factory.d.mts +0 -16
- package/dist/src/logger-factory.d.mts.map +0 -1
- package/dist/src/logger-factory.mjs +0 -33
- package/dist/src/logger-factory.mjs.map +0 -1
- package/dist/src/logger.d.mts +0 -28
- package/dist/src/logger.d.mts.map +0 -1
- package/dist/src/logger.mjs +0 -64
- package/dist/src/logger.mjs.map +0 -1
- package/dist/src/mermaid-generator.d.mts +0 -9
- package/dist/src/mermaid-generator.d.mts.map +0 -1
- package/dist/src/mermaid-generator.mjs +0 -126
- package/dist/src/mermaid-generator.mjs.map +0 -1
- package/dist/src/motia.d.mts +0 -36
- package/dist/src/motia.d.mts.map +0 -1
- package/dist/src/motia.mjs +0 -6
- package/dist/src/motia.mjs.map +0 -1
- package/dist/src/node/can-access.d.mts +0 -1
- package/dist/src/node/can-access.mjs +0 -36
- package/dist/src/node/can-access.mjs.map +0 -1
- package/dist/src/node/get-config.d.mts +0 -1
- package/dist/src/node/get-config.mjs +0 -49
- package/dist/src/node/get-config.mjs.map +0 -1
- package/dist/src/node/logger.mjs +0 -47
- package/dist/src/node/logger.mjs.map +0 -1
- package/dist/src/node/middleware-compose.mjs +0 -10
- package/dist/src/node/middleware-compose.mjs.map +0 -1
- package/dist/src/node/node-runner.d.mts +0 -1
- package/dist/src/node/node-runner.mjs +0 -94
- package/dist/src/node/node-runner.mjs.map +0 -1
- package/dist/src/node/rpc-state-manager.mjs +0 -35
- package/dist/src/node/rpc-state-manager.mjs.map +0 -1
- package/dist/src/node/rpc.mjs +0 -55
- package/dist/src/node/rpc.mjs.map +0 -1
- package/dist/src/observability/create-trace.mjs +0 -26
- package/dist/src/observability/create-trace.mjs.map +0 -1
- package/dist/src/observability/index.d.mts +0 -7
- package/dist/src/observability/index.d.mts.map +0 -1
- package/dist/src/observability/no-tracer.d.mts +0 -15
- package/dist/src/observability/no-tracer.d.mts.map +0 -1
- package/dist/src/observability/no-tracer.mjs +0 -15
- package/dist/src/observability/no-tracer.mjs.map +0 -1
- package/dist/src/observability/redis-trace-stream-adapter.mjs +0 -76
- package/dist/src/observability/redis-trace-stream-adapter.mjs.map +0 -1
- package/dist/src/observability/stream-tracer.mjs +0 -87
- package/dist/src/observability/stream-tracer.mjs.map +0 -1
- package/dist/src/observability/trace-manager.mjs +0 -24
- package/dist/src/observability/trace-manager.mjs.map +0 -1
- package/dist/src/observability/tracer.mjs +0 -87
- package/dist/src/observability/tracer.mjs.map +0 -1
- package/dist/src/observability/types.d.mts +0 -14
- package/dist/src/observability/types.d.mts.map +0 -1
- package/dist/src/pretty-print.mjs +0 -50
- package/dist/src/pretty-print.mjs.map +0 -1
- package/dist/src/printer.d.mts +0 -65
- package/dist/src/printer.d.mts.map +0 -1
- package/dist/src/printer.mjs +0 -147
- package/dist/src/printer.mjs.map +0 -1
- package/dist/src/process-communication/communication-config.mjs +0 -26
- package/dist/src/process-communication/communication-config.mjs.map +0 -1
- package/dist/src/process-communication/process-manager.mjs +0 -67
- package/dist/src/process-communication/process-manager.mjs.map +0 -1
- package/dist/src/queue-manager.d.mts +0 -37
- package/dist/src/queue-manager.d.mts.map +0 -1
- package/dist/src/queue-manager.mjs +0 -209
- package/dist/src/queue-manager.mjs.map +0 -1
- package/dist/src/run-stream-can-access.mjs +0 -59
- package/dist/src/run-stream-can-access.mjs.map +0 -1
- package/dist/src/schema-utils.mjs +0 -30
- package/dist/src/schema-utils.mjs.map +0 -1
- package/dist/src/server.d.mts +0 -40
- package/dist/src/server.d.mts.map +0 -1
- package/dist/src/server.mjs +0 -352
- package/dist/src/server.mjs.map +0 -1
- package/dist/src/socket-server/helpers.mjs +0 -35
- package/dist/src/socket-server/helpers.mjs.map +0 -1
- package/dist/src/socket-server.mjs +0 -127
- package/dist/src/socket-server.mjs.map +0 -1
- package/dist/src/state/create-state-adapter.d.mts +0 -11
- package/dist/src/state/create-state-adapter.d.mts.map +0 -1
- package/dist/src/state/create-state-adapter.mjs +0 -11
- package/dist/src/state/create-state-adapter.mjs.map +0 -1
- package/dist/src/step-handler-rpc-processor.mjs +0 -56
- package/dist/src/step-handler-rpc-processor.mjs.map +0 -1
- package/dist/src/step-handler-rpc-stdin-processor.mjs +0 -71
- package/dist/src/step-handler-rpc-stdin-processor.mjs.map +0 -1
- package/dist/src/step-handlers.d.mts +0 -13
- package/dist/src/step-handlers.d.mts.map +0 -1
- package/dist/src/step-handlers.mjs +0 -93
- package/dist/src/step-handlers.mjs.map +0 -1
- package/dist/src/step-validator.d.mts +0 -15
- package/dist/src/step-validator.d.mts.map +0 -1
- package/dist/src/step-validator.mjs +0 -118
- package/dist/src/step-validator.mjs.map +0 -1
- package/dist/src/steps/emit.step.mjs +0 -20
- package/dist/src/steps/emit.step.mjs.map +0 -1
- package/dist/src/steps/index.mjs +0 -14
- package/dist/src/steps/index.mjs.map +0 -1
- package/dist/src/streams/flows-config-stream.mjs +0 -46
- package/dist/src/streams/flows-config-stream.mjs.map +0 -1
- package/dist/src/streams/flows-stream.mjs +0 -33
- package/dist/src/streams/flows-stream.mjs.map +0 -1
- package/dist/src/streams/redis-logs-stream.d.mts +0 -3
- package/dist/src/streams/redis-logs-stream.mjs +0 -97
- package/dist/src/streams/redis-logs-stream.mjs.map +0 -1
- package/dist/src/streams/stream-factory.d.mts +0 -7
- package/dist/src/streams/stream-factory.d.mts.map +0 -1
- package/dist/src/types/app-config-types.d.mts +0 -48
- package/dist/src/types/app-config-types.d.mts.map +0 -1
- package/dist/src/types/generate-type-from-schema.mjs +0 -30
- package/dist/src/types/generate-type-from-schema.mjs.map +0 -1
- package/dist/src/types/generate-types-from-response.mjs +0 -12
- package/dist/src/types/generate-types-from-response.mjs.map +0 -1
- package/dist/src/types/generate-types.mjs +0 -101
- package/dist/src/types/generate-types.mjs.map +0 -1
- package/dist/src/types/merge-schemas.mjs +0 -102
- package/dist/src/types/merge-schemas.mjs.map +0 -1
- package/dist/src/types/schema.types.d.mts +0 -13
- package/dist/src/types/schema.types.d.mts.map +0 -1
- package/dist/src/types/schema.types.mjs +0 -14
- package/dist/src/types/schema.types.mjs.map +0 -1
- package/dist/src/types-stream.d.mts +0 -46
- package/dist/src/types-stream.d.mts.map +0 -1
- package/dist/src/types.d.mts +0 -194
- package/dist/src/types.d.mts.map +0 -1
- package/dist/src/utils.mjs +0 -13
- package/dist/src/utils.mjs.map +0 -1
- package/dist/src/validate-event-input.mjs +0 -76
- package/dist/src/validate-event-input.mjs.map +0 -1
- package/jest.config.cjs +0 -20
- package/tsdown.config.ts +0 -53
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RpcProcessor = void 0;
|
|
4
|
+
class RpcProcessor {
|
|
5
|
+
constructor(child) {
|
|
6
|
+
this.child = child;
|
|
7
|
+
this.handlers = {};
|
|
8
|
+
this.isClosed = false;
|
|
9
|
+
}
|
|
10
|
+
handler(method, handler) {
|
|
11
|
+
this.handlers[method] = handler;
|
|
12
|
+
}
|
|
13
|
+
onMessage(callback) {
|
|
14
|
+
this.messageCallback = callback;
|
|
15
|
+
}
|
|
16
|
+
async handle(method, input) {
|
|
17
|
+
const handler = this.handlers[method];
|
|
18
|
+
if (!handler) {
|
|
19
|
+
throw new Error(`Handler for method ${method} not found`);
|
|
20
|
+
}
|
|
21
|
+
return handler(input);
|
|
22
|
+
}
|
|
23
|
+
response(id, result, error) {
|
|
24
|
+
if (id && !this.isClosed && this.child.send && this.child.connected) {
|
|
25
|
+
const responseMessage = {
|
|
26
|
+
type: 'rpc_response',
|
|
27
|
+
id,
|
|
28
|
+
result: error ? undefined : result,
|
|
29
|
+
error: error ? String(error) : undefined,
|
|
30
|
+
};
|
|
31
|
+
this.child.send(responseMessage);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
async init() {
|
|
35
|
+
this.child.on('message', (msg) => {
|
|
36
|
+
// Call generic message callback if registered
|
|
37
|
+
if (this.messageCallback) {
|
|
38
|
+
this.messageCallback(msg);
|
|
39
|
+
}
|
|
40
|
+
// Handle RPC requests specifically
|
|
41
|
+
if (msg && msg.type === 'rpc_request') {
|
|
42
|
+
const { id, method, args } = msg;
|
|
43
|
+
this.handle(method, args)
|
|
44
|
+
.then((result) => this.response(id, result, null))
|
|
45
|
+
.catch((error) => this.response(id, null, error));
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
this.child.on('exit', () => {
|
|
49
|
+
this.isClosed = true;
|
|
50
|
+
});
|
|
51
|
+
this.child.on('close', () => {
|
|
52
|
+
this.isClosed = true;
|
|
53
|
+
});
|
|
54
|
+
this.child.on('disconnect', () => {
|
|
55
|
+
this.isClosed = true;
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
close() {
|
|
59
|
+
this.isClosed = true;
|
|
60
|
+
this.messageCallback = undefined;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
exports.RpcProcessor = RpcProcessor;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { ChildProcess } from 'child_process';
|
|
2
|
+
import type { MessageCallback, RpcHandler, RpcProcessorInterface } from './process-communication/rpc-processor-interface';
|
|
3
|
+
export type RpcMessage = {
|
|
4
|
+
type: 'rpc_request';
|
|
5
|
+
id: string | undefined;
|
|
6
|
+
method: string;
|
|
7
|
+
args: unknown;
|
|
8
|
+
};
|
|
9
|
+
export declare class RpcStdinProcessor implements RpcProcessorInterface {
|
|
10
|
+
private child;
|
|
11
|
+
private handlers;
|
|
12
|
+
private messageCallback?;
|
|
13
|
+
private isClosed;
|
|
14
|
+
private rl?;
|
|
15
|
+
constructor(child: ChildProcess);
|
|
16
|
+
handler<TInput, TOutput = unknown>(method: string, handler: RpcHandler<TInput, TOutput>): void;
|
|
17
|
+
onMessage<T = unknown>(callback: MessageCallback<T>): void;
|
|
18
|
+
handle(method: string, input: unknown): Promise<any>;
|
|
19
|
+
private response;
|
|
20
|
+
init(): Promise<void>;
|
|
21
|
+
close(): void;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=step-handler-rpc-stdin-processor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"step-handler-rpc-stdin-processor.d.ts","sourceRoot":"","sources":["../../src/step-handler-rpc-stdin-processor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjD,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EACV,qBAAqB,EACtB,MAAM,iDAAiD,CAAA;AAExD,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,aAAa,CAAA;IACnB,EAAE,EAAE,MAAM,GAAG,SAAS,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,OAAO,CAAA;CACd,CAAA;AAED,qBAAa,iBAAkB,YAAW,qBAAqB;IAOjD,OAAO,CAAC,KAAK;IANzB,OAAO,CAAC,QAAQ,CAA2C;IAE3D,OAAO,CAAC,eAAe,CAAC,CAAsB;IAC9C,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,EAAE,CAAC,CAAoB;gBAEX,KAAK,EAAE,YAAY;IAEvC,OAAO,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC;IAIvF,SAAS,CAAC,CAAC,GAAG,OAAO,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,IAAI;IAIpD,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;IAQ3C,OAAO,CAAC,QAAQ;IAaV,IAAI;IAyCV,KAAK;CAON"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.RpcStdinProcessor = void 0;
|
|
7
|
+
const readline_1 = __importDefault(require("readline"));
|
|
8
|
+
class RpcStdinProcessor {
|
|
9
|
+
constructor(child) {
|
|
10
|
+
this.child = child;
|
|
11
|
+
this.handlers = {};
|
|
12
|
+
this.isClosed = false;
|
|
13
|
+
}
|
|
14
|
+
handler(method, handler) {
|
|
15
|
+
this.handlers[method] = handler;
|
|
16
|
+
}
|
|
17
|
+
onMessage(callback) {
|
|
18
|
+
this.messageCallback = callback;
|
|
19
|
+
}
|
|
20
|
+
async handle(method, input) {
|
|
21
|
+
const handler = this.handlers[method];
|
|
22
|
+
if (!handler) {
|
|
23
|
+
throw new Error(`Handler for method ${method} not found`);
|
|
24
|
+
}
|
|
25
|
+
return handler(input);
|
|
26
|
+
}
|
|
27
|
+
response(id, result, error) {
|
|
28
|
+
if (id && !this.isClosed && this.child.stdin && !this.child.killed) {
|
|
29
|
+
const responseMessage = {
|
|
30
|
+
type: 'rpc_response',
|
|
31
|
+
id,
|
|
32
|
+
result: error ? undefined : result,
|
|
33
|
+
error: error ? String(error) : undefined,
|
|
34
|
+
};
|
|
35
|
+
const messageStr = JSON.stringify(responseMessage);
|
|
36
|
+
this.child.stdin.write(messageStr + '\n');
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
async init() {
|
|
40
|
+
if (this.child.stdout) {
|
|
41
|
+
this.rl = readline_1.default.createInterface({
|
|
42
|
+
input: this.child.stdout,
|
|
43
|
+
crlfDelay: Infinity,
|
|
44
|
+
});
|
|
45
|
+
this.rl.on('line', (line) => {
|
|
46
|
+
try {
|
|
47
|
+
const msg = JSON.parse(line.trim());
|
|
48
|
+
// Call generic message callback if registered
|
|
49
|
+
if (this.messageCallback) {
|
|
50
|
+
this.messageCallback(msg);
|
|
51
|
+
}
|
|
52
|
+
// Handle RPC requests specifically
|
|
53
|
+
if (msg && msg.type === 'rpc_request') {
|
|
54
|
+
const { id, method, args } = msg;
|
|
55
|
+
this.handle(method, args)
|
|
56
|
+
.then((result) => this.response(id, result, null))
|
|
57
|
+
.catch((error) => this.response(id, null, error));
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
catch (error) {
|
|
61
|
+
console.error('Failed to parse RPC message:', error, 'Raw line:', line);
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
this.rl.on('close', () => {
|
|
65
|
+
this.isClosed = true;
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
this.child.on('exit', () => {
|
|
69
|
+
this.isClosed = true;
|
|
70
|
+
});
|
|
71
|
+
this.child.on('close', () => {
|
|
72
|
+
this.isClosed = true;
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
close() {
|
|
76
|
+
this.isClosed = true;
|
|
77
|
+
this.messageCallback = undefined;
|
|
78
|
+
if (this.rl) {
|
|
79
|
+
this.rl.close();
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
exports.RpcStdinProcessor = RpcStdinProcessor;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { EventAdapter } from './adapters/interfaces/event-adapter.interface';
|
|
2
|
+
import type { Motia } from './motia';
|
|
3
|
+
import type { EventConfig, Step } from './types';
|
|
4
|
+
export type MotiaEventManager = {
|
|
5
|
+
createHandler: (step: Step<EventConfig>) => void;
|
|
6
|
+
removeHandler: (step: Step<EventConfig>) => void;
|
|
7
|
+
};
|
|
8
|
+
export declare const createStepHandlers: (motia: Motia, eventAdapter: EventAdapter) => MotiaEventManager;
|
|
9
|
+
//# sourceMappingURL=step-handlers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"step-handlers.d.ts","sourceRoot":"","sources":["../../src/step-handlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAsB,MAAM,+CAA+C,CAAA;AAKrG,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,KAAK,EAAS,WAAW,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAGvD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,CAAA;IAChD,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,CAAA;CACjD,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,OAAO,KAAK,EAAE,cAAc,YAAY,KAAG,iBAwF7E,CAAA"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createStepHandlers = void 0;
|
|
4
|
+
const call_step_file_1 = require("./call-step-file");
|
|
5
|
+
const defaults_1 = require("./infrastructure-validator/defaults");
|
|
6
|
+
const validations_1 = require("./infrastructure-validator/validations");
|
|
7
|
+
const logger_1 = require("./logger");
|
|
8
|
+
const validate_event_input_1 = require("./validate-event-input");
|
|
9
|
+
const createStepHandlers = (motia, eventAdapter) => {
|
|
10
|
+
const eventSteps = motia.lockedData.eventSteps();
|
|
11
|
+
const handlerMap = new Map();
|
|
12
|
+
logger_1.globalLogger.debug(`[step handler] creating step handlers for ${eventSteps.length} steps`);
|
|
13
|
+
const removeLogger = (event) => {
|
|
14
|
+
const { logger, tracer, ...rest } = event;
|
|
15
|
+
return rest;
|
|
16
|
+
};
|
|
17
|
+
const createHandler = (step) => {
|
|
18
|
+
const { config, filePath } = step;
|
|
19
|
+
const { subscribes, name } = config;
|
|
20
|
+
logger_1.globalLogger.debug('[step handler] establishing step subscriptions', { filePath, step: step.config.name });
|
|
21
|
+
// ✅ Validate infrastructure config if present
|
|
22
|
+
if (config.infrastructure) {
|
|
23
|
+
logger_1.globalLogger.debug('[step handler] validating infrastructure config', {
|
|
24
|
+
step: name,
|
|
25
|
+
infrastructure: config.infrastructure,
|
|
26
|
+
});
|
|
27
|
+
const validationResult = (0, validations_1.validateInfrastructureConfig)(config.infrastructure);
|
|
28
|
+
if (!validationResult.success && validationResult.errors) {
|
|
29
|
+
logger_1.globalLogger.error('[step handler] Infrastructure configuration validation failed', {
|
|
30
|
+
step: name,
|
|
31
|
+
filePath,
|
|
32
|
+
errors: validationResult.errors,
|
|
33
|
+
});
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
logger_1.globalLogger.debug('[step handler] infrastructure config validated successfully', { step: name });
|
|
37
|
+
}
|
|
38
|
+
const queueConfig = (0, defaults_1.getQueueConfigWithDefaults)(config.infrastructure);
|
|
39
|
+
const handlers = [];
|
|
40
|
+
subscribes.forEach(async (subscribe) => {
|
|
41
|
+
const handler = async (event) => {
|
|
42
|
+
const { data, traceId, flows } = event;
|
|
43
|
+
const logger = event.logger
|
|
44
|
+
? event.logger.child({ step: step.config.name })
|
|
45
|
+
: motia.loggerFactory.create({ traceId, flows: flows || [], stepName: step.config.name });
|
|
46
|
+
const tracer = event.tracer
|
|
47
|
+
? event.tracer.child(step, logger)
|
|
48
|
+
: await motia.tracerFactory.attachToTrace(traceId, step, logger);
|
|
49
|
+
logger_1.globalLogger.debug('[step handler] received event', { event: removeLogger(event), step: name });
|
|
50
|
+
(0, validate_event_input_1.validateEventInput)(step, event, motia);
|
|
51
|
+
// Continue execution even if validation failed
|
|
52
|
+
await (0, call_step_file_1.callStepFile)({ step, data, traceId, tracer, logger, infrastructure: config.infrastructure }, motia);
|
|
53
|
+
};
|
|
54
|
+
const subscriptionHandle = await eventAdapter.subscribe(subscribe, name, handler, queueConfig);
|
|
55
|
+
handlers.push(subscriptionHandle);
|
|
56
|
+
});
|
|
57
|
+
handlerMap.set(filePath, handlers);
|
|
58
|
+
};
|
|
59
|
+
const removeHandler = (step) => {
|
|
60
|
+
const { filePath } = step;
|
|
61
|
+
const handlers = handlerMap.get(filePath);
|
|
62
|
+
if (handlers) {
|
|
63
|
+
handlers.forEach((subscriptionHandle) => {
|
|
64
|
+
eventAdapter.unsubscribe(subscriptionHandle);
|
|
65
|
+
logger_1.globalLogger.debug('[step handler] unsubscribed handler', {
|
|
66
|
+
filePath,
|
|
67
|
+
...subscriptionHandle,
|
|
68
|
+
step: step.config.name,
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
handlerMap.delete(filePath);
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
eventSteps.forEach(createHandler);
|
|
75
|
+
return { removeHandler, createHandler };
|
|
76
|
+
};
|
|
77
|
+
exports.createStepHandlers = createStepHandlers;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { Step } from './types';
|
|
2
|
+
export type ValidationSuccess = {
|
|
3
|
+
success: true;
|
|
4
|
+
};
|
|
5
|
+
export type ValidationError = {
|
|
6
|
+
success: false;
|
|
7
|
+
error: string;
|
|
8
|
+
errors?: Array<{
|
|
9
|
+
path: string;
|
|
10
|
+
message: string;
|
|
11
|
+
}>;
|
|
12
|
+
};
|
|
13
|
+
export type ValidationResult = ValidationSuccess | ValidationError;
|
|
14
|
+
export declare const validateStep: (step: Step) => ValidationResult;
|
|
15
|
+
//# sourceMappingURL=step-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"step-validator.d.ts","sourceRoot":"","sources":["../../src/step-validator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAuGnC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,IAAI,CAAA;CACd,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,KAAK,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAClD,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG,eAAe,CAAA;AAElE,eAAO,MAAM,YAAY,GAAI,MAAM,IAAI,KAAG,gBAiCzC,CAAA"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateStep = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const schemas_1 = require("./infrastructure-validator/schemas");
|
|
6
|
+
const objectSchema = zod_1.z.object({
|
|
7
|
+
type: zod_1.z.literal('object'),
|
|
8
|
+
properties: zod_1.z.record(zod_1.z.string(), zod_1.z.any()),
|
|
9
|
+
required: zod_1.z.array(zod_1.z.string()).optional(),
|
|
10
|
+
additionalProperties: zod_1.z.boolean().optional(),
|
|
11
|
+
description: zod_1.z.string().optional(),
|
|
12
|
+
title: zod_1.z.string().optional(),
|
|
13
|
+
});
|
|
14
|
+
const arraySchema = zod_1.z.object({
|
|
15
|
+
type: zod_1.z.literal('array'),
|
|
16
|
+
items: objectSchema,
|
|
17
|
+
description: zod_1.z.string().optional(),
|
|
18
|
+
title: zod_1.z.string().optional(),
|
|
19
|
+
});
|
|
20
|
+
const jsonSchema = zod_1.z.any().refine((data) => {
|
|
21
|
+
if (!data) {
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
else if (data.type === 'object') {
|
|
25
|
+
return objectSchema.parse(data);
|
|
26
|
+
}
|
|
27
|
+
else if (data.type === 'array') {
|
|
28
|
+
return arraySchema.parse(data);
|
|
29
|
+
}
|
|
30
|
+
return true;
|
|
31
|
+
});
|
|
32
|
+
const emits = zod_1.z.array(zod_1.z.union([
|
|
33
|
+
zod_1.z.string(),
|
|
34
|
+
zod_1.z
|
|
35
|
+
.object({
|
|
36
|
+
topic: zod_1.z.string(),
|
|
37
|
+
label: zod_1.z.string().optional(),
|
|
38
|
+
conditional: zod_1.z.boolean().optional(),
|
|
39
|
+
})
|
|
40
|
+
.strict(),
|
|
41
|
+
]));
|
|
42
|
+
const noopSchema = zod_1.z
|
|
43
|
+
.object({
|
|
44
|
+
type: zod_1.z.literal('noop'),
|
|
45
|
+
name: zod_1.z.string(),
|
|
46
|
+
description: zod_1.z.string().optional(),
|
|
47
|
+
virtualEmits: emits,
|
|
48
|
+
virtualSubscribes: zod_1.z.array(zod_1.z.string()),
|
|
49
|
+
flows: zod_1.z.array(zod_1.z.string()).optional(),
|
|
50
|
+
})
|
|
51
|
+
.strict();
|
|
52
|
+
const eventSchema = zod_1.z
|
|
53
|
+
.object({
|
|
54
|
+
type: zod_1.z.literal('event'),
|
|
55
|
+
name: zod_1.z.string(),
|
|
56
|
+
description: zod_1.z.string().optional(),
|
|
57
|
+
subscribes: zod_1.z.array(zod_1.z.string()),
|
|
58
|
+
emits: emits,
|
|
59
|
+
virtualEmits: emits.optional(),
|
|
60
|
+
virtualSubscribes: zod_1.z.array(zod_1.z.string()).optional(),
|
|
61
|
+
input: zod_1.z.union([jsonSchema, zod_1.z.object({}), zod_1.z.null()]).optional(),
|
|
62
|
+
flows: zod_1.z.array(zod_1.z.string()).optional(),
|
|
63
|
+
includeFiles: zod_1.z.array(zod_1.z.string()).optional(),
|
|
64
|
+
infrastructure: schemas_1.infrastructureSchema.optional(),
|
|
65
|
+
})
|
|
66
|
+
.strict();
|
|
67
|
+
const apiSchema = zod_1.z
|
|
68
|
+
.object({
|
|
69
|
+
type: zod_1.z.literal('api'),
|
|
70
|
+
name: zod_1.z.string(),
|
|
71
|
+
description: zod_1.z.string().optional(),
|
|
72
|
+
path: zod_1.z.string(),
|
|
73
|
+
method: zod_1.z.string(),
|
|
74
|
+
emits: emits,
|
|
75
|
+
virtualEmits: emits.optional(),
|
|
76
|
+
virtualSubscribes: zod_1.z.array(zod_1.z.string()).optional(),
|
|
77
|
+
flows: zod_1.z.array(zod_1.z.string()).optional(),
|
|
78
|
+
includeFiles: zod_1.z.array(zod_1.z.string()).optional(),
|
|
79
|
+
middleware: zod_1.z.array(zod_1.z.any()).optional(),
|
|
80
|
+
queryParams: zod_1.z.array(zod_1.z.object({ name: zod_1.z.string(), description: zod_1.z.string().optional() })).optional(),
|
|
81
|
+
bodySchema: zod_1.z.union([jsonSchema, zod_1.z.object({}), zod_1.z.null()]).optional(),
|
|
82
|
+
responseSchema: zod_1.z.record(zod_1.z.string(), jsonSchema).optional(),
|
|
83
|
+
})
|
|
84
|
+
.strict();
|
|
85
|
+
const cronSchema = zod_1.z
|
|
86
|
+
.object({
|
|
87
|
+
type: zod_1.z.literal('cron'),
|
|
88
|
+
name: zod_1.z.string(),
|
|
89
|
+
description: zod_1.z.string().optional(),
|
|
90
|
+
cron: zod_1.z.string(),
|
|
91
|
+
virtualEmits: emits.optional(),
|
|
92
|
+
virtualSubscribes: zod_1.z.array(zod_1.z.string()).optional(),
|
|
93
|
+
emits: emits,
|
|
94
|
+
flows: zod_1.z.array(zod_1.z.string()).optional(),
|
|
95
|
+
includeFiles: zod_1.z.array(zod_1.z.string()).optional(),
|
|
96
|
+
})
|
|
97
|
+
.strict();
|
|
98
|
+
const validateStep = (step) => {
|
|
99
|
+
try {
|
|
100
|
+
if (step.config.type === 'noop') {
|
|
101
|
+
noopSchema.parse(step.config);
|
|
102
|
+
}
|
|
103
|
+
else if (step.config.type === 'event') {
|
|
104
|
+
eventSchema.parse(step.config);
|
|
105
|
+
}
|
|
106
|
+
else if (step.config.type === 'api') {
|
|
107
|
+
apiSchema.parse(step.config);
|
|
108
|
+
}
|
|
109
|
+
else if (step.config.type === 'cron') {
|
|
110
|
+
cronSchema.parse(step.config);
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
return {
|
|
114
|
+
success: false,
|
|
115
|
+
error: 'Invalid step type',
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
return { success: true };
|
|
119
|
+
}
|
|
120
|
+
catch (error) {
|
|
121
|
+
if (error instanceof zod_1.z.ZodError) {
|
|
122
|
+
return {
|
|
123
|
+
success: false,
|
|
124
|
+
error: error.issues.map((err) => err.message).join(', '),
|
|
125
|
+
errors: error.issues.map((err) => ({ path: err.path.join('.'), message: err.message })),
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
// Handle unexpected errors
|
|
129
|
+
return {
|
|
130
|
+
success: false,
|
|
131
|
+
error: 'Unexpected validation error occurred',
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
};
|
|
135
|
+
exports.validateStep = validateStep;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ApiResponse, ApiRouteConfig, ApiRouteHandler } from '../types';
|
|
2
|
+
export declare const config: ApiRouteConfig;
|
|
3
|
+
type EmitData = {
|
|
4
|
+
topic: string;
|
|
5
|
+
data: Record<string, unknown>;
|
|
6
|
+
};
|
|
7
|
+
export declare const handler: ApiRouteHandler<EmitData, ApiResponse<200, {
|
|
8
|
+
success: true;
|
|
9
|
+
emitted: EmitData;
|
|
10
|
+
}>, EmitData>;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=emit.step.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"emit.step.d.ts","sourceRoot":"","sources":["../../../src/steps/emit.step.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAE5E,eAAO,MAAM,MAAM,EAAE,cAYpB,CAAA;AAED,KAAK,QAAQ,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAAA;AAEhE,eAAO,MAAM,OAAO,EAAE,eAAe,CACnC,QAAQ,EACR,WAAW,CAAC,GAAG,EAAE;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,CAAC,EACtD,QAAQ,CAWT,CAAA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handler = exports.config = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
exports.config = {
|
|
6
|
+
type: 'api',
|
|
7
|
+
name: 'Event Emitter',
|
|
8
|
+
description: 'System endpoint for emitting events',
|
|
9
|
+
path: '/emit',
|
|
10
|
+
method: 'POST',
|
|
11
|
+
emits: [], // Dynamic emissions
|
|
12
|
+
flows: ['_system'],
|
|
13
|
+
bodySchema: zod_1.z.object({
|
|
14
|
+
topic: zod_1.z.string(),
|
|
15
|
+
data: zod_1.z.record(zod_1.z.string(), zod_1.z.any()),
|
|
16
|
+
}),
|
|
17
|
+
};
|
|
18
|
+
const handler = async (req, { emit, logger }) => {
|
|
19
|
+
const { topic, data } = req.body;
|
|
20
|
+
logger.info('[Event Emitter] Emitting event', { topic, data });
|
|
21
|
+
await emit({ topic, data });
|
|
22
|
+
return {
|
|
23
|
+
status: 200,
|
|
24
|
+
body: { success: true, emitted: { topic, data } },
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
exports.handler = handler;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/steps/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAGpC,eAAO,MAAM,WAAW,EAAE,IAAI,EAO7B,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.systemSteps = void 0;
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
8
|
+
const emit_step_1 = require("./emit.step");
|
|
9
|
+
exports.systemSteps = [
|
|
10
|
+
{
|
|
11
|
+
// NOTE: this is the path of the file inside the dist folder
|
|
12
|
+
filePath: path_1.default.join(__dirname, 'emit.step.js'),
|
|
13
|
+
version: '1',
|
|
14
|
+
config: emit_step_1.config,
|
|
15
|
+
},
|
|
16
|
+
];
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { StreamAdapter } from '../adapters/interfaces/stream-adapter.interface';
|
|
2
|
+
import type { FlowConfig } from '../types/flows-config-types';
|
|
3
|
+
export declare class FlowsConfigStream extends StreamAdapter<FlowConfig> {
|
|
4
|
+
private readonly configPath;
|
|
5
|
+
private config;
|
|
6
|
+
constructor(configPath: string);
|
|
7
|
+
private getConfig;
|
|
8
|
+
private setConfig;
|
|
9
|
+
get(_: string, id: string): Promise<FlowConfig | null>;
|
|
10
|
+
delete(_: string): Promise<null>;
|
|
11
|
+
set(_: string, id: string, data: FlowConfig): Promise<FlowConfig>;
|
|
12
|
+
getGroup(): Promise<FlowConfig[]>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=flows-config-stream.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flows-config-stream.d.ts","sourceRoot":"","sources":["../../../src/streams/flows-config-stream.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAA;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAE7D,qBAAa,iBAAkB,SAAQ,aAAa,CAAC,UAAU,CAAC;IAGlD,OAAO,CAAC,QAAQ,CAAC,UAAU;IAFvC,OAAO,CAAC,MAAM,CAAmB;gBAEJ,UAAU,EAAE,MAAM;IAI/C,OAAO,CAAC,SAAS;IAajB,OAAO,CAAC,SAAS;IAKX,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;IAKzB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAUjE,QAAQ,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;CAGxC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.FlowsConfigStream = void 0;
|
|
7
|
+
const fs_1 = __importDefault(require("fs"));
|
|
8
|
+
const stream_adapter_interface_1 = require("../adapters/interfaces/stream-adapter.interface");
|
|
9
|
+
class FlowsConfigStream extends stream_adapter_interface_1.StreamAdapter {
|
|
10
|
+
constructor(configPath) {
|
|
11
|
+
super('__motia.flows-config');
|
|
12
|
+
this.configPath = configPath;
|
|
13
|
+
this.config = [];
|
|
14
|
+
}
|
|
15
|
+
getConfig() {
|
|
16
|
+
if (this.config.length === 0) {
|
|
17
|
+
if (fs_1.default.existsSync(this.configPath)) {
|
|
18
|
+
this.config = JSON.parse(fs_1.default.readFileSync(this.configPath, 'utf8') || '[]');
|
|
19
|
+
if (!Array.isArray(this.config)) {
|
|
20
|
+
this.config = [];
|
|
21
|
+
this.setConfig(this.config);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return this.config;
|
|
26
|
+
}
|
|
27
|
+
setConfig(config) {
|
|
28
|
+
this.config = config;
|
|
29
|
+
fs_1.default.writeFileSync(this.configPath, JSON.stringify(config, null, 2), 'utf8');
|
|
30
|
+
}
|
|
31
|
+
async get(_, id) {
|
|
32
|
+
const allFlowsConfig = this.getConfig();
|
|
33
|
+
return allFlowsConfig.find((flow) => flow.id === id) || null;
|
|
34
|
+
}
|
|
35
|
+
async delete(_) {
|
|
36
|
+
return null;
|
|
37
|
+
}
|
|
38
|
+
async set(_, id, data) {
|
|
39
|
+
const existingConfig = this.getConfig();
|
|
40
|
+
const updatedConfig = existingConfig.filter((item) => item.id !== id);
|
|
41
|
+
updatedConfig.push(data);
|
|
42
|
+
this.setConfig(updatedConfig);
|
|
43
|
+
return data;
|
|
44
|
+
}
|
|
45
|
+
async getGroup() {
|
|
46
|
+
return this.getConfig();
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
exports.FlowsConfigStream = FlowsConfigStream;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { StreamAdapter } from '../adapters/interfaces/stream-adapter.interface';
|
|
2
|
+
import type { LockedData } from '../locked-data';
|
|
3
|
+
import type { FlowResponse } from '../types/flows-types';
|
|
4
|
+
export declare class FlowsStream extends StreamAdapter<FlowResponse> {
|
|
5
|
+
private readonly lockedData;
|
|
6
|
+
constructor(lockedData: LockedData);
|
|
7
|
+
get(_: string, id: string): Promise<FlowResponse | null>;
|
|
8
|
+
delete(_: string): Promise<FlowResponse | null>;
|
|
9
|
+
set(_: string, __: string, data: FlowResponse): Promise<FlowResponse>;
|
|
10
|
+
getGroup(): Promise<FlowResponse[]>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=flows-stream.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flows-stream.d.ts","sourceRoot":"","sources":["../../../src/streams/flows-stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAA;AAE/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEhD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAExD,qBAAa,WAAY,SAAQ,aAAa,CAAC,YAAY,CAAC;IAC9C,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,UAAU;IAI7C,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAUxD,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAI/C,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAIrE,QAAQ,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;CAS1C"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FlowsStream = void 0;
|
|
4
|
+
const stream_adapter_interface_1 = require("../adapters/interfaces/stream-adapter.interface");
|
|
5
|
+
const flows_helper_1 = require("../helper/flows-helper");
|
|
6
|
+
const motia_1 = require("../motia");
|
|
7
|
+
class FlowsStream extends stream_adapter_interface_1.StreamAdapter {
|
|
8
|
+
constructor(lockedData) {
|
|
9
|
+
super('__motia.flows');
|
|
10
|
+
this.lockedData = lockedData;
|
|
11
|
+
}
|
|
12
|
+
async get(_, id) {
|
|
13
|
+
const flow = this.lockedData.flows[id];
|
|
14
|
+
if (!flow) {
|
|
15
|
+
return null;
|
|
16
|
+
}
|
|
17
|
+
return (0, flows_helper_1.generateFlow)(id, flow.steps);
|
|
18
|
+
}
|
|
19
|
+
async delete(_) {
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
22
|
+
async set(_, __, data) {
|
|
23
|
+
return data;
|
|
24
|
+
}
|
|
25
|
+
async getGroup() {
|
|
26
|
+
/**
|
|
27
|
+
* Get list should receive a groupId argument but that's irrelevant for this stream
|
|
28
|
+
* since we only have one group of flows.
|
|
29
|
+
*/
|
|
30
|
+
return Object.entries(this.lockedData.flows)
|
|
31
|
+
.map(([id, flow]) => (0, flows_helper_1.generateFlow)(id, flow.steps))
|
|
32
|
+
.filter((flow) => flow.id !== motia_1.PLUGIN_FLOW_ID);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.FlowsStream = FlowsStream;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { RedisClientType } from 'redis';
|
|
2
|
+
import { StreamAdapter } from '../adapters/interfaces/stream-adapter.interface';
|
|
3
|
+
import type { BaseStreamItem, StateStreamEvent } from '../types-stream';
|
|
4
|
+
export type Log = {
|
|
5
|
+
id: string;
|
|
6
|
+
level: string;
|
|
7
|
+
time: number;
|
|
8
|
+
msg: string;
|
|
9
|
+
traceId: string;
|
|
10
|
+
flows: string[];
|
|
11
|
+
[key: string]: any;
|
|
12
|
+
};
|
|
13
|
+
export declare class RedisLogsStream extends StreamAdapter<Log> {
|
|
14
|
+
private client;
|
|
15
|
+
readonly keyPrefix = "motia:logs:";
|
|
16
|
+
constructor(client: RedisClientType);
|
|
17
|
+
private makeLogKey;
|
|
18
|
+
private makeChannelKey;
|
|
19
|
+
private makeLogId;
|
|
20
|
+
private scanKeys;
|
|
21
|
+
get(groupId: string, id: string): Promise<BaseStreamItem<Log> | null>;
|
|
22
|
+
set(groupId: string, id: string, data: Log): Promise<BaseStreamItem<Log>>;
|
|
23
|
+
delete(groupId: string, id: string): Promise<BaseStreamItem<Log> | null>;
|
|
24
|
+
getGroup(groupId: string): Promise<BaseStreamItem<Log>[]>;
|
|
25
|
+
send<T>(channel: {
|
|
26
|
+
groupId: string;
|
|
27
|
+
id: string;
|
|
28
|
+
}, event: StateStreamEvent<T>): Promise<void>;
|
|
29
|
+
clear(groupId: string): Promise<void>;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=redis-logs-stream.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redis-logs-stream.d.ts","sourceRoot":"","sources":["../../../src/streams/redis-logs-stream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AAE5C,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAA;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAEvE,MAAM,MAAM,GAAG,GAAG;IAChB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB,CAAA;AAID,qBAAa,eAAgB,SAAQ,aAAa,CAAC,GAAG,CAAC;IACrD,OAAO,CAAC,MAAM,CAAiB;IAC/B,QAAQ,CAAC,SAAS,iBAAgB;gBAEtB,MAAM,EAAE,eAAe;IAKnC,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,SAAS;YAIH,QAAQ;IAgBhB,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IAMrE,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IAgBzE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IAaxE,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;IAazD,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5F,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAQ5C"}
|