@sima-land/isomorph 10.1.0 → 11.0.0-alpha.10

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 (488) 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/base.d.ts +7 -0
  5. package/config/base.js +20 -0
  6. package/config/base.js.map +1 -0
  7. package/config/browser.d.ts +6 -0
  8. package/config/browser.js +22 -0
  9. package/config/browser.js.map +1 -0
  10. package/config/node.d.ts +6 -0
  11. package/config/node.js +24 -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/di/application.d.ts +6 -0
  17. package/di/application.js +71 -0
  18. package/di/application.js.map +1 -0
  19. package/di/container.d.ts +6 -0
  20. package/di/container.js +49 -0
  21. package/di/container.js.map +1 -0
  22. package/di/errors.d.ts +21 -0
  23. package/di/errors.js +33 -0
  24. package/di/errors.js.map +1 -0
  25. package/di/index.d.ts +6 -0
  26. package/di/index.js +16 -0
  27. package/di/index.js.map +1 -0
  28. package/di/preset.d.ts +9 -0
  29. package/di/preset.js +25 -0
  30. package/di/preset.js.map +1 -0
  31. package/di/token.d.ts +7 -0
  32. package/di/token.js +17 -0
  33. package/di/token.js.map +1 -0
  34. package/di/types.d.ts +32 -0
  35. package/di/types.js +3 -0
  36. package/di/types.js.map +1 -0
  37. package/error-tracker/types.d.ts +13 -0
  38. package/error-tracker/types.js +3 -0
  39. package/error-tracker/types.js.map +1 -0
  40. package/error-tracker/utils.d.ts +22 -0
  41. package/error-tracker/utils.js +30 -0
  42. package/error-tracker/utils.js.map +1 -0
  43. package/http-client/middleware/cookie.d.ts +19 -0
  44. package/http-client/middleware/cookie.js +62 -0
  45. package/http-client/middleware/cookie.js.map +1 -0
  46. package/http-client/middleware/logging.d.ts +15 -0
  47. package/http-client/middleware/logging.js +93 -0
  48. package/http-client/middleware/logging.js.map +1 -0
  49. package/http-client/middleware/tracing.d.ts +32 -0
  50. package/http-client/middleware/tracing.js +67 -0
  51. package/http-client/middleware/tracing.js.map +1 -0
  52. package/http-client/sauce/index.d.ts +27 -0
  53. package/http-client/sauce/index.js +33 -0
  54. package/http-client/sauce/index.js.map +1 -0
  55. package/http-client/types.d.ts +6 -0
  56. package/http-client/types.js +3 -0
  57. package/http-client/types.js.map +1 -0
  58. package/http-client/utils.d.ts +9 -0
  59. package/http-client/utils.js +20 -0
  60. package/http-client/utils.js.map +1 -0
  61. package/http-server/constants.d.ts +4 -0
  62. package/http-server/constants.js +8 -0
  63. package/http-server/constants.js.map +1 -0
  64. package/http-server/handler/health-check.d.ts +6 -0
  65. package/http-server/handler/health-check.js +15 -0
  66. package/http-server/handler/health-check.js.map +1 -0
  67. package/http-server/middleware/logging.d.ts +10 -0
  68. package/http-server/middleware/logging.js +31 -0
  69. package/http-server/middleware/logging.js.map +1 -0
  70. package/http-server/middleware/metrics.d.ts +23 -0
  71. package/http-server/middleware/metrics.js +60 -0
  72. package/http-server/middleware/metrics.js.map +1 -0
  73. package/http-server/middleware/tracing.d.ts +14 -0
  74. package/http-server/middleware/tracing.js +51 -0
  75. package/http-server/middleware/tracing.js.map +1 -0
  76. package/http-server/template/index.d.ts +1 -0
  77. package/http-server/template/index.js +36 -0
  78. package/http-server/template/index.js.map +1 -0
  79. package/http-server/types.d.ts +33 -0
  80. package/http-server/types.js +3 -0
  81. package/http-server/types.js.map +1 -0
  82. package/http-server/utils.d.ts +30 -0
  83. package/http-server/utils.js +100 -0
  84. package/http-server/utils.js.map +1 -0
  85. package/logger/handler/console.d.ts +8 -0
  86. package/logger/handler/console.js +43 -0
  87. package/logger/handler/console.js.map +1 -0
  88. package/logger/handler/sentry.d.ts +8 -0
  89. package/logger/handler/sentry.js +42 -0
  90. package/logger/handler/sentry.js.map +1 -0
  91. package/logger/index.d.ts +6 -0
  92. package/logger/index.js +31 -0
  93. package/logger/index.js.map +1 -0
  94. package/logger/types.d.ts +24 -0
  95. package/logger/types.js +3 -0
  96. package/logger/types.js.map +1 -0
  97. package/metrics/constants.d.ts +4 -0
  98. package/metrics/constants.js +8 -0
  99. package/metrics/constants.js.map +1 -0
  100. package/metrics/node.d.ts +18 -0
  101. package/metrics/node.js +74 -0
  102. package/metrics/node.js.map +1 -0
  103. package/package.json +46 -63
  104. package/preset/browser/index.d.ts +1 -0
  105. package/preset/browser/index.js +45 -0
  106. package/preset/browser/index.js.map +1 -0
  107. package/preset/node/index.d.ts +19 -0
  108. package/preset/node/index.js +127 -0
  109. package/preset/node/index.js.map +1 -0
  110. package/preset/node/response.d.ts +20 -0
  111. package/preset/node/response.js +82 -0
  112. package/preset/node/response.js.map +1 -0
  113. package/saga-runner/index.d.ts +8 -0
  114. package/saga-runner/index.js +79 -0
  115. package/saga-runner/index.js.map +1 -0
  116. package/saga-runner/types.d.ts +10 -0
  117. package/saga-runner/types.js +3 -0
  118. package/saga-runner/types.js.map +1 -0
  119. package/tokens.d.ts +48 -0
  120. package/tokens.js +50 -0
  121. package/tokens.js.map +1 -0
  122. package/tracing/index.d.ts +9 -0
  123. package/tracing/index.js +20 -0
  124. package/tracing/index.js.map +1 -0
  125. package/{browser → utils/browser}/analytics/data-layer.d.ts +0 -0
  126. package/{browser → utils/browser}/analytics/data-layer.js +1 -2
  127. package/utils/browser/analytics/data-layer.js.map +1 -0
  128. package/{browser → utils/browser}/analytics/oko.d.ts +0 -0
  129. package/{browser → utils/browser}/analytics/oko.js +6 -7
  130. package/utils/browser/analytics/oko.js.map +1 -0
  131. package/utils/browser/storage/index.d.ts +4 -0
  132. package/utils/browser/storage/index.js +63 -0
  133. package/utils/browser/storage/index.js.map +1 -0
  134. package/utils/number.d.ts +6 -0
  135. package/utils/number.js +13 -0
  136. package/utils/number.js.map +1 -0
  137. package/utils/react/error-handlers/index.d.ts +38 -0
  138. package/utils/react/error-handlers/index.js +48 -0
  139. package/utils/react/error-handlers/index.js.map +1 -0
  140. package/utils/redux/remote-data.d.ts +23 -0
  141. package/utils/redux/remote-data.js +28 -0
  142. package/utils/redux/remote-data.js.map +1 -0
  143. package/utils/redux-saga/take-chain.d.ts +24 -0
  144. package/utils/redux-saga/take-chain.js +56 -0
  145. package/utils/redux-saga/take-chain.js.map +1 -0
  146. package/utils/ssr/index.d.ts +30 -0
  147. package/utils/ssr/index.js +51 -0
  148. package/utils/ssr/index.js.map +1 -0
  149. package/utils/webpack/index.d.ts +23 -0
  150. package/utils/webpack/index.js +66 -0
  151. package/utils/webpack/index.js.map +1 -0
  152. package/utils/webpack/module-federation/index.d.ts +21 -0
  153. package/utils/webpack/module-federation/index.js +74 -0
  154. package/utils/webpack/module-federation/index.js.map +1 -0
  155. package/utils/webpack/module-federation/types.d.ts +26 -0
  156. package/utils/webpack/module-federation/types.js +3 -0
  157. package/utils/webpack/module-federation/types.js.map +1 -0
  158. package/utils/webpack/module-federation/utils.d.ts +15 -0
  159. package/utils/webpack/module-federation/utils.js +36 -0
  160. package/utils/webpack/module-federation/utils.js.map +1 -0
  161. package/browser/analytics/data-layer.js.map +0 -1
  162. package/browser/analytics/oko.js.map +0 -1
  163. package/cache/helpers.d.ts +0 -4
  164. package/cache/helpers.js +0 -39
  165. package/cache/helpers.js.map +0 -1
  166. package/cache/local-storage.d.ts +0 -34
  167. package/cache/local-storage.js +0 -90
  168. package/cache/local-storage.js.map +0 -1
  169. package/cache/redis.d.ts +0 -10
  170. package/cache/redis.js +0 -54
  171. package/cache/redis.js.map +0 -1
  172. package/cache/wrap-in-trace.d.ts +0 -8
  173. package/cache/wrap-in-trace.js +0 -68
  174. package/cache/wrap-in-trace.js.map +0 -1
  175. package/config/create.d.ts +0 -8
  176. package/config/create.js +0 -32
  177. package/config/create.js.map +0 -1
  178. package/config/helpers.d.ts +0 -11
  179. package/config/helpers.js +0 -71
  180. package/config/helpers.js.map +0 -1
  181. package/config/validate.d.ts +0 -18
  182. package/config/validate.js +0 -107
  183. package/config/validate.js.map +0 -1
  184. package/container/create-inject.d.ts +0 -7
  185. package/container/create-inject.js +0 -36
  186. package/container/create-inject.js.map +0 -1
  187. package/container/get-dependencies.d.ts +0 -13
  188. package/container/get-dependencies.js +0 -54
  189. package/container/get-dependencies.js.map +0 -1
  190. package/container/index.d.ts +0 -15
  191. package/container/index.js +0 -175
  192. package/container/index.js.map +0 -1
  193. package/container/is-container.d.ts +0 -7
  194. package/container/is-container.js +0 -17
  195. package/container/is-container.js.map +0 -1
  196. package/container/service-not-found-error.d.ts +0 -10
  197. package/container/service-not-found-error.js +0 -18
  198. package/container/service-not-found-error.js.map +0 -1
  199. package/create-proxy/create-proxy-middleware/index.d.ts +0 -16
  200. package/create-proxy/create-proxy-middleware/index.js +0 -47
  201. package/create-proxy/create-proxy-middleware/index.js.map +0 -1
  202. package/create-proxy/index.d.ts +0 -12
  203. package/create-proxy/index.js +0 -25
  204. package/create-proxy/index.js.map +0 -1
  205. package/create-response-sender/index.d.ts +0 -8
  206. package/create-response-sender/index.js +0 -42
  207. package/create-response-sender/index.js.map +0 -1
  208. package/get-dynamic-data/index.d.ts +0 -8
  209. package/get-dynamic-data/index.js +0 -23
  210. package/get-dynamic-data/index.js.map +0 -1
  211. package/graceful-shutdown/index.d.ts +0 -26
  212. package/graceful-shutdown/index.js +0 -87
  213. package/graceful-shutdown/index.js.map +0 -1
  214. package/helpers/add-error-handling/index.d.ts +0 -1
  215. package/helpers/add-error-handling/index.js +0 -42
  216. package/helpers/add-error-handling/index.js.map +0 -1
  217. package/helpers/api/create-enhancer.d.ts +0 -12
  218. package/helpers/api/create-enhancer.js +0 -52
  219. package/helpers/api/create-enhancer.js.map +0 -1
  220. package/helpers/api/create-instance.d.ts +0 -11
  221. package/helpers/api/create-instance.js +0 -39
  222. package/helpers/api/create-instance.js.map +0 -1
  223. package/helpers/api/middlewares/collect-cookie-middleware.d.ts +0 -10
  224. package/helpers/api/middlewares/collect-cookie-middleware.js +0 -39
  225. package/helpers/api/middlewares/collect-cookie-middleware.js.map +0 -1
  226. package/helpers/api/middlewares/count-api-response-time.d.ts +0 -12
  227. package/helpers/api/middlewares/count-api-response-time.js +0 -39
  228. package/helpers/api/middlewares/count-api-response-time.js.map +0 -1
  229. package/helpers/api/middlewares/error-handlers-middlewares.d.ts +0 -5
  230. package/helpers/api/middlewares/error-handlers-middlewares.js +0 -114
  231. package/helpers/api/middlewares/error-handlers-middlewares.js.map +0 -1
  232. package/helpers/api/middlewares/helpers.d.ts +0 -11
  233. package/helpers/api/middlewares/helpers.js +0 -27
  234. package/helpers/api/middlewares/helpers.js.map +0 -1
  235. package/helpers/api/middlewares/pass-headers-middleware.d.ts +0 -3
  236. package/helpers/api/middlewares/pass-headers-middleware.js +0 -27
  237. package/helpers/api/middlewares/pass-headers-middleware.js.map +0 -1
  238. package/helpers/api/middlewares/prepare-request-headers.d.ts +0 -5
  239. package/helpers/api/middlewares/prepare-request-headers.js +0 -20
  240. package/helpers/api/middlewares/prepare-request-headers.js.map +0 -1
  241. package/helpers/api/middlewares/set-http-agents-middleware.d.ts +0 -15
  242. package/helpers/api/middlewares/set-http-agents-middleware.js +0 -34
  243. package/helpers/api/middlewares/set-http-agents-middleware.js.map +0 -1
  244. package/helpers/api/middlewares/stages-trace-middleware.d.ts +0 -17
  245. package/helpers/api/middlewares/stages-trace-middleware.js +0 -57
  246. package/helpers/api/middlewares/stages-trace-middleware.js.map +0 -1
  247. package/helpers/api/middlewares/trace-request-middleware.d.ts +0 -24
  248. package/helpers/api/middlewares/trace-request-middleware.js +0 -69
  249. package/helpers/api/middlewares/trace-request-middleware.js.map +0 -1
  250. package/helpers/api/server-adapter/__fixtures__/fake-keys.d.ts +0 -10
  251. package/helpers/api/server-adapter/__fixtures__/fake-keys.js +0 -61
  252. package/helpers/api/server-adapter/__fixtures__/fake-keys.js.map +0 -1
  253. package/helpers/api/server-adapter/constants.d.ts +0 -5
  254. package/helpers/api/server-adapter/constants.js +0 -16
  255. package/helpers/api/server-adapter/constants.js.map +0 -1
  256. package/helpers/api/server-adapter/helpers.d.ts +0 -26
  257. package/helpers/api/server-adapter/helpers.js +0 -208
  258. package/helpers/api/server-adapter/helpers.js.map +0 -1
  259. package/helpers/api/server-adapter/index.d.ts +0 -10
  260. package/helpers/api/server-adapter/index.js +0 -118
  261. package/helpers/api/server-adapter/index.js.map +0 -1
  262. package/helpers/development/use-dot-env.d.ts +0 -6
  263. package/helpers/development/use-dot-env.js +0 -11
  264. package/helpers/development/use-dot-env.js.map +0 -1
  265. package/helpers/get-params/index.d.ts +0 -4
  266. package/helpers/get-params/index.js +0 -51
  267. package/helpers/get-params/index.js.map +0 -1
  268. package/helpers/http/request-getters.d.ts +0 -5
  269. package/helpers/http/request-getters.js +0 -49
  270. package/helpers/http/request-getters.js.map +0 -1
  271. package/helpers/http/statuses-validator.d.ts +0 -3
  272. package/helpers/http/statuses-validator.js +0 -25
  273. package/helpers/http/statuses-validator.js.map +0 -1
  274. package/helpers/logger/create-pino-instance/index.d.ts +0 -6
  275. package/helpers/logger/create-pino-instance/index.js +0 -39
  276. package/helpers/logger/create-pino-instance/index.js.map +0 -1
  277. package/helpers/logger/format-time/index.d.ts +0 -6
  278. package/helpers/logger/format-time/index.js +0 -9
  279. package/helpers/logger/format-time/index.js.map +0 -1
  280. package/helpers/metrics/index.d.ts +0 -23
  281. package/helpers/metrics/index.js +0 -42
  282. package/helpers/metrics/index.js.map +0 -1
  283. package/helpers/prometheus/index.d.ts +0 -4
  284. package/helpers/prometheus/index.js +0 -13
  285. package/helpers/prometheus/index.js.map +0 -1
  286. package/helpers/prometheus/measure-middleware.d.ts +0 -5
  287. package/helpers/prometheus/measure-middleware.js +0 -69
  288. package/helpers/prometheus/measure-middleware.js.map +0 -1
  289. package/helpers/prometheus/metric-adapter.d.ts +0 -36
  290. package/helpers/prometheus/metric-adapter.js +0 -98
  291. package/helpers/prometheus/metric-adapter.js.map +0 -1
  292. package/helpers/react/error-handlers/index.d.ts +0 -40
  293. package/helpers/react/error-handlers/index.js +0 -52
  294. package/helpers/react/error-handlers/index.js.map +0 -1
  295. package/helpers/redux/constants.d.ts +0 -5
  296. package/helpers/redux/constants.js +0 -14
  297. package/helpers/redux/constants.js.map +0 -1
  298. package/helpers/redux/create-compose-middleware.d.ts +0 -15
  299. package/helpers/redux/create-compose-middleware.js +0 -23
  300. package/helpers/redux/create-compose-middleware.js.map +0 -1
  301. package/helpers/redux/get-dev-compose-creator.d.ts +0 -6
  302. package/helpers/redux/get-dev-compose-creator.js +0 -13
  303. package/helpers/redux/get-dev-compose-creator.js.map +0 -1
  304. package/helpers/redux/prepare-on-ready.d.ts +0 -9
  305. package/helpers/redux/prepare-on-ready.js +0 -16
  306. package/helpers/redux/prepare-on-ready.js.map +0 -1
  307. package/helpers/redux/remote-data.d.ts +0 -40
  308. package/helpers/redux/remote-data.js +0 -91
  309. package/helpers/redux/remote-data.js.map +0 -1
  310. package/helpers/redux/selector/statuses.d.ts +0 -23
  311. package/helpers/redux/selector/statuses.js +0 -34
  312. package/helpers/redux/selector/statuses.js.map +0 -1
  313. package/helpers/redux/wait-on-store-readiness.d.ts +0 -11
  314. package/helpers/redux/wait-on-store-readiness.js +0 -29
  315. package/helpers/redux/wait-on-store-readiness.js.map +0 -1
  316. package/helpers/render/get-react-markup-data.d.ts +0 -14
  317. package/helpers/render/get-react-markup-data.js +0 -20
  318. package/helpers/render/get-react-markup-data.js.map +0 -1
  319. package/helpers/render/index.d.ts +0 -21
  320. package/helpers/render/index.js +0 -72
  321. package/helpers/render/index.js.map +0 -1
  322. package/helpers/render/render-app.d.ts +0 -12
  323. package/helpers/render/render-app.js +0 -12
  324. package/helpers/render/render-app.js.map +0 -1
  325. package/helpers/saga/__fixtures__/do-safe-request.d.ts +0 -43
  326. package/helpers/saga/__fixtures__/do-safe-request.js +0 -50
  327. package/helpers/saga/__fixtures__/do-safe-request.js.map +0 -1
  328. package/helpers/saga/cache-result.d.ts +0 -46
  329. package/helpers/saga/cache-result.js +0 -71
  330. package/helpers/saga/cache-result.js.map +0 -1
  331. package/helpers/saga/create-store.d.ts +0 -20
  332. package/helpers/saga/create-store.js +0 -106
  333. package/helpers/saga/create-store.js.map +0 -1
  334. package/helpers/saga/do-safe-request.d.ts +0 -38
  335. package/helpers/saga/do-safe-request.js +0 -45
  336. package/helpers/saga/do-safe-request.js.map +0 -1
  337. package/helpers/saga/safe-request.d.ts +0 -7
  338. package/helpers/saga/safe-request.js +0 -15
  339. package/helpers/saga/safe-request.js.map +0 -1
  340. package/helpers/saga/take-chain.d.ts +0 -20
  341. package/helpers/saga/take-chain.js +0 -56
  342. package/helpers/saga/take-chain.js.map +0 -1
  343. package/helpers/tracer/create-child-tracing-middleware.d.ts +0 -7
  344. package/helpers/tracer/create-child-tracing-middleware.js +0 -40
  345. package/helpers/tracer/create-child-tracing-middleware.js.map +0 -1
  346. package/helpers/tracer/index.d.ts +0 -24
  347. package/helpers/tracer/index.js +0 -144
  348. package/helpers/tracer/index.js.map +0 -1
  349. package/helpers/utils/check-feature-by-segment.d.ts +0 -2
  350. package/helpers/utils/check-feature-by-segment.js +0 -31
  351. package/helpers/utils/check-feature-by-segment.js.map +0 -1
  352. package/helpers/utils/format-object-keys.d.ts +0 -6
  353. package/helpers/utils/format-object-keys.js +0 -27
  354. package/helpers/utils/format-object-keys.js.map +0 -1
  355. package/helpers/utils/get-ms-from-hrt.d.ts +0 -2
  356. package/helpers/utils/get-ms-from-hrt.js +0 -22
  357. package/helpers/utils/get-ms-from-hrt.js.map +0 -1
  358. package/helpers/utils/is-match-pattern-list.d.ts +0 -8
  359. package/helpers/utils/is-match-pattern-list.js +0 -16
  360. package/helpers/utils/is-match-pattern-list.js.map +0 -1
  361. package/helpers/utils/is-not-empty-array.d.ts +0 -2
  362. package/helpers/utils/is-not-empty-array.js +0 -12
  363. package/helpers/utils/is-not-empty-array.js.map +0 -1
  364. package/helpers/utils/is-not-empty-string.d.ts +0 -2
  365. package/helpers/utils/is-not-empty-string.js +0 -15
  366. package/helpers/utils/is-not-empty-string.js.map +0 -1
  367. package/helpers/utils/is-numeric.d.ts +0 -7
  368. package/helpers/utils/is-numeric.js +0 -16
  369. package/helpers/utils/is-numeric.js.map +0 -1
  370. package/helpers/utils/wrap-in-measure-event.d.ts +0 -9
  371. package/helpers/utils/wrap-in-measure-event.js +0 -50
  372. package/helpers/utils/wrap-in-measure-event.js.map +0 -1
  373. package/logger/create-logger-middleware/index.d.ts +0 -14
  374. package/logger/create-logger-middleware/index.js +0 -41
  375. package/logger/create-logger-middleware/index.js.map +0 -1
  376. package/logger/create-sentry-instance/index.d.ts +0 -29
  377. package/logger/create-sentry-instance/index.js +0 -63
  378. package/logger/create-sentry-instance/index.js.map +0 -1
  379. package/logger/create-sentry-middleware/index.d.ts +0 -14
  380. package/logger/create-sentry-middleware/index.js +0 -19
  381. package/logger/create-sentry-middleware/index.js.map +0 -1
  382. package/logger/handler-creators/index.d.ts +0 -5
  383. package/logger/handler-creators/index.js +0 -41
  384. package/logger/handler-creators/index.js.map +0 -1
  385. package/logger/initialize-sentry-creator/index.d.ts +0 -17
  386. package/logger/initialize-sentry-creator/index.js +0 -35
  387. package/logger/initialize-sentry-creator/index.js.map +0 -1
  388. package/logger/sentry-logger/index.d.ts +0 -9
  389. package/logger/sentry-logger/index.js +0 -36
  390. package/logger/sentry-logger/index.js.map +0 -1
  391. package/module-federation/__example__/webpack-config.example.d.ts +0 -366
  392. package/module-federation/__example__/webpack-config.example.js +0 -58
  393. package/module-federation/__example__/webpack-config.example.js.map +0 -1
  394. package/module-federation/enhanced-module-federation-plugin.d.ts +0 -69
  395. package/module-federation/enhanced-module-federation-plugin.js +0 -97
  396. package/module-federation/enhanced-module-federation-plugin.js.map +0 -1
  397. package/module-federation/utils/index.d.ts +0 -16
  398. package/module-federation/utils/index.js +0 -33
  399. package/module-federation/utils/index.js.map +0 -1
  400. package/observe-middleware/index.d.ts +0 -9
  401. package/observe-middleware/index.js +0 -67
  402. package/observe-middleware/index.js.map +0 -1
  403. package/set-header-middleware/create.d.ts +0 -10
  404. package/set-header-middleware/create.js +0 -16
  405. package/set-header-middleware/create.js.map +0 -1
  406. package/src/browser/analytics/data-layer.ts +0 -12
  407. package/src/browser/analytics/oko.ts +0 -42
  408. package/src/cache/helpers.js +0 -32
  409. package/src/cache/local-storage.ts +0 -92
  410. package/src/cache/redis.js +0 -79
  411. package/src/cache/wrap-in-trace.js +0 -57
  412. package/src/config/create.js +0 -33
  413. package/src/config/helpers.js +0 -71
  414. package/src/config/validate.js +0 -114
  415. package/src/container/create-inject.js +0 -32
  416. package/src/container/get-dependencies.js +0 -46
  417. package/src/container/index.js +0 -188
  418. package/src/container/is-container.js +0 -14
  419. package/src/container/service-not-found-error.js +0 -14
  420. package/src/create-proxy/create-proxy-middleware/index.js +0 -47
  421. package/src/create-proxy/index.js +0 -27
  422. package/src/create-response-sender/index.js +0 -48
  423. package/src/get-dynamic-data/index.js +0 -26
  424. package/src/graceful-shutdown/index.js +0 -97
  425. package/src/helpers/add-error-handling/index.js +0 -24
  426. package/src/helpers/api/create-enhancer.js +0 -52
  427. package/src/helpers/api/create-instance.js +0 -42
  428. package/src/helpers/api/middlewares/collect-cookie-middleware.js +0 -27
  429. package/src/helpers/api/middlewares/count-api-response-time.js +0 -31
  430. package/src/helpers/api/middlewares/error-handlers-middlewares.js +0 -124
  431. package/src/helpers/api/middlewares/helpers.js +0 -26
  432. package/src/helpers/api/middlewares/pass-headers-middleware.js +0 -19
  433. package/src/helpers/api/middlewares/prepare-request-headers.js +0 -18
  434. package/src/helpers/api/middlewares/set-http-agents-middleware.js +0 -22
  435. package/src/helpers/api/middlewares/stages-trace-middleware.js +0 -46
  436. package/src/helpers/api/middlewares/trace-request-middleware.ts +0 -86
  437. package/src/helpers/api/server-adapter/__fixtures__/fake-keys.js +0 -58
  438. package/src/helpers/api/server-adapter/constants.js +0 -12
  439. package/src/helpers/api/server-adapter/helpers.js +0 -244
  440. package/src/helpers/api/server-adapter/index.js +0 -155
  441. package/src/helpers/development/use-dot-env.js +0 -9
  442. package/src/helpers/get-params/index.js +0 -59
  443. package/src/helpers/http/request-getters.js +0 -42
  444. package/src/helpers/http/statuses-validator.js +0 -20
  445. package/src/helpers/logger/create-pino-instance/index.js +0 -41
  446. package/src/helpers/logger/format-time/index.js +0 -6
  447. package/src/helpers/metrics/index.js +0 -40
  448. package/src/helpers/prometheus/index.js +0 -9
  449. package/src/helpers/prometheus/measure-middleware.js +0 -73
  450. package/src/helpers/prometheus/metric-adapter.js +0 -99
  451. package/src/helpers/react/error-handlers/index.tsx +0 -68
  452. package/src/helpers/redux/constants.js +0 -10
  453. package/src/helpers/redux/create-compose-middleware.js +0 -24
  454. package/src/helpers/redux/get-dev-compose-creator.js +0 -9
  455. package/src/helpers/redux/prepare-on-ready.js +0 -16
  456. package/src/helpers/redux/remote-data.js +0 -124
  457. package/src/helpers/redux/selector/statuses.js +0 -30
  458. package/src/helpers/redux/wait-on-store-readiness.js +0 -40
  459. package/src/helpers/render/get-react-markup-data.js +0 -18
  460. package/src/helpers/render/index.js +0 -69
  461. package/src/helpers/render/render-app.js +0 -15
  462. package/src/helpers/saga/__fixtures__/do-safe-request.js +0 -49
  463. package/src/helpers/saga/cache-result.js +0 -77
  464. package/src/helpers/saga/create-store.js +0 -102
  465. package/src/helpers/saga/do-safe-request.js +0 -47
  466. package/src/helpers/saga/safe-request.js +0 -11
  467. package/src/helpers/saga/take-chain.js +0 -53
  468. package/src/helpers/tracer/create-child-tracing-middleware.js +0 -42
  469. package/src/helpers/tracer/index.js +0 -171
  470. package/src/helpers/utils/check-feature-by-segment.js +0 -32
  471. package/src/helpers/utils/format-object-keys.js +0 -23
  472. package/src/helpers/utils/get-ms-from-hrt.js +0 -16
  473. package/src/helpers/utils/is-match-pattern-list.js +0 -13
  474. package/src/helpers/utils/is-not-empty-array.js +0 -8
  475. package/src/helpers/utils/is-not-empty-string.js +0 -11
  476. package/src/helpers/utils/is-numeric.ts +0 -12
  477. package/src/helpers/utils/wrap-in-measure-event.js +0 -35
  478. package/src/logger/create-logger-middleware/index.js +0 -46
  479. package/src/logger/create-sentry-instance/index.js +0 -74
  480. package/src/logger/create-sentry-middleware/index.js +0 -16
  481. package/src/logger/handler-creators/index.js +0 -38
  482. package/src/logger/initialize-sentry-creator/index.js +0 -43
  483. package/src/logger/sentry-logger/index.js +0 -33
  484. package/src/module-federation/__example__/webpack-config.example.js +0 -64
  485. package/src/module-federation/enhanced-module-federation-plugin.js +0 -119
  486. package/src/module-federation/utils/index.js +0 -39
  487. package/src/observe-middleware/index.js +0 -70
  488. package/src/set-header-middleware/create.js +0 -17
@@ -1,73 +0,0 @@
1
- import negate from 'lodash/negate';
2
- import isFunction from 'lodash/isFunction';
3
- import { isPrometheusMetric } from './metric-adapter.js';
4
- import { labelsResolver } from '../metrics';
5
- import { createObserveMiddleware, defaultStartSubscriber, defaultFinishSubscriber } from '../../observe-middleware';
6
-
7
- /**
8
- * Возвращает функцию, создающую модуль для замера метрик запросов Express-приложения.
9
- * @param {Object} dependencies Опции.
10
- * @param {Function} dependencies.resolveLabels Функция, результат которой будет использован как аргумент setLabels.
11
- * @param {Array} dependencies.startMetrics Список метрик, замеряемых при старте запроса.
12
- * @param {Array} dependencies.finishMetrics Список метрик, замеряемых при отправке ответа.
13
- * @return {Function} Функция, возвращающая промежуточный слой для использования в Express-приложении.
14
- */
15
- export const createMeasureMiddleware = (dependencies = {}) => {
16
- const {
17
- resolveLabels = labelsResolver,
18
- startMetrics = [],
19
- finishMetrics = [],
20
- startSubscriber = defaultStartSubscriber,
21
- finishSubscriber = defaultFinishSubscriber,
22
- } = dependencies || {};
23
- if (!isFunction(resolveLabels)) {
24
- throw TypeError('First argument property "resolveLabels" must be a function');
25
- }
26
-
27
- if ([startMetrics, finishMetrics].some(negate(Array.isArray))) {
28
- throw TypeError('First argument properties "startMetrics" and "finishMetrics" must be arrays');
29
- }
30
-
31
- if ([...startMetrics, ...finishMetrics].some(negate(isPrometheusMetric))) {
32
- throw TypeError('Every metric in "startMetrics" and "finishMetrics" must be instance of PrometheusMetric');
33
- }
34
-
35
- if (!isFunction(startSubscriber)) {
36
- throw TypeError('First argument property "startSubscriber" must be a function');
37
- }
38
-
39
- if (!isFunction(finishSubscriber)) {
40
- throw TypeError('First argument property "finishSubscriber" must be a function');
41
- }
42
-
43
- return createObserveMiddleware({
44
- onStart: (timestamp, request, response) => {
45
- startMetrics.forEach(metric => {
46
- metric
47
- .setLabels(resolveLabels({
48
- dependencies,
49
- metric,
50
- request,
51
- response,
52
- timestamp,
53
- }))
54
- .spot();
55
- });
56
- },
57
- onFinish: (duration, request, response) => {
58
- finishMetrics.forEach(metric => {
59
- metric
60
- .setLabels(resolveLabels({
61
- dependencies,
62
- duration,
63
- metric,
64
- request,
65
- response,
66
- }))
67
- .spot(duration);
68
- });
69
- },
70
- startSubscriber,
71
- finishSubscriber,
72
- });
73
- };
@@ -1,99 +0,0 @@
1
- import PrometheusClient from 'prom-client';
2
- import difference from 'lodash/difference';
3
-
4
- /**
5
- * Список имен конструкторов из пакета "prom-client", пригодных для создания адаптеров.
6
- * @type {Array<string>}
7
- */
8
- export const availableMetricTypes = Object.freeze([
9
- 'Counter',
10
- 'Gauge',
11
- 'Histogram',
12
- 'Summary',
13
- ]);
14
-
15
- /**
16
- * Ключ свойства адаптера с оригинальным объектом метрики.
17
- * @type {symbol}
18
- */
19
- export const originalMetricKey = Symbol('original-metric-key');
20
-
21
- /**
22
- * Возвращает оригинальный объект метрики из переданного адаптера.
23
- * @param {PrometheusMetric} adapter Объект адаптера.
24
- * @return {Object} Объект метрики.
25
- */
26
- export const getOriginalInstance = adapter => adapter
27
- ? adapter[originalMetricKey]
28
- : undefined;
29
-
30
- /**
31
- * Определяет, является ли переданное значение экземпляром класса PrometheusMetric.
32
- * @param {*} value Проверяемое значение.
33
- * @return {boolean} Переданное значение является экземпляром класса PrometheusMetric?
34
- */
35
- export const isPrometheusMetric = value => value instanceof PrometheusMetric;
36
-
37
- /**
38
- * Класс объектов-адаптеров для классов метрик из пакета "prom-client".
39
- */
40
- export class PrometheusMetric {
41
- labels = {};
42
-
43
- /**
44
- * Инициализирует объект-адаптер метрики.
45
- * @param {string} metricType Тип метрики, определяемый названием класса из пакета "prom-client".
46
- * @param {Object} options Опции, передаваемые в конструктор метрики из пакета "prom-client".
47
- */
48
- constructor (metricType = '', options = {}) {
49
- if (!availableMetricTypes.includes(metricType)) {
50
- throw Error(`First argument must be one of available types: ${availableMetricTypes.join(', ')}`);
51
- }
52
- Object.assign(this, { ...options, metricType });
53
- this[originalMetricKey] = new PrometheusClient[metricType](options);
54
- }
55
-
56
- /**
57
- * Устанавливает значения показателей по переданному объекту, где ключ - название показателя.
58
- * @param {Object} labels Объект со значениями показателей по названиям.
59
- * @return {PrometheusMetric} Экземпляр.
60
- */
61
- setLabels (labels = {}) {
62
- const newLabels = labels || {};
63
- if (Array.isArray(this.labelNames)) {
64
- if (difference(this.labelNames, Object.keys(newLabels)).length > 0) {
65
- throw Error(`Labels count must be equal to labelNames count = ${this.labelNames.length}`);
66
- }
67
- }
68
- this.labels = newLabels;
69
-
70
- return this;
71
- }
72
-
73
- /**
74
- * Фиксирует показатель метрики в сервисе Prometheus.
75
- * @param {*} value Значение фиксируемого показателя, игнорируется для типа "Counter".
76
- * @return {PrometheusMetric} Экземпляр.
77
- */
78
- spot (value) {
79
- const instance = getOriginalInstance(this);
80
-
81
- switch (this.metricType) {
82
- case 'Counter':
83
- instance.inc(this.labels, 1);
84
- break;
85
- case 'Summary':
86
- case 'Histogram':
87
- instance.observe(this.labels, value);
88
- break;
89
- case 'Gauge': {
90
- const isPositive = value > 0;
91
- const methodName = isPositive ? 'inc' : 'dec';
92
- instance[methodName](Math.abs(value));
93
- break;
94
- }
95
- }
96
-
97
- return this;
98
- }
99
- }
@@ -1,68 +0,0 @@
1
- import React from 'react';
2
-
3
- export interface Props {
4
- children: NonNullable<React.ReactNode> | null
5
- fallback: NonNullable<React.ReactNode> | null
6
- captureException?: (error: Error, errorInfo: React.ErrorInfo) => void
7
- }
8
-
9
- /**
10
- * Обработчик ошибок в React компонентах.
11
- */
12
- export class ErrorBoundary extends React.Component<Props, { hasError: boolean }> {
13
- /**
14
- * @param props Свойства компонента.
15
- * @param props.children Дочерний компонент.
16
- * @param props.fallback Запасной элемент, если возникла ошибка.
17
- * @param props.captureException Функция для логирования ошибки.
18
- */
19
- constructor (props: Props) {
20
- super(props);
21
-
22
- this.state = { hasError: false };
23
- }
24
-
25
- /** @inheritdoc */
26
- static getDerivedStateFromError () {
27
- return { hasError: true };
28
- }
29
-
30
- /** @inheritdoc */
31
- componentDidCatch (error: Error, errorInfo: React.ErrorInfo) {
32
- const { captureException } = this.props;
33
-
34
- captureException?.(error, errorInfo);
35
- }
36
-
37
- /**
38
- * Рендер.
39
- * @return Дочерний элемент либо запасное значение.
40
- */
41
- render () {
42
- const { children, fallback } = this.props;
43
-
44
- return this.state.hasError ? fallback : children;
45
- }
46
- }
47
-
48
- /**
49
- * Обертка над Suspense c перехватом ошибок.
50
- * @param props Свойства компонента.
51
- * @param props.children Дочерний компонент.
52
- * @param props.fallback Запасной элемент, если возникла ошибка.
53
- * @param props.captureException Функция для логирования ошибки.
54
- * @return Элемент.
55
- */
56
- export const SafeSuspense = ({
57
- children,
58
- fallback,
59
- captureException,
60
- }: Props) => (
61
- <React.Suspense fallback={fallback}>
62
- <ErrorBoundary
63
- children={children}
64
- fallback={fallback}
65
- captureException={captureException}
66
- />
67
- </React.Suspense>
68
- );
@@ -1,10 +0,0 @@
1
- /**
2
- * Статусы состояния данных.
3
- * @type {Object}
4
- */
5
- export const STATUSES = Object.freeze({
6
- initial: 'initial',
7
- success: 'success',
8
- fetching: 'fetching',
9
- failure: 'failure',
10
- });
@@ -1,24 +0,0 @@
1
- import { compose } from 'redux';
2
- import isFunction from 'lodash/isFunction';
3
-
4
- /**
5
- * Создаёт функцию для композиции нескольких промежуточных обработчиков для применения в сторе
6
- * и подключения redux devtools в среде разработки.
7
- * @param {Object} options Опции.
8
- * @param {Function} options.devToolsComposeCreator Функция для создания compose с redux dev tools.
9
- * @param {Function} options.getName Функция возвращающая название сервиса.
10
- * @param {Function} options.getDevToolsEnabled Функция опредяляющая нужно ли подключать dev tools.
11
- * @return {Function} Функция для объединения нескольких промежуточных обработчиков в сторе.
12
- */
13
- const createComposeMiddleware = ({
14
- devToolsComposeCreator,
15
- getName,
16
- getDevToolsEnabled,
17
- } = {}) =>
18
- isFunction(devToolsComposeCreator) && isFunction(getName) && isFunction(getDevToolsEnabled) && getDevToolsEnabled()
19
- ? devToolsComposeCreator({
20
- name: getName(),
21
- })
22
- : compose;
23
-
24
- export default createComposeMiddleware;
@@ -1,9 +0,0 @@
1
- import get from 'lodash/get';
2
-
3
- /**
4
- * Получает из глобального объекта функцию для создания функции compose c devtools.
5
- * @return {Function | null} Функция для создания функции compose либо null, если функция не найдена.
6
- */
7
- const getDevComposeCreator = () => get(window, '__REDUX_DEVTOOLS_EXTENSION_COMPOSE__', null);
8
-
9
- export default getDevComposeCreator;
@@ -1,16 +0,0 @@
1
- /**
2
- * Оборачивает опциональный обработчик события готовности стора, добавляя отписку и опциональную очистку таймера.
3
- * @param {Object} store Стор.
4
- * @param {Function} unsubscribe Функция отписки от стора.
5
- * @param {Function|*} onReady Опциональный обработчик события готовности стора.
6
- * @return {Function} Обёрнутый обработчик готовности стора.
7
- */
8
- const prepareOnReady = (store, unsubscribe, onReady) => timerId => {
9
- unsubscribe();
10
-
11
- timerId && clearTimeout(timerId);
12
-
13
- onReady && onReady(store);
14
- };
15
-
16
- export default prepareOnReady;
@@ -1,124 +0,0 @@
1
- import {
2
- createReducer as pureCreateReducer,
3
- } from 'reduxsauce';
4
- import { STATUSES } from './constants';
5
- import pipe from 'lodash/fp/pipe';
6
-
7
- /**
8
- * Приняв статус, вернет функцию,
9
- * которая примет состояние и добавит в него статус в поле "status".
10
- * @param {string} status Значение статуса.
11
- * @return {function (Object): Object} Примет состояние и добавит в него статус в поле "status".
12
- */
13
- const defaultStatusAdderMaker = status => state => ({
14
- ...state,
15
- status,
16
- });
17
-
18
- /**
19
- * Возвращает новую функцию, которая вернет обернутый обработчик.
20
- * Обернутый обработчик добавит статус в состояние с помощью переданной функции withStatus.
21
- * @param {Function} withStatus Функция, добавляющая в состояние статус.
22
- * @return {function (Function): Function} Функция, оборачивающая обработчик.
23
- */
24
- const createHandleWithStatusMaker = withStatus => {
25
- /**
26
- * Приняв обработчик, вернет функцию,
27
- * которая будет применять withStatus к результату обработчика.
28
- * @param {Function} handler Обработчик.
29
- * @return {*} Новое состояние.
30
- */
31
- const handlerMaker = handler => {
32
- const handleWithStatus = pipe(
33
- handler,
34
- withStatus
35
- );
36
-
37
- return handleWithStatus;
38
- };
39
-
40
- return handlerMaker;
41
- };
42
-
43
- /**
44
- * Модифицированная версия createReducer из пакета "reduxsauce".
45
- * @param {*} initialState Начальное состояние.
46
- * @param {function (Wrappers, Handlers): Object} createHandlers Должна вернуть набор обработчиков.
47
- * @param {Object} [options] Опции.
48
- * @param {Object} [options.createStatusAdder] Функция, которая добавит статус в состояние.
49
- * @return {Function} Функция-reducer.
50
- */
51
- export const createReducer = (
52
- initialState,
53
- createHandlers,
54
- {
55
- createStatusAdder = defaultStatusAdderMaker,
56
- } = {}
57
- ) => {
58
- /**
59
- * @typedef {Object} Wrappers Набор оберток для обработчиков.
60
- * @property {Function} asInitial Обернет переданный обработчик, добавляя в состояние статус "initial".
61
- * @property {Function} asRequest Обернет переданный обработчик, добавляя в состояние статус "fetching".
62
- * @property {Function} asSuccess Обернет переданный обработчик, добавляя в состояние статус "success".
63
- * @property {Function} asFailure Обернет переданный обработчик, добавляя в состояние статус "failure".
64
- */
65
- const wrappers = {
66
- asInitial: createHandleWithStatusMaker(
67
- createStatusAdder(STATUSES.initial)
68
- ),
69
- asRequest: createHandleWithStatusMaker(
70
- createStatusAdder(STATUSES.fetching)
71
- ),
72
- asSuccess: createHandleWithStatusMaker(
73
- createStatusAdder(STATUSES.success)
74
- ),
75
- asFailure: createHandleWithStatusMaker(
76
- createStatusAdder(STATUSES.failure)
77
- ),
78
- };
79
-
80
- /**
81
- * @typedef {Object} Handlers Набор обработчиков.
82
- * @property {Function} initial Обработает состояние, добавив статус "initial" с помощью createStatusAdder.
83
- * @property {Function} request Обработает состояние, добавив статус "fetching" с помощью createStatusAdder.
84
- * @property {Function} success Обработает состояние, добавив статус "success" с помощью createStatusAdder.
85
- * @property {Function} failure Обработает состояние, добавив статус "failure" с помощью createStatusAdder.
86
- */
87
- const handlers = {
88
- initial: createStatusAdder(STATUSES.initial),
89
- request: createStatusAdder(STATUSES.fetching),
90
- success: createStatusAdder(STATUSES.success),
91
- failure: createStatusAdder(STATUSES.failure),
92
- };
93
-
94
- return pureCreateReducer(
95
- initialState,
96
- createHandlers(wrappers, handlers)
97
- );
98
- };
99
-
100
- /**
101
- * Возвращает функцию, создающую начальное состояние со статусом.
102
- * @param {*} baseInitialState Начальное состояние.
103
- * @param {Object} [options] Опции.
104
- * @param {Function} [options.createStatusAdder] Получив статус, вернет функцию, которая применит его к состоянию.
105
- * @return {Function} Функция, создающую начальное состояние со статусом.
106
- */
107
- export const createStateMaker = (
108
- baseInitialState = {},
109
- {
110
- createStatusAdder = defaultStatusAdderMaker,
111
- } = {}
112
- ) => {
113
- const addStatus = createStatusAdder(STATUSES.initial);
114
-
115
- /**
116
- * Генерирует состояние с начальным статусом.
117
- * @return {*} Состояние с начальным статусом.
118
- */
119
- const createStateWithStatus = () => addStatus(
120
- baseInitialState
121
- );
122
-
123
- return createStateWithStatus;
124
- };
@@ -1,30 +0,0 @@
1
- import { createSelector } from 'reselect';
2
- import propEq from 'lodash/fp/propEq';
3
- import identity from 'lodash/identity';
4
- import { STATUSES } from '../constants';
5
-
6
- const statusEq = propEq('status');
7
- const isInitial = statusEq(STATUSES.initial);
8
- const isFetching = statusEq(STATUSES.fetching);
9
- const isSuccessful = statusEq(STATUSES.success);
10
- const isFailed = statusEq(STATUSES.failure);
11
-
12
- /**
13
- * Вернет новый набор селекторов статуса.
14
- * @param {Function} [selectSection=identity] Вернет раздел состояния, у которого есть статус.
15
- * @return {{ isInitial: Function, isFetching: Function, isSuccessful: Function, isFailed: Function }} Селекторы.
16
- */
17
- const create = (selectSection = identity) => ({
18
- isInitial: createSelector(selectSection, isInitial),
19
- isFetching: createSelector(selectSection, isFetching),
20
- isSuccessful: createSelector(selectSection, isSuccessful),
21
- isFailed: createSelector(selectSection, isFailed),
22
- });
23
-
24
- export const StatusSelectors = {
25
- create,
26
- isInitial,
27
- isFetching,
28
- isSuccessful,
29
- isFailed,
30
- };
@@ -1,40 +0,0 @@
1
- import prepareOnReady from './prepare-on-ready';
2
- import isFunction from 'lodash/isFunction';
3
-
4
- /**
5
- * Наблюдатель за готовностью стора.
6
- * @param {Object} store Стор.
7
- * @param {Function} isReady Функция определения готовности стора.
8
- * @param {Function} onReady Функция обработчик события готовности стора.
9
- * @param {Function} onTimeout Функция обработчик события таймаута ожидания готовности стора.
10
- * @param {number} timeout Максимальное время, отведённое на ожидание готовности стора.
11
- * @return {Object} Стор.
12
- */
13
- const waitOnStoreReadiness = (
14
- store,
15
- isReady,
16
- onReady,
17
- onTimeout,
18
- timeout = 2 ** 30
19
- ) => {
20
- let timer = null;
21
- const wrapperOnReady = prepareOnReady(
22
- store,
23
- store.subscribe(
24
- () => {
25
- isReady(store) && wrapperOnReady(timer);
26
- }
27
- ),
28
- onReady
29
- );
30
- timer = setTimeout(
31
- () => {
32
- wrapperOnReady();
33
- isFunction(onTimeout) && onTimeout(store);
34
- },
35
- timeout
36
- );
37
- return store;
38
- };
39
-
40
- export default waitOnStoreReadiness;
@@ -1,18 +0,0 @@
1
- import React from 'react';
2
- import { renderToString } from 'react-dom/server';
3
- import { Provider } from 'react-redux';
4
-
5
- /**
6
- * Возвращает функцию формирующую данные React-приложения.
7
- * @param {Object} param Параметры.
8
- * @param {ReactElement} param.app Главный компонент приложения.
9
- * @param {Object} param.store Объект глобального состояния приложения.
10
- * @param {string} param.key Ключ.
11
- * @return {Function} Функция формирующая данные React-приложения.
12
- */
13
- const getReactMarkupData = ({ app: App, store, key = 'markup' }) => data => ({
14
- ...data,
15
- [key]: renderToString(<Provider store={store}><App /></Provider>),
16
- });
17
-
18
- export default getReactMarkupData;
@@ -1,69 +0,0 @@
1
- import isFunction from 'lodash/isFunction';
2
- import wrapInMeasureEvent from '../utils/wrap-in-measure-event';
3
-
4
- /**
5
- * Создаёт функцию для рендеринга приложения, навешивая необходимые события.
6
- * @param {Object} param Параметры.
7
- * @param {Function} param.render Пользовательская функция для рендеринга приложения.
8
- * @param {import('http').ServerResponse} param.response Ответ.
9
- * @return {Function} Функция, обёрнутая в событие для измерения времени рендеринга.
10
- */
11
- export const prepareRenderFunction = ({
12
- render,
13
- response,
14
- }) => wrapInMeasureEvent(
15
- {
16
- fn: render,
17
- startEvent: 'render:start',
18
- endEvent: 'render:finish',
19
- emitter: response,
20
- }
21
- );
22
-
23
- /**
24
- * Возвращает шаблон, который подходит текущей конфигурации.
25
- * @param {Object} data Данные.
26
- * @param {Object} data.templates Шаблоны.
27
- * @param {Object} data.config Конфигурация со средой выполнения.
28
- * @return {Object} Шаблон совпадающий со средой выполнения.
29
- */
30
- export 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
-
39
- /**
40
- * Проверка templates на валидность.
41
- * @param {Object} templateObject Шаблон.
42
- * @return {Object} [templateObject] Валидный шаблон.
43
- */
44
- export function validateTemplate (templateObject) {
45
- const { checker, template } = templateObject || {};
46
- if ([checker, template].some(value => !isFunction(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
- } else {
53
- return templateObject;
54
- }
55
- }
56
-
57
- /**
58
- * Преобразует функцию в строку.
59
- * @param {string} key Ключ объекта.
60
- * @param {*} value Значение объекта.
61
- * @return {*} [value] Преобразованное значение объекта.
62
- */
63
- export function jsonStringifyReplacer (key, value) {
64
- let result = value;
65
- if (!JSON.stringify(value)) {
66
- result = Object.prototype.toString.call(value);
67
- }
68
- return result;
69
- }
@@ -1,15 +0,0 @@
1
- /**
2
- * Выводит данные в шаблон.
3
- * @param {Object} data Исхоные данные для рендеринга.
4
- * @param {Function} data.template Функция-шаблон, для вывода данных в разметку.
5
- * @param {Function} data.getAppData Функция формирующая настройки приложения.
6
- * @return {string} Разметка, в виде строки, полученная в результате рендеринга шаблона.
7
- */
8
- const renderApp = ({
9
- template,
10
- getAppData,
11
- }) => template({
12
- ...getAppData(),
13
- });
14
-
15
- export default renderApp;
@@ -1,49 +0,0 @@
1
- export const data = {
2
- id: 500,
3
- trademark: {},
4
- notices_text_all: ['text', 'text'],
5
- files: [
6
- {
7
- filename: 'test_1.pdf',
8
- title: 'Тест-1',
9
- size: 13,
10
- url: 'https://test-1.pgf',
11
- },
12
- {
13
- filename: 'test_2.pdf',
14
- title: 'Тест-2',
15
- size: 31,
16
- url: 'https://test-2.pgf',
17
- },
18
- ],
19
- modifier: {
20
- isPicture: false,
21
- },
22
- };
23
-
24
- export const error = {
25
- message: 'Error message',
26
- };
27
-
28
- export const errorWithConfig = {
29
- message: 'Error message',
30
- config: {
31
- url: 'test-error-url',
32
- },
33
- };
34
-
35
- export const 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
- };