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,31 @@
|
|
|
1
|
+
import type { QueueName } from '../queue-name';
|
|
2
|
+
/**
|
|
3
|
+
* Inject a queue sender by name.
|
|
4
|
+
*
|
|
5
|
+
* Queue names are typed via module augmentation of QueueNames interface.
|
|
6
|
+
* The queue name serves as both the identifier and the DI injection token.
|
|
7
|
+
*
|
|
8
|
+
* @param name - Queue name (typed with autocomplete if QueueNames is augmented)
|
|
9
|
+
* @returns Parameter decorator for constructor injection
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```typescript
|
|
13
|
+
* // Direct injection by queue name
|
|
14
|
+
* constructor(
|
|
15
|
+
* @InjectQueue('notifications-queue') private queue: IQueueSender
|
|
16
|
+
* ) {}
|
|
17
|
+
*
|
|
18
|
+
* // Usage
|
|
19
|
+
* await this.queue.dispatch({
|
|
20
|
+
* type: 'email.send',
|
|
21
|
+
* payload: { to: 'user@example.com', subject: 'Hello' }
|
|
22
|
+
* })
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* @remarks
|
|
26
|
+
* The queue must be registered via `QueueModule.registerQueue(name)` before injection.
|
|
27
|
+
* For module-internal queue bindings (e.g., EmailModule), use `@inject(TOKEN)` with
|
|
28
|
+
* `useExisting` provider binding instead.
|
|
29
|
+
*/
|
|
30
|
+
export declare function InjectQueue(name: QueueName): ParameterDecorator;
|
|
31
|
+
//# sourceMappingURL=inject-queue.decorator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inject-queue.decorator.d.ts","sourceRoot":"","sources":["../../../src/queue/decorators/inject-queue.decorator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,SAAS,GAAG,kBAAkB,CAE/D"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { inject } from 'tsyringe';
|
|
2
|
+
/**
|
|
3
|
+
* Inject a queue sender by name.
|
|
4
|
+
*
|
|
5
|
+
* Queue names are typed via module augmentation of QueueNames interface.
|
|
6
|
+
* The queue name serves as both the identifier and the DI injection token.
|
|
7
|
+
*
|
|
8
|
+
* @param name - Queue name (typed with autocomplete if QueueNames is augmented)
|
|
9
|
+
* @returns Parameter decorator for constructor injection
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```typescript
|
|
13
|
+
* // Direct injection by queue name
|
|
14
|
+
* constructor(
|
|
15
|
+
* @InjectQueue('notifications-queue') private queue: IQueueSender
|
|
16
|
+
* ) {}
|
|
17
|
+
*
|
|
18
|
+
* // Usage
|
|
19
|
+
* await this.queue.dispatch({
|
|
20
|
+
* type: 'email.send',
|
|
21
|
+
* payload: { to: 'user@example.com', subject: 'Hello' }
|
|
22
|
+
* })
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* @remarks
|
|
26
|
+
* The queue must be registered via `QueueModule.registerQueue(name)` before injection.
|
|
27
|
+
* For module-internal queue bindings (e.g., EmailModule), use `@inject(TOKEN)` with
|
|
28
|
+
* `useExisting` provider binding instead.
|
|
29
|
+
*/
|
|
30
|
+
export function InjectQueue(name) {
|
|
31
|
+
return inject(name);
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=inject-queue.decorator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inject-queue.decorator.js","sourceRoot":"","sources":["../../../src/queue/decorators/inject-queue.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAGjC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,WAAW,CAAC,IAAe;IACzC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAA;AACrB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/queue/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAA;AAC/C,cAAc,sCAAsC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/queue/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAA;AAC/C,cAAc,sCAAsC,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ApplicationError } from '../../infrastructure/error-handler';
|
|
2
|
+
/**
|
|
3
|
+
* QueueBindingNotFoundError
|
|
4
|
+
*
|
|
5
|
+
* Thrown when attempting to access a Cloudflare Queue binding that hasn't been configured.
|
|
6
|
+
* This typically indicates that the queue binding is missing from wrangler.jsonc
|
|
7
|
+
* or the environment variables are not properly set.
|
|
8
|
+
*/
|
|
9
|
+
export declare class QueueBindingNotFoundError extends ApplicationError {
|
|
10
|
+
constructor(queueName: string, bindingName: string);
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=queue-binding-not-found.error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-binding-not-found.error.d.ts","sourceRoot":"","sources":["../../../src/queue/errors/queue-binding-not-found.error.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAA;AAErE;;;;;;GAMG;AACH,qBAAa,yBAA0B,SAAQ,gBAAgB;gBACjD,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;CAOnD"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ERROR_CODES } from '../../errors';
|
|
2
|
+
import { ApplicationError } from '../../infrastructure/error-handler';
|
|
3
|
+
/**
|
|
4
|
+
* QueueBindingNotFoundError
|
|
5
|
+
*
|
|
6
|
+
* Thrown when attempting to access a Cloudflare Queue binding that hasn't been configured.
|
|
7
|
+
* This typically indicates that the queue binding is missing from wrangler.jsonc
|
|
8
|
+
* or the environment variables are not properly set.
|
|
9
|
+
*/
|
|
10
|
+
export class QueueBindingNotFoundError extends ApplicationError {
|
|
11
|
+
constructor(queueName, bindingName) {
|
|
12
|
+
super('errors.queueBindingNotFound', ERROR_CODES.SYSTEM.QUEUE_BINDING_NOT_FOUND, { queueName, bindingName });
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=queue-binding-not-found.error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-binding-not-found.error.js","sourceRoot":"","sources":["../../../src/queue/errors/queue-binding-not-found.error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAA;AAErE;;;;;;GAMG;AACH,MAAM,OAAO,yBAA0B,SAAQ,gBAAgB;IAC7D,YAAY,SAAiB,EAAE,WAAmB;QAChD,KAAK,CACH,6BAA6B,EAC7B,WAAW,CAAC,MAAM,CAAC,uBAAuB,EAC1C,EAAE,SAAS,EAAE,WAAW,EAAE,CAC3B,CAAA;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ApplicationError } from '../../infrastructure/error-handler';
|
|
2
|
+
/**
|
|
3
|
+
* QueueProviderNotSupportedError
|
|
4
|
+
*
|
|
5
|
+
* Thrown when attempting to use a queue provider that is not supported.
|
|
6
|
+
* Valid providers are: 'cloudflare', 'sync'
|
|
7
|
+
*
|
|
8
|
+
* This typically indicates an invalid QUEUE_PROVIDER environment variable.
|
|
9
|
+
*/
|
|
10
|
+
export declare class QueueProviderNotSupportedError extends ApplicationError {
|
|
11
|
+
constructor(provider: string);
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=queue-provider-not-supported.error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-provider-not-supported.error.d.ts","sourceRoot":"","sources":["../../../src/queue/errors/queue-provider-not-supported.error.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAA;AAErE;;;;;;;GAOG;AACH,qBAAa,8BAA+B,SAAQ,gBAAgB;gBACtD,QAAQ,EAAE,MAAM;CAO7B"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ERROR_CODES } from '../../errors';
|
|
2
|
+
import { ApplicationError } from '../../infrastructure/error-handler';
|
|
3
|
+
/**
|
|
4
|
+
* QueueProviderNotSupportedError
|
|
5
|
+
*
|
|
6
|
+
* Thrown when attempting to use a queue provider that is not supported.
|
|
7
|
+
* Valid providers are: 'cloudflare', 'sync'
|
|
8
|
+
*
|
|
9
|
+
* This typically indicates an invalid QUEUE_PROVIDER environment variable.
|
|
10
|
+
*/
|
|
11
|
+
export class QueueProviderNotSupportedError extends ApplicationError {
|
|
12
|
+
constructor(provider) {
|
|
13
|
+
super('errors.queueProviderNotSupported', ERROR_CODES.SYSTEM.QUEUE_PROVIDER_NOT_SUPPORTED, { provider });
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=queue-provider-not-supported.error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-provider-not-supported.error.js","sourceRoot":"","sources":["../../../src/queue/errors/queue-provider-not-supported.error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAA;AAErE;;;;;;;GAOG;AACH,MAAM,OAAO,8BAA+B,SAAQ,gBAAgB;IAClE,YAAY,QAAgB;QAC1B,KAAK,CACH,kCAAkC,EAClC,WAAW,CAAC,MAAM,CAAC,4BAA4B,EAC/C,EAAE,QAAQ,EAAE,CACb,CAAA;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export * from './queue-consumer';
|
|
2
|
+
export * from './queue-manager';
|
|
3
|
+
export * from './consumer-registry';
|
|
4
|
+
export * from './queue-name';
|
|
5
|
+
export * from './queue-sender.interface';
|
|
6
|
+
export * from './queue-sender';
|
|
7
|
+
export * from './queue-registry';
|
|
8
|
+
export * from './decorators';
|
|
9
|
+
export * from './queue.module';
|
|
10
|
+
export * from './queue.tokens';
|
|
11
|
+
export * from './providers';
|
|
12
|
+
export * from './services';
|
|
13
|
+
export * from './errors';
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/queue/index.ts"],"names":[],"mappings":"AACA,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,cAAc,CAAA;AAC5B,cAAc,0BAA0B,CAAA;AACxC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAGhC,cAAc,cAAc,CAAA;AAG5B,cAAc,gBAAgB,CAAA;AAG9B,cAAc,gBAAgB,CAAA;AAG9B,cAAc,aAAa,CAAA;AAG3B,cAAc,YAAY,CAAA;AAG1B,cAAc,UAAU,CAAA"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// Core exports
|
|
2
|
+
export * from './queue-consumer';
|
|
3
|
+
export * from './queue-manager';
|
|
4
|
+
export * from './consumer-registry';
|
|
5
|
+
export * from './queue-name';
|
|
6
|
+
export * from './queue-sender.interface';
|
|
7
|
+
export * from './queue-sender';
|
|
8
|
+
export * from './queue-registry';
|
|
9
|
+
// Decorators
|
|
10
|
+
export * from './decorators';
|
|
11
|
+
// Module export
|
|
12
|
+
export * from './queue.module';
|
|
13
|
+
// Tokens
|
|
14
|
+
export * from './queue.tokens';
|
|
15
|
+
// Providers
|
|
16
|
+
export * from './providers';
|
|
17
|
+
// Services
|
|
18
|
+
export * from './services';
|
|
19
|
+
// Errors
|
|
20
|
+
export * from './errors';
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/queue/index.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,cAAc,CAAA;AAC5B,cAAc,0BAA0B,CAAA;AACxC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAEhC,aAAa;AACb,cAAc,cAAc,CAAA;AAE5B,gBAAgB;AAChB,cAAc,gBAAgB,CAAA;AAE9B,SAAS;AACT,cAAc,gBAAgB,CAAA;AAE9B,YAAY;AACZ,cAAc,aAAa,CAAA;AAE3B,WAAW;AACX,cAAc,YAAY,CAAA;AAE1B,SAAS;AACT,cAAc,UAAU,CAAA"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { type StratalEnv } from '../../env';
|
|
2
|
+
import type { QueueMessage } from '../queue-consumer';
|
|
3
|
+
import type { IQueueProvider } from './queue-provider.interface';
|
|
4
|
+
/**
|
|
5
|
+
* Cloudflare Queue Provider
|
|
6
|
+
*
|
|
7
|
+
* Sends messages to Cloudflare Queues by resolving bindings from the environment.
|
|
8
|
+
* Used in production environments where Cloudflare Workers handle queue processing.
|
|
9
|
+
*
|
|
10
|
+
* **Binding Resolution:**
|
|
11
|
+
* Queue names are converted to binding names:
|
|
12
|
+
* - `notifications-queue` → `NOTIFICATIONS_QUEUE`
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* const provider = new CloudflareQueueProvider(env)
|
|
17
|
+
* await provider.send('notifications-queue', message)
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export declare class CloudflareQueueProvider implements IQueueProvider {
|
|
21
|
+
private readonly env;
|
|
22
|
+
constructor(env: StratalEnv);
|
|
23
|
+
/**
|
|
24
|
+
* Send a message to a Cloudflare Queue
|
|
25
|
+
*
|
|
26
|
+
* @param queueName - Queue name (e.g., 'notifications-queue')
|
|
27
|
+
* @param message - Complete message with id, timestamp, and payload
|
|
28
|
+
* @throws {QueueBindingNotFoundError} If queue binding is not configured
|
|
29
|
+
*/
|
|
30
|
+
send<T>(queueName: string, message: QueueMessage<T>): Promise<void>;
|
|
31
|
+
/**
|
|
32
|
+
* Resolve queue binding from Cloudflare environment
|
|
33
|
+
*
|
|
34
|
+
* Converts kebab-case queue name to UPPER_SNAKE_CASE binding name.
|
|
35
|
+
*
|
|
36
|
+
* @param queueName - Queue name (e.g., 'notifications-queue')
|
|
37
|
+
* @returns Cloudflare Queue binding
|
|
38
|
+
* @throws {QueueBindingNotFoundError} If binding not found in env
|
|
39
|
+
*/
|
|
40
|
+
private getQueue;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=cloudflare-queue.provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cloudflare-queue.provider.d.ts","sourceRoot":"","sources":["../../../src/queue/providers/cloudflare-queue.provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,WAAW,CAAA;AAI3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAEhE;;;;;;;;;;;;;;;GAeG;AACH,qBACa,uBAAwB,YAAW,cAAc;IAEzB,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,UAAU;IAGnE;;;;;;OAMG;IACG,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAKzE;;;;;;;;OAQG;IACH,OAAO,CAAC,QAAQ;CAUjB"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
11
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
12
|
+
};
|
|
13
|
+
import { inject } from 'tsyringe';
|
|
14
|
+
import { Transient } from '../../di/decorators';
|
|
15
|
+
import { DI_TOKENS } from '../../di/tokens';
|
|
16
|
+
import { QueueBindingNotFoundError } from '../errors';
|
|
17
|
+
/**
|
|
18
|
+
* Cloudflare Queue Provider
|
|
19
|
+
*
|
|
20
|
+
* Sends messages to Cloudflare Queues by resolving bindings from the environment.
|
|
21
|
+
* Used in production environments where Cloudflare Workers handle queue processing.
|
|
22
|
+
*
|
|
23
|
+
* **Binding Resolution:**
|
|
24
|
+
* Queue names are converted to binding names:
|
|
25
|
+
* - `notifications-queue` → `NOTIFICATIONS_QUEUE`
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* const provider = new CloudflareQueueProvider(env)
|
|
30
|
+
* await provider.send('notifications-queue', message)
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
let CloudflareQueueProvider = class CloudflareQueueProvider {
|
|
34
|
+
env;
|
|
35
|
+
constructor(env) {
|
|
36
|
+
this.env = env;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Send a message to a Cloudflare Queue
|
|
40
|
+
*
|
|
41
|
+
* @param queueName - Queue name (e.g., 'notifications-queue')
|
|
42
|
+
* @param message - Complete message with id, timestamp, and payload
|
|
43
|
+
* @throws {QueueBindingNotFoundError} If queue binding is not configured
|
|
44
|
+
*/
|
|
45
|
+
async send(queueName, message) {
|
|
46
|
+
const queue = this.getQueue(queueName);
|
|
47
|
+
await queue.send(message);
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Resolve queue binding from Cloudflare environment
|
|
51
|
+
*
|
|
52
|
+
* Converts kebab-case queue name to UPPER_SNAKE_CASE binding name.
|
|
53
|
+
*
|
|
54
|
+
* @param queueName - Queue name (e.g., 'notifications-queue')
|
|
55
|
+
* @returns Cloudflare Queue binding
|
|
56
|
+
* @throws {QueueBindingNotFoundError} If binding not found in env
|
|
57
|
+
*/
|
|
58
|
+
getQueue(queueName) {
|
|
59
|
+
const bindingName = queueName.toUpperCase().replace(/-/g, '_');
|
|
60
|
+
const queue = this.env[bindingName];
|
|
61
|
+
if (!queue) {
|
|
62
|
+
throw new QueueBindingNotFoundError(queueName, bindingName);
|
|
63
|
+
}
|
|
64
|
+
return queue;
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
CloudflareQueueProvider = __decorate([
|
|
68
|
+
Transient(),
|
|
69
|
+
__param(0, inject(DI_TOKENS.CloudflareEnv)),
|
|
70
|
+
__metadata("design:paramtypes", [Object])
|
|
71
|
+
], CloudflareQueueProvider);
|
|
72
|
+
export { CloudflareQueueProvider };
|
|
73
|
+
//# sourceMappingURL=cloudflare-queue.provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cloudflare-queue.provider.js","sourceRoot":"","sources":["../../../src/queue/providers/cloudflare-queue.provider.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAA;AAIrD;;;;;;;;;;;;;;;GAeG;AAEI,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAEkB;IADpD,YACoD,GAAe;QAAf,QAAG,GAAH,GAAG,CAAY;IAC/D,CAAC;IAEL;;;;;;OAMG;IACH,KAAK,CAAC,IAAI,CAAI,SAAiB,EAAE,OAAwB;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QACtC,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC3B,CAAC;IAED;;;;;;;;OAQG;IACK,QAAQ,CAAC,SAAiB;QAChC,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QAC9D,MAAM,KAAK,GAAI,IAAI,CAAC,GAA0C,CAAC,WAAW,CAAsB,CAAA;QAEhG,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,yBAAyB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;QAC7D,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;CACF,CAAA;AApCY,uBAAuB;IADnC,SAAS,EAAE;IAGP,WAAA,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAA;;GAFvB,uBAAuB,CAoCnC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/queue/providers/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,uBAAuB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/queue/providers/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,uBAAuB,CAAA"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { QueueMessage } from '../queue-consumer';
|
|
2
|
+
/**
|
|
3
|
+
* Queue Provider Interface
|
|
4
|
+
*
|
|
5
|
+
* Defines the contract for queue providers. Each provider handles
|
|
6
|
+
* the actual message delivery mechanism.
|
|
7
|
+
*
|
|
8
|
+
* **Available Providers:**
|
|
9
|
+
* - `cloudflare`: Uses Cloudflare Queue bindings (production)
|
|
10
|
+
* - `sync`: Processes messages immediately (testing/development)
|
|
11
|
+
*
|
|
12
|
+
* @example Implementing a custom provider
|
|
13
|
+
* ```typescript
|
|
14
|
+
* export class CustomQueueProvider implements IQueueProvider {
|
|
15
|
+
* async send<T>(queueName: string, message: QueueMessage<T>): Promise<void> {
|
|
16
|
+
* // Custom implementation
|
|
17
|
+
* }
|
|
18
|
+
* }
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export interface IQueueProvider {
|
|
22
|
+
/**
|
|
23
|
+
* Send a message to a queue
|
|
24
|
+
*
|
|
25
|
+
* Provider handles the actual delivery mechanism:
|
|
26
|
+
* - CloudflareQueueProvider: Resolves CF binding and calls queue.send()
|
|
27
|
+
* - SyncQueueProvider: Finds matching consumers and calls handle() directly
|
|
28
|
+
*
|
|
29
|
+
* @param queueName - Queue name
|
|
30
|
+
* @param message - Complete message with id, timestamp, and metadata
|
|
31
|
+
*/
|
|
32
|
+
send<T>(queueName: string, message: QueueMessage<T>): Promise<void>;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=queue-provider.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-provider.interface.d.ts","sourceRoot":"","sources":["../../../src/queue/providers/queue-provider.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAErD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;;;;;OASG;IACH,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACpE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-provider.interface.js","sourceRoot":"","sources":["../../../src/queue/providers/queue-provider.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { ConsumerRegistry } from '../consumer-registry';
|
|
2
|
+
import type { QueueMessage } from '../queue-consumer';
|
|
3
|
+
import type { IQueueProvider } from './queue-provider.interface';
|
|
4
|
+
/**
|
|
5
|
+
* Sync Queue Provider
|
|
6
|
+
*
|
|
7
|
+
* Processes messages immediately by finding matching consumers and calling
|
|
8
|
+
* their handle() method directly. Used for testing and development where
|
|
9
|
+
* real queue infrastructure is not available.
|
|
10
|
+
*
|
|
11
|
+
* **Behavior:**
|
|
12
|
+
* - Messages are processed synchronously when send() is called
|
|
13
|
+
* - Matching consumers are found via ConsumerRegistry by message type
|
|
14
|
+
* - All matching consumers are called sequentially
|
|
15
|
+
* - Errors are re-thrown after onError() is called (fail-fast for testing)
|
|
16
|
+
*
|
|
17
|
+
* **Consumer Matching:**
|
|
18
|
+
* - Consumers are matched by message type, not queue name
|
|
19
|
+
* - Wildcard ('*') matches all message types
|
|
20
|
+
*
|
|
21
|
+
* @example Testing with sync provider
|
|
22
|
+
* ```typescript
|
|
23
|
+
* const provider = new SyncQueueProvider(registry)
|
|
24
|
+
* await provider.send('notifications-queue', {
|
|
25
|
+
* id: '123',
|
|
26
|
+
* timestamp: Date.now(),
|
|
27
|
+
* type: 'email.send',
|
|
28
|
+
* payload: { to: 'test@example.com' }
|
|
29
|
+
* })
|
|
30
|
+
* // Consumer's handle() is called immediately!
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
export declare class SyncQueueProvider implements IQueueProvider {
|
|
34
|
+
private readonly registry;
|
|
35
|
+
constructor(registry: ConsumerRegistry);
|
|
36
|
+
/**
|
|
37
|
+
* Process a message synchronously
|
|
38
|
+
*
|
|
39
|
+
* Finds all matching consumers by message type and calls their handle() method.
|
|
40
|
+
* If any consumer throws, onError() is called and the error is re-thrown.
|
|
41
|
+
*
|
|
42
|
+
* @param _queueName - Queue name (not used for routing, consumers match by message type)
|
|
43
|
+
* @param message - Complete message with id, timestamp, and payload
|
|
44
|
+
* @throws Re-throws any error from consumer.handle() after calling onError()
|
|
45
|
+
*/
|
|
46
|
+
send<T>(_queueName: string, message: QueueMessage<T>): Promise<void>;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=sync-queue.provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-queue.provider.d.ts","sourceRoot":"","sources":["../../../src/queue/providers/sync-queue.provider.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBACa,iBAAkB,YAAW,cAAc;IAEhB,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,EAAE,gBAAgB;IAGjF;;;;;;;;;OASG;IACG,IAAI,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAuB3E"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
11
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
12
|
+
};
|
|
13
|
+
import { inject } from 'tsyringe';
|
|
14
|
+
import { Transient } from '../../di/decorators';
|
|
15
|
+
import { DI_TOKENS } from '../../di/tokens';
|
|
16
|
+
import { ConsumerRegistry } from '../consumer-registry';
|
|
17
|
+
/**
|
|
18
|
+
* Sync Queue Provider
|
|
19
|
+
*
|
|
20
|
+
* Processes messages immediately by finding matching consumers and calling
|
|
21
|
+
* their handle() method directly. Used for testing and development where
|
|
22
|
+
* real queue infrastructure is not available.
|
|
23
|
+
*
|
|
24
|
+
* **Behavior:**
|
|
25
|
+
* - Messages are processed synchronously when send() is called
|
|
26
|
+
* - Matching consumers are found via ConsumerRegistry by message type
|
|
27
|
+
* - All matching consumers are called sequentially
|
|
28
|
+
* - Errors are re-thrown after onError() is called (fail-fast for testing)
|
|
29
|
+
*
|
|
30
|
+
* **Consumer Matching:**
|
|
31
|
+
* - Consumers are matched by message type, not queue name
|
|
32
|
+
* - Wildcard ('*') matches all message types
|
|
33
|
+
*
|
|
34
|
+
* @example Testing with sync provider
|
|
35
|
+
* ```typescript
|
|
36
|
+
* const provider = new SyncQueueProvider(registry)
|
|
37
|
+
* await provider.send('notifications-queue', {
|
|
38
|
+
* id: '123',
|
|
39
|
+
* timestamp: Date.now(),
|
|
40
|
+
* type: 'email.send',
|
|
41
|
+
* payload: { to: 'test@example.com' }
|
|
42
|
+
* })
|
|
43
|
+
* // Consumer's handle() is called immediately!
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
46
|
+
let SyncQueueProvider = class SyncQueueProvider {
|
|
47
|
+
registry;
|
|
48
|
+
constructor(registry) {
|
|
49
|
+
this.registry = registry;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Process a message synchronously
|
|
53
|
+
*
|
|
54
|
+
* Finds all matching consumers by message type and calls their handle() method.
|
|
55
|
+
* If any consumer throws, onError() is called and the error is re-thrown.
|
|
56
|
+
*
|
|
57
|
+
* @param _queueName - Queue name (not used for routing, consumers match by message type)
|
|
58
|
+
* @param message - Complete message with id, timestamp, and payload
|
|
59
|
+
* @throws Re-throws any error from consumer.handle() after calling onError()
|
|
60
|
+
*/
|
|
61
|
+
async send(_queueName, message) {
|
|
62
|
+
// Consumers are matched by message type, not queue name
|
|
63
|
+
const consumers = this.registry.getConsumers(message.type);
|
|
64
|
+
// Process synchronously - call each matching consumer
|
|
65
|
+
for (const consumer of consumers) {
|
|
66
|
+
try {
|
|
67
|
+
await consumer.handle(message);
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
const errorInstance = error instanceof Error
|
|
71
|
+
? error
|
|
72
|
+
: new Error(String(error));
|
|
73
|
+
// Call onError hook if defined
|
|
74
|
+
if (consumer.onError) {
|
|
75
|
+
await consumer.onError(errorInstance, message);
|
|
76
|
+
}
|
|
77
|
+
// Re-throw for fail-fast behavior in tests
|
|
78
|
+
throw errorInstance;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
SyncQueueProvider = __decorate([
|
|
84
|
+
Transient(),
|
|
85
|
+
__param(0, inject(DI_TOKENS.ConsumerRegistry)),
|
|
86
|
+
__metadata("design:paramtypes", [ConsumerRegistry])
|
|
87
|
+
], SyncQueueProvider);
|
|
88
|
+
export { SyncQueueProvider };
|
|
89
|
+
//# sourceMappingURL=sync-queue.provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-queue.provider.js","sourceRoot":"","sources":["../../../src/queue/providers/sync-queue.provider.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAIvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEI,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAE2B;IADvD,YACuD,QAA0B;QAA1B,aAAQ,GAAR,QAAQ,CAAkB;IAC9E,CAAC;IAEJ;;;;;;;;;OASG;IACH,KAAK,CAAC,IAAI,CAAI,UAAkB,EAAE,OAAwB;QACxD,wDAAwD;QACxD,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAE1D,sDAAsD;QACtD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YAChC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,aAAa,GAAG,KAAK,YAAY,KAAK;oBAC1C,CAAC,CAAC,KAAK;oBACP,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;gBAE5B,+BAA+B;gBAC/B,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACrB,MAAM,QAAQ,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;gBAChD,CAAC;gBAED,2CAA2C;gBAC3C,MAAM,aAAa,CAAA;YACrB,CAAC;QACH,CAAC;IACH,CAAC;CACF,CAAA;AAtCY,iBAAiB;IAD7B,SAAS,EAAE;IAGP,WAAA,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAA;qCAA4B,gBAAgB;GAFtE,iBAAiB,CAsC7B"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Queue message structure
|
|
3
|
+
*
|
|
4
|
+
* All messages dispatched to queues follow this structure.
|
|
5
|
+
* The `id` and `timestamp` are auto-generated by QueueSender.
|
|
6
|
+
*/
|
|
7
|
+
export interface QueueMessage<T = unknown> {
|
|
8
|
+
/** Unique message identifier (UUID) */
|
|
9
|
+
id: string;
|
|
10
|
+
/** Timestamp when message was dispatched (milliseconds since epoch) */
|
|
11
|
+
timestamp: number;
|
|
12
|
+
/** Message type for routing to consumers */
|
|
13
|
+
type: string;
|
|
14
|
+
/** Optional tenant ID for multi-tenant context */
|
|
15
|
+
tenantId?: string;
|
|
16
|
+
/** Message payload */
|
|
17
|
+
payload: T;
|
|
18
|
+
/** Optional metadata including locale for i18n */
|
|
19
|
+
metadata?: {
|
|
20
|
+
locale?: string;
|
|
21
|
+
[key: string]: unknown;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Queue consumer interface
|
|
26
|
+
*
|
|
27
|
+
* Consumers handle messages based on their `messageTypes` declaration.
|
|
28
|
+
* A consumer receives messages of the declared types from ANY queue.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```typescript
|
|
32
|
+
* @Transient()
|
|
33
|
+
* export class EmailConsumer implements IQueueConsumer<SendEmailInput> {
|
|
34
|
+
* readonly messageTypes = ['email.send', 'email.batch.send']
|
|
35
|
+
*
|
|
36
|
+
* async handle(message: QueueMessage<SendEmailInput>): Promise<void> {
|
|
37
|
+
* // Process email...
|
|
38
|
+
* }
|
|
39
|
+
* }
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
export interface IQueueConsumer<T = unknown> {
|
|
43
|
+
/**
|
|
44
|
+
* Message types this consumer handles.
|
|
45
|
+
*
|
|
46
|
+
* The consumer receives messages matching these types from ANY queue.
|
|
47
|
+
* Use '*' to match all message types (wildcard consumer).
|
|
48
|
+
*/
|
|
49
|
+
readonly messageTypes: string[];
|
|
50
|
+
/**
|
|
51
|
+
* Handle an incoming message
|
|
52
|
+
*
|
|
53
|
+
* @param message - The queue message to process
|
|
54
|
+
*/
|
|
55
|
+
handle(message: QueueMessage<T>): Promise<void>;
|
|
56
|
+
/**
|
|
57
|
+
* Optional error handler for failed message processing
|
|
58
|
+
*
|
|
59
|
+
* @param error - The error that occurred
|
|
60
|
+
* @param message - The message that failed to process
|
|
61
|
+
*/
|
|
62
|
+
onError?(error: Error, message: QueueMessage<T>): Promise<void>;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=queue-consumer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-consumer.d.ts","sourceRoot":"","sources":["../../src/queue/queue-consumer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACvC,uCAAuC;IACvC,EAAE,EAAE,MAAM,CAAA;IACV,uEAAuE;IACvE,SAAS,EAAE,MAAM,CAAA;IACjB,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAA;IACZ,kDAAkD;IAClD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,sBAAsB;IACtB,OAAO,EAAE,CAAC,CAAA;IACV,kDAAkD;IAClD,QAAQ,CAAC,EAAE;QACT,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KACvB,CAAA;CACF;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,OAAO;IACzC;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,CAAA;IAE/B;;;;OAIG;IACH,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE/C;;;;;OAKG;IACH,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAChE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-consumer.js","sourceRoot":"","sources":["../../src/queue/queue-consumer.ts"],"names":[],"mappings":""}
|