@minimaltech/node-infra 0.5.9-2 → 0.5.9-21

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 (582) hide show
  1. package/dist/base/applications/base.application.d.ts +2 -1
  2. package/dist/base/applications/base.application.js +31 -41
  3. package/dist/base/applications/default.application.js +2 -9
  4. package/dist/base/applications/index.js +0 -1
  5. package/dist/base/base.component.js +2 -3
  6. package/dist/base/base.helper.js +4 -4
  7. package/dist/base/base.provider.js +2 -3
  8. package/dist/base/base.sequence.js +17 -27
  9. package/dist/base/controllers/common.js +8 -10
  10. package/dist/base/controllers/crud.controller.js +55 -68
  11. package/dist/base/controllers/express-request-handler.d.ts +16 -0
  12. package/dist/base/controllers/express-request-handler.js +19 -0
  13. package/dist/base/controllers/index.d.ts +1 -0
  14. package/dist/base/controllers/index.js +1 -1
  15. package/dist/base/controllers/kv.controller.js +7 -19
  16. package/dist/base/controllers/relational.controller.d.ts +1 -3
  17. package/dist/base/controllers/relational.controller.js +40 -58
  18. package/dist/base/controllers/service-crud.controller.js +46 -47
  19. package/dist/base/datasources/base.datasource.js +1 -1
  20. package/dist/base/datasources/index.js +0 -1
  21. package/dist/base/datasources/types.js +0 -1
  22. package/dist/base/index.js +0 -1
  23. package/dist/base/loopback/@lb/auth/index.js +0 -1
  24. package/dist/base/loopback/@lb/core/index.d.ts +1 -1
  25. package/dist/base/loopback/@lb/core/index.js +1 -2
  26. package/dist/base/loopback/@lb/repository/index.d.ts +0 -1
  27. package/dist/base/loopback/@lb/repository/index.js +0 -2
  28. package/dist/base/loopback/@lb/rest/index.js +0 -1
  29. package/dist/base/loopback/authentication/index.d.ts +0 -2
  30. package/dist/base/loopback/authentication/index.js +0 -2
  31. package/dist/base/loopback/authorization/index.js +0 -1
  32. package/dist/base/loopback/boot/index.js +0 -1
  33. package/dist/base/loopback/core/index.js +0 -1
  34. package/dist/base/loopback/filter/index.d.ts +1 -2
  35. package/dist/base/loopback/filter/index.js +0 -16
  36. package/dist/base/loopback/health-check/index.d.ts +2 -0
  37. package/dist/base/loopback/health-check/index.js +17 -0
  38. package/dist/base/loopback/http-server/index.d.ts +1 -2
  39. package/dist/base/loopback/http-server/index.js +0 -16
  40. package/dist/base/loopback/metadata/index.js +0 -1
  41. package/dist/base/loopback/repository/index.js +0 -1
  42. package/dist/base/loopback/rest/index.js +0 -1
  43. package/dist/base/loopback/security/index.js +0 -1
  44. package/dist/base/loopback/service-proxy/index.js +0 -1
  45. package/dist/base/models/base.model.d.ts +0 -7
  46. package/dist/base/models/base.model.js +5 -24
  47. package/dist/base/models/index.js +0 -1
  48. package/dist/base/repositories/base.repository.d.ts +0 -3
  49. package/dist/base/repositories/base.repository.js +5 -25
  50. package/dist/base/repositories/index.js +0 -1
  51. package/dist/base/repositories/relations/has-many-polymorphic/decorator.d.ts +0 -8
  52. package/dist/base/repositories/relations/has-many-polymorphic/decorator.js +11 -11
  53. package/dist/base/repositories/relations/has-many-polymorphic/factory.d.ts +0 -9
  54. package/dist/base/repositories/relations/has-many-polymorphic/factory.js +12 -31
  55. package/dist/base/repositories/relations/has-many-polymorphic/index.js +0 -1
  56. package/dist/base/repositories/relations/has-many-polymorphic/types.js +0 -1
  57. package/dist/base/repositories/relations/index.js +0 -1
  58. package/dist/base/repositories/searchable-tz-crud.repository.js +129 -161
  59. package/dist/base/repositories/tz-crud.repository.js +23 -59
  60. package/dist/base/services/base-crud.service.js +6 -10
  61. package/dist/base/services/base.service.js +2 -3
  62. package/dist/base/services/index.js +0 -1
  63. package/dist/common/constants.js +81 -90
  64. package/dist/common/environments.js +25 -26
  65. package/dist/common/index.js +0 -1
  66. package/dist/common/keys.js +2 -3
  67. package/dist/common/statuses.js +28 -32
  68. package/dist/common/types.d.ts +0 -3
  69. package/dist/common/types.js +0 -1
  70. package/dist/components/authenticate/common/constants.js +11 -14
  71. package/dist/components/authenticate/common/index.js +0 -1
  72. package/dist/components/authenticate/common/keys.js +7 -8
  73. package/dist/components/authenticate/common/types.js +11 -4
  74. package/dist/components/authenticate/component.js +22 -30
  75. package/dist/components/authenticate/controllers/auth.controller.js +13 -12
  76. package/dist/components/authenticate/controllers/index.js +0 -1
  77. package/dist/components/authenticate/controllers/oauth2.controller.d.ts +6 -9
  78. package/dist/components/authenticate/controllers/oauth2.controller.js +20 -28
  79. package/dist/components/authenticate/index.js +0 -1
  80. package/dist/components/authenticate/middleware.js +25 -36
  81. package/dist/components/authenticate/models/index.js +0 -1
  82. package/dist/components/authenticate/models/oauth2-client.model.js +8 -4
  83. package/dist/components/authenticate/models/oauth2-scope.model.js +4 -1
  84. package/dist/components/authenticate/models/oauth2-token.model.js +7 -1
  85. package/dist/components/authenticate/oauth2-handlers/authorization-code.handler.js +4 -6
  86. package/dist/components/authenticate/oauth2-handlers/base.js +95 -111
  87. package/dist/components/authenticate/oauth2-handlers/client-credential.handler.js +2 -4
  88. package/dist/components/authenticate/oauth2-handlers/index.js +0 -1
  89. package/dist/components/authenticate/oauth2-handlers/oauth2.js +3 -3
  90. package/dist/components/authenticate/oauth2-handlers/password.handler.js +0 -1
  91. package/dist/components/authenticate/repositories/index.js +0 -1
  92. package/dist/components/authenticate/repositories/oauth2.repository.js +2 -1
  93. package/dist/components/authenticate/services/basic-token.service.js +18 -30
  94. package/dist/components/authenticate/services/basic.strategy.js +7 -18
  95. package/dist/components/authenticate/services/index.js +0 -1
  96. package/dist/components/authenticate/services/jwt-token.service.js +27 -41
  97. package/dist/components/authenticate/services/jwt.strategy.js +2 -2
  98. package/dist/components/authenticate/services/oauth2.service.js +98 -111
  99. package/dist/components/authenticate/services/oauth2.strategy.js +19 -32
  100. package/dist/components/authorize/adapters/adapter-builder.js +1 -1
  101. package/dist/components/authorize/adapters/base.adapter.js +2 -10
  102. package/dist/components/authorize/adapters/casbin-postgres-adapter.helper.js +37 -56
  103. package/dist/components/authorize/adapters/casbin-redis-adapter.helper.js +0 -2
  104. package/dist/components/authorize/adapters/index.js +0 -1
  105. package/dist/components/authorize/common/constants.js +10 -13
  106. package/dist/components/authorize/common/index.js +0 -1
  107. package/dist/components/authorize/common/keys.js +15 -16
  108. package/dist/components/authorize/common/types.js +2 -3
  109. package/dist/components/authorize/component.js +44 -60
  110. package/dist/components/authorize/decorators/index.d.ts +0 -11
  111. package/dist/components/authorize/decorators/index.js +1 -15
  112. package/dist/components/authorize/index.js +0 -1
  113. package/dist/components/authorize/interceptor.js +76 -81
  114. package/dist/components/authorize/migrations/0000-create-view-policy.js +3 -15
  115. package/dist/components/authorize/migrations/index.js +0 -1
  116. package/dist/components/authorize/models/defs.d.ts +5 -5
  117. package/dist/components/authorize/models/defs.js +24 -6
  118. package/dist/components/authorize/models/index.js +0 -1
  119. package/dist/components/authorize/models/permission-mapping.model.d.ts +1 -1
  120. package/dist/components/authorize/models/permission-mapping.model.js +0 -1
  121. package/dist/components/authorize/models/permission.model.d.ts +1 -1
  122. package/dist/components/authorize/models/permission.model.js +0 -1
  123. package/dist/components/authorize/models/role.model.d.ts +1 -1
  124. package/dist/components/authorize/models/role.model.js +1 -2
  125. package/dist/components/authorize/models/user-role.model.d.ts +1 -1
  126. package/dist/components/authorize/models/user-role.model.js +0 -2
  127. package/dist/components/authorize/models/view-authorize-policy.model.js +4 -2
  128. package/dist/components/authorize/provider.js +81 -97
  129. package/dist/components/authorize/repositories/authorize.repository.js +3 -7
  130. package/dist/components/authorize/repositories/index.js +0 -1
  131. package/dist/components/authorize/services/enforcer.service.js +20 -28
  132. package/dist/components/authorize/services/generator.service.d.ts +0 -20
  133. package/dist/components/authorize/services/generator.service.js +62 -97
  134. package/dist/components/authorize/services/index.js +0 -1
  135. package/dist/components/crash-report/common/constants.js +0 -1
  136. package/dist/components/crash-report/common/index.js +0 -1
  137. package/dist/components/crash-report/common/keys.js +8 -11
  138. package/dist/components/crash-report/common/types.js +0 -1
  139. package/dist/components/crash-report/component.js +31 -45
  140. package/dist/components/crash-report/index.js +0 -1
  141. package/dist/components/crash-report/providers/index.js +0 -1
  142. package/dist/components/crash-report/providers/provider.js +1 -1
  143. package/dist/components/crash-report/providers/third-parties/base.js +2 -3
  144. package/dist/components/crash-report/providers/third-parties/index.js +0 -1
  145. package/dist/components/crash-report/services/index.js +0 -1
  146. package/dist/components/crash-report/services/mt-crash-report.service.js +5 -6
  147. package/dist/components/grpc/common/constants.js +0 -1
  148. package/dist/components/grpc/common/index.js +0 -1
  149. package/dist/components/grpc/common/keys.js +4 -5
  150. package/dist/components/grpc/common/types.js +0 -1
  151. package/dist/components/grpc/components/index.js +0 -1
  152. package/dist/components/grpc/components/server.component.js +9 -10
  153. package/dist/components/grpc/controllers/base.js +1 -1
  154. package/dist/components/grpc/controllers/index.js +0 -1
  155. package/dist/components/grpc/decorators/index.js +0 -1
  156. package/dist/components/grpc/helpers/grpc-client.js +9 -4
  157. package/dist/components/grpc/helpers/grpc-server.js +14 -18
  158. package/dist/components/grpc/helpers/index.js +0 -1
  159. package/dist/components/grpc/index.js +0 -1
  160. package/dist/components/grpc/persistents/grpc.connector.js +8 -3
  161. package/dist/components/grpc/persistents/grpc.datasource.js +2 -4
  162. package/dist/components/grpc/persistents/grpc.repository.js +3 -3
  163. package/dist/components/grpc/persistents/index.js +0 -1
  164. package/dist/components/health-check/component.d.ts +7 -0
  165. package/dist/components/health-check/component.js +51 -0
  166. package/dist/components/health-check/index.d.ts +1 -0
  167. package/dist/components/health-check/index.js +17 -0
  168. package/dist/components/index.d.ts +2 -1
  169. package/dist/components/index.js +2 -2
  170. package/dist/components/migration/common/index.js +0 -1
  171. package/dist/components/migration/common/keys.js +3 -4
  172. package/dist/components/migration/common/types.js +0 -1
  173. package/dist/components/migration/component.js +5 -9
  174. package/dist/components/migration/index.js +0 -1
  175. package/dist/components/migration/models/index.js +0 -1
  176. package/dist/components/migration/models/migration.model.js +2 -1
  177. package/dist/components/migration/repositories/index.js +0 -1
  178. package/dist/components/migration/repositories/migration.repository.js +0 -1
  179. package/dist/components/socket-io/common/constants.js +10 -11
  180. package/dist/components/socket-io/common/index.js +0 -1
  181. package/dist/components/socket-io/common/keys.js +6 -7
  182. package/dist/components/socket-io/component.js +9 -9
  183. package/dist/components/socket-io/helpers/index.js +0 -1
  184. package/dist/components/socket-io/helpers/socket-io-client.helper.js +7 -12
  185. package/dist/components/socket-io/helpers/socket-io-server.helper.js +26 -42
  186. package/dist/components/socket-io/index.js +0 -1
  187. package/dist/components/static-asset/common/index.js +0 -1
  188. package/dist/components/static-asset/common/keys.js +4 -5
  189. package/dist/components/static-asset/component.js +9 -9
  190. package/dist/components/static-asset/controllers/asset.controller.d.ts +0 -8
  191. package/dist/components/static-asset/controllers/asset.controller.js +71 -94
  192. package/dist/components/static-asset/controllers/index.js +0 -1
  193. package/dist/components/static-asset/controllers/resource.controller.js +8 -10
  194. package/dist/components/static-asset/index.js +0 -1
  195. package/dist/datasources/index.d.ts +1 -1
  196. package/dist/datasources/index.js +1 -2
  197. package/dist/datasources/{kvmem → memory}/datasource.js +3 -4
  198. package/dist/datasources/{kvmem → memory}/index.js +0 -1
  199. package/dist/datasources/postgres/datasource.js +10 -11
  200. package/dist/datasources/postgres/index.js +0 -1
  201. package/dist/datasources/postgres/types.js +0 -1
  202. package/dist/datasources/redis/connector.js +18 -8
  203. package/dist/datasources/redis/datasource.js +7 -8
  204. package/dist/datasources/redis/index.js +0 -1
  205. package/dist/datasources/redis/types.js +0 -1
  206. package/dist/helpers/application-environment.helper.js +3 -4
  207. package/dist/helpers/cron.helper.js +9 -15
  208. package/dist/helpers/crypto/algorithms/aes.algorithm.js +8 -8
  209. package/dist/helpers/crypto/algorithms/base.algorithm.js +3 -5
  210. package/dist/helpers/crypto/algorithms/index.js +0 -1
  211. package/dist/helpers/crypto/algorithms/rsa.algorithm.js +4 -6
  212. package/dist/helpers/crypto/common/constants.js +0 -1
  213. package/dist/helpers/crypto/common/index.js +0 -1
  214. package/dist/helpers/crypto/common/types.js +0 -1
  215. package/dist/helpers/crypto/index.js +0 -1
  216. package/dist/helpers/database/index.js +0 -1
  217. package/dist/helpers/database/query-builder.helper.js +2 -6
  218. package/dist/helpers/index.js +0 -1
  219. package/dist/helpers/logger/application-logger.js +7 -18
  220. package/dist/helpers/logger/common/index.js +0 -1
  221. package/dist/helpers/logger/common/types.js +20 -23
  222. package/dist/helpers/logger/default-logger.js +2 -13
  223. package/dist/helpers/logger/factory.js +1 -2
  224. package/dist/helpers/logger/index.js +0 -1
  225. package/dist/helpers/logger/transports/dgram.transport.js +16 -26
  226. package/dist/helpers/logger/transports/index.js +0 -1
  227. package/dist/helpers/network/http-request/base-network-request.helper.d.ts +3 -0
  228. package/dist/helpers/network/http-request/base-network-request.helper.js +39 -35
  229. package/dist/helpers/network/http-request/fetcher/axios-fetcher.d.ts +2 -3
  230. package/dist/helpers/network/http-request/fetcher/axios-fetcher.js +10 -23
  231. package/dist/helpers/network/http-request/fetcher/base-fetcher.d.ts +5 -1
  232. package/dist/helpers/network/http-request/fetcher/base-fetcher.js +16 -37
  233. package/dist/helpers/network/http-request/fetcher/index.js +0 -1
  234. package/dist/helpers/network/http-request/fetcher/node-fetcher.d.ts +2 -2
  235. package/dist/helpers/network/http-request/fetcher/node-fetcher.js +28 -13
  236. package/dist/helpers/network/http-request/index.js +0 -1
  237. package/dist/helpers/network/http-request/types.d.ts +2 -1
  238. package/dist/helpers/network/http-request/types.js +0 -1
  239. package/dist/helpers/network/index.js +0 -1
  240. package/dist/helpers/network/tcp-socket/base-tcp-client.helper.js +30 -28
  241. package/dist/helpers/network/tcp-socket/base-tcp-server.helper.js +21 -20
  242. package/dist/helpers/network/tcp-socket/index.js +0 -1
  243. package/dist/helpers/network/tcp-socket/network-tcp-client.helper.js +5 -2
  244. package/dist/helpers/network/tcp-socket/network-tcp-server.helper.js +5 -2
  245. package/dist/helpers/network/tcp-socket/network-tls-tcp-client.helper.js +5 -2
  246. package/dist/helpers/network/tcp-socket/network-tls-tcp-server.helper.js +5 -2
  247. package/dist/helpers/network/udp-socket/index.js +0 -1
  248. package/dist/helpers/network/udp-socket/network-udp-client.helper.js +21 -19
  249. package/dist/helpers/queue/bullmq.helper.js +21 -23
  250. package/dist/helpers/queue/index.js +0 -1
  251. package/dist/helpers/queue/mqtt.helper.js +15 -18
  252. package/dist/helpers/queue/queue.helper.js +74 -146
  253. package/dist/helpers/redis/default.helper.js +117 -163
  254. package/dist/helpers/redis/index.js +0 -1
  255. package/dist/helpers/redis/redis-cluster.helper.js +7 -3
  256. package/dist/helpers/redis/redis.helper.js +8 -6
  257. package/dist/helpers/redis/types.js +0 -1
  258. package/dist/helpers/storage/di-container.helper.js +2 -1
  259. package/dist/helpers/storage/index.js +0 -1
  260. package/dist/helpers/storage/minio.helper.js +88 -129
  261. package/dist/helpers/testing/common.js +3 -4
  262. package/dist/helpers/testing/describe.js +14 -22
  263. package/dist/helpers/testing/index.js +0 -1
  264. package/dist/helpers/testing/test-case.js +5 -1
  265. package/dist/helpers/testing/test-handler.js +23 -31
  266. package/dist/helpers/testing/test-plan/base.js +9 -7
  267. package/dist/helpers/testing/test-plan/default.js +0 -1
  268. package/dist/helpers/testing/test-plan/index.js +0 -1
  269. package/dist/helpers/testing/types.js +0 -1
  270. package/dist/helpers/worker-thread/base.js +10 -21
  271. package/dist/helpers/worker-thread/index.js +0 -1
  272. package/dist/helpers/worker-thread/types.js +0 -1
  273. package/dist/helpers/worker-thread/worker-bus.js +11 -13
  274. package/dist/helpers/worker-thread/worker-pool.js +17 -26
  275. package/dist/index.js +0 -1
  276. package/dist/interceptors/content-range.interceptor.js +115 -133
  277. package/dist/interceptors/index.js +0 -1
  278. package/dist/middlewares/index.js +0 -1
  279. package/dist/middlewares/request-body-parser.middleware.js +4 -17
  280. package/dist/middlewares/request-spy.middleware.js +4 -6
  281. package/dist/migrations/base-path.js +0 -1
  282. package/dist/migrations/handler.js +13 -23
  283. package/dist/migrations/index.js +0 -1
  284. package/dist/mixins/data-type.mixin.js +5 -1
  285. package/dist/mixins/deprecated/user-audit.mixin.d.ts +0 -3
  286. package/dist/mixins/deprecated/user-audit.mixin.js +2 -6
  287. package/dist/mixins/duplicatable.mixin.js +1 -1
  288. package/dist/mixins/index.js +0 -1
  289. package/dist/mixins/object-search.mixin.js +1 -1
  290. package/dist/mixins/principal.mixin.js +2 -1
  291. package/dist/mixins/soft-delete.mixin.js +1 -1
  292. package/dist/mixins/soft-persistent.mixin.js +1 -1
  293. package/dist/mixins/text-search.mixin.js +1 -1
  294. package/dist/mixins/tz.mixin.js +2 -1
  295. package/dist/mixins/user-audit.mixin.js +5 -4
  296. package/dist/mixins/vector.mixin.js +9 -7
  297. package/dist/tsconfig.base.json +11 -4
  298. package/dist/utilities/crypto.utility.js +0 -1
  299. package/dist/utilities/date.utility.js +5 -24
  300. package/dist/utilities/error.utility.js +2 -1
  301. package/dist/utilities/index.js +0 -1
  302. package/dist/utilities/model.utility.js +2 -7
  303. package/dist/utilities/parse.utility.d.ts +0 -16
  304. package/dist/utilities/parse.utility.js +6 -42
  305. package/dist/utilities/performance.utility.js +1 -3
  306. package/dist/utilities/promise.utility.d.ts +0 -17
  307. package/dist/utilities/promise.utility.js +5 -32
  308. package/dist/utilities/query.utility.js +8 -17
  309. package/dist/utilities/request.utility.js +2 -9
  310. package/dist/utilities/url.utility.js +0 -1
  311. package/package.json +11 -7
  312. package/dist/base/applications/base.application.js.map +0 -1
  313. package/dist/base/applications/default.application.js.map +0 -1
  314. package/dist/base/applications/index.js.map +0 -1
  315. package/dist/base/base.component.js.map +0 -1
  316. package/dist/base/base.helper.js.map +0 -1
  317. package/dist/base/base.provider.js.map +0 -1
  318. package/dist/base/base.sequence.js.map +0 -1
  319. package/dist/base/controllers/common.js.map +0 -1
  320. package/dist/base/controllers/crud.controller.js.map +0 -1
  321. package/dist/base/controllers/index.js.map +0 -1
  322. package/dist/base/controllers/kv.controller.js.map +0 -1
  323. package/dist/base/controllers/relational.controller.js.map +0 -1
  324. package/dist/base/controllers/service-crud.controller.js.map +0 -1
  325. package/dist/base/datasources/base.datasource.js.map +0 -1
  326. package/dist/base/datasources/index.js.map +0 -1
  327. package/dist/base/datasources/types.js.map +0 -1
  328. package/dist/base/index.js.map +0 -1
  329. package/dist/base/loopback/@lb/auth/index.js.map +0 -1
  330. package/dist/base/loopback/@lb/core/index.js.map +0 -1
  331. package/dist/base/loopback/@lb/repository/index.js.map +0 -1
  332. package/dist/base/loopback/@lb/rest/index.js.map +0 -1
  333. package/dist/base/loopback/authentication/index.js.map +0 -1
  334. package/dist/base/loopback/authorization/index.js.map +0 -1
  335. package/dist/base/loopback/boot/index.js.map +0 -1
  336. package/dist/base/loopback/core/index.js.map +0 -1
  337. package/dist/base/loopback/filter/index.js.map +0 -1
  338. package/dist/base/loopback/http-server/index.js.map +0 -1
  339. package/dist/base/loopback/metadata/index.js.map +0 -1
  340. package/dist/base/loopback/repository/index.js.map +0 -1
  341. package/dist/base/loopback/rest/index.js.map +0 -1
  342. package/dist/base/loopback/security/index.js.map +0 -1
  343. package/dist/base/loopback/service-proxy/index.js.map +0 -1
  344. package/dist/base/models/base.model.js.map +0 -1
  345. package/dist/base/models/index.js.map +0 -1
  346. package/dist/base/repositories/base.repository.js.map +0 -1
  347. package/dist/base/repositories/index.js.map +0 -1
  348. package/dist/base/repositories/relations/has-many-polymorphic/decorator.js.map +0 -1
  349. package/dist/base/repositories/relations/has-many-polymorphic/factory.js.map +0 -1
  350. package/dist/base/repositories/relations/has-many-polymorphic/index.js.map +0 -1
  351. package/dist/base/repositories/relations/has-many-polymorphic/types.js.map +0 -1
  352. package/dist/base/repositories/relations/index.js.map +0 -1
  353. package/dist/base/repositories/searchable-tz-crud.repository.js.map +0 -1
  354. package/dist/base/repositories/tz-crud.repository.js.map +0 -1
  355. package/dist/base/services/base-crud.service.js.map +0 -1
  356. package/dist/base/services/base.service.js.map +0 -1
  357. package/dist/base/services/index.js.map +0 -1
  358. package/dist/common/constants.js.map +0 -1
  359. package/dist/common/environments.js.map +0 -1
  360. package/dist/common/index.js.map +0 -1
  361. package/dist/common/keys.js.map +0 -1
  362. package/dist/common/statuses.js.map +0 -1
  363. package/dist/common/types.js.map +0 -1
  364. package/dist/components/authenticate/common/constants.js.map +0 -1
  365. package/dist/components/authenticate/common/index.js.map +0 -1
  366. package/dist/components/authenticate/common/keys.js.map +0 -1
  367. package/dist/components/authenticate/common/types.js.map +0 -1
  368. package/dist/components/authenticate/component.js.map +0 -1
  369. package/dist/components/authenticate/controllers/auth.controller.js.map +0 -1
  370. package/dist/components/authenticate/controllers/index.js.map +0 -1
  371. package/dist/components/authenticate/controllers/oauth2.controller.js.map +0 -1
  372. package/dist/components/authenticate/index.js.map +0 -1
  373. package/dist/components/authenticate/middleware.js.map +0 -1
  374. package/dist/components/authenticate/models/index.js.map +0 -1
  375. package/dist/components/authenticate/models/oauth2-client.model.js.map +0 -1
  376. package/dist/components/authenticate/models/oauth2-scope.model.js.map +0 -1
  377. package/dist/components/authenticate/models/oauth2-token.model.js.map +0 -1
  378. package/dist/components/authenticate/oauth2-handlers/authorization-code.handler.js.map +0 -1
  379. package/dist/components/authenticate/oauth2-handlers/base.js.map +0 -1
  380. package/dist/components/authenticate/oauth2-handlers/client-credential.handler.js.map +0 -1
  381. package/dist/components/authenticate/oauth2-handlers/index.js.map +0 -1
  382. package/dist/components/authenticate/oauth2-handlers/oauth2.js.map +0 -1
  383. package/dist/components/authenticate/oauth2-handlers/password.handler.js.map +0 -1
  384. package/dist/components/authenticate/repositories/index.js.map +0 -1
  385. package/dist/components/authenticate/repositories/oauth2.repository.js.map +0 -1
  386. package/dist/components/authenticate/services/basic-token.service.js.map +0 -1
  387. package/dist/components/authenticate/services/basic.strategy.js.map +0 -1
  388. package/dist/components/authenticate/services/index.js.map +0 -1
  389. package/dist/components/authenticate/services/jwt-token.service.js.map +0 -1
  390. package/dist/components/authenticate/services/jwt.strategy.js.map +0 -1
  391. package/dist/components/authenticate/services/oauth2.service.js.map +0 -1
  392. package/dist/components/authenticate/services/oauth2.strategy.js.map +0 -1
  393. package/dist/components/authorize/adapters/adapter-builder.js.map +0 -1
  394. package/dist/components/authorize/adapters/base.adapter.js.map +0 -1
  395. package/dist/components/authorize/adapters/casbin-postgres-adapter.helper.js.map +0 -1
  396. package/dist/components/authorize/adapters/casbin-redis-adapter.helper.js.map +0 -1
  397. package/dist/components/authorize/adapters/index.js.map +0 -1
  398. package/dist/components/authorize/common/constants.js.map +0 -1
  399. package/dist/components/authorize/common/index.js.map +0 -1
  400. package/dist/components/authorize/common/keys.js.map +0 -1
  401. package/dist/components/authorize/common/types.js.map +0 -1
  402. package/dist/components/authorize/component.js.map +0 -1
  403. package/dist/components/authorize/decorators/index.js.map +0 -1
  404. package/dist/components/authorize/index.js.map +0 -1
  405. package/dist/components/authorize/interceptor.js.map +0 -1
  406. package/dist/components/authorize/migrations/0000-create-view-policy.js.map +0 -1
  407. package/dist/components/authorize/migrations/index.js.map +0 -1
  408. package/dist/components/authorize/models/defs.js.map +0 -1
  409. package/dist/components/authorize/models/index.js.map +0 -1
  410. package/dist/components/authorize/models/permission-mapping.model.js.map +0 -1
  411. package/dist/components/authorize/models/permission.model.js.map +0 -1
  412. package/dist/components/authorize/models/role.model.js.map +0 -1
  413. package/dist/components/authorize/models/user-role.model.js.map +0 -1
  414. package/dist/components/authorize/models/view-authorize-policy.model.js.map +0 -1
  415. package/dist/components/authorize/provider.js.map +0 -1
  416. package/dist/components/authorize/repositories/authorize.repository.js.map +0 -1
  417. package/dist/components/authorize/repositories/index.js.map +0 -1
  418. package/dist/components/authorize/services/enforcer.service.js.map +0 -1
  419. package/dist/components/authorize/services/generator.service.js.map +0 -1
  420. package/dist/components/authorize/services/index.js.map +0 -1
  421. package/dist/components/crash-report/common/constants.js.map +0 -1
  422. package/dist/components/crash-report/common/index.js.map +0 -1
  423. package/dist/components/crash-report/common/keys.js.map +0 -1
  424. package/dist/components/crash-report/common/types.js.map +0 -1
  425. package/dist/components/crash-report/component.js.map +0 -1
  426. package/dist/components/crash-report/index.js.map +0 -1
  427. package/dist/components/crash-report/providers/index.js.map +0 -1
  428. package/dist/components/crash-report/providers/provider.js.map +0 -1
  429. package/dist/components/crash-report/providers/third-parties/base.js.map +0 -1
  430. package/dist/components/crash-report/providers/third-parties/index.js.map +0 -1
  431. package/dist/components/crash-report/services/index.js.map +0 -1
  432. package/dist/components/crash-report/services/mt-crash-report.service.js.map +0 -1
  433. package/dist/components/grpc/common/constants.js.map +0 -1
  434. package/dist/components/grpc/common/index.js.map +0 -1
  435. package/dist/components/grpc/common/keys.js.map +0 -1
  436. package/dist/components/grpc/common/types.js.map +0 -1
  437. package/dist/components/grpc/components/index.js.map +0 -1
  438. package/dist/components/grpc/components/server.component.js.map +0 -1
  439. package/dist/components/grpc/controllers/base.js.map +0 -1
  440. package/dist/components/grpc/controllers/index.js.map +0 -1
  441. package/dist/components/grpc/decorators/index.js.map +0 -1
  442. package/dist/components/grpc/helpers/grpc-client.js.map +0 -1
  443. package/dist/components/grpc/helpers/grpc-server.js.map +0 -1
  444. package/dist/components/grpc/helpers/index.js.map +0 -1
  445. package/dist/components/grpc/index.js.map +0 -1
  446. package/dist/components/grpc/persistents/grpc.connector.js.map +0 -1
  447. package/dist/components/grpc/persistents/grpc.datasource.js.map +0 -1
  448. package/dist/components/grpc/persistents/grpc.repository.js.map +0 -1
  449. package/dist/components/grpc/persistents/index.js.map +0 -1
  450. package/dist/components/index.js.map +0 -1
  451. package/dist/components/migration/common/index.js.map +0 -1
  452. package/dist/components/migration/common/keys.js.map +0 -1
  453. package/dist/components/migration/common/types.js.map +0 -1
  454. package/dist/components/migration/component.js.map +0 -1
  455. package/dist/components/migration/index.js.map +0 -1
  456. package/dist/components/migration/models/index.js.map +0 -1
  457. package/dist/components/migration/models/migration.model.js.map +0 -1
  458. package/dist/components/migration/repositories/index.js.map +0 -1
  459. package/dist/components/migration/repositories/migration.repository.js.map +0 -1
  460. package/dist/components/socket-io/common/constants.js.map +0 -1
  461. package/dist/components/socket-io/common/index.js.map +0 -1
  462. package/dist/components/socket-io/common/keys.js.map +0 -1
  463. package/dist/components/socket-io/component.js.map +0 -1
  464. package/dist/components/socket-io/helpers/index.js.map +0 -1
  465. package/dist/components/socket-io/helpers/socket-io-client.helper.js.map +0 -1
  466. package/dist/components/socket-io/helpers/socket-io-server.helper.js.map +0 -1
  467. package/dist/components/socket-io/index.js.map +0 -1
  468. package/dist/components/static-asset/common/index.js.map +0 -1
  469. package/dist/components/static-asset/common/keys.js.map +0 -1
  470. package/dist/components/static-asset/component.js.map +0 -1
  471. package/dist/components/static-asset/controllers/asset.controller.js.map +0 -1
  472. package/dist/components/static-asset/controllers/index.js.map +0 -1
  473. package/dist/components/static-asset/controllers/resource.controller.js.map +0 -1
  474. package/dist/components/static-asset/index.js.map +0 -1
  475. package/dist/datasources/index.js.map +0 -1
  476. package/dist/datasources/kvmem/datasource.js.map +0 -1
  477. package/dist/datasources/kvmem/index.js.map +0 -1
  478. package/dist/datasources/postgres/datasource.js.map +0 -1
  479. package/dist/datasources/postgres/index.js.map +0 -1
  480. package/dist/datasources/postgres/types.js.map +0 -1
  481. package/dist/datasources/redis/connector.js.map +0 -1
  482. package/dist/datasources/redis/datasource.js.map +0 -1
  483. package/dist/datasources/redis/index.js.map +0 -1
  484. package/dist/datasources/redis/types.js.map +0 -1
  485. package/dist/helpers/application-environment.helper.js.map +0 -1
  486. package/dist/helpers/cron.helper.js.map +0 -1
  487. package/dist/helpers/crypto/algorithms/aes.algorithm.js.map +0 -1
  488. package/dist/helpers/crypto/algorithms/base.algorithm.js.map +0 -1
  489. package/dist/helpers/crypto/algorithms/index.js.map +0 -1
  490. package/dist/helpers/crypto/algorithms/rsa.algorithm.js.map +0 -1
  491. package/dist/helpers/crypto/common/constants.js.map +0 -1
  492. package/dist/helpers/crypto/common/index.js.map +0 -1
  493. package/dist/helpers/crypto/common/types.js.map +0 -1
  494. package/dist/helpers/crypto/index.js.map +0 -1
  495. package/dist/helpers/database/index.js.map +0 -1
  496. package/dist/helpers/database/query-builder.helper.js.map +0 -1
  497. package/dist/helpers/index.js.map +0 -1
  498. package/dist/helpers/logger/application-logger.js.map +0 -1
  499. package/dist/helpers/logger/common/index.js.map +0 -1
  500. package/dist/helpers/logger/common/types.js.map +0 -1
  501. package/dist/helpers/logger/default-logger.js.map +0 -1
  502. package/dist/helpers/logger/factory.js.map +0 -1
  503. package/dist/helpers/logger/index.js.map +0 -1
  504. package/dist/helpers/logger/transports/dgram.transport.js.map +0 -1
  505. package/dist/helpers/logger/transports/index.js.map +0 -1
  506. package/dist/helpers/network/http-request/base-network-request.helper.js.map +0 -1
  507. package/dist/helpers/network/http-request/fetcher/axios-fetcher.js.map +0 -1
  508. package/dist/helpers/network/http-request/fetcher/base-fetcher.js.map +0 -1
  509. package/dist/helpers/network/http-request/fetcher/index.js.map +0 -1
  510. package/dist/helpers/network/http-request/fetcher/node-fetcher.js.map +0 -1
  511. package/dist/helpers/network/http-request/index.js.map +0 -1
  512. package/dist/helpers/network/http-request/types.js.map +0 -1
  513. package/dist/helpers/network/index.js.map +0 -1
  514. package/dist/helpers/network/tcp-socket/base-tcp-client.helper.js.map +0 -1
  515. package/dist/helpers/network/tcp-socket/base-tcp-server.helper.js.map +0 -1
  516. package/dist/helpers/network/tcp-socket/index.js.map +0 -1
  517. package/dist/helpers/network/tcp-socket/network-tcp-client.helper.js.map +0 -1
  518. package/dist/helpers/network/tcp-socket/network-tcp-server.helper.js.map +0 -1
  519. package/dist/helpers/network/tcp-socket/network-tls-tcp-client.helper.js.map +0 -1
  520. package/dist/helpers/network/tcp-socket/network-tls-tcp-server.helper.js.map +0 -1
  521. package/dist/helpers/network/udp-socket/index.js.map +0 -1
  522. package/dist/helpers/network/udp-socket/network-udp-client.helper.js.map +0 -1
  523. package/dist/helpers/queue/bullmq.helper.js.map +0 -1
  524. package/dist/helpers/queue/index.js.map +0 -1
  525. package/dist/helpers/queue/mqtt.helper.js.map +0 -1
  526. package/dist/helpers/queue/queue.helper.js.map +0 -1
  527. package/dist/helpers/redis/default.helper.js.map +0 -1
  528. package/dist/helpers/redis/index.js.map +0 -1
  529. package/dist/helpers/redis/redis-cluster.helper.js.map +0 -1
  530. package/dist/helpers/redis/redis.helper.js.map +0 -1
  531. package/dist/helpers/redis/types.js.map +0 -1
  532. package/dist/helpers/storage/di-container.helper.js.map +0 -1
  533. package/dist/helpers/storage/index.js.map +0 -1
  534. package/dist/helpers/storage/minio.helper.js.map +0 -1
  535. package/dist/helpers/testing/common.js.map +0 -1
  536. package/dist/helpers/testing/describe.js.map +0 -1
  537. package/dist/helpers/testing/index.js.map +0 -1
  538. package/dist/helpers/testing/test-case.js.map +0 -1
  539. package/dist/helpers/testing/test-handler.js.map +0 -1
  540. package/dist/helpers/testing/test-plan/base.js.map +0 -1
  541. package/dist/helpers/testing/test-plan/default.js.map +0 -1
  542. package/dist/helpers/testing/test-plan/index.js.map +0 -1
  543. package/dist/helpers/testing/types.js.map +0 -1
  544. package/dist/helpers/worker-thread/base.js.map +0 -1
  545. package/dist/helpers/worker-thread/index.js.map +0 -1
  546. package/dist/helpers/worker-thread/types.js.map +0 -1
  547. package/dist/helpers/worker-thread/worker-bus.js.map +0 -1
  548. package/dist/helpers/worker-thread/worker-pool.js.map +0 -1
  549. package/dist/index.js.map +0 -1
  550. package/dist/interceptors/content-range.interceptor.js.map +0 -1
  551. package/dist/interceptors/index.js.map +0 -1
  552. package/dist/middlewares/index.js.map +0 -1
  553. package/dist/middlewares/request-body-parser.middleware.js.map +0 -1
  554. package/dist/middlewares/request-spy.middleware.js.map +0 -1
  555. package/dist/migrations/base-path.js.map +0 -1
  556. package/dist/migrations/handler.js.map +0 -1
  557. package/dist/migrations/index.js.map +0 -1
  558. package/dist/mixins/data-type.mixin.js.map +0 -1
  559. package/dist/mixins/deprecated/user-audit.mixin.js.map +0 -1
  560. package/dist/mixins/duplicatable.mixin.js.map +0 -1
  561. package/dist/mixins/index.js.map +0 -1
  562. package/dist/mixins/object-search.mixin.js.map +0 -1
  563. package/dist/mixins/principal.mixin.js.map +0 -1
  564. package/dist/mixins/soft-delete.mixin.js.map +0 -1
  565. package/dist/mixins/soft-persistent.mixin.js.map +0 -1
  566. package/dist/mixins/text-search.mixin.js.map +0 -1
  567. package/dist/mixins/tz.mixin.js.map +0 -1
  568. package/dist/mixins/user-audit.mixin.js.map +0 -1
  569. package/dist/mixins/vector.mixin.js.map +0 -1
  570. package/dist/utilities/crypto.utility.js.map +0 -1
  571. package/dist/utilities/date.utility.js.map +0 -1
  572. package/dist/utilities/error.utility.js.map +0 -1
  573. package/dist/utilities/index.js.map +0 -1
  574. package/dist/utilities/model.utility.js.map +0 -1
  575. package/dist/utilities/parse.utility.js.map +0 -1
  576. package/dist/utilities/performance.utility.js.map +0 -1
  577. package/dist/utilities/promise.utility.js.map +0 -1
  578. package/dist/utilities/query.utility.js.map +0 -1
  579. package/dist/utilities/request.utility.js.map +0 -1
  580. package/dist/utilities/url.utility.js.map +0 -1
  581. /package/dist/datasources/{kvmem → memory}/datasource.d.ts +0 -0
  582. /package/dist/datasources/{kvmem → memory}/index.d.ts +0 -0
@@ -12,20 +12,29 @@ const helpers_1 = require("../../../helpers");
12
12
  const utilities_1 = require("../../../utilities");
13
13
  const isEmpty_1 = __importDefault(require("lodash/isEmpty"));
14
14
  const CLIENT_AUTHENTICATE_TIMEOUT = 10 * 1000;
15
- // -------------------------------------------------------------------------------------------------------------
16
15
  class SocketIOServerHelper {
16
+ logger;
17
+ identifier;
18
+ server;
19
+ serverOptions = {};
20
+ redisConnection;
21
+ authenticateFn;
22
+ onClientConnected;
23
+ authenticateTimeout;
24
+ defaultRooms;
25
+ io;
26
+ emitter;
27
+ clients;
17
28
  constructor(opts) {
18
- var _a, _b, _c;
19
- this.serverOptions = {};
20
29
  this.logger = helpers_1.LoggerFactory.getLogger([SocketIOServerHelper.name]);
21
30
  this.clients = {};
22
31
  this.identifier = opts.identifier;
23
- this.serverOptions = (_a = opts === null || opts === void 0 ? void 0 : opts.serverOptions) !== null && _a !== void 0 ? _a : {};
32
+ this.serverOptions = opts?.serverOptions ?? {};
24
33
  this.redisConnection = opts.redisConnection;
25
34
  this.authenticateFn = opts.authenticateFn;
26
35
  this.onClientConnected = opts.clientConnectedFn;
27
- this.authenticateTimeout = (_b = opts.authenticateTimeout) !== null && _b !== void 0 ? _b : CLIENT_AUTHENTICATE_TIMEOUT;
28
- this.defaultRooms = (_c = opts.defaultRooms) !== null && _c !== void 0 ? _c : [
36
+ this.authenticateTimeout = opts.authenticateTimeout ?? CLIENT_AUTHENTICATE_TIMEOUT;
37
+ this.defaultRooms = opts.defaultRooms ?? [
29
38
  constants_1.SocketIOConstants.ROOM_DEFAULT,
30
39
  constants_1.SocketIOConstants.ROOM_NOTIFICATION,
31
40
  ];
@@ -36,7 +45,6 @@ class SocketIOServerHelper {
36
45
  });
37
46
  }
38
47
  this.server = opts.server;
39
- // Establish redis connection
40
48
  if (!this.redisConnection) {
41
49
  throw (0, utilities_1.getError)({
42
50
  statusCode: 500,
@@ -45,18 +53,15 @@ class SocketIOServerHelper {
45
53
  }
46
54
  this.configure();
47
55
  }
48
- // -------------------------------------------------------------------------------------------------------------
49
56
  getIOServer() {
50
57
  return this.io;
51
58
  }
52
- // -------------------------------------------------------------------------------------------------------------
53
59
  getClients(opts) {
54
- if (opts === null || opts === void 0 ? void 0 : opts.id) {
60
+ if (opts?.id) {
55
61
  return this.clients[opts.id];
56
62
  }
57
63
  return this.clients;
58
64
  }
59
- // -------------------------------------------------------------------------------------------------------------
60
65
  on(opts) {
61
66
  const { topic, handler } = opts;
62
67
  if (!topic || !handler) {
@@ -67,9 +72,7 @@ class SocketIOServerHelper {
67
72
  }
68
73
  this.io.on(topic, handler);
69
74
  }
70
- // -------------------------------------------------------------------------------------------------------------
71
75
  configure() {
72
- var _a, _b, _c, _d;
73
76
  this.logger.info('[configure][%s] Configuring IO Server', this.identifier);
74
77
  if (!this.server) {
75
78
  throw (0, utilities_1.getError)({
@@ -78,31 +81,25 @@ class SocketIOServerHelper {
78
81
  });
79
82
  }
80
83
  this.io = new socket_io_1.Server(this.server, this.serverOptions);
81
- // Config socket.io redis adapter
82
- this.io.adapter((0, redis_adapter_1.createAdapter)(this.redisConnection.getClient().duplicate(), // Redis PUB Client
83
- this.redisConnection.getClient().duplicate()));
84
+ this.io.adapter((0, redis_adapter_1.createAdapter)(this.redisConnection.getClient().duplicate(), this.redisConnection.getClient().duplicate()));
84
85
  this.logger.info('[configure] SocketIO Server initialized Redis Adapter');
85
- // Config socket.io redis emitter
86
86
  this.emitter = new redis_emitter_1.Emitter(this.redisConnection.getClient().duplicate());
87
87
  this.emitter.redisClient.on('error', (error) => {
88
88
  this.logger.error('[configure][Emitter] On Error: %j', error);
89
89
  });
90
90
  this.logger.info('[configure] SocketIO Server initialized Redis Emitter!');
91
- // Handle socket.io new connection
92
91
  this.io.on(constants_1.SocketIOConstants.EVENT_CONNECT, (socket) => {
93
92
  this.onClientConnect({ socket });
94
93
  });
95
- this.logger.info('[configure] SocketIO Server READY | Path: %s | Address: %j', (_b = (_a = this.serverOptions) === null || _a === void 0 ? void 0 : _a.path) !== null && _b !== void 0 ? _b : '', (_c = this.server) === null || _c === void 0 ? void 0 : _c.address());
96
- this.logger.debug('[configure] Whether http listening: %s', (_d = this.server) === null || _d === void 0 ? void 0 : _d.listening);
94
+ this.logger.info('[configure] SocketIO Server READY | Path: %s | Address: %j', this.serverOptions?.path ?? '', this.server?.address());
95
+ this.logger.debug('[configure] Whether http listening: %s', this.server?.listening);
97
96
  }
98
- // -------------------------------------------------------------------------------------------------------------
99
97
  onClientConnect(opts) {
100
98
  const { socket } = opts;
101
99
  if (!socket) {
102
100
  this.logger.info('[onClientConnect] Invalid new socket connection!');
103
101
  return;
104
102
  }
105
- // Validate user identifier
106
103
  const { id, handshake } = socket;
107
104
  const { headers } = handshake;
108
105
  if (this.clients[id]) {
@@ -118,8 +115,7 @@ class SocketIOServerHelper {
118
115
  socket,
119
116
  state: 'unauthorized',
120
117
  authenticateTimeout: setTimeout(() => {
121
- var _a;
122
- if (((_a = this.clients[id]) === null || _a === void 0 ? void 0 : _a.state) === 'authenticated') {
118
+ if (this.clients[id]?.state === 'authenticated') {
123
119
  return;
124
120
  }
125
121
  this.disconnect({ socket });
@@ -130,12 +126,10 @@ class SocketIOServerHelper {
130
126
  this.authenticateFn(handshake)
131
127
  .then(rs => {
132
128
  this.logger.info('[onClientAuthenticate] Socket: %s | Authenticate result: %s', id, rs);
133
- // Valid connection
134
129
  if (rs) {
135
130
  this.onClientAuthenticated({ socket });
136
131
  return;
137
132
  }
138
- // Invalid connection
139
133
  this.clients[id].state = 'unauthorized';
140
134
  this.send({
141
135
  destination: socket.id,
@@ -152,7 +146,6 @@ class SocketIOServerHelper {
152
146
  });
153
147
  })
154
148
  .catch(error => {
155
- // Unexpected error while authenticating connection
156
149
  this.clients[id].state = 'unauthorized';
157
150
  this.logger.error('[onClientConnect] Connection: %s | Failed to authenticate new socket connection | Error: %s', id, error);
158
151
  this.send({
@@ -172,15 +165,12 @@ class SocketIOServerHelper {
172
165
  });
173
166
  });
174
167
  }
175
- // -------------------------------------------------------------------------------------------------------------
176
168
  onClientAuthenticated(opts) {
177
- var _a, _b;
178
169
  const { socket } = opts;
179
170
  if (!socket) {
180
171
  this.logger.info('[onClientAuthenticated] Invalid new socket connection!');
181
172
  return;
182
173
  }
183
- // Validate user identifier
184
174
  const { id } = socket;
185
175
  if (!this.clients[id]) {
186
176
  this.logger.info('[onClientAuthenticated] Unknown client id %s to continue!', id);
@@ -189,7 +179,6 @@ class SocketIOServerHelper {
189
179
  }
190
180
  this.clients[id].state = 'authenticated';
191
181
  this.ping({ socket, doIgnoreAuth: true });
192
- // Valid connection
193
182
  this.logger.info('[onClientAuthenticated] Connection: %s | Identifier: %s | CONNECTED | Time: %s', id, this.identifier, new Date().toISOString());
194
183
  Promise.all(this.defaultRooms.map((room) => socket.join(room)))
195
184
  .then(() => {
@@ -198,13 +187,12 @@ class SocketIOServerHelper {
198
187
  .catch(error => {
199
188
  this.logger.error('[onClientAuthenticated] Connection %s failed to join defaultRooms %s | Error: %s', id, this.defaultRooms, error);
200
189
  });
201
- // Handle events
202
190
  socket.on(constants_1.SocketIOConstants.EVENT_DISCONNECT, () => {
203
191
  this.disconnect({ socket });
204
192
  });
205
193
  socket.on(constants_1.SocketIOConstants.EVENT_JOIN, (payload) => {
206
194
  const { rooms = [] } = payload || {};
207
- if (!(rooms === null || rooms === void 0 ? void 0 : rooms.length)) {
195
+ if (!rooms?.length) {
208
196
  return;
209
197
  }
210
198
  Promise.all(rooms.map((room) => socket.join(room)))
@@ -218,7 +206,7 @@ class SocketIOServerHelper {
218
206
  });
219
207
  socket.on(constants_1.SocketIOConstants.EVENT_LEAVE, (payload) => {
220
208
  const { rooms = [] } = payload || { room: [] };
221
- if (!(rooms === null || rooms === void 0 ? void 0 : rooms.length)) {
209
+ if (!rooms?.length) {
222
210
  return;
223
211
  }
224
212
  Promise.all(rooms.map((room) => socket.leave(room)))
@@ -242,13 +230,13 @@ class SocketIOServerHelper {
242
230
  time: new Date().toISOString(),
243
231
  },
244
232
  },
245
- // log: true,
246
233
  });
247
- (_b = (_a = this.onClientConnected) === null || _a === void 0 ? void 0 : _a.call(this, { socket })) === null || _b === void 0 ? void 0 : _b.then(() => { }).catch(error => {
234
+ this.onClientConnected?.({ socket })
235
+ ?.then(() => { })
236
+ .catch(error => {
248
237
  this.logger.error('[onClientConnected][Handler] Error: %s', error);
249
238
  });
250
239
  }
251
- // -------------------------------------------------------------------------------------------------------------
252
240
  ping(opts) {
253
241
  const { socket, doIgnoreAuth } = opts;
254
242
  if (!socket) {
@@ -269,10 +257,8 @@ class SocketIOServerHelper {
269
257
  time: new Date().toISOString(),
270
258
  },
271
259
  },
272
- // log: true,
273
260
  });
274
261
  }
275
- // -------------------------------------------------------------------------------------------------------------
276
262
  disconnect(opts) {
277
263
  const { socket } = opts;
278
264
  if (!socket) {
@@ -292,7 +278,6 @@ class SocketIOServerHelper {
292
278
  this.logger.info('[disconnect] Connection: %s | DISCONNECT | Time: %s', id, new Date().toISOString());
293
279
  socket.disconnect();
294
280
  }
295
- // -------------------------------------------------------------------------------------------------------------
296
281
  send(opts) {
297
282
  const { destination, payload, doLog, cb } = opts;
298
283
  if (!payload) {
@@ -309,7 +294,7 @@ class SocketIOServerHelper {
309
294
  else {
310
295
  sender.emit(topic, data);
311
296
  }
312
- cb === null || cb === void 0 ? void 0 : cb();
297
+ cb?.();
313
298
  if (!doLog) {
314
299
  return;
315
300
  }
@@ -317,4 +302,3 @@ class SocketIOServerHelper {
317
302
  }
318
303
  }
319
304
  exports.SocketIOServerHelper = SocketIOServerHelper;
320
- //# sourceMappingURL=socket-io-server.helper.js.map
@@ -17,4 +17,3 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./common"), exports);
18
18
  __exportStar(require("./component"), exports);
19
19
  __exportStar(require("./helpers"), exports);
20
- //# sourceMappingURL=index.js.map
@@ -15,4 +15,3 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./keys"), exports);
18
- //# sourceMappingURL=index.js.map
@@ -2,10 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ResourceAssetKeys = void 0;
4
4
  class ResourceAssetKeys {
5
+ static COMPONENT_OPTIONS = '@app/minio/component-options';
6
+ static MINIO_INSTANCE = '@app/minio/instance';
7
+ static CONNECTION_OPTIONS = '@app/minio/connection-options';
8
+ static RESOURCE_BASE_PATH = '@app/resources/base-path';
5
9
  }
6
10
  exports.ResourceAssetKeys = ResourceAssetKeys;
7
- ResourceAssetKeys.COMPONENT_OPTIONS = '@app/minio/component-options';
8
- ResourceAssetKeys.MINIO_INSTANCE = '@app/minio/instance';
9
- ResourceAssetKeys.CONNECTION_OPTIONS = '@app/minio/connection-options';
10
- ResourceAssetKeys.RESOURCE_BASE_PATH = '@app/resources/base-path';
11
- //# sourceMappingURL=keys.js.map
@@ -22,17 +22,18 @@ const controllers_1 = require("./controllers");
22
22
  const base_component_1 = require("../../base/base.component");
23
23
  const applications_1 = require("../../base/applications");
24
24
  let StaticAssetComponent = StaticAssetComponent_1 = class StaticAssetComponent extends base_component_1.BaseComponent {
25
+ application;
26
+ bindings = [
27
+ core_1.Binding.bind(common_1.ResourceAssetKeys.COMPONENT_OPTIONS).to({
28
+ useMinioAsset: true,
29
+ useStaticResource: true,
30
+ resourceBasePath: './',
31
+ }),
32
+ core_1.Binding.bind(common_1.ResourceAssetKeys.CONNECTION_OPTIONS).to(null),
33
+ ];
25
34
  constructor(application) {
26
35
  super({ scope: StaticAssetComponent_1.name });
27
36
  this.application = application;
28
- this.bindings = [
29
- core_1.Binding.bind(common_1.ResourceAssetKeys.COMPONENT_OPTIONS).to({
30
- useMinioAsset: true,
31
- useStaticResource: true,
32
- resourceBasePath: './',
33
- }),
34
- core_1.Binding.bind(common_1.ResourceAssetKeys.CONNECTION_OPTIONS).to(null),
35
- ];
36
37
  this.binding();
37
38
  }
38
39
  defineControllers(opts) {
@@ -70,4 +71,3 @@ exports.StaticAssetComponent = StaticAssetComponent = StaticAssetComponent_1 = _
70
71
  __param(0, (0, core_1.inject)(core_1.CoreBindings.APPLICATION_INSTANCE)),
71
72
  __metadata("design:paramtypes", [applications_1.BaseApplication])
72
73
  ], StaticAssetComponent);
73
- //# sourceMappingURL=component.js.map
@@ -15,14 +15,6 @@ export declare class StaticAssetController implements IController {
15
15
  uploadObject(request: Request, bucketName: string, folderPath?: string): Promise<unknown>;
16
16
  downloadObject(bucketName: string, objectName: string): Promise<unknown>;
17
17
  getStaticObject(bucketName: string, objectName: string): Promise<unknown>;
18
- /**
19
- * This method fetches the whole file from minio and streams it to the client.
20
- * It's meant to be used for using file caching on browser.
21
- * For other use cases, use `getStaticObject` instead.
22
- *
23
- * NOTE: By the time this method was written, Google Chrome cannot cache content
24
- * if the response status code is 206 (Partial Content). So, we use 200 instead.
25
- */
26
18
  fetchWholeFile(bucketName: string, objectName: string, cacheTime?: number): Promise<void>;
27
19
  deleteObjects(bucketName: string, payload: {
28
20
  objectNames: string[];
@@ -11,22 +11,6 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  var __param = (this && this.__param) || function (paramIndex, decorator) {
12
12
  return function (target, key) { decorator(target, key, paramIndex); }
13
13
  };
14
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
- return new (P || (P = Promise))(function (resolve, reject) {
17
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
- step((generator = generator.apply(thisArg, _arguments || [])).next());
21
- });
22
- };
23
- var __asyncValues = (this && this.__asyncValues) || function (o) {
24
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
25
- var m = o[Symbol.asyncIterator], i;
26
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
27
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
28
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
29
- };
30
14
  var __importDefault = (this && this.__importDefault) || function (mod) {
31
15
  return (mod && mod.__esModule) ? mod : { "default": mod };
32
16
  };
@@ -41,6 +25,10 @@ const rest_1 = require("@loopback/rest");
41
25
  const multer_1 = __importDefault(require("multer"));
42
26
  const common_1 = require("../common");
43
27
  let StaticAssetController = StaticAssetController_1 = class StaticAssetController {
28
+ application;
29
+ response;
30
+ logger;
31
+ temporaryStorage;
44
32
  constructor(application, response) {
45
33
  this.application = application;
46
34
  this.response = response;
@@ -73,11 +61,13 @@ let StaticAssetController = StaticAssetController_1 = class StaticAssetControlle
73
61
  reject(error);
74
62
  }
75
63
  if (folderPath) {
76
- // Removes leading and trailing slashes
77
64
  folderPath = folderPath.replace(/^\/|\/$/g, '');
78
65
  }
79
66
  const files = request.files;
80
- const modifiedFiles = files.map(file => (Object.assign(Object.assign({}, file), { originalname: folderPath ? `${folderPath}/${file.originalname}` : file.originalname })));
67
+ const modifiedFiles = files.map(file => ({
68
+ ...file,
69
+ originalname: folderPath ? `${folderPath}/${file.originalname}` : file.originalname,
70
+ }));
81
71
  minioInstance
82
72
  .upload({ bucket: bucketName, files: modifiedFiles })
83
73
  .then(rs => {
@@ -92,7 +82,11 @@ let StaticAssetController = StaticAssetController_1 = class StaticAssetControlle
92
82
  return new Promise(() => {
93
83
  minioInstance.getStat({ bucket: bucketName, name: objectName }).then(fileStat => {
94
84
  const { size, metaData } = fileStat;
95
- this.response.set(Object.assign(Object.assign({}, metaData), { 'Content-Length': size, 'Content-Disposition': `attachment; filename=${objectName}` }));
85
+ this.response.set({
86
+ ...metaData,
87
+ 'Content-Length': size,
88
+ 'Content-Disposition': `attachment; filename=${objectName}`,
89
+ });
96
90
  minioInstance
97
91
  .getFile({
98
92
  bucket: bucketName,
@@ -119,7 +113,11 @@ let StaticAssetController = StaticAssetController_1 = class StaticAssetControlle
119
113
  return new Promise(() => {
120
114
  minioInstance.getStat({ bucket: bucketName, name: objectName }).then(fileStat => {
121
115
  const { size, metaData } = fileStat;
122
- this.response.writeHead(206, Object.assign(Object.assign({}, metaData), { 'Content-Type': 'application/octet-stream', 'Content-Length': size }));
116
+ this.response.writeHead(206, {
117
+ ...metaData,
118
+ 'Content-Type': 'application/octet-stream',
119
+ 'Content-Length': size,
120
+ });
123
121
  minioInstance
124
122
  .getFile({
125
123
  bucket: bucketName,
@@ -138,81 +136,61 @@ let StaticAssetController = StaticAssetController_1 = class StaticAssetControlle
138
136
  });
139
137
  });
140
138
  }
141
- /**
142
- * This method fetches the whole file from minio and streams it to the client.
143
- * It's meant to be used for using file caching on browser.
144
- * For other use cases, use `getStaticObject` instead.
145
- *
146
- * NOTE: By the time this method was written, Google Chrome cannot cache content
147
- * if the response status code is 206 (Partial Content). So, we use 200 instead.
148
- */
149
- fetchWholeFile(bucketName, objectName, cacheTime) {
150
- return __awaiter(this, void 0, void 0, function* () {
151
- var _a, e_1, _b, _c;
152
- var _d;
153
- const minioInstance = this.application.getSync(common_1.ResourceAssetKeys.MINIO_INSTANCE);
154
- try {
155
- const fileStat = yield minioInstance.getStat({
156
- bucket: bucketName,
157
- name: objectName,
158
- });
159
- const { size, metaData, lastModified } = fileStat;
160
- const fileStream = yield minioInstance.getFile({
161
- bucket: bucketName,
162
- name: objectName,
163
- });
164
- const buffers = [];
165
- try {
166
- for (var _e = true, fileStream_1 = __asyncValues(fileStream), fileStream_1_1; fileStream_1_1 = yield fileStream_1.next(), _a = fileStream_1_1.done, !_a; _e = true) {
167
- _c = fileStream_1_1.value;
168
- _e = false;
169
- const buffer = _c;
170
- buffers.push(buffer);
171
- }
172
- }
173
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
174
- finally {
175
- try {
176
- if (!_e && !_a && (_b = fileStream_1.return)) yield _b.call(fileStream_1);
177
- }
178
- finally { if (e_1) throw e_1.error; }
179
- }
180
- const file = Buffer.concat(buffers);
181
- this.response.writeHead(200, Object.assign(Object.assign({}, metaData), { 'Content-Length': size, 'Content-Type': (_d = metaData['content-type']) !== null && _d !== void 0 ? _d : metaData['mimetype'], 'Cache-Control': `private, max-age=${cacheTime !== null && cacheTime !== void 0 ? cacheTime : 60 * 60}`, 'Last-Modified': lastModified.toUTCString() }));
182
- this.response.end(file);
183
- }
184
- catch (error) {
185
- this.logger.error('[getWholeFile] Error %o', error);
186
- throw (0, utilities_1.getError)({
187
- statusCode: 500,
188
- message: 'Error while fetching file',
189
- });
139
+ async fetchWholeFile(bucketName, objectName, cacheTime) {
140
+ const minioInstance = this.application.getSync(common_1.ResourceAssetKeys.MINIO_INSTANCE);
141
+ try {
142
+ const fileStat = await minioInstance.getStat({
143
+ bucket: bucketName,
144
+ name: objectName,
145
+ });
146
+ const { size, metaData, lastModified } = fileStat;
147
+ const fileStream = await minioInstance.getFile({
148
+ bucket: bucketName,
149
+ name: objectName,
150
+ });
151
+ const buffers = [];
152
+ for await (const buffer of fileStream) {
153
+ buffers.push(buffer);
190
154
  }
191
- });
155
+ const file = Buffer.concat(buffers);
156
+ this.response.writeHead(200, {
157
+ ...metaData,
158
+ 'Content-Length': size,
159
+ 'Content-Type': metaData['content-type'] ?? metaData['mimetype'],
160
+ 'Cache-Control': `private, max-age=${cacheTime ?? 60 * 60}`,
161
+ 'Last-Modified': lastModified.toUTCString(),
162
+ });
163
+ this.response.end(file);
164
+ }
165
+ catch (error) {
166
+ this.logger.error('[getWholeFile] Error %o', error);
167
+ throw (0, utilities_1.getError)({
168
+ statusCode: 500,
169
+ message: 'Error while fetching file',
170
+ });
171
+ }
192
172
  }
193
- deleteObjects(bucketName, payload, folderPath) {
194
- return __awaiter(this, void 0, void 0, function* () {
195
- const { objectNames } = payload;
196
- const minioInstance = this.application.getSync(common_1.ResourceAssetKeys.MINIO_INSTANCE);
197
- let deletingObjects = objectNames;
198
- if (folderPath) {
199
- folderPath = folderPath.replace(/^\/|\/$/g, '');
200
- deletingObjects = objectNames.map(objectName => `${folderPath}/${objectName}`);
201
- }
202
- try {
203
- yield minioInstance.client.removeObjects(bucketName, deletingObjects);
204
- this.response.status(200).send({
205
- message: 'Object deleted successfully',
206
- });
207
- }
208
- catch (error) {
209
- this.logger.error('[deleteObject] Error %o', error);
210
- throw (0, utilities_1.getError)({
211
- statusCode: 500,
212
- message: 'Error while deleting object',
213
- });
214
- }
215
- });
173
+ async deleteObjects(bucketName, payload, folderPath) {
174
+ const { objectNames } = payload;
175
+ const minioInstance = this.application.getSync(common_1.ResourceAssetKeys.MINIO_INSTANCE);
176
+ let deletingObjects = objectNames;
177
+ if (folderPath) {
178
+ folderPath = folderPath.replace(/^\/|\/$/g, '');
179
+ deletingObjects = objectNames.map(objectName => `${folderPath}/${objectName}`);
180
+ }
181
+ try {
182
+ await minioInstance.client.removeObjects(bucketName, deletingObjects);
183
+ this.response.status(200).send({
184
+ message: 'Object deleted successfully',
185
+ });
186
+ }
187
+ catch (error) {
188
+ this.logger.error('[deleteObject] Error %o', error);
189
+ throw (0, utilities_1.getError)({
190
+ statusCode: 500,
191
+ message: 'Error while deleting object',
192
+ });
193
+ }
216
194
  }
217
195
  };
218
196
  exports.StaticAssetController = StaticAssetController;
@@ -383,4 +361,3 @@ exports.StaticAssetController = StaticAssetController = StaticAssetController_1
383
361
  __param(1, (0, core_1.inject)(rest_1.RestBindings.Http.RESPONSE)),
384
362
  __metadata("design:paramtypes", [applications_1.BaseApplication, Object])
385
363
  ], StaticAssetController);
386
- //# sourceMappingURL=asset.controller.js.map
@@ -16,4 +16,3 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./asset.controller"), exports);
18
18
  __exportStar(require("./resource.controller"), exports);
19
- //# sourceMappingURL=index.js.map
@@ -29,6 +29,11 @@ const node_fs_1 = __importDefault(require("node:fs"));
29
29
  const node_path_1 = require("node:path");
30
30
  const common_2 = require("../common");
31
31
  let StaticResourceController = StaticResourceController_1 = class StaticResourceController {
32
+ application;
33
+ request;
34
+ response;
35
+ logger;
36
+ temporaryStorage;
32
37
  constructor(application, request, response) {
33
38
  this.application = application;
34
39
  this.request = request;
@@ -39,20 +44,14 @@ let StaticResourceController = StaticResourceController_1 = class StaticResource
39
44
  uploadObject() {
40
45
  return new Promise((resolve, reject) => {
41
46
  (0, multer_1.default)({ storage: this.temporaryStorage }).array('files')(this.request, this.response, error => {
42
- var _a, _b;
43
47
  if (error) {
44
48
  this.logger.error('[uploadObject] Fail to upload files! Error: %s', error);
45
49
  reject(error);
46
50
  }
47
- const files = ((_b = (_a = this.request) === null || _a === void 0 ? void 0 : _a.files) !== null && _b !== void 0 ? _b : []);
51
+ const files = (this.request?.files ?? []);
48
52
  const basePath = this.application.getSync(common_2.ResourceAssetKeys.RESOURCE_BASE_PATH);
49
- Promise.all(files === null || files === void 0 ? void 0 : files.map(file => {
50
- const { originalname: originalName,
51
- // mimetype: mimeType,
52
- buffer,
53
- // size,
54
- // encoding
55
- } = file;
53
+ Promise.all(files?.map(file => {
54
+ const { originalname: originalName, buffer, } = file;
56
55
  if (!originalName || (0, isEmpty_1.default)(originalName)) {
57
56
  this.logger.error('[uploadObject] Invalid original name!');
58
57
  return;
@@ -137,4 +136,3 @@ exports.StaticResourceController = StaticResourceController = StaticResourceCont
137
136
  __param(2, (0, core_1.inject)(rest_1.RestBindings.Http.RESPONSE)),
138
137
  __metadata("design:paramtypes", [applications_1.BaseApplication, Object, Object])
139
138
  ], StaticResourceController);
140
- //# sourceMappingURL=resource.controller.js.map
@@ -17,4 +17,3 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./common"), exports);
18
18
  __exportStar(require("./component"), exports);
19
19
  __exportStar(require("./controllers"), exports);
20
- //# sourceMappingURL=index.js.map
@@ -1,3 +1,3 @@
1
- export * from './kvmem';
1
+ export * from './memory';
2
2
  export * from './postgres';
3
3
  export * from './redis';
@@ -14,7 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./kvmem"), exports);
17
+ __exportStar(require("./memory"), exports);
18
18
  __exportStar(require("./postgres"), exports);
19
19
  __exportStar(require("./redis"), exports);
20
- //# sourceMappingURL=index.js.map
@@ -21,8 +21,9 @@ const kvmemOptions = {
21
21
  name: 'kvmem',
22
22
  connector: 'kv-memory',
23
23
  };
24
- let KvMemDataSource = KvMemDataSource_1 = class KvMemDataSource extends datasources_1.BaseDataSource {
25
- // static readonly defaultConfig = dsConfigs;
24
+ let KvMemDataSource = class KvMemDataSource extends datasources_1.BaseDataSource {
25
+ static { KvMemDataSource_1 = this; }
26
+ static dataSourceName = kvmemOptions.name;
26
27
  constructor(settings = kvmemOptions) {
27
28
  super({ settings, scope: KvMemDataSource_1.name });
28
29
  this.logger.info('[Datasource] KvMem Datasource Config: %j', settings);
@@ -32,9 +33,7 @@ let KvMemDataSource = KvMemDataSource_1 = class KvMemDataSource extends datasour
32
33
  }
33
34
  };
34
35
  exports.KvMemDataSource = KvMemDataSource;
35
- KvMemDataSource.dataSourceName = kvmemOptions.name;
36
36
  exports.KvMemDataSource = KvMemDataSource = KvMemDataSource_1 = __decorate([
37
37
  __param(0, (0, core_1.inject)(`datasources.config.${kvmemOptions.name}`, { optional: true })),
38
38
  __metadata("design:paramtypes", [Object])
39
39
  ], KvMemDataSource);
40
- //# sourceMappingURL=datasource.js.map
@@ -15,4 +15,3 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./datasource"), exports);
18
- //# sourceMappingURL=index.js.map