@seidor-cloud-produtos/orbit-backend-lib 2.0.136 → 2.0.138
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/clean-arch/application/cache/cache.d.ts +0 -32
- package/dist/clean-arch/application/cache/cache.js +0 -24
- package/dist/clean-arch/application/cache/client.d.ts +0 -23
- package/dist/clean-arch/application/cache/client.js +0 -11
- package/dist/clean-arch/application/logger/index.d.ts +6 -94
- package/dist/clean-arch/application/logger/index.js +7 -69
- package/dist/clean-arch/application/queue/handler.d.ts +0 -28
- package/dist/clean-arch/application/queue/handler.js +0 -23
- package/dist/clean-arch/application/queue/messages-in-memory.d.ts +0 -6
- package/dist/clean-arch/application/queue/queue-connection.d.ts +0 -22
- package/dist/clean-arch/application/queue/queue.d.ts +0 -39
- package/dist/clean-arch/domain/entities/entity.d.ts +0 -3
- package/dist/clean-arch/domain/entities/entity.js +0 -35
- package/dist/clean-arch/domain/entities/watched-list.d.ts +0 -1
- package/dist/clean-arch/domain/entities/watched-list.js +0 -9
- package/dist/clean-arch/domain/events/domain-event.d.ts +0 -5
- package/dist/clean-arch/domain/interfaces/country.d.ts +0 -1
- package/dist/clean-arch/infra/authorizations/authorizer.spec.js +0 -43
- package/dist/clean-arch/infra/cache/cache-in-memory.d.ts +0 -5
- package/dist/clean-arch/infra/cache/cache-in-memory.js +0 -6
- package/dist/clean-arch/infra/cache/clients/node-cache.d.ts +0 -17
- package/dist/clean-arch/infra/cache/clients/node-cache.js +2 -20
- package/dist/clean-arch/infra/cache/clients/redis.d.ts +0 -15
- package/dist/clean-arch/infra/cache/clients/redis.js +0 -11
- package/dist/clean-arch/infra/http/controller.spec.js +51 -170
- package/dist/clean-arch/infra/http/handle-user-headers.d.ts +0 -5
- package/dist/clean-arch/infra/http/handle-user-headers.js +0 -2
- package/dist/clean-arch/infra/logger/logger-in-memory.d.ts +2 -31
- package/dist/clean-arch/infra/logger/logger-in-memory.js +2 -21
- package/dist/clean-arch/infra/logger/logger-orbit.d.ts +5 -81
- package/dist/clean-arch/infra/logger/logger-orbit.js +6 -63
- package/dist/clean-arch/infra/queue/create-consumers.d.ts +0 -18
- package/dist/clean-arch/infra/queue/create-consumers.js +0 -15
- package/dist/clean-arch/infra/queue/in-memory/in-memory-queue.d.ts +0 -16
- package/dist/clean-arch/infra/queue/in-memory/in-memory-queue.js +0 -19
- package/dist/clean-arch/infra/queue/queue-controller.d.ts +0 -14
- package/dist/clean-arch/infra/queue/queue-controller.js +0 -8
- package/dist/clean-arch/infra/queue/rabbitmq/amqp-lib.d.ts +1 -5
- package/dist/clean-arch/infra/queue/rabbitmq/amqp-lib.js +12 -23
- package/dist/clean-arch/infra/queue/rabbitmq/amqp-lib.spec.js +89 -504
- package/dist/clean-arch/infra/queue/rabbitmq/types.d.ts +1 -7
- package/dist/clean-arch/infra/queue/worker.d.ts +0 -9
- package/dist/clean-arch/infra/queue/worker.js +0 -9
- package/dist/clean-arch/infra/scaledjob/amqp/runner.d.ts +2 -35
- package/dist/clean-arch/infra/scaledjob/amqp/runner.js +3 -38
- package/dist/clean-arch/infra/scaledjob/amqp/runner.spec.js +84 -74
- package/dist/clean-arch/infra/scaledjob/amqp/types.d.ts +0 -19
- package/dist/clean-arch/infra/scaledjob/sqs/runner.d.ts +0 -23
- package/dist/clean-arch/infra/scaledjob/sqs/runner.js +2 -26
- package/dist/clean-arch/infra/scaledjob/sqs/types.d.ts +0 -18
- package/dist/clean-arch/infra/scaledjob/types/index.d.ts +0 -5
- package/dist/clean-arch/infra/validations/zod/schemas/common-validation.d.ts +0 -159
- package/dist/clean-arch/infra/validations/zod/schemas/common-validation.js +2 -53
- package/dist/clean-arch/infra/validations/zod/validation-zod.d.ts +1 -1
- package/dist/clean-arch/infra/validations/zod/validation-zod.spec.js +0 -23
- package/dist/clean-arch/shared/timeout.d.ts +0 -8
- package/dist/clean-arch/shared/timeout.js +0 -8
- package/dist/frameworks/express/api-gateway/mapping-model.spec.js +0 -58
- package/dist/frameworks/express/authorizations/authorization-express.spec.js +0 -9
- package/dist/infra/http/api-gateway/mapping-model.spec.js +0 -42
- package/dist/static/countries.js +0 -241
- package/package.json +1 -5
- package/dist/clean-arch/application/cache/cache.spec.d.ts +0 -1
- package/dist/clean-arch/application/cache/cache.spec.js +0 -178
- package/dist/clean-arch/application/consistency-event-dispatcher/consistency-event-dispatcher.d.ts +0 -9
- package/dist/clean-arch/application/consistency-event-dispatcher/consistency-event-dispatcher.js +0 -26
- package/dist/clean-arch/application/logger/base-audit-logger.d.ts +0 -10
- package/dist/clean-arch/application/logger/base-audit-logger.js +0 -28
- package/dist/clean-arch/application/logger/logger.spec.d.ts +0 -1
- package/dist/clean-arch/application/logger/logger.spec.js +0 -204
- package/dist/clean-arch/domain/entities/entity.spec.d.ts +0 -1
- package/dist/clean-arch/domain/entities/entity.spec.js +0 -130
- package/dist/clean-arch/domain/events/consistency-event/consistency-event.d.ts +0 -15
- package/dist/clean-arch/domain/events/consistency-event/consistency-event.js +0 -15
- package/dist/clean-arch/domain/events/consistency-event/consistency-event.spec.d.ts +0 -1
- package/dist/clean-arch/domain/events/consistency-event/consistency-event.spec.js +0 -99
- package/dist/clean-arch/domain/events/consistency-event/events-enum.d.ts +0 -94
- package/dist/clean-arch/domain/events/consistency-event/events-enum.js +0 -145
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/address/address-created.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/address/address-created.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/address/address-entity-event.d.ts +0 -30
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/address/address-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/address/address-upserted.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/address/address-upserted.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/branch/branch-associated.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/branch/branch-associated.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/branch/branch-created.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/branch/branch-created.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/branch/branch-entity-event.d.ts +0 -38
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/branch/branch-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/branch/branch-upserted.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/branch/branch-upserted.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/contact/contact-created.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/contact/contact-created.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/contact/contact-entity-event.d.ts +0 -26
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/contact/contact-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/contact/contact-upserted.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/contact/contact-upserted.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/customer/customer-created.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/customer/customer-created.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/customer/customer-entity-event.d.ts +0 -10
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/customer/customer-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/customer/customer-upserted.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/customer/customer-upserted.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/partner/partner-created.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/partner/partner-created.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/partner/partner-entity-event.d.ts +0 -37
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/partner/partner-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/partner/partner-updated.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/partner/partner-updated.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/partner/partner-upserted.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/partner/partner-upserted.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/role/role-associated.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/role/role-associated.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/role/role-entity-event.d.ts +0 -13
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/role/role-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/role/role-upserted.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/role/role-upserted.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/supplier/supplier-created.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/supplier/supplier-created.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/supplier/supplier-entity-event.d.ts +0 -5
- package/dist/clean-arch/domain/events/consistency-event/types/partner-service/supplier/supplier-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/authorization/authorization-created.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/authorization/authorization-created.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/authorization/authorization-entity-event.d.ts +0 -11
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/authorization/authorization-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/authorization/authorization-updated.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/authorization/authorization-updated.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/external-provider/external-provider-created.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/external-provider/external-provider-created.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/external-provider/external-provider-entity-event.d.ts +0 -14
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/external-provider/external-provider-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/role/role-created.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/role/role-created.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/role/role-entity-event.d.ts +0 -13
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/role/role-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/role/role-updated.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/role/role-updated.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/tenant/tenant-created.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/tenant/tenant-created.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/tenant/tenant-entity-event.d.ts +0 -50
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/tenant/tenant-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/tenant/tenant-updated.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/tenant/tenant-updated.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/tenant-role/tenant-role-entity-event.d.ts +0 -8
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/tenant-role/tenant-role-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/tenant-role/tenant-role-updated.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/tenant-role/tenant-role-updated.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/tenant-user/tenant-user-entity-event.d.ts +0 -10
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/tenant-user/tenant-user-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/tenant-user/tenant-user-updated.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/tenant-user/tenant-user-updated.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/user/user-entity-event.d.ts +0 -10
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/user/user-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/user/user-forgot-password.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/user/user-forgot-password.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/user/user-temporary-password-generated.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/user/user-temporary-password-generated.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/user-tenant-role/user-tenant-role-entity-event.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/user-tenant-role/user-tenant-role-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/user-tenant-role/user-tenant-roles-created.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/user-tenant-role/user-tenant-roles-created.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/user-tenant-role/user-tenant-roles-updated.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/portal-admin/user-tenant-role/user-tenant-roles-updated.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/branch/branch-created.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/branch/branch-created.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/branch/branch-entity-event.d.ts +0 -8
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/branch/branch-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/branch/branch-upserted.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/branch/branch-upserted.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/brazilian-federal-revenue-api-credential/brazilian-federal-revenue-api-credential-created.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/brazilian-federal-revenue-api-credential/brazilian-federal-revenue-api-credential-created.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/brazilian-federal-revenue-api-credential/brazilian-federal-revenue-api-credential-deleted.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/brazilian-federal-revenue-api-credential/brazilian-federal-revenue-api-credential-deleted.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/brazilian-federal-revenue-api-credential/brazilian-federal-revenue-api-credential-entity-event.d.ts +0 -11
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/brazilian-federal-revenue-api-credential/brazilian-federal-revenue-api-credential-entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/brazilian-federal-revenue-api-credential/brazilian-federal-revenue-api-credential-updated.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/brazilian-federal-revenue-api-credential/brazilian-federal-revenue-api-credential-updated.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/certificate/certificate-created.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/certificate/certificate-created.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/certificate/certificate-deleted.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/certificate/certificate-deleted.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/certificate/certificate-entity-event.d.ts +0 -37
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/certificate/certificate-entity-event.js +0 -8
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/certificate/certificate-updated.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/certificate/certificate-updated.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/entity/entity-event.d.ts +0 -21
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/entity/entity-event.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/entity/entity-updated.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/entity/entity-updated.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/external-provider/external-provider-created.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/external-provider/external-provider-created.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/external-provider/external-provider-deleted.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/external-provider/external-provider-deleted.js +0 -2
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/external-provider/external-provider-entity-event.d.ts +0 -27
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/external-provider/external-provider-entity-event.js +0 -8
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/external-provider/external-provider-updated.d.ts +0 -9
- package/dist/clean-arch/domain/events/consistency-event/types/security-service/external-provider/external-provider-updated.js +0 -2
- package/dist/clean-arch/domain/value-objects/password.spec.d.ts +0 -1
- package/dist/clean-arch/domain/value-objects/password.spec.js +0 -90
- package/dist/clean-arch/infra/adapters/http-adapters.spec.d.ts +0 -1
- package/dist/clean-arch/infra/adapters/http-adapters.spec.js +0 -318
- package/dist/clean-arch/infra/cache/cache-clients.spec.d.ts +0 -1
- package/dist/clean-arch/infra/cache/cache-clients.spec.js +0 -161
- package/dist/clean-arch/infra/consistency-event-dispatcher/amqp-consistency-event-dispatcher.d.ts +0 -8
- package/dist/clean-arch/infra/consistency-event-dispatcher/amqp-consistency-event-dispatcher.js +0 -18
- package/dist/clean-arch/infra/consistency-event-dispatcher/exchanges-enum.d.ts +0 -48
- package/dist/clean-arch/infra/consistency-event-dispatcher/exchanges-enum.js +0 -56
- package/dist/clean-arch/infra/consistency-event-dispatcher/in-memory-consistency-event-dispatcher.d.ts +0 -7
- package/dist/clean-arch/infra/consistency-event-dispatcher/in-memory-consistency-event-dispatcher.js +0 -15
- package/dist/clean-arch/infra/http/handle-authorizer-headers.d.ts +0 -25
- package/dist/clean-arch/infra/http/handle-authorizer-headers.js +0 -29
- package/dist/clean-arch/infra/http/helpers.spec.d.ts +0 -1
- package/dist/clean-arch/infra/http/helpers.spec.js +0 -136
- package/dist/clean-arch/infra/http/net.spec.d.ts +0 -1
- package/dist/clean-arch/infra/http/net.spec.js +0 -46
- package/dist/clean-arch/infra/logger/logger-orbit.spec.d.ts +0 -1
- package/dist/clean-arch/infra/logger/logger-orbit.spec.js +0 -122
- package/dist/clean-arch/infra/orbit-http-client/orbit-axios-client/orbit-axios-client.spec.d.ts +0 -1
- package/dist/clean-arch/infra/orbit-http-client/orbit-axios-client/orbit-axios-client.spec.js +0 -143
- package/dist/clean-arch/infra/orbit-notification-client/discord-client.spec.d.ts +0 -1
- package/dist/clean-arch/infra/orbit-notification-client/discord-client.spec.js +0 -58
- package/dist/clean-arch/infra/queue/create-queues.d.ts +0 -11
- package/dist/clean-arch/infra/queue/create-queues.js +0 -19
- package/dist/clean-arch/infra/queue/queue-utils.spec.d.ts +0 -1
- package/dist/clean-arch/infra/queue/queue-utils.spec.js +0 -170
- package/dist/clean-arch/infra/queue/rabbitmq/create-queues.d.ts +0 -10
- package/dist/clean-arch/infra/queue/rabbitmq/create-queues.js +0 -7
- package/dist/clean-arch/infra/scaledjob/sqs/runner.spec.d.ts +0 -1
- package/dist/clean-arch/infra/scaledjob/sqs/runner.spec.js +0 -150
- package/dist/clean-arch/infra/tracing/start-tracing.d.ts +0 -10
- package/dist/clean-arch/infra/tracing/start-tracing.js +0 -78
- package/dist/clean-arch/shared/pagination/get-take-and-skip.spec.d.ts +0 -1
- package/dist/clean-arch/shared/pagination/get-take-and-skip.spec.js +0 -16
- package/dist/frameworks/express/middleware-express.spec.d.ts +0 -1
- package/dist/frameworks/express/middleware-express.spec.js +0 -51
- package/dist/frameworks/nest/nest.spec.d.ts +0 -1
- package/dist/frameworks/nest/nest.spec.js +0 -122
|
@@ -4,32 +4,13 @@ exports.LoggerInMemory = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const logger_1 = tslib_1.__importDefault(require("../../application/logger"));
|
|
6
6
|
const types_1 = require("../environment/types");
|
|
7
|
-
/**
|
|
8
|
-
* Logger simples que escreve no console.
|
|
9
|
-
*
|
|
10
|
-
* Observação: esta implementação NÃO persiste logs em memória.
|
|
11
|
-
* O nome "InMemory" refere-se ao uso local/leve, sem dependências externas.
|
|
12
|
-
*/
|
|
13
7
|
class LoggerInMemory extends logger_1.default {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
* @param options Opções de comportamento do logger.
|
|
17
|
-
* @param params Parâmetros padrão de log (actor/type).
|
|
18
|
-
*/
|
|
19
|
-
constructor(props) {
|
|
20
|
-
super(props);
|
|
8
|
+
constructor(cache, options, params) {
|
|
9
|
+
super(cache, options, params);
|
|
21
10
|
}
|
|
22
|
-
/**
|
|
23
|
-
* Delegado para o fluxo comum de LoggerGateway.
|
|
24
|
-
* Mantido como atalho para compatibilidade com outros loggers.
|
|
25
|
-
*/
|
|
26
11
|
async log(props, dataToLog) {
|
|
27
12
|
return await super.log(props, dataToLog);
|
|
28
13
|
}
|
|
29
|
-
/**
|
|
30
|
-
* Escreve no console usando o nível de log.
|
|
31
|
-
* Quando `showProps` é true, adiciona as props como último argumento.
|
|
32
|
-
*/
|
|
33
14
|
register(props, dataToLog) {
|
|
34
15
|
const args = dataToLog instanceof Array ? [...dataToLog] : [dataToLog];
|
|
35
16
|
if (this.options?.showProps) {
|
|
@@ -1,38 +1,21 @@
|
|
|
1
|
-
import { Cache } from '../../../clean-arch/application/cache/cache';
|
|
2
|
-
import LoggerGateway, { ActorEnum, CategoryEnum, LogOptions, LogParams, LogProperties, LogPropertiesInput } from '../../application/logger';
|
|
3
1
|
import Queue from '../../application/queue/queue';
|
|
2
|
+
import LoggerGateway, { ActorEnum, CategoryEnum, LogOptions, LogParams, LogProperties, LogPropertiesInput } from '../../application/logger';
|
|
4
3
|
import DomainEvent from '../../domain/events/domain-event';
|
|
5
|
-
|
|
6
|
-
* Opções adicionais do LoggerOrbit.
|
|
7
|
-
*/
|
|
4
|
+
import { Cache } from '../../../clean-arch/application/cache/cache';
|
|
8
5
|
export interface LoggerOrbitOptions extends LogOptions {
|
|
9
|
-
/**
|
|
10
|
-
* Quando `true`, falhas ao publicar o log geram exceção (`LogError`).
|
|
11
|
-
*/
|
|
12
6
|
throwOnError?: boolean;
|
|
13
|
-
/**
|
|
14
|
-
* Estratégia de retry executada quando a publicação falha.
|
|
15
|
-
*/
|
|
16
7
|
retryStrategy?: (data: any, props?: LogOrbitPropertiesInput, options?: LoggerOrbitOptions) => Promise<void>;
|
|
17
8
|
}
|
|
18
|
-
/**
|
|
19
|
-
* Propriedades de log aceitas pelo LoggerOrbit (entrada).
|
|
20
|
-
*/
|
|
21
9
|
export interface LogOrbitPropertiesInput extends LogPropertiesInput {
|
|
22
10
|
id?: string;
|
|
23
11
|
tenantId?: string;
|
|
24
12
|
dateTime?: Date;
|
|
25
|
-
actorType?: ActorEnum;
|
|
26
|
-
category?: CategoryEnum;
|
|
27
13
|
expirationHours?: number;
|
|
28
14
|
trace?: {
|
|
29
15
|
mainId?: string;
|
|
30
16
|
ids: string[];
|
|
31
17
|
};
|
|
32
18
|
}
|
|
33
|
-
/**
|
|
34
|
-
* Propriedades finais de log geradas pelo LoggerOrbit.
|
|
35
|
-
*/
|
|
36
19
|
export interface LogOrbitProperties extends LogProperties {
|
|
37
20
|
id?: string;
|
|
38
21
|
tenantId?: string;
|
|
@@ -44,88 +27,29 @@ export interface LogOrbitProperties extends LogProperties {
|
|
|
44
27
|
ids: string[];
|
|
45
28
|
};
|
|
46
29
|
}
|
|
47
|
-
/**
|
|
48
|
-
* Parâmetros padrão suportados pelo LoggerOrbit.
|
|
49
|
-
*/
|
|
50
30
|
export interface LogOrbitParams extends LogParams {
|
|
51
31
|
actorType: ActorEnum;
|
|
52
32
|
category: CategoryEnum;
|
|
53
33
|
expirationHours: number;
|
|
54
34
|
}
|
|
55
|
-
export type LogOrbitParamsInput = Partial<LogOrbitParams>;
|
|
56
|
-
/**
|
|
57
|
-
* Payload enviado para o serviço de logs.
|
|
58
|
-
*
|
|
59
|
-
* `expirationDate` é calculada a partir de `expirationHours`.
|
|
60
|
-
*/
|
|
61
35
|
export type LogPayload = Omit<LogProperties, 'expirationHours'> & {
|
|
62
36
|
expirationDate: Date;
|
|
63
37
|
details: any;
|
|
64
38
|
};
|
|
65
|
-
export type LoggerOrbitProps = {
|
|
66
|
-
cache?: Cache;
|
|
67
|
-
options?: LoggerOrbitOptions;
|
|
68
|
-
params?: LogOrbitParamsInput;
|
|
69
|
-
};
|
|
70
|
-
/**
|
|
71
|
-
* Evento de domínio enviado para o serviço de logs.
|
|
72
|
-
*/
|
|
73
39
|
export default class LogEvent implements DomainEvent {
|
|
74
40
|
readonly input: LogPayload;
|
|
75
41
|
readonly name = "log-service.log.created";
|
|
76
42
|
readonly eventDate: Date;
|
|
77
43
|
constructor(input: LogPayload);
|
|
78
44
|
}
|
|
79
|
-
/**
|
|
80
|
-
* Implementação de logger que publica logs em fila (AMQP).
|
|
81
|
-
*
|
|
82
|
-
* - Publica em exchange `log-service.direct`.
|
|
83
|
-
* - Força logging para categoria BUSINESS.
|
|
84
|
-
* - Permite retry e opção de falhar com exceção.
|
|
85
|
-
*/
|
|
86
45
|
export declare class LoggerOrbit extends LoggerGateway {
|
|
87
46
|
private queue;
|
|
88
47
|
protected options: LoggerOrbitOptions;
|
|
89
|
-
protected params?:
|
|
90
|
-
constructor(queue: Queue,
|
|
91
|
-
/**
|
|
92
|
-
* Loga um evento (atalho para `super.log`).
|
|
93
|
-
*/
|
|
48
|
+
protected params?: LogOrbitParams;
|
|
49
|
+
constructor(queue: Queue, cache?: Cache, options?: LoggerOrbitOptions, params?: LogOrbitParams);
|
|
94
50
|
log(props: LogOrbitPropertiesInput, dataToLog: any): Promise<void>;
|
|
95
|
-
/**
|
|
96
|
-
* Determina se deve logar.
|
|
97
|
-
*
|
|
98
|
-
* - Usa o filtro padrão do LoggerGateway.
|
|
99
|
-
* - Força logging se a categoria for BUSINESS.
|
|
100
|
-
*/
|
|
101
51
|
protected isToLog(props: LogOrbitProperties, dataToLog: any): Promise<boolean>;
|
|
102
|
-
/**
|
|
103
|
-
* Registra o log publicando na fila.
|
|
104
|
-
*
|
|
105
|
-
* Em caso de falha:
|
|
106
|
-
* - Executa `retryStrategy` se existir.
|
|
107
|
-
* - Lança `LogError` se `throwOnError` estiver habilitado.
|
|
108
|
-
*/
|
|
109
52
|
register(props: LogOrbitProperties, data: any): Promise<void>;
|
|
110
|
-
/**
|
|
111
|
-
* Monta o payload final para publicação.
|
|
112
|
-
*
|
|
113
|
-
* Converte `expirationHours` em `expirationDate` e coloca o conteúdo
|
|
114
|
-
* original em `details`.
|
|
115
|
-
*/
|
|
116
53
|
private buildPayload;
|
|
117
|
-
|
|
118
|
-
* Propriedades padrão do LoggerOrbit.
|
|
119
|
-
*
|
|
120
|
-
* - category: TECHNICAL
|
|
121
|
-
* - actorType: SYSTEM
|
|
122
|
-
* - expirationHours: 4 * 7 dias
|
|
123
|
-
*/
|
|
124
|
-
protected buildDefaultProps(params?: LogOrbitParamsInput): LogOrbitProperties;
|
|
125
|
-
}
|
|
126
|
-
export declare class AuditOrbitLoggerGateway {
|
|
127
|
-
private static instance;
|
|
128
|
-
protected constructor();
|
|
129
|
-
static getInstance(queue: Queue, props?: LoggerOrbitProps): LoggerOrbit;
|
|
130
|
-
private static buildProps;
|
|
54
|
+
protected buildDefaultProps(params?: LogOrbitParams): LogOrbitProperties;
|
|
131
55
|
}
|
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.LoggerOrbit = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const logger_1 = tslib_1.__importStar(require("../../application/logger"));
|
|
6
6
|
const log_error_1 = tslib_1.__importDefault(require("../../domain/errors/log-error"));
|
|
7
|
-
/**
|
|
8
|
-
* Evento de domínio enviado para o serviço de logs.
|
|
9
|
-
*/
|
|
10
7
|
class LogEvent {
|
|
11
8
|
input;
|
|
12
9
|
name = 'log-service.log.created';
|
|
@@ -16,46 +13,23 @@ class LogEvent {
|
|
|
16
13
|
}
|
|
17
14
|
}
|
|
18
15
|
exports.default = LogEvent;
|
|
19
|
-
/**
|
|
20
|
-
* Implementação de logger que publica logs em fila (AMQP).
|
|
21
|
-
*
|
|
22
|
-
* - Publica em exchange `log-service.direct`.
|
|
23
|
-
* - Força logging para categoria BUSINESS.
|
|
24
|
-
* - Permite retry e opção de falhar com exceção.
|
|
25
|
-
*/
|
|
26
16
|
class LoggerOrbit extends logger_1.default {
|
|
27
17
|
queue;
|
|
28
|
-
constructor(queue,
|
|
29
|
-
super(
|
|
18
|
+
constructor(queue, cache, options, params) {
|
|
19
|
+
super(cache, options, params);
|
|
30
20
|
this.queue = queue;
|
|
31
21
|
}
|
|
32
|
-
/**
|
|
33
|
-
* Loga um evento (atalho para `super.log`).
|
|
34
|
-
*/
|
|
35
22
|
async log(props, dataToLog) {
|
|
36
23
|
return await super.log(props, dataToLog);
|
|
37
24
|
}
|
|
38
|
-
/**
|
|
39
|
-
* Determina se deve logar.
|
|
40
|
-
*
|
|
41
|
-
* - Usa o filtro padrão do LoggerGateway.
|
|
42
|
-
* - Força logging se a categoria for BUSINESS.
|
|
43
|
-
*/
|
|
44
25
|
async isToLog(props, dataToLog) {
|
|
45
26
|
return ((await super.isToLog(props, dataToLog)) ||
|
|
46
27
|
props.category === logger_1.CategoryEnum.BUSINESS);
|
|
47
28
|
}
|
|
48
|
-
/**
|
|
49
|
-
* Registra o log publicando na fila.
|
|
50
|
-
*
|
|
51
|
-
* Em caso de falha:
|
|
52
|
-
* - Executa `retryStrategy` se existir.
|
|
53
|
-
* - Lança `LogError` se `throwOnError` estiver habilitado.
|
|
54
|
-
*/
|
|
55
29
|
async register(props, data) {
|
|
56
30
|
try {
|
|
57
31
|
const payload = this.buildPayload(props, data);
|
|
58
|
-
await this.queue.publish('
|
|
32
|
+
await this.queue.publish('logservice.common.direct', new LogEvent(payload));
|
|
59
33
|
}
|
|
60
34
|
catch (error) {
|
|
61
35
|
if (this.options?.retryStrategy) {
|
|
@@ -66,12 +40,6 @@ class LoggerOrbit extends logger_1.default {
|
|
|
66
40
|
}
|
|
67
41
|
}
|
|
68
42
|
}
|
|
69
|
-
/**
|
|
70
|
-
* Monta o payload final para publicação.
|
|
71
|
-
*
|
|
72
|
-
* Converte `expirationHours` em `expirationDate` e coloca o conteúdo
|
|
73
|
-
* original em `details`.
|
|
74
|
-
*/
|
|
75
43
|
buildPayload(props, dataToLog) {
|
|
76
44
|
const { expirationHours, ...buildedProperties } = props;
|
|
77
45
|
const now = new Date();
|
|
@@ -82,39 +50,14 @@ class LoggerOrbit extends logger_1.default {
|
|
|
82
50
|
details: dataToLog,
|
|
83
51
|
};
|
|
84
52
|
}
|
|
85
|
-
/**
|
|
86
|
-
* Propriedades padrão do LoggerOrbit.
|
|
87
|
-
*
|
|
88
|
-
* - category: TECHNICAL
|
|
89
|
-
* - actorType: SYSTEM
|
|
90
|
-
* - expirationHours: 4 * 7 dias
|
|
91
|
-
*/
|
|
92
53
|
buildDefaultProps(params) {
|
|
93
54
|
const sevenDaysInHours = 168;
|
|
94
55
|
return {
|
|
95
|
-
|
|
56
|
+
...super.buildDefaultProps(),
|
|
57
|
+
category: params?.category || logger_1.CategoryEnum.TECHNICAL,
|
|
96
58
|
actorType: logger_1.ActorEnum.SYSTEM,
|
|
97
59
|
expirationHours: sevenDaysInHours * 4,
|
|
98
|
-
...super.buildDefaultProps(params),
|
|
99
60
|
};
|
|
100
61
|
}
|
|
101
62
|
}
|
|
102
63
|
exports.LoggerOrbit = LoggerOrbit;
|
|
103
|
-
class AuditOrbitLoggerGateway {
|
|
104
|
-
static instance;
|
|
105
|
-
constructor() { }
|
|
106
|
-
static getInstance(queue, props) {
|
|
107
|
-
if (!this.instance) {
|
|
108
|
-
this.instance = new LoggerOrbit(queue, this.buildProps(props));
|
|
109
|
-
}
|
|
110
|
-
return this.instance;
|
|
111
|
-
}
|
|
112
|
-
static buildProps(props = {}) {
|
|
113
|
-
props.options = props.options || {
|
|
114
|
-
throwOnError: false,
|
|
115
|
-
lastArgIsParams: true,
|
|
116
|
-
};
|
|
117
|
-
return props;
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
exports.AuditOrbitLoggerGateway = AuditOrbitLoggerGateway;
|
|
@@ -1,29 +1,11 @@
|
|
|
1
1
|
import QueueConnection from '../../application/queue/queue-connection';
|
|
2
|
-
/**
|
|
3
|
-
* Descreve uma topologia mínima a ser declarada para um consumidor.
|
|
4
|
-
*/
|
|
5
2
|
export interface IConsumer {
|
|
6
3
|
queueName: string;
|
|
7
4
|
configs: any;
|
|
8
5
|
}
|
|
9
|
-
/**
|
|
10
|
-
* Helper para declarar várias filas/topologias de uma vez.
|
|
11
|
-
*
|
|
12
|
-
* A classe espera que a implementação concreta de `queue` ofereça
|
|
13
|
-
* o método opcional `createConsumers`.
|
|
14
|
-
*
|
|
15
|
-
* @deprecated Use CreateQueues instead.
|
|
16
|
-
*
|
|
17
|
-
*/
|
|
18
6
|
export default abstract class CreateConsumers {
|
|
19
7
|
readonly queue: QueueConnection;
|
|
20
8
|
protected abstract consumers: IConsumer[];
|
|
21
9
|
constructor(queue: QueueConnection);
|
|
22
|
-
/**
|
|
23
|
-
* Itera a lista de consumidores e declara a topologia de cada um.
|
|
24
|
-
*
|
|
25
|
-
* Se a implementação da fila não suportar `createConsumers`, o método
|
|
26
|
-
* simplesmente não faz nada.
|
|
27
|
-
*/
|
|
28
10
|
createConsumers(): Promise<void>;
|
|
29
11
|
}
|
|
@@ -1,25 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/**
|
|
4
|
-
* Helper para declarar várias filas/topologias de uma vez.
|
|
5
|
-
*
|
|
6
|
-
* A classe espera que a implementação concreta de `queue` ofereça
|
|
7
|
-
* o método opcional `createConsumers`.
|
|
8
|
-
*
|
|
9
|
-
* @deprecated Use CreateQueues instead.
|
|
10
|
-
*
|
|
11
|
-
*/
|
|
12
3
|
class CreateConsumers {
|
|
13
4
|
queue;
|
|
14
5
|
constructor(queue) {
|
|
15
6
|
this.queue = queue;
|
|
16
7
|
}
|
|
17
|
-
/**
|
|
18
|
-
* Itera a lista de consumidores e declara a topologia de cada um.
|
|
19
|
-
*
|
|
20
|
-
* Se a implementação da fila não suportar `createConsumers`, o método
|
|
21
|
-
* simplesmente não faz nada.
|
|
22
|
-
*/
|
|
23
8
|
async createConsumers() {
|
|
24
9
|
if (!this.queue.createConsumers) {
|
|
25
10
|
return;
|
|
@@ -1,27 +1,11 @@
|
|
|
1
1
|
import Handler from '../../../application/queue/handler';
|
|
2
2
|
import Queue from '../../../application/queue/queue';
|
|
3
3
|
import DomainEvent from '../../../domain/events/domain-event';
|
|
4
|
-
/**
|
|
5
|
-
* Implementação simples de fila em memória.
|
|
6
|
-
*
|
|
7
|
-
* Útil para testes ou cenários locais onde não há broker AMQP.
|
|
8
|
-
*/
|
|
9
4
|
export default class QueueInMemory implements Queue {
|
|
10
5
|
queues: PropsQueue[];
|
|
11
6
|
constructor();
|
|
12
|
-
/**
|
|
13
|
-
* Percorre os eventos armazenados e executa o handler para os que
|
|
14
|
-
* combinam com o `queueName`.
|
|
15
|
-
*/
|
|
16
7
|
on(queueName: string, callback: Handler): Promise<void>;
|
|
17
|
-
/**
|
|
18
|
-
* Armazena o evento na lista interna.
|
|
19
|
-
*/
|
|
20
8
|
publish(exchangeName: string, domainEvent: DomainEvent): Promise<void>;
|
|
21
|
-
/**
|
|
22
|
-
* Armazena o evento na lista interna e retorna sucesso.
|
|
23
|
-
*/
|
|
24
|
-
publishWaitForConfirms(exchangeName: string, domainEvent: DomainEvent): Promise<boolean>;
|
|
25
9
|
}
|
|
26
10
|
type PropsQueue = {
|
|
27
11
|
exchangeName: string;
|
|
@@ -1,19 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/**
|
|
4
|
-
* Implementação simples de fila em memória.
|
|
5
|
-
*
|
|
6
|
-
* Útil para testes ou cenários locais onde não há broker AMQP.
|
|
7
|
-
*/
|
|
8
3
|
class QueueInMemory {
|
|
9
4
|
queues;
|
|
10
5
|
constructor() {
|
|
11
6
|
this.queues = [];
|
|
12
7
|
}
|
|
13
|
-
/**
|
|
14
|
-
* Percorre os eventos armazenados e executa o handler para os que
|
|
15
|
-
* combinam com o `queueName`.
|
|
16
|
-
*/
|
|
17
8
|
async on(queueName, callback) {
|
|
18
9
|
for (const queue of this.queues) {
|
|
19
10
|
if (queue.domainEvent.name === queueName) {
|
|
@@ -21,18 +12,8 @@ class QueueInMemory {
|
|
|
21
12
|
}
|
|
22
13
|
}
|
|
23
14
|
}
|
|
24
|
-
/**
|
|
25
|
-
* Armazena o evento na lista interna.
|
|
26
|
-
*/
|
|
27
15
|
async publish(exchangeName, domainEvent) {
|
|
28
16
|
this.queues.push({ exchangeName, domainEvent });
|
|
29
17
|
}
|
|
30
|
-
/**
|
|
31
|
-
* Armazena o evento na lista interna e retorna sucesso.
|
|
32
|
-
*/
|
|
33
|
-
async publishWaitForConfirms(exchangeName, domainEvent) {
|
|
34
|
-
this.queues.push({ exchangeName, domainEvent });
|
|
35
|
-
return true;
|
|
36
|
-
}
|
|
37
18
|
}
|
|
38
19
|
exports.default = QueueInMemory;
|
|
@@ -1,26 +1,12 @@
|
|
|
1
1
|
import Handler from '../../application/queue/handler';
|
|
2
2
|
import QueueConnection from '../../application/queue/queue-connection';
|
|
3
|
-
/**
|
|
4
|
-
* Um handler assíncrono que será registrado em uma fila.
|
|
5
|
-
*
|
|
6
|
-
* O uso de `Promise<Handler>` permite construir handlers de forma lazy
|
|
7
|
-
* (ex.: via factories que dependem de DI/infra).
|
|
8
|
-
*/
|
|
9
3
|
export interface IEventHandler {
|
|
10
4
|
queueName: string;
|
|
11
5
|
callback: Promise<Handler>;
|
|
12
6
|
}
|
|
13
|
-
/**
|
|
14
|
-
* Helper para subir vários consumidores de forma organizada.
|
|
15
|
-
*
|
|
16
|
-
* A implementação concreta deve preencher `eventHandlers`.
|
|
17
|
-
*/
|
|
18
7
|
export default abstract class QueueController {
|
|
19
8
|
readonly queue: QueueConnection;
|
|
20
9
|
protected abstract eventHandlers: IEventHandler[];
|
|
21
10
|
constructor(queue: QueueConnection);
|
|
22
|
-
/**
|
|
23
|
-
* Registra todos os handlers configurados através de `queue.on(...)`.
|
|
24
|
-
*/
|
|
25
11
|
runConsumers(): Promise<void>;
|
|
26
12
|
}
|
|
@@ -1,18 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/**
|
|
4
|
-
* Helper para subir vários consumidores de forma organizada.
|
|
5
|
-
*
|
|
6
|
-
* A implementação concreta deve preencher `eventHandlers`.
|
|
7
|
-
*/
|
|
8
3
|
class QueueController {
|
|
9
4
|
queue;
|
|
10
5
|
constructor(queue) {
|
|
11
6
|
this.queue = queue;
|
|
12
7
|
}
|
|
13
|
-
/**
|
|
14
|
-
* Registra todos os handlers configurados através de `queue.on(...)`.
|
|
15
|
-
*/
|
|
16
8
|
async runConsumers() {
|
|
17
9
|
for (const handler of this.eventHandlers) {
|
|
18
10
|
this.queue.on(handler.queueName, await handler.callback);
|
|
@@ -134,10 +134,6 @@ type CreateConsumers = {
|
|
|
134
134
|
exchangeName: string;
|
|
135
135
|
exchangeType: 'direct' | 'fanout';
|
|
136
136
|
queueType?: 'classic' | 'quorum' | 'stream';
|
|
137
|
-
|
|
138
|
-
dlq?: {
|
|
139
|
-
TTLms?: number | null;
|
|
140
|
-
exchangeName?: string;
|
|
141
|
-
};
|
|
137
|
+
dlqTTLms?: number | null;
|
|
142
138
|
};
|
|
143
139
|
export {};
|
|
@@ -281,34 +281,29 @@ class AmqpQueue {
|
|
|
281
281
|
await channel.assertExchange(configs.exchangeName, configs.exchangeType, {
|
|
282
282
|
durable: true,
|
|
283
283
|
});
|
|
284
|
-
|
|
284
|
+
await channel.assertQueue(queueName, {
|
|
285
285
|
arguments: {
|
|
286
|
-
'x-dead-letter-exchange': `${configs.
|
|
286
|
+
'x-dead-letter-exchange': `${configs.exchangeName}.DLX`,
|
|
287
287
|
'x-dead-letter-routing-key': `${queueName || ''}.DLK`,
|
|
288
288
|
'x-queue-type': configs.queueType || 'classic',
|
|
289
289
|
},
|
|
290
290
|
durable: true,
|
|
291
|
-
deadLetterExchange: `${configs.
|
|
291
|
+
deadLetterExchange: `${configs.exchangeName}.DLX`,
|
|
292
292
|
deadLetterRoutingKey: `${queueName || ''}.DLK`,
|
|
293
|
-
};
|
|
294
|
-
if (configs.TTLms) {
|
|
295
|
-
buildedConfigs.arguments['x-message-ttl'] = configs.TTLms;
|
|
296
|
-
}
|
|
297
|
-
await channel.assertQueue(queueName, buildedConfigs);
|
|
293
|
+
});
|
|
298
294
|
await channel.bindQueue(queueName, configs.exchangeName, queueName || '');
|
|
299
|
-
await channel.assertExchange(`${configs.
|
|
295
|
+
await channel.assertExchange(`${configs.exchangeName}.DLX`, configs.exchangeType || 'direct', {
|
|
300
296
|
durable: true,
|
|
301
297
|
});
|
|
298
|
+
const oneDayMs = 86400000;
|
|
302
299
|
await channel.assertQueue(`${queueName}.DLQ`, {
|
|
303
300
|
durable: true,
|
|
304
301
|
arguments: {
|
|
305
|
-
...(configs.
|
|
306
|
-
|
|
307
|
-
: {}),
|
|
308
|
-
'x-queue-type': 'classic',
|
|
302
|
+
...(configs.dlqTTLms ? { 'x-message-ttl': configs.dlqTTLms } : {}),
|
|
303
|
+
'x-queue-type': configs.queueType || 'classic',
|
|
309
304
|
},
|
|
310
305
|
});
|
|
311
|
-
await channel.bindQueue(`${queueName}.DLQ`, `${configs.
|
|
306
|
+
await channel.bindQueue(`${queueName}.DLQ`, `${configs.exchangeName}.DLX`, `${queueName || ''}.DLK`);
|
|
312
307
|
await channel.close();
|
|
313
308
|
}
|
|
314
309
|
catch (err) {
|
|
@@ -319,18 +314,12 @@ class AmqpQueue {
|
|
|
319
314
|
}
|
|
320
315
|
}
|
|
321
316
|
async createQueues(queueName, configs) {
|
|
322
|
-
const oneWeekInMS = 604800000;
|
|
323
317
|
const buildedConfigs = {
|
|
324
318
|
...configs,
|
|
325
319
|
};
|
|
326
|
-
if (buildedConfigs.
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
if (buildedConfigs.dlq?.TTLms === undefined) {
|
|
330
|
-
buildedConfigs.dlq = {
|
|
331
|
-
...(buildedConfigs.dlq || {}),
|
|
332
|
-
TTLms: oneWeekInMS,
|
|
333
|
-
};
|
|
320
|
+
if (buildedConfigs.dlqTTLms === undefined) {
|
|
321
|
+
const sevenDaysInMs = 604800000;
|
|
322
|
+
buildedConfigs.dlqTTLms = sevenDaysInMs;
|
|
334
323
|
}
|
|
335
324
|
return await this.createConsumers(queueName, buildedConfigs);
|
|
336
325
|
}
|