@jrosadob/ms-sophia-framework-mysql 0.0.3 → 0.0.4

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/dist/libs/ms-sophia-framework-mysql/app.module.d.ts +2 -0
  2. package/dist/libs/ms-sophia-framework-mysql/app.module.js +26 -0
  3. package/dist/libs/ms-sophia-framework-mysql/app.module.js.map +1 -0
  4. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-clients.d.ts +18 -0
  5. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-clients.js +22 -0
  6. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-clients.js.map +1 -0
  7. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-clients.module.d.ts +5 -0
  8. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-clients.module.js +48 -0
  9. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-clients.module.js.map +1 -0
  10. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-config.d.ts +3 -0
  11. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-config.js +3 -0
  12. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-config.js.map +1 -0
  13. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-pattern.d.ts +20 -0
  14. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-pattern.js +55 -0
  15. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-pattern.js.map +1 -0
  16. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-register.options.d.ts +5 -0
  17. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-register.options.js +3 -0
  18. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-register.options.js.map +1 -0
  19. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-sample.module.d.ts +2 -0
  20. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-sample.module.js +33 -0
  21. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-sample.module.js.map +1 -0
  22. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-sample.service.d.ts +10 -0
  23. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-sample.service.js +53 -0
  24. package/dist/libs/ms-sophia-framework-mysql/core/amqp-clients/amqp-sample.service.js.map +1 -0
  25. package/dist/libs/ms-sophia-framework-mysql/core/common/base/error.d.ts +5 -0
  26. package/dist/libs/ms-sophia-framework-mysql/core/common/base/error.js +10 -0
  27. package/dist/libs/ms-sophia-framework-mysql/core/common/base/error.js.map +1 -0
  28. package/dist/libs/ms-sophia-framework-mysql/core/common/base/result.d.ts +10 -0
  29. package/dist/libs/ms-sophia-framework-mysql/core/common/base/result.js +17 -0
  30. package/dist/libs/ms-sophia-framework-mysql/core/common/base/result.js.map +1 -0
  31. package/dist/libs/ms-sophia-framework-mysql/core/common/base/status-base.d.ts +5 -0
  32. package/dist/libs/ms-sophia-framework-mysql/core/common/base/status-base.js +32 -0
  33. package/dist/libs/ms-sophia-framework-mysql/core/common/base/status-base.js.map +1 -0
  34. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/change-status.dto.d.ts +5 -0
  35. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/change-status.dto.js +35 -0
  36. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/change-status.dto.js.map +1 -0
  37. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/log.dto.d.ts +14 -0
  38. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/log.dto.js +33 -0
  39. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/log.dto.js.map +1 -0
  40. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/order-by.dto.d.ts +4 -0
  41. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/order-by.dto.js +28 -0
  42. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/order-by.dto.js.map +1 -0
  43. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/pagination.dto.d.ts +5 -0
  44. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/pagination.dto.js +32 -0
  45. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/pagination.dto.js.map +1 -0
  46. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/search.dto.d.ts +4 -0
  47. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/search.dto.js +27 -0
  48. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/search.dto.js.map +1 -0
  49. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/select.dto.d.ts +9 -0
  50. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/select.dto.js +45 -0
  51. package/dist/libs/ms-sophia-framework-mysql/core/common/dto/select.dto.js.map +1 -0
  52. package/dist/libs/ms-sophia-framework-mysql/core/common/entity/base.entity.d.ts +7 -0
  53. package/dist/libs/ms-sophia-framework-mysql/core/common/entity/base.entity.js +33 -0
  54. package/dist/libs/ms-sophia-framework-mysql/core/common/entity/base.entity.js.map +1 -0
  55. package/dist/libs/ms-sophia-framework-mysql/core/common/exceptions/app-badrequest.exception.d.ts +6 -0
  56. package/dist/libs/ms-sophia-framework-mysql/core/common/exceptions/app-badrequest.exception.js +31 -0
  57. package/dist/libs/ms-sophia-framework-mysql/core/common/exceptions/app-badrequest.exception.js.map +1 -0
  58. package/dist/libs/ms-sophia-framework-mysql/core/common/exceptions/app-http.exception.d.ts +5 -0
  59. package/dist/libs/ms-sophia-framework-mysql/core/common/exceptions/app-http.exception.js +35 -0
  60. package/dist/libs/ms-sophia-framework-mysql/core/common/exceptions/app-http.exception.js.map +1 -0
  61. package/dist/libs/ms-sophia-framework-mysql/core/common/exceptions/app-unauthorized.exception.d.ts +6 -0
  62. package/dist/libs/ms-sophia-framework-mysql/core/common/exceptions/app-unauthorized.exception.js +33 -0
  63. package/dist/libs/ms-sophia-framework-mysql/core/common/exceptions/app-unauthorized.exception.js.map +1 -0
  64. package/dist/libs/ms-sophia-framework-mysql/core/common/filters/all-exception.filter.d.ts +4 -0
  65. package/dist/libs/ms-sophia-framework-mysql/core/common/filters/all-exception.filter.js +39 -0
  66. package/dist/libs/ms-sophia-framework-mysql/core/common/filters/all-exception.filter.js.map +1 -0
  67. package/{libs/ms-sophia-framework-mysql/src/core/common/index.ts → dist/libs/ms-sophia-framework-mysql/core/common/index.d.ts} +1 -7
  68. package/dist/libs/ms-sophia-framework-mysql/core/common/index.js +35 -0
  69. package/dist/libs/ms-sophia-framework-mysql/core/common/index.js.map +1 -0
  70. package/dist/libs/ms-sophia-framework-mysql/core/common/pipes/app-validation.pipe.d.ts +5 -0
  71. package/dist/libs/ms-sophia-framework-mysql/core/common/pipes/app-validation.pipe.js +28 -0
  72. package/dist/libs/ms-sophia-framework-mysql/core/common/pipes/app-validation.pipe.js.map +1 -0
  73. package/dist/libs/ms-sophia-framework-mysql/core/common/result/bad-request.result.d.ts +8 -0
  74. package/dist/libs/ms-sophia-framework-mysql/core/common/result/bad-request.result.js +45 -0
  75. package/dist/libs/ms-sophia-framework-mysql/core/common/result/bad-request.result.js.map +1 -0
  76. package/dist/libs/ms-sophia-framework-mysql/core/common/result/property.result.d.ts +4 -0
  77. package/dist/libs/ms-sophia-framework-mysql/core/common/result/property.result.js +27 -0
  78. package/dist/libs/ms-sophia-framework-mysql/core/common/result/property.result.js.map +1 -0
  79. package/dist/libs/ms-sophia-framework-mysql/core/common/result/unauthorized.result.d.ts +6 -0
  80. package/dist/libs/ms-sophia-framework-mysql/core/common/result/unauthorized.result.js +39 -0
  81. package/dist/libs/ms-sophia-framework-mysql/core/common/result/unauthorized.result.js.map +1 -0
  82. package/dist/libs/ms-sophia-framework-mysql/core/config/config.module.d.ts +2 -0
  83. package/dist/libs/ms-sophia-framework-mysql/core/config/config.module.js +66 -0
  84. package/dist/libs/ms-sophia-framework-mysql/core/config/config.module.js.map +1 -0
  85. package/dist/libs/ms-sophia-framework-mysql/core/config/config.service.d.ts +6 -0
  86. package/dist/libs/ms-sophia-framework-mysql/core/config/config.service.js +49 -0
  87. package/dist/libs/ms-sophia-framework-mysql/core/config/config.service.js.map +1 -0
  88. package/dist/libs/ms-sophia-framework-mysql/core/config/index.d.ts +2 -0
  89. package/dist/libs/ms-sophia-framework-mysql/core/config/index.js +19 -0
  90. package/dist/libs/ms-sophia-framework-mysql/core/config/index.js.map +1 -0
  91. package/dist/libs/ms-sophia-framework-mysql/core/database/database.module.d.ts +2 -0
  92. package/dist/libs/ms-sophia-framework-mysql/core/database/database.module.js +26 -0
  93. package/dist/libs/ms-sophia-framework-mysql/core/database/database.module.js.map +1 -0
  94. package/dist/libs/ms-sophia-framework-mysql/core/database/database.provider.d.ts +11 -0
  95. package/dist/libs/ms-sophia-framework-mysql/core/database/database.provider.js +57 -0
  96. package/dist/libs/ms-sophia-framework-mysql/core/database/database.provider.js.map +1 -0
  97. package/dist/libs/ms-sophia-framework-mysql/core/database/index.d.ts +3 -0
  98. package/dist/libs/ms-sophia-framework-mysql/core/database/index.js +20 -0
  99. package/dist/libs/ms-sophia-framework-mysql/core/database/index.js.map +1 -0
  100. package/dist/libs/ms-sophia-framework-mysql/core/database/providers.d.ts +3 -0
  101. package/dist/libs/ms-sophia-framework-mysql/core/database/providers.js +8 -0
  102. package/dist/libs/ms-sophia-framework-mysql/core/database/providers.js.map +1 -0
  103. package/dist/libs/ms-sophia-framework-mysql/core/health/health.controller.d.ts +11 -0
  104. package/dist/libs/ms-sophia-framework-mysql/core/health/health.controller.js +62 -0
  105. package/dist/libs/ms-sophia-framework-mysql/core/health/health.controller.js.map +1 -0
  106. package/dist/libs/ms-sophia-framework-mysql/core/health/health.module.d.ts +2 -0
  107. package/dist/libs/ms-sophia-framework-mysql/core/health/health.module.js +24 -0
  108. package/dist/libs/ms-sophia-framework-mysql/core/health/health.module.js.map +1 -0
  109. package/dist/libs/ms-sophia-framework-mysql/core/index.d.ts +6 -0
  110. package/dist/libs/ms-sophia-framework-mysql/core/index.js +23 -0
  111. package/dist/libs/ms-sophia-framework-mysql/core/index.js.map +1 -0
  112. package/dist/libs/ms-sophia-framework-mysql/core/interceptors/headers.interceptor.d.ts +5 -0
  113. package/dist/libs/ms-sophia-framework-mysql/core/interceptors/headers.interceptor.js +24 -0
  114. package/dist/libs/ms-sophia-framework-mysql/core/interceptors/headers.interceptor.js.map +1 -0
  115. package/dist/libs/ms-sophia-framework-mysql/core/interceptors/index.d.ts +2 -0
  116. package/dist/libs/ms-sophia-framework-mysql/core/interceptors/index.js +19 -0
  117. package/dist/libs/ms-sophia-framework-mysql/core/interceptors/index.js.map +1 -0
  118. package/dist/libs/ms-sophia-framework-mysql/core/interceptors/logging.interceptor.d.ts +8 -0
  119. package/dist/libs/ms-sophia-framework-mysql/core/interceptors/logging.interceptor.js +47 -0
  120. package/dist/libs/ms-sophia-framework-mysql/core/interceptors/logging.interceptor.js.map +1 -0
  121. package/dist/libs/ms-sophia-framework-mysql/core/logger/index.d.ts +4 -0
  122. package/dist/libs/ms-sophia-framework-mysql/core/logger/index.js +21 -0
  123. package/dist/libs/ms-sophia-framework-mysql/core/logger/index.js.map +1 -0
  124. package/dist/libs/ms-sophia-framework-mysql/core/logger/logger.d.ts +29 -0
  125. package/dist/libs/ms-sophia-framework-mysql/core/logger/logger.js +115 -0
  126. package/dist/libs/ms-sophia-framework-mysql/core/logger/logger.js.map +1 -0
  127. package/dist/libs/ms-sophia-framework-mysql/core/logger/logger.module.d.ts +2 -0
  128. package/dist/libs/ms-sophia-framework-mysql/core/logger/logger.module.js +23 -0
  129. package/dist/libs/ms-sophia-framework-mysql/core/logger/logger.module.js.map +1 -0
  130. package/dist/libs/ms-sophia-framework-mysql/core/logger/logger.request.d.ts +27 -0
  131. package/dist/libs/ms-sophia-framework-mysql/core/logger/logger.request.js +107 -0
  132. package/dist/libs/ms-sophia-framework-mysql/core/logger/logger.request.js.map +1 -0
  133. package/dist/libs/ms-sophia-framework-mysql/core/logger/typeorm-logger.service.d.ts +13 -0
  134. package/dist/libs/ms-sophia-framework-mysql/core/logger/typeorm-logger.service.js +58 -0
  135. package/dist/libs/ms-sophia-framework-mysql/core/logger/typeorm-logger.service.js.map +1 -0
  136. package/dist/libs/ms-sophia-framework-mysql/core/subscribers/entity.subscriber.d.ts +11 -0
  137. package/dist/libs/ms-sophia-framework-mysql/core/subscribers/entity.subscriber.js +88 -0
  138. package/dist/libs/ms-sophia-framework-mysql/core/subscribers/entity.subscriber.js.map +1 -0
  139. package/dist/libs/ms-sophia-framework-mysql/core/subscribers/log.entity.d.ts +15 -0
  140. package/dist/libs/ms-sophia-framework-mysql/core/subscribers/log.entity.js +85 -0
  141. package/dist/libs/ms-sophia-framework-mysql/core/subscribers/log.entity.js.map +1 -0
  142. package/dist/libs/ms-sophia-framework-mysql/core/tools/env-vars.d.ts +1 -0
  143. package/dist/libs/ms-sophia-framework-mysql/core/tools/env-vars.js +7 -0
  144. package/dist/libs/ms-sophia-framework-mysql/core/tools/env-vars.js.map +1 -0
  145. package/dist/libs/ms-sophia-framework-mysql/core/tools/index.d.ts +4 -0
  146. package/dist/libs/ms-sophia-framework-mysql/core/tools/index.js +21 -0
  147. package/dist/libs/ms-sophia-framework-mysql/core/tools/index.js.map +1 -0
  148. package/dist/libs/ms-sophia-framework-mysql/core/tools/nanoid.d.ts +1 -0
  149. package/dist/libs/ms-sophia-framework-mysql/core/tools/nanoid.js +6 -0
  150. package/dist/libs/ms-sophia-framework-mysql/core/tools/nanoid.js.map +1 -0
  151. package/dist/libs/ms-sophia-framework-mysql/core/tools/query.d.ts +27 -0
  152. package/dist/libs/ms-sophia-framework-mysql/core/tools/query.js +119 -0
  153. package/dist/libs/ms-sophia-framework-mysql/core/tools/query.js.map +1 -0
  154. package/dist/libs/ms-sophia-framework-mysql/core/tools/send-to-logstash.d.ts +2 -0
  155. package/dist/libs/ms-sophia-framework-mysql/core/tools/send-to-logstash.js +106 -0
  156. package/dist/libs/ms-sophia-framework-mysql/core/tools/send-to-logstash.js.map +1 -0
  157. package/dist/libs/ms-sophia-framework-mysql/index.d.ts +3 -0
  158. package/dist/libs/ms-sophia-framework-mysql/index.js +20 -0
  159. package/dist/libs/ms-sophia-framework-mysql/index.js.map +1 -0
  160. package/dist/libs/ms-sophia-framework-mysql/main.d.ts +6 -0
  161. package/dist/libs/ms-sophia-framework-mysql/main.js +212 -0
  162. package/dist/libs/ms-sophia-framework-mysql/main.js.map +1 -0
  163. package/dist/libs/ms-sophia-framework-mysql/tsconfig.lib.tsbuildinfo +1 -0
  164. package/package.json +15 -2
  165. package/.prettierrc +0 -4
  166. package/bootstrap.yml +0 -193
  167. package/eslint.config.mjs +0 -35
  168. package/libs/ms-sophia-framework-mysql/src/app.module.ts +0 -14
  169. package/libs/ms-sophia-framework-mysql/src/core/amqp-clients/amqp-clients.module.ts +0 -43
  170. package/libs/ms-sophia-framework-mysql/src/core/amqp-clients/amqp-clients.ts +0 -22
  171. package/libs/ms-sophia-framework-mysql/src/core/amqp-clients/amqp-config.ts +0 -3
  172. package/libs/ms-sophia-framework-mysql/src/core/amqp-clients/amqp-pattern.ts +0 -61
  173. package/libs/ms-sophia-framework-mysql/src/core/amqp-clients/amqp-register.options.ts +0 -6
  174. package/libs/ms-sophia-framework-mysql/src/core/amqp-clients/amqp-sample.module.ts +0 -20
  175. package/libs/ms-sophia-framework-mysql/src/core/amqp-clients/amqp-sample.service.ts +0 -34
  176. package/libs/ms-sophia-framework-mysql/src/core/common/base/error.ts +0 -5
  177. package/libs/ms-sophia-framework-mysql/src/core/common/base/result.ts +0 -15
  178. package/libs/ms-sophia-framework-mysql/src/core/common/base/status-base.ts +0 -12
  179. package/libs/ms-sophia-framework-mysql/src/core/common/dto/change-status.dto.ts +0 -13
  180. package/libs/ms-sophia-framework-mysql/src/core/common/dto/log.dto.ts +0 -29
  181. package/libs/ms-sophia-framework-mysql/src/core/common/dto/order-by.dto.ts +0 -9
  182. package/libs/ms-sophia-framework-mysql/src/core/common/dto/pagination.dto.ts +0 -10
  183. package/libs/ms-sophia-framework-mysql/src/core/common/dto/search.dto.ts +0 -8
  184. package/libs/ms-sophia-framework-mysql/src/core/common/dto/select.dto.ts +0 -23
  185. package/libs/ms-sophia-framework-mysql/src/core/common/entity/base.entity.ts +0 -16
  186. package/libs/ms-sophia-framework-mysql/src/core/common/exceptions/app-badrequest.exception.ts +0 -31
  187. package/libs/ms-sophia-framework-mysql/src/core/common/exceptions/app-http.exception.ts +0 -35
  188. package/libs/ms-sophia-framework-mysql/src/core/common/exceptions/app-unauthorized.exception.ts +0 -36
  189. package/libs/ms-sophia-framework-mysql/src/core/common/filters/all-exception.filter.ts +0 -42
  190. package/libs/ms-sophia-framework-mysql/src/core/common/pipes/app-validation.pipe.ts +0 -35
  191. package/libs/ms-sophia-framework-mysql/src/core/common/result/bad-request.result.ts +0 -17
  192. package/libs/ms-sophia-framework-mysql/src/core/common/result/property.result.ts +0 -8
  193. package/libs/ms-sophia-framework-mysql/src/core/common/result/unauthorized.result.ts +0 -14
  194. package/libs/ms-sophia-framework-mysql/src/core/config/config.module.ts +0 -22
  195. package/libs/ms-sophia-framework-mysql/src/core/config/config.service.ts +0 -37
  196. package/libs/ms-sophia-framework-mysql/src/core/config/index.ts +0 -2
  197. package/libs/ms-sophia-framework-mysql/src/core/database/database.module.ts +0 -18
  198. package/libs/ms-sophia-framework-mysql/src/core/database/database.provider.ts +0 -70
  199. package/libs/ms-sophia-framework-mysql/src/core/database/index.ts +0 -3
  200. package/libs/ms-sophia-framework-mysql/src/core/database/providers.ts +0 -3
  201. package/libs/ms-sophia-framework-mysql/src/core/health/health.controller.ts +0 -36
  202. package/libs/ms-sophia-framework-mysql/src/core/health/health.module.ts +0 -16
  203. package/libs/ms-sophia-framework-mysql/src/core/interceptors/headers.interceptor.ts +0 -16
  204. package/libs/ms-sophia-framework-mysql/src/core/interceptors/index.ts +0 -2
  205. package/libs/ms-sophia-framework-mysql/src/core/interceptors/logging.interceptor.ts +0 -43
  206. package/libs/ms-sophia-framework-mysql/src/core/logger/index.ts +0 -4
  207. package/libs/ms-sophia-framework-mysql/src/core/logger/logger.module.ts +0 -10
  208. package/libs/ms-sophia-framework-mysql/src/core/logger/logger.request.ts +0 -137
  209. package/libs/ms-sophia-framework-mysql/src/core/logger/logger.ts +0 -146
  210. package/libs/ms-sophia-framework-mysql/src/core/logger/typeorm-logger.service.ts +0 -76
  211. package/libs/ms-sophia-framework-mysql/src/core/subscribers/entity.subscriber.ts +0 -79
  212. package/libs/ms-sophia-framework-mysql/src/core/subscribers/log.entity.ts +0 -35
  213. package/libs/ms-sophia-framework-mysql/src/core/tools/env-vars.ts +0 -26
  214. package/libs/ms-sophia-framework-mysql/src/core/tools/index.ts +0 -4
  215. package/libs/ms-sophia-framework-mysql/src/core/tools/nanoid.ts +0 -4
  216. package/libs/ms-sophia-framework-mysql/src/core/tools/query.ts +0 -186
  217. package/libs/ms-sophia-framework-mysql/src/core/tools/send-to-logstash.ts +0 -103
  218. package/libs/ms-sophia-framework-mysql/src/index.ts +0 -1
  219. package/libs/ms-sophia-framework-mysql/src/main.ts +0 -230
  220. package/libs/ms-sophia-framework-mysql/tsconfig.lib.json +0 -9
  221. package/nest-cli.json +0 -20
  222. package/pnpm-workspace.yaml +0 -3
  223. package/publish.sh +0 -18
  224. package/src/app.controller.spec.ts +0 -22
  225. package/src/app.controller.ts +0 -12
  226. package/src/app.module.ts +0 -10
  227. package/src/app.service.ts +0 -8
  228. package/src/main.ts +0 -8
  229. package/test/app.e2e-spec.ts +0 -29
  230. package/test/jest-e2e.json +0 -16
  231. package/tsconfig.build.json +0 -4
  232. package/tsconfig.json +0 -33
@@ -0,0 +1 @@
1
+ export declare function replaceEnvVars(str: any): any;
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.replaceEnvVars = replaceEnvVars;
4
+ function replaceEnvVars(str) {
5
+ return str.replaceAll(/\${([^}]+)}/g, (_, name) => process.env[name] || '');
6
+ }
7
+ //# sourceMappingURL=env-vars.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env-vars.js","sourceRoot":"","sources":["../../../../../libs/ms-sophia-framework-mysql/src/core/tools/env-vars.ts"],"names":[],"mappings":";;AAAA,wCAEC;AAFD,SAAgB,cAAc,CAAC,GAAG;IAChC,OAAO,GAAG,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;AAC7E,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './nanoid';
2
+ export * from './send-to-logstash';
3
+ export * from './query';
4
+ export * from './env-vars';
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./nanoid"), exports);
18
+ __exportStar(require("./send-to-logstash"), exports);
19
+ __exportStar(require("./query"), exports);
20
+ __exportStar(require("./env-vars"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/ms-sophia-framework-mysql/src/core/tools/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,qDAAkC;AAClC,0CAAuB;AACvB,6CAA0B"}
@@ -0,0 +1 @@
1
+ export declare const nanoid: (size?: number) => string;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.nanoid = void 0;
4
+ const nanoid_1 = require("nanoid");
5
+ exports.nanoid = (0, nanoid_1.customAlphabet)('0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ', 21);
6
+ //# sourceMappingURL=nanoid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nanoid.js","sourceRoot":"","sources":["../../../../../libs/ms-sophia-framework-mysql/src/core/tools/nanoid.ts"],"names":[],"mappings":";;;AAAA,mCAAwC;AAE3B,QAAA,MAAM,GAAG,IAAA,uBAAc,EAAC,sCAAsC,EAAE,EAAE,CAAC,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { SearchDto } from '../common/dto/search.dto';
2
+ import { ObjectLiteral, SelectQueryBuilder } from 'typeorm';
3
+ export declare function applyWhere<E extends ObjectLiteral>(query: SelectQueryBuilder<E>, where: Record<string, any> | Record<string, any>[] | null): SelectQueryBuilder<E>;
4
+ export declare function applyOrderAndPagination<E extends ObjectLiteral>(query: SelectQueryBuilder<E>, orderBy: Array<{
5
+ orderBy: string;
6
+ orderSort: 'ASC' | 'DESC';
7
+ }>, pagination?: {
8
+ page: number;
9
+ pageSize: number;
10
+ totalPages?: number;
11
+ }): Promise<SelectQueryBuilder<E>>;
12
+ export declare function applyWhereOrderAndPagination<E extends ObjectLiteral>(query: SelectQueryBuilder<E>, where: Record<string, any> | Record<string, any>[] | null, orderBy: Array<{
13
+ orderBy: string;
14
+ orderSort: 'ASC' | 'DESC';
15
+ }>, pagination?: {
16
+ page: number;
17
+ pageSize: number;
18
+ totalPages?: number;
19
+ }): Promise<SelectQueryBuilder<E>>;
20
+ export declare function applySearchWhereOrderAndPagination<E extends ObjectLiteral>(query: SelectQueryBuilder<E>, search: SearchDto | null, where: Record<string, any> | Record<string, any>[] | null, orderBy: Array<{
21
+ orderBy: string;
22
+ orderSort: 'ASC' | 'DESC';
23
+ }>, pagination?: {
24
+ page: number;
25
+ pageSize: number;
26
+ totalPages?: number;
27
+ }): Promise<SelectQueryBuilder<E>>;
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.applyWhere = applyWhere;
4
+ exports.applyOrderAndPagination = applyOrderAndPagination;
5
+ exports.applyWhereOrderAndPagination = applyWhereOrderAndPagination;
6
+ exports.applySearchWhereOrderAndPagination = applySearchWhereOrderAndPagination;
7
+ function applyWhere(query, where) {
8
+ if (!where)
9
+ return query;
10
+ for (const [key, value] of Object.entries(where)) {
11
+ if (typeof value === 'string' && value.startsWith('LIKE:')) {
12
+ const likeValue = value.replace('LIKE:', '');
13
+ query = query.andWhere(`${key} LIKE :${key}`, {
14
+ [key]: `%${likeValue}%`,
15
+ });
16
+ }
17
+ else {
18
+ query = query.andWhere(`${key} = :${key}`, { [key]: value });
19
+ }
20
+ }
21
+ return query;
22
+ }
23
+ async function applyOrderAndPagination(query, orderBy, pagination) {
24
+ if (orderBy !== undefined && orderBy.length > 0) {
25
+ query = query.orderBy(orderBy[0].orderBy, orderBy[0].orderSort);
26
+ for (let i = 1; i < orderBy.length; i++) {
27
+ query = query.addOrderBy(orderBy[i].orderBy, orderBy[i].orderSort);
28
+ }
29
+ }
30
+ if (pagination !== undefined) {
31
+ query = query.skip((pagination.page - 1) * pagination.pageSize);
32
+ query = query.take(pagination.pageSize);
33
+ pagination.totalPages = Math.ceil((await query.getCount()) / pagination.pageSize);
34
+ }
35
+ return query;
36
+ }
37
+ async function applyWhereOrderAndPagination(query, where, orderBy, pagination) {
38
+ if (where) {
39
+ for (const [key, value] of Object.entries(where)) {
40
+ if (typeof value === 'string' && value.startsWith('LIKE:')) {
41
+ const likeValue = value.replace('LIKE:', '');
42
+ query = query.andWhere(`${key} LIKE :${key}`, {
43
+ [key]: `%${likeValue}%`,
44
+ });
45
+ }
46
+ else {
47
+ query = query.andWhere(`${key} = :${key}`, { [key]: value });
48
+ }
49
+ }
50
+ }
51
+ if (orderBy !== undefined && orderBy.length > 0) {
52
+ query = query.orderBy(orderBy[0].orderBy, orderBy[0].orderSort);
53
+ for (let i = 1; i < orderBy.length; i++) {
54
+ query = query.addOrderBy(orderBy[i].orderBy, orderBy[i].orderSort);
55
+ }
56
+ }
57
+ if (pagination !== undefined) {
58
+ query = query.skip((pagination.page - 1) * pagination.pageSize);
59
+ query = query.take(pagination.pageSize);
60
+ pagination.totalPages = Math.ceil((await query.getCount()) / pagination.pageSize);
61
+ }
62
+ return query;
63
+ }
64
+ async function applySearchWhereOrderAndPagination(query, search, where, orderBy, pagination) {
65
+ let searchApplied = false;
66
+ if (search?.text && Array.isArray(search.properties) && search.properties.length > 0) {
67
+ const orConditions = [];
68
+ const params = {};
69
+ search.properties.forEach((prop, idx) => {
70
+ const paramName = `searchText${idx}`;
71
+ orConditions.push(`${prop} LIKE :${paramName}`);
72
+ params[paramName] = `%${search.text}%`;
73
+ });
74
+ if (orConditions.length > 0) {
75
+ query = query.where(`(${orConditions.join(' OR ')})`, params);
76
+ searchApplied = true;
77
+ }
78
+ }
79
+ if (where) {
80
+ const entries = Object.entries(where);
81
+ entries.forEach(([key, value], idx) => {
82
+ const useAnd = searchApplied || idx > 0;
83
+ if (typeof value === 'string' && value.startsWith('LIKE:')) {
84
+ const likeValue = value.replace('LIKE:', '');
85
+ if (useAnd) {
86
+ query = query.andWhere(`${key} LIKE :${key}`, {
87
+ [key]: `%${likeValue}%`,
88
+ });
89
+ }
90
+ else {
91
+ query = query.where(`${key} LIKE :${key}`, {
92
+ [key]: `%${likeValue}%`,
93
+ });
94
+ }
95
+ }
96
+ else {
97
+ if (useAnd) {
98
+ query = query.andWhere(`${key} = :${key}`, { [key]: value });
99
+ }
100
+ else {
101
+ query = query.where(`${key} = :${key}`, { [key]: value });
102
+ }
103
+ }
104
+ });
105
+ }
106
+ if (orderBy !== undefined && orderBy.length > 0) {
107
+ query = query.orderBy(orderBy[0].orderBy, orderBy[0].orderSort);
108
+ for (let i = 1; i < orderBy.length; i++) {
109
+ query = query.addOrderBy(orderBy[i].orderBy, orderBy[i].orderSort);
110
+ }
111
+ }
112
+ if (pagination !== undefined) {
113
+ query = query.skip((pagination.page - 1) * pagination.pageSize);
114
+ query = query.take(pagination.pageSize);
115
+ pagination.totalPages = Math.ceil((await query.getCount()) / pagination.pageSize);
116
+ }
117
+ return query;
118
+ }
119
+ //# sourceMappingURL=query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../../libs/ms-sophia-framework-mysql/src/core/tools/query.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { ConfigService } from '../config/config.service';
2
+ export declare function sendToLogstash(configService: ConfigService, logstashUrl: string | undefined, level: string, message: string, meta?: any, request?: any, response?: any): Promise<void>;
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.sendToLogstash = sendToLogstash;
40
+ const axios_1 = __importDefault(require("axios"));
41
+ const os = __importStar(require("os"));
42
+ const common_1 = require("@nestjs/common");
43
+ async function sendToLogstash(configService, logstashUrl, level, message, meta, request, response) {
44
+ try {
45
+ if (request === null) {
46
+ return;
47
+ }
48
+ const responseHeaders = response?.getHeaderNames().reduce((acc, headerName) => {
49
+ acc[headerName] = response.getHeader(headerName);
50
+ return acc;
51
+ }, {});
52
+ if (request.requestId === '') {
53
+ console.log('Request ID is empty');
54
+ }
55
+ const payload = {
56
+ level,
57
+ message,
58
+ timestamp: new Date().toISOString(),
59
+ requestId: request?.requestId ?? '',
60
+ appName: configService.get('app.name') ?? '',
61
+ appVersion: configService.get('app.version') ?? '',
62
+ appPort: configService.get('app.port') ?? '',
63
+ hostname: os.hostname(),
64
+ method: request?.method ?? '',
65
+ url: request?.originalUrl ?? '',
66
+ ip: request?.ip ?? '',
67
+ userAgent: request?.headers['user-agent'] ?? '',
68
+ query: request?.query ?? {},
69
+ requestBody: request?.body ?? {},
70
+ requestHeaders: filterHeaders(request?.headers ?? {}),
71
+ statusCode: response?.statusCode ?? '',
72
+ responseHeaders: responseHeaders ?? {},
73
+ responseTime: response?.responseTime ?? 0,
74
+ ...meta,
75
+ };
76
+ if (logstashUrl) {
77
+ await axios_1.default.post(logstashUrl, payload);
78
+ }
79
+ }
80
+ catch (error) {
81
+ const err = error;
82
+ common_1.Logger.error(`${err.message}\n${' '.repeat(61)}When trying to register: ${message}\nError trace: ${err.stack}`);
83
+ }
84
+ }
85
+ function filterHeaders(headers) {
86
+ const sensitiveHeaders = ['authorization', 'cookie', 'set-cookie'];
87
+ return Object.keys(headers).reduce((filtered, key) => {
88
+ if (sensitiveHeaders.includes(key.toLowerCase())) {
89
+ const value = headers[key];
90
+ if (typeof value === 'string') {
91
+ filtered[key] =
92
+ value.length > 10
93
+ ? `${value.slice(0, 10)}${'*'.repeat(value.length - 10)}`
94
+ : '*'.repeat(value.length);
95
+ }
96
+ else {
97
+ filtered[key] = value;
98
+ }
99
+ }
100
+ else {
101
+ filtered[key] = headers[key];
102
+ }
103
+ return filtered;
104
+ }, {});
105
+ }
106
+ //# sourceMappingURL=send-to-logstash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"send-to-logstash.js","sourceRoot":"","sources":["../../../../../libs/ms-sophia-framework-mysql/src/core/tools/send-to-logstash.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './main';
2
+ export * from './app.module';
3
+ export * from './core';
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./main"), exports);
18
+ __exportStar(require("./app.module"), exports);
19
+ __exportStar(require("./core"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/ms-sophia-framework-mysql/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAsB;AACtB,+CAA4B;AAC5B,yCAAsB"}
@@ -0,0 +1,6 @@
1
+ import { Logger } from './core/logger/logger';
2
+ import { ConfigService } from './core/config/config.service';
3
+ export declare function bootstrap({ preHook, postHook, }?: {
4
+ preHook?: (app: any, configService: ConfigService, logger: Logger) => Promise<void>;
5
+ postHook?: (app: any, configService: ConfigService, logger: Logger) => Promise<void>;
6
+ }): Promise<void>;
@@ -0,0 +1,212 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.bootstrap = bootstrap;
37
+ const core_1 = require("@nestjs/core");
38
+ const microservices_1 = require("@nestjs/microservices");
39
+ const common_1 = require("@nestjs/common");
40
+ const logger_1 = require("./core/logger/logger");
41
+ const config_service_1 = require("./core/config/config.service");
42
+ const swagger_1 = require("@nestjs/swagger");
43
+ const yaml = __importStar(require("js-yaml"));
44
+ const fs_1 = require("fs");
45
+ const path_1 = __importStar(require("path"));
46
+ const interceptors_1 = require("./core/interceptors");
47
+ const common_2 = require("./core/common");
48
+ const tools_1 = require("./core/tools");
49
+ async function bootstrap({ preHook, postHook, } = {}) {
50
+ let appModule = '';
51
+ try {
52
+ require('dotenv').config({ path: 'bootstrap.env' });
53
+ const configData = yaml.load((0, tools_1.replaceEnvVars)((0, fs_1.readFileSync)('bootstrap.yml', 'utf8')));
54
+ const configService = new config_service_1.ConfigService(configData);
55
+ const logstashUrl = configService.get('logger.http.host') ?? '';
56
+ const appConfig = configService.get('app');
57
+ const logger = new logger_1.Logger(configService);
58
+ logger.setContext('Bootstrap');
59
+ const appModulePath = path_1.default.resolve(process.cwd(), appConfig?.module ?? '/app.module');
60
+ const { AppModule } = await import(appModulePath);
61
+ let app;
62
+ try {
63
+ app = await core_1.NestFactory.create(AppModule);
64
+ }
65
+ catch (createError) {
66
+ const createErr = createError;
67
+ console.error('Line: NestFactory.create(AppModule) failed');
68
+ console.error(`Create error message: ${createErr.message ?? 'unknown'}`);
69
+ console.error(`Create error stack: ${createErr.stack ?? 'no stack'}`);
70
+ if (createErr.cause) {
71
+ console.error(`Create error cause: ${String(createErr.cause)}`);
72
+ }
73
+ throw createError;
74
+ }
75
+ logger_1.Logger.setApplicationContext(app);
76
+ logger_1.Logger.setLogstashUrl(logstashUrl);
77
+ logger.setContext('Bootstrap');
78
+ common_1.Logger.overrideLogger(logger);
79
+ logger_1.Logger.log(`Loading app module from ${appModulePath}...`);
80
+ app.useLogger(logger);
81
+ const appPrefix = appConfig?.prefix ?? 'api';
82
+ app.setGlobalPrefix(appPrefix);
83
+ app.useGlobalInterceptors(new interceptors_1.HeadersInterceptor());
84
+ app.useGlobalInterceptors(new interceptors_1.LoggingInterceptor(configService));
85
+ useGlobalPipes(app, configService);
86
+ addSwagger(app, configService);
87
+ enableCors(app, configService);
88
+ useStaticAssets(app, configService);
89
+ const port = appConfig?.port ?? 3000;
90
+ if (preHook) {
91
+ await preHook(app, configService, logger);
92
+ }
93
+ if (configService.get('AMQP')) {
94
+ const amqpUrls = configService.get('AMQP.urls') ?? [];
95
+ const amqpQueue = configService.get('AMQP.queue') ?? '';
96
+ app.connectMicroservice({
97
+ transport: microservices_1.Transport.RMQ,
98
+ options: {
99
+ urls: amqpUrls,
100
+ queue: amqpQueue,
101
+ prefetchCount: configService.get('AMQP.prefetchCount') ?? 10,
102
+ isGlobalPrefetchCount: configService.get('AMQP.isGlobalPrefetchCount') ?? false,
103
+ noAck: configService.get('AMQP.noAck') ?? false,
104
+ queueOptions: {
105
+ durable: configService.get('AMQP.queueOptions.durable'),
106
+ arguments: {
107
+ 'x-message-ttl': configService.get('AMQP.queueOptions.arguments.x-message-ttl'),
108
+ 'x-dead-letter-exchange': configService.get('AMQP.queueOptions.arguments.x-dead-letter-exchange'),
109
+ 'x-dead-letter-routing-key': configService.get('AMQP.queueOptions.arguments.x-dead-letter-routing-key'),
110
+ }
111
+ },
112
+ persistent: configService.get('AMQP.queueOptions.persistent') ?? true,
113
+ exchange: configService.get('AMQP.queueOptions.exchange') ?? '',
114
+ exchangeType: configService.get('AMQP.queueOptions.exchangeType') ?? 'direct',
115
+ wildcards: (configService.get('AMQP.queueOptions.exchangeType') ?? '') == 'topic' ? configService.get('AMQP.queueOptions.exchangeType') ?? true : false,
116
+ },
117
+ });
118
+ await app.startAllMicroservices();
119
+ logger.log(`Transport.RMQ: Connected to queue: ${amqpQueue} in ${maskUrlsCredentials(amqpUrls)}`, 'Bootstrap');
120
+ }
121
+ await app.listen(port);
122
+ if (postHook) {
123
+ await postHook(app, configService, logger);
124
+ }
125
+ const appUrl = (await app.getUrl()).replace('[::1]', 'localhost');
126
+ const swaggerPrefix = configService.get('swagger.prefix') ?? '/swagger';
127
+ logger_1.Logger.log(`Application is running on: ${appUrl}/${appPrefix}`, 'Bootstrap');
128
+ logger.log(`Swagger is running on: ${appUrl}/${swaggerPrefix}`, 'Bootstrap');
129
+ }
130
+ catch (error) {
131
+ const err = error;
132
+ if (err.code === 'MODULE_NOT_FOUND') {
133
+ console.error(`Error in the bootstrap method. Cannot find module ${appModule}\nStack trace: ${err.stack}`);
134
+ }
135
+ else {
136
+ console.error(`Error in the bootstrap method. Terminating the application.\nStack trace: ${err.stack}`);
137
+ }
138
+ console.error(`Error details: ${JSON.stringify(error)}`);
139
+ process.exit(1);
140
+ }
141
+ }
142
+ function maskUrlsCredentials(urls) {
143
+ return urls.map((url) => url.replace(/\/\/([^:@/\s]+)(:([^@/\s]*))?@/g, (_, username, __, password) => {
144
+ const maskedUsername = '*'.repeat(username.length);
145
+ if (password !== undefined) {
146
+ return `//${maskedUsername}:${'*'.repeat(password.length)}@`;
147
+ }
148
+ return `//${maskedUsername}@`;
149
+ }));
150
+ }
151
+ async function addSwagger(app, configService) {
152
+ const swaggerConfig = configService.get('swagger');
153
+ if (swaggerConfig) {
154
+ logger_1.Logger.log(`Swagger is enabled`, 'Bootstrap');
155
+ const config = new swagger_1.DocumentBuilder()
156
+ .setTitle(configService.get('swagger.title') ?? 'Undefined title API')
157
+ .setDescription(configService.get('swagger.description') ?? 'Undefined description API')
158
+ .setVersion(configService.get('swagger.version') ?? 'Undefined version API')
159
+ .build();
160
+ const documentFactory = () => swagger_1.SwaggerModule.createDocument(app, config);
161
+ swagger_1.SwaggerModule.setup(configService.get('swagger.basePath') ?? '/swagger', app, documentFactory, {
162
+ swaggerOptions: {
163
+ tagsSorter: 'alpha',
164
+ },
165
+ });
166
+ }
167
+ else {
168
+ logger_1.Logger.log(`Swagger is disabled`, 'Bootstrap');
169
+ }
170
+ }
171
+ function useGlobalPipes(app, configService) {
172
+ const globalPipes = [];
173
+ const validationPipeOptions = configService.get('validationPipe');
174
+ if (validationPipeOptions) {
175
+ globalPipes.push(new common_2.AppValidationPipe(validationPipeOptions));
176
+ logger_1.Logger.log(`Using ValidationPipe in useGlobalPipes()`, 'Bootstrap');
177
+ }
178
+ const parseIntPipeOptions = configService.get('parseIntPipe');
179
+ if (parseIntPipeOptions) {
180
+ globalPipes.push(new common_1.ParseIntPipe(parseIntPipeOptions));
181
+ logger_1.Logger.log(`Using ParseIntPipe in useGlobalPipes()`, 'Bootstrap');
182
+ }
183
+ const parseArrayPipeOptions = configService.get('parseArrayPipe');
184
+ if (parseArrayPipeOptions) {
185
+ globalPipes.push(new common_1.ParseArrayPipe(parseArrayPipeOptions));
186
+ logger_1.Logger.log(`Using ParseArrayPipe in useGlobalPipes()`, 'Bootstrap');
187
+ }
188
+ if (globalPipes.length > 0) {
189
+ app.useGlobalPipes(...globalPipes);
190
+ logger_1.Logger.log(`Global Pipes are enabled`, 'Bootstrap');
191
+ }
192
+ }
193
+ function enableCors(app, configService) {
194
+ const corsOptions = configService.get('cors');
195
+ if (corsOptions) {
196
+ logger_1.Logger.log(`CORS has been enabled per the configured settings.`, 'Bootstrap');
197
+ app.enableCors(corsOptions);
198
+ }
199
+ else {
200
+ logger_1.Logger.warn(`CORS has not been configured.`, 'Bootstrap');
201
+ }
202
+ }
203
+ function useStaticAssets(app, configService) {
204
+ const staticAssetsConfig = configService.get('staticAssets');
205
+ if (staticAssetsConfig) {
206
+ const configPath = staticAssetsConfig.path ?? './public';
207
+ const staticPath = (0, path_1.join)(process.cwd(), configPath);
208
+ app.useStaticAssets(staticPath);
209
+ logger_1.Logger.warn(`Static assets are being served from path: ${configPath}`, 'Bootstrap');
210
+ }
211
+ }
212
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../libs/ms-sophia-framework-mysql/src/main.ts"],"names":[],"mappings":"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"}