@sima-land/isomorph 11.0.0-alpha.44 → 11.0.0-alpha.45

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 (791) hide show
  1. package/dist/cjs/di/application.js +3 -3
  2. package/dist/cjs/di/application.js.map +1 -1
  3. package/dist/cjs/http/errors.js +11 -3
  4. package/dist/cjs/http/errors.js.map +1 -1
  5. package/dist/cjs/http/index.js +7 -0
  6. package/dist/cjs/http/index.js.map +1 -1
  7. package/dist/cjs/http/types.js.map +1 -1
  8. package/dist/cjs/http/utils.js +80 -0
  9. package/dist/cjs/http/utils.js.map +1 -0
  10. package/dist/cjs/package.json +8 -6
  11. package/dist/cjs/preset/bun/index.js +79 -0
  12. package/dist/cjs/preset/bun/index.js.map +1 -0
  13. package/dist/cjs/preset/bun/providers/config-source.js +13 -0
  14. package/dist/cjs/preset/bun/providers/config-source.js.map +1 -0
  15. package/dist/cjs/preset/bun/providers/fetch-middleware.js +13 -0
  16. package/dist/cjs/preset/bun/providers/fetch-middleware.js.map +1 -0
  17. package/dist/cjs/preset/bun/providers/log-handler-sentry.js +24 -0
  18. package/dist/cjs/preset/bun/providers/log-handler-sentry.js.map +1 -0
  19. package/dist/cjs/preset/bun/providers/logger.js +18 -0
  20. package/dist/cjs/preset/bun/providers/logger.js.map +1 -0
  21. package/dist/cjs/preset/bun/providers/serve-metrics.js +25 -0
  22. package/dist/cjs/preset/bun/providers/serve-metrics.js.map +1 -0
  23. package/dist/cjs/preset/bun/providers/serve-middleware.js +29 -0
  24. package/dist/cjs/preset/bun/providers/serve-middleware.js.map +1 -0
  25. package/dist/cjs/preset/bun/providers/serve.js +33 -0
  26. package/dist/cjs/preset/bun/providers/serve.js.map +1 -0
  27. package/dist/cjs/preset/bun/providers/service-routes.js +16 -0
  28. package/dist/cjs/preset/bun/providers/service-routes.js.map +1 -0
  29. package/dist/cjs/preset/bun/utils/get-stats-handler.js +30 -0
  30. package/dist/cjs/preset/bun/utils/get-stats-handler.js.map +1 -0
  31. package/dist/cjs/preset/bun-handler/index.js +66 -0
  32. package/dist/cjs/preset/bun-handler/index.js.map +1 -0
  33. package/dist/cjs/preset/bun-handler/providers/accept-type.js +24 -0
  34. package/dist/cjs/preset/bun-handler/providers/accept-type.js.map +1 -0
  35. package/dist/cjs/preset/bun-handler/providers/cookie-store.js +15 -0
  36. package/dist/cjs/preset/bun-handler/providers/cookie-store.js.map +1 -0
  37. package/dist/cjs/preset/bun-handler/providers/fetch-middleware.js +31 -0
  38. package/dist/cjs/preset/bun-handler/providers/fetch-middleware.js.map +1 -0
  39. package/dist/cjs/preset/bun-handler/providers/handler-main.js +93 -0
  40. package/dist/cjs/preset/bun-handler/providers/handler-main.js.map +1 -0
  41. package/dist/cjs/preset/bun-handler/providers/specific-params.js +19 -0
  42. package/dist/cjs/preset/bun-handler/providers/specific-params.js.map +1 -0
  43. package/dist/cjs/preset/isomorphic/index.js +63 -0
  44. package/dist/cjs/preset/isomorphic/index.js.map +1 -1
  45. package/dist/cjs/preset/isomorphic/providers/abort-controller.js +14 -0
  46. package/dist/cjs/preset/isomorphic/providers/abort-controller.js.map +1 -0
  47. package/dist/cjs/preset/isomorphic/providers/axios-factory.js +24 -0
  48. package/dist/cjs/preset/isomorphic/providers/axios-factory.js.map +1 -0
  49. package/dist/cjs/preset/isomorphic/providers/axios-log-handler.js +18 -0
  50. package/dist/cjs/preset/isomorphic/providers/axios-log-handler.js.map +1 -0
  51. package/dist/cjs/preset/isomorphic/providers/base-config.js +18 -0
  52. package/dist/cjs/preset/isomorphic/providers/base-config.js.map +1 -0
  53. package/dist/cjs/preset/isomorphic/providers/fetch.js +18 -0
  54. package/dist/cjs/preset/isomorphic/providers/fetch.js.map +1 -0
  55. package/dist/cjs/preset/isomorphic/providers/redux-middleware-saga.js +26 -0
  56. package/dist/cjs/preset/isomorphic/providers/redux-middleware-saga.js.map +1 -0
  57. package/dist/cjs/preset/isomorphic/types.js.map +1 -1
  58. package/dist/cjs/preset/isomorphic/utils/axios-logging.js +147 -0
  59. package/dist/cjs/preset/isomorphic/utils/axios-logging.js.map +1 -0
  60. package/dist/cjs/preset/isomorphic/utils/disableable.js +32 -0
  61. package/dist/cjs/preset/isomorphic/utils/disableable.js.map +1 -0
  62. package/dist/cjs/preset/isomorphic/utils/display-url.js +32 -0
  63. package/dist/cjs/preset/isomorphic/utils/display-url.js.map +1 -0
  64. package/dist/cjs/preset/isomorphic/utils/fetch-logging.js +84 -0
  65. package/dist/cjs/preset/isomorphic/utils/fetch-logging.js.map +1 -0
  66. package/dist/cjs/preset/isomorphic/utils/get-fetch-error-logging.js +21 -0
  67. package/dist/cjs/preset/isomorphic/utils/get-fetch-error-logging.js.map +1 -0
  68. package/dist/cjs/preset/isomorphic/utils/get-fetch-extra-aborting.js +31 -0
  69. package/dist/cjs/preset/isomorphic/utils/get-fetch-extra-aborting.js.map +1 -0
  70. package/dist/cjs/preset/isomorphic/utils/get-fetch-logging.js +25 -0
  71. package/dist/cjs/preset/isomorphic/utils/get-fetch-logging.js.map +1 -0
  72. package/dist/cjs/preset/isomorphic/utils/hide-first-id.js +20 -0
  73. package/dist/cjs/preset/isomorphic/utils/hide-first-id.js.map +1 -0
  74. package/dist/cjs/preset/isomorphic/utils/http-api-host-pool.js +46 -0
  75. package/dist/cjs/preset/isomorphic/utils/http-api-host-pool.js.map +1 -0
  76. package/dist/cjs/preset/isomorphic/utils/http-status.js +70 -0
  77. package/dist/cjs/preset/isomorphic/utils/http-status.js.map +1 -0
  78. package/dist/cjs/preset/isomorphic/utils/saga-logging.js +54 -0
  79. package/dist/cjs/preset/isomorphic/utils/saga-logging.js.map +1 -0
  80. package/dist/cjs/preset/isomorphic/utils/severity-from-status.js +30 -0
  81. package/dist/cjs/preset/isomorphic/utils/severity-from-status.js.map +1 -0
  82. package/dist/cjs/preset/node/index.js +93 -7
  83. package/dist/cjs/preset/node/index.js.map +1 -1
  84. package/dist/cjs/preset/node/providers/config-source.js +29 -0
  85. package/dist/cjs/preset/node/providers/config-source.js.map +1 -0
  86. package/dist/cjs/preset/node/providers/express-error-middleware.js +15 -0
  87. package/dist/cjs/preset/node/providers/express-error-middleware.js.map +1 -0
  88. package/dist/cjs/preset/node/providers/express-factory.js +16 -0
  89. package/dist/cjs/preset/node/providers/express-factory.js.map +1 -0
  90. package/dist/cjs/preset/node/providers/express-log-middleware.js +45 -0
  91. package/dist/cjs/preset/node/providers/express-log-middleware.js.map +1 -0
  92. package/dist/cjs/preset/node/providers/express-metrics-middleware.js +60 -0
  93. package/dist/cjs/preset/node/providers/express-metrics-middleware.js.map +1 -0
  94. package/dist/cjs/preset/node/providers/express-request-middleware.js +15 -0
  95. package/dist/cjs/preset/node/providers/express-request-middleware.js.map +1 -0
  96. package/dist/cjs/preset/node/providers/express-tracing-middleware.js +56 -0
  97. package/dist/cjs/preset/node/providers/express-tracing-middleware.js.map +1 -0
  98. package/dist/cjs/preset/node/providers/log-handler-pino.js +32 -0
  99. package/dist/cjs/preset/node/providers/log-handler-pino.js.map +1 -0
  100. package/dist/cjs/preset/node/providers/log-handler-sentry.js +31 -0
  101. package/dist/cjs/preset/node/providers/log-handler-sentry.js.map +1 -0
  102. package/dist/cjs/preset/node/providers/logger.js +23 -0
  103. package/dist/cjs/preset/node/providers/logger.js.map +1 -0
  104. package/dist/cjs/preset/node/providers/metrics-http-app.js +26 -0
  105. package/dist/cjs/preset/node/providers/metrics-http-app.js.map +1 -0
  106. package/dist/cjs/preset/node/providers/span-exporter.js +21 -0
  107. package/dist/cjs/preset/node/providers/span-exporter.js.map +1 -0
  108. package/dist/cjs/preset/node/providers/tracer-provider-resource.js +26 -0
  109. package/dist/cjs/preset/node/providers/tracer-provider-resource.js.map +1 -0
  110. package/dist/cjs/preset/node/providers/tracer-provider.js +27 -0
  111. package/dist/cjs/preset/node/providers/tracer-provider.js.map +1 -0
  112. package/dist/cjs/preset/node/providers/tracer.js +18 -0
  113. package/dist/cjs/preset/node/providers/tracer.js.map +1 -0
  114. package/dist/cjs/preset/node/types.js.map +1 -1
  115. package/dist/cjs/preset/node/{node/utils/http-client/index.js → utils/axios-tracing-middleware.js} +11 -52
  116. package/dist/cjs/preset/node/utils/axios-tracing-middleware.js.map +1 -0
  117. package/dist/cjs/preset/node/utils/emitter-as-target.js +52 -0
  118. package/dist/cjs/preset/node/utils/emitter-as-target.js.map +1 -0
  119. package/dist/cjs/preset/node/{node/utils/http-server/index.js → utils/get-client-ip.js} +2 -2
  120. package/dist/cjs/preset/node/utils/get-client-ip.js.map +1 -0
  121. package/dist/cjs/preset/node/utils/get-forwarded-headers.js +36 -0
  122. package/dist/cjs/preset/node/utils/get-forwarded-headers.js.map +1 -0
  123. package/dist/cjs/preset/node/utils/get-page-response-format.js +20 -0
  124. package/dist/cjs/preset/node/utils/get-page-response-format.js.map +1 -0
  125. package/dist/cjs/preset/node/utils/handler-provider.js +29 -0
  126. package/dist/cjs/preset/node/utils/handler-provider.js.map +1 -0
  127. package/dist/cjs/preset/node-handler/index.js +73 -0
  128. package/dist/cjs/preset/node-handler/index.js.map +1 -0
  129. package/dist/cjs/preset/node-handler/providers/accepts-type.js +17 -0
  130. package/dist/cjs/preset/node-handler/providers/accepts-type.js.map +1 -0
  131. package/dist/cjs/preset/node-handler/providers/axios-log-handler.js +25 -0
  132. package/dist/cjs/preset/node-handler/providers/axios-log-handler.js.map +1 -0
  133. package/dist/cjs/preset/node-handler/providers/axios-middleware.js +55 -0
  134. package/dist/cjs/preset/node-handler/providers/axios-middleware.js.map +1 -0
  135. package/dist/cjs/preset/node-handler/providers/cookie-store.js +18 -0
  136. package/dist/cjs/preset/node-handler/providers/cookie-store.js.map +1 -0
  137. package/dist/cjs/preset/node-handler/providers/fetch-middleware.js +36 -0
  138. package/dist/cjs/preset/node-handler/providers/fetch-middleware.js.map +1 -0
  139. package/dist/cjs/preset/node-handler/providers/handler-main.js +79 -0
  140. package/dist/cjs/preset/node-handler/providers/handler-main.js.map +1 -0
  141. package/dist/cjs/preset/node-handler/providers/response-events.js +18 -0
  142. package/dist/cjs/preset/node-handler/providers/response-events.js.map +1 -0
  143. package/dist/cjs/preset/node-handler/providers/specific-params.js +28 -0
  144. package/dist/cjs/preset/node-handler/providers/specific-params.js.map +1 -0
  145. package/dist/cjs/preset/server/constants.js +21 -0
  146. package/dist/cjs/preset/server/constants.js.map +1 -0
  147. package/dist/cjs/preset/server/index.js +89 -0
  148. package/dist/cjs/preset/server/index.js.map +1 -0
  149. package/dist/cjs/preset/server/providers/element-to-string.js +24 -0
  150. package/dist/cjs/preset/server/providers/element-to-string.js.map +1 -0
  151. package/dist/cjs/preset/server/providers/fetch-log-handler.js +23 -0
  152. package/dist/cjs/preset/server/providers/fetch-log-handler.js.map +1 -0
  153. package/dist/cjs/preset/server/providers/format-page-response.js +68 -0
  154. package/dist/cjs/preset/server/providers/format-page-response.js.map +1 -0
  155. package/dist/cjs/preset/server/providers/known-http-api-hosts.js +24 -0
  156. package/dist/cjs/preset/server/providers/known-http-api-hosts.js.map +1 -0
  157. package/dist/cjs/preset/server/providers/page-helmet.js +21 -0
  158. package/dist/cjs/preset/server/providers/page-helmet.js.map +1 -0
  159. package/dist/cjs/preset/server/providers/page-render.js +21 -0
  160. package/dist/cjs/preset/server/providers/page-render.js.map +1 -0
  161. package/dist/cjs/preset/server/providers/response-events.js +17 -0
  162. package/dist/cjs/preset/server/providers/response-events.js.map +1 -0
  163. package/dist/cjs/preset/server/providers/ssr-bridge-server-side.js +18 -0
  164. package/dist/cjs/preset/server/providers/ssr-bridge-server-side.js.map +1 -0
  165. package/dist/cjs/preset/server/types.js +6 -0
  166. package/dist/cjs/preset/server/types.js.map +1 -0
  167. package/dist/cjs/preset/server/utils/apply-server-middleware.js +22 -0
  168. package/dist/cjs/preset/server/utils/apply-server-middleware.js.map +1 -0
  169. package/dist/cjs/preset/server/utils/format-handler-error.js +40 -0
  170. package/dist/cjs/preset/server/utils/format-handler-error.js.map +1 -0
  171. package/dist/cjs/preset/server/utils/get-client-ip.js +16 -0
  172. package/dist/cjs/preset/server/utils/get-client-ip.js.map +1 -0
  173. package/dist/cjs/preset/server/utils/get-fetch-tracing.js +46 -0
  174. package/dist/cjs/preset/server/utils/get-fetch-tracing.js.map +1 -0
  175. package/dist/cjs/preset/server/utils/get-forwarded-headers.js +34 -0
  176. package/dist/cjs/preset/server/utils/get-forwarded-headers.js.map +1 -0
  177. package/dist/cjs/preset/server/utils/get-handler-metrics.js +43 -0
  178. package/dist/cjs/preset/server/utils/get-handler-metrics.js.map +1 -0
  179. package/dist/cjs/preset/server/utils/get-health-check.js +22 -0
  180. package/dist/cjs/preset/server/utils/get-health-check.js.map +1 -0
  181. package/dist/cjs/preset/server/utils/get-page-response-format.js +21 -0
  182. package/dist/cjs/preset/server/utils/get-page-response-format.js.map +1 -0
  183. package/dist/cjs/preset/server/utils/get-serve-error-logging.js +36 -0
  184. package/dist/cjs/preset/server/utils/get-serve-error-logging.js.map +1 -0
  185. package/dist/cjs/preset/server/utils/get-serve-logging.js +37 -0
  186. package/dist/cjs/preset/server/utils/get-serve-logging.js.map +1 -0
  187. package/dist/cjs/preset/server/utils/get-serve-measuring.js +57 -0
  188. package/dist/cjs/preset/server/utils/get-serve-measuring.js.map +1 -0
  189. package/dist/cjs/preset/server/utils/handler-provider.js +30 -0
  190. package/dist/cjs/preset/server/utils/handler-provider.js.map +1 -0
  191. package/dist/cjs/preset/{node/handler/utils/index.js → server/utils/regular-helmet.js} +2 -66
  192. package/dist/cjs/preset/server/utils/regular-helmet.js.map +1 -0
  193. package/dist/cjs/preset/server/utils/specific-extras.js +30 -0
  194. package/dist/cjs/preset/server/utils/specific-extras.js.map +1 -0
  195. package/dist/cjs/preset/web/index.js +22 -10
  196. package/dist/cjs/preset/web/index.js.map +1 -1
  197. package/dist/cjs/preset/web/providers/axios-middleware.js +19 -0
  198. package/dist/cjs/preset/web/providers/axios-middleware.js.map +1 -0
  199. package/dist/cjs/preset/web/providers/config-source.js +19 -0
  200. package/dist/cjs/preset/web/providers/config-source.js.map +1 -0
  201. package/dist/cjs/preset/web/providers/fetch-middleware.js +21 -0
  202. package/dist/cjs/preset/web/providers/fetch-middleware.js.map +1 -0
  203. package/dist/cjs/preset/web/providers/known-http-api-hosts.js +24 -0
  204. package/dist/cjs/preset/web/providers/known-http-api-hosts.js.map +1 -0
  205. package/dist/cjs/preset/web/providers/logger.js +47 -0
  206. package/dist/cjs/preset/web/providers/logger.js.map +1 -0
  207. package/dist/cjs/preset/web/providers/ssr-bridge-client-side.js +18 -0
  208. package/dist/cjs/preset/web/providers/ssr-bridge-client-side.js.map +1 -0
  209. package/dist/cjs/tokens.js +111 -30
  210. package/dist/cjs/tokens.js.map +1 -1
  211. package/dist/cjs/utils/express/utils/index.js.map +1 -1
  212. package/dist/esm/di/application.js +3 -3
  213. package/dist/esm/di/application.js.map +1 -1
  214. package/dist/esm/http/errors.js +11 -3
  215. package/dist/esm/http/errors.js.map +1 -1
  216. package/dist/esm/http/index.js +1 -0
  217. package/dist/esm/http/index.js.map +1 -1
  218. package/dist/esm/http/types.js.map +1 -1
  219. package/dist/esm/http/utils.js +74 -0
  220. package/dist/esm/http/utils.js.map +1 -0
  221. package/dist/esm/package.json +8 -6
  222. package/dist/esm/preset/bun/index.js +62 -0
  223. package/dist/esm/preset/bun/index.js.map +1 -0
  224. package/dist/esm/preset/bun/providers/config-source.js +6 -0
  225. package/dist/esm/preset/bun/providers/config-source.js.map +1 -0
  226. package/dist/esm/preset/bun/providers/fetch-middleware.js +7 -0
  227. package/dist/esm/preset/bun/providers/fetch-middleware.js.map +1 -0
  228. package/dist/esm/preset/bun/providers/log-handler-sentry.js +18 -0
  229. package/dist/esm/preset/bun/providers/log-handler-sentry.js.map +1 -0
  230. package/dist/esm/preset/bun/providers/logger.js +12 -0
  231. package/dist/esm/preset/bun/providers/logger.js.map +1 -0
  232. package/dist/esm/preset/bun/providers/serve-metrics.js +18 -0
  233. package/dist/esm/preset/bun/providers/serve-metrics.js.map +1 -0
  234. package/dist/esm/preset/bun/providers/serve-middleware.js +23 -0
  235. package/dist/esm/preset/bun/providers/serve-middleware.js.map +1 -0
  236. package/dist/esm/preset/bun/providers/serve.js +27 -0
  237. package/dist/esm/preset/bun/providers/serve.js.map +1 -0
  238. package/dist/esm/preset/bun/providers/service-routes.js +10 -0
  239. package/dist/esm/preset/bun/providers/service-routes.js.map +1 -0
  240. package/dist/esm/preset/bun/utils/get-stats-handler.js +22 -0
  241. package/dist/esm/preset/bun/utils/get-stats-handler.js.map +1 -0
  242. package/dist/esm/preset/bun-handler/index.js +60 -0
  243. package/dist/esm/preset/bun-handler/index.js.map +1 -0
  244. package/dist/esm/preset/bun-handler/providers/accept-type.js +18 -0
  245. package/dist/esm/preset/bun-handler/providers/accept-type.js.map +1 -0
  246. package/dist/esm/preset/bun-handler/providers/cookie-store.js +9 -0
  247. package/dist/esm/preset/bun-handler/providers/cookie-store.js.map +1 -0
  248. package/dist/esm/preset/bun-handler/providers/fetch-middleware.js +25 -0
  249. package/dist/esm/preset/bun-handler/providers/fetch-middleware.js.map +1 -0
  250. package/dist/esm/preset/bun-handler/providers/handler-main.js +84 -0
  251. package/dist/esm/preset/bun-handler/providers/handler-main.js.map +1 -0
  252. package/dist/esm/preset/bun-handler/providers/specific-params.js +13 -0
  253. package/dist/esm/preset/bun-handler/providers/specific-params.js.map +1 -0
  254. package/dist/esm/preset/isomorphic/index.js +10 -1
  255. package/dist/esm/preset/isomorphic/index.js.map +1 -1
  256. package/dist/esm/preset/isomorphic/providers/abort-controller.js +8 -0
  257. package/dist/esm/preset/isomorphic/providers/abort-controller.js.map +1 -0
  258. package/dist/esm/preset/isomorphic/providers/axios-factory.js +19 -0
  259. package/dist/esm/preset/isomorphic/providers/axios-factory.js.map +1 -0
  260. package/dist/esm/preset/isomorphic/providers/axios-log-handler.js +13 -0
  261. package/dist/esm/preset/isomorphic/providers/axios-log-handler.js.map +1 -0
  262. package/dist/esm/preset/isomorphic/providers/base-config.js +13 -0
  263. package/dist/esm/preset/isomorphic/providers/base-config.js.map +1 -0
  264. package/dist/esm/preset/isomorphic/providers/fetch.js +13 -0
  265. package/dist/esm/preset/isomorphic/providers/fetch.js.map +1 -0
  266. package/dist/esm/preset/isomorphic/providers/redux-middleware-saga.js +20 -0
  267. package/dist/esm/preset/isomorphic/providers/redux-middleware-saga.js.map +1 -0
  268. package/dist/esm/preset/isomorphic/types.js.map +1 -1
  269. package/dist/esm/preset/isomorphic/utils/axios-logging.js +140 -0
  270. package/dist/esm/preset/isomorphic/utils/axios-logging.js.map +1 -0
  271. package/dist/esm/preset/isomorphic/utils/disableable.js +25 -0
  272. package/dist/esm/preset/isomorphic/utils/disableable.js.map +1 -0
  273. package/dist/esm/preset/isomorphic/utils/display-url.js +26 -0
  274. package/dist/esm/preset/isomorphic/utils/display-url.js.map +1 -0
  275. package/dist/esm/preset/isomorphic/utils/fetch-logging.js +78 -0
  276. package/dist/esm/preset/isomorphic/utils/fetch-logging.js.map +1 -0
  277. package/dist/esm/preset/isomorphic/utils/get-fetch-error-logging.js +16 -0
  278. package/dist/esm/preset/isomorphic/utils/get-fetch-error-logging.js.map +1 -0
  279. package/dist/esm/preset/isomorphic/utils/get-fetch-extra-aborting.js +25 -0
  280. package/dist/esm/preset/isomorphic/utils/get-fetch-extra-aborting.js.map +1 -0
  281. package/dist/esm/preset/isomorphic/utils/get-fetch-logging.js +20 -0
  282. package/dist/esm/preset/isomorphic/utils/get-fetch-logging.js.map +1 -0
  283. package/dist/esm/preset/isomorphic/utils/hide-first-id.js +14 -0
  284. package/dist/esm/preset/isomorphic/utils/hide-first-id.js.map +1 -0
  285. package/dist/esm/preset/isomorphic/utils/http-api-host-pool.js +39 -0
  286. package/dist/esm/preset/isomorphic/utils/http-api-host-pool.js.map +1 -0
  287. package/dist/esm/preset/isomorphic/utils/http-status.js +63 -0
  288. package/dist/esm/preset/isomorphic/utils/http-status.js.map +1 -0
  289. package/dist/esm/preset/isomorphic/utils/saga-logging.js +47 -0
  290. package/dist/esm/preset/isomorphic/utils/saga-logging.js.map +1 -0
  291. package/dist/esm/preset/isomorphic/utils/severity-from-status.js +24 -0
  292. package/dist/esm/preset/isomorphic/utils/severity-from-status.js.map +1 -0
  293. package/dist/esm/preset/node/index.js +82 -2
  294. package/dist/esm/preset/node/index.js.map +1 -1
  295. package/dist/esm/preset/node/providers/config-source.js +23 -0
  296. package/dist/esm/preset/node/providers/config-source.js.map +1 -0
  297. package/dist/esm/preset/node/providers/express-error-middleware.js +10 -0
  298. package/dist/esm/preset/node/providers/express-error-middleware.js.map +1 -0
  299. package/dist/esm/preset/node/providers/express-factory.js +10 -0
  300. package/dist/esm/preset/node/providers/express-factory.js.map +1 -0
  301. package/dist/esm/preset/node/providers/express-log-middleware.js +40 -0
  302. package/dist/esm/preset/node/providers/express-log-middleware.js.map +1 -0
  303. package/dist/esm/preset/node/providers/express-metrics-middleware.js +55 -0
  304. package/dist/esm/preset/node/providers/express-metrics-middleware.js.map +1 -0
  305. package/dist/esm/preset/node/providers/express-request-middleware.js +10 -0
  306. package/dist/esm/preset/node/providers/express-request-middleware.js.map +1 -0
  307. package/dist/esm/preset/node/providers/express-tracing-middleware.js +51 -0
  308. package/dist/esm/preset/node/providers/express-tracing-middleware.js.map +1 -0
  309. package/dist/esm/preset/node/providers/log-handler-pino.js +26 -0
  310. package/dist/esm/preset/node/providers/log-handler-pino.js.map +1 -0
  311. package/dist/esm/preset/node/providers/log-handler-sentry.js +24 -0
  312. package/dist/esm/preset/node/providers/log-handler-sentry.js.map +1 -0
  313. package/dist/esm/preset/node/providers/logger.js +18 -0
  314. package/dist/esm/preset/node/providers/logger.js.map +1 -0
  315. package/dist/esm/preset/node/providers/metrics-http-app.js +18 -0
  316. package/dist/esm/preset/node/providers/metrics-http-app.js.map +1 -0
  317. package/dist/esm/preset/node/providers/span-exporter.js +16 -0
  318. package/dist/esm/preset/node/providers/span-exporter.js.map +1 -0
  319. package/dist/esm/preset/node/providers/tracer-provider-resource.js +20 -0
  320. package/dist/esm/preset/node/providers/tracer-provider-resource.js.map +1 -0
  321. package/dist/esm/preset/node/providers/tracer-provider.js +22 -0
  322. package/dist/esm/preset/node/providers/tracer-provider.js.map +1 -0
  323. package/dist/esm/preset/node/providers/tracer.js +13 -0
  324. package/dist/esm/preset/node/providers/tracer.js.map +1 -0
  325. package/dist/esm/preset/node/types.js.map +1 -1
  326. package/dist/esm/preset/node/{node/utils/http-client/index.js → utils/axios-tracing-middleware.js} +8 -47
  327. package/dist/esm/preset/node/utils/axios-tracing-middleware.js.map +1 -0
  328. package/dist/esm/preset/node/utils/emitter-as-target.js +45 -0
  329. package/dist/esm/preset/node/utils/emitter-as-target.js.map +1 -0
  330. package/dist/esm/preset/node/{node/utils/http-server/index.js → utils/get-client-ip.js} +2 -2
  331. package/dist/esm/preset/node/utils/get-client-ip.js.map +1 -0
  332. package/dist/esm/preset/node/utils/get-forwarded-headers.js +31 -0
  333. package/dist/esm/preset/node/utils/get-forwarded-headers.js.map +1 -0
  334. package/dist/esm/preset/node/utils/get-page-response-format.js +14 -0
  335. package/dist/esm/preset/node/utils/get-page-response-format.js.map +1 -0
  336. package/dist/esm/preset/node/utils/handler-provider.js +24 -0
  337. package/dist/esm/preset/node/utils/handler-provider.js.map +1 -0
  338. package/dist/esm/preset/node-handler/index.js +68 -0
  339. package/dist/esm/preset/node-handler/index.js.map +1 -0
  340. package/dist/esm/preset/node-handler/providers/accepts-type.js +12 -0
  341. package/dist/esm/preset/node-handler/providers/accepts-type.js.map +1 -0
  342. package/dist/esm/preset/node-handler/providers/axios-log-handler.js +20 -0
  343. package/dist/esm/preset/node-handler/providers/axios-log-handler.js.map +1 -0
  344. package/dist/esm/preset/node-handler/providers/axios-middleware.js +50 -0
  345. package/dist/esm/preset/node-handler/providers/axios-middleware.js.map +1 -0
  346. package/dist/esm/preset/node-handler/providers/cookie-store.js +13 -0
  347. package/dist/esm/preset/node-handler/providers/cookie-store.js.map +1 -0
  348. package/dist/esm/preset/node-handler/providers/fetch-middleware.js +31 -0
  349. package/dist/esm/preset/node-handler/providers/fetch-middleware.js.map +1 -0
  350. package/dist/esm/preset/node-handler/providers/handler-main.js +71 -0
  351. package/dist/esm/preset/node-handler/providers/handler-main.js.map +1 -0
  352. package/dist/esm/preset/node-handler/providers/response-events.js +13 -0
  353. package/dist/esm/preset/node-handler/providers/response-events.js.map +1 -0
  354. package/dist/esm/preset/node-handler/providers/specific-params.js +23 -0
  355. package/dist/esm/preset/node-handler/providers/specific-params.js.map +1 -0
  356. package/dist/esm/preset/server/constants.js +15 -0
  357. package/dist/esm/preset/server/constants.js.map +1 -0
  358. package/dist/esm/preset/server/index.js +14 -0
  359. package/dist/esm/preset/server/index.js.map +1 -0
  360. package/dist/esm/preset/server/providers/element-to-string.js +19 -0
  361. package/dist/esm/preset/server/providers/element-to-string.js.map +1 -0
  362. package/dist/esm/preset/server/providers/fetch-log-handler.js +18 -0
  363. package/dist/esm/preset/server/providers/fetch-log-handler.js.map +1 -0
  364. package/dist/esm/preset/server/providers/format-page-response.js +63 -0
  365. package/dist/esm/preset/server/providers/format-page-response.js.map +1 -0
  366. package/dist/esm/preset/server/providers/known-http-api-hosts.js +19 -0
  367. package/dist/esm/preset/server/providers/known-http-api-hosts.js.map +1 -0
  368. package/dist/esm/preset/server/providers/page-helmet.js +16 -0
  369. package/dist/esm/preset/server/providers/page-helmet.js.map +1 -0
  370. package/dist/esm/preset/server/providers/page-render.js +9 -0
  371. package/dist/esm/preset/server/providers/page-render.js.map +1 -0
  372. package/dist/esm/preset/server/providers/response-events.js +12 -0
  373. package/dist/esm/preset/server/providers/response-events.js.map +1 -0
  374. package/dist/esm/preset/server/providers/ssr-bridge-server-side.js +13 -0
  375. package/dist/esm/preset/server/providers/ssr-bridge-server-side.js.map +1 -0
  376. package/dist/esm/preset/server/types.js +2 -0
  377. package/dist/esm/preset/server/types.js.map +1 -0
  378. package/dist/esm/preset/server/utils/apply-server-middleware.js +16 -0
  379. package/dist/esm/preset/server/utils/apply-server-middleware.js.map +1 -0
  380. package/dist/esm/preset/server/utils/format-handler-error.js +34 -0
  381. package/dist/esm/preset/server/utils/format-handler-error.js.map +1 -0
  382. package/dist/esm/preset/server/utils/get-client-ip.js +10 -0
  383. package/dist/esm/preset/server/utils/get-client-ip.js.map +1 -0
  384. package/dist/esm/preset/server/utils/get-fetch-tracing.js +41 -0
  385. package/dist/esm/preset/server/utils/get-fetch-tracing.js.map +1 -0
  386. package/dist/esm/preset/server/utils/get-forwarded-headers.js +29 -0
  387. package/dist/esm/preset/server/utils/get-forwarded-headers.js.map +1 -0
  388. package/dist/esm/preset/server/utils/get-handler-metrics.js +35 -0
  389. package/dist/esm/preset/server/utils/get-handler-metrics.js.map +1 -0
  390. package/dist/esm/preset/server/utils/get-health-check.js +16 -0
  391. package/dist/esm/preset/server/utils/get-health-check.js.map +1 -0
  392. package/dist/esm/preset/server/utils/get-page-response-format.js +15 -0
  393. package/dist/esm/preset/server/utils/get-page-response-format.js.map +1 -0
  394. package/dist/esm/preset/server/utils/get-serve-error-logging.js +31 -0
  395. package/dist/esm/preset/server/utils/get-serve-error-logging.js.map +1 -0
  396. package/dist/esm/preset/server/utils/get-serve-logging.js +32 -0
  397. package/dist/esm/preset/server/utils/get-serve-logging.js.map +1 -0
  398. package/dist/esm/preset/server/utils/get-serve-measuring.js +52 -0
  399. package/dist/esm/preset/server/utils/get-serve-measuring.js.map +1 -0
  400. package/dist/esm/preset/server/utils/handler-provider.js +25 -0
  401. package/dist/esm/preset/server/utils/handler-provider.js.map +1 -0
  402. package/dist/esm/preset/{node/handler/utils/index.js → server/utils/regular-helmet.js} +2 -62
  403. package/dist/esm/preset/server/utils/regular-helmet.js.map +1 -0
  404. package/dist/esm/preset/server/utils/specific-extras.js +23 -0
  405. package/dist/esm/preset/server/utils/specific-extras.js.map +1 -0
  406. package/dist/esm/preset/web/index.js +18 -6
  407. package/dist/esm/preset/web/index.js.map +1 -1
  408. package/dist/esm/preset/web/providers/axios-middleware.js +14 -0
  409. package/dist/esm/preset/web/providers/axios-middleware.js.map +1 -0
  410. package/dist/esm/preset/web/providers/config-source.js +14 -0
  411. package/dist/esm/preset/web/providers/config-source.js.map +1 -0
  412. package/dist/esm/preset/web/providers/fetch-middleware.js +16 -0
  413. package/dist/esm/preset/web/providers/fetch-middleware.js.map +1 -0
  414. package/dist/esm/preset/web/providers/known-http-api-hosts.js +19 -0
  415. package/dist/esm/preset/web/providers/known-http-api-hosts.js.map +1 -0
  416. package/dist/esm/preset/web/providers/logger.js +42 -0
  417. package/dist/esm/preset/web/providers/logger.js.map +1 -0
  418. package/dist/esm/preset/web/providers/ssr-bridge-client-side.js +13 -0
  419. package/dist/esm/preset/web/providers/ssr-bridge-client-side.js.map +1 -0
  420. package/dist/esm/tokens.js +111 -30
  421. package/dist/esm/tokens.js.map +1 -1
  422. package/dist/esm/utils/express/utils/index.js.map +1 -1
  423. package/dist/types/http/errors.d.ts +6 -2
  424. package/dist/types/http/errors.d.ts.map +1 -1
  425. package/dist/types/http/index.d.ts +2 -1
  426. package/dist/types/http/index.d.ts.map +1 -1
  427. package/dist/types/http/types.d.ts +22 -0
  428. package/dist/types/http/types.d.ts.map +1 -1
  429. package/dist/types/http/utils.d.ts +32 -0
  430. package/dist/types/http/utils.d.ts.map +1 -0
  431. package/dist/types/preset/bun/index.d.ts +10 -0
  432. package/dist/types/preset/bun/index.d.ts.map +1 -0
  433. package/dist/types/preset/bun/providers/config-source.d.ts +3 -0
  434. package/dist/types/preset/bun/providers/config-source.d.ts.map +1 -0
  435. package/dist/types/preset/bun/providers/fetch-middleware.d.ts +3 -0
  436. package/dist/types/preset/bun/providers/fetch-middleware.d.ts.map +1 -0
  437. package/dist/types/preset/bun/providers/log-handler-sentry.d.ts +3 -0
  438. package/dist/types/preset/bun/providers/log-handler-sentry.d.ts.map +1 -0
  439. package/dist/types/preset/bun/providers/logger.d.ts +4 -0
  440. package/dist/types/preset/bun/providers/logger.d.ts.map +1 -0
  441. package/dist/types/preset/bun/providers/serve-metrics.d.ts +3 -0
  442. package/dist/types/preset/bun/providers/serve-metrics.d.ts.map +1 -0
  443. package/dist/types/preset/bun/providers/serve-middleware.d.ts +4 -0
  444. package/dist/types/preset/bun/providers/serve-middleware.d.ts.map +1 -0
  445. package/dist/types/preset/bun/providers/serve.d.ts +4 -0
  446. package/dist/types/preset/bun/providers/serve.d.ts.map +1 -0
  447. package/dist/types/preset/bun/providers/service-routes.d.ts +3 -0
  448. package/dist/types/preset/bun/providers/service-routes.d.ts.map +1 -0
  449. package/dist/types/preset/bun/utils/get-stats-handler.d.ts +7 -0
  450. package/dist/types/preset/bun/utils/get-stats-handler.d.ts.map +1 -0
  451. package/dist/types/preset/bun-handler/index.d.ts +9 -0
  452. package/dist/types/preset/bun-handler/index.d.ts.map +1 -0
  453. package/dist/types/preset/bun-handler/providers/accept-type.d.ts +11 -0
  454. package/dist/types/preset/bun-handler/providers/accept-type.d.ts.map +1 -0
  455. package/dist/types/preset/bun-handler/providers/cookie-store.d.ts +4 -0
  456. package/dist/types/preset/bun-handler/providers/cookie-store.d.ts.map +1 -0
  457. package/dist/types/preset/bun-handler/providers/fetch-middleware.d.ts +4 -0
  458. package/dist/types/preset/bun-handler/providers/fetch-middleware.d.ts.map +1 -0
  459. package/dist/types/preset/bun-handler/providers/handler-main.d.ts +3 -0
  460. package/dist/types/preset/bun-handler/providers/handler-main.d.ts.map +1 -0
  461. package/dist/types/preset/bun-handler/providers/specific-params.d.ts +3 -0
  462. package/dist/types/preset/bun-handler/providers/specific-params.d.ts.map +1 -0
  463. package/dist/types/preset/isomorphic/index.d.ts +9 -0
  464. package/dist/types/preset/isomorphic/index.d.ts.map +1 -1
  465. package/dist/types/preset/isomorphic/providers/abort-controller.d.ts +6 -0
  466. package/dist/types/preset/isomorphic/providers/abort-controller.d.ts.map +1 -0
  467. package/dist/types/preset/isomorphic/providers/axios-factory.d.ts +9 -0
  468. package/dist/types/preset/isomorphic/providers/axios-factory.d.ts.map +1 -0
  469. package/dist/types/preset/isomorphic/providers/axios-log-handler.d.ts +9 -0
  470. package/dist/types/preset/isomorphic/providers/axios-log-handler.d.ts.map +1 -0
  471. package/dist/types/preset/isomorphic/providers/base-config.d.ts +9 -0
  472. package/dist/types/preset/isomorphic/providers/base-config.d.ts.map +1 -0
  473. package/dist/types/preset/isomorphic/providers/fetch.d.ts +8 -0
  474. package/dist/types/preset/isomorphic/providers/fetch.d.ts.map +1 -0
  475. package/dist/types/preset/isomorphic/providers/redux-middleware-saga.d.ts +9 -0
  476. package/dist/types/preset/isomorphic/providers/redux-middleware-saga.d.ts.map +1 -0
  477. package/dist/types/preset/isomorphic/types.d.ts +1 -1
  478. package/dist/types/preset/isomorphic/types.d.ts.map +1 -1
  479. package/dist/types/preset/isomorphic/utils/axios-logging.d.ts +34 -0
  480. package/dist/types/preset/isomorphic/utils/axios-logging.d.ts.map +1 -0
  481. package/dist/types/preset/isomorphic/utils/disableable.d.ts +18 -0
  482. package/dist/types/preset/isomorphic/utils/disableable.d.ts.map +1 -0
  483. package/dist/types/preset/isomorphic/utils/display-url.d.ts +9 -0
  484. package/dist/types/preset/isomorphic/utils/display-url.d.ts.map +1 -0
  485. package/dist/types/preset/isomorphic/utils/fetch-logging.d.ts +18 -0
  486. package/dist/types/preset/isomorphic/utils/fetch-logging.d.ts.map +1 -0
  487. package/dist/types/preset/isomorphic/utils/get-fetch-error-logging.d.ts +8 -0
  488. package/dist/types/preset/isomorphic/utils/get-fetch-error-logging.d.ts.map +1 -0
  489. package/dist/types/preset/isomorphic/utils/get-fetch-extra-aborting.d.ts +9 -0
  490. package/dist/types/preset/isomorphic/utils/get-fetch-extra-aborting.d.ts.map +1 -0
  491. package/dist/types/preset/isomorphic/utils/get-fetch-logging.d.ts +9 -0
  492. package/dist/types/preset/isomorphic/utils/get-fetch-logging.d.ts.map +1 -0
  493. package/dist/types/preset/isomorphic/utils/hide-first-id.d.ts +11 -0
  494. package/dist/types/preset/isomorphic/utils/hide-first-id.d.ts.map +1 -0
  495. package/dist/types/preset/isomorphic/utils/http-api-host-pool.d.ts +24 -0
  496. package/dist/types/preset/isomorphic/utils/http-api-host-pool.d.ts.map +1 -0
  497. package/dist/types/preset/isomorphic/utils/http-status.d.ts +29 -0
  498. package/dist/types/preset/isomorphic/utils/http-status.d.ts.map +1 -0
  499. package/dist/types/preset/isomorphic/utils/saga-logging.d.ts +30 -0
  500. package/dist/types/preset/isomorphic/utils/saga-logging.d.ts.map +1 -0
  501. package/dist/types/preset/isomorphic/utils/severity-from-status.d.ts +8 -0
  502. package/dist/types/preset/isomorphic/utils/severity-from-status.d.ts.map +1 -0
  503. package/dist/types/preset/node/index.d.ts +12 -3
  504. package/dist/types/preset/node/index.d.ts.map +1 -1
  505. package/dist/types/preset/node/providers/config-source.d.ts +7 -0
  506. package/dist/types/preset/node/providers/config-source.d.ts.map +1 -0
  507. package/dist/types/preset/node/providers/express-error-middleware.d.ts +7 -0
  508. package/dist/types/preset/node/providers/express-error-middleware.d.ts.map +1 -0
  509. package/dist/types/preset/node/providers/express-factory.d.ts +7 -0
  510. package/dist/types/preset/node/providers/express-factory.d.ts.map +1 -0
  511. package/dist/types/preset/node/providers/express-log-middleware.d.ts +9 -0
  512. package/dist/types/preset/node/providers/express-log-middleware.d.ts.map +1 -0
  513. package/dist/types/preset/node/providers/express-metrics-middleware.d.ts +9 -0
  514. package/dist/types/preset/node/providers/express-metrics-middleware.d.ts.map +1 -0
  515. package/dist/types/preset/node/providers/express-request-middleware.d.ts +7 -0
  516. package/dist/types/preset/node/providers/express-request-middleware.d.ts.map +1 -0
  517. package/dist/types/preset/node/providers/express-tracing-middleware.d.ts +9 -0
  518. package/dist/types/preset/node/providers/express-tracing-middleware.d.ts.map +1 -0
  519. package/dist/types/preset/node/providers/log-handler-pino.d.ts +9 -0
  520. package/dist/types/preset/node/providers/log-handler-pino.d.ts.map +1 -0
  521. package/dist/types/preset/node/providers/log-handler-sentry.d.ts +9 -0
  522. package/dist/types/preset/node/providers/log-handler-sentry.d.ts.map +1 -0
  523. package/dist/types/preset/node/providers/logger.d.ts +9 -0
  524. package/dist/types/preset/node/providers/logger.d.ts.map +1 -0
  525. package/dist/types/preset/node/providers/metrics-http-app.d.ts +7 -0
  526. package/dist/types/preset/node/providers/metrics-http-app.d.ts.map +1 -0
  527. package/dist/types/preset/node/providers/span-exporter.d.ts +9 -0
  528. package/dist/types/preset/node/providers/span-exporter.d.ts.map +1 -0
  529. package/dist/types/preset/node/providers/tracer-provider-resource.d.ts +9 -0
  530. package/dist/types/preset/node/providers/tracer-provider-resource.d.ts.map +1 -0
  531. package/dist/types/preset/node/providers/tracer-provider.d.ts +9 -0
  532. package/dist/types/preset/node/providers/tracer-provider.d.ts.map +1 -0
  533. package/dist/types/preset/node/providers/tracer.d.ts +9 -0
  534. package/dist/types/preset/node/providers/tracer.d.ts.map +1 -0
  535. package/dist/types/preset/node/types.d.ts +4 -4
  536. package/dist/types/preset/node/types.d.ts.map +1 -1
  537. package/dist/types/preset/node/utils/axios-tracing-middleware.d.ts +23 -0
  538. package/dist/types/preset/node/utils/axios-tracing-middleware.d.ts.map +1 -0
  539. package/dist/types/preset/node/utils/emitter-as-target.d.ts +18 -0
  540. package/dist/types/preset/node/utils/emitter-as-target.d.ts.map +1 -0
  541. package/dist/types/preset/node/utils/get-client-ip.d.ts +8 -0
  542. package/dist/types/preset/node/utils/get-client-ip.d.ts.map +1 -0
  543. package/dist/types/preset/node/utils/get-forwarded-headers.d.ts +10 -0
  544. package/dist/types/preset/node/utils/get-forwarded-headers.d.ts.map +1 -0
  545. package/dist/types/preset/node/utils/get-page-response-format.d.ts +9 -0
  546. package/dist/types/preset/node/utils/get-page-response-format.d.ts.map +1 -0
  547. package/dist/types/preset/node/utils/handler-provider.d.ts +9 -0
  548. package/dist/types/preset/node/utils/handler-provider.d.ts.map +1 -0
  549. package/dist/types/preset/{node/handler → node-handler}/index.d.ts +2 -3
  550. package/dist/types/preset/node-handler/index.d.ts.map +1 -0
  551. package/dist/types/preset/node-handler/providers/accepts-type.d.ts +13 -0
  552. package/dist/types/preset/node-handler/providers/accepts-type.d.ts.map +1 -0
  553. package/dist/types/preset/node-handler/providers/axios-log-handler.d.ts +9 -0
  554. package/dist/types/preset/node-handler/providers/axios-log-handler.d.ts.map +1 -0
  555. package/dist/types/preset/node-handler/providers/axios-middleware.d.ts +9 -0
  556. package/dist/types/preset/node-handler/providers/axios-middleware.d.ts.map +1 -0
  557. package/dist/types/preset/node-handler/providers/cookie-store.d.ts +9 -0
  558. package/dist/types/preset/node-handler/providers/cookie-store.d.ts.map +1 -0
  559. package/dist/types/preset/node-handler/providers/fetch-middleware.d.ts +9 -0
  560. package/dist/types/preset/node-handler/providers/fetch-middleware.d.ts.map +1 -0
  561. package/dist/types/preset/node-handler/providers/handler-main.d.ts +9 -0
  562. package/dist/types/preset/node-handler/providers/handler-main.d.ts.map +1 -0
  563. package/dist/types/preset/node-handler/providers/response-events.d.ts +8 -0
  564. package/dist/types/preset/node-handler/providers/response-events.d.ts.map +1 -0
  565. package/dist/types/preset/node-handler/providers/specific-params.d.ts +8 -0
  566. package/dist/types/preset/node-handler/providers/specific-params.d.ts.map +1 -0
  567. package/dist/types/preset/server/constants.d.ts +13 -0
  568. package/dist/types/preset/server/constants.d.ts.map +1 -0
  569. package/dist/types/preset/server/index.d.ts +13 -0
  570. package/dist/types/preset/server/index.d.ts.map +1 -0
  571. package/dist/types/preset/server/providers/element-to-string.d.ts +9 -0
  572. package/dist/types/preset/server/providers/element-to-string.d.ts.map +1 -0
  573. package/dist/types/preset/server/providers/fetch-log-handler.d.ts +9 -0
  574. package/dist/types/preset/server/providers/fetch-log-handler.d.ts.map +1 -0
  575. package/dist/types/preset/server/providers/format-page-response.d.ts +10 -0
  576. package/dist/types/preset/server/providers/format-page-response.d.ts.map +1 -0
  577. package/dist/types/preset/server/providers/known-http-api-hosts.d.ts +10 -0
  578. package/dist/types/preset/server/providers/known-http-api-hosts.d.ts.map +1 -0
  579. package/dist/types/preset/server/providers/page-helmet.d.ts +11 -0
  580. package/dist/types/preset/server/providers/page-helmet.d.ts.map +1 -0
  581. package/dist/types/preset/server/providers/page-render.d.ts +6 -0
  582. package/dist/types/preset/server/providers/page-render.d.ts.map +1 -0
  583. package/dist/types/preset/server/providers/response-events.d.ts +8 -0
  584. package/dist/types/preset/server/providers/response-events.d.ts.map +1 -0
  585. package/dist/types/preset/server/providers/ssr-bridge-server-side.d.ts +9 -0
  586. package/dist/types/preset/server/providers/ssr-bridge-server-side.d.ts.map +1 -0
  587. package/dist/types/preset/server/types.d.ts +28 -0
  588. package/dist/types/preset/server/types.d.ts.map +1 -0
  589. package/dist/types/preset/server/utils/apply-server-middleware.d.ts +8 -0
  590. package/dist/types/preset/server/utils/apply-server-middleware.d.ts.map +1 -0
  591. package/dist/types/preset/server/utils/format-handler-error.d.ts +18 -0
  592. package/dist/types/preset/server/utils/format-handler-error.d.ts.map +1 -0
  593. package/dist/types/preset/server/utils/get-client-ip.d.ts +7 -0
  594. package/dist/types/preset/server/utils/get-client-ip.d.ts.map +1 -0
  595. package/dist/types/preset/server/utils/get-fetch-tracing.d.ts +10 -0
  596. package/dist/types/preset/server/utils/get-fetch-tracing.d.ts.map +1 -0
  597. package/dist/types/preset/server/utils/get-forwarded-headers.d.ts +9 -0
  598. package/dist/types/preset/server/utils/get-forwarded-headers.d.ts.map +1 -0
  599. package/dist/types/preset/server/utils/get-handler-metrics.d.ts +15 -0
  600. package/dist/types/preset/server/utils/get-handler-metrics.d.ts.map +1 -0
  601. package/dist/types/preset/server/utils/get-health-check.d.ts +8 -0
  602. package/dist/types/preset/server/utils/get-health-check.d.ts.map +1 -0
  603. package/dist/types/preset/server/utils/get-page-response-format.d.ts +9 -0
  604. package/dist/types/preset/server/utils/get-page-response-format.d.ts.map +1 -0
  605. package/dist/types/preset/server/utils/get-serve-error-logging.d.ts +9 -0
  606. package/dist/types/preset/server/utils/get-serve-error-logging.d.ts.map +1 -0
  607. package/dist/types/preset/server/utils/get-serve-logging.d.ts +9 -0
  608. package/dist/types/preset/server/utils/get-serve-logging.d.ts.map +1 -0
  609. package/dist/types/preset/server/utils/get-serve-measuring.d.ts +9 -0
  610. package/dist/types/preset/server/utils/get-serve-measuring.d.ts.map +1 -0
  611. package/dist/types/preset/server/utils/handler-provider.d.ts +11 -0
  612. package/dist/types/preset/server/utils/handler-provider.d.ts.map +1 -0
  613. package/dist/types/preset/server/utils/regular-helmet.d.ts +15 -0
  614. package/dist/types/preset/server/utils/regular-helmet.d.ts.map +1 -0
  615. package/dist/types/preset/server/utils/specific-extras.d.ts +18 -0
  616. package/dist/types/preset/server/utils/specific-extras.d.ts.map +1 -0
  617. package/dist/types/preset/web/index.d.ts.map +1 -1
  618. package/dist/types/preset/web/providers/axios-middleware.d.ts +8 -0
  619. package/dist/types/preset/web/providers/axios-middleware.d.ts.map +1 -0
  620. package/dist/types/preset/web/providers/config-source.d.ts +7 -0
  621. package/dist/types/preset/web/providers/config-source.d.ts.map +1 -0
  622. package/dist/types/preset/web/providers/fetch-middleware.d.ts +8 -0
  623. package/dist/types/preset/web/providers/fetch-middleware.d.ts.map +1 -0
  624. package/dist/types/preset/web/providers/known-http-api-hosts.d.ts +10 -0
  625. package/dist/types/preset/web/providers/known-http-api-hosts.d.ts.map +1 -0
  626. package/dist/types/preset/web/providers/logger.d.ts +9 -0
  627. package/dist/types/preset/web/providers/logger.d.ts.map +1 -0
  628. package/dist/types/preset/web/providers/ssr-bridge-client-side.d.ts +9 -0
  629. package/dist/types/preset/web/providers/ssr-bridge-client-side.d.ts.map +1 -0
  630. package/dist/types/tokens.d.ts +124 -27
  631. package/dist/types/tokens.d.ts.map +1 -1
  632. package/dist/types/utils/express/utils/index.d.ts.map +1 -1
  633. package/package.json +100 -123
  634. package/dist/cjs/preset/isomorphic/constants.js +0 -14
  635. package/dist/cjs/preset/isomorphic/constants.js.map +0 -1
  636. package/dist/cjs/preset/isomorphic/providers/index.js +0 -42
  637. package/dist/cjs/preset/isomorphic/providers/index.js.map +0 -1
  638. package/dist/cjs/preset/isomorphic/utils/index.js +0 -322
  639. package/dist/cjs/preset/isomorphic/utils/index.js.map +0 -1
  640. package/dist/cjs/preset/node/handler/index.js +0 -52
  641. package/dist/cjs/preset/node/handler/index.js.map +0 -1
  642. package/dist/cjs/preset/node/handler/providers/index.js +0 -212
  643. package/dist/cjs/preset/node/handler/providers/index.js.map +0 -1
  644. package/dist/cjs/preset/node/handler/utils/index.js.map +0 -1
  645. package/dist/cjs/preset/node/node/index.js +0 -61
  646. package/dist/cjs/preset/node/node/index.js.map +0 -1
  647. package/dist/cjs/preset/node/node/providers/index.js +0 -403
  648. package/dist/cjs/preset/node/node/providers/index.js.map +0 -1
  649. package/dist/cjs/preset/node/node/utils/http-client/index.js.map +0 -1
  650. package/dist/cjs/preset/node/node/utils/http-server/index.js.map +0 -1
  651. package/dist/cjs/preset/node/node/utils/index.js +0 -20
  652. package/dist/cjs/preset/node/node/utils/index.js.map +0 -1
  653. package/dist/cjs/preset/web/providers/index.js +0 -94
  654. package/dist/cjs/preset/web/providers/index.js.map +0 -1
  655. package/dist/esm/preset/isomorphic/constants.js +0 -8
  656. package/dist/esm/preset/isomorphic/constants.js.map +0 -1
  657. package/dist/esm/preset/isomorphic/providers/index.js +0 -35
  658. package/dist/esm/preset/isomorphic/providers/index.js.map +0 -1
  659. package/dist/esm/preset/isomorphic/utils/index.js +0 -309
  660. package/dist/esm/preset/isomorphic/utils/index.js.map +0 -1
  661. package/dist/esm/preset/node/handler/index.js +0 -42
  662. package/dist/esm/preset/node/handler/index.js.map +0 -1
  663. package/dist/esm/preset/node/handler/providers/index.js +0 -194
  664. package/dist/esm/preset/node/handler/providers/index.js.map +0 -1
  665. package/dist/esm/preset/node/handler/utils/index.js.map +0 -1
  666. package/dist/esm/preset/node/node/index.js +0 -56
  667. package/dist/esm/preset/node/node/index.js.map +0 -1
  668. package/dist/esm/preset/node/node/providers/index.js +0 -378
  669. package/dist/esm/preset/node/node/providers/index.js.map +0 -1
  670. package/dist/esm/preset/node/node/utils/http-client/index.js.map +0 -1
  671. package/dist/esm/preset/node/node/utils/http-server/index.js.map +0 -1
  672. package/dist/esm/preset/node/node/utils/index.js +0 -3
  673. package/dist/esm/preset/node/node/utils/index.js.map +0 -1
  674. package/dist/esm/preset/web/providers/index.js +0 -85
  675. package/dist/esm/preset/web/providers/index.js.map +0 -1
  676. package/dist/types/preset/isomorphic/constants.d.ts +0 -8
  677. package/dist/types/preset/isomorphic/constants.d.ts.map +0 -1
  678. package/dist/types/preset/isomorphic/providers/index.d.ts +0 -23
  679. package/dist/types/preset/isomorphic/providers/index.d.ts.map +0 -1
  680. package/dist/types/preset/isomorphic/utils/index.d.ts +0 -119
  681. package/dist/types/preset/isomorphic/utils/index.d.ts.map +0 -1
  682. package/dist/types/preset/node/handler/index.d.ts.map +0 -1
  683. package/dist/types/preset/node/handler/providers/index.d.ts +0 -36
  684. package/dist/types/preset/node/handler/providers/index.d.ts.map +0 -1
  685. package/dist/types/preset/node/handler/utils/index.d.ts +0 -47
  686. package/dist/types/preset/node/handler/utils/index.d.ts.map +0 -1
  687. package/dist/types/preset/node/node/index.d.ts +0 -9
  688. package/dist/types/preset/node/node/index.d.ts.map +0 -1
  689. package/dist/types/preset/node/node/providers/index.d.ts +0 -113
  690. package/dist/types/preset/node/node/providers/index.d.ts.map +0 -1
  691. package/dist/types/preset/node/node/utils/http-client/index.d.ts +0 -42
  692. package/dist/types/preset/node/node/utils/http-client/index.d.ts.map +0 -1
  693. package/dist/types/preset/node/node/utils/http-server/index.d.ts +0 -8
  694. package/dist/types/preset/node/node/utils/http-server/index.d.ts.map +0 -1
  695. package/dist/types/preset/node/node/utils/index.d.ts +0 -3
  696. package/dist/types/preset/node/node/utils/index.d.ts.map +0 -1
  697. package/dist/types/preset/web/providers/index.d.ts +0 -36
  698. package/dist/types/preset/web/providers/index.d.ts.map +0 -1
  699. package/src/cache/index.ts +0 -1
  700. package/src/cache/types.ts +0 -34
  701. package/src/config/base.ts +0 -18
  702. package/src/config/index.ts +0 -3
  703. package/src/config/source.ts +0 -23
  704. package/src/config/types.ts +0 -25
  705. package/src/di/__test__/application.test.ts +0 -258
  706. package/src/di/__test__/container.test.ts +0 -103
  707. package/src/di/__test__/errors.test.ts +0 -56
  708. package/src/di/__test__/preset.test.ts +0 -23
  709. package/src/di/__test__/token.test.ts +0 -25
  710. package/src/di/application.ts +0 -126
  711. package/src/di/container.ts +0 -60
  712. package/src/di/errors.ts +0 -59
  713. package/src/di/index.ts +0 -6
  714. package/src/di/preset.ts +0 -32
  715. package/src/di/token.ts +0 -41
  716. package/src/di/types.ts +0 -105
  717. package/src/http/__test__/errors.test.ts +0 -35
  718. package/src/http/errors.ts +0 -42
  719. package/src/http/index.ts +0 -14
  720. package/src/http/types.ts +0 -8
  721. package/src/log/__test__/errors.test.ts +0 -13
  722. package/src/log/__test__/logger.test.ts +0 -24
  723. package/src/log/errors.ts +0 -33
  724. package/src/log/handler/pino.ts +0 -27
  725. package/src/log/handler/sentry.ts +0 -57
  726. package/src/log/index.ts +0 -12
  727. package/src/log/logger.ts +0 -30
  728. package/src/log/types.ts +0 -76
  729. package/src/preset/isomorphic/constants.ts +0 -7
  730. package/src/preset/isomorphic/index.ts +0 -7
  731. package/src/preset/isomorphic/providers/index.ts +0 -40
  732. package/src/preset/isomorphic/types.ts +0 -37
  733. package/src/preset/isomorphic/utils/__test__/index.test.ts +0 -541
  734. package/src/preset/isomorphic/utils/index.ts +0 -349
  735. package/src/preset/node/handler/index.ts +0 -46
  736. package/src/preset/node/handler/providers/index.tsx +0 -214
  737. package/src/preset/node/handler/utils/index.tsx +0 -110
  738. package/src/preset/node/index.ts +0 -3
  739. package/src/preset/node/node/index.ts +0 -73
  740. package/src/preset/node/node/providers/index.ts +0 -434
  741. package/src/preset/node/node/utils/http-client/__test__/index.test.ts +0 -232
  742. package/src/preset/node/node/utils/http-client/index.ts +0 -129
  743. package/src/preset/node/node/utils/http-server/index.ts +0 -17
  744. package/src/preset/node/node/utils/index.ts +0 -2
  745. package/src/preset/node/types.ts +0 -10
  746. package/src/preset/web/index.ts +0 -40
  747. package/src/preset/web/providers/index.ts +0 -108
  748. package/src/tokens.ts +0 -108
  749. package/src/utils/axios/index.ts +0 -12
  750. package/src/utils/axios/middleware/__test__/cookie.test.ts +0 -94
  751. package/src/utils/axios/middleware/__test__/log.test.ts +0 -121
  752. package/src/utils/axios/middleware/cookie.ts +0 -26
  753. package/src/utils/axios/middleware/log.ts +0 -52
  754. package/src/utils/axios/sauce/index.ts +0 -76
  755. package/src/utils/axios/utils/__test__/index.test.ts +0 -89
  756. package/src/utils/axios/utils/index.ts +0 -26
  757. package/src/utils/express/handler/health-check.ts +0 -13
  758. package/src/utils/express/index.ts +0 -2
  759. package/src/utils/express/utils/index.ts +0 -18
  760. package/src/utils/function.ts +0 -57
  761. package/src/utils/index.ts +0 -2
  762. package/src/utils/math.ts +0 -8
  763. package/src/utils/react/error-handlers/__test__/__snapshots__/index.test.tsx.snap +0 -27
  764. package/src/utils/react/error-handlers/__test__/index.test.tsx +0 -63
  765. package/src/utils/react/error-handlers/index.tsx +0 -68
  766. package/src/utils/react/index.ts +0 -3
  767. package/src/utils/redux/__test__/remote-data.test.ts +0 -172
  768. package/src/utils/redux/index.ts +0 -4
  769. package/src/utils/redux/remote-data.ts +0 -138
  770. package/src/utils/redux-saga/__test__/take-chain.test.ts +0 -141
  771. package/src/utils/redux-saga/index.ts +0 -3
  772. package/src/utils/redux-saga/middleware.ts +0 -168
  773. package/src/utils/redux-saga/take-chain.ts +0 -67
  774. package/src/utils/redux-saga/types.ts +0 -43
  775. package/src/utils/ssr/index.tsx +0 -78
  776. package/src/utils/web/analytics/__test__/data-layer.test.ts +0 -50
  777. package/src/utils/web/analytics/__test__/oko.test.ts +0 -50
  778. package/src/utils/web/analytics/data-layer.ts +0 -12
  779. package/src/utils/web/analytics/index.ts +0 -2
  780. package/src/utils/web/analytics/oko.ts +0 -14
  781. package/src/utils/web/storage/index.ts +0 -83
  782. package/src/utils/webpack/env/index.ts +0 -91
  783. package/src/utils/webpack/env/types.ts +0 -14
  784. package/src/utils/webpack/env/utils.ts +0 -53
  785. package/src/utils/webpack/index.ts +0 -7
  786. package/src/utils/webpack/module-federation/__test__/__snapshots__/utils.test.ts.snap +0 -124
  787. package/src/utils/webpack/module-federation/__test__/index.test.ts +0 -311
  788. package/src/utils/webpack/module-federation/__test__/utils.test.ts +0 -28
  789. package/src/utils/webpack/module-federation/index.ts +0 -102
  790. package/src/utils/webpack/module-federation/types.ts +0 -54
  791. package/src/utils/webpack/module-federation/utils.ts +0 -104
@@ -0,0 +1,10 @@
1
+ import express from 'express';
2
+
3
+ /**
4
+ * Провайдер фабрики http-серверов.
5
+ * @return Фабрика.
6
+ */
7
+ export function provideExpressFactory() {
8
+ return express;
9
+ }
10
+ //# sourceMappingURL=express-factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"express-factory.js","names":["express","provideExpressFactory"],"sources":["../../../../../src/preset/node/providers/express-factory.ts"],"sourcesContent":["import express from 'express';\n\n/**\n * Провайдер фабрики http-серверов.\n * @return Фабрика.\n */\nexport function provideExpressFactory() {\n return express;\n}\n"],"mappings":"AAAA,OAAOA,OAAO,MAAM,SAAS;;AAE7B;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CAAA,EAAG;EACtC,OAAOD,OAAO;AAChB"}
@@ -0,0 +1,40 @@
1
+ import { KnownToken } from "../../../tokens.js";
2
+ import { getClientIp } from "../utils/get-client-ip.js";
3
+ import { toMilliseconds } from "./../../../utils/index.js";
4
+
5
+ /**
6
+ * Провайдер промежуточного слоя логирования входящих http-запросов.
7
+ * @param resolve Функция для получения зависимости по токену.
8
+ * @return Промежуточный слой.
9
+ */
10
+ export function provideExpressLogMiddleware(resolve) {
11
+ const config = resolve(KnownToken.Config.base);
12
+ const logger = resolve(KnownToken.logger);
13
+ return (req, res, next) => {
14
+ const start = process.hrtime.bigint();
15
+ const remoteIp = getClientIp(req) ?? '';
16
+ const startMsg = {
17
+ type: 'http.request[incoming]',
18
+ version: config.appVersion,
19
+ route: req.originalUrl,
20
+ method: req.method,
21
+ remote_ip: remoteIp
22
+ };
23
+ logger.info(startMsg);
24
+ res.once('finish', () => {
25
+ const finish = process.hrtime.bigint();
26
+ const finishMsg = {
27
+ type: 'http.response[outgoing]',
28
+ version: config.appVersion,
29
+ route: req.originalUrl,
30
+ method: req.method,
31
+ status: res.statusCode,
32
+ remote_ip: remoteIp,
33
+ latency: toMilliseconds(finish - start)
34
+ };
35
+ logger.info(finishMsg);
36
+ });
37
+ next();
38
+ };
39
+ }
40
+ //# sourceMappingURL=express-log-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"express-log-middleware.js","names":["KnownToken","getClientIp","toMilliseconds","provideExpressLogMiddleware","resolve","config","Config","base","logger","req","res","next","start","process","hrtime","bigint","remoteIp","startMsg","type","version","appVersion","route","originalUrl","method","remote_ip","info","once","finish","finishMsg","status","statusCode","latency"],"sources":["../../../../../src/preset/node/providers/express-log-middleware.ts"],"sourcesContent":["import type express from 'express';\nimport type { Resolve } from '../../../di';\nimport type { ConventionalFluentInfo } from '../../../log/types';\nimport { KnownToken } from '../../../tokens';\nimport { getClientIp } from '../utils/get-client-ip';\nimport { toMilliseconds } from '../../../utils';\n\n/**\n * Провайдер промежуточного слоя логирования входящих http-запросов.\n * @param resolve Функция для получения зависимости по токену.\n * @return Промежуточный слой.\n */\nexport function provideExpressLogMiddleware(resolve: Resolve): express.Handler {\n const config = resolve(KnownToken.Config.base);\n const logger = resolve(KnownToken.logger);\n\n return (req, res, next) => {\n const start = process.hrtime.bigint();\n const remoteIp = getClientIp(req) ?? '';\n\n const startMsg: Omit<ConventionalFluentInfo, 'latency' | 'status'> & { type: string } = {\n type: 'http.request[incoming]',\n version: config.appVersion,\n route: req.originalUrl,\n method: req.method,\n remote_ip: remoteIp,\n };\n\n logger.info(startMsg);\n\n res.once('finish', () => {\n const finish = process.hrtime.bigint();\n\n const finishMsg: ConventionalFluentInfo & { type: string } = {\n type: 'http.response[outgoing]',\n version: config.appVersion,\n route: req.originalUrl,\n method: req.method,\n status: res.statusCode,\n remote_ip: remoteIp,\n latency: toMilliseconds(finish - start),\n };\n\n logger.info(finishMsg);\n });\n\n next();\n };\n}\n"],"mappings":"AAGA,SAASA,UAAU,QAAQ,oBAAiB;AAC5C,SAASC,WAAW,QAAQ,2BAAwB;AACpD,SAASC,cAAc,QAAQ,2BAAgB;;AAE/C;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,2BAA2BA,CAACC,OAAgB,EAAmB;EAC7E,MAAMC,MAAM,GAAGD,OAAO,CAACJ,UAAU,CAACM,MAAM,CAACC,IAAI,CAAC;EAC9C,MAAMC,MAAM,GAAGJ,OAAO,CAACJ,UAAU,CAACQ,MAAM,CAAC;EAEzC,OAAO,CAACC,GAAG,EAAEC,GAAG,EAAEC,IAAI,KAAK;IACzB,MAAMC,KAAK,GAAGC,OAAO,CAACC,MAAM,CAACC,MAAM,CAAC,CAAC;IACrC,MAAMC,QAAQ,GAAGf,WAAW,CAACQ,GAAG,CAAC,IAAI,EAAE;IAEvC,MAAMQ,QAA+E,GAAG;MACtFC,IAAI,EAAE,wBAAwB;MAC9BC,OAAO,EAAEd,MAAM,CAACe,UAAU;MAC1BC,KAAK,EAAEZ,GAAG,CAACa,WAAW;MACtBC,MAAM,EAAEd,GAAG,CAACc,MAAM;MAClBC,SAAS,EAAER;IACb,CAAC;IAEDR,MAAM,CAACiB,IAAI,CAACR,QAAQ,CAAC;IAErBP,GAAG,CAACgB,IAAI,CAAC,QAAQ,EAAE,MAAM;MACvB,MAAMC,MAAM,GAAGd,OAAO,CAACC,MAAM,CAACC,MAAM,CAAC,CAAC;MAEtC,MAAMa,SAAoD,GAAG;QAC3DV,IAAI,EAAE,yBAAyB;QAC/BC,OAAO,EAAEd,MAAM,CAACe,UAAU;QAC1BC,KAAK,EAAEZ,GAAG,CAACa,WAAW;QACtBC,MAAM,EAAEd,GAAG,CAACc,MAAM;QAClBM,MAAM,EAAEnB,GAAG,CAACoB,UAAU;QACtBN,SAAS,EAAER,QAAQ;QACnBe,OAAO,EAAE7B,cAAc,CAACyB,MAAM,GAAGf,KAAK;MACxC,CAAC;MAEDJ,MAAM,CAACiB,IAAI,CAACG,SAAS,CAAC;IACxB,CAAC,CAAC;IAEFjB,IAAI,CAAC,CAAC;EACR,CAAC;AACH"}
@@ -0,0 +1,55 @@
1
+ import { getHandlerMetrics } from "../../server/utils/get-handler-metrics.js";
2
+ import { KnownToken } from "../../../tokens.js";
3
+ import { PAGE_HANDLER_EVENT_TYPE } from "./../../server/index.js";
4
+ import { toMilliseconds } from "./../../../utils/index.js";
5
+
6
+ /**
7
+ * Провайдер промежуточного слоя сбора метрик входящих http-запросов.
8
+ * @param resolve Функция для получения зависимости по токену.
9
+ * @return Промежуточный слой.
10
+ */
11
+ export function provideExpressMetricsMiddleware(resolve) {
12
+ const config = resolve(KnownToken.Config.base);
13
+ const {
14
+ requestCount,
15
+ renderDuration,
16
+ responseDuration
17
+ } = getHandlerMetrics();
18
+
19
+ /**
20
+ * Функция формирования labels.
21
+ * @param req Request.
22
+ * @param res Response.
23
+ * @return Labels.
24
+ */
25
+ const getLabels = (req, res) => ({
26
+ version: config.appVersion,
27
+ route: req.baseUrl + req.path,
28
+ code: res.statusCode,
29
+ method: req.method
30
+ });
31
+
32
+ /** @inheritdoc */
33
+ const getRenderLabels = request => ({
34
+ version: config.appVersion,
35
+ method: request.method,
36
+ route: request.url
37
+ });
38
+ return (req, res, next) => {
39
+ const responseStart = process.hrtime.bigint();
40
+ requestCount.inc(getLabels(req, res), 1);
41
+ res.once(PAGE_HANDLER_EVENT_TYPE.renderStart, () => {
42
+ const renderStart = process.hrtime.bigint();
43
+ res.once(PAGE_HANDLER_EVENT_TYPE.renderFinish, () => {
44
+ const renderFinish = process.hrtime.bigint();
45
+ renderDuration.observe(getRenderLabels(req), toMilliseconds(renderFinish - renderStart));
46
+ });
47
+ });
48
+ res.once('finish', () => {
49
+ const responseFinish = process.hrtime.bigint();
50
+ responseDuration.observe(getLabels(req, res), toMilliseconds(responseFinish - responseStart));
51
+ });
52
+ next();
53
+ };
54
+ }
55
+ //# sourceMappingURL=express-metrics-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"express-metrics-middleware.js","names":["getHandlerMetrics","KnownToken","PAGE_HANDLER_EVENT_TYPE","toMilliseconds","provideExpressMetricsMiddleware","resolve","config","Config","base","requestCount","renderDuration","responseDuration","getLabels","req","res","version","appVersion","route","baseUrl","path","code","statusCode","method","getRenderLabels","request","url","next","responseStart","process","hrtime","bigint","inc","once","renderStart","renderFinish","observe","responseFinish"],"sources":["../../../../../src/preset/node/providers/express-metrics-middleware.ts"],"sourcesContent":["import type express from 'express';\nimport type { Resolve } from '../../../di';\nimport { LABEL_NAMES, getHandlerMetrics } from '../../server/utils/get-handler-metrics';\nimport { KnownToken } from '../../../tokens';\nimport { PAGE_HANDLER_EVENT_TYPE } from '../../server';\nimport { toMilliseconds } from '../../../utils';\n\n/**\n * Провайдер промежуточного слоя сбора метрик входящих http-запросов.\n * @param resolve Функция для получения зависимости по токену.\n * @return Промежуточный слой.\n */\nexport function provideExpressMetricsMiddleware(resolve: Resolve): express.Handler {\n const config = resolve(KnownToken.Config.base);\n const { requestCount, renderDuration, responseDuration } = getHandlerMetrics();\n\n /**\n * Функция формирования labels.\n * @param req Request.\n * @param res Response.\n * @return Labels.\n */\n const getLabels = (\n req: express.Request,\n res: express.Response,\n ): Record<(typeof LABEL_NAMES.httpResponse)[number], string | number> => ({\n version: config.appVersion,\n route: req.baseUrl + req.path,\n code: res.statusCode,\n method: req.method,\n });\n\n /** @inheritdoc */\n const getRenderLabels = (request: express.Request) =>\n ({\n version: config.appVersion,\n method: request.method,\n route: request.url,\n }) satisfies Record<(typeof LABEL_NAMES.pageRender)[number], string | number>;\n\n return (req, res, next) => {\n const responseStart = process.hrtime.bigint();\n\n requestCount.inc(getLabels(req, res), 1);\n\n res.once(PAGE_HANDLER_EVENT_TYPE.renderStart, () => {\n const renderStart = process.hrtime.bigint();\n\n res.once(PAGE_HANDLER_EVENT_TYPE.renderFinish, () => {\n const renderFinish = process.hrtime.bigint();\n\n renderDuration.observe(getRenderLabels(req), toMilliseconds(renderFinish - renderStart));\n });\n });\n\n res.once('finish', () => {\n const responseFinish = process.hrtime.bigint();\n\n responseDuration.observe(getLabels(req, res), toMilliseconds(responseFinish - responseStart));\n });\n\n next();\n };\n}\n"],"mappings":"AAEA,SAAsBA,iBAAiB,QAAQ,2CAAwC;AACvF,SAASC,UAAU,QAAQ,oBAAiB;AAC5C,SAASC,uBAAuB,QAAQ,yBAAc;AACtD,SAASC,cAAc,QAAQ,2BAAgB;;AAE/C;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,+BAA+BA,CAACC,OAAgB,EAAmB;EACjF,MAAMC,MAAM,GAAGD,OAAO,CAACJ,UAAU,CAACM,MAAM,CAACC,IAAI,CAAC;EAC9C,MAAM;IAAEC,YAAY;IAAEC,cAAc;IAAEC;EAAiB,CAAC,GAAGX,iBAAiB,CAAC,CAAC;;EAE9E;AACF;AACA;AACA;AACA;AACA;EACE,MAAMY,SAAS,GAAGA,CAChBC,GAAoB,EACpBC,GAAqB,MACmD;IACxEC,OAAO,EAAET,MAAM,CAACU,UAAU;IAC1BC,KAAK,EAAEJ,GAAG,CAACK,OAAO,GAAGL,GAAG,CAACM,IAAI;IAC7BC,IAAI,EAAEN,GAAG,CAACO,UAAU;IACpBC,MAAM,EAAET,GAAG,CAACS;EACd,CAAC,CAAC;;EAEF;EACA,MAAMC,eAAe,GAAIC,OAAwB,KAC9C;IACCT,OAAO,EAAET,MAAM,CAACU,UAAU;IAC1BM,MAAM,EAAEE,OAAO,CAACF,MAAM;IACtBL,KAAK,EAAEO,OAAO,CAACC;EACjB,CAAC,CAA4E;EAE/E,OAAO,CAACZ,GAAG,EAAEC,GAAG,EAAEY,IAAI,KAAK;IACzB,MAAMC,aAAa,GAAGC,OAAO,CAACC,MAAM,CAACC,MAAM,CAAC,CAAC;IAE7CrB,YAAY,CAACsB,GAAG,CAACnB,SAAS,CAACC,GAAG,EAAEC,GAAG,CAAC,EAAE,CAAC,CAAC;IAExCA,GAAG,CAACkB,IAAI,CAAC9B,uBAAuB,CAAC+B,WAAW,EAAE,MAAM;MAClD,MAAMA,WAAW,GAAGL,OAAO,CAACC,MAAM,CAACC,MAAM,CAAC,CAAC;MAE3ChB,GAAG,CAACkB,IAAI,CAAC9B,uBAAuB,CAACgC,YAAY,EAAE,MAAM;QACnD,MAAMA,YAAY,GAAGN,OAAO,CAACC,MAAM,CAACC,MAAM,CAAC,CAAC;QAE5CpB,cAAc,CAACyB,OAAO,CAACZ,eAAe,CAACV,GAAG,CAAC,EAAEV,cAAc,CAAC+B,YAAY,GAAGD,WAAW,CAAC,CAAC;MAC1F,CAAC,CAAC;IACJ,CAAC,CAAC;IAEFnB,GAAG,CAACkB,IAAI,CAAC,QAAQ,EAAE,MAAM;MACvB,MAAMI,cAAc,GAAGR,OAAO,CAACC,MAAM,CAACC,MAAM,CAAC,CAAC;MAE9CnB,gBAAgB,CAACwB,OAAO,CAACvB,SAAS,CAACC,GAAG,EAAEC,GAAG,CAAC,EAAEX,cAAc,CAACiC,cAAc,GAAGT,aAAa,CAAC,CAAC;IAC/F,CAAC,CAAC;IAEFD,IAAI,CAAC,CAAC;EACR,CAAC;AACH"}
@@ -0,0 +1,10 @@
1
+ import { Handlers } from '@sentry/node';
2
+
3
+ /**
4
+ * Провайдер промежуточного слоя учета входящих http-запросов.
5
+ * @return Промежуточный слой.
6
+ */
7
+ export function provideExpressRequestMiddleware() {
8
+ return Handlers.requestHandler();
9
+ }
10
+ //# sourceMappingURL=express-request-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"express-request-middleware.js","names":["Handlers","provideExpressRequestMiddleware","requestHandler"],"sources":["../../../../../src/preset/node/providers/express-request-middleware.ts"],"sourcesContent":["import type express from 'express';\nimport { Handlers } from '@sentry/node';\n\n/**\n * Провайдер промежуточного слоя учета входящих http-запросов.\n * @return Промежуточный слой.\n */\nexport function provideExpressRequestMiddleware(): express.Handler {\n return Handlers.requestHandler();\n}\n"],"mappings":"AACA,SAASA,QAAQ,QAAQ,cAAc;;AAEvC;AACA;AACA;AACA;AACA,OAAO,SAASC,+BAA+BA,CAAA,EAAoB;EACjE,OAAOD,QAAQ,CAACE,cAAc,CAAC,CAAC;AAClC"}
@@ -0,0 +1,51 @@
1
+ import { KnownToken } from "../../../tokens.js";
2
+ import { ROOT_CONTEXT, propagation, trace } from '@opentelemetry/api';
3
+ import { PAGE_HANDLER_EVENT_TYPE } from "./../../server/index.js";
4
+
5
+ /**
6
+ * Провайдер промежуточного слоя трассировки входящих http-запросов.
7
+ * @param resolve Функция для получения зависимости по токену.
8
+ * @return Промежуточный слой.
9
+ */
10
+ export function provideExpressTracingMiddleware(resolve) {
11
+ const tracer = resolve(KnownToken.Tracing.tracer);
12
+
13
+ /**
14
+ * Возвращает набор стандартных атрибутов для спана.
15
+ * @param req Входящий http-запрос.
16
+ * @return Атрибуты.
17
+ */
18
+ const getConventionalRequestAttrs = req => {
19
+ const result = {
20
+ 'request.path': req.originalUrl
21
+ };
22
+ for (const headerName in req.headers) {
23
+ if (headerName.toLowerCase().startsWith('simaland-')) {
24
+ result[headerName] = req.header(headerName);
25
+ }
26
+ }
27
+ return result;
28
+ };
29
+ return (req, res, next) => {
30
+ const externalContext = propagation.extract(ROOT_CONTEXT, req.headers);
31
+ const rootSpan = tracer.startSpan('response', undefined, externalContext);
32
+ rootSpan.setAttributes(getConventionalRequestAttrs(req));
33
+ const rootContext = trace.setSpan(externalContext, rootSpan);
34
+ res.locals.tracing = {
35
+ rootSpan,
36
+ rootContext,
37
+ renderSpan: null
38
+ };
39
+ res.once(PAGE_HANDLER_EVENT_TYPE.renderStart, () => {
40
+ res.locals.tracing.renderSpan = tracer.startSpan('render', undefined, rootContext);
41
+ res.once(PAGE_HANDLER_EVENT_TYPE.renderFinish, () => {
42
+ res.locals.tracing.renderSpan.end();
43
+ });
44
+ });
45
+ res.once('finish', () => {
46
+ rootSpan.end();
47
+ });
48
+ next();
49
+ };
50
+ }
51
+ //# sourceMappingURL=express-tracing-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"express-tracing-middleware.js","names":["KnownToken","ROOT_CONTEXT","propagation","trace","PAGE_HANDLER_EVENT_TYPE","provideExpressTracingMiddleware","resolve","tracer","Tracing","getConventionalRequestAttrs","req","result","originalUrl","headerName","headers","toLowerCase","startsWith","header","res","next","externalContext","extract","rootSpan","startSpan","undefined","setAttributes","rootContext","setSpan","locals","tracing","renderSpan","once","renderStart","renderFinish","end"],"sources":["../../../../../src/preset/node/providers/express-tracing-middleware.ts"],"sourcesContent":["import type express from 'express';\nimport type { Resolve } from '../../../di';\nimport { KnownToken } from '../../../tokens';\nimport { ROOT_CONTEXT, propagation, trace } from '@opentelemetry/api';\nimport { PAGE_HANDLER_EVENT_TYPE } from '../../server';\n\n/**\n * Провайдер промежуточного слоя трассировки входящих http-запросов.\n * @param resolve Функция для получения зависимости по токену.\n * @return Промежуточный слой.\n */\nexport function provideExpressTracingMiddleware(resolve: Resolve): express.Handler {\n const tracer = resolve(KnownToken.Tracing.tracer);\n\n /**\n * Возвращает набор стандартных атрибутов для спана.\n * @param req Входящий http-запрос.\n * @return Атрибуты.\n */\n const getConventionalRequestAttrs = (\n req: express.Request,\n ): Record<string, string | undefined> => {\n const result: Record<string, string | undefined> = {\n 'request.path': req.originalUrl,\n };\n\n for (const headerName in req.headers) {\n if (headerName.toLowerCase().startsWith('simaland-')) {\n result[headerName] = req.header(headerName);\n }\n }\n\n return result;\n };\n\n return (req, res, next) => {\n const externalContext = propagation.extract(ROOT_CONTEXT, req.headers);\n const rootSpan = tracer.startSpan('response', undefined, externalContext);\n\n rootSpan.setAttributes(getConventionalRequestAttrs(req));\n\n const rootContext = trace.setSpan(externalContext, rootSpan);\n\n res.locals.tracing = {\n rootSpan,\n rootContext,\n renderSpan: null,\n };\n\n res.once(PAGE_HANDLER_EVENT_TYPE.renderStart, () => {\n res.locals.tracing.renderSpan = tracer.startSpan('render', undefined, rootContext);\n\n res.once(PAGE_HANDLER_EVENT_TYPE.renderFinish, () => {\n res.locals.tracing.renderSpan.end();\n });\n });\n\n res.once('finish', () => {\n rootSpan.end();\n });\n\n next();\n };\n}\n"],"mappings":"AAEA,SAASA,UAAU,QAAQ,oBAAiB;AAC5C,SAASC,YAAY,EAAEC,WAAW,EAAEC,KAAK,QAAQ,oBAAoB;AACrE,SAASC,uBAAuB,QAAQ,yBAAc;;AAEtD;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,+BAA+BA,CAACC,OAAgB,EAAmB;EACjF,MAAMC,MAAM,GAAGD,OAAO,CAACN,UAAU,CAACQ,OAAO,CAACD,MAAM,CAAC;;EAEjD;AACF;AACA;AACA;AACA;EACE,MAAME,2BAA2B,GAC/BC,GAAoB,IACmB;IACvC,MAAMC,MAA0C,GAAG;MACjD,cAAc,EAAED,GAAG,CAACE;IACtB,CAAC;IAED,KAAK,MAAMC,UAAU,IAAIH,GAAG,CAACI,OAAO,EAAE;MACpC,IAAID,UAAU,CAACE,WAAW,CAAC,CAAC,CAACC,UAAU,CAAC,WAAW,CAAC,EAAE;QACpDL,MAAM,CAACE,UAAU,CAAC,GAAGH,GAAG,CAACO,MAAM,CAACJ,UAAU,CAAC;MAC7C;IACF;IAEA,OAAOF,MAAM;EACf,CAAC;EAED,OAAO,CAACD,GAAG,EAAEQ,GAAG,EAAEC,IAAI,KAAK;IACzB,MAAMC,eAAe,GAAGlB,WAAW,CAACmB,OAAO,CAACpB,YAAY,EAAES,GAAG,CAACI,OAAO,CAAC;IACtE,MAAMQ,QAAQ,GAAGf,MAAM,CAACgB,SAAS,CAAC,UAAU,EAAEC,SAAS,EAAEJ,eAAe,CAAC;IAEzEE,QAAQ,CAACG,aAAa,CAAChB,2BAA2B,CAACC,GAAG,CAAC,CAAC;IAExD,MAAMgB,WAAW,GAAGvB,KAAK,CAACwB,OAAO,CAACP,eAAe,EAAEE,QAAQ,CAAC;IAE5DJ,GAAG,CAACU,MAAM,CAACC,OAAO,GAAG;MACnBP,QAAQ;MACRI,WAAW;MACXI,UAAU,EAAE;IACd,CAAC;IAEDZ,GAAG,CAACa,IAAI,CAAC3B,uBAAuB,CAAC4B,WAAW,EAAE,MAAM;MAClDd,GAAG,CAACU,MAAM,CAACC,OAAO,CAACC,UAAU,GAAGvB,MAAM,CAACgB,SAAS,CAAC,QAAQ,EAAEC,SAAS,EAAEE,WAAW,CAAC;MAElFR,GAAG,CAACa,IAAI,CAAC3B,uBAAuB,CAAC6B,YAAY,EAAE,MAAM;QACnDf,GAAG,CAACU,MAAM,CAACC,OAAO,CAACC,UAAU,CAACI,GAAG,CAAC,CAAC;MACrC,CAAC,CAAC;IACJ,CAAC,CAAC;IAEFhB,GAAG,CAACa,IAAI,CAAC,QAAQ,EAAE,MAAM;MACvBT,QAAQ,CAACY,GAAG,CAAC,CAAC;IAChB,CAAC,CAAC;IAEFf,IAAI,CAAC,CAAC;EACR,CAAC;AACH"}
@@ -0,0 +1,26 @@
1
+ import pino from 'pino';
2
+ import PinoPretty from 'pino-pretty';
3
+ import { createPinoHandler } from "../../../log/handler/pino.js";
4
+ import { KnownToken } from "../../../tokens.js";
5
+
6
+ /**
7
+ * Провайдер обработчика логирования для Pino.
8
+ * @param resolve Функция для получения зависимости по токену.
9
+ * @return Обработчик.
10
+ */
11
+ export function provideLogHandlerPino(resolve) {
12
+ const config = resolve(KnownToken.Config.base);
13
+ const pinoLogger = pino(config.env === 'production' ? {
14
+ formatters: {
15
+ // ВАЖНО: для Fluent необходимо наличие поля level: string
16
+ level: label => ({
17
+ level: label
18
+ })
19
+ }
20
+ } : PinoPretty({
21
+ colorize: true,
22
+ translateTime: 'yyyy-mm-dd HH:MM:ss.l o'
23
+ }));
24
+ return createPinoHandler(pinoLogger);
25
+ }
26
+ //# sourceMappingURL=log-handler-pino.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log-handler-pino.js","names":["pino","PinoPretty","createPinoHandler","KnownToken","provideLogHandlerPino","resolve","config","Config","base","pinoLogger","env","formatters","level","label","colorize","translateTime"],"sources":["../../../../../src/preset/node/providers/log-handler-pino.ts"],"sourcesContent":["import pino from 'pino';\nimport PinoPretty from 'pino-pretty';\nimport { Resolve } from '../../../di';\nimport { LogHandler } from '../../../log';\nimport { createPinoHandler } from '../../../log/handler/pino';\nimport { KnownToken } from '../../../tokens';\n\n/**\n * Провайдер обработчика логирования для Pino.\n * @param resolve Функция для получения зависимости по токену.\n * @return Обработчик.\n */\nexport function provideLogHandlerPino(resolve: Resolve): LogHandler {\n const config = resolve(KnownToken.Config.base);\n\n const pinoLogger = pino(\n config.env === 'production'\n ? {\n formatters: {\n // ВАЖНО: для Fluent необходимо наличие поля level: string\n level: label => ({ level: label }),\n },\n }\n : PinoPretty({\n colorize: true,\n translateTime: 'yyyy-mm-dd HH:MM:ss.l o',\n }),\n );\n\n return createPinoHandler(pinoLogger);\n}\n"],"mappings":"AAAA,OAAOA,IAAI,MAAM,MAAM;AACvB,OAAOC,UAAU,MAAM,aAAa;AAGpC,SAASC,iBAAiB,QAAQ,8BAA2B;AAC7D,SAASC,UAAU,QAAQ,oBAAiB;;AAE5C;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CAACC,OAAgB,EAAc;EAClE,MAAMC,MAAM,GAAGD,OAAO,CAACF,UAAU,CAACI,MAAM,CAACC,IAAI,CAAC;EAE9C,MAAMC,UAAU,GAAGT,IAAI,CACrBM,MAAM,CAACI,GAAG,KAAK,YAAY,GACvB;IACEC,UAAU,EAAE;MACV;MACAC,KAAK,EAAEC,KAAK,KAAK;QAAED,KAAK,EAAEC;MAAM,CAAC;IACnC;EACF,CAAC,GACDZ,UAAU,CAAC;IACTa,QAAQ,EAAE,IAAI;IACdC,aAAa,EAAE;EACjB,CAAC,CACP,CAAC;EAED,OAAOb,iBAAiB,CAACO,UAAU,CAAC;AACtC"}
@@ -0,0 +1,24 @@
1
+ import * as Sentry from '@sentry/node';
2
+ import { createSentryHandler } from "../../../log/handler/sentry.js";
3
+ import { KnownToken } from "../../../tokens.js";
4
+
5
+ /**
6
+ * Провайдер обработчика логирования для Sentry.
7
+ * @param resolve Функция для получения зависимости по токену.
8
+ * @return Обработчик.
9
+ */
10
+ export function provideLogHandlerSentry(resolve) {
11
+ const source = resolve(KnownToken.Config.source);
12
+
13
+ // экспериментально пробуем не использовать вручную созданный клиент
14
+ Sentry.init({
15
+ dsn: source.require('SENTRY_DSN'),
16
+ release: source.require('SENTRY_RELEASE'),
17
+ environment: source.require('SENTRY_ENVIRONMENT')
18
+ });
19
+
20
+ // ВАЖНО: передаем функцию чтобы брать текущий hub в момент вызова метода logger'а
21
+ // это нужно чтобы хлебные крошки в ошибках Sentry группировались по запросам
22
+ return createSentryHandler(Sentry.getCurrentHub);
23
+ }
24
+ //# sourceMappingURL=log-handler-sentry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log-handler-sentry.js","names":["Sentry","createSentryHandler","KnownToken","provideLogHandlerSentry","resolve","source","Config","init","dsn","require","release","environment","getCurrentHub"],"sources":["../../../../../src/preset/node/providers/log-handler-sentry.ts"],"sourcesContent":["import * as Sentry from '@sentry/node';\nimport { Resolve } from '../../../di';\nimport { LogHandler } from '../../../log';\nimport { createSentryHandler } from '../../../log/handler/sentry';\nimport { KnownToken } from '../../../tokens';\n\n/**\n * Провайдер обработчика логирования для Sentry.\n * @param resolve Функция для получения зависимости по токену.\n * @return Обработчик.\n */\nexport function provideLogHandlerSentry(resolve: Resolve): LogHandler {\n const source = resolve(KnownToken.Config.source);\n\n // экспериментально пробуем не использовать вручную созданный клиент\n Sentry.init({\n dsn: source.require('SENTRY_DSN'),\n release: source.require('SENTRY_RELEASE'),\n environment: source.require('SENTRY_ENVIRONMENT'),\n });\n\n // ВАЖНО: передаем функцию чтобы брать текущий hub в момент вызова метода logger'а\n // это нужно чтобы хлебные крошки в ошибках Sentry группировались по запросам\n return createSentryHandler(Sentry.getCurrentHub);\n}\n"],"mappings":"AAAA,OAAO,KAAKA,MAAM,MAAM,cAAc;AAGtC,SAASC,mBAAmB,QAAQ,gCAA6B;AACjE,SAASC,UAAU,QAAQ,oBAAiB;;AAE5C;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,uBAAuBA,CAACC,OAAgB,EAAc;EACpE,MAAMC,MAAM,GAAGD,OAAO,CAACF,UAAU,CAACI,MAAM,CAACD,MAAM,CAAC;;EAEhD;EACAL,MAAM,CAACO,IAAI,CAAC;IACVC,GAAG,EAAEH,MAAM,CAACI,OAAO,CAAC,YAAY,CAAC;IACjCC,OAAO,EAAEL,MAAM,CAACI,OAAO,CAAC,gBAAgB,CAAC;IACzCE,WAAW,EAAEN,MAAM,CAACI,OAAO,CAAC,oBAAoB;EAClD,CAAC,CAAC;;EAEF;EACA;EACA,OAAOR,mBAAmB,CAACD,MAAM,CAACY,aAAa,CAAC;AAClD"}
@@ -0,0 +1,18 @@
1
+ import { createLogger } from "./../../../log/index.js";
2
+ import { provideLogHandlerPino } from "./log-handler-pino.js";
3
+ import { provideLogHandlerSentry } from "./log-handler-sentry.js";
4
+
5
+ /**
6
+ * Провайдер Logger'а.
7
+ * @param resolve Функция для получения зависимости по токену.
8
+ * @return Logger.
9
+ */
10
+ export function provideLogger(resolve) {
11
+ const logger = createLogger();
12
+
13
+ // @todo возможно надо придумать как не давать вызывать провайдеры внутри провайдеров
14
+ logger.subscribe(provideLogHandlerPino(resolve));
15
+ logger.subscribe(provideLogHandlerSentry(resolve));
16
+ return logger;
17
+ }
18
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","names":["createLogger","provideLogHandlerPino","provideLogHandlerSentry","provideLogger","resolve","logger","subscribe"],"sources":["../../../../../src/preset/node/providers/logger.ts"],"sourcesContent":["import { Resolve } from '../../../di';\nimport { Logger, createLogger } from '../../../log';\nimport { provideLogHandlerPino } from './log-handler-pino';\nimport { provideLogHandlerSentry } from './log-handler-sentry';\n\n/**\n * Провайдер Logger'а.\n * @param resolve Функция для получения зависимости по токену.\n * @return Logger.\n */\nexport function provideLogger(resolve: Resolve): Logger {\n const logger = createLogger();\n\n // @todo возможно надо придумать как не давать вызывать провайдеры внутри провайдеров\n logger.subscribe(provideLogHandlerPino(resolve));\n logger.subscribe(provideLogHandlerSentry(resolve));\n\n return logger;\n}\n"],"mappings":"AACA,SAAiBA,YAAY,QAAQ,yBAAc;AACnD,SAASC,qBAAqB,QAAQ,uBAAoB;AAC1D,SAASC,uBAAuB,QAAQ,yBAAsB;;AAE9D;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAACC,OAAgB,EAAU;EACtD,MAAMC,MAAM,GAAGL,YAAY,CAAC,CAAC;;EAE7B;EACAK,MAAM,CAACC,SAAS,CAACL,qBAAqB,CAACG,OAAO,CAAC,CAAC;EAChDC,MAAM,CAACC,SAAS,CAACJ,uBAAuB,CAACE,OAAO,CAAC,CAAC;EAElD,OAAOC,MAAM;AACf"}
@@ -0,0 +1,18 @@
1
+ import * as PromClient from 'prom-client';
2
+ import express from 'express';
3
+
4
+ /**
5
+ * Провайдер express-приложения метрик.
6
+ * @return Пул известных http-хостов.
7
+ */
8
+ export function provideMetricsHttpApp() {
9
+ PromClient.collectDefaultMetrics();
10
+ const app = express();
11
+ app.get('/', async function (req, res) {
12
+ const metrics = await PromClient.register.metrics();
13
+ res.setHeader('Content-Type', PromClient.register.contentType);
14
+ res.send(metrics);
15
+ });
16
+ return app;
17
+ }
18
+ //# sourceMappingURL=metrics-http-app.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics-http-app.js","names":["PromClient","express","provideMetricsHttpApp","collectDefaultMetrics","app","get","req","res","metrics","register","setHeader","contentType","send"],"sources":["../../../../../src/preset/node/providers/metrics-http-app.ts"],"sourcesContent":["import * as PromClient from 'prom-client';\nimport express from 'express';\n\n/**\n * Провайдер express-приложения метрик.\n * @return Пул известных http-хостов.\n */\nexport function provideMetricsHttpApp(): express.Application {\n PromClient.collectDefaultMetrics();\n\n const app = express();\n\n app.get('/', async function (req, res) {\n const metrics = await PromClient.register.metrics();\n\n res.setHeader('Content-Type', PromClient.register.contentType);\n res.send(metrics);\n });\n\n return app;\n}\n"],"mappings":"AAAA,OAAO,KAAKA,UAAU,MAAM,aAAa;AACzC,OAAOC,OAAO,MAAM,SAAS;;AAE7B;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CAAA,EAAwB;EAC3DF,UAAU,CAACG,qBAAqB,CAAC,CAAC;EAElC,MAAMC,GAAG,GAAGH,OAAO,CAAC,CAAC;EAErBG,GAAG,CAACC,GAAG,CAAC,GAAG,EAAE,gBAAgBC,GAAG,EAAEC,GAAG,EAAE;IACrC,MAAMC,OAAO,GAAG,MAAMR,UAAU,CAACS,QAAQ,CAACD,OAAO,CAAC,CAAC;IAEnDD,GAAG,CAACG,SAAS,CAAC,cAAc,EAAEV,UAAU,CAACS,QAAQ,CAACE,WAAW,CAAC;IAC9DJ,GAAG,CAACK,IAAI,CAACJ,OAAO,CAAC;EACnB,CAAC,CAAC;EAEF,OAAOJ,GAAG;AACZ"}
@@ -0,0 +1,16 @@
1
+ import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';
2
+ import { KnownToken } from "../../../tokens.js";
3
+
4
+ /**
5
+ * Провайдер объекта SpanExporter.
6
+ * @param resolve Функция для получения зависимости по токену.
7
+ * @return SpanExporter.
8
+ */
9
+ export function provideSpanExporter(resolve) {
10
+ const source = resolve(KnownToken.Config.source);
11
+ return new OTLPTraceExporter({
12
+ // @todo сделать компонент ConventionalConfig и в реализации описать все переменные среды там
13
+ url: source.require('JAEGER_AGENT_URL')
14
+ });
15
+ }
16
+ //# sourceMappingURL=span-exporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"span-exporter.js","names":["OTLPTraceExporter","KnownToken","provideSpanExporter","resolve","source","Config","url","require"],"sources":["../../../../../src/preset/node/providers/span-exporter.ts"],"sourcesContent":["import type { Resolve } from '../../../di';\nimport type { SpanExporter } from '@opentelemetry/sdk-trace-base';\nimport { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';\nimport { KnownToken } from '../../../tokens';\n\n/**\n * Провайдер объекта SpanExporter.\n * @param resolve Функция для получения зависимости по токену.\n * @return SpanExporter.\n */\nexport function provideSpanExporter(resolve: Resolve): SpanExporter {\n const source = resolve(KnownToken.Config.source);\n\n return new OTLPTraceExporter({\n // @todo сделать компонент ConventionalConfig и в реализации описать все переменные среды там\n url: source.require('JAEGER_AGENT_URL'),\n });\n}\n"],"mappings":"AAEA,SAASA,iBAAiB,QAAQ,yCAAyC;AAC3E,SAASC,UAAU,QAAQ,oBAAiB;;AAE5C;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,mBAAmBA,CAACC,OAAgB,EAAgB;EAClE,MAAMC,MAAM,GAAGD,OAAO,CAACF,UAAU,CAACI,MAAM,CAACD,MAAM,CAAC;EAEhD,OAAO,IAAIJ,iBAAiB,CAAC;IAC3B;IACAM,GAAG,EAAEF,MAAM,CAACG,OAAO,CAAC,kBAAkB;EACxC,CAAC,CAAC;AACJ"}
@@ -0,0 +1,20 @@
1
+ import os from 'node:os';
2
+ import { Resource } from '@opentelemetry/resources';
3
+ import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions';
4
+ import { KnownToken } from "../../../tokens.js";
5
+
6
+ /**
7
+ * Провайдер объекта Resource.
8
+ * @param resolve Функция для получения зависимости по токену.
9
+ * @return Resource.
10
+ */
11
+ export function provideTracerProviderResource(resolve) {
12
+ const config = resolve(KnownToken.Config.base);
13
+ return new Resource({
14
+ [SemanticResourceAttributes.HOST_NAME]: os.hostname(),
15
+ [SemanticResourceAttributes.SERVICE_NAME]: config.appName,
16
+ [SemanticResourceAttributes.SERVICE_VERSION]: config.appVersion,
17
+ [SemanticResourceAttributes.DEPLOYMENT_ENVIRONMENT]: config.env
18
+ });
19
+ }
20
+ //# sourceMappingURL=tracer-provider-resource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracer-provider-resource.js","names":["os","Resource","SemanticResourceAttributes","KnownToken","provideTracerProviderResource","resolve","config","Config","base","HOST_NAME","hostname","SERVICE_NAME","appName","SERVICE_VERSION","appVersion","DEPLOYMENT_ENVIRONMENT","env"],"sources":["../../../../../src/preset/node/providers/tracer-provider-resource.ts"],"sourcesContent":["import type { Resolve } from '../../../di';\nimport os from 'node:os';\nimport { Resource } from '@opentelemetry/resources';\nimport { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions';\nimport { KnownToken } from '../../../tokens';\n\n/**\n * Провайдер объекта Resource.\n * @param resolve Функция для получения зависимости по токену.\n * @return Resource.\n */\nexport function provideTracerProviderResource(resolve: Resolve): Resource {\n const config = resolve(KnownToken.Config.base);\n\n return new Resource({\n [SemanticResourceAttributes.HOST_NAME]: os.hostname(),\n [SemanticResourceAttributes.SERVICE_NAME]: config.appName,\n [SemanticResourceAttributes.SERVICE_VERSION]: config.appVersion,\n [SemanticResourceAttributes.DEPLOYMENT_ENVIRONMENT]: config.env,\n });\n}\n"],"mappings":"AACA,OAAOA,EAAE,MAAM,SAAS;AACxB,SAASC,QAAQ,QAAQ,0BAA0B;AACnD,SAASC,0BAA0B,QAAQ,qCAAqC;AAChF,SAASC,UAAU,QAAQ,oBAAiB;;AAE5C;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,6BAA6BA,CAACC,OAAgB,EAAY;EACxE,MAAMC,MAAM,GAAGD,OAAO,CAACF,UAAU,CAACI,MAAM,CAACC,IAAI,CAAC;EAE9C,OAAO,IAAIP,QAAQ,CAAC;IAClB,CAACC,0BAA0B,CAACO,SAAS,GAAGT,EAAE,CAACU,QAAQ,CAAC,CAAC;IACrD,CAACR,0BAA0B,CAACS,YAAY,GAAGL,MAAM,CAACM,OAAO;IACzD,CAACV,0BAA0B,CAACW,eAAe,GAAGP,MAAM,CAACQ,UAAU;IAC/D,CAACZ,0BAA0B,CAACa,sBAAsB,GAAGT,MAAM,CAACU;EAC9D,CAAC,CAAC;AACJ"}
@@ -0,0 +1,22 @@
1
+ import { BatchSpanProcessor, NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
2
+ import { JaegerPropagator } from '@opentelemetry/propagator-jaeger';
3
+ import { KnownToken } from "../../../tokens.js";
4
+
5
+ /**
6
+ * Провайдер объекта BasicTracerProvider.
7
+ * @param resolve Функция для получения зависимости по токену.
8
+ * @return BasicTracerProvider.
9
+ */
10
+ export function provideTracerProvider(resolve) {
11
+ const exporter = resolve(KnownToken.Tracing.spanExporter);
12
+ const resource = resolve(KnownToken.Tracing.tracerProviderResource);
13
+ const provider = new NodeTracerProvider({
14
+ resource
15
+ });
16
+ provider.addSpanProcessor(new BatchSpanProcessor(exporter));
17
+ provider.register({
18
+ propagator: new JaegerPropagator()
19
+ });
20
+ return provider;
21
+ }
22
+ //# sourceMappingURL=tracer-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracer-provider.js","names":["BatchSpanProcessor","NodeTracerProvider","JaegerPropagator","KnownToken","provideTracerProvider","resolve","exporter","Tracing","spanExporter","resource","tracerProviderResource","provider","addSpanProcessor","register","propagator"],"sources":["../../../../../src/preset/node/providers/tracer-provider.ts"],"sourcesContent":["import type { Resolve } from '../../../di';\nimport type { BasicTracerProvider } from '@opentelemetry/sdk-trace-base';\nimport { BatchSpanProcessor, NodeTracerProvider } from '@opentelemetry/sdk-trace-node';\nimport { JaegerPropagator } from '@opentelemetry/propagator-jaeger';\nimport { KnownToken } from '../../../tokens';\n\n/**\n * Провайдер объекта BasicTracerProvider.\n * @param resolve Функция для получения зависимости по токену.\n * @return BasicTracerProvider.\n */\nexport function provideTracerProvider(resolve: Resolve): BasicTracerProvider {\n const exporter = resolve(KnownToken.Tracing.spanExporter);\n const resource = resolve(KnownToken.Tracing.tracerProviderResource);\n\n const provider = new NodeTracerProvider({ resource });\n\n provider.addSpanProcessor(new BatchSpanProcessor(exporter));\n provider.register({ propagator: new JaegerPropagator() });\n\n return provider;\n}\n"],"mappings":"AAEA,SAASA,kBAAkB,EAAEC,kBAAkB,QAAQ,+BAA+B;AACtF,SAASC,gBAAgB,QAAQ,kCAAkC;AACnE,SAASC,UAAU,QAAQ,oBAAiB;;AAE5C;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CAACC,OAAgB,EAAuB;EAC3E,MAAMC,QAAQ,GAAGD,OAAO,CAACF,UAAU,CAACI,OAAO,CAACC,YAAY,CAAC;EACzD,MAAMC,QAAQ,GAAGJ,OAAO,CAACF,UAAU,CAACI,OAAO,CAACG,sBAAsB,CAAC;EAEnE,MAAMC,QAAQ,GAAG,IAAIV,kBAAkB,CAAC;IAAEQ;EAAS,CAAC,CAAC;EAErDE,QAAQ,CAACC,gBAAgB,CAAC,IAAIZ,kBAAkB,CAACM,QAAQ,CAAC,CAAC;EAC3DK,QAAQ,CAACE,QAAQ,CAAC;IAAEC,UAAU,EAAE,IAAIZ,gBAAgB,CAAC;EAAE,CAAC,CAAC;EAEzD,OAAOS,QAAQ;AACjB"}
@@ -0,0 +1,13 @@
1
+ import { KnownToken } from "../../../tokens.js";
2
+
3
+ /**
4
+ * Провайдер объекта Tracer.
5
+ * @param resolve Функция для получения зависимости по токену.
6
+ * @return Tracer.
7
+ */
8
+ export function provideTracer(resolve) {
9
+ const config = resolve(KnownToken.Config.base);
10
+ const provider = resolve(KnownToken.Tracing.tracerProvider);
11
+ return provider.getTracer(config.appName, config.appVersion);
12
+ }
13
+ //# sourceMappingURL=tracer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracer.js","names":["KnownToken","provideTracer","resolve","config","Config","base","provider","Tracing","tracerProvider","getTracer","appName","appVersion"],"sources":["../../../../../src/preset/node/providers/tracer.ts"],"sourcesContent":["import { Tracer } from '@opentelemetry/api';\nimport { Resolve } from '../../../di';\nimport { KnownToken } from '../../../tokens';\n\n/**\n * Провайдер объекта Tracer.\n * @param resolve Функция для получения зависимости по токену.\n * @return Tracer.\n */\nexport function provideTracer(resolve: Resolve): Tracer {\n const config = resolve(KnownToken.Config.base);\n const provider = resolve(KnownToken.Tracing.tracerProvider);\n\n return provider.getTracer(config.appName, config.appVersion);\n}\n"],"mappings":"AAEA,SAASA,UAAU,QAAQ,oBAAiB;;AAE5C;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAACC,OAAgB,EAAU;EACtD,MAAMC,MAAM,GAAGD,OAAO,CAACF,UAAU,CAACI,MAAM,CAACC,IAAI,CAAC;EAC9C,MAAMC,QAAQ,GAAGJ,OAAO,CAACF,UAAU,CAACO,OAAO,CAACC,cAAc,CAAC;EAE3D,OAAOF,QAAQ,CAACG,SAAS,CAACN,MAAM,CAACO,OAAO,EAAEP,MAAM,CAACQ,UAAU,CAAC;AAC9D"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../src/preset/node/types.ts"],"sourcesContent":["import type { Request, Response, NextFunction } from 'express';\n\n/**\n * Контекст обработчика express.\n */\nexport interface HandlerContext {\n req: Request;\n res: Response;\n next: NextFunction;\n}\n"],"mappings":""}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../src/preset/node/types.ts"],"sourcesContent":["import type { Request, Response, NextFunction } from 'express';\n\n/**\n * Контекст обработчика express.\n */\nexport interface ExpressHandlerContext {\n readonly req: Request;\n readonly res: Response;\n readonly next: NextFunction;\n}\n"],"mappings":""}
@@ -1,7 +1,7 @@
1
1
  import { SpanStatusCode } from '@opentelemetry/api';
2
2
  import { SemanticAttributes } from '@opentelemetry/semantic-conventions';
3
- import { getClientIp } from "./../http-server/index.js";
4
- import { displayUrl } from "./../../../../isomorphic/utils/index.js";
3
+ import { displayUrl } from "../../isomorphic/utils/display-url.js";
4
+ import { hideFirstId } from "../../isomorphic/utils/hide-first-id.js";
5
5
 
6
6
  /**
7
7
  * Возвращает новый middleware для трассировки исходящих запросов.
@@ -9,7 +9,7 @@ import { displayUrl } from "./../../../../isomorphic/utils/index.js";
9
9
  * @param rootContext Контекст.
10
10
  * @return Middleware.
11
11
  */
12
- export function tracingMiddleware(tracer, rootContext) {
12
+ export function axiosTracingMiddleware(tracer, rootContext) {
13
13
  return async function trace(config, next, defaults) {
14
14
  const {
15
15
  method,
@@ -25,9 +25,13 @@ export function tracingMiddleware(tracer, rootContext) {
25
25
  ...config.params
26
26
  }),
27
27
  'request.headers': JSON.stringify({
28
+ // @todo непонятно как доставать заголовки из defaults потому что там на одном уровне заголовки и таблицы заголовков
29
+ ...defaults.headers.common,
28
30
  ...defaults.headers[method.toLowerCase()],
29
31
  ...config.headers
32
+ // @todo возможно стоит убрать cookie/Cookie
30
33
  }),
34
+
31
35
  // если нашли id - добавляем в теги
32
36
  ...(foundId && {
33
37
  'request.id': foundId
@@ -68,47 +72,4 @@ export function getRequestInfo(config, defaults) {
68
72
  foundId
69
73
  };
70
74
  }
71
-
72
- /**
73
- * Преобразует строку вида:
74
- * "/api/v2/something/123456/some-bff/123456"
75
- * в строку вида:
76
- * "/api/v2/something/{id}/some-bff/123456"
77
- * и возвращает кортеж с этой строкой и вырезанным числом в случае если оно найдено.
78
- * @param url Url.
79
- * @return Кортеж со строкой и результатом поиска числа.
80
- */
81
- export function hideFirstId(url) {
82
- const found = /\d{2,}/.exec(url);
83
- return found ? [url.replace(found[0], '{id}'), Number(found[0])] : [url, undefined];
84
- }
85
-
86
- /**
87
- * Формирует заголовки для исходящих запросов с сервера по соглашению.
88
- * @param config Конфиг.
89
- * @param request Входящий запрос.
90
- * @return Заголовки для исходящих запросов.
91
- */
92
- export function getRequestHeaders(config, request) {
93
- const result = {
94
- 'User-Agent': `simaland-${config.appName}/${config.appVersion}`
95
- };
96
- const clientIp = getClientIp(request);
97
- if (clientIp) {
98
- result['X-Client-Ip'] = clientIp;
99
- }
100
- const cookie = request.get('cookie');
101
- if (cookie) {
102
- result.Cookie = cookie;
103
- }
104
-
105
- // добавляем специфичные заголовки
106
- for (const key of Object.keys(request.headers)) {
107
- const value = request.header(key);
108
- if (key.toLowerCase().indexOf('simaland-') === 0 && value) {
109
- result[key] = value;
110
- }
111
- }
112
- return result;
113
- }
114
- //# sourceMappingURL=index.js.map
75
+ //# sourceMappingURL=axios-tracing-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"axios-tracing-middleware.js","names":["SpanStatusCode","SemanticAttributes","displayUrl","hideFirstId","axiosTracingMiddleware","tracer","rootContext","trace","config","next","defaults","method","url","foundId","getRequestInfo","span","startSpan","undefined","setAttributes","HTTP_URL","HTTP_METHOD","JSON","stringify","params","headers","common","toLowerCase","error","setStatus","code","ERROR","message","end","toUpperCase","baseURL"],"sources":["../../../../../src/preset/node/utils/axios-tracing-middleware.ts"],"sourcesContent":["import type { AxiosInstance, AxiosRequestConfig, HeadersDefaults } from 'axios';\nimport type { Middleware } from 'middleware-axios';\nimport { Context, Tracer, SpanStatusCode } from '@opentelemetry/api';\nimport { SemanticAttributes } from '@opentelemetry/semantic-conventions';\nimport { displayUrl } from '../../isomorphic/utils/display-url';\nimport { hideFirstId } from '../../isomorphic/utils/hide-first-id';\n\n/**\n * Возвращает новый middleware для трассировки исходящих запросов.\n * @param tracer Трейсер.\n * @param rootContext Контекст.\n * @return Middleware.\n */\nexport function axiosTracingMiddleware(tracer: Tracer, rootContext: Context): Middleware<any> {\n return async function trace(config, next, defaults) {\n const { method, url, foundId } = getRequestInfo(config, defaults);\n const span = tracer.startSpan(`HTTP ${method} ${url}`, undefined, rootContext);\n\n span.setAttributes({\n [SemanticAttributes.HTTP_URL]: url,\n [SemanticAttributes.HTTP_METHOD]: method,\n 'request.params': JSON.stringify({\n ...defaults.params,\n ...config.params,\n }),\n 'request.headers': JSON.stringify({\n // @todo непонятно как доставать заголовки из defaults потому что там на одном уровне заголовки и таблицы заголовков\n ...defaults.headers.common,\n ...defaults.headers[method.toLowerCase() as keyof HeadersDefaults],\n ...config.headers,\n // @todo возможно стоит убрать cookie/Cookie\n }),\n\n // если нашли id - добавляем в теги\n ...(foundId && { 'request.id': foundId }),\n });\n\n try {\n await next(config);\n } catch (error) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: 'HTTP Request failed',\n });\n\n span.end();\n\n // не прячем ошибку\n throw error;\n }\n\n span.end();\n };\n}\n\n/**\n * Формирует базовые данные запроса.\n * Заменяет первое найденное число в url на \"{id}\", возвращая его в результате.\n * @param config Axios-конфиг запроса.\n * @param defaults Базовый конфиг экземпляра Axios.\n * @return Базовые данные запроса.\n */\nexport function getRequestInfo(\n config: AxiosRequestConfig,\n defaults: AxiosInstance['defaults'],\n): {\n method: string;\n url: string;\n foundId?: number;\n} {\n const method = (config.method || 'GET').toUpperCase();\n const baseURL = config.baseURL || defaults.baseURL || '';\n\n // ВАЖНО: абстрагируем id только в url игнорируя baseURL\n const [url, foundId] = hideFirstId(config.url || defaults.url || '');\n\n return {\n method,\n url: displayUrl(baseURL, url),\n foundId,\n };\n}\n"],"mappings":"AAEA,SAA0BA,cAAc,QAAQ,oBAAoB;AACpE,SAASC,kBAAkB,QAAQ,qCAAqC;AACxE,SAASC,UAAU,QAAQ,uCAAoC;AAC/D,SAASC,WAAW,QAAQ,yCAAsC;;AAElE;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,sBAAsBA,CAACC,MAAc,EAAEC,WAAoB,EAAmB;EAC5F,OAAO,eAAeC,KAAKA,CAACC,MAAM,EAAEC,IAAI,EAAEC,QAAQ,EAAE;IAClD,MAAM;MAAEC,MAAM;MAAEC,GAAG;MAAEC;IAAQ,CAAC,GAAGC,cAAc,CAACN,MAAM,EAAEE,QAAQ,CAAC;IACjE,MAAMK,IAAI,GAAGV,MAAM,CAACW,SAAS,CAAE,QAAOL,MAAO,IAAGC,GAAI,EAAC,EAAEK,SAAS,EAAEX,WAAW,CAAC;IAE9ES,IAAI,CAACG,aAAa,CAAC;MACjB,CAACjB,kBAAkB,CAACkB,QAAQ,GAAGP,GAAG;MAClC,CAACX,kBAAkB,CAACmB,WAAW,GAAGT,MAAM;MACxC,gBAAgB,EAAEU,IAAI,CAACC,SAAS,CAAC;QAC/B,GAAGZ,QAAQ,CAACa,MAAM;QAClB,GAAGf,MAAM,CAACe;MACZ,CAAC,CAAC;MACF,iBAAiB,EAAEF,IAAI,CAACC,SAAS,CAAC;QAChC;QACA,GAAGZ,QAAQ,CAACc,OAAO,CAACC,MAAM;QAC1B,GAAGf,QAAQ,CAACc,OAAO,CAACb,MAAM,CAACe,WAAW,CAAC,CAAC,CAA0B;QAClE,GAAGlB,MAAM,CAACgB;QACV;MACF,CAAC,CAAC;;MAEF;MACA,IAAIX,OAAO,IAAI;QAAE,YAAY,EAAEA;MAAQ,CAAC;IAC1C,CAAC,CAAC;IAEF,IAAI;MACF,MAAMJ,IAAI,CAACD,MAAM,CAAC;IACpB,CAAC,CAAC,OAAOmB,KAAK,EAAE;MACdZ,IAAI,CAACa,SAAS,CAAC;QACbC,IAAI,EAAE7B,cAAc,CAAC8B,KAAK;QAC1BC,OAAO,EAAE;MACX,CAAC,CAAC;MAEFhB,IAAI,CAACiB,GAAG,CAAC,CAAC;;MAEV;MACA,MAAML,KAAK;IACb;IAEAZ,IAAI,CAACiB,GAAG,CAAC,CAAC;EACZ,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASlB,cAAcA,CAC5BN,MAA0B,EAC1BE,QAAmC,EAKnC;EACA,MAAMC,MAAM,GAAG,CAACH,MAAM,CAACG,MAAM,IAAI,KAAK,EAAEsB,WAAW,CAAC,CAAC;EACrD,MAAMC,OAAO,GAAG1B,MAAM,CAAC0B,OAAO,IAAIxB,QAAQ,CAACwB,OAAO,IAAI,EAAE;;EAExD;EACA,MAAM,CAACtB,GAAG,EAAEC,OAAO,CAAC,GAAGV,WAAW,CAACK,MAAM,CAACI,GAAG,IAAIF,QAAQ,CAACE,GAAG,IAAI,EAAE,CAAC;EAEpE,OAAO;IACLD,MAAM;IACNC,GAAG,EAAEV,UAAU,CAACgC,OAAO,EAAEtB,GAAG,CAAC;IAC7BC;EACF,CAAC;AACH"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Наивная реализация обёртки, превращающей EventEmitter в EventTarget.
3
+ */
4
+ export class EmitterAsTarget extends EventTarget {
5
+ /** @inheritdoc */
6
+ constructor(emitter) {
7
+ super();
8
+ this.emitter = emitter;
9
+ }
10
+
11
+ /** @inheritdoc */
12
+ addEventListener(type, callback, options) {
13
+ if (!callback) {
14
+ return;
15
+ }
16
+ const listener = typeof callback === 'function' ? callback : callback.handleEvent;
17
+ switch (true) {
18
+ case typeof options === 'object' && options !== null && options.once:
19
+ {
20
+ this.emitter.once(type, listener);
21
+ break;
22
+ }
23
+ default:
24
+ {
25
+ this.emitter.on(type, listener);
26
+ break;
27
+ }
28
+ }
29
+ }
30
+
31
+ /** @inheritdoc */
32
+ removeEventListener(type, callback) {
33
+ if (!callback) {
34
+ return;
35
+ }
36
+ const listener = typeof callback === 'function' ? callback : callback.handleEvent;
37
+ this.emitter.removeListener(type, listener);
38
+ }
39
+
40
+ /** @inheritdoc */
41
+ dispatchEvent(event) {
42
+ return this.emitter.emit(event.type, event);
43
+ }
44
+ }
45
+ //# sourceMappingURL=emitter-as-target.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emitter-as-target.js","names":["EmitterAsTarget","EventTarget","constructor","emitter","addEventListener","type","callback","options","listener","handleEvent","once","on","removeEventListener","removeListener","dispatchEvent","event","emit"],"sources":["../../../../../src/preset/node/utils/emitter-as-target.ts"],"sourcesContent":["import type { EventEmitter } from 'node:events';\n\n/**\n * Наивная реализация обёртки, превращающей EventEmitter в EventTarget.\n */\nexport class EmitterAsTarget extends EventTarget {\n private emitter: EventEmitter;\n\n /** @inheritdoc */\n constructor(emitter: EventEmitter) {\n super();\n this.emitter = emitter;\n }\n\n /** @inheritdoc */\n addEventListener(\n type: string,\n callback: EventListenerOrEventListenerObject | null,\n options?: AddEventListenerOptions | boolean,\n ) {\n if (!callback) {\n return;\n }\n\n const listener = typeof callback === 'function' ? callback : callback.handleEvent;\n\n switch (true) {\n case typeof options === 'object' && options !== null && options.once: {\n this.emitter.once(type, listener as (...args: any[]) => void);\n break;\n }\n default: {\n this.emitter.on(type, listener as (...args: any[]) => void);\n break;\n }\n }\n }\n\n /** @inheritdoc */\n removeEventListener(type: string, callback: EventListenerOrEventListenerObject | null) {\n if (!callback) {\n return;\n }\n\n const listener = typeof callback === 'function' ? callback : callback.handleEvent;\n\n this.emitter.removeListener(type, listener as (...args: any[]) => void);\n }\n\n /** @inheritdoc */\n dispatchEvent(event: Event) {\n return this.emitter.emit(event.type, event);\n }\n}\n"],"mappings":"AAEA;AACA;AACA;AACA,OAAO,MAAMA,eAAe,SAASC,WAAW,CAAC;EAG/C;EACAC,WAAWA,CAACC,OAAqB,EAAE;IACjC,KAAK,CAAC,CAAC;IACP,IAAI,CAACA,OAAO,GAAGA,OAAO;EACxB;;EAEA;EACAC,gBAAgBA,CACdC,IAAY,EACZC,QAAmD,EACnDC,OAA2C,EAC3C;IACA,IAAI,CAACD,QAAQ,EAAE;MACb;IACF;IAEA,MAAME,QAAQ,GAAG,OAAOF,QAAQ,KAAK,UAAU,GAAGA,QAAQ,GAAGA,QAAQ,CAACG,WAAW;IAEjF,QAAQ,IAAI;MACV,KAAK,OAAOF,OAAO,KAAK,QAAQ,IAAIA,OAAO,KAAK,IAAI,IAAIA,OAAO,CAACG,IAAI;QAAE;UACpE,IAAI,CAACP,OAAO,CAACO,IAAI,CAACL,IAAI,EAAEG,QAAoC,CAAC;UAC7D;QACF;MACA;QAAS;UACP,IAAI,CAACL,OAAO,CAACQ,EAAE,CAACN,IAAI,EAAEG,QAAoC,CAAC;UAC3D;QACF;IACF;EACF;;EAEA;EACAI,mBAAmBA,CAACP,IAAY,EAAEC,QAAmD,EAAE;IACrF,IAAI,CAACA,QAAQ,EAAE;MACb;IACF;IAEA,MAAME,QAAQ,GAAG,OAAOF,QAAQ,KAAK,UAAU,GAAGA,QAAQ,GAAGA,QAAQ,CAACG,WAAW;IAEjF,IAAI,CAACN,OAAO,CAACU,cAAc,CAACR,IAAI,EAAEG,QAAoC,CAAC;EACzE;;EAEA;EACAM,aAAaA,CAACC,KAAY,EAAE;IAC1B,OAAO,IAAI,CAACZ,OAAO,CAACa,IAAI,CAACD,KAAK,CAACV,IAAI,EAAEU,KAAK,CAAC;EAC7C;AACF"}
@@ -6,7 +6,7 @@ import net from 'node:net';
6
6
  * @return IP.
7
7
  */
8
8
  export function getClientIp(request) {
9
- const headerValue = request.get('x-client-ip') || request.get('x-forwarded-for') || request.socket.remoteAddress || '';
9
+ const headerValue = request.header('x-client-ip') || request.header('x-forwarded-for') || request.socket.remoteAddress || '';
10
10
  return net.isIP(headerValue) ? headerValue : undefined;
11
11
  }
12
- //# sourceMappingURL=index.js.map
12
+ //# sourceMappingURL=get-client-ip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-client-ip.js","names":["net","getClientIp","request","headerValue","header","socket","remoteAddress","isIP","undefined"],"sources":["../../../../../src/preset/node/utils/get-client-ip.ts"],"sourcesContent":["import type express from 'express';\nimport net from 'node:net';\n\n/**\n * Определяет IP входящего запроса.\n * @param request Входящий запрос.\n * @return IP.\n */\nexport function getClientIp(request: express.Request): string | undefined {\n const headerValue =\n request.header('x-client-ip') ||\n request.header('x-forwarded-for') ||\n request.socket.remoteAddress ||\n '';\n\n return net.isIP(headerValue) ? headerValue : undefined;\n}\n"],"mappings":"AACA,OAAOA,GAAG,MAAM,UAAU;;AAE1B;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAACC,OAAwB,EAAsB;EACxE,MAAMC,WAAW,GACfD,OAAO,CAACE,MAAM,CAAC,aAAa,CAAC,IAC7BF,OAAO,CAACE,MAAM,CAAC,iBAAiB,CAAC,IACjCF,OAAO,CAACG,MAAM,CAACC,aAAa,IAC5B,EAAE;EAEJ,OAAON,GAAG,CAACO,IAAI,CAACJ,WAAW,CAAC,GAAGA,WAAW,GAAGK,SAAS;AACxD"}