@sima-land/isomorph 10.1.0 → 11.0.0-alpha.2
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/cache/types.d.ts +7 -0
- package/cache/types.js +3 -0
- package/cache/types.js.map +1 -0
- package/config/browser.d.ts +6 -0
- package/config/browser.js +13 -0
- package/config/browser.js.map +1 -0
- package/config/index.d.ts +7 -0
- package/config/index.js +20 -0
- package/config/index.js.map +1 -0
- package/config/node.d.ts +6 -0
- package/config/node.js +19 -0
- package/config/node.js.map +1 -0
- package/config/types.d.ts +7 -0
- package/config/types.js +3 -0
- package/config/types.js.map +1 -0
- package/config/utils.d.ts +5 -0
- package/config/utils.js +12 -0
- package/config/utils.js.map +1 -0
- package/container/application.d.ts +25 -0
- package/container/application.js +63 -0
- package/container/application.js.map +1 -0
- package/container/index.d.ts +16 -13
- package/container/index.js +60 -161
- package/container/index.js.map +1 -1
- package/container/types.d.ts +14 -0
- package/container/types.js +3 -0
- package/container/types.js.map +1 -0
- package/error-tracker/browser.d.ts +8 -0
- package/error-tracker/browser.js +40 -0
- package/error-tracker/browser.js.map +1 -0
- package/error-tracker/node.d.ts +8 -0
- package/error-tracker/node.js +40 -0
- package/error-tracker/node.js.map +1 -0
- package/error-tracker/types.d.ts +18 -0
- package/error-tracker/types.js +3 -0
- package/error-tracker/types.js.map +1 -0
- package/error-tracker/utils.d.ts +12 -0
- package/error-tracker/utils.js +19 -0
- package/error-tracker/utils.js.map +1 -0
- package/http-client/middleware/cookie.d.ts +19 -0
- package/http-client/middleware/cookie.js +62 -0
- package/http-client/middleware/cookie.js.map +1 -0
- package/http-client/middleware/tracing.d.ts +32 -0
- package/http-client/middleware/tracing.js +67 -0
- package/http-client/middleware/tracing.js.map +1 -0
- package/http-client/sauce/index.d.ts +27 -0
- package/http-client/sauce/index.js +33 -0
- package/http-client/sauce/index.js.map +1 -0
- package/http-client/types.d.ts +6 -0
- package/http-client/types.js +3 -0
- package/http-client/types.js.map +1 -0
- package/http-client/utils.d.ts +9 -0
- package/http-client/utils.js +20 -0
- package/http-client/utils.js.map +1 -0
- package/http-server/constants.d.ts +4 -0
- package/http-server/constants.js +8 -0
- package/http-server/constants.js.map +1 -0
- package/http-server/handler/health-check.d.ts +6 -0
- package/http-server/handler/health-check.js +15 -0
- package/http-server/handler/health-check.js.map +1 -0
- package/http-server/middleware/logging.d.ts +10 -0
- package/http-server/middleware/logging.js +31 -0
- package/http-server/middleware/logging.js.map +1 -0
- package/http-server/middleware/metrics.d.ts +23 -0
- package/http-server/middleware/metrics.js +60 -0
- package/http-server/middleware/metrics.js.map +1 -0
- package/http-server/middleware/tracing.d.ts +8 -0
- package/http-server/middleware/tracing.js +33 -0
- package/http-server/middleware/tracing.js.map +1 -0
- package/http-server/template/index.d.ts +1 -0
- package/http-server/template/index.js +36 -0
- package/http-server/template/index.js.map +1 -0
- package/http-server/types.d.ts +33 -0
- package/http-server/types.js +3 -0
- package/http-server/types.js.map +1 -0
- package/http-server/utils.d.ts +30 -0
- package/http-server/utils.js +100 -0
- package/http-server/utils.js.map +1 -0
- package/logger/handler/console.d.ts +8 -0
- package/logger/handler/console.js +36 -0
- package/logger/handler/console.js.map +1 -0
- package/logger/handler/sentry.d.ts +8 -0
- package/logger/handler/sentry.js +36 -0
- package/logger/handler/sentry.js.map +1 -0
- package/logger/index.d.ts +6 -0
- package/logger/index.js +31 -0
- package/logger/index.js.map +1 -0
- package/logger/types.d.ts +24 -0
- package/logger/types.js +3 -0
- package/logger/types.js.map +1 -0
- package/metrics/constants.d.ts +4 -0
- package/metrics/constants.js +8 -0
- package/metrics/constants.js.map +1 -0
- package/metrics/node.d.ts +18 -0
- package/metrics/node.js +74 -0
- package/metrics/node.js.map +1 -0
- package/package.json +44 -63
- package/preset/index.d.ts +7 -0
- package/preset/index.js +25 -0
- package/preset/index.js.map +1 -0
- package/preset/node/index.d.ts +15 -0
- package/preset/node/index.js +90 -0
- package/preset/node/index.js.map +1 -0
- package/preset/node/response.d.ts +17 -0
- package/preset/node/response.js +78 -0
- package/preset/node/response.js.map +1 -0
- package/preset/types.d.ts +7 -0
- package/preset/types.js +3 -0
- package/preset/types.js.map +1 -0
- package/saga-runner/index.d.ts +8 -0
- package/saga-runner/index.js +79 -0
- package/saga-runner/index.js.map +1 -0
- package/saga-runner/types.d.ts +10 -0
- package/saga-runner/types.js +3 -0
- package/saga-runner/types.js.map +1 -0
- package/tokens.d.ts +41 -0
- package/tokens.js +44 -0
- package/tokens.js.map +1 -0
- package/tracer/node.d.ts +10 -0
- package/tracer/node.js +38 -0
- package/tracer/node.js.map +1 -0
- package/tracer/types.d.ts +2 -0
- package/tracer/types.js +3 -0
- package/tracer/types.js.map +1 -0
- package/{browser → utils/browser}/analytics/data-layer.d.ts +0 -0
- package/{browser → utils/browser}/analytics/data-layer.js +1 -2
- package/utils/browser/analytics/data-layer.js.map +1 -0
- package/{browser → utils/browser}/analytics/oko.d.ts +0 -0
- package/{browser → utils/browser}/analytics/oko.js +6 -7
- package/utils/browser/analytics/oko.js.map +1 -0
- package/utils/browser/storage/index.d.ts +4 -0
- package/utils/browser/storage/index.js +63 -0
- package/utils/browser/storage/index.js.map +1 -0
- package/utils/number.d.ts +6 -0
- package/utils/number.js +13 -0
- package/utils/number.js.map +1 -0
- package/utils/react/error-handlers/index.d.ts +38 -0
- package/utils/react/error-handlers/index.js +47 -0
- package/utils/react/error-handlers/index.js.map +1 -0
- package/utils/redux/remote-data.d.ts +23 -0
- package/utils/redux/remote-data.js +28 -0
- package/utils/redux/remote-data.js.map +1 -0
- package/utils/redux-saga/take-chain.d.ts +24 -0
- package/utils/redux-saga/take-chain.js +56 -0
- package/utils/redux-saga/take-chain.js.map +1 -0
- package/utils/webpack/module-federation/index.d.ts +21 -0
- package/utils/webpack/module-federation/index.js +74 -0
- package/utils/webpack/module-federation/index.js.map +1 -0
- package/utils/webpack/module-federation/types.d.ts +26 -0
- package/utils/webpack/module-federation/types.js +3 -0
- package/utils/webpack/module-federation/types.js.map +1 -0
- package/utils/webpack/module-federation/utils.d.ts +15 -0
- package/utils/webpack/module-federation/utils.js +36 -0
- package/utils/webpack/module-federation/utils.js.map +1 -0
- package/browser/analytics/data-layer.js.map +0 -1
- package/browser/analytics/oko.js.map +0 -1
- 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/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/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 -58
- package/module-federation/__example__/webpack-config.example.js.map +0 -1
- package/module-federation/enhanced-module-federation-plugin.d.ts +0 -69
- package/module-federation/enhanced-module-federation-plugin.js +0 -97
- package/module-federation/enhanced-module-federation-plugin.js.map +0 -1
- package/module-federation/utils/index.d.ts +0 -16
- package/module-federation/utils/index.js +0 -33
- 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/browser/analytics/data-layer.ts +0 -12
- package/src/browser/analytics/oko.ts +0 -42
- 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/middlewares/trace-request-middleware.ts +0 -86
- 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 -64
- package/src/module-federation/enhanced-module-federation-plugin.js +0 -119
- package/src/module-federation/utils/index.js +0 -39
- package/src/observe-middleware/index.js +0 -70
- package/src/set-header-middleware/create.js +0 -17
package/cache/types.d.ts
ADDED
package/cache/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/cache/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createConfigSource = void 0;
|
|
4
|
+
const env_1 = require("@humanwhocodes/env");
|
|
5
|
+
/**
|
|
6
|
+
* Возвращает "источник" для конфигурации.
|
|
7
|
+
* @return Источник.
|
|
8
|
+
*/
|
|
9
|
+
function createConfigSource() {
|
|
10
|
+
return new env_1.Env(process.env);
|
|
11
|
+
}
|
|
12
|
+
exports.createConfigSource = createConfigSource;
|
|
13
|
+
//# sourceMappingURL=browser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/config/browser.ts"],"names":[],"mappings":";;;AACA,4CAAyC;AAEzC;;;GAGG;AACH,SAAgB,kBAAkB;IAChC,OAAO,IAAI,SAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC;AAFD,gDAEC"}
|
package/config/index.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createBaseConfig = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Возвращает базовую конфигурацию.
|
|
6
|
+
* @param source Источник.
|
|
7
|
+
* @return Базовая конфигурация.
|
|
8
|
+
*/
|
|
9
|
+
function createBaseConfig(source) {
|
|
10
|
+
const env = source.require('NODE_ENV');
|
|
11
|
+
const appName = source.require('APP_NAME');
|
|
12
|
+
const appVersion = source.require('APP_VERSION');
|
|
13
|
+
return {
|
|
14
|
+
env,
|
|
15
|
+
appName,
|
|
16
|
+
appVersion,
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
exports.createBaseConfig = createBaseConfig;
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":";;;AAEA;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,MAAoB;IACnD,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAEjD,OAAO;QACL,GAAG;QACH,OAAO;QACP,UAAU;KACX,CAAC;AACJ,CAAC;AAVD,4CAUC"}
|
package/config/node.d.ts
ADDED
package/config/node.js
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createConfigSource = void 0;
|
|
4
|
+
const env_1 = require("@humanwhocodes/env");
|
|
5
|
+
const dotenv_1 = require("dotenv");
|
|
6
|
+
const utils_1 = require("./utils");
|
|
7
|
+
/**
|
|
8
|
+
* Возвращает "источник" для конфигурации.
|
|
9
|
+
* @return Источник.
|
|
10
|
+
*/
|
|
11
|
+
function createConfigSource() {
|
|
12
|
+
// определяем среду
|
|
13
|
+
const envName = (0, utils_1.defineEnvironment)();
|
|
14
|
+
// подключаем соответствующий среде файл со значениями по умолчанию
|
|
15
|
+
(0, dotenv_1.config)({ path: `./.env.${envName}` });
|
|
16
|
+
return new env_1.Env(process.env);
|
|
17
|
+
}
|
|
18
|
+
exports.createConfigSource = createConfigSource;
|
|
19
|
+
//# sourceMappingURL=node.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/config/node.ts"],"names":[],"mappings":";;;AACA,4CAAyC;AACzC,mCAAgC;AAChC,mCAA4C;AAE5C;;;GAGG;AACH,SAAgB,kBAAkB;IAChC,mBAAmB;IACnB,MAAM,OAAO,GAAG,IAAA,yBAAiB,GAAE,CAAC;IAEpC,mEAAmE;IACnE,IAAA,eAAM,EAAC,EAAE,IAAI,EAAE,UAAU,OAAO,EAAE,EAAE,CAAC,CAAC;IAEtC,OAAO,IAAI,SAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC;AARD,gDAQC"}
|
package/config/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":""}
|
package/config/utils.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.defineEnvironment = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Возвращает значение process.env.NODE_ENV или "unknown".
|
|
6
|
+
* @return Значение.
|
|
7
|
+
*/
|
|
8
|
+
function defineEnvironment() {
|
|
9
|
+
return process.env.NODE_ENV || 'unknown';
|
|
10
|
+
}
|
|
11
|
+
exports.defineEnvironment = defineEnvironment;
|
|
12
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/config/utils.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,SAAgB,iBAAiB;IAC/B,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,SAAS,CAAC;AAC3C,CAAC;AAFD,8CAEC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { Provider, Token } from './types';
|
|
2
|
+
import type { Preset } from '../preset/types';
|
|
3
|
+
declare type ExtractType<T extends readonly Token<any>[]> = {
|
|
4
|
+
[index in keyof T]: T[index] extends T[number] ? ReturnType<T[index]['_resolve']> : never;
|
|
5
|
+
};
|
|
6
|
+
interface Binding<T> {
|
|
7
|
+
toValue: (value: T) => void;
|
|
8
|
+
toProvider: (provider: Provider<T>) => void;
|
|
9
|
+
}
|
|
10
|
+
export declare class Application {
|
|
11
|
+
private container?;
|
|
12
|
+
private parent?;
|
|
13
|
+
private presets;
|
|
14
|
+
private providers;
|
|
15
|
+
static readonly self: Token<never>;
|
|
16
|
+
constructor();
|
|
17
|
+
bind<T>(token: Token<T>): Binding<T>;
|
|
18
|
+
get<T>(token: Token<T>): T;
|
|
19
|
+
private getContainer;
|
|
20
|
+
private configureContainer;
|
|
21
|
+
attach(parent: Application): void;
|
|
22
|
+
preset(preset: Preset): void;
|
|
23
|
+
invoke<Tokens extends readonly Token<any>[]>(tokens: [...Tokens], fn: (...args: ExtractType<Tokens>) => void): void;
|
|
24
|
+
}
|
|
25
|
+
export {};
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Application = void 0;
|
|
4
|
+
const _1 = require(".");
|
|
5
|
+
class Application {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.providers = new Map();
|
|
8
|
+
this.presets = [];
|
|
9
|
+
}
|
|
10
|
+
bind(token) {
|
|
11
|
+
return {
|
|
12
|
+
toValue: value => {
|
|
13
|
+
this.providers.set(token, () => value);
|
|
14
|
+
},
|
|
15
|
+
toProvider: provider => {
|
|
16
|
+
this.providers.set(token, provider);
|
|
17
|
+
},
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
get(token) {
|
|
21
|
+
try {
|
|
22
|
+
return this.getContainer().get(token);
|
|
23
|
+
}
|
|
24
|
+
catch (error) {
|
|
25
|
+
if (error instanceof _1.NothingBoundError && this.parent) {
|
|
26
|
+
return this.parent.get(token);
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
throw error;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
getContainer() {
|
|
34
|
+
if (!this.container) {
|
|
35
|
+
this.container = this.configureContainer();
|
|
36
|
+
}
|
|
37
|
+
return this.container;
|
|
38
|
+
}
|
|
39
|
+
configureContainer() {
|
|
40
|
+
const container = (0, _1.createContainer)();
|
|
41
|
+
container.set(Application.self, () => this);
|
|
42
|
+
for (const preset of this.presets) {
|
|
43
|
+
preset.apply(this);
|
|
44
|
+
}
|
|
45
|
+
const resolve = token => this.get(token);
|
|
46
|
+
for (const [token, provider] of this.providers) {
|
|
47
|
+
container.set(token, () => provider(resolve));
|
|
48
|
+
}
|
|
49
|
+
return container;
|
|
50
|
+
}
|
|
51
|
+
attach(parent) {
|
|
52
|
+
this.parent = parent;
|
|
53
|
+
}
|
|
54
|
+
preset(preset) {
|
|
55
|
+
this.presets.push(preset);
|
|
56
|
+
}
|
|
57
|
+
invoke(tokens, fn) {
|
|
58
|
+
fn(...tokens.map(token => this.get(token)));
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
exports.Application = Application;
|
|
62
|
+
Application.self = (0, _1.createToken)('application/self');
|
|
63
|
+
//# sourceMappingURL=application.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"application.js","sourceRoot":"","sources":["../../src/container/application.ts"],"names":[],"mappings":";;;AAGA,wBAAoE;AAWpE,MAAa,WAAW;IAQtB;QACE,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;IACpB,CAAC;IAED,IAAI,CAAI,KAAe;QACrB,OAAO;YACL,OAAO,EAAE,KAAK,CAAC,EAAE;gBACf,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;YACzC,CAAC;YACD,UAAU,EAAE,QAAQ,CAAC,EAAE;gBACrB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YACtC,CAAC;SACF,CAAC;IACJ,CAAC;IAED,GAAG,CAAI,KAAe;QACpB,IAAI;YACF,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SACvC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,oBAAiB,IAAI,IAAI,CAAC,MAAM,EAAE;gBACrD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;aAC/B;iBAAM;gBACL,MAAM,KAAK,CAAC;aACb;SACF;IACH,CAAC;IAEO,YAAY;QAClB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;SAC5C;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAEO,kBAAkB;QACxB,MAAM,SAAS,GAAG,IAAA,kBAAe,GAAE,CAAC;QAEpC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAE5C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YACjC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SACpB;QAED,MAAM,OAAO,GAAY,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAElD,KAAK,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE;YAC9C,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;SAC/C;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,MAAmB;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,MAAc;QACnB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,CACJ,MAAmB,EACnB,EAA0C;QAE1C,EAAE,CAAC,GAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAS,CAAC,CAAC;IACvD,CAAC;;AA3EH,kCA4EC;AAtEiB,gBAAI,GAAG,IAAA,cAAW,EAAC,kBAAkB,CAAC,CAAC"}
|
package/container/index.d.ts
CHANGED
|
@@ -1,15 +1,18 @@
|
|
|
1
|
+
import type { Container, Token } from './types';
|
|
1
2
|
/**
|
|
2
|
-
*
|
|
3
|
-
* @param
|
|
4
|
-
* @
|
|
5
|
-
* @param {Object} options.parent Родительский контейнер.
|
|
6
|
-
* @return {Object} IoC Container.
|
|
7
|
-
* @throws {TypeError} Выдаст ошибку если параметр "services" не массив.
|
|
3
|
+
* Возвращает новый токен.
|
|
4
|
+
* @param name Имя токена для отладки в случае ошибок.
|
|
5
|
+
* @return Токен.
|
|
8
6
|
*/
|
|
9
|
-
export
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}
|
|
13
|
-
export
|
|
14
|
-
|
|
15
|
-
|
|
7
|
+
export declare function createToken<T = never>(name?: string): Token<T>;
|
|
8
|
+
export declare class NothingBoundError extends Error {
|
|
9
|
+
constructor(key: symbol);
|
|
10
|
+
}
|
|
11
|
+
export declare class CircularDependencyError extends Error {
|
|
12
|
+
constructor(trace: Token<any>[]);
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Возвращает новый DI-контейнер.
|
|
16
|
+
* @return DI-контейнер.
|
|
17
|
+
*/
|
|
18
|
+
export declare function createContainer(): Container;
|
package/container/index.js
CHANGED
|
@@ -1,175 +1,74 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.
|
|
16
|
-
const isString_1 = __importDefault(require("lodash/isString"));
|
|
17
|
-
const isFunction_1 = __importDefault(require("lodash/isFunction"));
|
|
18
|
-
const service_not_found_error_1 = __importDefault(require("./service-not-found-error"));
|
|
19
|
-
const get_dependencies_1 = __importDefault(require("./get-dependencies"));
|
|
20
|
-
const is_container_1 = __importDefault(require("./is-container"));
|
|
21
|
-
const is_not_empty_string_1 = __importDefault(require("../helpers/utils/is-not-empty-string"));
|
|
3
|
+
exports.createContainer = exports.CircularDependencyError = exports.NothingBoundError = exports.createToken = void 0;
|
|
22
4
|
/**
|
|
23
|
-
*
|
|
24
|
-
* @param
|
|
25
|
-
* @
|
|
26
|
-
* @return {Function} Функция-сервис, для использования в контейнере.
|
|
5
|
+
* Возвращает новый токен.
|
|
6
|
+
* @param name Имя токена для отладки в случае ошибок.
|
|
7
|
+
* @return Токен.
|
|
27
8
|
*/
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
* @return {function(): Object} Функция для получения контейнера-синглтона.
|
|
34
|
-
*/
|
|
35
|
-
const createSingleton = options => {
|
|
36
|
-
let container;
|
|
37
|
-
return () => {
|
|
38
|
-
if (!container) {
|
|
39
|
-
container = create(options);
|
|
40
|
-
}
|
|
41
|
-
return container;
|
|
9
|
+
function createToken(name) {
|
|
10
|
+
const key = Symbol(name);
|
|
11
|
+
return {
|
|
12
|
+
_key: key,
|
|
13
|
+
_resolve: (registry) => registry.get(key),
|
|
42
14
|
};
|
|
43
|
-
}
|
|
44
|
-
exports.
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
*/
|
|
50
|
-
const createFactory = options => () => create(options);
|
|
51
|
-
exports.createFactory = createFactory;
|
|
52
|
-
/**
|
|
53
|
-
* Реализует наследование контейнера от другого контейнера.
|
|
54
|
-
* @param {Object} container Дочерний контейнер.
|
|
55
|
-
* @param {Object} parentContainer Родительский контейнер.
|
|
56
|
-
* @return {Object} Контейнер с поиском зависимости в родителе.
|
|
57
|
-
*/
|
|
58
|
-
const inherit = (container, parentContainer) => {
|
|
59
|
-
let result = container;
|
|
60
|
-
if (is_container_1.default(parentContainer)) {
|
|
61
|
-
result = Object.assign(Object.assign({}, container), {
|
|
62
|
-
/**
|
|
63
|
-
* Оборачивает получение зависимости для добавления поиска в родительском контейнере.
|
|
64
|
-
* @param {string} name Название зависимости.
|
|
65
|
-
* @return {*} Зависимость.
|
|
66
|
-
* @throws {TypeError} Выдаст ошибку если параметр "name" не строка.
|
|
67
|
-
* @throws {Error} Выдаст ошибку если параметр "name" не строка или пустая строка.
|
|
68
|
-
* @throws {ServiceNotFoundError} Выдаст ошибку при попытке вызвать незарегистрированный сервис.
|
|
69
|
-
*/
|
|
70
|
-
get(name) {
|
|
71
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
72
|
-
let dependency;
|
|
73
|
-
try {
|
|
74
|
-
dependency = yield container.get(name);
|
|
75
|
-
}
|
|
76
|
-
catch (e) {
|
|
77
|
-
if (e instanceof service_not_found_error_1.default) {
|
|
78
|
-
dependency = yield parentContainer.get(name);
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
throw e;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
return dependency;
|
|
85
|
-
});
|
|
86
|
-
} });
|
|
15
|
+
}
|
|
16
|
+
exports.createToken = createToken;
|
|
17
|
+
class NothingBoundError extends Error {
|
|
18
|
+
constructor(key) {
|
|
19
|
+
super(`Nothing bound to ${String(key)}`);
|
|
20
|
+
this.name = 'NothingBoundError';
|
|
87
21
|
}
|
|
88
|
-
|
|
89
|
-
|
|
22
|
+
}
|
|
23
|
+
exports.NothingBoundError = NothingBoundError;
|
|
24
|
+
class CircularDependencyError extends Error {
|
|
25
|
+
constructor(trace) {
|
|
26
|
+
const names = trace.map(token => String(token._key)).join(' >> ');
|
|
27
|
+
super(`Circular dependency found, trace: ${names}`);
|
|
28
|
+
this.name = 'CircularDependencyError';
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
exports.CircularDependencyError = CircularDependencyError;
|
|
90
32
|
/**
|
|
91
|
-
*
|
|
92
|
-
* @
|
|
93
|
-
* @param {Array} options.services Массив сервисов, которые нужно зарегистрировать.
|
|
94
|
-
* @param {Object} options.parent Родительский контейнер.
|
|
95
|
-
* @return {Object} IoC Container.
|
|
96
|
-
* @throws {TypeError} Выдаст ошибку если параметр "services" не массив.
|
|
33
|
+
* Возвращает новый DI-контейнер.
|
|
34
|
+
* @return DI-контейнер.
|
|
97
35
|
*/
|
|
98
|
-
function
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
set({ name, singleton, factory, value, dependencies = [] } = {}) {
|
|
116
|
-
if (!isString_1.default(name) || name === '') {
|
|
117
|
-
throw new Error('Параметр "name" должен быть непустой строкой');
|
|
118
|
-
}
|
|
119
|
-
if (factory !== undefined && !isFunction_1.default(factory)) {
|
|
120
|
-
throw new TypeError('Параметр "factory" должен быть функцией');
|
|
121
|
-
}
|
|
122
|
-
if (singleton !== undefined && !isFunction_1.default(singleton)) {
|
|
123
|
-
throw new TypeError('Параметр "singleton" должен быть функцией');
|
|
124
|
-
}
|
|
125
|
-
if (factory === undefined && value === undefined && singleton === undefined) {
|
|
126
|
-
throw Error(`Сервис ${name} не зарегистрирован,
|
|
127
|
-
так как обязательно должен быть передан один из параметров "factory", "singleton" или "value"`);
|
|
36
|
+
function createContainer() {
|
|
37
|
+
const cache = new Map();
|
|
38
|
+
const registry = new Map();
|
|
39
|
+
function resolve(token, chain) {
|
|
40
|
+
if (chain.includes(token)) {
|
|
41
|
+
throw new CircularDependencyError([...chain, token]);
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
chain.push(token);
|
|
45
|
+
}
|
|
46
|
+
if (cache.has(token._key)) {
|
|
47
|
+
return cache.get(token._key);
|
|
48
|
+
}
|
|
49
|
+
else if (registry.has(token._key)) {
|
|
50
|
+
const provider = registry.get(token._key);
|
|
51
|
+
if (typeof provider !== 'function') {
|
|
52
|
+
throw new Error('Provider is not a function');
|
|
128
53
|
}
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
54
|
+
const value = provider(otherToken => resolve(otherToken, chain));
|
|
55
|
+
// всегда как singleton
|
|
56
|
+
cache.set(token._key, value);
|
|
57
|
+
return value;
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
throw new NothingBoundError(token._key);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
const container = {
|
|
64
|
+
set(token, provider) {
|
|
65
|
+
registry.set(token._key, provider);
|
|
136
66
|
},
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
* @param {string} name Название зависимости.
|
|
140
|
-
* @param {string} serviceName Название сервиса.
|
|
141
|
-
* @return {*} Зависимость.
|
|
142
|
-
* @throws {TypeError} Выдаст ошибку если параметр "name" не строка.
|
|
143
|
-
* @throws {Error} Выдаст ошибку если параметр "name" не строка или пустая строка.
|
|
144
|
-
* @throws {ServiceNotFoundError} Выдаст ошибку при попытке вызвать незарегистрированный сервис.
|
|
145
|
-
*/
|
|
146
|
-
get(name, serviceName = '') {
|
|
147
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
148
|
-
if (!isString_1.default(name) || name === '') {
|
|
149
|
-
throw new Error('Параметр "name" должен быть непустой строкой');
|
|
150
|
-
}
|
|
151
|
-
const service = registry[name];
|
|
152
|
-
let dependency;
|
|
153
|
-
if (!service) {
|
|
154
|
-
throw new service_not_found_error_1.default(is_not_empty_string_1.default(serviceName)
|
|
155
|
-
? `Не найдена зависимость "${name}" в цепочке вызовов "${serviceName}"`
|
|
156
|
-
: `Сервис "${name}" не зарегистрирован`);
|
|
157
|
-
}
|
|
158
|
-
if (service.singleton && !service.value) {
|
|
159
|
-
service.value = yield service.singleton(Object.assign({}, yield get_dependencies_1.default(container, service.dependencies, `${serviceName}/${name}`)));
|
|
160
|
-
}
|
|
161
|
-
if (service.value !== undefined) {
|
|
162
|
-
dependency = service.value;
|
|
163
|
-
}
|
|
164
|
-
if (service.factory) {
|
|
165
|
-
dependency = yield service.factory(Object.assign({}, yield get_dependencies_1.default(container, service.dependencies, `${serviceName}/${name}`)));
|
|
166
|
-
}
|
|
167
|
-
return dependency;
|
|
168
|
-
});
|
|
67
|
+
get(token) {
|
|
68
|
+
return resolve(token, []);
|
|
169
69
|
},
|
|
170
|
-
}
|
|
171
|
-
services.forEach(service => container.set(service));
|
|
70
|
+
};
|
|
172
71
|
return container;
|
|
173
72
|
}
|
|
174
|
-
exports.
|
|
73
|
+
exports.createContainer = createContainer;
|
|
175
74
|
//# sourceMappingURL=index.js.map
|
package/container/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/container/index.
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/container/index.ts"],"names":[],"mappings":";;;AAGA;;;;GAIG;AACH,SAAgB,WAAW,CAAY,IAAa;IAClD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAEzB,OAAO;QACL,IAAI,EAAE,GAAG;QACT,QAAQ,EAAE,CAAC,QAA0B,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAM;KACjE,CAAC;AACJ,CAAC;AAPD,kCAOC;AAED,MAAa,iBAAkB,SAAQ,KAAK;IAC1C,YAAY,GAAW;QACrB,KAAK,CAAC,oBAAoB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AALD,8CAKC;AAED,MAAa,uBAAwB,SAAQ,KAAK;IAChD,YAAY,KAAmB;QAC7B,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClE,KAAK,CAAC,qCAAqC,KAAK,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACxC,CAAC;CACF;AAND,0DAMC;AAED;;;GAGG;AACH,SAAgB,eAAe;IAC7B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAe,CAAC;IACrC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAyB,CAAC;IAElD,SAAS,OAAO,CAAI,KAAe,EAAE,KAAmB;QACtD,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YACzB,MAAM,IAAI,uBAAuB,CAAC,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;SACtD;aAAM;YACL,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACnB;QAED,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YACzB,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAC9B;aAAM,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YACnC,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAE1C,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;gBAClC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;aAC/C;YAED,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;YAEjE,uBAAuB;YACvB,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAE7B,OAAO,KAAK,CAAC;SACd;aAAM;YACL,MAAM,IAAI,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SACzC;IACH,CAAC;IAED,MAAM,SAAS,GAAG;QAChB,GAAG,CAAI,KAAe,EAAE,QAAqB;YAC3C,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrC,CAAC;QAED,GAAG,CAAI,KAAe;YACpB,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC5B,CAAC;KACF,CAAC;IAEF,OAAO,SAAS,CAAC;AACnB,CAAC;AA1CD,0CA0CC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface Token<T> {
|
|
2
|
+
readonly _key: symbol;
|
|
3
|
+
readonly _resolve: (registry: Map<symbol, any>) => T;
|
|
4
|
+
}
|
|
5
|
+
export interface Resolve {
|
|
6
|
+
<T>(token: Token<T>): T;
|
|
7
|
+
}
|
|
8
|
+
export interface Provider<T> {
|
|
9
|
+
(resolve: Resolve): T;
|
|
10
|
+
}
|
|
11
|
+
export interface Container {
|
|
12
|
+
set: <T = never>(token: Token<T>, provider: Provider<T>) => void;
|
|
13
|
+
get: Resolve;
|
|
14
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/container/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { SentryLib } from './types';
|
|
2
|
+
import * as Sentry from '@sentry/browser';
|
|
3
|
+
/**
|
|
4
|
+
* Возвращает новый набор из клиента Sentry и функций из пакета Sentry.
|
|
5
|
+
* @param options Опции создания клиента.
|
|
6
|
+
* @return Новый набор из клиента Sentry и функций из пакета Sentry.
|
|
7
|
+
*/
|
|
8
|
+
export declare function createSentryLib(options: Sentry.BrowserOptions): SentryLib;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.createSentryLib = void 0;
|
|
27
|
+
const Sentry = __importStar(require("@sentry/browser"));
|
|
28
|
+
/**
|
|
29
|
+
* Возвращает новый набор из клиента Sentry и функций из пакета Sentry.
|
|
30
|
+
* @param options Опции создания клиента.
|
|
31
|
+
* @return Новый набор из клиента Sentry и функций из пакета Sentry.
|
|
32
|
+
*/
|
|
33
|
+
function createSentryLib(options) {
|
|
34
|
+
return {
|
|
35
|
+
client: new Sentry.BrowserClient(options),
|
|
36
|
+
withScope: Sentry.withScope,
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
exports.createSentryLib = createSentryLib;
|
|
40
|
+
//# sourceMappingURL=browser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/error-tracker/browser.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,wDAA0C;AAE1C;;;;GAIG;AACH,SAAgB,eAAe,CAAC,OAA8B;IAC5D,OAAO;QACL,MAAM,EAAE,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC;QACzC,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC;AACJ,CAAC;AALD,0CAKC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { SentryLib } from './types';
|
|
2
|
+
import * as Sentry from '@sentry/node';
|
|
3
|
+
/**
|
|
4
|
+
* Возвращает новый набор из клиента Sentry и функций из пакета Sentry.
|
|
5
|
+
* @param options Опции создания клиента.
|
|
6
|
+
* @return Новый набор из клиента Sentry и функций из пакета Sentry.
|
|
7
|
+
*/
|
|
8
|
+
export declare function createSentryLib(options: Sentry.NodeOptions): SentryLib;
|