├── .dependency-cruiser.js ├── .env.example ├── .env.test ├── .eslintrc.js ├── .gitignore ├── .jestrc.json ├── .prettierrc ├── .vscode ├── ltex.dictionary.en-US.txt └── settings.json ├── LICENSE ├── README.md ├── assets ├── dependency-graph.svg └── images │ └── DomainDrivenHexagon.png ├── database ├── getMigrator.ts ├── migrate.ts ├── migrations │ ├── 2022.10.07T13.49.19.users.sql │ ├── 2022.10.07T13.49.54.wallets.sql │ └── down │ │ ├── 2022.10.07T13.49.19.users.sql │ │ └── 2022.10.07T13.49.54.wallets.sql ├── seed.ts └── seeds │ ├── users.seed.sql │ └── wallets.seed.sql ├── docker └── docker-compose.yml ├── jest-e2e.json ├── nest-cli.json ├── package.json ├── src ├── app.module.ts ├── configs │ ├── app.routes.ts │ └── database.config.ts ├── libs │ ├── api │ │ ├── api-error.response.ts │ │ ├── graphql │ │ │ └── paginated.graphql-response.base.ts │ │ ├── id.response.dto.ts │ │ ├── paginated-query.request.dto.ts │ │ ├── paginated.response.base.ts │ │ └── response.base.ts │ ├── application │ │ ├── context │ │ │ ├── AppRequestContext.ts │ │ │ └── ContextInterceptor.ts │ │ └── interceptors │ │ │ └── exception.interceptor.ts │ ├── db │ │ └── sql-repository.base.ts │ ├── ddd │ │ ├── aggregate-root.base.ts │ │ ├── command.base.ts │ │ ├── domain-event.base.ts │ │ ├── entity.base.ts │ │ ├── index.ts │ │ ├── mapper.interface.ts │ │ ├── query.base.ts │ │ ├── repository.port.ts │ │ └── value-object.base.ts │ ├── decorators │ │ ├── final.decorator.ts │ │ ├── frozen.decorator.ts │ │ └── index.ts │ ├── exceptions │ │ ├── exception.base.ts │ │ ├── exception.codes.ts │ │ ├── exceptions.ts │ │ └── index.ts │ ├── guard.ts │ ├── ports │ │ └── logger.port.ts │ ├── types │ │ ├── deep-partial.type.ts │ │ ├── index.ts │ │ ├── mutable.type.ts │ │ ├── non-function-properties.type.ts │ │ ├── object-literal.type.ts │ │ └── require-one.type.ts │ └── utils │ │ ├── convert-props-to-object.util.ts │ │ ├── dotenv.ts │ │ └── index.ts ├── main.ts └── modules │ ├── user │ ├── commands │ │ ├── create-user │ │ │ ├── create-user.cli.controller.ts │ │ │ ├── create-user.command.ts │ │ │ ├── create-user.http.controller.ts │ │ │ ├── create-user.message.controller.ts │ │ │ ├── create-user.request.dto.ts │ │ │ ├── create-user.service.ts │ │ │ └── graphql-example │ │ │ │ ├── create-user.graphql-resolver.ts │ │ │ │ └── dtos │ │ │ │ ├── create-user.gql-request.dto.ts │ │ │ │ └── id.gql-response.dto.ts │ │ └── delete-user │ │ │ ├── delete-user.http-controller.ts │ │ │ └── delete-user.service.ts │ ├── database │ │ ├── user.repository.port.ts │ │ └── user.repository.ts │ ├── domain │ │ ├── events │ │ │ ├── user-address-updated.domain-event.ts │ │ │ ├── user-created.domain-event.ts │ │ │ ├── user-deleted.domain-event.ts │ │ │ └── user-role-changed.domain-event.ts │ │ ├── user.entity.ts │ │ ├── user.errors.ts │ │ ├── user.types.ts │ │ └── value-objects │ │ │ └── address.value-object.ts │ ├── dtos │ │ ├── graphql │ │ │ ├── user.graphql-response.dto.ts │ │ │ └── user.paginated-gql-response.dto.ts │ │ ├── user.paginated.response.dto.ts │ │ └── user.response.dto.ts │ ├── queries │ │ └── find-users │ │ │ ├── find-users.graphql-resolver.ts │ │ │ ├── find-users.http.controller.ts │ │ │ ├── find-users.query-handler.ts │ │ │ └── find-users.request.dto.ts │ ├── user.di-tokens.ts │ ├── user.mapper.ts │ └── user.module.ts │ └── wallet │ ├── application │ └── event-handlers │ │ └── create-wallet-when-user-is-created.domain-event-handler.ts │ ├── database │ ├── wallet.repository.port.ts │ └── wallet.repository.ts │ ├── domain │ ├── events │ │ └── wallet-created.domain-event.ts │ ├── wallet.entity.ts │ └── wallet.errors.ts │ ├── wallet.di-tokens.ts │ ├── wallet.mapper.ts │ └── wallet.module.ts ├── tests ├── setup │ ├── jestGlobalSetup.ts │ └── jestSetupAfterEnv.ts ├── shared │ └── shared-steps.ts ├── test-utils │ ├── ApiClient.ts │ ├── TestContext.ts │ ├── mocks │ │ └── generic-model-props.mock.ts │ └── snapshot-base-props.ts └── user │ ├── create-user │ ├── create-user.artillery.yaml │ ├── create-user.e2e-spec.ts │ └── create-user.feature │ ├── delete-user │ ├── delete-user.e2e-spec.ts │ └── delete-user.feature │ └── user-shared-steps.ts ├── tsconfig.build.json └── tsconfig.json /.dependency-cruiser.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/.dependency-cruiser.js -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/.env.example -------------------------------------------------------------------------------- /.env.test: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/.env.test -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/.eslintrc.js -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/.gitignore -------------------------------------------------------------------------------- /.jestrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/.jestrc.json -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/.prettierrc -------------------------------------------------------------------------------- /.vscode/ltex.dictionary.en-US.txt: -------------------------------------------------------------------------------- 1 | DTOs 2 | DTO 3 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/README.md -------------------------------------------------------------------------------- /assets/dependency-graph.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/assets/dependency-graph.svg -------------------------------------------------------------------------------- /assets/images/DomainDrivenHexagon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/assets/images/DomainDrivenHexagon.png -------------------------------------------------------------------------------- /database/getMigrator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/database/getMigrator.ts -------------------------------------------------------------------------------- /database/migrate.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/database/migrate.ts -------------------------------------------------------------------------------- /database/migrations/2022.10.07T13.49.19.users.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/database/migrations/2022.10.07T13.49.19.users.sql -------------------------------------------------------------------------------- /database/migrations/2022.10.07T13.49.54.wallets.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/database/migrations/2022.10.07T13.49.54.wallets.sql -------------------------------------------------------------------------------- /database/migrations/down/2022.10.07T13.49.19.users.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE "users" -------------------------------------------------------------------------------- /database/migrations/down/2022.10.07T13.49.54.wallets.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE "wallets" -------------------------------------------------------------------------------- /database/seed.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/database/seed.ts -------------------------------------------------------------------------------- /database/seeds/users.seed.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/database/seeds/users.seed.sql -------------------------------------------------------------------------------- /database/seeds/wallets.seed.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/database/seeds/wallets.seed.sql -------------------------------------------------------------------------------- /docker/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/docker/docker-compose.yml -------------------------------------------------------------------------------- /jest-e2e.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/jest-e2e.json -------------------------------------------------------------------------------- /nest-cli.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/nest-cli.json -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/package.json -------------------------------------------------------------------------------- /src/app.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/app.module.ts -------------------------------------------------------------------------------- /src/configs/app.routes.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/configs/app.routes.ts -------------------------------------------------------------------------------- /src/configs/database.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/configs/database.config.ts -------------------------------------------------------------------------------- /src/libs/api/api-error.response.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/api/api-error.response.ts -------------------------------------------------------------------------------- /src/libs/api/graphql/paginated.graphql-response.base.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/api/graphql/paginated.graphql-response.base.ts -------------------------------------------------------------------------------- /src/libs/api/id.response.dto.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/api/id.response.dto.ts -------------------------------------------------------------------------------- /src/libs/api/paginated-query.request.dto.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/api/paginated-query.request.dto.ts -------------------------------------------------------------------------------- /src/libs/api/paginated.response.base.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/api/paginated.response.base.ts -------------------------------------------------------------------------------- /src/libs/api/response.base.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/api/response.base.ts -------------------------------------------------------------------------------- /src/libs/application/context/AppRequestContext.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/application/context/AppRequestContext.ts -------------------------------------------------------------------------------- /src/libs/application/context/ContextInterceptor.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/application/context/ContextInterceptor.ts -------------------------------------------------------------------------------- /src/libs/application/interceptors/exception.interceptor.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/application/interceptors/exception.interceptor.ts -------------------------------------------------------------------------------- /src/libs/db/sql-repository.base.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/db/sql-repository.base.ts -------------------------------------------------------------------------------- /src/libs/ddd/aggregate-root.base.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/ddd/aggregate-root.base.ts -------------------------------------------------------------------------------- /src/libs/ddd/command.base.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/ddd/command.base.ts -------------------------------------------------------------------------------- /src/libs/ddd/domain-event.base.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/ddd/domain-event.base.ts -------------------------------------------------------------------------------- /src/libs/ddd/entity.base.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/ddd/entity.base.ts -------------------------------------------------------------------------------- /src/libs/ddd/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/ddd/index.ts -------------------------------------------------------------------------------- /src/libs/ddd/mapper.interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/ddd/mapper.interface.ts -------------------------------------------------------------------------------- /src/libs/ddd/query.base.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/ddd/query.base.ts -------------------------------------------------------------------------------- /src/libs/ddd/repository.port.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/ddd/repository.port.ts -------------------------------------------------------------------------------- /src/libs/ddd/value-object.base.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/ddd/value-object.base.ts -------------------------------------------------------------------------------- /src/libs/decorators/final.decorator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/decorators/final.decorator.ts -------------------------------------------------------------------------------- /src/libs/decorators/frozen.decorator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/decorators/frozen.decorator.ts -------------------------------------------------------------------------------- /src/libs/decorators/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/decorators/index.ts -------------------------------------------------------------------------------- /src/libs/exceptions/exception.base.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/exceptions/exception.base.ts -------------------------------------------------------------------------------- /src/libs/exceptions/exception.codes.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/exceptions/exception.codes.ts -------------------------------------------------------------------------------- /src/libs/exceptions/exceptions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/exceptions/exceptions.ts -------------------------------------------------------------------------------- /src/libs/exceptions/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/exceptions/index.ts -------------------------------------------------------------------------------- /src/libs/guard.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/guard.ts -------------------------------------------------------------------------------- /src/libs/ports/logger.port.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/ports/logger.port.ts -------------------------------------------------------------------------------- /src/libs/types/deep-partial.type.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/types/deep-partial.type.ts -------------------------------------------------------------------------------- /src/libs/types/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/types/index.ts -------------------------------------------------------------------------------- /src/libs/types/mutable.type.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/types/mutable.type.ts -------------------------------------------------------------------------------- /src/libs/types/non-function-properties.type.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/types/non-function-properties.type.ts -------------------------------------------------------------------------------- /src/libs/types/object-literal.type.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/types/object-literal.type.ts -------------------------------------------------------------------------------- /src/libs/types/require-one.type.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/types/require-one.type.ts -------------------------------------------------------------------------------- /src/libs/utils/convert-props-to-object.util.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/utils/convert-props-to-object.util.ts -------------------------------------------------------------------------------- /src/libs/utils/dotenv.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/libs/utils/dotenv.ts -------------------------------------------------------------------------------- /src/libs/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './convert-props-to-object.util'; 2 | -------------------------------------------------------------------------------- /src/main.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/main.ts -------------------------------------------------------------------------------- /src/modules/user/commands/create-user/create-user.cli.controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/commands/create-user/create-user.cli.controller.ts -------------------------------------------------------------------------------- /src/modules/user/commands/create-user/create-user.command.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/commands/create-user/create-user.command.ts -------------------------------------------------------------------------------- /src/modules/user/commands/create-user/create-user.http.controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/commands/create-user/create-user.http.controller.ts -------------------------------------------------------------------------------- /src/modules/user/commands/create-user/create-user.message.controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/commands/create-user/create-user.message.controller.ts -------------------------------------------------------------------------------- /src/modules/user/commands/create-user/create-user.request.dto.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/commands/create-user/create-user.request.dto.ts -------------------------------------------------------------------------------- /src/modules/user/commands/create-user/create-user.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/commands/create-user/create-user.service.ts -------------------------------------------------------------------------------- /src/modules/user/commands/create-user/graphql-example/create-user.graphql-resolver.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/commands/create-user/graphql-example/create-user.graphql-resolver.ts -------------------------------------------------------------------------------- /src/modules/user/commands/create-user/graphql-example/dtos/create-user.gql-request.dto.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/commands/create-user/graphql-example/dtos/create-user.gql-request.dto.ts -------------------------------------------------------------------------------- /src/modules/user/commands/create-user/graphql-example/dtos/id.gql-response.dto.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/commands/create-user/graphql-example/dtos/id.gql-response.dto.ts -------------------------------------------------------------------------------- /src/modules/user/commands/delete-user/delete-user.http-controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/commands/delete-user/delete-user.http-controller.ts -------------------------------------------------------------------------------- /src/modules/user/commands/delete-user/delete-user.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/commands/delete-user/delete-user.service.ts -------------------------------------------------------------------------------- /src/modules/user/database/user.repository.port.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/database/user.repository.port.ts -------------------------------------------------------------------------------- /src/modules/user/database/user.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/database/user.repository.ts -------------------------------------------------------------------------------- /src/modules/user/domain/events/user-address-updated.domain-event.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/domain/events/user-address-updated.domain-event.ts -------------------------------------------------------------------------------- /src/modules/user/domain/events/user-created.domain-event.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/domain/events/user-created.domain-event.ts -------------------------------------------------------------------------------- /src/modules/user/domain/events/user-deleted.domain-event.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/domain/events/user-deleted.domain-event.ts -------------------------------------------------------------------------------- /src/modules/user/domain/events/user-role-changed.domain-event.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/domain/events/user-role-changed.domain-event.ts -------------------------------------------------------------------------------- /src/modules/user/domain/user.entity.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/domain/user.entity.ts -------------------------------------------------------------------------------- /src/modules/user/domain/user.errors.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/domain/user.errors.ts -------------------------------------------------------------------------------- /src/modules/user/domain/user.types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/domain/user.types.ts -------------------------------------------------------------------------------- /src/modules/user/domain/value-objects/address.value-object.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/domain/value-objects/address.value-object.ts -------------------------------------------------------------------------------- /src/modules/user/dtos/graphql/user.graphql-response.dto.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/dtos/graphql/user.graphql-response.dto.ts -------------------------------------------------------------------------------- /src/modules/user/dtos/graphql/user.paginated-gql-response.dto.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/dtos/graphql/user.paginated-gql-response.dto.ts -------------------------------------------------------------------------------- /src/modules/user/dtos/user.paginated.response.dto.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/dtos/user.paginated.response.dto.ts -------------------------------------------------------------------------------- /src/modules/user/dtos/user.response.dto.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/dtos/user.response.dto.ts -------------------------------------------------------------------------------- /src/modules/user/queries/find-users/find-users.graphql-resolver.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/queries/find-users/find-users.graphql-resolver.ts -------------------------------------------------------------------------------- /src/modules/user/queries/find-users/find-users.http.controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/queries/find-users/find-users.http.controller.ts -------------------------------------------------------------------------------- /src/modules/user/queries/find-users/find-users.query-handler.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/queries/find-users/find-users.query-handler.ts -------------------------------------------------------------------------------- /src/modules/user/queries/find-users/find-users.request.dto.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/queries/find-users/find-users.request.dto.ts -------------------------------------------------------------------------------- /src/modules/user/user.di-tokens.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/user.di-tokens.ts -------------------------------------------------------------------------------- /src/modules/user/user.mapper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/user.mapper.ts -------------------------------------------------------------------------------- /src/modules/user/user.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/user/user.module.ts -------------------------------------------------------------------------------- /src/modules/wallet/application/event-handlers/create-wallet-when-user-is-created.domain-event-handler.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/wallet/application/event-handlers/create-wallet-when-user-is-created.domain-event-handler.ts -------------------------------------------------------------------------------- /src/modules/wallet/database/wallet.repository.port.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/wallet/database/wallet.repository.port.ts -------------------------------------------------------------------------------- /src/modules/wallet/database/wallet.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/wallet/database/wallet.repository.ts -------------------------------------------------------------------------------- /src/modules/wallet/domain/events/wallet-created.domain-event.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/wallet/domain/events/wallet-created.domain-event.ts -------------------------------------------------------------------------------- /src/modules/wallet/domain/wallet.entity.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/wallet/domain/wallet.entity.ts -------------------------------------------------------------------------------- /src/modules/wallet/domain/wallet.errors.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/wallet/domain/wallet.errors.ts -------------------------------------------------------------------------------- /src/modules/wallet/wallet.di-tokens.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/wallet/wallet.di-tokens.ts -------------------------------------------------------------------------------- /src/modules/wallet/wallet.mapper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/wallet/wallet.mapper.ts -------------------------------------------------------------------------------- /src/modules/wallet/wallet.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/src/modules/wallet/wallet.module.ts -------------------------------------------------------------------------------- /tests/setup/jestGlobalSetup.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/tests/setup/jestGlobalSetup.ts -------------------------------------------------------------------------------- /tests/setup/jestSetupAfterEnv.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/tests/setup/jestSetupAfterEnv.ts -------------------------------------------------------------------------------- /tests/shared/shared-steps.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/tests/shared/shared-steps.ts -------------------------------------------------------------------------------- /tests/test-utils/ApiClient.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/tests/test-utils/ApiClient.ts -------------------------------------------------------------------------------- /tests/test-utils/TestContext.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/tests/test-utils/TestContext.ts -------------------------------------------------------------------------------- /tests/test-utils/mocks/generic-model-props.mock.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/tests/test-utils/mocks/generic-model-props.mock.ts -------------------------------------------------------------------------------- /tests/test-utils/snapshot-base-props.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/tests/test-utils/snapshot-base-props.ts -------------------------------------------------------------------------------- /tests/user/create-user/create-user.artillery.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/tests/user/create-user/create-user.artillery.yaml -------------------------------------------------------------------------------- /tests/user/create-user/create-user.e2e-spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/tests/user/create-user/create-user.e2e-spec.ts -------------------------------------------------------------------------------- /tests/user/create-user/create-user.feature: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/tests/user/create-user/create-user.feature -------------------------------------------------------------------------------- /tests/user/delete-user/delete-user.e2e-spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/tests/user/delete-user/delete-user.e2e-spec.ts -------------------------------------------------------------------------------- /tests/user/delete-user/delete-user.feature: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/tests/user/delete-user/delete-user.feature -------------------------------------------------------------------------------- /tests/user/user-shared-steps.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/tests/user/user-shared-steps.ts -------------------------------------------------------------------------------- /tsconfig.build.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/tsconfig.build.json -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sairyss/domain-driven-hexagon/HEAD/tsconfig.json --------------------------------------------------------------------------------