@sima-land/isomorph 9.0.7 → 11.0.0-alpha.0
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/LICENSE +201 -0
- package/dist/cache/types.d.ts +7 -0
- package/dist/cache/types.js +3 -0
- package/dist/cache/types.js.map +1 -0
- package/dist/config/browser.d.ts +6 -0
- package/dist/config/browser.js +13 -0
- package/dist/config/browser.js.map +1 -0
- package/dist/config/index.d.ts +7 -0
- package/dist/config/index.js +20 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/node.d.ts +6 -0
- package/dist/config/node.js +19 -0
- package/dist/config/node.js.map +1 -0
- package/dist/config/types.d.ts +7 -0
- package/dist/config/types.js +3 -0
- package/dist/config/types.js.map +1 -0
- package/dist/config/utils.d.ts +5 -0
- package/dist/config/utils.js +12 -0
- package/dist/config/utils.js.map +1 -0
- package/dist/container/application.d.ts +25 -0
- package/dist/container/application.js +63 -0
- package/dist/container/application.js.map +1 -0
- package/dist/container/index.d.ts +18 -0
- package/dist/container/index.js +74 -0
- package/dist/container/index.js.map +1 -0
- package/dist/container/types.d.ts +14 -0
- package/dist/container/types.js +3 -0
- package/dist/container/types.js.map +1 -0
- package/dist/error-tracker/browser.d.ts +8 -0
- package/dist/error-tracker/browser.js +40 -0
- package/dist/error-tracker/browser.js.map +1 -0
- package/dist/error-tracker/node.d.ts +8 -0
- package/dist/error-tracker/node.js +40 -0
- package/dist/error-tracker/node.js.map +1 -0
- package/dist/error-tracker/types.d.ts +18 -0
- package/dist/error-tracker/types.js +3 -0
- package/dist/error-tracker/types.js.map +1 -0
- package/dist/error-tracker/utils.d.ts +12 -0
- package/dist/error-tracker/utils.js +19 -0
- package/dist/error-tracker/utils.js.map +1 -0
- package/dist/http-client/middleware/cookie.d.ts +19 -0
- package/dist/http-client/middleware/cookie.js +62 -0
- package/dist/http-client/middleware/cookie.js.map +1 -0
- package/dist/http-client/middleware/tracing.d.ts +32 -0
- package/dist/http-client/middleware/tracing.js +67 -0
- package/dist/http-client/middleware/tracing.js.map +1 -0
- package/dist/http-client/types.d.ts +6 -0
- package/dist/http-client/types.js +3 -0
- package/dist/http-client/types.js.map +1 -0
- package/dist/http-client/utils.d.ts +36 -0
- package/dist/http-client/utils.js +49 -0
- package/dist/http-client/utils.js.map +1 -0
- package/dist/http-server/constants.d.ts +4 -0
- package/dist/http-server/constants.js +8 -0
- package/dist/http-server/constants.js.map +1 -0
- package/dist/http-server/handler/health-check.d.ts +6 -0
- package/dist/http-server/handler/health-check.js +15 -0
- package/dist/http-server/handler/health-check.js.map +1 -0
- package/dist/http-server/middleware/logging.d.ts +10 -0
- package/dist/http-server/middleware/logging.js +31 -0
- package/dist/http-server/middleware/logging.js.map +1 -0
- package/dist/http-server/middleware/metrics.d.ts +23 -0
- package/dist/http-server/middleware/metrics.js +60 -0
- package/dist/http-server/middleware/metrics.js.map +1 -0
- package/dist/http-server/middleware/tracing.d.ts +8 -0
- package/dist/http-server/middleware/tracing.js +32 -0
- package/dist/http-server/middleware/tracing.js.map +1 -0
- package/dist/http-server/types.d.ts +25 -0
- package/dist/http-server/types.js +3 -0
- package/dist/http-server/types.js.map +1 -0
- package/dist/http-server/utils.d.ts +26 -0
- package/dist/http-server/utils.js +88 -0
- package/dist/http-server/utils.js.map +1 -0
- package/dist/logger/handler/console.d.ts +8 -0
- package/dist/logger/handler/console.js +36 -0
- package/dist/logger/handler/console.js.map +1 -0
- package/dist/logger/handler/sentry.d.ts +8 -0
- package/dist/logger/handler/sentry.js +36 -0
- package/dist/logger/handler/sentry.js.map +1 -0
- package/dist/logger/index.d.ts +6 -0
- package/dist/logger/index.js +31 -0
- package/dist/logger/index.js.map +1 -0
- package/dist/logger/types.d.ts +24 -0
- package/dist/logger/types.js +3 -0
- package/dist/logger/types.js.map +1 -0
- package/dist/metrics/constants.d.ts +4 -0
- package/dist/metrics/constants.js +8 -0
- package/dist/metrics/constants.js.map +1 -0
- package/dist/metrics/node.d.ts +18 -0
- package/dist/metrics/node.js +74 -0
- package/dist/metrics/node.js.map +1 -0
- package/dist/preset/index.d.ts +7 -0
- package/dist/preset/index.js +23 -0
- package/dist/preset/index.js.map +1 -0
- package/dist/preset/node/index.d.ts +15 -0
- package/dist/preset/node/index.js +90 -0
- package/dist/preset/node/index.js.map +1 -0
- package/dist/preset/node/response.d.ts +12 -0
- package/dist/preset/node/response.js +52 -0
- package/dist/preset/node/response.js.map +1 -0
- package/dist/preset/types.d.ts +7 -0
- package/dist/preset/types.js +3 -0
- package/dist/preset/types.js.map +1 -0
- package/dist/saga-runner/index.d.ts +8 -0
- package/dist/saga-runner/index.js +77 -0
- package/dist/saga-runner/index.js.map +1 -0
- package/dist/saga-runner/types.d.ts +10 -0
- package/dist/saga-runner/types.js +3 -0
- package/dist/saga-runner/types.js.map +1 -0
- package/dist/tokens.d.ts +40 -0
- package/dist/tokens.js +43 -0
- package/dist/tokens.js.map +1 -0
- package/dist/tracer/node.d.ts +10 -0
- package/dist/tracer/node.js +38 -0
- package/dist/tracer/node.js.map +1 -0
- package/dist/tracer/types.d.ts +2 -0
- package/dist/tracer/types.js +3 -0
- package/dist/tracer/types.js.map +1 -0
- package/dist/utils/browser/analytics/data-layer.d.ts +5 -0
- package/dist/utils/browser/analytics/data-layer.js +15 -0
- package/dist/utils/browser/analytics/data-layer.js.map +1 -0
- package/{helpers/analytics/index.d.ts → dist/utils/browser/analytics/oko.d.ts} +1 -6
- package/{helpers/analytics/index.js → dist/utils/browser/analytics/oko.js} +11 -20
- package/dist/utils/browser/analytics/oko.js.map +1 -0
- package/dist/utils/browser/storage/index.d.ts +4 -0
- package/dist/utils/browser/storage/index.js +63 -0
- package/dist/utils/browser/storage/index.js.map +1 -0
- package/dist/utils/number.d.ts +6 -0
- package/dist/utils/number.js +13 -0
- package/dist/utils/number.js.map +1 -0
- package/dist/utils/react/error-handlers/index.d.ts +38 -0
- package/dist/utils/react/error-handlers/index.js +47 -0
- package/dist/utils/react/error-handlers/index.js.map +1 -0
- package/dist/utils/redux/remote-data.d.ts +23 -0
- package/dist/utils/redux/remote-data.js +28 -0
- package/dist/utils/redux/remote-data.js.map +1 -0
- package/dist/utils/redux-saga/take-chain.d.ts +24 -0
- package/dist/utils/redux-saga/take-chain.js +56 -0
- package/dist/utils/redux-saga/take-chain.js.map +1 -0
- package/dist/utils/webpack/module-federation/index.d.ts +21 -0
- package/dist/utils/webpack/module-federation/index.js +74 -0
- package/dist/utils/webpack/module-federation/index.js.map +1 -0
- package/dist/utils/webpack/module-federation/types.d.ts +26 -0
- package/dist/utils/webpack/module-federation/types.js +3 -0
- package/dist/utils/webpack/module-federation/types.js.map +1 -0
- package/dist/utils/webpack/module-federation/utils.d.ts +15 -0
- package/dist/utils/webpack/module-federation/utils.js +36 -0
- package/dist/utils/webpack/module-federation/utils.js.map +1 -0
- package/package.json +50 -68
- package/readme.md +23 -0
- package/src/cache/types.ts +7 -0
- package/src/config/browser.ts +10 -0
- package/src/config/index.ts +18 -0
- package/src/config/node.ts +18 -0
- package/src/config/types.ts +9 -0
- package/src/config/utils.ts +7 -0
- package/src/container/application.ts +91 -0
- package/src/container/index.ts +79 -0
- package/src/container/types.ts +17 -0
- package/src/error-tracker/browser.ts +14 -0
- package/src/error-tracker/node.ts +14 -0
- package/src/error-tracker/types.ts +22 -0
- package/src/error-tracker/utils.ts +18 -0
- package/src/http-client/middleware/cookie.ts +73 -0
- package/src/{helpers/api/middlewares/trace-request-middleware.ts → http-client/middleware/tracing.ts} +28 -35
- package/src/http-client/types.ts +8 -0
- package/src/http-client/utils.ts +76 -0
- package/src/http-server/constants.ts +4 -0
- package/src/http-server/handler/health-check.ts +13 -0
- package/src/http-server/middleware/logging.ts +34 -0
- package/src/http-server/middleware/metrics.ts +87 -0
- package/src/http-server/middleware/tracing.ts +35 -0
- package/src/http-server/types.ts +29 -0
- package/src/http-server/utils.ts +105 -0
- package/src/logger/handler/console.ts +35 -0
- package/src/logger/handler/sentry.ts +38 -0
- package/src/logger/index.ts +31 -0
- package/src/logger/types.ts +28 -0
- package/src/metrics/constants.ts +4 -0
- package/src/metrics/node.ts +54 -0
- package/src/preset/index.ts +24 -0
- package/src/preset/node/index.ts +101 -0
- package/src/preset/node/response.ts +57 -0
- package/src/preset/types.ts +9 -0
- package/src/saga-runner/index.ts +59 -0
- package/src/saga-runner/types.ts +13 -0
- package/src/tokens.ts +54 -0
- package/src/tracer/node.ts +40 -0
- package/src/tracer/types.ts +3 -0
- package/src/utils/browser/analytics/__test__/data-layer.test.ts +50 -0
- package/src/utils/browser/analytics/__test__/oko.test.tsx +143 -0
- package/src/utils/browser/analytics/data-layer.ts +12 -0
- package/src/{helpers/analytics/index.ts → utils/browser/analytics/oko.ts} +10 -15
- package/src/utils/browser/storage/index.ts +75 -0
- package/src/utils/number.ts +8 -0
- package/src/utils/react/error-handlers/__test__/__snapshots__/index.test.tsx.snap +27 -0
- package/src/utils/react/error-handlers/__test__/index.test.tsx +64 -0
- package/src/utils/react/error-handlers/index.tsx +62 -0
- package/src/utils/redux/__test__/remote-data.test.ts +50 -0
- package/src/utils/redux/remote-data.ts +34 -0
- package/src/utils/redux-saga/__test__/take-chain.test.ts +141 -0
- package/src/utils/redux-saga/take-chain.ts +65 -0
- package/src/utils/webpack/module-federation/__test__/index.test.ts +246 -0
- package/src/utils/webpack/module-federation/index.ts +92 -0
- package/src/utils/webpack/module-federation/types.ts +44 -0
- package/src/utils/webpack/module-federation/utils.ts +43 -0
- package/cache/helpers.d.ts +0 -4
- package/cache/helpers.js +0 -39
- package/cache/helpers.js.map +0 -1
- package/cache/local-storage.d.ts +0 -34
- package/cache/local-storage.js +0 -90
- package/cache/local-storage.js.map +0 -1
- package/cache/redis.d.ts +0 -10
- package/cache/redis.js +0 -54
- package/cache/redis.js.map +0 -1
- package/cache/wrap-in-trace.d.ts +0 -8
- package/cache/wrap-in-trace.js +0 -68
- package/cache/wrap-in-trace.js.map +0 -1
- package/config/create.d.ts +0 -8
- package/config/create.js +0 -32
- package/config/create.js.map +0 -1
- package/config/helpers.d.ts +0 -11
- package/config/helpers.js +0 -71
- package/config/helpers.js.map +0 -1
- package/config/validate.d.ts +0 -18
- package/config/validate.js +0 -107
- package/config/validate.js.map +0 -1
- package/container/create-inject.d.ts +0 -7
- package/container/create-inject.js +0 -36
- package/container/create-inject.js.map +0 -1
- package/container/get-dependencies.d.ts +0 -13
- package/container/get-dependencies.js +0 -54
- package/container/get-dependencies.js.map +0 -1
- package/container/index.d.ts +0 -15
- package/container/index.js +0 -175
- package/container/index.js.map +0 -1
- package/container/is-container.d.ts +0 -7
- package/container/is-container.js +0 -17
- package/container/is-container.js.map +0 -1
- package/container/service-not-found-error.d.ts +0 -10
- package/container/service-not-found-error.js +0 -18
- package/container/service-not-found-error.js.map +0 -1
- package/create-proxy/create-proxy-middleware/index.d.ts +0 -16
- package/create-proxy/create-proxy-middleware/index.js +0 -47
- package/create-proxy/create-proxy-middleware/index.js.map +0 -1
- package/create-proxy/index.d.ts +0 -12
- package/create-proxy/index.js +0 -25
- package/create-proxy/index.js.map +0 -1
- package/create-response-sender/index.d.ts +0 -8
- package/create-response-sender/index.js +0 -42
- package/create-response-sender/index.js.map +0 -1
- package/get-dynamic-data/index.d.ts +0 -8
- package/get-dynamic-data/index.js +0 -23
- package/get-dynamic-data/index.js.map +0 -1
- package/graceful-shutdown/index.d.ts +0 -26
- package/graceful-shutdown/index.js +0 -87
- package/graceful-shutdown/index.js.map +0 -1
- package/helpers/add-error-handling/index.d.ts +0 -1
- package/helpers/add-error-handling/index.js +0 -42
- package/helpers/add-error-handling/index.js.map +0 -1
- package/helpers/analytics/index.js.map +0 -1
- package/helpers/api/create-enhancer.d.ts +0 -12
- package/helpers/api/create-enhancer.js +0 -52
- package/helpers/api/create-enhancer.js.map +0 -1
- package/helpers/api/create-instance.d.ts +0 -11
- package/helpers/api/create-instance.js +0 -39
- package/helpers/api/create-instance.js.map +0 -1
- package/helpers/api/middlewares/collect-cookie-middleware.d.ts +0 -10
- package/helpers/api/middlewares/collect-cookie-middleware.js +0 -39
- package/helpers/api/middlewares/collect-cookie-middleware.js.map +0 -1
- package/helpers/api/middlewares/count-api-response-time.d.ts +0 -12
- package/helpers/api/middlewares/count-api-response-time.js +0 -39
- package/helpers/api/middlewares/count-api-response-time.js.map +0 -1
- package/helpers/api/middlewares/error-handlers-middlewares.d.ts +0 -5
- package/helpers/api/middlewares/error-handlers-middlewares.js +0 -114
- package/helpers/api/middlewares/error-handlers-middlewares.js.map +0 -1
- package/helpers/api/middlewares/helpers.d.ts +0 -11
- package/helpers/api/middlewares/helpers.js +0 -27
- package/helpers/api/middlewares/helpers.js.map +0 -1
- package/helpers/api/middlewares/pass-headers-middleware.d.ts +0 -3
- package/helpers/api/middlewares/pass-headers-middleware.js +0 -27
- package/helpers/api/middlewares/pass-headers-middleware.js.map +0 -1
- package/helpers/api/middlewares/prepare-request-headers.d.ts +0 -5
- package/helpers/api/middlewares/prepare-request-headers.js +0 -20
- package/helpers/api/middlewares/prepare-request-headers.js.map +0 -1
- package/helpers/api/middlewares/set-http-agents-middleware.d.ts +0 -15
- package/helpers/api/middlewares/set-http-agents-middleware.js +0 -34
- package/helpers/api/middlewares/set-http-agents-middleware.js.map +0 -1
- package/helpers/api/middlewares/stages-trace-middleware.d.ts +0 -17
- package/helpers/api/middlewares/stages-trace-middleware.js +0 -57
- package/helpers/api/middlewares/stages-trace-middleware.js.map +0 -1
- package/helpers/api/middlewares/trace-request-middleware.d.ts +0 -24
- package/helpers/api/middlewares/trace-request-middleware.js +0 -69
- package/helpers/api/middlewares/trace-request-middleware.js.map +0 -1
- package/helpers/api/server-adapter/__fixtures__/fake-keys.d.ts +0 -10
- package/helpers/api/server-adapter/__fixtures__/fake-keys.js +0 -61
- package/helpers/api/server-adapter/__fixtures__/fake-keys.js.map +0 -1
- package/helpers/api/server-adapter/constants.d.ts +0 -5
- package/helpers/api/server-adapter/constants.js +0 -16
- package/helpers/api/server-adapter/constants.js.map +0 -1
- package/helpers/api/server-adapter/helpers.d.ts +0 -26
- package/helpers/api/server-adapter/helpers.js +0 -208
- package/helpers/api/server-adapter/helpers.js.map +0 -1
- package/helpers/api/server-adapter/index.d.ts +0 -10
- package/helpers/api/server-adapter/index.js +0 -118
- package/helpers/api/server-adapter/index.js.map +0 -1
- package/helpers/development/use-dot-env.d.ts +0 -6
- package/helpers/development/use-dot-env.js +0 -11
- package/helpers/development/use-dot-env.js.map +0 -1
- package/helpers/get-params/index.d.ts +0 -4
- package/helpers/get-params/index.js +0 -51
- package/helpers/get-params/index.js.map +0 -1
- package/helpers/http/request-getters.d.ts +0 -5
- package/helpers/http/request-getters.js +0 -49
- package/helpers/http/request-getters.js.map +0 -1
- package/helpers/http/statuses-validator.d.ts +0 -3
- package/helpers/http/statuses-validator.js +0 -25
- package/helpers/http/statuses-validator.js.map +0 -1
- package/helpers/logger/create-pino-instance/index.d.ts +0 -6
- package/helpers/logger/create-pino-instance/index.js +0 -39
- package/helpers/logger/create-pino-instance/index.js.map +0 -1
- package/helpers/logger/format-time/index.d.ts +0 -6
- package/helpers/logger/format-time/index.js +0 -9
- package/helpers/logger/format-time/index.js.map +0 -1
- package/helpers/metrics/index.d.ts +0 -23
- package/helpers/metrics/index.js +0 -42
- package/helpers/metrics/index.js.map +0 -1
- package/helpers/prometheus/index.d.ts +0 -4
- package/helpers/prometheus/index.js +0 -13
- package/helpers/prometheus/index.js.map +0 -1
- package/helpers/prometheus/measure-middleware.d.ts +0 -5
- package/helpers/prometheus/measure-middleware.js +0 -69
- package/helpers/prometheus/measure-middleware.js.map +0 -1
- package/helpers/prometheus/metric-adapter.d.ts +0 -36
- package/helpers/prometheus/metric-adapter.js +0 -98
- package/helpers/prometheus/metric-adapter.js.map +0 -1
- package/helpers/react/error-handlers/index.d.ts +0 -40
- package/helpers/react/error-handlers/index.js +0 -52
- package/helpers/react/error-handlers/index.js.map +0 -1
- package/helpers/redux/constants.d.ts +0 -5
- package/helpers/redux/constants.js +0 -14
- package/helpers/redux/constants.js.map +0 -1
- package/helpers/redux/create-compose-middleware.d.ts +0 -15
- package/helpers/redux/create-compose-middleware.js +0 -23
- package/helpers/redux/create-compose-middleware.js.map +0 -1
- package/helpers/redux/get-dev-compose-creator.d.ts +0 -6
- package/helpers/redux/get-dev-compose-creator.js +0 -13
- package/helpers/redux/get-dev-compose-creator.js.map +0 -1
- package/helpers/redux/prepare-on-ready.d.ts +0 -9
- package/helpers/redux/prepare-on-ready.js +0 -16
- package/helpers/redux/prepare-on-ready.js.map +0 -1
- package/helpers/redux/remote-data.d.ts +0 -40
- package/helpers/redux/remote-data.js +0 -91
- package/helpers/redux/remote-data.js.map +0 -1
- package/helpers/redux/selector/statuses.d.ts +0 -23
- package/helpers/redux/selector/statuses.js +0 -34
- package/helpers/redux/selector/statuses.js.map +0 -1
- package/helpers/redux/wait-on-store-readiness.d.ts +0 -11
- package/helpers/redux/wait-on-store-readiness.js +0 -29
- package/helpers/redux/wait-on-store-readiness.js.map +0 -1
- package/helpers/render/get-react-markup-data.d.ts +0 -14
- package/helpers/render/get-react-markup-data.js +0 -20
- package/helpers/render/get-react-markup-data.js.map +0 -1
- package/helpers/render/index.d.ts +0 -21
- package/helpers/render/index.js +0 -72
- package/helpers/render/index.js.map +0 -1
- package/helpers/render/render-app.d.ts +0 -12
- package/helpers/render/render-app.js +0 -12
- package/helpers/render/render-app.js.map +0 -1
- package/helpers/saga/__fixtures__/do-safe-request.d.ts +0 -43
- package/helpers/saga/__fixtures__/do-safe-request.js +0 -50
- package/helpers/saga/__fixtures__/do-safe-request.js.map +0 -1
- package/helpers/saga/cache-result.d.ts +0 -46
- package/helpers/saga/cache-result.js +0 -71
- package/helpers/saga/cache-result.js.map +0 -1
- package/helpers/saga/create-store.d.ts +0 -20
- package/helpers/saga/create-store.js +0 -106
- package/helpers/saga/create-store.js.map +0 -1
- package/helpers/saga/do-safe-request.d.ts +0 -38
- package/helpers/saga/do-safe-request.js +0 -45
- package/helpers/saga/do-safe-request.js.map +0 -1
- package/helpers/saga/safe-request.d.ts +0 -7
- package/helpers/saga/safe-request.js +0 -15
- package/helpers/saga/safe-request.js.map +0 -1
- package/helpers/saga/take-chain.d.ts +0 -20
- package/helpers/saga/take-chain.js +0 -56
- package/helpers/saga/take-chain.js.map +0 -1
- package/helpers/tracer/create-child-tracing-middleware.d.ts +0 -7
- package/helpers/tracer/create-child-tracing-middleware.js +0 -40
- package/helpers/tracer/create-child-tracing-middleware.js.map +0 -1
- package/helpers/tracer/index.d.ts +0 -24
- package/helpers/tracer/index.js +0 -144
- package/helpers/tracer/index.js.map +0 -1
- package/helpers/utils/check-feature-by-segment.d.ts +0 -2
- package/helpers/utils/check-feature-by-segment.js +0 -31
- package/helpers/utils/check-feature-by-segment.js.map +0 -1
- package/helpers/utils/format-object-keys.d.ts +0 -6
- package/helpers/utils/format-object-keys.js +0 -27
- package/helpers/utils/format-object-keys.js.map +0 -1
- package/helpers/utils/get-ms-from-hrt.d.ts +0 -2
- package/helpers/utils/get-ms-from-hrt.js +0 -22
- package/helpers/utils/get-ms-from-hrt.js.map +0 -1
- package/helpers/utils/is-match-pattern-list.d.ts +0 -8
- package/helpers/utils/is-match-pattern-list.js +0 -16
- package/helpers/utils/is-match-pattern-list.js.map +0 -1
- package/helpers/utils/is-not-empty-array.d.ts +0 -2
- package/helpers/utils/is-not-empty-array.js +0 -12
- package/helpers/utils/is-not-empty-array.js.map +0 -1
- package/helpers/utils/is-not-empty-string.d.ts +0 -2
- package/helpers/utils/is-not-empty-string.js +0 -15
- package/helpers/utils/is-not-empty-string.js.map +0 -1
- package/helpers/utils/is-numeric.d.ts +0 -7
- package/helpers/utils/is-numeric.js +0 -16
- package/helpers/utils/is-numeric.js.map +0 -1
- package/helpers/utils/wrap-in-measure-event.d.ts +0 -9
- package/helpers/utils/wrap-in-measure-event.js +0 -50
- package/helpers/utils/wrap-in-measure-event.js.map +0 -1
- package/logger/create-logger-middleware/index.d.ts +0 -14
- package/logger/create-logger-middleware/index.js +0 -41
- package/logger/create-logger-middleware/index.js.map +0 -1
- package/logger/create-sentry-instance/index.d.ts +0 -29
- package/logger/create-sentry-instance/index.js +0 -63
- package/logger/create-sentry-instance/index.js.map +0 -1
- package/logger/create-sentry-middleware/index.d.ts +0 -14
- package/logger/create-sentry-middleware/index.js +0 -19
- package/logger/create-sentry-middleware/index.js.map +0 -1
- package/logger/handler-creators/index.d.ts +0 -5
- package/logger/handler-creators/index.js +0 -41
- package/logger/handler-creators/index.js.map +0 -1
- package/logger/initialize-sentry-creator/index.d.ts +0 -17
- package/logger/initialize-sentry-creator/index.js +0 -35
- package/logger/initialize-sentry-creator/index.js.map +0 -1
- package/logger/sentry-logger/index.d.ts +0 -9
- package/logger/sentry-logger/index.js +0 -36
- package/logger/sentry-logger/index.js.map +0 -1
- package/module-federation/__example__/webpack-config.example.d.ts +0 -366
- package/module-federation/__example__/webpack-config.example.js +0 -51
- package/module-federation/__example__/webpack-config.example.js.map +0 -1
- package/module-federation/enhanced-module-federation-plugin.d.ts +0 -46
- package/module-federation/enhanced-module-federation-plugin.js +0 -72
- package/module-federation/enhanced-module-federation-plugin.js.map +0 -1
- package/module-federation/utils/index.d.ts +0 -8
- package/module-federation/utils/index.js +0 -28
- package/module-federation/utils/index.js.map +0 -1
- package/observe-middleware/index.d.ts +0 -9
- package/observe-middleware/index.js +0 -67
- package/observe-middleware/index.js.map +0 -1
- package/set-header-middleware/create.d.ts +0 -10
- package/set-header-middleware/create.js +0 -16
- package/set-header-middleware/create.js.map +0 -1
- package/src/cache/helpers.js +0 -32
- package/src/cache/local-storage.ts +0 -92
- package/src/cache/redis.js +0 -79
- package/src/cache/wrap-in-trace.js +0 -57
- package/src/config/create.js +0 -33
- package/src/config/helpers.js +0 -71
- package/src/config/validate.js +0 -114
- package/src/container/create-inject.js +0 -32
- package/src/container/get-dependencies.js +0 -46
- package/src/container/index.js +0 -188
- package/src/container/is-container.js +0 -14
- package/src/container/service-not-found-error.js +0 -14
- package/src/create-proxy/create-proxy-middleware/index.js +0 -47
- package/src/create-proxy/index.js +0 -27
- package/src/create-response-sender/index.js +0 -48
- package/src/get-dynamic-data/index.js +0 -26
- package/src/graceful-shutdown/index.js +0 -97
- package/src/helpers/add-error-handling/index.js +0 -24
- package/src/helpers/api/create-enhancer.js +0 -52
- package/src/helpers/api/create-instance.js +0 -42
- package/src/helpers/api/middlewares/collect-cookie-middleware.js +0 -27
- package/src/helpers/api/middlewares/count-api-response-time.js +0 -31
- package/src/helpers/api/middlewares/error-handlers-middlewares.js +0 -124
- package/src/helpers/api/middlewares/helpers.js +0 -26
- package/src/helpers/api/middlewares/pass-headers-middleware.js +0 -19
- package/src/helpers/api/middlewares/prepare-request-headers.js +0 -18
- package/src/helpers/api/middlewares/set-http-agents-middleware.js +0 -22
- package/src/helpers/api/middlewares/stages-trace-middleware.js +0 -46
- package/src/helpers/api/server-adapter/__fixtures__/fake-keys.js +0 -58
- package/src/helpers/api/server-adapter/constants.js +0 -12
- package/src/helpers/api/server-adapter/helpers.js +0 -244
- package/src/helpers/api/server-adapter/index.js +0 -155
- package/src/helpers/development/use-dot-env.js +0 -9
- package/src/helpers/get-params/index.js +0 -59
- package/src/helpers/http/request-getters.js +0 -42
- package/src/helpers/http/statuses-validator.js +0 -20
- package/src/helpers/logger/create-pino-instance/index.js +0 -41
- package/src/helpers/logger/format-time/index.js +0 -6
- package/src/helpers/metrics/index.js +0 -40
- package/src/helpers/prometheus/index.js +0 -9
- package/src/helpers/prometheus/measure-middleware.js +0 -73
- package/src/helpers/prometheus/metric-adapter.js +0 -99
- package/src/helpers/react/error-handlers/index.tsx +0 -68
- package/src/helpers/redux/constants.js +0 -10
- package/src/helpers/redux/create-compose-middleware.js +0 -24
- package/src/helpers/redux/get-dev-compose-creator.js +0 -9
- package/src/helpers/redux/prepare-on-ready.js +0 -16
- package/src/helpers/redux/remote-data.js +0 -124
- package/src/helpers/redux/selector/statuses.js +0 -30
- package/src/helpers/redux/wait-on-store-readiness.js +0 -40
- package/src/helpers/render/get-react-markup-data.js +0 -18
- package/src/helpers/render/index.js +0 -69
- package/src/helpers/render/render-app.js +0 -15
- package/src/helpers/saga/__fixtures__/do-safe-request.js +0 -49
- package/src/helpers/saga/cache-result.js +0 -77
- package/src/helpers/saga/create-store.js +0 -102
- package/src/helpers/saga/do-safe-request.js +0 -47
- package/src/helpers/saga/safe-request.js +0 -11
- package/src/helpers/saga/take-chain.js +0 -53
- package/src/helpers/tracer/create-child-tracing-middleware.js +0 -42
- package/src/helpers/tracer/index.js +0 -171
- package/src/helpers/utils/check-feature-by-segment.js +0 -32
- package/src/helpers/utils/format-object-keys.js +0 -23
- package/src/helpers/utils/get-ms-from-hrt.js +0 -16
- package/src/helpers/utils/is-match-pattern-list.js +0 -13
- package/src/helpers/utils/is-not-empty-array.js +0 -8
- package/src/helpers/utils/is-not-empty-string.js +0 -11
- package/src/helpers/utils/is-numeric.ts +0 -12
- package/src/helpers/utils/wrap-in-measure-event.js +0 -35
- package/src/logger/create-logger-middleware/index.js +0 -46
- package/src/logger/create-sentry-instance/index.js +0 -74
- package/src/logger/create-sentry-middleware/index.js +0 -16
- package/src/logger/handler-creators/index.js +0 -38
- package/src/logger/initialize-sentry-creator/index.js +0 -43
- package/src/logger/sentry-logger/index.js +0 -33
- package/src/module-federation/__example__/webpack-config.example.js +0 -57
- package/src/module-federation/enhanced-module-federation-plugin.js +0 -92
- package/src/module-federation/utils/index.js +0 -32
- package/src/observe-middleware/index.js +0 -70
- package/src/set-header-middleware/create.js +0 -17
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const helpers_1 = require("./helpers");
|
|
4
|
-
const constants_1 = require("./constants");
|
|
5
|
-
/**
|
|
6
|
-
* Адаптер для Axios, создающий события на основных этапах запроса к API.
|
|
7
|
-
* За образец использован дефолтный адаптер 'axios/lib/adapters/http.js',
|
|
8
|
-
* но без поддержки proxy, socketPath и cancelToken за ненадобностью.
|
|
9
|
-
* Только для NodeJS, на клиенте не использовать.
|
|
10
|
-
* @param {Object} config Конфигурация инстанса Axios.
|
|
11
|
-
* @return {Promise} Разрешится после запроса к API.
|
|
12
|
-
*/
|
|
13
|
-
const serverAdapter = config => new Promise((resolve, reject) => {
|
|
14
|
-
const { headers, data: pureData, timeout, responseType, maxContentLength, responseEncoding, emitter, } = config;
|
|
15
|
-
const needEmit = helpers_1.isEventEmitter(emitter);
|
|
16
|
-
// Регистрируем обработчик начала запроса.
|
|
17
|
-
needEmit && emitter.emit(constants_1.REQUEST_STAGES.start);
|
|
18
|
-
// Подготовка данных запроса.
|
|
19
|
-
let data;
|
|
20
|
-
if (pureData && !helpers_1.isStream(pureData)) {
|
|
21
|
-
data = helpers_1.prepareDataBuffer(pureData);
|
|
22
|
-
if (data) {
|
|
23
|
-
headers['Content-Length'] = data.length;
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
reject(helpers_1.createError('Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream', config));
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
else {
|
|
30
|
-
data = pureData;
|
|
31
|
-
}
|
|
32
|
-
const options = helpers_1.createOptions(Object.assign(Object.assign({}, config), { headers }));
|
|
33
|
-
const transport = helpers_1.createTransport(config);
|
|
34
|
-
// Создаем запрос и коллбэк, обрабатывающий ответ.
|
|
35
|
-
const req = transport.request(options, res => {
|
|
36
|
-
// Регистрируем обработчик получения ответа.
|
|
37
|
-
res.once('readable', () => needEmit && emitter.emit(constants_1.REQUEST_STAGES.firstByteReceived));
|
|
38
|
-
const stream = helpers_1.uncompressResponse(res);
|
|
39
|
-
if (stream !== res) {
|
|
40
|
-
delete res.headers['content-encoding'];
|
|
41
|
-
}
|
|
42
|
-
const response = {
|
|
43
|
-
status: res.statusCode,
|
|
44
|
-
statusText: res.statusMessage,
|
|
45
|
-
headers: res.headers,
|
|
46
|
-
config,
|
|
47
|
-
request: res.req,
|
|
48
|
-
};
|
|
49
|
-
const resBuffer = [];
|
|
50
|
-
/**
|
|
51
|
-
* Обработчик получения порции данных.
|
|
52
|
-
* @param {Buffer} chunk Порция данных.
|
|
53
|
-
*/
|
|
54
|
-
const chunksHandler = chunk => {
|
|
55
|
-
resBuffer.push(chunk);
|
|
56
|
-
if (maxContentLength > -1
|
|
57
|
-
&& Buffer.concat(resBuffer).length > maxContentLength) {
|
|
58
|
-
stream.destroy();
|
|
59
|
-
reject(helpers_1.createError(`maxContentLength size of ${maxContentLength} exceeded`, config, null, res.req));
|
|
60
|
-
}
|
|
61
|
-
};
|
|
62
|
-
/**
|
|
63
|
-
* Обработчик завершения получения данных.
|
|
64
|
-
*/
|
|
65
|
-
const finishHandler = () => {
|
|
66
|
-
const concatBuffer = Buffer.concat(resBuffer);
|
|
67
|
-
response.data = responseType === 'arraybuffer'
|
|
68
|
-
? concatBuffer
|
|
69
|
-
: concatBuffer.toString(responseEncoding);
|
|
70
|
-
helpers_1.settle(resolve, reject, response);
|
|
71
|
-
// Регистрируем обработчик завершения запроса.
|
|
72
|
-
needEmit && emitter.emit(constants_1.REQUEST_STAGES.end);
|
|
73
|
-
};
|
|
74
|
-
if (responseType === 'stream') {
|
|
75
|
-
response.data = stream;
|
|
76
|
-
helpers_1.settle(resolve, reject, response);
|
|
77
|
-
}
|
|
78
|
-
else {
|
|
79
|
-
stream
|
|
80
|
-
.on('data', chunksHandler)
|
|
81
|
-
.on('error', err => {
|
|
82
|
-
!req.aborted && reject(helpers_1.enhanceError(err, config, null, res.req));
|
|
83
|
-
})
|
|
84
|
-
.on('end', finishHandler);
|
|
85
|
-
}
|
|
86
|
-
});
|
|
87
|
-
// Регистрируем обработчики событий сокета.
|
|
88
|
-
if (needEmit) {
|
|
89
|
-
req.on('socket', socket => {
|
|
90
|
-
socket.connecting && socket
|
|
91
|
-
.on('lookup', () => emitter.emit(constants_1.REQUEST_STAGES.dnsLookupFinish))
|
|
92
|
-
.on('connect', () => emitter.emit(constants_1.REQUEST_STAGES.tcpConnectionConnect))
|
|
93
|
-
.on('secureConnect', () => emitter.emit(constants_1.REQUEST_STAGES.tlsHandshakeFinish));
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
req.on('error', err => {
|
|
97
|
-
!req.aborted && reject(helpers_1.enhanceError(err, config, null, req));
|
|
98
|
-
});
|
|
99
|
-
if (timeout) {
|
|
100
|
-
req.setTimeout(timeout, () => {
|
|
101
|
-
req.abort();
|
|
102
|
-
reject(helpers_1.createError(`timeout of ${config.timeout} ms exceeded`, config, 'ECONNABORTED', req));
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
// Отправка данных запроса.
|
|
106
|
-
if (helpers_1.isStream(data)) {
|
|
107
|
-
data
|
|
108
|
-
.on('error', err => {
|
|
109
|
-
reject(helpers_1.enhanceError(err, config, null, req));
|
|
110
|
-
})
|
|
111
|
-
.pipe(req);
|
|
112
|
-
}
|
|
113
|
-
else {
|
|
114
|
-
req.end(data);
|
|
115
|
-
}
|
|
116
|
-
});
|
|
117
|
-
exports.default = serverAdapter;
|
|
118
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/helpers/api/server-adapter/index.js"],"names":[],"mappings":";;AAAA,uCAUmB;AAEnB,2CAA6C;AAE7C;;;;;;;GAOG;AACH,MAAM,aAAa,GAAG,MAAM,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9D,MAAM,EACJ,OAAO,EACP,IAAI,EAAE,QAAQ,EACd,OAAO,EACP,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,OAAO,GACR,GAAG,MAAM,CAAC;IAEX,MAAM,QAAQ,GAAG,wBAAc,CAAC,OAAO,CAAC,CAAC;IAEzC,0CAA0C;IAC1C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,0BAAc,CAAC,KAAK,CAAC,CAAC;IAE/C,6BAA6B;IAC7B,IAAI,IAAI,CAAC;IAET,IAAI,QAAQ,IAAI,CAAC,kBAAQ,CAAC,QAAQ,CAAC,EAAE;QACnC,IAAI,GAAG,2BAAiB,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,IAAI,EAAE;YACR,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;SACzC;aAAM;YACL,MAAM,CAAC,qBAAW,CAChB,mFAAmF,EACnF,MAAM,CACP,CAAC,CAAC;SACJ;KACF;SAAM;QACL,IAAI,GAAG,QAAQ,CAAC;KACjB;IAED,MAAM,OAAO,GAAG,uBAAa,iCAAM,MAAM,KAAE,OAAO,IAAG,CAAC;IACtD,MAAM,SAAS,GAAG,yBAAe,CAAC,MAAM,CAAC,CAAC;IAE1C,kDAAkD;IAClD,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE;QAC3C,4CAA4C;QAC5C,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,0BAAc,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAEvF,MAAM,MAAM,GAAG,4BAAkB,CAAC,GAAG,CAAC,CAAC;QAEvC,IAAI,MAAM,KAAK,GAAG,EAAE;YAClB,OAAO,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;SACxC;QAED,MAAM,QAAQ,GAAG;YACf,MAAM,EAAE,GAAG,CAAC,UAAU;YACtB,UAAU,EAAE,GAAG,CAAC,aAAa;YAC7B,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,MAAM;YACN,OAAO,EAAE,GAAG,CAAC,GAAG;SACjB,CAAC;QAEF,MAAM,SAAS,GAAG,EAAE,CAAC;QAErB;;;WAGG;QACH,MAAM,aAAa,GAAG,KAAK,CAAC,EAAE;YAC5B,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtB,IACE,gBAAgB,GAAG,CAAC,CAAC;mBAChB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,gBAAgB,EACvD;gBACA,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,MAAM,CAAC,qBAAW,CAAC,4BAA4B,gBAAgB,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;aACrG;QACH,CAAC,CAAC;QAEF;;WAEG;QACH,MAAM,aAAa,GAAG,GAAG,EAAE;YACzB,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC9C,QAAQ,CAAC,IAAI,GAAG,YAAY,KAAK,aAAa;gBAC5C,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;YAE5C,gBAAM,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;YAElC,8CAA8C;YAC9C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,0BAAc,CAAC,GAAG,CAAC,CAAC;QAC/C,CAAC,CAAC;QACF,IAAI,YAAY,KAAK,QAAQ,EAAE;YAC7B,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC;YACvB,gBAAM,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;SACnC;aAAM;YACL,MAAM;iBACH,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC;iBACzB,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE;gBACjB,CAAC,GAAG,CAAC,OAAO,IAAI,MAAM,CAAC,sBAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YACnE,CAAC,CAAC;iBACD,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;SAC7B;IACH,CAAC,CAAC,CAAC;IAEH,2CAA2C;IAC3C,IAAI,QAAQ,EAAE;QACZ,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE;YACxB,MAAM,CAAC,UAAU,IAAI,MAAM;iBACxB,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,0BAAc,CAAC,eAAe,CAAC,CAAC;iBAChE,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,0BAAc,CAAC,oBAAoB,CAAC,CAAC;iBACtE,EAAE,CAAC,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,0BAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;KACJ;IAED,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE;QACpB,CAAC,GAAG,CAAC,OAAO,IAAI,MAAM,CAAC,sBAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,IAAI,OAAO,EAAE;QACX,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE;YAC3B,GAAG,CAAC,KAAK,EAAE,CAAC;YACZ,MAAM,CAAC,qBAAW,CAAC,cAAc,MAAM,CAAC,OAAO,cAAc,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;QAC/F,CAAC,CAAC,CAAC;KACJ;IAED,2BAA2B;IAC3B,IAAI,kBAAQ,CAAC,IAAI,CAAC,EAAE;QAClB,IAAI;aACD,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE;YACjB,MAAM,CAAC,sBAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC;aACD,IAAI,CAAC,GAAG,CAAC,CAAC;KACd;SAAM;QACL,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;KACf;AACH,CAAC,CAAC,CAAC;AAEH,kBAAe,aAAa,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/**
|
|
4
|
-
* Определяет, необходимо ли подключать dotenv и если необходимо, подключает его.
|
|
5
|
-
* @param {string} environment Значение переменной среды NODE_ENV.
|
|
6
|
-
*/
|
|
7
|
-
const useDotEnv = environment => {
|
|
8
|
-
['development', 'test'].includes(environment) && require('dotenv').config();
|
|
9
|
-
};
|
|
10
|
-
exports.default = useDotEnv;
|
|
11
|
-
//# sourceMappingURL=use-dot-env.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"use-dot-env.js","sourceRoot":"","sources":["../../../src/helpers/development/use-dot-env.js"],"names":[],"mappings":";;AAAA;;;GAGG;AACH,MAAM,SAAS,GAAG,WAAW,CAAC,EAAE;IAC9B,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;AAC9E,CAAC,CAAC;AAEF,kBAAe,SAAS,CAAC"}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.parseHttpHeaders = exports.getParams = void 0;
|
|
7
|
-
const get_1 = __importDefault(require("lodash/get"));
|
|
8
|
-
const isFunction_1 = __importDefault(require("lodash/isFunction"));
|
|
9
|
-
const container_1 = require("../../container");
|
|
10
|
-
/**
|
|
11
|
-
* Генерирует параметры приложения.
|
|
12
|
-
* @param {Object} request Запрос.
|
|
13
|
-
* @param {Object} config Конфиг приложения.
|
|
14
|
-
* @param {Function} getValue Генератор значения.
|
|
15
|
-
* @param {Function} modify Модификатор Значения.
|
|
16
|
-
* @param {Object} defaultValue Значение поумолчанию.
|
|
17
|
-
* @return {Object} Параметры приложения.
|
|
18
|
-
*/
|
|
19
|
-
const getParams = (request, config, getValue = () => { }, modify, defaultValue) => {
|
|
20
|
-
let result = getValue(request);
|
|
21
|
-
if (!result) {
|
|
22
|
-
result = defaultValue;
|
|
23
|
-
}
|
|
24
|
-
if (isFunction_1.default(modify)) {
|
|
25
|
-
result = modify(result, request, config);
|
|
26
|
-
}
|
|
27
|
-
return result;
|
|
28
|
-
};
|
|
29
|
-
exports.getParams = getParams;
|
|
30
|
-
/**
|
|
31
|
-
* Парсит заголовок запроса.
|
|
32
|
-
* @param {Object} request Запрос.
|
|
33
|
-
* @return {Object} Параметры.
|
|
34
|
-
*/
|
|
35
|
-
const parseHttpHeaders = request => {
|
|
36
|
-
/**
|
|
37
|
-
* Node.js переводит в ASCII.
|
|
38
|
-
* @see {https://github.com/nodejs/node/issues/17390}
|
|
39
|
-
*/
|
|
40
|
-
const params = Buffer.from(get_1.default(request, 'headers[simaland-params]', ''), 'binary').toString('utf8');
|
|
41
|
-
return params ? JSON.parse(params) : null;
|
|
42
|
-
};
|
|
43
|
-
exports.parseHttpHeaders = parseHttpHeaders;
|
|
44
|
-
exports.default = container_1.createService(exports.getParams, ({ request, config, getValue, modify, defaultValue, }) => [
|
|
45
|
-
request,
|
|
46
|
-
config,
|
|
47
|
-
getValue,
|
|
48
|
-
modify,
|
|
49
|
-
defaultValue,
|
|
50
|
-
]);
|
|
51
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/helpers/get-params/index.js"],"names":[],"mappings":";;;;;;AAAA,qDAA6B;AAC7B,mEAA2C;AAC3C,+CAAgD;AAEhD;;;;;;;;GAQG;AACI,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAG,GAAG,EAAE,GAAE,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE;IACtF,IAAI,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,GAAG,YAAY,CAAC;KACvB;IACD,IAAI,oBAAU,CAAC,MAAM,CAAC,EAAE;QACtB,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;KAC1C;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AATW,QAAA,SAAS,aASpB;AAEF;;;;GAIG;AACI,MAAM,gBAAgB,GAAG,OAAO,CAAC,EAAE;IACxC;;;OAGG;IACH,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CACxB,aAAG,CAAC,OAAO,EAAE,0BAA0B,EAAE,EAAE,CAAC,EAC5C,QAAQ,CACT,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnB,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC5C,CAAC,CAAC;AAVW,QAAA,gBAAgB,oBAU3B;AAEF,kBAAe,yBAAa,CAC1B,iBAAS,EACT,CACE,EACE,OAAO,EACP,MAAM,EACN,QAAQ,EACR,MAAM,EACN,YAAY,GACb,EACD,EAAE,CAAC;IACH,OAAO;IACP,MAAM;IACN,QAAQ;IACR,MAAM;IACN,YAAY;CACb,CACF,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export function getXClientIp({ request }: Object): string;
|
|
2
|
-
export function getMethod({ request }: Object): string;
|
|
3
|
-
export function getStatus({ response }: Object): number;
|
|
4
|
-
export function getOriginalUrl({ request }: Object): number;
|
|
5
|
-
export function getCookie(request: Object): string;
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getCookie = exports.getOriginalUrl = exports.getStatus = exports.getMethod = exports.getXClientIp = void 0;
|
|
7
|
-
const net_1 = require("net");
|
|
8
|
-
const isFunction_1 = __importDefault(require("lodash/isFunction"));
|
|
9
|
-
/**
|
|
10
|
-
* Получает IP пользователя из заголовков запроса.
|
|
11
|
-
* @param {Object} request Запрос.
|
|
12
|
-
* @return {string} IP пользователя.
|
|
13
|
-
*/
|
|
14
|
-
const getXClientIp = ({ request }) => {
|
|
15
|
-
const ip = request.headers['x-client-ip']
|
|
16
|
-
|| request.headers['x-forwarded-for']
|
|
17
|
-
|| request.connection.remoteAddress;
|
|
18
|
-
return net_1.isIP(ip) ? ip : '';
|
|
19
|
-
};
|
|
20
|
-
exports.getXClientIp = getXClientIp;
|
|
21
|
-
/**
|
|
22
|
-
* Получает метод запроса из объекта запроса.
|
|
23
|
-
* @param {Object} request Запрос.
|
|
24
|
-
* @return {string} Метод запроса.
|
|
25
|
-
*/
|
|
26
|
-
const getMethod = ({ request }) => request.method;
|
|
27
|
-
exports.getMethod = getMethod;
|
|
28
|
-
/**
|
|
29
|
-
* Получает статус ответа из объекта ответа.
|
|
30
|
-
* @param {Object} response Ответ.
|
|
31
|
-
* @return {number} Статус ответа.
|
|
32
|
-
*/
|
|
33
|
-
const getStatus = ({ response }) => response.statusCode;
|
|
34
|
-
exports.getStatus = getStatus;
|
|
35
|
-
/**
|
|
36
|
-
* Получает оригинальный url из объекта запроса.
|
|
37
|
-
* @param {Object} request Запрос.
|
|
38
|
-
* @return {number} Url запроса.
|
|
39
|
-
*/
|
|
40
|
-
const getOriginalUrl = ({ request }) => request.originalUrl;
|
|
41
|
-
exports.getOriginalUrl = getOriginalUrl;
|
|
42
|
-
/**
|
|
43
|
-
* Получает куки из запроса.
|
|
44
|
-
* @param {Object} request Запрос.
|
|
45
|
-
* @return {string} Куки.
|
|
46
|
-
*/
|
|
47
|
-
const getCookie = request => (request && isFunction_1.default(request.get) && request.get('cookie')) || '';
|
|
48
|
-
exports.getCookie = getCookie;
|
|
49
|
-
//# sourceMappingURL=request-getters.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"request-getters.js","sourceRoot":"","sources":["../../../src/helpers/http/request-getters.js"],"names":[],"mappings":";;;;;;AAAA,6BAA2B;AAC3B,mEAA2C;AAE3C;;;;GAIG;AACI,MAAM,YAAY,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IAC1C,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;WACpC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC;WAClC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC;IACtC,OAAO,UAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5B,CAAC,CAAC;AALW,QAAA,YAAY,gBAKvB;AAEF;;;;GAIG;AACI,MAAM,SAAS,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;AAA5C,QAAA,SAAS,aAAmC;AAEzD;;;;GAIG;AACI,MAAM,SAAS,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;AAAlD,QAAA,SAAS,aAAyC;AAE/D;;;;GAIG;AACI,MAAM,cAAc,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC;AAAtD,QAAA,cAAc,kBAAwC;AAEnE;;;;GAIG;AACI,MAAM,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,IAAI,oBAAU,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;AAA3F,QAAA,SAAS,aAAkF"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isOkStatus = exports.validateDeleteStatus = exports.validatePostStatus = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Валидация http статуса ответа на POST запрос.
|
|
6
|
-
* @param {number} status Статус http ответа.
|
|
7
|
-
* @return {boolean} Валидность.
|
|
8
|
-
*/
|
|
9
|
-
const validatePostStatus = status => status === 201;
|
|
10
|
-
exports.validatePostStatus = validatePostStatus;
|
|
11
|
-
/**
|
|
12
|
-
* Валидация http статуса ответа на DELETE запрос.
|
|
13
|
-
* @param {number} status Статус http ответа.
|
|
14
|
-
* @return {boolean} Валидность.
|
|
15
|
-
*/
|
|
16
|
-
const validateDeleteStatus = status => status === 204 || status === 200;
|
|
17
|
-
exports.validateDeleteStatus = validateDeleteStatus;
|
|
18
|
-
/**
|
|
19
|
-
* Валидация http статуса 200.
|
|
20
|
-
* @param {number} status Статус http ответа.
|
|
21
|
-
* @return {boolean} Валидность.
|
|
22
|
-
*/
|
|
23
|
-
const isOkStatus = status => status === 200;
|
|
24
|
-
exports.isOkStatus = isOkStatus;
|
|
25
|
-
//# sourceMappingURL=statuses-validator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"statuses-validator.js","sourceRoot":"","sources":["../../../src/helpers/http/statuses-validator.js"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACI,MAAM,kBAAkB,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,KAAK,GAAG,CAAC;AAA9C,QAAA,kBAAkB,sBAA4B;AAE3D;;;;GAIG;AACI,MAAM,oBAAoB,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,CAAC;AAAlE,QAAA,oBAAoB,wBAA8C;AAE/E;;;;GAIG;AACI,MAAM,UAAU,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,KAAK,GAAG,CAAC;AAAtC,QAAA,UAAU,cAA4B"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const pino_1 = __importDefault(require("pino"));
|
|
7
|
-
const format_time_1 = __importDefault(require("../format-time"));
|
|
8
|
-
const isPlainObject_1 = __importDefault(require("lodash/isPlainObject"));
|
|
9
|
-
/**
|
|
10
|
-
* Модуль создающий экземпляр логгера.
|
|
11
|
-
* @param {Object} options Зависимости модуля.
|
|
12
|
-
* @return {Function} Функция, которая создает логгер.
|
|
13
|
-
*/
|
|
14
|
-
function createPinoInstance({ config } = {}) {
|
|
15
|
-
/**
|
|
16
|
-
* Функция, которая создает экземпляр логгера.
|
|
17
|
-
* @param {Object} param Параметры.
|
|
18
|
-
* @param {string|number} param.timestamp Время.
|
|
19
|
-
* @param {boolean} param.isProduction Является ли production-сборкой.
|
|
20
|
-
* @param {boolean} param.hasColorize Нужно ли выделять цветом.
|
|
21
|
-
* @return {Function} Экземпляр логгера.
|
|
22
|
-
*/
|
|
23
|
-
const loggerCreator = ({ timestamp, isProduction, hasColorize, }) => {
|
|
24
|
-
const logger = pino_1.default({
|
|
25
|
-
timestamp,
|
|
26
|
-
prettyPrint: hasColorize && { colorize: true },
|
|
27
|
-
useLevelLabels: true,
|
|
28
|
-
});
|
|
29
|
-
logger.extreme = isProduction;
|
|
30
|
-
return logger;
|
|
31
|
-
};
|
|
32
|
-
return loggerCreator({
|
|
33
|
-
timestamp: format_time_1.default,
|
|
34
|
-
isProduction: isPlainObject_1.default(config) ? config.isProduction : true,
|
|
35
|
-
hasColorize: isPlainObject_1.default(config) ? config.isDevelopment : false,
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
exports.default = createPinoInstance;
|
|
39
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/helpers/logger/create-pino-instance/index.js"],"names":[],"mappings":";;;;;AAAA,gDAAwB;AACxB,iEAAwC;AACxC,yEAAiD;AAEjD;;;;GAIG;AACH,SAAwB,kBAAkB,CAAE,EAAE,MAAM,EAAE,GAAG,EAAE;IACzD;;;;;;;OAOG;IACH,MAAM,aAAa,GAAG,CACpB,EACE,SAAS,EACT,YAAY,EACZ,WAAW,GACZ,EACD,EAAE;QACF,MAAM,MAAM,GAAG,cAAI,CAAC;YAClB,SAAS;YACT,WAAW,EAAE,WAAW,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC9C,cAAc,EAAE,IAAI;SACrB,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,GAAG,YAAY,CAAC;QAE9B,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO,aAAa,CAAC;QACnB,SAAS,EAAE,qBAAU;QACrB,YAAY,EAAE,uBAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI;QAChE,WAAW,EAAE,uBAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK;KAClE,CAAC,CAAC;AACL,CAAC;AA/BD,qCA+BC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/**
|
|
4
|
-
* Форматирует дату.
|
|
5
|
-
* @return {string} Строка с датой в формате ISO.
|
|
6
|
-
*/
|
|
7
|
-
const formatTime = () => `,"time":"${new Date().toISOString()}"`;
|
|
8
|
-
exports.default = formatTime;
|
|
9
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/helpers/logger/format-time/index.js"],"names":[],"mappings":";;AAAA;;;GAGG;AACH,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,CAAC;AACjE,kBAAe,UAAU,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
export function labelsResolver({ dependencies: { config }, request, response }: {
|
|
2
|
-
dependencies: {
|
|
3
|
-
config: Object;
|
|
4
|
-
};
|
|
5
|
-
request: import('http').IncomingMessage;
|
|
6
|
-
response: import('http').ServerResponse;
|
|
7
|
-
}): {
|
|
8
|
-
route: string;
|
|
9
|
-
place: string;
|
|
10
|
-
statusCode: number;
|
|
11
|
-
};
|
|
12
|
-
export function createResponseEventSubscriber(eventName: string): (arg0: {
|
|
13
|
-
response: import('http').ServerResponse;
|
|
14
|
-
callback: Function;
|
|
15
|
-
}) => import('http').ServerResponse;
|
|
16
|
-
export function renderStartSubscriber(arg0: {
|
|
17
|
-
response: import('http').ServerResponse;
|
|
18
|
-
callback: Function;
|
|
19
|
-
}): import('http').ServerResponse;
|
|
20
|
-
export function renderFinishSubscriber(arg0: {
|
|
21
|
-
response: import('http').ServerResponse;
|
|
22
|
-
callback: Function;
|
|
23
|
-
}): import('http').ServerResponse;
|
package/helpers/metrics/index.js
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.renderFinishSubscriber = exports.renderStartSubscriber = exports.createResponseEventSubscriber = exports.labelsResolver = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Формирует данные метрики из данных приложения, запроса и ответа.
|
|
6
|
-
* @param {Object} options Опции приложения.
|
|
7
|
-
* @param {Object} options.dependencies Зависимости сервиса сбора метрик.
|
|
8
|
-
* @param {Object} options.dependencies.config Конфигурация приложения.
|
|
9
|
-
* @param {import('http').IncomingMessage} options.request Запрос.
|
|
10
|
-
* @param {import('http').ServerResponse} options.response Ответ.
|
|
11
|
-
* @return {{route: string, place: string, statusCode: number}} Данные для отправки в метрику.
|
|
12
|
-
*/
|
|
13
|
-
const labelsResolver = ({ dependencies: { config }, request, response }) => ({
|
|
14
|
-
version: config.version || 'development',
|
|
15
|
-
route: request.baseUrl + request.path,
|
|
16
|
-
code: response.statusCode,
|
|
17
|
-
method: request.method,
|
|
18
|
-
});
|
|
19
|
-
exports.labelsResolver = labelsResolver;
|
|
20
|
-
/**
|
|
21
|
-
* Создаёт функцию, подписывающую обработчик на определённое событие ответа сервера.
|
|
22
|
-
* @param {string} eventName Название события.
|
|
23
|
-
* @return {function({response: import('http').ServerResponse, callback: Function}): import('http').ServerResponse}
|
|
24
|
-
* Функция-подписчик.
|
|
25
|
-
*/
|
|
26
|
-
const createResponseEventSubscriber = eventName => ({ response, callback }) => response.once(eventName, callback);
|
|
27
|
-
exports.createResponseEventSubscriber = createResponseEventSubscriber;
|
|
28
|
-
/**
|
|
29
|
-
* Подписывает функцию-обработчик на событие начала рендеринга.
|
|
30
|
-
* @param {import('http').ServerResponse} response Ответ.
|
|
31
|
-
* @param {Function} callback Обработчик.
|
|
32
|
-
* @return {import('http').ServerResponse} Ответ.
|
|
33
|
-
*/
|
|
34
|
-
exports.renderStartSubscriber = exports.createResponseEventSubscriber('render:start');
|
|
35
|
-
/**
|
|
36
|
-
* Подписывает функцию-обработчик на событие конца рендеринга.
|
|
37
|
-
* @param {import('http').ServerResponse} response Ответ.
|
|
38
|
-
* @param {Function} callback Обработчик.
|
|
39
|
-
* @return {import('http').ServerResponse} Ответ.
|
|
40
|
-
*/
|
|
41
|
-
exports.renderFinishSubscriber = exports.createResponseEventSubscriber('render:finish');
|
|
42
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/helpers/metrics/index.js"],"names":[],"mappings":";;;AAAA;;;;;;;;GAQG;AACI,MAAM,cAAc,GAAG,CAAC,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IAClF,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,aAAa;IACxC,KAAK,EAAE,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI;IACrC,IAAI,EAAE,QAAQ,CAAC,UAAU;IACzB,MAAM,EAAE,OAAO,CAAC,MAAM;CACvB,CAAC,CAAC;AALU,QAAA,cAAc,kBAKxB;AAEH;;;;;GAKG;AACI,MAAM,6BAA6B,GAAG,SAAS,CAAC,EAAE,CACvD,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AADpD,QAAA,6BAA6B,iCACuB;AAEjE;;;;;GAKG;AACU,QAAA,qBAAqB,GAAG,qCAA6B,CAAC,cAAc,CAAC,CAAC;AAEnF;;;;;GAKG;AACU,QAAA,sBAAsB,GAAG,qCAA6B,CAAC,eAAe,CAAC,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.createMeasureMiddleware = exports.PrometheusMetric = exports.PrometheusClient = void 0;
|
|
7
|
-
const prom_client_1 = __importDefault(require("prom-client"));
|
|
8
|
-
exports.PrometheusClient = prom_client_1.default;
|
|
9
|
-
const metric_adapter_js_1 = require("./metric-adapter.js");
|
|
10
|
-
Object.defineProperty(exports, "PrometheusMetric", { enumerable: true, get: function () { return metric_adapter_js_1.PrometheusMetric; } });
|
|
11
|
-
const measure_middleware_js_1 = require("./measure-middleware.js");
|
|
12
|
-
Object.defineProperty(exports, "createMeasureMiddleware", { enumerable: true, get: function () { return measure_middleware_js_1.createMeasureMiddleware; } });
|
|
13
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/helpers/prometheus/index.js"],"names":[],"mappings":";;;;;;AAAA,8DAA2C;AAKzC,2BALK,qBAAgB,CAKL;AAJlB,2DAAuD;AAKrD,iGALO,oCAAgB,OAKP;AAJlB,mEAAkE;AAKhE,wGALO,+CAAuB,OAKP"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.createMeasureMiddleware = void 0;
|
|
7
|
-
const negate_1 = __importDefault(require("lodash/negate"));
|
|
8
|
-
const isFunction_1 = __importDefault(require("lodash/isFunction"));
|
|
9
|
-
const metric_adapter_js_1 = require("./metric-adapter.js");
|
|
10
|
-
const metrics_1 = require("../metrics");
|
|
11
|
-
const observe_middleware_1 = require("../../observe-middleware");
|
|
12
|
-
/**
|
|
13
|
-
* Возвращает функцию, создающую модуль для замера метрик запросов Express-приложения.
|
|
14
|
-
* @param {Object} dependencies Опции.
|
|
15
|
-
* @param {Function} dependencies.resolveLabels Функция, результат которой будет использован как аргумент setLabels.
|
|
16
|
-
* @param {Array} dependencies.startMetrics Список метрик, замеряемых при старте запроса.
|
|
17
|
-
* @param {Array} dependencies.finishMetrics Список метрик, замеряемых при отправке ответа.
|
|
18
|
-
* @return {Function} Функция, возвращающая промежуточный слой для использования в Express-приложении.
|
|
19
|
-
*/
|
|
20
|
-
const createMeasureMiddleware = (dependencies = {}) => {
|
|
21
|
-
const { resolveLabels = metrics_1.labelsResolver, startMetrics = [], finishMetrics = [], startSubscriber = observe_middleware_1.defaultStartSubscriber, finishSubscriber = observe_middleware_1.defaultFinishSubscriber, } = dependencies || {};
|
|
22
|
-
if (!isFunction_1.default(resolveLabels)) {
|
|
23
|
-
throw TypeError('First argument property "resolveLabels" must be a function');
|
|
24
|
-
}
|
|
25
|
-
if ([startMetrics, finishMetrics].some(negate_1.default(Array.isArray))) {
|
|
26
|
-
throw TypeError('First argument properties "startMetrics" and "finishMetrics" must be arrays');
|
|
27
|
-
}
|
|
28
|
-
if ([...startMetrics, ...finishMetrics].some(negate_1.default(metric_adapter_js_1.isPrometheusMetric))) {
|
|
29
|
-
throw TypeError('Every metric in "startMetrics" and "finishMetrics" must be instance of PrometheusMetric');
|
|
30
|
-
}
|
|
31
|
-
if (!isFunction_1.default(startSubscriber)) {
|
|
32
|
-
throw TypeError('First argument property "startSubscriber" must be a function');
|
|
33
|
-
}
|
|
34
|
-
if (!isFunction_1.default(finishSubscriber)) {
|
|
35
|
-
throw TypeError('First argument property "finishSubscriber" must be a function');
|
|
36
|
-
}
|
|
37
|
-
return observe_middleware_1.createObserveMiddleware({
|
|
38
|
-
onStart: (timestamp, request, response) => {
|
|
39
|
-
startMetrics.forEach(metric => {
|
|
40
|
-
metric
|
|
41
|
-
.setLabels(resolveLabels({
|
|
42
|
-
dependencies,
|
|
43
|
-
metric,
|
|
44
|
-
request,
|
|
45
|
-
response,
|
|
46
|
-
timestamp,
|
|
47
|
-
}))
|
|
48
|
-
.spot();
|
|
49
|
-
});
|
|
50
|
-
},
|
|
51
|
-
onFinish: (duration, request, response) => {
|
|
52
|
-
finishMetrics.forEach(metric => {
|
|
53
|
-
metric
|
|
54
|
-
.setLabels(resolveLabels({
|
|
55
|
-
dependencies,
|
|
56
|
-
duration,
|
|
57
|
-
metric,
|
|
58
|
-
request,
|
|
59
|
-
response,
|
|
60
|
-
}))
|
|
61
|
-
.spot(duration);
|
|
62
|
-
});
|
|
63
|
-
},
|
|
64
|
-
startSubscriber,
|
|
65
|
-
finishSubscriber,
|
|
66
|
-
});
|
|
67
|
-
};
|
|
68
|
-
exports.createMeasureMiddleware = createMeasureMiddleware;
|
|
69
|
-
//# sourceMappingURL=measure-middleware.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"measure-middleware.js","sourceRoot":"","sources":["../../../src/helpers/prometheus/measure-middleware.js"],"names":[],"mappings":";;;;;;AAAA,2DAAmC;AACnC,mEAA2C;AAC3C,2DAAyD;AACzD,wCAA4C;AAC5C,iEAAoH;AAEpH;;;;;;;GAOG;AACI,MAAM,uBAAuB,GAAG,CAAC,YAAY,GAAG,EAAE,EAAE,EAAE;IAC3D,MAAM,EACJ,aAAa,GAAG,wBAAc,EAC9B,YAAY,GAAG,EAAE,EACjB,aAAa,GAAG,EAAE,EAClB,eAAe,GAAG,2CAAsB,EACxC,gBAAgB,GAAG,4CAAuB,GAC3C,GAAG,YAAY,IAAI,EAAE,CAAC;IACvB,IAAI,CAAC,oBAAU,CAAC,aAAa,CAAC,EAAE;QAC9B,MAAM,SAAS,CAAC,4DAA4D,CAAC,CAAC;KAC/E;IAED,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,gBAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE;QAC7D,MAAM,SAAS,CAAC,6EAA6E,CAAC,CAAC;KAChG;IAED,IAAI,CAAC,GAAG,YAAY,EAAE,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,gBAAM,CAAC,sCAAkB,CAAC,CAAC,EAAE;QACxE,MAAM,SAAS,CAAC,yFAAyF,CAAC,CAAC;KAC5G;IAED,IAAI,CAAC,oBAAU,CAAC,eAAe,CAAC,EAAE;QAChC,MAAM,SAAS,CAAC,8DAA8D,CAAC,CAAC;KACjF;IAED,IAAI,CAAC,oBAAU,CAAC,gBAAgB,CAAC,EAAE;QACjC,MAAM,SAAS,CAAC,+DAA+D,CAAC,CAAC;KAClF;IAED,OAAO,4CAAuB,CAAC;QAC7B,OAAO,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE;YACxC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;gBAC5B,MAAM;qBACH,SAAS,CAAC,aAAa,CAAC;oBACvB,YAAY;oBACZ,MAAM;oBACN,OAAO;oBACP,QAAQ;oBACR,SAAS;iBACV,CAAC,CAAC;qBACF,IAAI,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;QACL,CAAC;QACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE;YACxC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;gBAC7B,MAAM;qBACH,SAAS,CAAC,aAAa,CAAC;oBACvB,YAAY;oBACZ,QAAQ;oBACR,MAAM;oBACN,OAAO;oBACP,QAAQ;iBACT,CAAC,CAAC;qBACF,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpB,CAAC,CAAC,CAAC;QACL,CAAC;QACD,eAAe;QACf,gBAAgB;KACjB,CAAC,CAAC;AACL,CAAC,CAAC;AA1DW,QAAA,uBAAuB,2BA0DlC"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Список имен конструкторов из пакета "prom-client", пригодных для создания адаптеров.
|
|
3
|
-
* @type {Array<string>}
|
|
4
|
-
*/
|
|
5
|
-
export const availableMetricTypes: Array<string>;
|
|
6
|
-
/**
|
|
7
|
-
* Ключ свойства адаптера с оригинальным объектом метрики.
|
|
8
|
-
* @type {symbol}
|
|
9
|
-
*/
|
|
10
|
-
export const originalMetricKey: symbol;
|
|
11
|
-
export function getOriginalInstance(adapter: PrometheusMetric): Object;
|
|
12
|
-
export function isPrometheusMetric(value: any): boolean;
|
|
13
|
-
/**
|
|
14
|
-
* Класс объектов-адаптеров для классов метрик из пакета "prom-client".
|
|
15
|
-
*/
|
|
16
|
-
export class PrometheusMetric {
|
|
17
|
-
/**
|
|
18
|
-
* Инициализирует объект-адаптер метрики.
|
|
19
|
-
* @param {string} metricType Тип метрики, определяемый названием класса из пакета "prom-client".
|
|
20
|
-
* @param {Object} options Опции, передаваемые в конструктор метрики из пакета "prom-client".
|
|
21
|
-
*/
|
|
22
|
-
constructor(metricType?: string, options?: Object);
|
|
23
|
-
labels: {};
|
|
24
|
-
/**
|
|
25
|
-
* Устанавливает значения показателей по переданному объекту, где ключ - название показателя.
|
|
26
|
-
* @param {Object} labels Объект со значениями показателей по названиям.
|
|
27
|
-
* @return {PrometheusMetric} Экземпляр.
|
|
28
|
-
*/
|
|
29
|
-
setLabels(labels?: Object): PrometheusMetric;
|
|
30
|
-
/**
|
|
31
|
-
* Фиксирует показатель метрики в сервисе Prometheus.
|
|
32
|
-
* @param {*} value Значение фиксируемого показателя, игнорируется для типа "Counter".
|
|
33
|
-
* @return {PrometheusMetric} Экземпляр.
|
|
34
|
-
*/
|
|
35
|
-
spot(value: any): PrometheusMetric;
|
|
36
|
-
}
|