jr-common-micro 0.6.1-dev

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 (356) hide show
  1. package/README.md +33 -0
  2. package/dist/common/dto/by_id_request_dto.d.ts +11 -0
  3. package/dist/common/dto/by_id_request_dto.js +10 -0
  4. package/dist/common/dto/index.d.ts +3 -0
  5. package/dist/common/dto/index.js +7 -0
  6. package/dist/common/dto/paginate_from_request_dto.d.ts +58 -0
  7. package/dist/common/dto/paginate_from_request_dto.js +22 -0
  8. package/dist/common/dto/paginate_request_dto.d.ts +23 -0
  9. package/dist/common/dto/paginate_request_dto.js +14 -0
  10. package/dist/common/exception/base_exception.d.ts +4 -0
  11. package/dist/common/exception/base_exception.js +14 -0
  12. package/dist/common/exception/index.d.ts +1 -0
  13. package/dist/common/exception/index.js +5 -0
  14. package/dist/common/factory/grpc_options_factory.d.ts +15 -0
  15. package/dist/common/factory/grpc_options_factory.js +63 -0
  16. package/dist/common/factory/index.d.ts +5 -0
  17. package/dist/common/factory/index.js +9 -0
  18. package/dist/common/factory/logger/index.d.ts +2 -0
  19. package/dist/common/factory/logger/index.js +6 -0
  20. package/dist/common/factory/logger/kafka_transport.d.ts +16 -0
  21. package/dist/common/factory/logger/kafka_transport.js +54 -0
  22. package/dist/common/factory/logger/winston_config.d.ts +22 -0
  23. package/dist/common/factory/logger/winston_config.js +141 -0
  24. package/dist/common/factory/module_metadata_factory.d.ts +24 -0
  25. package/dist/common/factory/module_metadata_factory.js +186 -0
  26. package/dist/common/factory/redis_client_factory.d.ts +5 -0
  27. package/dist/common/factory/redis_client_factory.js +22 -0
  28. package/dist/common/factory/redis_cluster_factory.d.ts +5 -0
  29. package/dist/common/factory/redis_cluster_factory.js +25 -0
  30. package/dist/common/filters/grpc_exceptions_filter.d.ts +6 -0
  31. package/dist/common/filters/grpc_exceptions_filter.js +26 -0
  32. package/dist/common/filters/index.d.ts +1 -0
  33. package/dist/common/filters/index.js +5 -0
  34. package/dist/common/guards/app_auth_guard.d.ts +5 -0
  35. package/dist/common/guards/app_auth_guard.js +38 -0
  36. package/dist/common/guards/app_internal_guard.d.ts +5 -0
  37. package/dist/common/guards/app_internal_guard.js +38 -0
  38. package/dist/common/guards/app_role_guard.d.ts +5 -0
  39. package/dist/common/guards/app_role_guard.js +43 -0
  40. package/dist/common/guards/index.d.ts +4 -0
  41. package/dist/common/guards/index.js +8 -0
  42. package/dist/common/guards/jwt_auth_user_decorator.d.ts +1 -0
  43. package/dist/common/guards/jwt_auth_user_decorator.js +31 -0
  44. package/dist/common/index.d.ts +8 -0
  45. package/dist/common/index.js +12 -0
  46. package/dist/common/interceptors/grpc/grpc_error_interceptors.d.ts +7 -0
  47. package/dist/common/interceptors/grpc/grpc_error_interceptors.js +35 -0
  48. package/dist/common/interceptors/grpc/index.d.ts +1 -0
  49. package/dist/common/interceptors/grpc/index.js +5 -0
  50. package/dist/common/interceptors/http/http_error_interceptors.d.ts +7 -0
  51. package/dist/common/interceptors/http/http_error_interceptors.js +30 -0
  52. package/dist/common/interceptors/http/http_response_interceptors.d.ts +7 -0
  53. package/dist/common/interceptors/http/http_response_interceptors.js +20 -0
  54. package/dist/common/interceptors/http/index.d.ts +2 -0
  55. package/dist/common/interceptors/http/index.js +6 -0
  56. package/dist/common/interceptors/index.d.ts +2 -0
  57. package/dist/common/interceptors/index.js +6 -0
  58. package/dist/common/kafka/index.d.ts +3 -0
  59. package/dist/common/kafka/index.js +7 -0
  60. package/dist/common/kafka/kafka_admin_service.d.ts +13 -0
  61. package/dist/common/kafka/kafka_admin_service.js +64 -0
  62. package/dist/common/kafka/kafka_consumer_service.d.ts +19 -0
  63. package/dist/common/kafka/kafka_consumer_service.js +80 -0
  64. package/dist/common/kafka/kafka_producer_service.d.ts +14 -0
  65. package/dist/common/kafka/kafka_producer_service.js +49 -0
  66. package/dist/common/service/crud/crud_service_interface.d.ts +20 -0
  67. package/dist/common/service/crud/crud_service_interface.js +2 -0
  68. package/dist/common/service/crud/index.d.ts +1 -0
  69. package/dist/common/service/crud/index.js +5 -0
  70. package/dist/common/service/index.d.ts +1 -0
  71. package/dist/common/service/index.js +5 -0
  72. package/dist/index.d.ts +3 -0
  73. package/dist/index.js +7 -0
  74. package/dist/proto/index.d.ts +1 -0
  75. package/dist/proto/index.js +5 -0
  76. package/dist/proto/micro/index.d.ts +1 -0
  77. package/dist/proto/micro/index.js +5 -0
  78. package/dist/proto/micro/v1/coin/analytics_messages_nest.d.ts +335 -0
  79. package/dist/proto/micro/v1/coin/analytics_messages_nest.js +18 -0
  80. package/dist/proto/micro/v1/coin/analytics_messages_pb.d.ts +670 -0
  81. package/dist/proto/micro/v1/coin/analytics_messages_pb.js +1456 -0
  82. package/dist/proto/micro/v1/coin/coin_messages_nest.d.ts +110 -0
  83. package/dist/proto/micro/v1/coin/coin_messages_nest.js +5 -0
  84. package/dist/proto/micro/v1/coin/coin_messages_pb.d.ts +258 -0
  85. package/dist/proto/micro/v1/coin/coin_messages_pb.js +568 -0
  86. package/dist/proto/micro/v1/coin/coin_websocket_messages_nest.d.ts +72 -0
  87. package/dist/proto/micro/v1/coin/coin_websocket_messages_nest.js +5 -0
  88. package/dist/proto/micro/v1/coin/coin_websocket_messages_pb.d.ts +128 -0
  89. package/dist/proto/micro/v1/coin/coin_websocket_messages_pb.js +276 -0
  90. package/dist/proto/micro/v1/coin/data_general_messages_nest.d.ts +54 -0
  91. package/dist/proto/micro/v1/coin/data_general_messages_nest.js +5 -0
  92. package/dist/proto/micro/v1/coin/data_general_messages_pb.d.ts +118 -0
  93. package/dist/proto/micro/v1/coin/data_general_messages_pb.js +259 -0
  94. package/dist/proto/micro/v1/coin/data_microservice_messages_nest.d.ts +43 -0
  95. package/dist/proto/micro/v1/coin/data_microservice_messages_nest.js +5 -0
  96. package/dist/proto/micro/v1/coin/data_microservice_messages_pb.d.ts +91 -0
  97. package/dist/proto/micro/v1/coin/data_microservice_messages_pb.js +199 -0
  98. package/dist/proto/micro/v1/coin/etf_messages_nest.d.ts +98 -0
  99. package/dist/proto/micro/v1/coin/etf_messages_nest.js +5 -0
  100. package/dist/proto/micro/v1/coin/etf_messages_pb.d.ts +226 -0
  101. package/dist/proto/micro/v1/coin/etf_messages_pb.js +499 -0
  102. package/dist/proto/micro/v1/coin/index.d.ts +11 -0
  103. package/dist/proto/micro/v1/coin/index.js +15 -0
  104. package/dist/proto/micro/v1/coin/long_short_ratio_messages_nest.d.ts +55 -0
  105. package/dist/proto/micro/v1/coin/long_short_ratio_messages_nest.js +5 -0
  106. package/dist/proto/micro/v1/coin/long_short_ratio_messages_pb.d.ts +115 -0
  107. package/dist/proto/micro/v1/coin/long_short_ratio_messages_pb.js +249 -0
  108. package/dist/proto/micro/v1/coin/rsi_messages_nest.d.ts +42 -0
  109. package/dist/proto/micro/v1/coin/rsi_messages_nest.js +5 -0
  110. package/dist/proto/micro/v1/coin/rsi_messages_pb.d.ts +98 -0
  111. package/dist/proto/micro/v1/coin/rsi_messages_pb.js +216 -0
  112. package/dist/proto/micro/v1/coin/services_connect.d.ts +413 -0
  113. package/dist/proto/micro/v1/coin/services_connect.js +416 -0
  114. package/dist/proto/micro/v1/coin/services_nest.d.ts +200 -0
  115. package/dist/proto/micro/v1/coin/services_nest.js +244 -0
  116. package/dist/proto/micro/v1/coin/token_unlocks_messages_nest.d.ts +53 -0
  117. package/dist/proto/micro/v1/coin/token_unlocks_messages_nest.js +5 -0
  118. package/dist/proto/micro/v1/coin/token_unlocks_messages_pb.d.ts +101 -0
  119. package/dist/proto/micro/v1/coin/token_unlocks_messages_pb.js +214 -0
  120. package/dist/proto/micro/v1/data/daily_market_data_messages_nest.d.ts +18 -0
  121. package/dist/proto/micro/v1/data/daily_market_data_messages_nest.js +5 -0
  122. package/dist/proto/micro/v1/data/daily_market_data_messages_pb.d.ts +42 -0
  123. package/dist/proto/micro/v1/data/daily_market_data_messages_pb.js +92 -0
  124. package/dist/proto/micro/v1/data/dominance_messages_nest.d.ts +35 -0
  125. package/dist/proto/micro/v1/data/dominance_messages_nest.js +5 -0
  126. package/dist/proto/micro/v1/data/dominance_messages_pb.d.ts +75 -0
  127. package/dist/proto/micro/v1/data/dominance_messages_pb.js +164 -0
  128. package/dist/proto/micro/v1/data/exchanges_messages_nest.d.ts +153 -0
  129. package/dist/proto/micro/v1/data/exchanges_messages_nest.js +11 -0
  130. package/dist/proto/micro/v1/data/exchanges_messages_pb.d.ts +256 -0
  131. package/dist/proto/micro/v1/data/exchanges_messages_pb.js +546 -0
  132. package/dist/proto/micro/v1/data/funding_rate_messages_nest.d.ts +52 -0
  133. package/dist/proto/micro/v1/data/funding_rate_messages_nest.js +5 -0
  134. package/dist/proto/micro/v1/data/funding_rate_messages_pb.d.ts +68 -0
  135. package/dist/proto/micro/v1/data/funding_rate_messages_pb.js +131 -0
  136. package/dist/proto/micro/v1/data/global_stats_messages_nest.d.ts +17 -0
  137. package/dist/proto/micro/v1/data/global_stats_messages_nest.js +5 -0
  138. package/dist/proto/micro/v1/data/global_stats_messages_pb.d.ts +25 -0
  139. package/dist/proto/micro/v1/data/global_stats_messages_pb.js +53 -0
  140. package/dist/proto/micro/v1/data/homepage_messages_nest.d.ts +35 -0
  141. package/dist/proto/micro/v1/data/homepage_messages_nest.js +5 -0
  142. package/dist/proto/micro/v1/data/homepage_messages_pb.d.ts +83 -0
  143. package/dist/proto/micro/v1/data/homepage_messages_pb.js +183 -0
  144. package/dist/proto/micro/v1/data/index.d.ts +22 -0
  145. package/dist/proto/micro/v1/data/index.js +26 -0
  146. package/dist/proto/micro/v1/data/inflow_outflow_messages_nest.d.ts +72 -0
  147. package/dist/proto/micro/v1/data/inflow_outflow_messages_nest.js +5 -0
  148. package/dist/proto/micro/v1/data/inflow_outflow_messages_pb.d.ts +136 -0
  149. package/dist/proto/micro/v1/data/inflow_outflow_messages_pb.js +295 -0
  150. package/dist/proto/micro/v1/data/liquidation_heat_map_m2_messages_nest.d.ts +44 -0
  151. package/dist/proto/micro/v1/data/liquidation_heat_map_m2_messages_nest.js +5 -0
  152. package/dist/proto/micro/v1/data/liquidation_heat_map_m2_messages_pb.d.ts +100 -0
  153. package/dist/proto/micro/v1/data/liquidation_heat_map_m2_messages_pb.js +221 -0
  154. package/dist/proto/micro/v1/data/liquidation_v1_messages_nest.d.ts +34 -0
  155. package/dist/proto/micro/v1/data/liquidation_v1_messages_nest.js +5 -0
  156. package/dist/proto/micro/v1/data/liquidation_v1_messages_pb.d.ts +82 -0
  157. package/dist/proto/micro/v1/data/liquidation_v1_messages_pb.js +181 -0
  158. package/dist/proto/micro/v1/data/mvrvz_score_messages_nest.d.ts +10 -0
  159. package/dist/proto/micro/v1/data/mvrvz_score_messages_nest.js +5 -0
  160. package/dist/proto/micro/v1/data/mvrvz_score_messages_pb.d.ts +26 -0
  161. package/dist/proto/micro/v1/data/mvrvz_score_messages_pb.js +58 -0
  162. package/dist/proto/micro/v1/data/puell_multiple_messages_nest.d.ts +14 -0
  163. package/dist/proto/micro/v1/data/puell_multiple_messages_nest.js +5 -0
  164. package/dist/proto/micro/v1/data/puell_multiple_messages_pb.d.ts +30 -0
  165. package/dist/proto/micro/v1/data/puell_multiple_messages_pb.js +65 -0
  166. package/dist/proto/micro/v1/data/puppeteer_messages_nest.d.ts +24 -0
  167. package/dist/proto/micro/v1/data/puppeteer_messages_nest.js +5 -0
  168. package/dist/proto/micro/v1/data/puppeteer_messages_pb.d.ts +40 -0
  169. package/dist/proto/micro/v1/data/puppeteer_messages_pb.js +84 -0
  170. package/dist/proto/micro/v1/data/rainbow_messages_nest.d.ts +10 -0
  171. package/dist/proto/micro/v1/data/rainbow_messages_nest.js +5 -0
  172. package/dist/proto/micro/v1/data/rainbow_messages_pb.d.ts +26 -0
  173. package/dist/proto/micro/v1/data/rainbow_messages_pb.js +57 -0
  174. package/dist/proto/micro/v1/data/rsi_list_messages_nest.d.ts +23 -0
  175. package/dist/proto/micro/v1/data/rsi_list_messages_nest.js +5 -0
  176. package/dist/proto/micro/v1/data/rsi_list_messages_pb.d.ts +39 -0
  177. package/dist/proto/micro/v1/data/rsi_list_messages_pb.js +83 -0
  178. package/dist/proto/micro/v1/data/scrape_assets_messages_nest.d.ts +20 -0
  179. package/dist/proto/micro/v1/data/scrape_assets_messages_nest.js +5 -0
  180. package/dist/proto/micro/v1/data/scrape_assets_messages_pb.d.ts +36 -0
  181. package/dist/proto/micro/v1/data/scrape_assets_messages_pb.js +77 -0
  182. package/dist/proto/micro/v1/data/scrape_treasuries_messages_nest.d.ts +37 -0
  183. package/dist/proto/micro/v1/data/scrape_treasuries_messages_nest.js +5 -0
  184. package/dist/proto/micro/v1/data/scrape_treasuries_messages_pb.d.ts +69 -0
  185. package/dist/proto/micro/v1/data/scrape_treasuries_messages_pb.js +149 -0
  186. package/dist/proto/micro/v1/data/services_connect.d.ts +325 -0
  187. package/dist/proto/micro/v1/data/services_connect.js +328 -0
  188. package/dist/proto/micro/v1/data/services_nest.d.ts +207 -0
  189. package/dist/proto/micro/v1/data/services_nest.js +326 -0
  190. package/dist/proto/micro/v1/data/token_unlocks_connect.d.ts +19 -0
  191. package/dist/proto/micro/v1/data/token_unlocks_connect.js +22 -0
  192. package/dist/proto/micro/v1/data/token_unlocks_nest.d.ts +69 -0
  193. package/dist/proto/micro/v1/data/token_unlocks_nest.js +22 -0
  194. package/dist/proto/micro/v1/data/token_unlocks_pb.d.ts +109 -0
  195. package/dist/proto/micro/v1/data/token_unlocks_pb.js +234 -0
  196. package/dist/proto/micro/v1/data/two_hundred_week_moving_average_messages_nest.d.ts +15 -0
  197. package/dist/proto/micro/v1/data/two_hundred_week_moving_average_messages_nest.js +5 -0
  198. package/dist/proto/micro/v1/data/two_hundred_week_moving_average_messages_pb.d.ts +31 -0
  199. package/dist/proto/micro/v1/data/two_hundred_week_moving_average_messages_pb.js +68 -0
  200. package/dist/proto/micro/v1/data/two_year_ma_multipler_messages_nest.d.ts +15 -0
  201. package/dist/proto/micro/v1/data/two_year_ma_multipler_messages_nest.js +5 -0
  202. package/dist/proto/micro/v1/data/two_year_ma_multipler_messages_pb.d.ts +31 -0
  203. package/dist/proto/micro/v1/data/two_year_ma_multipler_messages_pb.js +67 -0
  204. package/dist/proto/micro/v1/education/education_messages_nest.d.ts +370 -0
  205. package/dist/proto/micro/v1/education/education_messages_nest.js +5 -0
  206. package/dist/proto/micro/v1/education/education_messages_pb.d.ts +610 -0
  207. package/dist/proto/micro/v1/education/education_messages_pb.js +1264 -0
  208. package/dist/proto/micro/v1/education/index.d.ts +3 -0
  209. package/dist/proto/micro/v1/education/index.js +7 -0
  210. package/dist/proto/micro/v1/education/services_connect.d.ts +375 -0
  211. package/dist/proto/micro/v1/education/services_connect.js +378 -0
  212. package/dist/proto/micro/v1/education/services_nest.d.ts +182 -0
  213. package/dist/proto/micro/v1/education/services_nest.js +198 -0
  214. package/dist/proto/micro/v1/general_nest.d.ts +115 -0
  215. package/dist/proto/micro/v1/general_nest.js +51 -0
  216. package/dist/proto/micro/v1/general_pb.d.ts +211 -0
  217. package/dist/proto/micro/v1/general_pb.js +460 -0
  218. package/dist/proto/micro/v1/index.d.ts +10 -0
  219. package/dist/proto/micro/v1/index.js +14 -0
  220. package/dist/proto/micro/v1/media/index.d.ts +3 -0
  221. package/dist/proto/micro/v1/media/index.js +7 -0
  222. package/dist/proto/micro/v1/media/media_messages_nest.d.ts +92 -0
  223. package/dist/proto/micro/v1/media/media_messages_nest.js +21 -0
  224. package/dist/proto/micro/v1/media/media_messages_pb.d.ts +202 -0
  225. package/dist/proto/micro/v1/media/media_messages_pb.js +447 -0
  226. package/dist/proto/micro/v1/media/services_connect.d.ts +55 -0
  227. package/dist/proto/micro/v1/media/services_connect.js +58 -0
  228. package/dist/proto/micro/v1/media/services_nest.d.ts +32 -0
  229. package/dist/proto/micro/v1/media/services_nest.js +45 -0
  230. package/dist/proto/micro/v1/news/app_version_message_nest.d.ts +40 -0
  231. package/dist/proto/micro/v1/news/app_version_message_nest.js +5 -0
  232. package/dist/proto/micro/v1/news/app_version_message_pb.d.ts +72 -0
  233. package/dist/proto/micro/v1/news/app_version_message_pb.js +150 -0
  234. package/dist/proto/micro/v1/news/blog_messages_nest.d.ts +162 -0
  235. package/dist/proto/micro/v1/news/blog_messages_nest.js +5 -0
  236. package/dist/proto/micro/v1/news/blog_messages_pb.d.ts +246 -0
  237. package/dist/proto/micro/v1/news/blog_messages_pb.js +495 -0
  238. package/dist/proto/micro/v1/news/calendar_messages_nest.d.ts +70 -0
  239. package/dist/proto/micro/v1/news/calendar_messages_nest.js +5 -0
  240. package/dist/proto/micro/v1/news/calendar_messages_pb.d.ts +98 -0
  241. package/dist/proto/micro/v1/news/calendar_messages_pb.js +193 -0
  242. package/dist/proto/micro/v1/news/economic_calendar_messages_nest.d.ts +28 -0
  243. package/dist/proto/micro/v1/news/economic_calendar_messages_nest.js +5 -0
  244. package/dist/proto/micro/v1/news/economic_calendar_messages_pb.d.ts +48 -0
  245. package/dist/proto/micro/v1/news/economic_calendar_messages_pb.js +100 -0
  246. package/dist/proto/micro/v1/news/index.d.ts +9 -0
  247. package/dist/proto/micro/v1/news/index.js +13 -0
  248. package/dist/proto/micro/v1/news/jr_blog_messages_nest.d.ts +321 -0
  249. package/dist/proto/micro/v1/news/jr_blog_messages_nest.js +5 -0
  250. package/dist/proto/micro/v1/news/jr_blog_messages_pb.d.ts +477 -0
  251. package/dist/proto/micro/v1/news/jr_blog_messages_pb.js +954 -0
  252. package/dist/proto/micro/v1/news/news_messages_nest.d.ts +270 -0
  253. package/dist/proto/micro/v1/news/news_messages_nest.js +5 -0
  254. package/dist/proto/micro/v1/news/news_messages_pb.d.ts +418 -0
  255. package/dist/proto/micro/v1/news/news_messages_pb.js +848 -0
  256. package/dist/proto/micro/v1/news/services_connect.d.ts +549 -0
  257. package/dist/proto/micro/v1/news/services_connect.js +552 -0
  258. package/dist/proto/micro/v1/news/services_nest.d.ts +244 -0
  259. package/dist/proto/micro/v1/news/services_nest.js +261 -0
  260. package/dist/proto/micro/v1/news/sundown_messages_nest.d.ts +99 -0
  261. package/dist/proto/micro/v1/news/sundown_messages_nest.js +5 -0
  262. package/dist/proto/micro/v1/news/sundown_messages_pb.d.ts +131 -0
  263. package/dist/proto/micro/v1/news/sundown_messages_pb.js +253 -0
  264. package/dist/proto/micro/v1/notification/index.d.ts +4 -0
  265. package/dist/proto/micro/v1/notification/index.js +8 -0
  266. package/dist/proto/micro/v1/notification/mail_messages_nest.d.ts +31 -0
  267. package/dist/proto/micro/v1/notification/mail_messages_nest.js +5 -0
  268. package/dist/proto/micro/v1/notification/mail_messages_pb.d.ts +63 -0
  269. package/dist/proto/micro/v1/notification/mail_messages_pb.js +138 -0
  270. package/dist/proto/micro/v1/notification/notification_messages_nest.d.ts +164 -0
  271. package/dist/proto/micro/v1/notification/notification_messages_nest.js +5 -0
  272. package/dist/proto/micro/v1/notification/notification_messages_pb.d.ts +356 -0
  273. package/dist/proto/micro/v1/notification/notification_messages_pb.js +783 -0
  274. package/dist/proto/micro/v1/notification/services_connect.d.ts +139 -0
  275. package/dist/proto/micro/v1/notification/services_connect.js +142 -0
  276. package/dist/proto/micro/v1/notification/services_nest.d.ts +65 -0
  277. package/dist/proto/micro/v1/notification/services_nest.js +70 -0
  278. package/dist/proto/micro/v1/portfolio/index.d.ts +5 -0
  279. package/dist/proto/micro/v1/portfolio/index.js +9 -0
  280. package/dist/proto/micro/v1/portfolio/portfolio_coin_messages_nest.d.ts +17 -0
  281. package/dist/proto/micro/v1/portfolio/portfolio_coin_messages_nest.js +5 -0
  282. package/dist/proto/micro/v1/portfolio/portfolio_coin_messages_pb.d.ts +41 -0
  283. package/dist/proto/micro/v1/portfolio/portfolio_coin_messages_pb.js +89 -0
  284. package/dist/proto/micro/v1/portfolio/portfolio_coin_trasaction_messages_nest.d.ts +34 -0
  285. package/dist/proto/micro/v1/portfolio/portfolio_coin_trasaction_messages_nest.js +5 -0
  286. package/dist/proto/micro/v1/portfolio/portfolio_coin_trasaction_messages_pb.d.ts +82 -0
  287. package/dist/proto/micro/v1/portfolio/portfolio_coin_trasaction_messages_pb.js +180 -0
  288. package/dist/proto/micro/v1/portfolio/portfolio_messages_nest.d.ts +154 -0
  289. package/dist/proto/micro/v1/portfolio/portfolio_messages_nest.js +5 -0
  290. package/dist/proto/micro/v1/portfolio/portfolio_messages_pb.d.ts +370 -0
  291. package/dist/proto/micro/v1/portfolio/portfolio_messages_pb.js +820 -0
  292. package/dist/proto/micro/v1/portfolio/services_connect.d.ts +140 -0
  293. package/dist/proto/micro/v1/portfolio/services_connect.js +143 -0
  294. package/dist/proto/micro/v1/portfolio/services_nest.d.ts +66 -0
  295. package/dist/proto/micro/v1/portfolio/services_nest.js +74 -0
  296. package/dist/proto/micro/v1/puppeteer/index.d.ts +3 -0
  297. package/dist/proto/micro/v1/puppeteer/index.js +7 -0
  298. package/dist/proto/micro/v1/puppeteer/puppeteer_messages_nest.d.ts +2 -0
  299. package/dist/proto/micro/v1/puppeteer/puppeteer_messages_nest.js +5 -0
  300. package/dist/proto/micro/v1/puppeteer/services_connect.d.ts +89 -0
  301. package/dist/proto/micro/v1/puppeteer/services_connect.js +92 -0
  302. package/dist/proto/micro/v1/puppeteer/services_nest.d.ts +47 -0
  303. package/dist/proto/micro/v1/puppeteer/services_nest.js +63 -0
  304. package/dist/proto/micro/v1/user/auth_messages_nest.d.ts +87 -0
  305. package/dist/proto/micro/v1/user/auth_messages_nest.js +5 -0
  306. package/dist/proto/micro/v1/user/auth_messages_pb.d.ts +263 -0
  307. package/dist/proto/micro/v1/user/auth_messages_pb.js +590 -0
  308. package/dist/proto/micro/v1/user/authorization_messages_nest.d.ts +47 -0
  309. package/dist/proto/micro/v1/user/authorization_messages_nest.js +5 -0
  310. package/dist/proto/micro/v1/user/authorization_messages_pb.d.ts +111 -0
  311. package/dist/proto/micro/v1/user/authorization_messages_pb.js +245 -0
  312. package/dist/proto/micro/v1/user/index.d.ts +6 -0
  313. package/dist/proto/micro/v1/user/index.js +10 -0
  314. package/dist/proto/micro/v1/user/services_connect.d.ts +315 -0
  315. package/dist/proto/micro/v1/user/services_connect.js +318 -0
  316. package/dist/proto/micro/v1/user/services_nest.d.ts +151 -0
  317. package/dist/proto/micro/v1/user/services_nest.js +172 -0
  318. package/dist/proto/micro/v1/user/site_settings_messages_nest.d.ts +19 -0
  319. package/dist/proto/micro/v1/user/site_settings_messages_nest.js +12 -0
  320. package/dist/proto/micro/v1/user/site_settings_messages_pb.d.ts +42 -0
  321. package/dist/proto/micro/v1/user/site_settings_messages_pb.js +93 -0
  322. package/dist/proto/micro/v1/user/user_messages_nest.d.ts +175 -0
  323. package/dist/proto/micro/v1/user/user_messages_nest.js +12 -0
  324. package/dist/proto/micro/v1/user/user_messages_pb.d.ts +358 -0
  325. package/dist/proto/micro/v1/user/user_messages_pb.js +784 -0
  326. package/dist/utils/constants.d.ts +45 -0
  327. package/dist/utils/constants.js +48 -0
  328. package/dist/utils/functions.d.ts +70 -0
  329. package/dist/utils/functions.js +425 -0
  330. package/dist/utils/index.d.ts +5 -0
  331. package/dist/utils/index.js +9 -0
  332. package/dist/utils/logger_names.d.ts +8 -0
  333. package/dist/utils/logger_names.js +41 -0
  334. package/dist/utils/minimatch/assert_valid_pattern.d.ts +1 -0
  335. package/dist/utils/minimatch/assert_valid_pattern.js +13 -0
  336. package/dist/utils/minimatch/ast.d.ts +19 -0
  337. package/dist/utils/minimatch/ast.js +446 -0
  338. package/dist/utils/minimatch/balanced_match.d.ts +2 -0
  339. package/dist/utils/minimatch/balanced_match.js +57 -0
  340. package/dist/utils/minimatch/brace_expansion.d.ts +1 -0
  341. package/dist/utils/minimatch/brace_expansion.js +181 -0
  342. package/dist/utils/minimatch/brace_expressions.d.ts +7 -0
  343. package/dist/utils/minimatch/brace_expressions.js +119 -0
  344. package/dist/utils/minimatch/escape.d.ts +2 -0
  345. package/dist/utils/minimatch/escape.js +9 -0
  346. package/dist/utils/minimatch/index.d.ts +93 -0
  347. package/dist/utils/minimatch/index.js +788 -0
  348. package/dist/utils/minimatch/matcher_collection.d.ts +9 -0
  349. package/dist/utils/minimatch/matcher_collection.js +30 -0
  350. package/dist/utils/minimatch/unescape.d.ts +2 -0
  351. package/dist/utils/minimatch/unescape.js +11 -0
  352. package/dist/utils/types.d.ts +70 -0
  353. package/dist/utils/types.js +22 -0
  354. package/dist/utils/walk_sync.d.ts +25 -0
  355. package/dist/utils/walk_sync.js +184 -0
  356. package/package.json +87 -0
package/README.md ADDED
@@ -0,0 +1,33 @@
1
+ # Common Classes & Items & Proto Files
2
+
3
+ Grpc module configurations, necessary types etc. Also proto files and
4
+ generated typescript files.
5
+
6
+ ### Note about VSCode integration for proto files
7
+
8
+ You need to add these lines to `.vscode/settings.json` file:
9
+
10
+ ```json
11
+ {
12
+ "protoc": {
13
+ "options": ["--proto_path=${workspaceRoot}/proto"]
14
+ }
15
+ }
16
+ ```
17
+
18
+ ### Important links
19
+
20
+ - Npm dependency line for this package:
21
+ `"@bergx/jr-common-micro": "git+ssh://git@github.com/BergX-Team/jr-common-micro.git#main"`
22
+
23
+ - Buf configs: https://buf.build/docs/configuration/v1/buf-gen-yaml
24
+
25
+ - Buf and Nodejs blog: https://slavovojacek.medium.com/grpc-on-node-js-with-buf-and-typescript-part-1-5aad61bab03b
26
+
27
+ - ❗ Never upgrade bufbuild and its plugins versions. Because they made significant changes and it breaking our structure.
28
+
29
+ - https://github.com/bufbuild/buf/issues/2987
30
+ - https://github.com/bufbuild/buf/releases
31
+
32
+ - This library is creating awesome types: `type-fest`
33
+ - https://github.com/sindresorhus/type-fest
@@ -0,0 +1,11 @@
1
+ import { z } from 'zod';
2
+ declare const ByIdRequestDto_base: import("nestjs-zod").ZodDto<{
3
+ id: string;
4
+ }, z.ZodObjectDef<{
5
+ id: z.ZodString;
6
+ }, "strip", z.ZodTypeAny>, {
7
+ id: string;
8
+ }>;
9
+ export declare class ByIdRequestDto extends ByIdRequestDto_base {
10
+ }
11
+ export {};
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ByIdRequestDto = void 0;
4
+ const nestjs_zod_1 = require("nestjs-zod");
5
+ const zod_1 = require("zod");
6
+ class ByIdRequestDto extends (0, nestjs_zod_1.createZodDto)(zod_1.z.object({
7
+ id: zod_1.z.string().min(1),
8
+ })) {
9
+ }
10
+ exports.ByIdRequestDto = ByIdRequestDto;
@@ -0,0 +1,3 @@
1
+ export * as by_id_request_dto from './by_id_request_dto';
2
+ export * as paginate_from_request_dto from './paginate_from_request_dto';
3
+ export * as paginate_request_dto from './paginate_request_dto';
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.paginate_request_dto = exports.paginate_from_request_dto = exports.by_id_request_dto = void 0;
4
+ const tslib_1 = require("tslib");
5
+ exports.by_id_request_dto = tslib_1.__importStar(require("./by_id_request_dto"));
6
+ exports.paginate_from_request_dto = tslib_1.__importStar(require("./paginate_from_request_dto"));
7
+ exports.paginate_request_dto = tslib_1.__importStar(require("./paginate_request_dto"));
@@ -0,0 +1,58 @@
1
+ import { z } from 'zod';
2
+ declare const PaginateFromRequestDto_base: import("nestjs-zod").ZodDto<{
3
+ id: string;
4
+ perPage: string;
5
+ sort?: {
6
+ name: string;
7
+ direction: "asc" | "desc";
8
+ }[] | undefined;
9
+ filters?: {
10
+ name: string;
11
+ value: string;
12
+ operator: string;
13
+ }[] | undefined;
14
+ columns?: string[] | undefined;
15
+ }, z.ZodObjectDef<{
16
+ id: z.ZodString;
17
+ perPage: z.ZodString;
18
+ filters: z.ZodOptional<z.ZodArray<z.ZodObject<{
19
+ name: z.ZodString;
20
+ value: z.ZodString;
21
+ operator: z.ZodString;
22
+ }, "strip", z.ZodTypeAny, {
23
+ name: string;
24
+ value: string;
25
+ operator: string;
26
+ }, {
27
+ name: string;
28
+ value: string;
29
+ operator: string;
30
+ }>, "many">>;
31
+ sort: z.ZodOptional<z.ZodArray<z.ZodObject<{
32
+ name: z.ZodString;
33
+ direction: z.ZodEnum<["asc", "desc"]>;
34
+ }, "strip", z.ZodTypeAny, {
35
+ name: string;
36
+ direction: "asc" | "desc";
37
+ }, {
38
+ name: string;
39
+ direction: "asc" | "desc";
40
+ }>, "many">>;
41
+ columns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
42
+ }, "strip", z.ZodTypeAny>, {
43
+ id: string;
44
+ perPage: string;
45
+ sort?: {
46
+ name: string;
47
+ direction: "asc" | "desc";
48
+ }[] | undefined;
49
+ filters?: {
50
+ name: string;
51
+ value: string;
52
+ operator: string;
53
+ }[] | undefined;
54
+ columns?: string[] | undefined;
55
+ }>;
56
+ export declare class PaginateFromRequestDto extends PaginateFromRequestDto_base {
57
+ }
58
+ export {};
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PaginateFromRequestDto = void 0;
4
+ const nestjs_zod_1 = require("nestjs-zod");
5
+ const zod_1 = require("zod");
6
+ class PaginateFromRequestDto extends (0, nestjs_zod_1.createZodDto)(zod_1.z.object({
7
+ id: zod_1.z.string().min(1),
8
+ perPage: zod_1.z.string().min(1),
9
+ filters: zod_1.z
10
+ .array(zod_1.z.object({
11
+ name: zod_1.z.string(),
12
+ value: zod_1.z.string(),
13
+ operator: zod_1.z.string(),
14
+ }))
15
+ .optional(),
16
+ sort: zod_1.z
17
+ .array(zod_1.z.object({ name: zod_1.z.string(), direction: zod_1.z.enum(['asc', 'desc']) }))
18
+ .optional(),
19
+ columns: zod_1.z.array(zod_1.z.string()).optional(),
20
+ })) {
21
+ }
22
+ exports.PaginateFromRequestDto = PaginateFromRequestDto;
@@ -0,0 +1,23 @@
1
+ import { z } from 'zod';
2
+ declare const PaginateRequestDto_base: import("nestjs-zod").ZodDto<{
3
+ sort: string;
4
+ perPage: string;
5
+ filters: string;
6
+ page: string;
7
+ columns?: string[] | undefined;
8
+ }, z.ZodObjectDef<{
9
+ page: z.ZodString;
10
+ perPage: z.ZodString;
11
+ filters: z.ZodString;
12
+ sort: z.ZodString;
13
+ columns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
14
+ }, "strip", z.ZodTypeAny>, {
15
+ sort: string;
16
+ perPage: string;
17
+ filters: string;
18
+ page: string;
19
+ columns?: string[] | undefined;
20
+ }>;
21
+ export declare class PaginateRequestDto extends PaginateRequestDto_base {
22
+ }
23
+ export {};
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PaginateRequestDto = void 0;
4
+ const nestjs_zod_1 = require("nestjs-zod");
5
+ const zod_1 = require("zod");
6
+ class PaginateRequestDto extends (0, nestjs_zod_1.createZodDto)(zod_1.z.object({
7
+ page: zod_1.z.string().min(1),
8
+ perPage: zod_1.z.string().min(1),
9
+ filters: zod_1.z.string().min(1),
10
+ sort: zod_1.z.string().min(1),
11
+ columns: zod_1.z.array(zod_1.z.string()).optional(),
12
+ })) {
13
+ }
14
+ exports.PaginateRequestDto = PaginateRequestDto;
@@ -0,0 +1,4 @@
1
+ import { HttpException, HttpStatus } from '@nestjs/common';
2
+ export declare class BaseException extends HttpException {
3
+ constructor(message: string, status: HttpStatus, additionalData?: string | Record<string, unknown> | unknown);
4
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseException = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ class BaseException extends common_1.HttpException {
6
+ constructor(message, status, additionalData = null) {
7
+ super({
8
+ message,
9
+ statusCode: status,
10
+ data: additionalData,
11
+ }, status);
12
+ }
13
+ }
14
+ exports.BaseException = BaseException;
@@ -0,0 +1 @@
1
+ export * as base_exception from './base_exception';
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.base_exception = void 0;
4
+ const tslib_1 = require("tslib");
5
+ exports.base_exception = tslib_1.__importStar(require("./base_exception"));
@@ -0,0 +1,15 @@
1
+ import { DynamicModule } from '@nestjs/common';
2
+ import { NestMicroserviceOptions } from '@nestjs/common/interfaces/microservices/nest-microservice-options.interface';
3
+ import { ConfigService } from '@nestjs/config';
4
+ import { ClientGrpcProxy, GrpcOptions } from '@nestjs/microservices';
5
+ export type GrpcClientCreatorFnType = () => DynamicModule;
6
+ export declare const GRPC_CLIENT_CREATOR = "GRPC_CLIENT_CREATOR";
7
+ type GrpcProvideName = `${Uppercase<string>}_MICRO`;
8
+ type GrpcPackageName = `micro.${Lowercase<string>}`;
9
+ export declare const grpcClientFactory: (provide: GrpcProvideName, grpcPackage: GrpcPackageName, hostKey: string, portKey: string) => {
10
+ provide: `${Uppercase<string>}_MICRO`;
11
+ inject: (typeof ConfigService)[];
12
+ useFactory: (config: ConfigService) => Promise<ClientGrpcProxy>;
13
+ };
14
+ export declare const grpcServerOptions: (grpcPackage: GrpcPackageName, grpcHost: string, grpcPort: string) => GrpcOptions & NestMicroserviceOptions;
15
+ export {};
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.grpcServerOptions = exports.grpcClientFactory = exports.GRPC_CLIENT_CREATOR = void 0;
4
+ const config_1 = require("@nestjs/config");
5
+ const microservices_1 = require("@nestjs/microservices");
6
+ const path_1 = require("path");
7
+ const walk_sync_1 = require("../../utils/walk_sync");
8
+ exports.GRPC_CLIENT_CREATOR = 'GRPC_CLIENT_CREATOR';
9
+ const grpcClientFactory = (provide, grpcPackage, hostKey, portKey) => {
10
+ return {
11
+ provide,
12
+ inject: [config_1.ConfigService],
13
+ useFactory: async (config) => {
14
+ return new microservices_1.ClientGrpcProxy({
15
+ url: config.get(hostKey) + ':' + config.get(portKey),
16
+ channelOptions: {
17
+ 'grpc.min_reconnect_backoff_ms': 1000,
18
+ 'grpc.max_reconnect_backoff_ms': 10000,
19
+ },
20
+ keepalive: {
21
+ keepaliveTimeMs: 1e3 * 60 * 2,
22
+ keepaliveTimeoutMs: 1e3 * 20,
23
+ http2MinTimeBetweenPingsMs: 1e3 * 60 * 2,
24
+ http2MaxPingsWithoutData: 0,
25
+ keepalivePermitWithoutCalls: 1,
26
+ },
27
+ package: grpcPackage,
28
+ protoPath: (0, walk_sync_1.walkSync)((0, path_1.join)(process.cwd(), 'node_modules/@bergx/jr-common-micro/proto'), { includeBasePath: true, globs: ['**/*.proto'] }),
29
+ loader: {
30
+ keepCase: true,
31
+ enums: String,
32
+ oneofs: true,
33
+ includeDirs: [
34
+ (0, path_1.join)(process.cwd(), 'node_modules/@bergx/jr-common-micro/proto'),
35
+ ],
36
+ },
37
+ });
38
+ },
39
+ };
40
+ };
41
+ exports.grpcClientFactory = grpcClientFactory;
42
+ const grpcServerOptions = (grpcPackage, grpcHost, grpcPort) => {
43
+ return {
44
+ logger: process.env.NODE_ENV === 'development'
45
+ ? ['log', 'debug', 'error', 'verbose', 'warn', 'fatal']
46
+ : ['log', 'debug', 'error', 'verbose', 'warn', 'fatal'],
47
+ transport: microservices_1.Transport.GRPC,
48
+ options: {
49
+ url: grpcHost + ':' + grpcPort,
50
+ package: grpcPackage,
51
+ protoPath: (0, walk_sync_1.walkSync)((0, path_1.join)(process.cwd(), 'node_modules/@bergx/jr-common-micro/proto'), { includeBasePath: true, globs: ['**/*.proto'] }),
52
+ loader: {
53
+ keepCase: true,
54
+ enums: String,
55
+ oneofs: true,
56
+ includeDirs: [
57
+ (0, path_1.join)(process.cwd(), 'node_modules/@bergx/jr-common-micro/proto'),
58
+ ],
59
+ },
60
+ },
61
+ };
62
+ };
63
+ exports.grpcServerOptions = grpcServerOptions;
@@ -0,0 +1,5 @@
1
+ export * as grpc_options_factory from './grpc_options_factory';
2
+ export * as logger from './logger';
3
+ export * as module_metadata_factory from './module_metadata_factory';
4
+ export * as redis_client_factory from './redis_client_factory';
5
+ export * as redis_cluster_factory from './redis_cluster_factory';
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.redis_cluster_factory = exports.redis_client_factory = exports.module_metadata_factory = exports.logger = exports.grpc_options_factory = void 0;
4
+ const tslib_1 = require("tslib");
5
+ exports.grpc_options_factory = tslib_1.__importStar(require("./grpc_options_factory"));
6
+ exports.logger = tslib_1.__importStar(require("./logger"));
7
+ exports.module_metadata_factory = tslib_1.__importStar(require("./module_metadata_factory"));
8
+ exports.redis_client_factory = tslib_1.__importStar(require("./redis_client_factory"));
9
+ exports.redis_cluster_factory = tslib_1.__importStar(require("./redis_cluster_factory"));
@@ -0,0 +1,2 @@
1
+ export * as kafka_transport from './kafka_transport';
2
+ export * as winston_config from './winston_config';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.winston_config = exports.kafka_transport = void 0;
4
+ const tslib_1 = require("tslib");
5
+ exports.kafka_transport = tslib_1.__importStar(require("./kafka_transport"));
6
+ exports.winston_config = tslib_1.__importStar(require("./winston_config"));
@@ -0,0 +1,16 @@
1
+ import { Kafka, LogEntry, ProducerConfig } from 'kafkajs';
2
+ import Transport from 'winston-transport';
3
+ interface KafkaTransportOptions extends Transport.TransportStreamOptions {
4
+ kafka: Kafka;
5
+ topic: string;
6
+ producerConfig?: ProducerConfig;
7
+ }
8
+ export declare class KafkaTransport extends Transport {
9
+ private producer;
10
+ private topic;
11
+ constructor(opts: KafkaTransportOptions);
12
+ private initProducer;
13
+ log(info: LogEntry, callback: () => void): Promise<void>;
14
+ close(): Promise<void>;
15
+ }
16
+ export {};
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.KafkaTransport = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const winston_transport_1 = tslib_1.__importDefault(require("winston-transport"));
6
+ class KafkaTransport extends winston_transport_1.default {
7
+ producer;
8
+ topic;
9
+ constructor(opts) {
10
+ super(opts);
11
+ this.producer = opts.kafka.producer(opts.producerConfig);
12
+ this.topic = opts.topic;
13
+ this.initProducer();
14
+ }
15
+ async initProducer() {
16
+ try {
17
+ await this.producer.connect();
18
+ }
19
+ catch (error) {
20
+ console.error('Failed to connect to Kafka:', error);
21
+ }
22
+ }
23
+ async log(info, callback) {
24
+ setImmediate(() => {
25
+ this.emit('logged', info);
26
+ });
27
+ const messagePayload = {
28
+ topic: this.topic,
29
+ messages: [{ value: JSON.stringify(info) }],
30
+ };
31
+ try {
32
+ await this.producer.send(messagePayload);
33
+ }
34
+ catch (error) {
35
+ if (error?.message?.includes('disconnected')) {
36
+ try {
37
+ await this.producer.connect();
38
+ await this.producer.send(messagePayload);
39
+ }
40
+ catch (reconnectError) {
41
+ console.error('Error sending log to Kafka after reconnect attempt:', reconnectError);
42
+ }
43
+ }
44
+ else {
45
+ console.error('Error sending log to Kafka:', error);
46
+ }
47
+ }
48
+ callback();
49
+ }
50
+ async close() {
51
+ await this.producer.disconnect();
52
+ }
53
+ }
54
+ exports.KafkaTransport = KafkaTransport;
@@ -0,0 +1,22 @@
1
+ import { Logger } from '@nestjs/common';
2
+ interface SystemMetadata {
3
+ hostname: string;
4
+ ip: string;
5
+ cpu_usage: number;
6
+ memory_used_mb: number;
7
+ memory_total_mb: number;
8
+ memory_usage_percent: number;
9
+ platform: string;
10
+ uptime_seconds: number;
11
+ }
12
+ interface Metadata extends SystemMetadata {
13
+ [key: string]: any;
14
+ }
15
+ export interface LogMessage {
16
+ text: string;
17
+ metadata?: Metadata;
18
+ data?: any;
19
+ misc?: Record<string, any>;
20
+ }
21
+ export declare const createLogger: (serviceName: string, brokers?: string[]) => Logger;
22
+ export {};
@@ -0,0 +1,141 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createLogger = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const common_1 = require("@nestjs/common");
6
+ const kafkajs_1 = require("kafkajs");
7
+ const nest_winston_1 = require("nest-winston");
8
+ const os = tslib_1.__importStar(require("os"));
9
+ const os_1 = require("os");
10
+ const winston = tslib_1.__importStar(require("winston"));
11
+ const functions_1 = require("../../../utils/functions");
12
+ const kafka_transport_1 = require("./kafka_transport");
13
+ const net = require('net');
14
+ const tls = require('tls');
15
+ const getPrimaryIp = () => {
16
+ const interfaces = os.networkInterfaces();
17
+ for (const interfaceName of Object.keys(interfaces)) {
18
+ const interface_ = interfaces[interfaceName];
19
+ if (interface_) {
20
+ const nonInternalIpv4 = interface_.find((addr) => addr.family === 'IPv4' && !addr.internal);
21
+ if (nonInternalIpv4) {
22
+ return nonInternalIpv4.address;
23
+ }
24
+ }
25
+ }
26
+ return 'unknown';
27
+ };
28
+ const getCpuUsage = () => {
29
+ const cpus = os.cpus();
30
+ let totalIdle = 0;
31
+ let totalTick = 0;
32
+ cpus.forEach((cpu) => {
33
+ for (const type in cpu.times) {
34
+ totalTick += cpu.times[type];
35
+ }
36
+ totalIdle += cpu.times.idle;
37
+ });
38
+ return Number(((1 - totalIdle / totalTick) * 100).toFixed(2));
39
+ };
40
+ const getSystemMetadata = () => {
41
+ const totalMemory = os.totalmem();
42
+ const freeMemory = os.freemem();
43
+ const usedMemory = totalMemory - freeMemory;
44
+ return {
45
+ hostname: os.hostname(),
46
+ ip: getPrimaryIp(),
47
+ cpu_usage: getCpuUsage(),
48
+ memory_used_mb: Math.round(usedMemory / (1024 * 1024)),
49
+ memory_total_mb: Math.round(totalMemory / (1024 * 1024)),
50
+ memory_usage_percent: Number(((usedMemory / totalMemory) * 100).toFixed(2)),
51
+ platform: os.platform(),
52
+ uptime_seconds: Math.round(os.uptime()),
53
+ };
54
+ };
55
+ const formatMessage = (message, ...args) => {
56
+ const systemMetadata = getSystemMetadata();
57
+ if (typeof message === 'object' &&
58
+ ('text' in message || 'metadata' in message || 'data' in message)) {
59
+ return {
60
+ ...message,
61
+ metadata: {
62
+ ...systemMetadata,
63
+ ...message.metadata,
64
+ },
65
+ };
66
+ }
67
+ if (typeof message === 'string') {
68
+ const result = {
69
+ text: message,
70
+ metadata: systemMetadata,
71
+ };
72
+ if (args.length === 1 && typeof args[0] === 'object') {
73
+ result.metadata = {
74
+ ...systemMetadata,
75
+ ...args[0],
76
+ };
77
+ }
78
+ else if (args.length > 0) {
79
+ result.data = args.length === 1 ? args[0] : args;
80
+ }
81
+ return result;
82
+ }
83
+ if (typeof message === 'object') {
84
+ return {
85
+ text: JSON.stringify(message),
86
+ data: message,
87
+ metadata: systemMetadata,
88
+ };
89
+ }
90
+ return {
91
+ text: String(message),
92
+ metadata: systemMetadata,
93
+ };
94
+ };
95
+ const createLogger = (serviceName, brokers) => {
96
+ const instanceId = `${serviceName}-${(0, os_1.hostname)()}`;
97
+ const kafka = (0, functions_1.createKafka)(instanceId);
98
+ const winstonLogger = nest_winston_1.WinstonModule.createLogger({
99
+ format: winston.format.combine(winston.format.timestamp(), winston.format.json()),
100
+ defaultMeta: {
101
+ service: serviceName,
102
+ instance: instanceId,
103
+ },
104
+ transports: [
105
+ new winston.transports.Console({
106
+ format: winston.format.combine(winston.format.colorize(), winston.format.simple()),
107
+ }),
108
+ new kafka_transport_1.KafkaTransport({
109
+ kafka,
110
+ topic: 'logs',
111
+ level: 'info',
112
+ producerConfig: {
113
+ createPartitioner: kafkajs_1.Partitioners.DefaultPartitioner,
114
+ },
115
+ }),
116
+ ],
117
+ });
118
+ const logger = new common_1.Logger(serviceName);
119
+ logger.log = (message, ...args) => winstonLogger.log({
120
+ level: 'info',
121
+ message: formatMessage(message, ...args),
122
+ });
123
+ logger.error = (message, ...args) => winstonLogger.log({
124
+ level: 'error',
125
+ message: formatMessage(message, ...args),
126
+ });
127
+ logger.warn = (message, ...args) => winstonLogger.log({
128
+ level: 'warn',
129
+ message: formatMessage(message, ...args),
130
+ });
131
+ logger.debug = (message, ...args) => winstonLogger.log({
132
+ level: 'debug',
133
+ message: formatMessage(message, ...args),
134
+ });
135
+ logger.fatal = (message, ...args) => winstonLogger.log({
136
+ level: 'error',
137
+ message: formatMessage(message, ...args),
138
+ });
139
+ return logger;
140
+ };
141
+ exports.createLogger = createLogger;
@@ -0,0 +1,24 @@
1
+ import { DynamicModule, ModuleMetadata } from '@nestjs/common';
2
+ import { ConfigFactory } from '@nestjs/config';
3
+ import { GrpcOptions } from '@nestjs/microservices';
4
+ import { FastifyAdapter, NestFastifyApplication } from '@nestjs/platform-fastify';
5
+ export type AppBaseConfig = {
6
+ environment: string;
7
+ jwt_secret: string;
8
+ redis_host: string;
9
+ redis_port: number;
10
+ redis_db: number;
11
+ redis_username: string;
12
+ redis_password: string;
13
+ [key: string]: any;
14
+ };
15
+ export declare const getDefaultConfigModule: (appConfig: Array<ConfigFactory>) => Promise<DynamicModule>;
16
+ export declare const getTestingConfigModule: (appConfig: Array<ConfigFactory>) => Promise<DynamicModule>;
17
+ export declare const getDefaultCacheModule: () => DynamicModule;
18
+ export declare const moduleMetadataFactory: (inputMeta: ModuleMetadata, appConfig: Array<ConfigFactory>) => ModuleMetadata;
19
+ export declare const moduleMetadataTestingFactory: (inputMeta: ModuleMetadata, appConfig: Array<ConfigFactory>) => ModuleMetadata;
20
+ export declare class AppMicroModule {
21
+ }
22
+ export declare const createGrpcMicro: (moduleMetadata: ModuleMetadata, config: AppBaseConfig, grpcOptions: GrpcOptions) => Promise<import("@nestjs/common").INestMicroservice>;
23
+ export declare const createTestingModule: (moduleMetadata: ModuleMetadata, config: AppBaseConfig) => Promise<import("@nestjs/testing").TestingModule>;
24
+ export declare const createHttpServer: (moduleMetadata: ModuleMetadata, config: AppBaseConfig, fastifyAdapter: FastifyAdapter) => Promise<NestFastifyApplication<import("fastify").RawServerDefault>>;