stratal 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +50 -0
- package/dist/application.d.ts +118 -0
- package/dist/application.d.ts.map +1 -0
- package/dist/application.js +247 -0
- package/dist/application.js.map +1 -0
- package/dist/cache/cache.module.d.ts +14 -0
- package/dist/cache/cache.module.d.ts.map +1 -0
- package/dist/cache/cache.module.js +32 -0
- package/dist/cache/cache.module.js.map +1 -0
- package/dist/cache/cache.tokens.d.ts +5 -0
- package/dist/cache/cache.tokens.d.ts.map +1 -0
- package/dist/cache/cache.tokens.js +4 -0
- package/dist/cache/cache.tokens.js.map +1 -0
- package/dist/cache/errors/cache-delete.error.d.ts +11 -0
- package/dist/cache/errors/cache-delete.error.d.ts.map +1 -0
- package/dist/cache/errors/cache-delete.error.js +14 -0
- package/dist/cache/errors/cache-delete.error.js.map +1 -0
- package/dist/cache/errors/cache-get.error.d.ts +11 -0
- package/dist/cache/errors/cache-get.error.d.ts.map +1 -0
- package/dist/cache/errors/cache-get.error.js +14 -0
- package/dist/cache/errors/cache-get.error.js.map +1 -0
- package/dist/cache/errors/cache-list.error.d.ts +10 -0
- package/dist/cache/errors/cache-list.error.d.ts.map +1 -0
- package/dist/cache/errors/cache-list.error.js +13 -0
- package/dist/cache/errors/cache-list.error.js.map +1 -0
- package/dist/cache/errors/cache-put.error.d.ts +11 -0
- package/dist/cache/errors/cache-put.error.d.ts.map +1 -0
- package/dist/cache/errors/cache-put.error.js +14 -0
- package/dist/cache/errors/cache-put.error.js.map +1 -0
- package/dist/cache/errors/index.d.ts +5 -0
- package/dist/cache/errors/index.d.ts.map +1 -0
- package/dist/cache/errors/index.js +5 -0
- package/dist/cache/errors/index.js.map +1 -0
- package/dist/cache/index.d.ts +5 -0
- package/dist/cache/index.d.ts.map +1 -0
- package/dist/cache/index.js +5 -0
- package/dist/cache/index.js.map +1 -0
- package/dist/cache/services/cache.service.d.ts +152 -0
- package/dist/cache/services/cache.service.d.ts.map +1 -0
- package/dist/cache/services/cache.service.js +223 -0
- package/dist/cache/services/cache.service.js.map +1 -0
- package/dist/cache/services/index.d.ts +2 -0
- package/dist/cache/services/index.d.ts.map +1 -0
- package/dist/cache/services/index.js +2 -0
- package/dist/cache/services/index.js.map +1 -0
- package/dist/config/config.module.d.ts +79 -0
- package/dist/config/config.module.d.ts.map +1 -0
- package/dist/config/config.module.js +120 -0
- package/dist/config/config.module.js.map +1 -0
- package/dist/config/config.tokens.d.ts +4 -0
- package/dist/config/config.tokens.d.ts.map +1 -0
- package/dist/config/config.tokens.js +4 -0
- package/dist/config/config.tokens.js.map +1 -0
- package/dist/config/config.types.d.ts +68 -0
- package/dist/config/config.types.d.ts.map +1 -0
- package/dist/config/config.types.js +9 -0
- package/dist/config/config.types.js.map +1 -0
- package/dist/config/errors/config-not-initialized.error.d.ts +12 -0
- package/dist/config/errors/config-not-initialized.error.d.ts.map +1 -0
- package/dist/config/errors/config-not-initialized.error.js +15 -0
- package/dist/config/errors/config-not-initialized.error.js.map +1 -0
- package/dist/config/errors/index.d.ts +2 -0
- package/dist/config/errors/index.d.ts.map +1 -0
- package/dist/config/errors/index.js +2 -0
- package/dist/config/errors/index.js.map +1 -0
- package/dist/config/index.d.ts +7 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +9 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/register-as.d.ts +62 -0
- package/dist/config/register-as.d.ts.map +1 -0
- package/dist/config/register-as.js +48 -0
- package/dist/config/register-as.js.map +1 -0
- package/dist/config/services/config.service.d.ts +58 -0
- package/dist/config/services/config.service.d.ts.map +1 -0
- package/dist/config/services/config.service.js +123 -0
- package/dist/config/services/config.service.js.map +1 -0
- package/dist/cron/cron-job.d.ts +55 -0
- package/dist/cron/cron-job.d.ts.map +1 -0
- package/dist/cron/cron-job.js +2 -0
- package/dist/cron/cron-job.js.map +1 -0
- package/dist/cron/cron-manager.d.ts +60 -0
- package/dist/cron/cron-manager.d.ts.map +1 -0
- package/dist/cron/cron-manager.js +120 -0
- package/dist/cron/cron-manager.js.map +1 -0
- package/dist/cron/errors/cron-execution.error.d.ts +10 -0
- package/dist/cron/errors/cron-execution.error.d.ts.map +1 -0
- package/dist/cron/errors/cron-execution.error.js +17 -0
- package/dist/cron/errors/cron-execution.error.js.map +1 -0
- package/dist/cron/index.d.ts +4 -0
- package/dist/cron/index.d.ts.map +1 -0
- package/dist/cron/index.js +3 -0
- package/dist/cron/index.js.map +1 -0
- package/dist/di/conditional-binding-builder.d.ts +93 -0
- package/dist/di/conditional-binding-builder.d.ts.map +1 -0
- package/dist/di/conditional-binding-builder.js +115 -0
- package/dist/di/conditional-binding-builder.js.map +1 -0
- package/dist/di/container.d.ts +399 -0
- package/dist/di/container.d.ts.map +1 -0
- package/dist/di/container.js +466 -0
- package/dist/di/container.js.map +1 -0
- package/dist/di/decorators/inject-param.decorator.d.ts +67 -0
- package/dist/di/decorators/inject-param.decorator.d.ts.map +1 -0
- package/dist/di/decorators/inject-param.decorator.js +53 -0
- package/dist/di/decorators/inject-param.decorator.js.map +1 -0
- package/dist/di/decorators.d.ts +57 -0
- package/dist/di/decorators.d.ts.map +1 -0
- package/dist/di/decorators.js +74 -0
- package/dist/di/decorators.js.map +1 -0
- package/dist/di/errors/conditional-binding-fallback.error.d.ts +16 -0
- package/dist/di/errors/conditional-binding-fallback.error.d.ts.map +1 -0
- package/dist/di/errors/conditional-binding-fallback.error.js +19 -0
- package/dist/di/errors/conditional-binding-fallback.error.js.map +1 -0
- package/dist/di/errors/index.d.ts +3 -0
- package/dist/di/errors/index.d.ts.map +1 -0
- package/dist/di/errors/index.js +3 -0
- package/dist/di/errors/index.js.map +1 -0
- package/dist/di/errors/request-scope-operation-not-allowed.error.d.ts +12 -0
- package/dist/di/errors/request-scope-operation-not-allowed.error.d.ts.map +1 -0
- package/dist/di/errors/request-scope-operation-not-allowed.error.js +15 -0
- package/dist/di/errors/request-scope-operation-not-allowed.error.js.map +1 -0
- package/dist/di/index.d.ts +13 -0
- package/dist/di/index.d.ts.map +1 -0
- package/dist/di/index.js +11 -0
- package/dist/di/index.js.map +1 -0
- package/dist/di/request-context-store.d.ts +122 -0
- package/dist/di/request-context-store.d.ts.map +1 -0
- package/dist/di/request-context-store.js +135 -0
- package/dist/di/request-context-store.js.map +1 -0
- package/dist/di/tokens.d.ts +25 -0
- package/dist/di/tokens.d.ts.map +1 -0
- package/dist/di/tokens.js +27 -0
- package/dist/di/tokens.js.map +1 -0
- package/dist/di/types.d.ts +56 -0
- package/dist/di/types.d.ts.map +1 -0
- package/dist/di/types.js +34 -0
- package/dist/di/types.js.map +1 -0
- package/dist/email/consumers/email.consumer.d.ts +43 -0
- package/dist/email/consumers/email.consumer.d.ts.map +1 -0
- package/dist/email/consumers/email.consumer.js +133 -0
- package/dist/email/consumers/email.consumer.js.map +1 -0
- package/dist/email/consumers/index.d.ts +2 -0
- package/dist/email/consumers/index.d.ts.map +1 -0
- package/dist/email/consumers/index.js +2 -0
- package/dist/email/consumers/index.js.map +1 -0
- package/dist/email/contracts/email-attachment.d.ts +61 -0
- package/dist/email/contracts/email-attachment.d.ts.map +1 -0
- package/dist/email/contracts/email-attachment.js +58 -0
- package/dist/email/contracts/email-attachment.js.map +1 -0
- package/dist/email/contracts/email-message.contract.d.ts +58 -0
- package/dist/email/contracts/email-message.contract.d.ts.map +1 -0
- package/dist/email/contracts/email-message.contract.js +62 -0
- package/dist/email/contracts/email-message.contract.js.map +1 -0
- package/dist/email/contracts/index.d.ts +4 -0
- package/dist/email/contracts/index.d.ts.map +1 -0
- package/dist/email/contracts/index.js +4 -0
- package/dist/email/contracts/index.js.map +1 -0
- package/dist/email/contracts/send-email.input.d.ts +72 -0
- package/dist/email/contracts/send-email.input.d.ts.map +1 -0
- package/dist/email/contracts/send-email.input.js +28 -0
- package/dist/email/contracts/send-email.input.js.map +1 -0
- package/dist/email/email.module.d.ts +122 -0
- package/dist/email/email.module.d.ts.map +1 -0
- package/dist/email/email.module.js +129 -0
- package/dist/email/email.module.js.map +1 -0
- package/dist/email/email.tokens.d.ts +33 -0
- package/dist/email/email.tokens.d.ts.map +1 -0
- package/dist/email/email.tokens.js +33 -0
- package/dist/email/email.tokens.js.map +1 -0
- package/dist/email/errors/email-provider-not-supported.error.d.ts +13 -0
- package/dist/email/errors/email-provider-not-supported.error.d.ts.map +1 -0
- package/dist/email/errors/email-provider-not-supported.error.js +15 -0
- package/dist/email/errors/email-provider-not-supported.error.js.map +1 -0
- package/dist/email/errors/email-resend-api-failed.error.d.ts +13 -0
- package/dist/email/errors/email-resend-api-failed.error.d.ts.map +1 -0
- package/dist/email/errors/email-resend-api-failed.error.js +15 -0
- package/dist/email/errors/email-resend-api-failed.error.js.map +1 -0
- package/dist/email/errors/email-smtp-connection-failed.error.d.ts +13 -0
- package/dist/email/errors/email-smtp-connection-failed.error.d.ts.map +1 -0
- package/dist/email/errors/email-smtp-connection-failed.error.js +15 -0
- package/dist/email/errors/email-smtp-connection-failed.error.js.map +1 -0
- package/dist/email/errors/index.d.ts +7 -0
- package/dist/email/errors/index.d.ts.map +1 -0
- package/dist/email/errors/index.js +7 -0
- package/dist/email/errors/index.js.map +1 -0
- package/dist/email/errors/resend-api-key-missing.error.d.ts +13 -0
- package/dist/email/errors/resend-api-key-missing.error.d.ts.map +1 -0
- package/dist/email/errors/resend-api-key-missing.error.js +15 -0
- package/dist/email/errors/resend-api-key-missing.error.js.map +1 -0
- package/dist/email/errors/smtp-configuration-missing.error.d.ts +13 -0
- package/dist/email/errors/smtp-configuration-missing.error.d.ts.map +1 -0
- package/dist/email/errors/smtp-configuration-missing.error.js +15 -0
- package/dist/email/errors/smtp-configuration-missing.error.js.map +1 -0
- package/dist/email/errors/smtp-host-missing.error.d.ts +13 -0
- package/dist/email/errors/smtp-host-missing.error.d.ts.map +1 -0
- package/dist/email/errors/smtp-host-missing.error.js +15 -0
- package/dist/email/errors/smtp-host-missing.error.js.map +1 -0
- package/dist/email/index.d.ts +6 -0
- package/dist/email/index.d.ts.map +1 -0
- package/dist/email/index.js +8 -0
- package/dist/email/index.js.map +1 -0
- package/dist/email/providers/base-email.provider.d.ts +22 -0
- package/dist/email/providers/base-email.provider.d.ts.map +1 -0
- package/dist/email/providers/base-email.provider.js +43 -0
- package/dist/email/providers/base-email.provider.js.map +1 -0
- package/dist/email/providers/email-provider.interface.d.ts +66 -0
- package/dist/email/providers/email-provider.interface.d.ts.map +1 -0
- package/dist/email/providers/email-provider.interface.js +2 -0
- package/dist/email/providers/email-provider.interface.js.map +1 -0
- package/dist/email/providers/index.d.ts +5 -0
- package/dist/email/providers/index.d.ts.map +1 -0
- package/dist/email/providers/index.js +5 -0
- package/dist/email/providers/index.js.map +1 -0
- package/dist/email/providers/resend.provider.d.ts +26 -0
- package/dist/email/providers/resend.provider.d.ts.map +1 -0
- package/dist/email/providers/resend.provider.js +84 -0
- package/dist/email/providers/resend.provider.js.map +1 -0
- package/dist/email/providers/smtp.provider.d.ts +25 -0
- package/dist/email/providers/smtp.provider.d.ts.map +1 -0
- package/dist/email/providers/smtp.provider.js +86 -0
- package/dist/email/providers/smtp.provider.js.map +1 -0
- package/dist/email/services/email-provider-factory.d.ts +24 -0
- package/dist/email/services/email-provider-factory.d.ts.map +1 -0
- package/dist/email/services/email-provider-factory.js +59 -0
- package/dist/email/services/email-provider-factory.js.map +1 -0
- package/dist/email/services/email.service.d.ts +51 -0
- package/dist/email/services/email.service.d.ts.map +1 -0
- package/dist/email/services/email.service.js +75 -0
- package/dist/email/services/email.service.js.map +1 -0
- package/dist/email/services/index.d.ts +3 -0
- package/dist/email/services/index.d.ts.map +1 -0
- package/dist/email/services/index.js +3 -0
- package/dist/email/services/index.js.map +1 -0
- package/dist/env.d.ts +21 -0
- package/dist/env.d.ts.map +1 -0
- package/dist/env.js +2 -0
- package/dist/env.js.map +1 -0
- package/dist/errors/application-error.d.ts +80 -0
- package/dist/errors/application-error.d.ts.map +1 -0
- package/dist/errors/application-error.js +118 -0
- package/dist/errors/application-error.js.map +1 -0
- package/dist/errors/error-codes.d.ts +198 -0
- package/dist/errors/error-codes.d.ts.map +1 -0
- package/dist/errors/error-codes.js +180 -0
- package/dist/errors/error-codes.js.map +1 -0
- package/dist/errors/get-http-status.d.ts +12 -0
- package/dist/errors/get-http-status.d.ts.map +1 -0
- package/dist/errors/get-http-status.js +62 -0
- package/dist/errors/get-http-status.js.map +1 -0
- package/dist/errors/index.d.ts +5 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +5 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/errors/is-application-error.d.ts +9 -0
- package/dist/errors/is-application-error.d.ts.map +1 -0
- package/dist/errors/is-application-error.js +11 -0
- package/dist/errors/is-application-error.js.map +1 -0
- package/dist/guards/guard-execution.service.d.ts +37 -0
- package/dist/guards/guard-execution.service.d.ts.map +1 -0
- package/dist/guards/guard-execution.service.js +74 -0
- package/dist/guards/guard-execution.service.js.map +1 -0
- package/dist/guards/index.d.ts +12 -0
- package/dist/guards/index.d.ts.map +1 -0
- package/dist/guards/index.js +12 -0
- package/dist/guards/index.js.map +1 -0
- package/dist/guards/types.d.ts +60 -0
- package/dist/guards/types.d.ts.map +1 -0
- package/dist/guards/types.js +5 -0
- package/dist/guards/types.js.map +1 -0
- package/dist/guards/use-guards.decorator.d.ts +73 -0
- package/dist/guards/use-guards.decorator.d.ts.map +1 -0
- package/dist/guards/use-guards.decorator.js +89 -0
- package/dist/guards/use-guards.decorator.js.map +1 -0
- package/dist/i18n/errors/index.d.ts +6 -0
- package/dist/i18n/errors/index.d.ts.map +1 -0
- package/dist/i18n/errors/index.js +6 -0
- package/dist/i18n/errors/index.js.map +1 -0
- package/dist/i18n/errors/locale-not-supported.error.d.ts +12 -0
- package/dist/i18n/errors/locale-not-supported.error.d.ts.map +1 -0
- package/dist/i18n/errors/locale-not-supported.error.js +15 -0
- package/dist/i18n/errors/locale-not-supported.error.js.map +1 -0
- package/dist/i18n/errors/translation-missing.error.d.ts +12 -0
- package/dist/i18n/errors/translation-missing.error.d.ts.map +1 -0
- package/dist/i18n/errors/translation-missing.error.js +15 -0
- package/dist/i18n/errors/translation-missing.error.js.map +1 -0
- package/dist/i18n/i18n.module.d.ts +60 -0
- package/dist/i18n/i18n.module.d.ts.map +1 -0
- package/dist/i18n/i18n.module.js +103 -0
- package/dist/i18n/i18n.module.js.map +1 -0
- package/dist/i18n/i18n.options.d.ts +60 -0
- package/dist/i18n/i18n.options.d.ts.map +1 -0
- package/dist/i18n/i18n.options.js +18 -0
- package/dist/i18n/i18n.options.js.map +1 -0
- package/dist/i18n/i18n.tokens.d.ts +13 -0
- package/dist/i18n/i18n.tokens.d.ts.map +1 -0
- package/dist/i18n/i18n.tokens.js +13 -0
- package/dist/i18n/i18n.tokens.js.map +1 -0
- package/dist/i18n/i18n.types.d.ts +78 -0
- package/dist/i18n/i18n.types.d.ts.map +1 -0
- package/dist/i18n/i18n.types.js +8 -0
- package/dist/i18n/i18n.types.js.map +1 -0
- package/dist/i18n/index.d.ts +12 -0
- package/dist/i18n/index.d.ts.map +1 -0
- package/dist/i18n/index.js +12 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/i18n/messages/en/common.d.ts +23 -0
- package/dist/i18n/messages/en/common.d.ts.map +1 -0
- package/dist/i18n/messages/en/common.js +23 -0
- package/dist/i18n/messages/en/common.js.map +1 -0
- package/dist/i18n/messages/en/emails.d.ts +12 -0
- package/dist/i18n/messages/en/emails.d.ts.map +1 -0
- package/dist/i18n/messages/en/emails.js +12 -0
- package/dist/i18n/messages/en/emails.js.map +1 -0
- package/dist/i18n/messages/en/errors.d.ts +115 -0
- package/dist/i18n/messages/en/errors.d.ts.map +1 -0
- package/dist/i18n/messages/en/errors.js +132 -0
- package/dist/i18n/messages/en/errors.js.map +1 -0
- package/dist/i18n/messages/en/index.d.ts +13 -0
- package/dist/i18n/messages/en/index.d.ts.map +1 -0
- package/dist/i18n/messages/en/index.js +13 -0
- package/dist/i18n/messages/en/index.js.map +1 -0
- package/dist/i18n/messages/en/validation.d.ts +38 -0
- package/dist/i18n/messages/en/validation.d.ts.map +1 -0
- package/dist/i18n/messages/en/validation.js +38 -0
- package/dist/i18n/messages/en/validation.js.map +1 -0
- package/dist/i18n/messages/en/zod.d.ts +125 -0
- package/dist/i18n/messages/en/zod.d.ts.map +1 -0
- package/dist/i18n/messages/en/zod.js +132 -0
- package/dist/i18n/messages/en/zod.js.map +1 -0
- package/dist/i18n/messages/index.d.ts +27 -0
- package/dist/i18n/messages/index.d.ts.map +1 -0
- package/dist/i18n/messages/index.js +25 -0
- package/dist/i18n/messages/index.js.map +1 -0
- package/dist/i18n/middleware/i18n-context.middleware.d.ts +15 -0
- package/dist/i18n/middleware/i18n-context.middleware.d.ts.map +1 -0
- package/dist/i18n/middleware/i18n-context.middleware.js +42 -0
- package/dist/i18n/middleware/i18n-context.middleware.js.map +1 -0
- package/dist/i18n/middleware/index.d.ts +6 -0
- package/dist/i18n/middleware/index.d.ts.map +1 -0
- package/dist/i18n/middleware/index.js +6 -0
- package/dist/i18n/middleware/index.js.map +1 -0
- package/dist/i18n/middleware/locale-extraction.middleware.d.ts +19 -0
- package/dist/i18n/middleware/locale-extraction.middleware.d.ts.map +1 -0
- package/dist/i18n/middleware/locale-extraction.middleware.js +49 -0
- package/dist/i18n/middleware/locale-extraction.middleware.js.map +1 -0
- package/dist/i18n/services/i18n.service.d.ts +62 -0
- package/dist/i18n/services/i18n.service.d.ts.map +1 -0
- package/dist/i18n/services/i18n.service.js +118 -0
- package/dist/i18n/services/i18n.service.js.map +1 -0
- package/dist/i18n/services/message-loader.service.d.ts +47 -0
- package/dist/i18n/services/message-loader.service.d.ts.map +1 -0
- package/dist/i18n/services/message-loader.service.js +121 -0
- package/dist/i18n/services/message-loader.service.js.map +1 -0
- package/dist/i18n/setup.d.ts +27 -0
- package/dist/i18n/setup.d.ts.map +1 -0
- package/dist/i18n/setup.js +40 -0
- package/dist/i18n/setup.js.map +1 -0
- package/dist/i18n/validation/index.d.ts +9 -0
- package/dist/i18n/validation/index.d.ts.map +1 -0
- package/dist/i18n/validation/index.js +10 -0
- package/dist/i18n/validation/index.js.map +1 -0
- package/dist/i18n/validation/validation.context.d.ts +34 -0
- package/dist/i18n/validation/validation.context.d.ts.map +1 -0
- package/dist/i18n/validation/validation.context.js +42 -0
- package/dist/i18n/validation/validation.context.js.map +1 -0
- package/dist/i18n/validation/validation.error-map.d.ts +8 -0
- package/dist/i18n/validation/validation.error-map.d.ts.map +1 -0
- package/dist/i18n/validation/validation.error-map.js +158 -0
- package/dist/i18n/validation/validation.error-map.js.map +1 -0
- package/dist/i18n/validation/validation.types.d.ts +44 -0
- package/dist/i18n/validation/validation.types.d.ts.map +1 -0
- package/dist/i18n/validation/validation.types.js +2 -0
- package/dist/i18n/validation/validation.types.js.map +1 -0
- package/dist/i18n/validation/with-i18n.d.ts +29 -0
- package/dist/i18n/validation/with-i18n.d.ts.map +1 -0
- package/dist/i18n/validation/with-i18n.js +40 -0
- package/dist/i18n/validation/with-i18n.js.map +1 -0
- package/dist/index.d.ts +22 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +23 -0
- package/dist/index.js.map +1 -0
- package/dist/infrastructure/error-handler/error-response.d.ts +32 -0
- package/dist/infrastructure/error-handler/error-response.d.ts.map +1 -0
- package/dist/infrastructure/error-handler/error-response.js +14 -0
- package/dist/infrastructure/error-handler/error-response.js.map +1 -0
- package/dist/infrastructure/error-handler/global-error-handler.d.ts +81 -0
- package/dist/infrastructure/error-handler/global-error-handler.d.ts.map +1 -0
- package/dist/infrastructure/error-handler/global-error-handler.js +178 -0
- package/dist/infrastructure/error-handler/global-error-handler.js.map +1 -0
- package/dist/infrastructure/error-handler/index.d.ts +6 -0
- package/dist/infrastructure/error-handler/index.d.ts.map +1 -0
- package/dist/infrastructure/error-handler/index.js +5 -0
- package/dist/infrastructure/error-handler/index.js.map +1 -0
- package/dist/infrastructure/error-handler/internal-error.d.ts +16 -0
- package/dist/infrastructure/error-handler/internal-error.d.ts.map +1 -0
- package/dist/infrastructure/error-handler/internal-error.js +19 -0
- package/dist/infrastructure/error-handler/internal-error.js.map +1 -0
- package/dist/infrastructure/errors/index.d.ts +2 -0
- package/dist/infrastructure/errors/index.d.ts.map +1 -0
- package/dist/infrastructure/errors/index.js +2 -0
- package/dist/infrastructure/errors/index.js.map +1 -0
- package/dist/infrastructure/errors/request-container-not-initialized.error.d.ts +12 -0
- package/dist/infrastructure/errors/request-container-not-initialized.error.d.ts.map +1 -0
- package/dist/infrastructure/errors/request-container-not-initialized.error.js +15 -0
- package/dist/infrastructure/errors/request-container-not-initialized.error.js.map +1 -0
- package/dist/infrastructure/index.d.ts +3 -0
- package/dist/infrastructure/index.d.ts.map +1 -0
- package/dist/infrastructure/index.js +3 -0
- package/dist/infrastructure/index.js.map +1 -0
- package/dist/logger/contracts/index.d.ts +4 -0
- package/dist/logger/contracts/index.d.ts.map +1 -0
- package/dist/logger/contracts/index.js +4 -0
- package/dist/logger/contracts/index.js.map +1 -0
- package/dist/logger/contracts/log-context.d.ts +16 -0
- package/dist/logger/contracts/log-context.d.ts.map +1 -0
- package/dist/logger/contracts/log-context.js +2 -0
- package/dist/logger/contracts/log-context.js.map +1 -0
- package/dist/logger/contracts/log-entry.d.ts +17 -0
- package/dist/logger/contracts/log-entry.d.ts.map +1 -0
- package/dist/logger/contracts/log-entry.js +2 -0
- package/dist/logger/contracts/log-entry.js.map +1 -0
- package/dist/logger/contracts/log-level.d.ts +16 -0
- package/dist/logger/contracts/log-level.d.ts.map +1 -0
- package/dist/logger/contracts/log-level.js +22 -0
- package/dist/logger/contracts/log-level.js.map +1 -0
- package/dist/logger/formatters/formatter.interface.d.ts +14 -0
- package/dist/logger/formatters/formatter.interface.d.ts.map +1 -0
- package/dist/logger/formatters/formatter.interface.js +2 -0
- package/dist/logger/formatters/formatter.interface.js.map +1 -0
- package/dist/logger/formatters/index.d.ts +4 -0
- package/dist/logger/formatters/index.d.ts.map +1 -0
- package/dist/logger/formatters/index.js +4 -0
- package/dist/logger/formatters/index.js.map +1 -0
- package/dist/logger/formatters/json-formatter.d.ts +22 -0
- package/dist/logger/formatters/json-formatter.d.ts.map +1 -0
- package/dist/logger/formatters/json-formatter.js +28 -0
- package/dist/logger/formatters/json-formatter.js.map +1 -0
- package/dist/logger/formatters/pretty-formatter.d.ts +19 -0
- package/dist/logger/formatters/pretty-formatter.d.ts.map +1 -0
- package/dist/logger/formatters/pretty-formatter.js +42 -0
- package/dist/logger/formatters/pretty-formatter.js.map +1 -0
- package/dist/logger/index.d.ts +7 -0
- package/dist/logger/index.d.ts.map +1 -0
- package/dist/logger/index.js +10 -0
- package/dist/logger/index.js.map +1 -0
- package/dist/logger/logger.tokens.d.ts +29 -0
- package/dist/logger/logger.tokens.d.ts.map +1 -0
- package/dist/logger/logger.tokens.js +29 -0
- package/dist/logger/logger.tokens.js.map +1 -0
- package/dist/logger/services/index.d.ts +2 -0
- package/dist/logger/services/index.d.ts.map +1 -0
- package/dist/logger/services/index.js +2 -0
- package/dist/logger/services/index.js.map +1 -0
- package/dist/logger/services/logger.service.d.ts +86 -0
- package/dist/logger/services/logger.service.d.ts.map +1 -0
- package/dist/logger/services/logger.service.js +161 -0
- package/dist/logger/services/logger.service.js.map +1 -0
- package/dist/logger/transports/base-transport.d.ts +24 -0
- package/dist/logger/transports/base-transport.d.ts.map +1 -0
- package/dist/logger/transports/base-transport.js +23 -0
- package/dist/logger/transports/base-transport.js.map +1 -0
- package/dist/logger/transports/console-transport.d.ts +19 -0
- package/dist/logger/transports/console-transport.d.ts.map +1 -0
- package/dist/logger/transports/console-transport.js +53 -0
- package/dist/logger/transports/console-transport.js.map +1 -0
- package/dist/logger/transports/index.d.ts +4 -0
- package/dist/logger/transports/index.d.ts.map +1 -0
- package/dist/logger/transports/index.js +4 -0
- package/dist/logger/transports/index.js.map +1 -0
- package/dist/logger/transports/transport.interface.d.ts +21 -0
- package/dist/logger/transports/transport.interface.d.ts.map +1 -0
- package/dist/logger/transports/transport.interface.js +2 -0
- package/dist/logger/transports/transport.interface.js.map +1 -0
- package/dist/middleware/index.d.ts +24 -0
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/index.js +23 -0
- package/dist/middleware/index.js.map +1 -0
- package/dist/middleware/middleware-configuration.service.d.ts +64 -0
- package/dist/middleware/middleware-configuration.service.d.ts.map +1 -0
- package/dist/middleware/middleware-configuration.service.js +210 -0
- package/dist/middleware/middleware-configuration.service.js.map +1 -0
- package/dist/middleware/middleware-consumer.d.ts +57 -0
- package/dist/middleware/middleware-consumer.d.ts.map +1 -0
- package/dist/middleware/middleware-consumer.js +130 -0
- package/dist/middleware/middleware-consumer.js.map +1 -0
- package/dist/middleware/types.d.ts +94 -0
- package/dist/middleware/types.d.ts.map +1 -0
- package/dist/middleware/types.js +2 -0
- package/dist/middleware/types.js.map +1 -0
- package/dist/module/errors/index.d.ts +5 -0
- package/dist/module/errors/index.d.ts.map +1 -0
- package/dist/module/errors/index.js +5 -0
- package/dist/module/errors/index.js.map +1 -0
- package/dist/module/errors/invalid-module-provider.error.d.ts +11 -0
- package/dist/module/errors/invalid-module-provider.error.d.ts.map +1 -0
- package/dist/module/errors/invalid-module-provider.error.js +14 -0
- package/dist/module/errors/invalid-module-provider.error.js.map +1 -0
- package/dist/module/errors/module-already-registered.error.d.ts +11 -0
- package/dist/module/errors/module-already-registered.error.d.ts.map +1 -0
- package/dist/module/errors/module-already-registered.error.js +14 -0
- package/dist/module/errors/module-already-registered.error.js.map +1 -0
- package/dist/module/errors/module-circular-dependency.error.d.ts +11 -0
- package/dist/module/errors/module-circular-dependency.error.d.ts.map +1 -0
- package/dist/module/errors/module-circular-dependency.error.js +15 -0
- package/dist/module/errors/module-circular-dependency.error.js.map +1 -0
- package/dist/module/errors/module-dependency-not-found.error.d.ts +11 -0
- package/dist/module/errors/module-dependency-not-found.error.d.ts.map +1 -0
- package/dist/module/errors/module-dependency-not-found.error.js +14 -0
- package/dist/module/errors/module-dependency-not-found.error.js.map +1 -0
- package/dist/module/index.d.ts +4 -0
- package/dist/module/index.d.ts.map +1 -0
- package/dist/module/index.js +7 -0
- package/dist/module/index.js.map +1 -0
- package/dist/module/module-registry.d.ts +101 -0
- package/dist/module/module-registry.d.ts.map +1 -0
- package/dist/module/module-registry.js +278 -0
- package/dist/module/module-registry.js.map +1 -0
- package/dist/module/module.decorator.d.ts +34 -0
- package/dist/module/module.decorator.d.ts.map +1 -0
- package/dist/module/module.decorator.js +107 -0
- package/dist/module/module.decorator.js.map +1 -0
- package/dist/module/types.d.ts +240 -0
- package/dist/module/types.d.ts.map +1 -0
- package/dist/module/types.js +8 -0
- package/dist/module/types.js.map +1 -0
- package/dist/openapi/index.d.ts +5 -0
- package/dist/openapi/index.d.ts.map +1 -0
- package/dist/openapi/index.js +7 -0
- package/dist/openapi/index.js.map +1 -0
- package/dist/openapi/openapi.module.d.ts +52 -0
- package/dist/openapi/openapi.module.d.ts.map +1 -0
- package/dist/openapi/openapi.module.js +110 -0
- package/dist/openapi/openapi.module.js.map +1 -0
- package/dist/openapi/openapi.tokens.d.ts +12 -0
- package/dist/openapi/openapi.tokens.d.ts.map +1 -0
- package/dist/openapi/openapi.tokens.js +12 -0
- package/dist/openapi/openapi.tokens.js.map +1 -0
- package/dist/openapi/services/index.d.ts +3 -0
- package/dist/openapi/services/index.d.ts.map +1 -0
- package/dist/openapi/services/index.js +3 -0
- package/dist/openapi/services/index.js.map +1 -0
- package/dist/openapi/services/openapi-config.service.d.ts +43 -0
- package/dist/openapi/services/openapi-config.service.d.ts.map +1 -0
- package/dist/openapi/services/openapi-config.service.js +98 -0
- package/dist/openapi/services/openapi-config.service.js.map +1 -0
- package/dist/openapi/services/openapi.service.d.ts +52 -0
- package/dist/openapi/services/openapi.service.d.ts.map +1 -0
- package/dist/openapi/services/openapi.service.js +228 -0
- package/dist/openapi/services/openapi.service.js.map +1 -0
- package/dist/openapi/types.d.ts +61 -0
- package/dist/openapi/types.d.ts.map +1 -0
- package/dist/openapi/types.js +2 -0
- package/dist/openapi/types.js.map +1 -0
- package/dist/polyfills/dom.polyfill.d.ts +2 -0
- package/dist/polyfills/dom.polyfill.d.ts.map +1 -0
- package/dist/polyfills/dom.polyfill.js +30 -0
- package/dist/polyfills/dom.polyfill.js.map +1 -0
- package/dist/polyfills/index.d.ts +8 -0
- package/dist/polyfills/index.d.ts.map +1 -0
- package/dist/polyfills/index.js +8 -0
- package/dist/polyfills/index.js.map +1 -0
- package/dist/queue/consumer-registry.d.ts +77 -0
- package/dist/queue/consumer-registry.d.ts.map +1 -0
- package/dist/queue/consumer-registry.js +110 -0
- package/dist/queue/consumer-registry.js.map +1 -0
- package/dist/queue/decorators/index.d.ts +2 -0
- package/dist/queue/decorators/index.d.ts.map +1 -0
- package/dist/queue/decorators/index.js +2 -0
- package/dist/queue/decorators/index.js.map +1 -0
- package/dist/queue/decorators/inject-queue.decorator.d.ts +31 -0
- package/dist/queue/decorators/inject-queue.decorator.d.ts.map +1 -0
- package/dist/queue/decorators/inject-queue.decorator.js +33 -0
- package/dist/queue/decorators/inject-queue.decorator.js.map +1 -0
- package/dist/queue/errors/index.d.ts +3 -0
- package/dist/queue/errors/index.d.ts.map +1 -0
- package/dist/queue/errors/index.js +3 -0
- package/dist/queue/errors/index.js.map +1 -0
- package/dist/queue/errors/queue-binding-not-found.error.d.ts +12 -0
- package/dist/queue/errors/queue-binding-not-found.error.d.ts.map +1 -0
- package/dist/queue/errors/queue-binding-not-found.error.js +15 -0
- package/dist/queue/errors/queue-binding-not-found.error.js.map +1 -0
- package/dist/queue/errors/queue-provider-not-supported.error.d.ts +13 -0
- package/dist/queue/errors/queue-provider-not-supported.error.d.ts.map +1 -0
- package/dist/queue/errors/queue-provider-not-supported.error.js +16 -0
- package/dist/queue/errors/queue-provider-not-supported.error.js.map +1 -0
- package/dist/queue/index.d.ts +14 -0
- package/dist/queue/index.d.ts.map +1 -0
- package/dist/queue/index.js +21 -0
- package/dist/queue/index.js.map +1 -0
- package/dist/queue/providers/cloudflare-queue.provider.d.ts +42 -0
- package/dist/queue/providers/cloudflare-queue.provider.d.ts.map +1 -0
- package/dist/queue/providers/cloudflare-queue.provider.js +73 -0
- package/dist/queue/providers/cloudflare-queue.provider.js.map +1 -0
- package/dist/queue/providers/index.d.ts +4 -0
- package/dist/queue/providers/index.d.ts.map +1 -0
- package/dist/queue/providers/index.js +4 -0
- package/dist/queue/providers/index.js.map +1 -0
- package/dist/queue/providers/queue-provider.interface.d.ts +34 -0
- package/dist/queue/providers/queue-provider.interface.d.ts.map +1 -0
- package/dist/queue/providers/queue-provider.interface.js +2 -0
- package/dist/queue/providers/queue-provider.interface.js.map +1 -0
- package/dist/queue/providers/sync-queue.provider.d.ts +48 -0
- package/dist/queue/providers/sync-queue.provider.d.ts.map +1 -0
- package/dist/queue/providers/sync-queue.provider.js +89 -0
- package/dist/queue/providers/sync-queue.provider.js.map +1 -0
- package/dist/queue/queue-consumer.d.ts +64 -0
- package/dist/queue/queue-consumer.d.ts.map +1 -0
- package/dist/queue/queue-consumer.js +2 -0
- package/dist/queue/queue-consumer.js.map +1 -0
- package/dist/queue/queue-manager.d.ts +36 -0
- package/dist/queue/queue-manager.d.ts.map +1 -0
- package/dist/queue/queue-manager.js +80 -0
- package/dist/queue/queue-manager.js.map +1 -0
- package/dist/queue/queue-name.d.ts +50 -0
- package/dist/queue/queue-name.d.ts.map +1 -0
- package/dist/queue/queue-name.js +21 -0
- package/dist/queue/queue-name.js.map +1 -0
- package/dist/queue/queue-registry.d.ts +46 -0
- package/dist/queue/queue-registry.d.ts.map +1 -0
- package/dist/queue/queue-registry.js +78 -0
- package/dist/queue/queue-registry.js.map +1 -0
- package/dist/queue/queue-sender.d.ts +38 -0
- package/dist/queue/queue-sender.d.ts.map +1 -0
- package/dist/queue/queue-sender.interface.d.ts +46 -0
- package/dist/queue/queue-sender.interface.d.ts.map +1 -0
- package/dist/queue/queue-sender.interface.js +2 -0
- package/dist/queue/queue-sender.interface.js.map +1 -0
- package/dist/queue/queue-sender.js +54 -0
- package/dist/queue/queue-sender.js.map +1 -0
- package/dist/queue/queue.module.d.ts +80 -0
- package/dist/queue/queue.module.d.ts.map +1 -0
- package/dist/queue/queue.module.js +113 -0
- package/dist/queue/queue.module.js.map +1 -0
- package/dist/queue/queue.tokens.d.ts +7 -0
- package/dist/queue/queue.tokens.d.ts.map +1 -0
- package/dist/queue/queue.tokens.js +6 -0
- package/dist/queue/queue.tokens.js.map +1 -0
- package/dist/queue/services/index.d.ts +2 -0
- package/dist/queue/services/index.d.ts.map +1 -0
- package/dist/queue/services/index.js +2 -0
- package/dist/queue/services/index.js.map +1 -0
- package/dist/queue/services/queue-provider-factory.d.ts +41 -0
- package/dist/queue/services/queue-provider-factory.d.ts.map +1 -0
- package/dist/queue/services/queue-provider-factory.js +78 -0
- package/dist/queue/services/queue-provider-factory.js.map +1 -0
- package/dist/router/constants.d.ts +72 -0
- package/dist/router/constants.d.ts.map +1 -0
- package/dist/router/constants.js +54 -0
- package/dist/router/constants.js.map +1 -0
- package/dist/router/controller.d.ts +56 -0
- package/dist/router/controller.d.ts.map +1 -0
- package/dist/router/controller.js +2 -0
- package/dist/router/controller.js.map +1 -0
- package/dist/router/decorators/controller.decorator.d.ts +55 -0
- package/dist/router/decorators/controller.decorator.d.ts.map +1 -0
- package/dist/router/decorators/controller.decorator.js +76 -0
- package/dist/router/decorators/controller.decorator.js.map +1 -0
- package/dist/router/decorators/index.d.ts +3 -0
- package/dist/router/decorators/index.d.ts.map +1 -0
- package/dist/router/decorators/index.js +7 -0
- package/dist/router/decorators/index.js.map +1 -0
- package/dist/router/decorators/route.decorator.d.ts +87 -0
- package/dist/router/decorators/route.decorator.d.ts.map +1 -0
- package/dist/router/decorators/route.decorator.js +99 -0
- package/dist/router/decorators/route.decorator.js.map +1 -0
- package/dist/router/errors/controller-method-not-found.error.d.ts +11 -0
- package/dist/router/errors/controller-method-not-found.error.d.ts.map +1 -0
- package/dist/router/errors/controller-method-not-found.error.js +14 -0
- package/dist/router/errors/controller-method-not-found.error.js.map +1 -0
- package/dist/router/errors/controller-registration.error.d.ts +15 -0
- package/dist/router/errors/controller-registration.error.d.ts.map +1 -0
- package/dist/router/errors/controller-registration.error.js +21 -0
- package/dist/router/errors/controller-registration.error.js.map +1 -0
- package/dist/router/errors/index.d.ts +9 -0
- package/dist/router/errors/index.d.ts.map +1 -0
- package/dist/router/errors/index.js +11 -0
- package/dist/router/errors/index.js.map +1 -0
- package/dist/router/errors/openapi-route-registration.error.d.ts +17 -0
- package/dist/router/errors/openapi-route-registration.error.d.ts.map +1 -0
- package/dist/router/errors/openapi-route-registration.error.js +20 -0
- package/dist/router/errors/openapi-route-registration.error.js.map +1 -0
- package/dist/router/errors/openapi-validation.error.d.ts +19 -0
- package/dist/router/errors/openapi-validation.error.d.ts.map +1 -0
- package/dist/router/errors/openapi-validation.error.js +22 -0
- package/dist/router/errors/openapi-validation.error.js.map +1 -0
- package/dist/router/errors/route-not-found.error.d.ts +11 -0
- package/dist/router/errors/route-not-found.error.d.ts.map +1 -0
- package/dist/router/errors/route-not-found.error.js +14 -0
- package/dist/router/errors/route-not-found.error.js.map +1 -0
- package/dist/router/errors/router-already-configured.error.d.ts +5 -0
- package/dist/router/errors/router-already-configured.error.d.ts.map +1 -0
- package/dist/router/errors/router-already-configured.error.js +8 -0
- package/dist/router/errors/router-already-configured.error.js.map +1 -0
- package/dist/router/errors/router-not-configured.error.d.ts +5 -0
- package/dist/router/errors/router-not-configured.error.d.ts.map +1 -0
- package/dist/router/errors/router-not-configured.error.js +8 -0
- package/dist/router/errors/router-not-configured.error.js.map +1 -0
- package/dist/router/errors/schema-validation.error.d.ts +11 -0
- package/dist/router/errors/schema-validation.error.d.ts.map +1 -0
- package/dist/router/errors/schema-validation.error.js +18 -0
- package/dist/router/errors/schema-validation.error.js.map +1 -0
- package/dist/router/index.d.ts +13 -0
- package/dist/router/index.d.ts.map +1 -0
- package/dist/router/index.js +18 -0
- package/dist/router/index.js.map +1 -0
- package/dist/router/middleware/index.d.ts +2 -0
- package/dist/router/middleware/index.d.ts.map +1 -0
- package/dist/router/middleware/index.js +4 -0
- package/dist/router/middleware/index.js.map +1 -0
- package/dist/router/middleware/logger.middleware.d.ts +19 -0
- package/dist/router/middleware/logger.middleware.d.ts.map +1 -0
- package/dist/router/middleware/logger.middleware.js +32 -0
- package/dist/router/middleware/logger.middleware.js.map +1 -0
- package/dist/router/middleware.interface.d.ts +38 -0
- package/dist/router/middleware.interface.d.ts.map +1 -0
- package/dist/router/middleware.interface.js +2 -0
- package/dist/router/middleware.interface.js.map +1 -0
- package/dist/router/router-context.d.ts +117 -0
- package/dist/router/router-context.d.ts.map +1 -0
- package/dist/router/router-context.js +145 -0
- package/dist/router/router-context.js.map +1 -0
- package/dist/router/router.service.d.ts +62 -0
- package/dist/router/router.service.d.ts.map +1 -0
- package/dist/router/router.service.js +166 -0
- package/dist/router/router.service.js.map +1 -0
- package/dist/router/router.tokens.d.ts +39 -0
- package/dist/router/router.tokens.d.ts.map +1 -0
- package/dist/router/router.tokens.js +39 -0
- package/dist/router/router.tokens.js.map +1 -0
- package/dist/router/schemas/common.schemas.d.ts +148 -0
- package/dist/router/schemas/common.schemas.d.ts.map +1 -0
- package/dist/router/schemas/common.schemas.js +88 -0
- package/dist/router/schemas/common.schemas.js.map +1 -0
- package/dist/router/schemas/index.d.ts +2 -0
- package/dist/router/schemas/index.d.ts.map +1 -0
- package/dist/router/schemas/index.js +2 -0
- package/dist/router/schemas/index.js.map +1 -0
- package/dist/router/services/index.d.ts +7 -0
- package/dist/router/services/index.d.ts.map +1 -0
- package/dist/router/services/index.js +7 -0
- package/dist/router/services/index.js.map +1 -0
- package/dist/router/services/request-scope.service.d.ts +44 -0
- package/dist/router/services/request-scope.service.d.ts.map +1 -0
- package/dist/router/services/request-scope.service.js +78 -0
- package/dist/router/services/request-scope.service.js.map +1 -0
- package/dist/router/services/route-registration.service.d.ts +94 -0
- package/dist/router/services/route-registration.service.d.ts.map +1 -0
- package/dist/router/services/route-registration.service.js +451 -0
- package/dist/router/services/route-registration.service.js.map +1 -0
- package/dist/router/types.d.ts +130 -0
- package/dist/router/types.d.ts.map +1 -0
- package/dist/router/types.js +2 -0
- package/dist/router/types.js.map +1 -0
- package/dist/storage/contracts/delete-file.input.d.ts +7 -0
- package/dist/storage/contracts/delete-file.input.d.ts.map +1 -0
- package/dist/storage/contracts/delete-file.input.js +6 -0
- package/dist/storage/contracts/delete-file.input.js.map +1 -0
- package/dist/storage/contracts/download-result.d.ts +28 -0
- package/dist/storage/contracts/download-result.d.ts.map +1 -0
- package/dist/storage/contracts/download-result.js +2 -0
- package/dist/storage/contracts/download-result.js.map +1 -0
- package/dist/storage/contracts/file-exists.input.d.ts +7 -0
- package/dist/storage/contracts/file-exists.input.d.ts.map +1 -0
- package/dist/storage/contracts/file-exists.input.js +6 -0
- package/dist/storage/contracts/file-exists.input.js.map +1 -0
- package/dist/storage/contracts/get-presigned-url.input.d.ts +26 -0
- package/dist/storage/contracts/get-presigned-url.input.d.ts.map +1 -0
- package/dist/storage/contracts/get-presigned-url.input.js +14 -0
- package/dist/storage/contracts/get-presigned-url.input.js.map +1 -0
- package/dist/storage/contracts/index.d.ts +6 -0
- package/dist/storage/contracts/index.d.ts.map +1 -0
- package/dist/storage/contracts/index.js +6 -0
- package/dist/storage/contracts/index.js.map +1 -0
- package/dist/storage/contracts/upload-file.input.d.ts +34 -0
- package/dist/storage/contracts/upload-file.input.d.ts.map +1 -0
- package/dist/storage/contracts/upload-file.input.js +10 -0
- package/dist/storage/contracts/upload-file.input.js.map +1 -0
- package/dist/storage/errors/disk-not-configured.error.d.ts +5 -0
- package/dist/storage/errors/disk-not-configured.error.d.ts.map +1 -0
- package/dist/storage/errors/disk-not-configured.error.js +7 -0
- package/dist/storage/errors/disk-not-configured.error.js.map +1 -0
- package/dist/storage/errors/file-not-found.error.d.ts +5 -0
- package/dist/storage/errors/file-not-found.error.d.ts.map +1 -0
- package/dist/storage/errors/file-not-found.error.js +8 -0
- package/dist/storage/errors/file-not-found.error.js.map +1 -0
- package/dist/storage/errors/file-too-large.error.d.ts +5 -0
- package/dist/storage/errors/file-too-large.error.d.ts.map +1 -0
- package/dist/storage/errors/file-too-large.error.js +11 -0
- package/dist/storage/errors/file-too-large.error.js.map +1 -0
- package/dist/storage/errors/index.d.ts +9 -0
- package/dist/storage/errors/index.d.ts.map +1 -0
- package/dist/storage/errors/index.js +9 -0
- package/dist/storage/errors/index.js.map +1 -0
- package/dist/storage/errors/invalid-disk.error.d.ts +5 -0
- package/dist/storage/errors/invalid-disk.error.d.ts.map +1 -0
- package/dist/storage/errors/invalid-disk.error.js +8 -0
- package/dist/storage/errors/invalid-disk.error.js.map +1 -0
- package/dist/storage/errors/invalid-file-type.error.d.ts +5 -0
- package/dist/storage/errors/invalid-file-type.error.d.ts.map +1 -0
- package/dist/storage/errors/invalid-file-type.error.js +10 -0
- package/dist/storage/errors/invalid-file-type.error.js.map +1 -0
- package/dist/storage/errors/presigned-url-invalid-expiry.error.d.ts +5 -0
- package/dist/storage/errors/presigned-url-invalid-expiry.error.d.ts.map +1 -0
- package/dist/storage/errors/presigned-url-invalid-expiry.error.js +12 -0
- package/dist/storage/errors/presigned-url-invalid-expiry.error.js.map +1 -0
- package/dist/storage/errors/storage-provider-not-supported.error.d.ts +5 -0
- package/dist/storage/errors/storage-provider-not-supported.error.d.ts.map +1 -0
- package/dist/storage/errors/storage-provider-not-supported.error.js +8 -0
- package/dist/storage/errors/storage-provider-not-supported.error.js.map +1 -0
- package/dist/storage/errors/storage-response-body-missing.error.d.ts +5 -0
- package/dist/storage/errors/storage-response-body-missing.error.d.ts.map +1 -0
- package/dist/storage/errors/storage-response-body-missing.error.js +8 -0
- package/dist/storage/errors/storage-response-body-missing.error.js.map +1 -0
- package/dist/storage/index.d.ts +15 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +18 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/providers/s3-multipart-provider.interface.d.ts +194 -0
- package/dist/storage/providers/s3-multipart-provider.interface.d.ts.map +1 -0
- package/dist/storage/providers/s3-multipart-provider.interface.js +2 -0
- package/dist/storage/providers/s3-multipart-provider.interface.js.map +1 -0
- package/dist/storage/providers/s3-storage.provider.d.ts +77 -0
- package/dist/storage/providers/s3-storage.provider.d.ts.map +1 -0
- package/dist/storage/providers/s3-storage.provider.js +310 -0
- package/dist/storage/providers/s3-storage.provider.js.map +1 -0
- package/dist/storage/providers/storage-provider.interface.d.ts +58 -0
- package/dist/storage/providers/storage-provider.interface.d.ts.map +1 -0
- package/dist/storage/providers/storage-provider.interface.js +2 -0
- package/dist/storage/providers/storage-provider.interface.js.map +1 -0
- package/dist/storage/services/storage-manager.service.d.ts +48 -0
- package/dist/storage/services/storage-manager.service.d.ts.map +1 -0
- package/dist/storage/services/storage-manager.service.js +111 -0
- package/dist/storage/services/storage-manager.service.js.map +1 -0
- package/dist/storage/services/storage.service.d.ts +140 -0
- package/dist/storage/services/storage.service.d.ts.map +1 -0
- package/dist/storage/services/storage.service.js +232 -0
- package/dist/storage/services/storage.service.js.map +1 -0
- package/dist/storage/storage.module.d.ts +52 -0
- package/dist/storage/storage.module.d.ts.map +1 -0
- package/dist/storage/storage.module.js +81 -0
- package/dist/storage/storage.module.js.map +1 -0
- package/dist/storage/storage.tokens.d.ts +10 -0
- package/dist/storage/storage.tokens.d.ts.map +1 -0
- package/dist/storage/storage.tokens.js +10 -0
- package/dist/storage/storage.tokens.js.map +1 -0
- package/dist/storage/types.d.ts +31 -0
- package/dist/storage/types.d.ts.map +1 -0
- package/dist/storage/types.js +2 -0
- package/dist/storage/types.js.map +1 -0
- package/dist/types.d.ts +16 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/worker/index.d.ts +2 -0
- package/dist/worker/index.d.ts.map +1 -0
- package/dist/worker/index.js +2 -0
- package/dist/worker/index.js.map +1 -0
- package/dist/worker/module-worker.d.ts +48 -0
- package/dist/worker/module-worker.d.ts.map +1 -0
- package/dist/worker/module-worker.js +88 -0
- package/dist/worker/module-worker.js.map +1 -0
- package/dist/worker/stratal-worker.d.ts +48 -0
- package/dist/worker/stratal-worker.d.ts.map +1 -0
- package/dist/worker/stratal-worker.js +88 -0
- package/dist/worker/stratal-worker.js.map +1 -0
- package/package.json +148 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import type { OpenAPIHono } from '../i18n/validation';
|
|
2
|
+
import type { Container } from '../di';
|
|
3
|
+
import type { LoggerService } from '../logger';
|
|
4
|
+
import type { IController } from '../router/controller';
|
|
5
|
+
import type { RouterEnv } from '../router/types';
|
|
6
|
+
import type { Constructor } from '../types';
|
|
7
|
+
import type { MiddlewareConfigEntry } from './types';
|
|
8
|
+
/**
|
|
9
|
+
* Service for applying middleware configurations to Hono app
|
|
10
|
+
*
|
|
11
|
+
* Processes MiddlewareConfigEntry[] from modules and registers
|
|
12
|
+
* appropriate middleware handlers with route matching.
|
|
13
|
+
*/
|
|
14
|
+
export declare class MiddlewareConfigurationService {
|
|
15
|
+
private readonly logger;
|
|
16
|
+
constructor(logger: LoggerService);
|
|
17
|
+
/**
|
|
18
|
+
* Apply middleware configurations to the Hono app
|
|
19
|
+
*
|
|
20
|
+
* @param app - Hono application instance
|
|
21
|
+
* @param configs - Middleware configuration entries from modules
|
|
22
|
+
* @param controllers - All registered controller classes (for route resolution)
|
|
23
|
+
* @param container - DI container for resolving middleware instances
|
|
24
|
+
*/
|
|
25
|
+
applyMiddlewares(app: OpenAPIHono<RouterEnv>, configs: MiddlewareConfigEntry[], controllers: Constructor<IController>[], container: Container): void;
|
|
26
|
+
/**
|
|
27
|
+
* Apply a single middleware configuration entry
|
|
28
|
+
*/
|
|
29
|
+
private applyMiddlewareConfig;
|
|
30
|
+
/**
|
|
31
|
+
* Resolve route targets into concrete route patterns
|
|
32
|
+
*/
|
|
33
|
+
private resolveRoutePatterns;
|
|
34
|
+
/**
|
|
35
|
+
* Register middleware handlers for a specific route pattern
|
|
36
|
+
*/
|
|
37
|
+
private registerMiddlewareForPattern;
|
|
38
|
+
/**
|
|
39
|
+
* Register handler for a specific HTTP method
|
|
40
|
+
*/
|
|
41
|
+
private registerForMethod;
|
|
42
|
+
/**
|
|
43
|
+
* Create a middleware handler function that executes the middleware chain
|
|
44
|
+
*/
|
|
45
|
+
private createMiddlewareHandler;
|
|
46
|
+
/**
|
|
47
|
+
* Check if a request matches any exclusion pattern
|
|
48
|
+
*/
|
|
49
|
+
private isExcluded;
|
|
50
|
+
/**
|
|
51
|
+
* Check if request matches a route pattern
|
|
52
|
+
*/
|
|
53
|
+
private matchesRoute;
|
|
54
|
+
/**
|
|
55
|
+
* Match request path against pattern
|
|
56
|
+
* Supports wildcards: /api/* matches /api/users, /api/v1/users
|
|
57
|
+
*/
|
|
58
|
+
private matchesPath;
|
|
59
|
+
/**
|
|
60
|
+
* Execute middleware chain in order
|
|
61
|
+
*/
|
|
62
|
+
private executeMiddlewareChain;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=middleware-configuration.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"middleware-configuration.service.d.ts","sourceRoot":"","sources":["../../src/middleware/middleware-configuration.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAIvD,OAAO,KAAK,EAAc,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,KAAK,EAAE,qBAAqB,EAAa,MAAM,SAAS,CAAA;AAE/D;;;;;GAKG;AACH,qBAAa,8BAA8B;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,aAAa;IAElD;;;;;;;OAOG;IACH,gBAAgB,CACd,GAAG,EAAE,WAAW,CAAC,SAAS,CAAC,EAC3B,OAAO,EAAE,qBAAqB,EAAE,EAChC,WAAW,EAAE,WAAW,CAAC,WAAW,CAAC,EAAE,EACvC,SAAS,EAAE,SAAS,GACnB,IAAI;IAMP;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAwB7B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA8B5B;;OAEG;IACH,OAAO,CAAC,4BAA4B;IA2BpC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA2BzB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAuB/B;;OAEG;IACH,OAAO,CAAC,UAAU;IAalB;;OAEG;IACH,OAAO,CAAC,YAAY;IAiBpB;;;OAGG;IACH,OAAO,CAAC,WAAW;IA0BnB;;OAEG;YACW,sBAAsB;CAwBrC"}
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
import { getControllerRoute } from '../router/decorators/controller.decorator';
|
|
2
|
+
import { RouterContext } from '../router/router-context';
|
|
3
|
+
/**
|
|
4
|
+
* Service for applying middleware configurations to Hono app
|
|
5
|
+
*
|
|
6
|
+
* Processes MiddlewareConfigEntry[] from modules and registers
|
|
7
|
+
* appropriate middleware handlers with route matching.
|
|
8
|
+
*/
|
|
9
|
+
export class MiddlewareConfigurationService {
|
|
10
|
+
logger;
|
|
11
|
+
constructor(logger) {
|
|
12
|
+
this.logger = logger;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Apply middleware configurations to the Hono app
|
|
16
|
+
*
|
|
17
|
+
* @param app - Hono application instance
|
|
18
|
+
* @param configs - Middleware configuration entries from modules
|
|
19
|
+
* @param controllers - All registered controller classes (for route resolution)
|
|
20
|
+
* @param container - DI container for resolving middleware instances
|
|
21
|
+
*/
|
|
22
|
+
applyMiddlewares(app, configs, controllers, container) {
|
|
23
|
+
for (const config of configs) {
|
|
24
|
+
this.applyMiddlewareConfig(app, config, controllers, container);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Apply a single middleware configuration entry
|
|
29
|
+
*/
|
|
30
|
+
applyMiddlewareConfig(app, config, controllers, container) {
|
|
31
|
+
const { middlewares, excludes, routes } = config;
|
|
32
|
+
// Resolve route patterns from targets
|
|
33
|
+
const routePatterns = this.resolveRoutePatterns(routes, controllers);
|
|
34
|
+
// Log the configuration for debugging
|
|
35
|
+
this.logger.debug('Applying middleware configuration', {
|
|
36
|
+
middlewares: middlewares.map(m => m.name),
|
|
37
|
+
routes: routePatterns,
|
|
38
|
+
excludes: excludes,
|
|
39
|
+
});
|
|
40
|
+
// Apply middleware to each route pattern
|
|
41
|
+
for (const pattern of routePatterns) {
|
|
42
|
+
this.registerMiddlewareForPattern(app, middlewares, pattern, excludes, container);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Resolve route targets into concrete route patterns
|
|
47
|
+
*/
|
|
48
|
+
resolveRoutePatterns(targets, _controllers) {
|
|
49
|
+
const patterns = [];
|
|
50
|
+
for (const target of targets) {
|
|
51
|
+
if (target === '*') {
|
|
52
|
+
// Global middleware - apply to all routes
|
|
53
|
+
patterns.push({ path: '*' });
|
|
54
|
+
}
|
|
55
|
+
else if (typeof target === 'function') {
|
|
56
|
+
// Controller class - get its route from metadata
|
|
57
|
+
const route = getControllerRoute(target);
|
|
58
|
+
if (route) {
|
|
59
|
+
// Add wildcard for all paths under this controller
|
|
60
|
+
patterns.push({ path: `${route}/*` });
|
|
61
|
+
// Also match the exact path
|
|
62
|
+
patterns.push({ path: route });
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
this.logger.warn('Controller has no route metadata', { controller: target.name });
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
// RouteInfo object - use directly
|
|
70
|
+
patterns.push(target);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
return patterns;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Register middleware handlers for a specific route pattern
|
|
77
|
+
*/
|
|
78
|
+
registerMiddlewareForPattern(app, middlewares, pattern, excludes, container) {
|
|
79
|
+
const path = pattern.path;
|
|
80
|
+
const methods = pattern.method
|
|
81
|
+
? (Array.isArray(pattern.method) ? pattern.method : [pattern.method])
|
|
82
|
+
: undefined;
|
|
83
|
+
// Create the middleware handler
|
|
84
|
+
const handler = this.createMiddlewareHandler(middlewares, excludes, container);
|
|
85
|
+
// Register with Hono
|
|
86
|
+
if (methods && methods.length > 0) {
|
|
87
|
+
// Method-specific registration
|
|
88
|
+
for (const method of methods) {
|
|
89
|
+
this.registerForMethod(app, method, path, handler);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
// All methods
|
|
94
|
+
app.use(path, handler);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Register handler for a specific HTTP method
|
|
99
|
+
*/
|
|
100
|
+
registerForMethod(app, method, path, handler) {
|
|
101
|
+
switch (method) {
|
|
102
|
+
case 'get':
|
|
103
|
+
app.get(path, handler);
|
|
104
|
+
break;
|
|
105
|
+
case 'post':
|
|
106
|
+
app.post(path, handler);
|
|
107
|
+
break;
|
|
108
|
+
case 'put':
|
|
109
|
+
app.put(path, handler);
|
|
110
|
+
break;
|
|
111
|
+
case 'delete':
|
|
112
|
+
app.delete(path, handler);
|
|
113
|
+
break;
|
|
114
|
+
case 'patch':
|
|
115
|
+
app.patch(path, handler);
|
|
116
|
+
break;
|
|
117
|
+
default:
|
|
118
|
+
app.use(path, handler);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Create a middleware handler function that executes the middleware chain
|
|
123
|
+
*/
|
|
124
|
+
createMiddlewareHandler(middlewares, excludes, container) {
|
|
125
|
+
return async (c, next) => {
|
|
126
|
+
const requestPath = c.req.path;
|
|
127
|
+
const requestMethod = c.req.method.toLowerCase();
|
|
128
|
+
// Check if this request should be excluded
|
|
129
|
+
if (this.isExcluded(requestPath, requestMethod, excludes)) {
|
|
130
|
+
await next();
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
// Create RouterContext for middleware
|
|
134
|
+
const ctx = new RouterContext(c);
|
|
135
|
+
// Execute middleware chain
|
|
136
|
+
await this.executeMiddlewareChain(middlewares, ctx, container, next);
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Check if a request matches any exclusion pattern
|
|
141
|
+
*/
|
|
142
|
+
isExcluded(requestPath, requestMethod, excludes) {
|
|
143
|
+
for (const exclude of excludes) {
|
|
144
|
+
if (this.matchesRoute(requestPath, requestMethod, exclude)) {
|
|
145
|
+
return true;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
return false;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Check if request matches a route pattern
|
|
152
|
+
*/
|
|
153
|
+
matchesRoute(requestPath, requestMethod, route) {
|
|
154
|
+
// Check method match (if specified)
|
|
155
|
+
if (route.method) {
|
|
156
|
+
const methods = Array.isArray(route.method) ? route.method : [route.method];
|
|
157
|
+
if (!methods.includes(requestMethod)) {
|
|
158
|
+
return false;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
// Check path match
|
|
162
|
+
return this.matchesPath(requestPath, route.path);
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Match request path against pattern
|
|
166
|
+
* Supports wildcards: /api/* matches /api/users, /api/v1/users
|
|
167
|
+
*/
|
|
168
|
+
matchesPath(requestPath, pattern) {
|
|
169
|
+
// Exact match
|
|
170
|
+
if (pattern === requestPath) {
|
|
171
|
+
return true;
|
|
172
|
+
}
|
|
173
|
+
// Global wildcard
|
|
174
|
+
if (pattern === '*') {
|
|
175
|
+
return true;
|
|
176
|
+
}
|
|
177
|
+
// Wildcard pattern (e.g., /api/*)
|
|
178
|
+
if (pattern.endsWith('/*')) {
|
|
179
|
+
const prefix = pattern.slice(0, -2);
|
|
180
|
+
return requestPath === prefix || requestPath.startsWith(prefix + '/');
|
|
181
|
+
}
|
|
182
|
+
// Path parameter pattern (e.g., /api/users/:id)
|
|
183
|
+
// Convert to regex for matching
|
|
184
|
+
const regexPattern = pattern
|
|
185
|
+
.replace(/:[^/]+/g, '[^/]+') // Replace :param with regex
|
|
186
|
+
.replace(/\*/g, '.*'); // Replace * with regex
|
|
187
|
+
const regex = new RegExp(`^${regexPattern}$`);
|
|
188
|
+
return regex.test(requestPath);
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Execute middleware chain in order
|
|
192
|
+
*/
|
|
193
|
+
async executeMiddlewareChain(middlewares, ctx, container, finalNext) {
|
|
194
|
+
// Build middleware chain from end to start
|
|
195
|
+
let chain = finalNext;
|
|
196
|
+
for (let i = middlewares.length - 1; i >= 0; i--) {
|
|
197
|
+
const MiddlewareClass = middlewares[i];
|
|
198
|
+
const currentNext = chain;
|
|
199
|
+
chain = async () => {
|
|
200
|
+
// Resolve middleware from request-scoped container
|
|
201
|
+
const requestContainer = ctx.getContainer();
|
|
202
|
+
const middleware = requestContainer.resolve(MiddlewareClass);
|
|
203
|
+
await middleware.handle(ctx, currentNext);
|
|
204
|
+
};
|
|
205
|
+
}
|
|
206
|
+
// Execute the chain
|
|
207
|
+
await chain();
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
//# sourceMappingURL=middleware-configuration.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"middleware-configuration.service.js","sourceRoot":"","sources":["../../src/middleware/middleware-configuration.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { Middleware } from '../router/middleware.interface';
|
|
2
|
+
import type { Constructor } from '../types';
|
|
3
|
+
import type { MiddlewareConfigEntry, MiddlewareConsumer as IMiddlewareConsumer, MiddlewareBuilder as IMiddlewareBuilder } from './types';
|
|
4
|
+
/**
|
|
5
|
+
* Consumer for configuring middleware in modules
|
|
6
|
+
*
|
|
7
|
+
* Provides fluent API for registering middleware with route targeting.
|
|
8
|
+
* Used by modules implementing MiddlewareConfigurable interface.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```typescript
|
|
12
|
+
* @Module({ providers: [...] })
|
|
13
|
+
* export class AppModule implements MiddlewareConfigurable {
|
|
14
|
+
* configure(consumer: MiddlewareConsumer): void {
|
|
15
|
+
* // Global logging middleware (excludes health check)
|
|
16
|
+
* consumer
|
|
17
|
+
* .apply(LoggingMiddleware)
|
|
18
|
+
* .exclude('/health')
|
|
19
|
+
* .forRoutes('*')
|
|
20
|
+
*
|
|
21
|
+
* // Tenant identification for specific controllers
|
|
22
|
+
* consumer
|
|
23
|
+
* .apply(TenantIdentificationMiddleware)
|
|
24
|
+
* .forRoutes(TenantsController, SchoolsController)
|
|
25
|
+
*
|
|
26
|
+
* // Rate limiting for auth endpoints
|
|
27
|
+
* consumer
|
|
28
|
+
* .apply(RateLimitMiddleware)
|
|
29
|
+
* .forRoutes({ path: '/api/v1/auth/*', method: 'post' })
|
|
30
|
+
* }
|
|
31
|
+
* }
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
export declare class MiddlewareConsumerImpl implements IMiddlewareConsumer {
|
|
35
|
+
private entries;
|
|
36
|
+
/**
|
|
37
|
+
* Start configuring middleware
|
|
38
|
+
*
|
|
39
|
+
* @param middlewares - Middleware classes to apply
|
|
40
|
+
* @returns Builder for configuring routes and exclusions
|
|
41
|
+
*/
|
|
42
|
+
apply(...middlewares: Constructor<Middleware>[]): IMiddlewareBuilder;
|
|
43
|
+
/**
|
|
44
|
+
* Add a configuration entry (called by builder)
|
|
45
|
+
* @internal
|
|
46
|
+
*/
|
|
47
|
+
addEntry(entry: MiddlewareConfigEntry): void;
|
|
48
|
+
/**
|
|
49
|
+
* Get all configured middleware entries
|
|
50
|
+
*/
|
|
51
|
+
getEntries(): MiddlewareConfigEntry[];
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Create a new middleware consumer instance
|
|
55
|
+
*/
|
|
56
|
+
export declare function createMiddlewareConsumer(): IMiddlewareConsumer;
|
|
57
|
+
//# sourceMappingURL=middleware-consumer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"middleware-consumer.d.ts","sourceRoot":"","sources":["../../src/middleware/middleware-consumer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,KAAK,EACV,qBAAqB,EACrB,kBAAkB,IAAI,mBAAmB,EACzC,iBAAiB,IAAI,kBAAkB,EAGxC,MAAM,SAAS,CAAA;AA4EhB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBAAa,sBAAuB,YAAW,mBAAmB;IAChE,OAAO,CAAC,OAAO,CAA8B;IAE7C;;;;;OAKG;IACH,KAAK,CAAC,GAAG,WAAW,EAAE,WAAW,CAAC,UAAU,CAAC,EAAE,GAAG,kBAAkB;IAIpE;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,qBAAqB,GAAG,IAAI;IAI5C;;OAEG;IACH,UAAU,IAAI,qBAAqB,EAAE;CAGtC;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,mBAAmB,CAE9D"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builder for configuring middleware routes and exclusions
|
|
3
|
+
*
|
|
4
|
+
* Provides fluent API for specifying where middleware should apply.
|
|
5
|
+
*/
|
|
6
|
+
class MiddlewareBuilderImpl {
|
|
7
|
+
middlewares;
|
|
8
|
+
excludedRoutes = [];
|
|
9
|
+
consumer;
|
|
10
|
+
constructor(middlewares, consumer) {
|
|
11
|
+
this.middlewares = middlewares;
|
|
12
|
+
this.consumer = consumer;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Exclude specific routes from middleware
|
|
16
|
+
*
|
|
17
|
+
* @param routes - Routes to exclude (path strings or RouteInfo objects)
|
|
18
|
+
* @returns this for method chaining
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```typescript
|
|
22
|
+
* consumer
|
|
23
|
+
* .apply(AuthMiddleware)
|
|
24
|
+
* .exclude('/health', { path: '/api/public', method: 'get' })
|
|
25
|
+
* .forRoutes('*')
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
exclude(...routes) {
|
|
29
|
+
for (const route of routes) {
|
|
30
|
+
if (typeof route === 'string') {
|
|
31
|
+
this.excludedRoutes.push({ path: route });
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
this.excludedRoutes.push(route);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return this;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Apply middleware to specified routes
|
|
41
|
+
*
|
|
42
|
+
* This method finalizes the configuration and registers it with the consumer.
|
|
43
|
+
*
|
|
44
|
+
* @param targets - Controller classes, RouteInfo objects, or '*' for global
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```typescript
|
|
48
|
+
* // Apply to all routes
|
|
49
|
+
* consumer.apply(LoggingMiddleware).forRoutes('*')
|
|
50
|
+
*
|
|
51
|
+
* // Apply to specific controllers
|
|
52
|
+
* consumer.apply(TenantMiddleware).forRoutes(TenantsController, SchoolsController)
|
|
53
|
+
*
|
|
54
|
+
* // Apply to specific paths
|
|
55
|
+
* consumer.apply(RateLimitMiddleware).forRoutes(
|
|
56
|
+
* { path: '/api/v1/auth', method: 'post' }
|
|
57
|
+
* )
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
forRoutes(...targets) {
|
|
61
|
+
const entry = {
|
|
62
|
+
middlewares: this.middlewares,
|
|
63
|
+
excludes: this.excludedRoutes,
|
|
64
|
+
routes: targets,
|
|
65
|
+
};
|
|
66
|
+
this.consumer.addEntry(entry);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Consumer for configuring middleware in modules
|
|
71
|
+
*
|
|
72
|
+
* Provides fluent API for registering middleware with route targeting.
|
|
73
|
+
* Used by modules implementing MiddlewareConfigurable interface.
|
|
74
|
+
*
|
|
75
|
+
* @example
|
|
76
|
+
* ```typescript
|
|
77
|
+
* @Module({ providers: [...] })
|
|
78
|
+
* export class AppModule implements MiddlewareConfigurable {
|
|
79
|
+
* configure(consumer: MiddlewareConsumer): void {
|
|
80
|
+
* // Global logging middleware (excludes health check)
|
|
81
|
+
* consumer
|
|
82
|
+
* .apply(LoggingMiddleware)
|
|
83
|
+
* .exclude('/health')
|
|
84
|
+
* .forRoutes('*')
|
|
85
|
+
*
|
|
86
|
+
* // Tenant identification for specific controllers
|
|
87
|
+
* consumer
|
|
88
|
+
* .apply(TenantIdentificationMiddleware)
|
|
89
|
+
* .forRoutes(TenantsController, SchoolsController)
|
|
90
|
+
*
|
|
91
|
+
* // Rate limiting for auth endpoints
|
|
92
|
+
* consumer
|
|
93
|
+
* .apply(RateLimitMiddleware)
|
|
94
|
+
* .forRoutes({ path: '/api/v1/auth/*', method: 'post' })
|
|
95
|
+
* }
|
|
96
|
+
* }
|
|
97
|
+
* ```
|
|
98
|
+
*/
|
|
99
|
+
export class MiddlewareConsumerImpl {
|
|
100
|
+
entries = [];
|
|
101
|
+
/**
|
|
102
|
+
* Start configuring middleware
|
|
103
|
+
*
|
|
104
|
+
* @param middlewares - Middleware classes to apply
|
|
105
|
+
* @returns Builder for configuring routes and exclusions
|
|
106
|
+
*/
|
|
107
|
+
apply(...middlewares) {
|
|
108
|
+
return new MiddlewareBuilderImpl(middlewares, this);
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Add a configuration entry (called by builder)
|
|
112
|
+
* @internal
|
|
113
|
+
*/
|
|
114
|
+
addEntry(entry) {
|
|
115
|
+
this.entries.push(entry);
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Get all configured middleware entries
|
|
119
|
+
*/
|
|
120
|
+
getEntries() {
|
|
121
|
+
return this.entries;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Create a new middleware consumer instance
|
|
126
|
+
*/
|
|
127
|
+
export function createMiddlewareConsumer() {
|
|
128
|
+
return new MiddlewareConsumerImpl();
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=middleware-consumer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"middleware-consumer.js","sourceRoot":"","sources":["../../src/middleware/middleware-consumer.ts"],"names":[],"mappings":"AAUA;;;;GAIG;AACH,MAAM,qBAAqB;IACjB,WAAW,CAA2B;IACtC,cAAc,GAAgB,EAAE,CAAA;IAChC,QAAQ,CAAwB;IAExC,YACE,WAAsC,EACtC,QAAgC;QAEhC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,GAAG,MAA8B;QACvC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;YAC3C,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACjC,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,SAAS,CAAC,GAAG,OAAgC;QAC3C,MAAM,KAAK,GAA0B;YACnC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ,EAAE,IAAI,CAAC,cAAc;YAC7B,MAAM,EAAE,OAAO;SAChB,CAAA;QACD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC/B,CAAC;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,OAAO,sBAAsB;IACzB,OAAO,GAA4B,EAAE,CAAA;IAE7C;;;;;OAKG;IACH,KAAK,CAAC,GAAG,WAAsC;QAC7C,OAAO,IAAI,qBAAqB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAA;IACrD,CAAC;IAED;;;OAGG;IACH,QAAQ,CAAC,KAA4B;QACnC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB;IACtC,OAAO,IAAI,sBAAsB,EAAE,CAAA;AACrC,CAAC"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import type { IController } from '../router/controller';
|
|
2
|
+
import type { Middleware } from '../router/middleware.interface';
|
|
3
|
+
import type { HttpMethod } from '../router/types';
|
|
4
|
+
import type { Constructor } from '../types';
|
|
5
|
+
/**
|
|
6
|
+
* Route information for middleware targeting
|
|
7
|
+
*/
|
|
8
|
+
export interface RouteInfo {
|
|
9
|
+
/** Route path pattern (e.g., '/api/v1/users', '/health') */
|
|
10
|
+
path: string;
|
|
11
|
+
/** HTTP method(s) to match. If omitted, matches all methods */
|
|
12
|
+
method?: HttpMethod | HttpMethod[];
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Internal configuration entry for middleware registration
|
|
16
|
+
*/
|
|
17
|
+
export interface MiddlewareConfigEntry {
|
|
18
|
+
/** Middleware classes to apply */
|
|
19
|
+
middlewares: Constructor<Middleware>[];
|
|
20
|
+
/** Routes to exclude from middleware */
|
|
21
|
+
excludes: RouteInfo[];
|
|
22
|
+
/** Target routes for middleware */
|
|
23
|
+
routes: MiddlewareRouteTarget[];
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Valid targets for middleware routes
|
|
27
|
+
* - Controller class: Apply to all routes in that controller
|
|
28
|
+
* - RouteInfo: Apply to specific path/method combination
|
|
29
|
+
* - '*': Apply to all routes (global middleware)
|
|
30
|
+
*/
|
|
31
|
+
export type MiddlewareRouteTarget = Constructor<IController> | RouteInfo | '*';
|
|
32
|
+
/**
|
|
33
|
+
* Interface for modules that configure middleware
|
|
34
|
+
*
|
|
35
|
+
* Implement this interface in your module class to configure
|
|
36
|
+
* middleware using the consumer pattern.
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* ```typescript
|
|
40
|
+
* @Module({ providers: [...] })
|
|
41
|
+
* export class AppModule implements MiddlewareConfigurable {
|
|
42
|
+
* configure(consumer: MiddlewareConsumer): void {
|
|
43
|
+
* consumer
|
|
44
|
+
* .apply(LoggingMiddleware, CorsMiddleware)
|
|
45
|
+
* .exclude({ path: '/health', method: 'get' })
|
|
46
|
+
* .forRoutes('*')
|
|
47
|
+
*
|
|
48
|
+
* consumer
|
|
49
|
+
* .apply(TenantMiddleware)
|
|
50
|
+
* .forRoutes(TenantsController, SchoolsController)
|
|
51
|
+
* }
|
|
52
|
+
* }
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
export interface MiddlewareConfigurable {
|
|
56
|
+
/**
|
|
57
|
+
* Configure middleware for this module
|
|
58
|
+
* @param consumer - Middleware consumer for fluent configuration
|
|
59
|
+
*/
|
|
60
|
+
configure(consumer: MiddlewareConsumer): void;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Forward declaration for MiddlewareConsumer
|
|
64
|
+
* Implementation in middleware-consumer.ts
|
|
65
|
+
*/
|
|
66
|
+
export interface MiddlewareConsumer {
|
|
67
|
+
/**
|
|
68
|
+
* Specify middleware(s) to apply
|
|
69
|
+
* @param middlewares - Middleware classes to apply
|
|
70
|
+
* @returns Builder for configuring routes
|
|
71
|
+
*/
|
|
72
|
+
apply(...middlewares: Constructor<Middleware>[]): MiddlewareBuilder;
|
|
73
|
+
/**
|
|
74
|
+
* Get all configured middleware entries
|
|
75
|
+
*/
|
|
76
|
+
getEntries(): MiddlewareConfigEntry[];
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Forward declaration for MiddlewareBuilder
|
|
80
|
+
* Implementation in middleware-consumer.ts
|
|
81
|
+
*/
|
|
82
|
+
export interface MiddlewareBuilder {
|
|
83
|
+
/**
|
|
84
|
+
* Exclude routes from middleware
|
|
85
|
+
* @param routes - Routes to exclude (path strings or RouteInfo objects)
|
|
86
|
+
*/
|
|
87
|
+
exclude(...routes: (string | RouteInfo)[]): this;
|
|
88
|
+
/**
|
|
89
|
+
* Apply middleware to specified routes
|
|
90
|
+
* @param targets - Controller classes, route patterns, or '*' for global
|
|
91
|
+
*/
|
|
92
|
+
forRoutes(...targets: MiddlewareRouteTarget[]): void;
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/middleware/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAE3C;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,4DAA4D;IAC5D,IAAI,EAAE,MAAM,CAAA;IACZ,+DAA+D;IAC/D,MAAM,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,CAAA;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,kCAAkC;IAClC,WAAW,EAAE,WAAW,CAAC,UAAU,CAAC,EAAE,CAAA;IACtC,wCAAwC;IACxC,QAAQ,EAAE,SAAS,EAAE,CAAA;IACrB,mCAAmC;IACnC,MAAM,EAAE,qBAAqB,EAAE,CAAA;CAChC;AAED;;;;;GAKG;AACH,MAAM,MAAM,qBAAqB,GAAG,WAAW,CAAC,WAAW,CAAC,GAAG,SAAS,GAAG,GAAG,CAAA;AAE9E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,SAAS,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAA;CAC9C;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,KAAK,CAAC,GAAG,WAAW,EAAE,WAAW,CAAC,UAAU,CAAC,EAAE,GAAG,iBAAiB,CAAA;IACnE;;OAEG;IACH,UAAU,IAAI,qBAAqB,EAAE,CAAA;CACtC;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,OAAO,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,GAAG,IAAI,CAAA;IAChD;;;OAGG;IACH,SAAS,CAAC,GAAG,OAAO,EAAE,qBAAqB,EAAE,GAAG,IAAI,CAAA;CACrD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/middleware/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/module/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAA;AAC/C,cAAc,mCAAmC,CAAA;AACjD,cAAc,oCAAoC,CAAA;AAClD,cAAc,qCAAqC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/module/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAA;AAC/C,cAAc,mCAAmC,CAAA;AACjD,cAAc,oCAAoC,CAAA;AAClD,cAAc,qCAAqC,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ApplicationError } from '../../infrastructure/error-handler';
|
|
2
|
+
/**
|
|
3
|
+
* InvalidModuleProviderError
|
|
4
|
+
*
|
|
5
|
+
* Thrown when a module provider configuration is invalid.
|
|
6
|
+
* This indicates a misconfiguration in the @Module decorator providers array.
|
|
7
|
+
*/
|
|
8
|
+
export declare class InvalidModuleProviderError extends ApplicationError {
|
|
9
|
+
constructor(provider: unknown);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=invalid-module-provider.error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invalid-module-provider.error.d.ts","sourceRoot":"","sources":["../../../src/module/errors/invalid-module-provider.error.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAA;AAErE;;;;;GAKG;AACH,qBAAa,0BAA2B,SAAQ,gBAAgB;gBAClD,QAAQ,EAAE,OAAO;CAO9B"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ERROR_CODES } from '../../errors';
|
|
2
|
+
import { ApplicationError } from '../../infrastructure/error-handler';
|
|
3
|
+
/**
|
|
4
|
+
* InvalidModuleProviderError
|
|
5
|
+
*
|
|
6
|
+
* Thrown when a module provider configuration is invalid.
|
|
7
|
+
* This indicates a misconfiguration in the @Module decorator providers array.
|
|
8
|
+
*/
|
|
9
|
+
export class InvalidModuleProviderError extends ApplicationError {
|
|
10
|
+
constructor(provider) {
|
|
11
|
+
super('errors.invalidModuleProvider', ERROR_CODES.SYSTEM.INVALID_MODULE_PROVIDER, { provider: JSON.stringify(provider) });
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=invalid-module-provider.error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invalid-module-provider.error.js","sourceRoot":"","sources":["../../../src/module/errors/invalid-module-provider.error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAA;AAErE;;;;;GAKG;AACH,MAAM,OAAO,0BAA2B,SAAQ,gBAAgB;IAC9D,YAAY,QAAiB;QAC3B,KAAK,CACH,8BAA8B,EAC9B,WAAW,CAAC,MAAM,CAAC,uBAAuB,EAC1C,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CACvC,CAAA;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ApplicationError } from '../../infrastructure/error-handler';
|
|
2
|
+
/**
|
|
3
|
+
* ModuleAlreadyRegisteredError
|
|
4
|
+
*
|
|
5
|
+
* Thrown when attempting to register a module that is already registered.
|
|
6
|
+
* This prevents duplicate module registration which could cause unexpected behavior.
|
|
7
|
+
*/
|
|
8
|
+
export declare class ModuleAlreadyRegisteredError extends ApplicationError {
|
|
9
|
+
constructor(moduleName: string);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=module-already-registered.error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module-already-registered.error.d.ts","sourceRoot":"","sources":["../../../src/module/errors/module-already-registered.error.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAA;AAErE;;;;;GAKG;AACH,qBAAa,4BAA6B,SAAQ,gBAAgB;gBACpD,UAAU,EAAE,MAAM;CAO/B"}
|