├── .gitignore ├── database └── Dockerfile ├── docker-compose.yml ├── readme.md └── source ├── .env.example ├── Dockerfile ├── nodemon.json ├── package.json ├── src ├── apis │ └── upload.api.ts ├── app.ts ├── cache │ └── redis.client.ts ├── configs │ ├── db │ │ └── connector.db.ts │ └── middlewares │ │ ├── body-parser.config-middleware.ts │ │ ├── compression.config-middleware.ts │ │ ├── index.ts │ │ └── lusca.config-middleware.ts ├── constants │ └── auth.constant.ts ├── decorators │ ├── controller.decorator.ts │ ├── http-method.decorator.ts │ ├── injectable.decorator.ts │ └── middleware.decorator.ts ├── di │ ├── container.ts │ └── index.ts ├── helpers │ ├── file.helper.ts │ └── jwt.helper.ts ├── interfaces │ └── repository.interface.ts ├── middlewares │ ├── admin.authenticate.middleware.ts │ └── authentication.middleware.ts ├── models │ ├── db-query │ │ └── output.db-query.ts │ ├── decorators │ │ └── route.definition.ts │ └── request │ │ └── request.model.ts ├── providers │ └── api.provider.ts ├── repositories │ ├── base.repository.ts │ └── media.repository.ts ├── server.ts ├── services │ └── upload-cloudinary.service.ts └── utils │ ├── constants │ ├── di.constant.ts │ └── file.constant.ts │ ├── exceptions │ └── raise.exception.ts │ ├── helpers │ └── object.helper.ts │ ├── slugable │ └── slug.function.ts │ ├── transform │ └── image.transform.ts │ ├── upload │ └── upload-function.util.ts │ └── validators │ └── request.validate.ts ├── start.sh └── tsconfig.json /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/.gitignore -------------------------------------------------------------------------------- /database/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/database/Dockerfile -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/readme.md -------------------------------------------------------------------------------- /source/.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/.env.example -------------------------------------------------------------------------------- /source/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/Dockerfile -------------------------------------------------------------------------------- /source/nodemon.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/nodemon.json -------------------------------------------------------------------------------- /source/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/package.json -------------------------------------------------------------------------------- /source/src/apis/upload.api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/apis/upload.api.ts -------------------------------------------------------------------------------- /source/src/app.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/app.ts -------------------------------------------------------------------------------- /source/src/cache/redis.client.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/cache/redis.client.ts -------------------------------------------------------------------------------- /source/src/configs/db/connector.db.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/configs/db/connector.db.ts -------------------------------------------------------------------------------- /source/src/configs/middlewares/body-parser.config-middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/configs/middlewares/body-parser.config-middleware.ts -------------------------------------------------------------------------------- /source/src/configs/middlewares/compression.config-middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/configs/middlewares/compression.config-middleware.ts -------------------------------------------------------------------------------- /source/src/configs/middlewares/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/configs/middlewares/index.ts -------------------------------------------------------------------------------- /source/src/configs/middlewares/lusca.config-middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/configs/middlewares/lusca.config-middleware.ts -------------------------------------------------------------------------------- /source/src/constants/auth.constant.ts: -------------------------------------------------------------------------------- 1 | export const AUTH_CONSTANT = { 2 | ADMIN_ROLE: 3 3 | }; 4 | -------------------------------------------------------------------------------- /source/src/decorators/controller.decorator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/decorators/controller.decorator.ts -------------------------------------------------------------------------------- /source/src/decorators/http-method.decorator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/decorators/http-method.decorator.ts -------------------------------------------------------------------------------- /source/src/decorators/injectable.decorator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/decorators/injectable.decorator.ts -------------------------------------------------------------------------------- /source/src/decorators/middleware.decorator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/decorators/middleware.decorator.ts -------------------------------------------------------------------------------- /source/src/di/container.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/di/container.ts -------------------------------------------------------------------------------- /source/src/di/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/di/index.ts -------------------------------------------------------------------------------- /source/src/helpers/file.helper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/helpers/file.helper.ts -------------------------------------------------------------------------------- /source/src/helpers/jwt.helper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/helpers/jwt.helper.ts -------------------------------------------------------------------------------- /source/src/interfaces/repository.interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/interfaces/repository.interface.ts -------------------------------------------------------------------------------- /source/src/middlewares/admin.authenticate.middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/middlewares/admin.authenticate.middleware.ts -------------------------------------------------------------------------------- /source/src/middlewares/authentication.middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/middlewares/authentication.middleware.ts -------------------------------------------------------------------------------- /source/src/models/db-query/output.db-query.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/models/db-query/output.db-query.ts -------------------------------------------------------------------------------- /source/src/models/decorators/route.definition.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/models/decorators/route.definition.ts -------------------------------------------------------------------------------- /source/src/models/request/request.model.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/models/request/request.model.ts -------------------------------------------------------------------------------- /source/src/providers/api.provider.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/providers/api.provider.ts -------------------------------------------------------------------------------- /source/src/repositories/base.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/repositories/base.repository.ts -------------------------------------------------------------------------------- /source/src/repositories/media.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/repositories/media.repository.ts -------------------------------------------------------------------------------- /source/src/server.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/server.ts -------------------------------------------------------------------------------- /source/src/services/upload-cloudinary.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/services/upload-cloudinary.service.ts -------------------------------------------------------------------------------- /source/src/utils/constants/di.constant.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/utils/constants/di.constant.ts -------------------------------------------------------------------------------- /source/src/utils/constants/file.constant.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/utils/constants/file.constant.ts -------------------------------------------------------------------------------- /source/src/utils/exceptions/raise.exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/utils/exceptions/raise.exception.ts -------------------------------------------------------------------------------- /source/src/utils/helpers/object.helper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/utils/helpers/object.helper.ts -------------------------------------------------------------------------------- /source/src/utils/slugable/slug.function.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/utils/slugable/slug.function.ts -------------------------------------------------------------------------------- /source/src/utils/transform/image.transform.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/utils/transform/image.transform.ts -------------------------------------------------------------------------------- /source/src/utils/upload/upload-function.util.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/utils/upload/upload-function.util.ts -------------------------------------------------------------------------------- /source/src/utils/validators/request.validate.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/src/utils/validators/request.validate.ts -------------------------------------------------------------------------------- /source/start.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/start.sh -------------------------------------------------------------------------------- /source/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clement-lta/singleton-di-nodejs/HEAD/source/tsconfig.json --------------------------------------------------------------------------------