@sima-land/isomorph 9.0.7 → 11.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/dist/cache/types.d.ts +7 -0
- package/dist/cache/types.js +3 -0
- package/dist/cache/types.js.map +1 -0
- package/dist/config/browser.d.ts +6 -0
- package/dist/config/browser.js +13 -0
- package/dist/config/browser.js.map +1 -0
- package/dist/config/index.d.ts +7 -0
- package/dist/config/index.js +20 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/node.d.ts +6 -0
- package/dist/config/node.js +19 -0
- package/dist/config/node.js.map +1 -0
- package/dist/config/types.d.ts +7 -0
- package/dist/config/types.js +3 -0
- package/dist/config/types.js.map +1 -0
- package/dist/config/utils.d.ts +5 -0
- package/dist/config/utils.js +12 -0
- package/dist/config/utils.js.map +1 -0
- package/dist/container/application.d.ts +25 -0
- package/dist/container/application.js +63 -0
- package/dist/container/application.js.map +1 -0
- package/dist/container/index.d.ts +18 -0
- package/dist/container/index.js +74 -0
- package/dist/container/index.js.map +1 -0
- package/dist/container/types.d.ts +14 -0
- package/dist/container/types.js +3 -0
- package/dist/container/types.js.map +1 -0
- package/dist/error-tracker/browser.d.ts +8 -0
- package/dist/error-tracker/browser.js +40 -0
- package/dist/error-tracker/browser.js.map +1 -0
- package/dist/error-tracker/node.d.ts +8 -0
- package/dist/error-tracker/node.js +40 -0
- package/dist/error-tracker/node.js.map +1 -0
- package/dist/error-tracker/types.d.ts +18 -0
- package/dist/error-tracker/types.js +3 -0
- package/dist/error-tracker/types.js.map +1 -0
- package/dist/error-tracker/utils.d.ts +12 -0
- package/dist/error-tracker/utils.js +19 -0
- package/dist/error-tracker/utils.js.map +1 -0
- package/dist/http-client/middleware/cookie.d.ts +19 -0
- package/dist/http-client/middleware/cookie.js +62 -0
- package/dist/http-client/middleware/cookie.js.map +1 -0
- package/dist/http-client/middleware/tracing.d.ts +32 -0
- package/dist/http-client/middleware/tracing.js +67 -0
- package/dist/http-client/middleware/tracing.js.map +1 -0
- package/dist/http-client/types.d.ts +6 -0
- package/dist/http-client/types.js +3 -0
- package/dist/http-client/types.js.map +1 -0
- package/dist/http-client/utils.d.ts +36 -0
- package/dist/http-client/utils.js +49 -0
- package/dist/http-client/utils.js.map +1 -0
- package/dist/http-server/constants.d.ts +4 -0
- package/dist/http-server/constants.js +8 -0
- package/dist/http-server/constants.js.map +1 -0
- package/dist/http-server/handler/health-check.d.ts +6 -0
- package/dist/http-server/handler/health-check.js +15 -0
- package/dist/http-server/handler/health-check.js.map +1 -0
- package/dist/http-server/middleware/logging.d.ts +10 -0
- package/dist/http-server/middleware/logging.js +31 -0
- package/dist/http-server/middleware/logging.js.map +1 -0
- package/dist/http-server/middleware/metrics.d.ts +23 -0
- package/dist/http-server/middleware/metrics.js +60 -0
- package/dist/http-server/middleware/metrics.js.map +1 -0
- package/dist/http-server/middleware/tracing.d.ts +8 -0
- package/dist/http-server/middleware/tracing.js +32 -0
- package/dist/http-server/middleware/tracing.js.map +1 -0
- package/dist/http-server/types.d.ts +25 -0
- package/dist/http-server/types.js +3 -0
- package/dist/http-server/types.js.map +1 -0
- package/dist/http-server/utils.d.ts +26 -0
- package/dist/http-server/utils.js +88 -0
- package/dist/http-server/utils.js.map +1 -0
- package/dist/logger/handler/console.d.ts +8 -0
- package/dist/logger/handler/console.js +36 -0
- package/dist/logger/handler/console.js.map +1 -0
- package/dist/logger/handler/sentry.d.ts +8 -0
- package/dist/logger/handler/sentry.js +36 -0
- package/dist/logger/handler/sentry.js.map +1 -0
- package/dist/logger/index.d.ts +6 -0
- package/dist/logger/index.js +31 -0
- package/dist/logger/index.js.map +1 -0
- package/dist/logger/types.d.ts +24 -0
- package/dist/logger/types.js +3 -0
- package/dist/logger/types.js.map +1 -0
- package/dist/metrics/constants.d.ts +4 -0
- package/dist/metrics/constants.js +8 -0
- package/dist/metrics/constants.js.map +1 -0
- package/dist/metrics/node.d.ts +18 -0
- package/dist/metrics/node.js +74 -0
- package/dist/metrics/node.js.map +1 -0
- package/dist/preset/index.d.ts +7 -0
- package/dist/preset/index.js +23 -0
- package/dist/preset/index.js.map +1 -0
- package/dist/preset/node/index.d.ts +15 -0
- package/dist/preset/node/index.js +90 -0
- package/dist/preset/node/index.js.map +1 -0
- package/dist/preset/node/response.d.ts +12 -0
- package/dist/preset/node/response.js +52 -0
- package/dist/preset/node/response.js.map +1 -0
- package/dist/preset/types.d.ts +7 -0
- package/dist/preset/types.js +3 -0
- package/dist/preset/types.js.map +1 -0
- package/dist/saga-runner/index.d.ts +8 -0
- package/dist/saga-runner/index.js +77 -0
- package/dist/saga-runner/index.js.map +1 -0
- package/dist/saga-runner/types.d.ts +10 -0
- package/dist/saga-runner/types.js +3 -0
- package/dist/saga-runner/types.js.map +1 -0
- package/dist/tokens.d.ts +40 -0
- package/dist/tokens.js +43 -0
- package/dist/tokens.js.map +1 -0
- package/dist/tracer/node.d.ts +10 -0
- package/dist/tracer/node.js +38 -0
- package/dist/tracer/node.js.map +1 -0
- package/dist/tracer/types.d.ts +2 -0
- package/dist/tracer/types.js +3 -0
- package/dist/tracer/types.js.map +1 -0
- package/dist/utils/browser/analytics/data-layer.d.ts +5 -0
- package/dist/utils/browser/analytics/data-layer.js +15 -0
- package/dist/utils/browser/analytics/data-layer.js.map +1 -0
- package/{helpers/analytics/index.d.ts → dist/utils/browser/analytics/oko.d.ts} +1 -6
- package/{helpers/analytics/index.js → dist/utils/browser/analytics/oko.js} +11 -20
- package/dist/utils/browser/analytics/oko.js.map +1 -0
- package/dist/utils/browser/storage/index.d.ts +4 -0
- package/dist/utils/browser/storage/index.js +63 -0
- package/dist/utils/browser/storage/index.js.map +1 -0
- package/dist/utils/number.d.ts +6 -0
- package/dist/utils/number.js +13 -0
- package/dist/utils/number.js.map +1 -0
- package/dist/utils/react/error-handlers/index.d.ts +38 -0
- package/dist/utils/react/error-handlers/index.js +47 -0
- package/dist/utils/react/error-handlers/index.js.map +1 -0
- package/dist/utils/redux/remote-data.d.ts +23 -0
- package/dist/utils/redux/remote-data.js +28 -0
- package/dist/utils/redux/remote-data.js.map +1 -0
- package/dist/utils/redux-saga/take-chain.d.ts +24 -0
- package/dist/utils/redux-saga/take-chain.js +56 -0
- package/dist/utils/redux-saga/take-chain.js.map +1 -0
- package/dist/utils/webpack/module-federation/index.d.ts +21 -0
- package/dist/utils/webpack/module-federation/index.js +74 -0
- package/dist/utils/webpack/module-federation/index.js.map +1 -0
- package/dist/utils/webpack/module-federation/types.d.ts +26 -0
- package/dist/utils/webpack/module-federation/types.js +3 -0
- package/dist/utils/webpack/module-federation/types.js.map +1 -0
- package/dist/utils/webpack/module-federation/utils.d.ts +15 -0
- package/dist/utils/webpack/module-federation/utils.js +36 -0
- package/dist/utils/webpack/module-federation/utils.js.map +1 -0
- package/package.json +50 -68
- package/readme.md +23 -0
- package/src/cache/types.ts +7 -0
- package/src/config/browser.ts +10 -0
- package/src/config/index.ts +18 -0
- package/src/config/node.ts +18 -0
- package/src/config/types.ts +9 -0
- package/src/config/utils.ts +7 -0
- package/src/container/application.ts +91 -0
- package/src/container/index.ts +79 -0
- package/src/container/types.ts +17 -0
- package/src/error-tracker/browser.ts +14 -0
- package/src/error-tracker/node.ts +14 -0
- package/src/error-tracker/types.ts +22 -0
- package/src/error-tracker/utils.ts +18 -0
- package/src/http-client/middleware/cookie.ts +73 -0
- package/src/{helpers/api/middlewares/trace-request-middleware.ts → http-client/middleware/tracing.ts} +28 -35
- package/src/http-client/types.ts +8 -0
- package/src/http-client/utils.ts +76 -0
- package/src/http-server/constants.ts +4 -0
- package/src/http-server/handler/health-check.ts +13 -0
- package/src/http-server/middleware/logging.ts +34 -0
- package/src/http-server/middleware/metrics.ts +87 -0
- package/src/http-server/middleware/tracing.ts +35 -0
- package/src/http-server/types.ts +29 -0
- package/src/http-server/utils.ts +105 -0
- package/src/logger/handler/console.ts +35 -0
- package/src/logger/handler/sentry.ts +38 -0
- package/src/logger/index.ts +31 -0
- package/src/logger/types.ts +28 -0
- package/src/metrics/constants.ts +4 -0
- package/src/metrics/node.ts +54 -0
- package/src/preset/index.ts +24 -0
- package/src/preset/node/index.ts +101 -0
- package/src/preset/node/response.ts +57 -0
- package/src/preset/types.ts +9 -0
- package/src/saga-runner/index.ts +59 -0
- package/src/saga-runner/types.ts +13 -0
- package/src/tokens.ts +54 -0
- package/src/tracer/node.ts +40 -0
- package/src/tracer/types.ts +3 -0
- package/src/utils/browser/analytics/__test__/data-layer.test.ts +50 -0
- package/src/utils/browser/analytics/__test__/oko.test.tsx +143 -0
- package/src/utils/browser/analytics/data-layer.ts +12 -0
- package/src/{helpers/analytics/index.ts → utils/browser/analytics/oko.ts} +10 -15
- package/src/utils/browser/storage/index.ts +75 -0
- package/src/utils/number.ts +8 -0
- package/src/utils/react/error-handlers/__test__/__snapshots__/index.test.tsx.snap +27 -0
- package/src/utils/react/error-handlers/__test__/index.test.tsx +64 -0
- package/src/utils/react/error-handlers/index.tsx +62 -0
- package/src/utils/redux/__test__/remote-data.test.ts +50 -0
- package/src/utils/redux/remote-data.ts +34 -0
- package/src/utils/redux-saga/__test__/take-chain.test.ts +141 -0
- package/src/utils/redux-saga/take-chain.ts +65 -0
- package/src/utils/webpack/module-federation/__test__/index.test.ts +246 -0
- package/src/utils/webpack/module-federation/index.ts +92 -0
- package/src/utils/webpack/module-federation/types.ts +44 -0
- package/src/utils/webpack/module-federation/utils.ts +43 -0
- package/cache/helpers.d.ts +0 -4
- package/cache/helpers.js +0 -39
- package/cache/helpers.js.map +0 -1
- package/cache/local-storage.d.ts +0 -34
- package/cache/local-storage.js +0 -90
- package/cache/local-storage.js.map +0 -1
- package/cache/redis.d.ts +0 -10
- package/cache/redis.js +0 -54
- package/cache/redis.js.map +0 -1
- package/cache/wrap-in-trace.d.ts +0 -8
- package/cache/wrap-in-trace.js +0 -68
- package/cache/wrap-in-trace.js.map +0 -1
- package/config/create.d.ts +0 -8
- package/config/create.js +0 -32
- package/config/create.js.map +0 -1
- package/config/helpers.d.ts +0 -11
- package/config/helpers.js +0 -71
- package/config/helpers.js.map +0 -1
- package/config/validate.d.ts +0 -18
- package/config/validate.js +0 -107
- package/config/validate.js.map +0 -1
- package/container/create-inject.d.ts +0 -7
- package/container/create-inject.js +0 -36
- package/container/create-inject.js.map +0 -1
- package/container/get-dependencies.d.ts +0 -13
- package/container/get-dependencies.js +0 -54
- package/container/get-dependencies.js.map +0 -1
- package/container/index.d.ts +0 -15
- package/container/index.js +0 -175
- package/container/index.js.map +0 -1
- package/container/is-container.d.ts +0 -7
- package/container/is-container.js +0 -17
- package/container/is-container.js.map +0 -1
- package/container/service-not-found-error.d.ts +0 -10
- package/container/service-not-found-error.js +0 -18
- package/container/service-not-found-error.js.map +0 -1
- package/create-proxy/create-proxy-middleware/index.d.ts +0 -16
- package/create-proxy/create-proxy-middleware/index.js +0 -47
- package/create-proxy/create-proxy-middleware/index.js.map +0 -1
- package/create-proxy/index.d.ts +0 -12
- package/create-proxy/index.js +0 -25
- package/create-proxy/index.js.map +0 -1
- package/create-response-sender/index.d.ts +0 -8
- package/create-response-sender/index.js +0 -42
- package/create-response-sender/index.js.map +0 -1
- package/get-dynamic-data/index.d.ts +0 -8
- package/get-dynamic-data/index.js +0 -23
- package/get-dynamic-data/index.js.map +0 -1
- package/graceful-shutdown/index.d.ts +0 -26
- package/graceful-shutdown/index.js +0 -87
- package/graceful-shutdown/index.js.map +0 -1
- package/helpers/add-error-handling/index.d.ts +0 -1
- package/helpers/add-error-handling/index.js +0 -42
- package/helpers/add-error-handling/index.js.map +0 -1
- package/helpers/analytics/index.js.map +0 -1
- package/helpers/api/create-enhancer.d.ts +0 -12
- package/helpers/api/create-enhancer.js +0 -52
- package/helpers/api/create-enhancer.js.map +0 -1
- package/helpers/api/create-instance.d.ts +0 -11
- package/helpers/api/create-instance.js +0 -39
- package/helpers/api/create-instance.js.map +0 -1
- package/helpers/api/middlewares/collect-cookie-middleware.d.ts +0 -10
- package/helpers/api/middlewares/collect-cookie-middleware.js +0 -39
- package/helpers/api/middlewares/collect-cookie-middleware.js.map +0 -1
- package/helpers/api/middlewares/count-api-response-time.d.ts +0 -12
- package/helpers/api/middlewares/count-api-response-time.js +0 -39
- package/helpers/api/middlewares/count-api-response-time.js.map +0 -1
- package/helpers/api/middlewares/error-handlers-middlewares.d.ts +0 -5
- package/helpers/api/middlewares/error-handlers-middlewares.js +0 -114
- package/helpers/api/middlewares/error-handlers-middlewares.js.map +0 -1
- package/helpers/api/middlewares/helpers.d.ts +0 -11
- package/helpers/api/middlewares/helpers.js +0 -27
- package/helpers/api/middlewares/helpers.js.map +0 -1
- package/helpers/api/middlewares/pass-headers-middleware.d.ts +0 -3
- package/helpers/api/middlewares/pass-headers-middleware.js +0 -27
- package/helpers/api/middlewares/pass-headers-middleware.js.map +0 -1
- package/helpers/api/middlewares/prepare-request-headers.d.ts +0 -5
- package/helpers/api/middlewares/prepare-request-headers.js +0 -20
- package/helpers/api/middlewares/prepare-request-headers.js.map +0 -1
- package/helpers/api/middlewares/set-http-agents-middleware.d.ts +0 -15
- package/helpers/api/middlewares/set-http-agents-middleware.js +0 -34
- package/helpers/api/middlewares/set-http-agents-middleware.js.map +0 -1
- package/helpers/api/middlewares/stages-trace-middleware.d.ts +0 -17
- package/helpers/api/middlewares/stages-trace-middleware.js +0 -57
- package/helpers/api/middlewares/stages-trace-middleware.js.map +0 -1
- package/helpers/api/middlewares/trace-request-middleware.d.ts +0 -24
- package/helpers/api/middlewares/trace-request-middleware.js +0 -69
- package/helpers/api/middlewares/trace-request-middleware.js.map +0 -1
- package/helpers/api/server-adapter/__fixtures__/fake-keys.d.ts +0 -10
- package/helpers/api/server-adapter/__fixtures__/fake-keys.js +0 -61
- package/helpers/api/server-adapter/__fixtures__/fake-keys.js.map +0 -1
- package/helpers/api/server-adapter/constants.d.ts +0 -5
- package/helpers/api/server-adapter/constants.js +0 -16
- package/helpers/api/server-adapter/constants.js.map +0 -1
- package/helpers/api/server-adapter/helpers.d.ts +0 -26
- package/helpers/api/server-adapter/helpers.js +0 -208
- package/helpers/api/server-adapter/helpers.js.map +0 -1
- package/helpers/api/server-adapter/index.d.ts +0 -10
- package/helpers/api/server-adapter/index.js +0 -118
- package/helpers/api/server-adapter/index.js.map +0 -1
- package/helpers/development/use-dot-env.d.ts +0 -6
- package/helpers/development/use-dot-env.js +0 -11
- package/helpers/development/use-dot-env.js.map +0 -1
- package/helpers/get-params/index.d.ts +0 -4
- package/helpers/get-params/index.js +0 -51
- package/helpers/get-params/index.js.map +0 -1
- package/helpers/http/request-getters.d.ts +0 -5
- package/helpers/http/request-getters.js +0 -49
- package/helpers/http/request-getters.js.map +0 -1
- package/helpers/http/statuses-validator.d.ts +0 -3
- package/helpers/http/statuses-validator.js +0 -25
- package/helpers/http/statuses-validator.js.map +0 -1
- package/helpers/logger/create-pino-instance/index.d.ts +0 -6
- package/helpers/logger/create-pino-instance/index.js +0 -39
- package/helpers/logger/create-pino-instance/index.js.map +0 -1
- package/helpers/logger/format-time/index.d.ts +0 -6
- package/helpers/logger/format-time/index.js +0 -9
- package/helpers/logger/format-time/index.js.map +0 -1
- package/helpers/metrics/index.d.ts +0 -23
- package/helpers/metrics/index.js +0 -42
- package/helpers/metrics/index.js.map +0 -1
- package/helpers/prometheus/index.d.ts +0 -4
- package/helpers/prometheus/index.js +0 -13
- package/helpers/prometheus/index.js.map +0 -1
- package/helpers/prometheus/measure-middleware.d.ts +0 -5
- package/helpers/prometheus/measure-middleware.js +0 -69
- package/helpers/prometheus/measure-middleware.js.map +0 -1
- package/helpers/prometheus/metric-adapter.d.ts +0 -36
- package/helpers/prometheus/metric-adapter.js +0 -98
- package/helpers/prometheus/metric-adapter.js.map +0 -1
- package/helpers/react/error-handlers/index.d.ts +0 -40
- package/helpers/react/error-handlers/index.js +0 -52
- package/helpers/react/error-handlers/index.js.map +0 -1
- package/helpers/redux/constants.d.ts +0 -5
- package/helpers/redux/constants.js +0 -14
- package/helpers/redux/constants.js.map +0 -1
- package/helpers/redux/create-compose-middleware.d.ts +0 -15
- package/helpers/redux/create-compose-middleware.js +0 -23
- package/helpers/redux/create-compose-middleware.js.map +0 -1
- package/helpers/redux/get-dev-compose-creator.d.ts +0 -6
- package/helpers/redux/get-dev-compose-creator.js +0 -13
- package/helpers/redux/get-dev-compose-creator.js.map +0 -1
- package/helpers/redux/prepare-on-ready.d.ts +0 -9
- package/helpers/redux/prepare-on-ready.js +0 -16
- package/helpers/redux/prepare-on-ready.js.map +0 -1
- package/helpers/redux/remote-data.d.ts +0 -40
- package/helpers/redux/remote-data.js +0 -91
- package/helpers/redux/remote-data.js.map +0 -1
- package/helpers/redux/selector/statuses.d.ts +0 -23
- package/helpers/redux/selector/statuses.js +0 -34
- package/helpers/redux/selector/statuses.js.map +0 -1
- package/helpers/redux/wait-on-store-readiness.d.ts +0 -11
- package/helpers/redux/wait-on-store-readiness.js +0 -29
- package/helpers/redux/wait-on-store-readiness.js.map +0 -1
- package/helpers/render/get-react-markup-data.d.ts +0 -14
- package/helpers/render/get-react-markup-data.js +0 -20
- package/helpers/render/get-react-markup-data.js.map +0 -1
- package/helpers/render/index.d.ts +0 -21
- package/helpers/render/index.js +0 -72
- package/helpers/render/index.js.map +0 -1
- package/helpers/render/render-app.d.ts +0 -12
- package/helpers/render/render-app.js +0 -12
- package/helpers/render/render-app.js.map +0 -1
- package/helpers/saga/__fixtures__/do-safe-request.d.ts +0 -43
- package/helpers/saga/__fixtures__/do-safe-request.js +0 -50
- package/helpers/saga/__fixtures__/do-safe-request.js.map +0 -1
- package/helpers/saga/cache-result.d.ts +0 -46
- package/helpers/saga/cache-result.js +0 -71
- package/helpers/saga/cache-result.js.map +0 -1
- package/helpers/saga/create-store.d.ts +0 -20
- package/helpers/saga/create-store.js +0 -106
- package/helpers/saga/create-store.js.map +0 -1
- package/helpers/saga/do-safe-request.d.ts +0 -38
- package/helpers/saga/do-safe-request.js +0 -45
- package/helpers/saga/do-safe-request.js.map +0 -1
- package/helpers/saga/safe-request.d.ts +0 -7
- package/helpers/saga/safe-request.js +0 -15
- package/helpers/saga/safe-request.js.map +0 -1
- package/helpers/saga/take-chain.d.ts +0 -20
- package/helpers/saga/take-chain.js +0 -56
- package/helpers/saga/take-chain.js.map +0 -1
- package/helpers/tracer/create-child-tracing-middleware.d.ts +0 -7
- package/helpers/tracer/create-child-tracing-middleware.js +0 -40
- package/helpers/tracer/create-child-tracing-middleware.js.map +0 -1
- package/helpers/tracer/index.d.ts +0 -24
- package/helpers/tracer/index.js +0 -144
- package/helpers/tracer/index.js.map +0 -1
- package/helpers/utils/check-feature-by-segment.d.ts +0 -2
- package/helpers/utils/check-feature-by-segment.js +0 -31
- package/helpers/utils/check-feature-by-segment.js.map +0 -1
- package/helpers/utils/format-object-keys.d.ts +0 -6
- package/helpers/utils/format-object-keys.js +0 -27
- package/helpers/utils/format-object-keys.js.map +0 -1
- package/helpers/utils/get-ms-from-hrt.d.ts +0 -2
- package/helpers/utils/get-ms-from-hrt.js +0 -22
- package/helpers/utils/get-ms-from-hrt.js.map +0 -1
- package/helpers/utils/is-match-pattern-list.d.ts +0 -8
- package/helpers/utils/is-match-pattern-list.js +0 -16
- package/helpers/utils/is-match-pattern-list.js.map +0 -1
- package/helpers/utils/is-not-empty-array.d.ts +0 -2
- package/helpers/utils/is-not-empty-array.js +0 -12
- package/helpers/utils/is-not-empty-array.js.map +0 -1
- package/helpers/utils/is-not-empty-string.d.ts +0 -2
- package/helpers/utils/is-not-empty-string.js +0 -15
- package/helpers/utils/is-not-empty-string.js.map +0 -1
- package/helpers/utils/is-numeric.d.ts +0 -7
- package/helpers/utils/is-numeric.js +0 -16
- package/helpers/utils/is-numeric.js.map +0 -1
- package/helpers/utils/wrap-in-measure-event.d.ts +0 -9
- package/helpers/utils/wrap-in-measure-event.js +0 -50
- package/helpers/utils/wrap-in-measure-event.js.map +0 -1
- package/logger/create-logger-middleware/index.d.ts +0 -14
- package/logger/create-logger-middleware/index.js +0 -41
- package/logger/create-logger-middleware/index.js.map +0 -1
- package/logger/create-sentry-instance/index.d.ts +0 -29
- package/logger/create-sentry-instance/index.js +0 -63
- package/logger/create-sentry-instance/index.js.map +0 -1
- package/logger/create-sentry-middleware/index.d.ts +0 -14
- package/logger/create-sentry-middleware/index.js +0 -19
- package/logger/create-sentry-middleware/index.js.map +0 -1
- package/logger/handler-creators/index.d.ts +0 -5
- package/logger/handler-creators/index.js +0 -41
- package/logger/handler-creators/index.js.map +0 -1
- package/logger/initialize-sentry-creator/index.d.ts +0 -17
- package/logger/initialize-sentry-creator/index.js +0 -35
- package/logger/initialize-sentry-creator/index.js.map +0 -1
- package/logger/sentry-logger/index.d.ts +0 -9
- package/logger/sentry-logger/index.js +0 -36
- package/logger/sentry-logger/index.js.map +0 -1
- package/module-federation/__example__/webpack-config.example.d.ts +0 -366
- package/module-federation/__example__/webpack-config.example.js +0 -51
- package/module-federation/__example__/webpack-config.example.js.map +0 -1
- package/module-federation/enhanced-module-federation-plugin.d.ts +0 -46
- package/module-federation/enhanced-module-federation-plugin.js +0 -72
- package/module-federation/enhanced-module-federation-plugin.js.map +0 -1
- package/module-federation/utils/index.d.ts +0 -8
- package/module-federation/utils/index.js +0 -28
- package/module-federation/utils/index.js.map +0 -1
- package/observe-middleware/index.d.ts +0 -9
- package/observe-middleware/index.js +0 -67
- package/observe-middleware/index.js.map +0 -1
- package/set-header-middleware/create.d.ts +0 -10
- package/set-header-middleware/create.js +0 -16
- package/set-header-middleware/create.js.map +0 -1
- package/src/cache/helpers.js +0 -32
- package/src/cache/local-storage.ts +0 -92
- package/src/cache/redis.js +0 -79
- package/src/cache/wrap-in-trace.js +0 -57
- package/src/config/create.js +0 -33
- package/src/config/helpers.js +0 -71
- package/src/config/validate.js +0 -114
- package/src/container/create-inject.js +0 -32
- package/src/container/get-dependencies.js +0 -46
- package/src/container/index.js +0 -188
- package/src/container/is-container.js +0 -14
- package/src/container/service-not-found-error.js +0 -14
- package/src/create-proxy/create-proxy-middleware/index.js +0 -47
- package/src/create-proxy/index.js +0 -27
- package/src/create-response-sender/index.js +0 -48
- package/src/get-dynamic-data/index.js +0 -26
- package/src/graceful-shutdown/index.js +0 -97
- package/src/helpers/add-error-handling/index.js +0 -24
- package/src/helpers/api/create-enhancer.js +0 -52
- package/src/helpers/api/create-instance.js +0 -42
- package/src/helpers/api/middlewares/collect-cookie-middleware.js +0 -27
- package/src/helpers/api/middlewares/count-api-response-time.js +0 -31
- package/src/helpers/api/middlewares/error-handlers-middlewares.js +0 -124
- package/src/helpers/api/middlewares/helpers.js +0 -26
- package/src/helpers/api/middlewares/pass-headers-middleware.js +0 -19
- package/src/helpers/api/middlewares/prepare-request-headers.js +0 -18
- package/src/helpers/api/middlewares/set-http-agents-middleware.js +0 -22
- package/src/helpers/api/middlewares/stages-trace-middleware.js +0 -46
- package/src/helpers/api/server-adapter/__fixtures__/fake-keys.js +0 -58
- package/src/helpers/api/server-adapter/constants.js +0 -12
- package/src/helpers/api/server-adapter/helpers.js +0 -244
- package/src/helpers/api/server-adapter/index.js +0 -155
- package/src/helpers/development/use-dot-env.js +0 -9
- package/src/helpers/get-params/index.js +0 -59
- package/src/helpers/http/request-getters.js +0 -42
- package/src/helpers/http/statuses-validator.js +0 -20
- package/src/helpers/logger/create-pino-instance/index.js +0 -41
- package/src/helpers/logger/format-time/index.js +0 -6
- package/src/helpers/metrics/index.js +0 -40
- package/src/helpers/prometheus/index.js +0 -9
- package/src/helpers/prometheus/measure-middleware.js +0 -73
- package/src/helpers/prometheus/metric-adapter.js +0 -99
- package/src/helpers/react/error-handlers/index.tsx +0 -68
- package/src/helpers/redux/constants.js +0 -10
- package/src/helpers/redux/create-compose-middleware.js +0 -24
- package/src/helpers/redux/get-dev-compose-creator.js +0 -9
- package/src/helpers/redux/prepare-on-ready.js +0 -16
- package/src/helpers/redux/remote-data.js +0 -124
- package/src/helpers/redux/selector/statuses.js +0 -30
- package/src/helpers/redux/wait-on-store-readiness.js +0 -40
- package/src/helpers/render/get-react-markup-data.js +0 -18
- package/src/helpers/render/index.js +0 -69
- package/src/helpers/render/render-app.js +0 -15
- package/src/helpers/saga/__fixtures__/do-safe-request.js +0 -49
- package/src/helpers/saga/cache-result.js +0 -77
- package/src/helpers/saga/create-store.js +0 -102
- package/src/helpers/saga/do-safe-request.js +0 -47
- package/src/helpers/saga/safe-request.js +0 -11
- package/src/helpers/saga/take-chain.js +0 -53
- package/src/helpers/tracer/create-child-tracing-middleware.js +0 -42
- package/src/helpers/tracer/index.js +0 -171
- package/src/helpers/utils/check-feature-by-segment.js +0 -32
- package/src/helpers/utils/format-object-keys.js +0 -23
- package/src/helpers/utils/get-ms-from-hrt.js +0 -16
- package/src/helpers/utils/is-match-pattern-list.js +0 -13
- package/src/helpers/utils/is-not-empty-array.js +0 -8
- package/src/helpers/utils/is-not-empty-string.js +0 -11
- package/src/helpers/utils/is-numeric.ts +0 -12
- package/src/helpers/utils/wrap-in-measure-event.js +0 -35
- package/src/logger/create-logger-middleware/index.js +0 -46
- package/src/logger/create-sentry-instance/index.js +0 -74
- package/src/logger/create-sentry-middleware/index.js +0 -16
- package/src/logger/handler-creators/index.js +0 -38
- package/src/logger/initialize-sentry-creator/index.js +0 -43
- package/src/logger/sentry-logger/index.js +0 -33
- package/src/module-federation/__example__/webpack-config.example.js +0 -57
- package/src/module-federation/enhanced-module-federation-plugin.js +0 -92
- package/src/module-federation/utils/index.js +0 -32
- package/src/observe-middleware/index.js +0 -70
- package/src/set-header-middleware/create.js +0 -17
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Проверка templates на валидность.
|
|
3
|
-
* @param {Object} templateObject Шаблон.
|
|
4
|
-
* @return {Object} [templateObject] Валидный шаблон.
|
|
5
|
-
*/
|
|
6
|
-
export function validateTemplate(templateObject: Object): Object;
|
|
7
|
-
/**
|
|
8
|
-
* Преобразует функцию в строку.
|
|
9
|
-
* @param {string} key Ключ объекта.
|
|
10
|
-
* @param {*} value Значение объекта.
|
|
11
|
-
* @return {*} [value] Преобразованное значение объекта.
|
|
12
|
-
*/
|
|
13
|
-
export function jsonStringifyReplacer(key: string, value: any): any;
|
|
14
|
-
export function prepareRenderFunction({ render, response, }: {
|
|
15
|
-
render: Function;
|
|
16
|
-
response: import('http').ServerResponse;
|
|
17
|
-
}): Function;
|
|
18
|
-
export function getTemplate({ templates, config }?: {
|
|
19
|
-
templates: Object;
|
|
20
|
-
config: Object;
|
|
21
|
-
}): Object;
|
package/helpers/render/index.js
DELETED
|
@@ -1,72 +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.jsonStringifyReplacer = exports.validateTemplate = exports.getTemplate = exports.prepareRenderFunction = void 0;
|
|
7
|
-
const isFunction_1 = __importDefault(require("lodash/isFunction"));
|
|
8
|
-
const wrap_in_measure_event_1 = __importDefault(require("../utils/wrap-in-measure-event"));
|
|
9
|
-
/**
|
|
10
|
-
* Создаёт функцию для рендеринга приложения, навешивая необходимые события.
|
|
11
|
-
* @param {Object} param Параметры.
|
|
12
|
-
* @param {Function} param.render Пользовательская функция для рендеринга приложения.
|
|
13
|
-
* @param {import('http').ServerResponse} param.response Ответ.
|
|
14
|
-
* @return {Function} Функция, обёрнутая в событие для измерения времени рендеринга.
|
|
15
|
-
*/
|
|
16
|
-
const prepareRenderFunction = ({ render, response, }) => wrap_in_measure_event_1.default({
|
|
17
|
-
fn: render,
|
|
18
|
-
startEvent: 'render:start',
|
|
19
|
-
endEvent: 'render:finish',
|
|
20
|
-
emitter: response,
|
|
21
|
-
});
|
|
22
|
-
exports.prepareRenderFunction = prepareRenderFunction;
|
|
23
|
-
/**
|
|
24
|
-
* Возвращает шаблон, который подходит текущей конфигурации.
|
|
25
|
-
* @param {Object} data Данные.
|
|
26
|
-
* @param {Object} data.templates Шаблоны.
|
|
27
|
-
* @param {Object} data.config Конфигурация со средой выполнения.
|
|
28
|
-
* @return {Object} Шаблон совпадающий со средой выполнения.
|
|
29
|
-
*/
|
|
30
|
-
const getTemplate = ({ templates, config } = {}) => {
|
|
31
|
-
for (const templateName in templates) {
|
|
32
|
-
const { checker, template } = validateTemplate(templates[templateName]);
|
|
33
|
-
if (checker(config)) {
|
|
34
|
-
return template;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
exports.getTemplate = getTemplate;
|
|
39
|
-
/**
|
|
40
|
-
* Проверка templates на валидность.
|
|
41
|
-
* @param {Object} templateObject Шаблон.
|
|
42
|
-
* @return {Object} [templateObject] Валидный шаблон.
|
|
43
|
-
*/
|
|
44
|
-
function validateTemplate(templateObject) {
|
|
45
|
-
const { checker, template } = templateObject || {};
|
|
46
|
-
if ([checker, template].some(value => !isFunction_1.default(value))) {
|
|
47
|
-
const jsonView = JSON.stringify(templateObject, jsonStringifyReplacer, 2);
|
|
48
|
-
throw Error(`
|
|
49
|
-
Template object must contain properties "checker" and "template" that must be a functions.
|
|
50
|
-
${jsonView}
|
|
51
|
-
`.trim());
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
return templateObject;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
exports.validateTemplate = validateTemplate;
|
|
58
|
-
/**
|
|
59
|
-
* Преобразует функцию в строку.
|
|
60
|
-
* @param {string} key Ключ объекта.
|
|
61
|
-
* @param {*} value Значение объекта.
|
|
62
|
-
* @return {*} [value] Преобразованное значение объекта.
|
|
63
|
-
*/
|
|
64
|
-
function jsonStringifyReplacer(key, value) {
|
|
65
|
-
let result = value;
|
|
66
|
-
if (!JSON.stringify(value)) {
|
|
67
|
-
result = Object.prototype.toString.call(value);
|
|
68
|
-
}
|
|
69
|
-
return result;
|
|
70
|
-
}
|
|
71
|
-
exports.jsonStringifyReplacer = jsonStringifyReplacer;
|
|
72
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/helpers/render/index.js"],"names":[],"mappings":";;;;;;AAAA,mEAA2C;AAC3C,2FAAgE;AAEhE;;;;;;GAMG;AACI,MAAM,qBAAqB,GAAG,CAAC,EACpC,MAAM,EACN,QAAQ,GACT,EAAE,EAAE,CAAC,+BAAkB,CACtB;IACE,EAAE,EAAE,MAAM;IACV,UAAU,EAAE,cAAc;IAC1B,QAAQ,EAAE,eAAe;IACzB,OAAO,EAAE,QAAQ;CAClB,CACF,CAAC;AAVW,QAAA,qBAAqB,yBAUhC;AAEF;;;;;;GAMG;AACI,MAAM,WAAW,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE;IACxD,KAAK,MAAM,YAAY,IAAI,SAAS,EAAE;QACpC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,gBAAgB,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;QACxE,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE;YACnB,OAAO,QAAQ,CAAC;SACjB;KACF;AACH,CAAC,CAAC;AAPW,QAAA,WAAW,eAOtB;AAEF;;;;GAIG;AACH,SAAgB,gBAAgB,CAAE,cAAc;IAC9C,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,cAAc,IAAI,EAAE,CAAC;IACnD,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,oBAAU,CAAC,KAAK,CAAC,CAAC,EAAE;QACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC;QAC1E,MAAM,KAAK,CAAC;;EAEd,QAAQ;GACP,CAAC,IAAI,EAAE,CAAC,CAAC;KACT;SAAM;QACL,OAAO,cAAc,CAAC;KACvB;AACH,CAAC;AAXD,4CAWC;AAED;;;;;GAKG;AACH,SAAgB,qBAAqB,CAAE,GAAG,EAAE,KAAK;IAC/C,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;QAC1B,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAChD;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAND,sDAMC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
export default renderApp;
|
|
2
|
-
/**
|
|
3
|
-
* Выводит данные в шаблон.
|
|
4
|
-
* @param {Object} data Исхоные данные для рендеринга.
|
|
5
|
-
* @param {Function} data.template Функция-шаблон, для вывода данных в разметку.
|
|
6
|
-
* @param {Function} data.getAppData Функция формирующая настройки приложения.
|
|
7
|
-
* @return {string} Разметка, в виде строки, полученная в результате рендеринга шаблона.
|
|
8
|
-
*/
|
|
9
|
-
declare function renderApp({ template, getAppData, }: {
|
|
10
|
-
template: Function;
|
|
11
|
-
getAppData: Function;
|
|
12
|
-
}): string;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/**
|
|
4
|
-
* Выводит данные в шаблон.
|
|
5
|
-
* @param {Object} data Исхоные данные для рендеринга.
|
|
6
|
-
* @param {Function} data.template Функция-шаблон, для вывода данных в разметку.
|
|
7
|
-
* @param {Function} data.getAppData Функция формирующая настройки приложения.
|
|
8
|
-
* @return {string} Разметка, в виде строки, полученная в результате рендеринга шаблона.
|
|
9
|
-
*/
|
|
10
|
-
const renderApp = ({ template, getAppData, }) => template(Object.assign({}, getAppData()));
|
|
11
|
-
exports.default = renderApp;
|
|
12
|
-
//# sourceMappingURL=render-app.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"render-app.js","sourceRoot":"","sources":["../../../src/helpers/render/render-app.js"],"names":[],"mappings":";;AAAA;;;;;;GAMG;AACH,MAAM,SAAS,GAAG,CAAC,EACjB,QAAQ,EACR,UAAU,GACX,EAAE,EAAE,CAAC,QAAQ,mBACT,UAAU,EAAE,EACf,CAAC;AAEH,kBAAe,SAAS,CAAC"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
export namespace data {
|
|
2
|
-
const id: number;
|
|
3
|
-
const trademark: {};
|
|
4
|
-
const notices_text_all: string[];
|
|
5
|
-
const files: {
|
|
6
|
-
filename: string;
|
|
7
|
-
title: string;
|
|
8
|
-
size: number;
|
|
9
|
-
url: string;
|
|
10
|
-
}[];
|
|
11
|
-
namespace modifier {
|
|
12
|
-
const isPicture: boolean;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
export namespace error {
|
|
16
|
-
const message: string;
|
|
17
|
-
}
|
|
18
|
-
export namespace errorWithConfig {
|
|
19
|
-
const message_1: string;
|
|
20
|
-
export { message_1 as message };
|
|
21
|
-
export namespace config {
|
|
22
|
-
const url: string;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
export namespace errorWithResponse {
|
|
26
|
-
const message_2: string;
|
|
27
|
-
export { message_2 as message };
|
|
28
|
-
export namespace response {
|
|
29
|
-
export const status: number;
|
|
30
|
-
export namespace data {
|
|
31
|
-
const test: string;
|
|
32
|
-
}
|
|
33
|
-
export namespace headers {
|
|
34
|
-
const test_1: string;
|
|
35
|
-
export { test_1 as test };
|
|
36
|
-
}
|
|
37
|
-
export namespace config_1 {
|
|
38
|
-
const test_2: string;
|
|
39
|
-
export { test_2 as test };
|
|
40
|
-
}
|
|
41
|
-
export { config_1 as config };
|
|
42
|
-
}
|
|
43
|
-
}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.errorWithResponse = exports.errorWithConfig = exports.error = exports.data = void 0;
|
|
4
|
-
exports.data = {
|
|
5
|
-
id: 500,
|
|
6
|
-
trademark: {},
|
|
7
|
-
notices_text_all: ['text', 'text'],
|
|
8
|
-
files: [
|
|
9
|
-
{
|
|
10
|
-
filename: 'test_1.pdf',
|
|
11
|
-
title: 'Тест-1',
|
|
12
|
-
size: 13,
|
|
13
|
-
url: 'https://test-1.pgf',
|
|
14
|
-
},
|
|
15
|
-
{
|
|
16
|
-
filename: 'test_2.pdf',
|
|
17
|
-
title: 'Тест-2',
|
|
18
|
-
size: 31,
|
|
19
|
-
url: 'https://test-2.pgf',
|
|
20
|
-
},
|
|
21
|
-
],
|
|
22
|
-
modifier: {
|
|
23
|
-
isPicture: false,
|
|
24
|
-
},
|
|
25
|
-
};
|
|
26
|
-
exports.error = {
|
|
27
|
-
message: 'Error message',
|
|
28
|
-
};
|
|
29
|
-
exports.errorWithConfig = {
|
|
30
|
-
message: 'Error message',
|
|
31
|
-
config: {
|
|
32
|
-
url: 'test-error-url',
|
|
33
|
-
},
|
|
34
|
-
};
|
|
35
|
-
exports.errorWithResponse = {
|
|
36
|
-
message: 'Error message',
|
|
37
|
-
response: {
|
|
38
|
-
status: 500,
|
|
39
|
-
data: {
|
|
40
|
-
test: 'test',
|
|
41
|
-
},
|
|
42
|
-
headers: {
|
|
43
|
-
test: 'test',
|
|
44
|
-
},
|
|
45
|
-
config: {
|
|
46
|
-
test: 'test',
|
|
47
|
-
},
|
|
48
|
-
},
|
|
49
|
-
};
|
|
50
|
-
//# sourceMappingURL=do-safe-request.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"do-safe-request.js","sourceRoot":"","sources":["../../../../src/helpers/saga/__fixtures__/do-safe-request.js"],"names":[],"mappings":";;;AAAa,QAAA,IAAI,GAAG;IAClB,EAAE,EAAE,GAAG;IACP,SAAS,EAAE,EAAE;IACb,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;IAClC,KAAK,EAAE;QACL;YACE,QAAQ,EAAE,YAAY;YACtB,KAAK,EAAE,QAAQ;YACf,IAAI,EAAE,EAAE;YACR,GAAG,EAAE,oBAAoB;SAC1B;QACD;YACE,QAAQ,EAAE,YAAY;YACtB,KAAK,EAAE,QAAQ;YACf,IAAI,EAAE,EAAE;YACR,GAAG,EAAE,oBAAoB;SAC1B;KACF;IACD,QAAQ,EAAE;QACR,SAAS,EAAE,KAAK;KACjB;CACF,CAAC;AAEW,QAAA,KAAK,GAAG;IACnB,OAAO,EAAE,eAAe;CACzB,CAAC;AAEW,QAAA,eAAe,GAAG;IAC7B,OAAO,EAAE,eAAe;IACxB,MAAM,EAAE;QACN,GAAG,EAAE,gBAAgB;KACtB;CACF,CAAC;AAEW,QAAA,iBAAiB,GAAG;IAC/B,OAAO,EAAE,eAAe;IACxB,QAAQ,EAAE;QACR,MAAM,EAAE,GAAG;QACX,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;SACb;QACD,OAAO,EAAE;YACP,IAAI,EAAE,MAAM;SACb;QACD,MAAM,EAAE;YACN,IAAI,EAAE,MAAM;SACb;KACF;CACF,CAAC"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @typedef {Object} Cache Объект кэша.
|
|
3
|
-
* @property {Function} get Функция, получающая данные из кэша.
|
|
4
|
-
* @property {Function} set Функция, записывающая данные в кэш.
|
|
5
|
-
* @property {boolean} status Статус доступности кэша.
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* Запрашивает данные с сервера с кэшированием.
|
|
9
|
-
* @param {Object} options Настройки кэширования.
|
|
10
|
-
* @param {Cache} options.cache Объект кэша.
|
|
11
|
-
* @param {string} options.key Ключ для сохранения.
|
|
12
|
-
* @param {Function} options.captureException Обработчик ошибки.
|
|
13
|
-
* @param {Function} options.validateCache Функция для проверки валидности данных кэша.
|
|
14
|
-
* @param {Function} options.validateResult Функция для проверки валидности результата при сохранении в кэш.
|
|
15
|
-
* @param {Function} options.fn Функция для получения данных.
|
|
16
|
-
* @param {Array} options.args Аргументы функции для запроса данных.
|
|
17
|
-
* @return {import('./do-safe-request').ServerResponse} Результат.
|
|
18
|
-
*/
|
|
19
|
-
export default function cacheResult({ cache, key, captureException, validateCache, validateResult, fn, args, duration, }: {
|
|
20
|
-
cache: Cache;
|
|
21
|
-
key: string;
|
|
22
|
-
captureException: Function;
|
|
23
|
-
validateCache: Function;
|
|
24
|
-
validateResult: Function;
|
|
25
|
-
fn: Function;
|
|
26
|
-
args: any[];
|
|
27
|
-
}): import('./do-safe-request').ServerResponse;
|
|
28
|
-
export function validateCacheDefault(data: any): boolean;
|
|
29
|
-
export function validateResultDefault(response: Object): boolean;
|
|
30
|
-
/**
|
|
31
|
-
* Объект кэша.
|
|
32
|
-
*/
|
|
33
|
-
export type Cache = {
|
|
34
|
-
/**
|
|
35
|
-
* Функция, получающая данные из кэша.
|
|
36
|
-
*/
|
|
37
|
-
get: Function;
|
|
38
|
-
/**
|
|
39
|
-
* Функция, записывающая данные в кэш.
|
|
40
|
-
*/
|
|
41
|
-
set: Function;
|
|
42
|
-
/**
|
|
43
|
-
* Статус доступности кэша.
|
|
44
|
-
*/
|
|
45
|
-
status: boolean;
|
|
46
|
-
};
|
|
@@ -1,71 +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.validateResultDefault = exports.validateCacheDefault = void 0;
|
|
7
|
-
const effects_1 = require("redux-saga/effects");
|
|
8
|
-
const isFunction_1 = __importDefault(require("lodash/isFunction"));
|
|
9
|
-
const isPlainObject_1 = __importDefault(require("lodash/isPlainObject"));
|
|
10
|
-
const do_safe_request_1 = __importDefault(require("./do-safe-request"));
|
|
11
|
-
/**
|
|
12
|
-
* Проверяет наличие данных, запрошенных из кэша.
|
|
13
|
-
* @param {*} data Данные, запрошенных из кэша.
|
|
14
|
-
* @return {boolean} Получен ли ответ.
|
|
15
|
-
*/
|
|
16
|
-
const validateCacheDefault = data => Boolean(data);
|
|
17
|
-
exports.validateCacheDefault = validateCacheDefault;
|
|
18
|
-
/**
|
|
19
|
-
* Проверяет валидность ответа API.
|
|
20
|
-
* @param {Object} response Ответ API.
|
|
21
|
-
* @return {boolean} Результат проверки.
|
|
22
|
-
*/
|
|
23
|
-
const validateResultDefault = response => Boolean(response) && isPlainObject_1.default(response) && Boolean(response.ok);
|
|
24
|
-
exports.validateResultDefault = validateResultDefault;
|
|
25
|
-
/**
|
|
26
|
-
* @typedef {Object} Cache Объект кэша.
|
|
27
|
-
* @property {Function} get Функция, получающая данные из кэша.
|
|
28
|
-
* @property {Function} set Функция, записывающая данные в кэш.
|
|
29
|
-
* @property {boolean} status Статус доступности кэша.
|
|
30
|
-
*/
|
|
31
|
-
/**
|
|
32
|
-
* Запрашивает данные с сервера с кэшированием.
|
|
33
|
-
* @param {Object} options Настройки кэширования.
|
|
34
|
-
* @param {Cache} options.cache Объект кэша.
|
|
35
|
-
* @param {string} options.key Ключ для сохранения.
|
|
36
|
-
* @param {Function} options.captureException Обработчик ошибки.
|
|
37
|
-
* @param {Function} options.validateCache Функция для проверки валидности данных кэша.
|
|
38
|
-
* @param {Function} options.validateResult Функция для проверки валидности результата при сохранении в кэш.
|
|
39
|
-
* @param {Function} options.fn Функция для получения данных.
|
|
40
|
-
* @param {Array} options.args Аргументы функции для запроса данных.
|
|
41
|
-
* @return {import('./do-safe-request').ServerResponse} Результат.
|
|
42
|
-
*/
|
|
43
|
-
function* cacheResult({ cache, key, captureException, validateCache = exports.validateCacheDefault, validateResult = exports.validateResultDefault, fn = do_safe_request_1.default, args = [], duration = 3600, }) {
|
|
44
|
-
const { get, set, status } = cache || {};
|
|
45
|
-
let isCacheAvailable = status && isFunction_1.default(get) && isFunction_1.default(set);
|
|
46
|
-
const canDoRequest = isFunction_1.default(validateCache) && isFunction_1.default(fn);
|
|
47
|
-
let result;
|
|
48
|
-
try {
|
|
49
|
-
result = isCacheAvailable && (yield effects_1.call(get, key));
|
|
50
|
-
if (validateCache(result)) {
|
|
51
|
-
result = JSON.parse(result);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
catch (error) {
|
|
55
|
-
if (isFunction_1.default(captureException)) {
|
|
56
|
-
captureException(error);
|
|
57
|
-
}
|
|
58
|
-
isCacheAvailable = false;
|
|
59
|
-
result = null;
|
|
60
|
-
}
|
|
61
|
-
if (canDoRequest && !validateCache(result)) {
|
|
62
|
-
result = yield effects_1.call(fn, ...args);
|
|
63
|
-
const isResultValid = isFunction_1.default(validateResult) && validateResult(result);
|
|
64
|
-
if (isCacheAvailable && isResultValid) {
|
|
65
|
-
yield effects_1.call(set, key, JSON.stringify(result), duration);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
return result;
|
|
69
|
-
}
|
|
70
|
-
exports.default = cacheResult;
|
|
71
|
-
//# sourceMappingURL=cache-result.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cache-result.js","sourceRoot":"","sources":["../../../src/helpers/saga/cache-result.js"],"names":[],"mappings":";;;;;;AAAA,gDAA0C;AAC1C,mEAA2C;AAC3C,yEAAiD;AACjD,wEAA8C;AAE9C;;;;GAIG;AACI,MAAM,oBAAoB,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAA7C,QAAA,oBAAoB,wBAAyB;AAE1D;;;;GAIG;AACI,MAAM,qBAAqB,GAAG,QAAQ,CAAC,EAAE,CAC9C,OAAO,CAAC,QAAQ,CAAC,IAAI,uBAAa,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAD1D,QAAA,qBAAqB,yBACqC;AAEvE;;;;;GAKG;AAEH;;;;;;;;;;;GAWG;AACH,QAAwB,CAAC,CAAC,WAAW,CAAE,EACrC,KAAK,EACL,GAAG,EACH,gBAAgB,EAChB,aAAa,GAAG,4BAAoB,EACpC,cAAc,GAAG,6BAAqB,EACtC,EAAE,GAAG,yBAAa,EAClB,IAAI,GAAG,EAAE,EACT,QAAQ,GAAG,IAAI,GAChB;IACC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC;IACzC,IAAI,gBAAgB,GAAG,MAAM,IAAI,oBAAU,CAAC,GAAG,CAAC,IAAI,oBAAU,CAAC,GAAG,CAAC,CAAC;IACpE,MAAM,YAAY,GAAG,oBAAU,CAAC,aAAa,CAAC,IAAI,oBAAU,CAAC,EAAE,CAAC,CAAC;IACjE,IAAI,MAAM,CAAC;IACX,IAAI;QACF,MAAM,GAAG,gBAAgB,IAAI,CAAC,MAAM,cAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QACpD,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE;YACzB,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;SAC7B;KACF;IAAC,OAAO,KAAK,EAAE;QACd,IAAI,oBAAU,CAAC,gBAAgB,CAAC,EAAE;YAChC,gBAAgB,CAAC,KAAK,CAAC,CAAC;SACzB;QACD,gBAAgB,GAAG,KAAK,CAAC;QACzB,MAAM,GAAG,IAAI,CAAC;KACf;IAED,IAAI,YAAY,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE;QAC1C,MAAM,GAAG,MAAM,cAAI,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QACjC,MAAM,aAAa,GAAG,oBAAU,CAAC,cAAc,CAAC,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;QAE3E,IAAI,gBAAgB,IAAI,aAAa,EAAE;YACrC,MAAM,cAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC;SACxD;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AArCD,8BAqCC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
export function createSagaReadyHandler(onReady: Function): Function;
|
|
2
|
-
export function createStore(reducer: Function, initialSaga: Function, { isReady, initialState, compose, middleware, onReady, timeout, onTimeout, onSagasErrorHandler, }?: {
|
|
3
|
-
isReady: Function;
|
|
4
|
-
initialState: Object;
|
|
5
|
-
compose: Function;
|
|
6
|
-
middleware: any[];
|
|
7
|
-
onReady: Function;
|
|
8
|
-
timeout: number;
|
|
9
|
-
onTimeout?: Function | undefined;
|
|
10
|
-
onSagasErrorHandler?: Function | undefined;
|
|
11
|
-
}): Object;
|
|
12
|
-
export function mapServiceOptionsToArgs({ reducer, initialSaga, ...options }: {
|
|
13
|
-
reducer: Function;
|
|
14
|
-
initialSaga: Function;
|
|
15
|
-
options: Object;
|
|
16
|
-
}): any[];
|
|
17
|
-
/**
|
|
18
|
-
* @type {Function} Сервис создания store для использования совместно с контейнером
|
|
19
|
-
*/
|
|
20
|
-
export const createStoreService: Function;
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
22
|
-
var t = {};
|
|
23
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
24
|
-
t[p] = s[p];
|
|
25
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
26
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
27
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
28
|
-
t[p[i]] = s[p[i]];
|
|
29
|
-
}
|
|
30
|
-
return t;
|
|
31
|
-
};
|
|
32
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
33
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
34
|
-
};
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.createStoreService = exports.mapServiceOptionsToArgs = exports.createStore = exports.createSagaReadyHandler = void 0;
|
|
37
|
-
const redux_1 = require("redux");
|
|
38
|
-
const redux_saga_1 = __importStar(require("redux-saga"));
|
|
39
|
-
const isFunction_1 = __importDefault(require("lodash/isFunction"));
|
|
40
|
-
const container_1 = require("../../container");
|
|
41
|
-
const wait_on_store_readiness_1 = __importDefault(require("../redux/wait-on-store-readiness"));
|
|
42
|
-
/**
|
|
43
|
-
* Создаёт функцию для обработки успешного завершения подготовки стора.
|
|
44
|
-
* @param {Function} onReady Опциональный обработчик успешного завершения.
|
|
45
|
-
* @return {Function} Функция для обработки успешного завершения подготовки стора.
|
|
46
|
-
*/
|
|
47
|
-
const createSagaReadyHandler = onReady => store => {
|
|
48
|
-
store.dispatch(redux_saga_1.END);
|
|
49
|
-
isFunction_1.default(onReady) && onReady(store);
|
|
50
|
-
};
|
|
51
|
-
exports.createSagaReadyHandler = createSagaReadyHandler;
|
|
52
|
-
/**
|
|
53
|
-
* Создаёт store с применённым middleware саг.
|
|
54
|
-
* @param {Function} reducer Редьюсер.
|
|
55
|
-
* @param {Function} initialSaga Инициализирующая сага.
|
|
56
|
-
* @param {Object} options Необязательные опции.
|
|
57
|
-
* @param {Function} options.isReady Функция для определения готовности store.
|
|
58
|
-
* @param {Object} options.initialState Начальное состояние.
|
|
59
|
-
* @param {Function} options.compose Функция для применения middleware.
|
|
60
|
-
* @param {Array} options.middleware Список дополнительных middleware.
|
|
61
|
-
* @param {Function} options.onReady Функция которая будет выполнена по готовности store.
|
|
62
|
-
* @param {number} options.timeout Максимальное время ожидания готовности store.
|
|
63
|
-
* @param {Function} [options.onTimeout] Функция обработчик события таймаута ожидания готовности store.
|
|
64
|
-
* @param {Function} [options.onSagasErrorHandler] Корневой обработчик ошибок в сагах.
|
|
65
|
-
* @return {Object} Объект со store и функцией runSaga для запуска саг.
|
|
66
|
-
*/
|
|
67
|
-
const createStore = (reducer, initialSaga, { isReady, initialState = {}, compose = input => input, middleware = [], onReady, timeout, onTimeout, onSagasErrorHandler, } = {}) => {
|
|
68
|
-
const sagaMiddleware = redux_saga_1.default(isFunction_1.default(onSagasErrorHandler)
|
|
69
|
-
? { onError: onSagasErrorHandler }
|
|
70
|
-
: {});
|
|
71
|
-
let store = redux_1.createStore(reducer, initialState, compose(redux_1.applyMiddleware(sagaMiddleware, ...middleware)));
|
|
72
|
-
if (isFunction_1.default(isReady)) {
|
|
73
|
-
store = wait_on_store_readiness_1.default(store, isReady, exports.createSagaReadyHandler(onReady), onTimeout, timeout);
|
|
74
|
-
}
|
|
75
|
-
else if (isFunction_1.default(onReady)) {
|
|
76
|
-
throw new TypeError('Third argument property "onReady" is a function, when property "isReady" is not a function. '
|
|
77
|
-
+ 'The "onReady" function will never be called.');
|
|
78
|
-
}
|
|
79
|
-
return {
|
|
80
|
-
store,
|
|
81
|
-
runSaga: () => sagaMiddleware.run(initialSaga).toPromise(),
|
|
82
|
-
};
|
|
83
|
-
};
|
|
84
|
-
exports.createStore = createStore;
|
|
85
|
-
/**
|
|
86
|
-
* Преобразует опции сервиса в аргументы функции.
|
|
87
|
-
* @param {Object} param Параметры.
|
|
88
|
-
* @param {Function} param.reducer Редьюсер.
|
|
89
|
-
* @param {Function} param.initialSaga Инициализирующая сага.
|
|
90
|
-
* @param {Object} param.options Остальные, необязательные опции.
|
|
91
|
-
* @return {Array} Массив агрументов для использования в функции.
|
|
92
|
-
*/
|
|
93
|
-
const mapServiceOptionsToArgs = (_a) => {
|
|
94
|
-
var { reducer, initialSaga } = _a, options = __rest(_a, ["reducer", "initialSaga"]);
|
|
95
|
-
return [
|
|
96
|
-
reducer,
|
|
97
|
-
initialSaga,
|
|
98
|
-
options,
|
|
99
|
-
];
|
|
100
|
-
};
|
|
101
|
-
exports.mapServiceOptionsToArgs = mapServiceOptionsToArgs;
|
|
102
|
-
/**
|
|
103
|
-
* @type {Function} Сервис создания store для использования совместно с контейнером
|
|
104
|
-
*/
|
|
105
|
-
exports.createStoreService = container_1.createService(exports.createStore, exports.mapServiceOptionsToArgs);
|
|
106
|
-
//# sourceMappingURL=create-store.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"create-store.js","sourceRoot":"","sources":["../../../src/helpers/saga/create-store.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iCAAyE;AACzE,yDAAuD;AACvD,mEAA2C;AAC3C,+CAAgD;AAChD,+FAAoE;AAEpE;;;;GAIG;AACI,MAAM,sBAAsB,GAAG,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE;IACvD,KAAK,CAAC,QAAQ,CAAC,gBAAG,CAAC,CAAC;IACpB,oBAAU,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;AACxC,CAAC,CAAC;AAHW,QAAA,sBAAsB,0BAGjC;AAEF;;;;;;;;;;;;;;GAcG;AACI,MAAM,WAAW,GAAG,CACzB,OAAO,EACP,WAAW,EACX,EACE,OAAO,EACP,YAAY,GAAG,EAAE,EACjB,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,EACxB,UAAU,GAAG,EAAE,EACf,OAAO,EACP,OAAO,EACP,SAAS,EACT,mBAAmB,GACpB,GAAG,EAAE,EACN,EAAE;IACF,MAAM,cAAc,GAAG,oBAAoB,CACzC,oBAAU,CAAC,mBAAmB,CAAC;QAC7B,CAAC,CAAC,EAAE,OAAO,EAAE,mBAAmB,EAAE;QAClC,CAAC,CAAC,EAAE,CACP,CAAC;IACF,IAAI,KAAK,GAAG,mBAAgB,CAC1B,OAAO,EACP,YAAY,EACZ,OAAO,CAAC,uBAAe,CAAC,cAAc,EAAE,GAAG,UAAU,CAAC,CAAC,CACxD,CAAC;IACF,IAAI,oBAAU,CAAC,OAAO,CAAC,EAAE;QACvB,KAAK,GAAG,iCAAoB,CAC1B,KAAK,EACL,OAAO,EACP,8BAAsB,CAAC,OAAO,CAAC,EAC/B,SAAS,EACT,OAAO,CACR,CAAC;KACH;SAAM,IAAI,oBAAU,CAAC,OAAO,CAAC,EAAE;QAC9B,MAAM,IAAI,SAAS,CACjB,8FAA8F;cAC5F,8CAA8C,CACjD,CAAC;KACH;IACD,OAAO;QACL,KAAK;QACL,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,SAAS,EAAE;KAC3D,CAAC;AACJ,CAAC,CAAC;AA1CW,QAAA,WAAW,eA0CtB;AAEF;;;;;;;GAOG;AACI,MAAM,uBAAuB,GAAG,CACrC,EAIC,EACD,EAAE;QALF,EACE,OAAO,EACP,WAAW,OAEZ,EADI,OAAO,cAHZ,0BAIC,CADW;IAET,OAAA;QACH,OAAO;QACP,WAAW;QACX,OAAO;KACR,CAAA;CAAA,CAAC;AAVW,QAAA,uBAAuB,2BAUlC;AAEF;;GAEG;AACU,QAAA,kBAAkB,GAAG,yBAAa,CAC7C,mBAAW,EACX,+BAAuB,CACxB,CAAC"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @typedef {Object} ServerResponse Ответ сервера.
|
|
3
|
-
* @property {boolean} ok Были ли запрос совершен успешно.
|
|
4
|
-
* @property {Object|null} error Объект ошибки.
|
|
5
|
-
* @property {Object|string|null} data Данные ответа.
|
|
6
|
-
* @property {number|null} status Статус ответа.
|
|
7
|
-
*/
|
|
8
|
-
/**
|
|
9
|
-
* Безопасно запрашивает данные c сервера, с обработкой и логированием ошибок, обрабатывает ответ.
|
|
10
|
-
* @param {Function} performRequest Функция, выполняющая запрос.
|
|
11
|
-
* @param {Object} [options] Опции.
|
|
12
|
-
* @param {Array} [options.args] Аргументы функции, выполняющей запрос.
|
|
13
|
-
* @return {ServerResponse} Ответ сервера.
|
|
14
|
-
*/
|
|
15
|
-
export default function doSafeRequest(performRequest: Function, options?: {
|
|
16
|
-
args?: any[] | undefined;
|
|
17
|
-
} | undefined): ServerResponse;
|
|
18
|
-
/**
|
|
19
|
-
* Ответ сервера.
|
|
20
|
-
*/
|
|
21
|
-
export type ServerResponse = {
|
|
22
|
-
/**
|
|
23
|
-
* Были ли запрос совершен успешно.
|
|
24
|
-
*/
|
|
25
|
-
ok: boolean;
|
|
26
|
-
/**
|
|
27
|
-
* Объект ошибки.
|
|
28
|
-
*/
|
|
29
|
-
error: Object | null;
|
|
30
|
-
/**
|
|
31
|
-
* Данные ответа.
|
|
32
|
-
*/
|
|
33
|
-
data: Object | string | null;
|
|
34
|
-
/**
|
|
35
|
-
* Статус ответа.
|
|
36
|
-
*/
|
|
37
|
-
status: number | null;
|
|
38
|
-
};
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const effects_1 = require("redux-saga/effects");
|
|
7
|
-
const get_1 = __importDefault(require("lodash/get"));
|
|
8
|
-
/**
|
|
9
|
-
* @typedef {Object} ServerResponse Ответ сервера.
|
|
10
|
-
* @property {boolean} ok Были ли запрос совершен успешно.
|
|
11
|
-
* @property {Object|null} error Объект ошибки.
|
|
12
|
-
* @property {Object|string|null} data Данные ответа.
|
|
13
|
-
* @property {number|null} status Статус ответа.
|
|
14
|
-
*/
|
|
15
|
-
/**
|
|
16
|
-
* Безопасно запрашивает данные c сервера, с обработкой и логированием ошибок, обрабатывает ответ.
|
|
17
|
-
* @param {Function} performRequest Функция, выполняющая запрос.
|
|
18
|
-
* @param {Object} [options] Опции.
|
|
19
|
-
* @param {Array} [options.args] Аргументы функции, выполняющей запрос.
|
|
20
|
-
* @return {ServerResponse} Ответ сервера.
|
|
21
|
-
*/
|
|
22
|
-
function* doSafeRequest(performRequest, options) {
|
|
23
|
-
const { args = [], } = options || {};
|
|
24
|
-
let response;
|
|
25
|
-
let ok = false;
|
|
26
|
-
let originalError = null;
|
|
27
|
-
try {
|
|
28
|
-
response = yield effects_1.call(performRequest, ...args);
|
|
29
|
-
ok = true;
|
|
30
|
-
}
|
|
31
|
-
catch (error) {
|
|
32
|
-
// пытаемся получить данные ответа из ошибки
|
|
33
|
-
response = error.response;
|
|
34
|
-
// добавляем в результат объект ошибки
|
|
35
|
-
originalError = error;
|
|
36
|
-
}
|
|
37
|
-
return {
|
|
38
|
-
ok,
|
|
39
|
-
error: originalError,
|
|
40
|
-
data: get_1.default(response, 'data', null),
|
|
41
|
-
status: get_1.default(response, 'status', null),
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
exports.default = doSafeRequest;
|
|
45
|
-
//# sourceMappingURL=do-safe-request.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"do-safe-request.js","sourceRoot":"","sources":["../../../src/helpers/saga/do-safe-request.js"],"names":[],"mappings":";;;;;AAAA,gDAA0C;AAC1C,qDAA6B;AAE7B;;;;;;GAMG;AAEH;;;;;;GAMG;AACH,QAAwB,CAAC,CAAC,aAAa,CACrC,cAAc,EACd,OAAO;IAEP,MAAM,EACJ,IAAI,GAAG,EAAE,GACV,GAAG,OAAO,IAAI,EAAE,CAAC;IAElB,IAAI,QAAQ,CAAC;IACb,IAAI,EAAE,GAAG,KAAK,CAAC;IACf,IAAI,aAAa,GAAG,IAAI,CAAC;IAEzB,IAAI;QACF,QAAQ,GAAG,MAAM,cAAI,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,CAAC;QAC/C,EAAE,GAAG,IAAI,CAAC;KACX;IAAC,OAAO,KAAK,EAAE;QACd,4CAA4C;QAC5C,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAE1B,sCAAsC;QACtC,aAAa,GAAG,KAAK,CAAC;KACvB;IACD,OAAO;QACL,EAAE;QACF,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,aAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC;QACjC,MAAM,EAAE,aAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC;KACtC,CAAC;AACJ,CAAC;AA5BD,gCA4BC"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export default safeRequest;
|
|
2
|
-
/**
|
|
3
|
-
* Обёрнутая в эффект call сага doSafeRequest.
|
|
4
|
-
* @param {Array} args Аргументы для вызова саги.
|
|
5
|
-
* @return {import('@redux-saga/core/effects').CallEffect} Эффект.
|
|
6
|
-
*/
|
|
7
|
-
declare function safeRequest(...args: any[]): import('@redux-saga/core/effects').CallEffect;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const effects_1 = require("redux-saga/effects");
|
|
7
|
-
const do_safe_request_1 = __importDefault(require("./do-safe-request"));
|
|
8
|
-
/**
|
|
9
|
-
* Обёрнутая в эффект call сага doSafeRequest.
|
|
10
|
-
* @param {Array} args Аргументы для вызова саги.
|
|
11
|
-
* @return {import('@redux-saga/core/effects').CallEffect} Эффект.
|
|
12
|
-
*/
|
|
13
|
-
const safeRequest = (...args) => effects_1.call(do_safe_request_1.default, ...args);
|
|
14
|
-
exports.default = safeRequest;
|
|
15
|
-
//# sourceMappingURL=safe-request.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"safe-request.js","sourceRoot":"","sources":["../../../src/helpers/saga/safe-request.js"],"names":[],"mappings":";;;;;AAAA,gDAA0C;AAC1C,wEAA8C;AAE9C;;;;GAIG;AACH,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,cAAI,CAAC,yBAAa,EAAE,GAAG,IAAI,CAAC,CAAC;AAE9D,kBAAe,WAAW,CAAC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Генерирует эффект по таймауту.
|
|
3
|
-
* @param {number} timeout Время задержки в мс.
|
|
4
|
-
* @param {Array} types Массив с типами экшенов.
|
|
5
|
-
* @param {Function} task Генератор.
|
|
6
|
-
* @param {...*} args Аргументы для генератора.
|
|
7
|
-
*/
|
|
8
|
-
export function generateTakeChain(timeout: number, types: any[], task: Function, ...args: any[]): Generator<import("redux-saga/effects").TakeEffect | import("redux-saga/effects").RaceEffect<import("redux-saga/effects").TakeEffect> | import("redux-saga/effects").ForkEffect<unknown>, void, {
|
|
9
|
-
action: any;
|
|
10
|
-
canceled: any;
|
|
11
|
-
}>;
|
|
12
|
-
/**
|
|
13
|
-
* Вызывает экшен с заданной задержкой.
|
|
14
|
-
* @param {number} timeout Время задержки в мс.
|
|
15
|
-
* @param {string} type Тип экшена.
|
|
16
|
-
*/
|
|
17
|
-
export function putDelayed(timeout: number, type: string): Generator<import("redux-saga/effects").CallEffect<true> | import("redux-saga/effects").PutEffect<{
|
|
18
|
-
type: string;
|
|
19
|
-
}>, void, unknown>;
|
|
20
|
-
export function takeChain(timeout: number, types: any[], task: Function, ...args: any[]): Object;
|