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

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 (232) hide show
  1. package/README.md +1 -0
  2. package/dist/cjs/config/source.js +2 -0
  3. package/dist/cjs/config/source.js.map +1 -1
  4. package/dist/cjs/config/types.js.map +1 -1
  5. package/dist/cjs/http/index.js +6 -12
  6. package/dist/cjs/http/index.js.map +1 -1
  7. package/dist/cjs/http/types.js.map +1 -1
  8. package/dist/cjs/log/errors.js.map +1 -1
  9. package/dist/cjs/package.json +4 -3
  10. package/dist/cjs/preset/bun/index.js +3 -2
  11. package/dist/cjs/preset/bun/index.js.map +1 -1
  12. package/dist/cjs/preset/bun/providers/serve-middleware.js +1 -1
  13. package/dist/cjs/preset/bun/providers/serve-middleware.js.map +1 -1
  14. package/dist/cjs/preset/bun-handler/index.js +0 -2
  15. package/dist/cjs/preset/bun-handler/index.js.map +1 -1
  16. package/dist/cjs/preset/bun-handler/providers/fetch-middleware.js +1 -2
  17. package/dist/cjs/preset/bun-handler/providers/fetch-middleware.js.map +1 -1
  18. package/dist/cjs/preset/bun-handler/providers/handler-main.js +6 -24
  19. package/dist/cjs/preset/bun-handler/providers/handler-main.js.map +1 -1
  20. package/dist/cjs/preset/node/index.js +9 -2
  21. package/dist/cjs/preset/node/index.js.map +1 -1
  22. package/dist/cjs/preset/node/providers/express-metrics-middleware.js +1 -1
  23. package/dist/cjs/preset/node/providers/express-metrics-middleware.js.map +1 -1
  24. package/dist/cjs/preset/node/providers/main-express-app.js +62 -0
  25. package/dist/cjs/preset/node/providers/main-express-app.js.map +1 -0
  26. package/dist/cjs/preset/node/providers/{metrics-http-app.js → metrics-express-app.js} +3 -3
  27. package/dist/cjs/preset/node/providers/metrics-express-app.js.map +1 -0
  28. package/dist/cjs/preset/node/types.js.map +1 -1
  29. package/dist/cjs/preset/{server → node}/utils/get-fetch-tracing.js +2 -2
  30. package/dist/cjs/preset/node/utils/get-fetch-tracing.js.map +1 -0
  31. package/dist/cjs/preset/node/utils/get-handler-metrics.js.map +1 -0
  32. package/dist/cjs/preset/node/utils/get-page-response-format.js +1 -0
  33. package/dist/cjs/preset/node/utils/get-page-response-format.js.map +1 -1
  34. package/dist/cjs/preset/{server → node}/utils/get-serve-measuring.js +1 -1
  35. package/dist/cjs/preset/node/utils/get-serve-measuring.js.map +1 -0
  36. package/dist/cjs/preset/node-handler/index.js +2 -2
  37. package/dist/cjs/preset/node-handler/index.js.map +1 -1
  38. package/dist/cjs/preset/node-handler/providers/axios-middleware.js +1 -2
  39. package/dist/cjs/preset/node-handler/providers/axios-middleware.js.map +1 -1
  40. package/dist/cjs/preset/node-handler/providers/fetch-middleware.js +2 -3
  41. package/dist/cjs/preset/node-handler/providers/fetch-middleware.js.map +1 -1
  42. package/dist/cjs/preset/node-handler/providers/handler-main.js +1 -14
  43. package/dist/cjs/preset/node-handler/providers/handler-main.js.map +1 -1
  44. package/dist/cjs/preset/server/index.js +6 -0
  45. package/dist/cjs/preset/server/index.js.map +1 -1
  46. package/dist/cjs/preset/server/providers/fetch-middleware.js.map +1 -0
  47. package/dist/cjs/preset/server/providers/format-page-response.js +4 -1
  48. package/dist/cjs/preset/server/providers/format-page-response.js.map +1 -1
  49. package/dist/cjs/preset/server/providers/serve.js +47 -0
  50. package/dist/cjs/preset/server/providers/serve.js.map +1 -0
  51. package/dist/cjs/preset/server/types.js.map +1 -1
  52. package/dist/cjs/preset/server/utils/get-forwarded-headers.js +6 -0
  53. package/dist/cjs/preset/server/utils/get-forwarded-headers.js.map +1 -1
  54. package/dist/cjs/preset/server/utils/get-page-response-format.js +1 -0
  55. package/dist/cjs/preset/server/utils/get-page-response-format.js.map +1 -1
  56. package/dist/cjs/preset/server/utils/get-serve-error-logging.js +2 -2
  57. package/dist/cjs/preset/server/utils/get-serve-error-logging.js.map +1 -1
  58. package/dist/cjs/preset/server/utils/get-serve-logging.js +3 -4
  59. package/dist/cjs/preset/server/utils/get-serve-logging.js.map +1 -1
  60. package/dist/cjs/preset/web/providers/axios-middleware.js.map +1 -1
  61. package/dist/cjs/tokens.js +16 -5
  62. package/dist/cjs/tokens.js.map +1 -1
  63. package/dist/cjs/utils/axios/index.js +0 -7
  64. package/dist/cjs/utils/axios/index.js.map +1 -1
  65. package/dist/cjs/utils/express/handler/health-check.js.map +1 -1
  66. package/dist/cjs/utils/express/utils/index.js.map +1 -1
  67. package/dist/esm/config/source.js +1 -0
  68. package/dist/esm/config/source.js.map +1 -1
  69. package/dist/esm/config/types.js.map +1 -1
  70. package/dist/esm/http/index.js +2 -2
  71. package/dist/esm/http/index.js.map +1 -1
  72. package/dist/esm/http/types.js.map +1 -1
  73. package/dist/esm/log/errors.js.map +1 -1
  74. package/dist/esm/package.json +4 -3
  75. package/dist/esm/preset/bun/index.js +3 -2
  76. package/dist/esm/preset/bun/index.js.map +1 -1
  77. package/dist/esm/preset/bun/providers/serve-middleware.js +1 -1
  78. package/dist/esm/preset/bun/providers/serve-middleware.js.map +1 -1
  79. package/dist/esm/preset/bun-handler/index.js +0 -2
  80. package/dist/esm/preset/bun-handler/index.js.map +1 -1
  81. package/dist/esm/preset/bun-handler/providers/fetch-middleware.js +2 -3
  82. package/dist/esm/preset/bun-handler/providers/fetch-middleware.js.map +1 -1
  83. package/dist/esm/preset/bun-handler/providers/handler-main.js +6 -24
  84. package/dist/esm/preset/bun-handler/providers/handler-main.js.map +1 -1
  85. package/dist/esm/preset/node/index.js +9 -4
  86. package/dist/esm/preset/node/index.js.map +1 -1
  87. package/dist/esm/preset/node/providers/express-metrics-middleware.js +1 -1
  88. package/dist/esm/preset/node/providers/express-metrics-middleware.js.map +1 -1
  89. package/dist/esm/preset/node/providers/main-express-app.js +56 -0
  90. package/dist/esm/preset/node/providers/main-express-app.js.map +1 -0
  91. package/dist/esm/preset/node/providers/{metrics-http-app.js → metrics-express-app.js} +2 -2
  92. package/dist/esm/preset/node/providers/metrics-express-app.js.map +1 -0
  93. package/dist/esm/preset/node/types.js.map +1 -1
  94. package/dist/esm/preset/{server → node}/utils/get-fetch-tracing.js +2 -2
  95. package/dist/esm/preset/node/utils/get-fetch-tracing.js.map +1 -0
  96. package/dist/esm/preset/node/utils/get-handler-metrics.js.map +1 -0
  97. package/dist/esm/preset/node/utils/get-page-response-format.js +1 -0
  98. package/dist/esm/preset/node/utils/get-page-response-format.js.map +1 -1
  99. package/dist/esm/preset/{server → node}/utils/get-serve-measuring.js +1 -1
  100. package/dist/esm/preset/node/utils/get-serve-measuring.js.map +1 -0
  101. package/dist/esm/preset/node-handler/index.js +2 -2
  102. package/dist/esm/preset/node-handler/index.js.map +1 -1
  103. package/dist/esm/preset/node-handler/providers/axios-middleware.js +2 -3
  104. package/dist/esm/preset/node-handler/providers/axios-middleware.js.map +1 -1
  105. package/dist/esm/preset/node-handler/providers/fetch-middleware.js +3 -4
  106. package/dist/esm/preset/node-handler/providers/fetch-middleware.js.map +1 -1
  107. package/dist/esm/preset/node-handler/providers/handler-main.js +1 -14
  108. package/dist/esm/preset/node-handler/providers/handler-main.js.map +1 -1
  109. package/dist/esm/preset/server/index.js +1 -1
  110. package/dist/esm/preset/server/index.js.map +1 -1
  111. package/dist/esm/preset/server/providers/fetch-middleware.js.map +1 -0
  112. package/dist/esm/preset/server/providers/format-page-response.js +4 -1
  113. package/dist/esm/preset/server/providers/format-page-response.js.map +1 -1
  114. package/dist/esm/preset/server/providers/serve.js +41 -0
  115. package/dist/esm/preset/server/providers/serve.js.map +1 -0
  116. package/dist/esm/preset/server/types.js.map +1 -1
  117. package/dist/esm/preset/server/utils/get-forwarded-headers.js +6 -0
  118. package/dist/esm/preset/server/utils/get-forwarded-headers.js.map +1 -1
  119. package/dist/esm/preset/server/utils/get-page-response-format.js +1 -0
  120. package/dist/esm/preset/server/utils/get-page-response-format.js.map +1 -1
  121. package/dist/esm/preset/server/utils/get-serve-error-logging.js +2 -2
  122. package/dist/esm/preset/server/utils/get-serve-error-logging.js.map +1 -1
  123. package/dist/esm/preset/server/utils/get-serve-logging.js +3 -4
  124. package/dist/esm/preset/server/utils/get-serve-logging.js.map +1 -1
  125. package/dist/esm/preset/web/providers/axios-middleware.js.map +1 -1
  126. package/dist/esm/tokens.js +16 -5
  127. package/dist/esm/tokens.js.map +1 -1
  128. package/dist/esm/utils/axios/index.js +0 -1
  129. package/dist/esm/utils/axios/index.js.map +1 -1
  130. package/dist/esm/utils/express/handler/health-check.js.map +1 -1
  131. package/dist/esm/utils/express/utils/index.js.map +1 -1
  132. package/dist/types/config/source.d.ts.map +1 -1
  133. package/dist/types/config/types.d.ts.map +1 -1
  134. package/dist/types/http/index.d.ts +3 -3
  135. package/dist/types/http/index.d.ts.map +1 -1
  136. package/dist/types/http/types.d.ts +3 -3
  137. package/dist/types/http/types.d.ts.map +1 -1
  138. package/dist/types/log/errors.d.ts +1 -1
  139. package/dist/types/log/errors.d.ts.map +1 -1
  140. package/dist/types/preset/bun/index.d.ts.map +1 -1
  141. package/dist/types/preset/bun-handler/index.d.ts.map +1 -1
  142. package/dist/types/preset/bun-handler/providers/fetch-middleware.d.ts.map +1 -1
  143. package/dist/types/preset/bun-handler/providers/handler-main.d.ts +1 -1
  144. package/dist/types/preset/bun-handler/providers/handler-main.d.ts.map +1 -1
  145. package/dist/types/preset/node/index.d.ts +1 -0
  146. package/dist/types/preset/node/index.d.ts.map +1 -1
  147. package/dist/types/preset/node/providers/main-express-app.d.ts +9 -0
  148. package/dist/types/preset/node/providers/main-express-app.d.ts.map +1 -0
  149. package/dist/types/preset/node/providers/{metrics-http-app.d.ts → metrics-express-app.d.ts} +2 -2
  150. package/dist/types/preset/node/providers/metrics-express-app.d.ts.map +1 -0
  151. package/dist/types/preset/node/types.d.ts +6 -4
  152. package/dist/types/preset/node/types.d.ts.map +1 -1
  153. package/dist/types/preset/node/utils/get-fetch-tracing.d.ts.map +1 -0
  154. package/dist/types/preset/node/utils/get-handler-metrics.d.ts.map +1 -0
  155. package/dist/types/preset/node/utils/get-page-response-format.d.ts +1 -0
  156. package/dist/types/preset/node/utils/get-page-response-format.d.ts.map +1 -1
  157. package/dist/types/preset/{server → node}/utils/get-serve-measuring.d.ts +1 -1
  158. package/dist/types/preset/node/utils/get-serve-measuring.d.ts.map +1 -0
  159. package/dist/types/preset/node-handler/providers/axios-middleware.d.ts.map +1 -1
  160. package/dist/types/preset/node-handler/providers/fetch-middleware.d.ts.map +1 -1
  161. package/dist/types/preset/node-handler/providers/handler-main.d.ts.map +1 -1
  162. package/dist/types/preset/server/index.d.ts +2 -2
  163. package/dist/types/preset/server/index.d.ts.map +1 -1
  164. package/dist/types/preset/server/providers/fetch-middleware.d.ts.map +1 -0
  165. package/dist/types/preset/server/providers/format-page-response.d.ts.map +1 -1
  166. package/dist/types/preset/server/providers/serve.d.ts.map +1 -0
  167. package/dist/types/preset/server/types.d.ts +6 -1
  168. package/dist/types/preset/server/types.d.ts.map +1 -1
  169. package/dist/types/preset/server/utils/get-forwarded-headers.d.ts.map +1 -1
  170. package/dist/types/preset/server/utils/get-page-response-format.d.ts +1 -0
  171. package/dist/types/preset/server/utils/get-page-response-format.d.ts.map +1 -1
  172. package/dist/types/preset/server/utils/get-serve-error-logging.d.ts.map +1 -1
  173. package/dist/types/preset/server/utils/get-serve-logging.d.ts.map +1 -1
  174. package/dist/types/preset/web/providers/axios-middleware.d.ts +3 -2
  175. package/dist/types/preset/web/providers/axios-middleware.d.ts.map +1 -1
  176. package/dist/types/preset/web/providers/fetch-middleware.d.ts +1 -1
  177. package/dist/types/preset/web/providers/fetch-middleware.d.ts.map +1 -1
  178. package/dist/types/tokens.d.ts +21 -10
  179. package/dist/types/tokens.d.ts.map +1 -1
  180. package/dist/types/utils/axios/index.d.ts +0 -1
  181. package/dist/types/utils/axios/index.d.ts.map +1 -1
  182. package/dist/types/utils/express/handler/health-check.d.ts +2 -2
  183. package/dist/types/utils/express/handler/health-check.d.ts.map +1 -1
  184. package/dist/types/utils/express/utils/index.d.ts +2 -2
  185. package/dist/types/utils/express/utils/index.d.ts.map +1 -1
  186. package/package.json +4 -3
  187. package/dist/cjs/preset/bun/providers/fetch-middleware.js.map +0 -1
  188. package/dist/cjs/preset/bun/providers/serve.js +0 -33
  189. package/dist/cjs/preset/bun/providers/serve.js.map +0 -1
  190. package/dist/cjs/preset/bun-handler/providers/cookie-store.js +0 -15
  191. package/dist/cjs/preset/bun-handler/providers/cookie-store.js.map +0 -1
  192. package/dist/cjs/preset/node/providers/metrics-http-app.js.map +0 -1
  193. package/dist/cjs/preset/node-handler/providers/cookie-store.js +0 -18
  194. package/dist/cjs/preset/node-handler/providers/cookie-store.js.map +0 -1
  195. package/dist/cjs/preset/server/utils/get-fetch-tracing.js.map +0 -1
  196. package/dist/cjs/preset/server/utils/get-handler-metrics.js.map +0 -1
  197. package/dist/cjs/preset/server/utils/get-serve-measuring.js.map +0 -1
  198. package/dist/cjs/utils/axios/middleware/cookie.js +0 -28
  199. package/dist/cjs/utils/axios/middleware/cookie.js.map +0 -1
  200. package/dist/esm/preset/bun/providers/fetch-middleware.js.map +0 -1
  201. package/dist/esm/preset/bun/providers/serve.js +0 -27
  202. package/dist/esm/preset/bun/providers/serve.js.map +0 -1
  203. package/dist/esm/preset/bun-handler/providers/cookie-store.js +0 -9
  204. package/dist/esm/preset/bun-handler/providers/cookie-store.js.map +0 -1
  205. package/dist/esm/preset/node/providers/metrics-http-app.js.map +0 -1
  206. package/dist/esm/preset/node-handler/providers/cookie-store.js +0 -13
  207. package/dist/esm/preset/node-handler/providers/cookie-store.js.map +0 -1
  208. package/dist/esm/preset/server/utils/get-fetch-tracing.js.map +0 -1
  209. package/dist/esm/preset/server/utils/get-handler-metrics.js.map +0 -1
  210. package/dist/esm/preset/server/utils/get-serve-measuring.js.map +0 -1
  211. package/dist/esm/utils/axios/middleware/cookie.js +0 -22
  212. package/dist/esm/utils/axios/middleware/cookie.js.map +0 -1
  213. package/dist/types/preset/bun/providers/fetch-middleware.d.ts.map +0 -1
  214. package/dist/types/preset/bun/providers/serve.d.ts.map +0 -1
  215. package/dist/types/preset/bun-handler/providers/cookie-store.d.ts +0 -4
  216. package/dist/types/preset/bun-handler/providers/cookie-store.d.ts.map +0 -1
  217. package/dist/types/preset/node/providers/metrics-http-app.d.ts.map +0 -1
  218. package/dist/types/preset/node-handler/providers/cookie-store.d.ts +0 -9
  219. package/dist/types/preset/node-handler/providers/cookie-store.d.ts.map +0 -1
  220. package/dist/types/preset/server/utils/get-fetch-tracing.d.ts.map +0 -1
  221. package/dist/types/preset/server/utils/get-handler-metrics.d.ts.map +0 -1
  222. package/dist/types/preset/server/utils/get-serve-measuring.d.ts.map +0 -1
  223. package/dist/types/utils/axios/middleware/cookie.d.ts +0 -9
  224. package/dist/types/utils/axios/middleware/cookie.d.ts.map +0 -1
  225. /package/dist/cjs/preset/{server → node}/utils/get-handler-metrics.js +0 -0
  226. /package/dist/cjs/preset/{bun → server}/providers/fetch-middleware.js +0 -0
  227. /package/dist/esm/preset/{server → node}/utils/get-handler-metrics.js +0 -0
  228. /package/dist/esm/preset/{bun → server}/providers/fetch-middleware.js +0 -0
  229. /package/dist/types/preset/{server → node}/utils/get-fetch-tracing.d.ts +0 -0
  230. /package/dist/types/preset/{server → node}/utils/get-handler-metrics.d.ts +0 -0
  231. /package/dist/types/preset/{bun → server}/providers/fetch-middleware.d.ts +0 -0
  232. /package/dist/types/preset/{bun → server}/providers/serve.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"get-serve-error-logging.js","names":["_http","require","_log","getServeErrorLogging","logger","log","onCatch","request","error","DetailedError","String","level","context","key","data","url","FetchUtil","withoutParams","method","headers","Object","fromEntries","entries","params","URL","searchParams"],"sources":["../../../../../src/preset/server/utils/get-serve-error-logging.ts"],"sourcesContent":["import { FetchUtil, log, type Middleware } from '../../../http';\nimport { DetailedError, type Logger } from '../../../log';\n\n/**\n * Возвращает новый промежуточный слой для логирования ошибки при обработке входящего http-запроса.\n * @param logger Logger.\n * @return Промежуточный слой.\n */\nexport function getServeErrorLogging(logger: Logger): Middleware {\n return log({\n onCatch: ({ request, error }) => {\n logger.error(\n new DetailedError(String(error), {\n level: 'error',\n context: [\n {\n key: 'Incoming request details',\n data: {\n url: FetchUtil.withoutParams(request.url),\n method: request.method,\n headers: Object.fromEntries(request.headers.entries()),\n params: Object.fromEntries(new URL(request.url).searchParams.entries()),\n // @todo data\n },\n },\n ],\n }),\n );\n },\n });\n}\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACA;AACO,SAASE,oBAAoBA,CAACC,MAAc,EAAc;EAC/D,OAAO,IAAAC,SAAG,EAAC;IACTC,OAAO,EAAEA,CAAC;MAAEC,OAAO;MAAEC;IAAM,CAAC,KAAK;MAC/BJ,MAAM,CAACI,KAAK,CACV,IAAIC,kBAAa,CAACC,MAAM,CAACF,KAAK,CAAC,EAAE;QAC/BG,KAAK,EAAE,OAAO;QACdC,OAAO,EAAE,CACP;UACEC,GAAG,EAAE,0BAA0B;UAC/BC,IAAI,EAAE;YACJC,GAAG,EAAEC,eAAS,CAACC,aAAa,CAACV,OAAO,CAACQ,GAAG,CAAC;YACzCG,MAAM,EAAEX,OAAO,CAACW,MAAM;YACtBC,OAAO,EAAEC,MAAM,CAACC,WAAW,CAACd,OAAO,CAACY,OAAO,CAACG,OAAO,CAAC,CAAC,CAAC;YACtDC,MAAM,EAAEH,MAAM,CAACC,WAAW,CAAC,IAAIG,GAAG,CAACjB,OAAO,CAACQ,GAAG,CAAC,CAACU,YAAY,CAACH,OAAO,CAAC,CAAC;YACtE;UACF;QACF,CAAC;MAEL,CAAC,CACH,CAAC;IACH;EACF,CAAC,CAAC;AACJ"}
1
+ {"version":3,"file":"get-serve-error-logging.js","names":["_http","require","_log","getServeErrorLogging","logger","log","onCatch","request","error","DetailedError","String","level","context","key","data","url","FetchUtil","withoutParams","method","headers","Object","fromEntries","entries","params","URL","searchParams"],"sources":["../../../../../src/preset/server/utils/get-serve-error-logging.ts"],"sourcesContent":["import { FetchUtil, log, type Middleware } from '../../../http';\nimport { DetailedError, type Logger } from '../../../log';\n\n/**\n * Возвращает новый промежуточный слой для логирования ошибки при обработке входящего http-запроса.\n * @param logger Logger.\n * @return Промежуточный слой.\n */\nexport function getServeErrorLogging(logger: Logger): Middleware {\n return log({\n onCatch: ({ request, error }) => {\n logger.error(\n new DetailedError(String(error), {\n level: 'error',\n context: {\n key: 'Incoming request details',\n data: {\n url: FetchUtil.withoutParams(request.url),\n method: request.method,\n headers: Object.fromEntries(request.headers.entries()),\n params: Object.fromEntries(new URL(request.url).searchParams.entries()),\n // @todo data\n },\n },\n }),\n );\n },\n });\n}\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACA;AACO,SAASE,oBAAoBA,CAACC,MAAc,EAAc;EAC/D,OAAO,IAAAC,SAAG,EAAC;IACTC,OAAO,EAAEA,CAAC;MAAEC,OAAO;MAAEC;IAAM,CAAC,KAAK;MAC/BJ,MAAM,CAACI,KAAK,CACV,IAAIC,kBAAa,CAACC,MAAM,CAACF,KAAK,CAAC,EAAE;QAC/BG,KAAK,EAAE,OAAO;QACdC,OAAO,EAAE;UACPC,GAAG,EAAE,0BAA0B;UAC/BC,IAAI,EAAE;YACJC,GAAG,EAAEC,eAAS,CAACC,aAAa,CAACV,OAAO,CAACQ,GAAG,CAAC;YACzCG,MAAM,EAAEX,OAAO,CAACW,MAAM;YACtBC,OAAO,EAAEC,MAAM,CAACC,WAAW,CAACd,OAAO,CAACY,OAAO,CAACG,OAAO,CAAC,CAAC,CAAC;YACtDC,MAAM,EAAEH,MAAM,CAACC,WAAW,CAAC,IAAIG,GAAG,CAACjB,OAAO,CAACQ,GAAG,CAAC,CAACU,YAAY,CAACH,OAAO,CAAC,CAAC;YACtE;UACF;QACF;MACF,CAAC,CACH,CAAC;IACH;EACF,CAAC,CAAC;AACJ"}
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.getServeLogging = getServeLogging;
7
- var _utils = require("../../../utils");
8
7
  var _getClientIp = require("./get-client-ip");
9
8
  /**
10
9
  * Возвращает новый промежуточный слой для логирования обработки входящего http-запроса.
@@ -13,7 +12,7 @@ var _getClientIp = require("./get-client-ip");
13
12
  */
14
13
  function getServeLogging(logger) {
15
14
  return async (request, next) => {
16
- const start = process.hrtime.bigint();
15
+ const start = performance.now();
17
16
  const clientIp = (0, _getClientIp.getClientIp)(request);
18
17
  logger.info({
19
18
  type: 'http.request[incoming]',
@@ -22,14 +21,14 @@ function getServeLogging(logger) {
22
21
  remote_ip: clientIp
23
22
  });
24
23
  const response = await next(request);
25
- const finish = process.hrtime.bigint();
24
+ const finish = performance.now();
26
25
  logger.info({
27
26
  type: 'http.response[outgoing]',
28
27
  route: request.url,
29
28
  method: request.method,
30
29
  status: response.status,
31
30
  remote_ip: clientIp,
32
- latency: (0, _utils.toMilliseconds)(finish - start)
31
+ latency: finish - start
33
32
  });
34
33
  return response;
35
34
  };
@@ -1 +1 @@
1
- {"version":3,"file":"get-serve-logging.js","names":["_utils","require","_getClientIp","getServeLogging","logger","request","next","start","process","hrtime","bigint","clientIp","getClientIp","info","type","route","url","method","remote_ip","response","finish","status","latency","toMilliseconds"],"sources":["../../../../../src/preset/server/utils/get-serve-logging.ts"],"sourcesContent":["import type { Middleware } from '../../../http';\nimport type { Logger } from '../../../log';\nimport { toMilliseconds } from '../../../utils';\nimport { getClientIp } from './get-client-ip';\n\n/**\n * Возвращает новый промежуточный слой для логирования обработки входящего http-запроса.\n * @param logger Logger.\n * @return Промежуточный слой.\n */\nexport function getServeLogging(logger: Logger): Middleware {\n return async (request, next) => {\n const start = process.hrtime.bigint();\n const clientIp = getClientIp(request);\n\n logger.info({\n type: 'http.request[incoming]',\n route: request.url,\n method: request.method,\n remote_ip: clientIp,\n });\n\n const response = await next(request);\n\n const finish = process.hrtime.bigint();\n\n logger.info({\n type: 'http.response[outgoing]',\n route: request.url,\n method: request.method,\n status: response.status,\n remote_ip: clientIp,\n latency: toMilliseconds(finish - start),\n });\n\n return response;\n };\n}\n"],"mappings":";;;;;;AAEA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACA;AACO,SAASE,eAAeA,CAACC,MAAc,EAAc;EAC1D,OAAO,OAAOC,OAAO,EAAEC,IAAI,KAAK;IAC9B,MAAMC,KAAK,GAAGC,OAAO,CAACC,MAAM,CAACC,MAAM,CAAC,CAAC;IACrC,MAAMC,QAAQ,GAAG,IAAAC,wBAAW,EAACP,OAAO,CAAC;IAErCD,MAAM,CAACS,IAAI,CAAC;MACVC,IAAI,EAAE,wBAAwB;MAC9BC,KAAK,EAAEV,OAAO,CAACW,GAAG;MAClBC,MAAM,EAAEZ,OAAO,CAACY,MAAM;MACtBC,SAAS,EAAEP;IACb,CAAC,CAAC;IAEF,MAAMQ,QAAQ,GAAG,MAAMb,IAAI,CAACD,OAAO,CAAC;IAEpC,MAAMe,MAAM,GAAGZ,OAAO,CAACC,MAAM,CAACC,MAAM,CAAC,CAAC;IAEtCN,MAAM,CAACS,IAAI,CAAC;MACVC,IAAI,EAAE,yBAAyB;MAC/BC,KAAK,EAAEV,OAAO,CAACW,GAAG;MAClBC,MAAM,EAAEZ,OAAO,CAACY,MAAM;MACtBI,MAAM,EAAEF,QAAQ,CAACE,MAAM;MACvBH,SAAS,EAAEP,QAAQ;MACnBW,OAAO,EAAE,IAAAC,qBAAc,EAACH,MAAM,GAAGb,KAAK;IACxC,CAAC,CAAC;IAEF,OAAOY,QAAQ;EACjB,CAAC;AACH"}
1
+ {"version":3,"file":"get-serve-logging.js","names":["_getClientIp","require","getServeLogging","logger","request","next","start","performance","now","clientIp","getClientIp","info","type","route","url","method","remote_ip","response","finish","status","latency"],"sources":["../../../../../src/preset/server/utils/get-serve-logging.ts"],"sourcesContent":["import type { Middleware } from '../../../http';\nimport type { Logger } from '../../../log';\nimport { getClientIp } from './get-client-ip';\n\n/**\n * Возвращает новый промежуточный слой для логирования обработки входящего http-запроса.\n * @param logger Logger.\n * @return Промежуточный слой.\n */\nexport function getServeLogging(logger: Logger): Middleware {\n return async (request, next) => {\n const start = performance.now();\n const clientIp = getClientIp(request);\n\n logger.info({\n type: 'http.request[incoming]',\n route: request.url,\n method: request.method,\n remote_ip: clientIp,\n });\n\n const response = await next(request);\n\n const finish = performance.now();\n\n logger.info({\n type: 'http.response[outgoing]',\n route: request.url,\n method: request.method,\n status: response.status,\n remote_ip: clientIp,\n latency: finish - start,\n });\n\n return response;\n };\n}\n"],"mappings":";;;;;;AAEA,IAAAA,YAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACA;AACA;AACO,SAASC,eAAeA,CAACC,MAAc,EAAc;EAC1D,OAAO,OAAOC,OAAO,EAAEC,IAAI,KAAK;IAC9B,MAAMC,KAAK,GAAGC,WAAW,CAACC,GAAG,CAAC,CAAC;IAC/B,MAAMC,QAAQ,GAAG,IAAAC,wBAAW,EAACN,OAAO,CAAC;IAErCD,MAAM,CAACQ,IAAI,CAAC;MACVC,IAAI,EAAE,wBAAwB;MAC9BC,KAAK,EAAET,OAAO,CAACU,GAAG;MAClBC,MAAM,EAAEX,OAAO,CAACW,MAAM;MACtBC,SAAS,EAAEP;IACb,CAAC,CAAC;IAEF,MAAMQ,QAAQ,GAAG,MAAMZ,IAAI,CAACD,OAAO,CAAC;IAEpC,MAAMc,MAAM,GAAGX,WAAW,CAACC,GAAG,CAAC,CAAC;IAEhCL,MAAM,CAACQ,IAAI,CAAC;MACVC,IAAI,EAAE,yBAAyB;MAC/BC,KAAK,EAAET,OAAO,CAACU,GAAG;MAClBC,MAAM,EAAEX,OAAO,CAACW,MAAM;MACtBI,MAAM,EAAEF,QAAQ,CAACE,MAAM;MACvBH,SAAS,EAAEP,QAAQ;MACnBW,OAAO,EAAEF,MAAM,GAAGZ;IACpB,CAAC,CAAC;IAEF,OAAOW,QAAQ;EACjB,CAAC;AACH"}
@@ -1 +1 @@
1
- {"version":3,"file":"axios-middleware.js","names":["_tokens","require","_httpStatus","_axios","provideAxiosMiddleware","resolve","logHandler","KnownToken","Axios","Middleware","Log","handler","HttpStatus","axiosMiddleware","logMiddleware"],"sources":["../../../../../src/preset/web/providers/axios-middleware.ts"],"sourcesContent":["import { Resolve } from '../../../di';\nimport { KnownToken } from '../../../tokens';\nimport { HttpStatus } from '../../isomorphic/utils/http-status';\nimport { logMiddleware } from '../../../utils/axios';\n\n/**\n * Провайдер фабрики http-клиентов.\n * @param resolve Функция для получения зависимости по токену.\n * @return Фабрика.\n */\nexport function provideAxiosMiddleware(resolve: Resolve) {\n const logHandler = resolve(KnownToken.Axios.Middleware.Log.handler);\n\n return [HttpStatus.axiosMiddleware(), logMiddleware(logHandler)];\n}\n"],"mappings":";;;;;;AACA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAEA;AACA;AACA;AACA;AACA;AACO,SAASG,sBAAsBA,CAACC,OAAgB,EAAE;EACvD,MAAMC,UAAU,GAAGD,OAAO,CAACE,kBAAU,CAACC,KAAK,CAACC,UAAU,CAACC,GAAG,CAACC,OAAO,CAAC;EAEnE,OAAO,CAACC,sBAAU,CAACC,eAAe,CAAC,CAAC,EAAE,IAAAC,oBAAa,EAACR,UAAU,CAAC,CAAC;AAClE"}
1
+ {"version":3,"file":"axios-middleware.js","names":["_tokens","require","_httpStatus","_axios","provideAxiosMiddleware","resolve","logHandler","KnownToken","Axios","Middleware","Log","handler","HttpStatus","axiosMiddleware","logMiddleware"],"sources":["../../../../../src/preset/web/providers/axios-middleware.ts"],"sourcesContent":["import type { Middleware } from 'middleware-axios';\nimport type { Resolve } from '../../../di';\nimport { KnownToken } from '../../../tokens';\nimport { HttpStatus } from '../../isomorphic/utils/http-status';\nimport { logMiddleware } from '../../../utils/axios';\n\n/**\n * Провайдер фабрики http-клиентов.\n * @param resolve Функция для получения зависимости по токену.\n * @return Фабрика.\n */\nexport function provideAxiosMiddleware(resolve: Resolve): Middleware<unknown>[] {\n const logHandler = resolve(KnownToken.Axios.Middleware.Log.handler);\n\n return [HttpStatus.axiosMiddleware(), logMiddleware(logHandler)];\n}\n"],"mappings":";;;;;;AAEA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAEA;AACA;AACA;AACA;AACA;AACO,SAASG,sBAAsBA,CAACC,OAAgB,EAAyB;EAC9E,MAAMC,UAAU,GAAGD,OAAO,CAACE,kBAAU,CAACC,KAAK,CAACC,UAAU,CAACC,GAAG,CAACC,OAAO,CAAC;EAEnE,OAAO,CAACC,sBAAU,CAACC,eAAe,CAAC,CAAC,EAAE,IAAAC,oBAAa,EAACR,UAAU,CAAC,CAAC;AAClE"}
@@ -33,7 +33,7 @@ const KnownToken = exports.KnownToken = {
33
33
  },
34
34
  /** Токены компонентов сбора метрик. */
35
35
  Metrics: {
36
- httpApp: (0, _di.createToken)('metrics/http-app'),
36
+ expressApp: (0, _di.createToken)('metrics/express-app'),
37
37
  httpHandler: (0, _di.createToken)('metrics/http-handler')
38
38
  },
39
39
  /** Токены компонентов для работы по HTTP. */
@@ -49,8 +49,6 @@ const KnownToken = exports.KnownToken = {
49
49
  Fetch: {
50
50
  /** Токен AbortController для функции fetch. */
51
51
  abortController: (0, _di.createToken)('fetch/abort-controller'),
52
- /** Токен хранилища cookie. */
53
- cookieStore: (0, _di.createToken)('fetch/cookie-store'),
54
52
  /** Токен списка промежуточных слоев для функции fetch. */
55
53
  middleware: (0, _di.createToken)('fetch/middleware'),
56
54
  /** Токены компонентов промежуточных слоев для функции fetch. */
@@ -67,11 +65,14 @@ const KnownToken = exports.KnownToken = {
67
65
  /** Токены компонентов функции обработки входящего HTTP-запроса. */
68
66
  Serve: {
69
67
  /** Токен списка маршрутов. */
70
- routes: (0, _di.createToken)('serve/routes'),
68
+ pageRoutes: (0, _di.createToken)('serve/page-routes'),
71
69
  /** Токен списка "служебных" маршрутов. К "служебным" маршрутам не применяются промежуточные слои. */
72
70
  serviceRoutes: (0, _di.createToken)('serve/service-routes'),
73
71
  /** Токен списка промежуточных слоев обработки входящего HTTP-запроса. */
74
- middleware: (0, _di.createToken)('serve/middleware')
72
+ middleware: (0, _di.createToken)('serve/middleware'),
73
+ Proxy: {
74
+ config: (0, _di.createToken)('proxy/config')
75
+ }
75
76
  },
76
77
  /** Токены компонентов обработчиков входящих HTTP-запросов. */
77
78
  Handler: {
@@ -125,6 +126,16 @@ const KnownToken = exports.KnownToken = {
125
126
  },
126
127
  /** Токены компонентов для работы с библиотекой express. */
127
128
  Express: {
129
+ /** Токен основного express-приложения. */
130
+ app: (0, _di.createToken)('express/app'),
131
+ /** Токен списка маршрутов страниц. */
132
+ pageRoutes: (0, _di.createToken)('express/page-routes'),
133
+ /** Токен списка служебных маршрутов. */
134
+ serviceRoutes: (0, _di.createToken)('express/service-routes'),
135
+ /** Токен списка промежуточных слоев для публичных маршрутов. */
136
+ middleware: (0, _di.createToken)('express/middleware'),
137
+ /** Токен списка промежуточных слоев для публичных маршрутов, которые подключаются после обработчика. */
138
+ endMiddleware: (0, _di.createToken)('express/end-middleware'),
128
139
  /** Токен фабрики express-приложений. */
129
140
  factory: (0, _di.createToken)('express/factory'),
130
141
  /** Токен express-обработчиков. */
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","names":["_di","require","KnownToken","exports","Config","source","createToken","base","cache","logger","Tracing","tracer","spanExporter","tracerProvider","tracerProviderResource","Metrics","httpApp","httpHandler","Http","Api","knownHosts","fetch","Fetch","abortController","cookieStore","middleware","Middleware","Log","handler","serve","Serve","routes","serviceRoutes","Handler","main","context","Request","acceptType","specificParams","Response","events","specificExtras","Page","render","assets","helmet","elementToString","formatResponse","Axios","factory","Express","Handlers","healthCheck","request","log","tracing","metrics","error","ExpressHandler","Redux","saga","SsrBridge","clientSide","serverSide"],"sources":["../../src/tokens.ts"],"sourcesContent":["import { createToken } from './di';\n\n// ВАЖНО: чтобы токенами можно было пользоваться независимо от среды исполнения - импортировать надо только типы\nimport type * as express from 'express';\nimport type { ConfigSource, BaseConfig } from './config/types';\nimport type { Logger } from './log/types';\nimport type { Cache } from './cache/types';\nimport type { LogMiddlewareHandlerInit } from './utils/axios/middleware/log';\nimport type { SagaMiddleware } from 'redux-saga';\nimport type { BridgeClientSide, BridgeServerSide } from './utils/ssr';\nimport type { Tracer } from '@opentelemetry/api';\nimport type { BasicTracerProvider, SpanExporter } from '@opentelemetry/sdk-trace-base';\nimport type { Resource } from '@opentelemetry/resources';\nimport type { ElementType, ReactNode, JSX } from 'react';\nimport type { KnownHttpApiKey, PageAssets } from './preset/isomorphic/types';\nimport type { ExpressHandlerContext } from './preset/node/types';\nimport type { SpecificExtras } from './preset/server/utils/specific-extras';\nimport type { CreateAxiosDefaults } from 'axios';\nimport type { AxiosInstanceWrapper, Middleware as AxiosMiddleware } from 'middleware-axios';\nimport type { CookieStore, Handler, LogHandler, LogHandlerFactory, Middleware } from './http';\nimport type { HttpApiHostPool } from './preset/isomorphic/utils/http-api-host-pool';\nimport type {\n ServerHandlerContext,\n ServerHandler,\n ServerMiddleware,\n PageResponseFormatter,\n RenderToString,\n} from './preset/server/types';\n\n/**\n * Токены компонентов.\n * Данные токены используются в DI-пресетах, доступных из пакета.\n */\nexport const KnownToken = {\n /** Токены компонентов конфигурации приложения. */\n Config: {\n /** Токен \"источника конфигурации\". */\n source: createToken<ConfigSource>('config/source'),\n\n /** Токен базовой конфигурации. */\n base: createToken<BaseConfig>('config/base'),\n },\n\n /** Токен компонента кеша. */\n cache: createToken<Cache>('cache'),\n\n /** Токен компонента логгера. */\n logger: createToken<Logger>('logger'),\n\n /** Токены компонентов трассировки и телеметрии. */\n Tracing: {\n tracer: createToken<Tracer>('tracing/tracer'),\n spanExporter: createToken<SpanExporter>('tracing/span-exporter'),\n tracerProvider: createToken<BasicTracerProvider>('tracing/tracer-provider'),\n\n // @todo перенести в KnownToken.Telemetry.Resource?\n tracerProviderResource: createToken<Resource>('tracing/resource'),\n },\n\n /** Токены компонентов сбора метрик. */\n Metrics: {\n httpApp: createToken<express.Application>('metrics/http-app'),\n httpHandler: createToken<Handler>('metrics/http-handler'),\n },\n\n /** Токены компонентов для работы по HTTP. */\n Http: {\n /** Токены компонентов API. */\n Api: {\n /** Токен пула хостов известных HTTP API. */\n knownHosts: createToken<HttpApiHostPool<KnownHttpApiKey>>('http/api/known-hosts'),\n },\n\n /** Токен функции fetch. */\n fetch: createToken<typeof fetch>('fetch'),\n\n /** Токены компонентов формирующих работу функции fetch. */\n Fetch: {\n /** Токен AbortController для функции fetch. */\n abortController: createToken<AbortController>('fetch/abort-controller'),\n\n /** Токен хранилища cookie. */\n cookieStore: createToken<CookieStore>('fetch/cookie-store'),\n\n /** Токен списка промежуточных слоев для функции fetch. */\n middleware: createToken<Middleware[]>('fetch/middleware'),\n\n /** Токены компонентов промежуточных слоев для функции fetch. */\n Middleware: {\n /** Токены компонентов промежуточного слоя логирования. */\n Log: {\n /** Токены обработчика логирования работы функции fetch. */\n handler: createToken<LogHandler | LogHandlerFactory>('fetch/middleware/log/handler'),\n },\n },\n },\n\n /** Токен функции обработки входящего HTTP-запроса. */\n serve: createToken<Handler>('serve'),\n\n /** Токены компонентов функции обработки входящего HTTP-запроса. */\n Serve: {\n /** Токен списка маршрутов. */\n routes: createToken<Array<[string, ServerHandler]>>('serve/routes'),\n\n /** Токен списка \"служебных\" маршрутов. К \"служебным\" маршрутам не применяются промежуточные слои. */\n serviceRoutes: createToken<Array<[string, ServerHandler]>>('serve/service-routes'),\n\n /** Токен списка промежуточных слоев обработки входящего HTTP-запроса. */\n middleware: createToken<ServerMiddleware[]>('serve/middleware'),\n },\n\n /** Токены компонентов обработчиков входящих HTTP-запросов. */\n Handler: {\n /** Токен главной функции (точки входа) обработчика. */\n main: createToken<ServerHandler>('handler/main'),\n\n /** Токен \"контекста\" обработчика. Контекст содержит объект запроса а также реализует EventTarget. */\n context: createToken<ServerHandlerContext & { request: Request }>('handler/context'),\n\n /** Токен компонентов входящего запроса. */\n Request: {\n /** Токен функции которая определяет возможные типы ответа и их приоритет. */\n acceptType: createToken<(types: string[]) => string | string[] | false>('handler/accepts'),\n\n /** Токен \"специфичных\" параметров запроса. В зависимости от реализации определит параметры на основе объекта запроса. */\n specificParams: createToken<Record<string, unknown>>('request/specific-params'),\n },\n\n /** Токены компонентов исходящего ответа. */\n Response: {\n /** Токен объекта для подписки на события и вызова событий ответа. */\n events: createToken<EventTarget>('response/events'),\n\n /** Токен \"специфичных\" дополнительных данных. В зависимости от реализации сформирует дополнительные данные ответа. */\n specificExtras: createToken<SpecificExtras>('response/specific-extras'),\n },\n\n /** Токены компонентов HTML-документа, формируемого в рамках обработчика. */\n Page: {\n /** Токен рендер-функции. */\n render: createToken<() => JSX.Element | Promise<JSX.Element>>('page/render'),\n\n /** Токен ассетов HTML-документа. */\n assets: createToken<PageAssets | (() => PageAssets | Promise<PageAssets>)>('page/assets'),\n\n /** Токен \"шлема\". Шлем - UI-компонент, внутри которого будет выведен результат render-функции. */\n helmet: createToken<ElementType<{ children: ReactNode }>>('page/helmet'),\n\n /** Токен функции, получающей jsx и возвращающей строку. */\n elementToString: createToken<RenderToString>('page/element-to-string'),\n\n /** Токен функции, которая вернёт данные для ответа. */\n formatResponse: createToken<PageResponseFormatter>('page/format-response'),\n },\n },\n },\n\n /** Токены компонентов для работы с библиотекой axios. */\n Axios: {\n /** Токен фабрики экземпляров axios. Фабрика вернет расширенный экземпляр с возможностью применять промежуточные слои. */\n factory: createToken<(config?: CreateAxiosDefaults) => AxiosInstanceWrapper>('axios/factory'),\n\n /** Токен промежуточных слоев. */\n middleware: createToken<AxiosMiddleware<any>[]>('axios/middleware'),\n\n /** Токен компонентов промежуточных слоев. */\n Middleware: {\n /** Токен компонентов слоя логирования. */\n Log: {\n /** Токен обработчика логирования. */\n handler: createToken<LogMiddlewareHandlerInit>('axios/middleware/log/handler'),\n },\n },\n },\n\n /** Токены компонентов для работы с библиотекой express. */\n Express: {\n /** Токен фабрики express-приложений. */\n factory: createToken<() => express.Application>('express/factory'),\n\n /** Токен express-обработчиков. */\n Handlers: {\n /** Токен обработчика \"health check\". */\n healthCheck: createToken<express.Handler>('express/handler/health-check'),\n },\n\n /** Токены промежуточных слоев express-приложения. */\n Middleware: {\n request: createToken<express.Handler>('express/middleware/request'),\n log: createToken<express.Handler>('express/middleware/log'),\n tracing: createToken<express.Handler>('express/middleware/tracing'),\n metrics: createToken<express.Handler>('express/middleware/metrics'),\n error: createToken<express.ErrorRequestHandler>('express/middleware/error'),\n },\n },\n\n /** Токены компонентов express-обработчика. */\n ExpressHandler: {\n /** Токен главной функции (точки входа) обработчика. */\n main: createToken<express.Handler>('express-handler/main'),\n\n /** Токен \"контекста\" обработчика. Контекст содержит все аргументы, доступные обработчику (req, res, next). */\n context: createToken<ExpressHandlerContext>('express-handler/context'),\n },\n\n /** Токены компонентов для работы с библиотекой redux. */\n Redux: {\n /** Токены компонентов промежуточных слоев. */\n Middleware: {\n /** Токен промежуточного слоя redux-saga. */\n saga: createToken<SagaMiddleware>('saga-middleware'),\n },\n },\n\n /** Токены компонентов передачи данных страницы между клиентом и сервером. */\n SsrBridge: {\n /** Токены компонента \"клиентской стороны\". */\n clientSide: createToken<BridgeClientSide<unknown>>('ssr-bridge/client-side'),\n\n /** Токены компонента \"серверной стороны\". */\n serverSide: createToken<BridgeServerSide>('ssr-bridge/server-side'),\n },\n} as const;\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AAEA;;AA2BA;AACA;AACA;AACA;AACO,MAAMC,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAG;EACxB;EACAE,MAAM,EAAE;IACN;IACAC,MAAM,EAAE,IAAAC,eAAW,EAAe,eAAe,CAAC;IAElD;IACAC,IAAI,EAAE,IAAAD,eAAW,EAAa,aAAa;EAC7C,CAAC;EAED;EACAE,KAAK,EAAE,IAAAF,eAAW,EAAQ,OAAO,CAAC;EAElC;EACAG,MAAM,EAAE,IAAAH,eAAW,EAAS,QAAQ,CAAC;EAErC;EACAI,OAAO,EAAE;IACPC,MAAM,EAAE,IAAAL,eAAW,EAAS,gBAAgB,CAAC;IAC7CM,YAAY,EAAE,IAAAN,eAAW,EAAe,uBAAuB,CAAC;IAChEO,cAAc,EAAE,IAAAP,eAAW,EAAsB,yBAAyB,CAAC;IAE3E;IACAQ,sBAAsB,EAAE,IAAAR,eAAW,EAAW,kBAAkB;EAClE,CAAC;EAED;EACAS,OAAO,EAAE;IACPC,OAAO,EAAE,IAAAV,eAAW,EAAsB,kBAAkB,CAAC;IAC7DW,WAAW,EAAE,IAAAX,eAAW,EAAU,sBAAsB;EAC1D,CAAC;EAED;EACAY,IAAI,EAAE;IACJ;IACAC,GAAG,EAAE;MACH;MACAC,UAAU,EAAE,IAAAd,eAAW,EAAmC,sBAAsB;IAClF,CAAC;IAED;IACAe,KAAK,EAAE,IAAAf,eAAW,EAAe,OAAO,CAAC;IAEzC;IACAgB,KAAK,EAAE;MACL;MACAC,eAAe,EAAE,IAAAjB,eAAW,EAAkB,wBAAwB,CAAC;MAEvE;MACAkB,WAAW,EAAE,IAAAlB,eAAW,EAAc,oBAAoB,CAAC;MAE3D;MACAmB,UAAU,EAAE,IAAAnB,eAAW,EAAe,kBAAkB,CAAC;MAEzD;MACAoB,UAAU,EAAE;QACV;QACAC,GAAG,EAAE;UACH;UACAC,OAAO,EAAE,IAAAtB,eAAW,EAAiC,8BAA8B;QACrF;MACF;IACF,CAAC;IAED;IACAuB,KAAK,EAAE,IAAAvB,eAAW,EAAU,OAAO,CAAC;IAEpC;IACAwB,KAAK,EAAE;MACL;MACAC,MAAM,EAAE,IAAAzB,eAAW,EAAiC,cAAc,CAAC;MAEnE;MACA0B,aAAa,EAAE,IAAA1B,eAAW,EAAiC,sBAAsB,CAAC;MAElF;MACAmB,UAAU,EAAE,IAAAnB,eAAW,EAAqB,kBAAkB;IAChE,CAAC;IAED;IACA2B,OAAO,EAAE;MACP;MACAC,IAAI,EAAE,IAAA5B,eAAW,EAAgB,cAAc,CAAC;MAEhD;MACA6B,OAAO,EAAE,IAAA7B,eAAW,EAA8C,iBAAiB,CAAC;MAEpF;MACA8B,OAAO,EAAE;QACP;QACAC,UAAU,EAAE,IAAA/B,eAAW,EAAiD,iBAAiB,CAAC;QAE1F;QACAgC,cAAc,EAAE,IAAAhC,eAAW,EAA0B,yBAAyB;MAChF,CAAC;MAED;MACAiC,QAAQ,EAAE;QACR;QACAC,MAAM,EAAE,IAAAlC,eAAW,EAAc,iBAAiB,CAAC;QAEnD;QACAmC,cAAc,EAAE,IAAAnC,eAAW,EAAiB,0BAA0B;MACxE,CAAC;MAED;MACAoC,IAAI,EAAE;QACJ;QACAC,MAAM,EAAE,IAAArC,eAAW,EAA2C,aAAa,CAAC;QAE5E;QACAsC,MAAM,EAAE,IAAAtC,eAAW,EAAwD,aAAa,CAAC;QAEzF;QACAuC,MAAM,EAAE,IAAAvC,eAAW,EAAuC,aAAa,CAAC;QAExE;QACAwC,eAAe,EAAE,IAAAxC,eAAW,EAAiB,wBAAwB,CAAC;QAEtE;QACAyC,cAAc,EAAE,IAAAzC,eAAW,EAAwB,sBAAsB;MAC3E;IACF;EACF,CAAC;EAED;EACA0C,KAAK,EAAE;IACL;IACAC,OAAO,EAAE,IAAA3C,eAAW,EAAyD,eAAe,CAAC;IAE7F;IACAmB,UAAU,EAAE,IAAAnB,eAAW,EAAyB,kBAAkB,CAAC;IAEnE;IACAoB,UAAU,EAAE;MACV;MACAC,GAAG,EAAE;QACH;QACAC,OAAO,EAAE,IAAAtB,eAAW,EAA2B,8BAA8B;MAC/E;IACF;EACF,CAAC;EAED;EACA4C,OAAO,EAAE;IACP;IACAD,OAAO,EAAE,IAAA3C,eAAW,EAA4B,iBAAiB,CAAC;IAElE;IACA6C,QAAQ,EAAE;MACR;MACAC,WAAW,EAAE,IAAA9C,eAAW,EAAkB,8BAA8B;IAC1E,CAAC;IAED;IACAoB,UAAU,EAAE;MACV2B,OAAO,EAAE,IAAA/C,eAAW,EAAkB,4BAA4B,CAAC;MACnEgD,GAAG,EAAE,IAAAhD,eAAW,EAAkB,wBAAwB,CAAC;MAC3DiD,OAAO,EAAE,IAAAjD,eAAW,EAAkB,4BAA4B,CAAC;MACnEkD,OAAO,EAAE,IAAAlD,eAAW,EAAkB,4BAA4B,CAAC;MACnEmD,KAAK,EAAE,IAAAnD,eAAW,EAA8B,0BAA0B;IAC5E;EACF,CAAC;EAED;EACAoD,cAAc,EAAE;IACd;IACAxB,IAAI,EAAE,IAAA5B,eAAW,EAAkB,sBAAsB,CAAC;IAE1D;IACA6B,OAAO,EAAE,IAAA7B,eAAW,EAAwB,yBAAyB;EACvE,CAAC;EAED;EACAqD,KAAK,EAAE;IACL;IACAjC,UAAU,EAAE;MACV;MACAkC,IAAI,EAAE,IAAAtD,eAAW,EAAiB,iBAAiB;IACrD;EACF,CAAC;EAED;EACAuD,SAAS,EAAE;IACT;IACAC,UAAU,EAAE,IAAAxD,eAAW,EAA4B,wBAAwB,CAAC;IAE5E;IACAyD,UAAU,EAAE,IAAAzD,eAAW,EAAmB,wBAAwB;EACpE;AACF,CAAU"}
1
+ {"version":3,"file":"tokens.js","names":["_di","require","KnownToken","exports","Config","source","createToken","base","cache","logger","Tracing","tracer","spanExporter","tracerProvider","tracerProviderResource","Metrics","expressApp","httpHandler","Http","Api","knownHosts","fetch","Fetch","abortController","middleware","Middleware","Log","handler","serve","Serve","pageRoutes","serviceRoutes","Proxy","config","Handler","main","context","Request","acceptType","specificParams","Response","events","specificExtras","Page","render","assets","helmet","elementToString","formatResponse","Axios","factory","Express","app","endMiddleware","Handlers","healthCheck","request","log","tracing","metrics","error","ExpressHandler","Redux","saga","SsrBridge","clientSide","serverSide"],"sources":["../../src/tokens.ts"],"sourcesContent":["import { createToken } from './di';\n\n// ВАЖНО: чтобы токенами можно было пользоваться независимо от среды исполнения - импортировать надо только типы\nimport type * as express from 'express';\nimport type { ConfigSource, BaseConfig } from './config/types';\nimport type { Logger } from './log/types';\nimport type { Cache } from './cache/types';\nimport type { LogMiddlewareHandlerInit } from './utils/axios/middleware/log';\nimport type { SagaMiddleware } from 'redux-saga';\nimport type { BridgeClientSide, BridgeServerSide } from './utils/ssr';\nimport type { Tracer } from '@opentelemetry/api';\nimport type { BasicTracerProvider, SpanExporter } from '@opentelemetry/sdk-trace-base';\nimport type { Resource } from '@opentelemetry/resources';\nimport type { ElementType, ReactNode, JSX } from 'react';\nimport type { KnownHttpApiKey, PageAssets } from './preset/isomorphic/types';\nimport type { ExpressHandlerContext, ExpressRouteList } from './preset/node/types';\nimport type { SpecificExtras } from './preset/server/utils/specific-extras';\nimport type { CreateAxiosDefaults } from 'axios';\nimport type { AxiosInstanceWrapper, Middleware as AxiosMiddleware } from 'middleware-axios';\nimport type { Handler, LogHandler, LogHandlerFactory, Middleware, ProxyOptions } from './http';\nimport type { HttpApiHostPool } from './preset/isomorphic/utils/http-api-host-pool';\nimport type {\n ServerHandlerContext,\n ServerHandler,\n ServerMiddleware,\n PageResponseFormatter,\n RenderToString,\n RouteList,\n} from './preset/server/types';\n\n/**\n * Токены компонентов.\n * Данные токены используются в DI-пресетах, доступных из пакета.\n */\nexport const KnownToken = {\n /** Токены компонентов конфигурации приложения. */\n Config: {\n /** Токен \"источника конфигурации\". */\n source: createToken<ConfigSource>('config/source'),\n\n /** Токен базовой конфигурации. */\n base: createToken<BaseConfig>('config/base'),\n },\n\n /** Токен компонента кеша. */\n cache: createToken<Cache>('cache'),\n\n /** Токен компонента логгера. */\n logger: createToken<Logger>('logger'),\n\n /** Токены компонентов трассировки и телеметрии. */\n Tracing: {\n tracer: createToken<Tracer>('tracing/tracer'),\n spanExporter: createToken<SpanExporter>('tracing/span-exporter'),\n tracerProvider: createToken<BasicTracerProvider>('tracing/tracer-provider'),\n\n // @todo перенести в KnownToken.Telemetry.Resource?\n tracerProviderResource: createToken<Resource>('tracing/resource'),\n },\n\n /** Токены компонентов сбора метрик. */\n Metrics: {\n expressApp: createToken<express.Application>('metrics/express-app'),\n httpHandler: createToken<Handler>('metrics/http-handler'),\n },\n\n /** Токены компонентов для работы по HTTP. */\n Http: {\n /** Токены компонентов API. */\n Api: {\n /** Токен пула хостов известных HTTP API. */\n knownHosts: createToken<HttpApiHostPool<KnownHttpApiKey>>('http/api/known-hosts'),\n },\n\n /** Токен функции fetch. */\n fetch: createToken<typeof fetch>('fetch'),\n\n /** Токены компонентов формирующих работу функции fetch. */\n Fetch: {\n /** Токен AbortController для функции fetch. */\n abortController: createToken<AbortController>('fetch/abort-controller'),\n\n /** Токен списка промежуточных слоев для функции fetch. */\n middleware: createToken<Middleware[]>('fetch/middleware'),\n\n /** Токены компонентов промежуточных слоев для функции fetch. */\n Middleware: {\n /** Токены компонентов промежуточного слоя логирования. */\n Log: {\n /** Токены обработчика логирования работы функции fetch. */\n handler: createToken<LogHandler | LogHandlerFactory>('fetch/middleware/log/handler'),\n },\n },\n },\n\n /** Токен функции обработки входящего HTTP-запроса. */\n serve: createToken<Handler>('serve'),\n\n /** Токены компонентов функции обработки входящего HTTP-запроса. */\n Serve: {\n /** Токен списка маршрутов. */\n pageRoutes: createToken<RouteList>('serve/page-routes'),\n\n /** Токен списка \"служебных\" маршрутов. К \"служебным\" маршрутам не применяются промежуточные слои. */\n serviceRoutes: createToken<RouteList>('serve/service-routes'),\n\n /** Токен списка промежуточных слоев обработки входящего HTTP-запроса. */\n middleware: createToken<ServerMiddleware[]>('serve/middleware'),\n\n Proxy: {\n config: createToken<null | undefined | ProxyOptions | ProxyOptions[]>('proxy/config'),\n },\n },\n\n /** Токены компонентов обработчиков входящих HTTP-запросов. */\n Handler: {\n /** Токен главной функции (точки входа) обработчика. */\n main: createToken<ServerHandler>('handler/main'),\n\n /** Токен \"контекста\" обработчика. Контекст содержит объект запроса а также реализует EventTarget. */\n context: createToken<ServerHandlerContext & { request: Request }>('handler/context'),\n\n /** Токен компонентов входящего запроса. */\n Request: {\n /** Токен функции которая определяет возможные типы ответа и их приоритет. */\n acceptType: createToken<(types: string[]) => string | string[] | false>('handler/accepts'),\n\n /** Токен \"специфичных\" параметров запроса. В зависимости от реализации определит параметры на основе объекта запроса. */\n specificParams: createToken<Record<string, unknown>>('request/specific-params'),\n },\n\n /** Токены компонентов исходящего ответа. */\n Response: {\n /** Токен объекта для подписки на события и вызова событий ответа. */\n events: createToken<EventTarget>('response/events'),\n\n /** Токен \"специфичных\" дополнительных данных. В зависимости от реализации сформирует дополнительные данные ответа. */\n specificExtras: createToken<SpecificExtras>('response/specific-extras'),\n },\n\n /** Токены компонентов HTML-документа, формируемого в рамках обработчика. */\n Page: {\n /** Токен рендер-функции. */\n render: createToken<() => JSX.Element | Promise<JSX.Element>>('page/render'),\n\n /** Токен ассетов HTML-документа. */\n assets: createToken<PageAssets | (() => PageAssets | Promise<PageAssets>)>('page/assets'),\n\n /** Токен \"шлема\". Шлем - UI-компонент, внутри которого будет выведен результат render-функции. */\n helmet: createToken<ElementType<{ children: ReactNode }>>('page/helmet'),\n\n /** Токен функции, получающей jsx и возвращающей строку. */\n elementToString: createToken<RenderToString>('page/element-to-string'),\n\n /** Токен функции, которая вернёт данные для ответа. */\n formatResponse: createToken<PageResponseFormatter>('page/format-response'),\n },\n },\n },\n\n /** Токены компонентов для работы с библиотекой axios. */\n Axios: {\n /** Токен фабрики экземпляров axios. Фабрика вернет расширенный экземпляр с возможностью применять промежуточные слои. */\n factory: createToken<(config?: CreateAxiosDefaults) => AxiosInstanceWrapper>('axios/factory'),\n\n /** Токен промежуточных слоев. */\n middleware: createToken<AxiosMiddleware<any>[]>('axios/middleware'),\n\n /** Токен компонентов промежуточных слоев. */\n Middleware: {\n /** Токен компонентов слоя логирования. */\n Log: {\n /** Токен обработчика логирования. */\n handler: createToken<LogMiddlewareHandlerInit>('axios/middleware/log/handler'),\n },\n },\n },\n\n /** Токены компонентов для работы с библиотекой express. */\n Express: {\n /** Токен основного express-приложения. */\n app: createToken<express.Application>('express/app'),\n\n /** Токен списка маршрутов страниц. */\n pageRoutes: createToken<ExpressRouteList>('express/page-routes'),\n\n /** Токен списка служебных маршрутов. */\n serviceRoutes: createToken<ExpressRouteList>('express/service-routes'),\n\n /** Токен списка промежуточных слоев для публичных маршрутов. */\n middleware:\n createToken<Array<express.Handler | express.ErrorRequestHandler>>('express/middleware'),\n\n /** Токен списка промежуточных слоев для публичных маршрутов, которые подключаются после обработчика. */\n endMiddleware:\n createToken<Array<express.Handler | express.ErrorRequestHandler>>('express/end-middleware'),\n\n /** Токен фабрики express-приложений. */\n factory: createToken<() => express.Application>('express/factory'),\n\n /** Токен express-обработчиков. */\n Handlers: {\n /** Токен обработчика \"health check\". */\n healthCheck: createToken<express.Handler>('express/handler/health-check'),\n },\n\n /** Токены промежуточных слоев express-приложения. */\n Middleware: {\n request: createToken<express.Handler>('express/middleware/request'),\n log: createToken<express.Handler>('express/middleware/log'),\n tracing: createToken<express.Handler>('express/middleware/tracing'),\n metrics: createToken<express.Handler>('express/middleware/metrics'),\n error: createToken<express.ErrorRequestHandler>('express/middleware/error'),\n },\n },\n\n /** Токены компонентов express-обработчика. */\n ExpressHandler: {\n /** Токен главной функции (точки входа) обработчика. */\n main: createToken<express.Handler>('express-handler/main'),\n\n /** Токен \"контекста\" обработчика. Контекст содержит все аргументы, доступные обработчику (req, res, next). */\n context: createToken<ExpressHandlerContext>('express-handler/context'),\n },\n\n /** Токены компонентов для работы с библиотекой redux. */\n Redux: {\n /** Токены компонентов промежуточных слоев. */\n Middleware: {\n /** Токен промежуточного слоя redux-saga. */\n saga: createToken<SagaMiddleware>('saga-middleware'),\n },\n },\n\n /** Токены компонентов передачи данных страницы между клиентом и сервером. */\n SsrBridge: {\n /** Токены компонента \"клиентской стороны\". */\n clientSide: createToken<BridgeClientSide<unknown>>('ssr-bridge/client-side'),\n\n /** Токены компонента \"серверной стороны\". */\n serverSide: createToken<BridgeServerSide>('ssr-bridge/server-side'),\n },\n} as const;\n"],"mappings":"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"}
@@ -9,12 +9,6 @@ Object.defineProperty(exports, "applyAxiosDefaults", {
9
9
  return _utils.applyAxiosDefaults;
10
10
  }
11
11
  });
12
- Object.defineProperty(exports, "cookieMiddleware", {
13
- enumerable: true,
14
- get: function () {
15
- return _cookie.cookieMiddleware;
16
- }
17
- });
18
12
  Object.defineProperty(exports, "formatResultInfo", {
19
13
  enumerable: true,
20
14
  get: function () {
@@ -36,5 +30,4 @@ Object.defineProperty(exports, "sauce", {
36
30
  var _sauce = require("./sauce");
37
31
  var _utils = require("./utils");
38
32
  var _log = require("./middleware/log");
39
- var _cookie = require("./middleware/cookie");
40
33
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_sauce","require","_utils","_log","_cookie"],"sources":["../../../../src/utils/axios/index.ts"],"sourcesContent":["export { type Sauce, type SauceResponse, sauce, formatResultInfo } from './sauce';\nexport { applyAxiosDefaults } from './utils';\nexport {\n type SharedData,\n type DoneSharedData,\n type FailSharedData,\n type LogMiddlewareHandler,\n type LogMiddlewareHandlerFactory,\n type LogMiddlewareHandlerInit,\n logMiddleware,\n} from './middleware/log';\nexport { cookieMiddleware } from './middleware/cookie';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,IAAA,GAAAF,OAAA;AASA,IAAAG,OAAA,GAAAH,OAAA"}
1
+ {"version":3,"file":"index.js","names":["_sauce","require","_utils","_log"],"sources":["../../../../src/utils/axios/index.ts"],"sourcesContent":["export { type Sauce, type SauceResponse, sauce, formatResultInfo } from './sauce';\nexport { applyAxiosDefaults } from './utils';\nexport {\n type SharedData,\n type DoneSharedData,\n type FailSharedData,\n type LogMiddlewareHandler,\n type LogMiddlewareHandlerFactory,\n type LogMiddlewareHandlerInit,\n logMiddleware,\n} from './middleware/log';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,IAAA,GAAAF,OAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"health-check.js","names":["healthCheck","startTime","Date","now","req","res","json","uptime"],"sources":["../../../../../src/utils/express/handler/health-check.ts"],"sourcesContent":["import type { Handler } from 'express';\n\n/**\n * Возвращает обработчик, отвечающий данными о времени работы приложения.\n * @return Обработчик http-запроса.\n */\nexport function healthCheck(): Handler {\n const startTime = Date.now();\n\n return (req, res) => {\n res.json({ uptime: Date.now() - startTime });\n };\n}\n"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACO,SAASA,WAAWA,CAAA,EAAY;EACrC,MAAMC,SAAS,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;EAE5B,OAAO,CAACC,GAAG,EAAEC,GAAG,KAAK;IACnBA,GAAG,CAACC,IAAI,CAAC;MAAEC,MAAM,EAAEL,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGF;IAAU,CAAC,CAAC;EAC9C,CAAC;AACH"}
1
+ {"version":3,"file":"health-check.js","names":["healthCheck","startTime","Date","now","req","res","json","uptime"],"sources":["../../../../../src/utils/express/handler/health-check.ts"],"sourcesContent":["import type express from 'express';\n\n/**\n * Возвращает обработчик, отвечающий данными о времени работы приложения.\n * @return Обработчик http-запроса.\n */\nexport function healthCheck(): express.Handler {\n const startTime = Date.now();\n\n return (req, res) => {\n res.json({ uptime: Date.now() - startTime });\n };\n}\n"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACO,SAASA,WAAWA,CAAA,EAAoB;EAC7C,MAAMC,SAAS,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;EAE5B,OAAO,CAACC,GAAG,EAAEC,GAAG,KAAK;IACnBA,GAAG,CAACC,IAAI,CAAC;MAAEC,MAAM,EAAEL,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGF;IAAU,CAAC,CAAC;EAC9C,CAAC;AACH"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["composeMiddleware","list","reduce","a","b","req","res","next","err"],"sources":["../../../../../src/utils/express/utils/index.ts"],"sourcesContent":["import type { Handler } from 'express';\n\n/**\n * Объединяет промежуточные слои в один.\n * @param list Промежуточные слои.\n * @return Промежуточный слой.\n */\nexport function composeMiddleware(list: Handler[]): Handler {\n return list.reduce((a, b) => (req, res, next) => {\n a(req, res, err => {\n if (err) {\n return next(err);\n }\n\n b(req, res, next);\n });\n });\n}\n"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACA;AACO,SAASA,iBAAiBA,CAACC,IAAe,EAAW;EAC1D,OAAOA,IAAI,CAACC,MAAM,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAK,CAACC,GAAG,EAAEC,GAAG,EAAEC,IAAI,KAAK;IAC/CJ,CAAC,CAACE,GAAG,EAAEC,GAAG,EAAEE,GAAG,IAAI;MACjB,IAAIA,GAAG,EAAE;QACP,OAAOD,IAAI,CAACC,GAAG,CAAC;MAClB;MAEAJ,CAAC,CAACC,GAAG,EAAEC,GAAG,EAAEC,IAAI,CAAC;IACnB,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ"}
1
+ {"version":3,"file":"index.js","names":["composeMiddleware","list","reduce","a","b","req","res","next","err"],"sources":["../../../../../src/utils/express/utils/index.ts"],"sourcesContent":["import type express from 'express';\n\n/**\n * Объединяет промежуточные слои в один.\n * @param list Промежуточные слои.\n * @return Промежуточный слой.\n */\nexport function composeMiddleware(list: express.Handler[]): express.Handler {\n return list.reduce((a, b) => (req, res, next) => {\n a(req, res, err => {\n if (err) {\n return next(err);\n }\n\n b(req, res, next);\n });\n });\n}\n"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACA;AACO,SAASA,iBAAiBA,CAACC,IAAuB,EAAmB;EAC1E,OAAOA,IAAI,CAACC,MAAM,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAK,CAACC,GAAG,EAAEC,GAAG,EAAEC,IAAI,KAAK;IAC/CJ,CAAC,CAACE,GAAG,EAAEC,GAAG,EAAEE,GAAG,IAAI;MACjB,IAAIA,GAAG,EAAE;QACP,OAAOD,IAAI,CAACC,GAAG,CAAC;MAClB;MAEAJ,CAAC,CAACC,GAAG,EAAEC,GAAG,EAAEC,IAAI,CAAC;IACnB,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ"}
@@ -1,3 +1,4 @@
1
+ // @ts-expect-error: https://github.com/humanwhocodes/env/issues/133 (@todo разобраться и убрать)
1
2
  import { Env } from '@humanwhocodes/env';
2
3
  /**
3
4
  * Возвращает новый источник конфигурации.
@@ -1 +1 @@
1
- {"version":3,"file":"source.js","names":["Env","createConfigSource","dictionary","source","Object","assign","__ISOMORPH_ENV__"],"sources":["../../../src/config/source.ts"],"sourcesContent":["import type { ConfigSource, Dictionary } from './types';\nimport { Env } from '@humanwhocodes/env';\n\ndeclare const __ISOMORPH_ENV__: unknown;\n\n/**\n * Возвращает новый источник конфигурации.\n * @param dictionary Опции.\n * @return Источник.\n */\nexport function createConfigSource(dictionary: Dictionary): ConfigSource {\n const source: Dictionary = {};\n\n // берем все переменные из предоставленной среды\n Object.assign(source, dictionary);\n\n // докидываем зашиваемые переменные окружения\n if (typeof __ISOMORPH_ENV__ !== 'undefined') {\n Object.assign(source, __ISOMORPH_ENV__);\n }\n\n return new Env(source);\n}\n"],"mappings":"AACA,SAASA,GAAG,QAAQ,oBAAoB;AAIxC;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAACC,UAAsB,EAAgB;EACvE,MAAMC,MAAkB,GAAG,CAAC,CAAC;;EAE7B;EACAC,MAAM,CAACC,MAAM,CAACF,MAAM,EAAED,UAAU,CAAC;;EAEjC;EACA,IAAI,OAAOI,gBAAgB,KAAK,WAAW,EAAE;IAC3CF,MAAM,CAACC,MAAM,CAACF,MAAM,EAAEG,gBAAgB,CAAC;EACzC;EAEA,OAAO,IAAIN,GAAG,CAACG,MAAM,CAAC;AACxB"}
1
+ {"version":3,"file":"source.js","names":["Env","createConfigSource","dictionary","source","Object","assign","__ISOMORPH_ENV__"],"sources":["../../../src/config/source.ts"],"sourcesContent":["import type { ConfigSource, Dictionary } from './types';\n\n// @ts-expect-error: https://github.com/humanwhocodes/env/issues/133 (@todo разобраться и убрать)\nimport { Env } from '@humanwhocodes/env';\n\ndeclare const __ISOMORPH_ENV__: unknown;\n\n/**\n * Возвращает новый источник конфигурации.\n * @param dictionary Опции.\n * @return Источник.\n */\nexport function createConfigSource(dictionary: Dictionary): ConfigSource {\n const source: Dictionary = {};\n\n // берем все переменные из предоставленной среды\n Object.assign(source, dictionary);\n\n // докидываем зашиваемые переменные окружения\n if (typeof __ISOMORPH_ENV__ !== 'undefined') {\n Object.assign(source, __ISOMORPH_ENV__);\n }\n\n return new Env(source);\n}\n"],"mappings":"AAEA;AACA,SAASA,GAAG,QAAQ,oBAAoB;AAIxC;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAACC,UAAsB,EAAgB;EACvE,MAAMC,MAAkB,GAAG,CAAC,CAAC;;EAE7B;EACAC,MAAM,CAACC,MAAM,CAACF,MAAM,EAAED,UAAU,CAAC;;EAEjC;EACA,IAAI,OAAOI,gBAAgB,KAAK,WAAW,EAAE;IAC3CF,MAAM,CAACC,MAAM,CAACF,MAAM,EAAEG,gBAAgB,CAAC;EACzC;EAEA,OAAO,IAAIN,GAAG,CAACG,MAAM,CAAC;AACxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../src/config/types.ts"],"sourcesContent":["import type { Env } from '@humanwhocodes/env';\n\n/** Источник конфигурации. */\nexport type ConfigSource = Env;\n\n/**\n * Базовая информация о приложении, необходимая в большинстве мест.\n */\nexport interface BaseConfig {\n /** Строка, характеризующая среду выполнения, например \"production\". */\n env: string;\n\n /** Имя приложения. */\n appName: string;\n\n /** Версия приложения. */\n appVersion: string;\n}\n\n/**\n * Словарь.\n */\nexport interface Dictionary {\n readonly [key: string]: string | undefined;\n}\n"],"mappings":""}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../src/config/types.ts"],"sourcesContent":["// @ts-expect-error: https://github.com/humanwhocodes/env/issues/133 (@todo разобраться и убрать)\nimport type { Env } from '@humanwhocodes/env';\n\n/** Источник конфигурации. */\nexport type ConfigSource = Env;\n\n/**\n * Базовая информация о приложении, необходимая в большинстве мест.\n */\nexport interface BaseConfig {\n /** Строка, характеризующая среду выполнения, например \"production\". */\n env: string;\n\n /** Имя приложения. */\n appName: string;\n\n /** Версия приложения. */\n appVersion: string;\n}\n\n/**\n * Словарь.\n */\nexport interface Dictionary {\n readonly [key: string]: string | undefined;\n}\n"],"mappings":""}
@@ -1,5 +1,5 @@
1
- export { configureFetch, applyMiddleware, createCookieStore } from '@krutoo/fetch-tools';
2
- export { log, cookie, defaultHeaders, validateStatus } from '@krutoo/fetch-tools/middleware';
1
+ export { configureFetch, applyMiddleware } from '@krutoo/fetch-tools';
2
+ export { log, proxy, defaultHeaders, validateStatus } from '@krutoo/fetch-tools/middleware';
3
3
  export { StatusError, ResponseError } from "./errors.js";
4
4
  export { FetchUtil } from "./utils.js";
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["configureFetch","applyMiddleware","createCookieStore","log","cookie","defaultHeaders","validateStatus","StatusError","ResponseError","FetchUtil"],"sources":["../../../src/http/index.ts"],"sourcesContent":["export type {\n Handler,\n Enhancer,\n Middleware,\n LogData,\n DoneLogData,\n FailLogData,\n LogHandler,\n LogHandlerFactory,\n CookieStore,\n EitherResponse,\n ResponseDone,\n ResponseFail,\n ResponseErrorInit,\n} from './types';\nexport { configureFetch, applyMiddleware, createCookieStore } from '@krutoo/fetch-tools';\nexport { log, cookie, defaultHeaders, validateStatus } from '@krutoo/fetch-tools/middleware';\nexport { StatusError, ResponseError } from './errors';\nexport { FetchUtil } from './utils';\n"],"mappings":"AAeA,SAASA,cAAc,EAAEC,eAAe,EAAEC,iBAAiB,QAAQ,qBAAqB;AACxF,SAASC,GAAG,EAAEC,MAAM,EAAEC,cAAc,EAAEC,cAAc,QAAQ,gCAAgC;AAC5F,SAASC,WAAW,EAAEC,aAAa,QAAQ,aAAU;AACrD,SAASC,SAAS,QAAQ,YAAS"}
1
+ {"version":3,"file":"index.js","names":["configureFetch","applyMiddleware","log","proxy","defaultHeaders","validateStatus","StatusError","ResponseError","FetchUtil"],"sources":["../../../src/http/index.ts"],"sourcesContent":["export type {\n ProxyOptions,\n Handler,\n Enhancer,\n Middleware,\n LogData,\n DoneLogData,\n FailLogData,\n LogHandler,\n LogHandlerFactory,\n EitherResponse,\n ResponseDone,\n ResponseFail,\n ResponseErrorInit,\n} from './types';\nexport { configureFetch, applyMiddleware } from '@krutoo/fetch-tools';\nexport { log, proxy, defaultHeaders, validateStatus } from '@krutoo/fetch-tools/middleware';\nexport { StatusError, ResponseError } from './errors';\nexport { FetchUtil } from './utils';\n"],"mappings":"AAeA,SAASA,cAAc,EAAEC,eAAe,QAAQ,qBAAqB;AACrE,SAASC,GAAG,EAAEC,KAAK,EAAEC,cAAc,EAAEC,cAAc,QAAQ,gCAAgC;AAC3F,SAASC,WAAW,EAAEC,aAAa,QAAQ,aAAU;AACrD,SAASC,SAAS,QAAQ,YAAS"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../src/http/types.ts"],"sourcesContent":["import { LogLevel } from '../log';\n\nexport type { Handler, Enhancer, Middleware, CookieStore } from '@krutoo/fetch-tools';\nexport type {\n LogData,\n DoneLogData,\n FailLogData,\n LogHandler,\n LogHandlerFactory,\n} from '@krutoo/fetch-tools/middleware';\n\nexport type URLSearchParamsInit = Record<string, string | number | boolean | undefined | null>;\n\nexport interface ResponseDone<T = unknown> {\n ok: true;\n data: T;\n error: null;\n status: number;\n statusText: string;\n}\n\nexport interface ResponseFail<T = unknown> {\n ok: false;\n data?: T;\n error: unknown;\n status?: number;\n statusText?: string;\n}\n\nexport type EitherResponse<T> = ResponseDone<T> | ResponseFail<T>;\n\nexport interface ResponseErrorInit {\n statusCode?: number;\n redirectLocation?: string;\n logLevel?: LogLevel | null;\n}\n"],"mappings":""}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../src/http/types.ts"],"sourcesContent":["import type { LogLevel } from '../log';\n\nexport type { Handler, Enhancer, Middleware } from '@krutoo/fetch-tools';\n\nexport type {\n LogData,\n DoneLogData,\n FailLogData,\n LogHandler,\n LogHandlerFactory,\n ProxyOptions,\n} from '@krutoo/fetch-tools/middleware';\n\nexport type URLSearchParamsInit = Record<string, string | number | boolean | undefined | null>;\n\nexport interface ResponseDone<T = unknown> {\n ok: true;\n data: T;\n error: null;\n status: number;\n statusText: string;\n}\n\nexport interface ResponseFail<T = unknown> {\n ok: false;\n data?: T;\n error: unknown;\n status?: number;\n statusText?: string;\n}\n\nexport type EitherResponse<T> = ResponseDone<T> | ResponseFail<T>;\n\nexport interface ResponseErrorInit {\n statusCode?: number;\n redirectLocation?: string;\n logLevel?: LogLevel | null;\n}\n"],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","names":["DetailedError","Error","constructor","message","data","Breadcrumb","type"],"sources":["../../../src/log/errors.ts"],"sourcesContent":["import { ErrorDetails, BreadcrumbDetails } from './types';\n\n/**\n * Ошибка с данными.\n */\nexport class DetailedError extends Error {\n data: ErrorDetails;\n\n /**\n * @param message Сообщение.\n * @param data Данные.\n */\n constructor(message?: string, data: ErrorDetails = {}) {\n super(message);\n this.data = data;\n }\n}\n\n/**\n * Хлебная крошка.\n */\nexport class Breadcrumb {\n type: string;\n data: BreadcrumbDetails;\n\n /**\n * @param data Данные.\n */\n constructor(data: BreadcrumbDetails) {\n this.type = 'breadcrumb';\n this.data = data;\n }\n}\n"],"mappings":"AAEA;AACA;AACA;AACA,OAAO,MAAMA,aAAa,SAASC,KAAK,CAAC;EAGvC;AACF;AACA;AACA;EACEC,WAAWA,CAACC,OAAgB,EAAEC,IAAkB,GAAG,CAAC,CAAC,EAAE;IACrD,KAAK,CAACD,OAAO,CAAC;IACd,IAAI,CAACC,IAAI,GAAGA,IAAI;EAClB;AACF;;AAEA;AACA;AACA;AACA,OAAO,MAAMC,UAAU,CAAC;EAItB;AACF;AACA;EACEH,WAAWA,CAACE,IAAuB,EAAE;IACnC,IAAI,CAACE,IAAI,GAAG,YAAY;IACxB,IAAI,CAACF,IAAI,GAAGA,IAAI;EAClB;AACF"}
1
+ {"version":3,"file":"errors.js","names":["DetailedError","Error","constructor","message","data","Breadcrumb","type"],"sources":["../../../src/log/errors.ts"],"sourcesContent":["import type { ErrorDetails, BreadcrumbDetails } from './types';\n\n/**\n * Ошибка с данными.\n */\nexport class DetailedError extends Error {\n data: ErrorDetails;\n\n /**\n * @param message Сообщение.\n * @param data Данные.\n */\n constructor(message?: string, data: ErrorDetails = {}) {\n super(message);\n this.data = data;\n }\n}\n\n/**\n * Хлебная крошка.\n */\nexport class Breadcrumb {\n type: string;\n data: BreadcrumbDetails;\n\n /**\n * @param data Данные.\n */\n constructor(data: BreadcrumbDetails) {\n this.type = 'breadcrumb';\n this.data = data;\n }\n}\n"],"mappings":"AAEA;AACA;AACA;AACA,OAAO,MAAMA,aAAa,SAASC,KAAK,CAAC;EAGvC;AACF;AACA;AACA;EACEC,WAAWA,CAACC,OAAgB,EAAEC,IAAkB,GAAG,CAAC,CAAC,EAAE;IACrD,KAAK,CAACD,OAAO,CAAC;IACd,IAAI,CAACC,IAAI,GAAGA,IAAI;EAClB;AACF;;AAEA;AACA;AACA;AACA,OAAO,MAAMC,UAAU,CAAC;EAItB;AACF;AACA;EACEH,WAAWA,CAACE,IAAuB,EAAE;IACnC,IAAI,CAACE,IAAI,GAAG,YAAY;IACxB,IAAI,CAACF,IAAI,GAAGA,IAAI;EAClB;AACF"}
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "@sima-land/isomorph",
4
- "version": "11.0.0-alpha.45",
4
+ "version": "11.0.0-alpha.47",
5
5
  "dependencies": {
6
- "@humanwhocodes/env": "^2.2.2",
7
- "@krutoo/fetch-tools": "^0.0.12",
6
+ "@humanwhocodes/env": "^3.0.2",
7
+ "@krutoo/fetch-tools": "^0.0.15",
8
8
  "@opentelemetry/api": "^1.4.1",
9
9
  "@opentelemetry/exporter-prometheus": "^0.38.0",
10
10
  "@opentelemetry/exporter-trace-otlp-http": "^0.39.1",
@@ -20,6 +20,7 @@
20
20
  "accepts": "^1.3.8",
21
21
  "dotenv": "^16.3.1",
22
22
  "express": "^4.18.2",
23
+ "http-proxy-middleware": "^3.0.0",
23
24
  "jsesc": "^3.0.2",
24
25
  "middleware-axios": "^2.1.6",
25
26
  "pino": "^8.14.1",
@@ -6,9 +6,9 @@ import { provideKnownHttpApiHosts } from "../server/providers/known-http-api-hos
6
6
  import { provideSsrBridgeServerSide } from "../server/providers/ssr-bridge-server-side.js";
7
7
  import { provideConfigSource } from "./providers/config-source.js";
8
8
  import { provideLogger } from "./providers/logger.js";
9
- import { provideServe } from "./providers/serve.js";
9
+ import { provideServe } from "../server/providers/serve.js";
10
10
  import { provideServeMetrics } from "./providers/serve-metrics.js";
11
- import { provideFetchMiddleware } from "./providers/fetch-middleware.js";
11
+ import { provideFetchMiddleware } from "../server/providers/fetch-middleware.js";
12
12
  import { provideServiceRoutes } from "./providers/service-routes.js";
13
13
  import { provideServeMiddleware } from "./providers/serve-middleware.js";
14
14
 
@@ -42,6 +42,7 @@ export function PresetBun(customize) {
42
42
  preset.set(KnownToken.Http.serve, provideServe);
43
43
  preset.set(KnownToken.Http.Serve.serviceRoutes, provideServiceRoutes);
44
44
  preset.set(KnownToken.Http.Serve.middleware, provideServeMiddleware);
45
+ preset.set(KnownToken.Http.Serve.Proxy.config, () => null);
45
46
 
46
47
  // http api
47
48
  preset.set(KnownToken.Http.Api.knownHosts, provideKnownHttpApiHosts);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["createPreset","KnownToken","provideBaseConfig","provideFetch","provideKnownHttpApiHosts","provideSsrBridgeServerSide","provideConfigSource","provideLogger","provideServe","provideServeMetrics","provideFetchMiddleware","provideServiceRoutes","provideServeMiddleware","PresetBun","customize","preset","set","Config","source","base","logger","Metrics","httpHandler","Http","fetch","Fetch","middleware","serve","Serve","serviceRoutes","Api","knownHosts","SsrBridge","serverSide","override","bind","HandlerProvider","getStatsHandler"],"sources":["../../../../src/preset/bun/index.ts"],"sourcesContent":["import { createPreset } from '../../di';\nimport { KnownToken } from '../../tokens';\nimport { PresetTuner } from '../isomorphic';\nimport { provideBaseConfig } from '../isomorphic/providers/base-config';\nimport { provideFetch } from '../isomorphic/providers/fetch';\nimport { provideKnownHttpApiHosts } from '../server/providers/known-http-api-hosts';\nimport { provideSsrBridgeServerSide } from '../server/providers/ssr-bridge-server-side';\nimport { provideConfigSource } from './providers/config-source';\nimport { provideLogger } from './providers/logger';\nimport { provideServe } from './providers/serve';\nimport { provideServeMetrics } from './providers/serve-metrics';\nimport { provideFetchMiddleware } from './providers/fetch-middleware';\nimport { provideServiceRoutes } from './providers/service-routes';\nimport { provideServeMiddleware } from './providers/serve-middleware';\n\n/**\n * Возвращает preset с зависимостями для запуска приложения в Bun.\n * @param customize Получит функцию с помощью которой можно переопределить предустановленные провайдеры.\n * @return Preset.\n */\nexport function PresetBun(customize?: PresetTuner) {\n // @todo возможно стоит переименовать в PresetServer (так как в теории это можно использовать не только в Bun но и в Deno, Node.js)\n const preset = createPreset();\n\n // config\n preset.set(KnownToken.Config.source, provideConfigSource);\n preset.set(KnownToken.Config.base, provideBaseConfig);\n\n // log\n preset.set(KnownToken.logger, provideLogger);\n\n // tracing\n // @todo\n\n // metrics\n preset.set(KnownToken.Metrics.httpHandler, provideServeMetrics);\n\n // http fetch\n preset.set(KnownToken.Http.fetch, provideFetch);\n preset.set(KnownToken.Http.Fetch.middleware, provideFetchMiddleware);\n\n // http serve\n preset.set(KnownToken.Http.serve, provideServe);\n preset.set(KnownToken.Http.Serve.serviceRoutes, provideServiceRoutes);\n preset.set(KnownToken.Http.Serve.middleware, provideServeMiddleware);\n\n // http api\n preset.set(KnownToken.Http.Api.knownHosts, provideKnownHttpApiHosts);\n\n // ssr bridge\n preset.set(KnownToken.SsrBridge.serverSide, provideSsrBridgeServerSide);\n\n if (customize) {\n customize({ override: preset.set.bind(preset) });\n }\n\n return preset;\n}\n\n// доступные утилиты\nexport { HandlerProvider } from '../server/utils/handler-provider';\nexport { getStatsHandler } from './utils/get-stats-handler';\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,qBAAU;AACvC,SAASC,UAAU,QAAQ,iBAAc;AAEzC,SAASC,iBAAiB,QAAQ,wCAAqC;AACvE,SAASC,YAAY,QAAQ,kCAA+B;AAC5D,SAASC,wBAAwB,QAAQ,6CAA0C;AACnF,SAASC,0BAA0B,QAAQ,+CAA4C;AACvF,SAASC,mBAAmB,QAAQ,8BAA2B;AAC/D,SAASC,aAAa,QAAQ,uBAAoB;AAClD,SAASC,YAAY,QAAQ,sBAAmB;AAChD,SAASC,mBAAmB,QAAQ,8BAA2B;AAC/D,SAASC,sBAAsB,QAAQ,iCAA8B;AACrE,SAASC,oBAAoB,QAAQ,+BAA4B;AACjE,SAASC,sBAAsB,QAAQ,iCAA8B;;AAErE;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,SAASA,CAACC,SAAuB,EAAE;EACjD;EACA,MAAMC,MAAM,GAAGf,YAAY,CAAC,CAAC;;EAE7B;EACAe,MAAM,CAACC,GAAG,CAACf,UAAU,CAACgB,MAAM,CAACC,MAAM,EAAEZ,mBAAmB,CAAC;EACzDS,MAAM,CAACC,GAAG,CAACf,UAAU,CAACgB,MAAM,CAACE,IAAI,EAAEjB,iBAAiB,CAAC;;EAErD;EACAa,MAAM,CAACC,GAAG,CAACf,UAAU,CAACmB,MAAM,EAAEb,aAAa,CAAC;;EAE5C;EACA;;EAEA;EACAQ,MAAM,CAACC,GAAG,CAACf,UAAU,CAACoB,OAAO,CAACC,WAAW,EAAEb,mBAAmB,CAAC;;EAE/D;EACAM,MAAM,CAACC,GAAG,CAACf,UAAU,CAACsB,IAAI,CAACC,KAAK,EAAErB,YAAY,CAAC;EAC/CY,MAAM,CAACC,GAAG,CAACf,UAAU,CAACsB,IAAI,CAACE,KAAK,CAACC,UAAU,EAAEhB,sBAAsB,CAAC;;EAEpE;EACAK,MAAM,CAACC,GAAG,CAACf,UAAU,CAACsB,IAAI,CAACI,KAAK,EAAEnB,YAAY,CAAC;EAC/CO,MAAM,CAACC,GAAG,CAACf,UAAU,CAACsB,IAAI,CAACK,KAAK,CAACC,aAAa,EAAElB,oBAAoB,CAAC;EACrEI,MAAM,CAACC,GAAG,CAACf,UAAU,CAACsB,IAAI,CAACK,KAAK,CAACF,UAAU,EAAEd,sBAAsB,CAAC;;EAEpE;EACAG,MAAM,CAACC,GAAG,CAACf,UAAU,CAACsB,IAAI,CAACO,GAAG,CAACC,UAAU,EAAE3B,wBAAwB,CAAC;;EAEpE;EACAW,MAAM,CAACC,GAAG,CAACf,UAAU,CAAC+B,SAAS,CAACC,UAAU,EAAE5B,0BAA0B,CAAC;EAEvE,IAAIS,SAAS,EAAE;IACbA,SAAS,CAAC;MAAEoB,QAAQ,EAAEnB,MAAM,CAACC,GAAG,CAACmB,IAAI,CAACpB,MAAM;IAAE,CAAC,CAAC;EAClD;EAEA,OAAOA,MAAM;AACf;;AAEA;AACA,SAASqB,eAAe,QAAQ,qCAAkC;AAClE,SAASC,eAAe,QAAQ,8BAA2B"}
1
+ {"version":3,"file":"index.js","names":["createPreset","KnownToken","provideBaseConfig","provideFetch","provideKnownHttpApiHosts","provideSsrBridgeServerSide","provideConfigSource","provideLogger","provideServe","provideServeMetrics","provideFetchMiddleware","provideServiceRoutes","provideServeMiddleware","PresetBun","customize","preset","set","Config","source","base","logger","Metrics","httpHandler","Http","fetch","Fetch","middleware","serve","Serve","serviceRoutes","Proxy","config","Api","knownHosts","SsrBridge","serverSide","override","bind","HandlerProvider","getStatsHandler"],"sources":["../../../../src/preset/bun/index.ts"],"sourcesContent":["import { createPreset } from '../../di';\nimport { KnownToken } from '../../tokens';\nimport { PresetTuner } from '../isomorphic';\nimport { provideBaseConfig } from '../isomorphic/providers/base-config';\nimport { provideFetch } from '../isomorphic/providers/fetch';\nimport { provideKnownHttpApiHosts } from '../server/providers/known-http-api-hosts';\nimport { provideSsrBridgeServerSide } from '../server/providers/ssr-bridge-server-side';\nimport { provideConfigSource } from './providers/config-source';\nimport { provideLogger } from './providers/logger';\nimport { provideServe } from '../server/providers/serve';\nimport { provideServeMetrics } from './providers/serve-metrics';\nimport { provideFetchMiddleware } from '../server/providers/fetch-middleware';\nimport { provideServiceRoutes } from './providers/service-routes';\nimport { provideServeMiddleware } from './providers/serve-middleware';\n\n/**\n * Возвращает preset с зависимостями для запуска приложения в Bun.\n * @param customize Получит функцию с помощью которой можно переопределить предустановленные провайдеры.\n * @return Preset.\n */\nexport function PresetBun(customize?: PresetTuner) {\n // @todo возможно стоит переименовать в PresetServer (так как в теории это можно использовать не только в Bun но и в Deno, Node.js)\n const preset = createPreset();\n\n // config\n preset.set(KnownToken.Config.source, provideConfigSource);\n preset.set(KnownToken.Config.base, provideBaseConfig);\n\n // log\n preset.set(KnownToken.logger, provideLogger);\n\n // tracing\n // @todo\n\n // metrics\n preset.set(KnownToken.Metrics.httpHandler, provideServeMetrics);\n\n // http fetch\n preset.set(KnownToken.Http.fetch, provideFetch);\n preset.set(KnownToken.Http.Fetch.middleware, provideFetchMiddleware);\n\n // http serve\n preset.set(KnownToken.Http.serve, provideServe);\n preset.set(KnownToken.Http.Serve.serviceRoutes, provideServiceRoutes);\n preset.set(KnownToken.Http.Serve.middleware, provideServeMiddleware);\n preset.set(KnownToken.Http.Serve.Proxy.config, () => null);\n\n // http api\n preset.set(KnownToken.Http.Api.knownHosts, provideKnownHttpApiHosts);\n\n // ssr bridge\n preset.set(KnownToken.SsrBridge.serverSide, provideSsrBridgeServerSide);\n\n if (customize) {\n customize({ override: preset.set.bind(preset) });\n }\n\n return preset;\n}\n\n// доступные утилиты\nexport { HandlerProvider } from '../server/utils/handler-provider';\nexport { getStatsHandler } from './utils/get-stats-handler';\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,qBAAU;AACvC,SAASC,UAAU,QAAQ,iBAAc;AAEzC,SAASC,iBAAiB,QAAQ,wCAAqC;AACvE,SAASC,YAAY,QAAQ,kCAA+B;AAC5D,SAASC,wBAAwB,QAAQ,6CAA0C;AACnF,SAASC,0BAA0B,QAAQ,+CAA4C;AACvF,SAASC,mBAAmB,QAAQ,8BAA2B;AAC/D,SAASC,aAAa,QAAQ,uBAAoB;AAClD,SAASC,YAAY,QAAQ,8BAA2B;AACxD,SAASC,mBAAmB,QAAQ,8BAA2B;AAC/D,SAASC,sBAAsB,QAAQ,yCAAsC;AAC7E,SAASC,oBAAoB,QAAQ,+BAA4B;AACjE,SAASC,sBAAsB,QAAQ,iCAA8B;;AAErE;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,SAASA,CAACC,SAAuB,EAAE;EACjD;EACA,MAAMC,MAAM,GAAGf,YAAY,CAAC,CAAC;;EAE7B;EACAe,MAAM,CAACC,GAAG,CAACf,UAAU,CAACgB,MAAM,CAACC,MAAM,EAAEZ,mBAAmB,CAAC;EACzDS,MAAM,CAACC,GAAG,CAACf,UAAU,CAACgB,MAAM,CAACE,IAAI,EAAEjB,iBAAiB,CAAC;;EAErD;EACAa,MAAM,CAACC,GAAG,CAACf,UAAU,CAACmB,MAAM,EAAEb,aAAa,CAAC;;EAE5C;EACA;;EAEA;EACAQ,MAAM,CAACC,GAAG,CAACf,UAAU,CAACoB,OAAO,CAACC,WAAW,EAAEb,mBAAmB,CAAC;;EAE/D;EACAM,MAAM,CAACC,GAAG,CAACf,UAAU,CAACsB,IAAI,CAACC,KAAK,EAAErB,YAAY,CAAC;EAC/CY,MAAM,CAACC,GAAG,CAACf,UAAU,CAACsB,IAAI,CAACE,KAAK,CAACC,UAAU,EAAEhB,sBAAsB,CAAC;;EAEpE;EACAK,MAAM,CAACC,GAAG,CAACf,UAAU,CAACsB,IAAI,CAACI,KAAK,EAAEnB,YAAY,CAAC;EAC/CO,MAAM,CAACC,GAAG,CAACf,UAAU,CAACsB,IAAI,CAACK,KAAK,CAACC,aAAa,EAAElB,oBAAoB,CAAC;EACrEI,MAAM,CAACC,GAAG,CAACf,UAAU,CAACsB,IAAI,CAACK,KAAK,CAACF,UAAU,EAAEd,sBAAsB,CAAC;EACpEG,MAAM,CAACC,GAAG,CAACf,UAAU,CAACsB,IAAI,CAACK,KAAK,CAACE,KAAK,CAACC,MAAM,EAAE,MAAM,IAAI,CAAC;;EAE1D;EACAhB,MAAM,CAACC,GAAG,CAACf,UAAU,CAACsB,IAAI,CAACS,GAAG,CAACC,UAAU,EAAE7B,wBAAwB,CAAC;;EAEpE;EACAW,MAAM,CAACC,GAAG,CAACf,UAAU,CAACiC,SAAS,CAACC,UAAU,EAAE9B,0BAA0B,CAAC;EAEvE,IAAIS,SAAS,EAAE;IACbA,SAAS,CAAC;MAAEsB,QAAQ,EAAErB,MAAM,CAACC,GAAG,CAACqB,IAAI,CAACtB,MAAM;IAAE,CAAC,CAAC;EAClD;EAEA,OAAOA,MAAM;AACf;;AAEA;AACA,SAASuB,eAAe,QAAQ,qCAAkC;AAClE,SAASC,eAAe,QAAQ,8BAA2B"}
@@ -4,7 +4,7 @@ import { KnownToken } from "../../../tokens.js";
4
4
  import { runWithAsyncContext } from '@sentry/bun';
5
5
  import { getServeLogging } from "../../server/utils/get-serve-logging.js";
6
6
  import { getServeErrorLogging } from "../../server/utils/get-serve-error-logging.js";
7
- import { getServeMeasuring } from "../../server/utils/get-serve-measuring.js";
7
+ import { getServeMeasuring } from "../../node/utils/get-serve-measuring.js";
8
8
  export function provideServeMiddleware(resolve) {
9
9
  const config = resolve(KnownToken.Config.base);
10
10
  const logger = resolve(KnownToken.logger);
@@ -1 +1 @@
1
- {"version":3,"file":"serve-middleware.js","names":["KnownToken","runWithAsyncContext","getServeLogging","getServeErrorLogging","getServeMeasuring","provideServeMiddleware","resolve","config","Config","base","logger","request","next"],"sources":["../../../../../src/preset/bun/providers/serve-middleware.ts"],"sourcesContent":["/* eslint-disable require-jsdoc, jsdoc/require-jsdoc */\nimport { Resolve } from '../../../di';\nimport { KnownToken } from '../../../tokens';\nimport { runWithAsyncContext } from '@sentry/bun';\nimport { ServerMiddleware } from '../../server/types';\nimport { getServeLogging } from '../../server/utils/get-serve-logging';\nimport { getServeErrorLogging } from '../../server/utils/get-serve-error-logging';\nimport { getServeMeasuring } from '../../server/utils/get-serve-measuring';\n\nexport function provideServeMiddleware(resolve: Resolve): ServerMiddleware[] {\n const config = resolve(KnownToken.Config.base);\n const logger = resolve(KnownToken.logger);\n\n return [\n // ВАЖНО: изолируем хлебные крошки чтобы они группировались по входящим запросам\n (request, next) => runWithAsyncContext(async () => next(request)),\n\n // ВАЖНО: слой логирования ошибки ПЕРЕД остальными слоями чтобы не упустить ошибки выше\n getServeErrorLogging(logger),\n\n // @todo tracing\n\n // метрики\n getServeMeasuring(config),\n\n // ВАЖНО: слой логирования запроса и ответа ПОСЛЕ остальных слоев чтобы использовать актуальные данные\n getServeLogging(logger),\n ];\n}\n"],"mappings":"AAAA;;AAEA,SAASA,UAAU,QAAQ,oBAAiB;AAC5C,SAASC,mBAAmB,QAAQ,aAAa;AAEjD,SAASC,eAAe,QAAQ,yCAAsC;AACtE,SAASC,oBAAoB,QAAQ,+CAA4C;AACjF,SAASC,iBAAiB,QAAQ,2CAAwC;AAE1E,OAAO,SAASC,sBAAsBA,CAACC,OAAgB,EAAsB;EAC3E,MAAMC,MAAM,GAAGD,OAAO,CAACN,UAAU,CAACQ,MAAM,CAACC,IAAI,CAAC;EAC9C,MAAMC,MAAM,GAAGJ,OAAO,CAACN,UAAU,CAACU,MAAM,CAAC;EAEzC,OAAO;EACL;EACA,CAACC,OAAO,EAAEC,IAAI,KAAKX,mBAAmB,CAAC,YAAYW,IAAI,CAACD,OAAO,CAAC,CAAC;EAEjE;EACAR,oBAAoB,CAACO,MAAM,CAAC;EAE5B;;EAEA;EACAN,iBAAiB,CAACG,MAAM,CAAC;EAEzB;EACAL,eAAe,CAACQ,MAAM,CAAC,CACxB;AACH"}
1
+ {"version":3,"file":"serve-middleware.js","names":["KnownToken","runWithAsyncContext","getServeLogging","getServeErrorLogging","getServeMeasuring","provideServeMiddleware","resolve","config","Config","base","logger","request","next"],"sources":["../../../../../src/preset/bun/providers/serve-middleware.ts"],"sourcesContent":["/* eslint-disable require-jsdoc, jsdoc/require-jsdoc */\nimport { Resolve } from '../../../di';\nimport { KnownToken } from '../../../tokens';\nimport { runWithAsyncContext } from '@sentry/bun';\nimport { ServerMiddleware } from '../../server/types';\nimport { getServeLogging } from '../../server/utils/get-serve-logging';\nimport { getServeErrorLogging } from '../../server/utils/get-serve-error-logging';\nimport { getServeMeasuring } from '../../node/utils/get-serve-measuring';\n\nexport function provideServeMiddleware(resolve: Resolve): ServerMiddleware[] {\n const config = resolve(KnownToken.Config.base);\n const logger = resolve(KnownToken.logger);\n\n return [\n // ВАЖНО: изолируем хлебные крошки чтобы они группировались по входящим запросам\n (request, next) => runWithAsyncContext(async () => next(request)),\n\n // ВАЖНО: слой логирования ошибки ПЕРЕД остальными слоями чтобы не упустить ошибки выше\n getServeErrorLogging(logger),\n\n // @todo tracing\n\n // метрики\n getServeMeasuring(config),\n\n // ВАЖНО: слой логирования запроса и ответа ПОСЛЕ остальных слоев чтобы использовать актуальные данные\n getServeLogging(logger),\n ];\n}\n"],"mappings":"AAAA;;AAEA,SAASA,UAAU,QAAQ,oBAAiB;AAC5C,SAASC,mBAAmB,QAAQ,aAAa;AAEjD,SAASC,eAAe,QAAQ,yCAAsC;AACtE,SAASC,oBAAoB,QAAQ,+CAA4C;AACjF,SAASC,iBAAiB,QAAQ,yCAAsC;AAExE,OAAO,SAASC,sBAAsBA,CAACC,OAAgB,EAAsB;EAC3E,MAAMC,MAAM,GAAGD,OAAO,CAACN,UAAU,CAACQ,MAAM,CAACC,IAAI,CAAC;EAC9C,MAAMC,MAAM,GAAGJ,OAAO,CAACN,UAAU,CAACU,MAAM,CAAC;EAEzC,OAAO;EACL;EACA,CAACC,OAAO,EAAEC,IAAI,KAAKX,mBAAmB,CAAC,YAAYW,IAAI,CAACD,OAAO,CAAC,CAAC;EAEjE;EACAR,oBAAoB,CAACO,MAAM,CAAC;EAE5B;;EAEA;EACAN,iBAAiB,CAACG,MAAM,CAAC;EAEzB;EACAL,eAAe,CAACQ,MAAM,CAAC,CACxB;AACH"}
@@ -10,7 +10,6 @@ import { provideFetchMiddleware } from "./providers/fetch-middleware.js";
10
10
  import { provideHandlerMain } from "./providers/handler-main.js";
11
11
  import { providePageHelmet } from "../server/providers/page-helmet.js";
12
12
  import { provideSpecificParams } from "./providers/specific-params.js";
13
- import { provideCookieStore } from "./providers/cookie-store.js";
14
13
  import { SpecificExtras } from "../server/utils/specific-extras.js";
15
14
  import { provideElementToString } from "../server/providers/element-to-string.js";
16
15
  import { provideFormatPageResponse } from "../server/providers/format-page-response.js";
@@ -29,7 +28,6 @@ export function PresetBunHandler(customize) {
29
28
  // http fetch
30
29
  preset.set(KnownToken.Http.fetch, provideFetch);
31
30
  preset.set(KnownToken.Http.Fetch.abortController, provideAbortController);
32
- preset.set(KnownToken.Http.Fetch.cookieStore, provideCookieStore);
33
31
  preset.set(KnownToken.Http.Fetch.middleware, provideFetchMiddleware);
34
32
  preset.set(KnownToken.Http.Fetch.Middleware.Log.handler, provideFetchLogHandler);
35
33
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["createPreset","KnownToken","provideAbortController","provideFetch","provideReduxMiddlewareSaga","providePageRender","provideFetchLogHandler","provideFetchMiddleware","provideHandlerMain","providePageHelmet","provideSpecificParams","provideCookieStore","SpecificExtras","provideElementToString","provideFormatPageResponse","provideAcceptType","provideResponseEvents","PresetBunHandler","customize","preset","set","Http","fetch","Fetch","abortController","cookieStore","middleware","Middleware","Log","handler","Handler","main","Request","acceptType","specificParams","Response","events","specificExtras","Page","assets","js","css","helmet","render","elementToString","formatResponse","Redux","saga","override","bind"],"sources":["../../../../src/preset/bun-handler/index.ts"],"sourcesContent":["/* eslint-disable require-jsdoc, jsdoc/require-jsdoc */\nimport { createPreset } from '../../di';\nimport { KnownToken } from '../../tokens';\nimport { PresetTuner } from '../isomorphic';\nimport { provideAbortController } from '../isomorphic/providers/abort-controller';\nimport { provideFetch } from '../isomorphic/providers/fetch';\nimport { provideReduxMiddlewareSaga } from '../isomorphic/providers/redux-middleware-saga';\nimport { providePageRender } from '../server/providers/page-render';\nimport { provideFetchLogHandler } from '../server/providers/fetch-log-handler';\nimport { provideFetchMiddleware } from './providers/fetch-middleware';\nimport { provideHandlerMain } from './providers/handler-main';\nimport { providePageHelmet } from '../server/providers/page-helmet';\nimport { provideSpecificParams } from './providers/specific-params';\nimport { provideCookieStore } from './providers/cookie-store';\nimport { SpecificExtras } from '../server/utils/specific-extras';\nimport { provideElementToString } from '../server/providers/element-to-string';\nimport { provideFormatPageResponse } from '../server/providers/format-page-response';\nimport { provideAcceptType } from './providers/accept-type';\nimport { provideResponseEvents } from '../server/providers/response-events';\n\n/**\n * Возвращает preset с зависимостями для формирования обработчика входящего http-запроса.\n * @param customize Получит функцию с помощью которой можно переопределить предустановленные провайдеры.\n * @todo Возможно стоит переименовать в PresetPageHandler.\n * @return Preset.\n */\nexport function PresetBunHandler(customize?: PresetTuner) {\n const preset = createPreset();\n\n // http fetch\n preset.set(KnownToken.Http.fetch, provideFetch);\n preset.set(KnownToken.Http.Fetch.abortController, provideAbortController);\n preset.set(KnownToken.Http.Fetch.cookieStore, provideCookieStore);\n preset.set(KnownToken.Http.Fetch.middleware, provideFetchMiddleware);\n preset.set(KnownToken.Http.Fetch.Middleware.Log.handler, provideFetchLogHandler);\n\n // handler\n preset.set(KnownToken.Http.Handler.main, provideHandlerMain);\n preset.set(KnownToken.Http.Handler.Request.acceptType, provideAcceptType);\n preset.set(KnownToken.Http.Handler.Request.specificParams, provideSpecificParams);\n preset.set(KnownToken.Http.Handler.Response.events, provideResponseEvents);\n preset.set(KnownToken.Http.Handler.Response.specificExtras, () => new SpecificExtras());\n preset.set(KnownToken.Http.Handler.Page.assets, () => ({ js: '', css: '' }));\n preset.set(KnownToken.Http.Handler.Page.helmet, providePageHelmet);\n preset.set(KnownToken.Http.Handler.Page.render, providePageRender);\n preset.set(KnownToken.Http.Handler.Page.elementToString, provideElementToString);\n preset.set(KnownToken.Http.Handler.Page.formatResponse, provideFormatPageResponse);\n\n // redux saga\n preset.set(KnownToken.Redux.Middleware.saga, provideReduxMiddlewareSaga);\n\n if (customize) {\n customize({ override: preset.set.bind(preset) });\n }\n\n return preset;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["createPreset","KnownToken","provideAbortController","provideFetch","provideReduxMiddlewareSaga","providePageRender","provideFetchLogHandler","provideFetchMiddleware","provideHandlerMain","providePageHelmet","provideSpecificParams","SpecificExtras","provideElementToString","provideFormatPageResponse","provideAcceptType","provideResponseEvents","PresetBunHandler","customize","preset","set","Http","fetch","Fetch","abortController","middleware","Middleware","Log","handler","Handler","main","Request","acceptType","specificParams","Response","events","specificExtras","Page","assets","js","css","helmet","render","elementToString","formatResponse","Redux","saga","override","bind"],"sources":["../../../../src/preset/bun-handler/index.ts"],"sourcesContent":["/* eslint-disable require-jsdoc, jsdoc/require-jsdoc */\nimport { createPreset } from '../../di';\nimport { KnownToken } from '../../tokens';\nimport { PresetTuner } from '../isomorphic';\nimport { provideAbortController } from '../isomorphic/providers/abort-controller';\nimport { provideFetch } from '../isomorphic/providers/fetch';\nimport { provideReduxMiddlewareSaga } from '../isomorphic/providers/redux-middleware-saga';\nimport { providePageRender } from '../server/providers/page-render';\nimport { provideFetchLogHandler } from '../server/providers/fetch-log-handler';\nimport { provideFetchMiddleware } from './providers/fetch-middleware';\nimport { provideHandlerMain } from './providers/handler-main';\nimport { providePageHelmet } from '../server/providers/page-helmet';\nimport { provideSpecificParams } from './providers/specific-params';\nimport { SpecificExtras } from '../server/utils/specific-extras';\nimport { provideElementToString } from '../server/providers/element-to-string';\nimport { provideFormatPageResponse } from '../server/providers/format-page-response';\nimport { provideAcceptType } from './providers/accept-type';\nimport { provideResponseEvents } from '../server/providers/response-events';\n\n/**\n * Возвращает preset с зависимостями для формирования обработчика входящего http-запроса.\n * @param customize Получит функцию с помощью которой можно переопределить предустановленные провайдеры.\n * @todo Возможно стоит переименовать в PresetPageHandler.\n * @return Preset.\n */\nexport function PresetBunHandler(customize?: PresetTuner) {\n const preset = createPreset();\n\n // http fetch\n preset.set(KnownToken.Http.fetch, provideFetch);\n preset.set(KnownToken.Http.Fetch.abortController, provideAbortController);\n preset.set(KnownToken.Http.Fetch.middleware, provideFetchMiddleware);\n preset.set(KnownToken.Http.Fetch.Middleware.Log.handler, provideFetchLogHandler);\n\n // handler\n preset.set(KnownToken.Http.Handler.main, provideHandlerMain);\n preset.set(KnownToken.Http.Handler.Request.acceptType, provideAcceptType);\n preset.set(KnownToken.Http.Handler.Request.specificParams, provideSpecificParams);\n preset.set(KnownToken.Http.Handler.Response.events, provideResponseEvents);\n preset.set(KnownToken.Http.Handler.Response.specificExtras, () => new SpecificExtras());\n preset.set(KnownToken.Http.Handler.Page.assets, () => ({ js: '', css: '' }));\n preset.set(KnownToken.Http.Handler.Page.helmet, providePageHelmet);\n preset.set(KnownToken.Http.Handler.Page.render, providePageRender);\n preset.set(KnownToken.Http.Handler.Page.elementToString, provideElementToString);\n preset.set(KnownToken.Http.Handler.Page.formatResponse, provideFormatPageResponse);\n\n // redux saga\n preset.set(KnownToken.Redux.Middleware.saga, provideReduxMiddlewareSaga);\n\n if (customize) {\n customize({ override: preset.set.bind(preset) });\n }\n\n return preset;\n}\n"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /* eslint-disable require-jsdoc, jsdoc/require-jsdoc */
2
2
 
3
3
  import { KnownToken } from "../../../tokens.js";
4
- import { cookie, defaultHeaders } from "./../../../http/index.js";
4
+ import { defaultHeaders } from "./../../../http/index.js";
5
5
  import { getFetchErrorLogging } from "../../isomorphic/utils/get-fetch-error-logging.js";
6
6
  import { getFetchExtraAborting } from "../../isomorphic/utils/get-fetch-extra-aborting.js";
7
7
  import { getFetchLogging } from "../../isomorphic/utils/get-fetch-logging.js";
@@ -10,13 +10,12 @@ export function provideFetchMiddleware(resolve) {
10
10
  const config = resolve(KnownToken.Config.base);
11
11
  const context = resolve(KnownToken.Http.Handler.context);
12
12
  const logHandler = resolve(KnownToken.Http.Fetch.Middleware.Log.handler);
13
- const cookieStore = resolve(KnownToken.Http.Fetch.cookieStore);
14
13
  const abortController = resolve(KnownToken.Http.Fetch.abortController);
15
14
  return [
16
15
  // ВАЖНО: слой логирования ошибки ПЕРЕД остальными слоями чтобы не упустить ошибки выше
17
16
  getFetchErrorLogging(logHandler),
18
17
  // обрывание по сигналу из обработчика входящего запроса и по сигналу из конфига исходящего запроса
19
- getFetchExtraAborting(abortController), cookie(cookieStore), defaultHeaders(getForwardedHeaders(config, context.request)),
18
+ getFetchExtraAborting(abortController), defaultHeaders(getForwardedHeaders(config, context.request)),
20
19
  // @todo tracing
21
20
 
22
21
  // ВАЖНО: слой логирования запроса и ответа ПОСЛЕ остальных слоев чтобы использовать актуальные данные
@@ -1 +1 @@
1
- {"version":3,"file":"fetch-middleware.js","names":["KnownToken","cookie","defaultHeaders","getFetchErrorLogging","getFetchExtraAborting","getFetchLogging","getForwardedHeaders","provideFetchMiddleware","resolve","config","Config","base","context","Http","Handler","logHandler","Fetch","Middleware","Log","handler","cookieStore","abortController","request"],"sources":["../../../../../src/preset/bun-handler/providers/fetch-middleware.ts"],"sourcesContent":["/* eslint-disable require-jsdoc, jsdoc/require-jsdoc */\nimport { Resolve } from '../../../di';\nimport { KnownToken } from '../../../tokens';\nimport { Middleware, cookie, defaultHeaders } from '../../../http';\nimport { getFetchErrorLogging } from '../../isomorphic/utils/get-fetch-error-logging';\nimport { getFetchExtraAborting } from '../../isomorphic/utils/get-fetch-extra-aborting';\nimport { getFetchLogging } from '../../isomorphic/utils/get-fetch-logging';\nimport { getForwardedHeaders } from '../../server/utils/get-forwarded-headers';\n\nexport function provideFetchMiddleware(resolve: Resolve): Middleware[] {\n const config = resolve(KnownToken.Config.base);\n const context = resolve(KnownToken.Http.Handler.context);\n const logHandler = resolve(KnownToken.Http.Fetch.Middleware.Log.handler);\n const cookieStore = resolve(KnownToken.Http.Fetch.cookieStore);\n const abortController = resolve(KnownToken.Http.Fetch.abortController);\n\n return [\n // ВАЖНО: слой логирования ошибки ПЕРЕД остальными слоями чтобы не упустить ошибки выше\n getFetchErrorLogging(logHandler),\n\n // обрывание по сигналу из обработчика входящего запроса и по сигналу из конфига исходящего запроса\n getFetchExtraAborting(abortController),\n\n cookie(cookieStore),\n\n defaultHeaders(getForwardedHeaders(config, context.request)),\n\n // @todo tracing\n\n // ВАЖНО: слой логирования запроса и ответа ПОСЛЕ остальных слоев чтобы использовать актуальные данные\n getFetchLogging(logHandler),\n ];\n}\n"],"mappings":"AAAA;;AAEA,SAASA,UAAU,QAAQ,oBAAiB;AAC5C,SAAqBC,MAAM,EAAEC,cAAc,QAAQ,0BAAe;AAClE,SAASC,oBAAoB,QAAQ,mDAAgD;AACrF,SAASC,qBAAqB,QAAQ,oDAAiD;AACvF,SAASC,eAAe,QAAQ,6CAA0C;AAC1E,SAASC,mBAAmB,QAAQ,6CAA0C;AAE9E,OAAO,SAASC,sBAAsBA,CAACC,OAAgB,EAAgB;EACrE,MAAMC,MAAM,GAAGD,OAAO,CAACR,UAAU,CAACU,MAAM,CAACC,IAAI,CAAC;EAC9C,MAAMC,OAAO,GAAGJ,OAAO,CAACR,UAAU,CAACa,IAAI,CAACC,OAAO,CAACF,OAAO,CAAC;EACxD,MAAMG,UAAU,GAAGP,OAAO,CAACR,UAAU,CAACa,IAAI,CAACG,KAAK,CAACC,UAAU,CAACC,GAAG,CAACC,OAAO,CAAC;EACxE,MAAMC,WAAW,GAAGZ,OAAO,CAACR,UAAU,CAACa,IAAI,CAACG,KAAK,CAACI,WAAW,CAAC;EAC9D,MAAMC,eAAe,GAAGb,OAAO,CAACR,UAAU,CAACa,IAAI,CAACG,KAAK,CAACK,eAAe,CAAC;EAEtE,OAAO;EACL;EACAlB,oBAAoB,CAACY,UAAU,CAAC;EAEhC;EACAX,qBAAqB,CAACiB,eAAe,CAAC,EAEtCpB,MAAM,CAACmB,WAAW,CAAC,EAEnBlB,cAAc,CAACI,mBAAmB,CAACG,MAAM,EAAEG,OAAO,CAACU,OAAO,CAAC,CAAC;EAE5D;;EAEA;EACAjB,eAAe,CAACU,UAAU,CAAC,CAC5B;AACH"}
1
+ {"version":3,"file":"fetch-middleware.js","names":["KnownToken","defaultHeaders","getFetchErrorLogging","getFetchExtraAborting","getFetchLogging","getForwardedHeaders","provideFetchMiddleware","resolve","config","Config","base","context","Http","Handler","logHandler","Fetch","Middleware","Log","handler","abortController","request"],"sources":["../../../../../src/preset/bun-handler/providers/fetch-middleware.ts"],"sourcesContent":["/* eslint-disable require-jsdoc, jsdoc/require-jsdoc */\nimport { Resolve } from '../../../di';\nimport { KnownToken } from '../../../tokens';\nimport { Middleware, defaultHeaders } from '../../../http';\nimport { getFetchErrorLogging } from '../../isomorphic/utils/get-fetch-error-logging';\nimport { getFetchExtraAborting } from '../../isomorphic/utils/get-fetch-extra-aborting';\nimport { getFetchLogging } from '../../isomorphic/utils/get-fetch-logging';\nimport { getForwardedHeaders } from '../../server/utils/get-forwarded-headers';\n\nexport function provideFetchMiddleware(resolve: Resolve): Middleware[] {\n const config = resolve(KnownToken.Config.base);\n const context = resolve(KnownToken.Http.Handler.context);\n const logHandler = resolve(KnownToken.Http.Fetch.Middleware.Log.handler);\n const abortController = resolve(KnownToken.Http.Fetch.abortController);\n\n return [\n // ВАЖНО: слой логирования ошибки ПЕРЕД остальными слоями чтобы не упустить ошибки выше\n getFetchErrorLogging(logHandler),\n\n // обрывание по сигналу из обработчика входящего запроса и по сигналу из конфига исходящего запроса\n getFetchExtraAborting(abortController),\n\n defaultHeaders(getForwardedHeaders(config, context.request)),\n\n // @todo tracing\n\n // ВАЖНО: слой логирования запроса и ответа ПОСЛЕ остальных слоев чтобы использовать актуальные данные\n getFetchLogging(logHandler),\n ];\n}\n"],"mappings":"AAAA;;AAEA,SAASA,UAAU,QAAQ,oBAAiB;AAC5C,SAAqBC,cAAc,QAAQ,0BAAe;AAC1D,SAASC,oBAAoB,QAAQ,mDAAgD;AACrF,SAASC,qBAAqB,QAAQ,oDAAiD;AACvF,SAASC,eAAe,QAAQ,6CAA0C;AAC1E,SAASC,mBAAmB,QAAQ,6CAA0C;AAE9E,OAAO,SAASC,sBAAsBA,CAACC,OAAgB,EAAgB;EACrE,MAAMC,MAAM,GAAGD,OAAO,CAACP,UAAU,CAACS,MAAM,CAACC,IAAI,CAAC;EAC9C,MAAMC,OAAO,GAAGJ,OAAO,CAACP,UAAU,CAACY,IAAI,CAACC,OAAO,CAACF,OAAO,CAAC;EACxD,MAAMG,UAAU,GAAGP,OAAO,CAACP,UAAU,CAACY,IAAI,CAACG,KAAK,CAACC,UAAU,CAACC,GAAG,CAACC,OAAO,CAAC;EACxE,MAAMC,eAAe,GAAGZ,OAAO,CAACP,UAAU,CAACY,IAAI,CAACG,KAAK,CAACI,eAAe,CAAC;EAEtE,OAAO;EACL;EACAjB,oBAAoB,CAACY,UAAU,CAAC;EAEhC;EACAX,qBAAqB,CAACgB,eAAe,CAAC,EAEtClB,cAAc,CAACI,mBAAmB,CAACG,MAAM,EAAEG,OAAO,CAACS,OAAO,CAAC,CAAC;EAE5D;;EAEA;EACAhB,eAAe,CAACU,UAAU,CAAC,CAC5B;AACH"}
@@ -10,23 +10,13 @@ export function provideHandlerMain(resolve) {
10
10
  const logger = resolve(KnownToken.logger);
11
11
  const assetsInit = resolve(KnownToken.Http.Handler.Page.assets);
12
12
  const render = resolve(KnownToken.Http.Handler.Page.render);
13
- const extras = resolve(KnownToken.Http.Handler.Response.specificExtras);
14
13
  const Helmet = resolve(KnownToken.Http.Handler.Page.helmet);
15
14
  const abortController = resolve(KnownToken.Http.Fetch.abortController);
16
15
  const formatResponse = resolve(KnownToken.Http.Handler.Page.formatResponse);
17
-
18
- // @todo https://github.com/sima-land/isomorph/issues/69
19
- // const cookieStore = resolve(KnownToken.Http.Fetch.cookieStore);
20
- // const forwardedSetCookie: string[] = [];
21
- // const unsubscribeCookieStore = cookieStore.subscribe(setCookieList => {
22
- // forwardedSetCookie.push(...setCookieList);
23
- // });
24
-
25
16
  const getAssets = typeof assetsInit === 'function' ? assetsInit : () => assetsInit;
26
17
  const handler = async () => {
27
18
  try {
28
19
  const assets = await getAssets();
29
- const meta = extras.getMeta();
30
20
  const jsx = /*#__PURE__*/React.createElement(HelmetContext.Provider, {
31
21
  value: {
32
22
  title: config.appName,
@@ -36,7 +26,7 @@ export function provideHandlerMain(resolve) {
36
26
  const {
37
27
  body,
38
28
  headers
39
- } = await formatResponse(jsx, assets, meta);
29
+ } = await formatResponse(jsx, assets);
40
30
  return new Response(body, {
41
31
  headers
42
32
  });
@@ -63,21 +53,13 @@ export function provideHandlerMain(resolve) {
63
53
  }
64
54
  };
65
55
  const enhancer = applyMiddleware(
66
- // @todo https://github.com/sima-land/isomorph/issues/69
67
- // async (request, next) => {
68
- // const response = await next(request);
69
- // for (const item of forwardedSetCookie) {
70
- // response.headers.append('set-cookie', item);
71
- // }
72
- // unsubscribeCookieStore();
73
- // return response;
74
- // },
75
-
76
56
  // ВАЖНО: прерываем исходящие в рамках обработчика http-запросы
77
57
  async (request, next) => {
78
- const response = await next(request);
79
- abortController.abort();
80
- return response;
58
+ try {
59
+ return await next(request);
60
+ } finally {
61
+ abortController.abort();
62
+ }
81
63
  });
82
64
  return enhancer(handler);
83
65
  }