From 8834cffb216a6eba649c242256dab0e053590bcb Mon Sep 17 00:00:00 2001 From: Mike Rodrigues De Lima <mike.rodrigues.lima@gmail.com> Date: Sun, 19 Nov 2023 01:12:27 -0300 Subject: [PATCH] Delete dist directory --- dist/jest.config.js | 27 -- dist/src/app.module.js | 33 -- dist/src/core/cats/entity/cats.js | 29 -- dist/src/core/cats/repository/cats.js | 8 - dist/src/core/cats/use-cases/cats-create.js | 46 --- dist/src/core/cats/use-cases/cats-delete.js | 42 --- dist/src/core/cats/use-cases/cats-getByID.js | 39 --- dist/src/core/cats/use-cases/cats-list.js | 34 --- dist/src/core/cats/use-cases/cats-update.js | 44 --- dist/src/core/user/entity/user.js | 36 --- dist/src/core/user/repository/user.js | 8 - dist/src/core/user/use-cases/user-create.js | 55 ---- dist/src/core/user/use-cases/user-delete.js | 43 --- dist/src/core/user/use-cases/user-getByID.js | 40 --- dist/src/core/user/use-cases/user-list.js | 45 --- dist/src/core/user/use-cases/user-login.js | 48 --- dist/src/core/user/use-cases/user-logout.js | 33 -- dist/src/core/user/use-cases/user-update.js | 50 --- dist/src/infra/cache/adapter.js | 7 - dist/src/infra/cache/index.js | 19 -- dist/src/infra/cache/memory/index.js | 20 -- dist/src/infra/cache/memory/module.js | 33 -- dist/src/infra/cache/memory/service.js | 54 ---- dist/src/infra/cache/memory/types.js | 3 - dist/src/infra/cache/redis/index.js | 20 -- dist/src/infra/cache/redis/module.js | 34 --- dist/src/infra/cache/redis/service.js | 75 ----- dist/src/infra/cache/redis/types.js | 3 - dist/src/infra/cache/types.js | 3 - dist/src/infra/database/adapter.js | 7 - dist/src/infra/database/enum.js | 8 - dist/src/infra/database/index.js | 19 -- dist/src/infra/database/mongo/index.js | 19 -- dist/src/infra/database/mongo/module.js | 31 -- dist/src/infra/database/mongo/schemas/user.js | 55 ---- .../database/mongo/seed/create-user-admin.js | 11 - dist/src/infra/database/mongo/service.js | 14 - dist/src/infra/database/postgres/config.js | 29 -- dist/src/infra/database/postgres/index.js | 19 -- dist/src/infra/database/postgres/module.js | 34 --- .../infra/database/postgres/schemas/cats.js | 39 --- dist/src/infra/database/postgres/service.js | 32 -- dist/src/infra/database/types.js | 3 - dist/src/infra/http/adapter.js | 7 - dist/src/infra/http/index.js | 20 -- dist/src/infra/http/module.js | 28 -- dist/src/infra/http/service.js | 45 --- dist/src/infra/logger/adapter.js | 7 - dist/src/infra/logger/index.js | 21 -- dist/src/infra/logger/module.js | 33 -- dist/src/infra/logger/service.js | 193 ------------ dist/src/infra/logger/types.js | 3 - dist/src/infra/module.js | 33 -- dist/src/infra/repository/adapter.js | 7 - dist/src/infra/repository/index.js | 20 -- dist/src/infra/repository/mongo/repository.js | 215 ------------- .../infra/repository/postgres/repository.js | 285 ------------------ dist/src/infra/repository/types.js | 11 - dist/src/infra/repository/util.js | 23 -- dist/src/infra/secrets/adapter.js | 7 - dist/src/infra/secrets/index.js | 20 -- dist/src/infra/secrets/module.js | 32 -- dist/src/infra/secrets/service.js | 36 --- dist/src/libs/auth/adapter.js | 7 - dist/src/libs/auth/index.js | 20 -- dist/src/libs/auth/module.js | 29 -- dist/src/libs/auth/service.js | 53 ---- dist/src/main.js | 81 ----- dist/src/modules/cats/adapter.js | 19 -- dist/src/modules/cats/controller.js | 121 -------- dist/src/modules/cats/module.js | 74 ----- dist/src/modules/cats/repository.js | 50 --- dist/src/modules/cats/swagger.js | 82 ----- dist/src/modules/health/controller.js | 31 -- dist/src/modules/health/module.js | 20 -- dist/src/modules/login/adapter.js | 7 - dist/src/modules/login/controller.js | 44 --- dist/src/modules/login/module.js | 34 --- dist/src/modules/login/swagger.js | 26 -- dist/src/modules/logout/adapter.js | 7 - dist/src/modules/logout/controller.js | 45 --- dist/src/modules/logout/module.js | 41 --- dist/src/modules/logout/swagger.js | 19 -- dist/src/modules/user/adapter.js | 19 -- dist/src/modules/user/controller.js | 123 -------- dist/src/modules/user/module.js | 93 ------ dist/src/modules/user/repository.js | 60 ---- dist/src/modules/user/swagger.js | 94 ------ dist/src/utils/axios.js | 56 ---- dist/src/utils/collection.js | 91 ------ dist/src/utils/database/mongoose.js | 9 - dist/src/utils/database/sequelize.js | 14 - dist/src/utils/date.js | 26 -- .../convert-mongoose-filter.decorator.js | 25 -- .../validate-mongoose-filter.decorator.js | 45 --- ...ate-input-to-sequelize-filter.decorator.js | 64 ---- .../convert-sequelize-filter.decorator.js | 26 -- ...alidate-database-sort-allowed.decorator.js | 37 --- dist/src/utils/decorators/role.decorator.js | 8 - dist/src/utils/decorators/types.js | 9 - .../decorators/validate-schema.decorator.js | 16 - dist/src/utils/docs/data/cats/request.js | 9 - dist/src/utils/docs/data/cats/response.js | 19 -- dist/src/utils/docs/data/user/request.js | 10 - dist/src/utils/docs/data/user/response.js | 19 -- dist/src/utils/docs/swagger.js | 72 ----- dist/src/utils/entity.js | 25 -- dist/src/utils/exception.js | 52 ---- .../utils/filters/http-exception.filter.js | 69 ----- .../interceptors/auth-guard.interceptor.js | 41 --- .../http-exception.interceptor.js | 72 ----- .../interceptors/http-logger.interceptor.js | 28 -- .../utils/interceptors/metrics.interceptor.js | 51 ---- .../utils/interceptors/tracing.interceptor.js | 113 ------- .../utils/middlewares/is-logged.middleware.js | 59 ---- dist/src/utils/pagination.js | 37 --- dist/src/utils/request.js | 6 - dist/src/utils/search.js | 44 --- dist/src/utils/sort.js | 46 --- dist/src/utils/tests/mocks/request.js | 18 -- dist/src/utils/tests/tests.js | 19 -- dist/src/utils/tracing.js | 86 ------ 122 files changed, 4817 deletions(-) delete mode 100644 dist/jest.config.js delete mode 100644 dist/src/app.module.js delete mode 100644 dist/src/core/cats/entity/cats.js delete mode 100644 dist/src/core/cats/repository/cats.js delete mode 100644 dist/src/core/cats/use-cases/cats-create.js delete mode 100644 dist/src/core/cats/use-cases/cats-delete.js delete mode 100644 dist/src/core/cats/use-cases/cats-getByID.js delete mode 100644 dist/src/core/cats/use-cases/cats-list.js delete mode 100644 dist/src/core/cats/use-cases/cats-update.js delete mode 100644 dist/src/core/user/entity/user.js delete mode 100644 dist/src/core/user/repository/user.js delete mode 100644 dist/src/core/user/use-cases/user-create.js delete mode 100644 dist/src/core/user/use-cases/user-delete.js delete mode 100644 dist/src/core/user/use-cases/user-getByID.js delete mode 100644 dist/src/core/user/use-cases/user-list.js delete mode 100644 dist/src/core/user/use-cases/user-login.js delete mode 100644 dist/src/core/user/use-cases/user-logout.js delete mode 100644 dist/src/core/user/use-cases/user-update.js delete mode 100644 dist/src/infra/cache/adapter.js delete mode 100644 dist/src/infra/cache/index.js delete mode 100644 dist/src/infra/cache/memory/index.js delete mode 100644 dist/src/infra/cache/memory/module.js delete mode 100644 dist/src/infra/cache/memory/service.js delete mode 100644 dist/src/infra/cache/memory/types.js delete mode 100644 dist/src/infra/cache/redis/index.js delete mode 100644 dist/src/infra/cache/redis/module.js delete mode 100644 dist/src/infra/cache/redis/service.js delete mode 100644 dist/src/infra/cache/redis/types.js delete mode 100644 dist/src/infra/cache/types.js delete mode 100644 dist/src/infra/database/adapter.js delete mode 100644 dist/src/infra/database/enum.js delete mode 100644 dist/src/infra/database/index.js delete mode 100644 dist/src/infra/database/mongo/index.js delete mode 100644 dist/src/infra/database/mongo/module.js delete mode 100644 dist/src/infra/database/mongo/schemas/user.js delete mode 100644 dist/src/infra/database/mongo/seed/create-user-admin.js delete mode 100644 dist/src/infra/database/mongo/service.js delete mode 100644 dist/src/infra/database/postgres/config.js delete mode 100644 dist/src/infra/database/postgres/index.js delete mode 100644 dist/src/infra/database/postgres/module.js delete mode 100644 dist/src/infra/database/postgres/schemas/cats.js delete mode 100644 dist/src/infra/database/postgres/service.js delete mode 100644 dist/src/infra/database/types.js delete mode 100644 dist/src/infra/http/adapter.js delete mode 100644 dist/src/infra/http/index.js delete mode 100644 dist/src/infra/http/module.js delete mode 100644 dist/src/infra/http/service.js delete mode 100644 dist/src/infra/logger/adapter.js delete mode 100644 dist/src/infra/logger/index.js delete mode 100644 dist/src/infra/logger/module.js delete mode 100644 dist/src/infra/logger/service.js delete mode 100644 dist/src/infra/logger/types.js delete mode 100644 dist/src/infra/module.js delete mode 100644 dist/src/infra/repository/adapter.js delete mode 100644 dist/src/infra/repository/index.js delete mode 100644 dist/src/infra/repository/mongo/repository.js delete mode 100644 dist/src/infra/repository/postgres/repository.js delete mode 100644 dist/src/infra/repository/types.js delete mode 100644 dist/src/infra/repository/util.js delete mode 100644 dist/src/infra/secrets/adapter.js delete mode 100644 dist/src/infra/secrets/index.js delete mode 100644 dist/src/infra/secrets/module.js delete mode 100644 dist/src/infra/secrets/service.js delete mode 100644 dist/src/libs/auth/adapter.js delete mode 100644 dist/src/libs/auth/index.js delete mode 100644 dist/src/libs/auth/module.js delete mode 100644 dist/src/libs/auth/service.js delete mode 100644 dist/src/main.js delete mode 100644 dist/src/modules/cats/adapter.js delete mode 100644 dist/src/modules/cats/controller.js delete mode 100644 dist/src/modules/cats/module.js delete mode 100644 dist/src/modules/cats/repository.js delete mode 100644 dist/src/modules/cats/swagger.js delete mode 100644 dist/src/modules/health/controller.js delete mode 100644 dist/src/modules/health/module.js delete mode 100644 dist/src/modules/login/adapter.js delete mode 100644 dist/src/modules/login/controller.js delete mode 100644 dist/src/modules/login/module.js delete mode 100644 dist/src/modules/login/swagger.js delete mode 100644 dist/src/modules/logout/adapter.js delete mode 100644 dist/src/modules/logout/controller.js delete mode 100644 dist/src/modules/logout/module.js delete mode 100644 dist/src/modules/logout/swagger.js delete mode 100644 dist/src/modules/user/adapter.js delete mode 100644 dist/src/modules/user/controller.js delete mode 100644 dist/src/modules/user/module.js delete mode 100644 dist/src/modules/user/repository.js delete mode 100644 dist/src/modules/user/swagger.js delete mode 100644 dist/src/utils/axios.js delete mode 100644 dist/src/utils/collection.js delete mode 100644 dist/src/utils/database/mongoose.js delete mode 100644 dist/src/utils/database/sequelize.js delete mode 100644 dist/src/utils/date.js delete mode 100644 dist/src/utils/decorators/database/mongo/convert-mongoose-filter.decorator.js delete mode 100644 dist/src/utils/decorators/database/mongo/validate-mongoose-filter.decorator.js delete mode 100644 dist/src/utils/decorators/database/postgres/convert-paginate-input-to-sequelize-filter.decorator.js delete mode 100644 dist/src/utils/decorators/database/postgres/convert-sequelize-filter.decorator.js delete mode 100644 dist/src/utils/decorators/database/validate-database-sort-allowed.decorator.js delete mode 100644 dist/src/utils/decorators/role.decorator.js delete mode 100644 dist/src/utils/decorators/types.js delete mode 100644 dist/src/utils/decorators/validate-schema.decorator.js delete mode 100644 dist/src/utils/docs/data/cats/request.js delete mode 100644 dist/src/utils/docs/data/cats/response.js delete mode 100644 dist/src/utils/docs/data/user/request.js delete mode 100644 dist/src/utils/docs/data/user/response.js delete mode 100644 dist/src/utils/docs/swagger.js delete mode 100644 dist/src/utils/entity.js delete mode 100644 dist/src/utils/exception.js delete mode 100644 dist/src/utils/filters/http-exception.filter.js delete mode 100644 dist/src/utils/interceptors/auth-guard.interceptor.js delete mode 100644 dist/src/utils/interceptors/http-exception.interceptor.js delete mode 100644 dist/src/utils/interceptors/http-logger.interceptor.js delete mode 100644 dist/src/utils/interceptors/metrics.interceptor.js delete mode 100644 dist/src/utils/interceptors/tracing.interceptor.js delete mode 100644 dist/src/utils/middlewares/is-logged.middleware.js delete mode 100644 dist/src/utils/pagination.js delete mode 100644 dist/src/utils/request.js delete mode 100644 dist/src/utils/search.js delete mode 100644 dist/src/utils/sort.js delete mode 100644 dist/src/utils/tests/mocks/request.js delete mode 100644 dist/src/utils/tests/tests.js delete mode 100644 dist/src/utils/tracing.js diff --git a/dist/jest.config.js b/dist/jest.config.js deleted file mode 100644 index b7735545..00000000 --- a/dist/jest.config.js +++ /dev/null @@ -1,27 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -const ts_jest_1 = require("ts-jest"); -const tsconfig_json_1 = require("./tsconfig.json"); -exports.default = { - moduleFileExtensions: ['js', 'json', 'ts'], - rootDir: 'src/core', - testRegex: '.*\\.spec\\.ts$', - transform: { - '^.+\\.(t|j)s$': [ - '@swc/jest', - { - jsc: { - target: 'es2021' - }, - sourceMaps: 'inline' - } - ] - }, - setupFilesAfterEnv: ['../../test/initializaion.ts'], - testEnvironment: 'node', - collectCoverageFrom: ['**/*.ts'], - coverageDirectory: '../../coverage', - coverageReporters: ['json-summary', 'lcov'], - moduleNameMapper: (0, ts_jest_1.pathsToModuleNameMapper)(tsconfig_json_1.compilerOptions.paths, { prefix: '<rootDir>/../../' }) -}; -//# sourceMappingURL=jest.config.js.map \ No newline at end of file diff --git a/dist/src/app.module.js b/dist/src/app.module.js deleted file mode 100644 index c061a8cc..00000000 --- a/dist/src/app.module.js +++ /dev/null @@ -1,33 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.AppModule = void 0; -const common_1 = require("@nestjs/common"); -const core_1 = require("@nestjs/core"); -const auth_1 = require("./libs/auth"); -const module_1 = require("./infra/module"); -const module_2 = require("./modules/cats/module"); -const module_3 = require("./modules/health/module"); -const module_4 = require("./modules/login/module"); -const module_5 = require("./modules/logout/module"); -const module_6 = require("./modules/user/module"); -const auth_guard_interceptor_1 = require("./utils/interceptors/auth-guard.interceptor"); -let AppModule = exports.AppModule = class AppModule { -}; -exports.AppModule = AppModule = __decorate([ - (0, common_1.Module)({ - providers: [ - { - provide: core_1.APP_GUARD, - useClass: auth_guard_interceptor_1.RolesGuardInterceptor - } - ], - imports: [module_1.InfraModule, module_3.HealthModule, module_6.UserModule, module_4.LoginModule, module_5.LogoutModule, auth_1.TokenModule, module_2.CatsModule] - }) -], AppModule); -//# sourceMappingURL=app.module.js.map \ No newline at end of file diff --git a/dist/src/core/cats/entity/cats.js b/dist/src/core/cats/entity/cats.js deleted file mode 100644 index 174575dd..00000000 --- a/dist/src/core/cats/entity/cats.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CatsEntity = exports.CatsEntitySchema = void 0; -const zod_1 = require("zod"); -const entity_1 = require("../../../utils/entity"); -const ID = zod_1.z.string().uuid(); -const Name = zod_1.z.string().trim().min(1).max(200); -const Breed = zod_1.z.string().trim().min(1).max(200); -const Age = zod_1.z.number().min(0).max(30); -const CreatedAt = zod_1.z.date().nullish(); -const UpdatedAt = zod_1.z.date().nullish(); -const DeletedAt = zod_1.z.date().default(null).nullish(); -exports.CatsEntitySchema = zod_1.z.object({ - id: ID, - name: Name, - breed: Breed, - age: Age, - createdAt: CreatedAt, - updatedAt: UpdatedAt, - deletedAt: DeletedAt -}); -class CatsEntity extends (0, entity_1.BaseEntity)(exports.CatsEntitySchema) { - constructor(entity) { - super(); - Object.assign(this, this.validate(entity)); - } -} -exports.CatsEntity = CatsEntity; -//# sourceMappingURL=cats.js.map \ No newline at end of file diff --git a/dist/src/core/cats/repository/cats.js b/dist/src/core/cats/repository/cats.js deleted file mode 100644 index eb863639..00000000 --- a/dist/src/core/cats/repository/cats.js +++ /dev/null @@ -1,8 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ICatsRepository = void 0; -const repository_1 = require("../../../infra/repository"); -class ICatsRepository extends repository_1.IRepository { -} -exports.ICatsRepository = ICatsRepository; -//# sourceMappingURL=cats.js.map \ No newline at end of file diff --git a/dist/src/core/cats/use-cases/cats-create.js b/dist/src/core/cats/use-cases/cats-create.js deleted file mode 100644 index d3187a3b..00000000 --- a/dist/src/core/cats/use-cases/cats-create.js +++ /dev/null @@ -1,46 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CatsCreateUsecase = exports.CatsCreateSchema = void 0; -const validate_schema_decorator_1 = require("../../../utils/decorators/validate-schema.decorator"); -const cats_1 = require("./../entity/cats"); -exports.CatsCreateSchema = cats_1.CatsEntitySchema.pick({ - name: true, - breed: true, - age: true -}); -class CatsCreateUsecase { - constructor(catsRepository) { - this.catsRepository = catsRepository; - } - async execute(input, { tracing, user }) { - const entity = new cats_1.CatsEntity(input); - const transaction = await this.catsRepository.startSession(); - try { - const cats = await this.catsRepository.create(entity, { transaction }); - await transaction.commit(); - tracing.logEvent('cats-created', `cats created by: ${user.login}`); - return cats; - } - catch (error) { - await transaction.rollback(); - throw error; - } - } -} -exports.CatsCreateUsecase = CatsCreateUsecase; -__decorate([ - (0, validate_schema_decorator_1.ValidateSchema)(exports.CatsCreateSchema), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Object]), - __metadata("design:returntype", Promise) -], CatsCreateUsecase.prototype, "execute", null); -//# sourceMappingURL=cats-create.js.map \ No newline at end of file diff --git a/dist/src/core/cats/use-cases/cats-delete.js b/dist/src/core/cats/use-cases/cats-delete.js deleted file mode 100644 index 7f1bb082..00000000 --- a/dist/src/core/cats/use-cases/cats-delete.js +++ /dev/null @@ -1,42 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CatsDeleteUsecase = exports.CatsDeleteSchema = void 0; -const validate_schema_decorator_1 = require("../../../utils/decorators/validate-schema.decorator"); -const exception_1 = require("../../../utils/exception"); -const cats_1 = require("../entity/cats"); -exports.CatsDeleteSchema = cats_1.CatsEntitySchema.pick({ - id: true -}); -class CatsDeleteUsecase { - constructor(catsRepository) { - this.catsRepository = catsRepository; - } - async execute({ id }, { tracing, user }) { - const model = await this.catsRepository.findById(id); - if (!model) { - throw new exception_1.ApiNotFoundException(); - } - const cats = new cats_1.CatsEntity(model); - cats.setDeleted(); - await this.catsRepository.updateOne({ id: cats.id }, cats); - tracing.logEvent('cats-deleted', `cats deleted by: ${user.login}`); - return cats; - } -} -exports.CatsDeleteUsecase = CatsDeleteUsecase; -__decorate([ - (0, validate_schema_decorator_1.ValidateSchema)(exports.CatsDeleteSchema), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Object]), - __metadata("design:returntype", Promise) -], CatsDeleteUsecase.prototype, "execute", null); -//# sourceMappingURL=cats-delete.js.map \ No newline at end of file diff --git a/dist/src/core/cats/use-cases/cats-getByID.js b/dist/src/core/cats/use-cases/cats-getByID.js deleted file mode 100644 index c1bd43b7..00000000 --- a/dist/src/core/cats/use-cases/cats-getByID.js +++ /dev/null @@ -1,39 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CatsGetByIdUsecase = exports.CatsGetByIdSchema = void 0; -const cats_1 = require("../entity/cats"); -const validate_schema_decorator_1 = require("../../../utils/decorators/validate-schema.decorator"); -const exception_1 = require("../../../utils/exception"); -const cats_2 = require("../entity/cats"); -exports.CatsGetByIdSchema = cats_1.CatsEntitySchema.pick({ - id: true -}); -class CatsGetByIdUsecase { - constructor(catsRepository) { - this.catsRepository = catsRepository; - } - async execute({ id }) { - const cats = await this.catsRepository.findById(id); - if (!cats) { - throw new exception_1.ApiNotFoundException(); - } - return new cats_2.CatsEntity(cats); - } -} -exports.CatsGetByIdUsecase = CatsGetByIdUsecase; -__decorate([ - (0, validate_schema_decorator_1.ValidateSchema)(exports.CatsGetByIdSchema), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], CatsGetByIdUsecase.prototype, "execute", null); -//# sourceMappingURL=cats-getByID.js.map \ No newline at end of file diff --git a/dist/src/core/cats/use-cases/cats-list.js b/dist/src/core/cats/use-cases/cats-list.js deleted file mode 100644 index b8ad60a9..00000000 --- a/dist/src/core/cats/use-cases/cats-list.js +++ /dev/null @@ -1,34 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CatsListUsecase = exports.CatsListSchema = void 0; -const zod_1 = require("zod"); -const validate_schema_decorator_1 = require("../../../utils/decorators/validate-schema.decorator"); -const pagination_1 = require("../../../utils/pagination"); -const search_1 = require("../../../utils/search"); -const sort_1 = require("../../../utils/sort"); -exports.CatsListSchema = zod_1.z.intersection(pagination_1.PaginationSchema, sort_1.SortSchema.merge(search_1.SearchSchema)); -class CatsListUsecase { - constructor(catsRepository) { - this.catsRepository = catsRepository; - } - async execute(input) { - return await this.catsRepository.paginate(input); - } -} -exports.CatsListUsecase = CatsListUsecase; -__decorate([ - (0, validate_schema_decorator_1.ValidateSchema)(exports.CatsListSchema), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], CatsListUsecase.prototype, "execute", null); -//# sourceMappingURL=cats-list.js.map \ No newline at end of file diff --git a/dist/src/core/cats/use-cases/cats-update.js b/dist/src/core/cats/use-cases/cats-update.js deleted file mode 100644 index 1f008c8b..00000000 --- a/dist/src/core/cats/use-cases/cats-update.js +++ /dev/null @@ -1,44 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CatsUpdateUsecase = exports.CatsUpdateSchema = void 0; -const validate_schema_decorator_1 = require("../../../utils/decorators/validate-schema.decorator"); -const exception_1 = require("../../../utils/exception"); -const cats_1 = require("./../entity/cats"); -exports.CatsUpdateSchema = cats_1.CatsEntitySchema.pick({ - id: true -}).merge(cats_1.CatsEntitySchema.omit({ id: true }).partial()); -class CatsUpdateUsecase { - constructor(catsRepository, loggerServide) { - this.catsRepository = catsRepository; - this.loggerServide = loggerServide; - } - async execute(input, { tracing, user }) { - const cats = await this.catsRepository.findById(input.id); - if (!cats) { - throw new exception_1.ApiNotFoundException(); - } - const entity = new cats_1.CatsEntity(Object.assign(Object.assign({}, cats), input)); - await this.catsRepository.updateOne({ id: entity.id }, entity); - this.loggerServide.info({ message: 'cats updated.', obj: { cats: input } }); - const updated = await this.catsRepository.findById(entity.id); - tracing.logEvent('cats-updated', `cats updated by: ${user.login}`); - return new cats_1.CatsEntity(updated); - } -} -exports.CatsUpdateUsecase = CatsUpdateUsecase; -__decorate([ - (0, validate_schema_decorator_1.ValidateSchema)(exports.CatsUpdateSchema), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Object]), - __metadata("design:returntype", Promise) -], CatsUpdateUsecase.prototype, "execute", null); -//# sourceMappingURL=cats-update.js.map \ No newline at end of file diff --git a/dist/src/core/user/entity/user.js b/dist/src/core/user/entity/user.js deleted file mode 100644 index 14fa3d0f..00000000 --- a/dist/src/core/user/entity/user.js +++ /dev/null @@ -1,36 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UserEntity = exports.UserEntitySchema = exports.UserRole = void 0; -const zod_1 = require("zod"); -const entity_1 = require("../../../utils/entity"); -const ID = zod_1.z.string().uuid(); -const Login = zod_1.z.string().trim().min(1).max(200); -const Password = zod_1.z.string().trim().min(1).max(200); -const CreatedAt = zod_1.z.date().nullish(); -const UpdatedAt = zod_1.z.date().nullish(); -const DeletedAt = zod_1.z.date().default(null).nullish(); -var UserRole; -(function (UserRole) { - UserRole["USER"] = "USER"; - UserRole["BACKOFFICE"] = "BACKOFFICE"; -})(UserRole || (exports.UserRole = UserRole = {})); -exports.UserEntitySchema = zod_1.z.object({ - id: ID, - login: Login, - password: Password, - roles: zod_1.z.array(zod_1.z.nativeEnum(UserRole)), - createdAt: CreatedAt, - updatedAt: UpdatedAt, - deletedAt: DeletedAt -}); -class UserEntity extends (0, entity_1.BaseEntity)(exports.UserEntitySchema) { - constructor(entity) { - super(); - Object.assign(this, this.validate(entity)); - } - anonymizePassword() { - this.password = '**********'; - } -} -exports.UserEntity = UserEntity; -//# sourceMappingURL=user.js.map \ No newline at end of file diff --git a/dist/src/core/user/repository/user.js b/dist/src/core/user/repository/user.js deleted file mode 100644 index 076a1cfc..00000000 --- a/dist/src/core/user/repository/user.js +++ /dev/null @@ -1,8 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IUserRepository = void 0; -const repository_1 = require("../../../infra/repository"); -class IUserRepository extends repository_1.IRepository { -} -exports.IUserRepository = IUserRepository; -//# sourceMappingURL=user.js.map \ No newline at end of file diff --git a/dist/src/core/user/use-cases/user-create.js b/dist/src/core/user/use-cases/user-create.js deleted file mode 100644 index 73eb15e6..00000000 --- a/dist/src/core/user/use-cases/user-create.js +++ /dev/null @@ -1,55 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UserCreateUsecase = exports.UserCreateSchema = void 0; -const validate_schema_decorator_1 = require("../../../utils/decorators/validate-schema.decorator"); -const exception_1 = require("../../../utils/exception"); -const user_1 = require("../entity/user"); -exports.UserCreateSchema = user_1.UserEntitySchema.pick({ - login: true, - password: true, - roles: true -}); -class UserCreateUsecase { - constructor(userRepository, loggerServide) { - this.userRepository = userRepository; - this.loggerServide = loggerServide; - } - async execute(input, { tracing, user: userData }) { - const entity = new user_1.UserEntity(input); - const userExists = await this.userRepository.findOne({ - login: entity.login - }); - if (userExists) { - throw new exception_1.ApiConflictException('user exists'); - } - const session = await this.userRepository.startSession(); - try { - const user = await this.userRepository.create(entity, { session }); - await session.commitTransaction(); - this.loggerServide.info({ message: 'user created successfully', obj: { user } }); - tracing.logEvent('user-created', `user: ${entity.login} created by: ${userData.login}`); - return user; - } - catch (error) { - await session.abortTransaction(); - throw error; - } - } -} -exports.UserCreateUsecase = UserCreateUsecase; -__decorate([ - (0, validate_schema_decorator_1.ValidateSchema)(exports.UserCreateSchema), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Object]), - __metadata("design:returntype", Promise) -], UserCreateUsecase.prototype, "execute", null); -//# sourceMappingURL=user-create.js.map \ No newline at end of file diff --git a/dist/src/core/user/use-cases/user-delete.js b/dist/src/core/user/use-cases/user-delete.js deleted file mode 100644 index d537eec5..00000000 --- a/dist/src/core/user/use-cases/user-delete.js +++ /dev/null @@ -1,43 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UserDeleteUsecase = exports.UserDeleteSchema = void 0; -const validate_schema_decorator_1 = require("../../../utils/decorators/validate-schema.decorator"); -const exception_1 = require("../../../utils/exception"); -const user_1 = require("../entity/user"); -exports.UserDeleteSchema = user_1.UserEntitySchema.pick({ - id: true -}); -class UserDeleteUsecase { - constructor(userRepository) { - this.userRepository = userRepository; - } - async execute({ id }, { tracing, user: userData }) { - const entity = await this.userRepository.findById(id); - if (!entity) { - throw new exception_1.ApiNotFoundException(); - } - const user = new user_1.UserEntity(entity); - user.setDeleted(); - await this.userRepository.updateOne({ id: user.id }, user); - user.anonymizePassword(); - tracing.logEvent('user-deleted', `user: ${entity.login} deleted by: ${userData.login}`); - return user; - } -} -exports.UserDeleteUsecase = UserDeleteUsecase; -__decorate([ - (0, validate_schema_decorator_1.ValidateSchema)(exports.UserDeleteSchema), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Object]), - __metadata("design:returntype", Promise) -], UserDeleteUsecase.prototype, "execute", null); -//# sourceMappingURL=user-delete.js.map \ No newline at end of file diff --git a/dist/src/core/user/use-cases/user-getByID.js b/dist/src/core/user/use-cases/user-getByID.js deleted file mode 100644 index 82372b9b..00000000 --- a/dist/src/core/user/use-cases/user-getByID.js +++ /dev/null @@ -1,40 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UserGetByIdUsecase = exports.UserGetByIdSchema = void 0; -const validate_schema_decorator_1 = require("../../../utils/decorators/validate-schema.decorator"); -const exception_1 = require("../../../utils/exception"); -const user_1 = require("../entity/user"); -exports.UserGetByIdSchema = user_1.UserEntitySchema.pick({ - id: true -}); -class UserGetByIdUsecase { - constructor(userRepository) { - this.userRepository = userRepository; - } - async execute({ id }) { - const user = await this.userRepository.findById(id); - if (!user) { - throw new exception_1.ApiNotFoundException(); - } - const entity = new user_1.UserEntity(user); - entity.anonymizePassword(); - return entity; - } -} -exports.UserGetByIdUsecase = UserGetByIdUsecase; -__decorate([ - (0, validate_schema_decorator_1.ValidateSchema)(exports.UserGetByIdSchema), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], UserGetByIdUsecase.prototype, "execute", null); -//# sourceMappingURL=user-getByID.js.map \ No newline at end of file diff --git a/dist/src/core/user/use-cases/user-list.js b/dist/src/core/user/use-cases/user-list.js deleted file mode 100644 index cf9492c3..00000000 --- a/dist/src/core/user/use-cases/user-list.js +++ /dev/null @@ -1,45 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UserListUsecase = exports.UserListSchema = void 0; -const zod_1 = require("zod"); -const validate_schema_decorator_1 = require("../../../utils/decorators/validate-schema.decorator"); -const pagination_1 = require("../../../utils/pagination"); -const search_1 = require("../../../utils/search"); -const sort_1 = require("../../../utils/sort"); -const user_1 = require("../entity/user"); -exports.UserListSchema = zod_1.z.intersection(pagination_1.PaginationSchema, sort_1.SortSchema.merge(search_1.SearchSchema)); -class UserListUsecase { - constructor(userRepository) { - this.userRepository = userRepository; - } - async execute(input) { - const users = await this.userRepository.paginate(input); - return { - docs: users.docs.map((u) => { - const model = new user_1.UserEntity(u); - model.anonymizePassword(); - return model; - }), - limit: users.limit, - page: users.page, - total: users.total - }; - } -} -exports.UserListUsecase = UserListUsecase; -__decorate([ - (0, validate_schema_decorator_1.ValidateSchema)(exports.UserListSchema), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], UserListUsecase.prototype, "execute", null); -//# sourceMappingURL=user-list.js.map \ No newline at end of file diff --git a/dist/src/core/user/use-cases/user-login.js b/dist/src/core/user/use-cases/user-login.js deleted file mode 100644 index 28677af6..00000000 --- a/dist/src/core/user/use-cases/user-login.js +++ /dev/null @@ -1,48 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.LoginUsecase = exports.LoginSchema = void 0; -const validate_schema_decorator_1 = require("../../../utils/decorators/validate-schema.decorator"); -const exception_1 = require("../../../utils/exception"); -const user_1 = require("../entity/user"); -exports.LoginSchema = user_1.UserEntitySchema.pick({ - login: true, - password: true -}); -class LoginUsecase { - constructor(loginRepository, tokenService) { - this.loginRepository = loginRepository; - this.tokenService = tokenService; - } - async execute(input, { tracing }) { - const login = await this.loginRepository.findOne({ - login: input.login, - password: input.password - }); - if (!login) { - throw new exception_1.ApiNotFoundException(); - } - tracing.logEvent('user-login', `${login.login}`); - return this.tokenService.sign({ - login: login.login, - password: login.password, - roles: login.roles - }); - } -} -exports.LoginUsecase = LoginUsecase; -__decorate([ - (0, validate_schema_decorator_1.ValidateSchema)(exports.LoginSchema), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Object]), - __metadata("design:returntype", Object) -], LoginUsecase.prototype, "execute", null); -//# sourceMappingURL=user-login.js.map \ No newline at end of file diff --git a/dist/src/core/user/use-cases/user-logout.js b/dist/src/core/user/use-cases/user-logout.js deleted file mode 100644 index 506a6a1f..00000000 --- a/dist/src/core/user/use-cases/user-logout.js +++ /dev/null @@ -1,33 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.LogoutUsecase = exports.LogoutSchema = void 0; -const zod_1 = require("zod"); -const validate_schema_decorator_1 = require("../../../utils/decorators/validate-schema.decorator"); -exports.LogoutSchema = zod_1.z.object({ token: zod_1.z.string().trim().min(10) }); -class LogoutUsecase { - constructor(redis, secretes) { - this.redis = redis; - this.secretes = secretes; - } - async execute(input, { tracing, user }) { - await this.redis.set(input.token, input.token, { PX: this.secretes.TOKEN_EXPIRATION }); - tracing.logEvent('user-logout', `${user.login}`); - } -} -exports.LogoutUsecase = LogoutUsecase; -__decorate([ - (0, validate_schema_decorator_1.ValidateSchema)(exports.LogoutSchema), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Object]), - __metadata("design:returntype", Object) -], LogoutUsecase.prototype, "execute", null); -//# sourceMappingURL=user-logout.js.map \ No newline at end of file diff --git a/dist/src/core/user/use-cases/user-update.js b/dist/src/core/user/use-cases/user-update.js deleted file mode 100644 index 5d2195fe..00000000 --- a/dist/src/core/user/use-cases/user-update.js +++ /dev/null @@ -1,50 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UserUpdateUsecase = exports.UserUpdateSchema = void 0; -const validate_schema_decorator_1 = require("../../../utils/decorators/validate-schema.decorator"); -const exception_1 = require("../../../utils/exception"); -const user_1 = require("../entity/user"); -exports.UserUpdateSchema = user_1.UserEntitySchema.pick({ - id: true -}).merge(user_1.UserEntitySchema.omit({ id: true }).partial()); -class UserUpdateUsecase { - constructor(userRepository, loggerServide) { - this.userRepository = userRepository; - this.loggerServide = loggerServide; - } - async execute(input, { tracing, user: userData }) { - const user = await this.userRepository.findById(input.id); - if (!user) { - throw new exception_1.ApiNotFoundException(); - } - const entity = new user_1.UserEntity(Object.assign(Object.assign({}, user), input)); - const userExists = await this.userRepository.existsOnUpdate({ login: entity.login, password: entity.password }, { id: entity.id }); - if (userExists) { - throw new exception_1.ApiConflictException('user exists'); - } - await this.userRepository.updateOne({ id: entity.id }, entity); - this.loggerServide.info({ message: 'user updated.', obj: { user: input } }); - const updated = await this.userRepository.findById(entity.id); - const entityUpdated = new user_1.UserEntity(updated); - entityUpdated.anonymizePassword(); - tracing.logEvent('user-updated', `user: ${user.login} updated by: ${userData.login}`); - return entityUpdated; - } -} -exports.UserUpdateUsecase = UserUpdateUsecase; -__decorate([ - (0, validate_schema_decorator_1.ValidateSchema)(exports.UserUpdateSchema), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Object]), - __metadata("design:returntype", Promise) -], UserUpdateUsecase.prototype, "execute", null); -//# sourceMappingURL=user-update.js.map \ No newline at end of file diff --git a/dist/src/infra/cache/adapter.js b/dist/src/infra/cache/adapter.js deleted file mode 100644 index bc7c6044..00000000 --- a/dist/src/infra/cache/adapter.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ICacheAdapter = void 0; -class ICacheAdapter { -} -exports.ICacheAdapter = ICacheAdapter; -//# sourceMappingURL=adapter.js.map \ No newline at end of file diff --git a/dist/src/infra/cache/index.js b/dist/src/infra/cache/index.js deleted file mode 100644 index 1d3c759e..00000000 --- a/dist/src/infra/cache/index.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -__exportStar(require("./adapter"), exports); -__exportStar(require("./types"), exports); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/dist/src/infra/cache/memory/index.js b/dist/src/infra/cache/memory/index.js deleted file mode 100644 index 71497a14..00000000 --- a/dist/src/infra/cache/memory/index.js +++ /dev/null @@ -1,20 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -__exportStar(require("./module"), exports); -__exportStar(require("./service"), exports); -__exportStar(require("./types"), exports); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/dist/src/infra/cache/memory/module.js b/dist/src/infra/cache/memory/module.js deleted file mode 100644 index 352b2072..00000000 --- a/dist/src/infra/cache/memory/module.js +++ /dev/null @@ -1,33 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MemoryCacheModule = void 0; -const common_1 = require("@nestjs/common"); -const logger_1 = require("../../logger"); -const adapter_1 = require("../adapter"); -const service_1 = require("./service"); -let MemoryCacheModule = exports.MemoryCacheModule = class MemoryCacheModule { -}; -exports.MemoryCacheModule = MemoryCacheModule = __decorate([ - (0, common_1.Module)({ - imports: [logger_1.LoggerModule], - providers: [ - { - provide: adapter_1.ICacheAdapter, - useFactory: async (logger) => { - const cacheService = new service_1.MemoryCacheService(logger); - cacheService.connect(); - return cacheService; - }, - inject: [logger_1.ILoggerAdapter] - } - ], - exports: [adapter_1.ICacheAdapter] - }) -], MemoryCacheModule); -//# sourceMappingURL=module.js.map \ No newline at end of file diff --git a/dist/src/infra/cache/memory/service.js b/dist/src/infra/cache/memory/service.js deleted file mode 100644 index 368aa3b9..00000000 --- a/dist/src/infra/cache/memory/service.js +++ /dev/null @@ -1,54 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MemoryCacheService = void 0; -const common_1 = require("@nestjs/common"); -const node_cache_1 = __importDefault(require("node-cache")); -const logger_1 = require("../../logger"); -let MemoryCacheService = exports.MemoryCacheService = class MemoryCacheService { - constructor(logger) { - this.logger = logger; - } - connect(config) { - this.client = new node_cache_1.default(config || { stdTTL: 3600, checkperiod: 3600 }); - this.logger.log('CacheMemory connected!'); - return this.client; - } - mSet(model) { - return this.client.mset(model); - } - mGet(key) { - return this.client.mget(key); - } - has(key) { - return this.client.has(key); - } - set(key, value, config) { - this.client.set(key, value, config); - } - del(key) { - return !!this.client.del(key); - } - get(key) { - return this.client.get(key); - } - pExpire(key, ttl) { - return this.client.ttl(key, ttl); - } -}; -exports.MemoryCacheService = MemoryCacheService = __decorate([ - (0, common_1.Injectable)(), - __metadata("design:paramtypes", [logger_1.ILoggerAdapter]) -], MemoryCacheService); -//# sourceMappingURL=service.js.map \ No newline at end of file diff --git a/dist/src/infra/cache/memory/types.js b/dist/src/infra/cache/memory/types.js deleted file mode 100644 index 11e638d1..00000000 --- a/dist/src/infra/cache/memory/types.js +++ /dev/null @@ -1,3 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/dist/src/infra/cache/redis/index.js b/dist/src/infra/cache/redis/index.js deleted file mode 100644 index 71497a14..00000000 --- a/dist/src/infra/cache/redis/index.js +++ /dev/null @@ -1,20 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -__exportStar(require("./module"), exports); -__exportStar(require("./service"), exports); -__exportStar(require("./types"), exports); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/dist/src/infra/cache/redis/module.js b/dist/src/infra/cache/redis/module.js deleted file mode 100644 index 54e5d4fa..00000000 --- a/dist/src/infra/cache/redis/module.js +++ /dev/null @@ -1,34 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RedisCacheModule = void 0; -const common_1 = require("@nestjs/common"); -const logger_1 = require("../../logger"); -const secrets_1 = require("../../secrets"); -const adapter_1 = require("../adapter"); -const service_1 = require("./service"); -let RedisCacheModule = exports.RedisCacheModule = class RedisCacheModule { -}; -exports.RedisCacheModule = RedisCacheModule = __decorate([ - (0, common_1.Module)({ - imports: [logger_1.LoggerModule, secrets_1.SecretsModule], - providers: [ - { - provide: adapter_1.ICacheAdapter, - useFactory: async ({ REDIS_URL }, logger) => { - const cacheService = new service_1.RedisService({ url: REDIS_URL }, logger); - await cacheService.connect(); - return cacheService; - }, - inject: [secrets_1.ISecretsAdapter, logger_1.ILoggerAdapter] - } - ], - exports: [adapter_1.ICacheAdapter] - }) -], RedisCacheModule); -//# sourceMappingURL=module.js.map \ No newline at end of file diff --git a/dist/src/infra/cache/redis/service.js b/dist/src/infra/cache/redis/service.js deleted file mode 100644 index e95a93cd..00000000 --- a/dist/src/infra/cache/redis/service.js +++ /dev/null @@ -1,75 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RedisService = void 0; -const common_1 = require("@nestjs/common"); -const redis_1 = require("redis"); -const logger_1 = require("../../logger"); -const exception_1 = require("../../../utils/exception"); -let RedisService = exports.RedisService = class RedisService { - constructor(config, logger) { - this.config = config; - this.logger = logger; - this.client = (0, redis_1.createClient)(this.config); - } - async isConnected() { - const ping = await this.client.ping(); - if (ping !== 'PONG') - this.throwException('redis disconnected.'); - } - async connect() { - try { - await this.client.connect(); - this.logger.log('Redis connected!\n'); - return this.client; - } - catch (error) { - throw new exception_1.ApiInternalServerException(error.message); - } - } - async set(key, value, config) { - await this.client.set(key, value, config); - } - async get(key) { - const getResult = await this.client.get(key); - return getResult; - } - async del(key) { - await this.client.del(key); - } - async setMulti(redisList) { - const multi = this.client.multi(); - for (const model of redisList) { - multi.rPush(model.key, model.value); - } - await multi.exec(); - } - async pExpire(key, miliseconds) { - await this.client.pExpire(key, miliseconds); - } - async hGet(key, field) { - return await this.client.hGet(key, field); - } - async hSet(key, field, value) { - return await this.client.hSet(key, field, value); - } - async hGetAll(key) { - return await this.client.hGetAll(key); - } - throwException(error) { - throw new exception_1.ApiInternalServerException(error); - } -}; -exports.RedisService = RedisService = __decorate([ - (0, common_1.Injectable)(), - __metadata("design:paramtypes", [Object, logger_1.ILoggerAdapter]) -], RedisService); -//# sourceMappingURL=service.js.map \ No newline at end of file diff --git a/dist/src/infra/cache/redis/types.js b/dist/src/infra/cache/redis/types.js deleted file mode 100644 index 11e638d1..00000000 --- a/dist/src/infra/cache/redis/types.js +++ /dev/null @@ -1,3 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/dist/src/infra/cache/types.js b/dist/src/infra/cache/types.js deleted file mode 100644 index 11e638d1..00000000 --- a/dist/src/infra/cache/types.js +++ /dev/null @@ -1,3 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/dist/src/infra/database/adapter.js b/dist/src/infra/database/adapter.js deleted file mode 100644 index ead86370..00000000 --- a/dist/src/infra/database/adapter.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IDataBaseAdapter = void 0; -class IDataBaseAdapter { -} -exports.IDataBaseAdapter = IDataBaseAdapter; -//# sourceMappingURL=adapter.js.map \ No newline at end of file diff --git a/dist/src/infra/database/enum.js b/dist/src/infra/database/enum.js deleted file mode 100644 index 3dc41b87..00000000 --- a/dist/src/infra/database/enum.js +++ /dev/null @@ -1,8 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ConnectionName = void 0; -var ConnectionName; -(function (ConnectionName) { - ConnectionName["USER"] = "USER_CONNECTION"; -})(ConnectionName || (exports.ConnectionName = ConnectionName = {})); -//# sourceMappingURL=enum.js.map \ No newline at end of file diff --git a/dist/src/infra/database/index.js b/dist/src/infra/database/index.js deleted file mode 100644 index 1d3c759e..00000000 --- a/dist/src/infra/database/index.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -__exportStar(require("./adapter"), exports); -__exportStar(require("./types"), exports); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/dist/src/infra/database/mongo/index.js b/dist/src/infra/database/mongo/index.js deleted file mode 100644 index 5fc0f942..00000000 --- a/dist/src/infra/database/mongo/index.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -__exportStar(require("./module"), exports); -__exportStar(require("./service"), exports); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/dist/src/infra/database/mongo/module.js b/dist/src/infra/database/mongo/module.js deleted file mode 100644 index 5243f258..00000000 --- a/dist/src/infra/database/mongo/module.js +++ /dev/null @@ -1,31 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MongoDatabaseModule = void 0; -const common_1 = require("@nestjs/common"); -const mongoose_1 = require("@nestjs/mongoose"); -const secrets_1 = require("../../secrets"); -const enum_1 = require("../enum"); -const service_1 = require("./service"); -let MongoDatabaseModule = exports.MongoDatabaseModule = class MongoDatabaseModule { -}; -exports.MongoDatabaseModule = MongoDatabaseModule = __decorate([ - (0, common_1.Module)({ - imports: [ - mongoose_1.MongooseModule.forRootAsync({ - connectionName: enum_1.ConnectionName.USER, - useFactory: ({ MONGO_URL }) => { - return new service_1.MongoService().getConnection({ URI: MONGO_URL }); - }, - imports: [secrets_1.SecretsModule], - inject: [secrets_1.ISecretsAdapter] - }) - ] - }) -], MongoDatabaseModule); -//# sourceMappingURL=module.js.map \ No newline at end of file diff --git a/dist/src/infra/database/mongo/schemas/user.js b/dist/src/infra/database/mongo/schemas/user.js deleted file mode 100644 index 302d5fef..00000000 --- a/dist/src/infra/database/mongo/schemas/user.js +++ /dev/null @@ -1,55 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UserSchema = exports.User = void 0; -const mongoose_1 = require("@nestjs/mongoose"); -const mongoose_paginate_v2_1 = __importDefault(require("mongoose-paginate-v2")); -const user_1 = require("../../../../core/user/entity/user"); -let User = exports.User = class User { -}; -__decorate([ - (0, mongoose_1.Prop)({ type: String }), - __metadata("design:type", String) -], User.prototype, "_id", void 0); -__decorate([ - (0, mongoose_1.Prop)({ min: 0, max: 200, required: true, type: String }), - __metadata("design:type", String) -], User.prototype, "login", void 0); -__decorate([ - (0, mongoose_1.Prop)({ min: 0, max: 200, required: true, type: String }), - __metadata("design:type", String) -], User.prototype, "password", void 0); -__decorate([ - (0, mongoose_1.Prop)({ enum: user_1.UserRole, type: Array, required: true }), - __metadata("design:type", Array) -], User.prototype, "roles", void 0); -__decorate([ - (0, mongoose_1.Prop)({ type: Date, default: null }), - __metadata("design:type", Date) -], User.prototype, "deletedAt", void 0); -exports.User = User = __decorate([ - (0, mongoose_1.Schema)({ - collection: 'user-collection', - autoIndex: true, - timestamps: true - }) -], User); -const UserSchema = mongoose_1.SchemaFactory.createForClass(User); -exports.UserSchema = UserSchema; -UserSchema.index({ login: 1 }, { unique: true, partialFilterExpression: { deletedAt: { $eq: null } } }); -UserSchema.plugin(mongoose_paginate_v2_1.default); -UserSchema.virtual('id').get(function () { - return this._id; -}); -//# sourceMappingURL=user.js.map \ No newline at end of file diff --git a/dist/src/infra/database/mongo/seed/create-user-admin.js b/dist/src/infra/database/mongo/seed/create-user-admin.js deleted file mode 100644 index 4c2640ec..00000000 --- a/dist/src/infra/database/mongo/seed/create-user-admin.js +++ /dev/null @@ -1,11 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UserAdminSeed = void 0; -const user_1 = require("../../../../core/user/entity/user"); -exports.UserAdminSeed = { - id: 'b23fd7b8-b1eb-44df-b99e-297bf346e88e', - login: 'admin', - password: 'admin', - roles: [user_1.UserRole.BACKOFFICE, user_1.UserRole.USER] -}; -//# sourceMappingURL=create-user-admin.js.map \ No newline at end of file diff --git a/dist/src/infra/database/mongo/service.js b/dist/src/infra/database/mongo/service.js deleted file mode 100644 index 903e5cc0..00000000 --- a/dist/src/infra/database/mongo/service.js +++ /dev/null @@ -1,14 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MongoService = void 0; -const package_json_1 = require("../../../../package.json"); -class MongoService { - getConnection({ URI }) { - return { - appName: package_json_1.name, - uri: URI - }; - } -} -exports.MongoService = MongoService; -//# sourceMappingURL=service.js.map \ No newline at end of file diff --git a/dist/src/infra/database/postgres/config.js b/dist/src/infra/database/postgres/config.js deleted file mode 100644 index d5376cce..00000000 --- a/dist/src/infra/database/postgres/config.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.sequelizeConfig = void 0; -const config_1 = require("@nestjs/config"); -const colorette_1 = require("colorette"); -const dotenv_1 = require("dotenv"); -const fs_1 = require("fs"); -const sequelize_typescript_1 = require("sequelize-typescript"); -const cats_1 = require("./schemas/cats"); -(0, dotenv_1.config)(); -const configService = new config_1.ConfigService(); -const connection = `postgresql://${configService.get('POSTGRES_USER')}:${configService.get('POSTGRES_PASSWORD')}@${configService.get('POSTGRES_HOST')}:${configService.get('POSTGRES_PORT')}/${configService.get('POSTGRES_DATABASE')}`; -const sequelizeConfig = new sequelize_typescript_1.Sequelize(connection, { - dialect: 'postgres', - benchmark: true, - logging: (msm, timming) => console.log((0, colorette_1.blue)(`[sequelize]`), (0, colorette_1.gray)(msm), `${(0, colorette_1.blue)((0, colorette_1.bold)(`${timming}ms`))}`) -}); -exports.sequelizeConfig = sequelizeConfig; -sequelizeConfig.addModels([cats_1.CatsSchema]); -const databaseConfigMap = { - DEV: 'development', - TEST: 'test', - PRD: 'production' -}[configService.get('ENV')]; -const postgresConfig = sequelizeConfig.config.dialectOptions; -(0, fs_1.writeFileSync)('database.json', JSON.stringify({ - [databaseConfigMap]: Object.assign(Object.assign({}, postgresConfig), { username: postgresConfig['user'], user: undefined, dialect: 'postgres' }) -})); -//# sourceMappingURL=config.js.map \ No newline at end of file diff --git a/dist/src/infra/database/postgres/index.js b/dist/src/infra/database/postgres/index.js deleted file mode 100644 index 5fc0f942..00000000 --- a/dist/src/infra/database/postgres/index.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -__exportStar(require("./module"), exports); -__exportStar(require("./service"), exports); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/dist/src/infra/database/postgres/module.js b/dist/src/infra/database/postgres/module.js deleted file mode 100644 index ab5a8ae0..00000000 --- a/dist/src/infra/database/postgres/module.js +++ /dev/null @@ -1,34 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.PostgresDatabaseModule = void 0; -const common_1 = require("@nestjs/common"); -const logger_1 = require("../../logger"); -const adapter_1 = require("../adapter"); -const config_1 = require("./config"); -const service_1 = require("./service"); -let PostgresDatabaseModule = exports.PostgresDatabaseModule = class PostgresDatabaseModule { -}; -exports.PostgresDatabaseModule = PostgresDatabaseModule = __decorate([ - (0, common_1.Module)({ - imports: [logger_1.LoggerModule], - providers: [ - { - provide: adapter_1.IDataBaseAdapter, - useFactory: async (logger) => { - const postgres = new service_1.SequelizeService(config_1.sequelizeConfig, logger); - await postgres.connect(); - return postgres; - }, - inject: [logger_1.ILoggerAdapter] - } - ], - exports: [adapter_1.IDataBaseAdapter] - }) -], PostgresDatabaseModule); -//# sourceMappingURL=module.js.map \ No newline at end of file diff --git a/dist/src/infra/database/postgres/schemas/cats.js b/dist/src/infra/database/postgres/schemas/cats.js deleted file mode 100644 index 7d1d332e..00000000 --- a/dist/src/infra/database/postgres/schemas/cats.js +++ /dev/null @@ -1,39 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CatsSchema = void 0; -const sequelize_typescript_1 = require("sequelize-typescript"); -let CatsSchema = exports.CatsSchema = class CatsSchema extends sequelize_typescript_1.Model { -}; -__decorate([ - (0, sequelize_typescript_1.Column)({ primaryKey: true, type: sequelize_typescript_1.DataType.UUID }), - __metadata("design:type", String) -], CatsSchema.prototype, "id", void 0); -__decorate([ - (0, sequelize_typescript_1.Column)(sequelize_typescript_1.DataType.STRING), - __metadata("design:type", String) -], CatsSchema.prototype, "name", void 0); -__decorate([ - (0, sequelize_typescript_1.Column)(sequelize_typescript_1.DataType.INTEGER), - __metadata("design:type", Number) -], CatsSchema.prototype, "age", void 0); -__decorate([ - (0, sequelize_typescript_1.Column)(sequelize_typescript_1.DataType.STRING), - __metadata("design:type", String) -], CatsSchema.prototype, "breed", void 0); -__decorate([ - (0, sequelize_typescript_1.Column)({ allowNull: true, type: sequelize_typescript_1.DataType.DATE }), - __metadata("design:type", Date) -], CatsSchema.prototype, "deletedAt", void 0); -exports.CatsSchema = CatsSchema = __decorate([ - (0, sequelize_typescript_1.Table)({ timestamps: true, tableName: 'cats' }) -], CatsSchema); -//# sourceMappingURL=cats.js.map \ No newline at end of file diff --git a/dist/src/infra/database/postgres/service.js b/dist/src/infra/database/postgres/service.js deleted file mode 100644 index 0b07b921..00000000 --- a/dist/src/infra/database/postgres/service.js +++ /dev/null @@ -1,32 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SequelizeService = void 0; -const package_json_1 = require("../../../../package.json"); -class SequelizeService { - constructor(instance, logger) { - this.instance = instance; - this.logger = logger; - } - getConnection({ URI }) { - return { - type: 'postgres', - url: URI, - database: package_json_1.name - }; - } - async connect() { - try { - const conn = await this.instance.sync(); - this.logger.log('Sequelize connected!'); - return conn; - } - catch (error) { - this.logger.fatal(error); - } - } - getDatabase() { - return this.instance; - } -} -exports.SequelizeService = SequelizeService; -//# sourceMappingURL=service.js.map \ No newline at end of file diff --git a/dist/src/infra/database/types.js b/dist/src/infra/database/types.js deleted file mode 100644 index 11e638d1..00000000 --- a/dist/src/infra/database/types.js +++ /dev/null @@ -1,3 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/dist/src/infra/http/adapter.js b/dist/src/infra/http/adapter.js deleted file mode 100644 index d787155f..00000000 --- a/dist/src/infra/http/adapter.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IHttpAdapter = void 0; -class IHttpAdapter { -} -exports.IHttpAdapter = IHttpAdapter; -//# sourceMappingURL=adapter.js.map \ No newline at end of file diff --git a/dist/src/infra/http/index.js b/dist/src/infra/http/index.js deleted file mode 100644 index d70d8dd4..00000000 --- a/dist/src/infra/http/index.js +++ /dev/null @@ -1,20 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -__exportStar(require("./adapter"), exports); -__exportStar(require("./module"), exports); -__exportStar(require("./service"), exports); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/dist/src/infra/http/module.js b/dist/src/infra/http/module.js deleted file mode 100644 index c78f2fc6..00000000 --- a/dist/src/infra/http/module.js +++ /dev/null @@ -1,28 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.HttpModule = void 0; -const common_1 = require("@nestjs/common"); -const logger_1 = require("../logger"); -const adapter_1 = require("./adapter"); -const service_1 = require("./service"); -let HttpModule = exports.HttpModule = class HttpModule { -}; -exports.HttpModule = HttpModule = __decorate([ - (0, common_1.Module)({ - imports: [logger_1.LoggerModule], - providers: [ - { - provide: adapter_1.IHttpAdapter, - useClass: service_1.HttpService - } - ], - exports: [adapter_1.IHttpAdapter] - }) -], HttpModule); -//# sourceMappingURL=module.js.map \ No newline at end of file diff --git a/dist/src/infra/http/service.js b/dist/src/infra/http/service.js deleted file mode 100644 index dfba0530..00000000 --- a/dist/src/infra/http/service.js +++ /dev/null @@ -1,45 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.HttpService = void 0; -const common_1 = require("@nestjs/common"); -const axios_1 = __importDefault(require("axios")); -const axios_better_stacktrace_1 = __importDefault(require("axios-better-stacktrace")); -const https_1 = __importDefault(require("https")); -const axios_2 = require("../../utils/axios"); -const logger_1 = require("../logger"); -let HttpService = exports.HttpService = class HttpService { - constructor(loggerService) { - this.loggerService = loggerService; - const httpsAgent = new https_1.default.Agent({ - keepAlive: true, - rejectUnauthorized: false - }); - this.axios = axios_1.default.create({ proxy: false, httpsAgent }); - (0, axios_2.requestRetry)({ axios: this.axios, logger: this.loggerService }); - (0, axios_better_stacktrace_1.default)(this.axios); - this.axios.interceptors.response.use((response) => response, (error) => { - (0, axios_2.interceptAxiosResponseError)(error, this.loggerService); - return Promise.reject(error); - }); - } - instance() { - return this.axios; - } -}; -exports.HttpService = HttpService = __decorate([ - (0, common_1.Injectable)(), - __metadata("design:paramtypes", [logger_1.ILoggerAdapter]) -], HttpService); -//# sourceMappingURL=service.js.map \ No newline at end of file diff --git a/dist/src/infra/logger/adapter.js b/dist/src/infra/logger/adapter.js deleted file mode 100644 index b6422ea4..00000000 --- a/dist/src/infra/logger/adapter.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ILoggerAdapter = void 0; -class ILoggerAdapter { -} -exports.ILoggerAdapter = ILoggerAdapter; -//# sourceMappingURL=adapter.js.map \ No newline at end of file diff --git a/dist/src/infra/logger/index.js b/dist/src/infra/logger/index.js deleted file mode 100644 index 64dda6a4..00000000 --- a/dist/src/infra/logger/index.js +++ /dev/null @@ -1,21 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -__exportStar(require("./adapter"), exports); -__exportStar(require("./module"), exports); -__exportStar(require("./service"), exports); -__exportStar(require("./types"), exports); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/dist/src/infra/logger/module.js b/dist/src/infra/logger/module.js deleted file mode 100644 index 0b12e485..00000000 --- a/dist/src/infra/logger/module.js +++ /dev/null @@ -1,33 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.LoggerModule = void 0; -const common_1 = require("@nestjs/common"); -const secrets_1 = require("../secrets"); -const adapter_1 = require("./adapter"); -const service_1 = require("./service"); -let LoggerModule = exports.LoggerModule = class LoggerModule { -}; -exports.LoggerModule = LoggerModule = __decorate([ - (0, common_1.Module)({ - imports: [secrets_1.SecretsModule], - providers: [ - { - provide: adapter_1.ILoggerAdapter, - useFactory: ({ LOGER_LEVEL }) => { - const logger = new service_1.LoggerService(); - logger.connect(LOGER_LEVEL); - return logger; - }, - inject: [secrets_1.ISecretsAdapter] - } - ], - exports: [adapter_1.ILoggerAdapter] - }) -], LoggerModule); -//# sourceMappingURL=module.js.map \ No newline at end of file diff --git a/dist/src/infra/logger/service.js b/dist/src/infra/logger/service.js deleted file mode 100644 index f5563fe6..00000000 --- a/dist/src/infra/logger/service.js +++ /dev/null @@ -1,193 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.LoggerService = void 0; -const common_1 = require("@nestjs/common"); -const colorette_1 = require("colorette"); -const convert_pino_request_to_curl_1 = require("convert-pino-request-to-curl"); -const pino_1 = require("pino"); -const pino_http_1 = require("pino-http"); -const pino_pretty_1 = __importDefault(require("pino-pretty")); -const uuid_1 = require("uuid"); -const date_1 = require("../../utils/date"); -const exception_1 = require("../../utils/exception"); -let LoggerService = exports.LoggerService = class LoggerService { - async connect(logLevel) { - const pinoLogger = (0, pino_1.pino)({ - useLevelLabels: true, - level: [logLevel, 'trace'].find(Boolean).toString() - }, (0, pino_1.multistream)([ - { - level: 'trace', - stream: (0, pino_pretty_1.default)(this.getPinoConfig()) - }, - { - level: 'info', - stream: pino_1.pino.transport({ - target: 'pino-mongodb', - options: { - uri: process.env.MONGO_URL, - collection: 'log-collection' - } - }) - } - ])); - this.logger = (0, pino_http_1.pinoHttp)(this.getPinoHttpConfig(pinoLogger)); - } - setApplication(app) { - this.app = app; - } - log(message) { - this.logger.logger.trace((0, colorette_1.green)(message)); - } - trace({ message, context, obj = {} }) { - Object.assign(obj, { context, createdAt: date_1.DateUtils.getISODateString() }); - this.logger.logger.trace([obj, (0, colorette_1.gray)(message)].find(Boolean), (0, colorette_1.gray)(message)); - } - info({ message, context, obj = {} }) { - Object.assign(obj, { context, createdAt: date_1.DateUtils.getISODateString() }); - this.logger.logger.info([obj, message].find(Boolean), message); - } - warn({ message, context, obj = {} }) { - Object.assign(obj, { context, createdAt: date_1.DateUtils.getISODateString() }); - this.logger.logger.warn([obj, message].find(Boolean), message); - } - error(error, message, context) { - const errorResponse = this.getErrorResponse(error); - const response = error instanceof exception_1.BaseException - ? Object.assign({ statusCode: error['statusCode'], message: error === null || error === void 0 ? void 0 : error.message }, error === null || error === void 0 ? void 0 : error.parameters) : errorResponse === null || errorResponse === void 0 ? void 0 : errorResponse.value(); - const type = { - Error: exception_1.BaseException.name - }[error === null || error === void 0 ? void 0 : error.name]; - const messageFind = [message, response === null || response === void 0 ? void 0 : response.message, error.message].find(Boolean); - this.logger.logger.error(Object.assign(Object.assign(Object.assign(Object.assign({}, response), { context: context, type: [type, error === null || error === void 0 ? void 0 : error.name].find(Boolean), traceid: this.getTraceId(error), createdAt: date_1.DateUtils.getISODateString(), application: this.app, stack: error.stack }), error === null || error === void 0 ? void 0 : error.parameters), { message: messageFind }), messageFind); - } - fatal(error, message, context) { - this.logger.logger.fatal({ - message: error.message || message, - context: context, - type: error.name, - traceid: this.getTraceId(error), - createdAt: date_1.DateUtils.getISODateString(), - application: this.app, - stack: error.stack - }, error.message || message); - process.exit(1); - } - getPinoConfig() { - return { - colorize: colorette_1.isColorSupported, - levelFirst: true, - ignore: 'pid,hostname', - quietReqLogger: true, - messageFormat: (log, messageKey) => { - const message = log[String(messageKey)]; - if (this.app) { - return `[${(0, colorette_1.blue)(this.app)}] ${message}`; - } - return message; - }, - customPrettifiers: { - time: () => { - return `[${date_1.DateUtils.getDateStringWithFormat()}]`; - } - } - }; - } - getPinoHttpConfig(pinoLogger) { - return { - logger: pinoLogger, - quietReqLogger: true, - customSuccessMessage: (req, res) => { - return `request ${res.statusCode >= 400 ? 'erro' : 'success'} with status code: ${res.statusCode}`; - }, - customErrorMessage: (req, res, error) => { - return `request ${error.name} with status code: ${res.statusCode} `; - }, - customAttributeKeys: { - req: 'request', - res: 'response', - err: 'error', - responseTime: 'timeTaken', - reqId: 'traceid' - }, - serializers: { - err: () => false, - req: (request) => { - return { - method: request.method, - curl: convert_pino_request_to_curl_1.PinoRequestConverter.getCurl(request) - }; - }, - res: pino_1.pino.stdSerializers.res - }, - customProps: (req) => { - var _a; - const context = req.context; - const traceid = [(_a = req === null || req === void 0 ? void 0 : req.headers) === null || _a === void 0 ? void 0 : _a.traceid, req.id].find(Boolean); - const path = `${req.protocol}://${req.headers.host}${req.url}`; - this.logger.logger.setBindings({ - traceid, - application: this.app, - context: context, - createdAt: date_1.DateUtils.getISODateString() - }); - return { - traceid, - application: this.app, - context: context, - path, - createdAt: date_1.DateUtils.getISODateString() - }; - }, - customLogLevel: (req, res, error) => { - if ([res.statusCode >= 400, error].some(Boolean)) { - return 'error'; - } - if ([res.statusCode >= 300, res.statusCode <= 400].every(Boolean)) { - return 'silent'; - } - return 'info'; - } - }; - } - getErrorResponse(error) { - const isFunction = typeof (error === null || error === void 0 ? void 0 : error.getResponse) === 'function'; - return [ - { - conditional: typeof error === 'string', - value: () => new common_1.InternalServerErrorException(error).getResponse() - }, - { - conditional: isFunction && typeof error.getResponse() === 'string', - value: () => new exception_1.BaseException(error.getResponse(), [error.getStatus(), error['status']].find(Boolean)).getResponse() - }, - { - conditional: isFunction && typeof error.getResponse() === 'object', - value: () => error === null || error === void 0 ? void 0 : error.getResponse() - }, - { - conditional: [(error === null || error === void 0 ? void 0 : error.name) === Error.name, (error === null || error === void 0 ? void 0 : error.name) == TypeError.name].some(Boolean), - value: () => new common_1.InternalServerErrorException(error.message).getResponse() - } - ].find((c) => c.conditional); - } - getTraceId(error) { - var _a; - if (typeof error === 'string') - return (0, uuid_1.v4)(); - return [error.traceid, (_a = this.logger.logger.bindings()) === null || _a === void 0 ? void 0 : _a.traceid].find(Boolean); - } -}; -exports.LoggerService = LoggerService = __decorate([ - (0, common_1.Injectable)({ scope: common_1.Scope.REQUEST }) -], LoggerService); -//# sourceMappingURL=service.js.map \ No newline at end of file diff --git a/dist/src/infra/logger/types.js b/dist/src/infra/logger/types.js deleted file mode 100644 index 11e638d1..00000000 --- a/dist/src/infra/logger/types.js +++ /dev/null @@ -1,3 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/dist/src/infra/module.js b/dist/src/infra/module.js deleted file mode 100644 index 3af4f59f..00000000 --- a/dist/src/infra/module.js +++ /dev/null @@ -1,33 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.InfraModule = void 0; -const common_1 = require("@nestjs/common"); -const memory_1 = require("./cache/memory"); -const redis_1 = require("./cache/redis"); -const mongo_1 = require("./database/mongo"); -const module_1 = require("./database/postgres/module"); -const http_1 = require("./http"); -const logger_1 = require("./logger"); -const secrets_1 = require("./secrets"); -let InfraModule = exports.InfraModule = class InfraModule { -}; -exports.InfraModule = InfraModule = __decorate([ - (0, common_1.Module)({ - imports: [ - secrets_1.SecretsModule, - mongo_1.MongoDatabaseModule, - module_1.PostgresDatabaseModule, - logger_1.LoggerModule, - http_1.HttpModule, - redis_1.RedisCacheModule, - memory_1.MemoryCacheModule - ] - }) -], InfraModule); -//# sourceMappingURL=module.js.map \ No newline at end of file diff --git a/dist/src/infra/repository/adapter.js b/dist/src/infra/repository/adapter.js deleted file mode 100644 index d9ce6b1f..00000000 --- a/dist/src/infra/repository/adapter.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IRepository = void 0; -class IRepository { -} -exports.IRepository = IRepository; -//# sourceMappingURL=adapter.js.map \ No newline at end of file diff --git a/dist/src/infra/repository/index.js b/dist/src/infra/repository/index.js deleted file mode 100644 index db2428ac..00000000 --- a/dist/src/infra/repository/index.js +++ /dev/null @@ -1,20 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -__exportStar(require("./adapter"), exports); -__exportStar(require("./mongo/repository"), exports); -__exportStar(require("./types"), exports); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/dist/src/infra/repository/mongo/repository.js b/dist/src/infra/repository/mongo/repository.js deleted file mode 100644 index 7a1d628b..00000000 --- a/dist/src/infra/repository/mongo/repository.js +++ /dev/null @@ -1,215 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MongoRepository = void 0; -const convert_mongoose_filter_decorator_1 = require("../../../utils/decorators/database/mongo/convert-mongoose-filter.decorator"); -const exception_1 = require("../../../utils/exception"); -const util_1 = require("../util"); -class MongoRepository { - constructor(model) { - this.model = model; - } - async insertMany(documents, saveOptions) { - await this.model.insertMany(documents, saveOptions); - } - async create(document, saveOptions) { - const createdEntity = new this.model(Object.assign(Object.assign({}, document), { _id: document.id })); - const savedResult = await createdEntity.save(saveOptions); - return { id: savedResult.id, created: !!savedResult.id }; - } - async createOrUpdate(document, options) { - if (!document['id']) { - throw new exception_1.ApiBadRequestException('id is required'); - } - const exists = await this.findById(document['id']); - if (!exists) { - const createdEntity = new this.model(Object.assign(Object.assign({}, document), { _id: document['id'] })); - const savedResult = await createdEntity.save(options); - return { id: savedResult.id, created: true, updated: false }; - } - await this.model.updateOne({ _id: exists.id }, document, options); - return { id: exists.id, created: false, updated: true }; - } - async find(filter, options) { - return (await this.model.find(filter, undefined, options)).map((u) => u.toObject({ virtuals: true })); - } - async findById(id) { - const model = await this.model.findById(id); - if (!model) - return null; - return model.toObject({ virtuals: true }); - } - async findOne(filter, options) { - const data = await this.model.findOne(filter, undefined, options); - if (!data) - return null; - return data.toObject({ virtuals: true }); - } - async findAll(filter) { - const modelList = await this.model.find(filter); - return (modelList || []).map((u) => u.toObject({ virtuals: true })); - } - async remove(filter) { - const { deletedCount } = await this.model.deleteOne(filter); - return { deletedCount, deleted: !!deletedCount }; - } - async updateOne(filter, updated, options) { - return await this.model.updateOne(filter, updated, options); - } - async findOneAndUpdate(filter, updated, options = {}) { - Object.assign(options, { new: true }); - const model = await this.model.findOneAndUpdate(filter, updated, options); - if (!model) { - return null; - } - return model.toObject({ virtuals: true }); - } - async updateMany(filter, updated, options) { - return await this.model.updateMany(filter, updated, options); - } - async findIn(input, options) { - const key = Object.keys(input)[0]; - const filter = { [key]: { $in: input[key === 'id' ? '_id' : key] }, deletedAt: null }; - return await this.model.find(filter, null, options); - } - async findByCommands(filterList, options) { - const mongoSearch = { - equal: { type: '$in', like: false }, - not_equal: { type: '$nin', like: false }, - not_contains: { type: '$nin', like: true }, - contains: { type: '$in', like: true } - }; - const searchList = {}; - (0, util_1.validateFindByCommandsFilter)(filterList); - for (const filter of filterList) { - const command = mongoSearch[filter.command]; - if (command.like) { - Object.assign(searchList, { - [filter.property]: { [command.type]: filter.value.map((value) => new RegExp(`^${value}`, 'i')) } - }); - continue; - } - Object.assign(searchList, { [filter.property]: { [command.type]: filter.value } }); - } - Object.assign(searchList, { deletedAt: null }); - const data = await this.model.find(searchList, null, options); - return data.map((d) => d.toObject({ virtuals: true })); - } - async findOneWithExcludeFields(filter, excludeProperties, options) { - const exclude = excludeProperties.map((e) => `-${e.toString()}`); - const data = await this.model.findOne(filter, undefined, options).select(exclude.join(' ')); - if (!data) - return null; - return data.toObject({ virtuals: true }); - } - async findAllWithExcludeFields(excludeProperties, filter, options) { - const exclude = excludeProperties.map((e) => `-${e.toString()}`); - filter = this.applyFilterWhenFilterParameterIsNotFirstOption(filter); - const data = await this.model.find(filter, undefined, options).select(exclude.join(' ')); - return data.map((d) => d.toObject({ virtuals: true })); - } - async findOneWithSelectFields(filter, includeProperties, options) { - const exclude = includeProperties.map((e) => `${e.toString()}`); - const data = await this.model.findOne(filter, undefined, options).select(exclude.join(' ')); - if (!data) - return null; - return data.toObject({ virtuals: true }); - } - async findAllWithSelectFields(includeProperties, filter, options) { - const exclude = includeProperties.map((e) => `${e.toString()}`); - filter = this.applyFilterWhenFilterParameterIsNotFirstOption(filter); - const data = await this.model.find(filter, undefined, options).select(exclude.join(' ')); - return data.map((d) => d.toObject({ virtuals: true })); - } - async seed(entityList) { - try { - const someHasNoID = entityList.some((e) => !e.id); - if (someHasNoID) { - throw new exception_1.ApiInternalServerException('seed id is required'); - } - for (const model of entityList) { - const data = await this.findById(model.id); - if (!data) { - await this.create(model); - } - } - } - catch (error) { - console.error('MongoRepository:Error', error); - } - } - applyFilterWhenFilterParameterIsNotFirstOption(filter) { - if (!filter) { - filter = { deletedAt: null }; - } - if (filter === null || filter === void 0 ? void 0 : filter.id) { - filter._id = filter.id; - delete filter.id; - } - return filter; - } -} -exports.MongoRepository = MongoRepository; -__decorate([ - (0, convert_mongoose_filter_decorator_1.ConvertMongoFilterToBaseRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Object]), - __metadata("design:returntype", Promise) -], MongoRepository.prototype, "find", null); -__decorate([ - (0, convert_mongoose_filter_decorator_1.ConvertMongoFilterToBaseRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Object]), - __metadata("design:returntype", Promise) -], MongoRepository.prototype, "findOne", null); -__decorate([ - (0, convert_mongoose_filter_decorator_1.ConvertMongoFilterToBaseRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], MongoRepository.prototype, "findAll", null); -__decorate([ - (0, convert_mongoose_filter_decorator_1.ConvertMongoFilterToBaseRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], MongoRepository.prototype, "remove", null); -__decorate([ - (0, convert_mongoose_filter_decorator_1.ConvertMongoFilterToBaseRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Object, Object]), - __metadata("design:returntype", Promise) -], MongoRepository.prototype, "updateOne", null); -__decorate([ - (0, convert_mongoose_filter_decorator_1.ConvertMongoFilterToBaseRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Object, Object]), - __metadata("design:returntype", Promise) -], MongoRepository.prototype, "findOneAndUpdate", null); -__decorate([ - (0, convert_mongoose_filter_decorator_1.ConvertMongoFilterToBaseRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Object, Object]), - __metadata("design:returntype", Promise) -], MongoRepository.prototype, "updateMany", null); -__decorate([ - (0, convert_mongoose_filter_decorator_1.ConvertMongoFilterToBaseRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Array, Object]), - __metadata("design:returntype", Promise) -], MongoRepository.prototype, "findOneWithExcludeFields", null); -__decorate([ - (0, convert_mongoose_filter_decorator_1.ConvertMongoFilterToBaseRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Array, Object]), - __metadata("design:returntype", Promise) -], MongoRepository.prototype, "findOneWithSelectFields", null); -//# sourceMappingURL=repository.js.map \ No newline at end of file diff --git a/dist/src/infra/repository/postgres/repository.js b/dist/src/infra/repository/postgres/repository.js deleted file mode 100644 index 1558c89c..00000000 --- a/dist/src/infra/repository/postgres/repository.js +++ /dev/null @@ -1,285 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SequelizeRepository = void 0; -const sequelize_1 = require("sequelize"); -const sequelize_2 = __importDefault(require("sequelize")); -const sequelize_3 = require("../../../utils/database/sequelize"); -const convert_sequelize_filter_decorator_1 = require("../../../utils/decorators/database/postgres/convert-sequelize-filter.decorator"); -const exception_1 = require("../../../utils/exception"); -const util_1 = require("../util"); -class SequelizeRepository { - constructor(Model) { - this.Model = Model; - } - async findByCommands(filterList, options) { - const { schema } = sequelize_3.DatabaseOptionsSchema.parse(options); - const postgresSearch = { - equal: { type: sequelize_1.Op.in, like: false }, - not_equal: { type: sequelize_1.Op.notIn, like: false }, - not_contains: { type: sequelize_1.Op.notILike, like: true }, - contains: { type: sequelize_1.Op.iLike, like: true } - }; - const searchList = {}; - (0, util_1.validateFindByCommandsFilter)(filterList); - for (const filter of filterList) { - const command = postgresSearch[filter.command]; - if (command.like) { - Object.assign(searchList, { - [filter.property]: { [command.type]: { [sequelize_1.Op.any]: filter.value.map((v) => `%${v}%`) } } - }); - continue; - } - Object.assign(searchList, { [filter.property]: { [command.type]: filter.value } }); - } - Object.assign(searchList, { deletedAt: null }); - const model = await this.Model.schema(schema).findAll({ - where: searchList - }); - return model.map((m) => m.toJSON()); - } - async createOrUpdate(document, options) { - const { schema, transaction } = sequelize_3.DatabaseOptionsSchema.parse(options); - if (!document['id']) { - throw new exception_1.ApiBadRequestException('id is required'); - } - const exists = await this.findById(document['id'], options); - if (!exists) { - const savedDoc = await this.Model.schema(schema).create(document, { - transaction - }); - const model = await savedDoc.save(); - return { id: model.id, created: true, updated: false }; - } - await this.Model.schema(schema).update(document, { - where: { id: exists.id }, - transaction - }); - return { id: exists.id, created: false, updated: true }; - } - async findAll(filter, options) { - const { schema } = sequelize_3.DatabaseOptionsSchema.parse(options); - const model = await this.Model.schema(schema).findAll({ - where: filter - }); - return model.map((m) => m.toJSON()); - } - async find(filter, options) { - const { schema } = sequelize_3.DatabaseOptionsSchema.parse(options); - const model = await this.Model.schema(schema).findAll({ - where: filter - }); - return model.map((m) => m.toJSON()); - } - async findIn(filter, options) { - const { schema } = sequelize_3.DatabaseOptionsSchema.parse(options); - const key = Object.keys(filter)[0]; - const model = await this.Model.schema(schema).findAll({ - where: { [key]: { [sequelize_2.default.Op.in]: filter[`${key}`] } } - }); - return model.map((m) => m.toJSON()); - } - async remove(filter, options) { - const { schema, transaction } = sequelize_3.DatabaseOptionsSchema.parse(options); - const model = await this.Model.schema(schema).destroy({ - where: filter, - transaction - }); - return { deletedCount: model, deleted: !!model }; - } - async findOne(filter, options) { - const { schema } = sequelize_3.DatabaseOptionsSchema.parse(options); - const model = await this.Model.schema(schema).findOne({ - where: filter - }); - if (!model) - return; - return model.toJSON(); - } - async findOneAndUpdate(filter, updated, options) { - const { schema, transaction } = sequelize_3.DatabaseOptionsSchema.parse(options); - const [rowsEffected] = await this.Model.schema(schema).update(updated, { - where: filter, - transaction - }); - if (!rowsEffected) { - return null; - } - const model = await this.Model.schema(schema).findOne({ - where: filter - }); - return model.toJSON(); - } - async updateOne(filter, updated, options) { - const { schema, transaction } = sequelize_3.DatabaseOptionsSchema.parse(options); - const model = await this.Model.schema(schema).update(updated, { - where: filter, - transaction - }); - return { - modifiedCount: model.length, - matchedCount: model.length, - acknowledged: null, - upsertedCount: model.length, - upsertedId: null - }; - } - async updateMany(filter, updated, options) { - const { schema, transaction } = sequelize_3.DatabaseOptionsSchema.parse(options); - const model = await this.Model.schema(schema).update(updated, { - where: filter, - transaction - }); - return { - modifiedCount: model.length, - matchedCount: model.length, - acknowledged: null, - upsertedCount: model.length, - upsertedId: null - }; - } - async seed(entityList, options) { - const { schema } = sequelize_3.DatabaseOptionsSchema.parse(options); - for (const model of entityList) { - const data = await this.findById(model.id, { schema }); - if (!data) { - await this.create(model, { schema: schema }); - } - } - } - async create(document, saveOptions) { - const { schema, transaction } = sequelize_3.DatabaseOptionsSchema.parse(saveOptions); - const savedDoc = await this.Model.schema(schema).create(document, { - transaction - }); - const model = await savedDoc.save(); - return { id: model.id, created: !!model.id }; - } - async insertMany(documents, saveOptions) { - const { schema, transaction } = sequelize_3.DatabaseOptionsSchema.parse(saveOptions); - await this.Model.schema(schema).bulkCreate(documents, { - transaction - }); - } - async findOneWithExcludeFields(filter, excludeProperties, options) { - const { schema } = sequelize_3.DatabaseOptionsSchema.parse(options); - const exclude = excludeProperties.map((e) => `${e.toString()}`); - const model = await this.Model.schema(schema).findOne({ - where: filter, - attributes: { exclude } - }); - if (!model) - return; - return model.toJSON(); - } - async findAllWithExcludeFields(includeProperties, filter, options) { - const { schema } = sequelize_3.DatabaseOptionsSchema.parse(options); - const exclude = includeProperties.map((e) => `${e.toString()}`); - if (!filter) { - filter = { deletedAt: null }; - } - const model = await this.Model.schema(schema).findAll({ - where: filter, - attributes: { exclude } - }); - return model.map((m) => m.toJSON()); - } - async findOneWithSelectFields(filter, includeProperties, options) { - const { schema } = sequelize_3.DatabaseOptionsSchema.parse(options); - const include = includeProperties.map((e) => `${e.toString()}`); - const model = await this.Model.schema(schema).findOne({ - where: filter, - attributes: include - }); - if (!model) - return; - return model.toJSON(); - } - async findAllWithSelectFields(includeProperties, filter, options) { - const { schema } = sequelize_3.DatabaseOptionsSchema.parse(options); - const include = includeProperties.map((e) => `${e.toString()}`); - if (!filter) { - filter = { deletedAt: null }; - } - const model = await this.Model.schema(schema).findAll({ - where: filter, - attributes: include - }); - return model.map((m) => m.toJSON()); - } - async findById(id, options) { - const { schema } = sequelize_3.DatabaseOptionsSchema.parse(options); - const model = await this.Model.schema(schema).findOne({ where: { id, deletedAt: null } }); - if (!model) - return; - return model.toJSON(); - } -} -exports.SequelizeRepository = SequelizeRepository; -__decorate([ - (0, convert_sequelize_filter_decorator_1.ConvertSequelizeFilterToRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [typeof (_a = typeof TQuery !== "undefined" && TQuery) === "function" ? _a : Object, typeof (_b = typeof TOpt !== "undefined" && TOpt) === "function" ? _b : Object]), - __metadata("design:returntype", Promise) -], SequelizeRepository.prototype, "findAll", null); -__decorate([ - (0, convert_sequelize_filter_decorator_1.ConvertSequelizeFilterToRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [typeof (_c = typeof TQuery !== "undefined" && TQuery) === "function" ? _c : Object, typeof (_d = typeof TOptions !== "undefined" && TOptions) === "function" ? _d : Object]), - __metadata("design:returntype", Promise) -], SequelizeRepository.prototype, "find", null); -__decorate([ - (0, convert_sequelize_filter_decorator_1.ConvertSequelizeFilterToRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [typeof (_e = typeof TQuery !== "undefined" && TQuery) === "function" ? _e : Object, typeof (_f = typeof TOpt !== "undefined" && TOpt) === "function" ? _f : Object]), - __metadata("design:returntype", Promise) -], SequelizeRepository.prototype, "remove", null); -__decorate([ - (0, convert_sequelize_filter_decorator_1.ConvertSequelizeFilterToRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [typeof (_g = typeof TQuery !== "undefined" && TQuery) === "function" ? _g : Object, typeof (_h = typeof TOptions !== "undefined" && TOptions) === "function" ? _h : Object]), - __metadata("design:returntype", Promise) -], SequelizeRepository.prototype, "findOne", null); -__decorate([ - (0, convert_sequelize_filter_decorator_1.ConvertSequelizeFilterToRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [typeof (_j = typeof TQuery !== "undefined" && TQuery) === "function" ? _j : Object, typeof (_k = typeof TUpdate !== "undefined" && TUpdate) === "function" ? _k : Object, typeof (_l = typeof TOptions !== "undefined" && TOptions) === "function" ? _l : Object]), - __metadata("design:returntype", Promise) -], SequelizeRepository.prototype, "findOneAndUpdate", null); -__decorate([ - (0, convert_sequelize_filter_decorator_1.ConvertSequelizeFilterToRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [typeof (_m = typeof TQuery !== "undefined" && TQuery) === "function" ? _m : Object, typeof (_o = typeof TUpdate !== "undefined" && TUpdate) === "function" ? _o : Object, typeof (_p = typeof TOptions !== "undefined" && TOptions) === "function" ? _p : Object]), - __metadata("design:returntype", Promise) -], SequelizeRepository.prototype, "updateOne", null); -__decorate([ - (0, convert_sequelize_filter_decorator_1.ConvertSequelizeFilterToRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [typeof (_q = typeof TQuery !== "undefined" && TQuery) === "function" ? _q : Object, typeof (_r = typeof TUpdate !== "undefined" && TUpdate) === "function" ? _r : Object, typeof (_s = typeof TOptions !== "undefined" && TOptions) === "function" ? _s : Object]), - __metadata("design:returntype", Promise) -], SequelizeRepository.prototype, "updateMany", null); -__decorate([ - (0, convert_sequelize_filter_decorator_1.ConvertSequelizeFilterToRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [typeof (_t = typeof TQuery !== "undefined" && TQuery) === "function" ? _t : Object, Array, typeof (_u = typeof TOptions !== "undefined" && TOptions) === "function" ? _u : Object]), - __metadata("design:returntype", Promise) -], SequelizeRepository.prototype, "findOneWithExcludeFields", null); -__decorate([ - (0, convert_sequelize_filter_decorator_1.ConvertSequelizeFilterToRepository)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [typeof (_v = typeof TQuery !== "undefined" && TQuery) === "function" ? _v : Object, Array, typeof (_w = typeof TOptions !== "undefined" && TOptions) === "function" ? _w : Object]), - __metadata("design:returntype", Promise) -], SequelizeRepository.prototype, "findOneWithSelectFields", null); -//# sourceMappingURL=repository.js.map \ No newline at end of file diff --git a/dist/src/infra/repository/types.js b/dist/src/infra/repository/types.js deleted file mode 100644 index bbcf1522..00000000 --- a/dist/src/infra/repository/types.js +++ /dev/null @@ -1,11 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.DatabaseOperationEnum = void 0; -var DatabaseOperationEnum; -(function (DatabaseOperationEnum) { - DatabaseOperationEnum["EQUAL"] = "equal"; - DatabaseOperationEnum["NOT_EQUAL"] = "not_equal"; - DatabaseOperationEnum["NOT_CONTAINS"] = "not_contains"; - DatabaseOperationEnum["CONTAINS"] = "contains"; -})(DatabaseOperationEnum || (exports.DatabaseOperationEnum = DatabaseOperationEnum = {})); -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/dist/src/infra/repository/util.js b/dist/src/infra/repository/util.js deleted file mode 100644 index 484d5121..00000000 --- a/dist/src/infra/repository/util.js +++ /dev/null @@ -1,23 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.validateFindByCommandsFilter = void 0; -const collection_1 = require("../../utils/collection"); -const exception_1 = require("../../utils/exception"); -const types_1 = require("./types"); -const validateFindByCommandsFilter = (filterList) => { - const groupList = collection_1.CollectionUtil.groupBy(filterList, 'property'); - for (const key in groupList) { - const commands = groupList[`${key}`].map((g) => g.command); - const isLikeNotAllowedOperation = commands.filter((g) => g === types_1.DatabaseOperationEnum.CONTAINS || g === types_1.DatabaseOperationEnum.NOT_CONTAINS); - const NOT_ALLOWED_COMBINATION = 2; - if (isLikeNotAllowedOperation.length === NOT_ALLOWED_COMBINATION) { - throw new exception_1.ApiBadRequestException(`it is not possible to filter: '${key}' with the commands '${commands.join(', ')}'`); - } - const isEqualNotAllowedOperation = commands.filter((g) => g === types_1.DatabaseOperationEnum.EQUAL || g === types_1.DatabaseOperationEnum.NOT_EQUAL); - if (isEqualNotAllowedOperation.length === NOT_ALLOWED_COMBINATION) { - throw new exception_1.ApiBadRequestException(`it is not possible to filter: '${key}' with the commands '${commands.join(', ')}'`); - } - } -}; -exports.validateFindByCommandsFilter = validateFindByCommandsFilter; -//# sourceMappingURL=util.js.map \ No newline at end of file diff --git a/dist/src/infra/secrets/adapter.js b/dist/src/infra/secrets/adapter.js deleted file mode 100644 index dfc35da0..00000000 --- a/dist/src/infra/secrets/adapter.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ISecretsAdapter = void 0; -class ISecretsAdapter { -} -exports.ISecretsAdapter = ISecretsAdapter; -//# sourceMappingURL=adapter.js.map \ No newline at end of file diff --git a/dist/src/infra/secrets/index.js b/dist/src/infra/secrets/index.js deleted file mode 100644 index d70d8dd4..00000000 --- a/dist/src/infra/secrets/index.js +++ /dev/null @@ -1,20 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -__exportStar(require("./adapter"), exports); -__exportStar(require("./module"), exports); -__exportStar(require("./service"), exports); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/dist/src/infra/secrets/module.js b/dist/src/infra/secrets/module.js deleted file mode 100644 index fbb43236..00000000 --- a/dist/src/infra/secrets/module.js +++ /dev/null @@ -1,32 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SecretsModule = void 0; -const common_1 = require("@nestjs/common"); -const config_1 = require("@nestjs/config"); -const adapter_1 = require("./adapter"); -const service_1 = require("./service"); -let SecretsModule = exports.SecretsModule = class SecretsModule { -}; -exports.SecretsModule = SecretsModule = __decorate([ - (0, common_1.Module)({ - imports: [ - config_1.ConfigModule.forRoot({ - envFilePath: ['.env'] - }) - ], - providers: [ - { - provide: adapter_1.ISecretsAdapter, - useClass: service_1.SecretsService - } - ], - exports: [adapter_1.ISecretsAdapter] - }) -], SecretsModule); -//# sourceMappingURL=module.js.map \ No newline at end of file diff --git a/dist/src/infra/secrets/service.js b/dist/src/infra/secrets/service.js deleted file mode 100644 index 502001dc..00000000 --- a/dist/src/infra/secrets/service.js +++ /dev/null @@ -1,36 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SecretsService = void 0; -const common_1 = require("@nestjs/common"); -const config_1 = require("@nestjs/config"); -let SecretsService = exports.SecretsService = class SecretsService { - constructor(config) { - this.config = config; - this.ENV = this.config.get('ENV'); - this.PORT = this.config.get('PORT'); - this.HOST = this.config.get('HOST'); - this.LOGER_LEVEL = this.config.get('LOGER_LEVEL'); - this.REDIS_URL = this.config.get('REDIS_URL'); - this.POSTGRES_URL = `postgresql://${this.config.get('POSTGRES_USER')}:${this.config.get('POSTGRES_PASSWORD')}@${this.config.get('POSTGRES_HOST')}:${this.config.get('POSTGRES_PORT')}/${this.config.get('POSTGRES_DATABASE')}`; - this.MONGO_URL = this.config.get('MONGO_URL'); - this.ZIPKIN_URL = this.config.get('ZIPKIN_URL'); - this.PROMETHUES_URL = this.config.get('PROMETHUES_URL'); - this.TOKEN_EXPIRATION = this.config.get('TOKEN_EXPIRATION'); - this.JWT_SECRET_KEY = this.config.get('JWT_SECRET_KEY'); - this.RATE_LIMIT_BY_USER = this.config.get('RATE_LIMIT_BY_USER'); - } -}; -exports.SecretsService = SecretsService = __decorate([ - (0, common_1.Injectable)(), - __metadata("design:paramtypes", [config_1.ConfigService]) -], SecretsService); -//# sourceMappingURL=service.js.map \ No newline at end of file diff --git a/dist/src/libs/auth/adapter.js b/dist/src/libs/auth/adapter.js deleted file mode 100644 index 7c96bea0..00000000 --- a/dist/src/libs/auth/adapter.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ITokenAdapter = void 0; -class ITokenAdapter { -} -exports.ITokenAdapter = ITokenAdapter; -//# sourceMappingURL=adapter.js.map \ No newline at end of file diff --git a/dist/src/libs/auth/index.js b/dist/src/libs/auth/index.js deleted file mode 100644 index d70d8dd4..00000000 --- a/dist/src/libs/auth/index.js +++ /dev/null @@ -1,20 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -__exportStar(require("./adapter"), exports); -__exportStar(require("./module"), exports); -__exportStar(require("./service"), exports); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/dist/src/libs/auth/module.js b/dist/src/libs/auth/module.js deleted file mode 100644 index 8f60185e..00000000 --- a/dist/src/libs/auth/module.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.TokenModule = void 0; -const common_1 = require("@nestjs/common"); -const secrets_1 = require("../../infra/secrets"); -const adapter_1 = require("./adapter"); -const service_1 = require("./service"); -let TokenModule = exports.TokenModule = class TokenModule { -}; -exports.TokenModule = TokenModule = __decorate([ - (0, common_1.Module)({ - imports: [secrets_1.SecretsModule], - providers: [ - { - provide: adapter_1.ITokenAdapter, - useFactory: (secret) => new service_1.TokenService(secret), - inject: [secrets_1.ISecretsAdapter] - } - ], - exports: [adapter_1.ITokenAdapter] - }) -], TokenModule); -//# sourceMappingURL=module.js.map \ No newline at end of file diff --git a/dist/src/libs/auth/service.js b/dist/src/libs/auth/service.js deleted file mode 100644 index 5e858bca..00000000 --- a/dist/src/libs/auth/service.js +++ /dev/null @@ -1,53 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.TokenService = void 0; -const common_1 = require("@nestjs/common"); -const jsonwebtoken_1 = __importDefault(require("jsonwebtoken")); -const user_1 = require("../../core/user/entity/user"); -const secrets_1 = require("../../infra/secrets"); -const exception_1 = require("../../utils/exception"); -const Schema = user_1.UserEntitySchema.pick({ - login: true, - password: true, - roles: true -}); -let TokenService = exports.TokenService = class TokenService { - constructor(secret) { - this.secret = secret; - } - sign(model, options) { - const token = jsonwebtoken_1.default.sign(model, this.secret.JWT_SECRET_KEY, options || { - expiresIn: this.secret.TOKEN_EXPIRATION - }); - return { token }; - } - async verify(token) { - return new Promise((res, rej) => { - jsonwebtoken_1.default.verify(token, this.secret.JWT_SECRET_KEY, (error, decoded) => { - if (error) - rej(new exception_1.ApiUnauthorizedException(error.message)); - res(decoded); - }); - }); - } - decode(token, complete) { - return jsonwebtoken_1.default.decode(token, { complete }); - } -}; -exports.TokenService = TokenService = __decorate([ - (0, common_1.Injectable)(), - __metadata("design:paramtypes", [secrets_1.ISecretsAdapter]) -], TokenService); -//# sourceMappingURL=service.js.map \ No newline at end of file diff --git a/dist/src/main.js b/dist/src/main.js deleted file mode 100644 index 37b58c6b..00000000 --- a/dist/src/main.js +++ /dev/null @@ -1,81 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -require("./utils/tracing"); -const common_1 = require("@nestjs/common"); -const core_1 = require("@nestjs/core"); -const swagger_1 = require("@nestjs/swagger"); -const body_parser_1 = __importDefault(require("body-parser")); -const colorette_1 = require("colorette"); -const express_rate_limit_1 = require("express-rate-limit"); -const helmet_1 = __importDefault(require("helmet")); -const package_json_1 = require("../package.json"); -const app_module_1 = require("./app.module"); -const user_1 = require("./core/user/repository/user"); -const create_user_admin_1 = require("./infra/database/mongo/seed/create-user-admin"); -const adapter_1 = require("./infra/logger/adapter"); -const secrets_1 = require("./infra/secrets"); -const exception_1 = require("./utils/exception"); -const http_exception_filter_1 = require("./utils/filters/http-exception.filter"); -const http_exception_interceptor_1 = require("./utils/interceptors/http-exception.interceptor"); -const http_logger_interceptor_1 = require("./utils/interceptors/http-logger.interceptor"); -const metrics_interceptor_1 = require("./utils/interceptors/metrics.interceptor"); -const tracing_interceptor_1 = require("./utils/interceptors/tracing.interceptor"); -async function bootstrap() { - const app = await core_1.NestFactory.create(app_module_1.AppModule, { - bufferLogs: true, - cors: true - }); - const loggerService = app.get(adapter_1.ILoggerAdapter); - loggerService.setApplication(package_json_1.name); - app.useLogger(loggerService); - app.useGlobalFilters(new http_exception_filter_1.AppExceptionFilter(loggerService)); - app.useGlobalInterceptors(new http_exception_interceptor_1.ExceptionInterceptor(loggerService), new http_logger_interceptor_1.HttpLoggerInterceptor(), new tracing_interceptor_1.TracingInterceptor(loggerService), new metrics_interceptor_1.MetricsInterceptor()); - app.setGlobalPrefix('api', { - exclude: [ - { path: 'health', method: common_1.RequestMethod.GET }, - { path: '/', method: common_1.RequestMethod.GET } - ] - }); - app.use((0, helmet_1.default)()); - const { ENV, MONGO_URL, POSTGRES_URL, PORT, HOST, ZIPKIN_URL, PROMETHUES_URL, RATE_LIMIT_BY_USER } = app.get(secrets_1.ISecretsAdapter); - const limiter = (0, express_rate_limit_1.rateLimit)({ - windowMs: 15 * 60 * 1000, - limit: RATE_LIMIT_BY_USER, - standardHeaders: 'draft-7', - legacyHeaders: false - }); - app.use(limiter); - app.use(body_parser_1.default.urlencoded()); - app.enableVersioning({ type: common_1.VersioningType.URI }); - process.on('uncaughtException', (error) => { - if (!(error instanceof exception_1.BaseException)) { - const customError = new exception_1.ApiInternalServerException(error === null || error === void 0 ? void 0 : error.message); - customError.stack = error.stack; - loggerService.fatal(customError); - } - }); - const config = new swagger_1.DocumentBuilder() - .setTitle(package_json_1.name) - .setDescription(package_json_1.description) - .addBearerAuth() - .setVersion(package_json_1.version) - .addServer(HOST) - .addTag('Swagger Documentation') - .build(); - const document = swagger_1.SwaggerModule.createDocument(app, config); - swagger_1.SwaggerModule.setup('docs', app, document); - loggerService.log(`🟢 ${package_json_1.name} listening at ${(0, colorette_1.bold)(PORT)} on ${(0, colorette_1.bold)(ENV === null || ENV === void 0 ? void 0 : ENV.toUpperCase())} 🟢\n`); - loggerService.log(`🟢 Swagger listening at ${(0, colorette_1.bold)(`${HOST}/docs`)} 🟢\n`); - await app.listen(PORT); - loggerService.log(`🔵 Postgres listening at ${(0, colorette_1.bold)(POSTGRES_URL)}`); - loggerService.log(`🔵 Mongo listening at ${(0, colorette_1.bold)(MONGO_URL)}\n`); - loggerService.log(`⚪ Zipkin[${(0, colorette_1.bold)('Tracing')}] listening at ${(0, colorette_1.bold)(ZIPKIN_URL)}`); - loggerService.log(`⚪ Promethues[${(0, colorette_1.bold)('Metrics')}] listening at ${(0, colorette_1.bold)(PROMETHUES_URL)}`); - const userRepository = app.get(user_1.IUserRepository); - await userRepository.seed([create_user_admin_1.UserAdminSeed]); -} -bootstrap(); -//# sourceMappingURL=main.js.map \ No newline at end of file diff --git a/dist/src/modules/cats/adapter.js b/dist/src/modules/cats/adapter.js deleted file mode 100644 index bf69dc07..00000000 --- a/dist/src/modules/cats/adapter.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ICatsDeleteAdapter = exports.ICatsListAdapter = exports.ICatsGetByIDAdapter = exports.ICatsUpdateAdapter = exports.ICatsCreateAdapter = void 0; -class ICatsCreateAdapter { -} -exports.ICatsCreateAdapter = ICatsCreateAdapter; -class ICatsUpdateAdapter { -} -exports.ICatsUpdateAdapter = ICatsUpdateAdapter; -class ICatsGetByIDAdapter { -} -exports.ICatsGetByIDAdapter = ICatsGetByIDAdapter; -class ICatsListAdapter { -} -exports.ICatsListAdapter = ICatsListAdapter; -class ICatsDeleteAdapter { -} -exports.ICatsDeleteAdapter = ICatsDeleteAdapter; -//# sourceMappingURL=adapter.js.map \ No newline at end of file diff --git a/dist/src/modules/cats/controller.js b/dist/src/modules/cats/controller.js deleted file mode 100644 index e6cc96bd..00000000 --- a/dist/src/modules/cats/controller.js +++ /dev/null @@ -1,121 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -var __param = (this && this.__param) || function (paramIndex, decorator) { - return function (target, key) { decorator(target, key, paramIndex); } -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CatsController = void 0; -const common_1 = require("@nestjs/common"); -const swagger_1 = require("@nestjs/swagger"); -const user_1 = require("../../core/user/entity/user"); -const role_decorator_1 = require("../../utils/decorators/role.decorator"); -const search_1 = require("../../utils/search"); -const sort_1 = require("../../utils/sort"); -const adapter_1 = require("./adapter"); -const swagger_2 = require("./swagger"); -let CatsController = exports.CatsController = class CatsController { - constructor(catsCreate, catsUpdate, catsGetByID, catsList, catsDelete) { - this.catsCreate = catsCreate; - this.catsUpdate = catsUpdate; - this.catsGetByID = catsGetByID; - this.catsList = catsList; - this.catsDelete = catsDelete; - } - async create({ body, user, tracing }) { - return await this.catsCreate.execute(body, { user, tracing }); - } - async update({ body, user, tracing }) { - return await this.catsUpdate.execute(body, { user, tracing }); - } - async getById({ params }) { - return await this.catsGetByID.execute(params); - } - async list({ query }) { - const input = { - sort: sort_1.SortHttpSchema.parse(query.sort), - search: search_1.SearchHttpSchema.parse(query.search), - limit: Number(query.limit), - page: Number(query.page) - }; - return await this.catsList.execute(input); - } - async delete({ params, user, tracing }) { - return await this.catsDelete.execute(params, { user, tracing }); - } -}; -__decorate([ - (0, common_1.Post)(), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.create[200]), - (0, swagger_1.ApiBody)(swagger_2.SwagggerRequest.createBody), - (0, common_1.Version)('1'), - __param(0, (0, common_1.Req)()), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], CatsController.prototype, "create", null); -__decorate([ - (0, common_1.Put)(), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.update[200]), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.update[404]), - (0, swagger_1.ApiBody)(swagger_2.SwagggerRequest.updateBody), - (0, common_1.Version)('1'), - __param(0, (0, common_1.Req)()), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], CatsController.prototype, "update", null); -__decorate([ - (0, common_1.Get)('/:id'), - (0, swagger_1.ApiParam)({ name: 'id', required: true }), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.getByID[200]), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.getByID[404]), - (0, common_1.Version)('1'), - __param(0, (0, common_1.Req)()), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], CatsController.prototype, "getById", null); -__decorate([ - (0, common_1.Get)(), - (0, swagger_1.ApiQuery)(swagger_2.SwagggerRequest.listQuery.pagination.limit), - (0, swagger_1.ApiQuery)(swagger_2.SwagggerRequest.listQuery.pagination.page), - (0, swagger_1.ApiQuery)(swagger_2.SwagggerRequest.listQuery.sort), - (0, swagger_1.ApiQuery)(swagger_2.SwagggerRequest.listQuery.search), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.list[200]), - (0, common_1.Version)('1'), - __param(0, (0, common_1.Req)()), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], CatsController.prototype, "list", null); -__decorate([ - (0, common_1.Delete)('/:id'), - (0, swagger_1.ApiParam)({ name: 'id', required: true }), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.delete[200]), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.delete[404]), - (0, common_1.Version)('1'), - __param(0, (0, common_1.Req)()), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], CatsController.prototype, "delete", null); -exports.CatsController = CatsController = __decorate([ - (0, common_1.Controller)('cats'), - (0, swagger_1.ApiTags)('cats'), - (0, swagger_1.ApiBearerAuth)(), - (0, role_decorator_1.Roles)(user_1.UserRole.USER), - __metadata("design:paramtypes", [adapter_1.ICatsCreateAdapter, - adapter_1.ICatsUpdateAdapter, - adapter_1.ICatsGetByIDAdapter, - adapter_1.ICatsListAdapter, - adapter_1.ICatsDeleteAdapter]) -], CatsController); -//# sourceMappingURL=controller.js.map \ No newline at end of file diff --git a/dist/src/modules/cats/module.js b/dist/src/modules/cats/module.js deleted file mode 100644 index 8084f4b1..00000000 --- a/dist/src/modules/cats/module.js +++ /dev/null @@ -1,74 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CatsModule = void 0; -const common_1 = require("@nestjs/common"); -const cats_1 = require("../../core/cats/repository/cats"); -const cats_create_1 = require("../../core/cats/use-cases/cats-create"); -const cats_delete_1 = require("../../core/cats/use-cases/cats-delete"); -const cats_getByID_1 = require("../../core/cats/use-cases/cats-getByID"); -const cats_list_1 = require("../../core/cats/use-cases/cats-list"); -const cats_update_1 = require("../../core/cats/use-cases/cats-update"); -const redis_1 = require("../../infra/cache/redis"); -const database_1 = require("../../infra/database"); -const module_1 = require("../../infra/database/postgres/module"); -const cats_2 = require("../../infra/database/postgres/schemas/cats"); -const logger_1 = require("../../infra/logger"); -const auth_1 = require("../../libs/auth"); -const is_logged_middleware_1 = require("../../utils/middlewares/is-logged.middleware"); -const adapter_1 = require("./adapter"); -const controller_1 = require("./controller"); -const repository_1 = require("./repository"); -let CatsModule = exports.CatsModule = class CatsModule { - configure(consumer) { - consumer.apply(is_logged_middleware_1.IsLoggedMiddleware).forRoutes(controller_1.CatsController); - } -}; -exports.CatsModule = CatsModule = __decorate([ - (0, common_1.Module)({ - imports: [auth_1.TokenModule, logger_1.LoggerModule, redis_1.RedisCacheModule, module_1.PostgresDatabaseModule], - controllers: [controller_1.CatsController], - providers: [ - { - provide: cats_1.ICatsRepository, - useFactory: (database) => { - const repossitory = database.getDatabase().model(cats_2.CatsSchema); - return new repository_1.CatsRepository(repossitory); - }, - inject: [database_1.IDataBaseAdapter] - }, - { - provide: adapter_1.ICatsCreateAdapter, - useFactory: (repository) => new cats_create_1.CatsCreateUsecase(repository), - inject: [cats_1.ICatsRepository] - }, - { - provide: adapter_1.ICatsUpdateAdapter, - useFactory: (logger, repository) => new cats_update_1.CatsUpdateUsecase(repository, logger), - inject: [logger_1.ILoggerAdapter, cats_1.ICatsRepository] - }, - { - provide: adapter_1.ICatsGetByIDAdapter, - useFactory: (repository) => new cats_getByID_1.CatsGetByIdUsecase(repository), - inject: [cats_1.ICatsRepository] - }, - { - provide: adapter_1.ICatsListAdapter, - useFactory: (repository) => new cats_list_1.CatsListUsecase(repository), - inject: [cats_1.ICatsRepository] - }, - { - provide: adapter_1.ICatsDeleteAdapter, - useFactory: (repository) => new cats_delete_1.CatsDeleteUsecase(repository), - inject: [cats_1.ICatsRepository] - } - ], - exports: [] - }) -], CatsModule); -//# sourceMappingURL=module.js.map \ No newline at end of file diff --git a/dist/src/modules/cats/repository.js b/dist/src/modules/cats/repository.js deleted file mode 100644 index 2b5e85eb..00000000 --- a/dist/src/modules/cats/repository.js +++ /dev/null @@ -1,50 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CatsRepository = void 0; -const common_1 = require("@nestjs/common"); -const cats_1 = require("../../core/cats/entity/cats"); -const repository_1 = require("../../infra/repository/postgres/repository"); -const sequelize_1 = require("../../utils/database/sequelize"); -const convert_paginate_input_to_sequelize_filter_decorator_1 = require("../../utils/decorators/database/postgres/convert-paginate-input-to-sequelize-filter.decorator"); -const validate_database_sort_allowed_decorator_1 = require("../../utils/decorators/database/validate-database-sort-allowed.decorator"); -const types_1 = require("../../utils/decorators/types"); -let CatsRepository = exports.CatsRepository = class CatsRepository extends repository_1.SequelizeRepository { - constructor(repository) { - super(repository); - this.repository = repository; - } - async startSession() { - const transaction = await this.repository.sequelize.transaction(); - return transaction; - } - async paginate(input, options) { - const { schema } = sequelize_1.DatabaseOptionsSchema.parse(options); - const list = await this.repository.schema(schema).findAndCountAll(input); - return { docs: list.rows.map((r) => new cats_1.CatsEntity(r)), limit: input.limit, page: input.page, total: list.count }; - } -}; -__decorate([ - (0, validate_database_sort_allowed_decorator_1.ValidateDatabaseSortAllowed)('createdAt', 'breed'), - (0, convert_paginate_input_to_sequelize_filter_decorator_1.ConvertPaginateInputToSequelizeFilter)([ - { name: 'name', type: types_1.SearchTypeEnum.like }, - { name: 'breed', type: types_1.SearchTypeEnum.like }, - { name: 'age', type: types_1.SearchTypeEnum.equal } - ]), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, Object]), - __metadata("design:returntype", Promise) -], CatsRepository.prototype, "paginate", null); -exports.CatsRepository = CatsRepository = __decorate([ - (0, common_1.Injectable)(), - __metadata("design:paramtypes", [Object]) -], CatsRepository); -//# sourceMappingURL=repository.js.map \ No newline at end of file diff --git a/dist/src/modules/cats/swagger.js b/dist/src/modules/cats/swagger.js deleted file mode 100644 index ff833af0..00000000 --- a/dist/src/modules/cats/swagger.js +++ /dev/null @@ -1,82 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SwagggerRequest = exports.SwagggerResponse = void 0; -const request_1 = require("../../utils/docs/data/cats/request"); -const response_1 = require("../../utils/docs/data/cats/response"); -const swagger_1 = require("../../utils/docs/swagger"); -exports.SwagggerResponse = { - create: { - 200: swagger_1.Swagger.defaultResponseJSON({ - status: 200, - json: response_1.CatsResponse.create, - description: 'cat created.' - }) - }, - update: { - 200: swagger_1.Swagger.defaultResponseJSON({ - status: 200, - json: response_1.CatsResponse.update, - description: 'cat updated.' - }), - 404: swagger_1.Swagger.defaultResponseError({ - status: 404, - route: 'api/cats', - message: 'catNotFound', - description: 'cat not found.' - }) - }, - getByID: { - 200: swagger_1.Swagger.defaultResponseJSON({ - status: 200, - json: response_1.CatsResponse.getByID, - description: 'cat found.' - }), - 404: swagger_1.Swagger.defaultResponseError({ - status: 404, - route: 'api/cats/:id', - message: 'catNotFound', - description: 'cat not found.' - }) - }, - delete: { - 200: swagger_1.Swagger.defaultResponseJSON({ - status: 200, - json: response_1.CatsResponse.delete, - description: 'cat found.' - }), - 404: swagger_1.Swagger.defaultResponseError({ - status: 404, - route: 'api/cats/:id', - message: 'catNotFound', - description: 'cat not found.' - }) - }, - list: { - 200: swagger_1.Swagger.defaultResponseJSON({ - status: 200, - json: response_1.CatsResponse.list, - description: 'cat created.' - }) - } -}; -exports.SwagggerRequest = { - createBody: swagger_1.Swagger.defaultRequestJSON(request_1.CatsRequest.create), - updateBody: swagger_1.Swagger.defaultRequestJSON(request_1.CatsRequest.update), - listQuery: { - pagination: { - limit: swagger_1.Swagger.defaultApiQueryOptions({ example: 10, name: 'limit', required: false }), - page: swagger_1.Swagger.defaultApiQueryOptions({ example: 1, name: 'page', required: false }) - }, - sort: swagger_1.Swagger.defaultApiQueryOptions({ - name: 'sort', - required: false, - description: `<b>createdAt:desc,name:asc` - }), - search: swagger_1.Swagger.defaultApiQueryOptions({ - name: 'search', - required: false, - description: `<b>name:miau,breed:siamese` - }) - } -}; -//# sourceMappingURL=swagger.js.map \ No newline at end of file diff --git a/dist/src/modules/health/controller.js b/dist/src/modules/health/controller.js deleted file mode 100644 index 19a14d87..00000000 --- a/dist/src/modules/health/controller.js +++ /dev/null @@ -1,31 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.HealthController = void 0; -const common_1 = require("@nestjs/common"); -const swagger_1 = require("@nestjs/swagger"); -const package_json_1 = require("../../../package.json"); -let HealthController = exports.HealthController = class HealthController { - async getHealth() { - return `${package_json_1.name}:${package_json_1.version} available!`; - } -}; -__decorate([ - (0, common_1.Get)(['/health', '/']), - __metadata("design:type", Function), - __metadata("design:paramtypes", []), - __metadata("design:returntype", Promise) -], HealthController.prototype, "getHealth", null); -exports.HealthController = HealthController = __decorate([ - (0, common_1.Controller)(), - (0, swagger_1.ApiTags)('health') -], HealthController); -//# sourceMappingURL=controller.js.map \ No newline at end of file diff --git a/dist/src/modules/health/module.js b/dist/src/modules/health/module.js deleted file mode 100644 index b43c152b..00000000 --- a/dist/src/modules/health/module.js +++ /dev/null @@ -1,20 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.HealthModule = void 0; -const common_1 = require("@nestjs/common"); -const controller_1 = require("./controller"); -let HealthModule = exports.HealthModule = class HealthModule { -}; -exports.HealthModule = HealthModule = __decorate([ - (0, common_1.Module)({ - imports: [], - controllers: [controller_1.HealthController] - }) -], HealthModule); -//# sourceMappingURL=module.js.map \ No newline at end of file diff --git a/dist/src/modules/login/adapter.js b/dist/src/modules/login/adapter.js deleted file mode 100644 index bba59079..00000000 --- a/dist/src/modules/login/adapter.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ILoginAdapter = void 0; -class ILoginAdapter { -} -exports.ILoginAdapter = ILoginAdapter; -//# sourceMappingURL=adapter.js.map \ No newline at end of file diff --git a/dist/src/modules/login/controller.js b/dist/src/modules/login/controller.js deleted file mode 100644 index 53c5d618..00000000 --- a/dist/src/modules/login/controller.js +++ /dev/null @@ -1,44 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -var __param = (this && this.__param) || function (paramIndex, decorator) { - return function (target, key) { decorator(target, key, paramIndex); } -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.LoginController = void 0; -const common_1 = require("@nestjs/common"); -const swagger_1 = require("@nestjs/swagger"); -const adapter_1 = require("./adapter"); -const swagger_2 = require("./swagger"); -let LoginController = exports.LoginController = class LoginController { - constructor(loginService) { - this.loginService = loginService; - } - async login({ body, user, tracing }) { - return this.loginService.execute(body, { user, tracing }); - } -}; -__decorate([ - (0, common_1.Post)('/login'), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.login[200]), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.login[404]), - (0, swagger_1.ApiBody)(swagger_2.SwagggerRequest.body), - (0, common_1.Version)('1'), - __param(0, (0, common_1.Req)()), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Object) -], LoginController.prototype, "login", null); -exports.LoginController = LoginController = __decorate([ - (0, common_1.Controller)(), - (0, swagger_1.ApiTags)('login'), - __metadata("design:paramtypes", [adapter_1.ILoginAdapter]) -], LoginController); -//# sourceMappingURL=controller.js.map \ No newline at end of file diff --git a/dist/src/modules/login/module.js b/dist/src/modules/login/module.js deleted file mode 100644 index f148fbc0..00000000 --- a/dist/src/modules/login/module.js +++ /dev/null @@ -1,34 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.LoginModule = void 0; -const common_1 = require("@nestjs/common"); -const user_1 = require("../../core/user/repository/user"); -const user_login_1 = require("../../core/user/use-cases/user-login"); -const auth_1 = require("../../libs/auth"); -const module_1 = require("../user/module"); -const adapter_1 = require("./adapter"); -const controller_1 = require("./controller"); -let LoginModule = exports.LoginModule = class LoginModule { -}; -exports.LoginModule = LoginModule = __decorate([ - (0, common_1.Module)({ - imports: [auth_1.TokenModule, module_1.UserModule], - controllers: [controller_1.LoginController], - providers: [ - { - provide: adapter_1.ILoginAdapter, - useFactory: (repository, tokenService) => { - return new user_login_1.LoginUsecase(repository, tokenService); - }, - inject: [user_1.IUserRepository, auth_1.ITokenAdapter] - } - ] - }) -], LoginModule); -//# sourceMappingURL=module.js.map \ No newline at end of file diff --git a/dist/src/modules/login/swagger.js b/dist/src/modules/login/swagger.js deleted file mode 100644 index f5095578..00000000 --- a/dist/src/modules/login/swagger.js +++ /dev/null @@ -1,26 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SwagggerRequest = exports.SwagggerResponse = void 0; -const swagger_1 = require("../../utils/docs/swagger"); -exports.SwagggerResponse = { - login: { - 200: swagger_1.Swagger.defaultResponseJSON({ - status: 200, - json: { token: '<token>' }, - description: 'user logged' - }), - 404: swagger_1.Swagger.defaultResponseError({ - status: 404, - route: 'api/login', - message: 'userNotFound', - description: 'username or password not found.' - }) - } -}; -exports.SwagggerRequest = { - body: swagger_1.Swagger.defaultRequestJSON({ - login: 'admin', - password: 'admin' - }) -}; -//# sourceMappingURL=swagger.js.map \ No newline at end of file diff --git a/dist/src/modules/logout/adapter.js b/dist/src/modules/logout/adapter.js deleted file mode 100644 index d9fbc592..00000000 --- a/dist/src/modules/logout/adapter.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ILogoutAdapter = void 0; -class ILogoutAdapter { -} -exports.ILogoutAdapter = ILogoutAdapter; -//# sourceMappingURL=adapter.js.map \ No newline at end of file diff --git a/dist/src/modules/logout/controller.js b/dist/src/modules/logout/controller.js deleted file mode 100644 index 4c207ff6..00000000 --- a/dist/src/modules/logout/controller.js +++ /dev/null @@ -1,45 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -var __param = (this && this.__param) || function (paramIndex, decorator) { - return function (target, key) { decorator(target, key, paramIndex); } -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.LogoutController = void 0; -const common_1 = require("@nestjs/common"); -const swagger_1 = require("@nestjs/swagger"); -const adapter_1 = require("./adapter"); -const swagger_2 = require("./swagger"); -let LogoutController = exports.LogoutController = class LogoutController { - constructor(logoutService) { - this.logoutService = logoutService; - } - async logout({ body, user, tracing }) { - return this.logoutService.execute(body, { user, tracing }); - } -}; -__decorate([ - (0, common_1.Post)('/logout'), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.logout[200]), - (0, swagger_1.ApiBody)(swagger_2.SwagggerRequest.body), - (0, common_1.HttpCode)(401), - (0, common_1.Version)('1'), - __param(0, (0, common_1.Req)()), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Object) -], LogoutController.prototype, "logout", null); -exports.LogoutController = LogoutController = __decorate([ - (0, common_1.Controller)(), - (0, swagger_1.ApiTags)('logout'), - (0, swagger_1.ApiBearerAuth)(), - __metadata("design:paramtypes", [adapter_1.ILogoutAdapter]) -], LogoutController); -//# sourceMappingURL=controller.js.map \ No newline at end of file diff --git a/dist/src/modules/logout/module.js b/dist/src/modules/logout/module.js deleted file mode 100644 index b11069d6..00000000 --- a/dist/src/modules/logout/module.js +++ /dev/null @@ -1,41 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.LogoutModule = void 0; -const common_1 = require("@nestjs/common"); -const user_logout_1 = require("../../core/user/use-cases/user-logout"); -const cache_1 = require("../../infra/cache"); -const redis_1 = require("../../infra/cache/redis"); -const logger_1 = require("../../infra/logger"); -const secrets_1 = require("../../infra/secrets"); -const is_logged_middleware_1 = require("../../utils/middlewares/is-logged.middleware"); -const module_1 = require("./../../libs/auth/module"); -const adapter_1 = require("./adapter"); -const controller_1 = require("./controller"); -let LogoutModule = exports.LogoutModule = class LogoutModule { - configure(consumer) { - consumer.apply(is_logged_middleware_1.IsLoggedMiddleware).forRoutes(controller_1.LogoutController); - } -}; -exports.LogoutModule = LogoutModule = __decorate([ - (0, common_1.Module)({ - imports: [redis_1.RedisCacheModule, secrets_1.SecretsModule, redis_1.RedisCacheModule, module_1.TokenModule, logger_1.LoggerModule], - controllers: [controller_1.LogoutController], - providers: [ - { - provide: adapter_1.ILogoutAdapter, - useFactory: (cache, secrets) => { - return new user_logout_1.LogoutUsecase(cache, secrets); - }, - inject: [cache_1.ICacheAdapter, secrets_1.ISecretsAdapter] - } - ], - exports: [adapter_1.ILogoutAdapter] - }) -], LogoutModule); -//# sourceMappingURL=module.js.map \ No newline at end of file diff --git a/dist/src/modules/logout/swagger.js b/dist/src/modules/logout/swagger.js deleted file mode 100644 index 931a7ecc..00000000 --- a/dist/src/modules/logout/swagger.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SwagggerRequest = exports.SwagggerResponse = void 0; -const swagger_1 = require("../../utils/docs/swagger"); -exports.SwagggerResponse = { - logout: { - 200: swagger_1.Swagger.defaultResponseJSON({ - status: 401, - json: undefined, - description: 'user logout' - }) - } -}; -exports.SwagggerRequest = { - body: swagger_1.Swagger.defaultRequestJSON({ - token: '<token>' - }) -}; -//# sourceMappingURL=swagger.js.map \ No newline at end of file diff --git a/dist/src/modules/user/adapter.js b/dist/src/modules/user/adapter.js deleted file mode 100644 index 1f358038..00000000 --- a/dist/src/modules/user/adapter.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IUserGetByIDAdapter = exports.IUserDeleteAdapter = exports.IUserListAdapter = exports.IUserUpdateAdapter = exports.IUserCreateAdapter = void 0; -class IUserCreateAdapter { -} -exports.IUserCreateAdapter = IUserCreateAdapter; -class IUserUpdateAdapter { -} -exports.IUserUpdateAdapter = IUserUpdateAdapter; -class IUserListAdapter { -} -exports.IUserListAdapter = IUserListAdapter; -class IUserDeleteAdapter { -} -exports.IUserDeleteAdapter = IUserDeleteAdapter; -class IUserGetByIDAdapter { -} -exports.IUserGetByIDAdapter = IUserGetByIDAdapter; -//# sourceMappingURL=adapter.js.map \ No newline at end of file diff --git a/dist/src/modules/user/controller.js b/dist/src/modules/user/controller.js deleted file mode 100644 index 5a789adb..00000000 --- a/dist/src/modules/user/controller.js +++ /dev/null @@ -1,123 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -var __param = (this && this.__param) || function (paramIndex, decorator) { - return function (target, key) { decorator(target, key, paramIndex); } -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UserController = void 0; -const common_1 = require("@nestjs/common"); -const swagger_1 = require("@nestjs/swagger"); -const user_1 = require("../../core/user/entity/user"); -const role_decorator_1 = require("../../utils/decorators/role.decorator"); -const search_1 = require("../../utils/search"); -const sort_1 = require("../../utils/sort"); -const adapter_1 = require("./adapter"); -const swagger_2 = require("./swagger"); -let UserController = exports.UserController = class UserController { - constructor(userCreateUsecase, userUpdateUsecase, userDeleteUsecase, userListUsecase, userGetByIDUsecase) { - this.userCreateUsecase = userCreateUsecase; - this.userUpdateUsecase = userUpdateUsecase; - this.userDeleteUsecase = userDeleteUsecase; - this.userListUsecase = userListUsecase; - this.userGetByIDUsecase = userGetByIDUsecase; - } - async create({ body, user, tracing }) { - return this.userCreateUsecase.execute(body, { user, tracing }); - } - async update({ body, user, tracing }) { - return this.userUpdateUsecase.execute(body, { user, tracing }); - } - async list({ query }) { - const input = { - sort: sort_1.SortHttpSchema.parse(query.sort), - search: search_1.SearchHttpSchema.parse(query.search), - limit: Number(query.limit), - page: Number(query.page) - }; - return await this.userListUsecase.execute(input); - } - async getById({ params }) { - return await this.userGetByIDUsecase.execute(params); - } - async delete({ params, user, tracing }) { - return await this.userDeleteUsecase.execute(params, { user, tracing }); - } -}; -__decorate([ - (0, common_1.Post)(), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.create[200]), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.create[409]), - (0, swagger_1.ApiBody)(swagger_2.SwagggerRequest.createBody), - (0, common_1.Version)('1'), - __param(0, (0, common_1.Req)()), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], UserController.prototype, "create", null); -__decorate([ - (0, common_1.Put)(), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.update[200]), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.update[404]), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.update[409]), - (0, swagger_1.ApiBody)(swagger_2.SwagggerRequest.updateBody), - (0, common_1.Version)('1'), - __param(0, (0, common_1.Req)()), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], UserController.prototype, "update", null); -__decorate([ - (0, common_1.Get)(), - (0, swagger_1.ApiQuery)(swagger_2.SwagggerRequest.listQuery.pagination.limit), - (0, swagger_1.ApiQuery)(swagger_2.SwagggerRequest.listQuery.pagination.page), - (0, swagger_1.ApiQuery)(swagger_2.SwagggerRequest.listQuery.sort), - (0, swagger_1.ApiQuery)(swagger_2.SwagggerRequest.listQuery.search), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.list[200]), - (0, common_1.Version)('1'), - __param(0, (0, common_1.Req)()), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], UserController.prototype, "list", null); -__decorate([ - (0, common_1.Get)('/:id'), - (0, swagger_1.ApiParam)({ name: 'id', required: true }), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.getByID[200]), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.getByID[404]), - (0, common_1.Version)('1'), - __param(0, (0, common_1.Req)()), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], UserController.prototype, "getById", null); -__decorate([ - (0, common_1.Delete)('/:id'), - (0, swagger_1.ApiParam)({ name: 'id', required: true }), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.delete[200]), - (0, swagger_1.ApiResponse)(swagger_2.SwagggerResponse.delete[404]), - (0, common_1.Version)('1'), - __param(0, (0, common_1.Req)()), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], UserController.prototype, "delete", null); -exports.UserController = UserController = __decorate([ - (0, common_1.Controller)('users'), - (0, swagger_1.ApiTags)('users'), - (0, swagger_1.ApiBearerAuth)(), - (0, role_decorator_1.Roles)(user_1.UserRole.BACKOFFICE), - __metadata("design:paramtypes", [adapter_1.IUserCreateAdapter, - adapter_1.IUserUpdateAdapter, - adapter_1.IUserDeleteAdapter, - adapter_1.IUserListAdapter, - adapter_1.IUserGetByIDAdapter]) -], UserController); -//# sourceMappingURL=controller.js.map \ No newline at end of file diff --git a/dist/src/modules/user/module.js b/dist/src/modules/user/module.js deleted file mode 100644 index 1073bdb5..00000000 --- a/dist/src/modules/user/module.js +++ /dev/null @@ -1,93 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UserModule = void 0; -const common_1 = require("@nestjs/common"); -const mongoose_1 = require("@nestjs/mongoose"); -const user_1 = require("../../core/user/repository/user"); -const user_create_1 = require("../../core/user/use-cases/user-create"); -const user_delete_1 = require("../../core/user/use-cases/user-delete"); -const user_getByID_1 = require("../../core/user/use-cases/user-getByID"); -const user_list_1 = require("../../core/user/use-cases/user-list"); -const user_update_1 = require("../../core/user/use-cases/user-update"); -const redis_1 = require("../../infra/cache/redis"); -const enum_1 = require("../../infra/database/enum"); -const user_2 = require("../../infra/database/mongo/schemas/user"); -const logger_1 = require("../../infra/logger"); -const secrets_1 = require("../../infra/secrets"); -const auth_1 = require("../../libs/auth"); -const is_logged_middleware_1 = require("../../utils/middlewares/is-logged.middleware"); -const adapter_1 = require("./adapter"); -const controller_1 = require("./controller"); -const repository_1 = require("./repository"); -let UserModule = exports.UserModule = class UserModule { - configure(consumer) { - consumer.apply(is_logged_middleware_1.IsLoggedMiddleware).forRoutes(controller_1.UserController); - } -}; -exports.UserModule = UserModule = __decorate([ - (0, common_1.Module)({ - imports: [auth_1.TokenModule, secrets_1.SecretsModule, logger_1.LoggerModule, redis_1.RedisCacheModule], - controllers: [controller_1.UserController], - providers: [ - { - provide: user_1.IUserRepository, - useFactory: async (connection) => { - const repository = connection.model(user_2.User.name, user_2.UserSchema); - repository.connection = connection; - return new repository_1.UserRepository(repository); - }, - inject: [(0, mongoose_1.getConnectionToken)(enum_1.ConnectionName.USER)] - }, - { - provide: adapter_1.IUserCreateAdapter, - useFactory: (userRepository, loggerService) => { - return new user_create_1.UserCreateUsecase(userRepository, loggerService); - }, - inject: [user_1.IUserRepository, logger_1.ILoggerAdapter] - }, - { - provide: adapter_1.IUserUpdateAdapter, - useFactory: (userRepository, loggerService) => { - return new user_update_1.UserUpdateUsecase(userRepository, loggerService); - }, - inject: [user_1.IUserRepository, logger_1.ILoggerAdapter] - }, - { - provide: adapter_1.IUserListAdapter, - useFactory: (userRepository) => { - return new user_list_1.UserListUsecase(userRepository); - }, - inject: [user_1.IUserRepository] - }, - { - provide: adapter_1.IUserDeleteAdapter, - useFactory: (userRepository) => { - return new user_delete_1.UserDeleteUsecase(userRepository); - }, - inject: [user_1.IUserRepository] - }, - { - provide: adapter_1.IUserGetByIDAdapter, - useFactory: (userRepository) => { - return new user_getByID_1.UserGetByIdUsecase(userRepository); - }, - inject: [user_1.IUserRepository] - } - ], - exports: [ - user_1.IUserRepository, - adapter_1.IUserCreateAdapter, - adapter_1.IUserUpdateAdapter, - adapter_1.IUserListAdapter, - adapter_1.IUserDeleteAdapter, - adapter_1.IUserGetByIDAdapter - ] - }) -], UserModule); -//# sourceMappingURL=module.js.map \ No newline at end of file diff --git a/dist/src/modules/user/repository.js b/dist/src/modules/user/repository.js deleted file mode 100644 index 8ecfa530..00000000 --- a/dist/src/modules/user/repository.js +++ /dev/null @@ -1,60 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -var __param = (this && this.__param) || function (paramIndex, decorator) { - return function (target, key) { decorator(target, key, paramIndex); } -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UserRepository = void 0; -const common_1 = require("@nestjs/common"); -const mongoose_1 = require("@nestjs/mongoose"); -const user_1 = require("../../core/user/entity/user"); -const user_2 = require("../../infra/database/mongo/schemas/user"); -const repository_1 = require("../../infra/repository"); -const validate_mongoose_filter_decorator_1 = require("../../utils/decorators/database/mongo/validate-mongoose-filter.decorator"); -const validate_database_sort_allowed_decorator_1 = require("../../utils/decorators/database/validate-database-sort-allowed.decorator"); -const types_1 = require("../../utils/decorators/types"); -let UserRepository = exports.UserRepository = class UserRepository extends repository_1.MongoRepository { - constructor(entity) { - super(entity); - this.entity = entity; - } - async startSession() { - const session = await this.entity.connection.startSession(); - session.startTransaction(); - return session; - } - async existsOnUpdate(equalFilter, notEqualFilter) { - const user = await this.entity.findOne(Object.assign(Object.assign({}, equalFilter), { $nor: [{ _id: notEqualFilter.id }] })); - return !!user; - } - async paginate({ limit, page, sort, search }) { - const users = await this.entity.paginate(search, { page, limit, sort }); - return { - docs: users.docs.map((u) => new user_1.UserEntity(u.toObject({ virtuals: true }))), - limit, - page, - total: users.totalDocs - }; - } -}; -__decorate([ - (0, validate_mongoose_filter_decorator_1.ValidateMongooseFilter)([{ name: 'login', type: types_1.SearchTypeEnum.like }]), - (0, validate_database_sort_allowed_decorator_1.ValidateDatabaseSortAllowed)('login', 'createdAt'), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Promise) -], UserRepository.prototype, "paginate", null); -exports.UserRepository = UserRepository = __decorate([ - (0, common_1.Injectable)(), - __param(0, (0, mongoose_1.InjectModel)(user_2.User.name)), - __metadata("design:paramtypes", [Object]) -], UserRepository); -//# sourceMappingURL=repository.js.map \ No newline at end of file diff --git a/dist/src/modules/user/swagger.js b/dist/src/modules/user/swagger.js deleted file mode 100644 index 7b31d700..00000000 --- a/dist/src/modules/user/swagger.js +++ /dev/null @@ -1,94 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SwagggerRequest = exports.SwagggerResponse = void 0; -const request_1 = require("../../utils/docs/data/user/request"); -const response_1 = require("../../utils/docs/data/user/response"); -const swagger_1 = require("../../utils/docs/swagger"); -exports.SwagggerResponse = { - create: { - 200: swagger_1.Swagger.defaultResponseJSON({ - status: 200, - json: response_1.UsersResponse.create, - description: 'user created.' - }), - 409: swagger_1.Swagger.defaultResponseError({ - status: 409, - route: 'api/users', - message: 'userExists', - description: 'user exists.' - }) - }, - update: { - 200: swagger_1.Swagger.defaultResponseJSON({ - status: 200, - json: response_1.UsersResponse.update, - description: 'user updated.' - }), - 404: swagger_1.Swagger.defaultResponseError({ - status: 404, - route: 'api/users', - message: 'userNotFound', - description: 'user not found.' - }), - 409: swagger_1.Swagger.defaultResponseError({ - status: 409, - route: 'api/users', - message: 'userExists', - description: 'user exists.' - }) - }, - getByID: { - 200: swagger_1.Swagger.defaultResponseJSON({ - status: 200, - json: response_1.UsersResponse.getByID, - description: 'user found.' - }), - 404: swagger_1.Swagger.defaultResponseError({ - status: 404, - route: 'api/users/:id', - message: 'userNotFound', - description: 'user not found.' - }) - }, - delete: { - 200: swagger_1.Swagger.defaultResponseJSON({ - status: 200, - json: response_1.UsersResponse.delete, - description: 'user found.' - }), - 404: swagger_1.Swagger.defaultResponseError({ - status: 404, - route: 'api/users/:id', - message: 'userNotFound', - description: 'user not found.' - }) - }, - list: { - 200: swagger_1.Swagger.defaultResponseJSON({ - status: 200, - json: response_1.UsersResponse.list, - description: 'user created.' - }) - } -}; -exports.SwagggerRequest = { - createBody: swagger_1.Swagger.defaultRequestJSON(request_1.UsersRequest.create), - updateBody: swagger_1.Swagger.defaultRequestJSON(request_1.UsersRequest.update), - listQuery: { - pagination: { - limit: swagger_1.Swagger.defaultApiQueryOptions({ example: 10, name: 'limit', required: false }), - page: swagger_1.Swagger.defaultApiQueryOptions({ example: 1, name: 'page', required: false }) - }, - sort: swagger_1.Swagger.defaultApiQueryOptions({ - name: 'sort', - required: false, - description: `<b>createdAt:desc,login:asc` - }), - search: swagger_1.Swagger.defaultApiQueryOptions({ - name: 'search', - required: false, - description: `<b>login:value<login>` - }) - } -}; -//# sourceMappingURL=swagger.js.map \ No newline at end of file diff --git a/dist/src/utils/axios.js b/dist/src/utils/axios.js deleted file mode 100644 index 782fe508..00000000 --- a/dist/src/utils/axios.js +++ /dev/null @@ -1,56 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.requestRetry = exports.interceptAxiosResponseError = void 0; -const axios_retry_1 = __importDefault(require("axios-retry")); -const nestjs_convert_to_curl_1 = require("nestjs-convert-to-curl"); -const exception_1 = require("./exception"); -const interceptAxiosResponseError = (error, logger) => { - var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p; - error.stack = error.stack.replace(/AxiosError.*node:internal\/process\/task_queues:[0-9]+:[0-9]+\).*axiosBetterStacktrace.ts:[0-9]+:[0-9]+\)/g, ''); - const status = [(_b = (_a = error === null || error === void 0 ? void 0 : error.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.code, (_e = (_d = (_c = error === null || error === void 0 ? void 0 : error.response) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.error) === null || _e === void 0 ? void 0 : _e.code, (_f = error === null || error === void 0 ? void 0 : error.response) === null || _f === void 0 ? void 0 : _f.status, 500].find(Boolean); - const message = [ - (_h = (_g = error === null || error === void 0 ? void 0 : error.response) === null || _g === void 0 ? void 0 : _g.data) === null || _h === void 0 ? void 0 : _h.description, - (_l = (_k = (_j = error === null || error === void 0 ? void 0 : error.response) === null || _j === void 0 ? void 0 : _j.data) === null || _k === void 0 ? void 0 : _k.error) === null || _l === void 0 ? void 0 : _l.message, - (_m = error === null || error === void 0 ? void 0 : error.response) === null || _m === void 0 ? void 0 : _m.statusText, - 'Internal Server Error' - ].find(Boolean); - const curl = nestjs_convert_to_curl_1.AxiosConverter.getCurl(error); - logger.error(new exception_1.BaseException(typeof error['code'] === 'string' ? error['code'] : message, status, { - curl, - responseData: (_p = (_o = error === null || error === void 0 ? void 0 : error.response) === null || _o === void 0 ? void 0 : _o.data) !== null && _p !== void 0 ? _p : undefined - })); -}; -exports.interceptAxiosResponseError = interceptAxiosResponseError; -const requestRetry = ({ axios, logger, status: statusRetry = [503, 422, 408] }) => { - (0, axios_retry_1.default)(axios, { - shouldResetTimeout: true, - retryDelay: (retryCount, axiosError) => { - var _a, _b, _c, _d; - logger.warn({ - message: `retry attempt: ${retryCount}`, - obj: { - statusText: [(_a = axiosError.response) === null || _a === void 0 ? void 0 : _a.data['message'], axiosError.message].find(Boolean), - status: [ - (_b = axiosError.response) === null || _b === void 0 ? void 0 : _b.status, - axiosError.status, - (_c = axiosError.response) === null || _c === void 0 ? void 0 : _c.data['status'], - (_d = axiosError === null || axiosError === void 0 ? void 0 : axiosError.response) === null || _d === void 0 ? void 0 : _d.data['code'], - axiosError.code - ].find(Boolean), - url: axiosError.config.url - } - }); - return retryCount * 2000; - }, - retryCondition: (error) => { - var _a; - const status = ((_a = error === null || error === void 0 ? void 0 : error.response) === null || _a === void 0 ? void 0 : _a.status) || 500; - return statusRetry.includes(status); - } - }); -}; -exports.requestRetry = requestRetry; -//# sourceMappingURL=axios.js.map \ No newline at end of file diff --git a/dist/src/utils/collection.js b/dist/src/utils/collection.js deleted file mode 100644 index b3d41468..00000000 --- a/dist/src/utils/collection.js +++ /dev/null @@ -1,91 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CollectionUtil = void 0; -const exception_1 = require("./exception"); -class CollectionUtil { -} -exports.CollectionUtil = CollectionUtil; -CollectionUtil.groupBy = (collection = [], key) => { - if (!key.length) { - throw new exception_1.ApiBadRequestException(); - } - return collection.reduce(function (rv, x) { - (rv[x[key]] = rv[x[key]] || []).push(x); - return rv; - }, {}); -}; -CollectionUtil.group = (collection) => { - return collection.reduce(function (rv, x) { - (rv[x] = rv[x] || []).push(x); - return rv; - }, {}); -}; -CollectionUtil.maxBy = (collection = [], key) => { - if (!key.length) { - throw new exception_1.ApiBadRequestException('key is required'); - } - return collection.reduce((prev, current) => { - return Number(prev[key] > current[key]) ? prev : current; - }); -}; -CollectionUtil.max = (collection) => { - return Math.max(...collection.map((c) => Number(c))); -}; -CollectionUtil.minBy = (collection = [], key) => { - if (!key.length) { - throw new exception_1.ApiBadRequestException('key is required'); - } - return collection.reduce((prev, current) => { - return Number(prev[key] > current[key]) ? current : prev; - }); -}; -CollectionUtil.min = (collection) => { - return Math.min(...collection.map((c) => Number(c))); -}; -CollectionUtil.sum = (collection = []) => { - return collection.reduce((prev, current) => { - return Number(prev) + Number(current); - }); -}; -CollectionUtil.sumBy = (collection = [], key) => { - if (!key.length) { - throw new exception_1.ApiBadRequestException('key is required'); - } - return collection.reduce((prev, current) => { - if (isNaN(prev[key] || 0)) { - return 0 + Number(current[key]); - } - if (prev[key]) { - return Number(prev[key]) + Number(current[key]); - } - return Number(prev) + Number(current[key]); - }); -}; -CollectionUtil.hasDuplicated = (collection = []) => { - return new Set(collection).size !== collection.length; -}; -CollectionUtil.hasDuplicatedBy = (collection = [], key) => { - if (!key.length) { - throw new exception_1.ApiBadRequestException('key is required'); - } - return new Set(collection.map((c) => c[key])).size !== collection.length; -}; -CollectionUtil.getMaxLengthPerKey = (collection = [], key) => { - if (!key.length) { - throw new exception_1.ApiBadRequestException('key is required'); - } - const lastHash = { - length: 0, - key: null - }; - collection.reduce((prev, next) => { - const length = (prev[next[key]] = prev[next[key]] || []).push(next.name); - if (length > lastHash.length) { - lastHash.key = next.name; - lastHash.length = length; - } - return prev; - }, {}); - return lastHash; -}; -//# sourceMappingURL=collection.js.map \ No newline at end of file diff --git a/dist/src/utils/database/mongoose.js b/dist/src/utils/database/mongoose.js deleted file mode 100644 index f249fe17..00000000 --- a/dist/src/utils/database/mongoose.js +++ /dev/null @@ -1,9 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.skipParentheses = void 0; -const skipParentheses = (filter) => { - var _a; - return (_a = filter === null || filter === void 0 ? void 0 : filter.replace('(', '\\(')) === null || _a === void 0 ? void 0 : _a.replace(')', '\\)'); -}; -exports.skipParentheses = skipParentheses; -//# sourceMappingURL=mongoose.js.map \ No newline at end of file diff --git a/dist/src/utils/database/sequelize.js b/dist/src/utils/database/sequelize.js deleted file mode 100644 index 938a736d..00000000 --- a/dist/src/utils/database/sequelize.js +++ /dev/null @@ -1,14 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.DatabaseOptionsSchema = void 0; -const zod_1 = require("zod"); -const DEFAULT_SCHEMA = 'public'; -exports.DatabaseOptionsSchema = zod_1.z - .object({ - schema: zod_1.z.string().trim().default(DEFAULT_SCHEMA), - transaction: zod_1.z.any().optional().nullable() -}) - .default({ - schema: DEFAULT_SCHEMA -}); -//# sourceMappingURL=sequelize.js.map \ No newline at end of file diff --git a/dist/src/utils/date.js b/dist/src/utils/date.js deleted file mode 100644 index 8da68741..00000000 --- a/dist/src/utils/date.js +++ /dev/null @@ -1,26 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.DateUtils = void 0; -const luxon_1 = require("luxon"); -class DateUtils { - static getDateStringWithFormat(input = {}) { - if (!(input === null || input === void 0 ? void 0 : input.date)) { - Object.assign(input, { date: new Date() }); - } - if (!(input === null || input === void 0 ? void 0 : input.format)) { - Object.assign(input, { format: process.env.DATE_FORMAT }); - } - return luxon_1.DateTime.fromJSDate(input.date, { zone: 'utc' }).setZone(process.env.TZ).toFormat(input.format); - } - static getISODateString() { - return luxon_1.DateTime.fromJSDate(new Date(), { zone: 'utc' }).setZone(process.env.TZ).toJSON(); - } - static getJSDate() { - return luxon_1.DateTime.fromJSDate(new Date(), { zone: 'utc' }).setZone(process.env.TZ).toJSDate(); - } - static getDate() { - return luxon_1.DateTime.fromJSDate(new Date(), { zone: 'utc' }).setZone(process.env.TZ); - } -} -exports.DateUtils = DateUtils; -//# sourceMappingURL=date.js.map \ No newline at end of file diff --git a/dist/src/utils/decorators/database/mongo/convert-mongoose-filter.decorator.js b/dist/src/utils/decorators/database/mongo/convert-mongoose-filter.decorator.js deleted file mode 100644 index b2c409f4..00000000 --- a/dist/src/utils/decorators/database/mongo/convert-mongoose-filter.decorator.js +++ /dev/null @@ -1,25 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ConvertMongoFilterToBaseRepository = void 0; -function ConvertMongoFilterToBaseRepository() { - return (target, propertyKey, descriptor) => { - const originalMethod = descriptor.value; - descriptor.value = function (...args) { - const input = args[0]; - if (!input) { - const result = originalMethod.apply(this, args); - return result; - } - input['deletedAt'] = null; - if (input.id) { - input['_id'] = input.id; - delete input.id; - } - args[0] = input; - const result = originalMethod.apply(this, args); - return result; - }; - }; -} -exports.ConvertMongoFilterToBaseRepository = ConvertMongoFilterToBaseRepository; -//# sourceMappingURL=convert-mongoose-filter.decorator.js.map \ No newline at end of file diff --git a/dist/src/utils/decorators/database/mongo/validate-mongoose-filter.decorator.js b/dist/src/utils/decorators/database/mongo/validate-mongoose-filter.decorator.js deleted file mode 100644 index 89a19829..00000000 --- a/dist/src/utils/decorators/database/mongo/validate-mongoose-filter.decorator.js +++ /dev/null @@ -1,45 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ValidateMongooseFilter = void 0; -const exception_1 = require("../../../exception"); -const mongoose_1 = require("../../../database/mongoose"); -const types_1 = require("../../types"); -function ValidateMongooseFilter(allowedFilterList = []) { - return (target, propertyKey, descriptor) => { - const originalMethod = descriptor.value; - descriptor.value = function (...args) { - var _a; - const input = args[0]; - const where = {}; - where['deletedAt'] = null; - if ((_a = input === null || input === void 0 ? void 0 : input.search) === null || _a === void 0 ? void 0 : _a.id) { - where['_id'] = input.search.id.trim(); - delete input.search.id; - } - const filterNameList = allowedFilterList.map((f) => f.name); - Object.keys(input.search || {}).forEach((key) => { - const allowed = filterNameList.includes(key); - if (!allowed) - throw new exception_1.ApiBadRequestException(`allowed filters are: ${filterNameList.join(', ')}`); - }); - for (const allowedFilter of allowedFilterList) { - if (!input.search) - continue; - const filter = input.search[allowedFilter.name]; - if (!filter) - continue; - if (allowedFilter.type === types_1.SearchTypeEnum.equal) { - where[allowedFilter.name] = filter; - } - if (allowedFilter.type === types_1.SearchTypeEnum.like) { - where[allowedFilter.name] = new RegExp((0, mongoose_1.skipParentheses)(filter), 'gi'); - } - } - args[0].search = where; - const result = originalMethod.apply(this, args); - return result; - }; - }; -} -exports.ValidateMongooseFilter = ValidateMongooseFilter; -//# sourceMappingURL=validate-mongoose-filter.decorator.js.map \ No newline at end of file diff --git a/dist/src/utils/decorators/database/postgres/convert-paginate-input-to-sequelize-filter.decorator.js b/dist/src/utils/decorators/database/postgres/convert-paginate-input-to-sequelize-filter.decorator.js deleted file mode 100644 index e83179e9..00000000 --- a/dist/src/utils/decorators/database/postgres/convert-paginate-input-to-sequelize-filter.decorator.js +++ /dev/null @@ -1,64 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ConvertPaginateInputToSequelizeFilter = exports.ListSchema = void 0; -const sequelize_1 = require("sequelize"); -const zod_1 = require("zod"); -const types_1 = require("../../types"); -const exception_1 = require("../../../exception"); -const pagination_1 = require("../../../pagination"); -const search_1 = require("../../../search"); -const sort_1 = require("../../../sort"); -const SequelizeSort = { - '1': 'ASC', - '-1': 'DESC' -}; -exports.ListSchema = zod_1.z.intersection(pagination_1.PaginationSchema, sort_1.SortSchema.merge(search_1.SearchSchema)); -function ConvertPaginateInputToSequelizeFilter(allowedFilterList) { - return (target, propertyKey, descriptor) => { - const originalMethod = descriptor.value; - descriptor.value = function (...args) { - const input = args[0]; - const postgresSort = []; - const where = { - deletedAt: null - }; - const filterNameList = allowedFilterList.map((f) => f.name); - Object.keys(input.search || {}).forEach((key) => { - const allowed = filterNameList.includes(key); - if (!allowed) - throw new exception_1.ApiBadRequestException(`allowed filters are: ${filterNameList.join(', ')}`); - }); - for (const allowedFilter of allowedFilterList) { - if (!input.search) - continue; - const filter = input.search[allowedFilter.name]; - if (!filter) - continue; - if (allowedFilter.type === types_1.SearchTypeEnum.equal) { - where[allowedFilter.name] = filter; - } - if (allowedFilter.type === types_1.SearchTypeEnum.like) { - where[allowedFilter.name] = { [sequelize_1.Op.iLike]: `%${filter}%` }; - } - } - for (const key in input === null || input === void 0 ? void 0 : input.sort) { - const sort = input.sort[`${key}`]; - postgresSort.push([key, SequelizeSort[`${sort}`]]); - } - const limit = Number(input.limit); - const offset = Number(input.page - 1) * limit; - const filter = { - offset, - limit, - order: postgresSort, - where, - page: input.page - }; - args[0] = filter; - const result = originalMethod.apply(this, args); - return result; - }; - }; -} -exports.ConvertPaginateInputToSequelizeFilter = ConvertPaginateInputToSequelizeFilter; -//# sourceMappingURL=convert-paginate-input-to-sequelize-filter.decorator.js.map \ No newline at end of file diff --git a/dist/src/utils/decorators/database/postgres/convert-sequelize-filter.decorator.js b/dist/src/utils/decorators/database/postgres/convert-sequelize-filter.decorator.js deleted file mode 100644 index 6f66ef17..00000000 --- a/dist/src/utils/decorators/database/postgres/convert-sequelize-filter.decorator.js +++ /dev/null @@ -1,26 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ConvertSequelizeFilterToRepository = exports.ListSchema = void 0; -const zod_1 = require("zod"); -const pagination_1 = require("../../../pagination"); -const search_1 = require("../../../search"); -const sort_1 = require("../../../sort"); -exports.ListSchema = zod_1.z.intersection(pagination_1.PaginationSchema, sort_1.SortSchema.merge(search_1.SearchSchema)); -function ConvertSequelizeFilterToRepository() { - return (target, propertyKey, descriptor) => { - const originalMethod = descriptor.value; - descriptor.value = function (...args) { - const input = args[0]; - if (!input) { - const result = originalMethod.apply(this, args); - return result; - } - Object.assign(input, { deletedAt: null }); - args[0] = input; - const result = originalMethod.apply(this, args); - return result; - }; - }; -} -exports.ConvertSequelizeFilterToRepository = ConvertSequelizeFilterToRepository; -//# sourceMappingURL=convert-sequelize-filter.decorator.js.map \ No newline at end of file diff --git a/dist/src/utils/decorators/database/validate-database-sort-allowed.decorator.js b/dist/src/utils/decorators/database/validate-database-sort-allowed.decorator.js deleted file mode 100644 index eaa6292a..00000000 --- a/dist/src/utils/decorators/database/validate-database-sort-allowed.decorator.js +++ /dev/null @@ -1,37 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ValidateDatabaseSortAllowed = exports.ListSchema = void 0; -const zod_1 = require("zod"); -const pagination_1 = require("../../pagination"); -const search_1 = require("../../search"); -const sort_1 = require("../../sort"); -const exception_1 = require("./../../exception"); -exports.ListSchema = zod_1.z.intersection(pagination_1.PaginationSchema, sort_1.SortSchema.merge(search_1.SearchSchema)); -function ValidateDatabaseSortAllowed(...allowedSortList) { - return (target, propertyKey, descriptor) => { - const originalMethod = descriptor.value; - descriptor.value = function (...args) { - const input = args[0]; - const sort = {}; - const sortList = (allowedSortList || []); - Object.keys(input.sort || {}).forEach((key) => { - const allowed = sortList.includes(key); - if (!allowed) - throw new exception_1.ApiBadRequestException(`allowed sorts are: ${sortList.join(', ')}`); - }); - for (const allowedFilter of sortList) { - if (!input.sort) - continue; - const filter = input.sort[`${allowedFilter}`]; - if (filter) { - sort[`${allowedFilter}`] = filter; - } - } - args[0].sort = sort; - const result = originalMethod.apply(this, args); - return result; - }; - }; -} -exports.ValidateDatabaseSortAllowed = ValidateDatabaseSortAllowed; -//# sourceMappingURL=validate-database-sort-allowed.decorator.js.map \ No newline at end of file diff --git a/dist/src/utils/decorators/role.decorator.js b/dist/src/utils/decorators/role.decorator.js deleted file mode 100644 index eb4b5f00..00000000 --- a/dist/src/utils/decorators/role.decorator.js +++ /dev/null @@ -1,8 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Roles = exports.ROLES_KEY = void 0; -const common_1 = require("@nestjs/common"); -exports.ROLES_KEY = 'roles'; -const Roles = (...roles) => (0, common_1.SetMetadata)(exports.ROLES_KEY, roles); -exports.Roles = Roles; -//# sourceMappingURL=role.decorator.js.map \ No newline at end of file diff --git a/dist/src/utils/decorators/types.js b/dist/src/utils/decorators/types.js deleted file mode 100644 index c4245c5e..00000000 --- a/dist/src/utils/decorators/types.js +++ /dev/null @@ -1,9 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SearchTypeEnum = void 0; -var SearchTypeEnum; -(function (SearchTypeEnum) { - SearchTypeEnum[SearchTypeEnum["like"] = 0] = "like"; - SearchTypeEnum[SearchTypeEnum["equal"] = 1] = "equal"; -})(SearchTypeEnum || (exports.SearchTypeEnum = SearchTypeEnum = {})); -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/dist/src/utils/decorators/validate-schema.decorator.js b/dist/src/utils/decorators/validate-schema.decorator.js deleted file mode 100644 index 2d648387..00000000 --- a/dist/src/utils/decorators/validate-schema.decorator.js +++ /dev/null @@ -1,16 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ValidateSchema = void 0; -function ValidateSchema(schema) { - return (target, propertyKey, descriptor) => { - const originalMethod = descriptor.value; - descriptor.value = function (...args) { - const model = schema.parse(args[0]); - args[0] = model; - const result = originalMethod.apply(this, args); - return result; - }; - }; -} -exports.ValidateSchema = ValidateSchema; -//# sourceMappingURL=validate-schema.decorator.js.map \ No newline at end of file diff --git a/dist/src/utils/docs/data/cats/request.js b/dist/src/utils/docs/data/cats/request.js deleted file mode 100644 index b79224e7..00000000 --- a/dist/src/utils/docs/data/cats/request.js +++ /dev/null @@ -1,9 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CatsRequest = void 0; -const tests_1 = require("../../../tests/tests"); -exports.CatsRequest = { - create: { name: 'miau', breed: 'breed', age: 1 }, - update: { id: (0, tests_1.generateUUID)(), name: 'miau', breed: 'breed', age: 1 } -}; -//# sourceMappingURL=request.js.map \ No newline at end of file diff --git a/dist/src/utils/docs/data/cats/response.js b/dist/src/utils/docs/data/cats/response.js deleted file mode 100644 index 61dde2c7..00000000 --- a/dist/src/utils/docs/data/cats/response.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CatsResponse = void 0; -const cats_1 = require("../../../../core/cats/entity/cats"); -const tests_1 = require("../../../tests/tests"); -const entity = new cats_1.CatsEntity({ - name: 'Miau', - breed: 'breed', - age: 1 -}); -const fullEntity = new cats_1.CatsEntity(Object.assign(Object.assign({}, entity), { createdAt: new Date(), updatedAt: new Date(), deletedAt: null })); -exports.CatsResponse = { - create: { created: true, id: (0, tests_1.generateUUID)() }, - delete: Object.assign(Object.assign({}, fullEntity), { deletedAt: new Date() }), - update: fullEntity, - getByID: fullEntity, - list: { docs: [fullEntity], limit: 10, page: 1, total: 1 } -}; -//# sourceMappingURL=response.js.map \ No newline at end of file diff --git a/dist/src/utils/docs/data/user/request.js b/dist/src/utils/docs/data/user/request.js deleted file mode 100644 index fa1f8bc5..00000000 --- a/dist/src/utils/docs/data/user/request.js +++ /dev/null @@ -1,10 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UsersRequest = void 0; -const user_1 = require("../../../../core/user/entity/user"); -const tests_1 = require("../../../tests/tests"); -exports.UsersRequest = { - create: { login: 'login', password: '*****', roles: [user_1.UserRole.USER] }, - update: { id: (0, tests_1.generateUUID)(), login: 'login', password: '*****', roles: [user_1.UserRole.USER] } -}; -//# sourceMappingURL=request.js.map \ No newline at end of file diff --git a/dist/src/utils/docs/data/user/response.js b/dist/src/utils/docs/data/user/response.js deleted file mode 100644 index 9472675e..00000000 --- a/dist/src/utils/docs/data/user/response.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UsersResponse = void 0; -const user_1 = require("../../../../core/user/entity/user"); -const tests_1 = require("../../../tests/tests"); -const entity = new user_1.UserEntity({ - login: 'login', - password: '**********', - roles: [user_1.UserRole.USER] -}); -const fullEntity = new user_1.UserEntity(Object.assign(Object.assign({}, entity), { createdAt: new Date(), updatedAt: new Date(), deletedAt: null })); -exports.UsersResponse = { - create: { created: true, id: (0, tests_1.generateUUID)() }, - delete: Object.assign(Object.assign({}, fullEntity), { deletedAt: new Date() }), - update: fullEntity, - getByID: fullEntity, - list: { docs: [fullEntity], limit: 10, page: 1, total: 1 } -}; -//# sourceMappingURL=response.js.map \ No newline at end of file diff --git a/dist/src/utils/docs/swagger.js b/dist/src/utils/docs/swagger.js deleted file mode 100644 index ddda1818..00000000 --- a/dist/src/utils/docs/swagger.js +++ /dev/null @@ -1,72 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Swagger = void 0; -const htttp_status_json_1 = __importDefault(require("../static/htttp-status.json")); -exports.Swagger = { - defaultResponseError({ status, route, message, description }) { - return { - schema: { - example: { - error: { - code: status, - traceid: '<traceid>', - message: [message, htttp_status_json_1.default[String(status)]].find(Boolean), - timestamp: '<timestamp>', - path: route - } - } - }, - description, - status - }; - }, - defaultResponseText({ status, text, description }) { - return { - content: { - 'text/plain': { - schema: { - example: text - } - } - }, - description, - status - }; - }, - defaultResponseJSON({ status, json, description }) { - return { - content: json - ? { - 'application/json': { - schema: { - example: json - } - } - } - : undefined, - description, - status - }; - }, - defaultRequestJSON(json) { - return { - schema: { - example: json - } - }; - }, - defaultApiQueryOptions({ example, name, required, description }) { - return { - schema: { example }, - required, - name, - description, - explode: true, - type: 'string' - }; - } -}; -//# sourceMappingURL=swagger.js.map \ No newline at end of file diff --git a/dist/src/utils/entity.js b/dist/src/utils/entity.js deleted file mode 100644 index 6f2d880b..00000000 --- a/dist/src/utils/entity.js +++ /dev/null @@ -1,25 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.BaseEntity = exports.withID = void 0; -const uuid_1 = require("uuid"); -const withID = (entity) => { - entity.id = [entity === null || entity === void 0 ? void 0 : entity.id, entity === null || entity === void 0 ? void 0 : entity._id, (0, uuid_1.v4)()].find(Boolean); - return entity; -}; -exports.withID = withID; -const BaseEntity = (schema) => { - class Entity { - setDeleted() { - this.deletedAt = new Date(); - } - validate(entity) { - Object.assign(entity, (0, exports.withID)(entity)); - Object.assign(this, { id: entity['id'] }); - return schema.parse(entity); - } - } - Entity.nameof = (name) => name; - return Entity; -}; -exports.BaseEntity = BaseEntity; -//# sourceMappingURL=entity.js.map \ No newline at end of file diff --git a/dist/src/utils/exception.js b/dist/src/utils/exception.js deleted file mode 100644 index 99275dc4..00000000 --- a/dist/src/utils/exception.js +++ /dev/null @@ -1,52 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ApiForbiddenException = exports.ApiBadRequestException = exports.ApiUnauthorizedException = exports.ApiConflictException = exports.ApiNotFoundException = exports.ApiInternalServerException = exports.BaseException = void 0; -const common_1 = require("@nestjs/common"); -class BaseException extends common_1.HttpException { - constructor(message, status, parameters) { - super(message, status); - if (parameters) { - this.parameters = parameters; - } - this.statusCode = super.getStatus(); - Error.captureStackTrace(this); - } -} -exports.BaseException = BaseException; -class ApiInternalServerException extends BaseException { - constructor(message, parameters) { - super(message !== null && message !== void 0 ? message : 'InternalServerException', 500, parameters); - } -} -exports.ApiInternalServerException = ApiInternalServerException; -class ApiNotFoundException extends BaseException { - constructor(message, parameters) { - super(message !== null && message !== void 0 ? message : 'NotFoundException', 404, parameters); - } -} -exports.ApiNotFoundException = ApiNotFoundException; -class ApiConflictException extends BaseException { - constructor(message, parameters) { - super(message !== null && message !== void 0 ? message : 'ConflictException', 409, parameters); - } -} -exports.ApiConflictException = ApiConflictException; -class ApiUnauthorizedException extends BaseException { - constructor(message, parameters) { - super(message !== null && message !== void 0 ? message : 'UnauthorizedException', 401, parameters); - } -} -exports.ApiUnauthorizedException = ApiUnauthorizedException; -class ApiBadRequestException extends BaseException { - constructor(message, parameters) { - super(message !== null && message !== void 0 ? message : 'BadRequestException', 400, parameters); - } -} -exports.ApiBadRequestException = ApiBadRequestException; -class ApiForbiddenException extends BaseException { - constructor(message, parameters) { - super(message !== null && message !== void 0 ? message : 'BadRequestException', 403, parameters); - } -} -exports.ApiForbiddenException = ApiForbiddenException; -//# sourceMappingURL=exception.js.map \ No newline at end of file diff --git a/dist/src/utils/filters/http-exception.filter.js b/dist/src/utils/filters/http-exception.filter.js deleted file mode 100644 index 68511d03..00000000 --- a/dist/src/utils/filters/http-exception.filter.js +++ /dev/null @@ -1,69 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.AppExceptionFilter = void 0; -const common_1 = require("@nestjs/common"); -const axios_1 = require("axios"); -const zod_1 = require("zod"); -const adapter_1 = require("../../infra/logger/adapter"); -const date_1 = require("../date"); -const htttp_status_json_1 = __importDefault(require("../static/htttp-status.json")); -let AppExceptionFilter = exports.AppExceptionFilter = class AppExceptionFilter { - constructor(loggerService) { - this.loggerService = loggerService; - } - catch(exception, host) { - const context = host.switchToHttp(); - const response = context.getResponse(); - const request = context.getRequest(); - const status = this.getStatus(exception); - exception.traceid = [exception.traceid, request['id']].find(Boolean); - const message = this.getMessage(exception); - this.loggerService.error(exception, message, exception.context); - response.status(status).json({ - error: { - code: status, - traceid: exception.traceid, - message: [htttp_status_json_1.default[String(status)], message].find(Boolean), - timestamp: date_1.DateUtils.getDateStringWithFormat(), - path: request.url - } - }); - } - getMessage(exception) { - var _a; - if (exception instanceof zod_1.ZodError) { - return exception.issues.map((i) => `${i.path}: ${i.message}`).join(','); - } - if (exception instanceof axios_1.AxiosError) { - if ((_a = exception.response) === null || _a === void 0 ? void 0 : _a.data) { - return exception.message; - } - } - return exception.message; - } - getStatus(exception) { - if (exception instanceof zod_1.ZodError) { - return common_1.HttpStatus.BAD_REQUEST; - } - return exception instanceof common_1.HttpException - ? exception.getStatus() - : [exception['status'], common_1.HttpStatus.INTERNAL_SERVER_ERROR].find(Boolean); - } -}; -exports.AppExceptionFilter = AppExceptionFilter = __decorate([ - (0, common_1.Catch)(), - __metadata("design:paramtypes", [adapter_1.ILoggerAdapter]) -], AppExceptionFilter); -//# sourceMappingURL=http-exception.filter.js.map \ No newline at end of file diff --git a/dist/src/utils/interceptors/auth-guard.interceptor.js b/dist/src/utils/interceptors/auth-guard.interceptor.js deleted file mode 100644 index 557f9603..00000000 --- a/dist/src/utils/interceptors/auth-guard.interceptor.js +++ /dev/null @@ -1,41 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RolesGuardInterceptor = void 0; -const common_1 = require("@nestjs/common"); -const core_1 = require("@nestjs/core"); -const role_decorator_1 = require("../decorators/role.decorator"); -let RolesGuardInterceptor = exports.RolesGuardInterceptor = class RolesGuardInterceptor { - constructor(reflector) { - this.reflector = reflector; - } - canActivate(context) { - var _a; - const requiredRoles = this.reflector.getAllAndOverride(role_decorator_1.ROLES_KEY, [ - context.getHandler(), - context.getClass() - ]); - if (!requiredRoles) { - return true; - } - const request = context.switchToHttp().getRequest(); - const roles = (_a = request === null || request === void 0 ? void 0 : request.user) === null || _a === void 0 ? void 0 : _a.roles; - if (!roles) { - return true; - } - return requiredRoles.some((role) => roles.includes(role)); - } -}; -exports.RolesGuardInterceptor = RolesGuardInterceptor = __decorate([ - (0, common_1.Injectable)(), - __metadata("design:paramtypes", [core_1.Reflector]) -], RolesGuardInterceptor); -//# sourceMappingURL=auth-guard.interceptor.js.map \ No newline at end of file diff --git a/dist/src/utils/interceptors/http-exception.interceptor.js b/dist/src/utils/interceptors/http-exception.interceptor.js deleted file mode 100644 index 8acbdfc0..00000000 --- a/dist/src/utils/interceptors/http-exception.interceptor.js +++ /dev/null @@ -1,72 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ExceptionInterceptor = void 0; -const common_1 = require("@nestjs/common"); -const api_1 = require("@opentelemetry/api"); -const semantic_conventions_1 = require("@opentelemetry/semantic-conventions"); -const operators_1 = require("rxjs/operators"); -const zod_1 = require("zod"); -const logger_1 = require("../../infra/logger"); -let ExceptionInterceptor = exports.ExceptionInterceptor = class ExceptionInterceptor { - constructor(logger) { - this.logger = logger; - } - intercept(executionContext, next) { - return next.handle().pipe((0, operators_1.catchError)((error) => { - var _a; - error.status = this.getStatusCode(error); - const headers = (_a = executionContext.getArgs()[0]) === null || _a === void 0 ? void 0 : _a.headers; - const request = executionContext.switchToHttp().getRequest(); - const res = executionContext.switchToHttp().getResponse(); - this.logger.logger(request, res); - this.sanitizeExternalError(error); - if (typeof error === 'object' && !error.traceid) { - error.traceid = headers.traceid; - } - const context = `${executionContext.getClass().name}/${executionContext.getHandler().name}`; - error.context = error.context = context; - if (request === null || request === void 0 ? void 0 : request.tracing) { - request.tracing.addAttribute(semantic_conventions_1.SemanticAttributes.HTTP_STATUS_CODE, error.status); - request.tracing.setStatus({ message: error.message, code: api_1.SpanStatusCode.ERROR }); - request.tracing.finish(); - } - throw error; - })); - } - getStatusCode(error) { - var _a, _b, _c, _d, _e, _f; - if (error instanceof zod_1.ZodError) { - return 400; - } - return [ - error.status, - (_a = error === null || error === void 0 ? void 0 : error.response) === null || _a === void 0 ? void 0 : _a.status, - (_c = (_b = error === null || error === void 0 ? void 0 : error.response) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c.code, - (_f = (_e = (_d = error === null || error === void 0 ? void 0 : error.response) === null || _d === void 0 ? void 0 : _d.data) === null || _e === void 0 ? void 0 : _e.error) === null || _f === void 0 ? void 0 : _f.code, - 500 - ].find(Boolean); - } - sanitizeExternalError(error) { - var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k; - if (typeof (error === null || error === void 0 ? void 0 : error.response) === 'object' && (error === null || error === void 0 ? void 0 : error.isAxiosError)) { - const status = [(_b = (_a = error === null || error === void 0 ? void 0 : error.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.code, (_e = (_d = (_c = error === null || error === void 0 ? void 0 : error.response) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.error) === null || _e === void 0 ? void 0 : _e.code, error === null || error === void 0 ? void 0 : error.status].find(Boolean); - error.message = [(_g = (_f = error === null || error === void 0 ? void 0 : error.response) === null || _f === void 0 ? void 0 : _f.data) === null || _g === void 0 ? void 0 : _g.message, (_k = (_j = (_h = error === null || error === void 0 ? void 0 : error.response) === null || _h === void 0 ? void 0 : _h.data) === null || _j === void 0 ? void 0 : _j.error) === null || _k === void 0 ? void 0 : _k.message, error.message].find(Boolean); - error['getResponse'] = () => { var _a, _b, _c; return [(_b = (_a = error === null || error === void 0 ? void 0 : error.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.error, (_c = error === null || error === void 0 ? void 0 : error.response) === null || _c === void 0 ? void 0 : _c.data].find(Boolean); }; - error['getStatus'] = () => status; - } - } -}; -exports.ExceptionInterceptor = ExceptionInterceptor = __decorate([ - (0, common_1.Injectable)(), - __metadata("design:paramtypes", [logger_1.ILoggerAdapter]) -], ExceptionInterceptor); -//# sourceMappingURL=http-exception.interceptor.js.map \ No newline at end of file diff --git a/dist/src/utils/interceptors/http-logger.interceptor.js b/dist/src/utils/interceptors/http-logger.interceptor.js deleted file mode 100644 index 47079a17..00000000 --- a/dist/src/utils/interceptors/http-logger.interceptor.js +++ /dev/null @@ -1,28 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.HttpLoggerInterceptor = void 0; -const common_1 = require("@nestjs/common"); -const uuid_1 = require("uuid"); -let HttpLoggerInterceptor = exports.HttpLoggerInterceptor = class HttpLoggerInterceptor { - intercept(executionContext, next) { - var _a; - const context = `${executionContext.getClass().name}/${executionContext.getHandler().name}`; - const request = executionContext.switchToHttp().getRequest(); - request['context'] = context; - if (!((_a = request.headers) === null || _a === void 0 ? void 0 : _a.traceid)) { - request.headers.traceid = (0, uuid_1.v4)(); - request.id = request.headers.traceid; - } - return next.handle(); - } -}; -exports.HttpLoggerInterceptor = HttpLoggerInterceptor = __decorate([ - (0, common_1.Injectable)() -], HttpLoggerInterceptor); -//# sourceMappingURL=http-logger.interceptor.js.map \ No newline at end of file diff --git a/dist/src/utils/interceptors/metrics.interceptor.js b/dist/src/utils/interceptors/metrics.interceptor.js deleted file mode 100644 index ae21dfc3..00000000 --- a/dist/src/utils/interceptors/metrics.interceptor.js +++ /dev/null @@ -1,51 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MetricsInterceptor = void 0; -const common_1 = require("@nestjs/common"); -const api_1 = __importDefault(require("@opentelemetry/api")); -const semantic_conventions_1 = require("@opentelemetry/semantic-conventions"); -const package_json_1 = require("../../../package.json"); -const rxjs_1 = require("rxjs"); -const date_1 = require("../date"); -let MetricsInterceptor = exports.MetricsInterceptor = class MetricsInterceptor { - constructor() { - this.metrics = api_1.default.metrics.getMeter(package_json_1.name, package_json_1.version); - this.counter = this.metrics.createCounter(`api_requests`, { description: 'Request Counter', unit: 'ms' }); - this.histogram = this.metrics.createHistogram('api_histogram', { description: 'Request Time' }); - } - intercept(executionContext, next) { - const request = executionContext.switchToHttp().getRequest(); - const res = executionContext.switchToHttp().getResponse(); - const startTime = date_1.DateUtils.getJSDate().getTime(); - this.counter.add(1, { - [semantic_conventions_1.SemanticAttributes.HTTP_URL]: request.url, - [semantic_conventions_1.SemanticAttributes.HTTP_METHOD]: request.method - }); - return next.handle().pipe((0, rxjs_1.tap)(() => { - const endTime = date_1.DateUtils.getJSDate().getTime(); - const executionTime = endTime - startTime; - this.histogram.record(executionTime, { - [semantic_conventions_1.SemanticAttributes.HTTP_URL]: request.url, - [semantic_conventions_1.SemanticAttributes.HTTP_METHOD]: request.method, - [semantic_conventions_1.SemanticAttributes.HTTP_STATUS_CODE]: res.statusCode - }); - })); - } -}; -exports.MetricsInterceptor = MetricsInterceptor = __decorate([ - (0, common_1.Injectable)(), - __metadata("design:paramtypes", []) -], MetricsInterceptor); -//# sourceMappingURL=metrics.interceptor.js.map \ No newline at end of file diff --git a/dist/src/utils/interceptors/tracing.interceptor.js b/dist/src/utils/interceptors/tracing.interceptor.js deleted file mode 100644 index e615c175..00000000 --- a/dist/src/utils/interceptors/tracing.interceptor.js +++ /dev/null @@ -1,113 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.TracingInterceptor = void 0; -const common_1 = require("@nestjs/common"); -const api_1 = __importStar(require("@opentelemetry/api")); -const semantic_conventions_1 = require("@opentelemetry/semantic-conventions"); -const axios_1 = __importDefault(require("axios")); -const axios_better_stacktrace_1 = __importDefault(require("axios-better-stacktrace")); -const package_json_1 = require("../../../package.json"); -const rxjs_1 = require("rxjs"); -const logger_1 = require("../../infra/logger"); -const axios_2 = require("../axios"); -const request_1 = require("../request"); -let TracingInterceptor = exports.TracingInterceptor = class TracingInterceptor { - constructor(logger) { - this.logger = logger; - this.tracer = api_1.default.trace.getTracer(package_json_1.name, package_json_1.version); - } - intercept(executionContext, next) { - var _a; - const request = executionContext.switchToHttp().getRequest(); - const res = executionContext.switchToHttp().getResponse(); - const requestId = (_a = request.headers.traceid) !== null && _a !== void 0 ? _a : request.id; - const controller = `${executionContext.getClass().name}.${executionContext.getHandler().name}`; - const span = this.tracer.startSpan((0, request_1.getPathWithoutUUID)(request.path)); - const createJaegerInstance = () => { - return { - span: span, - tracer: this.tracer, - tracerId: requestId, - attributes: semantic_conventions_1.SemanticAttributes, - axios: (options) => { - request.headers.traceid = requestId; - const http = axios_1.default.create(Object.assign(Object.assign({}, options), { headers: { traceid: request.id, authorization: request.headers.authorization } })); - (0, axios_better_stacktrace_1.default)(http); - (0, axios_2.requestRetry)({ axios: http, logger: this.logger }); - http.interceptors.response.use((response) => response, (error) => { - (0, axios_2.interceptAxiosResponseError)(error, this.logger); - return Promise.reject(error); - }); - return http; - }, - setStatus: (status) => { - span.setStatus(status); - }, - logEvent: (key, value) => { - span.addEvent(key, value); - }, - addAttribute: (key, value) => { - span.setAttribute(key, value); - }, - finish: () => { - span.end(); - }, - createSpan: (name, parent) => { - return this.tracer.startSpan(name, { root: false }, parent); - } - }; - }; - request.tracing = createJaegerInstance(); - request.tracing.addAttribute(semantic_conventions_1.SemanticAttributes.HTTP_METHOD, request.method); - request.tracing.addAttribute(semantic_conventions_1.SemanticAttributes.HTTP_URL, request.path); - request.tracing.addAttribute('context', controller); - if (requestId) { - request.tracing.addAttribute('traceid', requestId); - } - return next.handle().pipe((0, rxjs_1.tap)(() => { - request.tracing.setStatus({ code: api_1.SpanStatusCode.OK }); - request.tracing.addAttribute(semantic_conventions_1.SemanticAttributes.HTTP_STATUS_CODE, res.statusCode); - request.tracing.finish(); - })); - } -}; -exports.TracingInterceptor = TracingInterceptor = __decorate([ - (0, common_1.Injectable)(), - __metadata("design:paramtypes", [logger_1.ILoggerAdapter]) -], TracingInterceptor); -//# sourceMappingURL=tracing.interceptor.js.map \ No newline at end of file diff --git a/dist/src/utils/middlewares/is-logged.middleware.js b/dist/src/utils/middlewares/is-logged.middleware.js deleted file mode 100644 index 0279377e..00000000 --- a/dist/src/utils/middlewares/is-logged.middleware.js +++ /dev/null @@ -1,59 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IsLoggedMiddleware = void 0; -const common_1 = require("@nestjs/common"); -const uuid_1 = require("uuid"); -const cache_1 = require("../../infra/cache"); -const logger_1 = require("../../infra/logger"); -const auth_1 = require("../../libs/auth"); -const exception_1 = require("../exception"); -let IsLoggedMiddleware = exports.IsLoggedMiddleware = class IsLoggedMiddleware { - constructor(tokenService, loggerService, redisService) { - this.tokenService = tokenService; - this.loggerService = loggerService; - this.redisService = redisService; - } - async use(request, response, next) { - var _a; - const tokenHeader = request.headers.authorization; - if (!((_a = request.headers) === null || _a === void 0 ? void 0 : _a.traceid)) { - request.headers.traceid = (0, uuid_1.v4)(); - } - if (!tokenHeader) { - response.status(401); - request['id'] = request.headers.traceid; - this.loggerService.logger(request, response); - throw new exception_1.ApiUnauthorizedException('no token provided'); - } - const token = tokenHeader.split(' ')[1]; - const expiredToken = await this.redisService.get(token); - if (expiredToken) { - request.id = request.headers.traceid; - next(new exception_1.ApiUnauthorizedException('you have been logged out')); - } - const userDecoded = await this.tokenService.verify(token).catch((error) => { - request.id = request.headers.traceid; - error.status = common_1.HttpStatus.UNAUTHORIZED; - this.loggerService.logger(request, response); - next(error); - }); - request['user'] = userDecoded; - next(); - } -}; -exports.IsLoggedMiddleware = IsLoggedMiddleware = __decorate([ - (0, common_1.Injectable)(), - __metadata("design:paramtypes", [auth_1.ITokenAdapter, - logger_1.ILoggerAdapter, - cache_1.ICacheAdapter]) -], IsLoggedMiddleware); -//# sourceMappingURL=is-logged.middleware.js.map \ No newline at end of file diff --git a/dist/src/utils/pagination.js b/dist/src/utils/pagination.js deleted file mode 100644 index 62d9a540..00000000 --- a/dist/src/utils/pagination.js +++ /dev/null @@ -1,37 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.calucaleSkip = exports.PaginationSchema = void 0; -const zod_1 = require("zod"); -const maxLimit = (limit) => (limit > 100 ? 100 : limit); -exports.PaginationSchema = zod_1.z - .object({ - page: zod_1.z.number().or(zod_1.z.string()).or(zod_1.z.nan()).default(1), - limit: zod_1.z.number().or(zod_1.z.string()).or(zod_1.z.nan()).default(10) -}) - .transform((pagination) => { - let limit = Number(pagination.limit); - let page = Number(pagination.page); - if (isNaN(limit)) { - limit = 10; - } - if (isNaN(page)) { - page = 1; - } - return { - page: page > 0 ? +page : 1, - limit: limit > 0 ? maxLimit(+limit) : 10 - }; -}) - .refine((pagination) => Number.isInteger(pagination.page), { - path: ['page'], - message: 'invalidInteger' -}) - .refine((pagination) => Number.isInteger(pagination.limit), { - path: ['limit'], - message: 'invalidInteger' -}); -const calucaleSkip = (input) => { - return (input.page - 1) * input.limit; -}; -exports.calucaleSkip = calucaleSkip; -//# sourceMappingURL=pagination.js.map \ No newline at end of file diff --git a/dist/src/utils/request.js b/dist/src/utils/request.js deleted file mode 100644 index b4ea4c05..00000000 --- a/dist/src/utils/request.js +++ /dev/null @@ -1,6 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.getPathWithoutUUID = void 0; -const getPathWithoutUUID = (path) => path.replace(/[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/, 'uuid'); -exports.getPathWithoutUUID = getPathWithoutUUID; -//# sourceMappingURL=request.js.map \ No newline at end of file diff --git a/dist/src/utils/search.js b/dist/src/utils/search.js deleted file mode 100644 index 851f5fe4..00000000 --- a/dist/src/utils/search.js +++ /dev/null @@ -1,44 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SearchSchema = exports.SearchHttpSchema = void 0; -const zod_1 = require("zod"); -exports.SearchHttpSchema = zod_1.z - .string() - .optional() - .refine((check) => { - if (!check) - return true; - return [!check.startsWith(':'), check.includes(':')].every(Boolean); -}, { - message: 'invalidSearchFormat' -}) - .refine((search) => { - if (!search) - return true; - return String(search) - .split(',') - .every((s) => { - const [value] = s.split(':').reverse(); - if (!value) - return false; - return true; - }); -}, { - message: 'searchMustBe: value' -}) - .transform((searchString) => { - if (!searchString) - return null; - const search = {}; - String(searchString) - .split(',') - .forEach((s) => { - const propertyIndex = s.indexOf(':'); - const value = s.slice(propertyIndex + 1, s.length); - const [field] = s.split(':'); - search[`${field}`] = value.trim(); - }); - return search; -}); -exports.SearchSchema = zod_1.z.object({ search: zod_1.z.record(zod_1.z.string().trim(), zod_1.z.number().or(zod_1.z.string())).nullable() }); -//# sourceMappingURL=search.js.map \ No newline at end of file diff --git a/dist/src/utils/sort.js b/dist/src/utils/sort.js deleted file mode 100644 index e23a1c14..00000000 --- a/dist/src/utils/sort.js +++ /dev/null @@ -1,46 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SortSchema = exports.SortHttpSchema = exports.SortEnum = void 0; -const zod_1 = require("zod"); -var SortEnum; -(function (SortEnum) { - SortEnum[SortEnum["asc"] = 1] = "asc"; - SortEnum[SortEnum["desc"] = -1] = "desc"; -})(SortEnum || (exports.SortEnum = SortEnum = {})); -exports.SortHttpSchema = zod_1.z - .string() - .optional() - .refine((check) => { - if (!check) - return true; - return [!check.startsWith(':'), check.includes(':')].every(Boolean); -}, { - message: 'invalidSortFormat' -}) - .refine((sort) => { - if (!sort) - return true; - return String(sort) - .split(',') - .every((s) => { - const [order] = s.split(':').reverse(); - return ['asc', 'desc'].includes(order.trim().toLowerCase() || 'asc'); - }); -}, { - message: 'invalidSortOrderMustBe: asc, desc' -}) - .transform((sort) => { - const sortDefault = sort || 'createdAt:desc'; - const order = Object.fromEntries(String(sort && !sort.includes('createdAt') ? sort : sortDefault) - .split(',') - .map((s) => { - const [field, order] = s.split(':'); - const sorted = [field.trim(), SortEnum[(order.trim().toLowerCase() || 'asc')]]; - return sorted; - })); - return order; -}); -exports.SortSchema = zod_1.z.object({ - sort: zod_1.z.record(zod_1.z.string().trim().min(1), zod_1.z.nativeEnum(SortEnum)) -}); -//# sourceMappingURL=sort.js.map \ No newline at end of file diff --git a/dist/src/utils/tests/mocks/request.js b/dist/src/utils/tests/mocks/request.js deleted file mode 100644 index 0f0c04c8..00000000 --- a/dist/src/utils/tests/mocks/request.js +++ /dev/null @@ -1,18 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RequestMock = void 0; -class RequestMock { -} -exports.RequestMock = RequestMock; -RequestMock.trancingMock = { - tracing: { - logEvent(key, value) { - return key + value; - }, - setStatus(event) { - return event; - } - }, - user: { login: 'test' } -}; -//# sourceMappingURL=request.js.map \ No newline at end of file diff --git a/dist/src/utils/tests/tests.js b/dist/src/utils/tests/tests.js deleted file mode 100644 index 308d9690..00000000 --- a/dist/src/utils/tests/tests.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.generateUUID = exports.expectZodError = void 0; -const zod_1 = require("zod"); -const expectZodError = async (callback, expected) => { - try { - await callback(); - } - catch (error) { - if (error instanceof zod_1.z.ZodError) { - const issues = error.issues.map(({ message, path }) => ({ message, path: path[0] })); - expected(issues); - } - } -}; -exports.expectZodError = expectZodError; -const generateUUID = () => '9269248e-54cc-46f9-80c0-7029c989c0e3'; -exports.generateUUID = generateUUID; -//# sourceMappingURL=tests.js.map \ No newline at end of file diff --git a/dist/src/utils/tracing.js b/dist/src/utils/tracing.js deleted file mode 100644 index bf6890de..00000000 --- a/dist/src/utils/tracing.js +++ /dev/null @@ -1,86 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -const api_1 = require("@opentelemetry/api"); -const exporter_metrics_otlp_http_1 = require("@opentelemetry/exporter-metrics-otlp-http"); -const exporter_trace_otlp_proto_1 = require("@opentelemetry/exporter-trace-otlp-proto"); -const instrumentation_http_1 = require("@opentelemetry/instrumentation-http"); -const instrumentation_mongodb_1 = require("@opentelemetry/instrumentation-mongodb"); -const instrumentation_pg_1 = require("@opentelemetry/instrumentation-pg"); -const instrumentation_redis_4_1 = require("@opentelemetry/instrumentation-redis-4"); -const resources_1 = require("@opentelemetry/resources"); -const sdk_metrics_1 = require("@opentelemetry/sdk-metrics"); -const sdk_node_1 = require("@opentelemetry/sdk-node"); -const semantic_conventions_1 = require("@opentelemetry/semantic-conventions"); -const uuid_1 = require("uuid"); -const package_json_1 = require("../../package.json"); -const request_1 = require("./request"); -api_1.diag.setLogger(new api_1.DiagConsoleLogger(), api_1.DiagLogLevel.ERROR); -const tracerExporter = new exporter_trace_otlp_proto_1.OTLPTraceExporter(); -const resource = new resources_1.Resource({ - [semantic_conventions_1.SemanticResourceAttributes.SERVICE_NAME]: package_json_1.name, - [semantic_conventions_1.SemanticResourceAttributes.SERVICE_VERSION]: package_json_1.version -}); -const metricExporter = new exporter_metrics_otlp_http_1.OTLPMetricExporter(); -const metricReader = new sdk_metrics_1.PeriodicExportingMetricReader({ - exporter: metricExporter, - exportIntervalMillis: 10000 -}); -const sdk = new sdk_node_1.NodeSDK({ - resource, - traceExporter: tracerExporter, - metricReader: metricReader, - instrumentations: [ - new instrumentation_http_1.HttpInstrumentation({ - responseHook: (span, res) => { - if (span['parentSpanId']) { - span.updateName(updateSpanName(span, res['req'])); - } - }, - requestHook: (span, request) => { - var _a; - const id = [request['id'], request['traceid'], (_a = request['headers']) === null || _a === void 0 ? void 0 : _a.traceid].find(Boolean); - if (!id) { - request['headers'].traceid = (0, uuid_1.v4)(); - request['id'] = request['headers'].traceid; - span.setAttribute('traceid', request['id']); - } - span.updateName(updateSpanName(span, request)); - } - }), - new instrumentation_redis_4_1.RedisInstrumentation({ - requireParentSpan: true, - responseHook: (span) => { - const [name, method] = span['name'].split('-'); - span.updateName(`${name} => ${method}`); - } - }), - new instrumentation_mongodb_1.MongoDBInstrumentation({ - enhancedDatabaseReporting: true, - responseHook: (span) => { - span.updateName(`mongodb => ${span['name'].split('.')[1]}`); - } - }), - new instrumentation_pg_1.PgInstrumentation({ - requireParentSpan: true, - responseHook: (span) => { - span.updateName(`postgress => ${span['name'].split(' ')[0]}`); - } - }) - ] -}); -sdk.start(); -process.on('SIGTERM', () => { - sdk - .shutdown() - .then(() => console.error('Tracing terminated')) - .catch((error) => console.error('Error terminating tracing', error)) - .finally(() => process.exit(0)); -}); -const updateSpanName = (span, request) => { - var _a, _b; - if (span['parentSpanId']) { - return `${span['name']} => ${request['protocol']}//${request['host']}${(0, request_1.getPathWithoutUUID)(request['path'])}`; - } - return `${span['name']} => ${[(_a = request['headers']) === null || _a === void 0 ? void 0 : _a.origin, request['host'], (_b = request['headers']) === null || _b === void 0 ? void 0 : _b.host].find(Boolean)}${(0, request_1.getPathWithoutUUID)(request['url'])}`; -}; -//# sourceMappingURL=tracing.js.map \ No newline at end of file