@invariant--labs/foundation 1.1.2 → 1.1.5
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/core/application/index.d.ts +2 -0
- package/dist/core/application/index.d.ts.map +1 -0
- package/dist/core/application/index.js +5 -0
- package/dist/core/application/index.js.map +1 -0
- package/{src/core/application/persistence/index.ts → dist/core/application/persistence/index.d.ts} +1 -0
- package/dist/core/application/persistence/index.d.ts.map +1 -0
- package/dist/core/application/persistence/index.js +7 -0
- package/dist/core/application/persistence/index.js.map +1 -0
- package/dist/core/application/persistence/query-builder.d.ts +3 -0
- package/dist/core/application/persistence/query-builder.d.ts.map +1 -0
- package/dist/core/application/persistence/query-builder.js +3 -0
- package/dist/core/application/persistence/query-builder.js.map +1 -0
- package/dist/core/application/persistence/read-projection.d.ts +3 -0
- package/dist/core/application/persistence/read-projection.d.ts.map +1 -0
- package/dist/core/application/persistence/read-projection.js +3 -0
- package/dist/core/application/persistence/read-projection.js.map +1 -0
- package/dist/core/application/persistence/repository.d.ts +24 -0
- package/dist/core/application/persistence/repository.d.ts.map +1 -0
- package/dist/core/application/persistence/repository.js +7 -0
- package/dist/core/application/persistence/repository.js.map +1 -0
- package/dist/core/domain/entities/aggregate-root.d.ts +16 -0
- package/dist/core/domain/entities/aggregate-root.d.ts.map +1 -0
- package/dist/core/domain/entities/aggregate-root.js +38 -0
- package/dist/core/domain/entities/aggregate-root.js.map +1 -0
- package/dist/core/domain/entities/entity.d.ts +15 -0
- package/dist/core/domain/entities/entity.d.ts.map +1 -0
- package/dist/core/domain/entities/entity.js +33 -0
- package/dist/core/domain/entities/entity.js.map +1 -0
- package/dist/core/domain/entities/identifier.d.ts +8 -0
- package/dist/core/domain/entities/identifier.d.ts.map +1 -0
- package/dist/core/domain/entities/identifier.js +23 -0
- package/dist/core/domain/entities/identifier.js.map +1 -0
- package/{src/core/domain/entities/index.ts → dist/core/domain/entities/index.d.ts} +1 -0
- package/dist/core/domain/entities/index.d.ts.map +1 -0
- package/dist/core/domain/entities/index.js +9 -0
- package/dist/core/domain/entities/index.js.map +1 -0
- package/{src/core/domain/entities/projection.ts → dist/core/domain/entities/projection.d.ts} +2 -3
- package/dist/core/domain/entities/projection.d.ts.map +1 -0
- package/dist/core/domain/entities/projection.js +3 -0
- package/dist/core/domain/entities/projection.js.map +1 -0
- package/dist/core/domain/entities/unique-entity-id.d.ts +5 -0
- package/dist/core/domain/entities/unique-entity-id.d.ts.map +1 -0
- package/dist/core/domain/entities/unique-entity-id.js +12 -0
- package/dist/core/domain/entities/unique-entity-id.js.map +1 -0
- package/dist/core/domain/events/domain-event.d.ts +7 -0
- package/dist/core/domain/events/domain-event.d.ts.map +1 -0
- package/dist/core/domain/events/domain-event.js +12 -0
- package/dist/core/domain/events/domain-event.js.map +1 -0
- package/dist/core/domain/events/index.d.ts +2 -0
- package/dist/core/domain/events/index.d.ts.map +1 -0
- package/dist/core/domain/events/index.js +5 -0
- package/dist/core/domain/events/index.js.map +1 -0
- package/{src/core/domain/index.ts → dist/core/domain/index.d.ts} +1 -0
- package/dist/core/domain/index.d.ts.map +1 -0
- package/dist/core/domain/index.js +7 -0
- package/dist/core/domain/index.js.map +1 -0
- package/{src/core/domain/value-objects/index.ts → dist/core/domain/value-objects/index.d.ts} +1 -0
- package/dist/core/domain/value-objects/index.d.ts.map +1 -0
- package/dist/core/domain/value-objects/index.js +6 -0
- package/dist/core/domain/value-objects/index.js.map +1 -0
- package/dist/core/domain/value-objects/range.d.ts +5 -0
- package/dist/core/domain/value-objects/range.d.ts.map +1 -0
- package/dist/core/domain/value-objects/range.js +3 -0
- package/dist/core/domain/value-objects/range.js.map +1 -0
- package/dist/core/domain/value-objects/value-object.d.ts +8 -0
- package/dist/core/domain/value-objects/value-object.d.ts.map +1 -0
- package/dist/core/domain/value-objects/value-object.js +19 -0
- package/dist/core/domain/value-objects/value-object.js.map +1 -0
- package/dist/core/errors/application/application.error.d.ts +6 -0
- package/dist/core/errors/application/application.error.d.ts.map +1 -0
- package/dist/core/errors/application/application.error.js +13 -0
- package/dist/core/errors/application/application.error.js.map +1 -0
- package/dist/core/errors/application/command-failure.error.d.ts +5 -0
- package/dist/core/errors/application/command-failure.error.d.ts.map +1 -0
- package/dist/core/errors/application/command-failure.error.js +11 -0
- package/dist/core/errors/application/command-failure.error.js.map +1 -0
- package/dist/core/errors/application/command-filter.error.d.ts +4 -0
- package/dist/core/errors/application/command-filter.error.d.ts.map +1 -0
- package/dist/core/errors/application/command-filter.error.js +8 -0
- package/dist/core/errors/application/command-filter.error.js.map +1 -0
- package/{src/core/errors/index.ts → dist/core/errors/application/index.d.ts} +2 -4
- package/dist/core/errors/application/index.d.ts.map +1 -0
- package/dist/core/errors/application/index.js +9 -0
- package/dist/core/errors/application/index.js.map +1 -0
- package/dist/core/errors/application/query-failure.error.d.ts +5 -0
- package/dist/core/errors/application/query-failure.error.d.ts.map +1 -0
- package/dist/core/errors/application/query-failure.error.js +11 -0
- package/dist/core/errors/application/query-failure.error.js.map +1 -0
- package/dist/core/errors/application/too-many-results.error.d.ts +5 -0
- package/dist/core/errors/application/too-many-results.error.d.ts.map +1 -0
- package/dist/core/errors/application/too-many-results.error.js +11 -0
- package/dist/core/errors/application/too-many-results.error.js.map +1 -0
- package/dist/core/errors/detailed.error.d.ts +11 -0
- package/dist/core/errors/detailed.error.d.ts.map +1 -0
- package/dist/core/errors/detailed.error.js +23 -0
- package/dist/core/errors/detailed.error.js.map +1 -0
- package/dist/core/errors/domain/domain.error.d.ts +6 -0
- package/dist/core/errors/domain/domain.error.d.ts.map +1 -0
- package/dist/core/errors/domain/domain.error.js +13 -0
- package/dist/core/errors/domain/domain.error.js.map +1 -0
- package/dist/core/errors/domain/index.d.ts +2 -0
- package/dist/core/errors/domain/index.d.ts.map +1 -0
- package/dist/core/errors/domain/index.js +5 -0
- package/dist/core/errors/domain/index.js.map +1 -0
- package/dist/core/errors/index.d.ts +5 -0
- package/dist/core/errors/index.d.ts.map +1 -0
- package/dist/core/errors/index.js +8 -0
- package/dist/core/errors/index.js.map +1 -0
- package/dist/core/errors/infrastructure/entity-not-found.error.d.ts +6 -0
- package/dist/core/errors/infrastructure/entity-not-found.error.d.ts.map +1 -0
- package/dist/core/errors/infrastructure/entity-not-found.error.js +11 -0
- package/dist/core/errors/infrastructure/entity-not-found.error.js.map +1 -0
- package/dist/core/errors/infrastructure/fake-implementation.error.d.ts +5 -0
- package/dist/core/errors/infrastructure/fake-implementation.error.d.ts.map +1 -0
- package/dist/core/errors/infrastructure/fake-implementation.error.js +11 -0
- package/dist/core/errors/infrastructure/fake-implementation.error.js.map +1 -0
- package/dist/core/errors/infrastructure/index.d.ts +4 -0
- package/dist/core/errors/infrastructure/index.d.ts.map +1 -0
- package/dist/core/errors/infrastructure/index.js +7 -0
- package/dist/core/errors/infrastructure/index.js.map +1 -0
- package/dist/core/errors/infrastructure/infrastructure.error.d.ts +6 -0
- package/dist/core/errors/infrastructure/infrastructure.error.d.ts.map +1 -0
- package/dist/core/errors/infrastructure/infrastructure.error.js +13 -0
- package/dist/core/errors/infrastructure/infrastructure.error.js.map +1 -0
- package/{src/core/index.ts → dist/core/index.d.ts} +1 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +8 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/infrastructure/config/config.provider.d.ts +21 -0
- package/dist/core/infrastructure/config/config.provider.d.ts.map +1 -0
- package/dist/core/infrastructure/config/config.provider.js +93 -0
- package/dist/core/infrastructure/config/config.provider.js.map +1 -0
- package/dist/core/infrastructure/config/config.service.d.ts +15 -0
- package/dist/core/infrastructure/config/config.service.d.ts.map +1 -0
- package/dist/core/infrastructure/config/config.service.js +7 -0
- package/dist/core/infrastructure/config/config.service.js.map +1 -0
- package/{src/core/infrastructure/config/index.ts → dist/core/infrastructure/config/index.d.ts} +1 -0
- package/dist/core/infrastructure/config/index.d.ts.map +1 -0
- package/dist/core/infrastructure/config/index.js +6 -0
- package/dist/core/infrastructure/config/index.js.map +1 -0
- package/dist/core/infrastructure/messaging/fake/fake-messaging.service.d.ts +8 -0
- package/dist/core/infrastructure/messaging/fake/fake-messaging.service.d.ts.map +1 -0
- package/dist/core/infrastructure/messaging/fake/fake-messaging.service.js +17 -0
- package/dist/core/infrastructure/messaging/fake/fake-messaging.service.js.map +1 -0
- package/dist/core/infrastructure/messaging/fake/fake-queue-manager.service.d.ts +6 -0
- package/dist/core/infrastructure/messaging/fake/fake-queue-manager.service.d.ts.map +1 -0
- package/dist/core/infrastructure/messaging/fake/fake-queue-manager.service.js +11 -0
- package/dist/core/infrastructure/messaging/fake/fake-queue-manager.service.js.map +1 -0
- package/dist/core/infrastructure/messaging/fake/fake-queue-messaging.service.d.ts +6 -0
- package/dist/core/infrastructure/messaging/fake/fake-queue-messaging.service.d.ts.map +1 -0
- package/dist/core/infrastructure/messaging/fake/fake-queue-messaging.service.js +11 -0
- package/dist/core/infrastructure/messaging/fake/fake-queue-messaging.service.js.map +1 -0
- package/{src/core/infrastructure/messaging/fake/index.ts → dist/core/infrastructure/messaging/fake/index.d.ts} +1 -0
- package/dist/core/infrastructure/messaging/fake/index.d.ts.map +1 -0
- package/dist/core/infrastructure/messaging/fake/index.js +7 -0
- package/dist/core/infrastructure/messaging/fake/index.js.map +1 -0
- package/{src/core/infrastructure/messaging/index.ts → dist/core/infrastructure/messaging/index.d.ts} +1 -0
- package/dist/core/infrastructure/messaging/index.d.ts.map +1 -0
- package/dist/core/infrastructure/messaging/index.js +10 -0
- package/dist/core/infrastructure/messaging/index.js.map +1 -0
- package/dist/core/infrastructure/messaging/messaging.service.d.ts +4 -0
- package/dist/core/infrastructure/messaging/messaging.service.d.ts.map +1 -0
- package/dist/core/infrastructure/messaging/messaging.service.js +7 -0
- package/dist/core/infrastructure/messaging/messaging.service.js.map +1 -0
- package/dist/core/infrastructure/messaging/queue-manager.service.d.ts +6 -0
- package/dist/core/infrastructure/messaging/queue-manager.service.d.ts.map +1 -0
- package/dist/core/infrastructure/messaging/queue-manager.service.js +7 -0
- package/dist/core/infrastructure/messaging/queue-manager.service.js.map +1 -0
- package/dist/core/infrastructure/messaging/queue-messaging.service.d.ts +4 -0
- package/dist/core/infrastructure/messaging/queue-messaging.service.d.ts.map +1 -0
- package/dist/core/infrastructure/messaging/queue-messaging.service.js +7 -0
- package/dist/core/infrastructure/messaging/queue-messaging.service.js.map +1 -0
- package/{src/core/infrastructure/messaging/rabbitmq/index.ts → dist/core/infrastructure/messaging/rabbitmq/index.d.ts} +1 -0
- package/dist/core/infrastructure/messaging/rabbitmq/index.d.ts.map +1 -0
- package/dist/core/infrastructure/messaging/rabbitmq/index.js +6 -0
- package/dist/core/infrastructure/messaging/rabbitmq/index.js.map +1 -0
- package/dist/core/infrastructure/messaging/rabbitmq/rabbit-messaging.service.d.ts +8 -0
- package/dist/core/infrastructure/messaging/rabbitmq/rabbit-messaging.service.d.ts.map +1 -0
- package/dist/core/infrastructure/messaging/rabbitmq/rabbit-messaging.service.js +14 -0
- package/dist/core/infrastructure/messaging/rabbitmq/rabbit-messaging.service.js.map +1 -0
- package/dist/core/infrastructure/messaging/rabbitmq/rabbit-queue-messaging.service.d.ts +8 -0
- package/dist/core/infrastructure/messaging/rabbitmq/rabbit-queue-messaging.service.d.ts.map +1 -0
- package/dist/core/infrastructure/messaging/rabbitmq/rabbit-queue-messaging.service.js +14 -0
- package/dist/core/infrastructure/messaging/rabbitmq/rabbit-queue-messaging.service.js.map +1 -0
- package/dist/core/infrastructure/messaging/types.d.ts +22 -0
- package/dist/core/infrastructure/messaging/types.d.ts.map +1 -0
- package/dist/core/infrastructure/messaging/types.js +12 -0
- package/dist/core/infrastructure/messaging/types.js.map +1 -0
- package/{src/core/infrastructure/persistence/errors/index.ts → dist/core/infrastructure/persistence/errors/index.d.ts} +1 -0
- package/dist/core/infrastructure/persistence/errors/index.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/errors/index.js +6 -0
- package/dist/core/infrastructure/persistence/errors/index.js.map +1 -0
- package/dist/core/infrastructure/persistence/errors/model-to-entity-conversion.error.d.ts +5 -0
- package/dist/core/infrastructure/persistence/errors/model-to-entity-conversion.error.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/errors/model-to-entity-conversion.error.js +13 -0
- package/dist/core/infrastructure/persistence/errors/model-to-entity-conversion.error.js.map +1 -0
- package/dist/core/infrastructure/persistence/errors/persistence.error.d.ts +6 -0
- package/dist/core/infrastructure/persistence/errors/persistence.error.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/errors/persistence.error.js +11 -0
- package/dist/core/infrastructure/persistence/errors/persistence.error.js.map +1 -0
- package/dist/core/infrastructure/persistence/in-memory/fake.repository.d.ts +20 -0
- package/dist/core/infrastructure/persistence/in-memory/fake.repository.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/in-memory/fake.repository.js +69 -0
- package/dist/core/infrastructure/persistence/in-memory/fake.repository.js.map +1 -0
- package/dist/core/infrastructure/persistence/in-memory/in-memory.query-builder.d.ts +5 -0
- package/dist/core/infrastructure/persistence/in-memory/in-memory.query-builder.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/in-memory/in-memory.query-builder.js +8 -0
- package/dist/core/infrastructure/persistence/in-memory/in-memory.query-builder.js.map +1 -0
- package/dist/core/infrastructure/persistence/in-memory/in-memory.repository.d.ts +20 -0
- package/dist/core/infrastructure/persistence/in-memory/in-memory.repository.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/in-memory/in-memory.repository.js +69 -0
- package/dist/core/infrastructure/persistence/in-memory/in-memory.repository.js.map +1 -0
- package/{src/core/infrastructure/persistence/in-memory/index.ts → dist/core/infrastructure/persistence/in-memory/index.d.ts} +1 -0
- package/dist/core/infrastructure/persistence/in-memory/index.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/in-memory/index.js +7 -0
- package/dist/core/infrastructure/persistence/in-memory/index.js.map +1 -0
- package/{src/core/infrastructure/persistence/index.ts → dist/core/infrastructure/persistence/index.d.ts} +1 -0
- package/dist/core/infrastructure/persistence/index.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/index.js +8 -0
- package/dist/core/infrastructure/persistence/index.js.map +1 -0
- package/dist/core/infrastructure/persistence/read-side/in-memory.query-builder.d.ts +5 -0
- package/dist/core/infrastructure/persistence/read-side/in-memory.query-builder.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/read-side/in-memory.query-builder.js +8 -0
- package/dist/core/infrastructure/persistence/read-side/in-memory.query-builder.js.map +1 -0
- package/dist/core/infrastructure/persistence/read-side/index.d.ts +2 -0
- package/dist/core/infrastructure/persistence/read-side/index.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/read-side/index.js +5 -0
- package/dist/core/infrastructure/persistence/read-side/index.js.map +1 -0
- package/{src/core/infrastructure/persistence/read-side/knex/index.ts → dist/core/infrastructure/persistence/read-side/knex/index.d.ts} +1 -0
- package/dist/core/infrastructure/persistence/read-side/knex/index.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/read-side/knex/index.js +6 -0
- package/dist/core/infrastructure/persistence/read-side/knex/index.js.map +1 -0
- package/dist/core/infrastructure/persistence/read-side/knex/knex-types.definition.d.ts +9 -0
- package/dist/core/infrastructure/persistence/read-side/knex/knex-types.definition.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/read-side/knex/knex-types.definition.js +3 -0
- package/dist/core/infrastructure/persistence/read-side/knex/knex-types.definition.js.map +1 -0
- package/dist/core/infrastructure/persistence/read-side/knex/knex.query-builder.d.ts +24 -0
- package/dist/core/infrastructure/persistence/read-side/knex/knex.query-builder.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/read-side/knex/knex.query-builder.js +57 -0
- package/dist/core/infrastructure/persistence/read-side/knex/knex.query-builder.js.map +1 -0
- package/dist/core/infrastructure/persistence/read-side/knex-query-builder.d.ts +24 -0
- package/dist/core/infrastructure/persistence/read-side/knex-query-builder.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/read-side/knex-query-builder.js +57 -0
- package/dist/core/infrastructure/persistence/read-side/knex-query-builder.js.map +1 -0
- package/dist/core/infrastructure/persistence/read-side/knex-types.definition.d.ts +9 -0
- package/dist/core/infrastructure/persistence/read-side/knex-types.definition.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/read-side/knex-types.definition.js +3 -0
- package/dist/core/infrastructure/persistence/read-side/knex-types.definition.js.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/aggregate-typeorm-repository.d.ts +19 -0
- package/dist/core/infrastructure/persistence/write-side/aggregate-typeorm-repository.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/aggregate-typeorm-repository.js +68 -0
- package/dist/core/infrastructure/persistence/write-side/aggregate-typeorm-repository.js.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/entity-typeorm-repository.d.ts +19 -0
- package/dist/core/infrastructure/persistence/write-side/entity-typeorm-repository.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/entity-typeorm-repository.js +44 -0
- package/dist/core/infrastructure/persistence/write-side/entity-typeorm-repository.js.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/in-memory.repository.d.ts +21 -0
- package/dist/core/infrastructure/persistence/write-side/in-memory.repository.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/in-memory.repository.js +69 -0
- package/dist/core/infrastructure/persistence/write-side/in-memory.repository.js.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/index.d.ts +2 -0
- package/dist/core/infrastructure/persistence/write-side/index.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/index.js +5 -0
- package/dist/core/infrastructure/persistence/write-side/index.js.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/model-attributes.d.ts +2 -0
- package/dist/core/infrastructure/persistence/write-side/model-attributes.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/model-attributes.js +3 -0
- package/dist/core/infrastructure/persistence/write-side/model-attributes.js.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/orm-embedded-mapper.d.ts +6 -0
- package/dist/core/infrastructure/persistence/write-side/orm-embedded-mapper.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/orm-embedded-mapper.js +3 -0
- package/dist/core/infrastructure/persistence/write-side/orm-embedded-mapper.js.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/orm-mapper.d.ts +6 -0
- package/dist/core/infrastructure/persistence/write-side/orm-mapper.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/orm-mapper.js +3 -0
- package/dist/core/infrastructure/persistence/write-side/orm-mapper.js.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/aggregate-typeorm.repository.d.ts +19 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/aggregate-typeorm.repository.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/aggregate-typeorm.repository.js +68 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/aggregate-typeorm.repository.js.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/entity-typeorm.repository.d.ts +19 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/entity-typeorm.repository.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/entity-typeorm.repository.js +44 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/entity-typeorm.repository.js.map +1 -0
- package/{src/core/infrastructure/persistence/write-side/typeorm/index.ts → dist/core/infrastructure/persistence/write-side/typeorm/index.d.ts} +1 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/index.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/index.js +9 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/index.js.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/model-attributes.d.ts +2 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/model-attributes.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/model-attributes.js +3 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/model-attributes.js.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/orm-embedded.mapper.d.ts +6 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/orm-embedded.mapper.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/orm-embedded.mapper.js +3 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/orm-embedded.mapper.js.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/orm.mapper.d.ts +6 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/orm.mapper.d.ts.map +1 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/orm.mapper.js +3 -0
- package/dist/core/infrastructure/persistence/write-side/typeorm/orm.mapper.js.map +1 -0
- package/dist/core/types/architecture-layer.d.ts +35 -0
- package/dist/core/types/architecture-layer.d.ts.map +1 -0
- package/dist/core/types/architecture-layer.js +11 -0
- package/dist/core/types/architecture-layer.js.map +1 -0
- package/{src/core/types/array-element.ts → dist/core/types/array-element.d.ts} +1 -2
- package/dist/core/types/array-element.d.ts.map +1 -0
- package/dist/core/types/array-element.js +3 -0
- package/dist/core/types/array-element.js.map +1 -0
- package/{src/core/types/index.ts → dist/core/types/index.d.ts} +1 -0
- package/dist/core/types/index.d.ts.map +1 -0
- package/dist/core/types/index.js +6 -0
- package/dist/core/types/index.js.map +1 -0
- package/{src/index.ts → dist/index.d.ts} +1 -11
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +23 -0
- package/dist/index.js.map +1 -0
- package/dist/modules/config/config.module.d.ts +3 -0
- package/dist/modules/config/config.module.d.ts.map +1 -0
- package/dist/modules/config/config.module.js +16 -0
- package/dist/modules/config/config.module.js.map +1 -0
- package/{src/modules/config/index.ts → dist/modules/config/index.d.ts} +1 -0
- package/dist/modules/config/index.d.ts.map +1 -0
- package/dist/modules/config/index.js +6 -0
- package/dist/modules/config/index.js.map +1 -0
- package/{src/modules/graphql/index.ts → dist/modules/graphql/index.d.ts} +1 -0
- package/dist/modules/graphql/index.d.ts.map +1 -0
- package/dist/modules/graphql/index.js +5 -0
- package/dist/modules/graphql/index.js.map +1 -0
- package/dist/modules/graphql/paginated-response.object-type.d.ts +8 -0
- package/dist/modules/graphql/paginated-response.object-type.d.ts.map +1 -0
- package/dist/modules/graphql/paginated-response.object-type.js +29 -0
- package/dist/modules/graphql/paginated-response.object-type.js.map +1 -0
- package/dist/modules/healthcheck/healthcheck-out.dto.d.ts +15 -0
- package/dist/modules/healthcheck/healthcheck-out.dto.d.ts.map +1 -0
- package/dist/modules/healthcheck/healthcheck-out.dto.js +67 -0
- package/dist/modules/healthcheck/healthcheck-out.dto.js.map +1 -0
- package/{src/modules/healthcheck/index.ts → dist/modules/healthcheck/index.d.ts} +1 -0
- package/dist/modules/healthcheck/index.d.ts.map +1 -0
- package/dist/modules/healthcheck/index.js +5 -0
- package/dist/modules/healthcheck/index.js.map +1 -0
- package/{src/modules/knex/index.ts → dist/modules/knex/index.d.ts} +1 -0
- package/dist/modules/knex/index.d.ts.map +1 -0
- package/dist/modules/knex/index.js +7 -0
- package/dist/modules/knex/index.js.map +1 -0
- package/dist/modules/knex/knex-core.module.d.ts +6 -0
- package/dist/modules/knex/knex-core.module.d.ts.map +1 -0
- package/dist/modules/knex/knex-core.module.js +34 -0
- package/dist/modules/knex/knex-core.module.js.map +1 -0
- package/dist/modules/knex/knex.decorator.d.ts +2 -0
- package/dist/modules/knex/knex.decorator.d.ts.map +1 -0
- package/dist/modules/knex/knex.decorator.js +8 -0
- package/dist/modules/knex/knex.decorator.js.map +1 -0
- package/dist/modules/knex/knex.interface.d.ts +9 -0
- package/dist/modules/knex/knex.interface.d.ts.map +1 -0
- package/dist/modules/knex/knex.interface.js +3 -0
- package/dist/modules/knex/knex.interface.js.map +1 -0
- package/dist/modules/knex/knex.module.d.ts +6 -0
- package/dist/modules/knex/knex.module.d.ts.map +1 -0
- package/dist/modules/knex/knex.module.js +15 -0
- package/dist/modules/knex/knex.module.js.map +1 -0
- package/dist/modules/knex/knex.token.d.ts +3 -0
- package/dist/modules/knex/knex.token.d.ts.map +1 -0
- package/dist/modules/knex/knex.token.js +6 -0
- package/dist/modules/knex/knex.token.js.map +1 -0
- package/dist/modules/logger/app-logger.d.ts +13 -0
- package/dist/modules/logger/app-logger.d.ts.map +1 -0
- package/dist/modules/logger/app-logger.js +29 -0
- package/dist/modules/logger/app-logger.js.map +1 -0
- package/{src/modules/logger/index.ts → dist/modules/logger/index.d.ts} +1 -0
- package/dist/modules/logger/index.d.ts.map +1 -0
- package/dist/modules/logger/index.js +9 -0
- package/dist/modules/logger/index.js.map +1 -0
- package/dist/modules/logger/log.d.ts +26 -0
- package/dist/modules/logger/log.d.ts.map +1 -0
- package/dist/modules/logger/log.js +14 -0
- package/dist/modules/logger/log.js.map +1 -0
- package/dist/modules/logger/logger.module.d.ts +5 -0
- package/dist/modules/logger/logger.module.d.ts.map +1 -0
- package/dist/modules/logger/logger.module.js +52 -0
- package/dist/modules/logger/logger.module.js.map +1 -0
- package/dist/modules/logger/logger.service.d.ts +28 -0
- package/dist/modules/logger/logger.service.d.ts.map +1 -0
- package/dist/modules/logger/logger.service.js +128 -0
- package/dist/modules/logger/logger.service.js.map +1 -0
- package/dist/modules/logger/transports/console-color.transport.d.ts +7 -0
- package/dist/modules/logger/transports/console-color.transport.d.ts.map +1 -0
- package/dist/modules/logger/transports/console-color.transport.js +40 -0
- package/dist/modules/logger/transports/console-color.transport.js.map +1 -0
- package/dist/modules/logger/transports/console-json.transport.d.ts +7 -0
- package/dist/modules/logger/transports/console-json.transport.d.ts.map +1 -0
- package/dist/modules/logger/transports/console-json.transport.js +24 -0
- package/dist/modules/logger/transports/console-json.transport.js.map +1 -0
- package/dist/modules/logger/transports/console.transport.d.ts +6 -0
- package/dist/modules/logger/transports/console.transport.d.ts.map +1 -0
- package/dist/modules/logger/transports/console.transport.js +12 -0
- package/dist/modules/logger/transports/console.transport.js.map +1 -0
- package/dist/modules/logger/transports/fake.transport.d.ts +9 -0
- package/dist/modules/logger/transports/fake.transport.d.ts.map +1 -0
- package/dist/modules/logger/transports/fake.transport.js +18 -0
- package/dist/modules/logger/transports/fake.transport.js.map +1 -0
- package/{src/modules/logger/transports/index.ts → dist/modules/logger/transports/index.d.ts} +1 -0
- package/dist/modules/logger/transports/index.d.ts.map +1 -0
- package/dist/modules/logger/transports/index.js +9 -0
- package/dist/modules/logger/transports/index.js.map +1 -0
- package/dist/modules/logger/transports/logger-transport.d.ts +12 -0
- package/dist/modules/logger/transports/logger-transport.d.ts.map +1 -0
- package/dist/modules/logger/transports/logger-transport.js +20 -0
- package/dist/modules/logger/transports/logger-transport.js.map +1 -0
- package/{src/modules/messaging/index.ts → dist/modules/messaging/index.d.ts} +1 -0
- package/dist/modules/messaging/index.d.ts.map +1 -0
- package/dist/modules/messaging/index.js +6 -0
- package/dist/modules/messaging/index.js.map +1 -0
- package/dist/modules/messaging/messaging.module.d.ts +6 -0
- package/dist/modules/messaging/messaging.module.d.ts.map +1 -0
- package/dist/modules/messaging/messaging.module.js +98 -0
- package/dist/modules/messaging/messaging.module.js.map +1 -0
- package/dist/modules/queue/default-queue-name.resolver.d.ts +4 -0
- package/dist/modules/queue/default-queue-name.resolver.d.ts.map +1 -0
- package/dist/modules/queue/default-queue-name.resolver.js +6 -0
- package/dist/modules/queue/default-queue-name.resolver.js.map +1 -0
- package/{src/modules/queue/index.ts → dist/modules/queue/index.d.ts} +1 -0
- package/dist/modules/queue/index.d.ts.map +1 -0
- package/dist/modules/queue/index.js +7 -0
- package/dist/modules/queue/index.js.map +1 -0
- package/dist/modules/queue/queue.module.d.ts +6 -0
- package/dist/modules/queue/queue.module.d.ts.map +1 -0
- package/dist/modules/queue/queue.module.js +64 -0
- package/dist/modules/queue/queue.module.js.map +1 -0
- package/dist/modules/queue/rabbit-queue-manager.service.d.ts +14 -0
- package/dist/modules/queue/rabbit-queue-manager.service.d.ts.map +1 -0
- package/dist/modules/queue/rabbit-queue-manager.service.js +68 -0
- package/dist/modules/queue/rabbit-queue-manager.service.js.map +1 -0
- package/dist/nestjs/errors/handlers/error-handler.d.ts +10 -0
- package/dist/nestjs/errors/handlers/error-handler.d.ts.map +1 -0
- package/dist/nestjs/errors/handlers/error-handler.js +33 -0
- package/dist/nestjs/errors/handlers/error-handler.js.map +1 -0
- package/{src/nestjs/errors/handlers/error-handler.type.ts → dist/nestjs/errors/handlers/error-handler.type.d.ts} +7 -15
- package/dist/nestjs/errors/handlers/error-handler.type.d.ts.map +1 -0
- package/dist/nestjs/errors/handlers/error-handler.type.js +3 -0
- package/dist/nestjs/errors/handlers/error-handler.type.js.map +1 -0
- package/dist/nestjs/errors/handlers/generic-error-handler.d.ts +6 -0
- package/dist/nestjs/errors/handlers/generic-error-handler.d.ts.map +1 -0
- package/dist/nestjs/errors/handlers/generic-error-handler.js +49 -0
- package/dist/nestjs/errors/handlers/generic-error-handler.js.map +1 -0
- package/dist/nestjs/errors/handlers/handle-errors.decorator.d.ts +3 -0
- package/dist/nestjs/errors/handlers/handle-errors.decorator.d.ts.map +1 -0
- package/dist/nestjs/errors/handlers/handle-errors.decorator.js +36 -0
- package/dist/nestjs/errors/handlers/handle-errors.decorator.js.map +1 -0
- package/{src/nestjs/errors/handlers/index.ts → dist/nestjs/errors/handlers/index.d.ts} +1 -0
- package/dist/nestjs/errors/handlers/index.d.ts.map +1 -0
- package/dist/nestjs/errors/handlers/index.js +9 -0
- package/dist/nestjs/errors/handlers/index.js.map +1 -0
- package/dist/nestjs/errors/handlers/validation-error-handler.d.ts +7 -0
- package/dist/nestjs/errors/handlers/validation-error-handler.d.ts.map +1 -0
- package/dist/nestjs/errors/handlers/validation-error-handler.js +43 -0
- package/dist/nestjs/errors/handlers/validation-error-handler.js.map +1 -0
- package/{src/nestjs/errors/index.ts → dist/nestjs/errors/index.d.ts} +1 -0
- package/dist/nestjs/errors/index.d.ts.map +1 -0
- package/dist/nestjs/errors/index.js +6 -0
- package/dist/nestjs/errors/index.js.map +1 -0
- package/dist/nestjs/errors/parsers/axios-metadata.parser.d.ts +3 -0
- package/dist/nestjs/errors/parsers/axios-metadata.parser.d.ts.map +1 -0
- package/dist/nestjs/errors/parsers/axios-metadata.parser.js +20 -0
- package/dist/nestjs/errors/parsers/axios-metadata.parser.js.map +1 -0
- package/dist/nestjs/errors/parsers/error-metadata.definition.d.ts +2 -0
- package/dist/nestjs/errors/parsers/error-metadata.definition.d.ts.map +1 -0
- package/dist/nestjs/errors/parsers/error-metadata.definition.js +3 -0
- package/dist/nestjs/errors/parsers/error-metadata.definition.js.map +1 -0
- package/{src/nestjs/errors/parsers/index.ts → dist/nestjs/errors/parsers/index.d.ts} +1 -0
- package/dist/nestjs/errors/parsers/index.d.ts.map +1 -0
- package/dist/nestjs/errors/parsers/index.js +9 -0
- package/dist/nestjs/errors/parsers/index.js.map +1 -0
- package/dist/nestjs/errors/parsers/knex-metadata.parser.d.ts +3 -0
- package/dist/nestjs/errors/parsers/knex-metadata.parser.d.ts.map +1 -0
- package/dist/nestjs/errors/parsers/knex-metadata.parser.js +18 -0
- package/dist/nestjs/errors/parsers/knex-metadata.parser.js.map +1 -0
- package/dist/nestjs/errors/parsers/typeorm-metadata.parser.d.ts +3 -0
- package/dist/nestjs/errors/parsers/typeorm-metadata.parser.d.ts.map +1 -0
- package/dist/nestjs/errors/parsers/typeorm-metadata.parser.js +20 -0
- package/dist/nestjs/errors/parsers/typeorm-metadata.parser.js.map +1 -0
- package/dist/nestjs/errors/parsers/workos-metadata.parser.d.ts +3 -0
- package/dist/nestjs/errors/parsers/workos-metadata.parser.d.ts.map +1 -0
- package/dist/nestjs/errors/parsers/workos-metadata.parser.js +17 -0
- package/dist/nestjs/errors/parsers/workos-metadata.parser.js.map +1 -0
- package/{src/nestjs/http/decorators/index.ts → dist/nestjs/http/decorators/index.d.ts} +1 -0
- package/dist/nestjs/http/decorators/index.d.ts.map +1 -0
- package/dist/nestjs/http/decorators/index.js +5 -0
- package/dist/nestjs/http/decorators/index.js.map +1 -0
- package/dist/nestjs/http/decorators/log-app-ctx.decorator.d.ts +2 -0
- package/dist/nestjs/http/decorators/log-app-ctx.decorator.d.ts.map +1 -0
- package/dist/nestjs/http/decorators/log-app-ctx.decorator.js +28 -0
- package/dist/nestjs/http/decorators/log-app-ctx.decorator.js.map +1 -0
- package/dist/nestjs/http/dtos/date-range.dto.d.ts +5 -0
- package/dist/nestjs/http/dtos/date-range.dto.d.ts.map +1 -0
- package/dist/nestjs/http/dtos/date-range.dto.js +24 -0
- package/dist/nestjs/http/dtos/date-range.dto.js.map +1 -0
- package/dist/nestjs/http/dtos/index.d.ts +2 -0
- package/dist/nestjs/http/dtos/index.d.ts.map +1 -0
- package/dist/nestjs/http/dtos/index.js +5 -0
- package/dist/nestjs/http/dtos/index.js.map +1 -0
- package/dist/nestjs/http/filters/all-exceptions.filter.d.ts +15 -0
- package/dist/nestjs/http/filters/all-exceptions.filter.d.ts.map +1 -0
- package/dist/nestjs/http/filters/all-exceptions.filter.js +82 -0
- package/dist/nestjs/http/filters/all-exceptions.filter.js.map +1 -0
- package/dist/nestjs/http/filters/command-failure.filter.d.ts +7 -0
- package/dist/nestjs/http/filters/command-failure.filter.d.ts.map +1 -0
- package/dist/nestjs/http/filters/command-failure.filter.js +20 -0
- package/dist/nestjs/http/filters/command-failure.filter.js.map +1 -0
- package/{src/nestjs/http/filters/index.ts → dist/nestjs/http/filters/index.d.ts} +1 -0
- package/dist/nestjs/http/filters/index.d.ts.map +1 -0
- package/dist/nestjs/http/filters/index.js +8 -0
- package/dist/nestjs/http/filters/index.js.map +1 -0
- package/dist/nestjs/http/filters/rpc-exceptions.filter.d.ts +7 -0
- package/dist/nestjs/http/filters/rpc-exceptions.filter.d.ts.map +1 -0
- package/dist/nestjs/http/filters/rpc-exceptions.filter.js +17 -0
- package/dist/nestjs/http/filters/rpc-exceptions.filter.js.map +1 -0
- package/dist/nestjs/http/filters/too-many-results.filter.d.ts +7 -0
- package/dist/nestjs/http/filters/too-many-results.filter.d.ts.map +1 -0
- package/dist/nestjs/http/filters/too-many-results.filter.js +20 -0
- package/dist/nestjs/http/filters/too-many-results.filter.js.map +1 -0
- package/{src/nestjs/http/index.ts → dist/nestjs/http/index.d.ts} +1 -0
- package/dist/nestjs/http/index.d.ts.map +1 -0
- package/dist/nestjs/http/index.js +10 -0
- package/dist/nestjs/http/index.js.map +1 -0
- package/{src/nestjs/http/interceptors/index.ts → dist/nestjs/http/interceptors/index.d.ts} +1 -0
- package/dist/nestjs/http/interceptors/index.d.ts.map +1 -0
- package/dist/nestjs/http/interceptors/index.js +6 -0
- package/dist/nestjs/http/interceptors/index.js.map +1 -0
- package/dist/nestjs/http/interceptors/log-app-ctx.interceptor.d.ts +12 -0
- package/dist/nestjs/http/interceptors/log-app-ctx.interceptor.d.ts.map +1 -0
- package/dist/nestjs/http/interceptors/log-app-ctx.interceptor.js +107 -0
- package/dist/nestjs/http/interceptors/log-app-ctx.interceptor.js.map +1 -0
- package/dist/nestjs/http/interceptors/serialize-output.interceptor.d.ts +3 -0
- package/dist/nestjs/http/interceptors/serialize-output.interceptor.d.ts.map +1 -0
- package/dist/nestjs/http/interceptors/serialize-output.interceptor.js +18 -0
- package/dist/nestjs/http/interceptors/serialize-output.interceptor.js.map +1 -0
- package/dist/nestjs/http/middleware/http-logger.middleware.d.ts +9 -0
- package/dist/nestjs/http/middleware/http-logger.middleware.d.ts.map +1 -0
- package/dist/nestjs/http/middleware/http-logger.middleware.js +39 -0
- package/dist/nestjs/http/middleware/http-logger.middleware.js.map +1 -0
- package/{src/nestjs/http/middleware/index.ts → dist/nestjs/http/middleware/index.d.ts} +1 -0
- package/dist/nestjs/http/middleware/index.d.ts.map +1 -0
- package/dist/nestjs/http/middleware/index.js +6 -0
- package/dist/nestjs/http/middleware/index.js.map +1 -0
- package/dist/nestjs/http/middleware/logger.middleware.d.ts +9 -0
- package/dist/nestjs/http/middleware/logger.middleware.d.ts.map +1 -0
- package/dist/nestjs/http/middleware/logger.middleware.js +28 -0
- package/dist/nestjs/http/middleware/logger.middleware.js.map +1 -0
- package/dist/nestjs/http/swagger/index.d.ts +2 -0
- package/dist/nestjs/http/swagger/index.d.ts.map +1 -0
- package/dist/nestjs/http/swagger/index.js +5 -0
- package/dist/nestjs/http/swagger/index.js.map +1 -0
- package/dist/nestjs/http/swagger/swagger.d.ts +3 -0
- package/dist/nestjs/http/swagger/swagger.d.ts.map +1 -0
- package/dist/nestjs/http/swagger/swagger.js +38 -0
- package/dist/nestjs/http/swagger/swagger.js.map +1 -0
- package/{src/nestjs/index.ts → dist/nestjs/index.d.ts} +1 -0
- package/dist/nestjs/index.d.ts.map +1 -0
- package/dist/nestjs/index.js +6 -0
- package/dist/nestjs/index.js.map +1 -0
- package/dist/testing/command-bus.stub.d.ts +14 -0
- package/dist/testing/command-bus.stub.d.ts.map +1 -0
- package/dist/testing/command-bus.stub.js +32 -0
- package/dist/testing/command-bus.stub.js.map +1 -0
- package/dist/testing/event-bus.stub.d.ts +19 -0
- package/dist/testing/event-bus.stub.d.ts.map +1 -0
- package/dist/testing/event-bus.stub.js +48 -0
- package/dist/testing/event-bus.stub.js.map +1 -0
- package/dist/testing/event-publisher.stub.d.ts +7 -0
- package/dist/testing/event-publisher.stub.d.ts.map +1 -0
- package/dist/testing/event-publisher.stub.js +22 -0
- package/dist/testing/event-publisher.stub.js.map +1 -0
- package/dist/testing/fake-logger.d.ts +8 -0
- package/dist/testing/fake-logger.d.ts.map +1 -0
- package/dist/testing/fake-logger.js +21 -0
- package/dist/testing/fake-logger.js.map +1 -0
- package/{src/testing/index.ts → dist/testing/index.d.ts} +1 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +6 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/query-bus.stub.d.ts +10 -0
- package/dist/testing/query-bus.stub.d.ts.map +1 -0
- package/dist/testing/query-bus.stub.js +25 -0
- package/dist/testing/query-bus.stub.js.map +1 -0
- package/dist/testing/stub.d.ts +40 -0
- package/dist/testing/stub.d.ts.map +1 -0
- package/dist/testing/stub.js +77 -0
- package/dist/testing/stub.js.map +1 -0
- package/dist/testing/stubs/command-bus.stub.d.ts +14 -0
- package/dist/testing/stubs/command-bus.stub.d.ts.map +1 -0
- package/dist/testing/stubs/command-bus.stub.js +32 -0
- package/dist/testing/stubs/command-bus.stub.js.map +1 -0
- package/dist/testing/stubs/event-bus.stub.d.ts +19 -0
- package/dist/testing/stubs/event-bus.stub.d.ts.map +1 -0
- package/dist/testing/stubs/event-bus.stub.js +48 -0
- package/dist/testing/stubs/event-bus.stub.js.map +1 -0
- package/dist/testing/stubs/event-publisher.stub.d.ts +7 -0
- package/dist/testing/stubs/event-publisher.stub.d.ts.map +1 -0
- package/dist/testing/stubs/event-publisher.stub.js +22 -0
- package/dist/testing/stubs/event-publisher.stub.js.map +1 -0
- package/{src/testing/stubs/index.ts → dist/testing/stubs/index.d.ts} +1 -0
- package/dist/testing/stubs/index.d.ts.map +1 -0
- package/dist/testing/stubs/index.js +9 -0
- package/dist/testing/stubs/index.js.map +1 -0
- package/dist/testing/stubs/query-bus.stub.d.ts +10 -0
- package/dist/testing/stubs/query-bus.stub.d.ts.map +1 -0
- package/dist/testing/stubs/query-bus.stub.js +25 -0
- package/dist/testing/stubs/query-bus.stub.js.map +1 -0
- package/dist/testing/stubs/stub.d.ts +40 -0
- package/dist/testing/stubs/stub.d.ts.map +1 -0
- package/dist/testing/stubs/stub.js +77 -0
- package/dist/testing/stubs/stub.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/utils/array.d.ts +15 -0
- package/dist/utils/array.d.ts.map +1 -0
- package/dist/utils/array.js +13 -0
- package/dist/utils/array.js.map +1 -0
- package/dist/utils/base64.d.ts +3 -0
- package/dist/utils/base64.d.ts.map +1 -0
- package/dist/utils/base64.js +10 -0
- package/dist/utils/base64.js.map +1 -0
- package/dist/utils/collection.d.ts +4 -0
- package/dist/utils/collection.d.ts.map +1 -0
- package/dist/utils/collection.js +10 -0
- package/dist/utils/collection.js.map +1 -0
- package/dist/utils/common.d.ts +9 -0
- package/dist/utils/common.d.ts.map +1 -0
- package/dist/utils/common.js +3 -0
- package/dist/utils/common.js.map +1 -0
- package/dist/utils/csv.d.ts +11 -0
- package/dist/utils/csv.d.ts.map +1 -0
- package/dist/utils/csv.js +45 -0
- package/dist/utils/csv.js.map +1 -0
- package/dist/utils/date/date-range.d.ts +5 -0
- package/dist/utils/date/date-range.d.ts.map +1 -0
- package/dist/utils/date/date-range.js +3 -0
- package/dist/utils/date/date-range.js.map +1 -0
- package/dist/utils/date/date.d.ts +39 -0
- package/dist/utils/date/date.d.ts.map +1 -0
- package/dist/utils/date/date.js +143 -0
- package/dist/utils/date/date.js.map +1 -0
- package/{src/utils/date/index.ts → dist/utils/date/index.d.ts} +1 -0
- package/dist/utils/date/index.d.ts.map +1 -0
- package/dist/utils/date/index.js +6 -0
- package/dist/utils/date/index.js.map +1 -0
- package/dist/utils/file.d.ts +2 -0
- package/dist/utils/file.d.ts.map +1 -0
- package/dist/utils/file.js +10 -0
- package/dist/utils/file.js.map +1 -0
- package/dist/utils/hash-key.d.ts +2 -0
- package/dist/utils/hash-key.d.ts.map +1 -0
- package/dist/utils/hash-key.js +25 -0
- package/dist/utils/hash-key.js.map +1 -0
- package/{src/utils/index.ts → dist/utils/index.d.ts} +1 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +19 -0
- package/dist/utils/index.js.map +1 -0
- package/{src/utils/invariant.ts → dist/utils/invariant.d.ts} +1 -1
- package/dist/utils/invariant.d.ts.map +1 -0
- package/dist/utils/invariant.js +7 -0
- package/dist/utils/invariant.js.map +1 -0
- package/dist/utils/iso-date.d.ts +4 -0
- package/dist/utils/iso-date.d.ts.map +1 -0
- package/dist/utils/iso-date.js +13 -0
- package/dist/utils/iso-date.js.map +1 -0
- package/dist/utils/object.d.ts +4 -0
- package/dist/utils/object.d.ts.map +1 -0
- package/dist/utils/object.js +12 -0
- package/dist/utils/object.js.map +1 -0
- package/dist/utils/paginated.d.ts +31 -0
- package/dist/utils/paginated.d.ts.map +1 -0
- package/dist/utils/paginated.js +9 -0
- package/dist/utils/paginated.js.map +1 -0
- package/dist/utils/string.d.ts +12 -0
- package/dist/utils/string.d.ts.map +1 -0
- package/dist/utils/string.js +15 -0
- package/dist/utils/string.js.map +1 -0
- package/{src/utils/type.ts → dist/utils/type.d.ts} +3 -4
- package/dist/utils/type.d.ts.map +1 -0
- package/dist/utils/type.js +3 -0
- package/dist/utils/type.js.map +1 -0
- package/dist/utils/xml.d.ts +2 -0
- package/dist/utils/xml.d.ts.map +1 -0
- package/dist/utils/xml.js +10 -0
- package/dist/utils/xml.js.map +1 -0
- package/dist/validation/ensure-array.decorator.d.ts +2 -0
- package/dist/validation/ensure-array.decorator.d.ts.map +1 -0
- package/dist/validation/ensure-array.decorator.js +8 -0
- package/dist/validation/ensure-array.decorator.js.map +1 -0
- package/{src/validation/index.ts → dist/validation/index.d.ts} +1 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +11 -0
- package/dist/validation/index.js.map +1 -0
- package/dist/validation/is-iso-date.decorator.d.ts +3 -0
- package/dist/validation/is-iso-date.decorator.d.ts.map +1 -0
- package/dist/validation/is-iso-date.decorator.js +28 -0
- package/dist/validation/is-iso-date.decorator.js.map +1 -0
- package/dist/validation/is-less-than-or-equal.decorator.d.ts +3 -0
- package/dist/validation/is-less-than-or-equal.decorator.d.ts.map +1 -0
- package/dist/validation/is-less-than-or-equal.decorator.js +44 -0
- package/dist/validation/is-less-than-or-equal.decorator.js.map +1 -0
- package/dist/validation/is-less-than.decorator.d.ts +3 -0
- package/dist/validation/is-less-than.decorator.d.ts.map +1 -0
- package/dist/validation/is-less-than.decorator.js +44 -0
- package/dist/validation/is-less-than.decorator.js.map +1 -0
- package/dist/validation/is-more-than-or-equal.decorator.d.ts +3 -0
- package/dist/validation/is-more-than-or-equal.decorator.d.ts.map +1 -0
- package/dist/validation/is-more-than-or-equal.decorator.js +44 -0
- package/dist/validation/is-more-than-or-equal.decorator.js.map +1 -0
- package/dist/validation/is-more-than.decorator.d.ts +3 -0
- package/dist/validation/is-more-than.decorator.d.ts.map +1 -0
- package/dist/validation/is-more-than.decorator.js +44 -0
- package/dist/validation/is-more-than.decorator.js.map +1 -0
- package/dist/validation/is-time-string.decorator.d.ts +3 -0
- package/dist/validation/is-time-string.decorator.d.ts.map +1 -0
- package/dist/validation/is-time-string.decorator.js +27 -0
- package/dist/validation/is-time-string.decorator.js.map +1 -0
- package/package.json +109 -46
- package/.pnp.cjs +0 -22192
- package/.pnp.loader.mjs +0 -2126
- package/.yarnrc.yml +0 -1
- package/CHANGELOG.md +0 -527
- package/eslint.config.mjs +0 -52
- package/invariant.json +0 -22
- package/jest/jest.config.base.ts +0 -30
- package/jest/jest.spec.base.ts +0 -7
- package/jest.config.js +0 -49
- package/src/core/application/index.ts +0 -1
- package/src/core/application/persistence/query-builder.ts +0 -2
- package/src/core/application/persistence/read-projection.ts +0 -2
- package/src/core/application/persistence/repository.ts +0 -23
- package/src/core/domain/entities/aggregate-root.ts +0 -34
- package/src/core/domain/entities/entity.spec.ts +0 -43
- package/src/core/domain/entities/entity.ts +0 -29
- package/src/core/domain/entities/identifier.spec.ts +0 -34
- package/src/core/domain/entities/identifier.ts +0 -16
- package/src/core/domain/entities/unique-entity-id.ts +0 -9
- package/src/core/domain/events/domain-event.ts +0 -7
- package/src/core/domain/events/index.ts +0 -1
- package/src/core/domain/value-objects/range.ts +0 -4
- package/src/core/domain/value-objects/value-object.spec.ts +0 -45
- package/src/core/domain/value-objects/value-object.ts +0 -17
- package/src/core/errors/command-failure.error.spec.ts +0 -30
- package/src/core/errors/command-failure.error.ts +0 -9
- package/src/core/errors/command-filter.error.ts +0 -3
- package/src/core/errors/detailed.error.ts +0 -25
- package/src/core/errors/domain.error.spec.ts +0 -27
- package/src/core/errors/domain.error.ts +0 -9
- package/src/core/errors/entity-not-found.error.spec.ts +0 -32
- package/src/core/errors/entity-not-found.error.ts +0 -9
- package/src/core/errors/fake-implementation.error.spec.ts +0 -27
- package/src/core/errors/fake-implementation.error.ts +0 -15
- package/src/core/errors/query-failure.error.ts +0 -8
- package/src/core/errors/too-many-results.error.ts +0 -3
- package/src/core/infrastructure/config/config.provider.ts +0 -78
- package/src/core/infrastructure/config/config.service.ts +0 -25
- package/src/core/infrastructure/messaging/fake/fake-messaging.service.ts +0 -17
- package/src/core/infrastructure/messaging/fake/fake-queue-manager.service.ts +0 -9
- package/src/core/infrastructure/messaging/fake/fake-queue-messaging.service.ts +0 -9
- package/src/core/infrastructure/messaging/messaging.service.ts +0 -3
- package/src/core/infrastructure/messaging/queue-manager.service.ts +0 -6
- package/src/core/infrastructure/messaging/queue-messaging.service.ts +0 -3
- package/src/core/infrastructure/messaging/rabbitmq/rabbit-messaging.service.ts +0 -11
- package/src/core/infrastructure/messaging/rabbitmq/rabbit-queue-messaging.service.ts +0 -11
- package/src/core/infrastructure/messaging/types.ts +0 -28
- package/src/core/infrastructure/persistence/errors/model-to-entity-conversion.error.ts +0 -9
- package/src/core/infrastructure/persistence/errors/persistence.error.ts +0 -8
- package/src/core/infrastructure/persistence/in-memory/fake.repository.ts +0 -79
- package/src/core/infrastructure/persistence/in-memory/in-memory.query-builder.ts +0 -4
- package/src/core/infrastructure/persistence/in-memory/in-memory.repository.spec.ts +0 -50
- package/src/core/infrastructure/persistence/in-memory/in-memory.repository.ts +0 -81
- package/src/core/infrastructure/persistence/read-side/in-memory.query-builder.ts +0 -4
- package/src/core/infrastructure/persistence/read-side/index.ts +0 -1
- package/src/core/infrastructure/persistence/read-side/knex/knex-types.definition.ts +0 -13
- package/src/core/infrastructure/persistence/read-side/knex/knex.query-builder.ts +0 -70
- package/src/core/infrastructure/persistence/read-side/knex-query-builder.ts +0 -70
- package/src/core/infrastructure/persistence/read-side/knex-types.definition.ts +0 -13
- package/src/core/infrastructure/persistence/write-side/aggregate-typeorm-repository.ts +0 -87
- package/src/core/infrastructure/persistence/write-side/entity-typeorm-repository.ts +0 -64
- package/src/core/infrastructure/persistence/write-side/in-memory.repository.ts +0 -82
- package/src/core/infrastructure/persistence/write-side/index.ts +0 -1
- package/src/core/infrastructure/persistence/write-side/model-attributes.ts +0 -4
- package/src/core/infrastructure/persistence/write-side/orm-embedded-mapper.ts +0 -11
- package/src/core/infrastructure/persistence/write-side/orm-mapper.ts +0 -11
- package/src/core/infrastructure/persistence/write-side/typeorm/aggregate-typeorm.repository.ts +0 -87
- package/src/core/infrastructure/persistence/write-side/typeorm/entity-typeorm.repository.ts +0 -64
- package/src/core/infrastructure/persistence/write-side/typeorm/model-attributes.ts +0 -4
- package/src/core/infrastructure/persistence/write-side/typeorm/orm-embedded.mapper.ts +0 -11
- package/src/core/infrastructure/persistence/write-side/typeorm/orm.mapper.ts +0 -11
- package/src/core/types/architecture-layer.ts +0 -52
- package/src/modules/config/config.module.ts +0 -9
- package/src/modules/graphql/paginated-response.object-type.ts +0 -23
- package/src/modules/healthcheck/healthcheck-out.dto.ts +0 -43
- package/src/modules/knex/knex-core.module.ts +0 -30
- package/src/modules/knex/knex.decorator.ts +0 -5
- package/src/modules/knex/knex.interface.ts +0 -12
- package/src/modules/knex/knex.module.ts +0 -14
- package/src/modules/knex/knex.token.ts +0 -2
- package/src/modules/logger/app-logger.ts +0 -28
- package/src/modules/logger/log.ts +0 -26
- package/src/modules/logger/logger.module.ts +0 -47
- package/src/modules/logger/logger.service.ts +0 -131
- package/src/modules/logger/transports/console-color.transport.ts +0 -41
- package/src/modules/logger/transports/console-json.transport.ts +0 -23
- package/src/modules/logger/transports/console.transport.ts +0 -10
- package/src/modules/logger/transports/fake.transport.ts +0 -18
- package/src/modules/logger/transports/logger-transport.ts +0 -22
- package/src/modules/messaging/messaging.module.ts +0 -92
- package/src/modules/queue/default-queue-name.resolver.ts +0 -5
- package/src/modules/queue/queue.module.ts +0 -73
- package/src/modules/queue/rabbit-queue-manager.service.ts +0 -67
- package/src/nestjs/errors/handlers/error-handler.ts +0 -38
- package/src/nestjs/errors/handlers/generic-error-handler.ts +0 -59
- package/src/nestjs/errors/handlers/handle-errors.decorator.ts +0 -43
- package/src/nestjs/errors/handlers/validation-error-handler.ts +0 -46
- package/src/nestjs/errors/parsers/axios-metadata.parser.ts +0 -21
- package/src/nestjs/errors/parsers/error-metadata.definition.ts +0 -1
- package/src/nestjs/errors/parsers/knex-metadata.parser.ts +0 -18
- package/src/nestjs/errors/parsers/typeorm-metadata.parser.ts +0 -19
- package/src/nestjs/errors/parsers/workos-metadata.parser.ts +0 -17
- package/src/nestjs/http/decorators/log-app-ctx.decorator.ts +0 -32
- package/src/nestjs/http/dtos/date-range.dto.ts +0 -15
- package/src/nestjs/http/dtos/index.ts +0 -1
- package/src/nestjs/http/filters/all-exceptions.filter.ts +0 -92
- package/src/nestjs/http/filters/command-failure.filter.ts +0 -12
- package/src/nestjs/http/filters/rpc-exceptions.filter.ts +0 -10
- package/src/nestjs/http/filters/too-many-results.filter.ts +0 -12
- package/src/nestjs/http/interceptors/log-app-ctx.interceptor.ts +0 -109
- package/src/nestjs/http/interceptors/serialize-output.interceptor.ts +0 -19
- package/src/nestjs/http/middleware/http-logger.middleware.ts +0 -31
- package/src/nestjs/http/middleware/logger.middleware.ts +0 -21
- package/src/nestjs/http/swagger/index.ts +0 -1
- package/src/nestjs/http/swagger/swagger.ts +0 -44
- package/src/testing/command-bus.stub.ts +0 -33
- package/src/testing/event-bus.stub.ts +0 -56
- package/src/testing/event-publisher.stub.ts +0 -24
- package/src/testing/fake-logger.ts +0 -20
- package/src/testing/query-bus.stub.ts +0 -27
- package/src/testing/stub.spec.ts +0 -250
- package/src/testing/stub.ts +0 -170
- package/src/testing/stubs/command-bus.stub.ts +0 -33
- package/src/testing/stubs/event-bus.stub.ts +0 -56
- package/src/testing/stubs/event-publisher.stub.ts +0 -24
- package/src/testing/stubs/query-bus.stub.ts +0 -27
- package/src/testing/stubs/stub.ts +0 -170
- package/src/utils/array.spec.ts +0 -29
- package/src/utils/array.ts +0 -10
- package/src/utils/base64.spec.ts +0 -18
- package/src/utils/base64.ts +0 -6
- package/src/utils/collection.ts +0 -4
- package/src/utils/common.ts +0 -13
- package/src/utils/csv.ts +0 -49
- package/src/utils/date/date-range.ts +0 -4
- package/src/utils/date/date.spec.ts +0 -100
- package/src/utils/date/date.ts +0 -177
- package/src/utils/date/diff.spec.ts +0 -66
- package/src/utils/date/diffYear.spec.ts +0 -23
- package/src/utils/date/fillMissingRangeValues.spec.ts +0 -523
- package/src/utils/date/groubBy.spec.ts +0 -183
- package/src/utils/date/isSame.spec.ts +0 -111
- package/src/utils/file.spec.ts +0 -66
- package/src/utils/file.ts +0 -5
- package/src/utils/hash-key.ts +0 -23
- package/src/utils/iso-date.ts +0 -11
- package/src/utils/object.spec.ts +0 -18
- package/src/utils/object.ts +0 -6
- package/src/utils/paginated.ts +0 -36
- package/src/utils/string.spec.ts +0 -10
- package/src/utils/string.ts +0 -19
- package/src/utils/xml.ts +0 -6
- package/src/validation/ensure-array.decorator.ts +0 -5
- package/src/validation/is-iso-date.decorator.spec.ts +0 -29
- package/src/validation/is-iso-date.decorator.ts +0 -30
- package/src/validation/is-less-than-or-equal.decorator.spec.ts +0 -30
- package/src/validation/is-less-than-or-equal.decorator.ts +0 -52
- package/src/validation/is-less-than.decorator.spec.ts +0 -36
- package/src/validation/is-less-than.decorator.ts +0 -52
- package/src/validation/is-more-than-or-equal.decorator.spec.ts +0 -30
- package/src/validation/is-more-than-or-equal.decorator.ts +0 -52
- package/src/validation/is-more-than.decorator.spec.ts +0 -36
- package/src/validation/is-more-than.decorator.ts +0 -52
- package/src/validation/is-time-string.decorator.spec.ts +0 -35
- package/src/validation/is-time-string.decorator.ts +0 -29
- package/tsconfig.build.json +0 -6
- package/tsconfig.json +0 -34
- package/tsconfig.spec.json +0 -14
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { DataSource, EntityManager, ObjectLiteral, SelectQueryBuilder } from "typeorm";
|
|
2
|
-
|
|
3
|
-
import { Repository } from "../../../application";
|
|
4
|
-
import { Entity, EntityProps } from "../../../domain";
|
|
5
|
-
import { ArchitectureLevel } from "../../../types";
|
|
6
|
-
import { EntityNotFoundError } from "../../../errors";
|
|
7
|
-
|
|
8
|
-
export abstract class EntityTypeormRepository<DomainEntity extends Entity<EntityProps>, OrmModel extends ObjectLiteral>
|
|
9
|
-
implements Repository<Entity<EntityProps>>
|
|
10
|
-
{
|
|
11
|
-
protected manager: EntityManager;
|
|
12
|
-
|
|
13
|
-
constructor(
|
|
14
|
-
dataSource: DataSource,
|
|
15
|
-
private readonly entityName: string,
|
|
16
|
-
) {
|
|
17
|
-
this.manager = dataSource.manager;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
async count(): Promise<number> {
|
|
21
|
-
return this.createDefaultQueryBuilder().getCount();
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
async exists(id: string): Promise<boolean> {
|
|
25
|
-
const count = await this.createDefaultQueryBuilder().where({ id }).getCount();
|
|
26
|
-
return count === 1;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
async findOne(id: string): Promise<DomainEntity | null> {
|
|
30
|
-
const model = await this.createDefaultQueryBuilder().where({ id }).getOne();
|
|
31
|
-
return model ? this.toEntity(model) : null;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
async findOneOrFail(entityId: string): Promise<DomainEntity> {
|
|
35
|
-
const entity = await this.findOne(entityId);
|
|
36
|
-
if (!entity) {
|
|
37
|
-
throw new EntityNotFoundError(
|
|
38
|
-
this.entityName,
|
|
39
|
-
{ [ArchitectureLevel.INFRASTRUCTURE]: { "persistence-sql": { className: "EntityTypeormRepository" } } },
|
|
40
|
-
{ id: entityId },
|
|
41
|
-
);
|
|
42
|
-
}
|
|
43
|
-
return entity;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
async findByIds(ids: string[]): Promise<DomainEntity[]> {
|
|
47
|
-
const models = await this.createDefaultQueryBuilder().whereInIds(ids).getMany();
|
|
48
|
-
return models.map((model) => this.toEntity(model));
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
async save(entity: DomainEntity): Promise<DomainEntity> {
|
|
52
|
-
const model = await this.manager.save(await this.toModel(entity));
|
|
53
|
-
return this.toEntity(model);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
async saveAll(entities: DomainEntity[]): Promise<void> {
|
|
57
|
-
const models = await Promise.all(entities.map((e) => Promise.resolve(this.toModel(e))));
|
|
58
|
-
await this.manager.save(models);
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
protected abstract createDefaultQueryBuilder(): SelectQueryBuilder<OrmModel>;
|
|
62
|
-
protected abstract toEntity(model: OrmModel): DomainEntity;
|
|
63
|
-
protected abstract toModel(entity: DomainEntity): OrmModel | Promise<OrmModel>;
|
|
64
|
-
}
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/require-await */
|
|
2
|
-
import _ from "lodash";
|
|
3
|
-
|
|
4
|
-
import { FindManyOptions, Repository } from "../../../application/persistence/repository";
|
|
5
|
-
import { AggregateRoot } from "../../../domain";
|
|
6
|
-
import { Entity, EntityProps } from "../../../domain/entities/entity";
|
|
7
|
-
import { ArchitectureLevel } from "../../../types";
|
|
8
|
-
import { EntityNotFoundError } from "../../../errors";
|
|
9
|
-
|
|
10
|
-
export class InMemoryRepository<DomainEntity extends Entity<EntityProps> | AggregateRoot<EntityProps>>
|
|
11
|
-
implements Repository<DomainEntity>
|
|
12
|
-
{
|
|
13
|
-
protected store: Map<string, DomainEntity>;
|
|
14
|
-
|
|
15
|
-
constructor(
|
|
16
|
-
defaultEntities: DomainEntity[] = [],
|
|
17
|
-
protected error?: Error,
|
|
18
|
-
) {
|
|
19
|
-
this.store = new Map(defaultEntities.map((e) => [e.id.toString(), e]));
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
async save(entity: DomainEntity): Promise<DomainEntity> {
|
|
23
|
-
this.checkError();
|
|
24
|
-
this.store.set(entity.id.toString(), entity);
|
|
25
|
-
return entity;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
async saveAll(entities: DomainEntity[]): Promise<void> {
|
|
29
|
-
this.checkError();
|
|
30
|
-
for (const entity of entities) {await this.save(entity);}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
async findOne(id: string): Promise<DomainEntity | null> {
|
|
34
|
-
return this.store.get(id) ?? null;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
async findOneOrFail(id: string): Promise<DomainEntity> {
|
|
38
|
-
const entity = await this.findOne(id);
|
|
39
|
-
if (!entity) {
|
|
40
|
-
throw new EntityNotFoundError("InMemoryEntity", {
|
|
41
|
-
[ArchitectureLevel.INFRASTRUCTURE]: { "persistence-fake": { className: "InMemoryRepository" } },
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
return entity;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
async findByIds(ids: string[]): Promise<DomainEntity[]> {
|
|
48
|
-
return this.toArray().filter((entity) => ids.includes(entity.id.toString()));
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
async delete(entity: DomainEntity): Promise<void> {
|
|
52
|
-
this.checkError();
|
|
53
|
-
this.store.delete(entity.id.toString());
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
async exists(id: string): Promise<boolean> {
|
|
57
|
-
this.checkError();
|
|
58
|
-
return this.store.has(id);
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
async count(options: FindManyOptions<DomainEntity>): Promise<number> {
|
|
62
|
-
this.checkError();
|
|
63
|
-
return _.filter(this.toArray(), options.filters).length;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
clear(): void {
|
|
67
|
-
this.store.clear();
|
|
68
|
-
this.error = undefined;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
setError(error: Error): void {
|
|
72
|
-
this.error = error;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
protected checkError(): void {
|
|
76
|
-
if (this.error) {throw this.error;}
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
protected toArray(): DomainEntity[] {
|
|
80
|
-
return [...this.store.values()];
|
|
81
|
-
}
|
|
82
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./typeorm";
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ValueObject } from "../../../domain";
|
|
2
|
-
|
|
3
|
-
export interface OrmEmbeddedMapper<
|
|
4
|
-
DomainValueObject extends ValueObject,
|
|
5
|
-
OrmEmbeddedModel,
|
|
6
|
-
ToPersistenceArgs extends unknown[] = [],
|
|
7
|
-
ToDomainArgs extends unknown[] = [],
|
|
8
|
-
> {
|
|
9
|
-
toObjectValue(embeddedModel: OrmEmbeddedModel | null, ...args: ToDomainArgs): DomainValueObject | undefined;
|
|
10
|
-
toEmbeddedModel(valueObject?: DomainValueObject, ...args: ToPersistenceArgs): OrmEmbeddedModel | null;
|
|
11
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { AggregateRoot, Entity } from "../../../domain";
|
|
2
|
-
|
|
3
|
-
export interface OrmMapper<
|
|
4
|
-
DomainObject extends AggregateRoot | Entity,
|
|
5
|
-
OrmModel,
|
|
6
|
-
ToPersistenceArgs extends unknown[] = [],
|
|
7
|
-
ToDomainArgs extends unknown[] = [],
|
|
8
|
-
> {
|
|
9
|
-
toEntity(model: OrmModel, ...args: ToDomainArgs): DomainObject;
|
|
10
|
-
toModel(entity: DomainObject, ...args: ToPersistenceArgs): OrmModel;
|
|
11
|
-
}
|
package/src/core/infrastructure/persistence/write-side/typeorm/aggregate-typeorm.repository.ts
DELETED
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import { DataSource, EntityManager, ObjectLiteral, SelectQueryBuilder } from "typeorm";
|
|
2
|
-
|
|
3
|
-
import { Repository } from "../../../../application";
|
|
4
|
-
import { AggregateRoot, EntityProps } from "../../../../domain";
|
|
5
|
-
import { ArchitectureLevel } from "../../../../types";
|
|
6
|
-
import { EntityNotFoundError } from "../../../../errors";
|
|
7
|
-
import { typeormMetadataParser } from "../../../../../nestjs/errors/parsers/typeorm-metadata.parser";
|
|
8
|
-
import { PersistenceError } from "../../errors/persistence.error";
|
|
9
|
-
|
|
10
|
-
export abstract class AggregateTypeormRepository<
|
|
11
|
-
DomainAggregate extends AggregateRoot<EntityProps>,
|
|
12
|
-
OrmModel extends ObjectLiteral,
|
|
13
|
-
> implements Repository<AggregateRoot<EntityProps>>
|
|
14
|
-
{
|
|
15
|
-
protected abstract createDefaultQueryBuilder(): SelectQueryBuilder<OrmModel>;
|
|
16
|
-
protected abstract toEntity(model: OrmModel): DomainAggregate;
|
|
17
|
-
protected abstract toModel(aggregate: DomainAggregate): OrmModel | Promise<OrmModel>;
|
|
18
|
-
protected manager: EntityManager;
|
|
19
|
-
|
|
20
|
-
constructor(
|
|
21
|
-
dataSource: DataSource,
|
|
22
|
-
private readonly aggregateName: string,
|
|
23
|
-
) {
|
|
24
|
-
this.manager = dataSource.manager;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
async count(): Promise<number> {
|
|
28
|
-
return this.createDefaultQueryBuilder().getCount();
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
async exists(id: string): Promise<boolean> {
|
|
32
|
-
const count = await this.createDefaultQueryBuilder().where({ id }).getCount();
|
|
33
|
-
return count === 1;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
async findOne(id: string): Promise<DomainAggregate | null> {
|
|
37
|
-
const model = await this.createDefaultQueryBuilder().where({ id }).getOne();
|
|
38
|
-
return model ? this.toEntity(model) : null;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
async findOneOrFail(aggregateId: string): Promise<DomainAggregate> {
|
|
42
|
-
const aggregate = await this.findOne(aggregateId);
|
|
43
|
-
if (!aggregate) {
|
|
44
|
-
throw new EntityNotFoundError(
|
|
45
|
-
this.aggregateName,
|
|
46
|
-
{ [ArchitectureLevel.INFRASTRUCTURE]: { "persistence-sql": { className: "AggregateTypeormRepository" } } },
|
|
47
|
-
{ id: aggregateId },
|
|
48
|
-
);
|
|
49
|
-
}
|
|
50
|
-
return aggregate;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
async findByIds(ids: string[]): Promise<DomainAggregate[]> {
|
|
54
|
-
const models = await this.createDefaultQueryBuilder().whereInIds(ids).getMany();
|
|
55
|
-
return models.map((model) => this.toEntity(model));
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
async save(aggregate: DomainAggregate): Promise<DomainAggregate> {
|
|
59
|
-
try {
|
|
60
|
-
const model = await this.manager.save(this.toModel(aggregate));
|
|
61
|
-
aggregate.commit();
|
|
62
|
-
return this.toEntity(model);
|
|
63
|
-
} catch (error) {
|
|
64
|
-
throw new PersistenceError("Failed to save aggregate", {
|
|
65
|
-
"aggregate-root": {
|
|
66
|
-
className: AggregateTypeormRepository.name,
|
|
67
|
-
meta: typeormMetadataParser(error, { method: this.save.name }),
|
|
68
|
-
},
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
async saveAll(aggregates: DomainAggregate[]): Promise<void> {
|
|
74
|
-
try {
|
|
75
|
-
const models = await Promise.all(aggregates.map((a) => Promise.resolve(this.toModel(a))));
|
|
76
|
-
await this.manager.save(models);
|
|
77
|
-
aggregates.forEach((a) => a.commit());
|
|
78
|
-
} catch (error) {
|
|
79
|
-
throw new PersistenceError("Failed to save aggregates", {
|
|
80
|
-
"aggregate-root": {
|
|
81
|
-
className: AggregateTypeormRepository.name,
|
|
82
|
-
meta: typeormMetadataParser(error, { method: this.saveAll.name }),
|
|
83
|
-
},
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { DataSource, EntityManager, ObjectLiteral, SelectQueryBuilder } from "typeorm";
|
|
2
|
-
|
|
3
|
-
import { Repository } from "../../../../application";
|
|
4
|
-
import { Entity, EntityProps } from "../../../../domain";
|
|
5
|
-
import { ArchitectureLevel } from "../../../../types";
|
|
6
|
-
import { EntityNotFoundError } from "../../../../errors";
|
|
7
|
-
|
|
8
|
-
export abstract class EntityTypeormRepository<DomainEntity extends Entity<EntityProps>, OrmModel extends ObjectLiteral>
|
|
9
|
-
implements Repository<Entity<EntityProps>>
|
|
10
|
-
{
|
|
11
|
-
protected manager: EntityManager;
|
|
12
|
-
|
|
13
|
-
constructor(
|
|
14
|
-
dataSource: DataSource,
|
|
15
|
-
private readonly entityName: string,
|
|
16
|
-
) {
|
|
17
|
-
this.manager = dataSource.manager;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
async count(): Promise<number> {
|
|
21
|
-
return this.createDefaultQueryBuilder().getCount();
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
async exists(id: string): Promise<boolean> {
|
|
25
|
-
const count = await this.createDefaultQueryBuilder().where({ id }).getCount();
|
|
26
|
-
return count === 1;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
async findOne(id: string): Promise<DomainEntity | null> {
|
|
30
|
-
const model = await this.createDefaultQueryBuilder().where({ id }).getOne();
|
|
31
|
-
return model ? this.toEntity(model) : null;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
async findOneOrFail(entityId: string): Promise<DomainEntity> {
|
|
35
|
-
const entity = await this.findOne(entityId);
|
|
36
|
-
if (!entity) {
|
|
37
|
-
throw new EntityNotFoundError(
|
|
38
|
-
this.entityName,
|
|
39
|
-
{ [ArchitectureLevel.INFRASTRUCTURE]: { "persistence-sql": { className: "EntityTypeormRepository" } } },
|
|
40
|
-
{ id: entityId },
|
|
41
|
-
);
|
|
42
|
-
}
|
|
43
|
-
return entity;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
async findByIds(ids: string[]): Promise<DomainEntity[]> {
|
|
47
|
-
const models = await this.createDefaultQueryBuilder().whereInIds(ids).getMany();
|
|
48
|
-
return models.map((model) => this.toEntity(model));
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
async save(entity: DomainEntity): Promise<DomainEntity> {
|
|
52
|
-
const model = await this.manager.save(await this.toModel(entity));
|
|
53
|
-
return this.toEntity(model);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
async saveAll(entities: DomainEntity[]): Promise<void> {
|
|
57
|
-
const models = await Promise.all(entities.map((e) => Promise.resolve(this.toModel(e))));
|
|
58
|
-
await this.manager.save(models);
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
protected abstract createDefaultQueryBuilder(): SelectQueryBuilder<OrmModel>;
|
|
62
|
-
protected abstract toEntity(model: OrmModel): DomainEntity;
|
|
63
|
-
protected abstract toModel(entity: DomainEntity): OrmModel | Promise<OrmModel>;
|
|
64
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ValueObject } from "../../../../domain";
|
|
2
|
-
|
|
3
|
-
export interface OrmEmbeddedMapper<
|
|
4
|
-
DomainValueObject extends ValueObject,
|
|
5
|
-
OrmEmbeddedModel,
|
|
6
|
-
ToPersistenceArgs extends unknown[] = [],
|
|
7
|
-
ToDomainArgs extends unknown[] = [],
|
|
8
|
-
> {
|
|
9
|
-
toObjectValue(embeddedModel: OrmEmbeddedModel | null, ...args: ToDomainArgs): DomainValueObject | undefined;
|
|
10
|
-
toEmbeddedModel(valueObject?: DomainValueObject, ...args: ToPersistenceArgs): OrmEmbeddedModel | null;
|
|
11
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { AggregateRoot, Entity } from "../../../../domain";
|
|
2
|
-
|
|
3
|
-
export interface OrmMapper<
|
|
4
|
-
DomainObject extends AggregateRoot | Entity,
|
|
5
|
-
OrmModel,
|
|
6
|
-
ToPersistenceArgs extends unknown[] = [],
|
|
7
|
-
ToDomainArgs extends unknown[] = [],
|
|
8
|
-
> {
|
|
9
|
-
toEntity(model: OrmModel, ...args: ToDomainArgs): DomainObject;
|
|
10
|
-
toModel(entity: DomainObject, ...args: ToPersistenceArgs): OrmModel;
|
|
11
|
-
}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
type Values<V> = V[keyof V];
|
|
2
|
-
type OneOf<V> = Values<{
|
|
3
|
-
[K in keyof V]: { [K1 in K]: V[K1] };
|
|
4
|
-
}>;
|
|
5
|
-
|
|
6
|
-
export enum ArchitectureLevel {
|
|
7
|
-
DOMAIN = "DOMAIN",
|
|
8
|
-
APPLICATION = "APPLICATION",
|
|
9
|
-
INFRASTRUCTURE = "INFRASTRUCTURE",
|
|
10
|
-
UNDEFINED = "UNDEFINED",
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export type ArchitectureLayerType =
|
|
14
|
-
| "aggregate-root"
|
|
15
|
-
| "entity"
|
|
16
|
-
| "value-object"
|
|
17
|
-
| "query"
|
|
18
|
-
| "command"
|
|
19
|
-
| "event-handler"
|
|
20
|
-
| "event-saga"
|
|
21
|
-
| "service"
|
|
22
|
-
| "authorization"
|
|
23
|
-
| "authentication"
|
|
24
|
-
| "web-dto"
|
|
25
|
-
| "web-rest"
|
|
26
|
-
| "web-graphql"
|
|
27
|
-
| "web-socket"
|
|
28
|
-
| "web-rpc"
|
|
29
|
-
| "persistence-sql"
|
|
30
|
-
| "persistence-saas"
|
|
31
|
-
| "persistence-fake"
|
|
32
|
-
| "persistence-other"
|
|
33
|
-
| "persistence-s3"
|
|
34
|
-
| "persistence-disk"
|
|
35
|
-
| "messaging-inmem"
|
|
36
|
-
| "messaging-pubsub"
|
|
37
|
-
| "unknown";
|
|
38
|
-
|
|
39
|
-
export type ArchitectureLayerTraceBase = {
|
|
40
|
-
[Type in ArchitectureLayerType]: {
|
|
41
|
-
className: string;
|
|
42
|
-
meta?: unknown;
|
|
43
|
-
};
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
export type ArchitectureLayerTrace = OneOf<ArchitectureLayerTraceBase>;
|
|
47
|
-
|
|
48
|
-
export type DDD = {
|
|
49
|
-
[key in `${ArchitectureLevel}`]: ArchitectureLayerTrace;
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
export type ArchitectureLayer = OneOf<DDD>;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { Module } from "@nestjs/common";
|
|
2
|
-
|
|
3
|
-
import { ConfigProvider, ConfigService } from "../../core/infrastructure/config";
|
|
4
|
-
|
|
5
|
-
@Module({
|
|
6
|
-
providers: [{ provide: ConfigService, useClass: ConfigProvider }],
|
|
7
|
-
exports: [ConfigService],
|
|
8
|
-
})
|
|
9
|
-
export class ConfigModule {}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { Type } from "@nestjs/common";
|
|
2
|
-
import { Field, Int, ObjectType } from "@nestjs/graphql";
|
|
3
|
-
|
|
4
|
-
export type PaginatedResponse<TItem> = {
|
|
5
|
-
items: TItem[];
|
|
6
|
-
total: number;
|
|
7
|
-
hasMore: boolean;
|
|
8
|
-
};
|
|
9
|
-
|
|
10
|
-
export function PaginatedResponse<T>(classRef: Type<T>): Type<PaginatedResponse<T>> {
|
|
11
|
-
@ObjectType(`${classRef.name}Edge`, { isAbstract: true })
|
|
12
|
-
abstract class PaginatedType {
|
|
13
|
-
@Field(() => [classRef])
|
|
14
|
-
items: T[];
|
|
15
|
-
|
|
16
|
-
@Field(() => Int)
|
|
17
|
-
total: number;
|
|
18
|
-
|
|
19
|
-
@Field()
|
|
20
|
-
hasMore: boolean;
|
|
21
|
-
}
|
|
22
|
-
return PaginatedType as unknown as Type<PaginatedResponse<T>>;
|
|
23
|
-
}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { Expose, Type } from "class-transformer";
|
|
2
|
-
import { IsOptional } from "class-validator";
|
|
3
|
-
|
|
4
|
-
export class HealthStatus {
|
|
5
|
-
@Expose()
|
|
6
|
-
status: "up" | "down";
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export class HealthIndicatorResult {
|
|
10
|
-
@Expose()
|
|
11
|
-
@Type(() => HealthStatus)
|
|
12
|
-
@IsOptional()
|
|
13
|
-
database?: HealthStatus;
|
|
14
|
-
|
|
15
|
-
@Expose()
|
|
16
|
-
@Type(() => HealthStatus)
|
|
17
|
-
@IsOptional()
|
|
18
|
-
memory_heap?: HealthStatus;
|
|
19
|
-
|
|
20
|
-
@Expose()
|
|
21
|
-
@Type(() => HealthStatus)
|
|
22
|
-
@IsOptional()
|
|
23
|
-
rabbitmq?: HealthStatus;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
export class HealthcheckOutDto {
|
|
27
|
-
@Expose()
|
|
28
|
-
status: "error" | "ok" | "shutting_down";
|
|
29
|
-
|
|
30
|
-
@Expose()
|
|
31
|
-
@Type(() => HealthIndicatorResult)
|
|
32
|
-
details: HealthIndicatorResult;
|
|
33
|
-
|
|
34
|
-
@Expose()
|
|
35
|
-
@Type(() => HealthIndicatorResult)
|
|
36
|
-
@IsOptional()
|
|
37
|
-
info?: HealthIndicatorResult;
|
|
38
|
-
|
|
39
|
-
@Expose()
|
|
40
|
-
@Type(() => HealthIndicatorResult)
|
|
41
|
-
@IsOptional()
|
|
42
|
-
error?: HealthIndicatorResult;
|
|
43
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { DynamicModule, Global, Module, Provider } from "@nestjs/common";
|
|
2
|
-
import knex from "knex";
|
|
3
|
-
|
|
4
|
-
import { KnexModuleAsyncOptions, KnexModuleOptions } from "./knex.interface";
|
|
5
|
-
import { KNEX_CONNECTION_TOKEN, KNEX_OPTIONS_TOKEN } from "./knex.token";
|
|
6
|
-
|
|
7
|
-
@Global()
|
|
8
|
-
@Module({})
|
|
9
|
-
export class KnexCoreModule {
|
|
10
|
-
static forRootAsync(options: KnexModuleAsyncOptions): DynamicModule {
|
|
11
|
-
const knexConnectionProvider: Provider = {
|
|
12
|
-
provide: KNEX_CONNECTION_TOKEN,
|
|
13
|
-
useFactory: (opts: KnexModuleOptions) => knex(opts),
|
|
14
|
-
inject: [KNEX_OPTIONS_TOKEN],
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
const knexOptionsProvider: Provider = {
|
|
18
|
-
provide: KNEX_OPTIONS_TOKEN,
|
|
19
|
-
useFactory: options.useFactory,
|
|
20
|
-
inject: options.inject ?? [],
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
return {
|
|
24
|
-
module: KnexCoreModule,
|
|
25
|
-
imports: options.imports,
|
|
26
|
-
providers: [knexOptionsProvider, knexConnectionProvider],
|
|
27
|
-
exports: [knexConnectionProvider],
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/* nestjs uses any for the inject and useFactory parameters */
|
|
2
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
3
|
-
import { ModuleMetadata } from "@nestjs/common";
|
|
4
|
-
import knex from "knex";
|
|
5
|
-
|
|
6
|
-
export interface KnexModuleAsyncOptions extends Pick<ModuleMetadata, "imports"> {
|
|
7
|
-
inject: any[];
|
|
8
|
-
useFactory: (...args: any[]) => Promise<KnexModuleOptions> | KnexModuleOptions;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
|
|
12
|
-
export interface KnexModuleOptions extends knex.Knex.Config {}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { DynamicModule } from "@nestjs/common";
|
|
2
|
-
|
|
3
|
-
import { KnexCoreModule } from "./knex-core.module";
|
|
4
|
-
import { KnexModuleAsyncOptions } from "./knex.interface";
|
|
5
|
-
|
|
6
|
-
export class KnexModule {
|
|
7
|
-
public static forRootAsync(options: KnexModuleAsyncOptions): DynamicModule {
|
|
8
|
-
return {
|
|
9
|
-
module: KnexModule,
|
|
10
|
-
imports: [KnexCoreModule.forRootAsync(options)],
|
|
11
|
-
exports: [KnexCoreModule],
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-argument */
|
|
2
|
-
import { LoggerService as NestLoggerService } from "@nestjs/common";
|
|
3
|
-
|
|
4
|
-
import { LogLevel } from "./log";
|
|
5
|
-
import { LoggerService } from "./logger.service";
|
|
6
|
-
|
|
7
|
-
export class AppLogger implements NestLoggerService {
|
|
8
|
-
constructor(private readonly loggerService: LoggerService) {}
|
|
9
|
-
|
|
10
|
-
error(message: any, meta?: any) {
|
|
11
|
-
this.runLog("error", message, typeof meta === "string" ? { stack: meta } : meta);
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
log(message: any, meta?: any) { this.runLog("info", message, meta); }
|
|
15
|
-
warn(message: any, meta?: any) { this.runLog("warn", message, meta); }
|
|
16
|
-
debug(message: any, meta?: any) { this.runLog("debug", message, meta); }
|
|
17
|
-
verbose(message: any, meta?: any) { this.runLog("verbose", message, meta); }
|
|
18
|
-
|
|
19
|
-
private runLog(level: LogLevel, message: any, meta?: any) {
|
|
20
|
-
if (typeof message === "string" && typeof meta === "string") {
|
|
21
|
-
this.loggerService.log(level, message, { meta });
|
|
22
|
-
} else if (typeof message === "string") {
|
|
23
|
-
this.loggerService.log(level, message, meta);
|
|
24
|
-
} else {
|
|
25
|
-
this.loggerService.log(level, { message, meta });
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
type RawLog = Record<string, unknown>;
|
|
2
|
-
type MetricsLog = Record<string, number>;
|
|
3
|
-
|
|
4
|
-
export type CtxLog = Record<string, unknown>;
|
|
5
|
-
export type DataLog = Partial<{ metrics: MetricsLog } & RawLog>;
|
|
6
|
-
|
|
7
|
-
export const LOG_LEVELS = ["error", "warn", "info", "http", "verbose", "debug", "silly"] as const;
|
|
8
|
-
export type LogLevel = (typeof LOG_LEVELS)[number];
|
|
9
|
-
|
|
10
|
-
export type Log = {
|
|
11
|
-
service: string;
|
|
12
|
-
level: LogLevel;
|
|
13
|
-
message: string;
|
|
14
|
-
data?: DataLog;
|
|
15
|
-
stack?: string;
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
export const LOG_LEVEL_PRIORITY = {
|
|
19
|
-
error: 0,
|
|
20
|
-
warn: 1,
|
|
21
|
-
info: 2,
|
|
22
|
-
http: 3,
|
|
23
|
-
verbose: 4,
|
|
24
|
-
debug: 5,
|
|
25
|
-
silly: 6,
|
|
26
|
-
} as const satisfies Record<LogLevel, number>;
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { MiddlewareConsumer, Module, RequestMethod } from "@nestjs/common";
|
|
2
|
-
import { APP_INTERCEPTOR } from "@nestjs/core";
|
|
3
|
-
|
|
4
|
-
import { ConfigModule } from "../config";
|
|
5
|
-
import { LogAppCtxInterceptor } from "../../nestjs/http/interceptors/log-app-ctx.interceptor";
|
|
6
|
-
import { HttpLoggerMiddleware } from "../../nestjs/http/middleware/http-logger.middleware";
|
|
7
|
-
import { LoggerMiddleware } from "../../nestjs/http/middleware/logger.middleware";
|
|
8
|
-
import { LoggerService } from "./logger.service";
|
|
9
|
-
import { LogLevel } from "./log";
|
|
10
|
-
import { ConsoleJSONTransport } from "./transports/console-json.transport";
|
|
11
|
-
import { ConsoleTransport } from "./transports/console.transport";
|
|
12
|
-
import { LoggerTransport } from "./transports/logger-transport";
|
|
13
|
-
|
|
14
|
-
function createTransports(): LoggerTransport[] {
|
|
15
|
-
const { NODE_ENV, PHARADAY_TRANSPORT_LOGGER, PHARADAY_LEVEL_LOGGER } = process.env;
|
|
16
|
-
|
|
17
|
-
if (PHARADAY_TRANSPORT_LOGGER === "json") {
|
|
18
|
-
return [new ConsoleJSONTransport({ level: (PHARADAY_LEVEL_LOGGER as LogLevel) ?? "info" })];
|
|
19
|
-
}
|
|
20
|
-
if (PHARADAY_TRANSPORT_LOGGER) {
|
|
21
|
-
return [new ConsoleTransport()];
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
if (NODE_ENV === "production") {return [new ConsoleJSONTransport({ level: "info" })];}
|
|
25
|
-
if (NODE_ENV === "test" || NODE_ENV === "ci") {return [];}
|
|
26
|
-
return [new ConsoleTransport()];
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
@Module({
|
|
30
|
-
imports: [ConfigModule],
|
|
31
|
-
providers: [
|
|
32
|
-
{
|
|
33
|
-
provide: LoggerService,
|
|
34
|
-
useFactory: () => new LoggerService({ service: "pharaday-platform", transports: createTransports() }),
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
provide: APP_INTERCEPTOR,
|
|
38
|
-
useClass: LogAppCtxInterceptor,
|
|
39
|
-
},
|
|
40
|
-
],
|
|
41
|
-
exports: [LoggerService],
|
|
42
|
-
})
|
|
43
|
-
export class LoggerModule {
|
|
44
|
-
configure(consumer: MiddlewareConsumer) {
|
|
45
|
-
consumer.apply(LoggerMiddleware, HttpLoggerMiddleware).forRoutes({ path: "*", method: RequestMethod.ALL });
|
|
46
|
-
}
|
|
47
|
-
}
|