@sima-land/isomorph 10.0.0 → 11.0.0-alpha.1

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.
Files changed (476) hide show
  1. package/cache/types.d.ts +7 -0
  2. package/cache/types.js +3 -0
  3. package/cache/types.js.map +1 -0
  4. package/config/browser.d.ts +6 -0
  5. package/config/browser.js +13 -0
  6. package/config/browser.js.map +1 -0
  7. package/config/index.d.ts +7 -0
  8. package/config/index.js +20 -0
  9. package/config/index.js.map +1 -0
  10. package/config/node.d.ts +6 -0
  11. package/config/node.js +19 -0
  12. package/config/node.js.map +1 -0
  13. package/config/types.d.ts +7 -0
  14. package/config/types.js +3 -0
  15. package/config/types.js.map +1 -0
  16. package/config/utils.d.ts +5 -0
  17. package/config/utils.js +12 -0
  18. package/config/utils.js.map +1 -0
  19. package/container/application.d.ts +25 -0
  20. package/container/application.js +63 -0
  21. package/container/application.js.map +1 -0
  22. package/container/index.d.ts +16 -13
  23. package/container/index.js +60 -161
  24. package/container/index.js.map +1 -1
  25. package/container/types.d.ts +14 -0
  26. package/container/types.js +3 -0
  27. package/container/types.js.map +1 -0
  28. package/error-tracker/browser.d.ts +8 -0
  29. package/error-tracker/browser.js +40 -0
  30. package/error-tracker/browser.js.map +1 -0
  31. package/error-tracker/node.d.ts +8 -0
  32. package/error-tracker/node.js +40 -0
  33. package/error-tracker/node.js.map +1 -0
  34. package/error-tracker/types.d.ts +18 -0
  35. package/error-tracker/types.js +3 -0
  36. package/error-tracker/types.js.map +1 -0
  37. package/error-tracker/utils.d.ts +12 -0
  38. package/error-tracker/utils.js +19 -0
  39. package/error-tracker/utils.js.map +1 -0
  40. package/http-client/middleware/cookie.d.ts +19 -0
  41. package/http-client/middleware/cookie.js +62 -0
  42. package/http-client/middleware/cookie.js.map +1 -0
  43. package/http-client/middleware/tracing.d.ts +32 -0
  44. package/http-client/middleware/tracing.js +67 -0
  45. package/http-client/middleware/tracing.js.map +1 -0
  46. package/http-client/types.d.ts +6 -0
  47. package/http-client/types.js +3 -0
  48. package/http-client/types.js.map +1 -0
  49. package/http-client/utils.d.ts +36 -0
  50. package/http-client/utils.js +49 -0
  51. package/http-client/utils.js.map +1 -0
  52. package/http-server/constants.d.ts +4 -0
  53. package/http-server/constants.js +8 -0
  54. package/http-server/constants.js.map +1 -0
  55. package/http-server/handler/health-check.d.ts +6 -0
  56. package/http-server/handler/health-check.js +15 -0
  57. package/http-server/handler/health-check.js.map +1 -0
  58. package/http-server/middleware/logging.d.ts +10 -0
  59. package/http-server/middleware/logging.js +31 -0
  60. package/http-server/middleware/logging.js.map +1 -0
  61. package/http-server/middleware/metrics.d.ts +23 -0
  62. package/http-server/middleware/metrics.js +60 -0
  63. package/http-server/middleware/metrics.js.map +1 -0
  64. package/http-server/middleware/tracing.d.ts +8 -0
  65. package/http-server/middleware/tracing.js +32 -0
  66. package/http-server/middleware/tracing.js.map +1 -0
  67. package/http-server/template/index.d.ts +1 -0
  68. package/http-server/template/index.js +36 -0
  69. package/http-server/template/index.js.map +1 -0
  70. package/http-server/types.d.ts +33 -0
  71. package/http-server/types.js +3 -0
  72. package/http-server/types.js.map +1 -0
  73. package/http-server/utils.d.ts +30 -0
  74. package/http-server/utils.js +100 -0
  75. package/http-server/utils.js.map +1 -0
  76. package/logger/handler/console.d.ts +8 -0
  77. package/logger/handler/console.js +36 -0
  78. package/logger/handler/console.js.map +1 -0
  79. package/logger/handler/sentry.d.ts +8 -0
  80. package/logger/handler/sentry.js +36 -0
  81. package/logger/handler/sentry.js.map +1 -0
  82. package/logger/index.d.ts +6 -0
  83. package/logger/index.js +31 -0
  84. package/logger/index.js.map +1 -0
  85. package/logger/types.d.ts +24 -0
  86. package/logger/types.js +3 -0
  87. package/logger/types.js.map +1 -0
  88. package/metrics/constants.d.ts +4 -0
  89. package/metrics/constants.js +8 -0
  90. package/metrics/constants.js.map +1 -0
  91. package/metrics/node.d.ts +18 -0
  92. package/metrics/node.js +74 -0
  93. package/metrics/node.js.map +1 -0
  94. package/package.json +44 -63
  95. package/preset/index.d.ts +7 -0
  96. package/preset/index.js +25 -0
  97. package/preset/index.js.map +1 -0
  98. package/preset/node/index.d.ts +15 -0
  99. package/preset/node/index.js +90 -0
  100. package/preset/node/index.js.map +1 -0
  101. package/preset/node/response.d.ts +17 -0
  102. package/preset/node/response.js +78 -0
  103. package/preset/node/response.js.map +1 -0
  104. package/preset/types.d.ts +7 -0
  105. package/preset/types.js +3 -0
  106. package/preset/types.js.map +1 -0
  107. package/saga-runner/index.d.ts +8 -0
  108. package/saga-runner/index.js +79 -0
  109. package/saga-runner/index.js.map +1 -0
  110. package/saga-runner/types.d.ts +10 -0
  111. package/saga-runner/types.js +3 -0
  112. package/saga-runner/types.js.map +1 -0
  113. package/tokens.d.ts +41 -0
  114. package/tokens.js +44 -0
  115. package/tokens.js.map +1 -0
  116. package/tracer/node.d.ts +10 -0
  117. package/tracer/node.js +38 -0
  118. package/tracer/node.js.map +1 -0
  119. package/tracer/types.d.ts +2 -0
  120. package/tracer/types.js +3 -0
  121. package/tracer/types.js.map +1 -0
  122. package/{browser → utils/browser}/analytics/data-layer.d.ts +0 -0
  123. package/{browser → utils/browser}/analytics/data-layer.js +1 -2
  124. package/utils/browser/analytics/data-layer.js.map +1 -0
  125. package/{browser → utils/browser}/analytics/oko.d.ts +0 -0
  126. package/{browser → utils/browser}/analytics/oko.js +6 -7
  127. package/utils/browser/analytics/oko.js.map +1 -0
  128. package/utils/browser/storage/index.d.ts +4 -0
  129. package/utils/browser/storage/index.js +63 -0
  130. package/utils/browser/storage/index.js.map +1 -0
  131. package/utils/number.d.ts +6 -0
  132. package/utils/number.js +13 -0
  133. package/utils/number.js.map +1 -0
  134. package/utils/react/error-handlers/index.d.ts +38 -0
  135. package/utils/react/error-handlers/index.js +47 -0
  136. package/utils/react/error-handlers/index.js.map +1 -0
  137. package/utils/redux/remote-data.d.ts +23 -0
  138. package/utils/redux/remote-data.js +28 -0
  139. package/utils/redux/remote-data.js.map +1 -0
  140. package/utils/redux-saga/take-chain.d.ts +24 -0
  141. package/utils/redux-saga/take-chain.js +56 -0
  142. package/utils/redux-saga/take-chain.js.map +1 -0
  143. package/utils/webpack/module-federation/index.d.ts +21 -0
  144. package/utils/webpack/module-federation/index.js +74 -0
  145. package/utils/webpack/module-federation/index.js.map +1 -0
  146. package/utils/webpack/module-federation/types.d.ts +26 -0
  147. package/utils/webpack/module-federation/types.js +3 -0
  148. package/utils/webpack/module-federation/types.js.map +1 -0
  149. package/utils/webpack/module-federation/utils.d.ts +15 -0
  150. package/utils/webpack/module-federation/utils.js +36 -0
  151. package/utils/webpack/module-federation/utils.js.map +1 -0
  152. package/browser/analytics/data-layer.js.map +0 -1
  153. package/browser/analytics/oko.js.map +0 -1
  154. package/cache/helpers.d.ts +0 -4
  155. package/cache/helpers.js +0 -39
  156. package/cache/helpers.js.map +0 -1
  157. package/cache/local-storage.d.ts +0 -34
  158. package/cache/local-storage.js +0 -90
  159. package/cache/local-storage.js.map +0 -1
  160. package/cache/redis.d.ts +0 -10
  161. package/cache/redis.js +0 -54
  162. package/cache/redis.js.map +0 -1
  163. package/cache/wrap-in-trace.d.ts +0 -8
  164. package/cache/wrap-in-trace.js +0 -68
  165. package/cache/wrap-in-trace.js.map +0 -1
  166. package/config/create.d.ts +0 -8
  167. package/config/create.js +0 -32
  168. package/config/create.js.map +0 -1
  169. package/config/helpers.d.ts +0 -11
  170. package/config/helpers.js +0 -71
  171. package/config/helpers.js.map +0 -1
  172. package/config/validate.d.ts +0 -18
  173. package/config/validate.js +0 -107
  174. package/config/validate.js.map +0 -1
  175. package/container/create-inject.d.ts +0 -7
  176. package/container/create-inject.js +0 -36
  177. package/container/create-inject.js.map +0 -1
  178. package/container/get-dependencies.d.ts +0 -13
  179. package/container/get-dependencies.js +0 -54
  180. package/container/get-dependencies.js.map +0 -1
  181. package/container/is-container.d.ts +0 -7
  182. package/container/is-container.js +0 -17
  183. package/container/is-container.js.map +0 -1
  184. package/container/service-not-found-error.d.ts +0 -10
  185. package/container/service-not-found-error.js +0 -18
  186. package/container/service-not-found-error.js.map +0 -1
  187. package/create-proxy/create-proxy-middleware/index.d.ts +0 -16
  188. package/create-proxy/create-proxy-middleware/index.js +0 -47
  189. package/create-proxy/create-proxy-middleware/index.js.map +0 -1
  190. package/create-proxy/index.d.ts +0 -12
  191. package/create-proxy/index.js +0 -25
  192. package/create-proxy/index.js.map +0 -1
  193. package/create-response-sender/index.d.ts +0 -8
  194. package/create-response-sender/index.js +0 -42
  195. package/create-response-sender/index.js.map +0 -1
  196. package/get-dynamic-data/index.d.ts +0 -8
  197. package/get-dynamic-data/index.js +0 -23
  198. package/get-dynamic-data/index.js.map +0 -1
  199. package/graceful-shutdown/index.d.ts +0 -26
  200. package/graceful-shutdown/index.js +0 -87
  201. package/graceful-shutdown/index.js.map +0 -1
  202. package/helpers/add-error-handling/index.d.ts +0 -1
  203. package/helpers/add-error-handling/index.js +0 -42
  204. package/helpers/add-error-handling/index.js.map +0 -1
  205. package/helpers/api/create-enhancer.d.ts +0 -12
  206. package/helpers/api/create-enhancer.js +0 -52
  207. package/helpers/api/create-enhancer.js.map +0 -1
  208. package/helpers/api/create-instance.d.ts +0 -11
  209. package/helpers/api/create-instance.js +0 -39
  210. package/helpers/api/create-instance.js.map +0 -1
  211. package/helpers/api/middlewares/collect-cookie-middleware.d.ts +0 -10
  212. package/helpers/api/middlewares/collect-cookie-middleware.js +0 -39
  213. package/helpers/api/middlewares/collect-cookie-middleware.js.map +0 -1
  214. package/helpers/api/middlewares/count-api-response-time.d.ts +0 -12
  215. package/helpers/api/middlewares/count-api-response-time.js +0 -39
  216. package/helpers/api/middlewares/count-api-response-time.js.map +0 -1
  217. package/helpers/api/middlewares/error-handlers-middlewares.d.ts +0 -5
  218. package/helpers/api/middlewares/error-handlers-middlewares.js +0 -114
  219. package/helpers/api/middlewares/error-handlers-middlewares.js.map +0 -1
  220. package/helpers/api/middlewares/helpers.d.ts +0 -11
  221. package/helpers/api/middlewares/helpers.js +0 -27
  222. package/helpers/api/middlewares/helpers.js.map +0 -1
  223. package/helpers/api/middlewares/pass-headers-middleware.d.ts +0 -3
  224. package/helpers/api/middlewares/pass-headers-middleware.js +0 -27
  225. package/helpers/api/middlewares/pass-headers-middleware.js.map +0 -1
  226. package/helpers/api/middlewares/prepare-request-headers.d.ts +0 -5
  227. package/helpers/api/middlewares/prepare-request-headers.js +0 -20
  228. package/helpers/api/middlewares/prepare-request-headers.js.map +0 -1
  229. package/helpers/api/middlewares/set-http-agents-middleware.d.ts +0 -15
  230. package/helpers/api/middlewares/set-http-agents-middleware.js +0 -34
  231. package/helpers/api/middlewares/set-http-agents-middleware.js.map +0 -1
  232. package/helpers/api/middlewares/stages-trace-middleware.d.ts +0 -17
  233. package/helpers/api/middlewares/stages-trace-middleware.js +0 -57
  234. package/helpers/api/middlewares/stages-trace-middleware.js.map +0 -1
  235. package/helpers/api/middlewares/trace-request-middleware.d.ts +0 -24
  236. package/helpers/api/middlewares/trace-request-middleware.js +0 -69
  237. package/helpers/api/middlewares/trace-request-middleware.js.map +0 -1
  238. package/helpers/api/server-adapter/__fixtures__/fake-keys.d.ts +0 -10
  239. package/helpers/api/server-adapter/__fixtures__/fake-keys.js +0 -61
  240. package/helpers/api/server-adapter/__fixtures__/fake-keys.js.map +0 -1
  241. package/helpers/api/server-adapter/constants.d.ts +0 -5
  242. package/helpers/api/server-adapter/constants.js +0 -16
  243. package/helpers/api/server-adapter/constants.js.map +0 -1
  244. package/helpers/api/server-adapter/helpers.d.ts +0 -26
  245. package/helpers/api/server-adapter/helpers.js +0 -208
  246. package/helpers/api/server-adapter/helpers.js.map +0 -1
  247. package/helpers/api/server-adapter/index.d.ts +0 -10
  248. package/helpers/api/server-adapter/index.js +0 -118
  249. package/helpers/api/server-adapter/index.js.map +0 -1
  250. package/helpers/development/use-dot-env.d.ts +0 -6
  251. package/helpers/development/use-dot-env.js +0 -11
  252. package/helpers/development/use-dot-env.js.map +0 -1
  253. package/helpers/get-params/index.d.ts +0 -4
  254. package/helpers/get-params/index.js +0 -51
  255. package/helpers/get-params/index.js.map +0 -1
  256. package/helpers/http/request-getters.d.ts +0 -5
  257. package/helpers/http/request-getters.js +0 -49
  258. package/helpers/http/request-getters.js.map +0 -1
  259. package/helpers/http/statuses-validator.d.ts +0 -3
  260. package/helpers/http/statuses-validator.js +0 -25
  261. package/helpers/http/statuses-validator.js.map +0 -1
  262. package/helpers/logger/create-pino-instance/index.d.ts +0 -6
  263. package/helpers/logger/create-pino-instance/index.js +0 -39
  264. package/helpers/logger/create-pino-instance/index.js.map +0 -1
  265. package/helpers/logger/format-time/index.d.ts +0 -6
  266. package/helpers/logger/format-time/index.js +0 -9
  267. package/helpers/logger/format-time/index.js.map +0 -1
  268. package/helpers/metrics/index.d.ts +0 -23
  269. package/helpers/metrics/index.js +0 -42
  270. package/helpers/metrics/index.js.map +0 -1
  271. package/helpers/prometheus/index.d.ts +0 -4
  272. package/helpers/prometheus/index.js +0 -13
  273. package/helpers/prometheus/index.js.map +0 -1
  274. package/helpers/prometheus/measure-middleware.d.ts +0 -5
  275. package/helpers/prometheus/measure-middleware.js +0 -69
  276. package/helpers/prometheus/measure-middleware.js.map +0 -1
  277. package/helpers/prometheus/metric-adapter.d.ts +0 -36
  278. package/helpers/prometheus/metric-adapter.js +0 -98
  279. package/helpers/prometheus/metric-adapter.js.map +0 -1
  280. package/helpers/react/error-handlers/index.d.ts +0 -40
  281. package/helpers/react/error-handlers/index.js +0 -52
  282. package/helpers/react/error-handlers/index.js.map +0 -1
  283. package/helpers/redux/constants.d.ts +0 -5
  284. package/helpers/redux/constants.js +0 -14
  285. package/helpers/redux/constants.js.map +0 -1
  286. package/helpers/redux/create-compose-middleware.d.ts +0 -15
  287. package/helpers/redux/create-compose-middleware.js +0 -23
  288. package/helpers/redux/create-compose-middleware.js.map +0 -1
  289. package/helpers/redux/get-dev-compose-creator.d.ts +0 -6
  290. package/helpers/redux/get-dev-compose-creator.js +0 -13
  291. package/helpers/redux/get-dev-compose-creator.js.map +0 -1
  292. package/helpers/redux/prepare-on-ready.d.ts +0 -9
  293. package/helpers/redux/prepare-on-ready.js +0 -16
  294. package/helpers/redux/prepare-on-ready.js.map +0 -1
  295. package/helpers/redux/remote-data.d.ts +0 -40
  296. package/helpers/redux/remote-data.js +0 -91
  297. package/helpers/redux/remote-data.js.map +0 -1
  298. package/helpers/redux/selector/statuses.d.ts +0 -23
  299. package/helpers/redux/selector/statuses.js +0 -34
  300. package/helpers/redux/selector/statuses.js.map +0 -1
  301. package/helpers/redux/wait-on-store-readiness.d.ts +0 -11
  302. package/helpers/redux/wait-on-store-readiness.js +0 -29
  303. package/helpers/redux/wait-on-store-readiness.js.map +0 -1
  304. package/helpers/render/get-react-markup-data.d.ts +0 -14
  305. package/helpers/render/get-react-markup-data.js +0 -20
  306. package/helpers/render/get-react-markup-data.js.map +0 -1
  307. package/helpers/render/index.d.ts +0 -21
  308. package/helpers/render/index.js +0 -72
  309. package/helpers/render/index.js.map +0 -1
  310. package/helpers/render/render-app.d.ts +0 -12
  311. package/helpers/render/render-app.js +0 -12
  312. package/helpers/render/render-app.js.map +0 -1
  313. package/helpers/saga/__fixtures__/do-safe-request.d.ts +0 -43
  314. package/helpers/saga/__fixtures__/do-safe-request.js +0 -50
  315. package/helpers/saga/__fixtures__/do-safe-request.js.map +0 -1
  316. package/helpers/saga/cache-result.d.ts +0 -46
  317. package/helpers/saga/cache-result.js +0 -71
  318. package/helpers/saga/cache-result.js.map +0 -1
  319. package/helpers/saga/create-store.d.ts +0 -20
  320. package/helpers/saga/create-store.js +0 -106
  321. package/helpers/saga/create-store.js.map +0 -1
  322. package/helpers/saga/do-safe-request.d.ts +0 -38
  323. package/helpers/saga/do-safe-request.js +0 -45
  324. package/helpers/saga/do-safe-request.js.map +0 -1
  325. package/helpers/saga/safe-request.d.ts +0 -7
  326. package/helpers/saga/safe-request.js +0 -15
  327. package/helpers/saga/safe-request.js.map +0 -1
  328. package/helpers/saga/take-chain.d.ts +0 -20
  329. package/helpers/saga/take-chain.js +0 -56
  330. package/helpers/saga/take-chain.js.map +0 -1
  331. package/helpers/tracer/create-child-tracing-middleware.d.ts +0 -7
  332. package/helpers/tracer/create-child-tracing-middleware.js +0 -40
  333. package/helpers/tracer/create-child-tracing-middleware.js.map +0 -1
  334. package/helpers/tracer/index.d.ts +0 -24
  335. package/helpers/tracer/index.js +0 -144
  336. package/helpers/tracer/index.js.map +0 -1
  337. package/helpers/utils/check-feature-by-segment.d.ts +0 -2
  338. package/helpers/utils/check-feature-by-segment.js +0 -31
  339. package/helpers/utils/check-feature-by-segment.js.map +0 -1
  340. package/helpers/utils/format-object-keys.d.ts +0 -6
  341. package/helpers/utils/format-object-keys.js +0 -27
  342. package/helpers/utils/format-object-keys.js.map +0 -1
  343. package/helpers/utils/get-ms-from-hrt.d.ts +0 -2
  344. package/helpers/utils/get-ms-from-hrt.js +0 -22
  345. package/helpers/utils/get-ms-from-hrt.js.map +0 -1
  346. package/helpers/utils/is-match-pattern-list.d.ts +0 -8
  347. package/helpers/utils/is-match-pattern-list.js +0 -16
  348. package/helpers/utils/is-match-pattern-list.js.map +0 -1
  349. package/helpers/utils/is-not-empty-array.d.ts +0 -2
  350. package/helpers/utils/is-not-empty-array.js +0 -12
  351. package/helpers/utils/is-not-empty-array.js.map +0 -1
  352. package/helpers/utils/is-not-empty-string.d.ts +0 -2
  353. package/helpers/utils/is-not-empty-string.js +0 -15
  354. package/helpers/utils/is-not-empty-string.js.map +0 -1
  355. package/helpers/utils/is-numeric.d.ts +0 -7
  356. package/helpers/utils/is-numeric.js +0 -16
  357. package/helpers/utils/is-numeric.js.map +0 -1
  358. package/helpers/utils/wrap-in-measure-event.d.ts +0 -9
  359. package/helpers/utils/wrap-in-measure-event.js +0 -50
  360. package/helpers/utils/wrap-in-measure-event.js.map +0 -1
  361. package/logger/create-logger-middleware/index.d.ts +0 -14
  362. package/logger/create-logger-middleware/index.js +0 -41
  363. package/logger/create-logger-middleware/index.js.map +0 -1
  364. package/logger/create-sentry-instance/index.d.ts +0 -29
  365. package/logger/create-sentry-instance/index.js +0 -63
  366. package/logger/create-sentry-instance/index.js.map +0 -1
  367. package/logger/create-sentry-middleware/index.d.ts +0 -14
  368. package/logger/create-sentry-middleware/index.js +0 -19
  369. package/logger/create-sentry-middleware/index.js.map +0 -1
  370. package/logger/handler-creators/index.d.ts +0 -5
  371. package/logger/handler-creators/index.js +0 -41
  372. package/logger/handler-creators/index.js.map +0 -1
  373. package/logger/initialize-sentry-creator/index.d.ts +0 -17
  374. package/logger/initialize-sentry-creator/index.js +0 -35
  375. package/logger/initialize-sentry-creator/index.js.map +0 -1
  376. package/logger/sentry-logger/index.d.ts +0 -9
  377. package/logger/sentry-logger/index.js +0 -36
  378. package/logger/sentry-logger/index.js.map +0 -1
  379. package/module-federation/__example__/webpack-config.example.d.ts +0 -366
  380. package/module-federation/__example__/webpack-config.example.js +0 -51
  381. package/module-federation/__example__/webpack-config.example.js.map +0 -1
  382. package/module-federation/enhanced-module-federation-plugin.d.ts +0 -46
  383. package/module-federation/enhanced-module-federation-plugin.js +0 -72
  384. package/module-federation/enhanced-module-federation-plugin.js.map +0 -1
  385. package/module-federation/utils/index.d.ts +0 -8
  386. package/module-federation/utils/index.js +0 -28
  387. package/module-federation/utils/index.js.map +0 -1
  388. package/observe-middleware/index.d.ts +0 -9
  389. package/observe-middleware/index.js +0 -67
  390. package/observe-middleware/index.js.map +0 -1
  391. package/set-header-middleware/create.d.ts +0 -10
  392. package/set-header-middleware/create.js +0 -16
  393. package/set-header-middleware/create.js.map +0 -1
  394. package/src/browser/analytics/data-layer.ts +0 -12
  395. package/src/browser/analytics/oko.ts +0 -42
  396. package/src/cache/helpers.js +0 -32
  397. package/src/cache/local-storage.ts +0 -92
  398. package/src/cache/redis.js +0 -79
  399. package/src/cache/wrap-in-trace.js +0 -57
  400. package/src/config/create.js +0 -33
  401. package/src/config/helpers.js +0 -71
  402. package/src/config/validate.js +0 -114
  403. package/src/container/create-inject.js +0 -32
  404. package/src/container/get-dependencies.js +0 -46
  405. package/src/container/index.js +0 -188
  406. package/src/container/is-container.js +0 -14
  407. package/src/container/service-not-found-error.js +0 -14
  408. package/src/create-proxy/create-proxy-middleware/index.js +0 -47
  409. package/src/create-proxy/index.js +0 -27
  410. package/src/create-response-sender/index.js +0 -48
  411. package/src/get-dynamic-data/index.js +0 -26
  412. package/src/graceful-shutdown/index.js +0 -97
  413. package/src/helpers/add-error-handling/index.js +0 -24
  414. package/src/helpers/api/create-enhancer.js +0 -52
  415. package/src/helpers/api/create-instance.js +0 -42
  416. package/src/helpers/api/middlewares/collect-cookie-middleware.js +0 -27
  417. package/src/helpers/api/middlewares/count-api-response-time.js +0 -31
  418. package/src/helpers/api/middlewares/error-handlers-middlewares.js +0 -124
  419. package/src/helpers/api/middlewares/helpers.js +0 -26
  420. package/src/helpers/api/middlewares/pass-headers-middleware.js +0 -19
  421. package/src/helpers/api/middlewares/prepare-request-headers.js +0 -18
  422. package/src/helpers/api/middlewares/set-http-agents-middleware.js +0 -22
  423. package/src/helpers/api/middlewares/stages-trace-middleware.js +0 -46
  424. package/src/helpers/api/middlewares/trace-request-middleware.ts +0 -86
  425. package/src/helpers/api/server-adapter/__fixtures__/fake-keys.js +0 -58
  426. package/src/helpers/api/server-adapter/constants.js +0 -12
  427. package/src/helpers/api/server-adapter/helpers.js +0 -244
  428. package/src/helpers/api/server-adapter/index.js +0 -155
  429. package/src/helpers/development/use-dot-env.js +0 -9
  430. package/src/helpers/get-params/index.js +0 -59
  431. package/src/helpers/http/request-getters.js +0 -42
  432. package/src/helpers/http/statuses-validator.js +0 -20
  433. package/src/helpers/logger/create-pino-instance/index.js +0 -41
  434. package/src/helpers/logger/format-time/index.js +0 -6
  435. package/src/helpers/metrics/index.js +0 -40
  436. package/src/helpers/prometheus/index.js +0 -9
  437. package/src/helpers/prometheus/measure-middleware.js +0 -73
  438. package/src/helpers/prometheus/metric-adapter.js +0 -99
  439. package/src/helpers/react/error-handlers/index.tsx +0 -68
  440. package/src/helpers/redux/constants.js +0 -10
  441. package/src/helpers/redux/create-compose-middleware.js +0 -24
  442. package/src/helpers/redux/get-dev-compose-creator.js +0 -9
  443. package/src/helpers/redux/prepare-on-ready.js +0 -16
  444. package/src/helpers/redux/remote-data.js +0 -124
  445. package/src/helpers/redux/selector/statuses.js +0 -30
  446. package/src/helpers/redux/wait-on-store-readiness.js +0 -40
  447. package/src/helpers/render/get-react-markup-data.js +0 -18
  448. package/src/helpers/render/index.js +0 -69
  449. package/src/helpers/render/render-app.js +0 -15
  450. package/src/helpers/saga/__fixtures__/do-safe-request.js +0 -49
  451. package/src/helpers/saga/cache-result.js +0 -77
  452. package/src/helpers/saga/create-store.js +0 -102
  453. package/src/helpers/saga/do-safe-request.js +0 -47
  454. package/src/helpers/saga/safe-request.js +0 -11
  455. package/src/helpers/saga/take-chain.js +0 -53
  456. package/src/helpers/tracer/create-child-tracing-middleware.js +0 -42
  457. package/src/helpers/tracer/index.js +0 -171
  458. package/src/helpers/utils/check-feature-by-segment.js +0 -32
  459. package/src/helpers/utils/format-object-keys.js +0 -23
  460. package/src/helpers/utils/get-ms-from-hrt.js +0 -16
  461. package/src/helpers/utils/is-match-pattern-list.js +0 -13
  462. package/src/helpers/utils/is-not-empty-array.js +0 -8
  463. package/src/helpers/utils/is-not-empty-string.js +0 -11
  464. package/src/helpers/utils/is-numeric.ts +0 -12
  465. package/src/helpers/utils/wrap-in-measure-event.js +0 -35
  466. package/src/logger/create-logger-middleware/index.js +0 -46
  467. package/src/logger/create-sentry-instance/index.js +0 -74
  468. package/src/logger/create-sentry-middleware/index.js +0 -16
  469. package/src/logger/handler-creators/index.js +0 -38
  470. package/src/logger/initialize-sentry-creator/index.js +0 -43
  471. package/src/logger/sentry-logger/index.js +0 -33
  472. package/src/module-federation/__example__/webpack-config.example.js +0 -57
  473. package/src/module-federation/enhanced-module-federation-plugin.js +0 -92
  474. package/src/module-federation/utils/index.js +0 -32
  475. package/src/observe-middleware/index.js +0 -70
  476. package/src/set-header-middleware/create.js +0 -17
@@ -1,72 +0,0 @@
1
- "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
12
- };
13
- const { ModuleFederationPlugin } = require('webpack').container;
14
- const WebpackError = require('webpack').WebpackError;
15
- const { createExternalConfig } = require('./utils');
16
- const LIBRARY_ERROR_TEXT = [
17
- 'Property "library" set internally as "global" and not overridden.',
18
- 'For override global variable name use "containersGlobalKey" property.',
19
- 'For override "library" type use ModuleFederationPlugin.',
20
- ].join(' ');
21
- /** @typedef {string} Remote Имя удаленного сервиса (обычно совпадает с именем в git). */
22
- /** @typedef {import('webpack').ModuleFederationPluginOptions} MFPluginOriginalOptions Опции. */
23
- /**
24
- * @typedef EnhancedModuleFederationPluginOptions Опции.
25
- * @param {string} name Имя сервиса.
26
- * @param {string} filename Имя удаленной точки входа.
27
- * @param {Object<string, Remote>} [remotes] Удаленные сервисы.
28
- * @param {MFPluginOriginalOptions.exposes} [exposes] Предоставляемые сервисы.
29
- * @param {MFPluginOriginalOptions.shared} [shared] Общие зависимости.
30
- * @param {string} [remoteEntriesGlobalKey = '__RemoteEntriesList__'] Ключ свойства в глобальном объекте,
31
- * в котором хранится карта точек входа в удаленные сервисы.
32
- * @param {string} [containersGlobalKey = '__FederationContainers__'] Ключ свойства в глобальном объекте,
33
- * в который добавляются контейнеры удаленных сервисов.
34
- * @param {boolean} [useInDevelopment = false] Требуется ли подключение ModuleFederationPlugin в среде разработки.
35
- */
36
- /**
37
- * Создает плагин ModuleFederation с опциями, необходимыми для оркестрации удаленных модулей на клиенте.
38
- * Плагин ModuleFederation будет добавлен в production режиме.
39
- */
40
- class EnhancedModuleFederationPlugin {
41
- /**
42
- * @param {EnhancedModuleFederationPluginOptions} options Опции.
43
- */
44
- constructor(options) {
45
- const { name, library, remoteEntriesGlobalKey = '__RemoteEntriesList__', containersGlobalKey = '__FederationContainers__', } = options;
46
- if (library) {
47
- throw new WebpackError(LIBRARY_ERROR_TEXT);
48
- }
49
- this._options = Object.assign(Object.assign({}, options), { remoteEntriesGlobalKey,
50
- containersGlobalKey, library: {
51
- type: 'global',
52
- name: [containersGlobalKey, name],
53
- } });
54
- }
55
- /**
56
- * @param {import('webpack').Compiler} compiler Компилятор.
57
- */
58
- apply(compiler) {
59
- const _a = this._options, { remotes, remoteEntriesGlobalKey, containersGlobalKey, useInDevelopment = false } = _a, originalOptions = __rest(_a, ["remotes", "remoteEntriesGlobalKey", "containersGlobalKey", "useInDevelopment"]);
60
- const configuredRemotes = {};
61
- remotes && Object.keys(remotes).forEach(key => {
62
- configuredRemotes[key] = { external: createExternalConfig(remotes[key], remoteEntriesGlobalKey, containersGlobalKey) };
63
- });
64
- compiler.hooks.environment.tap('EnhancedModuleFederationPlugin', () => {
65
- if (useInDevelopment || compiler.options.mode === 'production') {
66
- new ModuleFederationPlugin(Object.assign(Object.assign({}, remotes && { remotes: configuredRemotes }), originalOptions)).apply(compiler);
67
- }
68
- });
69
- }
70
- }
71
- module.exports = EnhancedModuleFederationPlugin;
72
- //# sourceMappingURL=enhanced-module-federation-plugin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"enhanced-module-federation-plugin.js","sourceRoot":"","sources":["../../src/module-federation/enhanced-module-federation-plugin.js"],"names":[],"mappings":";;;;;;;;;;;;AAAA,MAAM,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC;AAChE,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC;AACrD,MAAM,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AAEpD,MAAM,kBAAkB,GAAG;IACzB,mEAAmE;IACnE,uEAAuE;IACvE,yDAAyD;CAC1D,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEZ,yFAAyF;AACzF,gGAAgG;AAEhG;;;;;;;;;;;;GAYG;AAEH;;;GAGG;AACH,MAAM,8BAA8B;IAClC;;OAEG;IACH,YAAa,OAAO;QAClB,MAAM,EACJ,IAAI,EACJ,OAAO,EACP,sBAAsB,GAAG,uBAAuB,EAChD,mBAAmB,GAAG,0BAA0B,GACjD,GAAG,OAAO,CAAC;QAEZ,IAAI,OAAO,EAAE;YACX,MAAM,IAAI,YAAY,CAAC,kBAAkB,CAAC,CAAC;SAC5C;QAED,IAAI,CAAC,QAAQ,mCACR,OAAO,KACV,sBAAsB;YACtB,mBAAmB,EACnB,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,mBAAmB,EAAE,IAAI,CAAC;aAClC,GACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAE,QAAQ;QACb,MAAM,KAMF,IAAI,CAAC,QAAQ,EANX,EACJ,OAAO,EACP,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,GAAG,KAAK,OAET,EADZ,eAAe,cALd,gFAML,CAAgB,CAAC;QAElB,MAAM,iBAAiB,GAAG,EAAE,CAAC;QAE7B,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YAC5C,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,oBAAoB,CACvD,OAAO,CAAC,GAAG,CAAC,EACZ,sBAAsB,EACtB,mBAAmB,CACpB,EAAE,CAAC;QACN,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,gCAAgC,EAAE,GAAG,EAAE;YACpE,IAAI,gBAAgB,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,YAAY,EAAE;gBAC9D,IAAI,sBAAsB,iCACrB,OAAO,IAAI,EAAE,OAAO,EAAE,iBAAiB,EAAE,GACzC,eAAe,EAClB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;aACpB;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAED,MAAM,CAAC,OAAO,GAAG,8BAA8B,CAAC"}
@@ -1,8 +0,0 @@
1
- /**
2
- * Возвращает скрипт инициализации удаленного модуля.
3
- * @param {string} serviceName Имя сервиса, содержащего удаленные модули.
4
- * @param {string} remoteEntriesGlobalKey Глобальная переменная, в которой хранятся пути к удаленным точкам входа.
5
- * @param {string} containersGlobalKey Глобальная переменная, в которую добавляются удаленные контейнеры.
6
- * @return {string} Скрипт инициализации.
7
- */
8
- export function createExternalConfig(serviceName: string, remoteEntriesGlobalKey: string, containersGlobalKey: string): string;
@@ -1,28 +0,0 @@
1
- "use strict";
2
- /**
3
- * Возвращает скрипт инициализации удаленного модуля.
4
- * @param {string} serviceName Имя сервиса, содержащего удаленные модули.
5
- * @param {string} remoteEntriesGlobalKey Глобальная переменная, в которой хранятся пути к удаленным точкам входа.
6
- * @param {string} containersGlobalKey Глобальная переменная, в которую добавляются удаленные контейнеры.
7
- * @return {string} Скрипт инициализации.
8
- */
9
- const createExternalConfig = (serviceName, remoteEntriesGlobalKey, containersGlobalKey) => `promise new Promise((resolve, reject) => {
10
- if (window['${remoteEntriesGlobalKey}']) {
11
- const scriptElement = document.createElement('script');
12
- scriptElement.onload = () => {
13
- scriptElement.remove();
14
- resolve(window['${containersGlobalKey}']['${serviceName}']);
15
- };
16
- scriptElement.onerror = () => {
17
- scriptElement.remove();
18
- reject(new Error('Failed loading remoteEntry for "${serviceName}".'));
19
- };
20
- scriptElement.src = window['${remoteEntriesGlobalKey}']['${serviceName}'];
21
- scriptElement.async = true;
22
- document.head.append(scriptElement);
23
- } else {
24
- reject(new ReferenceError('Object "${remoteEntriesGlobalKey}" unavailable.'));
25
- }
26
- })`;
27
- module.exports = { createExternalConfig };
28
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/module-federation/utils/index.js"],"names":[],"mappings":";AAAA;;;;;;GAMG;AACH,MAAM,oBAAoB,GAAG,CAC3B,WAAW,EACX,sBAAsB,EACtB,mBAAmB,EACnB,EAAE,CACA;gBACY,sBAAsB;;;;wBAId,mBAAmB,OAAO,WAAW;;;;0DAIH,WAAW;;kCAEnC,sBAAsB,OAAO,WAAW;;;;yCAIjC,sBAAsB;;GAE5D,CAAC;AAEJ,MAAM,CAAC,OAAO,GAAG,EAAE,oBAAoB,EAAE,CAAC"}
@@ -1,9 +0,0 @@
1
- export function defaultStartSubscriber({ callback }: Function): any;
2
- export function defaultFinishSubscriber({ response, callback }: {
3
- response: import('http').ServerResponse;
4
- callback: Function;
5
- }): import('http').ServerResponse;
6
- export function createObserveMiddleware({ onStart, onFinish, startSubscriber, finishSubscriber, }?: {
7
- onStart: Function;
8
- onFinish: Function;
9
- }): Function;
@@ -1,67 +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.createObserveMiddleware = exports.defaultFinishSubscriber = exports.defaultStartSubscriber = void 0;
7
- const isFunction_1 = __importDefault(require("lodash/isFunction"));
8
- const get_ms_from_hrt_1 = __importDefault(require("../helpers/utils/get-ms-from-hrt"));
9
- /**
10
- * Немедленно выполняет функцию-обработчик при старте middleware.
11
- * @param {Function} callback Функция обработчик.
12
- * @return {*} Результат выполнения функции-обработчика.
13
- */
14
- const defaultStartSubscriber = ({ callback }) => callback();
15
- exports.defaultStartSubscriber = defaultStartSubscriber;
16
- /**
17
- * Подписчик на событие завершения процесса.
18
- * @param {Object} param Параметры.
19
- * @param {import('http').ServerResponse} param.response Ответ сервера.
20
- * @param {Function} param.callback Функция-обработчик события.
21
- * @return {import('http').ServerResponse} Имеет ли событие другие обработчики.
22
- */
23
- const defaultFinishSubscriber = ({ response, callback }) => response.once('finish', callback);
24
- exports.defaultFinishSubscriber = defaultFinishSubscriber;
25
- /**
26
- * Возвращает новую функцию - промежуточный слой для Express-приложения.
27
- * @param {Object} options Опции.
28
- * @param {Function} options.onStart Сработает при старте запроса, получит временную отметку старта, запрос и ответ.
29
- * @param {Function} options.onFinish Сработает при отправке ответа, получит временную отметку старта, запрос и ответ.
30
- * @return {Function} Функция - промежуточный слой для Express.
31
- */
32
- const createObserveMiddleware = ({ onStart, onFinish, startSubscriber = exports.defaultStartSubscriber, finishSubscriber = exports.defaultFinishSubscriber, } = {}) => {
33
- const hasStartHandler = isFunction_1.default(onStart);
34
- const hasFinishHandler = isFunction_1.default(onFinish);
35
- const hasStartSubscriber = isFunction_1.default(startSubscriber);
36
- const hasFinishSubscriber = isFunction_1.default(finishSubscriber);
37
- return (request, response, next) => {
38
- let startTime = process.hrtime();
39
- if (hasStartSubscriber) {
40
- startSubscriber({
41
- request,
42
- response,
43
- callback: () => {
44
- startTime = process.hrtime();
45
- if (hasStartHandler) {
46
- onStart(get_ms_from_hrt_1.default(startTime), request, response);
47
- }
48
- },
49
- });
50
- }
51
- if (hasFinishSubscriber) {
52
- finishSubscriber({
53
- request,
54
- response,
55
- callback: () => {
56
- const duration = process.hrtime(startTime);
57
- if (hasFinishHandler) {
58
- onFinish(get_ms_from_hrt_1.default(duration), request, response);
59
- }
60
- },
61
- });
62
- }
63
- next();
64
- };
65
- };
66
- exports.createObserveMiddleware = createObserveMiddleware;
67
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/observe-middleware/index.js"],"names":[],"mappings":";;;;;;AAAA,mEAA2C;AAC3C,uFAA4D;AAE5D;;;;GAIG;AACI,MAAM,sBAAsB,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC;AAAtD,QAAA,sBAAsB,0BAAgC;AAEnE;;;;;;GAMG;AACI,MAAM,uBAAuB,GAAG,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAAxF,QAAA,uBAAuB,2BAAiE;AAErG;;;;;;GAMG;AACI,MAAM,uBAAuB,GAAG,CACrC,EACE,OAAO,EACP,QAAQ,EACR,eAAe,GAAG,8BAAsB,EACxC,gBAAgB,GAAG,+BAAuB,GAC3C,GAAG,EAAE,EACN,EAAE;IACF,MAAM,eAAe,GAAG,oBAAU,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,gBAAgB,GAAG,oBAAU,CAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,kBAAkB,GAAG,oBAAU,CAAC,eAAe,CAAC,CAAC;IACvD,MAAM,mBAAmB,GAAG,oBAAU,CAAC,gBAAgB,CAAC,CAAC;IAEzD,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;QACjC,IAAI,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;QACjC,IAAI,kBAAkB,EAAE;YACtB,eAAe,CAAC;gBACd,OAAO;gBACP,QAAQ;gBACR,QAAQ,EAAE,GAAG,EAAE;oBACb,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;oBAC7B,IAAI,eAAe,EAAE;wBACnB,OAAO,CAAC,yBAAY,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;qBACrD;gBACH,CAAC;aACF,CAAC,CAAC;SACJ;QAED,IAAI,mBAAmB,EAAE;YACvB,gBAAgB,CAAC;gBACf,OAAO;gBACP,QAAQ;gBACR,QAAQ,EAAE,GAAG,EAAE;oBACb,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;oBAC3C,IAAI,gBAAgB,EAAE;wBACpB,QAAQ,CAAC,yBAAY,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;qBACrD;gBACH,CAAC;aACF,CAAC,CAAC;SACJ;QAED,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC,CAAC;AA3CW,QAAA,uBAAuB,2BA2ClC"}
@@ -1,10 +0,0 @@
1
- export default createSetHeaderMiddleware;
2
- /**
3
- * Фабрика для промежуточного слоя устанавливающего заголовки.
4
- * @param {Object} dependencies Объект зависимостей.
5
- * @param {Object} [dependencies.headers] Объект заголовков.
6
- * @return {Function} Промежуточный слой приложения для установки заголовков со ссылками на клиентские ресурсы.
7
- */
8
- declare function createSetHeaderMiddleware({ headers, }: {
9
- headers?: Object | undefined;
10
- }): Function;
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /**
4
- * Фабрика для промежуточного слоя устанавливающего заголовки.
5
- * @param {Object} dependencies Объект зависимостей.
6
- * @param {Object} [dependencies.headers] Объект заголовков.
7
- * @return {Function} Промежуточный слой приложения для установки заголовков со ссылками на клиентские ресурсы.
8
- */
9
- const createSetHeaderMiddleware = ({ headers = {}, }) => (request, response, next) => {
10
- Object.entries(headers).forEach(([key, value]) => {
11
- response.set({ [key]: value });
12
- });
13
- next();
14
- };
15
- exports.default = createSetHeaderMiddleware;
16
- //# sourceMappingURL=create.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/set-header-middleware/create.js"],"names":[],"mappings":";;AAAA;;;;;GAKG;AACH,MAAM,yBAAyB,GAAG,CAAC,EACjC,OAAO,GAAG,EAAE,GACb,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;IAChC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAC/C,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,IAAI,EAAE,CAAC;AACT,CAAC,CAAC;AAEF,kBAAe,yBAAyB,CAAC"}
@@ -1,12 +0,0 @@
1
- import { isFunction } from 'lodash';
2
-
3
- /**
4
- * Отправка аналитики в око.
5
- * @param eventData Данные события для отправки.
6
- */
7
- export const dataLayerPush = (eventData: Record<string, any>) => {
8
- const win: any = window;
9
-
10
- // копируем объект так как window.dataLayer.push может менять аргумент в процессе работы
11
- isFunction(win.dataLayer?.push) && win.dataLayer.push({ ...eventData });
12
- };
@@ -1,42 +0,0 @@
1
- import { useRef } from 'react';
2
- import { isEqual, isFunction } from 'lodash';
3
-
4
- export type OkoEvent = Record<string, any>;
5
-
6
- /**
7
- * Отправка аналитики в око.
8
- * @param eventData Данные события для отправки.
9
- */
10
- export const okoPush = (eventData: OkoEvent) => {
11
- const win: any = window;
12
-
13
- // копируем объект так как window.oko.push меняет свой аргумент в процессе выполнения
14
- isFunction(win.oko?.push) && win.oko.push({ ...eventData });
15
- };
16
-
17
- /**
18
- * Хук, возвращающий функцию, которая отправит аналитику в ОКО.
19
- * @param data Данные события для отправки в ОКО.
20
- * @return Функция.
21
- */
22
- export const useOkoPush = (data: OkoEvent) => {
23
- const dataRef = useRef<OkoEvent>();
24
- const fnRef = useRef<() => void>();
25
-
26
- if (!dataRef.current) {
27
- dataRef.current = { ...data };
28
- }
29
-
30
- if (!fnRef.current) {
31
- fnRef.current = () => okoPush(dataRef.current as OkoEvent);
32
- }
33
-
34
- if (!isEqual(data, dataRef.current)) {
35
- throw Error([
36
- 'useAnalytics: Данные для аналитики изменились.',
37
- 'Если необходимо использовать динамические данные, вынесите логику из React-компонента.',
38
- ].join('\n'));
39
- }
40
-
41
- return fnRef.current;
42
- };
@@ -1,32 +0,0 @@
1
- import localStorageCache from './local-storage';
2
-
3
- /**
4
- * Создаёт обработчик события подключения к redis для установки статуса готовности кэша к работе.
5
- * @param {Object} cache Объект кэша.
6
- * @return {Function} Функция устанавливающая статус кэша.
7
- */
8
- export const getOnConnectCallback = cache => () => cache.status = true;
9
-
10
- /**
11
- * Создаёт обработчик события переподключения к redis для установки статуса готовности кэша к работе.
12
- * @param {Object} cache Объект кэша.
13
- * @return {Function} Функция устанавливающая статус кэша.
14
- */
15
- export const getOnReconnectingCallback = cache => () => cache.status = false;
16
-
17
- /**
18
- * Переподключение после ошибки.
19
- * @param {string} code Код ошибки.
20
- * @return {boolean} Сходится ли код ошибки с ECONNREFUSED.
21
- */
22
- export const reconnectOnError = ({ code }) => {
23
- const targetError = 'ECONNREFUSED';
24
- return code === targetError;
25
- };
26
-
27
- /**
28
- * Определяет есть ли в localStorage нужная информация.
29
- * @param {string} key Ключ.
30
- * @return {boolean} Признак наличия ключа.
31
- */
32
- export const keyInLocalStorageExists = key => localStorageCache.status && key in localStorage;
@@ -1,92 +0,0 @@
1
- /**
2
- * Определяет доступен ли кэш.
3
- * @return Флаг доступности кэш.
4
- */
5
- export const isAvailable = (): boolean => {
6
- try {
7
- const testKey = `local_storage_test_key::${Date.now()}`;
8
-
9
- window.localStorage.setItem(testKey, testKey);
10
- window.localStorage.removeItem(testKey);
11
-
12
- return true;
13
- } catch {
14
- return false;
15
- }
16
- }
17
-
18
- /**
19
- * Возвращает объект.
20
- * @param key Ключ.
21
- * @return Запрашиваемое значение.
22
- */
23
- export const getItem = (key: string): unknown => {
24
- const { value, expire } = JSON.parse(localStorage.getItem(key) || '{}');
25
- const now = Date.now();
26
- const isExpired = expire
27
- ? now > expire
28
- : true;
29
-
30
- isExpired && localStorage.removeItem(key);
31
-
32
- return isExpired ? null : value;
33
- };
34
-
35
- /**
36
- * Добавляет значение.
37
- * @param key Ключ.
38
- * @param value Значение.
39
- * @param duration Время жизни значения в секундах.
40
- */
41
- export const setItem = (key: string, value: any, duration = 3600) => {
42
- const now = Date.now();
43
- const durationMs = duration * 1000;
44
- const expire = now + durationMs;
45
-
46
- localStorage.setItem(key, JSON.stringify({
47
- value,
48
- expire,
49
- }));
50
- };
51
-
52
- /**
53
- * Определяет, превышена ли квота.
54
- * @param error Информация об ошибке.
55
- * @return Признак превышения квоты.
56
- */
57
- export const isQuotaExceeded = (error: any): boolean => {
58
- let quotaExceeded = false;
59
-
60
- if (error) {
61
- if (error.code) {
62
- switch (error.code) {
63
- case 22:
64
- quotaExceeded = true;
65
- break;
66
- case 1014:
67
- // Firefox
68
- if (error.name === 'NS_ERROR_DOM_QUOTA_REACHED') {
69
- quotaExceeded = true;
70
- }
71
- break;
72
- }
73
- } else if (error.number === -2147024882) {
74
- // IE 8
75
- quotaExceeded = true;
76
- }
77
- }
78
-
79
- return quotaExceeded;
80
- };
81
-
82
- /**
83
- * Набор методов для работы с кэшем.
84
- */
85
- const LocalStorageCache = {
86
- get: getItem,
87
- set: setItem,
88
- status: isAvailable(),
89
- quotaExceeded: isQuotaExceeded,
90
- } as const;
91
-
92
- export default LocalStorageCache;
@@ -1,79 +0,0 @@
1
- import Redis from 'ioredis';
2
- import { promisify } from 'util';
3
- import { createService } from '../container/index';
4
- import {
5
- reconnectOnError,
6
- getOnConnectCallback,
7
- getOnReconnectingCallback,
8
- } from './helpers';
9
- import isFunction from 'lodash/isFunction';
10
-
11
- /**
12
- * Кэширует данные в Redis.
13
- * @param {Object} config Объект с параметрами Redis.
14
- * @param {Function} [reconnectAfterError] Переподключение после ошибки.
15
- * @param {Function} [getRepeatStrategy] Устанавливает время для повтора перезаписи в redis.
16
- * @param {Function} [getOnJoinCallback] Коллбэк функция при коннект статусе.
17
- * @param {Function} [getAfterReconnectingCallback] Коллбэк функция при реконнект статусе.
18
- * @return {Object} Объект с методами для работы с Redis.
19
- */
20
- export const createRedisCache = (
21
- config,
22
- reconnectAfterError = reconnectOnError,
23
- getRepeatStrategy,
24
- getOnJoinCallback = getOnConnectCallback,
25
- getAfterReconnectingCallback = getOnReconnectingCallback
26
- ) => {
27
- const {
28
- cacheConfig = {},
29
- recDelay,
30
- defaultCacheDuration,
31
- redisEnabled,
32
- sentinelEnabled,
33
- sentinelConfig,
34
- } = config || {};
35
- const cache = { status: null };
36
-
37
- if (redisEnabled || sentinelEnabled) {
38
- const client = new Redis(
39
- redisEnabled ? {
40
- reconnectOnError: reconnectAfterError,
41
- retryStrategy: isFunction(getRepeatStrategy) ? getRepeatStrategy(recDelay) : undefined,
42
- ...cacheConfig,
43
- } : sentinelConfig
44
- );
45
-
46
- client.on('connect', getOnJoinCallback(cache));
47
- client.on('reconnecting', getAfterReconnectingCallback(cache));
48
-
49
- const getAsync = promisify(client.get).bind(client);
50
- cache.set = (key, value, duration = defaultCacheDuration) => client.set(key, value, 'EX', duration);
51
- cache.get = key => getAsync(key);
52
- }
53
- return cache;
54
- };
55
-
56
- /**
57
- * Преобразует опции сервиса в аргументы функции.
58
- * @param {Object} param Параметры.
59
- * @param {Object} param.config Объект с параметрами Redis.
60
- * @param {Function} param.reconnectAfterError Переподключение после ошибки.
61
- * @param {Function} param.getRepeatStrategy Время для повтора перезаписи в redis.
62
- * @param {Function} param.getOnJoinCallback Устанавливает статус кэша.
63
- * @param {Function} param.getAfterReconnectingCallback Устанавливает статус кэша.
64
- * @return {Object} Config Объект с параметрами Redis.
65
- */
66
- export const mapServiceOptionsToArgs = ({
67
- config,
68
- reconnectAfterError,
69
- getRepeatStrategy,
70
- getOnJoinCallback,
71
- getAfterReconnectingCallback,
72
- }) => [
73
- config,
74
- reconnectAfterError,
75
- getRepeatStrategy,
76
- getOnJoinCallback,
77
- getAfterReconnectingCallback,
78
- ];
79
- export default createService(createRedisCache, mapServiceOptionsToArgs);
@@ -1,57 +0,0 @@
1
- import { createService } from '../container';
2
-
3
- /**
4
- * Обертка методов кэша.
5
- * @param {Object} tracer Экземпляр jaeger-трейсера.
6
- * @param {Object} context Контекст спана.
7
- * @param {Object} cache Кэш.
8
- * @return {Object} Объект с методами кэша.
9
- */
10
- export const wrapInTrace = (tracer, context, cache) => ({
11
- /**
12
- * Получение ключа из кэша.
13
- * @param {string} key Ключ.
14
- * @return {Promise} Промис для получения ответа.
15
- */
16
- get: async key => {
17
- const span = tracer.startSpan(`Redis GET ${key}`, {
18
- childOf: context,
19
- });
20
- const result = await cache.get(key);
21
- span.finish();
22
- return result;
23
- },
24
-
25
- /**
26
- * Задаем значение в кэш.
27
- * @param {string} key Ключ.
28
- * @param {string} value Новое значение.
29
- * @param {number} duration Длительность.
30
- */
31
- set: (key, value, duration = 3600) => {
32
- const span = tracer.startSpan(`Redis SET ${key}`, {
33
- childOf: context,
34
- });
35
- cache.set(key, value, duration);
36
- span.finish();
37
- },
38
-
39
- /**
40
- * Геттер статуса кэша.
41
- * @return {string} Статус кэша.
42
- */
43
- get status () {
44
- return cache.status;
45
- },
46
- });
47
-
48
- /**
49
- * Преобразует опции сервиса в аргументы функции.
50
- * @param {Object} param Параметры.
51
- * @param {Object} param.tracer Экземпляр jaeger-трейсера.
52
- * @param {Object} param.context Контекст спана.
53
- * @param {Object} param.cache Кэш.
54
- * @return {Object} Config Объект с параметрами Redis.
55
- */
56
- export const mapServiceOptionsToArgs = ({ tracer, context = {}, cache }) => [tracer, context, cache];
57
- export default createService(wrapInTrace, mapServiceOptionsToArgs);
@@ -1,33 +0,0 @@
1
- import isFunction from 'lodash/isFunction';
2
- import isPlainObject from 'lodash/isPlainObject';
3
- import formatObjectKeys from '../helpers/utils/format-object-keys';
4
-
5
- /**
6
- * Собирает объект конфигурации из переданных параметров.
7
- * @param {Object} data Объект с данными, которые нужно добавить в конфигурацию.
8
- * @param {Object} base Базовый объект на основе которого строится конфигурация.
9
- * @param {boolean} needFormatKeys Признак форматирования ключей объекта.
10
- * @return {Object} Объект конфигурации.
11
- */
12
- export default function createConfig (
13
- data = {},
14
- base = { ...process.env },
15
- needFormatKeys = true
16
- ) {
17
- if (!isPlainObject(data)) {
18
- throw new TypeError('Параметр "data" должен быть чистым объектом');
19
- }
20
-
21
- if (!isPlainObject(base)) {
22
- throw new TypeError('Параметр "base" должен быть чистым объектом');
23
- }
24
-
25
- return Object.entries(data).reduce((config, current) => {
26
- const [key, value] = current;
27
-
28
- if (!(key in config)) {
29
- config[key] = isFunction(value) ? value(base) : value;
30
- }
31
- return config;
32
- }, needFormatKeys ? formatObjectKeys({ ...base }) : base);
33
- }
@@ -1,71 +0,0 @@
1
- import isString from 'lodash/isString';
2
- import isFunction from 'lodash/isFunction';
3
- import { RULE_TYPES } from './validate';
4
-
5
- /**
6
- * Станадртный валидатор, проверяет на непустую строку.
7
- * @param {*} value Значение, которое нужно провалидировать.
8
- * @return {boolean} Валидно ли значение.
9
- */
10
- export const defaultValidate = value => isString(value) && value.length > 0;
11
-
12
- /**
13
- * Возвращает текст ошибки про умолчанию.
14
- * @param {string} property Свойство для которого получена ошибка.
15
- * @return {string} Текст ошибки.
16
- */
17
- export const getDefaultError = property =>
18
- `Ошибка конфигрурации приложения: Поле "${property}" заполнено некорректно`;
19
-
20
- /**
21
- * Возвращает текст ошибки для переданной строки ошибки.
22
- * @param {string} property Свойство для которого получена ошибка.
23
- * @param {string} error Текст ошибки.
24
- * @return {string} Полный текст ошибки.
25
- */
26
- export const getStringError = (property, error) =>
27
- `Ошибка конфигурации. Поле "${property}": ${error}`;
28
-
29
- /**
30
- * Выбрасывает ошибку.
31
- * @param {string} errorText Текст ошибки.
32
- */
33
- export const throwError = errorText => {
34
- throw new Error(errorText);
35
- };
36
-
37
- /**
38
- * Выводит в лог ошибку.
39
- * @param {string} errorText Текст ошибки.
40
- */
41
- export const consoleError = errorText => {
42
- // eslint-disable-next-line no-console
43
- console.error(errorText);
44
- };
45
-
46
- /**
47
- * Вызывает ошибку.
48
- * @param {Object} errorData Данные необходимые для вывода ошибки.
49
- * @param {string} errorData.property Проверяемое свойство конфига.
50
- * @param {*} errorData.value Проверяемое значение.
51
- * @param {Function|string} [errorData.error] Либо функция, вызвающая ошибку, либо текст ошибки.
52
- * @param {'error'|'warning'} errorData.type Тип валидации.
53
- */
54
- export const callError = ({
55
- property,
56
- value,
57
- error,
58
- type,
59
- }) => {
60
- if (isFunction(error)) {
61
- error(property, value);
62
- } else {
63
- const errorText = isString(error)
64
- ? getStringError(property, error)
65
- : getDefaultError(property);
66
-
67
- type === RULE_TYPES.error
68
- ? throwError(errorText)
69
- : consoleError(errorText);
70
- }
71
- };