@minimaltech/node-infra 0.5.9-12 → 0.5.9-14

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 (569) hide show
  1. package/dist/base/applications/base.application.js +28 -41
  2. package/dist/base/applications/default.application.js +2 -9
  3. package/dist/base/applications/index.js +0 -1
  4. package/dist/base/base.component.js +2 -3
  5. package/dist/base/base.helper.js +4 -4
  6. package/dist/base/base.provider.js +2 -3
  7. package/dist/base/base.sequence.js +17 -27
  8. package/dist/base/controllers/common.js +8 -10
  9. package/dist/base/controllers/crud.controller.js +55 -68
  10. package/dist/base/controllers/express-request-handler.js +2 -1
  11. package/dist/base/controllers/index.js +0 -1
  12. package/dist/base/controllers/kv.controller.js +7 -19
  13. package/dist/base/controllers/relational.controller.d.ts +1 -3
  14. package/dist/base/controllers/relational.controller.js +40 -58
  15. package/dist/base/controllers/service-crud.controller.js +46 -47
  16. package/dist/base/datasources/base.datasource.js +1 -1
  17. package/dist/base/datasources/index.js +0 -1
  18. package/dist/base/datasources/types.js +0 -1
  19. package/dist/base/index.js +0 -1
  20. package/dist/base/loopback/@lb/auth/index.js +0 -1
  21. package/dist/base/loopback/@lb/core/index.d.ts +0 -1
  22. package/dist/base/loopback/@lb/core/index.js +0 -2
  23. package/dist/base/loopback/@lb/repository/index.d.ts +0 -1
  24. package/dist/base/loopback/@lb/repository/index.js +0 -2
  25. package/dist/base/loopback/@lb/rest/index.js +0 -1
  26. package/dist/base/loopback/authentication/index.d.ts +0 -2
  27. package/dist/base/loopback/authentication/index.js +0 -2
  28. package/dist/base/loopback/authorization/index.js +0 -1
  29. package/dist/base/loopback/boot/index.js +0 -1
  30. package/dist/base/loopback/core/index.js +0 -1
  31. package/dist/base/loopback/filter/index.d.ts +1 -2
  32. package/dist/base/loopback/filter/index.js +0 -16
  33. package/dist/base/loopback/health-check/index.js +0 -1
  34. package/dist/base/loopback/http-server/index.d.ts +1 -2
  35. package/dist/base/loopback/http-server/index.js +0 -16
  36. package/dist/base/loopback/metadata/index.js +0 -1
  37. package/dist/base/loopback/repository/index.js +0 -1
  38. package/dist/base/loopback/rest/index.js +0 -1
  39. package/dist/base/loopback/security/index.js +0 -1
  40. package/dist/base/loopback/service-proxy/index.js +0 -1
  41. package/dist/base/models/base.model.d.ts +0 -7
  42. package/dist/base/models/base.model.js +5 -24
  43. package/dist/base/models/index.js +0 -1
  44. package/dist/base/repositories/base.repository.d.ts +0 -3
  45. package/dist/base/repositories/base.repository.js +5 -25
  46. package/dist/base/repositories/index.js +0 -1
  47. package/dist/base/repositories/relations/has-many-polymorphic/decorator.d.ts +0 -8
  48. package/dist/base/repositories/relations/has-many-polymorphic/decorator.js +11 -11
  49. package/dist/base/repositories/relations/has-many-polymorphic/factory.d.ts +0 -9
  50. package/dist/base/repositories/relations/has-many-polymorphic/factory.js +12 -31
  51. package/dist/base/repositories/relations/has-many-polymorphic/index.js +0 -1
  52. package/dist/base/repositories/relations/has-many-polymorphic/types.js +0 -1
  53. package/dist/base/repositories/relations/index.js +0 -1
  54. package/dist/base/repositories/searchable-tz-crud.repository.js +129 -161
  55. package/dist/base/repositories/tz-crud.repository.js +23 -59
  56. package/dist/base/services/base-crud.service.js +6 -10
  57. package/dist/base/services/base.service.js +2 -3
  58. package/dist/base/services/index.js +0 -1
  59. package/dist/common/constants.js +81 -90
  60. package/dist/common/environments.js +25 -26
  61. package/dist/common/index.js +0 -1
  62. package/dist/common/keys.js +2 -3
  63. package/dist/common/statuses.js +28 -32
  64. package/dist/common/types.d.ts +0 -3
  65. package/dist/common/types.js +0 -1
  66. package/dist/components/authenticate/common/constants.js +11 -14
  67. package/dist/components/authenticate/common/index.js +0 -1
  68. package/dist/components/authenticate/common/keys.js +7 -8
  69. package/dist/components/authenticate/common/types.js +11 -4
  70. package/dist/components/authenticate/component.js +20 -29
  71. package/dist/components/authenticate/controllers/auth.controller.js +13 -12
  72. package/dist/components/authenticate/controllers/index.js +0 -1
  73. package/dist/components/authenticate/controllers/oauth2.controller.js +18 -21
  74. package/dist/components/authenticate/index.js +0 -1
  75. package/dist/components/authenticate/middleware.js +25 -36
  76. package/dist/components/authenticate/models/index.js +0 -1
  77. package/dist/components/authenticate/models/oauth2-client.model.js +8 -4
  78. package/dist/components/authenticate/models/oauth2-scope.model.js +4 -1
  79. package/dist/components/authenticate/models/oauth2-token.model.js +7 -1
  80. package/dist/components/authenticate/oauth2-handlers/authorization-code.handler.js +4 -6
  81. package/dist/components/authenticate/oauth2-handlers/base.js +95 -111
  82. package/dist/components/authenticate/oauth2-handlers/client-credential.handler.js +2 -4
  83. package/dist/components/authenticate/oauth2-handlers/index.js +0 -1
  84. package/dist/components/authenticate/oauth2-handlers/oauth2.js +3 -3
  85. package/dist/components/authenticate/oauth2-handlers/password.handler.js +0 -1
  86. package/dist/components/authenticate/repositories/index.js +0 -1
  87. package/dist/components/authenticate/repositories/oauth2.repository.js +2 -1
  88. package/dist/components/authenticate/services/basic-token.service.js +18 -30
  89. package/dist/components/authenticate/services/basic.strategy.js +7 -18
  90. package/dist/components/authenticate/services/index.js +0 -1
  91. package/dist/components/authenticate/services/jwt-token.service.js +27 -41
  92. package/dist/components/authenticate/services/jwt.strategy.js +2 -2
  93. package/dist/components/authenticate/services/oauth2.service.js +98 -111
  94. package/dist/components/authenticate/services/oauth2.strategy.js +19 -32
  95. package/dist/components/authorize/adapters/adapter-builder.js +1 -1
  96. package/dist/components/authorize/adapters/base.adapter.js +2 -10
  97. package/dist/components/authorize/adapters/casbin-postgres-adapter.helper.js +37 -56
  98. package/dist/components/authorize/adapters/casbin-redis-adapter.helper.js +0 -2
  99. package/dist/components/authorize/adapters/index.js +0 -1
  100. package/dist/components/authorize/common/constants.js +10 -13
  101. package/dist/components/authorize/common/index.js +0 -1
  102. package/dist/components/authorize/common/keys.js +15 -16
  103. package/dist/components/authorize/common/types.js +2 -3
  104. package/dist/components/authorize/component.js +44 -60
  105. package/dist/components/authorize/decorators/index.d.ts +0 -11
  106. package/dist/components/authorize/decorators/index.js +1 -15
  107. package/dist/components/authorize/index.js +0 -1
  108. package/dist/components/authorize/interceptor.js +76 -81
  109. package/dist/components/authorize/migrations/0000-create-view-policy.js +3 -15
  110. package/dist/components/authorize/migrations/index.js +0 -1
  111. package/dist/components/authorize/models/defs.js +24 -6
  112. package/dist/components/authorize/models/index.js +0 -1
  113. package/dist/components/authorize/models/permission-mapping.model.js +0 -1
  114. package/dist/components/authorize/models/permission.model.js +0 -1
  115. package/dist/components/authorize/models/role.model.js +1 -2
  116. package/dist/components/authorize/models/user-role.model.js +0 -2
  117. package/dist/components/authorize/models/view-authorize-policy.model.js +4 -2
  118. package/dist/components/authorize/provider.js +81 -97
  119. package/dist/components/authorize/repositories/authorize.repository.js +3 -7
  120. package/dist/components/authorize/repositories/index.js +0 -1
  121. package/dist/components/authorize/services/enforcer.service.js +20 -28
  122. package/dist/components/authorize/services/generator.service.d.ts +0 -20
  123. package/dist/components/authorize/services/generator.service.js +62 -97
  124. package/dist/components/authorize/services/index.js +0 -1
  125. package/dist/components/crash-report/common/constants.js +0 -1
  126. package/dist/components/crash-report/common/index.js +0 -1
  127. package/dist/components/crash-report/common/keys.js +8 -11
  128. package/dist/components/crash-report/common/types.js +0 -1
  129. package/dist/components/crash-report/component.js +31 -45
  130. package/dist/components/crash-report/index.js +0 -1
  131. package/dist/components/crash-report/providers/index.js +0 -1
  132. package/dist/components/crash-report/providers/provider.js +1 -1
  133. package/dist/components/crash-report/providers/third-parties/base.js +2 -3
  134. package/dist/components/crash-report/providers/third-parties/index.js +0 -1
  135. package/dist/components/crash-report/services/index.js +0 -1
  136. package/dist/components/crash-report/services/mt-crash-report.service.js +5 -6
  137. package/dist/components/grpc/common/constants.js +0 -1
  138. package/dist/components/grpc/common/index.js +0 -1
  139. package/dist/components/grpc/common/keys.js +4 -5
  140. package/dist/components/grpc/common/types.js +0 -1
  141. package/dist/components/grpc/components/index.js +0 -1
  142. package/dist/components/grpc/components/server.component.js +8 -9
  143. package/dist/components/grpc/controllers/base.js +1 -1
  144. package/dist/components/grpc/controllers/index.js +0 -1
  145. package/dist/components/grpc/decorators/index.js +0 -1
  146. package/dist/components/grpc/helpers/grpc-client.js +9 -4
  147. package/dist/components/grpc/helpers/grpc-server.js +14 -18
  148. package/dist/components/grpc/helpers/index.js +0 -1
  149. package/dist/components/grpc/index.js +0 -1
  150. package/dist/components/grpc/persistents/grpc.connector.js +8 -3
  151. package/dist/components/grpc/persistents/grpc.datasource.js +2 -4
  152. package/dist/components/grpc/persistents/grpc.repository.js +3 -3
  153. package/dist/components/grpc/persistents/index.js +0 -1
  154. package/dist/components/health-check/component.js +1 -1
  155. package/dist/components/health-check/index.js +0 -1
  156. package/dist/components/index.js +0 -1
  157. package/dist/components/migration/common/index.js +0 -1
  158. package/dist/components/migration/common/keys.js +3 -4
  159. package/dist/components/migration/common/types.js +0 -1
  160. package/dist/components/migration/component.js +5 -9
  161. package/dist/components/migration/index.js +0 -1
  162. package/dist/components/migration/models/index.js +0 -1
  163. package/dist/components/migration/models/migration.model.js +2 -1
  164. package/dist/components/migration/repositories/index.js +0 -1
  165. package/dist/components/migration/repositories/migration.repository.js +0 -1
  166. package/dist/components/socket-io/common/constants.js +10 -11
  167. package/dist/components/socket-io/common/index.js +0 -1
  168. package/dist/components/socket-io/common/keys.js +6 -7
  169. package/dist/components/socket-io/component.js +9 -9
  170. package/dist/components/socket-io/helpers/index.js +0 -1
  171. package/dist/components/socket-io/helpers/socket-io-client.helper.js +7 -12
  172. package/dist/components/socket-io/helpers/socket-io-server.helper.js +26 -42
  173. package/dist/components/socket-io/index.js +0 -1
  174. package/dist/components/static-asset/common/index.js +0 -1
  175. package/dist/components/static-asset/common/keys.js +4 -5
  176. package/dist/components/static-asset/component.js +9 -9
  177. package/dist/components/static-asset/controllers/asset.controller.d.ts +0 -8
  178. package/dist/components/static-asset/controllers/asset.controller.js +71 -94
  179. package/dist/components/static-asset/controllers/index.js +0 -1
  180. package/dist/components/static-asset/controllers/resource.controller.js +8 -10
  181. package/dist/components/static-asset/index.js +0 -1
  182. package/dist/datasources/index.js +0 -1
  183. package/dist/datasources/kvmem/datasource.js +3 -4
  184. package/dist/datasources/kvmem/index.js +0 -1
  185. package/dist/datasources/postgres/datasource.js +10 -11
  186. package/dist/datasources/postgres/index.js +0 -1
  187. package/dist/datasources/postgres/types.js +0 -1
  188. package/dist/datasources/redis/connector.js +18 -8
  189. package/dist/datasources/redis/datasource.js +7 -8
  190. package/dist/datasources/redis/index.js +0 -1
  191. package/dist/datasources/redis/types.js +0 -1
  192. package/dist/helpers/application-environment.helper.js +3 -4
  193. package/dist/helpers/cron.helper.js +9 -15
  194. package/dist/helpers/crypto/algorithms/aes.algorithm.js +8 -8
  195. package/dist/helpers/crypto/algorithms/base.algorithm.js +3 -5
  196. package/dist/helpers/crypto/algorithms/index.js +0 -1
  197. package/dist/helpers/crypto/algorithms/rsa.algorithm.js +4 -6
  198. package/dist/helpers/crypto/common/constants.js +0 -1
  199. package/dist/helpers/crypto/common/index.js +0 -1
  200. package/dist/helpers/crypto/common/types.js +0 -1
  201. package/dist/helpers/crypto/index.js +0 -1
  202. package/dist/helpers/database/index.js +0 -1
  203. package/dist/helpers/database/query-builder.helper.js +2 -6
  204. package/dist/helpers/index.js +0 -1
  205. package/dist/helpers/logger/application-logger.js +7 -18
  206. package/dist/helpers/logger/common/index.js +0 -1
  207. package/dist/helpers/logger/common/types.js +20 -23
  208. package/dist/helpers/logger/default-logger.js +2 -13
  209. package/dist/helpers/logger/factory.js +1 -2
  210. package/dist/helpers/logger/index.js +0 -1
  211. package/dist/helpers/logger/transports/dgram.transport.js +16 -26
  212. package/dist/helpers/logger/transports/index.js +0 -1
  213. package/dist/helpers/network/http-request/base-network-request.helper.d.ts +2 -0
  214. package/dist/helpers/network/http-request/base-network-request.helper.js +36 -35
  215. package/dist/helpers/network/http-request/fetcher/axios-fetcher.d.ts +2 -2
  216. package/dist/helpers/network/http-request/fetcher/axios-fetcher.js +10 -23
  217. package/dist/helpers/network/http-request/fetcher/base-fetcher.d.ts +1 -0
  218. package/dist/helpers/network/http-request/fetcher/base-fetcher.js +13 -37
  219. package/dist/helpers/network/http-request/fetcher/index.js +0 -1
  220. package/dist/helpers/network/http-request/fetcher/node-fetcher.d.ts +2 -2
  221. package/dist/helpers/network/http-request/fetcher/node-fetcher.js +28 -13
  222. package/dist/helpers/network/http-request/index.js +0 -1
  223. package/dist/helpers/network/http-request/types.js +0 -1
  224. package/dist/helpers/network/index.js +0 -1
  225. package/dist/helpers/network/tcp-socket/base-tcp-client.helper.js +30 -28
  226. package/dist/helpers/network/tcp-socket/base-tcp-server.helper.js +21 -20
  227. package/dist/helpers/network/tcp-socket/index.js +0 -1
  228. package/dist/helpers/network/tcp-socket/network-tcp-client.helper.js +5 -2
  229. package/dist/helpers/network/tcp-socket/network-tcp-server.helper.js +5 -2
  230. package/dist/helpers/network/tcp-socket/network-tls-tcp-client.helper.js +5 -2
  231. package/dist/helpers/network/tcp-socket/network-tls-tcp-server.helper.js +5 -2
  232. package/dist/helpers/network/udp-socket/index.js +0 -1
  233. package/dist/helpers/network/udp-socket/network-udp-client.helper.js +21 -19
  234. package/dist/helpers/queue/bullmq.helper.js +21 -23
  235. package/dist/helpers/queue/index.js +0 -1
  236. package/dist/helpers/queue/mqtt.helper.js +15 -18
  237. package/dist/helpers/queue/queue.helper.js +74 -146
  238. package/dist/helpers/redis/default.helper.js +117 -163
  239. package/dist/helpers/redis/index.js +0 -1
  240. package/dist/helpers/redis/redis-cluster.helper.js +7 -3
  241. package/dist/helpers/redis/redis.helper.js +8 -6
  242. package/dist/helpers/redis/types.js +0 -1
  243. package/dist/helpers/storage/di-container.helper.js +2 -1
  244. package/dist/helpers/storage/index.js +0 -1
  245. package/dist/helpers/storage/minio.helper.js +88 -129
  246. package/dist/helpers/testing/common.js +3 -4
  247. package/dist/helpers/testing/describe.js +14 -22
  248. package/dist/helpers/testing/index.js +0 -1
  249. package/dist/helpers/testing/test-case.js +5 -1
  250. package/dist/helpers/testing/test-handler.js +23 -31
  251. package/dist/helpers/testing/test-plan/base.js +9 -7
  252. package/dist/helpers/testing/test-plan/default.js +0 -1
  253. package/dist/helpers/testing/test-plan/index.js +0 -1
  254. package/dist/helpers/testing/types.js +0 -1
  255. package/dist/helpers/worker-thread/base.js +10 -21
  256. package/dist/helpers/worker-thread/index.js +0 -1
  257. package/dist/helpers/worker-thread/types.js +0 -1
  258. package/dist/helpers/worker-thread/worker-bus.js +11 -13
  259. package/dist/helpers/worker-thread/worker-pool.js +17 -26
  260. package/dist/index.js +0 -1
  261. package/dist/interceptors/content-range.interceptor.js +115 -133
  262. package/dist/interceptors/index.js +0 -1
  263. package/dist/middlewares/index.js +0 -1
  264. package/dist/middlewares/request-body-parser.middleware.js +4 -17
  265. package/dist/middlewares/request-spy.middleware.js +4 -6
  266. package/dist/migrations/base-path.js +0 -1
  267. package/dist/migrations/handler.js +13 -23
  268. package/dist/migrations/index.js +0 -1
  269. package/dist/mixins/data-type.mixin.js +5 -1
  270. package/dist/mixins/deprecated/user-audit.mixin.d.ts +0 -3
  271. package/dist/mixins/deprecated/user-audit.mixin.js +2 -6
  272. package/dist/mixins/duplicatable.mixin.js +1 -1
  273. package/dist/mixins/index.js +0 -1
  274. package/dist/mixins/object-search.mixin.js +1 -1
  275. package/dist/mixins/principal.mixin.js +2 -1
  276. package/dist/mixins/soft-delete.mixin.js +1 -1
  277. package/dist/mixins/soft-persistent.mixin.js +1 -1
  278. package/dist/mixins/text-search.mixin.js +1 -1
  279. package/dist/mixins/tz.mixin.js +2 -1
  280. package/dist/mixins/user-audit.mixin.js +5 -4
  281. package/dist/mixins/vector.mixin.js +9 -7
  282. package/dist/tsconfig.base.json +11 -4
  283. package/dist/utilities/crypto.utility.js +0 -1
  284. package/dist/utilities/date.utility.js +5 -24
  285. package/dist/utilities/error.utility.js +2 -1
  286. package/dist/utilities/index.js +0 -1
  287. package/dist/utilities/model.utility.js +2 -7
  288. package/dist/utilities/parse.utility.d.ts +0 -16
  289. package/dist/utilities/parse.utility.js +6 -42
  290. package/dist/utilities/performance.utility.js +1 -3
  291. package/dist/utilities/promise.utility.d.ts +0 -17
  292. package/dist/utilities/promise.utility.js +5 -32
  293. package/dist/utilities/query.utility.js +8 -17
  294. package/dist/utilities/request.utility.js +2 -9
  295. package/dist/utilities/url.utility.js +0 -1
  296. package/package.json +8 -5
  297. package/dist/base/applications/base.application.js.map +0 -1
  298. package/dist/base/applications/default.application.js.map +0 -1
  299. package/dist/base/applications/index.js.map +0 -1
  300. package/dist/base/base.component.js.map +0 -1
  301. package/dist/base/base.helper.js.map +0 -1
  302. package/dist/base/base.provider.js.map +0 -1
  303. package/dist/base/base.sequence.js.map +0 -1
  304. package/dist/base/controllers/common.js.map +0 -1
  305. package/dist/base/controllers/crud.controller.js.map +0 -1
  306. package/dist/base/controllers/express-request-handler.js.map +0 -1
  307. package/dist/base/controllers/index.js.map +0 -1
  308. package/dist/base/controllers/kv.controller.js.map +0 -1
  309. package/dist/base/controllers/relational.controller.js.map +0 -1
  310. package/dist/base/controllers/service-crud.controller.js.map +0 -1
  311. package/dist/base/datasources/base.datasource.js.map +0 -1
  312. package/dist/base/datasources/index.js.map +0 -1
  313. package/dist/base/datasources/types.js.map +0 -1
  314. package/dist/base/index.js.map +0 -1
  315. package/dist/base/loopback/@lb/auth/index.js.map +0 -1
  316. package/dist/base/loopback/@lb/core/index.js.map +0 -1
  317. package/dist/base/loopback/@lb/repository/index.js.map +0 -1
  318. package/dist/base/loopback/@lb/rest/index.js.map +0 -1
  319. package/dist/base/loopback/authentication/index.js.map +0 -1
  320. package/dist/base/loopback/authorization/index.js.map +0 -1
  321. package/dist/base/loopback/boot/index.js.map +0 -1
  322. package/dist/base/loopback/core/index.js.map +0 -1
  323. package/dist/base/loopback/filter/index.js.map +0 -1
  324. package/dist/base/loopback/health-check/index.js.map +0 -1
  325. package/dist/base/loopback/http-server/index.js.map +0 -1
  326. package/dist/base/loopback/metadata/index.js.map +0 -1
  327. package/dist/base/loopback/repository/index.js.map +0 -1
  328. package/dist/base/loopback/rest/index.js.map +0 -1
  329. package/dist/base/loopback/security/index.js.map +0 -1
  330. package/dist/base/loopback/service-proxy/index.js.map +0 -1
  331. package/dist/base/models/base.model.js.map +0 -1
  332. package/dist/base/models/index.js.map +0 -1
  333. package/dist/base/repositories/base.repository.js.map +0 -1
  334. package/dist/base/repositories/index.js.map +0 -1
  335. package/dist/base/repositories/relations/has-many-polymorphic/decorator.js.map +0 -1
  336. package/dist/base/repositories/relations/has-many-polymorphic/factory.js.map +0 -1
  337. package/dist/base/repositories/relations/has-many-polymorphic/index.js.map +0 -1
  338. package/dist/base/repositories/relations/has-many-polymorphic/types.js.map +0 -1
  339. package/dist/base/repositories/relations/index.js.map +0 -1
  340. package/dist/base/repositories/searchable-tz-crud.repository.js.map +0 -1
  341. package/dist/base/repositories/tz-crud.repository.js.map +0 -1
  342. package/dist/base/services/base-crud.service.js.map +0 -1
  343. package/dist/base/services/base.service.js.map +0 -1
  344. package/dist/base/services/index.js.map +0 -1
  345. package/dist/common/constants.js.map +0 -1
  346. package/dist/common/environments.js.map +0 -1
  347. package/dist/common/index.js.map +0 -1
  348. package/dist/common/keys.js.map +0 -1
  349. package/dist/common/statuses.js.map +0 -1
  350. package/dist/common/types.js.map +0 -1
  351. package/dist/components/authenticate/common/constants.js.map +0 -1
  352. package/dist/components/authenticate/common/index.js.map +0 -1
  353. package/dist/components/authenticate/common/keys.js.map +0 -1
  354. package/dist/components/authenticate/common/types.js.map +0 -1
  355. package/dist/components/authenticate/component.js.map +0 -1
  356. package/dist/components/authenticate/controllers/auth.controller.js.map +0 -1
  357. package/dist/components/authenticate/controllers/index.js.map +0 -1
  358. package/dist/components/authenticate/controllers/oauth2.controller.js.map +0 -1
  359. package/dist/components/authenticate/index.js.map +0 -1
  360. package/dist/components/authenticate/middleware.js.map +0 -1
  361. package/dist/components/authenticate/models/index.js.map +0 -1
  362. package/dist/components/authenticate/models/oauth2-client.model.js.map +0 -1
  363. package/dist/components/authenticate/models/oauth2-scope.model.js.map +0 -1
  364. package/dist/components/authenticate/models/oauth2-token.model.js.map +0 -1
  365. package/dist/components/authenticate/oauth2-handlers/authorization-code.handler.js.map +0 -1
  366. package/dist/components/authenticate/oauth2-handlers/base.js.map +0 -1
  367. package/dist/components/authenticate/oauth2-handlers/client-credential.handler.js.map +0 -1
  368. package/dist/components/authenticate/oauth2-handlers/index.js.map +0 -1
  369. package/dist/components/authenticate/oauth2-handlers/oauth2.js.map +0 -1
  370. package/dist/components/authenticate/oauth2-handlers/password.handler.js.map +0 -1
  371. package/dist/components/authenticate/repositories/index.js.map +0 -1
  372. package/dist/components/authenticate/repositories/oauth2.repository.js.map +0 -1
  373. package/dist/components/authenticate/services/basic-token.service.js.map +0 -1
  374. package/dist/components/authenticate/services/basic.strategy.js.map +0 -1
  375. package/dist/components/authenticate/services/index.js.map +0 -1
  376. package/dist/components/authenticate/services/jwt-token.service.js.map +0 -1
  377. package/dist/components/authenticate/services/jwt.strategy.js.map +0 -1
  378. package/dist/components/authenticate/services/oauth2.service.js.map +0 -1
  379. package/dist/components/authenticate/services/oauth2.strategy.js.map +0 -1
  380. package/dist/components/authorize/adapters/adapter-builder.js.map +0 -1
  381. package/dist/components/authorize/adapters/base.adapter.js.map +0 -1
  382. package/dist/components/authorize/adapters/casbin-postgres-adapter.helper.js.map +0 -1
  383. package/dist/components/authorize/adapters/casbin-redis-adapter.helper.js.map +0 -1
  384. package/dist/components/authorize/adapters/index.js.map +0 -1
  385. package/dist/components/authorize/common/constants.js.map +0 -1
  386. package/dist/components/authorize/common/index.js.map +0 -1
  387. package/dist/components/authorize/common/keys.js.map +0 -1
  388. package/dist/components/authorize/common/types.js.map +0 -1
  389. package/dist/components/authorize/component.js.map +0 -1
  390. package/dist/components/authorize/decorators/index.js.map +0 -1
  391. package/dist/components/authorize/index.js.map +0 -1
  392. package/dist/components/authorize/interceptor.js.map +0 -1
  393. package/dist/components/authorize/migrations/0000-create-view-policy.js.map +0 -1
  394. package/dist/components/authorize/migrations/index.js.map +0 -1
  395. package/dist/components/authorize/models/defs.js.map +0 -1
  396. package/dist/components/authorize/models/index.js.map +0 -1
  397. package/dist/components/authorize/models/permission-mapping.model.js.map +0 -1
  398. package/dist/components/authorize/models/permission.model.js.map +0 -1
  399. package/dist/components/authorize/models/role.model.js.map +0 -1
  400. package/dist/components/authorize/models/user-role.model.js.map +0 -1
  401. package/dist/components/authorize/models/view-authorize-policy.model.js.map +0 -1
  402. package/dist/components/authorize/provider.js.map +0 -1
  403. package/dist/components/authorize/repositories/authorize.repository.js.map +0 -1
  404. package/dist/components/authorize/repositories/index.js.map +0 -1
  405. package/dist/components/authorize/services/enforcer.service.js.map +0 -1
  406. package/dist/components/authorize/services/generator.service.js.map +0 -1
  407. package/dist/components/authorize/services/index.js.map +0 -1
  408. package/dist/components/crash-report/common/constants.js.map +0 -1
  409. package/dist/components/crash-report/common/index.js.map +0 -1
  410. package/dist/components/crash-report/common/keys.js.map +0 -1
  411. package/dist/components/crash-report/common/types.js.map +0 -1
  412. package/dist/components/crash-report/component.js.map +0 -1
  413. package/dist/components/crash-report/index.js.map +0 -1
  414. package/dist/components/crash-report/providers/index.js.map +0 -1
  415. package/dist/components/crash-report/providers/provider.js.map +0 -1
  416. package/dist/components/crash-report/providers/third-parties/base.js.map +0 -1
  417. package/dist/components/crash-report/providers/third-parties/index.js.map +0 -1
  418. package/dist/components/crash-report/services/index.js.map +0 -1
  419. package/dist/components/crash-report/services/mt-crash-report.service.js.map +0 -1
  420. package/dist/components/grpc/common/constants.js.map +0 -1
  421. package/dist/components/grpc/common/index.js.map +0 -1
  422. package/dist/components/grpc/common/keys.js.map +0 -1
  423. package/dist/components/grpc/common/types.js.map +0 -1
  424. package/dist/components/grpc/components/index.js.map +0 -1
  425. package/dist/components/grpc/components/server.component.js.map +0 -1
  426. package/dist/components/grpc/controllers/base.js.map +0 -1
  427. package/dist/components/grpc/controllers/index.js.map +0 -1
  428. package/dist/components/grpc/decorators/index.js.map +0 -1
  429. package/dist/components/grpc/helpers/grpc-client.js.map +0 -1
  430. package/dist/components/grpc/helpers/grpc-server.js.map +0 -1
  431. package/dist/components/grpc/helpers/index.js.map +0 -1
  432. package/dist/components/grpc/index.js.map +0 -1
  433. package/dist/components/grpc/persistents/grpc.connector.js.map +0 -1
  434. package/dist/components/grpc/persistents/grpc.datasource.js.map +0 -1
  435. package/dist/components/grpc/persistents/grpc.repository.js.map +0 -1
  436. package/dist/components/grpc/persistents/index.js.map +0 -1
  437. package/dist/components/health-check/component.js.map +0 -1
  438. package/dist/components/health-check/index.js.map +0 -1
  439. package/dist/components/index.js.map +0 -1
  440. package/dist/components/migration/common/index.js.map +0 -1
  441. package/dist/components/migration/common/keys.js.map +0 -1
  442. package/dist/components/migration/common/types.js.map +0 -1
  443. package/dist/components/migration/component.js.map +0 -1
  444. package/dist/components/migration/index.js.map +0 -1
  445. package/dist/components/migration/models/index.js.map +0 -1
  446. package/dist/components/migration/models/migration.model.js.map +0 -1
  447. package/dist/components/migration/repositories/index.js.map +0 -1
  448. package/dist/components/migration/repositories/migration.repository.js.map +0 -1
  449. package/dist/components/socket-io/common/constants.js.map +0 -1
  450. package/dist/components/socket-io/common/index.js.map +0 -1
  451. package/dist/components/socket-io/common/keys.js.map +0 -1
  452. package/dist/components/socket-io/component.js.map +0 -1
  453. package/dist/components/socket-io/helpers/index.js.map +0 -1
  454. package/dist/components/socket-io/helpers/socket-io-client.helper.js.map +0 -1
  455. package/dist/components/socket-io/helpers/socket-io-server.helper.js.map +0 -1
  456. package/dist/components/socket-io/index.js.map +0 -1
  457. package/dist/components/static-asset/common/index.js.map +0 -1
  458. package/dist/components/static-asset/common/keys.js.map +0 -1
  459. package/dist/components/static-asset/component.js.map +0 -1
  460. package/dist/components/static-asset/controllers/asset.controller.js.map +0 -1
  461. package/dist/components/static-asset/controllers/index.js.map +0 -1
  462. package/dist/components/static-asset/controllers/resource.controller.js.map +0 -1
  463. package/dist/components/static-asset/index.js.map +0 -1
  464. package/dist/datasources/index.js.map +0 -1
  465. package/dist/datasources/kvmem/datasource.js.map +0 -1
  466. package/dist/datasources/kvmem/index.js.map +0 -1
  467. package/dist/datasources/postgres/datasource.js.map +0 -1
  468. package/dist/datasources/postgres/index.js.map +0 -1
  469. package/dist/datasources/postgres/types.js.map +0 -1
  470. package/dist/datasources/redis/connector.js.map +0 -1
  471. package/dist/datasources/redis/datasource.js.map +0 -1
  472. package/dist/datasources/redis/index.js.map +0 -1
  473. package/dist/datasources/redis/types.js.map +0 -1
  474. package/dist/helpers/application-environment.helper.js.map +0 -1
  475. package/dist/helpers/cron.helper.js.map +0 -1
  476. package/dist/helpers/crypto/algorithms/aes.algorithm.js.map +0 -1
  477. package/dist/helpers/crypto/algorithms/base.algorithm.js.map +0 -1
  478. package/dist/helpers/crypto/algorithms/index.js.map +0 -1
  479. package/dist/helpers/crypto/algorithms/rsa.algorithm.js.map +0 -1
  480. package/dist/helpers/crypto/common/constants.js.map +0 -1
  481. package/dist/helpers/crypto/common/index.js.map +0 -1
  482. package/dist/helpers/crypto/common/types.js.map +0 -1
  483. package/dist/helpers/crypto/index.js.map +0 -1
  484. package/dist/helpers/database/index.js.map +0 -1
  485. package/dist/helpers/database/query-builder.helper.js.map +0 -1
  486. package/dist/helpers/index.js.map +0 -1
  487. package/dist/helpers/logger/application-logger.js.map +0 -1
  488. package/dist/helpers/logger/common/index.js.map +0 -1
  489. package/dist/helpers/logger/common/types.js.map +0 -1
  490. package/dist/helpers/logger/default-logger.js.map +0 -1
  491. package/dist/helpers/logger/factory.js.map +0 -1
  492. package/dist/helpers/logger/index.js.map +0 -1
  493. package/dist/helpers/logger/transports/dgram.transport.js.map +0 -1
  494. package/dist/helpers/logger/transports/index.js.map +0 -1
  495. package/dist/helpers/network/http-request/base-network-request.helper.js.map +0 -1
  496. package/dist/helpers/network/http-request/fetcher/axios-fetcher.js.map +0 -1
  497. package/dist/helpers/network/http-request/fetcher/base-fetcher.js.map +0 -1
  498. package/dist/helpers/network/http-request/fetcher/index.js.map +0 -1
  499. package/dist/helpers/network/http-request/fetcher/node-fetcher.js.map +0 -1
  500. package/dist/helpers/network/http-request/index.js.map +0 -1
  501. package/dist/helpers/network/http-request/types.js.map +0 -1
  502. package/dist/helpers/network/index.js.map +0 -1
  503. package/dist/helpers/network/tcp-socket/base-tcp-client.helper.js.map +0 -1
  504. package/dist/helpers/network/tcp-socket/base-tcp-server.helper.js.map +0 -1
  505. package/dist/helpers/network/tcp-socket/index.js.map +0 -1
  506. package/dist/helpers/network/tcp-socket/network-tcp-client.helper.js.map +0 -1
  507. package/dist/helpers/network/tcp-socket/network-tcp-server.helper.js.map +0 -1
  508. package/dist/helpers/network/tcp-socket/network-tls-tcp-client.helper.js.map +0 -1
  509. package/dist/helpers/network/tcp-socket/network-tls-tcp-server.helper.js.map +0 -1
  510. package/dist/helpers/network/udp-socket/index.js.map +0 -1
  511. package/dist/helpers/network/udp-socket/network-udp-client.helper.js.map +0 -1
  512. package/dist/helpers/queue/bullmq.helper.js.map +0 -1
  513. package/dist/helpers/queue/index.js.map +0 -1
  514. package/dist/helpers/queue/mqtt.helper.js.map +0 -1
  515. package/dist/helpers/queue/queue.helper.js.map +0 -1
  516. package/dist/helpers/redis/default.helper.js.map +0 -1
  517. package/dist/helpers/redis/index.js.map +0 -1
  518. package/dist/helpers/redis/redis-cluster.helper.js.map +0 -1
  519. package/dist/helpers/redis/redis.helper.js.map +0 -1
  520. package/dist/helpers/redis/types.js.map +0 -1
  521. package/dist/helpers/storage/di-container.helper.js.map +0 -1
  522. package/dist/helpers/storage/index.js.map +0 -1
  523. package/dist/helpers/storage/minio.helper.js.map +0 -1
  524. package/dist/helpers/testing/common.js.map +0 -1
  525. package/dist/helpers/testing/describe.js.map +0 -1
  526. package/dist/helpers/testing/index.js.map +0 -1
  527. package/dist/helpers/testing/test-case.js.map +0 -1
  528. package/dist/helpers/testing/test-handler.js.map +0 -1
  529. package/dist/helpers/testing/test-plan/base.js.map +0 -1
  530. package/dist/helpers/testing/test-plan/default.js.map +0 -1
  531. package/dist/helpers/testing/test-plan/index.js.map +0 -1
  532. package/dist/helpers/testing/types.js.map +0 -1
  533. package/dist/helpers/worker-thread/base.js.map +0 -1
  534. package/dist/helpers/worker-thread/index.js.map +0 -1
  535. package/dist/helpers/worker-thread/types.js.map +0 -1
  536. package/dist/helpers/worker-thread/worker-bus.js.map +0 -1
  537. package/dist/helpers/worker-thread/worker-pool.js.map +0 -1
  538. package/dist/index.js.map +0 -1
  539. package/dist/interceptors/content-range.interceptor.js.map +0 -1
  540. package/dist/interceptors/index.js.map +0 -1
  541. package/dist/middlewares/index.js.map +0 -1
  542. package/dist/middlewares/request-body-parser.middleware.js.map +0 -1
  543. package/dist/middlewares/request-spy.middleware.js.map +0 -1
  544. package/dist/migrations/base-path.js.map +0 -1
  545. package/dist/migrations/handler.js.map +0 -1
  546. package/dist/migrations/index.js.map +0 -1
  547. package/dist/mixins/data-type.mixin.js.map +0 -1
  548. package/dist/mixins/deprecated/user-audit.mixin.js.map +0 -1
  549. package/dist/mixins/duplicatable.mixin.js.map +0 -1
  550. package/dist/mixins/index.js.map +0 -1
  551. package/dist/mixins/object-search.mixin.js.map +0 -1
  552. package/dist/mixins/principal.mixin.js.map +0 -1
  553. package/dist/mixins/soft-delete.mixin.js.map +0 -1
  554. package/dist/mixins/soft-persistent.mixin.js.map +0 -1
  555. package/dist/mixins/text-search.mixin.js.map +0 -1
  556. package/dist/mixins/tz.mixin.js.map +0 -1
  557. package/dist/mixins/user-audit.mixin.js.map +0 -1
  558. package/dist/mixins/vector.mixin.js.map +0 -1
  559. package/dist/utilities/crypto.utility.js.map +0 -1
  560. package/dist/utilities/date.utility.js.map +0 -1
  561. package/dist/utilities/error.utility.js.map +0 -1
  562. package/dist/utilities/index.js.map +0 -1
  563. package/dist/utilities/model.utility.js.map +0 -1
  564. package/dist/utilities/parse.utility.js.map +0 -1
  565. package/dist/utilities/performance.utility.js.map +0 -1
  566. package/dist/utilities/promise.utility.js.map +0 -1
  567. package/dist/utilities/query.utility.js.map +0 -1
  568. package/dist/utilities/request.utility.js.map +0 -1
  569. package/dist/utilities/url.utility.js.map +0 -1
@@ -2,21 +2,20 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AuthorizerKeys = void 0;
4
4
  class AuthorizerKeys {
5
+ static APPLICATION_NAME = '@app/authorize/component/application_name';
6
+ static ROLE_MODEL = '@app/authorize/component/models/user';
7
+ static PERMISSION_MODEL = '@app/authorize/component/models/permission';
8
+ static PERMISSION_MAPPING_MODEL = '@app/authorize/component/models/permission_mapping';
9
+ static USER_ROLE_MODEL = '@app/authorize/component/models/user_role';
10
+ static ROLE_REPOSITORY = '@app/authorize/component/repositories/user';
11
+ static PERMISSION_REPOSITORY = '@app/authorize/component/repositories/permission';
12
+ static PERMISSION_MAPPING_REPOSITORY = '@app/authorize/component/repositories/permission_mapping';
13
+ static USER_ROLE_REPOSITORY = '@app/authorize/component/repositories/user_role';
14
+ static PROVIDER = '@app/authorize/provider';
15
+ static ENFORCER = '@app/authorize/enforcer';
16
+ static ALWAYS_ALLOW_ROLES = '@app/authorize/always_allow_roles';
17
+ static AUTHORIZE_DATASOURCE = '@app/authorize/enforcer/adapter/datasource';
18
+ static CONFIGURE_OPTIONS = '@app/authorize/configure_options';
19
+ static NORMALIZE_PAYLOAD_FN = '@app/authorize/normalize_payload_fn';
5
20
  }
6
21
  exports.AuthorizerKeys = AuthorizerKeys;
7
- AuthorizerKeys.APPLICATION_NAME = '@app/authorize/component/application_name';
8
- AuthorizerKeys.ROLE_MODEL = '@app/authorize/component/models/user';
9
- AuthorizerKeys.PERMISSION_MODEL = '@app/authorize/component/models/permission';
10
- AuthorizerKeys.PERMISSION_MAPPING_MODEL = '@app/authorize/component/models/permission_mapping';
11
- AuthorizerKeys.USER_ROLE_MODEL = '@app/authorize/component/models/user_role';
12
- AuthorizerKeys.ROLE_REPOSITORY = '@app/authorize/component/repositories/user';
13
- AuthorizerKeys.PERMISSION_REPOSITORY = '@app/authorize/component/repositories/permission';
14
- AuthorizerKeys.PERMISSION_MAPPING_REPOSITORY = '@app/authorize/component/repositories/permission_mapping';
15
- AuthorizerKeys.USER_ROLE_REPOSITORY = '@app/authorize/component/repositories/user_role';
16
- AuthorizerKeys.PROVIDER = '@app/authorize/provider';
17
- AuthorizerKeys.ENFORCER = '@app/authorize/enforcer';
18
- AuthorizerKeys.ALWAYS_ALLOW_ROLES = '@app/authorize/always_allow_roles';
19
- AuthorizerKeys.AUTHORIZE_DATASOURCE = '@app/authorize/enforcer/adapter/datasource';
20
- AuthorizerKeys.CONFIGURE_OPTIONS = '@app/authorize/configure_options';
21
- AuthorizerKeys.NORMALIZE_PAYLOAD_FN = '@app/authorize/normalize_payload_fn';
22
- //# sourceMappingURL=keys.js.map
@@ -2,8 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CasbinAdapterTypes = void 0;
4
4
  class CasbinAdapterTypes {
5
+ static POSTGRES = 'casbin-postgres';
6
+ static REDIS = 'casbin-redis';
5
7
  }
6
8
  exports.CasbinAdapterTypes = CasbinAdapterTypes;
7
- CasbinAdapterTypes.POSTGRES = 'casbin-postgres';
8
- CasbinAdapterTypes.REDIS = 'casbin-redis';
9
- //# sourceMappingURL=types.js.map
@@ -11,15 +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
14
  var __importDefault = (this && this.__importDefault) || function (mod) {
24
15
  return (mod && mod.__esModule) ? mod : { "default": mod };
25
16
  };
@@ -41,29 +32,25 @@ const flatten_1 = __importDefault(require("lodash/flatten"));
41
32
  const node_path_1 = __importDefault(require("node:path"));
42
33
  const authorizeConfPath = node_path_1.default.resolve(__dirname, '../../static/security/authorize_model.conf');
43
34
  let AuthorizeComponent = AuthorizeComponent_1 = class AuthorizeComponent extends base_component_1.BaseComponent {
35
+ application;
36
+ bindings = [
37
+ core_1.Binding.bind(common_1.AuthorizerKeys.ROLE_MODEL).toClass(models_1.Role),
38
+ core_1.Binding.bind(common_1.AuthorizerKeys.PERMISSION_MODEL).toClass(models_1.Permission),
39
+ core_1.Binding.bind(common_1.AuthorizerKeys.PERMISSION_MAPPING_MODEL).toClass(models_1.PermissionMapping),
40
+ core_1.Binding.bind(common_1.AuthorizerKeys.USER_ROLE_MODEL).toClass(models_1.UserRole),
41
+ core_1.Binding.bind(common_1.AuthorizerKeys.ROLE_REPOSITORY).toClass(repositories_1.RoleRepository),
42
+ core_1.Binding.bind(common_1.AuthorizerKeys.PERMISSION_REPOSITORY).toClass(repositories_1.PermissionRepository),
43
+ core_1.Binding.bind(common_1.AuthorizerKeys.PERMISSION_MAPPING_REPOSITORY).toClass(repositories_1.PermissionMappingRepository),
44
+ core_1.Binding.bind(common_1.AuthorizerKeys.USER_ROLE_REPOSITORY).toClass(repositories_1.UserRoleRepository),
45
+ core_1.Binding.bind(common_1.AuthorizerKeys.CONFIGURE_OPTIONS).to({
46
+ confPath: authorizeConfPath,
47
+ useCache: false,
48
+ }),
49
+ core_1.Binding.bind(common_1.AuthorizerKeys.NORMALIZE_PAYLOAD_FN).to(null),
50
+ ];
44
51
  constructor(application) {
45
52
  super({ scope: AuthorizeComponent_1.name });
46
53
  this.application = application;
47
- this.bindings = [
48
- // Model bindings
49
- core_1.Binding.bind(common_1.AuthorizerKeys.ROLE_MODEL).toClass(models_1.Role),
50
- core_1.Binding.bind(common_1.AuthorizerKeys.PERMISSION_MODEL).toClass(models_1.Permission),
51
- core_1.Binding.bind(common_1.AuthorizerKeys.PERMISSION_MAPPING_MODEL).toClass(models_1.PermissionMapping),
52
- core_1.Binding.bind(common_1.AuthorizerKeys.USER_ROLE_MODEL).toClass(models_1.UserRole),
53
- // Repository bindings
54
- core_1.Binding.bind(common_1.AuthorizerKeys.ROLE_REPOSITORY).toClass(repositories_1.RoleRepository),
55
- core_1.Binding.bind(common_1.AuthorizerKeys.PERMISSION_REPOSITORY).toClass(repositories_1.PermissionRepository),
56
- core_1.Binding.bind(common_1.AuthorizerKeys.PERMISSION_MAPPING_REPOSITORY).toClass(repositories_1.PermissionMappingRepository),
57
- core_1.Binding.bind(common_1.AuthorizerKeys.USER_ROLE_REPOSITORY).toClass(repositories_1.UserRoleRepository),
58
- // Datasource
59
- // Binding.bind(AuthorizerKeys.AUTHORIZE_DATASOURCE).to(null),
60
- // Configure path
61
- core_1.Binding.bind(common_1.AuthorizerKeys.CONFIGURE_OPTIONS).to({
62
- confPath: authorizeConfPath,
63
- useCache: false,
64
- }),
65
- core_1.Binding.bind(common_1.AuthorizerKeys.NORMALIZE_PAYLOAD_FN).to(null),
66
- ];
67
54
  this.binding();
68
55
  }
69
56
  defineModels() {
@@ -85,48 +72,46 @@ let AuthorizeComponent = AuthorizeComponent_1 = class AuthorizeComponent extends
85
72
  this.application.repository(repositories_1.UserRoleRepository);
86
73
  this.application.repository(repositories_1.ViewAuthorizePolicyRepository);
87
74
  }
88
- verify() {
89
- return __awaiter(this, void 0, void 0, function* () {
90
- const datasource = this.application.getSync(common_1.AuthorizerKeys.AUTHORIZE_DATASOURCE);
91
- if (!datasource) {
92
- throw (0, utilities_1.getError)({
93
- statusCode: 500,
94
- message: `[verify] Invalid binding datasource to key ${common_1.AuthorizerKeys.AUTHORIZE_DATASOURCE}`,
95
- });
96
- }
97
- const checkTableExecutions = ['Role', 'Permission', 'UserRole', 'PermissionMapping'].map(tableName => {
98
- return datasource.execute(`
75
+ async verify() {
76
+ const datasource = this.application.getSync(common_1.AuthorizerKeys.AUTHORIZE_DATASOURCE);
77
+ if (!datasource) {
78
+ throw (0, utilities_1.getError)({
79
+ statusCode: 500,
80
+ message: `[verify] Invalid binding datasource to key ${common_1.AuthorizerKeys.AUTHORIZE_DATASOURCE}`,
81
+ });
82
+ }
83
+ const checkTableExecutions = ['Role', 'Permission', 'UserRole', 'PermissionMapping'].map(tableName => {
84
+ return datasource.execute(`
99
85
  SELECT EXISTS (
100
86
  SELECT FROM information_schema.tables
101
87
  WHERE table_schema='public'
102
88
  AND table_name='${tableName}'
103
89
  ) as "isTableExisted"`);
104
- });
105
- const tableRs = yield Promise.all(checkTableExecutions);
106
- const checkTableExistRs = (0, flatten_1.default)(tableRs);
107
- for (const rs of checkTableExistRs) {
108
- if (!rs.isTableExisted) {
109
- throw (0, utilities_1.getError)({
110
- statusCode: 500,
111
- message: '[verify] Essential table IS NOT EXISTS | Please check again (Role, Permission, UserRole and PermissionMapping)',
112
- });
113
- }
90
+ });
91
+ const tableRs = await Promise.all(checkTableExecutions);
92
+ const checkTableExistRs = (0, flatten_1.default)(tableRs);
93
+ for (const rs of checkTableExistRs) {
94
+ if (!rs.isTableExisted) {
95
+ throw (0, utilities_1.getError)({
96
+ statusCode: 500,
97
+ message: '[verify] Essential table IS NOT EXISTS | Please check again (Role, Permission, UserRole and PermissionMapping)',
98
+ });
114
99
  }
115
- const checkAuthorizeViewRs = yield datasource.execute(`
100
+ }
101
+ const checkAuthorizeViewRs = await datasource.execute(`
116
102
  SELECT EXISTS (
117
103
  SELECT FROM information_schema.views
118
104
  WHERE table_schema='public'
119
105
  AND table_name='ViewAuthorizePolicy'
120
106
  ) as "isViewExisted"`);
121
- for (const rs of checkAuthorizeViewRs) {
122
- if (!rs.isViewExisted) {
123
- throw (0, utilities_1.getError)({
124
- statusCode: 500,
125
- message: '[verify] Essential view IS NOT EXISTS | Please check again (ViewAuthorizePolicy)',
126
- });
127
- }
107
+ for (const rs of checkAuthorizeViewRs) {
108
+ if (!rs.isViewExisted) {
109
+ throw (0, utilities_1.getError)({
110
+ statusCode: 500,
111
+ message: '[verify] Essential view IS NOT EXISTS | Please check again (ViewAuthorizePolicy)',
112
+ });
128
113
  }
129
- });
114
+ }
130
115
  }
131
116
  binding() {
132
117
  this.logger.info('[binding] Binding authorize component for application...');
@@ -158,4 +143,3 @@ exports.AuthorizeComponent = AuthorizeComponent = AuthorizeComponent_1 = __decor
158
143
  __param(0, (0, core_1.inject)(core_1.CoreBindings.APPLICATION_INSTANCE)),
159
144
  __metadata("design:paramtypes", [applications_1.BaseApplication])
160
145
  ], AuthorizeComponent);
161
- //# sourceMappingURL=component.js.map
@@ -4,16 +4,5 @@ export declare class MetadataDecoratorKeys {
4
4
  export interface IPermissionDecorator {
5
5
  idx: number;
6
6
  }
7
- /**
8
- * @example
9
- * ```typescript
10
- * class MyController {
11
- * @permission({ idx: 1, allowedRoles: ['admin'], deniedRoles: ['guest'] })
12
- * myMethod() {
13
- * // method implementation
14
- * }
15
- * }
16
- * ```
17
- */
18
7
  export declare function permission(spec: IPermissionDecorator): MethodDecorator;
19
8
  export declare const getDecoratorData: (controllerPrototype: object, keyTargetDecorator: string) => import("@loopback/metadata").MetadataMap<any> | undefined;
@@ -4,27 +4,13 @@ exports.getDecoratorData = exports.MetadataDecoratorKeys = void 0;
4
4
  exports.permission = permission;
5
5
  const metadata_1 = require("@loopback/metadata");
6
6
  class MetadataDecoratorKeys {
7
+ static PERMISSION = 'metadata-key-for-permission-decorator';
7
8
  }
8
9
  exports.MetadataDecoratorKeys = MetadataDecoratorKeys;
9
- MetadataDecoratorKeys.PERMISSION = 'metadata-key-for-permission-decorator';
10
- // Read more: https://loopback.io/doc/en/lb4/Creating-decorators.html#inspect-metadata-of-a-property
11
- /**
12
- * @example
13
- * ```typescript
14
- * class MyController {
15
- * @permission({ idx: 1, allowedRoles: ['admin'], deniedRoles: ['guest'] })
16
- * myMethod() {
17
- * // method implementation
18
- * }
19
- * }
20
- * ```
21
- */
22
10
  function permission(spec) {
23
11
  return metadata_1.MethodDecoratorFactory.createDecorator(MetadataDecoratorKeys.PERMISSION, spec);
24
12
  }
25
- // Read more: https://loopback.io/doc/en/lb4/Creating-decorators.html#to-create-a-decorator-that-can-be-used-multiple-times-on-a-single-method
26
13
  const getDecoratorData = (controllerPrototype, keyTargetDecorator) => {
27
14
  return metadata_1.MetadataInspector.getAllPropertyMetadata(keyTargetDecorator, controllerPrototype);
28
15
  };
29
16
  exports.getDecoratorData = getDecoratorData;
30
- //# sourceMappingURL=index.js.map
@@ -23,4 +23,3 @@ __exportStar(require("./models"), exports);
23
23
  __exportStar(require("./provider"), exports);
24
24
  __exportStar(require("./repositories"), exports);
25
25
  __exportStar(require("./services"), exports);
26
- //# sourceMappingURL=index.js.map
@@ -11,15 +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
14
  var AuthorizateInterceptor_1;
24
15
  Object.defineProperty(exports, "__esModule", { value: true });
25
16
  exports.AuthorizateInterceptor = void 0;
@@ -27,91 +18,96 @@ const core_1 = require("@loopback/core");
27
18
  const security_1 = require("@loopback/security");
28
19
  const authorization_1 = require("@loopback/authorization");
29
20
  const helpers_1 = require("../../helpers");
30
- function loadAuthorizers(ctx) {
31
- return __awaiter(this, void 0, void 0, function* () {
32
- const authorizerFunctions = [];
33
- const bindings = ctx.findByTag(authorization_1.AuthorizationTags.AUTHORIZER);
34
- const authorizers = bindings.map(b => b.key);
35
- for (const keyOrFn of authorizers) {
36
- if (typeof keyOrFn === 'function') {
37
- authorizerFunctions.push(keyOrFn);
38
- continue;
39
- }
40
- const fn = yield ctx.get(keyOrFn);
41
- authorizerFunctions.push(fn);
21
+ async function loadAuthorizers(ctx) {
22
+ const authorizerFunctions = [];
23
+ const bindings = ctx.findByTag(authorization_1.AuthorizationTags.AUTHORIZER);
24
+ const authorizers = bindings.map(b => b.key);
25
+ for (const keyOrFn of authorizers) {
26
+ if (typeof keyOrFn === 'function') {
27
+ authorizerFunctions.push(keyOrFn);
28
+ continue;
42
29
  }
43
- return authorizerFunctions;
44
- });
30
+ const fn = await ctx.get(keyOrFn);
31
+ authorizerFunctions.push(fn);
32
+ }
33
+ return authorizerFunctions;
45
34
  }
46
35
  let AuthorizateInterceptor = AuthorizateInterceptor_1 = class AuthorizateInterceptor {
36
+ options;
37
+ logger;
47
38
  constructor(options = {}) {
48
- this.options = Object.assign({ defaultDecision: authorization_1.AuthorizationDecision.DENY, precedence: authorization_1.AuthorizationDecision.DENY, defaultStatusCodeForDeny: 403 }, options);
39
+ this.options = {
40
+ defaultDecision: authorization_1.AuthorizationDecision.DENY,
41
+ precedence: authorization_1.AuthorizationDecision.DENY,
42
+ defaultStatusCodeForDeny: 403,
43
+ ...options,
44
+ };
49
45
  this.logger = helpers_1.LoggerFactory.getLogger([AuthorizateInterceptor_1.name]);
50
46
  }
51
47
  value() {
52
48
  return this.intercept.bind(this);
53
49
  }
54
- intercept(invocationCtx, next) {
55
- return __awaiter(this, void 0, void 0, function* () {
56
- var _a;
57
- let metadata = (0, authorization_1.getAuthorizationMetadata)(invocationCtx.target, invocationCtx.methodName);
58
- const description = invocationCtx.description;
59
- if (!metadata) {
60
- this.logger.debug('[intercept] No authorization metadata is found for %s', description);
61
- }
62
- metadata = metadata !== null && metadata !== void 0 ? metadata : this.options.defaultMetadata;
63
- if (!metadata || (metadata === null || metadata === void 0 ? void 0 : metadata.skip)) {
64
- this.logger.debug('[intercept] Authorization is skipped for %s', description);
65
- const result = yield next();
66
- return result;
67
- }
68
- this.logger.debug('[intercept] Authorization metadata for %s', description);
69
- // retrieve it from authentication module
70
- const user = yield invocationCtx.get(security_1.SecurityBindings.USER, {
71
- optional: true,
72
- });
73
- this.logger.debug('[intercept] Current user: %s', user);
74
- const authorizationCtx = {
75
- principals: user
76
- ? [
77
- Object.assign(Object.assign({}, user), { name: (_a = user.name) !== null && _a !== void 0 ? _a : user[security_1.securityId], type: 'USER' }),
78
- ]
79
- : [],
80
- roles: [],
81
- scopes: [],
82
- resource: invocationCtx.targetName,
83
- invocationContext: invocationCtx,
84
- };
85
- this.logger.debug('[intercept] Security context for %s', description);
86
- const authorizers = yield loadAuthorizers(invocationCtx);
87
- let finalDecision = this.options.defaultDecision;
88
- for (const fn of authorizers) {
89
- const decision = yield fn(authorizationCtx, metadata);
90
- this.logger.debug('[intercept] Decision: %s', decision);
91
- if (decision && decision !== authorization_1.AuthorizationDecision.ABSTAIN) {
92
- finalDecision = decision;
93
- }
94
- if (decision === authorization_1.AuthorizationDecision.DENY &&
95
- this.options.precedence === authorization_1.AuthorizationDecision.DENY) {
96
- this.logger.debug('[intercept] Access denied');
97
- const error = new authorization_1.AuthorizationError('Access denied');
98
- error.statusCode = this.options.defaultStatusCodeForDeny;
99
- throw error;
100
- }
101
- if (decision === authorization_1.AuthorizationDecision.ALLOW &&
102
- this.options.precedence === authorization_1.AuthorizationDecision.ALLOW) {
103
- this.logger.debug('[intercept] Access allowed');
104
- break;
105
- }
50
+ async intercept(invocationCtx, next) {
51
+ let metadata = (0, authorization_1.getAuthorizationMetadata)(invocationCtx.target, invocationCtx.methodName);
52
+ const description = invocationCtx.description;
53
+ if (!metadata) {
54
+ this.logger.debug('[intercept] No authorization metadata is found for %s', description);
55
+ }
56
+ metadata = metadata ?? this.options.defaultMetadata;
57
+ if (!metadata || metadata?.skip) {
58
+ this.logger.debug('[intercept] Authorization is skipped for %s', description);
59
+ const result = await next();
60
+ return result;
61
+ }
62
+ this.logger.debug('[intercept] Authorization metadata for %s', description);
63
+ const user = await invocationCtx.get(security_1.SecurityBindings.USER, {
64
+ optional: true,
65
+ });
66
+ this.logger.debug('[intercept] Current user: %s', user);
67
+ const authorizationCtx = {
68
+ principals: user
69
+ ? [
70
+ {
71
+ ...user,
72
+ name: user.name ?? user[security_1.securityId],
73
+ type: 'USER',
74
+ },
75
+ ]
76
+ : [],
77
+ roles: [],
78
+ scopes: [],
79
+ resource: invocationCtx.targetName,
80
+ invocationContext: invocationCtx,
81
+ };
82
+ this.logger.debug('[intercept] Security context for %s', description);
83
+ const authorizers = await loadAuthorizers(invocationCtx);
84
+ let finalDecision = this.options.defaultDecision;
85
+ for (const fn of authorizers) {
86
+ const decision = await fn(authorizationCtx, metadata);
87
+ this.logger.debug('[intercept] Decision: %s', decision);
88
+ if (decision && decision !== authorization_1.AuthorizationDecision.ABSTAIN) {
89
+ finalDecision = decision;
106
90
  }
107
- this.logger.debug('[intercept] Final decision: %s', finalDecision);
108
- if (finalDecision === authorization_1.AuthorizationDecision.DENY) {
91
+ if (decision === authorization_1.AuthorizationDecision.DENY &&
92
+ this.options.precedence === authorization_1.AuthorizationDecision.DENY) {
93
+ this.logger.debug('[intercept] Access denied');
109
94
  const error = new authorization_1.AuthorizationError('Access denied');
110
95
  error.statusCode = this.options.defaultStatusCodeForDeny;
111
96
  throw error;
112
97
  }
113
- return next();
114
- });
98
+ if (decision === authorization_1.AuthorizationDecision.ALLOW &&
99
+ this.options.precedence === authorization_1.AuthorizationDecision.ALLOW) {
100
+ this.logger.debug('[intercept] Access allowed');
101
+ break;
102
+ }
103
+ }
104
+ this.logger.debug('[intercept] Final decision: %s', finalDecision);
105
+ if (finalDecision === authorization_1.AuthorizationDecision.DENY) {
106
+ const error = new authorization_1.AuthorizationError('Access denied');
107
+ error.statusCode = this.options.defaultStatusCodeForDeny;
108
+ throw error;
109
+ }
110
+ return next();
115
111
  }
116
112
  };
117
113
  exports.AuthorizateInterceptor = AuthorizateInterceptor;
@@ -120,4 +116,3 @@ exports.AuthorizateInterceptor = AuthorizateInterceptor = AuthorizateInterceptor
120
116
  __param(0, (0, core_1.config)({ fromBinding: authorization_1.AuthorizationBindings.COMPONENT })),
121
117
  __metadata("design:paramtypes", [Object])
122
118
  ], AuthorizateInterceptor);
123
- //# sourceMappingURL=interceptor.js.map
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
12
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
4
  };
@@ -18,9 +9,7 @@ const utilities_1 = require("../../../utilities");
18
9
  const isEmpty_1 = __importDefault(require("lodash/isEmpty"));
19
10
  const common_1 = require("../common");
20
11
  const sqls = [
21
- // UUID
22
12
  `CREATE EXTENSION IF NOT EXISTS "uuid-ossp"`,
23
- // View policies
24
13
  'DROP VIEW IF EXISTS "ViewAuthorizePolicy";',
25
14
  `CREATE OR REPLACE VIEW "ViewAuthorizePolicy"
26
15
  AS (
@@ -57,7 +46,7 @@ const sqls = [
57
46
  ];
58
47
  const createViewPolicy = (opts) => ({
59
48
  name: __filename.slice(__dirname.length + 1),
60
- fn: (application) => __awaiter(void 0, void 0, void 0, function* () {
49
+ fn: async (application) => {
61
50
  if (!opts.datasourceKey || (0, isEmpty_1.default)(opts.datasourceKey)) {
62
51
  throw (0, utilities_1.getError)({
63
52
  statusCode: 500,
@@ -74,10 +63,9 @@ const createViewPolicy = (opts) => ({
74
63
  }
75
64
  for (const sql of sqls) {
76
65
  helpers_1.applicationLogger.info('[creatViewPolicy] START | Execute SQL: %s', sql);
77
- yield datasource.execute(sql);
66
+ await datasource.execute(sql);
78
67
  helpers_1.applicationLogger.info('[createViewPolicy] DONE | Execute SQL: %s', sql);
79
68
  }
80
- }),
69
+ },
81
70
  });
82
71
  exports.createViewPolicy = createViewPolicy;
83
- //# sourceMappingURL=0000-create-view-policy.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("./0000-create-view-policy"), exports);
18
- //# sourceMappingURL=index.js.map
@@ -14,9 +14,14 @@ const models_1 = require("../../../base/models");
14
14
  const common_1 = require("../../../common");
15
15
  const mixins_1 = require("../../../mixins");
16
16
  const repository_1 = require("@loopback/repository");
17
- // -----------------------------------------------------------------------
18
17
  const defineUser = () => {
19
18
  class User extends models_1.BaseTzEntity {
19
+ realm;
20
+ status;
21
+ userType;
22
+ activatedAt;
23
+ lastLoginAt;
24
+ parentId;
20
25
  constructor(data) {
21
26
  super(data);
22
27
  }
@@ -81,9 +86,13 @@ const defineUser = () => {
81
86
  return User;
82
87
  };
83
88
  exports.defineUser = defineUser;
84
- // -----------------------------------------------------------------------
85
89
  const defineRole = () => {
86
90
  class Role extends models_1.BaseTzEntity {
91
+ identifier;
92
+ name;
93
+ description;
94
+ priority;
95
+ status;
87
96
  constructor(data) {
88
97
  super(data);
89
98
  }
@@ -124,9 +133,16 @@ const defineRole = () => {
124
133
  return Role;
125
134
  };
126
135
  exports.defineRole = defineRole;
127
- // -----------------------------------------------------------------------
128
136
  const definePermission = () => {
129
137
  class Permission extends models_1.BaseTzEntity {
138
+ code;
139
+ name;
140
+ subject;
141
+ pType;
142
+ action;
143
+ scope;
144
+ parentId;
145
+ details;
130
146
  constructor(data) {
131
147
  super(data);
132
148
  }
@@ -188,9 +204,12 @@ const definePermission = () => {
188
204
  return Permission;
189
205
  };
190
206
  exports.definePermission = definePermission;
191
- // -----------------------------------------------------------------------
192
207
  const definePermissionMapping = () => {
193
208
  class PermissionMapping extends models_1.BaseTzEntity {
209
+ userId;
210
+ roleId;
211
+ permissionId;
212
+ effect;
194
213
  constructor(data) {
195
214
  super(data);
196
215
  }
@@ -223,9 +242,9 @@ const definePermissionMapping = () => {
223
242
  return PermissionMapping;
224
243
  };
225
244
  exports.definePermissionMapping = definePermissionMapping;
226
- // -----------------------------------------------------------------------
227
245
  const defineUserRole = () => {
228
246
  class UserRole extends (0, mixins_1.PrincipalMixin)(models_1.BaseTzEntity, 'Role', 'number') {
247
+ userId;
229
248
  constructor(data) {
230
249
  super(data);
231
250
  }
@@ -240,4 +259,3 @@ const defineUserRole = () => {
240
259
  return UserRole;
241
260
  };
242
261
  exports.defineUserRole = defineUserRole;
243
- //# sourceMappingURL=defs.js.map
@@ -20,4 +20,3 @@ __exportStar(require("./permission.model"), exports);
20
20
  __exportStar(require("./permission-mapping.model"), exports);
21
21
  __exportStar(require("./user-role.model"), exports);
22
22
  __exportStar(require("./view-authorize-policy.model"), exports);
23
- //# sourceMappingURL=index.js.map
@@ -37,4 +37,3 @@ exports.PermissionMapping = PermissionMapping = __decorate([
37
37
  }),
38
38
  __metadata("design:paramtypes", [Object])
39
39
  ], PermissionMapping);
40
- //# sourceMappingURL=permission-mapping.model.js.map
@@ -31,4 +31,3 @@ exports.Permission = Permission = __decorate([
31
31
  }),
32
32
  __metadata("design:paramtypes", [Object])
33
33
  ], Permission);
34
- //# sourceMappingURL=permission.model.js.map
@@ -14,8 +14,8 @@ const repository_1 = require("@loopback/repository");
14
14
  const _1 = require(".");
15
15
  const defs_1 = require("./defs");
16
16
  const BaseRole = (0, defs_1.defineRole)();
17
- // ---------------------------------------------------------------
18
17
  let Role = class Role extends BaseRole {
18
+ permissions;
19
19
  constructor(data) {
20
20
  super(data);
21
21
  }
@@ -43,4 +43,3 @@ exports.Role = Role = __decorate([
43
43
  }),
44
44
  __metadata("design:paramtypes", [Object])
45
45
  ], Role);
46
- //# sourceMappingURL=role.model.js.map
@@ -13,7 +13,6 @@ exports.UserRole = void 0;
13
13
  const repository_1 = require("@loopback/repository");
14
14
  const defs_1 = require("./defs");
15
15
  const BaseUserRole = (0, defs_1.defineUserRole)();
16
- // ---------------------------------------------------------------
17
16
  let UserRole = class UserRole extends BaseUserRole {
18
17
  constructor(data) {
19
18
  super(data);
@@ -32,4 +31,3 @@ exports.UserRole = UserRole = __decorate([
32
31
  }),
33
32
  __metadata("design:paramtypes", [Object])
34
33
  ], UserRole);
35
- //# sourceMappingURL=user-role.model.js.map
@@ -12,8 +12,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.ViewAuthorizePolicy = void 0;
13
13
  const models_1 = require("../../../base/models");
14
14
  const repository_1 = require("@loopback/repository");
15
- // ---------------------------------------------------------------
16
15
  let ViewAuthorizePolicy = class ViewAuthorizePolicy extends models_1.BaseEntity {
16
+ id;
17
+ subject;
18
+ subjectType;
19
+ subjectId;
17
20
  constructor(data) {
18
21
  super(data);
19
22
  }
@@ -67,4 +70,3 @@ exports.ViewAuthorizePolicy = ViewAuthorizePolicy = __decorate([
67
70
  }),
68
71
  __metadata("design:paramtypes", [Object])
69
72
  ], ViewAuthorizePolicy);
70
- //# sourceMappingURL=view-authorize-policy.model.js.map