rez_core 7.0.13 → 7.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 (456) hide show
  1. package/.idea/250218_ether_core.iml +12 -0
  2. package/.idea/codeStyles/Project.xml +59 -0
  3. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  4. package/.idea/modules.xml +8 -0
  5. package/.idea/vcs.xml +6 -0
  6. package/.prettierrc +3 -3
  7. package/README.md +99 -99
  8. package/dist/module/filter/repository/saved-filter.repository.js +2 -0
  9. package/dist/module/filter/repository/saved-filter.repository.js.map +1 -1
  10. package/dist/module/filter/service/filter.service.js +33 -28
  11. package/dist/module/filter/service/filter.service.js.map +1 -1
  12. package/dist/module/integration/examples/usage.example.js +9 -9
  13. package/dist/module/integration/service/integration.service.d.ts +6 -1
  14. package/dist/module/integration/service/integration.service.js +14 -2
  15. package/dist/module/integration/service/integration.service.js.map +1 -1
  16. package/dist/module/integration/service/oauth.service.js +2 -0
  17. package/dist/module/integration/service/oauth.service.js.map +1 -1
  18. package/dist/module/integration/service/wrapper.service.js +1 -0
  19. package/dist/module/integration/service/wrapper.service.js.map +1 -1
  20. package/dist/module/integration/strategies/email/gmail-api.strategy.js +23 -7
  21. package/dist/module/integration/strategies/email/gmail-api.strategy.js.map +1 -1
  22. package/dist/module/integration/strategies/email/sendgrid-api.strategy.js +8 -5
  23. package/dist/module/integration/strategies/email/sendgrid-api.strategy.js.map +1 -1
  24. package/dist/module/layout_preference/controller/layout_preference.controller.d.ts +0 -6
  25. package/dist/module/layout_preference/controller/layout_preference.controller.js +0 -16
  26. package/dist/module/layout_preference/controller/layout_preference.controller.js.map +1 -1
  27. package/dist/module/layout_preference/layout_preference.module.js +1 -1
  28. package/dist/module/layout_preference/layout_preference.module.js.map +1 -1
  29. package/dist/module/layout_preference/service/layout_preference.service.d.ts +0 -4
  30. package/dist/module/layout_preference/service/layout_preference.service.js +0 -67
  31. package/dist/module/layout_preference/service/layout_preference.service.js.map +1 -1
  32. package/dist/module/listmaster/controller/list-master.controller.d.ts +1 -1
  33. package/dist/module/listmaster/controller/list-master.controller.js +9 -6
  34. package/dist/module/listmaster/controller/list-master.controller.js.map +1 -1
  35. package/dist/module/listmaster/repository/list-master-items.repository.js +1 -1
  36. package/dist/module/listmaster/repository/list-master-items.repository.js.map +1 -1
  37. package/dist/module/listmaster/service/list-master.service.d.ts +1 -1
  38. package/dist/module/listmaster/service/list-master.service.js +7 -7
  39. package/dist/module/listmaster/service/list-master.service.js.map +1 -1
  40. package/dist/module/meta/controller/media.controller.d.ts +3 -0
  41. package/dist/module/meta/controller/media.controller.js +27 -0
  42. package/dist/module/meta/controller/media.controller.js.map +1 -1
  43. package/dist/module/meta/entity/media-data.entity.d.ts +1 -0
  44. package/dist/module/meta/entity/media-data.entity.js +4 -0
  45. package/dist/module/meta/entity/media-data.entity.js.map +1 -1
  46. package/dist/module/meta/entity.module.js +2 -0
  47. package/dist/module/meta/entity.module.js.map +1 -1
  48. package/dist/module/meta/repository/attribute-master.repository.js +14 -14
  49. package/dist/module/meta/service/entity-dynamic.service.js +16 -16
  50. package/dist/module/meta/service/entity-dynamic.service.js.map +1 -1
  51. package/dist/module/meta/service/entity-master.service.js +20 -20
  52. package/dist/module/meta/service/entity-service-impl.service.d.ts +0 -2
  53. package/dist/module/meta/service/entity-service-impl.service.js +0 -5
  54. package/dist/module/meta/service/entity-service-impl.service.js.map +1 -1
  55. package/dist/module/meta/service/entity-table.service.d.ts +3 -8
  56. package/dist/module/meta/service/entity-table.service.js +54 -52
  57. package/dist/module/meta/service/entity-table.service.js.map +1 -1
  58. package/dist/module/meta/service/media-data.service.d.ts +2 -0
  59. package/dist/module/meta/service/media-data.service.js +8 -0
  60. package/dist/module/meta/service/media-data.service.js.map +1 -1
  61. package/dist/module/meta/service/resolver.service.js +23 -13
  62. package/dist/module/meta/service/resolver.service.js.map +1 -1
  63. package/dist/module/notification/notification.module.js +2 -0
  64. package/dist/module/notification/notification.module.js.map +1 -1
  65. package/dist/module/notification/repository/notification.repository.d.ts +7 -0
  66. package/dist/module/notification/repository/notification.repository.js +43 -0
  67. package/dist/module/notification/repository/notification.repository.js.map +1 -0
  68. package/dist/module/notification/service/notification.service.d.ts +3 -1
  69. package/dist/module/notification/service/notification.service.js +27 -40
  70. package/dist/module/notification/service/notification.service.js.map +1 -1
  71. package/dist/module/workflow/controller/workflow.controller.js +1 -1
  72. package/dist/module/workflow/controller/workflow.controller.js.map +1 -1
  73. package/dist/module/workflow/repository/action-data.repository.js +10 -3
  74. package/dist/module/workflow/repository/action-data.repository.js.map +1 -1
  75. package/dist/module/workflow/repository/action.repository.js +2 -2
  76. package/dist/module/workflow/repository/stage.repository.js +8 -8
  77. package/dist/module/workflow/repository/task.repository.js +4 -4
  78. package/dist/module/workflow/repository/task.repository.js.map +1 -1
  79. package/dist/module/workflow/service/action-template-mapping.service.js +2 -2
  80. package/dist/module/workflow/service/action.service.js +5 -5
  81. package/dist/module/workflow/service/entity-modification.service.d.ts +4 -1
  82. package/dist/module/workflow/service/entity-modification.service.js +9 -5
  83. package/dist/module/workflow/service/entity-modification.service.js.map +1 -1
  84. package/dist/module/workflow/service/populate-workflow.service.d.ts +1 -1
  85. package/dist/module/workflow/service/populate-workflow.service.js +24 -24
  86. package/dist/module/workflow/service/populate-workflow.service.js.map +1 -1
  87. package/dist/module/workflow/service/task.service.js +9 -9
  88. package/dist/module/workflow/service/task.service.js.map +1 -1
  89. package/dist/module/workflow-automation/service/schedule-handler.service.js +9 -9
  90. package/dist/module/workflow-automation/service/workflow-automation.service.js +8 -6
  91. package/dist/module/workflow-automation/service/workflow-automation.service.js.map +1 -1
  92. package/dist/table.config.d.ts +1 -1
  93. package/dist/tsconfig.build.tsbuildinfo +1 -1
  94. package/dist/utils/service/reflection-helper.service.js +2 -2
  95. package/docs/modules/event-driven-integration-design.md +91 -91
  96. package/docs/modules/integration.md +250 -250
  97. package/eslint.config.mjs +34 -34
  98. package/nest-cli.json +14 -14
  99. package/package.json +128 -128
  100. package/src/app.controller.ts +12 -12
  101. package/src/app.module.ts +62 -62
  102. package/src/app.service.ts +8 -8
  103. package/src/config/bull.config.ts +72 -72
  104. package/src/config/config.module.ts +17 -17
  105. package/src/config/database.config.ts +48 -48
  106. package/src/config/redis.config.ts +55 -55
  107. package/src/constant/attribute.constant.ts +8 -8
  108. package/src/constant/db-data-type.constant.ts +160 -160
  109. package/src/constant/entity.constant.ts +3 -3
  110. package/src/constant/global.constant.ts +67 -67
  111. package/src/constant/status.constant.ts +3 -3
  112. package/src/core.module.ts +96 -96
  113. package/src/decorators/roles.decorator.ts +7 -7
  114. package/src/dtos/response.dto.ts +6 -6
  115. package/src/dtos/response.ts +5 -5
  116. package/src/index.ts +1 -1
  117. package/src/module/auth/auth.module.ts +65 -65
  118. package/src/module/auth/controller/auth.controller.ts +28 -28
  119. package/src/module/auth/dto/user.dto.ts +56 -56
  120. package/src/module/auth/guards/google-auth.guard.ts +9 -9
  121. package/src/module/auth/guards/jwt.guard.ts +22 -22
  122. package/src/module/auth/services/auth.service.ts +56 -56
  123. package/src/module/auth/services/jwt.service.ts +11 -11
  124. package/src/module/auth/strategies/google.strategy.ts +54 -54
  125. package/src/module/auth/strategies/jwt.strategy.ts +65 -65
  126. package/src/module/auth/strategies/local.strategy.ts +13 -13
  127. package/src/module/dashboard/controller/dashboard.controller.ts +38 -38
  128. package/src/module/dashboard/dashboard.module.ts +19 -19
  129. package/src/module/dashboard/entity/dashboard_page_data.entity.ts +23 -23
  130. package/src/module/dashboard/entity/widget_master.entity.ts +15 -15
  131. package/src/module/dashboard/repository/dashboard.repository.ts +49 -49
  132. package/src/module/dashboard/service/dashboard.service.ts +69 -69
  133. package/src/module/eav/EAV_USAGE_GUIDE.md +351 -351
  134. package/src/module/eav/controller/eav.controller.ts +119 -119
  135. package/src/module/eav/dto/eav-operation.dto.ts +62 -62
  136. package/src/module/eav/eav.module.ts +79 -79
  137. package/src/module/eav/entity/eav-boolean.entity.ts +25 -25
  138. package/src/module/eav/entity/eav-date.entity.ts +24 -24
  139. package/src/module/eav/entity/eav-decimal.entity.ts +24 -24
  140. package/src/module/eav/entity/eav-int.entity.ts +24 -24
  141. package/src/module/eav/entity/eav-json.entity.ts +24 -24
  142. package/src/module/eav/entity/eav-text.entity.ts +24 -24
  143. package/src/module/eav/entity/eav-time.entity.ts +24 -24
  144. package/src/module/eav/entity/eav-timestamp.entity.ts +24 -24
  145. package/src/module/eav/entity/eav-varchar.entity.ts +24 -24
  146. package/src/module/eav/interface/eav-strategy.interface.ts +32 -32
  147. package/src/module/eav/repository/eav-boolean.repository.ts +67 -67
  148. package/src/module/eav/repository/eav-date.repository.ts +67 -67
  149. package/src/module/eav/repository/eav-decimal.repository.ts +67 -67
  150. package/src/module/eav/repository/eav-int.repository.ts +67 -67
  151. package/src/module/eav/repository/eav-json.repository.ts +67 -67
  152. package/src/module/eav/repository/eav-text.repository.ts +67 -67
  153. package/src/module/eav/repository/eav-time.repository.ts +67 -67
  154. package/src/module/eav/repository/eav-timestamp.repository.ts +67 -67
  155. package/src/module/eav/repository/eav-varchar.repository.ts +67 -67
  156. package/src/module/eav/service/eav-boolean.service.ts +64 -64
  157. package/src/module/eav/service/eav-date.service.ts +64 -64
  158. package/src/module/eav/service/eav-decimal.service.ts +64 -64
  159. package/src/module/eav/service/eav-factory.service.ts +93 -93
  160. package/src/module/eav/service/eav-int.service.ts +64 -64
  161. package/src/module/eav/service/eav-json.service.ts +64 -64
  162. package/src/module/eav/service/eav-text.service.ts +64 -64
  163. package/src/module/eav/service/eav-time.service.ts +64 -64
  164. package/src/module/eav/service/eav-timestamp.service.ts +64 -64
  165. package/src/module/eav/service/eav-varchar.service.ts +65 -65
  166. package/src/module/eav/service/eav.service.ts +116 -116
  167. package/src/module/entity_json/controller/entity_json.controller.ts +75 -75
  168. package/src/module/entity_json/docs/FlatJson_Filterin_System.md +2803 -2803
  169. package/src/module/entity_json/entity/entityJson.entity.ts +42 -42
  170. package/src/module/entity_json/entity_json.module.ts +22 -22
  171. package/src/module/entity_json/service/entityJson.repository.ts +37 -37
  172. package/src/module/entity_json/service/entity_json.service.ts +492 -492
  173. package/src/module/export/controller/export.controller.ts +83 -83
  174. package/src/module/export/export.module.ts +14 -14
  175. package/src/module/export/service/export.service.ts +107 -107
  176. package/src/module/filter/controller/filter.controller.ts +214 -214
  177. package/src/module/filter/dto/filter-request.dto.ts +41 -41
  178. package/src/module/filter/entity/saved-filter-detail.entity.ts +37 -37
  179. package/src/module/filter/entity/saved-filter-master.entity.ts +30 -30
  180. package/src/module/filter/filter.module.ts +33 -33
  181. package/src/module/filter/repository/saved-filter.repository.ts +249 -247
  182. package/src/module/filter/repository/saved.filter-detail.repository.ts +19 -19
  183. package/src/module/filter/service/filter-evaluator.service.ts +82 -82
  184. package/src/module/filter/service/filter.service.ts +1752 -1722
  185. package/src/module/filter/service/saved-filter.service.ts +164 -164
  186. package/src/module/ics/controller/ics.controller.ts +21 -21
  187. package/src/module/ics/dto/ics.dto.ts +55 -55
  188. package/src/module/ics/ics.module.ts +13 -13
  189. package/src/module/ics/service/ics.service.ts +57 -57
  190. package/src/module/integration/controller/calender-event.controller.ts +31 -31
  191. package/src/module/integration/controller/integration.controller.ts +662 -662
  192. package/src/module/integration/controller/wrapper.controller.ts +37 -37
  193. package/src/module/integration/dto/create-config.dto.ts +526 -526
  194. package/src/module/integration/entity/integration-config.entity.ts +112 -112
  195. package/src/module/integration/entity/integration-entity-mapper.entity.ts +14 -14
  196. package/src/module/integration/entity/integration-source.entity.ts +17 -17
  197. package/src/module/integration/entity/user-integration.entity.ts +71 -71
  198. package/src/module/integration/examples/usage.example.ts +338 -338
  199. package/src/module/integration/factories/base.factory.ts +7 -7
  200. package/src/module/integration/factories/email.factory.ts +49 -49
  201. package/src/module/integration/factories/integration.factory.ts +121 -121
  202. package/src/module/integration/factories/sms.factory.ts +51 -51
  203. package/src/module/integration/factories/telephone.factory.ts +41 -41
  204. package/src/module/integration/factories/whatsapp.factory.ts +56 -56
  205. package/src/module/integration/integration.module.ts +110 -110
  206. package/src/module/integration/service/calendar-event.service.ts +118 -118
  207. package/src/module/integration/service/integration-entity-mapper.service.ts +17 -17
  208. package/src/module/integration/service/integration-queue.service.ts +229 -229
  209. package/src/module/integration/service/integration.service.ts +2651 -2632
  210. package/src/module/integration/service/oauth.service.ts +226 -224
  211. package/src/module/integration/service/wrapper.service.ts +754 -753
  212. package/src/module/integration/strategies/email/gmail-api.strategy.ts +307 -281
  213. package/src/module/integration/strategies/email/outlook-api.strategy.ts +44 -44
  214. package/src/module/integration/strategies/email/outlook.strategy.ts +64 -64
  215. package/src/module/integration/strategies/email/sendgrid-api.strategy.ts +263 -260
  216. package/src/module/integration/strategies/integration.strategy.ts +97 -97
  217. package/src/module/integration/strategies/sms/gupshup-sms.strategy.ts +146 -146
  218. package/src/module/integration/strategies/sms/msg91-sms.strategy.ts +164 -164
  219. package/src/module/integration/strategies/sms/tubelight-sms.strategy.ts +163 -163
  220. package/src/module/integration/strategies/telephone/ozonetel-voice.strategy.ts +238 -238
  221. package/src/module/integration/strategies/telephone/tubelight-voice.strategy.ts +210 -210
  222. package/src/module/integration/strategies/whatsapp/gupshup-whatsapp.strategy.ts +359 -359
  223. package/src/module/integration/strategies/whatsapp/tubelight-whatsapp.strategy.ts +372 -372
  224. package/src/module/integration/strategies/whatsapp/whatsapp-cloud.strategy.ts +403 -403
  225. package/src/module/integration/strategies/whatsapp/whatsapp.strategy.ts +57 -57
  226. package/src/module/layout/controller/layout.controller.ts +38 -38
  227. package/src/module/layout/entity/header-items.entity.ts +28 -28
  228. package/src/module/layout/entity/header-section.entity.ts +13 -13
  229. package/src/module/layout/layout.module.ts +20 -20
  230. package/src/module/layout/repository/header-items.repository.ts +18 -18
  231. package/src/module/layout/repository/header-section.repository.ts +16 -16
  232. package/src/module/layout/service/header-section.service.ts +25 -25
  233. package/src/module/layout_preference/controller/layout_preference.controller.ts +76 -76
  234. package/src/module/layout_preference/entity/layout_preference.entity.ts +28 -28
  235. package/src/module/layout_preference/layout_preference.module.ts +22 -22
  236. package/src/module/layout_preference/repository/layout_preference.repository.ts +65 -65
  237. package/src/module/layout_preference/service/layout_preference.service.ts +191 -191
  238. package/src/module/linked_attributes/controller/linked_attributes.controller.ts +137 -137
  239. package/src/module/linked_attributes/dto/create-linked-attribute-smart.dto.ts +54 -54
  240. package/src/module/linked_attributes/entity/linked_attribute.entity.ts +51 -51
  241. package/src/module/linked_attributes/linked_attributes.module.ts +23 -23
  242. package/src/module/linked_attributes/repository/linked_attribute.repository.ts +12 -12
  243. package/src/module/linked_attributes/service/linked_attributes.service.ts +650 -650
  244. package/src/module/linked_attributes/test/linked-attributes.service.spec.ts +244 -244
  245. package/src/module/listmaster/controller/list-master.controller.ts +215 -208
  246. package/src/module/listmaster/entity/list-master-items.entity.ts +30 -30
  247. package/src/module/listmaster/entity/list-master.entity.ts +25 -25
  248. package/src/module/listmaster/listmaster.module.ts +46 -46
  249. package/src/module/listmaster/repository/list-master-items.repository.ts +262 -261
  250. package/src/module/listmaster/repository/list-master.repository.ts +60 -60
  251. package/src/module/listmaster/service/list-master-engine.ts +19 -19
  252. package/src/module/listmaster/service/list-master-extension.interface.ts +4 -4
  253. package/src/module/listmaster/service/list-master-item.service.ts +382 -382
  254. package/src/module/listmaster/service/list-master-registry.ts +15 -15
  255. package/src/module/listmaster/service/list-master.service.ts +774 -768
  256. package/src/module/mapper/controller/field-mapper.controller.ts +76 -76
  257. package/src/module/mapper/controller/mapper.controller.ts +20 -20
  258. package/src/module/mapper/dto/field-mapper.dto.ts +14 -14
  259. package/src/module/mapper/entity/field-lovs.entity.ts +15 -15
  260. package/src/module/mapper/entity/field-mapper.entity.ts +49 -49
  261. package/src/module/mapper/entity/mapper.entity.ts +9 -9
  262. package/src/module/mapper/mapper.module.ts +35 -35
  263. package/src/module/mapper/repository/field-lovs.repository.ts +35 -35
  264. package/src/module/mapper/repository/field-mapper.repository.ts +42 -42
  265. package/src/module/mapper/repository/mapper.repository.ts +32 -32
  266. package/src/module/mapper/service/field-mapper.service.ts +268 -268
  267. package/src/module/mapper/service/mapper.service.ts +80 -80
  268. package/src/module/master/controller/master.controller.ts +71 -71
  269. package/src/module/master/service/master.service.ts +460 -460
  270. package/src/module/master/service/poupulate-meta.service.ts +210 -210
  271. package/src/module/meta/controller/attribute-master.controller.ts +83 -83
  272. package/src/module/meta/controller/entity-dynamic.controller.ts +123 -123
  273. package/src/module/meta/controller/entity-master.controller.ts +41 -41
  274. package/src/module/meta/controller/entity-relation.controller.ts +36 -36
  275. package/src/module/meta/controller/entity.controller.ts +301 -301
  276. package/src/module/meta/controller/entity.public.controller.ts +76 -76
  277. package/src/module/meta/controller/media.controller.ts +162 -135
  278. package/src/module/meta/controller/meta.controller.ts +80 -80
  279. package/src/module/meta/controller/view-master.controller.ts +79 -79
  280. package/src/module/meta/dto/entity-list-data.dto.ts +6 -6
  281. package/src/module/meta/dto/entity-tab.dto.ts +4 -4
  282. package/src/module/meta/dto/entity-table.dto.ts +12 -12
  283. package/src/module/meta/entity/attribute-master.entity.ts +62 -62
  284. package/src/module/meta/entity/base-entity.entity.ts +52 -52
  285. package/src/module/meta/entity/dynamic.entity.ts +5 -5
  286. package/src/module/meta/entity/entity-master.entity.ts +53 -53
  287. package/src/module/meta/entity/entity-relation-data.entity.ts +24 -24
  288. package/src/module/meta/entity/entity-relation.entity.ts +18 -18
  289. package/src/module/meta/entity/entity-table-column.entity.ts +56 -56
  290. package/src/module/meta/entity/entity-table.entity.ts +45 -45
  291. package/src/module/meta/entity/media-data.entity.ts +35 -32
  292. package/src/module/meta/entity/preference.entity.ts +57 -57
  293. package/src/module/meta/entity/view-master.entity.ts +36 -36
  294. package/src/module/meta/entity.module.ts +153 -151
  295. package/src/module/meta/repository/attribute-master.repository.ts +206 -206
  296. package/src/module/meta/repository/entity-attribute-update.repository.ts +48 -48
  297. package/src/module/meta/repository/entity-master.repository.ts +120 -120
  298. package/src/module/meta/repository/entity-relation.repository.ts +36 -36
  299. package/src/module/meta/repository/entity-table-column.repository.ts +39 -39
  300. package/src/module/meta/repository/entity-table.repository.ts +53 -53
  301. package/src/module/meta/repository/media-data.repository.ts +50 -50
  302. package/src/module/meta/repository/preference.repository.ts +20 -20
  303. package/src/module/meta/repository/user-app-mapping.repository.ts +28 -28
  304. package/src/module/meta/repository/view-master.repository.ts +42 -42
  305. package/src/module/meta/service/attribute-master.service.ts +329 -329
  306. package/src/module/meta/service/common.service.ts +9 -9
  307. package/src/module/meta/service/entity-attribute-update.service.ts +26 -26
  308. package/src/module/meta/service/entity-dynamic.service.ts +1038 -1037
  309. package/src/module/meta/service/entity-master.service.ts +288 -288
  310. package/src/module/meta/service/entity-realation-data.service.ts +9 -9
  311. package/src/module/meta/service/entity-relation.service.ts +85 -85
  312. package/src/module/meta/service/entity-service-impl.service.ts +390 -394
  313. package/src/module/meta/service/entity-table-column.service.ts +26 -26
  314. package/src/module/meta/service/entity-table.service.ts +144 -157
  315. package/src/module/meta/service/entity-validation.service.ts +187 -187
  316. package/src/module/meta/service/entity.service.ts +48 -48
  317. package/src/module/meta/service/field-group.service.ts +103 -103
  318. package/src/module/meta/service/media-data.service.ts +397 -385
  319. package/src/module/meta/service/preference.service.ts +16 -16
  320. package/src/module/meta/service/resolver.service.ts +293 -260
  321. package/src/module/meta/service/section-master.service.ts +104 -104
  322. package/src/module/meta/service/update-form-json.service.ts +22 -22
  323. package/src/module/meta/service/user-app-mapping.service.ts +17 -17
  324. package/src/module/meta/service/view-master.service.ts +127 -127
  325. package/src/module/microservice-client/microservice-clients.module.ts +13 -13
  326. package/src/module/microservice-client/service/microservice-client-factory.ts +37 -37
  327. package/src/module/microservice-client/service/microservice-clients.ts +4 -4
  328. package/src/module/notification/controller/notification.controller.ts +58 -58
  329. package/src/module/notification/entity/notification.entity.ts +76 -76
  330. package/src/module/notification/entity/otp.entity.ts +28 -28
  331. package/src/module/notification/firebase-admin.config.ts +22 -22
  332. package/src/module/notification/notification.module.ts +65 -63
  333. package/src/module/notification/repository/notification.repository.ts +33 -0
  334. package/src/module/notification/repository/otp.repository.ts +27 -27
  335. package/src/module/notification/service/email.service.ts +142 -142
  336. package/src/module/notification/service/notification.service.ts +145 -163
  337. package/src/module/preference_master/entity/preference.entity.ts +25 -25
  338. package/src/module/preference_master/preference.service.ts +27 -27
  339. package/src/module/preference_master/repo/preference.repository.ts +36 -36
  340. package/src/module/third-party-module/entity/third-party-api-registry.entity.ts +52 -52
  341. package/src/module/third-party-module/repository/third-party-api-registry.repository.ts +20 -20
  342. package/src/module/third-party-module/service/api-registry.service.ts +13 -13
  343. package/src/module/third-party-module/third-party.module.ts +12 -12
  344. package/src/module/workflow/controller/action-category.controller.ts +54 -54
  345. package/src/module/workflow/controller/action-resource-mapping.controller.ts +23 -23
  346. package/src/module/workflow/controller/action-template-mapping.controller.ts +35 -35
  347. package/src/module/workflow/controller/action.controller.ts +111 -111
  348. package/src/module/workflow/controller/activity-log.controller.ts +55 -55
  349. package/src/module/workflow/controller/comm-template.controller.ts +43 -43
  350. package/src/module/workflow/controller/entity-modification.controller.ts +35 -35
  351. package/src/module/workflow/controller/form-master.controller.ts +43 -43
  352. package/src/module/workflow/controller/stage-group.controller.ts +49 -49
  353. package/src/module/workflow/controller/stage.controller.ts +51 -51
  354. package/src/module/workflow/controller/task.controller.ts +77 -77
  355. package/src/module/workflow/controller/workflow-list-master.controller.ts +44 -44
  356. package/src/module/workflow/controller/workflow-meta.controller.ts +80 -80
  357. package/src/module/workflow/controller/workflow.controller.ts +66 -66
  358. package/src/module/workflow/entity/action-category.entity.ts +33 -33
  359. package/src/module/workflow/entity/action-data.entity.ts +51 -51
  360. package/src/module/workflow/entity/action-resources-mapping.entity.ts +21 -21
  361. package/src/module/workflow/entity/action-template-mapping.entity.ts +12 -12
  362. package/src/module/workflow/entity/action.entity.ts +48 -48
  363. package/src/module/workflow/entity/activity-log.entity.ts +39 -39
  364. package/src/module/workflow/entity/comm-template.entity.ts +38 -38
  365. package/src/module/workflow/entity/entity-modification.entity.ts +33 -33
  366. package/src/module/workflow/entity/form.entity.ts +21 -21
  367. package/src/module/workflow/entity/stage-action-mapping.entity.ts +12 -12
  368. package/src/module/workflow/entity/stage-group.entity.ts +18 -18
  369. package/src/module/workflow/entity/stage-movement-data.entity.ts +33 -33
  370. package/src/module/workflow/entity/stage.entity.ts +15 -15
  371. package/src/module/workflow/entity/task-data.entity.ts +84 -84
  372. package/src/module/workflow/entity/template-attach-mapper.entity.ts +30 -30
  373. package/src/module/workflow/entity/workflow-data.entity.ts +6 -6
  374. package/src/module/workflow/entity/workflow-level-mapping.entity.ts +18 -18
  375. package/src/module/workflow/entity/workflow.entity.ts +15 -15
  376. package/src/module/workflow/repository/action-category.repository.ts +78 -78
  377. package/src/module/workflow/repository/action-data.repository.ts +353 -345
  378. package/src/module/workflow/repository/action.repository.ts +339 -339
  379. package/src/module/workflow/repository/activity-log.repository.ts +148 -148
  380. package/src/module/workflow/repository/comm-template.repository.ts +157 -157
  381. package/src/module/workflow/repository/form-master.repository.ts +50 -50
  382. package/src/module/workflow/repository/stage-group.repository.ts +186 -186
  383. package/src/module/workflow/repository/stage-movement.repository.ts +217 -217
  384. package/src/module/workflow/repository/stage.repository.ts +160 -160
  385. package/src/module/workflow/repository/task.repository.ts +156 -154
  386. package/src/module/workflow/repository/workflow.repository.ts +42 -42
  387. package/src/module/workflow/service/action-category.service.ts +32 -32
  388. package/src/module/workflow/service/action-data.service.ts +62 -62
  389. package/src/module/workflow/service/action-resources-mapping.service.ts +10 -10
  390. package/src/module/workflow/service/action-template-mapping.service.ts +137 -137
  391. package/src/module/workflow/service/action.service.ts +300 -300
  392. package/src/module/workflow/service/activity-log.service.ts +106 -106
  393. package/src/module/workflow/service/comm-template.service.ts +179 -179
  394. package/src/module/workflow/service/entity-modification.service.ts +63 -55
  395. package/src/module/workflow/service/form-master.service.ts +35 -35
  396. package/src/module/workflow/service/populate-workflow.service.ts +313 -313
  397. package/src/module/workflow/service/stage-action-mapping.service.ts +5 -5
  398. package/src/module/workflow/service/stage-group.service.ts +325 -325
  399. package/src/module/workflow/service/stage.service.ts +196 -196
  400. package/src/module/workflow/service/task.service.ts +547 -547
  401. package/src/module/workflow/service/workflow-list-master.service.ts +68 -68
  402. package/src/module/workflow/service/workflow-meta.service.ts +638 -638
  403. package/src/module/workflow/service/workflow.service.ts +212 -212
  404. package/src/module/workflow/workflow.module.ts +180 -180
  405. package/src/module/workflow-automation/SCHEDULING_GUIDE.md +145 -145
  406. package/src/module/workflow-automation/controller/workflow-automation.controller.ts +43 -43
  407. package/src/module/workflow-automation/entity/workflow-automation-action.entity.ts +26 -26
  408. package/src/module/workflow-automation/entity/workflow-automation.entity.ts +35 -35
  409. package/src/module/workflow-automation/interface/action.decorator.ts +7 -7
  410. package/src/module/workflow-automation/interface/action.interface.ts +5 -5
  411. package/src/module/workflow-automation/service/action-registery.service.ts +35 -35
  412. package/src/module/workflow-automation/service/schedule-handler.service.ts +167 -167
  413. package/src/module/workflow-automation/service/workflow-automation-engine.service.ts +219 -219
  414. package/src/module/workflow-automation/service/workflow-automation.service.ts +486 -486
  415. package/src/module/workflow-automation/workflow-automation.module.ts +55 -55
  416. package/src/module/workflow-schedule/INSTALLATION.md +244 -244
  417. package/src/module/workflow-schedule/MULTI_PROJECT_GUIDE.md +196 -196
  418. package/src/module/workflow-schedule/README.md +422 -422
  419. package/src/module/workflow-schedule/constants/schedule.constants.ts +48 -48
  420. package/src/module/workflow-schedule/controller/workflow-schedule.controller.ts +253 -253
  421. package/src/module/workflow-schedule/docs/CLAUDE_CODE_GUIDE.md +510 -510
  422. package/src/module/workflow-schedule/docs/CLAUDE_CODE_PROMPT.md +362 -362
  423. package/src/module/workflow-schedule/docs/RUN_CLAUDE_CODE.sh +68 -68
  424. package/src/module/workflow-schedule/dto/create-schedule.dto.ts +147 -147
  425. package/src/module/workflow-schedule/dto/get-execution-logs.dto.ts +119 -119
  426. package/src/module/workflow-schedule/dto/update-schedule.dto.ts +96 -96
  427. package/src/module/workflow-schedule/entities/scheduled-workflow.entity.ts +148 -148
  428. package/src/module/workflow-schedule/entities/workflow-execution-log.entity.ts +154 -154
  429. package/src/module/workflow-schedule/interfaces/schedule-job-data.interface.ts +51 -51
  430. package/src/module/workflow-schedule/interfaces/workflow-schedule-options.interface.ts +12 -12
  431. package/src/module/workflow-schedule/processors/schedule.processor.ts +616 -616
  432. package/src/module/workflow-schedule/service/workflow-schedule.service.ts +588 -588
  433. package/src/module/workflow-schedule/workflow-schedule.module.ts +67 -67
  434. package/src/resources/dev.properties.yaml +33 -33
  435. package/src/resources/local.properties.yaml +27 -27
  436. package/src/resources/properties.module.ts +12 -12
  437. package/src/resources/properties.yaml.ts +11 -11
  438. package/src/resources/uat.properties.yaml +31 -31
  439. package/src/table.config.ts +123 -123
  440. package/src/utils/dto/excel-data.dto.ts +14 -14
  441. package/src/utils/dto/excelsheet-data.dto.ts +5 -5
  442. package/src/utils/service/base64util.service.ts +18 -18
  443. package/src/utils/service/clockIDGenUtil.service.ts +21 -21
  444. package/src/utils/service/codeGenerator.service.ts +22 -22
  445. package/src/utils/service/dateUtil.service.ts +17 -17
  446. package/src/utils/service/encryptUtil.service.ts +97 -97
  447. package/src/utils/service/excel-helper.service.ts +72 -72
  448. package/src/utils/service/excelUtil.service.ts +15 -15
  449. package/src/utils/service/file-util.service.ts +11 -11
  450. package/src/utils/service/json-util.service.ts +23 -23
  451. package/src/utils/service/loggingUtil.service.ts +88 -88
  452. package/src/utils/service/reflection-helper.service.ts +62 -62
  453. package/src/utils/service/wbsCodeGen.service.ts +8 -8
  454. package/src/utils/utils.module.ts +27 -27
  455. package/tsconfig.build.json +4 -4
  456. package/tsconfig.json +24 -24
@@ -1,67 +1,67 @@
1
- // Entity Types
2
- export const ENTITYTYPE_USER = 'USR';
3
- export const ENTITYTYPE_ENTITYMASTER = 'EMS';
4
- export const ENTITYTYPE_ROLE = 'ROL';
5
- export const ENTITYTYPE_ENTITYTABLE = 'ETB';
6
- export const ENTITYTYPE_ENTITYTABLECOLUMN = 'ETC';
7
- export const ENTITYTYPE_PREFERENCEMASTER = 'PRM';
8
- export const ENTITYTYPE_VIEWMASTER = 'VMS';
9
- export const ENTITYTYPE_MEDIA = 'MDA';
10
- export const ENTITYTYPE_LISTMASTER = 'LIMS';
11
- export const ENTITYTYPE_LISTMASTERITEMS = 'LIMI';
12
- export const ENTITYTYPE_SECTIONMASTER = 'SEC';
13
- export const ENTITYTYPE_FIELDMASTER = 'FLD';
14
- export const ENTITYTYPE_USRROLMAP = 'URM';
15
- export const ENTITYTYPE_SAVEDFILTERMASTER = 'SFM';
16
- export const ENTITYTYPE_SAVEDFILTERDETAIL = 'SFD';
17
- export const ENTITYTYPE_ENTITY_RELATION = 'ENR';
18
- export const ENTITYTYPE_ENTITY_RELATION_DATA = 'ERD';
19
-
20
- export const STORAGETYPE_SINGLEJSON = 'singlejson';
21
- export const STORAGETYPE_COLUMN = 'column';
22
-
23
- // SECRET KEY
24
- export const secretKey: string = process.env.secret_key || '';
25
-
26
- // STATUS
27
- export const STATUS_ACTIVE = 'STATUS_ACTIVE';
28
- export const STATUS_INACTIVE = 'STATUS_INACTIVE';
29
- export const STATUS_PENDING = 'PENDING';
30
-
31
- // Invitation Status
32
- export const INVITATION_STATUS_SENT = 'SENT';
33
- export const INVITATION_STATUS_ACCEPTED = 'ACCEPTED';
34
-
35
- // Entity Status
36
- export const ENTITYSTATUS_TO_BE_PUBLISHED = 'to_be_published';
37
- export const ENTITYSTATUS_PUBLISHED = 'published';
38
-
39
- // Display Type
40
- export const DISPLAY_LIST = 'LIST';
41
- export const DISPLAY_EXPORT = 'EXPORT';
42
- export const DISPLAY_REPORT = 'REPORT';
43
-
44
- //WorkFlow Type
45
- export const WORKFLOW = 'WRFW';
46
- export const ACTION = 'WFAC';
47
- export const STAGE = 'WFS';
48
- export const STAGE_GROUP = 'WFSG';
49
- export const ACTION_CATEGORY = 'WFAC';
50
- export const WORKFLOW_AUTOMATION = 'WFAM';
51
- export const WORKFLOW_AUTOMATION_ACTION = 'WFAA';
52
- export const STAGE_ACTION_MAPPING = 'WFSA';
53
- export const COMM_TEMPLATE = 'TEM';
54
- export const ACTION_TEMPLATE_MAPPING = 'WFAT';
55
- export const WORKFLOW_DATA = 'WFDT';
56
- export const STAGE_MOVEMENT_DATA = 'STMV';
57
-
58
- export const ENTITY_MODIFICATION = 'ENMD';
59
- export const ACTION_RESOURCES_MAPPING = 'WFAR';
60
-
61
- // Form Status
62
- export const FORM_STATUS_TO_BE_SENT = 'TO_BE_SENT';
63
- export const FORM_STATUS_SENT = 'SENT';
64
- export const FORM_STATUS_SAVED = 'SAVED';
65
- export const FORM_STATUS_SUBMITTED = 'SUBMITTED';
66
- export const FORM_STATUS_RESUBMIT_REQUESTED = 'RESUBMIT_REQUESTED';
67
- export const FORM_STATUS_ACCEPTED = 'ACCEPTED';
1
+ // Entity Types
2
+ export const ENTITYTYPE_USER = 'USR';
3
+ export const ENTITYTYPE_ENTITYMASTER = 'EMS';
4
+ export const ENTITYTYPE_ROLE = 'ROL';
5
+ export const ENTITYTYPE_ENTITYTABLE = 'ETB';
6
+ export const ENTITYTYPE_ENTITYTABLECOLUMN = 'ETC';
7
+ export const ENTITYTYPE_PREFERENCEMASTER = 'PRM';
8
+ export const ENTITYTYPE_VIEWMASTER = 'VMS';
9
+ export const ENTITYTYPE_MEDIA = 'MDA';
10
+ export const ENTITYTYPE_LISTMASTER = 'LIMS';
11
+ export const ENTITYTYPE_LISTMASTERITEMS = 'LIMI';
12
+ export const ENTITYTYPE_SECTIONMASTER = 'SEC';
13
+ export const ENTITYTYPE_FIELDMASTER = 'FLD';
14
+ export const ENTITYTYPE_USRROLMAP = 'URM';
15
+ export const ENTITYTYPE_SAVEDFILTERMASTER = 'SFM';
16
+ export const ENTITYTYPE_SAVEDFILTERDETAIL = 'SFD';
17
+ export const ENTITYTYPE_ENTITY_RELATION = 'ENR';
18
+ export const ENTITYTYPE_ENTITY_RELATION_DATA = 'ERD';
19
+
20
+ export const STORAGETYPE_SINGLEJSON = 'singlejson';
21
+ export const STORAGETYPE_COLUMN = 'column';
22
+
23
+ // SECRET KEY
24
+ export const secretKey: string = process.env.secret_key || '';
25
+
26
+ // STATUS
27
+ export const STATUS_ACTIVE = 'STATUS_ACTIVE';
28
+ export const STATUS_INACTIVE = 'STATUS_INACTIVE';
29
+ export const STATUS_PENDING = 'PENDING';
30
+
31
+ // Invitation Status
32
+ export const INVITATION_STATUS_SENT = 'SENT';
33
+ export const INVITATION_STATUS_ACCEPTED = 'ACCEPTED';
34
+
35
+ // Entity Status
36
+ export const ENTITYSTATUS_TO_BE_PUBLISHED = 'to_be_published';
37
+ export const ENTITYSTATUS_PUBLISHED = 'published';
38
+
39
+ // Display Type
40
+ export const DISPLAY_LIST = 'LIST';
41
+ export const DISPLAY_EXPORT = 'EXPORT';
42
+ export const DISPLAY_REPORT = 'REPORT';
43
+
44
+ //WorkFlow Type
45
+ export const WORKFLOW = 'WRFW';
46
+ export const ACTION = 'WFAC';
47
+ export const STAGE = 'WFS';
48
+ export const STAGE_GROUP = 'WFSG';
49
+ export const ACTION_CATEGORY = 'WFAC';
50
+ export const WORKFLOW_AUTOMATION = 'WFAM';
51
+ export const WORKFLOW_AUTOMATION_ACTION = 'WFAA';
52
+ export const STAGE_ACTION_MAPPING = 'WFSA';
53
+ export const COMM_TEMPLATE = 'TEM';
54
+ export const ACTION_TEMPLATE_MAPPING = 'WFAT';
55
+ export const WORKFLOW_DATA = 'WFDT';
56
+ export const STAGE_MOVEMENT_DATA = 'STMV';
57
+
58
+ export const ENTITY_MODIFICATION = 'ENMD';
59
+ export const ACTION_RESOURCES_MAPPING = 'WFAR';
60
+
61
+ // Form Status
62
+ export const FORM_STATUS_TO_BE_SENT = 'TO_BE_SENT';
63
+ export const FORM_STATUS_SENT = 'SENT';
64
+ export const FORM_STATUS_SAVED = 'SAVED';
65
+ export const FORM_STATUS_SUBMITTED = 'SUBMITTED';
66
+ export const FORM_STATUS_RESUBMIT_REQUESTED = 'RESUBMIT_REQUESTED';
67
+ export const FORM_STATUS_ACCEPTED = 'ACCEPTED';
@@ -1,4 +1,4 @@
1
- export enum StatusConstant {
2
- ACTIVE = 'ACTIVE',
3
- INACTIVE = 'INACTIVE'
1
+ export enum StatusConstant {
2
+ ACTIVE = 'ACTIVE',
3
+ INACTIVE = 'INACTIVE'
4
4
  }
@@ -1,96 +1,96 @@
1
- import { Module, DynamicModule, Global } from '@nestjs/common';
2
- import { ConfigModule } from '@nestjs/config';
3
-
4
- import { UtilsModule } from './utils/utils.module';
5
- import { EntityModule } from './module/meta/entity.module';
6
- import { NotificationModule } from './module/notification/notification.module';
7
- import { LayoutModule } from './module/layout/layout.module';
8
- import { ListMasterModule } from './module/listmaster/listmaster.module';
9
- import { FilterModule } from './module/filter/filter.module';
10
- import { AuthModule } from './module/auth/auth.module';
11
- import { LayoutPreferenceModule } from './module/layout_preference/layout_preference.module';
12
- import { WorkflowModule } from './module/workflow/workflow.module';
13
- import { WorkflowAutomationModule } from './module/workflow-automation/workflow-automation.module';
14
- import { MapperModule } from './module/mapper/mapper.module';
15
- import { WorkflowScheduleModule } from './module/workflow-schedule/workflow-schedule.module';
16
- import { LinkedAttributesModule } from './module/linked_attributes/linked_attributes.module';
17
- import { ExportModule } from './module/export/export.module';
18
- import { EAVModule } from './module/eav/eav.module';
19
-
20
- @Global()
21
- @Module({})
22
- export class CoreModule {
23
- static forRootAsync(
24
- dbModule: DynamicModule,
25
- isSso: boolean,
26
- isWorkflow?: boolean,
27
- ): DynamicModule {
28
- if (!dbModule) {
29
- throw new Error('Database module must be provided.');
30
- }
31
-
32
- let importsArray: any = [];
33
- let exportsArray: any = [];
34
-
35
- if (isSso) {
36
- importsArray = [
37
- ConfigModule.forRoot({ isGlobal: true }),
38
- dbModule,
39
- LayoutModule,
40
- UtilsModule,
41
- AuthModule,
42
- NotificationModule,
43
- ];
44
- exportsArray = [
45
- ConfigModule,
46
- LayoutModule,
47
- UtilsModule,
48
- AuthModule,
49
- NotificationModule,
50
- ];
51
- } else {
52
- importsArray = [
53
- ConfigModule.forRoot({ isGlobal: true }),
54
- dbModule,
55
- EntityModule,
56
- UtilsModule,
57
- NotificationModule,
58
- ListMasterModule,
59
- FilterModule,
60
- AuthModule,
61
- LayoutPreferenceModule,
62
- WorkflowModule,
63
- WorkflowAutomationModule,
64
- WorkflowScheduleModule.forRoot({ is_workflow: isWorkflow }),
65
- MapperModule,
66
- LinkedAttributesModule,
67
- ExportModule,
68
- EAVModule
69
- ];
70
-
71
- exportsArray = [
72
- ConfigModule,
73
- EntityModule,
74
- AuthModule,
75
- UtilsModule,
76
- NotificationModule,
77
- ListMasterModule,
78
- FilterModule,
79
- LayoutPreferenceModule,
80
- MapperModule,
81
- WorkflowModule,
82
- WorkflowAutomationModule,
83
- WorkflowScheduleModule.forRoot({ is_workflow: isWorkflow }),
84
- LinkedAttributesModule,
85
- ExportModule,
86
- EAVModule
87
- ];
88
- }
89
-
90
- return {
91
- module: CoreModule,
92
- imports: importsArray,
93
- exports: exportsArray,
94
- };
95
- }
96
- }
1
+ import { Module, DynamicModule, Global } from '@nestjs/common';
2
+ import { ConfigModule } from '@nestjs/config';
3
+
4
+ import { UtilsModule } from './utils/utils.module';
5
+ import { EntityModule } from './module/meta/entity.module';
6
+ import { NotificationModule } from './module/notification/notification.module';
7
+ import { LayoutModule } from './module/layout/layout.module';
8
+ import { ListMasterModule } from './module/listmaster/listmaster.module';
9
+ import { FilterModule } from './module/filter/filter.module';
10
+ import { AuthModule } from './module/auth/auth.module';
11
+ import { LayoutPreferenceModule } from './module/layout_preference/layout_preference.module';
12
+ import { WorkflowModule } from './module/workflow/workflow.module';
13
+ import { WorkflowAutomationModule } from './module/workflow-automation/workflow-automation.module';
14
+ import { MapperModule } from './module/mapper/mapper.module';
15
+ import { WorkflowScheduleModule } from './module/workflow-schedule/workflow-schedule.module';
16
+ import { LinkedAttributesModule } from './module/linked_attributes/linked_attributes.module';
17
+ import { ExportModule } from './module/export/export.module';
18
+ import { EAVModule } from './module/eav/eav.module';
19
+
20
+ @Global()
21
+ @Module({})
22
+ export class CoreModule {
23
+ static forRootAsync(
24
+ dbModule: DynamicModule,
25
+ isSso: boolean,
26
+ isWorkflow?: boolean,
27
+ ): DynamicModule {
28
+ if (!dbModule) {
29
+ throw new Error('Database module must be provided.');
30
+ }
31
+
32
+ let importsArray: any = [];
33
+ let exportsArray: any = [];
34
+
35
+ if (isSso) {
36
+ importsArray = [
37
+ ConfigModule.forRoot({ isGlobal: true }),
38
+ dbModule,
39
+ LayoutModule,
40
+ UtilsModule,
41
+ AuthModule,
42
+ NotificationModule,
43
+ ];
44
+ exportsArray = [
45
+ ConfigModule,
46
+ LayoutModule,
47
+ UtilsModule,
48
+ AuthModule,
49
+ NotificationModule,
50
+ ];
51
+ } else {
52
+ importsArray = [
53
+ ConfigModule.forRoot({ isGlobal: true }),
54
+ dbModule,
55
+ EntityModule,
56
+ UtilsModule,
57
+ NotificationModule,
58
+ ListMasterModule,
59
+ FilterModule,
60
+ AuthModule,
61
+ LayoutPreferenceModule,
62
+ WorkflowModule,
63
+ WorkflowAutomationModule,
64
+ WorkflowScheduleModule.forRoot({ is_workflow: isWorkflow }),
65
+ MapperModule,
66
+ LinkedAttributesModule,
67
+ ExportModule,
68
+ EAVModule
69
+ ];
70
+
71
+ exportsArray = [
72
+ ConfigModule,
73
+ EntityModule,
74
+ AuthModule,
75
+ UtilsModule,
76
+ NotificationModule,
77
+ ListMasterModule,
78
+ FilterModule,
79
+ LayoutPreferenceModule,
80
+ MapperModule,
81
+ WorkflowModule,
82
+ WorkflowAutomationModule,
83
+ WorkflowScheduleModule.forRoot({ is_workflow: isWorkflow }),
84
+ LinkedAttributesModule,
85
+ ExportModule,
86
+ EAVModule
87
+ ];
88
+ }
89
+
90
+ return {
91
+ module: CoreModule,
92
+ imports: importsArray,
93
+ exports: exportsArray,
94
+ };
95
+ }
96
+ }
@@ -1,7 +1,7 @@
1
- import { applyDecorators, SetMetadata } from '@nestjs/common';
2
-
3
- export const Roles = (moduleCode: string, actions: string) =>
4
- applyDecorators(
5
- SetMetadata('moduleCode', moduleCode),
6
- SetMetadata('actions', actions),
7
- );
1
+ import { applyDecorators, SetMetadata } from '@nestjs/common';
2
+
3
+ export const Roles = (moduleCode: string, actions: string) =>
4
+ applyDecorators(
5
+ SetMetadata('moduleCode', moduleCode),
6
+ SetMetadata('actions', actions),
7
+ );
@@ -1,6 +1,6 @@
1
- // dto/service-result.dto.ts
2
- export interface ServiceResult<T = any> {
3
- success: boolean;
4
- data?: T;
5
- error?: string;
6
- }
1
+ // dto/service-result.dto.ts
2
+ export interface ServiceResult<T = any> {
3
+ success: boolean;
4
+ data?: T;
5
+ error?: string;
6
+ }
@@ -1,5 +1,5 @@
1
- export interface ServiceResult<T = any> {
2
- success: boolean;
3
- data?: T;
4
- error?: string;
5
- }
1
+ export interface ServiceResult<T = any> {
2
+ success: boolean;
3
+ data?: T;
4
+ error?: string;
5
+ }
package/src/index.ts CHANGED
@@ -1 +1 @@
1
- export * from './core.module'
1
+ export * from './core.module'
@@ -1,65 +1,65 @@
1
- import { Module, OnModuleInit } from '@nestjs/common';
2
- import { ConfigModule, ConfigService } from '@nestjs/config';
3
- import { JwtModule } from '@nestjs/jwt';
4
- import { JwtStrategy } from './strategies/jwt.strategy';
5
- import { JwtAuthService } from './services/jwt.service';
6
- import { JwtAuthGuard } from './guards/jwt.guard';
7
- import { PassportModule } from '@nestjs/passport';
8
- import { GoogleStrategy } from './strategies/google.strategy';
9
- import { AuthService } from './services/auth.service';
10
- import { AuthController } from './controller/auth.controller';
11
- import { RedisModule, RedisService } from '@liaoliaots/nestjs-redis';
12
- import { Redis } from 'ioredis';
13
- import { redisConfigFactory } from '../../config/redis.config';
14
-
15
- @Module({
16
- imports: [
17
- ConfigModule, // ✅ Ensure ConfigModule is imported
18
- PassportModule.register({ defaultStrategy: 'jwt' }),
19
- JwtModule.registerAsync({
20
- imports: [ConfigModule],
21
- inject: [ConfigService],
22
- useFactory: async (configService: ConfigService) => {
23
- const expiryInHours = parseFloat(
24
- configService.get('TOKEN_EXPIRY') || '1',
25
- );
26
- const expiryInSeconds = expiryInHours * 60 * 60;
27
-
28
- return {
29
- secret: configService.get('SECRET_KEY'),
30
- signOptions: { expiresIn: expiryInSeconds },
31
- };
32
- },
33
- }),
34
- // Use centralized Redis configuration with named 'cache' connection
35
- RedisModule.forRootAsync(redisConfigFactory),
36
- ],
37
- controllers: [AuthController],
38
- providers: [
39
- JwtAuthService,
40
- JwtStrategy,
41
- JwtAuthGuard,
42
- GoogleStrategy,
43
- AuthService,
44
- ],
45
- exports: [JwtAuthService, JwtAuthGuard, AuthService],
46
- })
47
- export class AuthModule implements OnModuleInit {
48
- constructor(private readonly redisService: RedisService) {}
49
-
50
- async onModuleInit() {
51
- // Get the named 'cache' connection (DB 1)
52
- const redis: Redis = this.redisService.getOrThrow('cache');
53
-
54
- // TEST WRITE
55
- await redis.set('PING_TEST', 'PONG', 'EX', 10000);
56
-
57
- // TEST READ
58
- const value = await redis.get('PING_TEST');
59
- console.log(`[Cache Redis DB 1] Read: ${value}`);
60
-
61
- // TEST PING
62
- const ping = await redis.ping();
63
- console.log(`[Cache Redis DB 1] PING reply: ${ping}`);
64
- }
65
- }
1
+ import { Module, OnModuleInit } from '@nestjs/common';
2
+ import { ConfigModule, ConfigService } from '@nestjs/config';
3
+ import { JwtModule } from '@nestjs/jwt';
4
+ import { JwtStrategy } from './strategies/jwt.strategy';
5
+ import { JwtAuthService } from './services/jwt.service';
6
+ import { JwtAuthGuard } from './guards/jwt.guard';
7
+ import { PassportModule } from '@nestjs/passport';
8
+ import { GoogleStrategy } from './strategies/google.strategy';
9
+ import { AuthService } from './services/auth.service';
10
+ import { AuthController } from './controller/auth.controller';
11
+ import { RedisModule, RedisService } from '@liaoliaots/nestjs-redis';
12
+ import { Redis } from 'ioredis';
13
+ import { redisConfigFactory } from '../../config/redis.config';
14
+
15
+ @Module({
16
+ imports: [
17
+ ConfigModule, // ✅ Ensure ConfigModule is imported
18
+ PassportModule.register({ defaultStrategy: 'jwt' }),
19
+ JwtModule.registerAsync({
20
+ imports: [ConfigModule],
21
+ inject: [ConfigService],
22
+ useFactory: async (configService: ConfigService) => {
23
+ const expiryInHours = parseFloat(
24
+ configService.get('TOKEN_EXPIRY') || '1',
25
+ );
26
+ const expiryInSeconds = expiryInHours * 60 * 60;
27
+
28
+ return {
29
+ secret: configService.get('SECRET_KEY'),
30
+ signOptions: { expiresIn: expiryInSeconds },
31
+ };
32
+ },
33
+ }),
34
+ // Use centralized Redis configuration with named 'cache' connection
35
+ RedisModule.forRootAsync(redisConfigFactory),
36
+ ],
37
+ controllers: [AuthController],
38
+ providers: [
39
+ JwtAuthService,
40
+ JwtStrategy,
41
+ JwtAuthGuard,
42
+ GoogleStrategy,
43
+ AuthService,
44
+ ],
45
+ exports: [JwtAuthService, JwtAuthGuard, AuthService],
46
+ })
47
+ export class AuthModule implements OnModuleInit {
48
+ constructor(private readonly redisService: RedisService) {}
49
+
50
+ async onModuleInit() {
51
+ // Get the named 'cache' connection (DB 1)
52
+ const redis: Redis = this.redisService.getOrThrow('cache');
53
+
54
+ // TEST WRITE
55
+ await redis.set('PING_TEST', 'PONG', 'EX', 10000);
56
+
57
+ // TEST READ
58
+ const value = await redis.get('PING_TEST');
59
+ console.log(`[Cache Redis DB 1] Read: ${value}`);
60
+
61
+ // TEST PING
62
+ const ping = await redis.ping();
63
+ console.log(`[Cache Redis DB 1] PING reply: ${ping}`);
64
+ }
65
+ }
@@ -1,28 +1,28 @@
1
- import { Body, Controller, Post, Req, UseGuards } from '@nestjs/common';
2
- import { JwtAuthGuard } from 'src/module/auth/guards/jwt.guard';
3
- import { AuthService } from '../services/auth.service';
4
- import { UAParser } from 'ua-parser-js';
5
-
6
- @Controller('auth')
7
- export class AuthController {
8
- constructor(private readonly authService: AuthService) {}
9
-
10
- // @Post('fcmtoken')
11
- // @UseGuards(JwtAuthGuard)
12
- // async getDashboard(@Req() req: any, @Body('fcmtoken') fcmtoken: string) {
13
- // const loggedInUser = req.user.userData;
14
-
15
- // const ip =
16
- // (req.headers['x-forwarded-for'] as string)?.split(',')[0].trim() ||
17
- // req.socket.remoteAddress ||
18
- // req.ip ||
19
- // '';
20
-
21
- // const userAgent = req.headers['user-agent'] || '';
22
- // const parser = new UAParser(userAgent);
23
- // const browser = parser.getBrowser().name || 'Unknown';
24
- // const os = parser.getOS().name || 'Unknown';
25
-
26
- // return this.authService.fcmtoken(fcmtoken, loggedInUser, ip, browser, os);
27
- // }
28
- }
1
+ import { Body, Controller, Post, Req, UseGuards } from '@nestjs/common';
2
+ import { JwtAuthGuard } from 'src/module/auth/guards/jwt.guard';
3
+ import { AuthService } from '../services/auth.service';
4
+ import { UAParser } from 'ua-parser-js';
5
+
6
+ @Controller('auth')
7
+ export class AuthController {
8
+ constructor(private readonly authService: AuthService) {}
9
+
10
+ // @Post('fcmtoken')
11
+ // @UseGuards(JwtAuthGuard)
12
+ // async getDashboard(@Req() req: any, @Body('fcmtoken') fcmtoken: string) {
13
+ // const loggedInUser = req.user.userData;
14
+
15
+ // const ip =
16
+ // (req.headers['x-forwarded-for'] as string)?.split(',')[0].trim() ||
17
+ // req.socket.remoteAddress ||
18
+ // req.ip ||
19
+ // '';
20
+
21
+ // const userAgent = req.headers['user-agent'] || '';
22
+ // const parser = new UAParser(userAgent);
23
+ // const browser = parser.getBrowser().name || 'Unknown';
24
+ // const os = parser.getOS().name || 'Unknown';
25
+
26
+ // return this.authService.fcmtoken(fcmtoken, loggedInUser, ip, browser, os);
27
+ // }
28
+ }