@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,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createCookieStore = exports.collectCookieMiddleware = void 0;
4
+ /**
5
+ * Возвращает новый middleware для работы с cookie на сервере.
6
+ * @param request Входящий запрос.
7
+ * @param response Исходящий ответ.
8
+ * @return Middleware.
9
+ */
10
+ function collectCookieMiddleware(request, response) {
11
+ const store = createCookieStore(request.get('cookie'));
12
+ return async function (config, next) {
13
+ const result = await next({
14
+ ...config,
15
+ headers: {
16
+ ...config.headers,
17
+ Cookie: store.asHeader(),
18
+ },
19
+ });
20
+ if (result.headers['set-cookie']) {
21
+ store.set(result.headers['set-cookie']);
22
+ response.setHeader('cookie', store.asHeader());
23
+ }
24
+ };
25
+ }
26
+ exports.collectCookieMiddleware = collectCookieMiddleware;
27
+ /**
28
+ * Возвращает новое хранилище cookie.
29
+ * @param initialCookie Начальное значение cookie.
30
+ * @return Хранилище cookie.
31
+ */
32
+ function createCookieStore(initialCookie) {
33
+ const data = {};
34
+ // eslint-disable-next-line require-jsdoc, jsdoc/require-jsdoc
35
+ function setItem(cookieItem) {
36
+ const [cookieName, cookieValue] = cookieItem.split('=').map(item => item.trim());
37
+ if (cookieName && cookieValue) {
38
+ data[cookieName] = { name: cookieName, value: cookieValue };
39
+ }
40
+ }
41
+ if (initialCookie && initialCookie.length) {
42
+ for (const item of initialCookie.split(';')) {
43
+ setItem(item);
44
+ }
45
+ }
46
+ // eslint-disable-next-line require-jsdoc, jsdoc/require-jsdoc
47
+ function set(setCookieHeaderValues) {
48
+ for (const item of setCookieHeaderValues) {
49
+ const [cookie] = item.split(';');
50
+ setItem(cookie);
51
+ }
52
+ }
53
+ // eslint-disable-next-line require-jsdoc, jsdoc/require-jsdoc
54
+ function asHeader() {
55
+ return Object.values(data)
56
+ .map(cookie => `${cookie.name}=${cookie.value}`)
57
+ .join(';');
58
+ }
59
+ return { set, asHeader };
60
+ }
61
+ exports.createCookieStore = createCookieStore;
62
+ //# sourceMappingURL=cookie.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cookie.js","sourceRoot":"","sources":["../../../src/http-client/middleware/cookie.ts"],"names":[],"mappings":";;;AAQA;;;;;GAKG;AACH,SAAgB,uBAAuB,CAAC,OAAgB,EAAE,QAAkB;IAC1E,MAAM,KAAK,GAAG,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEvD,OAAO,KAAK,WAAW,MAAM,EAAE,IAAI;QACjC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC;YACxB,GAAG,MAAM;YACT,OAAO,EAAE;gBACP,GAAG,MAAM,CAAC,OAAO;gBACjB,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE;aACzB;SACF,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YAChC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;YACxC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;SAChD;IACH,CAAC,CAAC;AACJ,CAAC;AAjBD,0DAiBC;AAED;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,aAAsB;IACtD,MAAM,IAAI,GAAoD,EAAE,CAAC;IAEjE,8DAA8D;IAC9D,SAAS,OAAO,CAAC,UAAkB;QACjC,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAEjF,IAAI,UAAU,IAAI,WAAW,EAAE;YAC7B,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;SAC7D;IACH,CAAC;IAED,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,EAAE;QACzC,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YAC3C,OAAO,CAAC,IAAI,CAAC,CAAC;SACf;KACF;IAED,8DAA8D;IAC9D,SAAS,GAAG,CAAC,qBAA+B;QAC1C,KAAK,MAAM,IAAI,IAAI,qBAAqB,EAAE;YACxC,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACjC,OAAO,CAAC,MAAM,CAAC,CAAC;SACjB;IACH,CAAC;IAED,8DAA8D;IAC9D,SAAS,QAAQ;QACf,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;aACvB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;aAC/C,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;IAED,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC3B,CAAC;AAlCD,8CAkCC"}
@@ -0,0 +1,15 @@
1
+ import { Middleware } from 'middleware-axios';
2
+ import { Logger } from '../../logger/types';
3
+ import { Severity } from '@sentry/types';
4
+ /**
5
+ * Возвращает новый middleware для логирования запросов.
6
+ * @param logger Логгер.
7
+ * @return Middleware.
8
+ */
9
+ export declare function loggingMiddleware(logger: Logger): Middleware<any>;
10
+ /**
11
+ * Возвращает уровень на основе статуса ответа.
12
+ * @param status Статус.
13
+ * @return Уровень.
14
+ */
15
+ export declare function severityFromStatus(status: number | undefined): Severity.Error | Severity.Info;
@@ -0,0 +1,93 @@
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.severityFromStatus = exports.loggingMiddleware = void 0;
7
+ const axios_1 = __importDefault(require("axios"));
8
+ const utils_1 = require("../../error-tracker/utils");
9
+ const types_1 = require("@sentry/types");
10
+ /**
11
+ * Возвращает новый middleware для логирования запросов.
12
+ * @param logger Логгер.
13
+ * @return Middleware.
14
+ */
15
+ function loggingMiddleware(logger) {
16
+ return async function (config, next, defaults) {
17
+ const { baseURL, url, method = 'get', params, data } = { ...defaults, ...config };
18
+ const readyMethod = method.toUpperCase();
19
+ const readyURL = baseURL ? `${baseURL.replace(/\/$/, '')}/${url}` : url;
20
+ try {
21
+ logger.info(new utils_1.SentryBreadcrumb({
22
+ category: 'http.request',
23
+ type: 'http',
24
+ data: {
25
+ url: readyURL,
26
+ method: readyMethod,
27
+ params,
28
+ },
29
+ level: types_1.Severity.Info,
30
+ }));
31
+ const response = await next(config);
32
+ logger.info(new utils_1.SentryBreadcrumb({
33
+ category: 'http.response',
34
+ type: 'http',
35
+ data: {
36
+ url: readyURL,
37
+ status_code: response.status,
38
+ method: readyMethod,
39
+ params,
40
+ },
41
+ level: types_1.Severity.Info,
42
+ }));
43
+ }
44
+ catch (error) {
45
+ if (axios_1.default.isAxiosError(error)) {
46
+ const statusCode = error.response?.status || 'UNKNOWN';
47
+ logger.error(new utils_1.SentryError(`HTTP request failed with status code ${statusCode}`, {
48
+ level: severityFromStatus(error.response?.status),
49
+ context: {
50
+ key: 'Request details',
51
+ data: {
52
+ url,
53
+ baseURL,
54
+ method: readyMethod,
55
+ headers: {
56
+ ...config.headers,
57
+ ...defaults.headers[readyMethod.toLowerCase()],
58
+ },
59
+ params,
60
+ data,
61
+ },
62
+ },
63
+ }));
64
+ logger.info(new utils_1.SentryBreadcrumb({
65
+ category: 'http.response',
66
+ type: 'http',
67
+ data: {
68
+ url: readyURL,
69
+ status_code: statusCode,
70
+ method: readyMethod,
71
+ params,
72
+ },
73
+ level: types_1.Severity.Error,
74
+ }));
75
+ }
76
+ // ВАЖНО: не скрываем ошибку, сообщаем остальному миру про нее
77
+ throw error;
78
+ }
79
+ };
80
+ }
81
+ exports.loggingMiddleware = loggingMiddleware;
82
+ /**
83
+ * Возвращает уровень на основе статуса ответа.
84
+ * @param status Статус.
85
+ * @return Уровень.
86
+ */
87
+ function severityFromStatus(status) {
88
+ return typeof status === 'number' && status >= 200 && status < 300
89
+ ? types_1.Severity.Info
90
+ : types_1.Severity.Error;
91
+ }
92
+ exports.severityFromStatus = severityFromStatus;
93
+ //# sourceMappingURL=logging.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging.js","sourceRoot":"","sources":["../../../src/http-client/middleware/logging.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAG1B,qDAA0E;AAC1E,yCAAyC;AAEzC;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,MAAc;IAC9C,OAAO,KAAK,WAAW,MAAM,EAAE,IAAI,EAAE,QAAQ;QAC3C,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC;QAClF,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QACzC,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAExE,IAAI;YACF,MAAM,CAAC,IAAI,CACT,IAAI,wBAAgB,CAAC;gBACnB,QAAQ,EAAE,cAAc;gBACxB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE;oBACJ,GAAG,EAAE,QAAQ;oBACb,MAAM,EAAE,WAAW;oBACnB,MAAM;iBACP;gBACD,KAAK,EAAE,gBAAQ,CAAC,IAAI;aACrB,CAAC,CACH,CAAC;YAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC;YAEpC,MAAM,CAAC,IAAI,CACT,IAAI,wBAAgB,CAAC;gBACnB,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE;oBACJ,GAAG,EAAE,QAAQ;oBACb,WAAW,EAAE,QAAQ,CAAC,MAAM;oBAC5B,MAAM,EAAE,WAAW;oBACnB,MAAM;iBACP;gBACD,KAAK,EAAE,gBAAQ,CAAC,IAAI;aACrB,CAAC,CACH,CAAC;SACH;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,eAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE;gBAC7B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,IAAI,SAAS,CAAC;gBAEvD,MAAM,CAAC,KAAK,CACV,IAAI,mBAAW,CAAC,wCAAwC,UAAU,EAAE,EAAE;oBACpE,KAAK,EAAE,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;oBACjD,OAAO,EAAE;wBACP,GAAG,EAAE,iBAAiB;wBACtB,IAAI,EAAE;4BACJ,GAAG;4BACH,OAAO;4BACP,MAAM,EAAE,WAAW;4BACnB,OAAO,EAAE;gCACP,GAAG,MAAM,CAAC,OAAO;gCACjB,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,EAAmC,CAAC;6BAChF;4BACD,MAAM;4BACN,IAAI;yBACL;qBACF;iBACF,CAAC,CACH,CAAC;gBAEF,MAAM,CAAC,IAAI,CACT,IAAI,wBAAgB,CAAC;oBACnB,QAAQ,EAAE,eAAe;oBACzB,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE;wBACJ,GAAG,EAAE,QAAQ;wBACb,WAAW,EAAE,UAAU;wBACvB,MAAM,EAAE,WAAW;wBACnB,MAAM;qBACP;oBACD,KAAK,EAAE,gBAAQ,CAAC,KAAK;iBACtB,CAAC,CACH,CAAC;aACH;YAED,8DAA8D;YAC9D,MAAM,KAAK,CAAC;SACb;IACH,CAAC,CAAC;AACJ,CAAC;AA9ED,8CA8EC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC,MAA0B;IAC3D,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG;QAChE,CAAC,CAAC,gBAAQ,CAAC,IAAI;QACf,CAAC,CAAC,gBAAQ,CAAC,KAAK,CAAC;AACrB,CAAC;AAJD,gDAIC"}
@@ -0,0 +1,32 @@
1
+ import type { AxiosDefaults, AxiosRequestConfig } from 'axios';
2
+ import type { Middleware } from 'middleware-axios';
3
+ import { Context, Tracer } from '@opentelemetry/api';
4
+ /**
5
+ * Возвращает новый middleware для трассировки исходящих запросов.
6
+ * @param tracer Трейсер.
7
+ * @param rootContext Контекст.
8
+ * @return Middleware.
9
+ */
10
+ export declare function tracingMiddleware(tracer: Tracer, rootContext: Context): Middleware<any>;
11
+ /**
12
+ * Формирует базовые данные запроса.
13
+ * Заменяет первое найденное число в url на "{id}", возвращая его в результате.
14
+ * @param config Axios-конфиг запроса.
15
+ * @param defaults Базовый конфиг экземпляра Axios.
16
+ * @return Базовые данные запроса.
17
+ */
18
+ export declare const getRequestInfo: (config: AxiosRequestConfig, defaults: AxiosDefaults) => {
19
+ method: string;
20
+ url: string;
21
+ foundId?: number | undefined;
22
+ };
23
+ /**
24
+ * Преобразует строку вида:
25
+ * "/api/v2/something/123456/some-bff/123456"
26
+ * в строку вида:
27
+ * "/api/v2/something/{id}/some-bff/123456"
28
+ * и возвращает кортеж с этой строкой и вырезанным числом в случае если оно найдено.
29
+ * @param url Url.
30
+ * @return Кортеж со строкой и результатом поиска числа.
31
+ */
32
+ export declare const hideFirstId: (url: string) => [string, number | undefined];
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hideFirstId = exports.getRequestInfo = exports.tracingMiddleware = void 0;
4
+ const api_1 = require("@opentelemetry/api");
5
+ const semantic_conventions_1 = require("@opentelemetry/semantic-conventions");
6
+ /**
7
+ * Возвращает новый middleware для трассировки исходящих запросов.
8
+ * @param tracer Трейсер.
9
+ * @param rootContext Контекст.
10
+ * @return Middleware.
11
+ */
12
+ function tracingMiddleware(tracer, rootContext) {
13
+ return async function (config, next, defaults) {
14
+ const { method, url, foundId } = (0, exports.getRequestInfo)(config, defaults);
15
+ const span = tracer.startSpan(`HTTP ${method} ${url}`, undefined, rootContext);
16
+ span.setAttributes({
17
+ [semantic_conventions_1.SemanticAttributes.HTTP_URL]: url,
18
+ [semantic_conventions_1.SemanticAttributes.HTTP_METHOD]: method,
19
+ // если нашли id - добавляем в теги
20
+ ...(foundId && { 'request.id': foundId }),
21
+ });
22
+ try {
23
+ await next(config);
24
+ }
25
+ catch (error) {
26
+ span.setStatus({
27
+ code: api_1.SpanStatusCode.ERROR,
28
+ message: 'HTTP Request failed',
29
+ });
30
+ // не прячем ошибку
31
+ throw error;
32
+ }
33
+ span.end();
34
+ };
35
+ }
36
+ exports.tracingMiddleware = tracingMiddleware;
37
+ /**
38
+ * Формирует базовые данные запроса.
39
+ * Заменяет первое найденное число в url на "{id}", возвращая его в результате.
40
+ * @param config Axios-конфиг запроса.
41
+ * @param defaults Базовый конфиг экземпляра Axios.
42
+ * @return Базовые данные запроса.
43
+ */
44
+ const getRequestInfo = (config, defaults) => {
45
+ const method = (config.method || 'GET').toUpperCase();
46
+ const baseURL = config.baseURL || defaults.baseURL || '';
47
+ // ВАЖНО: абстрагируем id только в url игнорируя baseURL
48
+ const [url, foundId] = (0, exports.hideFirstId)(config.url || defaults.url || '');
49
+ const readyUrl = `${baseURL}${url}`;
50
+ return { method, url: readyUrl, foundId };
51
+ };
52
+ exports.getRequestInfo = getRequestInfo;
53
+ /**
54
+ * Преобразует строку вида:
55
+ * "/api/v2/something/123456/some-bff/123456"
56
+ * в строку вида:
57
+ * "/api/v2/something/{id}/some-bff/123456"
58
+ * и возвращает кортеж с этой строкой и вырезанным числом в случае если оно найдено.
59
+ * @param url Url.
60
+ * @return Кортеж со строкой и результатом поиска числа.
61
+ */
62
+ const hideFirstId = (url) => {
63
+ const found = /\d{2,}/.exec(url);
64
+ return found ? [url.replace(found[0], '{id}'), Number(found[0])] : [url, undefined];
65
+ };
66
+ exports.hideFirstId = hideFirstId;
67
+ //# sourceMappingURL=tracing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracing.js","sourceRoot":"","sources":["../../../src/http-client/middleware/tracing.ts"],"names":[],"mappings":";;;AAEA,4CAAqE;AACrE,8EAAyE;AAEzE;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,MAAc,EAAE,WAAoB;IACpE,OAAO,KAAK,WAAW,MAAM,EAAE,IAAI,EAAE,QAAQ;QAC3C,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,IAAA,sBAAc,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAClE,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,MAAM,IAAI,GAAG,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAE/E,IAAI,CAAC,aAAa,CAAC;YACjB,CAAC,yCAAkB,CAAC,QAAQ,CAAC,EAAE,GAAG;YAClC,CAAC,yCAAkB,CAAC,WAAW,CAAC,EAAE,MAAM;YAExC,mCAAmC;YACnC,GAAG,CAAC,OAAO,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;SAC1C,CAAC,CAAC;QAEH,IAAI;YACF,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC;SACpB;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,SAAS,CAAC;gBACb,IAAI,EAAE,oBAAc,CAAC,KAAK;gBAC1B,OAAO,EAAE,qBAAqB;aAC/B,CAAC,CAAC;YAEH,mBAAmB;YACnB,MAAM,KAAK,CAAC;SACb;QAED,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AA3BD,8CA2BC;AAED;;;;;;GAMG;AACI,MAAM,cAAc,GAAG,CAC5B,MAA0B,EAC1B,QAAuB,EAKvB,EAAE;IACF,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IACtD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;IAEzD,wDAAwD;IACxD,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,IAAA,mBAAW,EAAC,MAAM,CAAC,GAAG,IAAI,QAAQ,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IACrE,MAAM,QAAQ,GAAG,GAAG,OAAO,GAAG,GAAG,EAAE,CAAC;IAEpC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AAC5C,CAAC,CAAC;AAhBW,QAAA,cAAc,kBAgBzB;AAEF;;;;;;;;GAQG;AACI,MAAM,WAAW,GAAG,CAAC,GAAW,EAAgC,EAAE;IACvE,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEjC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;AACtF,CAAC,CAAC;AAJW,QAAA,WAAW,eAItB"}
@@ -0,0 +1,27 @@
1
+ import type { AxiosInstance } from 'axios';
2
+ import type { AxiosInstanceWrapper, MethodName } from 'middleware-axios';
3
+ export declare type SauceResponse<T = any> = {
4
+ ok: true;
5
+ data: T;
6
+ } | {
7
+ ok: false;
8
+ error: any;
9
+ };
10
+ export interface SauceMethod<K extends MethodName> {
11
+ <T>(...args: Parameters<AxiosInstanceWrapper[K]>): Promise<SauceResponse<T>>;
12
+ }
13
+ export interface Sauce {
14
+ readonly get: SauceMethod<'get'>;
15
+ readonly delete: SauceMethod<'delete'>;
16
+ readonly head: SauceMethod<'head'>;
17
+ readonly options: SauceMethod<'options'>;
18
+ readonly post: SauceMethod<'post'>;
19
+ readonly put: SauceMethod<'put'>;
20
+ readonly patch: SauceMethod<'patch'>;
21
+ }
22
+ /**
23
+ * Оборачивает экземпляр axios. Все методы обертки возвращают promise, который никогда не попадают в состояние rejected.
24
+ * @param instance Экземпляр axios или AxiosInstanceWrapper.
25
+ * @return Обертка.
26
+ */
27
+ export declare function sauce(instance: AxiosInstance | AxiosInstanceWrapper): Sauce;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sauce = void 0;
4
+ /**
5
+ * Оборачивает экземпляр axios. Все методы обертки возвращают promise, который никогда не попадают в состояние rejected.
6
+ * @param instance Экземпляр axios или AxiosInstanceWrapper.
7
+ * @return Обертка.
8
+ */
9
+ function sauce(instance) {
10
+ // eslint-disable-next-line require-jsdoc, jsdoc/require-jsdoc
11
+ function createMethod(methodName) {
12
+ return async function (...args) {
13
+ try {
14
+ const response = await instance[methodName](...args);
15
+ return { ok: true, data: response.data };
16
+ }
17
+ catch (error) {
18
+ return { ok: false, error };
19
+ }
20
+ };
21
+ }
22
+ return {
23
+ get: createMethod('get'),
24
+ delete: createMethod('delete'),
25
+ head: createMethod('head'),
26
+ options: createMethod('options'),
27
+ post: createMethod('post'),
28
+ put: createMethod('put'),
29
+ patch: createMethod('patch'),
30
+ };
31
+ }
32
+ exports.sauce = sauce;
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/http-client/sauce/index.ts"],"names":[],"mappings":";;;AA4BA;;;;GAIG;AACH,SAAgB,KAAK,CAAC,QAA8C;IAClE,8DAA8D;IAC9D,SAAS,YAAY,CAAyB,UAAe;QAC3D,OAAO,KAAK,WACV,GAAG,IAAoC;YAEvC,IAAI;gBACF,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC,GAAI,IAAc,CAAC,CAAC;gBAChE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;aAC1C;YAAC,OAAO,KAAK,EAAE;gBACd,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;aAC7B;QACH,CAAC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC;QACxB,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC;QAC9B,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC;QAC1B,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC;QAChC,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC;QAC1B,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC;QACxB,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC;KAC7B,CAAC;AACJ,CAAC;AAxBD,sBAwBC"}
@@ -0,0 +1,6 @@
1
+ import type { AxiosRequestConfig } from 'axios';
2
+ import type { AxiosInstanceWrapper } from 'middleware-axios';
3
+ export declare type HttpClient = AxiosInstanceWrapper;
4
+ export interface HttpClientFactory {
5
+ (config: AxiosRequestConfig): HttpClient;
6
+ }
@@ -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-client/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import type { Request } from 'express';
2
+ import type { BaseConfig } from '../config/types';
3
+ /**
4
+ * Формирует заголовки для исходящих запросов с сервера по соглашению.
5
+ * @param config Конфиг.
6
+ * @param request Входящий запрос.
7
+ * @return Заголовки для исходящих запросов.
8
+ */
9
+ export declare function getRequestHeaders(config: BaseConfig, request: Request): Record<string, string>;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getRequestHeaders = void 0;
4
+ const utils_1 = require("../http-server/utils");
5
+ /**
6
+ * Формирует заголовки для исходящих запросов с сервера по соглашению.
7
+ * @param config Конфиг.
8
+ * @param request Входящий запрос.
9
+ * @return Заголовки для исходящих запросов.
10
+ */
11
+ function getRequestHeaders(config, request) {
12
+ return {
13
+ 'X-Client-Ip': (0, utils_1.getXClientIp)(request),
14
+ 'User-Agent': `simaland-${config.appName}/${config.appVersion}`,
15
+ Cookie: request.get('cookie') || '',
16
+ ...(0, utils_1.getServiceHeaders)(request),
17
+ };
18
+ }
19
+ exports.getRequestHeaders = getRequestHeaders;
20
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/http-client/utils.ts"],"names":[],"mappings":";;;AAAA,gDAAuE;AAIvE;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,MAAkB,EAAE,OAAgB;IACpE,OAAO;QACL,aAAa,EAAE,IAAA,oBAAY,EAAC,OAAO,CAAC;QACpC,YAAY,EAAE,YAAY,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,UAAU,EAAE;QAC/D,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE;QACnC,GAAG,IAAA,yBAAiB,EAAC,OAAO,CAAC;KAC9B,CAAC;AACJ,CAAC;AAPD,8CAOC"}
@@ -0,0 +1,4 @@
1
+ export declare const RESPONSE_EVENT: {
2
+ readonly renderStart: symbol;
3
+ readonly renderFinish: symbol;
4
+ };
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RESPONSE_EVENT = void 0;
4
+ exports.RESPONSE_EVENT = {
5
+ renderStart: Symbol('render:start'),
6
+ renderFinish: Symbol('render:finish'),
7
+ };
8
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/http-server/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,cAAc,GAAG;IAC5B,WAAW,EAAE,MAAM,CAAC,cAAc,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC,eAAe,CAAC;CAC7B,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { Handler } from 'express';
2
+ /**
3
+ * Обработчик, отвечающий данными о времени работы приложения.
4
+ * @return Обработчик http-запроса.
5
+ */
6
+ export declare function healthCheck(): Handler;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.healthCheck = void 0;
4
+ /**
5
+ * Обработчик, отвечающий данными о времени работы приложения.
6
+ * @return Обработчик http-запроса.
7
+ */
8
+ function healthCheck() {
9
+ const startTime = Date.now();
10
+ return (req, res) => {
11
+ res.json({ uptime: Date.now() - startTime });
12
+ };
13
+ }
14
+ exports.healthCheck = healthCheck;
15
+ //# sourceMappingURL=health-check.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"health-check.js","sourceRoot":"","sources":["../../../src/http-server/handler/health-check.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACH,SAAgB,WAAW;IACzB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAClB,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC;AACJ,CAAC;AAND,kCAMC"}
@@ -0,0 +1,10 @@
1
+ import type { Handler } from 'express';
2
+ import type { BaseConfig } from '../../config/types';
3
+ import type { Logger } from '../../logger/types';
4
+ /**
5
+ * Возвращает новый middleware для логирования запросов.
6
+ * @param config Конфиг.
7
+ * @param logger Logger.
8
+ * @return Middleware.
9
+ */
10
+ export declare function loggingMiddleware(config: BaseConfig, logger: Logger): Handler;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.loggingMiddleware = void 0;
4
+ const utils_1 = require("../utils");
5
+ const number_1 = require("../../utils/number");
6
+ /**
7
+ * Возвращает новый middleware для логирования запросов.
8
+ * @param config Конфиг.
9
+ * @param logger Logger.
10
+ * @return Middleware.
11
+ */
12
+ function loggingMiddleware(config, logger) {
13
+ return function (req, res, next) {
14
+ const start = process.hrtime.bigint();
15
+ res.once('finish', () => {
16
+ const finish = process.hrtime.bigint();
17
+ const message = {
18
+ version: config.appVersion,
19
+ route: req.originalUrl,
20
+ method: req.method,
21
+ status: res.statusCode,
22
+ remote_ip: (0, utils_1.getXClientIp)(req),
23
+ latency: (0, number_1.toMilliseconds)(finish - start),
24
+ };
25
+ logger.info(message);
26
+ });
27
+ next();
28
+ };
29
+ }
30
+ exports.loggingMiddleware = loggingMiddleware;
31
+ //# sourceMappingURL=logging.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging.js","sourceRoot":"","sources":["../../../src/http-server/middleware/logging.ts"],"names":[],"mappings":";;;AAGA,oCAAwC;AACxC,+CAAoD;AAEpD;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,MAAkB,EAAE,MAAc;IAClE,OAAO,UAAU,GAAG,EAAE,GAAG,EAAE,IAAI;QAC7B,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAEtC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;YACtB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAEvC,MAAM,OAAO,GAA2B;gBACtC,OAAO,EAAE,MAAM,CAAC,UAAU;gBAC1B,KAAK,EAAE,GAAG,CAAC,WAAW;gBACtB,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,MAAM,EAAE,GAAG,CAAC,UAAU;gBACtB,SAAS,EAAE,IAAA,oBAAY,EAAC,GAAG,CAAC;gBAC5B,OAAO,EAAE,IAAA,uBAAc,EAAC,MAAM,GAAG,KAAK,CAAC;aACxC,CAAC;YAEF,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;QAEH,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC;AArBD,8CAqBC"}
@@ -0,0 +1,23 @@
1
+ import type { Handler } from 'express';
2
+ import type { BaseConfig } from '../../config/types';
3
+ import * as PromClient from 'prom-client';
4
+ import { ConventionalLabels } from '../../metrics/constants';
5
+ /**
6
+ * Возвращает новый middleware для формирования метрик входящего запроса.
7
+ * @param config Конфиг.
8
+ * @param metrics Метрики - счетчик запросов и гистограмма длительности ответа.
9
+ * @return Middleware.
10
+ */
11
+ export declare function responseMetricsMiddleware(config: BaseConfig, metrics: {
12
+ counter: PromClient.Counter<typeof ConventionalLabels.HTTP_RESPONSE[number]>;
13
+ histogram: PromClient.Histogram<typeof ConventionalLabels.HTTP_RESPONSE[number]>;
14
+ }): Handler;
15
+ /**
16
+ * Возвращает новый middleware для формирования метрик рендеринга верстки.
17
+ * @param config Конфиг.
18
+ * @param metrics Метрики - гистограмма длительности рендеринга.
19
+ * @return Middleware.
20
+ */
21
+ export declare function renderMetricsMiddleware(config: BaseConfig, metrics: {
22
+ histogram: PromClient.Histogram<typeof ConventionalLabels.SSR[number]>;
23
+ }): Handler;
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.renderMetricsMiddleware = exports.responseMetricsMiddleware = void 0;
4
+ const number_1 = require("../../utils/number");
5
+ const constants_1 = require("../constants");
6
+ /**
7
+ * Возвращает новый middleware для формирования метрик входящего запроса.
8
+ * @param config Конфиг.
9
+ * @param metrics Метрики - счетчик запросов и гистограмма длительности ответа.
10
+ * @return Middleware.
11
+ */
12
+ function responseMetricsMiddleware(config, metrics) {
13
+ // eslint-disable-next-line require-jsdoc, jsdoc/require-jsdoc
14
+ function resolveLabels(req, res) {
15
+ return {
16
+ version: config.appVersion,
17
+ route: req.baseUrl + req.path,
18
+ code: res.statusCode,
19
+ method: req.method,
20
+ };
21
+ }
22
+ return (req, res, next) => {
23
+ const start = process.hrtime.bigint();
24
+ metrics.counter.inc(resolveLabels(req, res), 1);
25
+ res.once('finish', () => {
26
+ const finish = process.hrtime.bigint();
27
+ metrics.histogram.observe(resolveLabels(req, res), (0, number_1.toMilliseconds)(finish - start));
28
+ });
29
+ next();
30
+ };
31
+ }
32
+ exports.responseMetricsMiddleware = responseMetricsMiddleware;
33
+ /**
34
+ * Возвращает новый middleware для формирования метрик рендеринга верстки.
35
+ * @param config Конфиг.
36
+ * @param metrics Метрики - гистограмма длительности рендеринга.
37
+ * @return Middleware.
38
+ */
39
+ function renderMetricsMiddleware(config, metrics) {
40
+ return (req, res, next) => {
41
+ let start;
42
+ res.once(constants_1.RESPONSE_EVENT.renderStart, () => {
43
+ start = process.hrtime.bigint();
44
+ });
45
+ res.once(constants_1.RESPONSE_EVENT.renderFinish, () => {
46
+ if (typeof start !== 'bigint') {
47
+ throw Error('Looks like "render start" event not emitted');
48
+ }
49
+ const finish = process.hrtime.bigint();
50
+ metrics.histogram.observe({
51
+ version: config.appVersion,
52
+ method: req.method,
53
+ route: req.baseUrl + req.path,
54
+ }, (0, number_1.toMilliseconds)(finish - start));
55
+ });
56
+ next();
57
+ };
58
+ }
59
+ exports.renderMetricsMiddleware = renderMetricsMiddleware;
60
+ //# sourceMappingURL=metrics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/http-server/middleware/metrics.ts"],"names":[],"mappings":";;;AAGA,+CAAoD;AACpD,4CAA8C;AAG9C;;;;;GAKG;AACH,SAAgB,yBAAyB,CACvC,MAAkB,EAClB,OAGC;IAED,8DAA8D;IAC9D,SAAS,aAAa,CACpB,GAAY,EACZ,GAAa;QAEb,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,UAAU;YAC1B,KAAK,EAAE,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,IAAI;YAC7B,IAAI,EAAE,GAAG,CAAC,UAAU;YACpB,MAAM,EAAE,GAAG,CAAC,MAAM;SACnB,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACxB,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAEtC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAEhD,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;YACtB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAEvC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,IAAA,uBAAc,EAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;QAEH,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC;AAjCD,8DAiCC;AAED;;;;;GAKG;AACH,SAAgB,uBAAuB,CACrC,MAAkB,EAClB,OAEC;IAED,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACxB,IAAI,KAAyB,CAAC;QAE9B,GAAG,CAAC,IAAI,CAAC,0BAAc,CAAC,WAAW,EAAE,GAAG,EAAE;YACxC,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,0BAAc,CAAC,YAAY,EAAE,GAAG,EAAE;YACzC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;gBAC7B,MAAM,KAAK,CAAC,6CAA6C,CAAC,CAAC;aAC5D;YAED,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAEvC,OAAO,CAAC,SAAS,CAAC,OAAO,CACvB;gBACE,OAAO,EAAE,MAAM,CAAC,UAAU;gBAC1B,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,KAAK,EAAE,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,IAAI;aAC9B,EACD,IAAA,uBAAc,EAAC,MAAM,GAAG,KAAK,CAAC,CAC/B,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC;AAhCD,0DAgCC"}
@@ -0,0 +1,14 @@
1
+ import { Tracer } from '@opentelemetry/api';
2
+ import type { Request, Handler } from 'express';
3
+ /**
4
+ * Возвращает новый middleware для трассировки стадий входящего запроса.
5
+ * @param tracer Tracer.
6
+ * @return Middleware.
7
+ */
8
+ export declare function tracingMiddleware(tracer: Tracer): Handler;
9
+ /**
10
+ * Возвращает набор стандартных атрибутов для спана.
11
+ * @param req Входящий http-запрос.
12
+ * @return Атрибуты.
13
+ */
14
+ export declare function getConventionalRequestAttrs(req: Request): Record<string, string | undefined>;