@neohm/nestend 8.0.1 → 8.1.1

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 (499) hide show
  1. package/README.md +115 -3
  2. package/dist/admin/controllers/admin.api.key.controller.js +2 -2
  3. package/dist/admin/controllers/admin.api.key.controller.js.map +1 -1
  4. package/dist/admin/controllers/admin.constant.controller.d.ts +23 -0
  5. package/dist/admin/controllers/admin.constant.controller.d.ts.map +1 -0
  6. package/dist/admin/controllers/admin.constant.controller.js +138 -0
  7. package/dist/admin/controllers/admin.constant.controller.js.map +1 -0
  8. package/dist/admin/controllers/admin.payment.controller.js +1 -1
  9. package/dist/admin/controllers/admin.payment.controller.js.map +1 -1
  10. package/dist/admin/controllers/admin.system.user.controller.js +1 -1
  11. package/dist/admin/controllers/admin.system.user.controller.js.map +1 -1
  12. package/dist/admin/controllers/admin.tenant.controller.js +1 -1
  13. package/dist/admin/controllers/admin.tenant.controller.js.map +1 -1
  14. package/dist/admin/controllers/admin.tenant.user.controller.d.ts.map +1 -1
  15. package/dist/admin/controllers/admin.tenant.user.controller.js +1 -1
  16. package/dist/admin/controllers/admin.tenant.user.controller.js.map +1 -1
  17. package/dist/admin/dtos/add.constant.dto.d.ts +10 -0
  18. package/dist/admin/dtos/add.constant.dto.d.ts.map +1 -0
  19. package/dist/admin/dtos/add.constant.dto.js +70 -0
  20. package/dist/admin/dtos/add.constant.dto.js.map +1 -0
  21. package/dist/admin/dtos/add.constant.type.dto.d.ts +8 -0
  22. package/dist/admin/dtos/add.constant.type.dto.d.ts.map +1 -0
  23. package/dist/admin/dtos/add.constant.type.dto.js +56 -0
  24. package/dist/admin/dtos/add.constant.type.dto.js.map +1 -0
  25. package/dist/admin/dtos/add.plan.dto.d.ts +2 -2
  26. package/dist/admin/dtos/add.plan.dto.d.ts.map +1 -1
  27. package/dist/admin/dtos/add.plan.dto.js +2 -2
  28. package/dist/admin/dtos/add.plan.dto.js.map +1 -1
  29. package/dist/admin/dtos/add.scheduled.task.dto.d.ts +3 -3
  30. package/dist/admin/dtos/add.scheduled.task.dto.d.ts.map +1 -1
  31. package/dist/admin/dtos/add.scheduled.task.dto.js +8 -5
  32. package/dist/admin/dtos/add.scheduled.task.dto.js.map +1 -1
  33. package/dist/admin/dtos/add.tenant.dto.d.ts +2 -2
  34. package/dist/admin/dtos/add.tenant.dto.d.ts.map +1 -1
  35. package/dist/admin/dtos/add.tenant.dto.js +8 -2
  36. package/dist/admin/dtos/add.tenant.dto.js.map +1 -1
  37. package/dist/admin/dtos/assign.tenant.plan.dto.d.ts +2 -2
  38. package/dist/admin/dtos/assign.tenant.plan.dto.d.ts.map +1 -1
  39. package/dist/admin/dtos/assign.tenant.plan.dto.js +9 -3
  40. package/dist/admin/dtos/assign.tenant.plan.dto.js.map +1 -1
  41. package/dist/admin/dtos/constant.type.list.dto.d.ts +4 -0
  42. package/dist/admin/dtos/constant.type.list.dto.d.ts.map +1 -0
  43. package/dist/admin/dtos/constant.type.list.dto.js +8 -0
  44. package/dist/admin/dtos/constant.type.list.dto.js.map +1 -0
  45. package/dist/admin/enums/constant.enum.d.ts +18 -0
  46. package/dist/admin/enums/constant.enum.d.ts.map +1 -0
  47. package/dist/admin/enums/constant.enum.js +23 -0
  48. package/dist/admin/enums/constant.enum.js.map +1 -0
  49. package/dist/admin/libraries/bulk.user.data.processor.js +1 -1
  50. package/dist/admin/libraries/bulk.user.data.processor.js.map +1 -1
  51. package/dist/admin/libraries/client.membership.data.processor.js +1 -1
  52. package/dist/admin/libraries/client.membership.data.processor.js.map +1 -1
  53. package/dist/admin/libraries/client.user.data.processor.js +2 -2
  54. package/dist/admin/libraries/client.user.data.processor.js.map +1 -1
  55. package/dist/admin/libraries/client.user.delete.processor.js +1 -1
  56. package/dist/admin/libraries/client.user.delete.processor.js.map +1 -1
  57. package/dist/admin/libraries/client.user.filter.processor.js +1 -1
  58. package/dist/admin/libraries/client.user.filter.processor.js.map +1 -1
  59. package/dist/admin/libraries/constant.data.processor.d.ts +22 -0
  60. package/dist/admin/libraries/constant.data.processor.d.ts.map +1 -0
  61. package/dist/admin/libraries/constant.data.processor.js +102 -0
  62. package/dist/admin/libraries/constant.data.processor.js.map +1 -0
  63. package/dist/admin/libraries/constant.type.data.processor.d.ts +20 -0
  64. package/dist/admin/libraries/constant.type.data.processor.d.ts.map +1 -0
  65. package/dist/admin/libraries/constant.type.data.processor.js +75 -0
  66. package/dist/admin/libraries/constant.type.data.processor.js.map +1 -0
  67. package/dist/admin/libraries/constant.type.filter.processor.d.ts +11 -0
  68. package/dist/admin/libraries/constant.type.filter.processor.d.ts.map +1 -0
  69. package/dist/admin/libraries/constant.type.filter.processor.js +47 -0
  70. package/dist/admin/libraries/constant.type.filter.processor.js.map +1 -0
  71. package/dist/admin/libraries/payment.filter.processor.d.ts.map +1 -1
  72. package/dist/admin/libraries/payment.filter.processor.js +3 -2
  73. package/dist/admin/libraries/payment.filter.processor.js.map +1 -1
  74. package/dist/admin/libraries/plan.data.processor.d.ts +1 -0
  75. package/dist/admin/libraries/plan.data.processor.d.ts.map +1 -1
  76. package/dist/admin/libraries/plan.data.processor.js +12 -3
  77. package/dist/admin/libraries/plan.data.processor.js.map +1 -1
  78. package/dist/admin/libraries/plan.filter.processor.d.ts.map +1 -1
  79. package/dist/admin/libraries/plan.filter.processor.js +3 -2
  80. package/dist/admin/libraries/plan.filter.processor.js.map +1 -1
  81. package/dist/admin/libraries/scheduled.task.data.processor.d.ts.map +1 -1
  82. package/dist/admin/libraries/scheduled.task.data.processor.js +12 -9
  83. package/dist/admin/libraries/scheduled.task.data.processor.js.map +1 -1
  84. package/dist/admin/libraries/scheduled.task.delete.processor.d.ts.map +1 -1
  85. package/dist/admin/libraries/scheduled.task.delete.processor.js +3 -3
  86. package/dist/admin/libraries/scheduled.task.delete.processor.js.map +1 -1
  87. package/dist/admin/libraries/scheduled.task.filter.processor.d.ts.map +1 -1
  88. package/dist/admin/libraries/scheduled.task.filter.processor.js +5 -3
  89. package/dist/admin/libraries/scheduled.task.filter.processor.js.map +1 -1
  90. package/dist/admin/libraries/system.user.data.processor.js +2 -2
  91. package/dist/admin/libraries/system.user.data.processor.js.map +1 -1
  92. package/dist/admin/libraries/system.user.filter.processor.d.ts.map +1 -1
  93. package/dist/admin/libraries/system.user.filter.processor.js +4 -3
  94. package/dist/admin/libraries/system.user.filter.processor.js.map +1 -1
  95. package/dist/admin/libraries/tenant.plan.data.processor.d.ts.map +1 -1
  96. package/dist/admin/libraries/tenant.plan.data.processor.js +8 -5
  97. package/dist/admin/libraries/tenant.plan.data.processor.js.map +1 -1
  98. package/dist/admin/libraries/webhook.event.filter.processor.d.ts.map +1 -1
  99. package/dist/admin/libraries/webhook.event.filter.processor.js +3 -2
  100. package/dist/admin/libraries/webhook.event.filter.processor.js.map +1 -1
  101. package/dist/admin/module.registry.d.ts +10 -4
  102. package/dist/admin/module.registry.d.ts.map +1 -1
  103. package/dist/admin/module.registry.js +16 -0
  104. package/dist/admin/module.registry.js.map +1 -1
  105. package/dist/admin/services/admin.constant.service.d.ts +13 -0
  106. package/dist/admin/services/admin.constant.service.d.ts.map +1 -0
  107. package/dist/admin/services/admin.constant.service.js +116 -0
  108. package/dist/admin/services/admin.constant.service.js.map +1 -0
  109. package/dist/admin/services/system.user.service.js +1 -1
  110. package/dist/admin/services/system.user.service.js.map +1 -1
  111. package/dist/admin/types/admin.types.d.ts +1 -1
  112. package/dist/admin/types/admin.types.d.ts.map +1 -1
  113. package/dist/admin/utilities/admin.audit.d.ts.map +1 -1
  114. package/dist/admin/utilities/admin.audit.js +3 -1
  115. package/dist/admin/utilities/admin.audit.js.map +1 -1
  116. package/dist/admin/utilities/scheduled.event.discard.d.ts +4 -0
  117. package/dist/admin/utilities/scheduled.event.discard.d.ts.map +1 -0
  118. package/dist/admin/utilities/scheduled.event.discard.js +16 -0
  119. package/dist/admin/utilities/scheduled.event.discard.js.map +1 -0
  120. package/dist/auth/entities/payment.entity.d.ts +4 -2
  121. package/dist/auth/entities/payment.entity.d.ts.map +1 -1
  122. package/dist/auth/entities/payment.entity.js +7 -1
  123. package/dist/auth/entities/payment.entity.js.map +1 -1
  124. package/dist/auth/entities/plan.entity.d.ts +4 -2
  125. package/dist/auth/entities/plan.entity.d.ts.map +1 -1
  126. package/dist/auth/entities/plan.entity.js +7 -1
  127. package/dist/auth/entities/plan.entity.js.map +1 -1
  128. package/dist/auth/entities/tenant.invitation.entity.d.ts +4 -2
  129. package/dist/auth/entities/tenant.invitation.entity.d.ts.map +1 -1
  130. package/dist/auth/entities/tenant.invitation.entity.js +7 -1
  131. package/dist/auth/entities/tenant.invitation.entity.js.map +1 -1
  132. package/dist/auth/entities/tenant.plan.entity.d.ts +6 -3
  133. package/dist/auth/entities/tenant.plan.entity.d.ts.map +1 -1
  134. package/dist/auth/entities/tenant.plan.entity.js +15 -4
  135. package/dist/auth/entities/tenant.plan.entity.js.map +1 -1
  136. package/dist/auth/entities/user.entity.d.ts +2 -2
  137. package/dist/auth/entities/user.entity.d.ts.map +1 -1
  138. package/dist/auth/entities/user.entity.js +2 -2
  139. package/dist/auth/entities/user.entity.js.map +1 -1
  140. package/dist/auth/enums/payment.enum.d.ts +8 -1
  141. package/dist/auth/enums/payment.enum.d.ts.map +1 -1
  142. package/dist/auth/enums/payment.enum.js +17 -9
  143. package/dist/auth/enums/payment.enum.js.map +1 -1
  144. package/dist/auth/enums/tenant.invitation.status.enum.d.ts +7 -1
  145. package/dist/auth/enums/tenant.invitation.status.enum.d.ts.map +1 -1
  146. package/dist/auth/enums/tenant.invitation.status.enum.js +15 -8
  147. package/dist/auth/enums/tenant.invitation.status.enum.js.map +1 -1
  148. package/dist/auth/enums/tenant.plan.enum.d.ts +17 -3
  149. package/dist/auth/enums/tenant.plan.enum.d.ts.map +1 -1
  150. package/dist/auth/enums/tenant.plan.enum.js +35 -18
  151. package/dist/auth/enums/tenant.plan.enum.js.map +1 -1
  152. package/dist/auth/enums/user.type.enum.d.ts +5 -1
  153. package/dist/auth/enums/user.type.enum.d.ts.map +1 -1
  154. package/dist/auth/enums/user.type.enum.js +11 -6
  155. package/dist/auth/enums/user.type.enum.js.map +1 -1
  156. package/dist/auth/helpers/admin.auth.d.ts +1 -0
  157. package/dist/auth/helpers/admin.auth.d.ts.map +1 -1
  158. package/dist/auth/helpers/admin.auth.js +3 -0
  159. package/dist/auth/helpers/admin.auth.js.map +1 -1
  160. package/dist/auth/helpers/api.key.context.d.ts +1 -0
  161. package/dist/auth/helpers/api.key.context.d.ts.map +1 -1
  162. package/dist/auth/helpers/api.key.context.js +3 -0
  163. package/dist/auth/helpers/api.key.context.js.map +1 -1
  164. package/dist/auth/helpers/auth.d.ts +1 -0
  165. package/dist/auth/helpers/auth.d.ts.map +1 -1
  166. package/dist/auth/helpers/auth.js +6 -1
  167. package/dist/auth/helpers/auth.js.map +1 -1
  168. package/dist/auth/middlewares/admin.jwt.middleware.d.ts.map +1 -1
  169. package/dist/auth/middlewares/admin.jwt.middleware.js +5 -1
  170. package/dist/auth/middlewares/admin.jwt.middleware.js.map +1 -1
  171. package/dist/auth/middlewares/api.key.middleware.d.ts.map +1 -1
  172. package/dist/auth/middlewares/api.key.middleware.js +5 -1
  173. package/dist/auth/middlewares/api.key.middleware.js.map +1 -1
  174. package/dist/auth/middlewares/jwt.middleware.d.ts.map +1 -1
  175. package/dist/auth/middlewares/jwt.middleware.js +5 -1
  176. package/dist/auth/middlewares/jwt.middleware.js.map +1 -1
  177. package/dist/auth/processors/google.user.data.processor.d.ts.map +1 -1
  178. package/dist/auth/processors/google.user.data.processor.js +6 -3
  179. package/dist/auth/processors/google.user.data.processor.js.map +1 -1
  180. package/dist/auth/processors/register.user.data.processor.d.ts.map +1 -1
  181. package/dist/auth/processors/register.user.data.processor.js +1 -1
  182. package/dist/auth/processors/register.user.data.processor.js.map +1 -1
  183. package/dist/auth/processors/tenant.invitation.data.processor.js +6 -6
  184. package/dist/auth/processors/tenant.invitation.data.processor.js.map +1 -1
  185. package/dist/auth/processors/tenant.invitation.filter.processor.d.ts.map +1 -1
  186. package/dist/auth/processors/tenant.invitation.filter.processor.js +2 -1
  187. package/dist/auth/processors/tenant.invitation.filter.processor.js.map +1 -1
  188. package/dist/auth/services/auth.service.js +2 -2
  189. package/dist/auth/services/auth.service.js.map +1 -1
  190. package/dist/auth/services/impersonation.service.js +1 -1
  191. package/dist/auth/services/impersonation.service.js.map +1 -1
  192. package/dist/auth/services/payment.service.d.ts +5 -2
  193. package/dist/auth/services/payment.service.d.ts.map +1 -1
  194. package/dist/auth/services/payment.service.js +54 -35
  195. package/dist/auth/services/payment.service.js.map +1 -1
  196. package/dist/auth/services/tenant.invitation.service.d.ts +1 -1
  197. package/dist/auth/services/tenant.invitation.service.d.ts.map +1 -1
  198. package/dist/auth/services/tenant.invitation.service.js +20 -12
  199. package/dist/auth/services/tenant.invitation.service.js.map +1 -1
  200. package/dist/auth/services/tenant.membership.service.js +2 -2
  201. package/dist/auth/services/tenant.membership.service.js.map +1 -1
  202. package/dist/auth/services/tenant.plan.service.d.ts.map +1 -1
  203. package/dist/auth/services/tenant.plan.service.js +7 -3
  204. package/dist/auth/services/tenant.plan.service.js.map +1 -1
  205. package/dist/auth/services/tenant.provisioning.service.d.ts.map +1 -1
  206. package/dist/auth/services/tenant.provisioning.service.js +9 -5
  207. package/dist/auth/services/tenant.provisioning.service.js.map +1 -1
  208. package/dist/auth/types/api.key.types.d.ts +1 -0
  209. package/dist/auth/types/api.key.types.d.ts.map +1 -1
  210. package/dist/auth/types/auth.types.d.ts +2 -0
  211. package/dist/auth/types/auth.types.d.ts.map +1 -1
  212. package/dist/auth/types/google.auth.types.d.ts +1 -1
  213. package/dist/auth/types/google.auth.types.d.ts.map +1 -1
  214. package/dist/auth/types/payment.types.d.ts +4 -1
  215. package/dist/auth/types/payment.types.d.ts.map +1 -1
  216. package/dist/auth/types/tenant.plan.types.d.ts +6 -6
  217. package/dist/auth/types/tenant.plan.types.d.ts.map +1 -1
  218. package/dist/auth/types/tenant.provisioning.types.d.ts +2 -2
  219. package/dist/auth/types/tenant.provisioning.types.d.ts.map +1 -1
  220. package/dist/auth/utilities/tenant.access.js +2 -2
  221. package/dist/auth/utilities/tenant.access.js.map +1 -1
  222. package/dist/auth/utilities/tenant.limits.js +2 -2
  223. package/dist/auth/utilities/tenant.limits.js.map +1 -1
  224. package/dist/auth/utilities/tenant.plans.js +8 -8
  225. package/dist/auth/utilities/tenant.plans.js.map +1 -1
  226. package/dist/common/common.module.d.ts.map +1 -1
  227. package/dist/common/common.module.js +6 -0
  228. package/dist/common/common.module.js.map +1 -1
  229. package/dist/common/entities/activity.log.entity.d.ts +3 -1
  230. package/dist/common/entities/activity.log.entity.d.ts.map +1 -1
  231. package/dist/common/entities/activity.log.entity.js +7 -1
  232. package/dist/common/entities/activity.log.entity.js.map +1 -1
  233. package/dist/common/entities/idempotency.key.entity.d.ts +11 -0
  234. package/dist/common/entities/idempotency.key.entity.d.ts.map +1 -0
  235. package/dist/common/entities/idempotency.key.entity.js +49 -0
  236. package/dist/common/entities/idempotency.key.entity.js.map +1 -0
  237. package/dist/common/entities/scheduled.event.entity.d.ts +2 -2
  238. package/dist/common/entities/scheduled.event.entity.d.ts.map +1 -1
  239. package/dist/common/entities/scheduled.event.entity.js +2 -2
  240. package/dist/common/entities/scheduled.event.entity.js.map +1 -1
  241. package/dist/common/entities/system.audit.log.entity.d.ts +4 -1
  242. package/dist/common/entities/system.audit.log.entity.d.ts.map +1 -1
  243. package/dist/common/entities/system.audit.log.entity.js +8 -1
  244. package/dist/common/entities/system.audit.log.entity.js.map +1 -1
  245. package/dist/common/entities/system.constant.entity.d.ts +2 -0
  246. package/dist/common/entities/system.constant.entity.d.ts.map +1 -1
  247. package/dist/common/entities/system.constant.entity.js +11 -3
  248. package/dist/common/entities/system.constant.entity.js.map +1 -1
  249. package/dist/common/entities/system.constant.type.entity.d.ts +1 -0
  250. package/dist/common/entities/system.constant.type.entity.d.ts.map +1 -1
  251. package/dist/common/entities/system.constant.type.entity.js +6 -2
  252. package/dist/common/entities/system.constant.type.entity.js.map +1 -1
  253. package/dist/common/entities/system.notification.entity.d.ts +3 -1
  254. package/dist/common/entities/system.notification.entity.d.ts.map +1 -1
  255. package/dist/common/entities/system.notification.entity.js +7 -1
  256. package/dist/common/entities/system.notification.entity.js.map +1 -1
  257. package/dist/common/entities/system.scheduled.task.entity.d.ts +3 -3
  258. package/dist/common/entities/system.scheduled.task.entity.d.ts.map +1 -1
  259. package/dist/common/entities/system.scheduled.task.entity.js +4 -4
  260. package/dist/common/entities/system.scheduled.task.entity.js.map +1 -1
  261. package/dist/common/enums/audit.action.enum.d.ts +28 -11
  262. package/dist/common/enums/audit.action.enum.d.ts.map +1 -1
  263. package/dist/common/enums/audit.action.enum.js +30 -12
  264. package/dist/common/enums/audit.action.enum.js.map +1 -1
  265. package/dist/common/enums/idempotency.enum.d.ts +42 -0
  266. package/dist/common/enums/idempotency.enum.d.ts.map +1 -0
  267. package/dist/common/enums/idempotency.enum.js +50 -0
  268. package/dist/common/enums/idempotency.enum.js.map +1 -0
  269. package/dist/common/enums/notification.type.enum.d.ts +12 -5
  270. package/dist/common/enums/notification.type.enum.d.ts.map +1 -1
  271. package/dist/common/enums/notification.type.enum.js +14 -6
  272. package/dist/common/enums/notification.type.enum.js.map +1 -1
  273. package/dist/common/enums/otp.enum.d.ts +3 -5
  274. package/dist/common/enums/otp.enum.d.ts.map +1 -1
  275. package/dist/common/enums/otp.enum.js +8 -9
  276. package/dist/common/enums/otp.enum.js.map +1 -1
  277. package/dist/common/enums/record.history.enum.d.ts +2 -0
  278. package/dist/common/enums/record.history.enum.d.ts.map +1 -0
  279. package/dist/common/enums/record.history.enum.js +12 -0
  280. package/dist/common/enums/record.history.enum.js.map +1 -0
  281. package/dist/common/enums/schedule.enum.d.ts +20 -3
  282. package/dist/common/enums/schedule.enum.d.ts.map +1 -1
  283. package/dist/common/enums/schedule.enum.js +40 -20
  284. package/dist/common/enums/schedule.enum.js.map +1 -1
  285. package/dist/common/enums/storage.driver.enum.d.ts +8 -1
  286. package/dist/common/enums/storage.driver.enum.d.ts.map +1 -1
  287. package/dist/common/enums/storage.driver.enum.js +17 -9
  288. package/dist/common/enums/storage.driver.enum.js.map +1 -1
  289. package/dist/common/enums/system.constant.enum.d.ts +55 -0
  290. package/dist/common/enums/system.constant.enum.d.ts.map +1 -0
  291. package/dist/common/enums/system.constant.enum.js +63 -0
  292. package/dist/common/enums/system.constant.enum.js.map +1 -0
  293. package/dist/common/helpers/canonical.json.d.ts +2 -0
  294. package/dist/common/helpers/canonical.json.d.ts.map +1 -0
  295. package/dist/common/helpers/canonical.json.js +23 -0
  296. package/dist/common/helpers/canonical.json.js.map +1 -0
  297. package/dist/common/helpers/constant.pair.d.ts +5 -0
  298. package/dist/common/helpers/constant.pair.d.ts.map +1 -0
  299. package/dist/common/helpers/constant.pair.js +19 -0
  300. package/dist/common/helpers/constant.pair.js.map +1 -0
  301. package/dist/common/helpers/request.idempotency.d.ts +9 -0
  302. package/dist/common/helpers/request.idempotency.d.ts.map +1 -0
  303. package/dist/common/helpers/request.idempotency.js +40 -0
  304. package/dist/common/helpers/request.idempotency.js.map +1 -0
  305. package/dist/common/jobs/dispatch.scheduled.event.job.d.ts +1 -0
  306. package/dist/common/jobs/dispatch.scheduled.event.job.d.ts.map +1 -1
  307. package/dist/common/jobs/dispatch.scheduled.event.job.js +45 -19
  308. package/dist/common/jobs/dispatch.scheduled.event.job.js.map +1 -1
  309. package/dist/common/jobs/purge.idempotency.keys.job.d.ts +11 -0
  310. package/dist/common/jobs/purge.idempotency.keys.job.d.ts.map +1 -0
  311. package/dist/common/jobs/purge.idempotency.keys.job.js +37 -0
  312. package/dist/common/jobs/purge.idempotency.keys.job.js.map +1 -0
  313. package/dist/common/jobs/set.scheduled.event.job.d.ts.map +1 -1
  314. package/dist/common/jobs/set.scheduled.event.job.js +11 -10
  315. package/dist/common/jobs/set.scheduled.event.job.js.map +1 -1
  316. package/dist/common/libraries/base.data.processor.d.ts +9 -0
  317. package/dist/common/libraries/base.data.processor.d.ts.map +1 -1
  318. package/dist/common/libraries/base.data.processor.js +46 -1
  319. package/dist/common/libraries/base.data.processor.js.map +1 -1
  320. package/dist/common/module.registry.d.ts +6 -2
  321. package/dist/common/module.registry.d.ts.map +1 -1
  322. package/dist/common/module.registry.js +8 -0
  323. package/dist/common/module.registry.js.map +1 -1
  324. package/dist/common/queue.module.d.ts.map +1 -1
  325. package/dist/common/queue.module.js +4 -0
  326. package/dist/common/queue.module.js.map +1 -1
  327. package/dist/common/services/audit.service.d.ts.map +1 -1
  328. package/dist/common/services/audit.service.js +7 -2
  329. package/dist/common/services/audit.service.js.map +1 -1
  330. package/dist/common/services/idempotency.service.d.ts +25 -0
  331. package/dist/common/services/idempotency.service.d.ts.map +1 -0
  332. package/dist/common/services/idempotency.service.js +181 -0
  333. package/dist/common/services/idempotency.service.js.map +1 -0
  334. package/dist/common/services/record.history.service.d.ts +16 -0
  335. package/dist/common/services/record.history.service.d.ts.map +1 -0
  336. package/dist/common/services/record.history.service.js +153 -0
  337. package/dist/common/services/record.history.service.js.map +1 -0
  338. package/dist/common/services/system.constant.service.d.ts +24 -0
  339. package/dist/common/services/system.constant.service.d.ts.map +1 -0
  340. package/dist/common/services/system.constant.service.js +151 -0
  341. package/dist/common/services/system.constant.service.js.map +1 -0
  342. package/dist/common/system.property.module.d.ts.map +1 -1
  343. package/dist/common/system.property.module.js +11 -2
  344. package/dist/common/system.property.module.js.map +1 -1
  345. package/dist/common/types/audit.types.d.ts +3 -2
  346. package/dist/common/types/audit.types.d.ts.map +1 -1
  347. package/dist/common/types/idempotency.types.d.ts +29 -0
  348. package/dist/common/types/idempotency.types.d.ts.map +1 -0
  349. package/dist/common/types/idempotency.types.js +3 -0
  350. package/dist/common/types/idempotency.types.js.map +1 -0
  351. package/dist/common/types/record.history.types.d.ts +40 -0
  352. package/dist/common/types/record.history.types.d.ts.map +1 -0
  353. package/dist/common/types/record.history.types.js +3 -0
  354. package/dist/common/types/record.history.types.js.map +1 -0
  355. package/dist/common/types/system.constant.types.d.ts +16 -0
  356. package/dist/common/types/system.constant.types.d.ts.map +1 -0
  357. package/dist/common/types/system.constant.types.js +3 -0
  358. package/dist/common/types/system.constant.types.js.map +1 -0
  359. package/dist/common/validators/idempotency.patterns.d.ts +2 -0
  360. package/dist/common/validators/idempotency.patterns.d.ts.map +1 -0
  361. package/dist/common/validators/idempotency.patterns.js +5 -0
  362. package/dist/common/validators/idempotency.patterns.js.map +1 -0
  363. package/dist/constants/entity.constants.d.ts +1 -0
  364. package/dist/constants/entity.constants.d.ts.map +1 -1
  365. package/dist/constants/entity.constants.js +1 -0
  366. package/dist/constants/entity.constants.js.map +1 -1
  367. package/dist/constants/entity.maps.d.ts +2 -0
  368. package/dist/constants/entity.maps.d.ts.map +1 -1
  369. package/dist/constants/entity.maps.js +2 -0
  370. package/dist/constants/entity.maps.js.map +1 -1
  371. package/dist/constants/job.constants.d.ts +1 -0
  372. package/dist/constants/job.constants.d.ts.map +1 -1
  373. package/dist/constants/job.constants.js +1 -0
  374. package/dist/constants/job.constants.js.map +1 -1
  375. package/dist/constants/job.maps.d.ts +2 -0
  376. package/dist/constants/job.maps.d.ts.map +1 -1
  377. package/dist/constants/job.maps.js +2 -0
  378. package/dist/constants/job.maps.js.map +1 -1
  379. package/dist/document/entities/document.upload.entity.d.ts +2 -1
  380. package/dist/document/entities/document.upload.entity.d.ts.map +1 -1
  381. package/dist/document/entities/document.upload.entity.js +3 -2
  382. package/dist/document/entities/document.upload.entity.js.map +1 -1
  383. package/dist/document/enums/document.default.enum.d.ts +3 -1
  384. package/dist/document/enums/document.default.enum.d.ts.map +1 -1
  385. package/dist/document/enums/document.default.enum.js +2 -0
  386. package/dist/document/enums/document.default.enum.js.map +1 -1
  387. package/dist/document/services/document.service.d.ts +6 -0
  388. package/dist/document/services/document.service.d.ts.map +1 -1
  389. package/dist/document/services/document.service.js +62 -15
  390. package/dist/document/services/document.service.js.map +1 -1
  391. package/dist/document/services/minio.bucket.document.service.d.ts +2 -2
  392. package/dist/document/services/minio.bucket.document.service.d.ts.map +1 -1
  393. package/dist/document/services/minio.bucket.document.service.js +1 -1
  394. package/dist/document/services/minio.bucket.document.service.js.map +1 -1
  395. package/dist/document/services/s3.bucket.document.service.d.ts +2 -2
  396. package/dist/document/services/s3.bucket.document.service.d.ts.map +1 -1
  397. package/dist/document/services/s3.bucket.document.service.js +1 -1
  398. package/dist/document/services/s3.bucket.document.service.js.map +1 -1
  399. package/dist/global/exceptions/idempotency.exception.d.ts +8 -0
  400. package/dist/global/exceptions/idempotency.exception.d.ts.map +1 -0
  401. package/dist/global/exceptions/idempotency.exception.js +18 -0
  402. package/dist/global/exceptions/idempotency.exception.js.map +1 -0
  403. package/dist/global/utilities/seeder.utility.d.ts +1 -1
  404. package/dist/global/utilities/seeder.utility.d.ts.map +1 -1
  405. package/dist/global/utilities/seeder.utility.js +2 -2
  406. package/dist/global/utilities/seeder.utility.js.map +1 -1
  407. package/dist/global/utilities/table.builder.d.ts.map +1 -1
  408. package/dist/global/utilities/table.builder.js +1 -0
  409. package/dist/global/utilities/table.builder.js.map +1 -1
  410. package/dist/index.d.ts +21 -8
  411. package/dist/index.d.ts.map +1 -1
  412. package/dist/index.js +51 -17
  413. package/dist/index.js.map +1 -1
  414. package/dist/migrations/1749600000003.CreateSysUsersTable.d.ts.map +1 -1
  415. package/dist/migrations/1749600000003.CreateSysUsersTable.js +3 -3
  416. package/dist/migrations/1749600000003.CreateSysUsersTable.js.map +1 -1
  417. package/dist/migrations/1749600000007.CreateSysConstantTypesTable.d.ts.map +1 -1
  418. package/dist/migrations/1749600000007.CreateSysConstantTypesTable.js +5 -4
  419. package/dist/migrations/1749600000007.CreateSysConstantTypesTable.js.map +1 -1
  420. package/dist/migrations/1749600000008.CreateSysConstantsTable.d.ts +3 -0
  421. package/dist/migrations/1749600000008.CreateSysConstantsTable.d.ts.map +1 -1
  422. package/dist/migrations/1749600000008.CreateSysConstantsTable.js +26 -4
  423. package/dist/migrations/1749600000008.CreateSysConstantsTable.js.map +1 -1
  424. package/dist/migrations/1749600000011.CreateSysNotificationsTable.d.ts.map +1 -1
  425. package/dist/migrations/1749600000011.CreateSysNotificationsTable.js +8 -2
  426. package/dist/migrations/1749600000011.CreateSysNotificationsTable.js.map +1 -1
  427. package/dist/migrations/1749600000012.CreateSysAuditLogsTable.d.ts.map +1 -1
  428. package/dist/migrations/1749600000012.CreateSysAuditLogsTable.js +5 -1
  429. package/dist/migrations/1749600000012.CreateSysAuditLogsTable.js.map +1 -1
  430. package/dist/migrations/1749600000013.CreateSysDocumentUploadsTable.d.ts.map +1 -1
  431. package/dist/migrations/1749600000013.CreateSysDocumentUploadsTable.js +5 -1
  432. package/dist/migrations/1749600000013.CreateSysDocumentUploadsTable.js.map +1 -1
  433. package/dist/migrations/1749600000015.CreateSysActivityLogsTable.d.ts.map +1 -1
  434. package/dist/migrations/1749600000015.CreateSysActivityLogsTable.js +5 -1
  435. package/dist/migrations/1749600000015.CreateSysActivityLogsTable.js.map +1 -1
  436. package/dist/migrations/1749600000018.CreateSysScheduledTasksTable.d.ts.map +1 -1
  437. package/dist/migrations/1749600000018.CreateSysScheduledTasksTable.js +12 -6
  438. package/dist/migrations/1749600000018.CreateSysScheduledTasksTable.js.map +1 -1
  439. package/dist/migrations/1749600000019.CreateSysScheduledEventsTable.d.ts.map +1 -1
  440. package/dist/migrations/1749600000019.CreateSysScheduledEventsTable.js +7 -4
  441. package/dist/migrations/1749600000019.CreateSysScheduledEventsTable.js.map +1 -1
  442. package/dist/migrations/1749600000031.CreateSysTenantInvitationsTable.d.ts.map +1 -1
  443. package/dist/migrations/1749600000031.CreateSysTenantInvitationsTable.js +12 -7
  444. package/dist/migrations/1749600000031.CreateSysTenantInvitationsTable.js.map +1 -1
  445. package/dist/migrations/1749600000036.SeedGlobalAdminRole.d.ts +1 -1
  446. package/dist/migrations/1749600000036.SeedGlobalAdminRole.d.ts.map +1 -1
  447. package/dist/migrations/1749600000036.SeedGlobalAdminRole.js +2 -2
  448. package/dist/migrations/1749600000036.SeedGlobalAdminRole.js.map +1 -1
  449. package/dist/migrations/1749600000040.SeedTenantLimits.d.ts +1 -1
  450. package/dist/migrations/1749600000040.SeedTenantLimits.d.ts.map +1 -1
  451. package/dist/migrations/1749600000040.SeedTenantLimits.js +2 -2
  452. package/dist/migrations/1749600000040.SeedTenantLimits.js.map +1 -1
  453. package/dist/migrations/1749600000041.CreateSysPlansTable.d.ts.map +1 -1
  454. package/dist/migrations/1749600000041.CreateSysPlansTable.js +6 -3
  455. package/dist/migrations/1749600000041.CreateSysPlansTable.js.map +1 -1
  456. package/dist/migrations/1749600000044.CreateSysTenantPlansTable.d.ts.map +1 -1
  457. package/dist/migrations/1749600000044.CreateSysTenantPlansTable.js +14 -7
  458. package/dist/migrations/1749600000044.CreateSysTenantPlansTable.js.map +1 -1
  459. package/dist/migrations/1749600000045.CreateSysPaymentsTable.d.ts.map +1 -1
  460. package/dist/migrations/1749600000045.CreateSysPaymentsTable.js +6 -5
  461. package/dist/migrations/1749600000045.CreateSysPaymentsTable.js.map +1 -1
  462. package/dist/migrations/1749600000046.CreateSysWebhookEventsTable.d.ts.map +1 -1
  463. package/dist/migrations/1749600000046.CreateSysWebhookEventsTable.js +5 -4
  464. package/dist/migrations/1749600000046.CreateSysWebhookEventsTable.js.map +1 -1
  465. package/dist/migrations/1749600000048.SeedOtpActivityConstants.d.ts +1 -1
  466. package/dist/migrations/1749600000048.SeedOtpActivityConstants.d.ts.map +1 -1
  467. package/dist/migrations/1749600000048.SeedOtpActivityConstants.js +6 -3
  468. package/dist/migrations/1749600000048.SeedOtpActivityConstants.js.map +1 -1
  469. package/dist/migrations/1749600000054.SeedCoreConstants.d.ts +101 -0
  470. package/dist/migrations/1749600000054.SeedCoreConstants.d.ts.map +1 -0
  471. package/dist/migrations/1749600000054.SeedCoreConstants.js +146 -0
  472. package/dist/migrations/1749600000054.SeedCoreConstants.js.map +1 -0
  473. package/dist/migrations/1749600000055.CreateSysIdempotencyKeysTable.d.ts +6 -0
  474. package/dist/migrations/1749600000055.CreateSysIdempotencyKeysTable.d.ts.map +1 -0
  475. package/dist/migrations/1749600000055.CreateSysIdempotencyKeysTable.js +38 -0
  476. package/dist/migrations/1749600000055.CreateSysIdempotencyKeysTable.js.map +1 -0
  477. package/dist/notification/notification.module.d.ts.map +1 -1
  478. package/dist/notification/notification.module.js +3 -1
  479. package/dist/notification/notification.module.js.map +1 -1
  480. package/dist/notification/services/notification.service.d.ts +4 -1
  481. package/dist/notification/services/notification.service.d.ts.map +1 -1
  482. package/dist/notification/services/notification.service.js +21 -3
  483. package/dist/notification/services/notification.service.js.map +1 -1
  484. package/dist/report/jobs/generate.tenant.report.job.js +1 -1
  485. package/dist/report/jobs/generate.tenant.report.job.js.map +1 -1
  486. package/dist/tenant/utilities/tenant.revocation.js +1 -1
  487. package/dist/tenant/utilities/tenant.revocation.js.map +1 -1
  488. package/dist/webhook/entities/webhook.event.entity.d.ts +4 -2
  489. package/dist/webhook/entities/webhook.event.entity.d.ts.map +1 -1
  490. package/dist/webhook/entities/webhook.event.entity.js +7 -1
  491. package/dist/webhook/entities/webhook.event.entity.js.map +1 -1
  492. package/dist/webhook/enums/webhook.enum.d.ts +8 -1
  493. package/dist/webhook/enums/webhook.enum.d.ts.map +1 -1
  494. package/dist/webhook/enums/webhook.enum.js +17 -9
  495. package/dist/webhook/enums/webhook.enum.js.map +1 -1
  496. package/dist/webhook/services/webhook.service.d.ts.map +1 -1
  497. package/dist/webhook/services/webhook.service.js +22 -15
  498. package/dist/webhook/services/webhook.service.js.map +1 -1
  499. package/package.json +1 -1
@@ -2,9 +2,48 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BaseDataProcessor = void 0;
4
4
  const common_1 = require("@nestjs/common");
5
+ const idempotency_enum_1 = require("../enums/idempotency.enum");
6
+ const request_idempotency_1 = require("../helpers/request.idempotency");
7
+ const idempotency_patterns_1 = require("../validators/idempotency.patterns");
5
8
  class BaseDataProcessor {
6
- constructor() {
9
+ constructor(idempotencyService) {
10
+ this.idempotencyService = idempotencyService;
7
11
  this._errors = new Map();
12
+ this.idempotencyClaim = null;
13
+ }
14
+ async claimIdempotency(manager, sourceType, payload, options = {}) {
15
+ this.idempotencyClaim = null;
16
+ if (this.isEdit(payload))
17
+ return null;
18
+ const key = request_idempotency_1.RequestIdempotency.key();
19
+ if (!key) {
20
+ const required = options.required ?? !request_idempotency_1.RequestIdempotency.viaApiKey();
21
+ if (required)
22
+ this.setColumnError(idempotency_enum_1.IdempotencyDefault.FIELD, idempotency_enum_1.IdempotencyMessage.REQUIRED);
23
+ return null;
24
+ }
25
+ if (!idempotency_patterns_1.IDEMPOTENCY_KEY_PATTERN.test(key)) {
26
+ this.setColumnError(idempotency_enum_1.IdempotencyDefault.FIELD, idempotency_enum_1.IdempotencyMessage.INVALID);
27
+ return null;
28
+ }
29
+ if (!this.idempotencyService)
30
+ throw new Error(`${this.constructor.name} needs an IdempotencyService passed to super()`);
31
+ const claim = await this.idempotencyService.claim(manager, {
32
+ ...request_idempotency_1.RequestIdempotency.actor(),
33
+ sourceType,
34
+ key,
35
+ payload,
36
+ });
37
+ if (claim.status === idempotency_enum_1.IdempotencyClaimStatus.REPLAY)
38
+ return claim.sourceId;
39
+ this.idempotencyClaim = claim.claim;
40
+ return null;
41
+ }
42
+ async completeIdempotency(manager, sourceId) {
43
+ if (!this.idempotencyClaim || !this.idempotencyService)
44
+ return;
45
+ await this.idempotencyService.complete(manager, this.idempotencyClaim, sourceId);
46
+ this.idempotencyClaim = null;
8
47
  }
9
48
  setColumnError(columnName, errorMessage) {
10
49
  const existing = this._errors.get(columnName) ?? [];
@@ -57,6 +96,12 @@ class BaseDataProcessor {
57
96
  }
58
97
  return this;
59
98
  }
99
+ isEdit(payload) {
100
+ return (typeof payload === 'object' &&
101
+ payload !== null &&
102
+ 'id' in payload &&
103
+ !!payload.id);
104
+ }
60
105
  raiseExceptionOnValidationFailure() {
61
106
  if (this._errors.size > 0) {
62
107
  throw new common_1.BadRequestException({
@@ -1 +1 @@
1
- {"version":3,"file":"base.data.processor.js","sourceRoot":"","sources":["../../../src/common/libraries/base.data.processor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.data.processor.js","sourceRoot":"","sources":["../../../src/common/libraries/base.data.processor.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,9 @@ import { QueueService } from './services/queue.service';
7
7
  import { RemoteRequestService } from './services/remote.request.service';
8
8
  import { SqlService } from './services/sql.service';
9
9
  import { SystemPropertyService } from './services/system.property.service';
10
+ import { SystemConstantService } from './services/system.constant.service';
11
+ import { IdempotencyService } from './services/idempotency.service';
12
+ import { RecordHistoryService } from './services/record.history.service';
10
13
  import { BaseDataProcessor } from './libraries/base.data.processor';
11
14
  import { BaseFilterProcessor } from './libraries/base.filter.processor';
12
15
  import { CronScheduleResolver } from './libraries/cron.schedule.resolver';
@@ -22,14 +25,15 @@ import { DispatchScheduledEventJob } from './jobs/dispatch.scheduled.event.job';
22
25
  import { SetScheduledEventJob } from './jobs/set.scheduled.event.job';
23
26
  import { SystemScheduledTaskJob } from './jobs/system.scheduled.task.job';
24
27
  import { PurgeFailedJobsJob } from './jobs/purge.failed.jobs.job';
28
+ import { PurgeIdempotencyKeysJob } from './jobs/purge.idempotency.keys.job';
25
29
  import { StrictValidationPipe } from './pipes/strict.validation.pipe';
26
30
  import { SystemScheduledTaskSubscriber } from './subscribers/system.scheduled.task.subscriber';
27
31
  export declare const moduleRegistry: {
28
32
  controllers: any[];
29
- services: readonly [typeof AuditService, typeof CacheService, typeof EncryptionService, typeof MonitoringService, typeof OtpService, typeof QueueService, typeof RemoteRequestService, typeof SqlService, typeof SystemPropertyService];
33
+ services: readonly [typeof AuditService, typeof CacheService, typeof EncryptionService, typeof MonitoringService, typeof OtpService, typeof QueueService, typeof RemoteRequestService, typeof SqlService, typeof SystemPropertyService, typeof SystemConstantService, typeof IdempotencyService, typeof RecordHistoryService];
30
34
  libraries: (typeof CronScheduleResolver | typeof IntervalScheduleResolver | typeof OnceScheduleResolver | typeof BaseDataProcessor | typeof BaseFilterProcessor)[];
31
35
  dtos: (typeof FilterDto | typeof SortDto | typeof CommonListFilterDto | typeof OtpTargetDto | typeof DatabaseEventDto | typeof CommonDataDto)[];
32
- jobs: (typeof DispatchScheduledEventJob | typeof SetScheduledEventJob | typeof SystemScheduledTaskJob | typeof PurgeFailedJobsJob)[];
36
+ jobs: (typeof DispatchScheduledEventJob | typeof SetScheduledEventJob | typeof SystemScheduledTaskJob | typeof PurgeFailedJobsJob | typeof PurgeIdempotencyKeysJob)[];
33
37
  pipes: (typeof StrictValidationPipe)[];
34
38
  subscribers: (typeof SystemScheduledTaskSubscriber)[];
35
39
  };
@@ -1 +1 @@
1
- {"version":3,"file":"module.registry.d.ts","sourceRoot":"","sources":["../../src/common/module.registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAoB,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE3E,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,6BAA6B,EAAE,MAAM,gDAAgD,CAAC;AAE/F,eAAO,MAAM,cAAc;;;;;;;;CAuC1B,CAAC"}
1
+ {"version":3,"file":"module.registry.d.ts","sourceRoot":"","sources":["../../src/common/module.registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAoB,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE3E,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,6BAA6B,EAAE,MAAM,gDAAgD,CAAC;AAE/F,eAAO,MAAM,cAAc;;;;;;;;CA2C1B,CAAC"}
@@ -10,6 +10,9 @@ const queue_service_1 = require("./services/queue.service");
10
10
  const remote_request_service_1 = require("./services/remote.request.service");
11
11
  const sql_service_1 = require("./services/sql.service");
12
12
  const system_property_service_1 = require("./services/system.property.service");
13
+ const system_constant_service_1 = require("./services/system.constant.service");
14
+ const idempotency_service_1 = require("./services/idempotency.service");
15
+ const record_history_service_1 = require("./services/record.history.service");
13
16
  const base_data_processor_1 = require("./libraries/base.data.processor");
14
17
  const base_filter_processor_1 = require("./libraries/base.filter.processor");
15
18
  const cron_schedule_resolver_1 = require("./libraries/cron.schedule.resolver");
@@ -27,6 +30,7 @@ const dispatch_scheduled_event_job_1 = require("./jobs/dispatch.scheduled.event.
27
30
  const set_scheduled_event_job_1 = require("./jobs/set.scheduled.event.job");
28
31
  const system_scheduled_task_job_1 = require("./jobs/system.scheduled.task.job");
29
32
  const purge_failed_jobs_job_1 = require("./jobs/purge.failed.jobs.job");
33
+ const purge_idempotency_keys_job_1 = require("./jobs/purge.idempotency.keys.job");
30
34
  const strict_validation_pipe_1 = require("./pipes/strict.validation.pipe");
31
35
  const system_scheduled_task_subscriber_1 = require("./subscribers/system.scheduled.task.subscriber");
32
36
  exports.moduleRegistry = {
@@ -41,6 +45,9 @@ exports.moduleRegistry = {
41
45
  remote_request_service_1.RemoteRequestService,
42
46
  sql_service_1.SqlService,
43
47
  system_property_service_1.SystemPropertyService,
48
+ system_constant_service_1.SystemConstantService,
49
+ idempotency_service_1.IdempotencyService,
50
+ record_history_service_1.RecordHistoryService,
44
51
  ],
45
52
  libraries: [
46
53
  base_data_processor_1.BaseDataProcessor,
@@ -65,6 +72,7 @@ exports.moduleRegistry = {
65
72
  set_scheduled_event_job_1.SetScheduledEventJob,
66
73
  system_scheduled_task_job_1.SystemScheduledTaskJob,
67
74
  purge_failed_jobs_job_1.PurgeFailedJobsJob,
75
+ purge_idempotency_keys_job_1.PurgeIdempotencyKeysJob,
68
76
  ],
69
77
  pipes: [strict_validation_pipe_1.StrictValidationPipe],
70
78
  subscribers: [system_scheduled_task_subscriber_1.SystemScheduledTaskSubscriber],
@@ -1 +1 @@
1
- {"version":3,"file":"module.registry.js","sourceRoot":"","sources":["../../src/common/module.registry.ts"],"names":[],"mappings":";;;AAAA,4DAAwD;AACxD,4DAAwD;AACxD,sEAAkE;AAClE,sEAAkE;AAClE,wDAAoD;AACpD,4DAAwD;AACxD,8EAAyE;AACzE,wDAAoD;AACpD,gFAA2E;AAC3E,yEAAoE;AACpE,6EAAwE;AACxE,+EAA0E;AAC1E,uFAAkF;AAClF,+EAA0E;AAC1E,0EAAoE;AACpE,gEAA2D;AAC3D,4DAAuD;AACvD,kEAA6D;AAC7D,kDAA8C;AAC9C,kEAA2E;AAC3E,sEAAiE;AACjE,8CAA0C;AAC1C,sFAAgF;AAChF,4EAAsE;AACtE,gFAA0E;AAC1E,wEAAkE;AAClE,2EAAsE;AACtE,qGAA+F;AAElF,QAAA,cAAc,GAAG;IAC5B,WAAW,EAAE,EAAE;IACf,QAAQ,EAAE;QACR,4BAAY;QACZ,4BAAY;QACZ,sCAAiB;QACjB,sCAAiB;QACjB,wBAAU;QACV,4BAAY;QACZ,6CAAoB;QACpB,wBAAU;QACV,+CAAqB;KACb;IACV,SAAS,EAAE;QACT,uCAAiB;QACjB,2CAAmB;QACnB,qDAAwB;QACxB,6CAAoB;QACpB,6CAAoB;KACrB;IACD,IAAI,EAAE;QACJ,4CAAmB;QACnB,mCAAe;QACf,+BAAa;QACb,qCAAgB;QAChB,sBAAS;QACT,iCAAY;QACZ,qCAAgB;QAChB,yCAAkB;QAClB,kBAAO;KACR;IACD,IAAI,EAAE;QACJ,wDAAyB;QACzB,8CAAoB;QACpB,kDAAsB;QACtB,0CAAkB;KACnB;IACD,KAAK,EAAE,CAAC,6CAAoB,CAAC;IAC7B,WAAW,EAAE,CAAC,gEAA6B,CAAC;CAC7C,CAAC"}
1
+ {"version":3,"file":"module.registry.js","sourceRoot":"","sources":["../../src/common/module.registry.ts"],"names":[],"mappings":";;;AAAA,4DAAwD;AACxD,4DAAwD;AACxD,sEAAkE;AAClE,sEAAkE;AAClE,wDAAoD;AACpD,4DAAwD;AACxD,8EAAyE;AACzE,wDAAoD;AACpD,gFAA2E;AAC3E,gFAA2E;AAC3E,wEAAoE;AACpE,8EAAyE;AACzE,yEAAoE;AACpE,6EAAwE;AACxE,+EAA0E;AAC1E,uFAAkF;AAClF,+EAA0E;AAC1E,0EAAoE;AACpE,gEAA2D;AAC3D,4DAAuD;AACvD,kEAA6D;AAC7D,kDAA8C;AAC9C,kEAA2E;AAC3E,sEAAiE;AACjE,8CAA0C;AAC1C,sFAAgF;AAChF,4EAAsE;AACtE,gFAA0E;AAC1E,wEAAkE;AAClE,kFAA4E;AAC5E,2EAAsE;AACtE,qGAA+F;AAElF,QAAA,cAAc,GAAG;IAC5B,WAAW,EAAE,EAAE;IACf,QAAQ,EAAE;QACR,4BAAY;QACZ,4BAAY;QACZ,sCAAiB;QACjB,sCAAiB;QACjB,wBAAU;QACV,4BAAY;QACZ,6CAAoB;QACpB,wBAAU;QACV,+CAAqB;QACrB,+CAAqB;QACrB,wCAAkB;QAClB,6CAAoB;KACZ;IACV,SAAS,EAAE;QACT,uCAAiB;QACjB,2CAAmB;QACnB,qDAAwB;QACxB,6CAAoB;QACpB,6CAAoB;KACrB;IACD,IAAI,EAAE;QACJ,4CAAmB;QACnB,mCAAe;QACf,+BAAa;QACb,qCAAgB;QAChB,sBAAS;QACT,iCAAY;QACZ,qCAAgB;QAChB,yCAAkB;QAClB,kBAAO;KACR;IACD,IAAI,EAAE;QACJ,wDAAyB;QACzB,8CAAoB;QACpB,kDAAsB;QACtB,0CAAkB;QAClB,oDAAuB;KACxB;IACD,KAAK,EAAE,CAAC,6CAAoB,CAAC;IAC7B,WAAW,EAAE,CAAC,gEAA6B,CAAC;CAC7C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"queue.module.d.ts","sourceRoot":"","sources":["../../src/common/queue.module.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAId,MAAM,gBAAgB,CAAC;AAIxB,OAAO,EAAE,iBAAiB,EAA4B,MAAM,QAAQ,CAAC;AAMrE,OAAO,EAAe,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAgJtE,qBACa,WAAW;IActB,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,iBAAiB,GAAG,OAAO,WAAW;IAKxE,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAE,kBAAuB,GAAG,aAAa;CAajE"}
1
+ {"version":3,"file":"queue.module.d.ts","sourceRoot":"","sources":["../../src/common/queue.module.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAId,MAAM,gBAAgB,CAAC;AAIxB,OAAO,EAAE,iBAAiB,EAA4B,MAAM,QAAQ,CAAC;AAMrE,OAAO,EAAe,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAqJtE,qBACa,WAAW;IActB,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,iBAAiB,GAAG,OAAO,WAAW;IAKxE,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAE,kBAAuB,GAAG,aAAa;CAajE"}
@@ -19,6 +19,7 @@ const queue_service_1 = require("./services/queue.service");
19
19
  const job_maps_1 = require("../constants/job.maps");
20
20
  const system_scheduled_task_job_1 = require("./jobs/system.scheduled.task.job");
21
21
  const system_scheduled_task_subscriber_1 = require("./subscribers/system.scheduled.task.subscriber");
22
+ const system_property_module_1 = require("./system.property.module");
22
23
  function resolveQueueName(name) {
23
24
  return name || process.env.BULL_QUEUE_NAME || queue_enum_1.QueueDefault.NAME;
24
25
  }
@@ -82,6 +83,9 @@ function buildMetadata(queueName, dataSourceName, jobMaps) {
82
83
  return {
83
84
  imports: [
84
85
  core_1.DiscoveryModule,
86
+ dataSourceName
87
+ ? system_property_module_1.SystemPropertyModule.register({ dataSourceName })
88
+ : system_property_module_1.SystemPropertyModule,
85
89
  bullmq_1.BullModule.forRootAsync({
86
90
  useFactory: () => ({ connection: createQueueConnection() }),
87
91
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"queue.module.js","sourceRoot":"","sources":["../../src/common/queue.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAKwB;AACxB,2CAA2D;AAC3D,uCAAiE;AACjE,6CAAqD;AAGrD,mDAAkD;AAClD,2EAAuE;AACvE,2DAAuD;AACvD,4DAAwD;AAExD,oDAAoD;AACpD,gFAA0E;AAC1E,qGAA+F;AAE/F,SAAS,gBAAgB,CAAC,IAAa;IACrC,OAAO,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,yBAAY,CAAC,IAAI,CAAC;AAClE,CAAC;AAWD,IAAI,kBAAiD,CAAC;AAEtD,SAAS,qBAAqB;IAC5B,IAAI,kBAAkB;QAAE,OAAO,kBAAkB,CAAC;IAClD,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,WAAW;QAChD,IAAI,EAAE,IAAA,yBAAM,EAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;QACvE,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,SAAS;QACtD,EAAE,EAAE,IAAA,yBAAM,EAAC,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC;QACrD,GAAG,CAAC,IAAA,0BAAO,EAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;YACrC,CAAC,CAAC;gBACE,GAAG,EAAE;oBACH,kBAAkB,EAChB,OAAO,CAAC,GAAG,CAAC,kCAAkC,KAAK,OAAO;iBAC7D;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QAGP,oBAAoB,EAAE,IAAI;KAC3B,CAAC;AACJ,CAAC;AASD,SAAS,uBAAuB;IAC9B,MAAM,GAAG,GACP,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,EAAE,CAAC;QAC9C,yBAAY,CAAC,eAAe,CAAC;IAC/B,MAAM,QAAQ,GACZ,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,CAAC,IAAI,yBAAY,CAAC,eAAe,CAAC;IAC5E,OAAO;QACL,QAAQ;QACR,gBAAgB,EAAE,IAAI;QACtB,YAAY,EAAE,EAAE,GAAG,EAAE;KACtB,CAAC;AACJ,CAAC;AAGD,SAAS,aAAa;IACpB,OAAO,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,MAAM,CAAC;AAClD,CAAC;AAQD,SAAS,aAAa,CACpB,SAAiB,EACjB,cAAuB,EACvB,OAAqB;IAIrB,MAAM,eAAe,GAAgB,EAAE,GAAG,sBAAW,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAAC;IAM5E,MAAM,gBAAgB,GAAG;QACvB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,sBAAW,CAAC,CAAC;KACzB,CAAC;IAUhB,MAAM,uBAAuB,GAAa;QACxC,OAAO,EAAE,gEAA6B;QACtC,UAAU,EAAE,CAAC,UAAsB,EAAE,SAAiC,EAAE,EAAE,CACxE,IAAI,gEAA6B,CAAC,UAAU,EAAE,SAAS,CAAC;QAC1D,MAAM,EAAE,CAAC,IAAA,4BAAkB,EAAC,cAAc,CAAC,EAAE,kDAAsB,CAAC;KACrE,CAAC;IACF,MAAM,SAAS,GAAe;QAC5B;YACE,OAAO,EAAE,4BAAY;YACrB,UAAU,EAAE,CACV,KAAY,EACZ,UAAsB,EACtB,SAA2B,EAC3B,EAAE,CAAC,IAAI,4BAAY,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,CAAC;YACpE,MAAM,EAAE;gBACN,IAAA,sBAAa,EAAC,SAAS,CAAC;gBACxB,IAAA,4BAAkB,EAAC,cAAc,CAAC;gBAClC,uBAAgB;aACjB;SACF;QACD,GAAG,gBAAgB;QACnB,uBAAuB;KACxB,CAAC;IACF,IAAI,aAAa,EAAE;QAAE,SAAS,CAAC,IAAI,CAAC,0BAAW,CAAC,CAAC;IAEjD,OAAO;QACL,OAAO,EAAE;YACP,sBAAe;YACf,mBAAU,CAAC,YAAY,CAAC;gBACtB,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,qBAAqB,EAAE,EAAE,CAAC;aAC5D,CAAC;YACF,mBAAU,CAAC,aAAa,CAAC;gBACvB,IAAI,EAAE,SAAS;gBACf,iBAAiB,EAAE,uBAAuB,EAAE;aAC7C,CAAC;SACH;QACD,SAAS;QACT,OAAO,EAAE,CAAC,4BAAY,EAAE,mBAAU,CAAC;KACpC,CAAC;AACJ,CAAC;AASM,IAAM,WAAW,mBAAjB,MAAM,WAAW;IActB,MAAM,CAAC,cAAc,CAAC,UAA6B;QACjD,kBAAkB,GAAG,UAAU,CAAC;QAChC,OAAO,aAAW,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,UAA8B,EAAE;QAG9C,IAAI,OAAO,CAAC,UAAU;YAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC;QAChE,OAAO;YACL,MAAM,EAAE,aAAW;YACnB,GAAG,aAAa,CACd,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC,EACnC,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,OAAO,CAChB;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAhCY,kCAAW;sBAAX,WAAW;IADvB,IAAA,eAAM,EAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC,CAAC;GAC7B,WAAW,CAgCvB"}
1
+ {"version":3,"file":"queue.module.js","sourceRoot":"","sources":["../../src/common/queue.module.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"audit.service.d.ts","sourceRoot":"","sources":["../../../src/common/services/audit.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E,OAAO,EACL,eAAe,EAGhB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,eAAe,EACf,cAAc,EACd,UAAU,EACV,aAAa,EACb,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAQ9B,qBACa,YAAY;IACjB,YAAY,CAChB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,oBAAoB,CAAC;IAsB1B,UAAU,CACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,EACpB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,oBAAoB,CAAC;IAU1B,UAAU,CACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,EACpB,QAAQ,EAAE,UAAU,EACpB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,oBAAoB,CAAC;IAW1B,UAAU,CACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,EACpB,OAAO,CAAC,EAAE,eAAe,GAAG;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,GAC7C,OAAO,CAAC,oBAAoB,CAAC;IAYhC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,GAAG,aAAa;IAmBrE,aAAa,CACjB,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,cAAc,GACtB,OAAO,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;IAejD,OAAO,KAAK,kBAAkB,GAE7B;CACF"}
1
+ {"version":3,"file":"audit.service.d.ts","sourceRoot":"","sources":["../../../src/common/services/audit.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAG3E,OAAO,EACL,eAAe,EAGhB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,eAAe,EACf,cAAc,EACd,UAAU,EACV,aAAa,EACb,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAQ9B,qBACa,YAAY;IACjB,YAAY,CAChB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,oBAAoB,CAAC;IAsB1B,UAAU,CACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,EACpB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,oBAAoB,CAAC;IAU1B,UAAU,CACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,EACpB,QAAQ,EAAE,UAAU,EACpB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,oBAAoB,CAAC;IAW1B,UAAU,CACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,EACpB,OAAO,CAAC,EAAE,eAAe,GAAG;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,GAC7C,OAAO,CAAC,oBAAoB,CAAC;IAYhC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,GAAG,aAAa;IAmBrE,aAAa,CACjB,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,cAAc,GACtB,OAAO,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;IAuBjD,OAAO,KAAK,kBAAkB,GAE7B;CACF"}
@@ -10,6 +10,7 @@ exports.AuditService = void 0;
10
10
  const common_1 = require("@nestjs/common");
11
11
  const system_audit_log_entity_1 = require("../entities/system.audit.log.entity");
12
12
  const audit_action_enum_1 = require("../enums/audit.action.enum");
13
+ const constant_pair_1 = require("../helpers/constant.pair");
13
14
  const paginated_result_types_1 = require("../types/paginated.result.types");
14
15
  let AuditService = class AuditService {
15
16
  async saveAuditLog(options) {
@@ -21,7 +22,7 @@ let AuditService = class AuditService {
21
22
  return this.auditLogRepository.save(this.auditLogRepository.create({
22
23
  source_type: options.sourceType,
23
24
  source_id: options.sourceId,
24
- action: options.action,
25
+ action_id: constant_pair_1.ConstantPair.id(audit_action_enum_1.AuditAction, audit_action_enum_1.AuditActionId, options.action),
25
26
  ...(oldValue ? { old_value: oldValue } : {}),
26
27
  ...(newValue ? { new_value: newValue } : {}),
27
28
  ...(options.ipAddress ? { ip_address: options.ipAddress } : {}),
@@ -81,7 +82,11 @@ let AuditService = class AuditService {
81
82
  where: {
82
83
  source_type: sourceType,
83
84
  ...(filter?.sourceId ? { source_id: filter.sourceId } : {}),
84
- ...(filter?.action ? { action: filter.action } : {}),
85
+ ...(filter?.action
86
+ ? {
87
+ action_id: constant_pair_1.ConstantPair.id(audit_action_enum_1.AuditAction, audit_action_enum_1.AuditActionId, filter.action),
88
+ }
89
+ : {}),
85
90
  },
86
91
  order: { created_at: 'DESC' },
87
92
  skip: (page - 1) * limit,
@@ -1 +1 @@
1
- {"version":3,"file":"audit.service.js","sourceRoot":"","sources":["../../../src/common/services/audit.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audit.service.js","sourceRoot":"","sources":["../../../src/common/services/audit.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { DataSource, EntityManager } from 'typeorm';
2
+ import { IdempotencyKeyEntity } from '../entities/idempotency.key.entity';
3
+ import type { IdempotencyClaim, IdempotencyClaimInput } from '../types/idempotency.types';
4
+ import { SystemPropertyService } from './system.property.service';
5
+ export declare class IdempotencyService {
6
+ private readonly systemPropertyService;
7
+ private readonly dataSource?;
8
+ private readonly propertyCache;
9
+ constructor(systemPropertyService: SystemPropertyService, dataSource?: DataSource);
10
+ claim(manager: EntityManager, input: IdempotencyClaimInput): Promise<IdempotencyClaim>;
11
+ complete(manager: EntityManager, claim: string | IdempotencyKeyEntity, sourceId: string): Promise<void>;
12
+ hash(payload: unknown): string;
13
+ purgeExpired(): Promise<number>;
14
+ ttlMinutes(): Promise<number>;
15
+ lockTimeoutMs(): Promise<number>;
16
+ private attempt;
17
+ private insert;
18
+ private findExisting;
19
+ private setLockTimeout;
20
+ private isUniqueViolation;
21
+ private isLockTimeout;
22
+ private property;
23
+ private get connection();
24
+ }
25
+ //# sourceMappingURL=idempotency.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"idempotency.service.d.ts","sourceRoot":"","sources":["../../../src/common/services/idempotency.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,aAAa,EAA8B,MAAM,SAAS,CAAC;AAIhF,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAO1E,OAAO,KAAK,EACV,gBAAgB,EAEhB,qBAAqB,EACtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAOlE,qBACa,kBAAkB;IAI3B,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IAC1B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IAJ1C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqC;gBAGhD,qBAAqB,EAAE,qBAAqB,EAChC,UAAU,CAAC,EAAE,UAAU;IAIhD,KAAK,CACT,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,gBAAgB,CAAC;IAkBtB,QAAQ,CACZ,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,MAAM,GAAG,oBAAoB,EACpC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC;IAUhB,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM;IAOxB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAsB/B,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAS7B,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;YASxB,OAAO;YAqCP,MAAM;IAyBpB,OAAO,CAAC,YAAY;YAkBN,cAAc;IAU5B,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,aAAa;YASP,QAAQ;IAiBtB,OAAO,KAAK,UAAU,GAMrB;CACF"}
@@ -0,0 +1,181 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.IdempotencyService = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const crypto_1 = require("crypto");
18
+ const typeorm_1 = require("typeorm");
19
+ const idempotency_exception_1 = require("../../global/exceptions/idempotency.exception");
20
+ const operation_exception_1 = require("../../global/exceptions/operation.exception");
21
+ const environment_util_1 = require("../../global/utilities/environment.util");
22
+ const idempotency_key_entity_1 = require("../entities/idempotency.key.entity");
23
+ const idempotency_enum_1 = require("../enums/idempotency.enum");
24
+ const canonical_json_1 = require("../helpers/canonical.json");
25
+ const system_property_service_1 = require("./system.property.service");
26
+ let IdempotencyService = class IdempotencyService {
27
+ constructor(systemPropertyService, dataSource) {
28
+ this.systemPropertyService = systemPropertyService;
29
+ this.dataSource = dataSource;
30
+ this.propertyCache = new Map();
31
+ }
32
+ async claim(manager, input) {
33
+ const requestHash = this.hash(input.payload);
34
+ const [ttlMinutes, lockTimeoutMs] = await Promise.all([
35
+ this.ttlMinutes(),
36
+ this.lockTimeoutMs(),
37
+ ]);
38
+ await this.setLockTimeout(manager, `${lockTimeoutMs}ms`);
39
+ try {
40
+ return await this.attempt(manager, input, requestHash, ttlMinutes);
41
+ }
42
+ catch (error) {
43
+ if (this.isLockTimeout(error))
44
+ throw idempotency_exception_1.IdempotencyException.inProgress();
45
+ throw error;
46
+ }
47
+ }
48
+ async complete(manager, claim, sourceId) {
49
+ const row = typeof claim === 'string'
50
+ ? await manager.findOneByOrFail(idempotency_key_entity_1.IdempotencyKeyEntity, { id: claim })
51
+ : claim;
52
+ row.source_id = sourceId;
53
+ await manager.save(row);
54
+ }
55
+ hash(payload) {
56
+ return (0, crypto_1.createHash)(idempotency_enum_1.IdempotencyDefault.HASH_ALGORITHM)
57
+ .update((0, canonical_json_1.canonicalJson)(payload))
58
+ .digest('hex');
59
+ }
60
+ async purgeExpired() {
61
+ let removed = 0;
62
+ for (let batch = 0; batch < Number(idempotency_enum_1.IdempotencyLimit.PURGE_MAX_BATCHES); batch++) {
63
+ const count = await this.connection.transaction(async (trx) => {
64
+ const expired = await trx.find(idempotency_key_entity_1.IdempotencyKeyEntity, {
65
+ where: { expires_at: (0, typeorm_1.LessThan)(new Date()) },
66
+ order: { expires_at: 'ASC' },
67
+ take: Number(idempotency_enum_1.IdempotencyLimit.PURGE_BATCH_SIZE),
68
+ });
69
+ if (expired.length)
70
+ await trx.remove(expired);
71
+ return expired.length;
72
+ });
73
+ removed += count;
74
+ if (count < Number(idempotency_enum_1.IdempotencyLimit.PURGE_BATCH_SIZE))
75
+ break;
76
+ }
77
+ return removed;
78
+ }
79
+ async ttlMinutes() {
80
+ return this.property(idempotency_enum_1.IdempotencyDefault.TTL_PROPERTY, idempotency_enum_1.IdempotencyLimit.TTL_MINUTES, idempotency_enum_1.IdempotencyLimit.TTL_MIN_MINUTES, idempotency_enum_1.IdempotencyLimit.TTL_MAX_MINUTES);
81
+ }
82
+ async lockTimeoutMs() {
83
+ return this.property(idempotency_enum_1.IdempotencyDefault.LOCK_TIMEOUT_PROPERTY, idempotency_enum_1.IdempotencyLimit.LOCK_TIMEOUT_MS, idempotency_enum_1.IdempotencyLimit.LOCK_TIMEOUT_MIN_MS, idempotency_enum_1.IdempotencyLimit.LOCK_TIMEOUT_MAX_MS);
84
+ }
85
+ async attempt(manager, input, requestHash, ttlMinutes) {
86
+ for (let attempt = 1;; attempt++) {
87
+ const claim = await this.insert(manager, input, requestHash, ttlMinutes);
88
+ if (claim)
89
+ return {
90
+ status: idempotency_enum_1.IdempotencyClaimStatus.CLAIMED,
91
+ claimId: claim.id,
92
+ claim,
93
+ };
94
+ const retry = attempt < Number(idempotency_enum_1.IdempotencyLimit.CLAIM_ATTEMPTS);
95
+ const existing = await this.findExisting(manager, input);
96
+ if (!existing) {
97
+ if (retry)
98
+ continue;
99
+ throw idempotency_exception_1.IdempotencyException.inProgress();
100
+ }
101
+ if (retry && existing.expires_at.getTime() <= Date.now()) {
102
+ await manager.remove(existing);
103
+ continue;
104
+ }
105
+ if (existing.request_hash !== requestHash)
106
+ throw idempotency_exception_1.IdempotencyException.keyReused();
107
+ if (!existing.source_id)
108
+ throw idempotency_exception_1.IdempotencyException.inProgress();
109
+ return {
110
+ status: idempotency_enum_1.IdempotencyClaimStatus.REPLAY,
111
+ sourceId: existing.source_id,
112
+ };
113
+ }
114
+ }
115
+ async insert(manager, input, requestHash, ttlMinutes) {
116
+ const claim = new idempotency_key_entity_1.IdempotencyKeyEntity();
117
+ claim.tenant_id = input.tenantId;
118
+ claim.user_id = input.userId;
119
+ claim.source_type = input.sourceType;
120
+ claim.key = input.key;
121
+ claim.request_hash = requestHash;
122
+ claim.expires_at = new Date(Date.now() + ttlMinutes * idempotency_enum_1.IdempotencyLimit.MS_PER_MINUTE);
123
+ try {
124
+ await manager.transaction((nested) => nested.save(claim));
125
+ }
126
+ catch (error) {
127
+ if (this.isUniqueViolation(error))
128
+ return null;
129
+ throw error;
130
+ }
131
+ return claim;
132
+ }
133
+ findExisting(manager, input) {
134
+ return manager
135
+ .createQueryBuilder(idempotency_key_entity_1.IdempotencyKeyEntity, 'k')
136
+ .where(`coalesce(k.tenant_id, '${idempotency_enum_1.IdempotencyDefault.NO_TENANT}'::uuid) = CAST(:tenant AS uuid)`, { tenant: input.tenantId ?? idempotency_enum_1.IdempotencyDefault.NO_TENANT })
137
+ .andWhere('k.source_type = :sourceType', {
138
+ sourceType: input.sourceType,
139
+ })
140
+ .andWhere('k.key = :key', { key: input.key })
141
+ .getOne();
142
+ }
143
+ async setLockTimeout(manager, value) {
144
+ await manager.query(`SELECT set_config('${idempotency_enum_1.IdempotencyDefault.LOCK_TIMEOUT_SETTING}', $1, true)`, [value]);
145
+ }
146
+ isUniqueViolation(error) {
147
+ return (error instanceof typeorm_1.QueryFailedError &&
148
+ error.driverError?.code ===
149
+ String(idempotency_enum_1.IdempotencyDefault.UNIQUE_VIOLATION_CODE));
150
+ }
151
+ isLockTimeout(error) {
152
+ return (error instanceof typeorm_1.QueryFailedError &&
153
+ error.driverError?.code ===
154
+ String(idempotency_enum_1.IdempotencyDefault.LOCK_NOT_AVAILABLE_CODE));
155
+ }
156
+ async property(identifier, fallback, min, max) {
157
+ const hit = this.propertyCache.get(identifier);
158
+ if (hit && hit.expiresAt > Date.now())
159
+ return hit.value;
160
+ const raw = await this.systemPropertyService.get(identifier);
161
+ const value = (0, environment_util_1.envInt)(raw ?? undefined, fallback, { min, max });
162
+ this.propertyCache.set(identifier, {
163
+ value,
164
+ expiresAt: Date.now() + Number(idempotency_enum_1.IdempotencyLimit.PROPERTY_CACHE_MS),
165
+ });
166
+ return value;
167
+ }
168
+ get connection() {
169
+ if (!this.dataSource)
170
+ throw new operation_exception_1.OperationException('IdempotencyService requires TypeOrmModule to be configured with a data source');
171
+ return this.dataSource;
172
+ }
173
+ };
174
+ exports.IdempotencyService = IdempotencyService;
175
+ exports.IdempotencyService = IdempotencyService = __decorate([
176
+ (0, common_1.Injectable)(),
177
+ __param(1, (0, common_1.Optional)()),
178
+ __metadata("design:paramtypes", [system_property_service_1.SystemPropertyService,
179
+ typeorm_1.DataSource])
180
+ ], IdempotencyService);
181
+ //# sourceMappingURL=idempotency.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"idempotency.service.js","sourceRoot":"","sources":["../../../src/common/services/idempotency.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { DataSource } from 'typeorm';
2
+ import { PaginatedResult } from '../types/paginated.result.types';
3
+ import type { RecordHistoryChange, RecordHistoryEntry, RecordHistoryFilter, RecordHistoryOptions, RecordHistorySource } from '../types/record.history.types';
4
+ export declare class RecordHistoryService {
5
+ private readonly dataSource?;
6
+ constructor(dataSource?: DataSource);
7
+ log(source: RecordHistorySource, before: object | null, after: object | null, actorId: string | null, options?: RecordHistoryOptions): Promise<void>;
8
+ history(sourceType: string, sourceId: string, filter?: RecordHistoryFilter): Promise<PaginatedResult<RecordHistoryEntry>>;
9
+ diff(before: object | null, after: object | null, options?: RecordHistoryOptions): RecordHistoryChange[];
10
+ private skippedFields;
11
+ private metadataOf;
12
+ private isRelation;
13
+ private toEntry;
14
+ private get connection();
15
+ }
16
+ //# sourceMappingURL=record.history.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record.history.service.d.ts","sourceRoot":"","sources":["../../../src/common/services/record.history.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAkB,MAAM,SAAS,CAAC;AAUrD,OAAO,EACL,eAAe,EAGhB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EACV,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EAEpB,mBAAmB,EAEpB,MAAM,+BAA+B,CAAC;AAOvC,qBACa,oBAAoB;IACP,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAX,UAAU,CAAC,EAAE,UAAU;IAG1D,GAAG,CACP,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC;IA0BV,OAAO,CACX,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,mBAAmB,GAC3B,OAAO,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;IA4C/C,IAAI,CACF,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,OAAO,GAAE,oBAAyB,GACjC,mBAAmB,EAAE;IAexB,OAAO,CAAC,aAAa;IAsBrB,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,OAAO;IAkBf,OAAO,KAAK,UAAU,GAMrB;CACF"}