@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
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getConventionalRequestAttrs = exports.tracingMiddleware = void 0;
4
+ const constants_1 = require("../constants");
5
+ const api_1 = require("@opentelemetry/api");
6
+ /**
7
+ * Возвращает новый middleware для трассировки стадий входящего запроса.
8
+ * @param tracer Tracer.
9
+ * @return Middleware.
10
+ */
11
+ function tracingMiddleware(tracer) {
12
+ return (req, res, next) => {
13
+ const externalContext = api_1.propagation.extract(api_1.ROOT_CONTEXT, req.headers);
14
+ const rootSpan = tracer.startSpan('response', undefined, externalContext);
15
+ rootSpan.setAttributes(getConventionalRequestAttrs(req));
16
+ const rootContext = api_1.trace.setSpan(externalContext, rootSpan);
17
+ res.locals.tracing = {
18
+ rootSpan,
19
+ rootContext,
20
+ };
21
+ res.once(constants_1.RESPONSE_EVENT.renderStart, () => {
22
+ res.locals.tracing.renderSpan = tracer.startSpan('render', undefined, rootContext);
23
+ });
24
+ res.once(constants_1.RESPONSE_EVENT.renderFinish, () => {
25
+ res.locals.tracing.renderSpan.end();
26
+ });
27
+ res.once('finish', () => {
28
+ rootSpan.end();
29
+ });
30
+ next();
31
+ };
32
+ }
33
+ exports.tracingMiddleware = tracingMiddleware;
34
+ /**
35
+ * Возвращает набор стандартных атрибутов для спана.
36
+ * @param req Входящий http-запрос.
37
+ * @return Атрибуты.
38
+ */
39
+ function getConventionalRequestAttrs(req) {
40
+ const result = {
41
+ 'request.path': req.originalUrl,
42
+ };
43
+ for (const headerName in req.headers) {
44
+ if (headerName.toLowerCase().startsWith('simaland-')) {
45
+ result[headerName] = req.header(headerName);
46
+ }
47
+ }
48
+ return result;
49
+ }
50
+ exports.getConventionalRequestAttrs = getConventionalRequestAttrs;
51
+ //# sourceMappingURL=tracing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracing.js","sourceRoot":"","sources":["../../../src/http-server/middleware/tracing.ts"],"names":[],"mappings":";;;AAAA,4CAA8C;AAC9C,4CAA8E;AAG9E;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,MAAc;IAC9C,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACxB,MAAM,eAAe,GAAG,iBAAW,CAAC,OAAO,CAAC,kBAAY,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QACvE,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;QAE1E,QAAQ,CAAC,aAAa,CAAC,2BAA2B,CAAC,GAAG,CAAC,CAAC,CAAC;QAEzD,MAAM,WAAW,GAAG,WAAK,CAAC,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QAE7D,GAAG,CAAC,MAAM,CAAC,OAAO,GAAG;YACnB,QAAQ;YACR,WAAW;SACZ,CAAC;QAEF,GAAG,CAAC,IAAI,CAAC,0BAAc,CAAC,WAAW,EAAE,GAAG,EAAE;YACxC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,0BAAc,CAAC,YAAY,EAAE,GAAG,EAAE;YACzC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;YACtB,QAAQ,CAAC,GAAG,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC;AA5BD,8CA4BC;AAED;;;;GAIG;AACH,SAAgB,2BAA2B,CAAC,GAAY;IACtD,MAAM,MAAM,GAAuC;QACjD,cAAc,EAAE,GAAG,CAAC,WAAW;KAChC,CAAC;IAEF,KAAK,MAAM,UAAU,IAAI,GAAG,CAAC,OAAO,EAAE;QACpC,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;YACpD,MAAM,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;SAC7C;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAZD,kEAYC"}
@@ -0,0 +1 @@
1
+ export declare const pageTemplate: import("ejs").TemplateFunction;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pageTemplate = void 0;
4
+ const ejs_1 = require("ejs");
5
+ exports.pageTemplate = (0, ejs_1.compile)(`
6
+ <!DOCTYPE html>
7
+ <html lang="ru">
8
+ <head>
9
+ <meta charset="UTF-8">
10
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
11
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
12
+ <title><%= title %></title>
13
+ <style>
14
+ * {
15
+ margin: 0;
16
+ padding: 0;
17
+ border: 0;
18
+ outline: 0;
19
+ box-sizing: border-box;
20
+ font: inherit;
21
+ line-height: inherit;
22
+ }
23
+ </style>
24
+ <% if (assets.css) { %>
25
+ <link rel="stylesheet" href="<%= assets.css %>">
26
+ <% } %>
27
+ </head>
28
+ <body>
29
+ <%- markup %>
30
+ <% if (assets.js) { %>
31
+ <script src="<%= assets.js %>"></script>
32
+ <% } %>
33
+ </body>
34
+ </html>
35
+ `);
36
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/http-server/template/index.ts"],"names":[],"mappings":";;;AAAA,6BAA8B;AAEjB,QAAA,YAAY,GAAG,IAAA,aAAO,EAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BnC,CAAC,CAAC"}
@@ -0,0 +1,33 @@
1
+ import type { Request, Response, NextFunction, Handler, ErrorRequestHandler } from 'express';
2
+ export interface ResponseContext {
3
+ req: Request;
4
+ res: Response;
5
+ next: NextFunction;
6
+ }
7
+ export interface PageAssets {
8
+ js: string;
9
+ css: string;
10
+ }
11
+ export interface PageTemplateData {
12
+ markup: string;
13
+ assets: PageAssets;
14
+ type: 'json' | 'html';
15
+ }
16
+ export interface PageTemplate {
17
+ (data: PageTemplateData): string;
18
+ }
19
+ export interface ConventionalJson {
20
+ markup: string;
21
+ bundle_js: string;
22
+ bundle_css: string;
23
+ critical_js?: string;
24
+ critical_css?: string;
25
+ meta?: any;
26
+ }
27
+ export interface DefaultMiddleware {
28
+ start: Handler[];
29
+ logging: Handler[];
30
+ tracing: Handler[];
31
+ metrics: Handler[];
32
+ finish: Array<Handler | ErrorRequestHandler>;
33
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/http-server/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,30 @@
1
+ import type { Request, Response } from 'express';
2
+ import type { PageTemplate, PageTemplateData } from './types';
3
+ /**
4
+ * Определяет IP входящего запроса.
5
+ * @param req Входящий запрос.
6
+ * @return IP.
7
+ */
8
+ export declare function getXClientIp(req: Request): string;
9
+ /**
10
+ * Определяет служебные заголовки по соглашению.
11
+ * @param req Входящий запрос.
12
+ * @return Служебные заголовки.
13
+ */
14
+ export declare function getServiceHeaders(req: Request): Record<string, string | undefined>;
15
+ export declare class PageResponse {
16
+ private type;
17
+ private html;
18
+ private assets;
19
+ private _template;
20
+ static create(): PageResponse;
21
+ static defineFormat(req: Request): PageResponse['type'];
22
+ static defaultTemplate({ markup }: PageTemplateData): string;
23
+ constructor();
24
+ markup(html: string): this;
25
+ script(url: string): this;
26
+ styles(url: string): this;
27
+ format(type: PageResponse['type']): this;
28
+ template(template: PageTemplate): this;
29
+ send(res: Response): void;
30
+ }
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PageResponse = exports.getServiceHeaders = exports.getXClientIp = void 0;
4
+ const net_1 = require("net");
5
+ /**
6
+ * Определяет IP входящего запроса.
7
+ * @param req Входящий запрос.
8
+ * @return IP.
9
+ */
10
+ function getXClientIp(req) {
11
+ const headerValue = req.get('x-client-ip') || req.get('x-forwarded-for') || req.socket.remoteAddress || '';
12
+ return (0, net_1.isIP)(headerValue) ? headerValue : '';
13
+ }
14
+ exports.getXClientIp = getXClientIp;
15
+ /**
16
+ * Определяет служебные заголовки по соглашению.
17
+ * @param req Входящий запрос.
18
+ * @return Служебные заголовки.
19
+ */
20
+ function getServiceHeaders(req) {
21
+ const result = {};
22
+ for (const [key] of Object.entries(req.headers)) {
23
+ if (key.toLowerCase().indexOf('simaland-') === 0) {
24
+ result[key] = req.header(key);
25
+ }
26
+ }
27
+ return result;
28
+ }
29
+ exports.getServiceHeaders = getServiceHeaders;
30
+ /* eslint-disable require-jsdoc, jsdoc/require-jsdoc */
31
+ class PageResponse {
32
+ constructor() {
33
+ this.type = 'html';
34
+ this.html = '';
35
+ this.assets = { js: '', css: '' };
36
+ this._template = PageResponse.defaultTemplate;
37
+ }
38
+ static create() {
39
+ return new PageResponse();
40
+ }
41
+ static defineFormat(req) {
42
+ let result = 'html';
43
+ if ((req.header('accept') || '').toLowerCase().includes('application/json')) {
44
+ result = 'json';
45
+ }
46
+ return result;
47
+ }
48
+ static defaultTemplate({ markup }) {
49
+ return markup;
50
+ }
51
+ markup(html) {
52
+ this.html = html;
53
+ return this;
54
+ }
55
+ script(url) {
56
+ this.assets.js = url;
57
+ return this;
58
+ }
59
+ styles(url) {
60
+ this.assets.css = url;
61
+ return this;
62
+ }
63
+ format(type) {
64
+ this.type = type;
65
+ return this;
66
+ }
67
+ template(template) {
68
+ this._template = template;
69
+ return this;
70
+ }
71
+ send(res) {
72
+ const templateData = {
73
+ type: this.type,
74
+ markup: this.html,
75
+ assets: this.assets,
76
+ };
77
+ switch (this.type) {
78
+ case 'json': {
79
+ const result = {
80
+ markup: this._template(templateData),
81
+ bundle_js: this.assets.js,
82
+ bundle_css: this.assets.css,
83
+ };
84
+ res.json(result);
85
+ break;
86
+ }
87
+ case 'html': {
88
+ res.setHeader('simaland-bundle-js', this.assets.js);
89
+ res.setHeader('simaland-bundle-css', this.assets.css);
90
+ res.send(this._template(templateData));
91
+ break;
92
+ }
93
+ default:
94
+ throw Error(`Unknown response format ${String(this.type)}`);
95
+ }
96
+ }
97
+ }
98
+ exports.PageResponse = PageResponse;
99
+ /* eslint-enable require-jsdoc, jsdoc/require-jsdoc */
100
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/http-server/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { BaseConfig } from '../../config/types';
2
+ import type { LoggerEventHandler } from '../types';
3
+ /**
4
+ * Возвращает новый handler для logger'а для вывода событий в терминал.
5
+ * @param config Конфиг.
6
+ * @return Handler.
7
+ */
8
+ export declare function createConsoleHandler(config: BaseConfig): LoggerEventHandler;
@@ -0,0 +1,43 @@
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.createConsoleHandler = void 0;
7
+ const pino_1 = __importDefault(require("pino"));
8
+ const pino_pretty_1 = __importDefault(require("pino-pretty"));
9
+ /**
10
+ * Возвращает новый handler для logger'а для вывода событий в терминал.
11
+ * @param config Конфиг.
12
+ * @return Handler.
13
+ */
14
+ function createConsoleHandler(config) {
15
+ const isProd = config.env === 'production';
16
+ const logger = (0, pino_1.default)(isProd
17
+ ? {
18
+ formatters: {
19
+ // ВАЖНО: для Fluent необходимо наличие поля level: string
20
+ level: label => ({ level: label }),
21
+ },
22
+ }
23
+ : (0, pino_pretty_1.default)({ colorize: true }));
24
+ return function handler(event) {
25
+ switch (event.type) {
26
+ case 'log':
27
+ case 'info':
28
+ logger.info(event.data);
29
+ break;
30
+ case 'warn':
31
+ logger.warn(event.data);
32
+ break;
33
+ case 'debug':
34
+ logger.debug(event.data);
35
+ break;
36
+ case 'error':
37
+ logger.error(event.data);
38
+ break;
39
+ }
40
+ };
41
+ }
42
+ exports.createConsoleHandler = createConsoleHandler;
43
+ //# sourceMappingURL=console.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console.js","sourceRoot":"","sources":["../../../src/logger/handler/console.ts"],"names":[],"mappings":";;;;;;AAEA,gDAAwB;AACxB,8DAAqC;AAErC;;;;GAIG;AACH,SAAgB,oBAAoB,CAAC,MAAkB;IACrD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,KAAK,YAAY,CAAC;IAE3C,MAAM,MAAM,GAAG,IAAA,cAAI,EACjB,MAAM;QACJ,CAAC,CAAC;YACE,UAAU,EAAE;gBACV,0DAA0D;gBAC1D,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;aACnC;SACF;QACH,CAAC,CAAC,IAAA,qBAAU,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CACnC,CAAC;IAEF,OAAO,SAAS,OAAO,CAAC,KAAK;QAC3B,QAAQ,KAAK,CAAC,IAAI,EAAE;YAClB,KAAK,KAAK,CAAC;YACX,KAAK,MAAM;gBACT,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxB,MAAM;YACR,KAAK,MAAM;gBACT,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxB,MAAM;YACR,KAAK,OAAO;gBACV,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACzB,MAAM;YACR,KAAK,OAAO;gBACV,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACzB,MAAM;SACT;IACH,CAAC,CAAC;AACJ,CAAC;AA/BD,oDA+BC"}
@@ -0,0 +1,8 @@
1
+ import type { LoggerEventHandler } from '../types';
2
+ import type { Hub } from '@sentry/types';
3
+ /**
4
+ * Возвращает новый handler для logger'а для отправки событий в Sentry.
5
+ * @param hub Набор данных для работы с Sentry.
6
+ * @return Handler.
7
+ */
8
+ export declare function createSentryHandler(hub: Hub): LoggerEventHandler;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createSentryHandler = void 0;
4
+ const utils_1 = require("../../error-tracker/utils");
5
+ /**
6
+ * Возвращает новый handler для logger'а для отправки событий в Sentry.
7
+ * @param hub Набор данных для работы с Sentry.
8
+ * @return Handler.
9
+ */
10
+ function createSentryHandler(hub) {
11
+ return event => {
12
+ // error
13
+ if (event.type === 'error') {
14
+ const error = event.data;
15
+ if (error instanceof utils_1.SentryError) {
16
+ const { level, context, extra } = error.data;
17
+ hub.withScope(scope => {
18
+ if (level) {
19
+ scope.setLevel(level);
20
+ }
21
+ if (context) {
22
+ scope.setContext(context.key, context.data);
23
+ }
24
+ if (extra) {
25
+ scope.setExtra(extra.key, extra.data);
26
+ }
27
+ hub.captureException(error);
28
+ });
29
+ }
30
+ else {
31
+ hub.captureException(error);
32
+ }
33
+ }
34
+ // breadcrumb
35
+ if (event.data instanceof utils_1.SentryBreadcrumb) {
36
+ const breadcrumb = event.data.data;
37
+ hub.addBreadcrumb(breadcrumb);
38
+ }
39
+ };
40
+ }
41
+ exports.createSentryHandler = createSentryHandler;
42
+ //# sourceMappingURL=sentry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sentry.js","sourceRoot":"","sources":["../../../src/logger/handler/sentry.ts"],"names":[],"mappings":";;;AAEA,qDAA0E;AAE1E;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,GAAQ;IAC1C,OAAO,KAAK,CAAC,EAAE;QACb,QAAQ;QACR,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE;YAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;YAEzB,IAAI,KAAK,YAAY,mBAAW,EAAE;gBAChC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC;gBAE7C,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;oBACpB,IAAI,KAAK,EAAE;wBACT,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;qBACvB;oBAED,IAAI,OAAO,EAAE;wBACX,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;qBAC7C;oBAED,IAAI,KAAK,EAAE;wBACT,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;qBACvC;oBAED,GAAG,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBAC9B,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,GAAG,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;aAC7B;SACF;QAED,aAAa;QACb,IAAI,KAAK,CAAC,IAAI,YAAY,wBAAgB,EAAE;YAC1C,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;YAEnC,GAAG,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;SAC/B;IACH,CAAC,CAAC;AACJ,CAAC;AApCD,kDAoCC"}
@@ -0,0 +1,6 @@
1
+ import type { Logger } from './types';
2
+ /**
3
+ * Возвращает новый logger - объект для журналирования событий подобно console.
4
+ * @return Logger.
5
+ */
6
+ export declare function createLogger(): Logger;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createLogger = void 0;
4
+ /**
5
+ * Возвращает новый logger - объект для журналирования событий подобно console.
6
+ * @return Logger.
7
+ */
8
+ function createLogger() {
9
+ const handlers = [];
10
+ // eslint-disable-next-line require-jsdoc, jsdoc/require-jsdoc
11
+ function createMethod(type) {
12
+ return function (data) {
13
+ const event = { type, data };
14
+ for (const handler of handlers) {
15
+ handler(event);
16
+ }
17
+ };
18
+ }
19
+ return {
20
+ log: createMethod('log'),
21
+ info: createMethod('info'),
22
+ warn: createMethod('warn'),
23
+ error: createMethod('error'),
24
+ debug: createMethod('debug'),
25
+ subscribe: handler => {
26
+ handlers.push(handler);
27
+ },
28
+ };
29
+ }
30
+ exports.createLogger = createLogger;
31
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/logger/index.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACH,SAAgB,YAAY;IAC1B,MAAM,QAAQ,GAAyB,EAAE,CAAC;IAE1C,8DAA8D;IAC9D,SAAS,YAAY,CAAC,IAAqB;QACzC,OAAO,UAAU,IAAS;YACxB,MAAM,KAAK,GAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YAC1C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;gBAC9B,OAAO,CAAC,KAAK,CAAC,CAAC;aAChB;QACH,CAAC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC;QACxB,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC;QAC1B,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC;QAC1B,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC;QAC5B,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC;QAE5B,SAAS,EAAE,OAAO,CAAC,EAAE;YACnB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;KACF,CAAC;AACJ,CAAC;AAxBD,oCAwBC"}
@@ -0,0 +1,24 @@
1
+ export declare type LoggerEventType = 'error' | 'log' | 'info' | 'warn' | 'debug';
2
+ export interface LoggerEvent {
3
+ type: LoggerEventType;
4
+ data: unknown;
5
+ }
6
+ export interface LoggerEventHandler {
7
+ (event: LoggerEvent): void;
8
+ }
9
+ export interface Logger {
10
+ error(data: any): void;
11
+ log(data: any): void;
12
+ info(data: any): void;
13
+ warn(data: any): void;
14
+ debug(data: any): void;
15
+ subscribe(handler: LoggerEventHandler): void;
16
+ }
17
+ export interface ConventionalFluentInfo {
18
+ version: string;
19
+ latency: number;
20
+ method: string;
21
+ remote_ip: string;
22
+ route: string;
23
+ status: number;
24
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/logger/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ export declare const ConventionalLabels: {
2
+ readonly HTTP_RESPONSE: readonly ["version", "route", "code", "method"];
3
+ readonly SSR: readonly ["version", "route", "method"];
4
+ };
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ConventionalLabels = void 0;
4
+ exports.ConventionalLabels = {
5
+ HTTP_RESPONSE: ['version', 'route', 'code', 'method'],
6
+ SSR: ['version', 'route', 'method'],
7
+ };
8
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/metrics/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,kBAAkB,GAAG;IAChC,aAAa,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC;IACrD,GAAG,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC;CAC3B,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { Application } from 'express';
2
+ import * as PromClient from 'prom-client';
3
+ import { ConventionalLabels } from './constants';
4
+ export interface DefaultNodeMetrics {
5
+ requestCount: PromClient.Counter<typeof ConventionalLabels.HTTP_RESPONSE[number]>;
6
+ responseDuration: PromClient.Histogram<typeof ConventionalLabels.HTTP_RESPONSE[number]>;
7
+ renderDuration: PromClient.Histogram<typeof ConventionalLabels.SSR[number]>;
8
+ }
9
+ /**
10
+ * Возвращает новое express-приложение, настроенное для выдачи информации о метриках.
11
+ * @return Приложение.
12
+ */
13
+ export declare function createMetricsHttpApp(): Application;
14
+ /**
15
+ * Возвращает набор готовых метрик по умолчанию для приложений.
16
+ * @return Набор метрик.
17
+ */
18
+ export declare function createDefaultMetrics(): DefaultNodeMetrics;
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.createDefaultMetrics = exports.createMetricsHttpApp = void 0;
30
+ const express_1 = __importDefault(require("express"));
31
+ const PromClient = __importStar(require("prom-client"));
32
+ const constants_1 = require("./constants");
33
+ /**
34
+ * Возвращает новое express-приложение, настроенное для выдачи информации о метриках.
35
+ * @return Приложение.
36
+ */
37
+ function createMetricsHttpApp() {
38
+ const app = (0, express_1.default)();
39
+ PromClient.collectDefaultMetrics();
40
+ app.get('/', async function (req, res) {
41
+ const metrics = await PromClient.register.metrics();
42
+ res.setHeader('Content-Type', PromClient.register.contentType);
43
+ res.send(metrics);
44
+ });
45
+ return app;
46
+ }
47
+ exports.createMetricsHttpApp = createMetricsHttpApp;
48
+ /**
49
+ * Возвращает набор готовых метрик по умолчанию для приложений.
50
+ * @return Набор метрик.
51
+ */
52
+ function createDefaultMetrics() {
53
+ return {
54
+ requestCount: new PromClient.Counter({
55
+ name: 'http_request_count',
56
+ help: 'Incoming HTTP request count',
57
+ labelNames: constants_1.ConventionalLabels.HTTP_RESPONSE,
58
+ }),
59
+ responseDuration: new PromClient.Histogram({
60
+ name: 'http_response_duration_ms',
61
+ help: 'Duration of incoming HTTP requests in ms',
62
+ labelNames: constants_1.ConventionalLabels.HTTP_RESPONSE,
63
+ buckets: [30, 100, 200, 500, 1000, 2500, 5000, 10000],
64
+ }),
65
+ renderDuration: new PromClient.Histogram({
66
+ name: 'render_duration_ms',
67
+ help: 'Duration of SSR ms',
68
+ labelNames: constants_1.ConventionalLabels.SSR,
69
+ buckets: [0.1, 15, 50, 100, 250, 500, 800, 1500],
70
+ }),
71
+ };
72
+ }
73
+ exports.createDefaultMetrics = createDefaultMetrics;
74
+ //# sourceMappingURL=node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/metrics/node.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAA+C;AAC/C,wDAA0C;AAC1C,2CAAiD;AAQjD;;;GAGG;AACH,SAAgB,oBAAoB;IAClC,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;IAEtB,UAAU,CAAC,qBAAqB,EAAE,CAAC;IAEnC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,WAAW,GAAG,EAAE,GAAG;QACnC,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QAEpD,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC/D,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC;AAbD,oDAaC;AAED;;;GAGG;AACH,SAAgB,oBAAoB;IAClC,OAAO;QACL,YAAY,EAAE,IAAI,UAAU,CAAC,OAAO,CAAC;YACnC,IAAI,EAAE,oBAAoB;YAC1B,IAAI,EAAE,6BAA6B;YACnC,UAAU,EAAE,8BAAkB,CAAC,aAAa;SAC7C,CAAC;QACF,gBAAgB,EAAE,IAAI,UAAU,CAAC,SAAS,CAAC;YACzC,IAAI,EAAE,2BAA2B;YACjC,IAAI,EAAE,0CAA0C;YAChD,UAAU,EAAE,8BAAkB,CAAC,aAAa;YAC5C,OAAO,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC;SACtD,CAAC;QACF,cAAc,EAAE,IAAI,UAAU,CAAC,SAAS,CAAC;YACvC,IAAI,EAAE,oBAAoB;YAC1B,IAAI,EAAE,oBAAoB;YAC1B,UAAU,EAAE,8BAAkB,CAAC,GAAG;YAClC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;SACjD,CAAC;KACH,CAAC;AACJ,CAAC;AApBD,oDAoBC"}