@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
package/jest.config.js
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
const sharedConfig = {
|
|
2
|
-
roots: ["<rootDir>/src"],
|
|
3
|
-
moduleDirectories: ["node_modules"],
|
|
4
|
-
testPathIgnorePatterns: ["./node_modules/"],
|
|
5
|
-
testEnvironment: "node",
|
|
6
|
-
transform: {
|
|
7
|
-
"^.+\\.(t|j)sx?$": [
|
|
8
|
-
"@swc/jest",
|
|
9
|
-
{
|
|
10
|
-
jsc: {
|
|
11
|
-
parser: {
|
|
12
|
-
syntax: "typescript",
|
|
13
|
-
decorators: true,
|
|
14
|
-
},
|
|
15
|
-
transform: {
|
|
16
|
-
legacyDecorator: true,
|
|
17
|
-
decoratorMetadata: true,
|
|
18
|
-
},
|
|
19
|
-
target: "es2022",
|
|
20
|
-
},
|
|
21
|
-
module: {
|
|
22
|
-
type: "commonjs",
|
|
23
|
-
},
|
|
24
|
-
},
|
|
25
|
-
],
|
|
26
|
-
},
|
|
27
|
-
transformIgnorePatterns: ["/node_modules/(?!(jose|uuid)/)"],
|
|
28
|
-
moduleNameMapper: {
|
|
29
|
-
"^src/(.*)$": "<rootDir>/src/$1",
|
|
30
|
-
},
|
|
31
|
-
maxWorkers: "25%",
|
|
32
|
-
moduleFileExtensions: ["ts", "js", "json"],
|
|
33
|
-
restoreMocks: true,
|
|
34
|
-
workerIdleMemoryLimit: "1024MB",
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
module.exports = {
|
|
38
|
-
displayName: "foundation",
|
|
39
|
-
coverageDirectory: "./coverage",
|
|
40
|
-
...sharedConfig,
|
|
41
|
-
projects: [
|
|
42
|
-
{
|
|
43
|
-
displayName: "foundation-spec",
|
|
44
|
-
...sharedConfig,
|
|
45
|
-
testMatch: ["**/*.spec.ts"],
|
|
46
|
-
workerIdleMemoryLimit: "512MB",
|
|
47
|
-
},
|
|
48
|
-
],
|
|
49
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./persistence";
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { AggregateRoot, Entity, EntityProps } from "../../domain";
|
|
2
|
-
|
|
3
|
-
export abstract class Repository<DomainEntity extends Entity<EntityProps> | AggregateRoot<EntityProps>> {
|
|
4
|
-
abstract count(options: FindManyOptions<DomainEntity>): Promise<number>;
|
|
5
|
-
abstract exists(id: string): Promise<boolean>;
|
|
6
|
-
abstract findOne(id: string): Promise<DomainEntity | null>;
|
|
7
|
-
abstract findOneOrFail(id: string): Promise<DomainEntity>;
|
|
8
|
-
abstract findByIds(ids: string[]): Promise<DomainEntity[]>;
|
|
9
|
-
abstract save(entity: DomainEntity): Promise<DomainEntity>;
|
|
10
|
-
abstract saveAll(entities: DomainEntity[]): Promise<void>;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export interface FindOptions<T> {
|
|
14
|
-
filters?: { [P in keyof T]?: T[P] };
|
|
15
|
-
order?: { [P in keyof T]?: "ASC" | "DESC" };
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export interface FindManyOptions<T> extends FindOptions<T> {
|
|
19
|
-
skip?: number;
|
|
20
|
-
limit?: number;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
export type Predicate<T> = (item: T) => boolean;
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { EventPublisher, AggregateRoot as NestAggregateRoot } from "@nestjs/cqrs";
|
|
2
|
-
|
|
3
|
-
import { DomainEvent } from "../events/domain-event";
|
|
4
|
-
import { EntityProps } from "./entity";
|
|
5
|
-
import { UniqueEntityId } from "./unique-entity-id";
|
|
6
|
-
|
|
7
|
-
export abstract class AggregateRoot<Props extends EntityProps = EntityProps> extends NestAggregateRoot<DomainEvent> {
|
|
8
|
-
public readonly _id: UniqueEntityId;
|
|
9
|
-
|
|
10
|
-
constructor(protected props: Props) {
|
|
11
|
-
super();
|
|
12
|
-
this._id = props.id ?? new UniqueEntityId();
|
|
13
|
-
this.props.id = this._id;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
get id(): UniqueEntityId {
|
|
17
|
-
return this._id;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
public equals(object?: AggregateRoot<Props>): boolean {
|
|
21
|
-
if (object == null) {return false;}
|
|
22
|
-
if (this === object) {return true;}
|
|
23
|
-
if (!(object instanceof AggregateRoot)) {return false;}
|
|
24
|
-
return this._id.equals(object._id);
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
public mergeContext(eventPublisher: EventPublisher) {
|
|
28
|
-
eventPublisher.mergeObjectContext(this);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
public getProps() {
|
|
32
|
-
return { ...this.props, id: this._id };
|
|
33
|
-
}
|
|
34
|
-
}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from "@jest/globals";
|
|
2
|
-
|
|
3
|
-
import { Entity, EntityProps } from "./entity";
|
|
4
|
-
import { UniqueEntityId } from "./unique-entity-id";
|
|
5
|
-
|
|
6
|
-
interface TestProps extends EntityProps {
|
|
7
|
-
name: string;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
class TestEntity extends Entity<TestProps> {}
|
|
11
|
-
|
|
12
|
-
describe("Entity", () => {
|
|
13
|
-
it("should generate an id when none is provided", () => {
|
|
14
|
-
const entity = new TestEntity({ name: "test" });
|
|
15
|
-
expect(entity.id).toBeDefined();
|
|
16
|
-
expect(entity.id.toValue()).toBeTruthy();
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
it("should use the provided id", () => {
|
|
20
|
-
const id = new UniqueEntityId("custom-id");
|
|
21
|
-
const entity = new TestEntity({ name: "test", id });
|
|
22
|
-
expect(entity.id.toValue()).toBe("custom-id");
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
it("should be equal to another entity with the same id", () => {
|
|
26
|
-
const id = new UniqueEntityId("same");
|
|
27
|
-
const a = new TestEntity({ name: "a", id });
|
|
28
|
-
const b = new TestEntity({ name: "b", id });
|
|
29
|
-
expect(a.equals(b)).toBe(true);
|
|
30
|
-
});
|
|
31
|
-
|
|
32
|
-
it("should not be equal to an entity with a different id", () => {
|
|
33
|
-
const a = new TestEntity({ name: "a", id: new UniqueEntityId("1") });
|
|
34
|
-
const b = new TestEntity({ name: "b", id: new UniqueEntityId("2") });
|
|
35
|
-
expect(a.equals(b)).toBe(false);
|
|
36
|
-
});
|
|
37
|
-
|
|
38
|
-
it("should not be equal to null or undefined", () => {
|
|
39
|
-
const entity = new TestEntity({ name: "a" });
|
|
40
|
-
expect(entity.equals(undefined)).toBe(false);
|
|
41
|
-
expect(entity.equals(null as unknown as TestEntity)).toBe(false);
|
|
42
|
-
});
|
|
43
|
-
});
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { UniqueEntityId } from "./unique-entity-id";
|
|
2
|
-
|
|
3
|
-
export type EntityProps = {
|
|
4
|
-
id?: UniqueEntityId;
|
|
5
|
-
};
|
|
6
|
-
|
|
7
|
-
export abstract class Entity<Props extends EntityProps = EntityProps> {
|
|
8
|
-
public readonly _id: UniqueEntityId;
|
|
9
|
-
|
|
10
|
-
constructor(protected props: Props) {
|
|
11
|
-
this._id = props.id ?? new UniqueEntityId();
|
|
12
|
-
this.props.id = this._id;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
get id(): UniqueEntityId {
|
|
16
|
-
return this._id;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
public equals(object?: Entity<Props>): boolean {
|
|
20
|
-
if (object == null) {return false;}
|
|
21
|
-
if (this === object) {return true;}
|
|
22
|
-
if (!(object instanceof Entity)) {return false;}
|
|
23
|
-
return this._id.equals(object._id);
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
public getProps() {
|
|
27
|
-
return { ...this.props, id: this._id };
|
|
28
|
-
}
|
|
29
|
-
}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from "@jest/globals";
|
|
2
|
-
|
|
3
|
-
import { Identifier } from "./identifier";
|
|
4
|
-
|
|
5
|
-
class TestId extends Identifier<string> {}
|
|
6
|
-
|
|
7
|
-
describe("Identifier", () => {
|
|
8
|
-
it("should store and return its value", () => {
|
|
9
|
-
const id = new TestId("abc");
|
|
10
|
-
expect(id.toValue()).toBe("abc");
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
it("should convert to string", () => {
|
|
14
|
-
const id = new TestId("abc");
|
|
15
|
-
expect(id.toString()).toBe("abc");
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
it("should be equal to another with same value", () => {
|
|
19
|
-
const id1 = new TestId("abc");
|
|
20
|
-
const id2 = new TestId("abc");
|
|
21
|
-
expect(id1.equals(id2)).toBe(true);
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
it("should not be equal to another with different value", () => {
|
|
25
|
-
const id1 = new TestId("abc");
|
|
26
|
-
const id2 = new TestId("xyz");
|
|
27
|
-
expect(id1.equals(id2)).toBe(false);
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
it("should not be equal to undefined", () => {
|
|
31
|
-
const id = new TestId("abc");
|
|
32
|
-
expect(id.equals(undefined)).toBe(false);
|
|
33
|
-
});
|
|
34
|
-
});
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export class Identifier<T> {
|
|
2
|
-
constructor(private readonly value: T) {}
|
|
3
|
-
|
|
4
|
-
equals(id?: Identifier<T>): boolean {
|
|
5
|
-
if (!(id instanceof this.constructor)) {return false;}
|
|
6
|
-
return id.toValue() === this.value;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
toString() {
|
|
10
|
-
return String(this.value);
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
toValue(): T {
|
|
14
|
-
return this.value;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./domain-event";
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from "@jest/globals";
|
|
2
|
-
|
|
3
|
-
import { ValueObject } from "./value-object";
|
|
4
|
-
|
|
5
|
-
interface MoneyProps {
|
|
6
|
-
amount: number;
|
|
7
|
-
currency: string;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
class Money extends ValueObject<MoneyProps> {
|
|
11
|
-
validate() {
|
|
12
|
-
if (this.props.amount < 0) {throw new Error("negative");}
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
describe("ValueObject", () => {
|
|
17
|
-
it("should freeze props on construction", () => {
|
|
18
|
-
const money = new Money({ amount: 10, currency: "EUR" });
|
|
19
|
-
expect(() => {
|
|
20
|
-
money.getProps().amount = 99;
|
|
21
|
-
}).toThrow();
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
it("should be equal when props match", () => {
|
|
25
|
-
const a = new Money({ amount: 10, currency: "EUR" });
|
|
26
|
-
const b = new Money({ amount: 10, currency: "EUR" });
|
|
27
|
-
expect(a.equals(b)).toBe(true);
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
it("should not be equal when props differ", () => {
|
|
31
|
-
const a = new Money({ amount: 10, currency: "EUR" });
|
|
32
|
-
const b = new Money({ amount: 20, currency: "EUR" });
|
|
33
|
-
expect(a.equals(b)).toBe(false);
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
it("should not be equal to undefined", () => {
|
|
37
|
-
const money = new Money({ amount: 10, currency: "EUR" });
|
|
38
|
-
expect(money.equals(undefined)).toBe(false);
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
it("should expose props via getProps", () => {
|
|
42
|
-
const money = new Money({ amount: 5, currency: "USD" });
|
|
43
|
-
expect(money.getProps()).toEqual({ amount: 5, currency: "USD" });
|
|
44
|
-
});
|
|
45
|
-
});
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { shallowEqual } from "shallow-equal-object";
|
|
2
|
-
|
|
3
|
-
export abstract class ValueObject<Props extends object = object> {
|
|
4
|
-
constructor(protected props: Props) {
|
|
5
|
-
this.props = Object.freeze(props);
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
public equals(vo?: ValueObject<Props>): boolean {
|
|
9
|
-
return !!vo?.props && shallowEqual(this.props, vo.props);
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
getProps(): Props {
|
|
13
|
-
return this.props;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
abstract validate(): void;
|
|
17
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from "@jest/globals";
|
|
2
|
-
|
|
3
|
-
import { ArchitectureLevel } from "../types";
|
|
4
|
-
import { CommandFailureError } from "./command-failure.error";
|
|
5
|
-
|
|
6
|
-
describe("CommandFailureError", () => {
|
|
7
|
-
it("should store message and layer with command className", () => {
|
|
8
|
-
const error = new CommandFailureError("failed", "CreateUserHandler");
|
|
9
|
-
expect(error.message).toBe("failed");
|
|
10
|
-
expect(error.layer()).toEqual({
|
|
11
|
-
[ArchitectureLevel.APPLICATION]: { command: { className: "CreateUserHandler" } },
|
|
12
|
-
});
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
it("should store details", () => {
|
|
16
|
-
const error = new CommandFailureError("fail", "X", { key: "val" });
|
|
17
|
-
expect(error.details()).toEqual({ key: "val" });
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
it("should preserve the cause", () => {
|
|
21
|
-
const cause = new Error("root");
|
|
22
|
-
const error = new CommandFailureError("fail", "X", {}, cause);
|
|
23
|
-
expect(error.cause).toBe(cause);
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
it("should be an instance of Error", () => {
|
|
27
|
-
const error = new CommandFailureError("fail", "X");
|
|
28
|
-
expect(error).toBeInstanceOf(Error);
|
|
29
|
-
});
|
|
30
|
-
});
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ArchitectureLevel } from "../types";
|
|
2
|
-
import { DetailedError } from "./detailed.error";
|
|
3
|
-
|
|
4
|
-
export class CommandFailureError extends DetailedError {
|
|
5
|
-
constructor(message: string, className: string, details: Record<string, unknown> = {}, cause?: unknown) {
|
|
6
|
-
super(message, { [ArchitectureLevel.APPLICATION]: { command: { className } } }, cause);
|
|
7
|
-
this.setDetails(details);
|
|
8
|
-
}
|
|
9
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { CustomError } from "ts-custom-error";
|
|
2
|
-
|
|
3
|
-
import { ArchitectureLayer } from "../types";
|
|
4
|
-
|
|
5
|
-
export abstract class DetailedError extends CustomError {
|
|
6
|
-
private detailsObject: Record<string, unknown> = {};
|
|
7
|
-
private readonly layerObject: ArchitectureLayer;
|
|
8
|
-
|
|
9
|
-
constructor(message: string, layer: ArchitectureLayer, cause?: unknown) {
|
|
10
|
-
super(message, { cause });
|
|
11
|
-
this.layerObject = layer;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
layer(): ArchitectureLayer {
|
|
15
|
-
return this.layerObject;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
details(): Record<string, unknown> {
|
|
19
|
-
return this.detailsObject;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
protected setDetails(details: Record<string, unknown>): void {
|
|
23
|
-
this.detailsObject = details;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from "@jest/globals";
|
|
2
|
-
|
|
3
|
-
import { ArchitectureLevel } from "../types";
|
|
4
|
-
import { DomainError } from "./domain.error";
|
|
5
|
-
|
|
6
|
-
describe("DomainError", () => {
|
|
7
|
-
it("should wrap trace under DOMAIN layer", () => {
|
|
8
|
-
const trace = { entity: { className: "Invoice" } };
|
|
9
|
-
const error = new DomainError("invalid", trace);
|
|
10
|
-
expect(error.layer()).toEqual({
|
|
11
|
-
[ArchitectureLevel.DOMAIN]: { entity: { className: "Invoice" } },
|
|
12
|
-
});
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
it("should store details", () => {
|
|
16
|
-
const trace = { entity: { className: "X" } };
|
|
17
|
-
const error = new DomainError("bad", trace, { field: "email" });
|
|
18
|
-
expect(error.details()).toEqual({ field: "email" });
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
it("should preserve the cause", () => {
|
|
22
|
-
const cause = new Error("original");
|
|
23
|
-
const trace = { entity: { className: "X" } };
|
|
24
|
-
const error = new DomainError("bad", trace, {}, cause);
|
|
25
|
-
expect(error.cause).toBe(cause);
|
|
26
|
-
});
|
|
27
|
-
});
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ArchitectureLayerTrace, ArchitectureLevel } from "../types";
|
|
2
|
-
import { DetailedError } from "./detailed.error";
|
|
3
|
-
|
|
4
|
-
export class DomainError extends DetailedError {
|
|
5
|
-
constructor(message: string, trace: ArchitectureLayerTrace, details: Record<string, unknown> = {}, cause?: unknown) {
|
|
6
|
-
super(message, { [ArchitectureLevel.DOMAIN]: { ...trace } }, cause);
|
|
7
|
-
this.setDetails(details);
|
|
8
|
-
}
|
|
9
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from "@jest/globals";
|
|
2
|
-
|
|
3
|
-
import { ArchitectureLevel } from "../types";
|
|
4
|
-
import { EntityNotFoundError } from "./entity-not-found.error";
|
|
5
|
-
|
|
6
|
-
describe("EntityNotFoundError", () => {
|
|
7
|
-
it("should include entity name in message", () => {
|
|
8
|
-
const layer = { [ArchitectureLevel.DOMAIN]: { entity: { className: "User" } } };
|
|
9
|
-
const error = new EntityNotFoundError("User", layer);
|
|
10
|
-
expect(error.message).toContain("User");
|
|
11
|
-
expect(error.message).toContain("cannot be retrieved");
|
|
12
|
-
});
|
|
13
|
-
|
|
14
|
-
it("should store the architecture layer", () => {
|
|
15
|
-
const layer = { [ArchitectureLevel.DOMAIN]: { entity: { className: "Order" } } };
|
|
16
|
-
const error = new EntityNotFoundError("Order", layer);
|
|
17
|
-
expect(error.layer()).toEqual(layer);
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
it("should store details when provided", () => {
|
|
21
|
-
const layer = { [ArchitectureLevel.DOMAIN]: { entity: { className: "X" } } };
|
|
22
|
-
const error = new EntityNotFoundError("X", layer, undefined, { id: "123" });
|
|
23
|
-
expect(error.details()).toEqual({ id: "123" });
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
it("should preserve the cause", () => {
|
|
27
|
-
const cause = new Error("db down");
|
|
28
|
-
const layer = { [ArchitectureLevel.DOMAIN]: { entity: { className: "X" } } };
|
|
29
|
-
const error = new EntityNotFoundError("X", layer, cause);
|
|
30
|
-
expect(error.cause).toBe(cause);
|
|
31
|
-
});
|
|
32
|
-
});
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ArchitectureLayer } from "../types";
|
|
2
|
-
import { DetailedError } from "./detailed.error";
|
|
3
|
-
|
|
4
|
-
export class EntityNotFoundError extends DetailedError {
|
|
5
|
-
constructor(entityName: string, layer: ArchitectureLayer, cause?: unknown, details: Record<string, unknown> = {}) {
|
|
6
|
-
super(`${entityName} cannot be retrieved`, layer, cause);
|
|
7
|
-
this.setDetails(details);
|
|
8
|
-
}
|
|
9
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from "@jest/globals";
|
|
2
|
-
|
|
3
|
-
import { ArchitectureLevel } from "../types";
|
|
4
|
-
import { FakeImplementationError } from "./fake-implementation.error";
|
|
5
|
-
|
|
6
|
-
describe("FakeImplementationError", () => {
|
|
7
|
-
it("should include class and method in message", () => {
|
|
8
|
-
const error = new FakeImplementationError("UserRepo", "findOne");
|
|
9
|
-
expect(error.message).toContain("UserRepo");
|
|
10
|
-
expect(error.message).toContain("fake");
|
|
11
|
-
expect(error.message).toContain("findOne");
|
|
12
|
-
});
|
|
13
|
-
|
|
14
|
-
it("should set layer to INFRASTRUCTURE", () => {
|
|
15
|
-
const error = new FakeImplementationError("UserRepo", "save");
|
|
16
|
-
expect(error.layer()).toEqual({
|
|
17
|
-
[ArchitectureLevel.INFRASTRUCTURE]: {
|
|
18
|
-
"persistence-fake": { className: "UserRepo" },
|
|
19
|
-
},
|
|
20
|
-
});
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
it("should be an instance of Error", () => {
|
|
24
|
-
const error = new FakeImplementationError("X", "y");
|
|
25
|
-
expect(error).toBeInstanceOf(Error);
|
|
26
|
-
});
|
|
27
|
-
});
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { ArchitectureLevel } from "../types";
|
|
2
|
-
import { DetailedError } from "./detailed.error";
|
|
3
|
-
|
|
4
|
-
export class FakeImplementationError extends DetailedError {
|
|
5
|
-
constructor(className: string, implementationName: string) {
|
|
6
|
-
super(
|
|
7
|
-
`[${className}] This is a fake ${implementationName} method, either\n- You didn't stub the corresponding args in your test\n- OR you forgot to stub the method`,
|
|
8
|
-
{
|
|
9
|
-
[ArchitectureLevel.INFRASTRUCTURE]: {
|
|
10
|
-
"persistence-fake": { className },
|
|
11
|
-
},
|
|
12
|
-
},
|
|
13
|
-
);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { ArchitectureLevel } from "../types";
|
|
2
|
-
import { DetailedError } from "./detailed.error";
|
|
3
|
-
|
|
4
|
-
export class QueryFailureError extends DetailedError {
|
|
5
|
-
constructor(message: string, className: string, cause?: unknown) {
|
|
6
|
-
super(message, { [ArchitectureLevel.APPLICATION]: { query: { className } } }, cause);
|
|
7
|
-
}
|
|
8
|
-
}
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import { Injectable } from "@nestjs/common";
|
|
2
|
-
import * as dotenvSafe from "dotenv-safe";
|
|
3
|
-
|
|
4
|
-
import { ConfigService } from "./config.service";
|
|
5
|
-
|
|
6
|
-
@Injectable()
|
|
7
|
-
export class ConfigProvider extends ConfigService {
|
|
8
|
-
private readonly dotenvValues: Record<string, string>;
|
|
9
|
-
|
|
10
|
-
constructor() {
|
|
11
|
-
super();
|
|
12
|
-
this.assertNodeEnv();
|
|
13
|
-
|
|
14
|
-
const envFilePath = this.getDotenvFileName();
|
|
15
|
-
if (!envFilePath) {
|
|
16
|
-
this.dotenvValues = {};
|
|
17
|
-
return;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
const result = dotenvSafe.config({ allowEmptyValues: true, path: envFilePath });
|
|
21
|
-
if (result.error) {throw result.error;}
|
|
22
|
-
this.dotenvValues = result.parsed ?? {};
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
get(key: string): string | undefined {
|
|
26
|
-
if (key in process.env) {return process.env[key];}
|
|
27
|
-
if (key in this.dotenvValues) {return this.dotenvValues[key];}
|
|
28
|
-
throw new Error(`Configuration key ${key} not found`);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
getUrl(key: string): string | undefined {
|
|
32
|
-
const url = this.get(key);
|
|
33
|
-
if (!url) {return undefined;}
|
|
34
|
-
if (!url.startsWith("http")) {return `https://${url}`;}
|
|
35
|
-
return url.endsWith("/") ? url.slice(0, -1) : url;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
getBoolean(key: string): boolean {
|
|
39
|
-
return this.get(key) === "true";
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
getNumber(key: string): number | undefined {
|
|
43
|
-
const value = this.get(key);
|
|
44
|
-
if (!value) {return undefined;}
|
|
45
|
-
const num = Number(value);
|
|
46
|
-
if (Number.isNaN(num)) {throw new Error(`Configuration key ${key} is not a number`);}
|
|
47
|
-
return num;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
private get nodeEnv() {
|
|
51
|
-
return process.env["NODE_ENV"];
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
isProduction() { return this.nodeEnv === "production"; }
|
|
55
|
-
isStaging() { return this.nodeEnv === "staging"; }
|
|
56
|
-
isSandbox() { return this.nodeEnv === "sandbox"; }
|
|
57
|
-
isDemo() { return this.nodeEnv === "demo"; }
|
|
58
|
-
isPreview() { return this.nodeEnv === "preview"; }
|
|
59
|
-
isTest() { return this.nodeEnv === "test"; }
|
|
60
|
-
isDevelopment() { return this.nodeEnv === "development"; }
|
|
61
|
-
|
|
62
|
-
useFake() {
|
|
63
|
-
return !this.isProduction() && !this.isStaging() && !this.isSandbox() && !this.isDemo();
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
getDotenvFileName() {
|
|
67
|
-
if (this.isTest()) {return ".env.test";}
|
|
68
|
-
if (process.env["CI"] === "true") {return ".env.ci";}
|
|
69
|
-
if (this.isProduction() || this.isStaging() || this.isPreview()) {return undefined;}
|
|
70
|
-
return `.env.${this.nodeEnv ?? "development"}`;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
assertNodeEnv() {
|
|
74
|
-
if (!this.nodeEnv) {
|
|
75
|
-
throw new Error("System variable NODE_ENV should be defined before reading env file");
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
export abstract class ConfigService {
|
|
2
|
-
abstract get(key: string): string | undefined;
|
|
3
|
-
|
|
4
|
-
abstract getUrl(key: string): string | undefined;
|
|
5
|
-
|
|
6
|
-
abstract getBoolean(key: string): boolean;
|
|
7
|
-
|
|
8
|
-
abstract getNumber(key: string): number | undefined;
|
|
9
|
-
|
|
10
|
-
abstract isProduction(): boolean;
|
|
11
|
-
|
|
12
|
-
abstract isStaging(): boolean;
|
|
13
|
-
|
|
14
|
-
abstract isSandbox(): boolean;
|
|
15
|
-
|
|
16
|
-
abstract isDemo(): boolean;
|
|
17
|
-
|
|
18
|
-
abstract useFake(): boolean;
|
|
19
|
-
|
|
20
|
-
abstract isPreview(): boolean;
|
|
21
|
-
|
|
22
|
-
abstract isTest(): boolean;
|
|
23
|
-
|
|
24
|
-
abstract isDevelopment(): boolean;
|
|
25
|
-
}
|