@mantajs/core 0.1.6 → 0.2.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/auth-mock.d.ts +44 -0
- package/dist/adapters/auth-mock.d.ts.map +1 -0
- package/dist/adapters/auth-mock.js +160 -0
- package/dist/adapters/auth-mock.js.map +1 -0
- package/dist/adapters/cache-memory.d.ts +11 -0
- package/dist/adapters/cache-memory.d.ts.map +1 -0
- package/dist/adapters/cache-memory.js +32 -0
- package/dist/adapters/cache-memory.js.map +1 -0
- package/dist/adapters/database-memory.d.ts +24 -0
- package/dist/adapters/database-memory.d.ts.map +1 -0
- package/dist/adapters/database-memory.js +141 -0
- package/dist/adapters/database-memory.js.map +1 -0
- package/dist/adapters/eventbus-memory.d.ts +37 -0
- package/dist/adapters/eventbus-memory.d.ts.map +1 -0
- package/dist/adapters/eventbus-memory.js +166 -0
- package/dist/adapters/eventbus-memory.js.map +1 -0
- package/dist/adapters/file-memory.d.ts +24 -0
- package/dist/adapters/file-memory.d.ts.map +1 -0
- package/dist/adapters/file-memory.js +77 -0
- package/dist/adapters/file-memory.js.map +1 -0
- package/dist/adapters/http-memory.d.ts +23 -0
- package/dist/adapters/http-memory.d.ts.map +1 -0
- package/dist/adapters/http-memory.js +149 -0
- package/dist/adapters/http-memory.js.map +1 -0
- package/dist/adapters/index.d.ts +14 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +15 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/job-scheduler-memory.d.ts +20 -0
- package/dist/adapters/job-scheduler-memory.d.ts.map +1 -0
- package/dist/adapters/job-scheduler-memory.js +103 -0
- package/dist/adapters/job-scheduler-memory.js.map +1 -0
- package/dist/adapters/locking-memory.d.ts +20 -0
- package/dist/adapters/locking-memory.d.ts.map +1 -0
- package/dist/adapters/locking-memory.js +85 -0
- package/dist/adapters/locking-memory.js.map +1 -0
- package/dist/adapters/logger-test.d.ts +30 -0
- package/dist/adapters/logger-test.d.ts.map +1 -0
- package/dist/adapters/logger-test.js +77 -0
- package/dist/adapters/logger-test.js.map +1 -0
- package/dist/adapters/notification-memory.d.ts +27 -0
- package/dist/adapters/notification-memory.d.ts.map +1 -0
- package/dist/adapters/notification-memory.js +69 -0
- package/dist/adapters/notification-memory.js.map +1 -0
- package/dist/adapters/relational-query-memory.d.ts +47 -0
- package/dist/adapters/relational-query-memory.d.ts.map +1 -0
- package/dist/adapters/relational-query-memory.js +263 -0
- package/dist/adapters/relational-query-memory.js.map +1 -0
- package/dist/adapters/repository-factory-memory.d.ts +17 -0
- package/dist/adapters/repository-factory-memory.d.ts.map +1 -0
- package/dist/adapters/repository-factory-memory.js +32 -0
- package/dist/adapters/repository-factory-memory.js.map +1 -0
- package/dist/adapters/repository-memory.d.ts +30 -0
- package/dist/adapters/repository-memory.d.ts.map +1 -0
- package/dist/adapters/repository-memory.js +183 -0
- package/dist/adapters/repository-memory.js.map +1 -0
- package/dist/ai/index.d.ts +53 -0
- package/dist/ai/index.d.ts.map +1 -0
- package/dist/ai/index.js +48 -0
- package/dist/ai/index.js.map +1 -0
- package/dist/app/index.d.ts +97 -0
- package/dist/app/index.d.ts.map +1 -0
- package/dist/app/index.js +217 -0
- package/dist/app/index.js.map +1 -0
- package/dist/app/request-context.d.ts +35 -0
- package/dist/app/request-context.d.ts.map +1 -0
- package/dist/app/request-context.js +32 -0
- package/dist/app/request-context.js.map +1 -0
- package/dist/auth/auth-module-service.d.ts +62 -0
- package/dist/auth/auth-module-service.d.ts.map +1 -0
- package/dist/auth/auth-module-service.js +210 -0
- package/dist/auth/auth-module-service.js.map +1 -0
- package/dist/auth/index.d.ts +7 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +5 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/middleware.d.ts +19 -0
- package/dist/auth/middleware.d.ts.map +1 -0
- package/dist/auth/middleware.js +61 -0
- package/dist/auth/middleware.js.map +1 -0
- package/dist/auth/models/auth-identity.d.ts +11 -0
- package/dist/auth/models/auth-identity.d.ts.map +1 -0
- package/dist/auth/models/auth-identity.js +12 -0
- package/dist/auth/models/auth-identity.js.map +1 -0
- package/dist/auth/providers/emailpass.d.ts +7 -0
- package/dist/auth/providers/emailpass.d.ts.map +1 -0
- package/dist/auth/providers/emailpass.js +94 -0
- package/dist/auth/providers/emailpass.js.map +1 -0
- package/dist/auth/providers/types.d.ts +66 -0
- package/dist/auth/providers/types.d.ts.map +1 -0
- package/dist/auth/providers/types.js +3 -0
- package/dist/auth/providers/types.js.map +1 -0
- package/dist/auth/types.d.ts +36 -0
- package/dist/auth/types.d.ts.map +1 -0
- package/dist/auth/types.js +3 -0
- package/dist/auth/types.js.map +1 -0
- package/dist/command/define-command-graph.d.ts +63 -0
- package/dist/command/define-command-graph.d.ts.map +1 -0
- package/dist/command/define-command-graph.js +80 -0
- package/dist/command/define-command-graph.js.map +1 -0
- package/dist/command/dml-to-zod.d.ts +34 -0
- package/dist/command/dml-to-zod.d.ts.map +1 -0
- package/dist/command/dml-to-zod.js +140 -0
- package/dist/command/dml-to-zod.js.map +1 -0
- package/dist/command/generate-entity-commands.d.ts +68 -0
- package/dist/command/generate-entity-commands.d.ts.map +1 -0
- package/dist/command/generate-entity-commands.js +350 -0
- package/dist/command/generate-entity-commands.js.map +1 -0
- package/dist/command/index.d.ts +54 -0
- package/dist/command/index.d.ts.map +1 -0
- package/dist/command/index.js +338 -0
- package/dist/command/index.js.map +1 -0
- package/dist/command/types.d.ts +131 -0
- package/dist/command/types.d.ts.map +1 -0
- package/dist/command/types.js +2 -0
- package/dist/command/types.js.map +1 -0
- package/dist/config/built-in-presets.d.ts +20 -0
- package/dist/config/built-in-presets.d.ts.map +1 -0
- package/dist/config/built-in-presets.js +70 -0
- package/dist/config/built-in-presets.js.map +1 -0
- package/dist/config/config-manager.d.ts +117 -0
- package/dist/config/config-manager.d.ts.map +1 -0
- package/dist/config/config-manager.js +245 -0
- package/dist/config/config-manager.js.map +1 -0
- package/dist/config/define-config.d.ts +20 -0
- package/dist/config/define-config.d.ts.map +1 -0
- package/dist/config/define-config.js +64 -0
- package/dist/config/define-config.js.map +1 -0
- package/dist/config/feature-flags.d.ts +48 -0
- package/dist/config/feature-flags.d.ts.map +1 -0
- package/dist/config/feature-flags.js +97 -0
- package/dist/config/feature-flags.js.map +1 -0
- package/dist/config/index.d.ts +9 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +8 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/presets.d.ts +38 -0
- package/dist/config/presets.d.ts.map +1 -0
- package/dist/config/presets.js +29 -0
- package/dist/config/presets.js.map +1 -0
- package/dist/config/types.d.ts +707 -0
- package/dist/config/types.d.ts.map +1 -0
- package/dist/config/types.js +112 -0
- package/dist/config/types.js.map +1 -0
- package/dist/context/index.d.ts +95 -0
- package/dist/context/index.d.ts.map +1 -0
- package/dist/context/index.js +26 -0
- package/dist/context/index.js.map +1 -0
- package/dist/context/registry.d.ts +32 -0
- package/dist/context/registry.d.ts.map +1 -0
- package/dist/context/registry.js +142 -0
- package/dist/context/registry.js.map +1 -0
- package/dist/db/index.d.ts +2 -0
- package/dist/db/index.d.ts.map +1 -0
- package/dist/db/index.js +4 -0
- package/dist/db/index.js.map +1 -0
- package/dist/db/schema.d.ts +839 -0
- package/dist/db/schema.d.ts.map +1 -0
- package/dist/db/schema.js +106 -0
- package/dist/db/schema.js.map +1 -0
- package/dist/dml/entity.d.ts +132 -0
- package/dist/dml/entity.d.ts.map +1 -0
- package/dist/dml/entity.js +110 -0
- package/dist/dml/entity.js.map +1 -0
- package/dist/dml/from-zod.d.ts +13 -0
- package/dist/dml/from-zod.d.ts.map +1 -0
- package/dist/dml/from-zod.js +81 -0
- package/dist/dml/from-zod.js.map +1 -0
- package/dist/dml/generator/index.d.ts +62 -0
- package/dist/dml/generator/index.d.ts.map +1 -0
- package/dist/dml/generator/index.js +208 -0
- package/dist/dml/generator/index.js.map +1 -0
- package/dist/dml/index.d.ts +11 -0
- package/dist/dml/index.d.ts.map +1 -0
- package/dist/dml/index.js +13 -0
- package/dist/dml/index.js.map +1 -0
- package/dist/dml/infer.d.ts +36 -0
- package/dist/dml/infer.d.ts.map +1 -0
- package/dist/dml/infer.js +5 -0
- package/dist/dml/infer.js.map +1 -0
- package/dist/dml/model.d.ts +58 -0
- package/dist/dml/model.d.ts.map +1 -0
- package/dist/dml/model.js +95 -0
- package/dist/dml/model.js.map +1 -0
- package/dist/dml/modifiers.d.ts +9 -0
- package/dist/dml/modifiers.d.ts.map +1 -0
- package/dist/dml/modifiers.js +25 -0
- package/dist/dml/modifiers.js.map +1 -0
- package/dist/dml/properties/array.d.ts +7 -0
- package/dist/dml/properties/array.d.ts.map +1 -0
- package/dist/dml/properties/array.js +5 -0
- package/dist/dml/properties/array.js.map +1 -0
- package/dist/dml/properties/autoincrement.d.ts +7 -0
- package/dist/dml/properties/autoincrement.d.ts.map +1 -0
- package/dist/dml/properties/autoincrement.js +5 -0
- package/dist/dml/properties/autoincrement.js.map +1 -0
- package/dist/dml/properties/base.d.ts +124 -0
- package/dist/dml/properties/base.d.ts.map +1 -0
- package/dist/dml/properties/base.js +76 -0
- package/dist/dml/properties/base.js.map +1 -0
- package/dist/dml/properties/big-number.d.ts +7 -0
- package/dist/dml/properties/big-number.d.ts.map +1 -0
- package/dist/dml/properties/big-number.js +5 -0
- package/dist/dml/properties/big-number.js.map +1 -0
- package/dist/dml/properties/boolean.d.ts +7 -0
- package/dist/dml/properties/boolean.d.ts.map +1 -0
- package/dist/dml/properties/boolean.js +5 -0
- package/dist/dml/properties/boolean.js.map +1 -0
- package/dist/dml/properties/computed.d.ts +9 -0
- package/dist/dml/properties/computed.d.ts.map +1 -0
- package/dist/dml/properties/computed.js +22 -0
- package/dist/dml/properties/computed.js.map +1 -0
- package/dist/dml/properties/date-time.d.ts +7 -0
- package/dist/dml/properties/date-time.d.ts.map +1 -0
- package/dist/dml/properties/date-time.js +5 -0
- package/dist/dml/properties/date-time.js.map +1 -0
- package/dist/dml/properties/enum.d.ts +12 -0
- package/dist/dml/properties/enum.d.ts.map +1 -0
- package/dist/dml/properties/enum.js +14 -0
- package/dist/dml/properties/enum.js.map +1 -0
- package/dist/dml/properties/float.d.ts +7 -0
- package/dist/dml/properties/float.d.ts.map +1 -0
- package/dist/dml/properties/float.js +5 -0
- package/dist/dml/properties/float.js.map +1 -0
- package/dist/dml/properties/index.d.ts +15 -0
- package/dist/dml/properties/index.d.ts.map +1 -0
- package/dist/dml/properties/index.js +15 -0
- package/dist/dml/properties/index.js.map +1 -0
- package/dist/dml/properties/json.d.ts +7 -0
- package/dist/dml/properties/json.d.ts.map +1 -0
- package/dist/dml/properties/json.js +6 -0
- package/dist/dml/properties/json.js.map +1 -0
- package/dist/dml/properties/nullable.d.ts +23 -0
- package/dist/dml/properties/nullable.d.ts.map +1 -0
- package/dist/dml/properties/nullable.js +46 -0
- package/dist/dml/properties/nullable.js.map +1 -0
- package/dist/dml/properties/number.d.ts +10 -0
- package/dist/dml/properties/number.d.ts.map +1 -0
- package/dist/dml/properties/number.js +13 -0
- package/dist/dml/properties/number.js.map +1 -0
- package/dist/dml/properties/primary-key.d.ts +14 -0
- package/dist/dml/properties/primary-key.d.ts.map +1 -0
- package/dist/dml/properties/primary-key.js +23 -0
- package/dist/dml/properties/primary-key.js.map +1 -0
- package/dist/dml/properties/text.d.ts +15 -0
- package/dist/dml/properties/text.d.ts.map +1 -0
- package/dist/dml/properties/text.js +19 -0
- package/dist/dml/properties/text.js.map +1 -0
- package/dist/dml/relations/belongs-to.d.ts +20 -0
- package/dist/dml/relations/belongs-to.d.ts.map +1 -0
- package/dist/dml/relations/belongs-to.js +29 -0
- package/dist/dml/relations/belongs-to.js.map +1 -0
- package/dist/dml/relations/has-many.d.ts +16 -0
- package/dist/dml/relations/has-many.d.ts.map +1 -0
- package/dist/dml/relations/has-many.js +25 -0
- package/dist/dml/relations/has-many.js.map +1 -0
- package/dist/dml/relations/has-one.d.ts +26 -0
- package/dist/dml/relations/has-one.d.ts.map +1 -0
- package/dist/dml/relations/has-one.js +46 -0
- package/dist/dml/relations/has-one.js.map +1 -0
- package/dist/dml/relations/many-to-many.d.ts +9 -0
- package/dist/dml/relations/many-to-many.d.ts.map +1 -0
- package/dist/dml/relations/many-to-many.js +11 -0
- package/dist/dml/relations/many-to-many.js.map +1 -0
- package/dist/errors/manta-error.d.ts +68 -0
- package/dist/errors/manta-error.d.ts.map +1 -0
- package/dist/errors/manta-error.js +80 -0
- package/dist/errors/manta-error.js.map +1 -0
- package/dist/events/index.d.ts +3 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +3 -0
- package/dist/events/index.js.map +1 -0
- package/dist/events/message-aggregator.d.ts +25 -0
- package/dist/events/message-aggregator.d.ts.map +1 -0
- package/dist/events/message-aggregator.js +35 -0
- package/dist/events/message-aggregator.js.map +1 -0
- package/dist/events/types.d.ts +42 -0
- package/dist/events/types.d.ts.map +1 -0
- package/dist/events/types.js +3 -0
- package/dist/events/types.js.map +1 -0
- package/dist/index.d.ts +55 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +53 -0
- package/dist/index.js.map +1 -0
- package/dist/job/index.d.ts +52 -0
- package/dist/job/index.d.ts.map +1 -0
- package/dist/job/index.js +31 -0
- package/dist/job/index.js.map +1 -0
- package/dist/link/index.d.ts +97 -0
- package/dist/link/index.d.ts.map +1 -0
- package/dist/link/index.js +185 -0
- package/dist/link/index.js.map +1 -0
- package/dist/middleware/define-middleware.d.ts +54 -0
- package/dist/middleware/define-middleware.d.ts.map +1 -0
- package/dist/middleware/define-middleware.js +40 -0
- package/dist/middleware/define-middleware.js.map +1 -0
- package/dist/middleware/index.d.ts +56 -0
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/index.js +50 -0
- package/dist/middleware/index.js.map +1 -0
- package/dist/module/index.d.ts +56 -0
- package/dist/module/index.d.ts.map +1 -0
- package/dist/module/index.js +52 -0
- package/dist/module/index.js.map +1 -0
- package/dist/module/versioning.d.ts +27 -0
- package/dist/module/versioning.d.ts.map +1 -0
- package/dist/module/versioning.js +64 -0
- package/dist/module/versioning.js.map +1 -0
- package/dist/naming.d.ts +39 -0
- package/dist/naming.d.ts.map +1 -0
- package/dist/naming.js +95 -0
- package/dist/naming.js.map +1 -0
- package/dist/ports/analytics.d.ts +7 -0
- package/dist/ports/analytics.d.ts.map +1 -0
- package/dist/ports/analytics.js +3 -0
- package/dist/ports/analytics.js.map +1 -0
- package/dist/ports/auth.d.ts +27 -0
- package/dist/ports/auth.d.ts.map +1 -0
- package/dist/ports/auth.js +3 -0
- package/dist/ports/auth.js.map +1 -0
- package/dist/ports/cache.d.ts +35 -0
- package/dist/ports/cache.d.ts.map +1 -0
- package/dist/ports/cache.js +3 -0
- package/dist/ports/cache.js.map +1 -0
- package/dist/ports/database.d.ts +40 -0
- package/dist/ports/database.d.ts.map +1 -0
- package/dist/ports/database.js +3 -0
- package/dist/ports/database.js.map +1 -0
- package/dist/ports/event-bus.d.ts +85 -0
- package/dist/ports/event-bus.d.ts.map +1 -0
- package/dist/ports/event-bus.js +3 -0
- package/dist/ports/event-bus.js.map +1 -0
- package/dist/ports/file.d.ts +62 -0
- package/dist/ports/file.d.ts.map +1 -0
- package/dist/ports/file.js +3 -0
- package/dist/ports/file.js.map +1 -0
- package/dist/ports/http.d.ts +20 -0
- package/dist/ports/http.d.ts.map +1 -0
- package/dist/ports/http.js +3 -0
- package/dist/ports/http.js.map +1 -0
- package/dist/ports/in-memory-progress-channel.d.ts +9 -0
- package/dist/ports/in-memory-progress-channel.d.ts.map +1 -0
- package/dist/ports/in-memory-progress-channel.js +19 -0
- package/dist/ports/in-memory-progress-channel.js.map +1 -0
- package/dist/ports/in-memory-queue.d.ts +24 -0
- package/dist/ports/in-memory-queue.d.ts.map +1 -0
- package/dist/ports/in-memory-queue.js +63 -0
- package/dist/ports/in-memory-queue.js.map +1 -0
- package/dist/ports/index.d.ts +27 -0
- package/dist/ports/index.d.ts.map +1 -0
- package/dist/ports/index.js +6 -0
- package/dist/ports/index.js.map +1 -0
- package/dist/ports/job-scheduler.d.ts +42 -0
- package/dist/ports/job-scheduler.d.ts.map +1 -0
- package/dist/ports/job-scheduler.js +3 -0
- package/dist/ports/job-scheduler.js.map +1 -0
- package/dist/ports/locking.d.ts +43 -0
- package/dist/ports/locking.d.ts.map +1 -0
- package/dist/ports/locking.js +3 -0
- package/dist/ports/locking.js.map +1 -0
- package/dist/ports/logger.d.ts +65 -0
- package/dist/ports/logger.d.ts.map +1 -0
- package/dist/ports/logger.js +3 -0
- package/dist/ports/logger.js.map +1 -0
- package/dist/ports/notification.d.ts +71 -0
- package/dist/ports/notification.d.ts.map +1 -0
- package/dist/ports/notification.js +3 -0
- package/dist/ports/notification.js.map +1 -0
- package/dist/ports/progress-channel.d.ts +46 -0
- package/dist/ports/progress-channel.d.ts.map +1 -0
- package/dist/ports/progress-channel.js +6 -0
- package/dist/ports/progress-channel.js.map +1 -0
- package/dist/ports/queue.d.ts +21 -0
- package/dist/ports/queue.d.ts.map +1 -0
- package/dist/ports/queue.js +15 -0
- package/dist/ports/queue.js.map +1 -0
- package/dist/ports/relational-query.d.ts +37 -0
- package/dist/ports/relational-query.d.ts.map +1 -0
- package/dist/ports/relational-query.js +3 -0
- package/dist/ports/relational-query.js.map +1 -0
- package/dist/ports/repository-factory.d.ts +21 -0
- package/dist/ports/repository-factory.d.ts.map +1 -0
- package/dist/ports/repository-factory.js +4 -0
- package/dist/ports/repository-factory.js.map +1 -0
- package/dist/ports/repository.d.ts +73 -0
- package/dist/ports/repository.d.ts.map +1 -0
- package/dist/ports/repository.js +3 -0
- package/dist/ports/repository.js.map +1 -0
- package/dist/ports/schema-generator.d.ts +15 -0
- package/dist/ports/schema-generator.d.ts.map +1 -0
- package/dist/ports/schema-generator.js +4 -0
- package/dist/ports/schema-generator.js.map +1 -0
- package/dist/ports/search.d.ts +7 -0
- package/dist/ports/search.d.ts.map +1 -0
- package/dist/ports/search.js +3 -0
- package/dist/ports/search.js.map +1 -0
- package/dist/ports/types.d.ts +112 -0
- package/dist/ports/types.d.ts.map +1 -0
- package/dist/ports/types.js +26 -0
- package/dist/ports/types.js.map +1 -0
- package/dist/ports/workflow-store.d.ts +111 -0
- package/dist/ports/workflow-store.d.ts.map +1 -0
- package/dist/ports/workflow-store.js +5 -0
- package/dist/ports/workflow-store.js.map +1 -0
- package/dist/query/define-query-graph.d.ts +55 -0
- package/dist/query/define-query-graph.d.ts.map +1 -0
- package/dist/query/define-query-graph.js +59 -0
- package/dist/query/define-query-graph.js.map +1 -0
- package/dist/query/define-query.d.ts +79 -0
- package/dist/query/define-query.d.ts.map +1 -0
- package/dist/query/define-query.js +77 -0
- package/dist/query/define-query.js.map +1 -0
- package/dist/query/extend-query-graph.d.ts +36 -0
- package/dist/query/extend-query-graph.d.ts.map +1 -0
- package/dist/query/extend-query-graph.js +34 -0
- package/dist/query/extend-query-graph.js.map +1 -0
- package/dist/query/index.d.ts +181 -0
- package/dist/query/index.d.ts.map +1 -0
- package/dist/query/index.js +288 -0
- package/dist/query/index.js.map +1 -0
- package/dist/service/define.d.ts +97 -0
- package/dist/service/define.d.ts.map +1 -0
- package/dist/service/define.js +45 -0
- package/dist/service/define.js.map +1 -0
- package/dist/service/index.d.ts +52 -0
- package/dist/service/index.d.ts.map +1 -0
- package/dist/service/index.js +281 -0
- package/dist/service/index.js.map +1 -0
- package/dist/service/instantiate.d.ts +15 -0
- package/dist/service/instantiate.d.ts.map +1 -0
- package/dist/service/instantiate.js +143 -0
- package/dist/service/instantiate.js.map +1 -0
- package/dist/service/snapshot-repository.d.ts +31 -0
- package/dist/service/snapshot-repository.d.ts.map +1 -0
- package/dist/service/snapshot-repository.js +114 -0
- package/dist/service/snapshot-repository.js.map +1 -0
- package/dist/service/types.d.ts +39 -0
- package/dist/service/types.d.ts.map +1 -0
- package/dist/service/types.js +3 -0
- package/dist/service/types.js.map +1 -0
- package/dist/strict-mode/index.d.ts +42 -0
- package/dist/strict-mode/index.d.ts.map +1 -0
- package/dist/strict-mode/index.js +84 -0
- package/dist/strict-mode/index.js.map +1 -0
- package/dist/subscriber/index.d.ts +117 -0
- package/dist/subscriber/index.d.ts.map +1 -0
- package/dist/subscriber/index.js +76 -0
- package/dist/subscriber/index.js.map +1 -0
- package/dist/testing/relational-query-suite.d.ts +22 -0
- package/dist/testing/relational-query-suite.d.ts.map +1 -0
- package/dist/testing/relational-query-suite.js +233 -0
- package/dist/testing/relational-query-suite.js.map +1 -0
- package/dist/user/auto-routes.d.ts +32 -0
- package/dist/user/auto-routes.d.ts.map +1 -0
- package/dist/user/auto-routes.js +424 -0
- package/dist/user/auto-routes.js.map +1 -0
- package/dist/user/define-user.d.ts +54 -0
- package/dist/user/define-user.d.ts.map +1 -0
- package/dist/user/define-user.js +103 -0
- package/dist/user/define-user.js.map +1 -0
- package/dist/user/index.d.ts +7 -0
- package/dist/user/index.d.ts.map +1 -0
- package/dist/user/index.js +5 -0
- package/dist/user/index.js.map +1 -0
- package/dist/user/models/user.d.ts +15 -0
- package/dist/user/models/user.d.ts.map +1 -0
- package/dist/user/models/user.js +16 -0
- package/dist/user/models/user.js.map +1 -0
- package/dist/user/user-module-service.d.ts +55 -0
- package/dist/user/user-module-service.d.ts.map +1 -0
- package/dist/user/user-module-service.js +100 -0
- package/dist/user/user-module-service.js.map +1 -0
- package/dist/workflows/ai-step.d.ts +2 -0
- package/dist/workflows/ai-step.d.ts.map +1 -0
- package/dist/workflows/ai-step.js +54 -0
- package/dist/workflows/ai-step.js.map +1 -0
- package/dist/workflows/create-step.d.ts +16 -0
- package/dist/workflows/create-step.d.ts.map +1 -0
- package/dist/workflows/create-step.js +194 -0
- package/dist/workflows/create-step.js.map +1 -0
- package/dist/workflows/create-workflow.d.ts +16 -0
- package/dist/workflows/create-workflow.d.ts.map +1 -0
- package/dist/workflows/create-workflow.js +21 -0
- package/dist/workflows/create-workflow.js.map +1 -0
- package/dist/workflows/define-workflow.d.ts +55 -0
- package/dist/workflows/define-workflow.d.ts.map +1 -0
- package/dist/workflows/define-workflow.js +72 -0
- package/dist/workflows/define-workflow.js.map +1 -0
- package/dist/workflows/emit-event-step.d.ts +17 -0
- package/dist/workflows/emit-event-step.d.ts.map +1 -0
- package/dist/workflows/emit-event-step.js +46 -0
- package/dist/workflows/emit-event-step.js.map +1 -0
- package/dist/workflows/for-each.d.ts +6 -0
- package/dist/workflows/for-each.d.ts.map +1 -0
- package/dist/workflows/for-each.js +79 -0
- package/dist/workflows/for-each.js.map +1 -0
- package/dist/workflows/index.d.ts +15 -0
- package/dist/workflows/index.d.ts.map +1 -0
- package/dist/workflows/index.js +12 -0
- package/dist/workflows/index.js.map +1 -0
- package/dist/workflows/manager.d.ts +99 -0
- package/dist/workflows/manager.d.ts.map +1 -0
- package/dist/workflows/manager.js +450 -0
- package/dist/workflows/manager.js.map +1 -0
- package/dist/workflows/orphan-reaper.d.ts +50 -0
- package/dist/workflows/orphan-reaper.d.ts.map +1 -0
- package/dist/workflows/orphan-reaper.js +69 -0
- package/dist/workflows/orphan-reaper.js.map +1 -0
- package/dist/workflows/progress-helper.d.ts +20 -0
- package/dist/workflows/progress-helper.d.ts.map +1 -0
- package/dist/workflows/progress-helper.js +48 -0
- package/dist/workflows/progress-helper.js.map +1 -0
- package/dist/workflows/step.d.ts +103 -0
- package/dist/workflows/step.d.ts.map +1 -0
- package/dist/workflows/step.js +949 -0
- package/dist/workflows/step.js.map +1 -0
- package/dist/workflows/types.d.ts +215 -0
- package/dist/workflows/types.d.ts.map +1 -0
- package/dist/workflows/types.js +9 -0
- package/dist/workflows/types.js.map +1 -0
- package/dist/workflows/yield.d.ts +12 -0
- package/dist/workflows/yield.d.ts.map +1 -0
- package/dist/workflows/yield.js +29 -0
- package/dist/workflows/yield.js.map +1 -0
- package/docs/00-overview.md +254 -0
- package/docs/01-getting-started.md +224 -0
- package/docs/02-models.md +163 -0
- package/docs/03-services.md +208 -0
- package/docs/04-users.md +165 -0
- package/docs/05-commands.md +501 -0
- package/docs/06-queries.md +342 -0
- package/docs/07-events.md +248 -0
- package/docs/08-links.md +182 -0
- package/docs/09-agents.md +142 -0
- package/docs/10-spa.md +327 -0
- package/docs/11-config.md +481 -0
- package/docs/12-constraints.md +183 -0
- package/docs/13-testing.md +345 -0
- package/docs/14-adapters.md +204 -0
- package/docs/15-hosts.md +163 -0
- package/docs/16-reference.md +274 -0
- package/docs/17-dashboard.md +619 -0
- package/docs/AGENT.md +501 -0
- package/package.json +49 -52
- package/.medusa/server/src/admin/index.js +0 -5358
- package/.medusa/server/src/admin/index.mjs +0 -5356
- package/.medusa/server/src/api/admin/companies/[id]/route.js +0 -39
- package/.medusa/server/src/api/admin/companies/middlewares.js +0 -41
- package/.medusa/server/src/api/admin/companies/route.js +0 -37
- package/.medusa/server/src/api/admin/companies/validators.js +0 -29
- package/.medusa/server/src/api/middlewares.js +0 -8
- package/.medusa/server/src/index.js +0 -5
- package/.medusa/server/src/modules/company/index.js +0 -13
- package/.medusa/server/src/modules/company/migrations/Migration20260126141741.js +0 -26
- package/.medusa/server/src/modules/company/models/company.js +0 -24
- package/.medusa/server/src/modules/company/models/employee.js +0 -15
- package/.medusa/server/src/modules/company/models/index.js +0 -11
- package/.medusa/server/src/modules/company/service.js +0 -11
- package/.medusa/server/src/workflows/create-company.js +0 -10
- package/.medusa/server/src/workflows/delete-company.js +0 -10
- package/.medusa/server/src/workflows/steps/create-company.js +0 -16
- package/.medusa/server/src/workflows/steps/delete-company.js +0 -30
- package/.medusa/server/src/workflows/steps/update-company.js +0 -30
- package/.medusa/server/src/workflows/update-company.js +0 -10
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import type { Message } from '../events/types';
|
|
2
|
+
import type { GroupStatus } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Event bus port contract.
|
|
5
|
+
* Adapters: InMemoryEventBus (dev), Vercel Queues (prod).
|
|
6
|
+
*/
|
|
7
|
+
export interface IEventBusPort {
|
|
8
|
+
/**
|
|
9
|
+
* Emit one or more events. Optionally group them by eventGroupId.
|
|
10
|
+
* @param event - A single message or array of messages
|
|
11
|
+
* @param options - Optional groupId for grouped events
|
|
12
|
+
*/
|
|
13
|
+
emit(event: Message | Message[], options?: {
|
|
14
|
+
groupId?: string;
|
|
15
|
+
}): Promise<void>;
|
|
16
|
+
/**
|
|
17
|
+
* Subscribe a handler to an event name.
|
|
18
|
+
* @param eventName - The event name to subscribe to
|
|
19
|
+
* @param handler - The handler function
|
|
20
|
+
* @param options - Optional subscriberId for unsubscribe
|
|
21
|
+
*/
|
|
22
|
+
subscribe(eventName: string, handler: (event: Message) => Promise<void> | void, options?: {
|
|
23
|
+
subscriberId?: string;
|
|
24
|
+
}): void;
|
|
25
|
+
/**
|
|
26
|
+
* Unsubscribe a handler by its subscriberId.
|
|
27
|
+
* @param subscriberId - The subscriber to remove
|
|
28
|
+
*/
|
|
29
|
+
unsubscribe(subscriberId: string): void;
|
|
30
|
+
/**
|
|
31
|
+
* Release all grouped events for the given groupId (emit them to subscribers).
|
|
32
|
+
* @param eventGroupId - The group to release
|
|
33
|
+
*/
|
|
34
|
+
releaseGroupedEvents(eventGroupId: string): Promise<void>;
|
|
35
|
+
/**
|
|
36
|
+
* Clear all grouped events for the given groupId without emitting.
|
|
37
|
+
* @param eventGroupId - The group to clear
|
|
38
|
+
*/
|
|
39
|
+
clearGroupedEvents(eventGroupId: string): Promise<void>;
|
|
40
|
+
/**
|
|
41
|
+
* Add an interceptor that observes messages as they are emitted.
|
|
42
|
+
* Interceptors are read-only, fire-and-forget.
|
|
43
|
+
* @param fn - The interceptor function
|
|
44
|
+
*/
|
|
45
|
+
addInterceptor(fn: (message: Message, context?: {
|
|
46
|
+
isGrouped?: boolean;
|
|
47
|
+
eventGroupId?: string;
|
|
48
|
+
}) => Promise<void> | void): void;
|
|
49
|
+
/**
|
|
50
|
+
* Remove a previously added interceptor.
|
|
51
|
+
* @param fn - The interceptor function to remove
|
|
52
|
+
*/
|
|
53
|
+
removeInterceptor(fn: (message: Message, context?: {
|
|
54
|
+
isGrouped?: boolean;
|
|
55
|
+
eventGroupId?: string;
|
|
56
|
+
}) => Promise<void> | void): void;
|
|
57
|
+
/**
|
|
58
|
+
* Optional: hook called when a new event group is created.
|
|
59
|
+
* @param handler - Callback receiving groupId and event count
|
|
60
|
+
*/
|
|
61
|
+
onGroupCreated?(handler: (eventGroupId: string, eventCount: number) => void): void;
|
|
62
|
+
/**
|
|
63
|
+
* Optional: hook called when a group is released.
|
|
64
|
+
* @param handler - Callback receiving groupId and event count
|
|
65
|
+
*/
|
|
66
|
+
onGroupReleased?(handler: (eventGroupId: string, eventCount: number) => void): void;
|
|
67
|
+
/**
|
|
68
|
+
* Optional: hook called when a group is cleared.
|
|
69
|
+
* @param handler - Callback receiving groupId, count, and reason
|
|
70
|
+
*/
|
|
71
|
+
onGroupCleared?(handler: (eventGroupId: string, eventCount: number, reason: 'explicit' | 'ttl') => void): void;
|
|
72
|
+
/**
|
|
73
|
+
* Optional: get the status of a grouped event set.
|
|
74
|
+
* @param eventGroupId - The group to check
|
|
75
|
+
* @returns GroupStatus or null if group does not exist
|
|
76
|
+
*/
|
|
77
|
+
getGroupStatus?(eventGroupId: string): GroupStatus | null;
|
|
78
|
+
/**
|
|
79
|
+
* Optional readiness probe. Returns true if the event bus backend is reachable.
|
|
80
|
+
* Used by /health/ready (BC-F22). If the adapter does not implement ping(),
|
|
81
|
+
* the readiness handler treats the event bus as present but unprobed.
|
|
82
|
+
*/
|
|
83
|
+
ping?(): Promise<boolean>;
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=event-bus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-bus.d.ts","sourceRoot":"","sources":["../../src/ports/event-bus.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAE1C;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE/E;;;;;OAKG;IACH,SAAS,CACP,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,EACjD,OAAO,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GAClC,IAAI,CAAA;IAEP;;;OAGG;IACH,WAAW,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAEvC;;;OAGG;IACH,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEzD;;;OAGG;IACH,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEvD;;;;OAIG;IACH,cAAc,CACZ,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,GACvG,IAAI,CAAA;IAEP;;;OAGG;IACH,iBAAiB,CACf,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,GACvG,IAAI,CAAA;IAEP;;;OAGG;IACH,cAAc,CAAC,CAAC,OAAO,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAA;IAElF;;;OAGG;IACH,eAAe,CAAC,CAAC,OAAO,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAA;IAEnF;;;OAGG;IACH,cAAc,CAAC,CAAC,OAAO,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,KAAK,KAAK,IAAI,GAAG,IAAI,CAAA;IAE9G;;;;OAIG;IACH,cAAc,CAAC,CAAC,YAAY,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAAA;IAEzD;;;;OAIG;IACH,IAAI,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;CAC1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-bus.js","sourceRoot":"","sources":["../../src/ports/event-bus.ts"],"names":[],"mappings":"AAAA,qCAAqC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* File storage port contract.
|
|
3
|
+
* Adapters: LocalFileAdapter (dev), VercelBlobAdapter (prod).
|
|
4
|
+
*/
|
|
5
|
+
export interface IFilePort {
|
|
6
|
+
/**
|
|
7
|
+
* Upload a file.
|
|
8
|
+
* @param key - The file key/path
|
|
9
|
+
* @param data - The file content as Buffer or ReadableStream
|
|
10
|
+
* @param contentType - Optional MIME type
|
|
11
|
+
* @returns The stored key and public URL
|
|
12
|
+
*/
|
|
13
|
+
upload(key: string, data: Buffer | ReadableStream, contentType?: string): Promise<{
|
|
14
|
+
key: string;
|
|
15
|
+
url: string;
|
|
16
|
+
}>;
|
|
17
|
+
/**
|
|
18
|
+
* Delete one or more files.
|
|
19
|
+
* @param key - Single key or array of keys
|
|
20
|
+
*/
|
|
21
|
+
delete(key: string | string[]): Promise<void>;
|
|
22
|
+
/**
|
|
23
|
+
* Get a presigned URL for downloading a file.
|
|
24
|
+
* @param key - The file key
|
|
25
|
+
* @returns The presigned download URL
|
|
26
|
+
*/
|
|
27
|
+
getPresignedDownloadUrl(key: string): Promise<string>;
|
|
28
|
+
/**
|
|
29
|
+
* Optional: get a presigned URL for uploading a file.
|
|
30
|
+
* @param key - The file key
|
|
31
|
+
* @returns The presigned upload URL
|
|
32
|
+
*/
|
|
33
|
+
getPresignedUploadUrl?(key: string): Promise<string>;
|
|
34
|
+
/**
|
|
35
|
+
* Get a readable stream for downloading a file.
|
|
36
|
+
* @param key - The file key
|
|
37
|
+
* @returns A ReadableStream of the file content
|
|
38
|
+
*/
|
|
39
|
+
getDownloadStream(key: string): Promise<ReadableStream>;
|
|
40
|
+
/**
|
|
41
|
+
* Get file content as a Buffer.
|
|
42
|
+
* @param key - The file key
|
|
43
|
+
* @returns The file content as Buffer
|
|
44
|
+
*/
|
|
45
|
+
getAsBuffer(key: string): Promise<Buffer>;
|
|
46
|
+
/**
|
|
47
|
+
* List files matching a prefix.
|
|
48
|
+
* @param prefix - The prefix to filter by
|
|
49
|
+
* @returns Array of matching file keys
|
|
50
|
+
*/
|
|
51
|
+
list(prefix?: string): Promise<string[]>;
|
|
52
|
+
/**
|
|
53
|
+
* Optional: get a writable stream for uploading a file.
|
|
54
|
+
* @param key - The file key
|
|
55
|
+
* @returns An object with the writable stream and a done promise
|
|
56
|
+
*/
|
|
57
|
+
getUploadStream?(key: string): Promise<{
|
|
58
|
+
stream: WritableStream;
|
|
59
|
+
done: Promise<void>;
|
|
60
|
+
}>;
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=file.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/ports/file.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB;;;;;;OAMG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAE/G;;;OAGG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE7C;;;;OAIG;IACH,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAErD;;;;OAIG;IACH,qBAAqB,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAEpD;;;;OAIG;IACH,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;IAEvD;;;;OAIG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAEzC;;;;OAIG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IAExC;;;;OAIG;IACH,eAAe,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,cAAc,CAAC;QAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;KAAE,CAAC,CAAA;CACxF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/ports/file.ts"],"names":[],"mappings":"AAAA,yCAAyC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTTP port contract (simplified).
|
|
3
|
+
* Adapters: NitroHttpAdapter.
|
|
4
|
+
*/
|
|
5
|
+
export interface IHttpPort {
|
|
6
|
+
/**
|
|
7
|
+
* Register a route handler.
|
|
8
|
+
* @param method - HTTP method (GET, POST, PUT, DELETE, etc.)
|
|
9
|
+
* @param path - The route path
|
|
10
|
+
* @param handler - The request handler returning a Response
|
|
11
|
+
*/
|
|
12
|
+
registerRoute(method: string, path: string, handler: (req: Request) => Promise<Response> | Response): void;
|
|
13
|
+
/**
|
|
14
|
+
* Handle an incoming HTTP request through the pipeline.
|
|
15
|
+
* @param req - The incoming Request
|
|
16
|
+
* @returns The Response
|
|
17
|
+
*/
|
|
18
|
+
handleRequest(req: Request): Promise<Response>;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=http.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/ports/http.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB;;;;;OAKG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,GAAG,IAAI,CAAA;IAE1G;;;;OAIG;IACH,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;CAC/C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/ports/http.ts"],"names":[],"mappings":"AAAA,iCAAiC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { IProgressChannelPort, ProgressSnapshot } from './progress-channel';
|
|
2
|
+
export declare class InMemoryProgressChannel implements IProgressChannelPort {
|
|
3
|
+
private _store;
|
|
4
|
+
set(runId: string, snapshot: ProgressSnapshot): Promise<void>;
|
|
5
|
+
get(runId: string): Promise<ProgressSnapshot | null>;
|
|
6
|
+
clear(runId: string): Promise<void>;
|
|
7
|
+
_reset(): void;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=in-memory-progress-channel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"in-memory-progress-channel.d.ts","sourceRoot":"","sources":["../../src/ports/in-memory-progress-channel.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAEhF,qBAAa,uBAAwB,YAAW,oBAAoB;IAClE,OAAO,CAAC,MAAM,CAAsC;IAE9C,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAIpD,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC,MAAM;CAGP"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// InMemoryProgressChannel — test-only implementation of IProgressChannelPort.
|
|
2
|
+
// See WORKFLOW_PROGRESS.md §9.2 "progress-memory: test containers".
|
|
3
|
+
// Uses a plain Map — no TTL, no throttle.
|
|
4
|
+
export class InMemoryProgressChannel {
|
|
5
|
+
_store = new Map();
|
|
6
|
+
async set(runId, snapshot) {
|
|
7
|
+
this._store.set(runId, snapshot);
|
|
8
|
+
}
|
|
9
|
+
async get(runId) {
|
|
10
|
+
return this._store.get(runId) ?? null;
|
|
11
|
+
}
|
|
12
|
+
async clear(runId) {
|
|
13
|
+
this._store.delete(runId);
|
|
14
|
+
}
|
|
15
|
+
_reset() {
|
|
16
|
+
this._store.clear();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=in-memory-progress-channel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"in-memory-progress-channel.js","sourceRoot":"","sources":["../../src/ports/in-memory-progress-channel.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,oEAAoE;AACpE,0CAA0C;AAI1C,MAAM,OAAO,uBAAuB;IAC1B,MAAM,GAAG,IAAI,GAAG,EAA4B,CAAA;IAEpD,KAAK,CAAC,GAAG,CAAC,KAAa,EAAE,QAA0B;QACjD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IAClC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAAa;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAA;IACvC,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAa;QACvB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC3B,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;IACrB,CAAC;CACF"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { IQueuePort, QueueMessage } from './queue';
|
|
2
|
+
export interface InMemoryQueueAdapterOptions {
|
|
3
|
+
/**
|
|
4
|
+
* Extra headers to add to every POST — typically an internal auth header
|
|
5
|
+
* the resume route trusts (so end users can't spam /_workflow/:id/resume).
|
|
6
|
+
*/
|
|
7
|
+
headers?: Record<string, string>;
|
|
8
|
+
/** fetch implementation override — for tests. Defaults to global fetch. */
|
|
9
|
+
fetch?: typeof globalThis.fetch;
|
|
10
|
+
/** Logger for delivery failures. */
|
|
11
|
+
logger?: {
|
|
12
|
+
warn: (msg: string) => void;
|
|
13
|
+
error?: (msg: string, err?: unknown) => void;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
export declare class InMemoryQueueAdapter implements IQueuePort {
|
|
17
|
+
private _recent;
|
|
18
|
+
private _headers;
|
|
19
|
+
private _fetch;
|
|
20
|
+
private _logger;
|
|
21
|
+
constructor(opts?: InMemoryQueueAdapterOptions);
|
|
22
|
+
enqueue(message: QueueMessage): Promise<void>;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=in-memory-queue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"in-memory-queue.d.ts","sourceRoot":"","sources":["../../src/ports/in-memory-queue.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAIvD,MAAM,WAAW,2BAA2B;IAC1C;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,2EAA2E;IAC3E,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAA;IAC/B,oCAAoC;IACpC,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;QAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;KAAE,CAAA;CACvF;AAED,qBAAa,oBAAqB,YAAW,UAAU;IACrD,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,QAAQ,CAAwB;IACxC,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,OAAO,CAAuC;gBAE1C,IAAI,GAAE,2BAAgC;IAM5C,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;CAoCpD"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
// InMemoryQueueAdapter — dev / test IQueuePort implementation.
|
|
2
|
+
//
|
|
3
|
+
// Delivers messages via `setImmediate(() => fetch(url, { method: 'POST', body }))`
|
|
4
|
+
// in the same Node process. Sufficient for local `pnpm dev` where the dev
|
|
5
|
+
// server and the lambda handler share a process. Loses messages on process
|
|
6
|
+
// death — use `@mantajs/adapter-queue-qstash` (or a similar durable queue) for
|
|
7
|
+
// production.
|
|
8
|
+
//
|
|
9
|
+
// Idempotency: keeps a small in-memory LRU of recently-delivered keys so
|
|
10
|
+
// duplicate enqueues (e.g. a step that throws mid-retry) don't deliver
|
|
11
|
+
// twice within the same process. Best-effort; not a substitute for the
|
|
12
|
+
// durable dedupe a real queue provides.
|
|
13
|
+
const RECENT_KEYS_MAX = 1000;
|
|
14
|
+
export class InMemoryQueueAdapter {
|
|
15
|
+
_recent = new Set();
|
|
16
|
+
_headers;
|
|
17
|
+
_fetch;
|
|
18
|
+
_logger;
|
|
19
|
+
constructor(opts = {}) {
|
|
20
|
+
this._headers = opts.headers ?? {};
|
|
21
|
+
this._fetch = opts.fetch ?? globalThis.fetch;
|
|
22
|
+
this._logger = opts.logger;
|
|
23
|
+
}
|
|
24
|
+
async enqueue(message) {
|
|
25
|
+
if (message.idempotencyKey) {
|
|
26
|
+
if (this._recent.has(message.idempotencyKey))
|
|
27
|
+
return;
|
|
28
|
+
this._recent.add(message.idempotencyKey);
|
|
29
|
+
if (this._recent.size > RECENT_KEYS_MAX) {
|
|
30
|
+
// Evict oldest — Set iteration is insertion order so pop the first one.
|
|
31
|
+
const first = this._recent.values().next().value;
|
|
32
|
+
if (first !== undefined)
|
|
33
|
+
this._recent.delete(first);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
const delay = Math.max(0, message.delayMs ?? 0);
|
|
37
|
+
const deliver = async () => {
|
|
38
|
+
try {
|
|
39
|
+
const res = await this._fetch(message.url, {
|
|
40
|
+
method: 'POST',
|
|
41
|
+
headers: { 'Content-Type': 'application/json', ...this._headers },
|
|
42
|
+
body: JSON.stringify(message.payload ?? {}),
|
|
43
|
+
});
|
|
44
|
+
if (!res.ok) {
|
|
45
|
+
const body = await res.text().catch(() => '');
|
|
46
|
+
this._logger?.warn?.(`[InMemoryQueueAdapter] delivery ${res.status} for ${message.url}: ${body.slice(0, 200)}`);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
catch (err) {
|
|
50
|
+
this._logger?.error?.(`[InMemoryQueueAdapter] delivery failed for ${message.url}`, err);
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
if (delay > 0) {
|
|
54
|
+
setTimeout(deliver, delay);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
// setImmediate so the enqueue returns before the POST fires — matches
|
|
58
|
+
// real queue semantics where enqueue is decoupled from delivery.
|
|
59
|
+
setImmediate(deliver);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=in-memory-queue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"in-memory-queue.js","sourceRoot":"","sources":["../../src/ports/in-memory-queue.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,EAAE;AACF,mFAAmF;AACnF,0EAA0E;AAC1E,2EAA2E;AAC3E,+EAA+E;AAC/E,cAAc;AACd,EAAE;AACF,yEAAyE;AACzE,uEAAuE;AACvE,uEAAuE;AACvE,wCAAwC;AAIxC,MAAM,eAAe,GAAG,IAAI,CAAA;AAc5B,MAAM,OAAO,oBAAoB;IACvB,OAAO,GAAG,IAAI,GAAG,EAAU,CAAA;IAC3B,QAAQ,CAAwB;IAChC,MAAM,CAAyB;IAC/B,OAAO,CAAuC;IAEtD,YAAY,OAAoC,EAAE;QAChD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAA;QAClC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAA;QAC5C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAqB;QACjC,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC;gBAAE,OAAM;YACpD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;YACxC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,eAAe,EAAE,CAAC;gBACxC,wEAAwE;gBACxE,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAA;gBAChD,IAAI,KAAK,KAAK,SAAS;oBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACrD,CAAC;QACH,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC,CAAA;QAC/C,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;YACzB,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;oBACzC,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE;oBACjE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;iBAC5C,CAAC,CAAA;gBACF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;oBACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;oBAC7C,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,CAClB,mCAAmC,GAAG,CAAC,MAAM,QAAQ,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAC1F,CAAA;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,8CAA8C,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;YACzF,CAAC;QACH,CAAC,CAAA;QACD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QAC5B,CAAC;aAAM,CAAC;YACN,sEAAsE;YACtE,iEAAiE;YACjE,YAAY,CAAC,OAAO,CAAC,CAAA;QACvB,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export type { AuthenticationInput, AuthenticationResponse } from '../auth/providers/types';
|
|
2
|
+
export type { AuthContext, AuthCredentials, SessionOptions } from '../auth/types';
|
|
3
|
+
export type { GetMessagesOptions, IMessageAggregator, Message } from '../events/types';
|
|
4
|
+
export type { IAnalyticsProvider } from './analytics';
|
|
5
|
+
export type { IAuthGateway, IAuthModuleService, IAuthPort } from './auth';
|
|
6
|
+
export type { ICachePort } from './cache';
|
|
7
|
+
export type { IDatabasePort } from './database';
|
|
8
|
+
export type { IEventBusPort } from './event-bus';
|
|
9
|
+
export type { IFilePort } from './file';
|
|
10
|
+
export type { IHttpPort } from './http';
|
|
11
|
+
export { InMemoryProgressChannel } from './in-memory-progress-channel';
|
|
12
|
+
export { InMemoryQueueAdapter, type InMemoryQueueAdapterOptions } from './in-memory-queue';
|
|
13
|
+
export type { IJobSchedulerPort } from './job-scheduler';
|
|
14
|
+
export type { ILockingPort } from './locking';
|
|
15
|
+
export type { ILoggerPort } from './logger';
|
|
16
|
+
export type { INotificationPort } from './notification';
|
|
17
|
+
export type { IProgressChannelPort, ProgressSnapshot } from './progress-channel';
|
|
18
|
+
export type { IQueuePort, QueueMessage } from './queue';
|
|
19
|
+
export type { IRelationalQueryPort, RelationalQueryConfig } from './relational-query';
|
|
20
|
+
export type { IRepository } from './repository';
|
|
21
|
+
export type { IRepositoryFactory } from './repository-factory';
|
|
22
|
+
export type { ISchemaGenerator } from './schema-generator';
|
|
23
|
+
export type { ISearchProvider } from './search';
|
|
24
|
+
export type { Context, CursorPagination, DatabaseConfig, GroupStatus, JobExecution, JobResult, TransactionOptions, WorkflowLifecycleEvent, } from './types';
|
|
25
|
+
export { ContainerRegistrationKeys } from './types';
|
|
26
|
+
export type { IWorkflowStorePort, NewWorkflowRun, StepState, StepStatus, WorkflowError, WorkflowRun, WorkflowStatus, } from './workflow-store';
|
|
27
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ports/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAE1F,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAEjF,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACtF,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACrD,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAEzE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACzC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC/C,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AACvC,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AACvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AACtE,OAAO,EAAE,oBAAoB,EAAE,KAAK,2BAA2B,EAAE,MAAM,mBAAmB,CAAA;AAC1F,YAAY,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AACxD,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAC7C,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAC3C,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACvD,YAAY,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAChF,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACvD,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AACrF,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/C,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAC9D,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,YAAY,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAE/C,YAAY,EACV,OAAO,EACP,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,YAAY,EACZ,SAAS,EACT,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AACnD,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,SAAS,EACT,UAAU,EACV,aAAa,EACb,WAAW,EACX,cAAc,GACf,MAAM,kBAAkB,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// Port interfaces — re-exports all port contracts
|
|
2
|
+
// Each port is defined in its own file with SPEC references.
|
|
3
|
+
export { InMemoryProgressChannel } from './in-memory-progress-channel';
|
|
4
|
+
export { InMemoryQueueAdapter } from './in-memory-queue';
|
|
5
|
+
export { ContainerRegistrationKeys } from './types';
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ports/index.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,6DAA6D;AAe7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AACtE,OAAO,EAAE,oBAAoB,EAAoC,MAAM,mBAAmB,CAAA;AAuB1F,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { MantaApp } from '../app';
|
|
2
|
+
import type { JobExecution, JobResult } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Job scheduler port contract.
|
|
5
|
+
* Adapters: NodeCronJobScheduler (dev), VercelCronAdapter (prod).
|
|
6
|
+
* Dependencies: ILockingPort, ILoggerPort.
|
|
7
|
+
*/
|
|
8
|
+
export interface IJobSchedulerPort {
|
|
9
|
+
/**
|
|
10
|
+
* Register a scheduled job.
|
|
11
|
+
* @param name - Unique job name
|
|
12
|
+
* @param schedule - Cron expression
|
|
13
|
+
* @param handler - Job handler receiving the app
|
|
14
|
+
* @param options - Concurrency, execution limit, and retry options
|
|
15
|
+
*/
|
|
16
|
+
register(name: string, schedule: string, handler: (ctx: {
|
|
17
|
+
app: MantaApp;
|
|
18
|
+
}) => Promise<JobResult>, options?: {
|
|
19
|
+
concurrency?: 'allow' | 'forbid';
|
|
20
|
+
numberOfExecutions?: number;
|
|
21
|
+
timeout?: number;
|
|
22
|
+
retry?: {
|
|
23
|
+
maxRetries: number;
|
|
24
|
+
backoff?: 'fixed' | 'exponential';
|
|
25
|
+
delay?: number;
|
|
26
|
+
};
|
|
27
|
+
}): void;
|
|
28
|
+
/**
|
|
29
|
+
* Manually trigger a registered job.
|
|
30
|
+
* @param name - The job name
|
|
31
|
+
* @returns The job execution result
|
|
32
|
+
*/
|
|
33
|
+
runJob(name: string): Promise<JobResult>;
|
|
34
|
+
/**
|
|
35
|
+
* Get execution history for a job.
|
|
36
|
+
* @param jobName - The job name
|
|
37
|
+
* @param limit - Maximum number of records to return
|
|
38
|
+
* @returns Array of job execution records
|
|
39
|
+
*/
|
|
40
|
+
getJobHistory(jobName: string, limit?: number): Promise<JobExecution[]>;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=job-scheduler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"job-scheduler.d.ts","sourceRoot":"","sources":["../../src/ports/job-scheduler.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACtC,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEtD;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;OAMG;IACH,QAAQ,CACN,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,CAAC,GAAG,EAAE;QAAE,GAAG,EAAE,QAAQ,CAAA;KAAE,KAAK,OAAO,CAAC,SAAS,CAAC,EACvD,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAA;QAChC,kBAAkB,CAAC,EAAE,MAAM,CAAA;QAC3B,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,KAAK,CAAC,EAAE;YAAE,UAAU,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAClF,GACA,IAAI,CAAA;IAEP;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;IAExC;;;;;OAKG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;CACxE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"job-scheduler.js","sourceRoot":"","sources":["../../src/ports/job-scheduler.ts"],"names":[],"mappings":"AAAA,yCAAyC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Locking port contract.
|
|
3
|
+
* Adapters: InMemoryLocking (dev), Neon advisory locks (prod).
|
|
4
|
+
*/
|
|
5
|
+
export interface ILockingPort {
|
|
6
|
+
/**
|
|
7
|
+
* Execute a job while holding locks on the given keys.
|
|
8
|
+
* Acquires locks, runs job, releases locks.
|
|
9
|
+
* @param keys - Lock keys to acquire
|
|
10
|
+
* @param job - The function to execute under lock
|
|
11
|
+
* @param options - Optional timeout in ms
|
|
12
|
+
* @returns The result of the job function
|
|
13
|
+
*/
|
|
14
|
+
execute<T>(keys: string[], job: () => Promise<T>, options?: {
|
|
15
|
+
timeout?: number;
|
|
16
|
+
}): Promise<T>;
|
|
17
|
+
/**
|
|
18
|
+
* Manually acquire locks on one or more keys.
|
|
19
|
+
* @param keys - Lock key(s) to acquire
|
|
20
|
+
* @param options - Optional ownerId and expiration in ms
|
|
21
|
+
* @returns True if all locks were acquired, false otherwise
|
|
22
|
+
*/
|
|
23
|
+
acquire(keys: string | string[], options?: {
|
|
24
|
+
ownerId?: string;
|
|
25
|
+
expire?: number;
|
|
26
|
+
}): Promise<boolean>;
|
|
27
|
+
/**
|
|
28
|
+
* Release locks on one or more keys.
|
|
29
|
+
* @param keys - Lock key(s) to release
|
|
30
|
+
* @param options - Optional ownerId to verify ownership
|
|
31
|
+
*/
|
|
32
|
+
release(keys: string | string[], options?: {
|
|
33
|
+
ownerId?: string;
|
|
34
|
+
}): Promise<void>;
|
|
35
|
+
/**
|
|
36
|
+
* Release all locks held by an owner.
|
|
37
|
+
* @param options - Optional ownerId filter
|
|
38
|
+
*/
|
|
39
|
+
releaseAll(options?: {
|
|
40
|
+
ownerId?: string;
|
|
41
|
+
}): Promise<void>;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=locking.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"locking.d.ts","sourceRoot":"","sources":["../../src/ports/locking.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;;;OAOG;IACH,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;IAE7F;;;;;OAKG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAEnG;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE/E;;;OAGG;IACH,UAAU,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"locking.js","sourceRoot":"","sources":["../../src/ports/locking.ts"],"names":[],"mappings":"AAAA,4CAA4C"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logger port contract.
|
|
3
|
+
* Adapters: PinoLogger (dev/prod).
|
|
4
|
+
*/
|
|
5
|
+
export interface ILoggerPort {
|
|
6
|
+
/** Log at error level */
|
|
7
|
+
error(msg: string, ...args: unknown[]): void;
|
|
8
|
+
/** Log at warn level */
|
|
9
|
+
warn(msg: string, ...args: unknown[]): void;
|
|
10
|
+
/** Log at info level */
|
|
11
|
+
info(msg: string, ...args: unknown[]): void;
|
|
12
|
+
/** Log at http level */
|
|
13
|
+
http(msg: string, ...args: unknown[]): void;
|
|
14
|
+
/** Log at verbose level */
|
|
15
|
+
verbose(msg: string, ...args: unknown[]): void;
|
|
16
|
+
/** Log at debug level */
|
|
17
|
+
debug(msg: string, ...args: unknown[]): void;
|
|
18
|
+
/** Log at silly level */
|
|
19
|
+
silly(msg: string, ...args: unknown[]): void;
|
|
20
|
+
/**
|
|
21
|
+
* Log a panic-level message and potentially crash.
|
|
22
|
+
* @param data - Arbitrary data to log
|
|
23
|
+
*/
|
|
24
|
+
panic(data: unknown): void;
|
|
25
|
+
/**
|
|
26
|
+
* Start a timed activity log.
|
|
27
|
+
* @param msg - The activity description
|
|
28
|
+
* @returns An activity ID for progress/success/failure
|
|
29
|
+
*/
|
|
30
|
+
activity(msg: string): string;
|
|
31
|
+
/**
|
|
32
|
+
* Log progress on an activity.
|
|
33
|
+
* @param id - The activity ID
|
|
34
|
+
* @param msg - Progress message
|
|
35
|
+
*/
|
|
36
|
+
progress(id: string, msg: string): void;
|
|
37
|
+
/**
|
|
38
|
+
* Mark an activity as successful.
|
|
39
|
+
* @param id - The activity ID
|
|
40
|
+
* @param msg - Success message
|
|
41
|
+
*/
|
|
42
|
+
success(id: string, msg: string): void;
|
|
43
|
+
/**
|
|
44
|
+
* Mark an activity as failed.
|
|
45
|
+
* @param id - The activity ID
|
|
46
|
+
* @param msg - Failure message
|
|
47
|
+
*/
|
|
48
|
+
failure(id: string, msg: string): void;
|
|
49
|
+
/**
|
|
50
|
+
* Check if a given log level would be output.
|
|
51
|
+
* @param level - The log level to check
|
|
52
|
+
* @returns True if messages at this level would be logged
|
|
53
|
+
*/
|
|
54
|
+
shouldLog(level: string): boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Override the current log level.
|
|
57
|
+
* @param level - The new log level
|
|
58
|
+
*/
|
|
59
|
+
setLogLevel(level: string): void;
|
|
60
|
+
/**
|
|
61
|
+
* Reset the log level to the default.
|
|
62
|
+
*/
|
|
63
|
+
unsetLogLevel(): void;
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=logger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/ports/logger.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,yBAAyB;IACzB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAC5C,wBAAwB;IACxB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAC3C,wBAAwB;IACxB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAC3C,wBAAwB;IACxB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAC3C,2BAA2B;IAC3B,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAC9C,yBAAyB;IACzB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAC5C,yBAAyB;IACzB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAE5C;;;OAGG;IACH,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAA;IAE1B;;;;OAIG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;IAE7B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAEvC;;;;OAIG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAEtC;;;;OAIG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAEtC;;;;OAIG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAA;IAEjC;;;OAGG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IAEhC;;OAEG;IACH,aAAa,IAAI,IAAI,CAAA;CACtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/ports/logger.ts"],"names":[],"mappings":"AAAA,uCAAuC"}
|