@sima-land/isomorph 11.0.0-alpha.0 → 11.0.0-alpha.11

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 (280) hide show
  1. package/{dist/cache → cache}/types.d.ts +0 -0
  2. package/{dist/utils/webpack/module-federation → cache}/types.js +0 -0
  3. package/{dist/cache → cache}/types.js.map +0 -0
  4. package/{dist/config/index.d.ts → config/base.d.ts} +0 -0
  5. package/{dist/config/index.js → config/base.js} +1 -1
  6. package/config/base.js.map +1 -0
  7. package/{dist/config → config}/browser.d.ts +0 -0
  8. package/config/browser.js +22 -0
  9. package/config/browser.js.map +1 -0
  10. package/{dist/config → config}/node.d.ts +0 -0
  11. package/{dist/config → config}/node.js +10 -5
  12. package/config/node.js.map +1 -0
  13. package/{dist/config → config}/types.d.ts +0 -0
  14. package/{dist/tracer → config}/types.js +0 -0
  15. package/{dist/config → config}/types.js.map +0 -0
  16. package/di/application.d.ts +6 -0
  17. package/{dist/container → di}/application.js +17 -8
  18. package/di/application.js.map +1 -0
  19. package/di/container.d.ts +6 -0
  20. package/di/container.js +49 -0
  21. package/di/container.js.map +1 -0
  22. package/di/errors.d.ts +21 -0
  23. package/di/errors.js +33 -0
  24. package/di/errors.js.map +1 -0
  25. package/di/index.d.ts +6 -0
  26. package/di/index.js +16 -0
  27. package/di/index.js.map +1 -0
  28. package/di/preset.d.ts +9 -0
  29. package/di/preset.js +27 -0
  30. package/di/preset.js.map +1 -0
  31. package/di/token.d.ts +7 -0
  32. package/di/token.js +17 -0
  33. package/di/token.js.map +1 -0
  34. package/di/types.d.ts +32 -0
  35. package/{dist/saga-runner → di}/types.js +0 -0
  36. package/{dist/preset → di}/types.js.map +1 -1
  37. package/error-tracking/index.d.ts +22 -0
  38. package/{dist/error-tracker/utils.js → error-tracking/index.js} +14 -3
  39. package/error-tracking/index.js.map +1 -0
  40. package/error-tracking/types.d.ts +13 -0
  41. package/{dist/preset → error-tracking}/types.js +0 -0
  42. package/{dist/container → error-tracking}/types.js.map +1 -1
  43. package/{dist/http-client → http-client}/middleware/cookie.d.ts +0 -0
  44. package/{dist/http-client → http-client}/middleware/cookie.js +0 -0
  45. package/{dist/http-client → http-client}/middleware/cookie.js.map +0 -0
  46. package/http-client/middleware/logging.d.ts +15 -0
  47. package/http-client/middleware/logging.js +93 -0
  48. package/http-client/middleware/logging.js.map +1 -0
  49. package/{dist/http-client → http-client}/middleware/tracing.d.ts +0 -0
  50. package/{dist/http-client → http-client}/middleware/tracing.js +0 -0
  51. package/{dist/http-client → http-client}/middleware/tracing.js.map +0 -0
  52. package/{dist/http-client/utils.d.ts → http-client/sauce/index.d.ts} +0 -9
  53. package/{dist/http-client/utils.js → http-client/sauce/index.js} +2 -18
  54. package/http-client/sauce/index.js.map +1 -0
  55. package/{dist/http-client → http-client}/types.d.ts +0 -0
  56. package/{dist/logger → http-client}/types.js +0 -0
  57. package/{dist/http-client → http-client}/types.js.map +0 -0
  58. package/http-client/utils.d.ts +9 -0
  59. package/http-client/utils.js +20 -0
  60. package/http-client/utils.js.map +1 -0
  61. package/{dist/http-server → http-server}/constants.d.ts +0 -0
  62. package/{dist/http-server → http-server}/constants.js +0 -0
  63. package/{dist/http-server → http-server}/constants.js.map +0 -0
  64. package/{dist/http-server → http-server}/handler/health-check.d.ts +0 -0
  65. package/{dist/http-server → http-server}/handler/health-check.js +0 -0
  66. package/{dist/http-server → http-server}/handler/health-check.js.map +0 -0
  67. package/{dist/http-server → http-server}/middleware/logging.d.ts +0 -0
  68. package/{dist/http-server → http-server}/middleware/logging.js +0 -0
  69. package/{dist/http-server → http-server}/middleware/logging.js.map +0 -0
  70. package/{dist/http-server → http-server}/middleware/metrics.d.ts +0 -0
  71. package/{dist/http-server → http-server}/middleware/metrics.js +0 -0
  72. package/{dist/http-server → http-server}/middleware/metrics.js.map +0 -0
  73. package/http-server/middleware/tracing.d.ts +14 -0
  74. package/{dist/http-server → http-server}/middleware/tracing.js +22 -3
  75. package/http-server/middleware/tracing.js.map +1 -0
  76. package/http-server/template/index.d.ts +1 -0
  77. package/http-server/template/index.js +36 -0
  78. package/http-server/template/index.js.map +1 -0
  79. package/{dist/http-server → http-server}/types.d.ts +8 -0
  80. package/{dist/http-server → http-server}/types.js +0 -0
  81. package/{dist/http-server → http-server}/types.js.map +0 -0
  82. package/{dist/http-server → http-server}/utils.d.ts +5 -1
  83. package/{dist/http-server → http-server}/utils.js +16 -4
  84. package/http-server/utils.js.map +1 -0
  85. package/{dist/logger → logger}/handler/console.d.ts +1 -1
  86. package/{dist/logger → logger}/handler/console.js +8 -1
  87. package/logger/handler/console.js.map +1 -0
  88. package/logger/handler/sentry.d.ts +8 -0
  89. package/{dist/logger → logger}/handler/sentry.js +13 -7
  90. package/logger/handler/sentry.js.map +1 -0
  91. package/logger/index.d.ts +2 -0
  92. package/logger/index.js +6 -0
  93. package/logger/index.js.map +1 -0
  94. package/{dist/logger/index.d.ts → logger/logger.d.ts} +0 -0
  95. package/{dist/logger/index.js → logger/logger.js} +1 -1
  96. package/logger/logger.js.map +1 -0
  97. package/{dist/logger → logger}/types.d.ts +0 -0
  98. package/{dist/http-client → logger}/types.js +0 -0
  99. package/{dist/logger → logger}/types.js.map +0 -0
  100. package/{dist/metrics → metrics}/constants.d.ts +0 -0
  101. package/{dist/metrics → metrics}/constants.js +0 -0
  102. package/{dist/metrics → metrics}/constants.js.map +0 -0
  103. package/{dist/metrics → metrics}/node.d.ts +0 -0
  104. package/{dist/metrics → metrics}/node.js +0 -0
  105. package/{dist/metrics → metrics}/node.js.map +0 -0
  106. package/package.json +8 -11
  107. package/preset/browser/index.d.ts +8 -0
  108. package/preset/browser/index.js +48 -0
  109. package/preset/browser/index.js.map +1 -0
  110. package/preset/node/index.d.ts +19 -0
  111. package/preset/node/index.js +127 -0
  112. package/preset/node/index.js.map +1 -0
  113. package/preset/node/response.d.ts +20 -0
  114. package/preset/node/response.js +82 -0
  115. package/preset/node/response.js.map +1 -0
  116. package/tokens.d.ts +48 -0
  117. package/tokens.js +50 -0
  118. package/tokens.js.map +1 -0
  119. package/tracing/index.d.ts +9 -0
  120. package/tracing/index.js +20 -0
  121. package/tracing/index.js.map +1 -0
  122. package/{dist/utils → utils}/browser/analytics/data-layer.d.ts +0 -0
  123. package/{dist/utils → utils}/browser/analytics/data-layer.js +0 -0
  124. package/{dist/utils → utils}/browser/analytics/data-layer.js.map +0 -0
  125. package/{dist/utils → utils}/browser/analytics/oko.d.ts +0 -0
  126. package/{dist/utils → utils}/browser/analytics/oko.js +0 -0
  127. package/{dist/utils → utils}/browser/analytics/oko.js.map +0 -0
  128. package/{dist/utils → utils}/browser/storage/index.d.ts +0 -0
  129. package/{dist/utils → utils}/browser/storage/index.js +0 -0
  130. package/{dist/utils → utils}/browser/storage/index.js.map +0 -0
  131. package/{dist/utils → utils}/number.d.ts +0 -0
  132. package/{dist/utils → utils}/number.js +0 -0
  133. package/{dist/utils → utils}/number.js.map +0 -0
  134. package/{dist/utils → utils}/react/error-handlers/index.d.ts +0 -0
  135. package/{dist/utils → utils}/react/error-handlers/index.js +1 -0
  136. package/utils/react/error-handlers/index.js.map +1 -0
  137. package/{dist/utils → utils}/redux/remote-data.d.ts +0 -0
  138. package/{dist/utils → utils}/redux/remote-data.js +0 -0
  139. package/{dist/utils → utils}/redux/remote-data.js.map +0 -0
  140. package/utils/redux-saga/index.d.ts +3 -0
  141. package/utils/redux-saga/index.js +8 -0
  142. package/utils/redux-saga/index.js.map +1 -0
  143. package/utils/redux-saga/middleware.d.ts +9 -0
  144. package/utils/redux-saga/middleware.js +87 -0
  145. package/utils/redux-saga/middleware.js.map +1 -0
  146. package/{dist/utils → utils}/redux-saga/take-chain.d.ts +0 -0
  147. package/{dist/utils → utils}/redux-saga/take-chain.js +0 -0
  148. package/{dist/utils → utils}/redux-saga/take-chain.js.map +0 -0
  149. package/utils/redux-saga/types.d.ts +6 -0
  150. package/{dist/error-tracker → utils/redux-saga}/types.js +0 -0
  151. package/{dist/error-tracker → utils/redux-saga}/types.js.map +1 -1
  152. package/utils/ssr/index.d.ts +30 -0
  153. package/utils/ssr/index.js +51 -0
  154. package/utils/ssr/index.js.map +1 -0
  155. package/utils/webpack/index.d.ts +23 -0
  156. package/utils/webpack/index.js +66 -0
  157. package/utils/webpack/index.js.map +1 -0
  158. package/{dist/utils → utils}/webpack/module-federation/index.d.ts +0 -0
  159. package/{dist/utils → utils}/webpack/module-federation/index.js +0 -0
  160. package/{dist/utils → utils}/webpack/module-federation/index.js.map +0 -0
  161. package/{dist/utils → utils}/webpack/module-federation/types.d.ts +0 -0
  162. package/{dist/container → utils/webpack/module-federation}/types.js +0 -0
  163. package/{dist/utils → utils}/webpack/module-federation/types.js.map +0 -0
  164. package/{dist/utils → utils}/webpack/module-federation/utils.d.ts +0 -0
  165. package/{dist/utils → utils}/webpack/module-federation/utils.js +0 -0
  166. package/{dist/utils → utils}/webpack/module-federation/utils.js.map +0 -0
  167. package/LICENSE +0 -201
  168. package/dist/cache/types.js +0 -3
  169. package/dist/config/browser.js +0 -13
  170. package/dist/config/browser.js.map +0 -1
  171. package/dist/config/index.js.map +0 -1
  172. package/dist/config/node.js.map +0 -1
  173. package/dist/config/types.js +0 -3
  174. package/dist/config/utils.d.ts +0 -5
  175. package/dist/config/utils.js +0 -12
  176. package/dist/config/utils.js.map +0 -1
  177. package/dist/container/application.d.ts +0 -25
  178. package/dist/container/application.js.map +0 -1
  179. package/dist/container/index.d.ts +0 -18
  180. package/dist/container/index.js +0 -74
  181. package/dist/container/index.js.map +0 -1
  182. package/dist/container/types.d.ts +0 -14
  183. package/dist/error-tracker/browser.d.ts +0 -8
  184. package/dist/error-tracker/browser.js +0 -40
  185. package/dist/error-tracker/browser.js.map +0 -1
  186. package/dist/error-tracker/node.d.ts +0 -8
  187. package/dist/error-tracker/node.js +0 -40
  188. package/dist/error-tracker/node.js.map +0 -1
  189. package/dist/error-tracker/types.d.ts +0 -18
  190. package/dist/error-tracker/utils.d.ts +0 -12
  191. package/dist/error-tracker/utils.js.map +0 -1
  192. package/dist/http-client/utils.js.map +0 -1
  193. package/dist/http-server/middleware/tracing.d.ts +0 -8
  194. package/dist/http-server/middleware/tracing.js.map +0 -1
  195. package/dist/http-server/utils.js.map +0 -1
  196. package/dist/logger/handler/console.js.map +0 -1
  197. package/dist/logger/handler/sentry.d.ts +0 -8
  198. package/dist/logger/handler/sentry.js.map +0 -1
  199. package/dist/logger/index.js.map +0 -1
  200. package/dist/preset/index.d.ts +0 -7
  201. package/dist/preset/index.js +0 -23
  202. package/dist/preset/index.js.map +0 -1
  203. package/dist/preset/node/index.d.ts +0 -15
  204. package/dist/preset/node/index.js +0 -90
  205. package/dist/preset/node/index.js.map +0 -1
  206. package/dist/preset/node/response.d.ts +0 -12
  207. package/dist/preset/node/response.js +0 -52
  208. package/dist/preset/node/response.js.map +0 -1
  209. package/dist/preset/types.d.ts +0 -7
  210. package/dist/saga-runner/index.d.ts +0 -8
  211. package/dist/saga-runner/index.js +0 -77
  212. package/dist/saga-runner/index.js.map +0 -1
  213. package/dist/saga-runner/types.d.ts +0 -10
  214. package/dist/saga-runner/types.js.map +0 -1
  215. package/dist/tokens.d.ts +0 -40
  216. package/dist/tokens.js +0 -43
  217. package/dist/tokens.js.map +0 -1
  218. package/dist/tracer/node.d.ts +0 -10
  219. package/dist/tracer/node.js +0 -38
  220. package/dist/tracer/node.js.map +0 -1
  221. package/dist/tracer/types.d.ts +0 -2
  222. package/dist/tracer/types.js.map +0 -1
  223. package/dist/utils/react/error-handlers/index.js.map +0 -1
  224. package/readme.md +0 -23
  225. package/src/cache/types.ts +0 -7
  226. package/src/config/browser.ts +0 -10
  227. package/src/config/index.ts +0 -18
  228. package/src/config/node.ts +0 -18
  229. package/src/config/types.ts +0 -9
  230. package/src/config/utils.ts +0 -7
  231. package/src/container/application.ts +0 -91
  232. package/src/container/index.ts +0 -79
  233. package/src/container/types.ts +0 -17
  234. package/src/error-tracker/browser.ts +0 -14
  235. package/src/error-tracker/node.ts +0 -14
  236. package/src/error-tracker/types.ts +0 -22
  237. package/src/error-tracker/utils.ts +0 -18
  238. package/src/http-client/middleware/cookie.ts +0 -73
  239. package/src/http-client/middleware/tracing.ts +0 -79
  240. package/src/http-client/types.ts +0 -8
  241. package/src/http-client/utils.ts +0 -76
  242. package/src/http-server/constants.ts +0 -4
  243. package/src/http-server/handler/health-check.ts +0 -13
  244. package/src/http-server/middleware/logging.ts +0 -34
  245. package/src/http-server/middleware/metrics.ts +0 -87
  246. package/src/http-server/middleware/tracing.ts +0 -35
  247. package/src/http-server/types.ts +0 -29
  248. package/src/http-server/utils.ts +0 -105
  249. package/src/logger/handler/console.ts +0 -35
  250. package/src/logger/handler/sentry.ts +0 -38
  251. package/src/logger/index.ts +0 -31
  252. package/src/logger/types.ts +0 -28
  253. package/src/metrics/constants.ts +0 -4
  254. package/src/metrics/node.ts +0 -54
  255. package/src/preset/index.ts +0 -24
  256. package/src/preset/node/index.ts +0 -101
  257. package/src/preset/node/response.ts +0 -57
  258. package/src/preset/types.ts +0 -9
  259. package/src/saga-runner/index.ts +0 -59
  260. package/src/saga-runner/types.ts +0 -13
  261. package/src/tokens.ts +0 -54
  262. package/src/tracer/node.ts +0 -40
  263. package/src/tracer/types.ts +0 -3
  264. package/src/utils/browser/analytics/__test__/data-layer.test.ts +0 -50
  265. package/src/utils/browser/analytics/__test__/oko.test.tsx +0 -143
  266. package/src/utils/browser/analytics/data-layer.ts +0 -12
  267. package/src/utils/browser/analytics/oko.ts +0 -44
  268. package/src/utils/browser/storage/index.ts +0 -75
  269. package/src/utils/number.ts +0 -8
  270. package/src/utils/react/error-handlers/__test__/__snapshots__/index.test.tsx.snap +0 -27
  271. package/src/utils/react/error-handlers/__test__/index.test.tsx +0 -64
  272. package/src/utils/react/error-handlers/index.tsx +0 -62
  273. package/src/utils/redux/__test__/remote-data.test.ts +0 -50
  274. package/src/utils/redux/remote-data.ts +0 -34
  275. package/src/utils/redux-saga/__test__/take-chain.test.ts +0 -141
  276. package/src/utils/redux-saga/take-chain.ts +0 -65
  277. package/src/utils/webpack/module-federation/__test__/index.test.ts +0 -246
  278. package/src/utils/webpack/module-federation/index.ts +0 -92
  279. package/src/utils/webpack/module-federation/types.ts +0 -44
  280. package/src/utils/webpack/module-federation/utils.ts +0 -43
@@ -1,5 +1,3 @@
1
- import type { Request } from 'express';
2
- import type { BaseConfig } from '../config/types';
3
1
  import type { AxiosInstance } from 'axios';
4
2
  import type { AxiosInstanceWrapper, MethodName } from 'middleware-axios';
5
3
  export declare type SauceResponse<T = any> = {
@@ -27,10 +25,3 @@ export interface Sauce {
27
25
  * @return Обертка.
28
26
  */
29
27
  export declare function sauce(instance: AxiosInstance | AxiosInstanceWrapper): Sauce;
30
- /**
31
- * Формирует заголовки для исходящих запросов с сервера по соглашению.
32
- * @param config Конфиг.
33
- * @param request Входящий запрос.
34
- * @return Заголовки для исходящих запросов.
35
- */
36
- export declare function getRequestHeaders(config: BaseConfig, request: Request): Record<string, string>;
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getRequestHeaders = exports.sauce = void 0;
4
- const utils_1 = require("../http-server/utils");
3
+ exports.sauce = void 0;
5
4
  /**
6
5
  * Оборачивает экземпляр axios. Все методы обертки возвращают promise, который никогда не попадают в состояние rejected.
7
6
  * @param instance Экземпляр axios или AxiosInstanceWrapper.
@@ -31,19 +30,4 @@ function sauce(instance) {
31
30
  };
32
31
  }
33
32
  exports.sauce = sauce;
34
- /**
35
- * Формирует заголовки для исходящих запросов с сервера по соглашению.
36
- * @param config Конфиг.
37
- * @param request Входящий запрос.
38
- * @return Заголовки для исходящих запросов.
39
- */
40
- function getRequestHeaders(config, request) {
41
- return {
42
- 'X-Client-Ip': (0, utils_1.getXClientIp)(request),
43
- 'User-Agent': `simaland-${config.appName}/${config.appVersion}`,
44
- Cookie: request.get('cookie') || '',
45
- ...(0, utils_1.getServiceHeaders)(request),
46
- };
47
- }
48
- exports.getRequestHeaders = getRequestHeaders;
49
- //# sourceMappingURL=utils.js.map
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/http-client/sauce/index.ts"],"names":[],"mappings":";;;AA4BA;;;;GAIG;AACH,SAAgB,KAAK,CAAC,QAA8C;IAClE,8DAA8D;IAC9D,SAAS,YAAY,CAAyB,UAAe;QAC3D,OAAO,KAAK,WACV,GAAG,IAAoC;YAEvC,IAAI;gBACF,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC,GAAI,IAAc,CAAC,CAAC;gBAChE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;aAC1C;YAAC,OAAO,KAAK,EAAE;gBACd,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;aAC7B;QACH,CAAC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC;QACxB,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC;QAC9B,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC;QAC1B,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC;QAChC,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC;QAC1B,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC;QACxB,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC;KAC7B,CAAC;AACJ,CAAC;AAxBD,sBAwBC"}
File without changes
File without changes
File without changes
@@ -0,0 +1,9 @@
1
+ import type { Request } from 'express';
2
+ import type { BaseConfig } from '../config/types';
3
+ /**
4
+ * Формирует заголовки для исходящих запросов с сервера по соглашению.
5
+ * @param config Конфиг.
6
+ * @param request Входящий запрос.
7
+ * @return Заголовки для исходящих запросов.
8
+ */
9
+ export declare function getRequestHeaders(config: BaseConfig, request: Request): Record<string, string>;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getRequestHeaders = void 0;
4
+ const utils_1 = require("../http-server/utils");
5
+ /**
6
+ * Формирует заголовки для исходящих запросов с сервера по соглашению.
7
+ * @param config Конфиг.
8
+ * @param request Входящий запрос.
9
+ * @return Заголовки для исходящих запросов.
10
+ */
11
+ function getRequestHeaders(config, request) {
12
+ return {
13
+ 'X-Client-Ip': (0, utils_1.getXClientIp)(request),
14
+ 'User-Agent': `simaland-${config.appName}/${config.appVersion}`,
15
+ Cookie: request.get('cookie') || '',
16
+ ...(0, utils_1.getServiceHeaders)(request),
17
+ };
18
+ }
19
+ exports.getRequestHeaders = getRequestHeaders;
20
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/http-client/utils.ts"],"names":[],"mappings":";;;AAAA,gDAAuE;AAIvE;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,MAAkB,EAAE,OAAgB;IACpE,OAAO;QACL,aAAa,EAAE,IAAA,oBAAY,EAAC,OAAO,CAAC;QACpC,YAAY,EAAE,YAAY,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,UAAU,EAAE;QAC/D,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE;QACnC,GAAG,IAAA,yBAAiB,EAAC,OAAO,CAAC;KAC9B,CAAC;AACJ,CAAC;AAPD,8CAOC"}
File without changes
File without changes
@@ -0,0 +1,14 @@
1
+ import { Tracer } from '@opentelemetry/api';
2
+ import type { Request, Handler } from 'express';
3
+ /**
4
+ * Возвращает новый middleware для трассировки стадий входящего запроса.
5
+ * @param tracer Tracer.
6
+ * @return Middleware.
7
+ */
8
+ export declare function tracingMiddleware(tracer: Tracer): Handler;
9
+ /**
10
+ * Возвращает набор стандартных атрибутов для спана.
11
+ * @param req Входящий http-запрос.
12
+ * @return Атрибуты.
13
+ */
14
+ export declare function getConventionalRequestAttrs(req: Request): Record<string, string | undefined>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.tracingMiddleware = void 0;
3
+ exports.getConventionalRequestAttrs = exports.tracingMiddleware = void 0;
4
4
  const constants_1 = require("../constants");
5
5
  const api_1 = require("@opentelemetry/api");
6
6
  /**
@@ -10,8 +10,10 @@ const api_1 = require("@opentelemetry/api");
10
10
  */
11
11
  function tracingMiddleware(tracer) {
12
12
  return (req, res, next) => {
13
- const rootContext = api_1.propagation.extract(api_1.ROOT_CONTEXT, req.headers);
14
- const rootSpan = tracer.startSpan('response', undefined, rootContext);
13
+ const externalContext = api_1.propagation.extract(api_1.ROOT_CONTEXT, req.headers);
14
+ const rootSpan = tracer.startSpan('response', undefined, externalContext);
15
+ rootSpan.setAttributes(getConventionalRequestAttrs(req));
16
+ const rootContext = api_1.trace.setSpan(externalContext, rootSpan);
15
17
  res.locals.tracing = {
16
18
  rootSpan,
17
19
  rootContext,
@@ -29,4 +31,21 @@ function tracingMiddleware(tracer) {
29
31
  };
30
32
  }
31
33
  exports.tracingMiddleware = tracingMiddleware;
34
+ /**
35
+ * Возвращает набор стандартных атрибутов для спана.
36
+ * @param req Входящий http-запрос.
37
+ * @return Атрибуты.
38
+ */
39
+ function getConventionalRequestAttrs(req) {
40
+ const result = {
41
+ 'request.path': req.originalUrl,
42
+ };
43
+ for (const headerName in req.headers) {
44
+ if (headerName.toLowerCase().startsWith('simaland-')) {
45
+ result[headerName] = req.header(headerName);
46
+ }
47
+ }
48
+ return result;
49
+ }
50
+ exports.getConventionalRequestAttrs = getConventionalRequestAttrs;
32
51
  //# sourceMappingURL=tracing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracing.js","sourceRoot":"","sources":["../../../src/http-server/middleware/tracing.ts"],"names":[],"mappings":";;;AAAA,4CAA8C;AAC9C,4CAA8E;AAG9E;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,MAAc;IAC9C,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACxB,MAAM,eAAe,GAAG,iBAAW,CAAC,OAAO,CAAC,kBAAY,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QACvE,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;QAE1E,QAAQ,CAAC,aAAa,CAAC,2BAA2B,CAAC,GAAG,CAAC,CAAC,CAAC;QAEzD,MAAM,WAAW,GAAG,WAAK,CAAC,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QAE7D,GAAG,CAAC,MAAM,CAAC,OAAO,GAAG;YACnB,QAAQ;YACR,WAAW;SACZ,CAAC;QAEF,GAAG,CAAC,IAAI,CAAC,0BAAc,CAAC,WAAW,EAAE,GAAG,EAAE;YACxC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,0BAAc,CAAC,YAAY,EAAE,GAAG,EAAE;YACzC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;YACtB,QAAQ,CAAC,GAAG,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC;AA5BD,8CA4BC;AAED;;;;GAIG;AACH,SAAgB,2BAA2B,CAAC,GAAY;IACtD,MAAM,MAAM,GAAuC;QACjD,cAAc,EAAE,GAAG,CAAC,WAAW;KAChC,CAAC;IAEF,KAAK,MAAM,UAAU,IAAI,GAAG,CAAC,OAAO,EAAE;QACpC,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;YACpD,MAAM,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;SAC7C;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAZD,kEAYC"}
@@ -0,0 +1 @@
1
+ export declare const pageTemplate: import("ejs").TemplateFunction;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pageTemplate = void 0;
4
+ const ejs_1 = require("ejs");
5
+ exports.pageTemplate = (0, ejs_1.compile)(`
6
+ <!DOCTYPE html>
7
+ <html lang="ru">
8
+ <head>
9
+ <meta charset="UTF-8">
10
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
11
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
12
+ <title><%= title %></title>
13
+ <style>
14
+ * {
15
+ margin: 0;
16
+ padding: 0;
17
+ border: 0;
18
+ outline: 0;
19
+ box-sizing: border-box;
20
+ font: inherit;
21
+ line-height: inherit;
22
+ }
23
+ </style>
24
+ <% if (assets.css) { %>
25
+ <link rel="stylesheet" href="<%= assets.css %>">
26
+ <% } %>
27
+ </head>
28
+ <body>
29
+ <%- markup %>
30
+ <% if (assets.js) { %>
31
+ <script src="<%= assets.js %>"></script>
32
+ <% } %>
33
+ </body>
34
+ </html>
35
+ `);
36
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/http-server/template/index.ts"],"names":[],"mappings":";;;AAAA,6BAA8B;AAEjB,QAAA,YAAY,GAAG,IAAA,aAAO,EAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BnC,CAAC,CAAC"}
@@ -8,6 +8,14 @@ export interface PageAssets {
8
8
  js: string;
9
9
  css: string;
10
10
  }
11
+ export interface PageTemplateData {
12
+ markup: string;
13
+ assets: PageAssets;
14
+ type: 'json' | 'html';
15
+ }
16
+ export interface PageTemplate {
17
+ (data: PageTemplateData): string;
18
+ }
11
19
  export interface ConventionalJson {
12
20
  markup: string;
13
21
  bundle_js: string;
File without changes
File without changes
@@ -1,4 +1,5 @@
1
1
  import type { Request, Response } from 'express';
2
+ import type { PageTemplate, PageTemplateData } from './types';
2
3
  /**
3
4
  * Определяет IP входящего запроса.
4
5
  * @param req Входящий запрос.
@@ -15,12 +16,15 @@ export declare class PageResponse {
15
16
  private type;
16
17
  private html;
17
18
  private assets;
19
+ private _template;
18
20
  static create(): PageResponse;
19
21
  static defineFormat(req: Request): PageResponse['type'];
22
+ static defaultTemplate({ markup }: PageTemplateData): string;
20
23
  constructor();
21
24
  markup(html: string): this;
22
25
  script(url: string): this;
23
- style(url: string): this;
26
+ styles(url: string): this;
24
27
  format(type: PageResponse['type']): this;
28
+ template(template: PageTemplate): this;
25
29
  send(res: Response): void;
26
30
  }
@@ -33,6 +33,7 @@ class PageResponse {
33
33
  this.type = 'html';
34
34
  this.html = '';
35
35
  this.assets = { js: '', css: '' };
36
+ this._template = PageResponse.defaultTemplate;
36
37
  }
37
38
  static create() {
38
39
  return new PageResponse();
@@ -44,6 +45,9 @@ class PageResponse {
44
45
  }
45
46
  return result;
46
47
  }
48
+ static defaultTemplate({ markup }) {
49
+ return markup;
50
+ }
47
51
  markup(html) {
48
52
  this.html = html;
49
53
  return this;
@@ -52,7 +56,7 @@ class PageResponse {
52
56
  this.assets.js = url;
53
57
  return this;
54
58
  }
55
- style(url) {
59
+ styles(url) {
56
60
  this.assets.css = url;
57
61
  return this;
58
62
  }
@@ -60,11 +64,20 @@ class PageResponse {
60
64
  this.type = type;
61
65
  return this;
62
66
  }
67
+ template(template) {
68
+ this._template = template;
69
+ return this;
70
+ }
63
71
  send(res) {
72
+ const templateData = {
73
+ type: this.type,
74
+ markup: this.html,
75
+ assets: this.assets,
76
+ };
64
77
  switch (this.type) {
65
78
  case 'json': {
66
79
  const result = {
67
- markup: this.html,
80
+ markup: this._template(templateData),
68
81
  bundle_js: this.assets.js,
69
82
  bundle_css: this.assets.css,
70
83
  };
@@ -74,8 +87,7 @@ class PageResponse {
74
87
  case 'html': {
75
88
  res.setHeader('simaland-bundle-js', this.assets.js);
76
89
  res.setHeader('simaland-bundle-css', this.assets.css);
77
- // @todo dev-шаблон?
78
- res.send(this.html);
90
+ res.send(this._template(templateData));
79
91
  break;
80
92
  }
81
93
  default:
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/http-server/utils.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { BaseConfig } from '../../config/types';
2
- import { LoggerEventHandler } from '../types';
2
+ import type { LoggerEventHandler } from '../types';
3
3
  /**
4
4
  * Возвращает новый handler для logger'а для вывода событий в терминал.
5
5
  * @param config Конфиг.
@@ -21,11 +21,18 @@ function createConsoleHandler(config) {
21
21
  },
22
22
  }
23
23
  : (0, pino_pretty_1.default)({ colorize: true }));
24
- return function (event) {
24
+ return function handler(event) {
25
25
  switch (event.type) {
26
+ case 'log':
26
27
  case 'info':
27
28
  logger.info(event.data);
28
29
  break;
30
+ case 'warn':
31
+ logger.warn(event.data);
32
+ break;
33
+ case 'debug':
34
+ logger.debug(event.data);
35
+ break;
29
36
  case 'error':
30
37
  logger.error(event.data);
31
38
  break;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console.js","sourceRoot":"","sources":["../../../src/logger/handler/console.ts"],"names":[],"mappings":";;;;;;AAEA,gDAAwB;AACxB,8DAAqC;AAErC;;;;GAIG;AACH,SAAgB,oBAAoB,CAAC,MAAkB;IACrD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,KAAK,YAAY,CAAC;IAE3C,MAAM,MAAM,GAAG,IAAA,cAAI,EACjB,MAAM;QACJ,CAAC,CAAC;YACE,UAAU,EAAE;gBACV,0DAA0D;gBAC1D,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;aACnC;SACF;QACH,CAAC,CAAC,IAAA,qBAAU,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CACnC,CAAC;IAEF,OAAO,SAAS,OAAO,CAAC,KAAK;QAC3B,QAAQ,KAAK,CAAC,IAAI,EAAE;YAClB,KAAK,KAAK,CAAC;YACX,KAAK,MAAM;gBACT,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxB,MAAM;YACR,KAAK,MAAM;gBACT,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxB,MAAM;YACR,KAAK,OAAO;gBACV,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACzB,MAAM;YACR,KAAK,OAAO;gBACV,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACzB,MAAM;SACT;IACH,CAAC,CAAC;AACJ,CAAC;AA/BD,oDA+BC"}
@@ -0,0 +1,8 @@
1
+ import type { LoggerEventHandler } from '../types';
2
+ import type { Hub } from '@sentry/types';
3
+ /**
4
+ * Возвращает новый handler для logger'а для отправки событий в Sentry.
5
+ * @param hub Набор данных для работы с Sentry.
6
+ * @return Handler.
7
+ */
8
+ export declare function createSentryHandler(hub: Hub): LoggerEventHandler;
@@ -1,19 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createSentryHandler = void 0;
4
- const utils_1 = require("../../error-tracker/utils");
4
+ const error_tracking_1 = require("../../error-tracking");
5
5
  /**
6
6
  * Возвращает новый handler для logger'а для отправки событий в Sentry.
7
- * @param sentry Набор данных для работы с Sentry.
7
+ * @param hub Набор данных для работы с Sentry.
8
8
  * @return Handler.
9
9
  */
10
- function createSentryHandler(sentry) {
10
+ function createSentryHandler(hub) {
11
11
  return event => {
12
+ // error
12
13
  if (event.type === 'error') {
13
14
  const error = event.data;
14
- if (error instanceof utils_1.SentryError) {
15
+ if (error instanceof error_tracking_1.SentryError) {
15
16
  const { level, context, extra } = error.data;
16
- sentry.withScope(scope => {
17
+ hub.withScope(scope => {
17
18
  if (level) {
18
19
  scope.setLevel(level);
19
20
  }
@@ -23,13 +24,18 @@ function createSentryHandler(sentry) {
23
24
  if (extra) {
24
25
  scope.setExtra(extra.key, extra.data);
25
26
  }
26
- sentry.client.captureException(error);
27
+ hub.captureException(error);
27
28
  });
28
29
  }
29
30
  else {
30
- sentry.client.captureException(error);
31
+ hub.captureException(error);
31
32
  }
32
33
  }
34
+ // breadcrumb
35
+ if (event.data instanceof error_tracking_1.SentryBreadcrumb) {
36
+ const breadcrumb = event.data.data;
37
+ hub.addBreadcrumb(breadcrumb);
38
+ }
33
39
  };
34
40
  }
35
41
  exports.createSentryHandler = createSentryHandler;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sentry.js","sourceRoot":"","sources":["../../../src/logger/handler/sentry.ts"],"names":[],"mappings":";;;AAEA,yDAAqE;AAErE;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,GAAQ;IAC1C,OAAO,KAAK,CAAC,EAAE;QACb,QAAQ;QACR,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE;YAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;YAEzB,IAAI,KAAK,YAAY,4BAAW,EAAE;gBAChC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC;gBAE7C,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;oBACpB,IAAI,KAAK,EAAE;wBACT,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;qBACvB;oBAED,IAAI,OAAO,EAAE;wBACX,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;qBAC7C;oBAED,IAAI,KAAK,EAAE;wBACT,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;qBACvC;oBAED,GAAG,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBAC9B,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,GAAG,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;aAC7B;SACF;QAED,aAAa;QACb,IAAI,KAAK,CAAC,IAAI,YAAY,iCAAgB,EAAE;YAC1C,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;YAEnC,GAAG,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;SAC/B;IACH,CAAC,CAAC;AACJ,CAAC;AApCD,kDAoCC"}
@@ -0,0 +1,2 @@
1
+ export { Logger, LoggerEvent, LoggerEventType, LoggerEventHandler } from './types';
2
+ export { createLogger } from './logger';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createLogger = void 0;
4
+ var logger_1 = require("./logger");
5
+ Object.defineProperty(exports, "createLogger", { enumerable: true, get: function () { return logger_1.createLogger; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/logger/index.ts"],"names":[],"mappings":";;;AACA,mCAAwC;AAA/B,sGAAA,YAAY,OAAA"}
File without changes
@@ -28,4 +28,4 @@ function createLogger() {
28
28
  };
29
29
  }
30
30
  exports.createLogger = createLogger;
31
- //# sourceMappingURL=index.js.map
31
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger/logger.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACH,SAAgB,YAAY;IAC1B,MAAM,QAAQ,GAAyB,EAAE,CAAC;IAE1C,8DAA8D;IAC9D,SAAS,YAAY,CAAC,IAAqB;QACzC,OAAO,UAAU,IAAS;YACxB,MAAM,KAAK,GAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YAC1C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;gBAC9B,OAAO,CAAC,KAAK,CAAC,CAAC;aAChB;QACH,CAAC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC;QACxB,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC;QAC1B,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC;QAC1B,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC;QAC5B,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC;QAE5B,SAAS,EAAE,OAAO,CAAC,EAAE;YACnB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;KACF,CAAC;AACJ,CAAC;AAxBD,oCAwBC"}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/package.json CHANGED
@@ -1,23 +1,16 @@
1
1
  {
2
2
  "name": "@sima-land/isomorph",
3
- "version": "11.0.0-alpha.0",
3
+ "version": "11.0.0-alpha.11",
4
4
  "description": "Tiny framework for fast start frontend microservices",
5
5
  "author": "www.sima-land.ru team",
6
6
  "license": "Apache-2.0",
7
- "files": [
8
- "src",
9
- "dist",
10
- "readme.md"
11
- ],
12
- "exports": {
13
- "./": "./dist/"
14
- },
15
7
  "scripts": {
16
8
  "prepare": "",
17
9
  "type-check": "tsc -p . --noEmit",
18
10
  "build:before": "rm -rf dist",
19
11
  "build:main": "tsc --project tsconfig.build.json",
20
- "build": "npm run build:before && npm run build:main",
12
+ "build:after": "cp package.json dist/package.json",
13
+ "build": "npm run build:before && npm run build:main && npm run build:after",
21
14
  "lint": "eslint --cache ./src --ext .js,.jsx,.ts,.tsx",
22
15
  "test": "jest",
23
16
  "test:coverage": "jest --clearCache && jest --coverage"
@@ -26,8 +19,10 @@
26
19
  "@sima-land/linters": "^2.1.2",
27
20
  "@swc/jest": "^0.2.20",
28
21
  "@testing-library/react": "^12.1.3",
22
+ "@types/ejs": "^3.1.1",
29
23
  "@types/express": "^4.17.13",
30
24
  "@types/jest": "^27.4.1",
25
+ "@types/jsesc": "^3.0.1",
31
26
  "@types/lodash": "^4.14.182",
32
27
  "@types/react": "^17.0.40",
33
28
  "@types/react-dom": "^17.0.13",
@@ -38,7 +33,7 @@
38
33
  },
39
34
  "dependencies": {
40
35
  "@humanwhocodes/env": "^2.2.0",
41
- "@opentelemetry/api": "^1.0.4",
36
+ "@opentelemetry/api": "^1.1.0",
42
37
  "@opentelemetry/exporter-jaeger": "^1.0.1",
43
38
  "@opentelemetry/instrumentation": "^0.27.0",
44
39
  "@opentelemetry/instrumentation-express": "^0.28.0",
@@ -50,7 +45,9 @@
50
45
  "@sentry/browser": "^6.19.3",
51
46
  "@sentry/node": "^6.19.3",
52
47
  "dotenv": "^16.0.0",
48
+ "ejs": "^3.1.8",
53
49
  "express": "^4.17.3",
50
+ "jsesc": "^3.0.2",
54
51
  "middleware-axios": "^2.1.2",
55
52
  "pino": "^7.9.1",
56
53
  "pino-pretty": "^7.5.4",
@@ -0,0 +1,8 @@
1
+ import { Resolve } from '../../di';
2
+ import { Logger } from '../../logger';
3
+ import { SagaExtendedMiddleware } from '../../utils/redux-saga';
4
+ import type { BaseConfig } from '../../config/types';
5
+ export declare function PresetBrowser(): import("../../di").Preset;
6
+ export declare function provideBaseConfig(resolve: Resolve): BaseConfig;
7
+ export declare function provideLogger(resolve: Resolve): Logger;
8
+ export declare function provideSagaMiddleware(resolve: Resolve): SagaExtendedMiddleware;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.provideSagaMiddleware = exports.provideLogger = exports.provideBaseConfig = exports.PresetBrowser = void 0;
4
+ /* eslint-disable require-jsdoc, jsdoc/require-jsdoc */
5
+ const di_1 = require("../../di");
6
+ const tokens_1 = require("../../tokens");
7
+ const base_1 = require("../../config/base");
8
+ const browser_1 = require("../../config/browser");
9
+ const logger_1 = require("../../logger");
10
+ const sentry_1 = require("../../logger/handler/sentry");
11
+ const redux_saga_1 = require("../../utils/redux-saga");
12
+ const browser_2 = require("@sentry/browser");
13
+ const middleware_axios_1 = require("middleware-axios");
14
+ function PresetBrowser() {
15
+ return (0, di_1.createPreset)([
16
+ [tokens_1.KnownToken.Config.source, browser_1.createConfigSource],
17
+ [tokens_1.KnownToken.Config.base, provideBaseConfig],
18
+ [tokens_1.KnownToken.logger, provideLogger],
19
+ [tokens_1.KnownToken.sagaMiddleware, provideSagaMiddleware],
20
+ [tokens_1.KnownToken.Http.Client.factory, () => middleware_axios_1.create],
21
+ ]);
22
+ }
23
+ exports.PresetBrowser = PresetBrowser;
24
+ function provideBaseConfig(resolve) {
25
+ const source = resolve(tokens_1.KnownToken.Config.source);
26
+ return (0, base_1.createBaseConfig)(source);
27
+ }
28
+ exports.provideBaseConfig = provideBaseConfig;
29
+ function provideLogger(resolve) {
30
+ const source = resolve(tokens_1.KnownToken.Config.source);
31
+ const client = new browser_2.BrowserClient({
32
+ dsn: source.require('SENTRY_CLIENT_DSN'),
33
+ release: source.require('SENTRY_RELEASE'),
34
+ environment: source.require('SENTRY_ENVIRONMENT'),
35
+ integrations: [...browser_2.defaultIntegrations],
36
+ });
37
+ const hub = new browser_2.Hub(client);
38
+ const logger = (0, logger_1.createLogger)();
39
+ logger.subscribe((0, sentry_1.createSentryHandler)(hub));
40
+ return logger;
41
+ }
42
+ exports.provideLogger = provideLogger;
43
+ function provideSagaMiddleware(resolve) {
44
+ const logger = resolve(tokens_1.KnownToken.logger);
45
+ return (0, redux_saga_1.createSagaMiddleware)(logger);
46
+ }
47
+ exports.provideSagaMiddleware = provideSagaMiddleware;
48
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/preset/browser/index.ts"],"names":[],"mappings":";;;AAAA,wDAAwD;AACxD,iCAAiD;AACjD,yCAA0C;AAC1C,4CAAqD;AACrD,kDAA0D;AAC1D,yCAAoD;AACpD,wDAAkE;AAClE,uDAAsF;AACtF,6CAA0E;AAC1E,uDAA0C;AAG1C,SAAgB,aAAa;IAC3B,OAAO,IAAA,iBAAY,EAAC;QAClB,CAAC,mBAAU,CAAC,MAAM,CAAC,MAAM,EAAE,4BAAkB,CAAC;QAC9C,CAAC,mBAAU,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC;QAC3C,CAAC,mBAAU,CAAC,MAAM,EAAE,aAAa,CAAC;QAClC,CAAC,mBAAU,CAAC,cAAc,EAAE,qBAAqB,CAAC;QAClD,CAAC,mBAAU,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,yBAAM,CAAC;KAC/C,CAAC,CAAC;AACL,CAAC;AARD,sCAQC;AAED,SAAgB,iBAAiB,CAAC,OAAgB;IAChD,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEjD,OAAO,IAAA,uBAAgB,EAAC,MAAM,CAAC,CAAC;AAClC,CAAC;AAJD,8CAIC;AAED,SAAgB,aAAa,CAAC,OAAgB;IAC5C,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEjD,MAAM,MAAM,GAAG,IAAI,uBAAa,CAAC;QAC/B,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC;QACxC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACzC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACjD,YAAY,EAAE,CAAC,GAAG,6BAAmB,CAAC;KACvC,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC;IAE5B,MAAM,MAAM,GAAG,IAAA,qBAAY,GAAE,CAAC;IAE9B,MAAM,CAAC,SAAS,CAAC,IAAA,4BAAmB,EAAC,GAAG,CAAC,CAAC,CAAC;IAE3C,OAAO,MAAM,CAAC;AAChB,CAAC;AAjBD,sCAiBC;AAED,SAAgB,qBAAqB,CAAC,OAAgB;IACpD,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAU,CAAC,MAAM,CAAC,CAAC;IAE1C,OAAO,IAAA,iCAAoB,EAAC,MAAM,CAAC,CAAC;AACtC,CAAC;AAJD,sDAIC"}