@biorate/nestjs-tools 1.169.0 → 1.169.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/coverage/clover.xml +2 -2
- package/coverage/index.html +1 -1
- package/coverage/interfaces/index.html +1 -1
- package/coverage/interfaces/index.ts.html +1 -1
- package/coverage/interfaces/ports/client.driven.port.ts.html +1 -1
- package/coverage/interfaces/ports/crud.driven.port.ts.html +1 -1
- package/coverage/interfaces/ports/index.html +1 -1
- package/coverage/interfaces/ports/index.ts.html +1 -1
- package/coverage/interfaces/ports/metrics.driven.port.ts.html +1 -1
- package/coverage/src/app/application/index.html +1 -1
- package/coverage/src/app/application/index.ts.html +1 -1
- package/coverage/src/app/application/ports/index.html +1 -1
- package/coverage/src/app/application/ports/index.ts.html +1 -1
- package/coverage/src/app/application/service/client/get-locale.use-case.ts.html +1 -1
- package/coverage/src/app/application/service/client/index.html +1 -1
- package/coverage/src/app/application/service/client/index.ts.html +1 -1
- package/coverage/src/app/application/service/client/set-locale.use-case.ts.html +1 -1
- package/coverage/src/app/application/service/index.html +1 -1
- package/coverage/src/app/application/service/index.ts.html +1 -1
- package/coverage/src/app/application/service/metrics/get-metrics.use-case.ts.html +1 -1
- package/coverage/src/app/application/service/metrics/index.html +1 -1
- package/coverage/src/app/application/service/metrics/index.ts.html +1 -1
- package/coverage/src/app/index.html +1 -1
- package/coverage/src/app/index.ts.html +1 -1
- package/coverage/src/app/infrastructure/adapters/client.repository.adapter.ts.html +1 -1
- package/coverage/src/app/infrastructure/adapters/index.html +1 -1
- package/coverage/src/app/infrastructure/adapters/index.ts.html +1 -1
- package/coverage/src/app/infrastructure/adapters/metrics.repository.adapter.ts.html +1 -1
- package/coverage/src/app/infrastructure/controllers/client.controller.ts.html +1 -1
- package/coverage/src/app/infrastructure/controllers/index.html +1 -1
- package/coverage/src/app/infrastructure/controllers/index.ts.html +1 -1
- package/coverage/src/app/infrastructure/controllers/metrics.controller.ts.html +1 -1
- package/coverage/src/app/infrastructure/controllers/probe.controller.ts.html +1 -1
- package/coverage/src/app/infrastructure/index.html +1 -1
- package/coverage/src/app/infrastructure/index.ts.html +1 -1
- package/coverage/src/cors.ts.html +1 -1
- package/coverage/src/decorators/auth.ts.html +1 -1
- package/coverage/src/decorators/index.html +1 -1
- package/coverage/src/decorators/index.ts.html +1 -1
- package/coverage/src/decorators/roles.ts.html +1 -1
- package/coverage/src/enums/index.html +1 -1
- package/coverage/src/enums/index.ts.html +1 -1
- package/coverage/src/enums/user.ts.html +1 -1
- package/coverage/src/errors.ts.html +1 -1
- package/coverage/src/filters/all-exception-filter.ts.html +1 -1
- package/coverage/src/filters/index.html +1 -1
- package/coverage/src/filters/index.ts.html +1 -1
- package/coverage/src/http/controllers/index.html +1 -1
- package/coverage/src/http/controllers/index.ts.html +1 -1
- package/coverage/src/http/controllers/locales.ts.html +1 -1
- package/coverage/src/http/controllers/metrics.ts.html +1 -1
- package/coverage/src/http/controllers/probe.ts.html +1 -1
- package/coverage/src/http/dto/index.html +1 -1
- package/coverage/src/http/dto/index.ts.html +1 -1
- package/coverage/src/http/dto/locales.ts.html +1 -1
- package/coverage/src/http/index.html +1 -1
- package/coverage/src/http/index.ts.html +1 -1
- package/coverage/src/index.html +1 -1
- package/coverage/src/index.ts.html +1 -1
- package/coverage/src/interceptors/index.html +1 -1
- package/coverage/src/interceptors/index.ts.html +1 -1
- package/coverage/src/interceptors/routes-interceptor.ts.html +1 -1
- package/coverage/src/interceptors/tracing-interceptor.ts.html +1 -1
- package/coverage/src/middlewares/index.html +1 -1
- package/coverage/src/middlewares/index.ts.html +1 -1
- package/coverage/src/middlewares/proxy-middleware.ts.html +1 -1
- package/coverage/src/middlewares/request-count-middleware.ts.html +1 -1
- package/coverage/src/middlewares/response-time-middleware.ts.html +1 -1
- package/coverage/src/providers/auth.ts.html +1 -1
- package/coverage/src/providers/index.html +1 -1
- package/coverage/src/providers/index.ts.html +1 -1
- package/coverage/src/providers/roles.ts.html +1 -1
- package/dist/cjs/index.js +18 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/interfaces/index.js +24 -0
- package/dist/cjs/interfaces/index.js.map +1 -0
- package/dist/cjs/interfaces/ports/client.driven.port.js +3 -0
- package/dist/cjs/interfaces/ports/client.driven.port.js.map +1 -0
- package/dist/cjs/interfaces/ports/crud.driven.port.js +3 -0
- package/dist/cjs/interfaces/ports/crud.driven.port.js.map +1 -0
- package/dist/cjs/interfaces/ports/index.js +20 -0
- package/dist/cjs/interfaces/ports/index.js.map +1 -0
- package/dist/cjs/interfaces/ports/metrics.driven.port.js +3 -0
- package/dist/cjs/interfaces/ports/metrics.driven.port.js.map +1 -0
- package/dist/cjs/src/app/application/index.js +19 -0
- package/dist/cjs/src/app/application/index.js.map +1 -0
- package/dist/cjs/src/app/application/ports/index.js +18 -0
- package/dist/cjs/src/app/application/ports/index.js.map +1 -0
- package/dist/cjs/src/app/application/service/client/get-locale.use-case.js +28 -0
- package/dist/cjs/src/app/application/service/client/get-locale.use-case.js.map +1 -0
- package/dist/cjs/src/app/application/service/client/index.js +19 -0
- package/dist/cjs/src/app/application/service/client/index.js.map +1 -0
- package/dist/cjs/src/app/application/service/client/set-locale.use-case.js +28 -0
- package/dist/cjs/src/app/application/service/client/set-locale.use-case.js.map +1 -0
- package/dist/cjs/src/app/application/service/index.js +19 -0
- package/dist/cjs/src/app/application/service/index.js.map +1 -0
- package/dist/cjs/src/app/application/service/metrics/get-metrics.use-case.js +28 -0
- package/dist/cjs/src/app/application/service/metrics/get-metrics.use-case.js.map +1 -0
- package/dist/cjs/src/app/application/service/metrics/index.js +18 -0
- package/dist/cjs/src/app/application/service/metrics/index.js.map +1 -0
- package/dist/cjs/src/app/index.js +19 -0
- package/dist/cjs/src/app/index.js.map +1 -0
- package/dist/cjs/src/app/infrastructure/adapters/client.repository.adapter.js +38 -0
- package/dist/cjs/src/app/infrastructure/adapters/client.repository.adapter.js.map +1 -0
- package/dist/cjs/src/app/infrastructure/adapters/index.js +19 -0
- package/dist/cjs/src/app/infrastructure/adapters/index.js.map +1 -0
- package/dist/cjs/src/app/infrastructure/adapters/metrics.repository.adapter.js +28 -0
- package/dist/cjs/src/app/infrastructure/adapters/metrics.repository.adapter.js.map +1 -0
- package/dist/cjs/src/app/infrastructure/controllers/client.controller.js +56 -0
- package/dist/cjs/src/app/infrastructure/controllers/client.controller.js.map +1 -0
- package/dist/cjs/src/app/infrastructure/controllers/dto/index.js +18 -0
- package/dist/cjs/src/app/infrastructure/controllers/dto/index.js.map +1 -0
- package/dist/cjs/src/app/infrastructure/controllers/dto/locales.js +31 -0
- package/dist/cjs/src/app/infrastructure/controllers/dto/locales.js.map +1 -0
- package/dist/cjs/src/app/infrastructure/controllers/index.js +20 -0
- package/dist/cjs/src/app/infrastructure/controllers/index.js.map +1 -0
- package/dist/cjs/src/app/infrastructure/controllers/metrics.controller.js +38 -0
- package/dist/cjs/src/app/infrastructure/controllers/metrics.controller.js.map +1 -0
- package/dist/cjs/src/app/infrastructure/controllers/probe.controller.js +42 -0
- package/dist/cjs/src/app/infrastructure/controllers/probe.controller.js.map +1 -0
- package/dist/cjs/src/app/infrastructure/index.js +32 -0
- package/dist/cjs/src/app/infrastructure/index.js.map +1 -0
- package/dist/cjs/src/cors.js +15 -0
- package/dist/cjs/src/cors.js.map +1 -0
- package/dist/cjs/src/decorators/auth.js +12 -0
- package/dist/cjs/src/decorators/auth.js.map +1 -0
- package/dist/cjs/src/decorators/index.js +19 -0
- package/dist/cjs/src/decorators/index.js.map +1 -0
- package/dist/cjs/src/decorators/roles.js +11 -0
- package/dist/cjs/src/decorators/roles.js.map +1 -0
- package/dist/cjs/src/enums/index.js +18 -0
- package/dist/cjs/src/enums/index.js.map +1 -0
- package/dist/cjs/src/enums/user.js +6 -0
- package/dist/cjs/src/enums/user.js.map +1 -0
- package/dist/cjs/src/errors.js +23 -0
- package/dist/cjs/src/errors.js.map +1 -0
- package/dist/cjs/src/filters/all-exception-filter.js +74 -0
- package/dist/cjs/src/filters/all-exception-filter.js.map +1 -0
- package/dist/cjs/src/filters/index.js +18 -0
- package/dist/cjs/src/filters/index.js.map +1 -0
- package/dist/cjs/src/http/controllers/index.js +20 -0
- package/dist/cjs/src/http/controllers/index.js.map +1 -0
- package/dist/cjs/src/http/controllers/locales.js +83 -0
- package/dist/cjs/src/http/controllers/locales.js.map +1 -0
- package/dist/cjs/src/http/controllers/metrics.js +39 -0
- package/dist/cjs/src/http/controllers/metrics.js.map +1 -0
- package/dist/cjs/src/http/controllers/probe.js +44 -0
- package/dist/cjs/src/http/controllers/probe.js.map +1 -0
- package/dist/cjs/src/http/dto/index.js +18 -0
- package/dist/cjs/src/http/dto/index.js.map +1 -0
- package/dist/cjs/src/http/dto/locales.js +31 -0
- package/dist/cjs/src/http/dto/locales.js.map +1 -0
- package/dist/cjs/src/http/index.js +19 -0
- package/dist/cjs/src/http/index.js.map +1 -0
- package/dist/cjs/src/index.js +27 -0
- package/dist/cjs/src/index.js.map +1 -0
- package/dist/cjs/src/interceptors/index.js +19 -0
- package/dist/cjs/src/interceptors/index.js.map +1 -0
- package/dist/cjs/src/interceptors/routes-interceptor.js +33 -0
- package/dist/cjs/src/interceptors/routes-interceptor.js.map +1 -0
- package/dist/cjs/src/interceptors/tracing-interceptor.js +81 -0
- package/dist/cjs/src/interceptors/tracing-interceptor.js.map +1 -0
- package/dist/cjs/src/middlewares/index.js +20 -0
- package/dist/cjs/src/middlewares/index.js.map +1 -0
- package/dist/cjs/src/middlewares/proxy-middleware.js +79 -0
- package/dist/cjs/src/middlewares/proxy-middleware.js.map +1 -0
- package/dist/cjs/src/middlewares/request-count-middleware.js +55 -0
- package/dist/cjs/src/middlewares/request-count-middleware.js.map +1 -0
- package/dist/cjs/src/middlewares/response-time-middleware.js +67 -0
- package/dist/cjs/src/middlewares/response-time-middleware.js.map +1 -0
- package/dist/cjs/src/providers/auth.js +45 -0
- package/dist/cjs/src/providers/auth.js.map +1 -0
- package/dist/cjs/src/providers/index.js +19 -0
- package/dist/cjs/src/providers/index.js.map +1 -0
- package/dist/cjs/src/providers/roles.js +40 -0
- package/dist/cjs/src/providers/roles.js.map +1 -0
- package/dist/cjs/tsconfig.build.cjs.tsbuildinfo +1 -0
- package/dist/esm/index.mjs +2 -0
- package/dist/esm/index.mjs.map +1 -0
- package/dist/esm/interfaces/index.mjs +7 -0
- package/dist/esm/interfaces/index.mjs.map +1 -0
- package/dist/esm/interfaces/ports/client.driven.port.mjs +2 -0
- package/dist/esm/interfaces/ports/client.driven.port.mjs.map +1 -0
- package/dist/esm/interfaces/ports/crud.driven.port.mjs +2 -0
- package/dist/esm/interfaces/ports/crud.driven.port.mjs.map +1 -0
- package/dist/esm/interfaces/ports/index.mjs +4 -0
- package/dist/esm/interfaces/ports/index.mjs.map +1 -0
- package/dist/esm/interfaces/ports/metrics.driven.port.mjs +2 -0
- package/dist/esm/interfaces/ports/metrics.driven.port.mjs.map +1 -0
- package/dist/esm/src/app/application/index.mjs +3 -0
- package/dist/esm/src/app/application/index.mjs.map +1 -0
- package/dist/esm/src/app/application/ports/index.mjs +2 -0
- package/dist/esm/src/app/application/ports/index.mjs.map +1 -0
- package/dist/esm/src/app/application/service/client/get-locale.use-case.mjs +25 -0
- package/dist/esm/src/app/application/service/client/get-locale.use-case.mjs.map +1 -0
- package/dist/esm/src/app/application/service/client/index.mjs +3 -0
- package/dist/esm/src/app/application/service/client/index.mjs.map +1 -0
- package/dist/esm/src/app/application/service/client/set-locale.use-case.mjs +25 -0
- package/dist/esm/src/app/application/service/client/set-locale.use-case.mjs.map +1 -0
- package/dist/esm/src/app/application/service/index.mjs +3 -0
- package/dist/esm/src/app/application/service/index.mjs.map +1 -0
- package/dist/esm/src/app/application/service/metrics/get-metrics.use-case.mjs +25 -0
- package/dist/esm/src/app/application/service/metrics/get-metrics.use-case.mjs.map +1 -0
- package/dist/esm/src/app/application/service/metrics/index.mjs +2 -0
- package/dist/esm/src/app/application/service/metrics/index.mjs.map +1 -0
- package/dist/esm/src/app/index.mjs +3 -0
- package/dist/esm/src/app/index.mjs.map +1 -0
- package/dist/esm/src/app/infrastructure/adapters/client.repository.adapter.mjs +35 -0
- package/dist/esm/src/app/infrastructure/adapters/client.repository.adapter.mjs.map +1 -0
- package/dist/esm/src/app/infrastructure/adapters/index.mjs +3 -0
- package/dist/esm/src/app/infrastructure/adapters/index.mjs.map +1 -0
- package/dist/esm/src/app/infrastructure/adapters/metrics.repository.adapter.mjs +25 -0
- package/dist/esm/src/app/infrastructure/adapters/metrics.repository.adapter.mjs.map +1 -0
- package/dist/esm/src/app/infrastructure/controllers/client.controller.mjs +53 -0
- package/dist/esm/src/app/infrastructure/controllers/client.controller.mjs.map +1 -0
- package/dist/esm/src/app/infrastructure/controllers/dto/index.mjs +2 -0
- package/dist/esm/src/app/infrastructure/controllers/dto/index.mjs.map +1 -0
- package/dist/esm/src/app/infrastructure/controllers/dto/locales.mjs +26 -0
- package/dist/esm/src/app/infrastructure/controllers/dto/locales.mjs.map +1 -0
- package/dist/esm/src/app/infrastructure/controllers/index.mjs +4 -0
- package/dist/esm/src/app/infrastructure/controllers/index.mjs.map +1 -0
- package/dist/esm/src/app/infrastructure/controllers/metrics.controller.mjs +35 -0
- package/dist/esm/src/app/infrastructure/controllers/metrics.controller.mjs.map +1 -0
- package/dist/esm/src/app/infrastructure/controllers/probe.controller.mjs +39 -0
- package/dist/esm/src/app/infrastructure/controllers/probe.controller.mjs.map +1 -0
- package/dist/esm/src/app/infrastructure/index.mjs +3 -0
- package/dist/esm/src/app/infrastructure/index.mjs.map +1 -0
- package/dist/esm/src/cors.mjs +12 -0
- package/dist/esm/src/cors.mjs.map +1 -0
- package/dist/esm/src/decorators/auth.mjs +8 -0
- package/dist/esm/src/decorators/auth.mjs.map +1 -0
- package/dist/esm/src/decorators/index.mjs +3 -0
- package/dist/esm/src/decorators/index.mjs.map +1 -0
- package/dist/esm/src/decorators/roles.mjs +7 -0
- package/dist/esm/src/decorators/roles.mjs.map +1 -0
- package/dist/esm/src/enums/index.mjs +2 -0
- package/dist/esm/src/enums/index.mjs.map +1 -0
- package/dist/esm/src/enums/user.mjs +2 -0
- package/dist/esm/src/enums/user.mjs.map +1 -0
- package/dist/esm/src/errors.mjs +17 -0
- package/dist/esm/src/errors.mjs.map +1 -0
- package/dist/esm/src/filters/all-exception-filter.mjs +71 -0
- package/dist/esm/src/filters/all-exception-filter.mjs.map +1 -0
- package/dist/esm/src/filters/index.mjs +2 -0
- package/dist/esm/src/filters/index.mjs.map +1 -0
- package/dist/esm/src/http/controllers/index.mjs +4 -0
- package/dist/esm/src/http/controllers/index.mjs.map +1 -0
- package/dist/esm/src/http/controllers/locales.mjs +80 -0
- package/dist/esm/src/http/controllers/locales.mjs.map +1 -0
- package/dist/esm/src/http/controllers/metrics.mjs +36 -0
- package/dist/esm/src/http/controllers/metrics.mjs.map +1 -0
- package/dist/esm/src/http/controllers/probe.mjs +41 -0
- package/dist/esm/src/http/controllers/probe.mjs.map +1 -0
- package/dist/esm/src/http/dto/index.mjs +2 -0
- package/dist/esm/src/http/dto/index.mjs.map +1 -0
- package/dist/esm/src/http/dto/locales.mjs +26 -0
- package/dist/esm/src/http/dto/locales.mjs.map +1 -0
- package/dist/esm/src/http/index.mjs +3 -0
- package/dist/esm/src/http/index.mjs.map +1 -0
- package/dist/esm/src/index.mjs +11 -0
- package/dist/esm/src/index.mjs.map +1 -0
- package/dist/esm/src/interceptors/index.mjs +3 -0
- package/dist/esm/src/interceptors/index.mjs.map +1 -0
- package/dist/esm/src/interceptors/routes-interceptor.mjs +30 -0
- package/dist/esm/src/interceptors/routes-interceptor.mjs.map +1 -0
- package/dist/esm/src/interceptors/tracing-interceptor.mjs +75 -0
- package/dist/esm/src/interceptors/tracing-interceptor.mjs.map +1 -0
- package/dist/esm/src/middlewares/index.mjs +4 -0
- package/dist/esm/src/middlewares/index.mjs.map +1 -0
- package/dist/esm/src/middlewares/proxy-middleware.mjs +76 -0
- package/dist/esm/src/middlewares/proxy-middleware.mjs.map +1 -0
- package/dist/esm/src/middlewares/request-count-middleware.mjs +49 -0
- package/dist/esm/src/middlewares/request-count-middleware.mjs.map +1 -0
- package/dist/esm/src/middlewares/response-time-middleware.mjs +61 -0
- package/dist/esm/src/middlewares/response-time-middleware.mjs.map +1 -0
- package/dist/esm/src/providers/auth.mjs +42 -0
- package/dist/esm/src/providers/auth.mjs.map +1 -0
- package/dist/esm/src/providers/index.mjs +3 -0
- package/dist/esm/src/providers/index.mjs.map +1 -0
- package/dist/esm/src/providers/roles.mjs +37 -0
- package/dist/esm/src/providers/roles.mjs.map +1 -0
- package/dist/esm/tsconfig.build.esm.tsbuildinfo +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/interfaces/index.d.ts +9 -0
- package/dist/types/interfaces/ports/client.driven.port.d.ts +4 -0
- package/dist/types/interfaces/ports/crud.driven.port.d.ts +33 -0
- package/dist/types/interfaces/ports/index.d.ts +3 -0
- package/dist/types/interfaces/ports/metrics.driven.port.d.ts +3 -0
- package/dist/types/src/app/application/index.d.ts +2 -0
- package/dist/types/src/app/application/ports/index.d.ts +1 -0
- package/dist/types/src/app/application/service/client/get-locale.use-case.d.ts +5 -0
- package/dist/types/src/app/application/service/client/index.d.ts +2 -0
- package/dist/types/src/app/application/service/client/set-locale.use-case.d.ts +5 -0
- package/dist/types/src/app/application/service/index.d.ts +2 -0
- package/dist/types/src/app/application/service/metrics/get-metrics.use-case.d.ts +5 -0
- package/dist/types/src/app/application/service/metrics/index.d.ts +1 -0
- package/dist/types/src/app/index.d.ts +2 -0
- package/dist/types/src/app/infrastructure/adapters/client.repository.adapter.d.ts +5 -0
- package/dist/types/src/app/infrastructure/adapters/index.d.ts +2 -0
- package/dist/types/src/app/infrastructure/adapters/metrics.repository.adapter.d.ts +6 -0
- package/dist/types/src/app/infrastructure/controllers/client.controller.d.ts +9 -0
- package/dist/types/src/app/infrastructure/controllers/dto/index.d.ts +1 -0
- package/dist/types/src/app/infrastructure/controllers/dto/locales.d.ts +7 -0
- package/dist/types/src/app/infrastructure/controllers/index.d.ts +3 -0
- package/dist/types/src/app/infrastructure/controllers/metrics.controller.d.ts +6 -0
- package/dist/types/src/app/infrastructure/controllers/probe.controller.d.ts +4 -0
- package/dist/types/src/app/infrastructure/index.d.ts +2 -0
- package/dist/types/src/cors.d.ts +1 -0
- package/dist/types/src/decorators/auth.d.ts +1 -0
- package/dist/types/src/decorators/index.d.ts +2 -0
- package/dist/types/src/decorators/roles.d.ts +2 -0
- package/dist/types/src/enums/index.d.ts +1 -0
- package/dist/types/src/enums/user.d.ts +1 -0
- package/dist/types/src/errors.d.ts +10 -0
- package/dist/types/src/filters/all-exception-filter.d.ts +10 -0
- package/dist/types/src/filters/index.d.ts +1 -0
- package/dist/types/src/http/controllers/index.d.ts +3 -0
- package/dist/types/src/http/controllers/locales.d.ts +8 -0
- package/dist/types/src/http/controllers/metrics.d.ts +5 -0
- package/dist/types/src/http/controllers/probe.d.ts +4 -0
- package/dist/types/src/http/dto/index.d.ts +1 -0
- package/dist/types/src/http/dto/locales.d.ts +7 -0
- package/dist/types/src/http/index.d.ts +2 -0
- package/dist/types/src/index.d.ts +10 -0
- package/dist/types/src/interceptors/index.d.ts +2 -0
- package/dist/types/src/interceptors/routes-interceptor.d.ts +8 -0
- package/dist/types/src/interceptors/tracing-interceptor.d.ts +12 -0
- package/dist/types/src/middlewares/index.d.ts +3 -0
- package/dist/types/src/middlewares/proxy-middleware.d.ts +10 -0
- package/dist/types/src/middlewares/request-count-middleware.d.ts +7 -0
- package/dist/types/src/middlewares/response-time-middleware.d.ts +11 -0
- package/dist/types/src/providers/auth.d.ts +5 -0
- package/dist/types/src/providers/index.d.ts +2 -0
- package/dist/types/src/providers/roles.d.ts +10 -0
- package/dist/types/tsconfig.build.types.tsbuildinfo +1 -0
- package/package.json +7 -7
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
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;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { AxiosError } from '@biorate/axios';
|
|
8
|
+
import { Catch, HttpException, HttpStatus, } from '@nestjs/common';
|
|
9
|
+
import { AxiosRequestError, UnsupportedProtocolError } from '../errors';
|
|
10
|
+
let AllExceptionsFilter = class AllExceptionsFilter {
|
|
11
|
+
catch(exception, host) {
|
|
12
|
+
const type = host.getType();
|
|
13
|
+
const method = `_${type}`;
|
|
14
|
+
if (!this[method])
|
|
15
|
+
throw new UnsupportedProtocolError(host.getType());
|
|
16
|
+
this[method](exception, host);
|
|
17
|
+
}
|
|
18
|
+
_http(exception, host) {
|
|
19
|
+
const ctx = host.switchToHttp();
|
|
20
|
+
const response = ctx.getResponse();
|
|
21
|
+
const request = ctx.getRequest();
|
|
22
|
+
const meta = exception?.meta;
|
|
23
|
+
const status = exception instanceof HttpException
|
|
24
|
+
? exception.getStatus()
|
|
25
|
+
: meta?.status ?? HttpStatus.INTERNAL_SERVER_ERROR;
|
|
26
|
+
this.log(exception);
|
|
27
|
+
response.status(status).json({
|
|
28
|
+
status,
|
|
29
|
+
code: this.code(exception),
|
|
30
|
+
hint: this.hint(exception),
|
|
31
|
+
path: request.url,
|
|
32
|
+
meta: meta?.meta,
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
_ws(exception, host) {
|
|
36
|
+
const ctx = host.switchToWs();
|
|
37
|
+
const socket = ctx.getClient();
|
|
38
|
+
const meta = exception?.meta;
|
|
39
|
+
const status = meta?.status ?? HttpStatus.INTERNAL_SERVER_ERROR;
|
|
40
|
+
this.log(exception);
|
|
41
|
+
socket.send(JSON.stringify({
|
|
42
|
+
event: 'error',
|
|
43
|
+
data: {
|
|
44
|
+
status,
|
|
45
|
+
code: this.code(exception),
|
|
46
|
+
hint: this.hint(exception),
|
|
47
|
+
meta: meta?.meta,
|
|
48
|
+
},
|
|
49
|
+
}));
|
|
50
|
+
}
|
|
51
|
+
_rpc(exception, host) {
|
|
52
|
+
throw new UnsupportedProtocolError('rpc');
|
|
53
|
+
}
|
|
54
|
+
code(exception) {
|
|
55
|
+
return exception.code ?? exception.constructor.name;
|
|
56
|
+
}
|
|
57
|
+
hint(exception) {
|
|
58
|
+
return (exception?.getResponse?.()?.message ?? exception.message);
|
|
59
|
+
}
|
|
60
|
+
log(exception) {
|
|
61
|
+
if (exception instanceof AxiosError)
|
|
62
|
+
console.error(new AxiosRequestError(exception?.response?.data?.statusCode, exception?.response?.data?.error, exception?.response?.data?.message).stack);
|
|
63
|
+
else
|
|
64
|
+
console.error(exception.stack);
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
AllExceptionsFilter = __decorate([
|
|
68
|
+
Catch()
|
|
69
|
+
], AllExceptionsFilter);
|
|
70
|
+
export { AllExceptionsFilter };
|
|
71
|
+
//# sourceMappingURL=all-exception-filter.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"all-exception-filter.mjs","sourceRoot":"","sources":["../../../../src/filters/all-exception-filter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../../src/filters/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../../../src/http/controllers/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
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;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
11
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
12
|
+
};
|
|
13
|
+
var LocalesController_1;
|
|
14
|
+
import { Controller, Get, Post, Param, Body, Header } from '@nestjs/common';
|
|
15
|
+
import { ApiOperation, ApiTags } from '@nestjs/swagger';
|
|
16
|
+
import { path } from '@biorate/tools';
|
|
17
|
+
import { promises as fs, readFileSync, writeFileSync, mkdirSync } from 'fs';
|
|
18
|
+
import { merge } from 'lodash';
|
|
19
|
+
import { GetLocalesDTO, PostLocalesDTO } from '../dto';
|
|
20
|
+
let LocalesController = LocalesController_1 = class LocalesController {
|
|
21
|
+
static async getFile(namespace, lang) {
|
|
22
|
+
try {
|
|
23
|
+
return JSON.parse(await fs.readFile(path.create(process.cwd(), 'locales', namespace, `${lang}.json`), 'utf-8'));
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
return {};
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
static getFileSync(namespace, lang) {
|
|
30
|
+
try {
|
|
31
|
+
return JSON.parse(readFileSync(path.create(process.cwd(), 'locales', namespace, `${lang}.json`), 'utf-8'));
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
return {};
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
static putFile(namespace, lang, data) {
|
|
38
|
+
try {
|
|
39
|
+
const directory = path.create(process.cwd(), 'locales', namespace);
|
|
40
|
+
mkdirSync(directory, { recursive: true });
|
|
41
|
+
writeFileSync(path.create(directory, `${lang}.json`), JSON.stringify(data, null, ' '), 'utf-8');
|
|
42
|
+
}
|
|
43
|
+
catch (e) {
|
|
44
|
+
console.warn(e);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
get(param) {
|
|
48
|
+
return LocalesController_1.getFile(param.namespace, param.lang);
|
|
49
|
+
}
|
|
50
|
+
async post(param, body) {
|
|
51
|
+
const data = LocalesController_1.getFileSync(param.namespace, param.lang);
|
|
52
|
+
const result = merge(data, body);
|
|
53
|
+
LocalesController_1.putFile(param.namespace, param.lang, result);
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
__decorate([
|
|
57
|
+
Get(':lang/:namespace'),
|
|
58
|
+
Header('Deprecation', 'Use domain controller instead [@biorate/nestjs-tools >= v1.121.0]'),
|
|
59
|
+
ApiOperation({ summary: 'Get locales', deprecated: true }),
|
|
60
|
+
__param(0, Param()),
|
|
61
|
+
__metadata("design:type", Function),
|
|
62
|
+
__metadata("design:paramtypes", [GetLocalesDTO]),
|
|
63
|
+
__metadata("design:returntype", void 0)
|
|
64
|
+
], LocalesController.prototype, "get", null);
|
|
65
|
+
__decorate([
|
|
66
|
+
Post(':lang/:namespace'),
|
|
67
|
+
Header('Deprecation', 'Use domain controller instead [@biorate/nestjs-tools >= v1.121.0]'),
|
|
68
|
+
ApiOperation({ summary: 'Put locales', deprecated: true }),
|
|
69
|
+
__param(0, Param()),
|
|
70
|
+
__param(1, Body()),
|
|
71
|
+
__metadata("design:type", Function),
|
|
72
|
+
__metadata("design:paramtypes", [PostLocalesDTO, Object]),
|
|
73
|
+
__metadata("design:returntype", Promise)
|
|
74
|
+
], LocalesController.prototype, "post", null);
|
|
75
|
+
LocalesController = LocalesController_1 = __decorate([
|
|
76
|
+
ApiTags('Locales'),
|
|
77
|
+
Controller('locales')
|
|
78
|
+
], LocalesController);
|
|
79
|
+
export { LocalesController };
|
|
80
|
+
//# sourceMappingURL=locales.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"locales.mjs","sourceRoot":"","sources":["../../../../../src/http/controllers/locales.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
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;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import { inject, Types } from '@biorate/inversion';
|
|
11
|
+
import { Controller, Get, Header } from '@nestjs/common';
|
|
12
|
+
import { ApiOperation, ApiTags } from '@nestjs/swagger';
|
|
13
|
+
let MetricsController = class MetricsController {
|
|
14
|
+
async metrics() {
|
|
15
|
+
return this.prometheus.registry.metrics();
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
__decorate([
|
|
19
|
+
inject(Types.Prometheus),
|
|
20
|
+
__metadata("design:type", Object)
|
|
21
|
+
], MetricsController.prototype, "prometheus", void 0);
|
|
22
|
+
__decorate([
|
|
23
|
+
Get(),
|
|
24
|
+
Header('content-type', 'text/plain'),
|
|
25
|
+
Header('Deprecation', 'Use domain controller instead [@biorate/nestjs-tools >= v1.121.0]'),
|
|
26
|
+
ApiOperation({ summary: 'Prometheus metrics hook', deprecated: true }),
|
|
27
|
+
__metadata("design:type", Function),
|
|
28
|
+
__metadata("design:paramtypes", []),
|
|
29
|
+
__metadata("design:returntype", Promise)
|
|
30
|
+
], MetricsController.prototype, "metrics", null);
|
|
31
|
+
MetricsController = __decorate([
|
|
32
|
+
ApiTags('Metrics'),
|
|
33
|
+
Controller('metrics')
|
|
34
|
+
], MetricsController);
|
|
35
|
+
export { MetricsController };
|
|
36
|
+
//# sourceMappingURL=metrics.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics.mjs","sourceRoot":"","sources":["../../../../../src/http/controllers/metrics.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAKjD,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAUZ,AAAN,KAAK,CAAC,OAAO;QACrB,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;IAC5C,CAAC;CACF,CAAA;AAZqC;IAAnC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;;qDAAmC;AAS5C;IAPf,GAAG,EAAE;IACL,MAAM,CAAC,cAAc,EAAE,YAAY,CAAC;IACpC,MAAM,CACL,aAAa,EACb,mEAAmE,CACpE;IACA,YAAY,CAAC,EAAE,OAAO,EAAE,yBAAyB,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;;;;gDAGtE;AAZU,iBAAiB;IAF7B,OAAO,CAAC,SAAS,CAAC;IAClB,UAAU,CAAC,SAAS,CAAC;GACT,iBAAiB,CAa7B"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
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;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import { Controller, Get, Header } from '@nestjs/common';
|
|
11
|
+
import { ApiOperation, ApiTags } from '@nestjs/swagger';
|
|
12
|
+
let ProbeController = class ProbeController {
|
|
13
|
+
readiness() {
|
|
14
|
+
return 1;
|
|
15
|
+
}
|
|
16
|
+
healthz() {
|
|
17
|
+
return 1;
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
__decorate([
|
|
21
|
+
Get('readiness'),
|
|
22
|
+
Header('Deprecation', 'Use domain controller instead [@biorate/nestjs-tools >= v1.121.0]'),
|
|
23
|
+
ApiOperation({ summary: 'Readiness probe', deprecated: true }),
|
|
24
|
+
__metadata("design:type", Function),
|
|
25
|
+
__metadata("design:paramtypes", []),
|
|
26
|
+
__metadata("design:returntype", void 0)
|
|
27
|
+
], ProbeController.prototype, "readiness", null);
|
|
28
|
+
__decorate([
|
|
29
|
+
Get('healthz'),
|
|
30
|
+
Header('Deprecation', 'Use domain controller instead [@biorate/nestjs-tools >= v1.121.0]'),
|
|
31
|
+
ApiOperation({ summary: 'Healthz probe', deprecated: true }),
|
|
32
|
+
__metadata("design:type", Function),
|
|
33
|
+
__metadata("design:paramtypes", []),
|
|
34
|
+
__metadata("design:returntype", void 0)
|
|
35
|
+
], ProbeController.prototype, "healthz", null);
|
|
36
|
+
ProbeController = __decorate([
|
|
37
|
+
ApiTags('Probe'),
|
|
38
|
+
Controller('probe')
|
|
39
|
+
], ProbeController);
|
|
40
|
+
export { ProbeController };
|
|
41
|
+
//# sourceMappingURL=probe.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"probe.mjs","sourceRoot":"","sources":["../../../../../src/http/controllers/probe.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAIjD,IAAM,eAAe,GAArB,MAAM,eAAe;IAOhB,SAAS;QACjB,OAAO,CAAC,CAAC;IACX,CAAC;IAQS,OAAO;QACf,OAAO,CAAC,CAAC;IACX,CAAC;CACF,CAAA;AAbW;IANT,GAAG,CAAC,WAAW,CAAC;IAChB,MAAM,CACL,aAAa,EACb,mEAAmE,CACpE;IACA,YAAY,CAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;;;;gDAG9D;AAQS;IANT,GAAG,CAAC,SAAS,CAAC;IACd,MAAM,CACL,aAAa,EACb,mEAAmE,CACpE;IACA,YAAY,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;;;;8CAG5D;AAnBU,eAAe;IAF3B,OAAO,CAAC,OAAO,CAAC;IAChB,UAAU,CAAC,OAAO,CAAC;GACP,eAAe,CAoB3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../../../src/http/dto/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
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;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import { ApiProperty } from '@nestjs/swagger';
|
|
11
|
+
import { IsString } from 'class-validator';
|
|
12
|
+
export class GetLocalesDTO {
|
|
13
|
+
}
|
|
14
|
+
__decorate([
|
|
15
|
+
IsString(),
|
|
16
|
+
ApiProperty({ type: String, required: true }),
|
|
17
|
+
__metadata("design:type", String)
|
|
18
|
+
], GetLocalesDTO.prototype, "lang", void 0);
|
|
19
|
+
__decorate([
|
|
20
|
+
IsString(),
|
|
21
|
+
ApiProperty({ type: String, required: true }),
|
|
22
|
+
__metadata("design:type", String)
|
|
23
|
+
], GetLocalesDTO.prototype, "namespace", void 0);
|
|
24
|
+
export class PostLocalesDTO extends GetLocalesDTO {
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=locales.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"locales.mjs","sourceRoot":"","sources":["../../../../../src/http/dto/locales.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG3C,MAAM,OAAO,aAAa;CAQzB;AALC;IAFC,QAAQ,EAAE;IACV,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;2CACjC;AAIb;IAFC,QAAQ,EAAE;IACV,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDAC5B;AAGpB,MAAM,OAAO,cAAe,SAAQ,aAAa;CAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../../src/http/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,OAAO,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export * from './decorators';
|
|
2
|
+
export * from './enums';
|
|
3
|
+
export * from './filters';
|
|
4
|
+
export * from './interceptors';
|
|
5
|
+
export * from './middlewares';
|
|
6
|
+
export * from './providers';
|
|
7
|
+
export * from './errors';
|
|
8
|
+
export * from './http';
|
|
9
|
+
export * from './app';
|
|
10
|
+
export * from './cors';
|
|
11
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../../src/interceptors/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
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;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var RoutesInterceptor_1;
|
|
8
|
+
import { join, normalize } from 'path/posix';
|
|
9
|
+
import { Reflector } from '@nestjs/core';
|
|
10
|
+
import { PATH_METADATA } from '@nestjs/common/constants';
|
|
11
|
+
import { Injectable, } from '@nestjs/common';
|
|
12
|
+
let RoutesInterceptor = RoutesInterceptor_1 = class RoutesInterceptor {
|
|
13
|
+
constructor() {
|
|
14
|
+
this.reflector = new Reflector();
|
|
15
|
+
}
|
|
16
|
+
intercept(context, next) {
|
|
17
|
+
const namespaces = this.reflector.get(PATH_METADATA, context.getClass());
|
|
18
|
+
const routes = this.reflector.get(PATH_METADATA, context.getHandler());
|
|
19
|
+
RoutesInterceptor_1.map.set(context.switchToHttp().getRequest(), {
|
|
20
|
+
path: normalize(join('/', Array.isArray(namespaces) ? namespaces[0] : namespaces, Array.isArray(routes) ? routes[0] : routes, '/').slice(0, -1)),
|
|
21
|
+
});
|
|
22
|
+
return next.handle();
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
RoutesInterceptor.map = new WeakMap();
|
|
26
|
+
RoutesInterceptor = RoutesInterceptor_1 = __decorate([
|
|
27
|
+
Injectable()
|
|
28
|
+
], RoutesInterceptor);
|
|
29
|
+
export { RoutesInterceptor };
|
|
30
|
+
//# sourceMappingURL=routes-interceptor.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routes-interceptor.mjs","sourceRoot":"","sources":["../../../../src/interceptors/routes-interceptor.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EACL,UAAU,GAIX,MAAM,gBAAgB,CAAC;AAGjB,IAAM,iBAAiB,yBAAvB,MAAM,iBAAiB;IAAvB;QAIY,cAAS,GAAG,IAAI,SAAS,EAAE,CAAC;IAuB/C,CAAC;IArBQ,SAAS,CAAC,OAAyB,EAAE,IAAiB;QAC3D,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CACnC,aAAa,EACb,OAAO,CAAC,QAAQ,EAAE,CACnB,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAC/B,aAAa,EACb,OAAO,CAAC,UAAU,EAAE,CACrB,CAAC;QACF,mBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAuB,EAAE;YAClF,IAAI,EAAE,SAAS,CACb,IAAI,CACF,GAAG,EACH,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,EACtD,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAC1C,GAAG,CACJ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CACf;SACF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;IACvB,CAAC;;AAxBsB,qBAAG,GAAsC,IAAI,OAAO,EAAE,AAAnD,CAAoD;AAFnE,iBAAiB;IAD7B,UAAU,EAAE;GACA,iBAAiB,CA2B7B"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
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;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import stringify from 'json-stringify-safe';
|
|
11
|
+
import { tap, catchError } from 'rxjs';
|
|
12
|
+
import { trace } from '@biorate/opentelemetry';
|
|
13
|
+
import { Injectable, } from '@nestjs/common';
|
|
14
|
+
import { inject, Types } from '@biorate/inversion';
|
|
15
|
+
let TracingInterceptor = class TracingInterceptor {
|
|
16
|
+
stringify(data) {
|
|
17
|
+
return typeof data === 'object' ? stringify(data) : String(data);
|
|
18
|
+
}
|
|
19
|
+
excluded(url) {
|
|
20
|
+
const excluded = this.config.get('TracingInterceptor.excluded', []);
|
|
21
|
+
for (const item of excluded) {
|
|
22
|
+
if (typeof item === 'string' && url.startsWith(item))
|
|
23
|
+
return true;
|
|
24
|
+
if (item instanceof RegExp && item.test(url))
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
http(span, context, next) {
|
|
30
|
+
const host = context.switchToHttp();
|
|
31
|
+
const req = host.getRequest();
|
|
32
|
+
const res = host.getResponse();
|
|
33
|
+
if (this.excluded(req.url))
|
|
34
|
+
return next.handle();
|
|
35
|
+
span.setAttribute('incoming.request.url', this.stringify(req.url));
|
|
36
|
+
span.setAttribute('incoming.request.body', this.stringify(req.body));
|
|
37
|
+
span.setAttribute('incoming.request.headers', this.stringify(req.headers));
|
|
38
|
+
span.setAttribute('incoming.request.method', this.stringify(req.method));
|
|
39
|
+
span.setAttribute('incoming.request.params', this.stringify(req.params));
|
|
40
|
+
span.setAttribute('incoming.request.query', this.stringify(req.query));
|
|
41
|
+
return next.handle().pipe(catchError((e) => {
|
|
42
|
+
span.setAttribute('incoming.response.headers', this.stringify(res.headers));
|
|
43
|
+
span.setAttribute('incoming.response.statusCode', this.stringify(res.statusCode));
|
|
44
|
+
span.setAttribute('incoming.response.errorCode', this.stringify(e.code));
|
|
45
|
+
span.setAttribute('incoming.response.data', this.stringify(e?.response?.data));
|
|
46
|
+
throw e;
|
|
47
|
+
}), tap((data) => {
|
|
48
|
+
span.setAttribute('incoming.response.headers', this.stringify(res.headers));
|
|
49
|
+
span.setAttribute('incoming.response.statusCode', this.stringify(res.statusCode));
|
|
50
|
+
span.setAttribute('incoming.response.data', this.stringify(data));
|
|
51
|
+
}));
|
|
52
|
+
}
|
|
53
|
+
ws(span, context, next) {
|
|
54
|
+
return next.handle();
|
|
55
|
+
}
|
|
56
|
+
rpc(span, context, next) {
|
|
57
|
+
return next.handle();
|
|
58
|
+
}
|
|
59
|
+
intercept(context, next) {
|
|
60
|
+
const span = trace.getActiveSpan();
|
|
61
|
+
if (!span)
|
|
62
|
+
return next.handle();
|
|
63
|
+
const type = context.getType();
|
|
64
|
+
return this[type](span, context, next);
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
__decorate([
|
|
68
|
+
inject(Types.Config),
|
|
69
|
+
__metadata("design:type", Object)
|
|
70
|
+
], TracingInterceptor.prototype, "config", void 0);
|
|
71
|
+
TracingInterceptor = __decorate([
|
|
72
|
+
Injectable()
|
|
73
|
+
], TracingInterceptor);
|
|
74
|
+
export { TracingInterceptor };
|
|
75
|
+
//# sourceMappingURL=tracing-interceptor.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracing-interceptor.mjs","sourceRoot":"","sources":["../../../../src/interceptors/tracing-interceptor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../../src/middlewares/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
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;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
var ProxyPrometheusMiddleware_1;
|
|
11
|
+
import { pick, omit } from 'lodash';
|
|
12
|
+
import { createProxyMiddleware } from 'http-proxy-middleware';
|
|
13
|
+
import { Injectable } from '@nestjs/common';
|
|
14
|
+
import { counter, Counter, Histogram, Prometheus } from '@biorate/prometheus';
|
|
15
|
+
import { time } from '@biorate/tools';
|
|
16
|
+
import { inject, Types } from '@biorate/inversion';
|
|
17
|
+
let ProxyPrometheusMiddleware = ProxyPrometheusMiddleware_1 = class ProxyPrometheusMiddleware {
|
|
18
|
+
static create(options) {
|
|
19
|
+
return new this(options).handler;
|
|
20
|
+
}
|
|
21
|
+
constructor(options = {}) {
|
|
22
|
+
this.time = new WeakMap();
|
|
23
|
+
const { onProxyReq, onProxyRes } = pick(options, 'onProxyReq', 'onProxyRes');
|
|
24
|
+
if (!ProxyPrometheusMiddleware_1.histogram)
|
|
25
|
+
ProxyPrometheusMiddleware_1.histogram = new Histogram({
|
|
26
|
+
name: 'http_proxy_server_requests_seconds',
|
|
27
|
+
help: 'Http proxy server requests seconds bucket',
|
|
28
|
+
labelNames: ['method', 'uri', 'status'],
|
|
29
|
+
buckets: this.config.get('ProxyPrometheusMiddleware.histogram.buckets', [0.005, 0.01, 0.02, 0.05, 0.1, 0.3, 0.5, 1, 2, 3, 5, 10]),
|
|
30
|
+
registers: [Prometheus.registry],
|
|
31
|
+
});
|
|
32
|
+
this.handler = createProxyMiddleware({
|
|
33
|
+
...omit(options, 'onProxyReq', 'onProxyRes'),
|
|
34
|
+
onProxyReq: (proxyReq, req, res, options) => {
|
|
35
|
+
this.time.set(req, { time: time.diff() });
|
|
36
|
+
return onProxyReq?.(proxyReq, req, res, options);
|
|
37
|
+
},
|
|
38
|
+
onProxyRes: (proxyRes, req, res) => {
|
|
39
|
+
const diff = this.time.get(req);
|
|
40
|
+
this.counter
|
|
41
|
+
.labels({
|
|
42
|
+
method: req.method,
|
|
43
|
+
uri: req.baseUrl,
|
|
44
|
+
status: res.statusCode,
|
|
45
|
+
})
|
|
46
|
+
.inc();
|
|
47
|
+
ProxyPrometheusMiddleware_1.histogram
|
|
48
|
+
.labels({
|
|
49
|
+
method: req.method,
|
|
50
|
+
uri: req.baseUrl,
|
|
51
|
+
status: res.statusCode,
|
|
52
|
+
})
|
|
53
|
+
.observe(time.msTo(diff.time(), 's'));
|
|
54
|
+
return onProxyRes?.(proxyRes, req, res);
|
|
55
|
+
},
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
__decorate([
|
|
60
|
+
inject(Types.Config),
|
|
61
|
+
__metadata("design:type", Object)
|
|
62
|
+
], ProxyPrometheusMiddleware.prototype, "config", void 0);
|
|
63
|
+
__decorate([
|
|
64
|
+
counter({
|
|
65
|
+
name: 'http_proxy_server_requests_seconds_count',
|
|
66
|
+
help: 'Http proxy server requests count',
|
|
67
|
+
labelNames: ['method', 'uri', 'status'],
|
|
68
|
+
}),
|
|
69
|
+
__metadata("design:type", Counter)
|
|
70
|
+
], ProxyPrometheusMiddleware.prototype, "counter", void 0);
|
|
71
|
+
ProxyPrometheusMiddleware = ProxyPrometheusMiddleware_1 = __decorate([
|
|
72
|
+
Injectable(),
|
|
73
|
+
__metadata("design:paramtypes", [Object])
|
|
74
|
+
], ProxyPrometheusMiddleware);
|
|
75
|
+
export { ProxyPrometheusMiddleware };
|
|
76
|
+
//# sourceMappingURL=proxy-middleware.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proxy-middleware.mjs","sourceRoot":"","sources":["../../../../src/middlewares/proxy-middleware.ts"],"names":[],"mappings":";;;;;;;;;;AAEA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAI5C,IAAM,yBAAyB,iCAA/B,MAAM,yBAAyB;IAgB7B,MAAM,CAAC,MAAM,CAAC,OAAiB;QACpC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;IACnC,CAAC;IAED,YAAoB,UAAmB,EAAE;QARjC,SAAI,GAAG,IAAI,OAAO,EAAmC,CAAC;QAS5D,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;QAC7E,IAAI,CAAC,2BAAyB,CAAC,SAAS;YACtC,2BAAyB,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC;gBAClD,IAAI,EAAE,oCAAoC;gBAC1C,IAAI,EAAE,2CAA2C;gBACjD,UAAU,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC;gBACvC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CACtB,6CAA6C,EAC7C,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACzD;gBACD,SAAS,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;aACjC,CAAC,CAAC;QACL,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC;YACnC,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,YAAY,CAAC;YAC5C,UAAU,EAAE,CACV,QAA4B,EAC5B,GAAY,EACZ,GAAa,EACb,OAAsB,EACtB,EAAE;gBACF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC1C,OAAO,UAAU,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;YACnD,CAAC;YACD,UAAU,EAAE,CAAC,QAA8B,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;gBAC1E,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAChC,IAAI,CAAC,OAAO;qBACT,MAAM,CAAC;oBACN,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,GAAG,EAAE,GAAG,CAAC,OAAO;oBAChB,MAAM,EAAE,GAAG,CAAC,UAAU;iBACvB,CAAC;qBACD,GAAG,EAAE,CAAC;gBACT,2BAAyB,CAAC,SAAS;qBAChC,MAAM,CAAC;oBACN,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,GAAG,EAAE,GAAG,CAAC,OAAO;oBAChB,MAAM,EAAE,GAAG,CAAC,UAAU;iBACvB,CAAC;qBACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;gBACzC,OAAO,UAAU,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YAC1C,CAAC;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AA/D+B;IAA7B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;;yDAAyB;AAOtC;IALP,OAAO,CAAC;QACP,IAAI,EAAE,0CAA0C;QAChD,IAAI,EAAE,kCAAkC;QACxC,UAAU,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC;KACxC,CAAC;8BACe,OAAO;0DAAC;AARd,yBAAyB;IADrC,UAAU,EAAE;;GACA,yBAAyB,CAgErC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
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;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import onHeaders from 'on-headers';
|
|
11
|
+
import { Injectable } from '@nestjs/common';
|
|
12
|
+
import { counter, Counter } from '@biorate/prometheus';
|
|
13
|
+
import { inject, Types } from '@biorate/inversion';
|
|
14
|
+
import { RoutesInterceptor } from '../interceptors';
|
|
15
|
+
let RequestCountMiddleware = class RequestCountMiddleware {
|
|
16
|
+
use(req, res, next) {
|
|
17
|
+
onHeaders(res, () => {
|
|
18
|
+
const route = RoutesInterceptor.map.get(req);
|
|
19
|
+
this.counter
|
|
20
|
+
.labels({
|
|
21
|
+
method: req.method,
|
|
22
|
+
uri: route?.path ??
|
|
23
|
+
(this.config.get('app.middleware.RequestCountMiddleware.log-base-url', false)
|
|
24
|
+
? req.baseUrl || req.originalUrl
|
|
25
|
+
: '/'),
|
|
26
|
+
status: res.statusCode,
|
|
27
|
+
})
|
|
28
|
+
.inc();
|
|
29
|
+
});
|
|
30
|
+
next();
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
__decorate([
|
|
34
|
+
inject(Types.Config),
|
|
35
|
+
__metadata("design:type", Object)
|
|
36
|
+
], RequestCountMiddleware.prototype, "config", void 0);
|
|
37
|
+
__decorate([
|
|
38
|
+
counter({
|
|
39
|
+
name: 'http_server_requests_seconds_count',
|
|
40
|
+
help: 'Http server requests count',
|
|
41
|
+
labelNames: ['method', 'uri', 'status'],
|
|
42
|
+
}),
|
|
43
|
+
__metadata("design:type", Counter)
|
|
44
|
+
], RequestCountMiddleware.prototype, "counter", void 0);
|
|
45
|
+
RequestCountMiddleware = __decorate([
|
|
46
|
+
Injectable()
|
|
47
|
+
], RequestCountMiddleware);
|
|
48
|
+
export { RequestCountMiddleware };
|
|
49
|
+
//# sourceMappingURL=request-count-middleware.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-count-middleware.mjs","sourceRoot":"","sources":["../../../../src/middlewares/request-count-middleware.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,UAAU,EAAkB,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAGnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAG7C,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAU1B,GAAG,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB;QACxD,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE;YAClB,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC7C,IAAI,CAAC,OAAO;iBACT,MAAM,CAAC;gBACN,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,GAAG,EACD,KAAK,EAAE,IAAI;oBACX,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CACd,oDAAoD,EACpD,KAAK,CACN;wBACC,CAAC,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,WAAW;wBAChC,CAAC,CAAC,GAAG,CAAC;gBACV,MAAM,EAAE,GAAG,CAAC,UAAU;aACvB,CAAC;iBACD,GAAG,EAAE,CAAC;QACX,CAAC,CAAC,CAAC;QACH,IAAI,EAAE,CAAC;IACT,CAAC;CACF,CAAA;AA7B+B;IAA7B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;;sDAAyB;AAOtC;IALP,OAAO,CAAC;QACP,IAAI,EAAE,oCAAoC;QAC1C,IAAI,EAAE,4BAA4B;QAClC,UAAU,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC;KACxC,CAAC;8BACe,OAAO;uDAAC;AARd,sBAAsB;IADlC,UAAU,EAAE;GACA,sBAAsB,CA8BlC"}
|