@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,63 @@
|
|
|
1
|
+
import type { AuthContext } from '../auth/types';
|
|
2
|
+
/**
|
|
3
|
+
* Module name for command graph access — autocompletes from codegen.
|
|
4
|
+
*/
|
|
5
|
+
type ModuleNameArg = keyof MantaGeneratedAppModules | (string & {});
|
|
6
|
+
/**
|
|
7
|
+
* Per-module command access rule:
|
|
8
|
+
* - `true` — all commands of this module
|
|
9
|
+
* - `string[]` — only these command operations (e.g. ['create', 'update', 'delete'])
|
|
10
|
+
* - `(auth) => filters` — all commands, but with row-level scope injected into context
|
|
11
|
+
*/
|
|
12
|
+
export type CommandAccessRule = true | string[] | ((auth: AuthContext) => Record<string, unknown>);
|
|
13
|
+
/**
|
|
14
|
+
* Module access map — defines which modules' commands are accessible and how.
|
|
15
|
+
*/
|
|
16
|
+
export type CommandAccessMap = Record<string, CommandAccessRule>;
|
|
17
|
+
/**
|
|
18
|
+
* Command graph definition — controls which module commands are exposed in a context.
|
|
19
|
+
*/
|
|
20
|
+
export interface CommandGraphDefinition {
|
|
21
|
+
__type: 'command-graph';
|
|
22
|
+
/** '*' = wildcard (all modules, all commands). Otherwise per-module rules. */
|
|
23
|
+
access: '*' | CommandAccessMap;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Define command graph access for a context.
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* // src/commands/admin/graph.ts — full access
|
|
31
|
+
* export default defineCommandGraph('*')
|
|
32
|
+
*
|
|
33
|
+
* // src/commands/store/graph.ts — scoped access
|
|
34
|
+
* export default defineCommandGraph({
|
|
35
|
+
* catalog: true, // all catalog commands
|
|
36
|
+
* customer: ['create', 'update'], // only create + update
|
|
37
|
+
* order: (auth) => ({ customer_id: auth.id }), // all commands, scoped to user
|
|
38
|
+
* })
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export declare function defineCommandGraph(access: '*'): CommandGraphDefinition;
|
|
42
|
+
export declare function defineCommandGraph(access: Record<ModuleNameArg, CommandAccessRule>): CommandGraphDefinition;
|
|
43
|
+
/**
|
|
44
|
+
* Check if a module is allowed by the command graph definition.
|
|
45
|
+
*/
|
|
46
|
+
export declare function isModuleAllowed(def: CommandGraphDefinition, moduleName: string): boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Check if a specific command operation is allowed for a module.
|
|
49
|
+
* @param def - Command graph definition
|
|
50
|
+
* @param moduleName - Module name (e.g. 'catalog')
|
|
51
|
+
* @param operation - Command operation (e.g. 'create', 'update', 'delete', or custom name)
|
|
52
|
+
* @returns true if allowed, false if blocked
|
|
53
|
+
*/
|
|
54
|
+
export declare function isCommandAllowed(def: CommandGraphDefinition, moduleName: string, operation: string): boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Get the row-level scope for a module's commands, given the auth context.
|
|
57
|
+
* Returns undefined if no scope (wildcard, `true`, or array rule).
|
|
58
|
+
* Returns the scope record if a function rule is defined.
|
|
59
|
+
* Returns null if module is not allowed.
|
|
60
|
+
*/
|
|
61
|
+
export declare function getCommandScope(def: CommandGraphDefinition, moduleName: string, auth: AuthContext | null): Record<string, unknown> | undefined | null;
|
|
62
|
+
export {};
|
|
63
|
+
//# sourceMappingURL=define-command-graph.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"define-command-graph.d.ts","sourceRoot":"","sources":["../../src/command/define-command-graph.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAGhD;;GAEG;AACH,KAAK,aAAa,GAAG,MAAM,wBAAwB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;AAEnE;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,GAAG,IAAI,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,WAAW,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;AAElG;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;AAEhE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,eAAe,CAAA;IACvB,8EAA8E;IAC9E,MAAM,EAAE,GAAG,GAAG,gBAAgB,CAAA;CAC/B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,GAAG,GAAG,sBAAsB,CAAA;AACvE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,aAAa,EAAE,iBAAiB,CAAC,GAAG,sBAAsB,CAAA;AAe5G;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,sBAAsB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAGxF;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,sBAAsB,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAS5G;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,sBAAsB,EAC3B,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,WAAW,GAAG,IAAI,GACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI,CAO5C"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
// defineCommandGraph — Expose module commands for a context via catch-all route.
|
|
2
|
+
//
|
|
3
|
+
// Three modes:
|
|
4
|
+
// defineCommandGraph('*') → wildcard, all module commands
|
|
5
|
+
// defineCommandGraph({ catalog: true, customer: ['create', 'update'] })
|
|
6
|
+
// → per-module filtering
|
|
7
|
+
// No defineCommandGraph = no catch-all command access → only explicit defineCommand routes
|
|
8
|
+
//
|
|
9
|
+
// Usage:
|
|
10
|
+
// // src/commands/admin/graph.ts — full access
|
|
11
|
+
// export default defineCommandGraph('*')
|
|
12
|
+
//
|
|
13
|
+
// // src/commands/store/graph.ts — scoped access
|
|
14
|
+
// export default defineCommandGraph({
|
|
15
|
+
// catalog: true,
|
|
16
|
+
// customer: ['create', 'update'],
|
|
17
|
+
// order: (auth) => ({ customer_id: auth.id }),
|
|
18
|
+
// })
|
|
19
|
+
import { MantaError } from '../errors/manta-error';
|
|
20
|
+
export function defineCommandGraph(access) {
|
|
21
|
+
if (access !== '*' && (typeof access !== 'object' || access === null)) {
|
|
22
|
+
throw new MantaError('INVALID_DATA', 'defineCommandGraph() requires "*" or a module access map');
|
|
23
|
+
}
|
|
24
|
+
if (typeof access === 'object' && Object.keys(access).length === 0) {
|
|
25
|
+
throw new MantaError('INVALID_DATA', 'defineCommandGraph() module map cannot be empty. Use "*" for full access.');
|
|
26
|
+
}
|
|
27
|
+
return {
|
|
28
|
+
__type: 'command-graph',
|
|
29
|
+
access,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Check if a module is allowed by the command graph definition.
|
|
34
|
+
*/
|
|
35
|
+
export function isModuleAllowed(def, moduleName) {
|
|
36
|
+
if (def.access === '*')
|
|
37
|
+
return true;
|
|
38
|
+
return moduleName in def.access;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Check if a specific command operation is allowed for a module.
|
|
42
|
+
* @param def - Command graph definition
|
|
43
|
+
* @param moduleName - Module name (e.g. 'catalog')
|
|
44
|
+
* @param operation - Command operation (e.g. 'create', 'update', 'delete', or custom name)
|
|
45
|
+
* @returns true if allowed, false if blocked
|
|
46
|
+
*/
|
|
47
|
+
export function isCommandAllowed(def, moduleName, operation) {
|
|
48
|
+
if (def.access === '*')
|
|
49
|
+
return true;
|
|
50
|
+
const rule = def.access[moduleName];
|
|
51
|
+
if (rule === undefined)
|
|
52
|
+
return false;
|
|
53
|
+
if (rule === true)
|
|
54
|
+
return true;
|
|
55
|
+
if (Array.isArray(rule))
|
|
56
|
+
return rule.includes(operation);
|
|
57
|
+
// Function rule = all commands allowed (scoping is applied at execution time)
|
|
58
|
+
if (typeof rule === 'function')
|
|
59
|
+
return true;
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Get the row-level scope for a module's commands, given the auth context.
|
|
64
|
+
* Returns undefined if no scope (wildcard, `true`, or array rule).
|
|
65
|
+
* Returns the scope record if a function rule is defined.
|
|
66
|
+
* Returns null if module is not allowed.
|
|
67
|
+
*/
|
|
68
|
+
export function getCommandScope(def, moduleName, auth) {
|
|
69
|
+
if (def.access === '*')
|
|
70
|
+
return undefined; // no scope
|
|
71
|
+
const rule = def.access[moduleName];
|
|
72
|
+
if (rule === undefined)
|
|
73
|
+
return null; // not allowed
|
|
74
|
+
if (rule === true || Array.isArray(rule))
|
|
75
|
+
return undefined; // no scope
|
|
76
|
+
if (!auth)
|
|
77
|
+
return null; // scoped module but no auth → blocked
|
|
78
|
+
return rule(auth);
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=define-command-graph.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"define-command-graph.js","sourceRoot":"","sources":["../../src/command/define-command-graph.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,EAAE;AACF,eAAe;AACf,yFAAyF;AACzF,0EAA0E;AAC1E,gFAAgF;AAChF,+FAA+F;AAC/F,EAAE;AACF,SAAS;AACT,iDAAiD;AACjD,2CAA2C;AAC3C,EAAE;AACF,mDAAmD;AACnD,wCAAwC;AACxC,qBAAqB;AACrB,sCAAsC;AACtC,mDAAmD;AACnD,OAAO;AAGP,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AA+ClD,MAAM,UAAU,kBAAkB,CAAC,MAAsD;IACvF,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,CAAC,EAAE,CAAC;QACtE,MAAM,IAAI,UAAU,CAAC,cAAc,EAAE,0DAA0D,CAAC,CAAA;IAClG,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnE,MAAM,IAAI,UAAU,CAAC,cAAc,EAAE,2EAA2E,CAAC,CAAA;IACnH,CAAC;IAED,OAAO;QACL,MAAM,EAAE,eAAe;QACvB,MAAM;KACP,CAAA;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,GAA2B,EAAE,UAAkB;IAC7E,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAA;IACnC,OAAO,UAAU,IAAI,GAAG,CAAC,MAAM,CAAA;AACjC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAA2B,EAAE,UAAkB,EAAE,SAAiB;IACjG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAA;IACnC,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACnC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,KAAK,CAAA;IACpC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;IACxD,8EAA8E;IAC9E,IAAI,OAAO,IAAI,KAAK,UAAU;QAAE,OAAO,IAAI,CAAA;IAC3C,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAC7B,GAA2B,EAC3B,UAAkB,EAClB,IAAwB;IAExB,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,SAAS,CAAA,CAAC,WAAW;IACpD,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACnC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA,CAAC,cAAc;IAClD,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAA,CAAC,WAAW;IACtE,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA,CAAC,sCAAsC;IAC7D,OAAO,IAAI,CAAC,IAAI,CAAC,CAAA;AACnB,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import type { DmlEntity } from '../dml/entity';
|
|
3
|
+
export interface EntityZodSchemas {
|
|
4
|
+
/** Zod schema for create input — required fields required, nullable/default fields optional */
|
|
5
|
+
create: z.ZodObject<Record<string, z.ZodType>>;
|
|
6
|
+
/** Zod schema for update input — all fields optional + required `id` */
|
|
7
|
+
update: z.ZodObject<Record<string, z.ZodType>>;
|
|
8
|
+
/** Zod schema for delete input — just `id` (or `ids` for bulk) */
|
|
9
|
+
delete: z.ZodObject<Record<string, z.ZodType>>;
|
|
10
|
+
/** Zod schema for retrieve input — just `id` */
|
|
11
|
+
retrieve: z.ZodObject<Record<string, z.ZodType>>;
|
|
12
|
+
/** Zod schema for list input — filters + pagination */
|
|
13
|
+
list: z.ZodObject<Record<string, z.ZodType>>;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Generate Zod schemas from a DML entity for auto-generated commands.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```typescript
|
|
20
|
+
* const Product = defineModel('Product', {
|
|
21
|
+
* title: field.text(),
|
|
22
|
+
* price: field.number(),
|
|
23
|
+
* status: field.enum(['draft', 'active']),
|
|
24
|
+
* description: field.text().nullable(),
|
|
25
|
+
* })
|
|
26
|
+
*
|
|
27
|
+
* const schemas = dmlToZod(Product)
|
|
28
|
+
* // schemas.create → z.object({ title: z.string(), price: z.number(), status: z.enum([...]), description: z.string().nullable().optional() })
|
|
29
|
+
* // schemas.update → z.object({ id: z.string(), title: z.string().optional(), ... })
|
|
30
|
+
* // schemas.delete → z.object({ id: z.string() })
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
export declare function dmlToZod(entity: DmlEntity): EntityZodSchemas;
|
|
34
|
+
//# sourceMappingURL=dml-to-zod.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dml-to-zod.d.ts","sourceRoot":"","sources":["../../src/command/dml-to-zod.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AA8G9C,MAAM,WAAW,gBAAgB;IAC/B,+FAA+F;IAC/F,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;IAC9C,wEAAwE;IACxE,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;IAC9C,kEAAkE;IAClE,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;IAC9C,gDAAgD;IAChD,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;IAChD,uDAAuD;IACvD,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;CAC7C;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,gBAAgB,CA0C5D"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
// dmlToZod — Convert a DML entity schema to Zod schemas for auto-generated commands.
|
|
2
|
+
//
|
|
3
|
+
// Given a DmlEntity, produces:
|
|
4
|
+
// createSchema — required fields required, nullable fields optional
|
|
5
|
+
// updateSchema — all fields optional + required `id`
|
|
6
|
+
//
|
|
7
|
+
// Implicit fields (id, created_at, updated_at, deleted_at) are excluded from create input.
|
|
8
|
+
import { z } from 'zod';
|
|
9
|
+
import { DmlEntity as DmlEntityClass } from '../dml/entity';
|
|
10
|
+
const IMPLICIT_FIELDS = new Set(['id', 'metadata', 'created_at', 'updated_at', 'deleted_at']);
|
|
11
|
+
/**
|
|
12
|
+
* Map a DML property dataType.name to a Zod type.
|
|
13
|
+
*/
|
|
14
|
+
function propertyToZod(meta) {
|
|
15
|
+
let schema;
|
|
16
|
+
switch (meta.dataType.name) {
|
|
17
|
+
case 'text':
|
|
18
|
+
schema = z.string();
|
|
19
|
+
break;
|
|
20
|
+
case 'number':
|
|
21
|
+
case 'float':
|
|
22
|
+
case 'bigNumber':
|
|
23
|
+
case 'autoIncrement':
|
|
24
|
+
schema = z.number();
|
|
25
|
+
break;
|
|
26
|
+
case 'boolean':
|
|
27
|
+
schema = z.boolean();
|
|
28
|
+
break;
|
|
29
|
+
case 'dateTime':
|
|
30
|
+
schema = z.string().datetime().or(z.date());
|
|
31
|
+
break;
|
|
32
|
+
case 'json':
|
|
33
|
+
schema = z.unknown();
|
|
34
|
+
break;
|
|
35
|
+
case 'enum': {
|
|
36
|
+
const values = (meta.values ?? meta.dataType.options?.values);
|
|
37
|
+
if (values && values.length > 0) {
|
|
38
|
+
schema = z.enum(values);
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
schema = z.string();
|
|
42
|
+
}
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
case 'array':
|
|
46
|
+
schema = z.array(z.unknown());
|
|
47
|
+
break;
|
|
48
|
+
default:
|
|
49
|
+
schema = z.unknown();
|
|
50
|
+
}
|
|
51
|
+
if (meta.nullable) {
|
|
52
|
+
schema = schema.nullable();
|
|
53
|
+
}
|
|
54
|
+
return schema;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Parse a DmlEntity schema into field metadata.
|
|
58
|
+
* Handles both DmlPropertyDefinition objects (with parse()) and DmlRelationDefinition objects.
|
|
59
|
+
*/
|
|
60
|
+
function parseEntityFields(entity) {
|
|
61
|
+
const fields = [];
|
|
62
|
+
for (const [key, value] of Object.entries(entity.schema)) {
|
|
63
|
+
if (IMPLICIT_FIELDS.has(key))
|
|
64
|
+
continue;
|
|
65
|
+
// Skip relations
|
|
66
|
+
if (DmlEntityClass.isRelation(value))
|
|
67
|
+
continue;
|
|
68
|
+
// Parse property metadata
|
|
69
|
+
if (typeof value.parse === 'function') {
|
|
70
|
+
const meta = value.parse(key);
|
|
71
|
+
// Skip computed properties (not stored)
|
|
72
|
+
if (meta.computed)
|
|
73
|
+
continue;
|
|
74
|
+
fields.push({
|
|
75
|
+
fieldName: key,
|
|
76
|
+
zodType: propertyToZod(meta),
|
|
77
|
+
nullable: meta.nullable,
|
|
78
|
+
hasDefault: meta.defaultValue !== undefined,
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return fields;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Generate Zod schemas from a DML entity for auto-generated commands.
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* ```typescript
|
|
89
|
+
* const Product = defineModel('Product', {
|
|
90
|
+
* title: field.text(),
|
|
91
|
+
* price: field.number(),
|
|
92
|
+
* status: field.enum(['draft', 'active']),
|
|
93
|
+
* description: field.text().nullable(),
|
|
94
|
+
* })
|
|
95
|
+
*
|
|
96
|
+
* const schemas = dmlToZod(Product)
|
|
97
|
+
* // schemas.create → z.object({ title: z.string(), price: z.number(), status: z.enum([...]), description: z.string().nullable().optional() })
|
|
98
|
+
* // schemas.update → z.object({ id: z.string(), title: z.string().optional(), ... })
|
|
99
|
+
* // schemas.delete → z.object({ id: z.string() })
|
|
100
|
+
* ```
|
|
101
|
+
*/
|
|
102
|
+
export function dmlToZod(entity) {
|
|
103
|
+
const fields = parseEntityFields(entity);
|
|
104
|
+
// --- Create schema ---
|
|
105
|
+
const createShape = {};
|
|
106
|
+
for (const f of fields) {
|
|
107
|
+
if (f.nullable || f.hasDefault) {
|
|
108
|
+
// Nullable or has default → optional in create
|
|
109
|
+
createShape[f.fieldName] = f.zodType.optional();
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
// Required
|
|
113
|
+
createShape[f.fieldName] = f.zodType;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
const create = z.object(createShape);
|
|
117
|
+
// --- Update schema ---
|
|
118
|
+
const updateShape = { id: z.string() };
|
|
119
|
+
for (const f of fields) {
|
|
120
|
+
updateShape[f.fieldName] = f.zodType.optional();
|
|
121
|
+
}
|
|
122
|
+
const update = z.object(updateShape);
|
|
123
|
+
// --- Delete schema ---
|
|
124
|
+
const del = z.object({
|
|
125
|
+
id: z.string(),
|
|
126
|
+
});
|
|
127
|
+
// --- Retrieve schema ---
|
|
128
|
+
const retrieve = z.object({
|
|
129
|
+
id: z.string(),
|
|
130
|
+
});
|
|
131
|
+
// --- List schema ---
|
|
132
|
+
const list = z.object({
|
|
133
|
+
filters: z.record(z.unknown()).optional(),
|
|
134
|
+
limit: z.number().int().min(1).max(1000).optional(),
|
|
135
|
+
offset: z.number().int().min(0).optional(),
|
|
136
|
+
order: z.record(z.enum(['ASC', 'DESC'])).optional(),
|
|
137
|
+
});
|
|
138
|
+
return { create, update, delete: del, retrieve, list };
|
|
139
|
+
}
|
|
140
|
+
//# sourceMappingURL=dml-to-zod.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dml-to-zod.js","sourceRoot":"","sources":["../../src/command/dml-to-zod.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import type { DmlEntity } from '../dml/entity';
|
|
2
|
+
import type { ResolvedLink } from '../link';
|
|
3
|
+
import type { CommandDefinition } from './types';
|
|
4
|
+
/**
|
|
5
|
+
* Entity command operation type.
|
|
6
|
+
* Used for filtering in defineCommandGraph (e.g. customer: ['create', 'update']).
|
|
7
|
+
*/
|
|
8
|
+
export type EntityCommandOperation = 'create' | 'update' | 'delete' | 'retrieve' | 'list' | 'link' | 'unlink';
|
|
9
|
+
/**
|
|
10
|
+
* A generated entity command — a CommandDefinition augmented with module/entity metadata.
|
|
11
|
+
*/
|
|
12
|
+
export interface EntityCommand extends CommandDefinition {
|
|
13
|
+
/** Module this command belongs to (e.g. 'catalog') */
|
|
14
|
+
__module: string;
|
|
15
|
+
/** Entity this command operates on (e.g. 'Product') */
|
|
16
|
+
__entity: string;
|
|
17
|
+
/** CRUD operation type */
|
|
18
|
+
__operation: EntityCommandOperation;
|
|
19
|
+
/** Whether this is an auto-generated command (vs explicit) */
|
|
20
|
+
__autoGenerated: true;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Generate CRUD commands for a single entity within a module.
|
|
24
|
+
*
|
|
25
|
+
* Command names use camelCase for ergonomic `step.command.createProduct()` usage.
|
|
26
|
+
* The HTTP route handler converts kebab-case URLs to camelCase for lookup.
|
|
27
|
+
*
|
|
28
|
+
* @param moduleName - Module name (e.g. 'customer')
|
|
29
|
+
* @param entity - DML entity definition
|
|
30
|
+
* @returns Array of auto-generated EntityCommand definitions
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```typescript
|
|
34
|
+
* const Customer = defineModel('Customer', { email: field.text(), name: field.text() })
|
|
35
|
+
* const commands = generateEntityCommands('customer', Customer)
|
|
36
|
+
* // → [
|
|
37
|
+
* // { name: 'createCustomer', ... },
|
|
38
|
+
* // { name: 'updateCustomer', ... },
|
|
39
|
+
* // { name: 'deleteCustomer', ... },
|
|
40
|
+
* // { name: 'retrieveCustomer', ... },
|
|
41
|
+
* // { name: 'listCustomers', ... },
|
|
42
|
+
* // ]
|
|
43
|
+
* // Usage: step.command.createCustomer({ email: '...' })
|
|
44
|
+
* // HTTP: POST /api/admin/command/create-customer
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
export declare function generateEntityCommands(moduleName: string, entity: DmlEntity): EntityCommand[];
|
|
48
|
+
/**
|
|
49
|
+
* Generate entity commands for all entities in a module.
|
|
50
|
+
*/
|
|
51
|
+
export declare function generateModuleCommands(moduleName: string, models: Record<string, DmlEntity>): EntityCommand[];
|
|
52
|
+
/**
|
|
53
|
+
* Generate link and unlink commands for a ResolvedLink.
|
|
54
|
+
*
|
|
55
|
+
* Names are camelCase for ergonomic usage: `step.command.linkCustomerCustomerGroup()`
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* ```typescript
|
|
59
|
+
* // From: defineLink(many('customer'), many('customer_group'))
|
|
60
|
+
* // Generates:
|
|
61
|
+
* // { name: 'linkCustomerCustomerGroup', ... }
|
|
62
|
+
* // { name: 'unlinkCustomerCustomerGroup', ... }
|
|
63
|
+
* // Usage: step.command.linkCustomerCustomerGroup({ customer_id: '...', customer_group_id: '...' })
|
|
64
|
+
* // HTTP: POST /api/admin/command/link-customer-customer-group
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
export declare function generateLinkCommands(link: ResolvedLink): EntityCommand[];
|
|
68
|
+
//# sourceMappingURL=generate-entity-commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-entity-commands.d.ts","sourceRoot":"","sources":["../../src/command/generate-entity-commands.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAG3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAEhD;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAA;AAE7G;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD,sDAAsD;IACtD,QAAQ,EAAE,MAAM,CAAA;IAChB,uDAAuD;IACvD,QAAQ,EAAE,MAAM,CAAA;IAChB,0BAA0B;IAC1B,WAAW,EAAE,sBAAsB,CAAA;IACnC,8DAA8D;IAC9D,eAAe,EAAE,IAAI,CAAA;CACtB;AA2BD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,aAAa,EAAE,CA6I7F;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,aAAa,EAAE,CAM7G;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,aAAa,EAAE,CA8JxE"}
|