@mantajs/core 0.1.7 → 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 -5493
- package/.medusa/server/src/admin/index.mjs +0 -5491
- 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/admin/employees/middlewares.js +0 -15
- package/.medusa/server/src/api/admin/employees/route.js +0 -21
- package/.medusa/server/src/api/middlewares.js +0 -9
- 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 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
// SPEC-010, SPEC-053, SPEC-055 — Config types
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
// ---------------------------------------------------------------------------
|
|
4
|
+
// Zod schemas for runtime validation of LoadedConfig
|
|
5
|
+
// ---------------------------------------------------------------------------
|
|
6
|
+
export const DatabaseConfigSchema = z
|
|
7
|
+
.object({
|
|
8
|
+
url: z.string().optional(),
|
|
9
|
+
pool: z
|
|
10
|
+
.object({
|
|
11
|
+
min: z.number().int().min(1).default(1),
|
|
12
|
+
max: z.number().int().min(1).default(10),
|
|
13
|
+
})
|
|
14
|
+
.refine((d) => d.max >= d.min, { message: 'pool.max must be >= pool.min' })
|
|
15
|
+
.optional(),
|
|
16
|
+
})
|
|
17
|
+
.optional();
|
|
18
|
+
export const RateLimitConfigSchema = z
|
|
19
|
+
.object({
|
|
20
|
+
enabled: z.boolean().default(false),
|
|
21
|
+
windowMs: z.number().int().positive().optional(),
|
|
22
|
+
maxRequests: z.number().int().positive().optional(),
|
|
23
|
+
})
|
|
24
|
+
.optional();
|
|
25
|
+
export const HttpConfigSchema = z
|
|
26
|
+
.object({
|
|
27
|
+
port: z.number().int().min(1).max(65535).optional(),
|
|
28
|
+
cors: z.record(z.unknown()).optional(),
|
|
29
|
+
rateLimit: RateLimitConfigSchema,
|
|
30
|
+
})
|
|
31
|
+
.optional();
|
|
32
|
+
export const SessionCookieConfigSchema = z
|
|
33
|
+
.object({
|
|
34
|
+
httpOnly: z.boolean().default(true),
|
|
35
|
+
secure: z.boolean().default(true),
|
|
36
|
+
sameSite: z.enum(['lax', 'strict', 'none']).default('lax'),
|
|
37
|
+
domain: z.string().optional(),
|
|
38
|
+
path: z.string().default('/'),
|
|
39
|
+
})
|
|
40
|
+
.optional();
|
|
41
|
+
export const AuthSessionConfigSchema = z
|
|
42
|
+
.object({
|
|
43
|
+
enabled: z.boolean().optional(),
|
|
44
|
+
cookieName: z
|
|
45
|
+
.string()
|
|
46
|
+
.regex(/^[a-zA-Z0-9_.-]+$/, 'cookieName must only contain alphanumeric, underscore, dot, or dash')
|
|
47
|
+
.default('manta.sid'),
|
|
48
|
+
ttl: z.number().int().positive().optional(),
|
|
49
|
+
cookie: SessionCookieConfigSchema,
|
|
50
|
+
})
|
|
51
|
+
.optional();
|
|
52
|
+
export const AuthConfigSchema = z
|
|
53
|
+
.object({
|
|
54
|
+
jwtSecret: z.string().min(16, 'jwtSecret must be at least 16 characters').optional(),
|
|
55
|
+
session: AuthSessionConfigSchema,
|
|
56
|
+
})
|
|
57
|
+
.optional();
|
|
58
|
+
export const QueryConfigSchema = z
|
|
59
|
+
.object({
|
|
60
|
+
maxTotalEntities: z.number().int().min(10).max(100000).default(10000),
|
|
61
|
+
})
|
|
62
|
+
.optional();
|
|
63
|
+
export const BootConfigSchema = z
|
|
64
|
+
.object({
|
|
65
|
+
lazyBootTimeoutMs: z.number().int().min(1000).default(30000),
|
|
66
|
+
autoMigrate: z.boolean().default(false),
|
|
67
|
+
})
|
|
68
|
+
.optional();
|
|
69
|
+
export const EventsConfigSchema = z
|
|
70
|
+
.object({
|
|
71
|
+
maxPayloadSize: z.number().int().positive().optional(),
|
|
72
|
+
})
|
|
73
|
+
.optional();
|
|
74
|
+
export const SpaConfigSchema = z.object({
|
|
75
|
+
dashboard: z.string().optional(),
|
|
76
|
+
preset: z.string().optional(),
|
|
77
|
+
});
|
|
78
|
+
export const LoadedConfigSchema = z.object({
|
|
79
|
+
database: DatabaseConfigSchema,
|
|
80
|
+
http: HttpConfigSchema,
|
|
81
|
+
auth: AuthConfigSchema,
|
|
82
|
+
query: QueryConfigSchema,
|
|
83
|
+
boot: BootConfigSchema,
|
|
84
|
+
events: EventsConfigSchema,
|
|
85
|
+
strict: z.boolean().default(false),
|
|
86
|
+
featureFlags: z.record(z.boolean()).optional(),
|
|
87
|
+
appEnv: z.string().optional(),
|
|
88
|
+
modules: z.array(z.unknown()).optional(),
|
|
89
|
+
plugins: z
|
|
90
|
+
.array(z.union([
|
|
91
|
+
z.string(),
|
|
92
|
+
z.object({
|
|
93
|
+
resolve: z.string(),
|
|
94
|
+
options: z.record(z.unknown()).optional(),
|
|
95
|
+
}),
|
|
96
|
+
]))
|
|
97
|
+
.optional(),
|
|
98
|
+
adapters: z
|
|
99
|
+
.record(z.object({
|
|
100
|
+
adapter: z.string(),
|
|
101
|
+
options: z.record(z.unknown()).optional(),
|
|
102
|
+
}))
|
|
103
|
+
.optional(),
|
|
104
|
+
preset: z.union([z.string(), z.record(z.unknown())]).optional(),
|
|
105
|
+
spa: z.record(SpaConfigSchema).optional(),
|
|
106
|
+
});
|
|
107
|
+
/** Default SPA settings — applied when no override exists. */
|
|
108
|
+
export const SPA_DEFAULTS = {
|
|
109
|
+
dashboard: '@mantajs/dashboard',
|
|
110
|
+
preset: '@mantajs/ui',
|
|
111
|
+
};
|
|
112
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MantaRegistry — the single source of truth for all discoverable names.
|
|
3
|
+
* Augmented at dev time by codegen. When empty, falls back to string.
|
|
4
|
+
*
|
|
5
|
+
* @example (generated)
|
|
6
|
+
* declare module '@mantajs/core' {
|
|
7
|
+
* interface MantaRegistry {
|
|
8
|
+
* modules: { catalog: true; inventory: true }
|
|
9
|
+
* commands: { 'create-product': true; checkout: true }
|
|
10
|
+
* actors: { user: true; customer: true }
|
|
11
|
+
* }
|
|
12
|
+
* }
|
|
13
|
+
*/
|
|
14
|
+
export type MantaRegistry = {
|
|
15
|
+
modules?: Record<string, true>;
|
|
16
|
+
commands?: Record<string, true>;
|
|
17
|
+
actors?: Record<string, true>;
|
|
18
|
+
} & MantaGeneratedRegistry;
|
|
19
|
+
type RegistryKeys<K extends keyof MantaRegistry> = MantaRegistry[K] extends Record<string, true> ? Extract<keyof MantaRegistry[K], string> : string;
|
|
20
|
+
export type ModuleName = RegistryKeys<'modules'>;
|
|
21
|
+
export type CommandName = RegistryKeys<'commands'>;
|
|
22
|
+
export type ActorType = RegistryKeys<'actors'>;
|
|
23
|
+
/**
|
|
24
|
+
* Module expose configuration within a context.
|
|
25
|
+
*/
|
|
26
|
+
export interface ModuleExposeConfig {
|
|
27
|
+
/** '*' = all methods, or array of method names */
|
|
28
|
+
expose: '*' | string[];
|
|
29
|
+
/** true = no authentication required for this module's queries */
|
|
30
|
+
public?: boolean;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* AI configuration for a context.
|
|
34
|
+
*/
|
|
35
|
+
export interface AiContextConfig {
|
|
36
|
+
enabled: boolean;
|
|
37
|
+
/** Restrict AI to specific commands (default: all commands in the context) */
|
|
38
|
+
commands?: CommandName[];
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Context definition — declares how modules/commands are exposed to a consumer.
|
|
42
|
+
*
|
|
43
|
+
* All names are typed via MantaRegistry (auto-generated).
|
|
44
|
+
* IDE autocomplete works out of the box when `manta dev` has run.
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* export default defineContext({
|
|
48
|
+
* name: 'store',
|
|
49
|
+
* basePath: '/api/store',
|
|
50
|
+
* actors: ['customer'],
|
|
51
|
+
* modules: {
|
|
52
|
+
* catalog: { expose: '*', public: true },
|
|
53
|
+
* cart: { expose: '*' },
|
|
54
|
+
* },
|
|
55
|
+
* commands: ['checkout'],
|
|
56
|
+
* ai: { enabled: true, commands: ['checkout'] },
|
|
57
|
+
* })
|
|
58
|
+
*/
|
|
59
|
+
export interface ContextDefinition {
|
|
60
|
+
name: string;
|
|
61
|
+
basePath: string;
|
|
62
|
+
actors: ActorType | ActorType[];
|
|
63
|
+
modules: Partial<Record<ModuleName, ModuleExposeConfig | '*'>>;
|
|
64
|
+
commands?: CommandName[];
|
|
65
|
+
ai?: boolean | AiContextConfig;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Resolved context — populated at boot after validation.
|
|
69
|
+
*/
|
|
70
|
+
export interface ResolvedContext {
|
|
71
|
+
name: string;
|
|
72
|
+
basePath: string;
|
|
73
|
+
actors: string[];
|
|
74
|
+
modules: Map<string, {
|
|
75
|
+
methods: '*' | string[];
|
|
76
|
+
public: boolean;
|
|
77
|
+
}>;
|
|
78
|
+
commands: Set<string>;
|
|
79
|
+
ai: {
|
|
80
|
+
enabled: boolean;
|
|
81
|
+
commands: string[];
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Define a typed context.
|
|
86
|
+
* Module/command/actor names are autocompleted via MantaRegistry and validated at boot.
|
|
87
|
+
*
|
|
88
|
+
* @deprecated In V2, folder structure determines contexts. Move commands to
|
|
89
|
+
* `src/commands/{contextName}/` and queries to `src/queries/{contextName}/`.
|
|
90
|
+
* Use `defineUserModel(contextName)` to define user types.
|
|
91
|
+
* See ARCHITECTURE_V2.md for migration details.
|
|
92
|
+
*/
|
|
93
|
+
export declare function defineContext(config: ContextDefinition): ContextDefinition;
|
|
94
|
+
export { ContextRegistry } from './registry';
|
|
95
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;GAYG;AAIH,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;CAC9B,GAAG,sBAAsB,CAAA;AAG1B,KAAK,YAAY,CAAC,CAAC,SAAS,MAAM,aAAa,IAC7C,aAAa,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,aAAa,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,MAAM,CAAA;AAElG,MAAM,MAAM,UAAU,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;AAChD,MAAM,MAAM,WAAW,GAAG,YAAY,CAAC,UAAU,CAAC,CAAA;AAClD,MAAM,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;AAI9C;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,kDAAkD;IAClD,MAAM,EAAE,GAAG,GAAG,MAAM,EAAE,CAAA;IACtB,kEAAkE;IAClE,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAID;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAA;IAChB,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAA;CACzB;AAID;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,SAAS,GAAG,SAAS,EAAE,CAAA;IAC/B,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,kBAAkB,GAAG,GAAG,CAAC,CAAC,CAAA;IAC9D,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAA;IACxB,EAAE,CAAC,EAAE,OAAO,GAAG,eAAe,CAAA;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,GAAG,GAAG,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IAClE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACrB,EAAE,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;CAC7C;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,iBAAiB,GAAG,iBAAiB,CAY1E;AAED,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// Context system — distribution layer for modules/commands/AI per consumer.
|
|
2
|
+
import { MantaError } from '../errors/manta-error';
|
|
3
|
+
/**
|
|
4
|
+
* Define a typed context.
|
|
5
|
+
* Module/command/actor names are autocompleted via MantaRegistry and validated at boot.
|
|
6
|
+
*
|
|
7
|
+
* @deprecated In V2, folder structure determines contexts. Move commands to
|
|
8
|
+
* `src/commands/{contextName}/` and queries to `src/queries/{contextName}/`.
|
|
9
|
+
* Use `defineUserModel(contextName)` to define user types.
|
|
10
|
+
* See ARCHITECTURE_V2.md for migration details.
|
|
11
|
+
*/
|
|
12
|
+
export function defineContext(config) {
|
|
13
|
+
console.warn(`[Manta] defineContext('${config.name}') is deprecated. In V2, folder structure determines contexts. ` +
|
|
14
|
+
`Move commands to src/commands/${config.name}/ and queries to src/queries/${config.name}/. ` +
|
|
15
|
+
'See ARCHITECTURE_V2.md for details.');
|
|
16
|
+
if (!config.name)
|
|
17
|
+
throw new MantaError('INVALID_DATA', 'Context name is required');
|
|
18
|
+
if (!config.basePath)
|
|
19
|
+
throw new MantaError('INVALID_DATA', 'Context basePath is required');
|
|
20
|
+
if (!config.actors || (Array.isArray(config.actors) && config.actors.length === 0)) {
|
|
21
|
+
throw new MantaError('INVALID_DATA', 'Context actors must be a non-empty string or array');
|
|
22
|
+
}
|
|
23
|
+
return config;
|
|
24
|
+
}
|
|
25
|
+
export { ContextRegistry } from './registry';
|
|
26
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAE5E,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAmGlD;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,MAAyB;IACrD,OAAO,CAAC,IAAI,CACV,0BAA0B,MAAM,CAAC,IAAI,iEAAiE;QACpG,iCAAiC,MAAM,CAAC,IAAI,gCAAgC,MAAM,CAAC,IAAI,KAAK;QAC5F,qCAAqC,CACxC,CAAA;IACD,IAAI,CAAC,MAAM,CAAC,IAAI;QAAE,MAAM,IAAI,UAAU,CAAC,cAAc,EAAE,0BAA0B,CAAC,CAAA;IAClF,IAAI,CAAC,MAAM,CAAC,QAAQ;QAAE,MAAM,IAAI,UAAU,CAAC,cAAc,EAAE,8BAA8B,CAAC,CAAA;IAC1F,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QACnF,MAAM,IAAI,UAAU,CAAC,cAAc,EAAE,oDAAoD,CAAC,CAAA;IAC5F,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { ContextDefinition, ResolvedContext } from './index';
|
|
2
|
+
export declare class ContextRegistry {
|
|
3
|
+
private _contexts;
|
|
4
|
+
/**
|
|
5
|
+
* Register a context definition. Validates module/command refs against available names.
|
|
6
|
+
* Throws on duplicate basePath + actor conflict.
|
|
7
|
+
*/
|
|
8
|
+
register(def: ContextDefinition, availableModules: string[], availableCommands: string[]): void;
|
|
9
|
+
/**
|
|
10
|
+
* Register the implicit admin context (when no src/contexts/ exists).
|
|
11
|
+
* All modules, all commands, AI enabled.
|
|
12
|
+
*/
|
|
13
|
+
registerDefault(availableModules: string[], availableCommands: string[]): void;
|
|
14
|
+
/**
|
|
15
|
+
* Resolve a context from request pathname + actor type.
|
|
16
|
+
* Matches by basePath prefix, then checks actor is allowed.
|
|
17
|
+
*/
|
|
18
|
+
resolve(pathname: string, actorType: string): ResolvedContext | null;
|
|
19
|
+
/** List all registered contexts. */
|
|
20
|
+
list(): ResolvedContext[];
|
|
21
|
+
/** Get a context by name. */
|
|
22
|
+
get(name: string): ResolvedContext | undefined;
|
|
23
|
+
/** Check if a command is visible in a context. */
|
|
24
|
+
isCommandVisible(contextName: string, commandName: string): boolean;
|
|
25
|
+
/** Check if a module is exposed in a context. */
|
|
26
|
+
isModuleExposed(contextName: string, moduleName: string): boolean;
|
|
27
|
+
/** Check if a module is public (no auth required) in a context. */
|
|
28
|
+
isPublicModule(contextName: string, moduleName: string): boolean;
|
|
29
|
+
/** Get AI-visible commands for a context. */
|
|
30
|
+
getAiCommands(contextName: string): string[];
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/context/registry.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAmB,iBAAiB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAElF,qBAAa,eAAe;IAC1B,OAAO,CAAC,SAAS,CAAqC;IAEtD;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,GAAG,IAAI;IA0E/F;;;OAGG;IACH,eAAe,CAAC,gBAAgB,EAAE,MAAM,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,GAAG,IAAI;IAgB9E;;;OAGG;IACH,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI;IAWpE,oCAAoC;IACpC,IAAI,IAAI,eAAe,EAAE;IAIzB,6BAA6B;IAC7B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAI9C,kDAAkD;IAClD,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;IAMnE,iDAAiD;IACjD,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO;IAMjE,mEAAmE;IACnE,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO;IAOhE,6CAA6C;IAC7C,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE;CAK7C"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
// ContextRegistry — stores, validates, and resolves contexts at boot.
|
|
2
|
+
import { MantaError } from '../errors/manta-error';
|
|
3
|
+
export class ContextRegistry {
|
|
4
|
+
_contexts = new Map();
|
|
5
|
+
/**
|
|
6
|
+
* Register a context definition. Validates module/command refs against available names.
|
|
7
|
+
* Throws on duplicate basePath + actor conflict.
|
|
8
|
+
*/
|
|
9
|
+
register(def, availableModules, availableCommands) {
|
|
10
|
+
const actors = Array.isArray(def.actors) ? def.actors : [def.actors];
|
|
11
|
+
// Validate module references
|
|
12
|
+
const modules = new Map();
|
|
13
|
+
for (const [moduleName, config] of Object.entries(def.modules)) {
|
|
14
|
+
if (config === undefined)
|
|
15
|
+
continue;
|
|
16
|
+
if (!availableModules.includes(moduleName)) {
|
|
17
|
+
throw new MantaError('INVALID_DATA', `Context "${def.name}": module "${moduleName}" not found. Available: ${availableModules.join(', ')}`);
|
|
18
|
+
}
|
|
19
|
+
if (config === '*') {
|
|
20
|
+
modules.set(moduleName, { methods: '*', public: false });
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
modules.set(moduleName, {
|
|
24
|
+
methods: config.expose,
|
|
25
|
+
public: config.public ?? false,
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
// Validate command references
|
|
30
|
+
const commands = new Set();
|
|
31
|
+
if (def.commands) {
|
|
32
|
+
for (const cmdName of def.commands) {
|
|
33
|
+
if (!availableCommands.includes(cmdName)) {
|
|
34
|
+
throw new MantaError('INVALID_DATA', `Context "${def.name}": command "${cmdName}" not found. Available: ${availableCommands.join(', ')}`);
|
|
35
|
+
}
|
|
36
|
+
commands.add(cmdName);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
// Check for basePath + actor conflicts
|
|
40
|
+
for (const [, existing] of this._contexts) {
|
|
41
|
+
if (existing.basePath === def.basePath) {
|
|
42
|
+
const overlap = actors.filter((a) => existing.actors.includes(a));
|
|
43
|
+
if (overlap.length > 0) {
|
|
44
|
+
throw new MantaError('DUPLICATE_ERROR', `Context "${def.name}" conflicts with "${existing.name}": same basePath "${def.basePath}" and actor(s) "${overlap.join(', ')}"`);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
// Resolve AI config
|
|
49
|
+
let ai;
|
|
50
|
+
if (def.ai === true) {
|
|
51
|
+
ai = { enabled: true, commands: [...commands] };
|
|
52
|
+
}
|
|
53
|
+
else if (def.ai && typeof def.ai === 'object') {
|
|
54
|
+
const aiConfig = def.ai;
|
|
55
|
+
ai = {
|
|
56
|
+
enabled: aiConfig.enabled,
|
|
57
|
+
commands: aiConfig.commands ?? [...commands],
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
ai = { enabled: false, commands: [] };
|
|
62
|
+
}
|
|
63
|
+
this._contexts.set(def.name, {
|
|
64
|
+
name: def.name,
|
|
65
|
+
basePath: def.basePath,
|
|
66
|
+
actors,
|
|
67
|
+
modules,
|
|
68
|
+
commands,
|
|
69
|
+
ai,
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Register the implicit admin context (when no src/contexts/ exists).
|
|
74
|
+
* All modules, all commands, AI enabled.
|
|
75
|
+
*/
|
|
76
|
+
registerDefault(availableModules, availableCommands) {
|
|
77
|
+
const modules = new Map();
|
|
78
|
+
for (const name of availableModules) {
|
|
79
|
+
modules.set(name, { methods: '*', public: false });
|
|
80
|
+
}
|
|
81
|
+
this._contexts.set('admin', {
|
|
82
|
+
name: 'admin',
|
|
83
|
+
basePath: '/api/admin',
|
|
84
|
+
actors: ['user'],
|
|
85
|
+
modules,
|
|
86
|
+
commands: new Set(availableCommands),
|
|
87
|
+
ai: { enabled: true, commands: [...availableCommands] },
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Resolve a context from request pathname + actor type.
|
|
92
|
+
* Matches by basePath prefix, then checks actor is allowed.
|
|
93
|
+
*/
|
|
94
|
+
resolve(pathname, actorType) {
|
|
95
|
+
for (const [, ctx] of this._contexts) {
|
|
96
|
+
if (pathname.startsWith(ctx.basePath)) {
|
|
97
|
+
if (ctx.actors.includes(actorType) || ctx.actors.includes('*')) {
|
|
98
|
+
return ctx;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
return null;
|
|
103
|
+
}
|
|
104
|
+
/** List all registered contexts. */
|
|
105
|
+
list() {
|
|
106
|
+
return [...this._contexts.values()];
|
|
107
|
+
}
|
|
108
|
+
/** Get a context by name. */
|
|
109
|
+
get(name) {
|
|
110
|
+
return this._contexts.get(name);
|
|
111
|
+
}
|
|
112
|
+
/** Check if a command is visible in a context. */
|
|
113
|
+
isCommandVisible(contextName, commandName) {
|
|
114
|
+
const ctx = this._contexts.get(contextName);
|
|
115
|
+
if (!ctx)
|
|
116
|
+
return false;
|
|
117
|
+
return ctx.commands.has(commandName);
|
|
118
|
+
}
|
|
119
|
+
/** Check if a module is exposed in a context. */
|
|
120
|
+
isModuleExposed(contextName, moduleName) {
|
|
121
|
+
const ctx = this._contexts.get(contextName);
|
|
122
|
+
if (!ctx)
|
|
123
|
+
return false;
|
|
124
|
+
return ctx.modules.has(moduleName);
|
|
125
|
+
}
|
|
126
|
+
/** Check if a module is public (no auth required) in a context. */
|
|
127
|
+
isPublicModule(contextName, moduleName) {
|
|
128
|
+
const ctx = this._contexts.get(contextName);
|
|
129
|
+
if (!ctx)
|
|
130
|
+
return false;
|
|
131
|
+
const mod = ctx.modules.get(moduleName);
|
|
132
|
+
return mod?.public ?? false;
|
|
133
|
+
}
|
|
134
|
+
/** Get AI-visible commands for a context. */
|
|
135
|
+
getAiCommands(contextName) {
|
|
136
|
+
const ctx = this._contexts.get(contextName);
|
|
137
|
+
if (!ctx || !ctx.ai.enabled)
|
|
138
|
+
return [];
|
|
139
|
+
return ctx.ai.commands;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/context/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AAGA,cAAc,UAAU,CAAA"}
|
package/dist/db/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,8CAA8C;AAE9C,cAAc,UAAU,CAAA"}
|