@sima-land/isomorph 11.0.0-alpha.35 → 11.0.0-alpha.37
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/README.md +25 -0
- package/dist/cjs/cache/index.js +6 -0
- package/dist/cjs/cache/index.js.map +1 -0
- package/dist/cjs/cache/types.js +6 -0
- package/dist/cjs/cache/types.js.map +1 -0
- package/dist/cjs/config/base.js +22 -0
- package/dist/cjs/config/base.js.map +1 -0
- package/dist/cjs/config/index.js +20 -0
- package/dist/cjs/config/index.js.map +1 -0
- package/dist/cjs/config/source.js +25 -0
- package/dist/cjs/config/source.js.map +1 -0
- package/dist/cjs/config/types.js +6 -0
- package/dist/cjs/config/types.js.map +1 -0
- package/dist/cjs/di/application.js +106 -0
- package/dist/cjs/di/application.js.map +1 -0
- package/dist/cjs/di/container.js +55 -0
- package/dist/cjs/di/container.js.map +1 -0
- package/dist/cjs/di/errors.js +65 -0
- package/dist/cjs/di/errors.js.map +1 -0
- package/dist/cjs/di/index.js +59 -0
- package/dist/cjs/di/index.js.map +1 -0
- package/dist/cjs/di/preset.js +32 -0
- package/dist/cjs/di/preset.js.map +1 -0
- package/dist/cjs/di/token.js +44 -0
- package/dist/cjs/di/token.js.map +1 -0
- package/dist/cjs/di/types.js +6 -0
- package/dist/cjs/di/types.js.map +1 -0
- package/dist/cjs/http/errors.js +47 -0
- package/dist/cjs/http/errors.js.map +1 -0
- package/dist/cjs/http/index.js +63 -0
- package/dist/cjs/http/index.js.map +1 -0
- package/dist/cjs/http/types.js +6 -0
- package/dist/cjs/http/types.js.map +1 -0
- package/dist/cjs/log/errors.js +35 -0
- package/dist/cjs/log/errors.js.map +1 -0
- package/dist/cjs/log/handler/pino.js +31 -0
- package/dist/cjs/log/handler/pino.js.map +1 -0
- package/dist/cjs/log/handler/sentry.js +57 -0
- package/dist/cjs/log/handler/sentry.js.map +1 -0
- package/dist/cjs/log/index.js +26 -0
- package/dist/cjs/log/index.js.map +1 -0
- package/dist/cjs/log/logger.js +35 -0
- package/dist/cjs/log/logger.js.map +1 -0
- package/dist/cjs/log/types.js +6 -0
- package/dist/cjs/log/types.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/preset/isomorphic/constants.js +14 -0
- package/dist/cjs/preset/isomorphic/constants.js.map +1 -0
- package/dist/cjs/preset/isomorphic/providers/index.js +42 -0
- package/dist/cjs/preset/isomorphic/providers/index.js.map +1 -0
- package/dist/cjs/preset/isomorphic/types.js +6 -0
- package/dist/cjs/preset/isomorphic/types.js.map +1 -0
- package/dist/cjs/preset/isomorphic/utils/index.js +322 -0
- package/dist/cjs/preset/isomorphic/utils/index.js.map +1 -0
- package/dist/cjs/preset/node/handler/index.js +52 -0
- package/dist/cjs/preset/node/handler/index.js.map +1 -0
- package/dist/cjs/preset/node/handler/providers/index.js +212 -0
- package/dist/cjs/preset/node/handler/providers/index.js.map +1 -0
- package/dist/cjs/preset/node/handler/utils/index.js +132 -0
- package/dist/cjs/preset/node/handler/utils/index.js.map +1 -0
- package/dist/cjs/preset/node/index.js +26 -0
- package/dist/cjs/preset/node/index.js.map +1 -0
- package/dist/cjs/preset/node/node/index.js +61 -0
- package/dist/cjs/preset/node/node/index.js.map +1 -0
- package/dist/cjs/preset/node/node/providers/index.js +403 -0
- package/dist/cjs/preset/node/node/providers/index.js.map +1 -0
- package/dist/cjs/preset/node/node/utils/http-client/index.js +122 -0
- package/dist/cjs/preset/node/node/utils/http-client/index.js.map +1 -0
- package/dist/cjs/preset/node/node/utils/http-server/index.js +18 -0
- package/dist/cjs/preset/node/node/utils/http-server/index.js.map +1 -0
- package/dist/cjs/preset/node/node/utils/index.js +20 -0
- package/dist/cjs/preset/node/node/utils/index.js.map +1 -0
- package/dist/cjs/preset/web/index.js +34 -0
- package/dist/cjs/preset/web/index.js.map +1 -0
- package/dist/cjs/preset/web/providers/index.js +94 -0
- package/dist/cjs/preset/web/providers/index.js.map +1 -0
- package/dist/cjs/tokens.js +86 -0
- package/dist/cjs/tokens.js.map +1 -0
- package/dist/cjs/utils/axios/index.js +40 -0
- package/dist/cjs/utils/axios/index.js.map +1 -0
- package/dist/cjs/utils/axios/middleware/cookie.js +28 -0
- package/dist/cjs/utils/axios/middleware/cookie.js.map +1 -0
- package/dist/cjs/utils/axios/middleware/log.js +37 -0
- package/dist/cjs/utils/axios/middleware/log.js.map +1 -0
- package/dist/cjs/utils/axios/sauce/index.js +57 -0
- package/dist/cjs/utils/axios/sauce/index.js.map +1 -0
- package/dist/cjs/utils/axios/utils/index.js +30 -0
- package/dist/cjs/utils/axios/utils/index.js.map +1 -0
- package/{http-server → dist/cjs/utils/express}/handler/health-check.js +11 -7
- package/dist/cjs/utils/express/handler/health-check.js.map +1 -0
- package/dist/cjs/utils/express/index.js +20 -0
- package/dist/cjs/utils/express/index.js.map +1 -0
- package/dist/cjs/utils/express/utils/index.js +22 -0
- package/dist/cjs/utils/express/utils/index.js.map +1 -0
- package/dist/cjs/utils/function.js +44 -0
- package/dist/cjs/utils/function.js.map +1 -0
- package/dist/cjs/utils/index.js +20 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/{utils/number.js → dist/cjs/utils/math.js} +7 -5
- package/dist/cjs/utils/math.js.map +1 -0
- package/dist/cjs/utils/react/error-handlers/index.js +80 -0
- package/dist/cjs/utils/react/error-handlers/index.js.map +1 -0
- package/dist/cjs/utils/react/index.js +19 -0
- package/dist/cjs/utils/react/index.js.map +1 -0
- package/dist/cjs/utils/redux/index.js +19 -0
- package/dist/cjs/utils/redux/index.js.map +1 -0
- package/dist/cjs/utils/redux/remote-data.js +118 -0
- package/dist/cjs/utils/redux/remote-data.js.map +1 -0
- package/dist/cjs/utils/redux-saga/index.js +20 -0
- package/dist/cjs/utils/redux-saga/index.js.map +1 -0
- package/dist/cjs/utils/redux-saga/middleware.js +149 -0
- package/dist/cjs/utils/redux-saga/middleware.js.map +1 -0
- package/dist/cjs/utils/redux-saga/take-chain.js +66 -0
- package/dist/cjs/utils/redux-saga/take-chain.js.map +1 -0
- package/dist/cjs/utils/redux-saga/types.js +6 -0
- package/dist/cjs/utils/redux-saga/types.js.map +1 -0
- package/dist/cjs/utils/ssr/index.js +73 -0
- package/dist/cjs/utils/ssr/index.js.map +1 -0
- package/{utils/browser → dist/cjs/utils/web}/analytics/data-layer.js +11 -5
- package/dist/cjs/utils/web/analytics/data-layer.js.map +1 -0
- package/dist/cjs/utils/web/analytics/index.js +20 -0
- package/dist/cjs/utils/web/analytics/index.js.map +1 -0
- package/dist/cjs/utils/web/analytics/oko.js +20 -0
- package/dist/cjs/utils/web/analytics/oko.js.map +1 -0
- package/dist/cjs/utils/web/storage/index.js +75 -0
- package/dist/cjs/utils/web/storage/index.js.map +1 -0
- package/dist/cjs/utils/webpack/env/index.js +96 -0
- package/dist/cjs/utils/webpack/env/index.js.map +1 -0
- package/dist/cjs/utils/webpack/env/types.js +6 -0
- package/dist/cjs/utils/webpack/env/types.js.map +1 -0
- package/dist/cjs/utils/webpack/env/utils.js +55 -0
- package/dist/cjs/utils/webpack/env/utils.js.map +1 -0
- package/dist/cjs/utils/webpack/index.js +20 -0
- package/dist/cjs/utils/webpack/index.js.map +1 -0
- package/dist/cjs/utils/webpack/module-federation/index.js +110 -0
- package/dist/cjs/utils/webpack/module-federation/index.js.map +1 -0
- package/dist/cjs/utils/webpack/module-federation/types.js +6 -0
- package/dist/cjs/utils/webpack/module-federation/types.js.map +1 -0
- package/{utils → dist/cjs/utils}/webpack/module-federation/utils.js +26 -31
- package/dist/cjs/utils/webpack/module-federation/utils.js.map +1 -0
- package/dist/esm/cache/index.js +2 -0
- package/dist/esm/cache/index.js.map +1 -0
- package/dist/esm/cache/types.js +2 -0
- package/dist/esm/cache/types.js.map +1 -0
- package/dist/esm/config/base.js +16 -0
- package/dist/esm/config/base.js.map +1 -0
- package/dist/esm/config/index.js +3 -0
- package/dist/esm/config/index.js.map +1 -0
- package/dist/esm/config/source.js +19 -0
- package/dist/esm/config/source.js.map +1 -0
- package/dist/esm/config/types.js +2 -0
- package/dist/esm/config/types.js.map +1 -0
- package/dist/esm/di/application.js +100 -0
- package/dist/esm/di/application.js.map +1 -0
- package/dist/esm/di/container.js +49 -0
- package/dist/esm/di/container.js.map +1 -0
- package/dist/esm/di/errors.js +56 -0
- package/dist/esm/di/errors.js.map +1 -0
- package/dist/esm/di/index.js +6 -0
- package/dist/esm/di/index.js.map +1 -0
- package/dist/esm/di/preset.js +26 -0
- package/dist/esm/di/preset.js.map +1 -0
- package/dist/esm/di/token.js +38 -0
- package/dist/esm/di/token.js.map +1 -0
- package/dist/esm/di/types.js +2 -0
- package/dist/esm/di/types.js.map +1 -0
- package/dist/esm/http/errors.js +39 -0
- package/dist/esm/http/errors.js.map +1 -0
- package/dist/esm/http/index.js +4 -0
- package/dist/esm/http/index.js.map +1 -0
- package/dist/esm/http/types.js +2 -0
- package/dist/esm/http/types.js.map +1 -0
- package/dist/esm/log/errors.js +27 -0
- package/dist/esm/log/errors.js.map +1 -0
- package/dist/esm/log/handler/pino.js +25 -0
- package/dist/esm/log/handler/pino.js.map +1 -0
- package/dist/esm/log/handler/sentry.js +52 -0
- package/dist/esm/log/handler/sentry.js.map +1 -0
- package/dist/esm/log/index.js +3 -0
- package/dist/esm/log/index.js.map +1 -0
- package/dist/esm/log/logger.js +29 -0
- package/dist/esm/log/logger.js.map +1 -0
- package/dist/esm/log/types.js +2 -0
- package/dist/esm/log/types.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/preset/isomorphic/constants.js +8 -0
- package/dist/esm/preset/isomorphic/constants.js.map +1 -0
- package/dist/esm/preset/isomorphic/providers/index.js +35 -0
- package/dist/esm/preset/isomorphic/providers/index.js.map +1 -0
- package/dist/esm/preset/isomorphic/types.js +2 -0
- package/dist/esm/preset/isomorphic/types.js.map +1 -0
- package/dist/esm/preset/isomorphic/utils/index.js +309 -0
- package/dist/esm/preset/isomorphic/utils/index.js.map +1 -0
- package/dist/esm/preset/node/handler/index.js +42 -0
- package/dist/esm/preset/node/handler/index.js.map +1 -0
- package/dist/esm/preset/node/handler/providers/index.js +194 -0
- package/dist/esm/preset/node/handler/providers/index.js.map +1 -0
- package/dist/esm/preset/node/handler/utils/index.js +113 -0
- package/dist/esm/preset/node/handler/utils/index.js.map +1 -0
- package/dist/esm/preset/node/index.js +3 -0
- package/dist/esm/preset/node/index.js.map +1 -0
- package/dist/esm/preset/node/node/index.js +56 -0
- package/dist/esm/preset/node/node/index.js.map +1 -0
- package/dist/esm/preset/node/node/providers/index.js +378 -0
- package/dist/esm/preset/node/node/providers/index.js.map +1 -0
- package/dist/esm/preset/node/node/utils/http-client/index.js +114 -0
- package/dist/esm/preset/node/node/utils/http-client/index.js.map +1 -0
- package/dist/esm/preset/node/node/utils/http-server/index.js +12 -0
- package/dist/esm/preset/node/node/utils/http-server/index.js.map +1 -0
- package/dist/esm/preset/node/node/utils/index.js +3 -0
- package/dist/esm/preset/node/node/utils/index.js.map +1 -0
- package/dist/esm/preset/web/index.js +29 -0
- package/dist/esm/preset/web/index.js.map +1 -0
- package/dist/esm/preset/web/providers/index.js +85 -0
- package/dist/esm/preset/web/providers/index.js.map +1 -0
- package/dist/esm/tokens.js +81 -0
- package/dist/esm/tokens.js.map +1 -0
- package/dist/esm/utils/axios/index.js +5 -0
- package/dist/esm/utils/axios/index.js.map +1 -0
- package/dist/esm/utils/axios/middleware/cookie.js +22 -0
- package/dist/esm/utils/axios/middleware/cookie.js.map +1 -0
- package/dist/esm/utils/axios/middleware/log.js +31 -0
- package/dist/esm/utils/axios/middleware/log.js.map +1 -0
- package/dist/esm/utils/axios/sauce/index.js +50 -0
- package/dist/esm/utils/axios/sauce/index.js.map +1 -0
- package/dist/esm/utils/axios/utils/index.js +24 -0
- package/dist/esm/utils/axios/utils/index.js.map +1 -0
- package/dist/esm/utils/express/handler/health-check.js +13 -0
- package/dist/esm/utils/express/handler/health-check.js.map +1 -0
- package/dist/esm/utils/express/index.js +3 -0
- package/dist/esm/utils/express/index.js.map +1 -0
- package/dist/esm/utils/express/utils/index.js +16 -0
- package/dist/esm/utils/express/utils/index.js.map +1 -0
- package/dist/esm/utils/function.js +38 -0
- package/dist/esm/utils/function.js.map +1 -0
- package/dist/esm/utils/index.js +3 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/math.js +9 -0
- package/dist/esm/utils/math.js.map +1 -0
- package/dist/esm/utils/react/error-handlers/index.js +69 -0
- package/dist/esm/utils/react/error-handlers/index.js.map +1 -0
- package/dist/esm/utils/react/index.js +3 -0
- package/dist/esm/utils/react/index.js.map +1 -0
- package/dist/esm/utils/redux/index.js +3 -0
- package/dist/esm/utils/redux/index.js.map +1 -0
- package/dist/esm/utils/redux/remote-data.js +108 -0
- package/dist/esm/utils/redux/remote-data.js.map +1 -0
- package/dist/esm/utils/redux-saga/index.js +3 -0
- package/dist/esm/utils/redux-saga/index.js.map +1 -0
- package/dist/esm/utils/redux-saga/middleware.js +143 -0
- package/dist/esm/utils/redux-saga/middleware.js.map +1 -0
- package/dist/esm/utils/redux-saga/take-chain.js +59 -0
- package/dist/esm/utils/redux-saga/take-chain.js.map +1 -0
- package/dist/esm/utils/redux-saga/types.js +2 -0
- package/dist/esm/utils/redux-saga/types.js.map +1 -0
- package/dist/esm/utils/ssr/index.js +66 -0
- package/dist/esm/utils/ssr/index.js.map +1 -0
- package/dist/esm/utils/web/analytics/data-layer.js +14 -0
- package/dist/esm/utils/web/analytics/data-layer.js.map +1 -0
- package/dist/esm/utils/web/analytics/index.js +3 -0
- package/dist/esm/utils/web/analytics/index.js.map +1 -0
- package/dist/esm/utils/web/analytics/oko.js +14 -0
- package/dist/esm/utils/web/analytics/oko.js.map +1 -0
- package/dist/esm/utils/web/storage/index.js +69 -0
- package/dist/esm/utils/web/storage/index.js.map +1 -0
- package/dist/esm/utils/webpack/env/index.js +89 -0
- package/dist/esm/utils/webpack/env/index.js.map +1 -0
- package/dist/esm/utils/webpack/env/types.js +2 -0
- package/dist/esm/utils/webpack/env/types.js.map +1 -0
- package/dist/esm/utils/webpack/env/utils.js +48 -0
- package/dist/esm/utils/webpack/env/utils.js.map +1 -0
- package/dist/esm/utils/webpack/index.js +4 -0
- package/dist/esm/utils/webpack/index.js.map +1 -0
- package/dist/esm/utils/webpack/module-federation/index.js +96 -0
- package/dist/esm/utils/webpack/module-federation/index.js.map +1 -0
- package/dist/esm/utils/webpack/module-federation/types.js +2 -0
- package/dist/esm/utils/webpack/module-federation/types.js.map +1 -0
- package/dist/esm/utils/webpack/module-federation/utils.js +80 -0
- package/dist/esm/utils/webpack/module-federation/utils.js.map +1 -0
- package/dist/types/cache/index.d.ts +1 -0
- package/{http → dist/types/http}/errors.d.ts +12 -0
- package/{http → dist/types/http}/index.d.ts +2 -2
- package/dist/types/log/index.d.ts +3 -0
- package/dist/types/preset/isomorphic/constants.d.ts +7 -0
- package/dist/types/preset/isomorphic/providers/index.d.ts +22 -0
- package/dist/types/preset/isomorphic/types.d.ts +44 -0
- package/{preset/parts/utils.d.ts → dist/types/preset/isomorphic/utils/index.d.ts} +14 -6
- package/dist/types/preset/node/handler/index.d.ts +10 -0
- package/dist/types/preset/node/handler/providers/index.d.ts +35 -0
- package/dist/types/preset/node/handler/utils/index.d.ts +46 -0
- package/dist/types/preset/node/index.d.ts +2 -0
- package/dist/types/preset/node/node/index.d.ts +8 -0
- package/dist/types/preset/node/node/providers/index.d.ts +112 -0
- package/{http-client/middleware/tracing.d.ts → dist/types/preset/node/node/utils/http-client/index.d.ts} +9 -0
- package/dist/types/preset/node/node/utils/http-server/index.d.ts +7 -0
- package/dist/types/preset/node/node/utils/index.d.ts +2 -0
- package/dist/types/preset/web/index.d.ts +8 -0
- package/dist/types/preset/web/providers/index.d.ts +35 -0
- package/{tokens.d.ts → dist/types/tokens.d.ts} +11 -11
- package/dist/types/utils/axios/index.d.ts +4 -0
- package/dist/types/utils/axios/middleware/cookie.d.ts +8 -0
- package/{http-client → dist/types/utils/axios}/sauce/index.d.ts +1 -1
- package/{http-client/utils.d.ts → dist/types/utils/axios/utils/index.d.ts} +0 -7
- package/dist/types/utils/express/index.d.ts +2 -0
- package/dist/types/utils/express/utils/index.d.ts +7 -0
- package/dist/types/utils/index.d.ts +2 -0
- package/{utils → dist/types/utils}/react/error-handlers/index.d.ts +1 -1
- package/{utils → dist/types/utils}/redux/remote-data.d.ts +8 -8
- package/{utils → dist/types/utils}/ssr/index.d.ts +1 -0
- package/dist/types/utils/web/analytics/index.d.ts +2 -0
- package/dist/types/utils/web/analytics/oko.d.ts +6 -0
- package/{utils/browser → dist/types/utils/web}/storage/index.d.ts +1 -0
- package/{utils → dist/types/utils}/webpack/module-federation/index.d.ts +2 -2
- package/package.json +173 -14
- package/src/cache/index.ts +1 -0
- package/src/cache/types.ts +34 -0
- package/src/config/base.ts +18 -0
- package/src/config/index.ts +3 -0
- package/src/config/source.ts +23 -0
- package/src/config/types.ts +25 -0
- package/src/di/__test__/application.test.ts +258 -0
- package/src/di/__test__/container.test.ts +103 -0
- package/src/di/__test__/errors.test.ts +56 -0
- package/src/di/__test__/preset.test.ts +23 -0
- package/src/di/__test__/token.test.ts +25 -0
- package/src/di/application.ts +126 -0
- package/src/di/container.ts +60 -0
- package/src/di/errors.ts +59 -0
- package/src/di/index.ts +6 -0
- package/src/di/preset.ts +32 -0
- package/src/di/token.ts +41 -0
- package/src/di/types.ts +105 -0
- package/src/http/__test__/errors.test.ts +35 -0
- package/src/http/errors.ts +42 -0
- package/src/http/index.ts +14 -0
- package/src/http/types.ts +8 -0
- package/src/log/__test__/errors.test.ts +13 -0
- package/src/log/__test__/logger.test.ts +24 -0
- package/src/log/errors.ts +33 -0
- package/src/log/handler/pino.ts +27 -0
- package/src/log/handler/sentry.ts +57 -0
- package/src/log/index.ts +12 -0
- package/src/log/logger.ts +30 -0
- package/src/log/types.ts +76 -0
- package/src/preset/isomorphic/constants.ts +7 -0
- package/src/preset/isomorphic/providers/index.ts +40 -0
- package/src/preset/isomorphic/types.ts +48 -0
- package/src/preset/isomorphic/utils/__test__/index.test.ts +541 -0
- package/src/preset/isomorphic/utils/index.ts +349 -0
- package/src/preset/node/handler/index.ts +46 -0
- package/src/preset/node/handler/providers/index.tsx +214 -0
- package/src/preset/node/handler/utils/index.tsx +110 -0
- package/src/preset/node/index.ts +2 -0
- package/src/preset/node/node/index.ts +73 -0
- package/src/preset/node/node/providers/index.ts +434 -0
- package/src/preset/node/node/utils/http-client/__test__/index.test.ts +232 -0
- package/src/preset/node/node/utils/http-client/index.ts +129 -0
- package/src/preset/node/node/utils/http-server/index.ts +17 -0
- package/src/preset/node/node/utils/index.ts +2 -0
- package/src/preset/web/index.ts +40 -0
- package/src/preset/web/providers/index.ts +108 -0
- package/src/tokens.ts +112 -0
- package/src/utils/axios/index.ts +12 -0
- package/src/utils/axios/middleware/__test__/cookie.test.ts +94 -0
- package/src/utils/axios/middleware/__test__/log.test.ts +121 -0
- package/src/utils/axios/middleware/cookie.ts +26 -0
- package/src/utils/axios/middleware/log.ts +52 -0
- package/src/utils/axios/sauce/index.ts +76 -0
- package/src/utils/axios/utils/__test__/index.test.ts +89 -0
- package/src/utils/axios/utils/index.ts +26 -0
- package/src/utils/express/handler/health-check.ts +13 -0
- package/src/utils/express/index.ts +2 -0
- package/src/utils/express/utils/index.ts +18 -0
- package/src/utils/function.ts +57 -0
- package/src/utils/index.ts +2 -0
- package/src/utils/math.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 +63 -0
- package/src/utils/react/error-handlers/index.tsx +68 -0
- package/src/utils/react/index.ts +3 -0
- package/src/utils/redux/__test__/remote-data.test.ts +172 -0
- package/src/utils/redux/index.ts +4 -0
- package/src/utils/redux/remote-data.ts +138 -0
- package/src/utils/redux-saga/__test__/take-chain.test.ts +141 -0
- package/src/utils/redux-saga/index.ts +3 -0
- package/src/utils/redux-saga/middleware.ts +168 -0
- package/src/utils/redux-saga/take-chain.ts +67 -0
- package/src/utils/redux-saga/types.ts +43 -0
- package/src/utils/ssr/index.tsx +78 -0
- package/src/utils/web/analytics/__test__/data-layer.test.ts +50 -0
- package/src/utils/web/analytics/__test__/oko.test.ts +50 -0
- package/src/utils/web/analytics/data-layer.ts +12 -0
- package/src/utils/web/analytics/index.ts +2 -0
- package/src/utils/web/analytics/oko.ts +14 -0
- package/src/utils/web/storage/index.ts +84 -0
- package/src/utils/webpack/env/index.ts +91 -0
- package/src/utils/webpack/env/types.ts +14 -0
- package/src/utils/webpack/env/utils.ts +53 -0
- package/src/utils/webpack/index.ts +7 -0
- package/src/utils/webpack/module-federation/__test__/__snapshots__/utils.test.ts.snap +124 -0
- package/src/utils/webpack/module-federation/__test__/index.test.ts +311 -0
- package/src/utils/webpack/module-federation/__test__/utils.test.ts +28 -0
- package/src/utils/webpack/module-federation/index.ts +102 -0
- package/src/utils/webpack/module-federation/types.ts +54 -0
- package/src/utils/webpack/module-federation/utils.ts +104 -0
- package/cache/types.js +0 -3
- package/cache/types.js.map +0 -1
- package/config/base.js +0 -20
- package/config/base.js.map +0 -1
- package/config/index.js +0 -8
- package/config/index.js.map +0 -1
- package/config/source.js +0 -21
- package/config/source.js.map +0 -1
- package/config/types.js +0 -3
- package/config/types.js.map +0 -1
- package/di/application.js +0 -88
- package/di/application.js.map +0 -1
- package/di/container.js +0 -52
- package/di/container.js.map +0 -1
- package/di/errors.js +0 -59
- package/di/errors.js.map +0 -1
- package/di/index.js +0 -17
- package/di/index.js.map +0 -1
- package/di/preset.js +0 -27
- package/di/preset.js.map +0 -1
- package/di/token.js +0 -39
- package/di/token.js.map +0 -1
- package/di/types.js +0 -3
- package/di/types.js.map +0 -1
- package/http/errors.js +0 -26
- package/http/errors.js.map +0 -1
- package/http/index.js +0 -14
- package/http/index.js.map +0 -1
- package/http/types.js +0 -3
- package/http/types.js.map +0 -1
- package/http-client/middleware/cookie.d.ts +0 -20
- package/http-client/middleware/cookie.js +0 -64
- package/http-client/middleware/cookie.js.map +0 -1
- package/http-client/middleware/headers.d.ts +0 -13
- package/http-client/middleware/headers.js +0 -25
- package/http-client/middleware/headers.js.map +0 -1
- package/http-client/middleware/log.js +0 -26
- package/http-client/middleware/log.js.map +0 -1
- package/http-client/middleware/tracing.js +0 -80
- package/http-client/middleware/tracing.js.map +0 -1
- package/http-client/sauce/index.js +0 -50
- package/http-client/sauce/index.js.map +0 -1
- package/http-client/types.d.ts +0 -6
- package/http-client/types.js +0 -3
- package/http-client/types.js.map +0 -1
- package/http-client/utils.js +0 -51
- package/http-client/utils.js.map +0 -1
- package/http-server/constants.d.ts +0 -4
- package/http-server/constants.js +0 -8
- package/http-server/constants.js.map +0 -1
- package/http-server/errors.d.ts +0 -11
- package/http-server/errors.js +0 -18
- package/http-server/errors.js.map +0 -1
- package/http-server/handler/health-check.js.map +0 -1
- package/http-server/middleware/tracing.d.ts +0 -14
- package/http-server/middleware/tracing.js +0 -51
- package/http-server/middleware/tracing.js.map +0 -1
- package/http-server/types.d.ts +0 -20
- package/http-server/types.js +0 -3
- package/http-server/types.js.map +0 -1
- package/http-server/utils.d.ts +0 -43
- package/http-server/utils.js +0 -134
- package/http-server/utils.js.map +0 -1
- package/log/errors.js +0 -31
- package/log/errors.js.map +0 -1
- package/log/handler/pino.js +0 -29
- package/log/handler/pino.js.map +0 -1
- package/log/handler/sentry.js +0 -50
- package/log/handler/sentry.js.map +0 -1
- package/log/index.d.ts +0 -3
- package/log/index.js +0 -9
- package/log/index.js.map +0 -1
- package/log/logger.js +0 -29
- package/log/logger.js.map +0 -1
- package/log/types.js +0 -3
- package/log/types.js.map +0 -1
- package/preset/browser/index.d.ts +0 -17
- package/preset/browser/index.js +0 -88
- package/preset/browser/index.js.map +0 -1
- package/preset/node/handler.d.ts +0 -20
- package/preset/node/handler.js +0 -208
- package/preset/node/handler.js.map +0 -1
- package/preset/node/index.d.ts +0 -29
- package/preset/node/index.js +0 -292
- package/preset/node/index.js.map +0 -1
- package/preset/parts/providers.d.ts +0 -7
- package/preset/parts/providers.js +0 -26
- package/preset/parts/providers.js.map +0 -1
- package/preset/parts/types.d.ts +0 -14
- package/preset/parts/types.js +0 -3
- package/preset/parts/types.js.map +0 -1
- package/preset/parts/utils.js +0 -263
- package/preset/parts/utils.js.map +0 -1
- package/tokens.js +0 -82
- package/tokens.js.map +0 -1
- package/utils/browser/analytics/data-layer.js.map +0 -1
- package/utils/browser/analytics/oko.d.ts +0 -13
- package/utils/browser/analytics/oko.js +0 -40
- package/utils/browser/analytics/oko.js.map +0 -1
- package/utils/browser/storage/index.js +0 -68
- package/utils/browser/storage/index.js.map +0 -1
- package/utils/function.js +0 -23
- package/utils/function.js.map +0 -1
- package/utils/number.js.map +0 -1
- package/utils/react/error-handlers/index.js +0 -47
- package/utils/react/error-handlers/index.js.map +0 -1
- package/utils/react/index.js +0 -7
- package/utils/react/index.js.map +0 -1
- package/utils/redux/index.js +0 -7
- package/utils/redux/index.js.map +0 -1
- package/utils/redux/remote-data.js +0 -91
- package/utils/redux/remote-data.js.map +0 -1
- package/utils/redux-saga/index.js +0 -8
- package/utils/redux-saga/index.js.map +0 -1
- package/utils/redux-saga/middleware.js +0 -142
- package/utils/redux-saga/middleware.js.map +0 -1
- package/utils/redux-saga/take-chain.js +0 -58
- package/utils/redux-saga/take-chain.js.map +0 -1
- package/utils/redux-saga/types.js +0 -3
- package/utils/redux-saga/types.js.map +0 -1
- package/utils/ssr/index.js +0 -54
- package/utils/ssr/index.js.map +0 -1
- package/utils/webpack/env/index.js +0 -76
- package/utils/webpack/env/index.js.map +0 -1
- package/utils/webpack/env/types.js +0 -3
- package/utils/webpack/env/types.js.map +0 -1
- package/utils/webpack/env/utils.js +0 -52
- package/utils/webpack/env/utils.js.map +0 -1
- package/utils/webpack/index.js +0 -8
- package/utils/webpack/index.js.map +0 -1
- package/utils/webpack/module-federation/index.js +0 -81
- package/utils/webpack/module-federation/index.js.map +0 -1
- package/utils/webpack/module-federation/types.js +0 -3
- package/utils/webpack/module-federation/types.js.map +0 -1
- package/utils/webpack/module-federation/utils.js.map +0 -1
- /package/{cache → dist/types/cache}/types.d.ts +0 -0
- /package/{config → dist/types/config}/base.d.ts +0 -0
- /package/{config → dist/types/config}/index.d.ts +0 -0
- /package/{config → dist/types/config}/source.d.ts +0 -0
- /package/{config → dist/types/config}/types.d.ts +0 -0
- /package/{di → dist/types/di}/application.d.ts +0 -0
- /package/{di → dist/types/di}/container.d.ts +0 -0
- /package/{di → dist/types/di}/errors.d.ts +0 -0
- /package/{di → dist/types/di}/index.d.ts +0 -0
- /package/{di → dist/types/di}/preset.d.ts +0 -0
- /package/{di → dist/types/di}/token.d.ts +0 -0
- /package/{di → dist/types/di}/types.d.ts +0 -0
- /package/{http → dist/types/http}/types.d.ts +0 -0
- /package/{log → dist/types/log}/errors.d.ts +0 -0
- /package/{log → dist/types/log}/handler/pino.d.ts +0 -0
- /package/{log → dist/types/log}/handler/sentry.d.ts +0 -0
- /package/{log → dist/types/log}/logger.d.ts +0 -0
- /package/{log → dist/types/log}/types.d.ts +0 -0
- /package/{http-client → dist/types/utils/axios}/middleware/log.d.ts +0 -0
- /package/{http-server → dist/types/utils/express}/handler/health-check.d.ts +0 -0
- /package/{utils → dist/types/utils}/function.d.ts +0 -0
- /package/{utils/number.d.ts → dist/types/utils/math.d.ts} +0 -0
- /package/{utils → dist/types/utils}/react/index.d.ts +0 -0
- /package/{utils → dist/types/utils}/redux/index.d.ts +0 -0
- /package/{utils → dist/types/utils}/redux-saga/index.d.ts +0 -0
- /package/{utils → dist/types/utils}/redux-saga/middleware.d.ts +0 -0
- /package/{utils → dist/types/utils}/redux-saga/take-chain.d.ts +0 -0
- /package/{utils → dist/types/utils}/redux-saga/types.d.ts +0 -0
- /package/{utils/browser → dist/types/utils/web}/analytics/data-layer.d.ts +0 -0
- /package/{utils → dist/types/utils}/webpack/env/index.d.ts +0 -0
- /package/{utils → dist/types/utils}/webpack/env/types.d.ts +0 -0
- /package/{utils → dist/types/utils}/webpack/env/utils.d.ts +0 -0
- /package/{utils → dist/types/utils}/webpack/index.d.ts +0 -0
- /package/{utils → dist/types/utils}/webpack/module-federation/types.d.ts +0 -0
- /package/{utils → dist/types/utils}/webpack/module-federation/utils.d.ts +0 -0
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createCookieStore = exports.collectCookieMiddleware = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Возвращает новый middleware для работы с cookie на сервере.
|
|
6
|
-
* @param request Входящий запрос.
|
|
7
|
-
* @param response Исходящий ответ.
|
|
8
|
-
* @return Middleware.
|
|
9
|
-
*/
|
|
10
|
-
function collectCookieMiddleware(request, response) {
|
|
11
|
-
const store = createCookieStore(request.get('cookie'));
|
|
12
|
-
return async function collectCookie(config, next) {
|
|
13
|
-
const result = await next({
|
|
14
|
-
...config,
|
|
15
|
-
headers: {
|
|
16
|
-
...config.headers,
|
|
17
|
-
Cookie: store.asHeader(),
|
|
18
|
-
},
|
|
19
|
-
});
|
|
20
|
-
if (result.headers['set-cookie'] && !response.writableEnded) {
|
|
21
|
-
store.set(result.headers['set-cookie']);
|
|
22
|
-
response.setHeader('cookie', store.asHeader());
|
|
23
|
-
}
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
exports.collectCookieMiddleware = collectCookieMiddleware;
|
|
27
|
-
/**
|
|
28
|
-
* Возвращает новое хранилище cookie.
|
|
29
|
-
* @internal
|
|
30
|
-
* @param initialCookie Начальное значение cookie.
|
|
31
|
-
* @return Хранилище cookie.
|
|
32
|
-
*/
|
|
33
|
-
function createCookieStore(initialCookie) {
|
|
34
|
-
const data = {};
|
|
35
|
-
// eslint-disable-next-line require-jsdoc, jsdoc/require-jsdoc
|
|
36
|
-
function setItem(cookieItem) {
|
|
37
|
-
const [cookieName, cookieValue] = cookieItem.split('=').map(item => item.trim());
|
|
38
|
-
if (cookieName && cookieValue) {
|
|
39
|
-
data[cookieName] = { name: cookieName, value: cookieValue };
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
if (initialCookie && initialCookie.length) {
|
|
43
|
-
for (const item of initialCookie.split(';')) {
|
|
44
|
-
setItem(item);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
// eslint-disable-next-line require-jsdoc, jsdoc/require-jsdoc
|
|
48
|
-
function set(setCookieHeaderValues) {
|
|
49
|
-
for (const item of setCookieHeaderValues) {
|
|
50
|
-
// отделяем значение от директив
|
|
51
|
-
const [cookie] = item.split(';');
|
|
52
|
-
setItem(cookie);
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
// eslint-disable-next-line require-jsdoc, jsdoc/require-jsdoc
|
|
56
|
-
function asHeader() {
|
|
57
|
-
return Object.values(data)
|
|
58
|
-
.map(cookie => `${cookie.name}=${cookie.value}`)
|
|
59
|
-
.join('; ');
|
|
60
|
-
}
|
|
61
|
-
return { set, asHeader };
|
|
62
|
-
}
|
|
63
|
-
exports.createCookieStore = createCookieStore;
|
|
64
|
-
//# sourceMappingURL=cookie.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cookie.js","sourceRoot":"","sources":["../../../src/http-client/middleware/cookie.ts"],"names":[],"mappings":";;;AAQA;;;;;GAKG;AACH,SAAgB,uBAAuB,CAAC,OAAgB,EAAE,QAAkB;IAC1E,MAAM,KAAK,GAAG,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEvD,OAAO,KAAK,UAAU,aAAa,CAAC,MAAM,EAAE,IAAI;QAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC;YACxB,GAAG,MAAM;YACT,OAAO,EAAE;gBACP,GAAG,MAAM,CAAC,OAAO;gBACjB,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE;aACzB;SACF,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE;YAC3D,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;YACxC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;SAChD;IACH,CAAC,CAAC;AACJ,CAAC;AAjBD,0DAiBC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,aAAsB;IACtD,MAAM,IAAI,GAAoD,EAAE,CAAC;IAEjE,8DAA8D;IAC9D,SAAS,OAAO,CAAC,UAAkB;QACjC,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAEjF,IAAI,UAAU,IAAI,WAAW,EAAE;YAC7B,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;SAC7D;IACH,CAAC;IAED,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,EAAE;QACzC,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YAC3C,OAAO,CAAC,IAAI,CAAC,CAAC;SACf;KACF;IAED,8DAA8D;IAC9D,SAAS,GAAG,CAAC,qBAA+B;QAC1C,KAAK,MAAM,IAAI,IAAI,qBAAqB,EAAE;YACxC,gCAAgC;YAChC,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACjC,OAAO,CAAC,MAAM,CAAC,CAAC;SACjB;IACH,CAAC;IAED,8DAA8D;IAC9D,SAAS,QAAQ;QACf,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;aACvB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;aAC/C,IAAI,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC;IAED,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC3B,CAAC;AAnCD,8CAmCC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { Request } from 'express';
|
|
2
|
-
import type { Middleware } from 'middleware-axios';
|
|
3
|
-
export interface PassHeadersOptions {
|
|
4
|
-
predicate: (headerName: string, headerValue: string) => boolean;
|
|
5
|
-
}
|
|
6
|
-
/**
|
|
7
|
-
* Возвращает новый промежуточный слой для проброса заголовков входящего запроса во все исходящие запросы.
|
|
8
|
-
* Принудительно игнорирует заголовок Cookie.
|
|
9
|
-
* @param req Request.
|
|
10
|
-
* @param options Опции.
|
|
11
|
-
* @return Промежуточный слой.
|
|
12
|
-
*/
|
|
13
|
-
export declare function passHeadersMiddleware(req: Request, { predicate }?: PassHeadersOptions): Middleware<any>;
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.passHeadersMiddleware = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Возвращает новый промежуточный слой для проброса заголовков входящего запроса во все исходящие запросы.
|
|
6
|
-
* Принудительно игнорирует заголовок Cookie.
|
|
7
|
-
* @param req Request.
|
|
8
|
-
* @param options Опции.
|
|
9
|
-
* @return Промежуточный слой.
|
|
10
|
-
*/
|
|
11
|
-
function passHeadersMiddleware(req, { predicate } = { predicate: () => true }) {
|
|
12
|
-
return async function passHeaders(config, next) {
|
|
13
|
-
const headers = { ...config.headers };
|
|
14
|
-
for (const headerName in req.headers) {
|
|
15
|
-
const headerValue = req.headers[headerName];
|
|
16
|
-
if (typeof headerValue === 'string' && predicate(headerName, headerValue)) {
|
|
17
|
-
headers[headerName] = headerValue;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
// ВАЖНО: не ждем ответа тк он может упасть + нам не важен результат
|
|
21
|
-
next({ ...config, headers });
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
exports.passHeadersMiddleware = passHeadersMiddleware;
|
|
25
|
-
//# sourceMappingURL=headers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"headers.js","sourceRoot":"","sources":["../../../src/http-client/middleware/headers.ts"],"names":[],"mappings":";;;AAQA;;;;;;GAMG;AACH,SAAgB,qBAAqB,CACnC,GAAY,EACZ,EAAE,SAAS,KAAyB,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE;IAE7D,OAAO,KAAK,UAAU,WAAW,CAAC,MAAM,EAAE,IAAI;QAC5C,MAAM,OAAO,GAA2B,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAE9D,KAAK,MAAM,UAAU,IAAI,GAAG,CAAC,OAAO,EAAE;YACpC,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAE5C,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE;gBACzE,OAAO,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC;aACnC;SACF;QAED,oEAAoE;QACpE,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IAC/B,CAAC,CAAC;AACJ,CAAC;AAlBD,sDAkBC"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.logMiddleware = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Возвращает новый middleware для логирования запросов.
|
|
6
|
-
* @param handlerInit Обработчик.
|
|
7
|
-
* @return Middleware.
|
|
8
|
-
*/
|
|
9
|
-
function logMiddleware(handlerInit) {
|
|
10
|
-
return async function log(config, next, defaults) {
|
|
11
|
-
const shared = { config, defaults };
|
|
12
|
-
const handler = typeof handlerInit === 'function' ? handlerInit(shared) : handlerInit;
|
|
13
|
-
try {
|
|
14
|
-
await handler.beforeRequest(shared);
|
|
15
|
-
const response = await next(config);
|
|
16
|
-
await handler.afterResponse({ ...shared, response });
|
|
17
|
-
}
|
|
18
|
-
catch (error) {
|
|
19
|
-
await handler.onCatch({ ...shared, error });
|
|
20
|
-
// ВАЖНО: не скрываем ошибку, сообщаем остальному миру про нее
|
|
21
|
-
throw error;
|
|
22
|
-
}
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
exports.logMiddleware = logMiddleware;
|
|
26
|
-
//# sourceMappingURL=log.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"log.js","sourceRoot":"","sources":["../../../src/http-client/middleware/log.ts"],"names":[],"mappings":";;;AA4BA;;;;GAIG;AACH,SAAgB,aAAa,CAAC,WAAqC;IACjE,OAAO,KAAK,UAAU,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;QAC9C,MAAM,MAAM,GAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,OAAO,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QAEtF,IAAI;YACF,MAAM,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAEpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC;YAEpC,MAAM,OAAO,CAAC,aAAa,CAAC,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;SACtD;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YAE5C,8DAA8D;YAC9D,MAAM,KAAK,CAAC;SACb;IACH,CAAC,CAAC;AACJ,CAAC;AAlBD,sCAkBC"}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.hideFirstId = exports.getRequestInfo = exports.tracingMiddleware = void 0;
|
|
4
|
-
const api_1 = require("@opentelemetry/api");
|
|
5
|
-
const semantic_conventions_1 = require("@opentelemetry/semantic-conventions");
|
|
6
|
-
const utils_1 = require("../utils");
|
|
7
|
-
/**
|
|
8
|
-
* Возвращает новый middleware для трассировки исходящих запросов.
|
|
9
|
-
* @param tracer Трейсер.
|
|
10
|
-
* @param rootContext Контекст.
|
|
11
|
-
* @return Middleware.
|
|
12
|
-
*/
|
|
13
|
-
function tracingMiddleware(tracer, rootContext) {
|
|
14
|
-
return async function trace(config, next, defaults) {
|
|
15
|
-
const { method, url, foundId } = getRequestInfo(config, defaults);
|
|
16
|
-
const span = tracer.startSpan(`HTTP ${method} ${url}`, undefined, rootContext);
|
|
17
|
-
span.setAttributes({
|
|
18
|
-
[semantic_conventions_1.SemanticAttributes.HTTP_URL]: url,
|
|
19
|
-
[semantic_conventions_1.SemanticAttributes.HTTP_METHOD]: method,
|
|
20
|
-
'request.params': JSON.stringify({
|
|
21
|
-
...defaults.params,
|
|
22
|
-
...config.params,
|
|
23
|
-
}),
|
|
24
|
-
'request.headers': JSON.stringify({
|
|
25
|
-
...defaults.headers[method.toLowerCase()],
|
|
26
|
-
...config.headers,
|
|
27
|
-
}),
|
|
28
|
-
// если нашли id - добавляем в теги
|
|
29
|
-
...(foundId && { 'request.id': foundId }),
|
|
30
|
-
});
|
|
31
|
-
try {
|
|
32
|
-
await next(config);
|
|
33
|
-
}
|
|
34
|
-
catch (error) {
|
|
35
|
-
span.setStatus({
|
|
36
|
-
code: api_1.SpanStatusCode.ERROR,
|
|
37
|
-
message: 'HTTP Request failed',
|
|
38
|
-
});
|
|
39
|
-
span.end();
|
|
40
|
-
// не прячем ошибку
|
|
41
|
-
throw error;
|
|
42
|
-
}
|
|
43
|
-
span.end();
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
exports.tracingMiddleware = tracingMiddleware;
|
|
47
|
-
/**
|
|
48
|
-
* Формирует базовые данные запроса.
|
|
49
|
-
* Заменяет первое найденное число в url на "{id}", возвращая его в результате.
|
|
50
|
-
* @param config Axios-конфиг запроса.
|
|
51
|
-
* @param defaults Базовый конфиг экземпляра Axios.
|
|
52
|
-
* @return Базовые данные запроса.
|
|
53
|
-
*/
|
|
54
|
-
function getRequestInfo(config, defaults) {
|
|
55
|
-
const method = (config.method || 'GET').toUpperCase();
|
|
56
|
-
const baseURL = config.baseURL || defaults.baseURL || '';
|
|
57
|
-
// ВАЖНО: абстрагируем id только в url игнорируя baseURL
|
|
58
|
-
const [url, foundId] = hideFirstId(config.url || defaults.url || '');
|
|
59
|
-
return {
|
|
60
|
-
method,
|
|
61
|
-
url: (0, utils_1.displayUrl)(baseURL, url),
|
|
62
|
-
foundId,
|
|
63
|
-
};
|
|
64
|
-
}
|
|
65
|
-
exports.getRequestInfo = getRequestInfo;
|
|
66
|
-
/**
|
|
67
|
-
* Преобразует строку вида:
|
|
68
|
-
* "/api/v2/something/123456/some-bff/123456"
|
|
69
|
-
* в строку вида:
|
|
70
|
-
* "/api/v2/something/{id}/some-bff/123456"
|
|
71
|
-
* и возвращает кортеж с этой строкой и вырезанным числом в случае если оно найдено.
|
|
72
|
-
* @param url Url.
|
|
73
|
-
* @return Кортеж со строкой и результатом поиска числа.
|
|
74
|
-
*/
|
|
75
|
-
function hideFirstId(url) {
|
|
76
|
-
const found = /\d{2,}/.exec(url);
|
|
77
|
-
return found ? [url.replace(found[0], '{id}'), Number(found[0])] : [url, undefined];
|
|
78
|
-
}
|
|
79
|
-
exports.hideFirstId = hideFirstId;
|
|
80
|
-
//# sourceMappingURL=tracing.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tracing.js","sourceRoot":"","sources":["../../../src/http-client/middleware/tracing.ts"],"names":[],"mappings":";;;AAEA,4CAAqE;AACrE,8EAAyE;AACzE,oCAAsC;AAEtC;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,MAAc,EAAE,WAAoB;IACpE,OAAO,KAAK,UAAU,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;QAChD,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAClE,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,MAAM,IAAI,GAAG,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAE/E,IAAI,CAAC,aAAa,CAAC;YACjB,CAAC,yCAAkB,CAAC,QAAQ,CAAC,EAAE,GAAG;YAClC,CAAC,yCAAkB,CAAC,WAAW,CAAC,EAAE,MAAM;YACxC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC;gBAC/B,GAAG,QAAQ,CAAC,MAAM;gBAClB,GAAG,MAAM,CAAC,MAAM;aACjB,CAAC;YACF,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC;gBAChC,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAW,CAAC;gBAClD,GAAG,MAAM,CAAC,OAAO;aAClB,CAAC;YAEF,mCAAmC;YACnC,GAAG,CAAC,OAAO,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;SAC1C,CAAC,CAAC;QAEH,IAAI;YACF,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC;SACpB;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,SAAS,CAAC;gBACb,IAAI,EAAE,oBAAc,CAAC,KAAK;gBAC1B,OAAO,EAAE,qBAAqB;aAC/B,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,EAAE,CAAC;YAEX,mBAAmB;YACnB,MAAM,KAAK,CAAC;SACb;QAED,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AArCD,8CAqCC;AAED;;;;;;GAMG;AACH,SAAgB,cAAc,CAC5B,MAA0B,EAC1B,QAAuB;IAMvB,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IACtD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;IAEzD,wDAAwD;IACxD,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,QAAQ,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IAErE,OAAO;QACL,MAAM;QACN,GAAG,EAAE,IAAA,kBAAU,EAAC,OAAO,EAAE,GAAG,CAAC;QAC7B,OAAO;KACR,CAAC;AACJ,CAAC;AAnBD,wCAmBC;AAED;;;;;;;;GAQG;AACH,SAAgB,WAAW,CAAC,GAAW;IACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEjC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;AACtF,CAAC;AAJD,kCAIC"}
|
|
@@ -1,50 +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.formatResultInfo = exports.sauce = void 0;
|
|
7
|
-
const axios_1 = __importDefault(require("axios"));
|
|
8
|
-
const function_1 = require("../../utils/function");
|
|
9
|
-
/**
|
|
10
|
-
* Оборачивает экземпляр axios. Все методы обертки возвращают promise, которые никогда не попадают в состояние rejected.
|
|
11
|
-
* @param instance Экземпляр axios или AxiosInstanceWrapper.
|
|
12
|
-
* @return Обертка.
|
|
13
|
-
*/
|
|
14
|
-
function sauce(instance) {
|
|
15
|
-
return {
|
|
16
|
-
request: (0, function_1.safetyAsync)(instance.request, formatResultInfo),
|
|
17
|
-
get: (0, function_1.safetyAsync)(instance.get, formatResultInfo),
|
|
18
|
-
delete: (0, function_1.safetyAsync)(instance.delete, formatResultInfo),
|
|
19
|
-
head: (0, function_1.safetyAsync)(instance.head, formatResultInfo),
|
|
20
|
-
options: (0, function_1.safetyAsync)(instance.options, formatResultInfo),
|
|
21
|
-
post: (0, function_1.safetyAsync)(instance.post, formatResultInfo),
|
|
22
|
-
put: (0, function_1.safetyAsync)(instance.put, formatResultInfo),
|
|
23
|
-
patch: (0, function_1.safetyAsync)(instance.patch, formatResultInfo),
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
exports.sauce = sauce;
|
|
27
|
-
/**
|
|
28
|
-
* Функция форматирования результата, используемая в sauce.
|
|
29
|
-
* @param info Результат вызова метода экземпляра axios.
|
|
30
|
-
* @return Отформатированный ответ.
|
|
31
|
-
*/
|
|
32
|
-
function formatResultInfo(info) {
|
|
33
|
-
if (info.ok) {
|
|
34
|
-
return {
|
|
35
|
-
ok: true,
|
|
36
|
-
data: info.result.data,
|
|
37
|
-
status: info.result.status,
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
return {
|
|
42
|
-
ok: false,
|
|
43
|
-
data: axios_1.default.isAxiosError(info.error) ? info.error.response?.data : undefined,
|
|
44
|
-
status: axios_1.default.isAxiosError(info.error) ? info.error.response?.status : undefined,
|
|
45
|
-
error: info.error,
|
|
46
|
-
};
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
exports.formatResultInfo = formatResultInfo;
|
|
50
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/http-client/sauce/index.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA4D;AAC5D,mDAA+D;AAoC/D;;;;GAIG;AACH,SAAgB,KAAK,CAAC,QAA8C;IAClE,OAAO;QACL,OAAO,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;QACxD,GAAG,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAC;QAChD,MAAM,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;QACtD,IAAI,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;QAClD,OAAO,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;QACxD,IAAI,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;QAClD,GAAG,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAC;QAChD,KAAK,EAAE,IAAA,sBAAW,EAAC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;KACrD,CAAC;AACJ,CAAC;AAXD,sBAWC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB,CAAI,IAAkC;IACpE,IAAI,IAAI,CAAC,EAAE,EAAE;QACX,OAAO;YACL,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;SAC3B,CAAC;KACH;SAAM;QACL,OAAO;YACL,EAAE,EAAE,KAAK;YACT,IAAI,EAAE,eAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS;YAC5E,MAAM,EAAE,eAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS;YAChF,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC;KACH;AACH,CAAC;AAfD,4CAeC"}
|
package/http-client/types.d.ts
DELETED
package/http-client/types.js
DELETED
package/http-client/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/http-client/types.ts"],"names":[],"mappings":""}
|
package/http-client/utils.js
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.applyAxiosDefaults = exports.displayUrl = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Объединяет значения опций baseURL и url (axios) в одну строку для логирования.
|
|
6
|
-
* @param baseURL Опция baseURL.
|
|
7
|
-
* @param url Опция url.
|
|
8
|
-
* @return Отображение. Не является валидным URL.
|
|
9
|
-
*/
|
|
10
|
-
function displayUrl(baseURL = '', url = '') {
|
|
11
|
-
let result;
|
|
12
|
-
switch (true) {
|
|
13
|
-
case Boolean(baseURL && url):
|
|
14
|
-
result = `${baseURL.replace(/\/$/, '')}/${url.replace(/^\//, '')}`;
|
|
15
|
-
break;
|
|
16
|
-
case Boolean(baseURL) && !url:
|
|
17
|
-
result = baseURL;
|
|
18
|
-
break;
|
|
19
|
-
case !baseURL && Boolean(url):
|
|
20
|
-
result = url;
|
|
21
|
-
break;
|
|
22
|
-
case !baseURL && !url:
|
|
23
|
-
default:
|
|
24
|
-
result = '[empty]';
|
|
25
|
-
break;
|
|
26
|
-
}
|
|
27
|
-
return result;
|
|
28
|
-
}
|
|
29
|
-
exports.displayUrl = displayUrl;
|
|
30
|
-
/**
|
|
31
|
-
* Сливает в один объект конфиг и настройки по умолчанию.
|
|
32
|
-
* @param config Конфигурация запроса.
|
|
33
|
-
* @param defaults Настройки по умолчанию для экземпляра axios.
|
|
34
|
-
* @return Уточненная итоговая конфигурация.
|
|
35
|
-
* @todo Было бы круто заменить на axios/core/mergeConfig (https://github.com/axios/axios/blob/v1.x/lib/core/mergeConfig.js).
|
|
36
|
-
*/
|
|
37
|
-
function applyAxiosDefaults(config, defaults) {
|
|
38
|
-
const { headers: headersDefaults, ...restDefaults } = defaults;
|
|
39
|
-
const method = config.method || defaults.method || 'get';
|
|
40
|
-
return {
|
|
41
|
-
method,
|
|
42
|
-
...restDefaults,
|
|
43
|
-
...config,
|
|
44
|
-
headers: {
|
|
45
|
-
...headersDefaults[method.toLowerCase()],
|
|
46
|
-
...config.headers,
|
|
47
|
-
},
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
exports.applyAxiosDefaults = applyAxiosDefaults;
|
|
51
|
-
//# sourceMappingURL=utils.js.map
|
package/http-client/utils.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/http-client/utils.ts"],"names":[],"mappings":";;;AAEA;;;;;GAKG;AACH,SAAgB,UAAU,CACxB,UAAyC,EAAE,EAC3C,MAAiC,EAAE;IAEnC,IAAI,MAAc,CAAC;IAEnB,QAAQ,IAAI,EAAE;QACZ,KAAK,OAAO,CAAC,OAAO,IAAI,GAAG,CAAC;YAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;YACnE,MAAM;QACR,KAAK,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG;YAC3B,MAAM,GAAG,OAAO,CAAC;YACjB,MAAM;QACR,KAAK,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC;YAC3B,MAAM,GAAG,GAAG,CAAC;YACb,MAAM;QACR,KAAK,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC;QACtB;YACE,MAAM,GAAG,SAAS,CAAC;YACnB,MAAM;KACT;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAvBD,gCAuBC;AAED;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAChC,MAA0B,EAC1B,QAAuB;IAEvB,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,YAAY,EAAE,GAAG,QAAQ,CAAC;IAC/D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC;IAEzD,OAAO;QACL,MAAM;QACN,GAAG,YAAY;QACf,GAAG,MAAM;QACT,OAAO,EAAE;YACP,GAAG,eAAe,CAAC,MAAM,CAAC,WAAW,EAAmC,CAAC;YACzE,GAAG,MAAM,CAAC,OAAO;SAClB;KACF,CAAC;AACJ,CAAC;AAhBD,gDAgBC"}
|
package/http-server/constants.js
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RESPONSE_EVENT = void 0;
|
|
4
|
-
exports.RESPONSE_EVENT = {
|
|
5
|
-
renderStart: Symbol('render:start'),
|
|
6
|
-
renderFinish: Symbol('render:finish'),
|
|
7
|
-
};
|
|
8
|
-
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/http-server/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,cAAc,GAAG;IAC5B,WAAW,EAAE,MAAM,CAAC,cAAc,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC,eAAe,CAAC;CAC7B,CAAC"}
|
package/http-server/errors.d.ts
DELETED
package/http-server/errors.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SSRError = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Ошибка в процессе серверного рендеринга.
|
|
6
|
-
*/
|
|
7
|
-
class SSRError extends Error {
|
|
8
|
-
/**
|
|
9
|
-
* @param message Сообщение.
|
|
10
|
-
* @param statusCode Код ответа.
|
|
11
|
-
*/
|
|
12
|
-
constructor(message, statusCode = 500) {
|
|
13
|
-
super(message);
|
|
14
|
-
this.statusCode = statusCode;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
exports.SSRError = SSRError;
|
|
18
|
-
//# sourceMappingURL=errors.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/http-server/errors.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,MAAa,QAAS,SAAQ,KAAK;IAGjC;;;OAGG;IACH,YAAY,OAAe,EAAE,UAAU,GAAG,GAAG;QAC3C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;CACF;AAXD,4BAWC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"health-check.js","sourceRoot":"","sources":["../../../src/http-server/handler/health-check.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACH,SAAgB,WAAW;IACzB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAClB,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC;AACJ,CAAC;AAND,kCAMC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Tracer } from '@opentelemetry/api';
|
|
2
|
-
import type { Request, Handler } from 'express';
|
|
3
|
-
/**
|
|
4
|
-
* Возвращает новый middleware для трассировки стадий входящего запроса.
|
|
5
|
-
* @param tracer Tracer.
|
|
6
|
-
* @return Middleware.
|
|
7
|
-
*/
|
|
8
|
-
export declare function tracingMiddleware(tracer: Tracer): Handler;
|
|
9
|
-
/**
|
|
10
|
-
* Возвращает набор стандартных атрибутов для спана.
|
|
11
|
-
* @param req Входящий http-запрос.
|
|
12
|
-
* @return Атрибуты.
|
|
13
|
-
*/
|
|
14
|
-
export declare function getConventionalRequestAttrs(req: Request): Record<string, string | undefined>;
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getConventionalRequestAttrs = exports.tracingMiddleware = void 0;
|
|
4
|
-
const constants_1 = require("../constants");
|
|
5
|
-
const api_1 = require("@opentelemetry/api");
|
|
6
|
-
/**
|
|
7
|
-
* Возвращает новый middleware для трассировки стадий входящего запроса.
|
|
8
|
-
* @param tracer Tracer.
|
|
9
|
-
* @return Middleware.
|
|
10
|
-
*/
|
|
11
|
-
function tracingMiddleware(tracer) {
|
|
12
|
-
return function tracing(req, res, next) {
|
|
13
|
-
const externalContext = api_1.propagation.extract(api_1.ROOT_CONTEXT, req.headers);
|
|
14
|
-
const rootSpan = tracer.startSpan('response', undefined, externalContext);
|
|
15
|
-
rootSpan.setAttributes(getConventionalRequestAttrs(req));
|
|
16
|
-
const rootContext = api_1.trace.setSpan(externalContext, rootSpan);
|
|
17
|
-
res.locals.tracing = {
|
|
18
|
-
rootSpan,
|
|
19
|
-
rootContext,
|
|
20
|
-
};
|
|
21
|
-
res.once(constants_1.RESPONSE_EVENT.renderStart, () => {
|
|
22
|
-
res.locals.tracing.renderSpan = tracer.startSpan('render', undefined, rootContext);
|
|
23
|
-
});
|
|
24
|
-
res.once(constants_1.RESPONSE_EVENT.renderFinish, () => {
|
|
25
|
-
res.locals.tracing.renderSpan.end();
|
|
26
|
-
});
|
|
27
|
-
res.once('finish', () => {
|
|
28
|
-
rootSpan.end();
|
|
29
|
-
});
|
|
30
|
-
next();
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
exports.tracingMiddleware = tracingMiddleware;
|
|
34
|
-
/**
|
|
35
|
-
* Возвращает набор стандартных атрибутов для спана.
|
|
36
|
-
* @param req Входящий http-запрос.
|
|
37
|
-
* @return Атрибуты.
|
|
38
|
-
*/
|
|
39
|
-
function getConventionalRequestAttrs(req) {
|
|
40
|
-
const result = {
|
|
41
|
-
'request.path': req.originalUrl,
|
|
42
|
-
};
|
|
43
|
-
for (const headerName in req.headers) {
|
|
44
|
-
if (headerName.toLowerCase().startsWith('simaland-')) {
|
|
45
|
-
result[headerName] = req.header(headerName);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
return result;
|
|
49
|
-
}
|
|
50
|
-
exports.getConventionalRequestAttrs = getConventionalRequestAttrs;
|
|
51
|
-
//# sourceMappingURL=tracing.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tracing.js","sourceRoot":"","sources":["../../../src/http-server/middleware/tracing.ts"],"names":[],"mappings":";;;AAAA,4CAA8C;AAC9C,4CAA8E;AAG9E;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,MAAc;IAC9C,OAAO,SAAS,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI;QACpC,MAAM,eAAe,GAAG,iBAAW,CAAC,OAAO,CAAC,kBAAY,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QACvE,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;QAE1E,QAAQ,CAAC,aAAa,CAAC,2BAA2B,CAAC,GAAG,CAAC,CAAC,CAAC;QAEzD,MAAM,WAAW,GAAG,WAAK,CAAC,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QAE7D,GAAG,CAAC,MAAM,CAAC,OAAO,GAAG;YACnB,QAAQ;YACR,WAAW;SACZ,CAAC;QAEF,GAAG,CAAC,IAAI,CAAC,0BAAc,CAAC,WAAW,EAAE,GAAG,EAAE;YACxC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,0BAAc,CAAC,YAAY,EAAE,GAAG,EAAE;YACzC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;YACtB,QAAQ,CAAC,GAAG,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC;AA5BD,8CA4BC;AAED;;;;GAIG;AACH,SAAgB,2BAA2B,CAAC,GAAY;IACtD,MAAM,MAAM,GAAuC;QACjD,cAAc,EAAE,GAAG,CAAC,WAAW;KAChC,CAAC;IAEF,KAAK,MAAM,UAAU,IAAI,GAAG,CAAC,OAAO,EAAE;QACpC,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;YACpD,MAAM,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;SAC7C;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAZD,kEAYC"}
|
package/http-server/types.d.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import type { Request, Response, NextFunction } from 'express';
|
|
2
|
-
export interface HandlerContext {
|
|
3
|
-
req: Request;
|
|
4
|
-
res: Response;
|
|
5
|
-
next: NextFunction;
|
|
6
|
-
}
|
|
7
|
-
export interface PageAssets {
|
|
8
|
-
js: string;
|
|
9
|
-
css: string;
|
|
10
|
-
criticalJs?: string;
|
|
11
|
-
criticalCss?: string;
|
|
12
|
-
}
|
|
13
|
-
export interface ConventionalJson {
|
|
14
|
-
markup: string;
|
|
15
|
-
bundle_js: string;
|
|
16
|
-
bundle_css: string;
|
|
17
|
-
critical_js?: string;
|
|
18
|
-
critical_css?: string;
|
|
19
|
-
meta?: any;
|
|
20
|
-
}
|
package/http-server/types.js
DELETED
package/http-server/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/http-server/types.ts"],"names":[],"mappings":""}
|
package/http-server/utils.d.ts
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import type { Handler, Request, Response } from 'express';
|
|
2
|
-
import type { PageAssets } from './types';
|
|
3
|
-
import type { BaseConfig } from '../config/types';
|
|
4
|
-
/**
|
|
5
|
-
* Объединяет промежуточные слои в один.
|
|
6
|
-
* @param list Промежуточные слои.
|
|
7
|
-
* @return Промежуточный слой.
|
|
8
|
-
*/
|
|
9
|
-
export declare function composeMiddleware(list: Handler[]): Handler;
|
|
10
|
-
/**
|
|
11
|
-
* Определяет IP входящего запроса.
|
|
12
|
-
* @param req Входящий запрос.
|
|
13
|
-
* @return IP.
|
|
14
|
-
*/
|
|
15
|
-
export declare function getXClientIp(req: Request): string;
|
|
16
|
-
/**
|
|
17
|
-
* Определяет служебные заголовки по соглашению.
|
|
18
|
-
* @param req Входящий запрос.
|
|
19
|
-
* @return Служебные заголовки.
|
|
20
|
-
*/
|
|
21
|
-
export declare function getServiceHeaders(req: Request): Record<string, string | undefined>;
|
|
22
|
-
/**
|
|
23
|
-
* Формирует заголовки для исходящих запросов с сервера по соглашению.
|
|
24
|
-
* @todo Убрать в preset'ы?
|
|
25
|
-
* @param config Конфиг.
|
|
26
|
-
* @param request Входящий запрос.
|
|
27
|
-
* @return Заголовки для исходящих запросов.
|
|
28
|
-
*/
|
|
29
|
-
export declare function getRequestHeaders(config: BaseConfig, request: Request): Record<string, string>;
|
|
30
|
-
export declare class PageResponse {
|
|
31
|
-
private type;
|
|
32
|
-
private html;
|
|
33
|
-
private _meta;
|
|
34
|
-
private _assets;
|
|
35
|
-
static defineFormat(req: Request): PageResponse['type'];
|
|
36
|
-
constructor();
|
|
37
|
-
markup(html: string): this;
|
|
38
|
-
assets(assets: PageAssets): this;
|
|
39
|
-
format(type: PageResponse['type']): this;
|
|
40
|
-
meta(meta: any): this;
|
|
41
|
-
getMeta(): unknown;
|
|
42
|
-
send(res: Response): void;
|
|
43
|
-
}
|