@carlonicora/nestjs-neo4jsonapi 1.115.0 → 1.116.0

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 (395) hide show
  1. package/dist/bootstrap/app.module.factory.d.ts.map +1 -1
  2. package/dist/bootstrap/app.module.factory.js +1 -0
  3. package/dist/bootstrap/app.module.factory.js.map +1 -1
  4. package/dist/bootstrap/bootstrap.options.d.ts +17 -0
  5. package/dist/bootstrap/bootstrap.options.d.ts.map +1 -1
  6. package/dist/common/guards/jwt.auth.guard.d.ts +3 -2
  7. package/dist/common/guards/jwt.auth.guard.d.ts.map +1 -1
  8. package/dist/common/guards/jwt.auth.guard.js +7 -2
  9. package/dist/common/guards/jwt.auth.guard.js.map +1 -1
  10. package/dist/common/interfaces/entity.schema.interface.d.ts +2 -0
  11. package/dist/common/interfaces/entity.schema.interface.d.ts.map +1 -1
  12. package/dist/common/tokens.d.ts +64 -0
  13. package/dist/common/tokens.d.ts.map +1 -1
  14. package/dist/common/tokens.js +37 -2
  15. package/dist/common/tokens.js.map +1 -1
  16. package/dist/config/base.config.d.ts.map +1 -1
  17. package/dist/config/base.config.js +1 -0
  18. package/dist/config/base.config.js.map +1 -1
  19. package/dist/config/enums/queue.id.d.ts +2 -1
  20. package/dist/config/enums/queue.id.d.ts.map +1 -1
  21. package/dist/config/enums/queue.id.js +1 -0
  22. package/dist/config/enums/queue.id.js.map +1 -1
  23. package/dist/config/interfaces/config.auth.interface.d.ts +7 -0
  24. package/dist/config/interfaces/config.auth.interface.d.ts.map +1 -1
  25. package/dist/config/interfaces/config.email.interface.d.ts +6 -0
  26. package/dist/config/interfaces/config.email.interface.d.ts.map +1 -1
  27. package/dist/core/email/services/email.service.d.ts +1 -0
  28. package/dist/core/email/services/email.service.d.ts.map +1 -1
  29. package/dist/core/email/services/email.service.js +22 -18
  30. package/dist/core/email/services/email.service.js.map +1 -1
  31. package/dist/core/llm/services/llm.service.d.ts +9 -1
  32. package/dist/core/llm/services/llm.service.d.ts.map +1 -1
  33. package/dist/core/llm/services/llm.service.js +13 -3
  34. package/dist/core/llm/services/llm.service.js.map +1 -1
  35. package/dist/core/neo4j/abstracts/abstract.repository.d.ts.map +1 -1
  36. package/dist/core/neo4j/abstracts/abstract.repository.js +33 -2
  37. package/dist/core/neo4j/abstracts/abstract.repository.js.map +1 -1
  38. package/dist/foundations/auth/auth.module.d.ts.map +1 -1
  39. package/dist/foundations/auth/auth.module.js +9 -10
  40. package/dist/foundations/auth/auth.module.js.map +1 -1
  41. package/dist/foundations/auth/controllers/auth.controller.d.ts.map +1 -1
  42. package/dist/foundations/auth/controllers/auth.controller.js +5 -0
  43. package/dist/foundations/auth/controllers/auth.controller.js.map +1 -1
  44. package/dist/foundations/auth/controllers/auth.discord.controller.d.ts.map +1 -1
  45. package/dist/foundations/auth/controllers/auth.discord.controller.js +6 -3
  46. package/dist/foundations/auth/controllers/auth.discord.controller.js.map +1 -1
  47. package/dist/foundations/auth/controllers/auth.google.controller.d.ts.map +1 -1
  48. package/dist/foundations/auth/controllers/auth.google.controller.js +7 -3
  49. package/dist/foundations/auth/controllers/auth.google.controller.js.map +1 -1
  50. package/dist/foundations/auth/entities/auth.code.d.ts +34 -0
  51. package/dist/foundations/auth/entities/auth.code.d.ts.map +1 -0
  52. package/dist/foundations/auth/entities/auth.code.js +53 -0
  53. package/dist/foundations/auth/entities/auth.code.js.map +1 -0
  54. package/dist/foundations/auth/entities/auth.d.ts +41 -0
  55. package/dist/foundations/auth/entities/auth.d.ts.map +1 -0
  56. package/dist/foundations/auth/entities/auth.js +68 -0
  57. package/dist/foundations/auth/entities/auth.js.map +1 -0
  58. package/dist/foundations/auth/entities/pending-auth.d.ts +39 -0
  59. package/dist/foundations/auth/entities/pending-auth.d.ts.map +1 -0
  60. package/dist/foundations/auth/entities/pending-auth.js +41 -0
  61. package/dist/foundations/auth/entities/pending-auth.js.map +1 -0
  62. package/dist/foundations/auth/index.d.ts +13 -0
  63. package/dist/foundations/auth/index.d.ts.map +1 -1
  64. package/dist/foundations/auth/index.js +31 -1
  65. package/dist/foundations/auth/index.js.map +1 -1
  66. package/dist/foundations/auth/repositories/auth.repository.d.ts +49 -9
  67. package/dist/foundations/auth/repositories/auth.repository.d.ts.map +1 -1
  68. package/dist/foundations/auth/repositories/auth.repository.js +115 -63
  69. package/dist/foundations/auth/repositories/auth.repository.js.map +1 -1
  70. package/dist/foundations/auth/services/auth.discord.service.d.ts +1 -1
  71. package/dist/foundations/auth/services/auth.discord.service.d.ts.map +1 -1
  72. package/dist/foundations/auth/services/auth.discord.service.js +5 -2
  73. package/dist/foundations/auth/services/auth.discord.service.js.map +1 -1
  74. package/dist/foundations/auth/services/auth.google.service.d.ts +1 -1
  75. package/dist/foundations/auth/services/auth.google.service.d.ts.map +1 -1
  76. package/dist/foundations/auth/services/auth.google.service.js +6 -2
  77. package/dist/foundations/auth/services/auth.google.service.js.map +1 -1
  78. package/dist/foundations/auth/services/auth.service.d.ts +42 -7
  79. package/dist/foundations/auth/services/auth.service.d.ts.map +1 -1
  80. package/dist/foundations/auth/services/auth.service.js +140 -77
  81. package/dist/foundations/auth/services/auth.service.js.map +1 -1
  82. package/dist/foundations/company/entities/company.d.ts +1 -1
  83. package/dist/foundations/company/entities/company.d.ts.map +1 -1
  84. package/dist/foundations/company/entities/company.js +15 -1
  85. package/dist/foundations/company/entities/company.js.map +1 -1
  86. package/dist/foundations/company/index.d.ts +5 -0
  87. package/dist/foundations/company/index.d.ts.map +1 -1
  88. package/dist/foundations/company/index.js +16 -1
  89. package/dist/foundations/company/index.js.map +1 -1
  90. package/dist/foundations/company/processors/company.processor.js +1 -1
  91. package/dist/foundations/company/processors/company.processor.js.map +1 -1
  92. package/dist/foundations/company/repositories/company.repository.d.ts +65 -9
  93. package/dist/foundations/company/repositories/company.repository.d.ts.map +1 -1
  94. package/dist/foundations/company/repositories/company.repository.js +59 -18
  95. package/dist/foundations/company/repositories/company.repository.js.map +1 -1
  96. package/dist/foundations/company/services/company.service.d.ts +44 -4
  97. package/dist/foundations/company/services/company.service.d.ts.map +1 -1
  98. package/dist/foundations/company/services/company.service.js +33 -7
  99. package/dist/foundations/company/services/company.service.js.map +1 -1
  100. package/dist/foundations/content/content.module.d.ts +20 -8
  101. package/dist/foundations/content/content.module.d.ts.map +1 -1
  102. package/dist/foundations/content/content.module.js +40 -24
  103. package/dist/foundations/content/content.module.js.map +1 -1
  104. package/dist/foundations/content/controllers/content.controller.d.ts +1 -1
  105. package/dist/foundations/content/controllers/content.controller.d.ts.map +1 -1
  106. package/dist/foundations/content/controllers/content.controller.js +2 -2
  107. package/dist/foundations/content/controllers/content.controller.js.map +1 -1
  108. package/dist/foundations/content/entities/content.d.ts +74 -0
  109. package/dist/foundations/content/entities/content.d.ts.map +1 -0
  110. package/dist/foundations/content/entities/content.js +141 -0
  111. package/dist/foundations/content/entities/content.js.map +1 -0
  112. package/dist/foundations/content/index.d.ts +2 -4
  113. package/dist/foundations/content/index.d.ts.map +1 -1
  114. package/dist/foundations/content/index.js +6 -5
  115. package/dist/foundations/content/index.js.map +1 -1
  116. package/dist/foundations/content/interfaces/content.extension.interface.d.ts +126 -0
  117. package/dist/foundations/content/interfaces/content.extension.interface.d.ts.map +1 -1
  118. package/dist/foundations/content/interfaces/content.extension.interface.js +7 -1
  119. package/dist/foundations/content/interfaces/content.extension.interface.js.map +1 -1
  120. package/dist/foundations/content/repositories/content.repository.d.ts +14 -7
  121. package/dist/foundations/content/repositories/content.repository.d.ts.map +1 -1
  122. package/dist/foundations/content/repositories/content.repository.js +18 -16
  123. package/dist/foundations/content/repositories/content.repository.js.map +1 -1
  124. package/dist/foundations/content/services/content.cypher.service.d.ts +19 -0
  125. package/dist/foundations/content/services/content.cypher.service.d.ts.map +1 -1
  126. package/dist/foundations/content/services/content.cypher.service.js +65 -4
  127. package/dist/foundations/content/services/content.cypher.service.js.map +1 -1
  128. package/dist/foundations/content/services/content.service.js +4 -4
  129. package/dist/foundations/content/services/content.service.js.map +1 -1
  130. package/dist/foundations/discord-user/services/discord-user.service.js +2 -2
  131. package/dist/foundations/discord-user/services/discord-user.service.js.map +1 -1
  132. package/dist/foundations/feature/entities/feature.d.ts +32 -0
  133. package/dist/foundations/feature/entities/feature.d.ts.map +1 -0
  134. package/dist/foundations/feature/entities/feature.js +64 -0
  135. package/dist/foundations/feature/entities/feature.js.map +1 -0
  136. package/dist/foundations/feature/entities/feature.model.d.ts +1 -3
  137. package/dist/foundations/feature/entities/feature.model.d.ts.map +1 -1
  138. package/dist/foundations/feature/entities/feature.model.js +3 -11
  139. package/dist/foundations/feature/entities/feature.model.js.map +1 -1
  140. package/dist/foundations/feature/feature.module.d.ts.map +1 -1
  141. package/dist/foundations/feature/feature.module.js +4 -5
  142. package/dist/foundations/feature/feature.module.js.map +1 -1
  143. package/dist/foundations/feature/index.d.ts +12 -0
  144. package/dist/foundations/feature/index.d.ts.map +1 -1
  145. package/dist/foundations/feature/index.js +22 -1
  146. package/dist/foundations/feature/index.js.map +1 -1
  147. package/dist/foundations/feature/repositories/feature.repository.d.ts +37 -13
  148. package/dist/foundations/feature/repositories/feature.repository.d.ts.map +1 -1
  149. package/dist/foundations/feature/repositories/feature.repository.js +41 -35
  150. package/dist/foundations/feature/repositories/feature.repository.js.map +1 -1
  151. package/dist/foundations/feature/services/feature.service.d.ts +31 -4
  152. package/dist/foundations/feature/services/feature.service.d.ts.map +1 -1
  153. package/dist/foundations/feature/services/feature.service.js +20 -12
  154. package/dist/foundations/feature/services/feature.service.js.map +1 -1
  155. package/dist/foundations/foundations.modules.d.ts +6 -0
  156. package/dist/foundations/foundations.modules.d.ts.map +1 -1
  157. package/dist/foundations/foundations.modules.js +14 -3
  158. package/dist/foundations/foundations.modules.js.map +1 -1
  159. package/dist/foundations/google-user/services/google-user.service.js +2 -2
  160. package/dist/foundations/google-user/services/google-user.service.js.map +1 -1
  161. package/dist/foundations/index.d.ts +3 -0
  162. package/dist/foundations/index.d.ts.map +1 -1
  163. package/dist/foundations/index.js +3 -0
  164. package/dist/foundations/index.js.map +1 -1
  165. package/dist/foundations/membership/entities/membership.d.ts.map +1 -1
  166. package/dist/foundations/membership/entities/membership.js +4 -0
  167. package/dist/foundations/membership/entities/membership.js.map +1 -1
  168. package/dist/foundations/notification/controllers/notification.controller.js +2 -2
  169. package/dist/foundations/notification/controllers/notification.controller.js.map +1 -1
  170. package/dist/foundations/notification/entities/notification.d.ts +75 -0
  171. package/dist/foundations/notification/entities/notification.d.ts.map +1 -0
  172. package/dist/foundations/notification/entities/notification.js +73 -0
  173. package/dist/foundations/notification/entities/notification.js.map +1 -0
  174. package/dist/foundations/notification/index.d.ts +6 -2
  175. package/dist/foundations/notification/index.d.ts.map +1 -1
  176. package/dist/foundations/notification/index.js +17 -3
  177. package/dist/foundations/notification/index.js.map +1 -1
  178. package/dist/foundations/notification/notification.module.d.ts.map +1 -1
  179. package/dist/foundations/notification/notification.module.js +3 -4
  180. package/dist/foundations/notification/notification.module.js.map +1 -1
  181. package/dist/foundations/notification/repositories/notification.repository.d.ts +125 -8
  182. package/dist/foundations/notification/repositories/notification.repository.d.ts.map +1 -1
  183. package/dist/foundations/notification/repositories/notification.repository.js +219 -20
  184. package/dist/foundations/notification/repositories/notification.repository.js.map +1 -1
  185. package/dist/foundations/notification/services/notification.service.d.ts +31 -5
  186. package/dist/foundations/notification/services/notification.service.d.ts.map +1 -1
  187. package/dist/foundations/notification/services/notification.service.js +26 -9
  188. package/dist/foundations/notification/services/notification.service.js.map +1 -1
  189. package/dist/foundations/rbac/dump.d.ts +48 -4
  190. package/dist/foundations/rbac/dump.d.ts.map +1 -1
  191. package/dist/foundations/rbac/dump.js +28 -4
  192. package/dist/foundations/rbac/dump.js.map +1 -1
  193. package/dist/foundations/rbac/serializer/matrix-to-ts.d.ts +14 -0
  194. package/dist/foundations/rbac/serializer/matrix-to-ts.d.ts.map +1 -1
  195. package/dist/foundations/rbac/serializer/matrix-to-ts.js +13 -3
  196. package/dist/foundations/rbac/serializer/matrix-to-ts.js.map +1 -1
  197. package/dist/foundations/relevancy/repositories/relevancy.repository.d.ts.map +1 -1
  198. package/dist/foundations/relevancy/repositories/relevancy.repository.js +13 -1
  199. package/dist/foundations/relevancy/repositories/relevancy.repository.js.map +1 -1
  200. package/dist/foundations/role/entities/role.d.ts +1 -1
  201. package/dist/foundations/role/entities/role.d.ts.map +1 -1
  202. package/dist/foundations/stripe/index.d.ts +3 -0
  203. package/dist/foundations/stripe/index.d.ts.map +1 -1
  204. package/dist/foundations/stripe/index.js +6 -0
  205. package/dist/foundations/stripe/index.js.map +1 -1
  206. package/dist/foundations/stripe-price/entities/stripe-price.entity.d.ts +1 -1
  207. package/dist/foundations/stripe-price/entities/stripe-price.entity.d.ts.map +1 -1
  208. package/dist/foundations/tokenusage/entities/tokenusage.d.ts +49 -0
  209. package/dist/foundations/tokenusage/entities/tokenusage.d.ts.map +1 -0
  210. package/dist/foundations/tokenusage/entities/tokenusage.js +64 -0
  211. package/dist/foundations/tokenusage/entities/tokenusage.js.map +1 -0
  212. package/dist/foundations/tokenusage/index.d.ts +2 -2
  213. package/dist/foundations/tokenusage/index.d.ts.map +1 -1
  214. package/dist/foundations/tokenusage/index.js +5 -3
  215. package/dist/foundations/tokenusage/index.js.map +1 -1
  216. package/dist/foundations/tokenusage/repositories/tokenusage.repository.d.ts +33 -5
  217. package/dist/foundations/tokenusage/repositories/tokenusage.repository.d.ts.map +1 -1
  218. package/dist/foundations/tokenusage/repositories/tokenusage.repository.js +40 -14
  219. package/dist/foundations/tokenusage/repositories/tokenusage.repository.js.map +1 -1
  220. package/dist/foundations/tokenusage/services/tokenusage.service.d.ts +36 -9
  221. package/dist/foundations/tokenusage/services/tokenusage.service.d.ts.map +1 -1
  222. package/dist/foundations/tokenusage/services/tokenusage.service.js +32 -3
  223. package/dist/foundations/tokenusage/services/tokenusage.service.js.map +1 -1
  224. package/dist/foundations/tokenusage/tokenusage.module.js +3 -3
  225. package/dist/foundations/tokenusage/tokenusage.module.js.map +1 -1
  226. package/dist/foundations/user/controllers/user.controller.js +4 -4
  227. package/dist/foundations/user/controllers/user.controller.js.map +1 -1
  228. package/dist/foundations/user/dtos/user.put.dto.d.ts +1 -1
  229. package/dist/foundations/user/dtos/user.put.dto.d.ts.map +1 -1
  230. package/dist/foundations/user/dtos/user.put.dto.js +1 -1
  231. package/dist/foundations/user/dtos/user.put.dto.js.map +1 -1
  232. package/dist/foundations/user/entities/user.d.ts +4 -0
  233. package/dist/foundations/user/entities/user.d.ts.map +1 -1
  234. package/dist/foundations/user/entities/user.js +18 -4
  235. package/dist/foundations/user/entities/user.js.map +1 -1
  236. package/dist/foundations/user/index.d.ts +6 -1
  237. package/dist/foundations/user/index.d.ts.map +1 -1
  238. package/dist/foundations/user/index.js +13 -1
  239. package/dist/foundations/user/index.js.map +1 -1
  240. package/dist/foundations/user/repositories/user.repository.d.ts +56 -11
  241. package/dist/foundations/user/repositories/user.repository.d.ts.map +1 -1
  242. package/dist/foundations/user/repositories/user.repository.js +55 -35
  243. package/dist/foundations/user/repositories/user.repository.js.map +1 -1
  244. package/dist/foundations/user/services/user.service.d.ts +48 -9
  245. package/dist/foundations/user/services/user.service.d.ts.map +1 -1
  246. package/dist/foundations/user/services/user.service.js +50 -32
  247. package/dist/foundations/user/services/user.service.js.map +1 -1
  248. package/dist/foundations/user-activity/entities/user-activity.d.ts +36 -0
  249. package/dist/foundations/user-activity/entities/user-activity.d.ts.map +1 -0
  250. package/dist/foundations/user-activity/entities/user-activity.js +86 -0
  251. package/dist/foundations/user-activity/entities/user-activity.js.map +1 -0
  252. package/dist/foundations/user-activity/entities/user-activity.meta.d.ts +3 -0
  253. package/dist/foundations/user-activity/entities/user-activity.meta.d.ts.map +1 -0
  254. package/dist/foundations/user-activity/entities/user-activity.meta.js +10 -0
  255. package/dist/foundations/user-activity/entities/user-activity.meta.js.map +1 -0
  256. package/dist/foundations/user-activity/index.d.ts +10 -0
  257. package/dist/foundations/user-activity/index.d.ts.map +1 -0
  258. package/dist/foundations/user-activity/index.js +22 -0
  259. package/dist/foundations/user-activity/index.js.map +1 -0
  260. package/dist/foundations/user-activity/interceptors/user-activity.interceptor.d.ts +29 -0
  261. package/dist/foundations/user-activity/interceptors/user-activity.interceptor.d.ts.map +1 -0
  262. package/dist/foundations/user-activity/interceptors/user-activity.interceptor.js +98 -0
  263. package/dist/foundations/user-activity/interceptors/user-activity.interceptor.js.map +1 -0
  264. package/dist/foundations/user-activity/interfaces/user-activity.config.interface.d.ts +67 -0
  265. package/dist/foundations/user-activity/interfaces/user-activity.config.interface.d.ts.map +1 -0
  266. package/dist/foundations/user-activity/interfaces/user-activity.config.interface.js +26 -0
  267. package/dist/foundations/user-activity/interfaces/user-activity.config.interface.js.map +1 -0
  268. package/dist/foundations/user-activity/interfaces/user-activity.record.input.d.ts +18 -0
  269. package/dist/foundations/user-activity/interfaces/user-activity.record.input.d.ts.map +1 -0
  270. package/dist/foundations/{auth/entities/auth.entity.js → user-activity/interfaces/user-activity.record.input.js} +1 -1
  271. package/dist/foundations/user-activity/interfaces/user-activity.record.input.js.map +1 -0
  272. package/dist/foundations/user-activity/processors/user-activity.processor.d.ts +25 -0
  273. package/dist/foundations/user-activity/processors/user-activity.processor.d.ts.map +1 -0
  274. package/dist/foundations/user-activity/processors/user-activity.processor.js +74 -0
  275. package/dist/foundations/user-activity/processors/user-activity.processor.js.map +1 -0
  276. package/dist/foundations/user-activity/repositories/user-activity.repository.d.ts +47 -0
  277. package/dist/foundations/user-activity/repositories/user-activity.repository.d.ts.map +1 -0
  278. package/dist/foundations/user-activity/repositories/user-activity.repository.js +124 -0
  279. package/dist/foundations/user-activity/repositories/user-activity.repository.js.map +1 -0
  280. package/dist/foundations/user-activity/services/user-activity.service.d.ts +29 -0
  281. package/dist/foundations/user-activity/services/user-activity.service.d.ts.map +1 -0
  282. package/dist/foundations/user-activity/services/user-activity.service.js +61 -0
  283. package/dist/foundations/user-activity/services/user-activity.service.js.map +1 -0
  284. package/dist/foundations/user-activity/user-activity.module.d.ts +40 -0
  285. package/dist/foundations/user-activity/user-activity.module.d.ts.map +1 -0
  286. package/dist/foundations/user-activity/user-activity.module.js +99 -0
  287. package/dist/foundations/user-activity/user-activity.module.js.map +1 -0
  288. package/package.json +1 -1
  289. package/dist/foundations/auth/entities/auth.code.entity.d.ts +0 -7
  290. package/dist/foundations/auth/entities/auth.code.entity.d.ts.map +0 -1
  291. package/dist/foundations/auth/entities/auth.code.entity.js +0 -3
  292. package/dist/foundations/auth/entities/auth.code.entity.js.map +0 -1
  293. package/dist/foundations/auth/entities/auth.code.map.d.ts +0 -8
  294. package/dist/foundations/auth/entities/auth.code.map.d.ts.map +0 -1
  295. package/dist/foundations/auth/entities/auth.code.map.js +0 -13
  296. package/dist/foundations/auth/entities/auth.code.map.js.map +0 -1
  297. package/dist/foundations/auth/entities/auth.code.model.d.ts +0 -4
  298. package/dist/foundations/auth/entities/auth.code.model.d.ts.map +0 -1
  299. package/dist/foundations/auth/entities/auth.code.model.js +0 -13
  300. package/dist/foundations/auth/entities/auth.code.model.js.map +0 -1
  301. package/dist/foundations/auth/entities/auth.entity.d.ts +0 -18
  302. package/dist/foundations/auth/entities/auth.entity.d.ts.map +0 -1
  303. package/dist/foundations/auth/entities/auth.entity.js.map +0 -1
  304. package/dist/foundations/auth/entities/auth.map.d.ts +0 -8
  305. package/dist/foundations/auth/entities/auth.map.d.ts.map +0 -1
  306. package/dist/foundations/auth/entities/auth.map.js +0 -14
  307. package/dist/foundations/auth/entities/auth.map.js.map +0 -1
  308. package/dist/foundations/auth/entities/auth.model.d.ts +0 -4
  309. package/dist/foundations/auth/entities/auth.model.d.ts.map +0 -1
  310. package/dist/foundations/auth/entities/auth.model.js +0 -15
  311. package/dist/foundations/auth/entities/auth.model.js.map +0 -1
  312. package/dist/foundations/auth/entities/pending-auth.entity.d.ts +0 -16
  313. package/dist/foundations/auth/entities/pending-auth.entity.d.ts.map +0 -1
  314. package/dist/foundations/auth/entities/pending-auth.entity.js +0 -3
  315. package/dist/foundations/auth/entities/pending-auth.entity.js.map +0 -1
  316. package/dist/foundations/auth/entities/pending-auth.map.d.ts +0 -6
  317. package/dist/foundations/auth/entities/pending-auth.map.d.ts.map +0 -1
  318. package/dist/foundations/auth/entities/pending-auth.map.js +0 -20
  319. package/dist/foundations/auth/entities/pending-auth.map.js.map +0 -1
  320. package/dist/foundations/auth/entities/pending-auth.model.d.ts +0 -9
  321. package/dist/foundations/auth/entities/pending-auth.model.d.ts.map +0 -1
  322. package/dist/foundations/auth/entities/pending-auth.model.js +0 -19
  323. package/dist/foundations/auth/entities/pending-auth.model.js.map +0 -1
  324. package/dist/foundations/auth/serialisers/auth.serialiser.d.ts +0 -13
  325. package/dist/foundations/auth/serialisers/auth.serialiser.d.ts.map +0 -1
  326. package/dist/foundations/auth/serialisers/auth.serialiser.js +0 -52
  327. package/dist/foundations/auth/serialisers/auth.serialiser.js.map +0 -1
  328. package/dist/foundations/auth/serialisers/pending-auth.serialiser.d.ts +0 -18
  329. package/dist/foundations/auth/serialisers/pending-auth.serialiser.d.ts.map +0 -1
  330. package/dist/foundations/auth/serialisers/pending-auth.serialiser.js +0 -49
  331. package/dist/foundations/auth/serialisers/pending-auth.serialiser.js.map +0 -1
  332. package/dist/foundations/content/entities/content.entity.d.ts +0 -31
  333. package/dist/foundations/content/entities/content.entity.d.ts.map +0 -1
  334. package/dist/foundations/content/entities/content.entity.js +0 -3
  335. package/dist/foundations/content/entities/content.entity.js.map +0 -1
  336. package/dist/foundations/content/entities/content.map.d.ts +0 -8
  337. package/dist/foundations/content/entities/content.map.d.ts.map +0 -1
  338. package/dist/foundations/content/entities/content.map.js +0 -19
  339. package/dist/foundations/content/entities/content.map.js.map +0 -1
  340. package/dist/foundations/content/entities/content.model.d.ts +0 -4
  341. package/dist/foundations/content/entities/content.model.d.ts.map +0 -1
  342. package/dist/foundations/content/entities/content.model.js +0 -16
  343. package/dist/foundations/content/entities/content.model.js.map +0 -1
  344. package/dist/foundations/content/factories/content.model.factory.d.ts +0 -17
  345. package/dist/foundations/content/factories/content.model.factory.d.ts.map +0 -1
  346. package/dist/foundations/content/factories/content.model.factory.js +0 -65
  347. package/dist/foundations/content/factories/content.model.factory.js.map +0 -1
  348. package/dist/foundations/content/serialisers/content.serialiser.d.ts +0 -14
  349. package/dist/foundations/content/serialisers/content.serialiser.d.ts.map +0 -1
  350. package/dist/foundations/content/serialisers/content.serialiser.js +0 -78
  351. package/dist/foundations/content/serialisers/content.serialiser.js.map +0 -1
  352. package/dist/foundations/feature/entities/feature.entity.d.ts +0 -8
  353. package/dist/foundations/feature/entities/feature.entity.d.ts.map +0 -1
  354. package/dist/foundations/feature/entities/feature.entity.js +0 -3
  355. package/dist/foundations/feature/entities/feature.entity.js.map +0 -1
  356. package/dist/foundations/feature/entities/feature.map.d.ts +0 -8
  357. package/dist/foundations/feature/entities/feature.map.d.ts.map +0 -1
  358. package/dist/foundations/feature/entities/feature.map.js +0 -14
  359. package/dist/foundations/feature/entities/feature.map.js.map +0 -1
  360. package/dist/foundations/feature/serialisers/feature.serialiser.d.ts +0 -12
  361. package/dist/foundations/feature/serialisers/feature.serialiser.d.ts.map +0 -1
  362. package/dist/foundations/feature/serialisers/feature.serialiser.js +0 -45
  363. package/dist/foundations/feature/serialisers/feature.serialiser.js.map +0 -1
  364. package/dist/foundations/notification/entities/notification.entity.d.ts +0 -10
  365. package/dist/foundations/notification/entities/notification.entity.d.ts.map +0 -1
  366. package/dist/foundations/notification/entities/notification.entity.js +0 -3
  367. package/dist/foundations/notification/entities/notification.entity.js.map +0 -1
  368. package/dist/foundations/notification/entities/notification.map.d.ts +0 -8
  369. package/dist/foundations/notification/entities/notification.map.d.ts.map +0 -1
  370. package/dist/foundations/notification/entities/notification.map.js +0 -16
  371. package/dist/foundations/notification/entities/notification.map.js.map +0 -1
  372. package/dist/foundations/notification/entities/notification.model.d.ts +0 -4
  373. package/dist/foundations/notification/entities/notification.model.d.ts.map +0 -1
  374. package/dist/foundations/notification/entities/notification.model.js +0 -15
  375. package/dist/foundations/notification/entities/notification.model.js.map +0 -1
  376. package/dist/foundations/notification/interfaces/notification.service.interface.d.ts +0 -4
  377. package/dist/foundations/notification/interfaces/notification.service.interface.d.ts.map +0 -1
  378. package/dist/foundations/notification/interfaces/notification.service.interface.js +0 -3
  379. package/dist/foundations/notification/interfaces/notification.service.interface.js.map +0 -1
  380. package/dist/foundations/notification/serialisers/notifications.serialiser.d.ts +0 -12
  381. package/dist/foundations/notification/serialisers/notifications.serialiser.d.ts.map +0 -1
  382. package/dist/foundations/notification/serialisers/notifications.serialiser.js +0 -47
  383. package/dist/foundations/notification/serialisers/notifications.serialiser.js.map +0 -1
  384. package/dist/foundations/tokenusage/entities/tokenusage.entity.d.ts +0 -11
  385. package/dist/foundations/tokenusage/entities/tokenusage.entity.d.ts.map +0 -1
  386. package/dist/foundations/tokenusage/entities/tokenusage.entity.js +0 -3
  387. package/dist/foundations/tokenusage/entities/tokenusage.entity.js.map +0 -1
  388. package/dist/foundations/tokenusage/entities/tokenusage.map.d.ts +0 -8
  389. package/dist/foundations/tokenusage/entities/tokenusage.map.d.ts.map +0 -1
  390. package/dist/foundations/tokenusage/entities/tokenusage.map.js +0 -17
  391. package/dist/foundations/tokenusage/entities/tokenusage.map.js.map +0 -1
  392. package/dist/foundations/tokenusage/entities/tokenusage.model.d.ts +0 -4
  393. package/dist/foundations/tokenusage/entities/tokenusage.model.d.ts.map +0 -1
  394. package/dist/foundations/tokenusage/entities/tokenusage.model.js +0 -15
  395. package/dist/foundations/tokenusage/entities/tokenusage.model.js.map +0 -1
@@ -14,7 +14,9 @@ const common_1 = require("@nestjs/common");
14
14
  const crypto_1 = require("crypto");
15
15
  const nestjs_cls_1 = require("nestjs-cls");
16
16
  const system_roles_1 = require("../../../common/constants/system.roles");
17
+ const abstract_repository_1 = require("../../../core/neo4j/abstracts/abstract.repository");
17
18
  const neo4j_service_1 = require("../../../core/neo4j/services/neo4j.service");
19
+ const security_service_1 = require("../../../core/security/services/security.service");
18
20
  const company_meta_1 = require("../../company/entities/company.meta");
19
21
  const feature_meta_1 = require("../../feature/entities/feature.meta");
20
22
  const membership_query_1 = require("../../membership/queries/membership.query");
@@ -24,26 +26,40 @@ const role_meta_1 = require("../../role/entities/role.meta");
24
26
  const user_1 = require("../../user/entities/user");
25
27
  const user_meta_1 = require("../../user/entities/user.meta");
26
28
  const user_cypher_service_1 = require("../../user/services/user.cypher.service");
27
- let UserRepository = class UserRepository {
28
- constructor(neo4j, cls, userCypherService) {
29
- this.neo4j = neo4j;
30
- this.cls = cls;
29
+ /**
30
+ * User repository.
31
+ *
32
+ * Extends `AbstractRepository` so an application can subclass it (see
33
+ * `ExtendedUserRepository` in a consuming app) and have BOTH the inherited
34
+ * generic methods AND every method declared here resolve the *extended*
35
+ * descriptor. Model resolution is by subclass polymorphism — `this.descriptor`
36
+ * — never by a registry lookup: Nest constructs providers long before
37
+ * `onModuleInit`, where models are registered, so a registry lookup at
38
+ * construction time would yield `undefined`.
39
+ *
40
+ * The three domain methods whose names collide with the abstract's generic
41
+ * CRUD (`create` / `put` / `delete`) are named `createUser` / `putUser` /
42
+ * `deleteUser` so the inherited descriptor-driven CRUD stays reachable.
43
+ */
44
+ let UserRepository = class UserRepository extends abstract_repository_1.AbstractRepository {
45
+ constructor(neo4j, securityService, clsService, userCypherService) {
46
+ super(neo4j, securityService, clsService);
31
47
  this.userCypherService = userCypherService;
48
+ this.descriptor = user_1.UserDescriptor;
32
49
  }
50
+ /**
51
+ * `AbstractRepository.onModuleInit` creates the constraints and indexes
52
+ * declared by the descriptor. `defineEntity` only ever emits the `id` UNIQUE
53
+ * constraint, so the User-specific `email` UNIQUE constraint is added here.
54
+ * The fulltext index is created by the parent from `descriptor.indexes`
55
+ * (`stringFields`), which excludes `password` and `code` — both carry
56
+ * `excludeFromSearch: true`.
57
+ */
33
58
  async onModuleInit() {
34
- await this.neo4j.writeOne({
35
- query: `CREATE CONSTRAINT user_id IF NOT EXISTS FOR (user:User) REQUIRE user.id IS UNIQUE`,
36
- });
59
+ await super.onModuleInit();
37
60
  await this.neo4j.writeOne({
38
61
  query: `CREATE CONSTRAINT user_email IF NOT EXISTS FOR (user:User) REQUIRE user.email IS UNIQUE`,
39
62
  });
40
- // Create fulltext search index for user string fields
41
- if (user_1.UserDescriptor.fulltextIndexName && user_1.UserDescriptor.stringFields.length > 0) {
42
- await this.neo4j.writeOne({
43
- query: `CREATE FULLTEXT INDEX \`${user_1.UserDescriptor.fulltextIndexName}\` IF NOT EXISTS FOR (n:\`${user_meta_1.userMeta.labelName}\`) ON EACH [${user_1.UserDescriptor.stringFields.map((p) => `n.\`${p}\``).join(", ")}]`,
44
- queryParams: {},
45
- });
46
- }
47
63
  }
48
64
  async makeCompanyAdmin(params) {
49
65
  const query = this.neo4j.initQuery();
@@ -61,7 +77,7 @@ let UserRepository = class UserRepository {
61
77
  await this.neo4j.writeOne(query);
62
78
  }
63
79
  async findOneForAdmin(params) {
64
- const query = this.neo4j.initQuery({ serialiser: user_1.UserDescriptor.model });
80
+ const query = this.neo4j.initQuery({ serialiser: this.descriptor.model });
65
81
  query.queryParams = {
66
82
  userId: params.userId,
67
83
  };
@@ -85,7 +101,7 @@ let UserRepository = class UserRepository {
85
101
  * Returns user with roles, company, and features needed for token creation.
86
102
  */
87
103
  async findForTwoFactorLogin(params) {
88
- const query = this.neo4j.initQuery({ serialiser: user_1.UserDescriptor.model });
104
+ const query = this.neo4j.initQuery({ serialiser: this.descriptor.model });
89
105
  query.queryParams = {
90
106
  userId: params.userId,
91
107
  };
@@ -112,7 +128,7 @@ let UserRepository = class UserRepository {
112
128
  return this.neo4j.readOne(query);
113
129
  }
114
130
  async findFullUser(params) {
115
- let query = this.neo4j.initQuery({ serialiser: user_1.UserDescriptor.model });
131
+ let query = this.neo4j.initQuery({ serialiser: this.descriptor.model });
116
132
  query.queryParams = {
117
133
  ...query.queryParams,
118
134
  searchValue: params.userId,
@@ -158,7 +174,7 @@ let UserRepository = class UserRepository {
158
174
  return user;
159
175
  }
160
176
  async findByUserId(params) {
161
- const query = this.neo4j.initQuery({ serialiser: user_1.UserDescriptor.model });
177
+ const query = this.neo4j.initQuery({ serialiser: this.descriptor.model });
162
178
  query.queryParams = {
163
179
  ...query.queryParams,
164
180
  userId: params.userId,
@@ -180,7 +196,7 @@ let UserRepository = class UserRepository {
180
196
  return this.neo4j.readOne(query);
181
197
  }
182
198
  async findByEmail(params) {
183
- const query = this.neo4j.initQuery({ serialiser: user_1.UserDescriptor.model });
199
+ const query = this.neo4j.initQuery({ serialiser: this.descriptor.model });
184
200
  query.queryParams = {
185
201
  email: params.email.toLowerCase(),
186
202
  };
@@ -208,7 +224,7 @@ let UserRepository = class UserRepository {
208
224
  return this.neo4j.readOne(query);
209
225
  }
210
226
  async findByCode(params) {
211
- const query = this.neo4j.initQuery({ serialiser: user_1.UserDescriptor.model });
227
+ const query = this.neo4j.initQuery({ serialiser: this.descriptor.model });
212
228
  query.queryParams = {
213
229
  code: params.code,
214
230
  };
@@ -227,13 +243,13 @@ let UserRepository = class UserRepository {
227
243
  return this.neo4j.readOne(query);
228
244
  }
229
245
  async findMany(params) {
230
- const query = this.neo4j.initQuery({ serialiser: user_1.UserDescriptor.model, cursor: params.cursor });
246
+ const query = this.neo4j.initQuery({ serialiser: this.descriptor.model, cursor: params.cursor });
231
247
  query.queryParams = {
232
248
  ...query.queryParams,
233
249
  term: params.term ? `*${params.term.toLowerCase()}*` : undefined,
234
250
  };
235
- if (params.term && user_1.UserDescriptor.fulltextIndexName) {
236
- query.query += `CALL db.index.fulltext.queryNodes("${user_1.UserDescriptor.fulltextIndexName}", $term)
251
+ if (params.term && this.descriptor.fulltextIndexName) {
252
+ query.query += `CALL db.index.fulltext.queryNodes("${this.descriptor.fulltextIndexName}", $term)
237
253
  YIELD node, score
238
254
  WHERE (node)-[:BELONGS_TO]->(company)
239
255
 
@@ -257,7 +273,7 @@ let UserRepository = class UserRepository {
257
273
  return this.neo4j.readMany(query);
258
274
  }
259
275
  async findManyByContentIds(params) {
260
- const query = this.neo4j.initQuery({ serialiser: user_1.UserDescriptor.model, fetchAll: true });
276
+ const query = this.neo4j.initQuery({ serialiser: this.descriptor.model, fetchAll: true });
261
277
  query.queryParams = {
262
278
  ...query.queryParams,
263
279
  term: params.term,
@@ -276,7 +292,7 @@ let UserRepository = class UserRepository {
276
292
  return this.neo4j.readMany(query);
277
293
  }
278
294
  async findManyByCompany(params) {
279
- const query = this.neo4j.initQuery({ serialiser: user_1.UserDescriptor.model, cursor: params.cursor });
295
+ const query = this.neo4j.initQuery({ serialiser: this.descriptor.model, cursor: params.cursor });
280
296
  query.queryParams = {
281
297
  companyId: params.companyId,
282
298
  term: params.term,
@@ -292,7 +308,7 @@ let UserRepository = class UserRepository {
292
308
  return this.neo4j.readMany(query);
293
309
  }
294
310
  async findInRole(params) {
295
- const query = this.neo4j.initQuery({ serialiser: user_1.UserDescriptor.model, cursor: params.cursor });
311
+ const query = this.neo4j.initQuery({ serialiser: this.descriptor.model, cursor: params.cursor });
296
312
  query.queryParams = {
297
313
  ...query.queryParams,
298
314
  roleId: params.roleId,
@@ -314,7 +330,7 @@ let UserRepository = class UserRepository {
314
330
  return this.neo4j.readMany(query);
315
331
  }
316
332
  async findNotInRole(params) {
317
- const query = this.neo4j.initQuery({ serialiser: user_1.UserDescriptor.model, cursor: params.cursor });
333
+ const query = this.neo4j.initQuery({ serialiser: this.descriptor.model, cursor: params.cursor });
318
334
  query.queryParams = {
319
335
  ...query.queryParams,
320
336
  roleId: params.roleId,
@@ -340,10 +356,10 @@ let UserRepository = class UserRepository {
340
356
  `;
341
357
  return this.neo4j.readMany(query);
342
358
  }
343
- async create(params) {
359
+ async createUser(params) {
344
360
  const query = this.neo4j.initQuery();
345
361
  query.queryParams = {
346
- currentUserId: this.cls.has("userId") ? this.cls.get("userId") : null,
362
+ currentUserId: this.clsService.has("userId") ? this.clsService.get("userId") : null,
347
363
  userId: params.userId,
348
364
  email: params.email.toLowerCase(),
349
365
  name: params.name,
@@ -407,9 +423,12 @@ let UserRepository = class UserRepository {
407
423
  await this.neo4j.writeOne(query);
408
424
  return this.findByUserId({ userId: params.userId });
409
425
  }
410
- async put(params) {
426
+ async putUser(params) {
411
427
  const setClauses = [];
412
- setClauses.push("user.name = $name");
428
+ // `name` is optional on the PUT DTO: an omitted name must leave the stored
429
+ // name untouched, never overwrite it with null.
430
+ if (params.name !== undefined)
431
+ setClauses.push("user.name = $name");
413
432
  setClauses.push("user.email = $email");
414
433
  setClauses.push("user.title = $title");
415
434
  setClauses.push("user.bio = $bio");
@@ -513,7 +532,7 @@ let UserRepository = class UserRepository {
513
532
  `;
514
533
  await this.neo4j.writeOne(query);
515
534
  }
516
- async delete(params) {
535
+ async deleteUser(params) {
517
536
  const query = this.neo4j.initQuery();
518
537
  query.queryParams = {
519
538
  ...query.queryParams,
@@ -573,7 +592,7 @@ let UserRepository = class UserRepository {
573
592
  * These users have the Administrator role and receive internal payment notifications.
574
593
  */
575
594
  async findPlatformAdministrators() {
576
- const query = this.neo4j.initQuery({ serialiser: user_1.UserDescriptor.model, fetchAll: true });
595
+ const query = this.neo4j.initQuery({ serialiser: this.descriptor.model, fetchAll: true });
577
596
  query.queryParams = {
578
597
  administratorRoleId: system_roles_1.RoleId.Administrator,
579
598
  };
@@ -590,7 +609,7 @@ let UserRepository = class UserRepository {
590
609
  * Query path: StripeCustomer -> Company <- User with CompanyAdministrator role
591
610
  */
592
611
  async findCompanyAdminsByStripeCustomerId(params) {
593
- const query = this.neo4j.initQuery({ serialiser: user_1.UserDescriptor.model, fetchAll: true });
612
+ const query = this.neo4j.initQuery({ serialiser: this.descriptor.model, fetchAll: true });
594
613
  query.queryParams = {
595
614
  stripeCustomerId: params.stripeCustomerId,
596
615
  companyAdminRoleId: system_roles_1.RoleId.CompanyAdministrator,
@@ -616,7 +635,7 @@ let UserRepository = class UserRepository {
616
635
  * Used for deletion warning notifications
617
636
  */
618
637
  async findAdminsByCompanyId(params) {
619
- const query = this.neo4j.initQuery({ serialiser: user_1.UserDescriptor.model, fetchAll: true });
638
+ const query = this.neo4j.initQuery({ serialiser: this.descriptor.model, fetchAll: true });
620
639
  query.queryParams = {
621
640
  companyId: params.companyId,
622
641
  companyAdminRoleId: system_roles_1.RoleId.CompanyAdministrator,
@@ -636,6 +655,7 @@ exports.UserRepository = UserRepository;
636
655
  exports.UserRepository = UserRepository = __decorate([
637
656
  (0, common_1.Injectable)(),
638
657
  __metadata("design:paramtypes", [neo4j_service_1.Neo4jService,
658
+ security_service_1.SecurityService,
639
659
  nestjs_cls_1.ClsService,
640
660
  user_cypher_service_1.UserCypherService])
641
661
  ], UserRepository);
@@ -1 +1 @@
1
- {"version":3,"file":"user.repository.js","sourceRoot":"","sources":["../../../../src/foundations/user/repositories/user.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user.repository.js","sourceRoot":"","sources":["../../../../src/foundations/user/repositories/user.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,mCAAoC;AACpC,2CAAwC;AACxC,yEAAgE;AAEhE,2FAAuF;AACvF,8EAA0E;AAC1E,uFAAmF;AACnF,sEAAkE;AAClE,sEAAkE;AAClE,gFAKmD;AACnD,qEAAiE;AACjE,oFAAiG;AACjG,6DAAyD;AACzD,mDAAgE;AAChE,6DAAyD;AACzD,iFAA4E;AAE5E;;;;;;;;;;;;;;GAcG;AAEI,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,wCAA6D;IAG/F,YACE,KAAmB,EACnB,eAAgC,EAChC,UAAsB,EACH,iBAAoC;QAEvD,KAAK,CAAC,KAAK,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;QAFvB,sBAAiB,GAAjB,iBAAiB,CAAmB;QANtC,eAAU,GAAG,qBAAc,CAAC;IAS/C,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,YAAY;QAChB,MAAM,KAAK,CAAC,YAAY,EAAE,CAAC;QAE3B,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YACxB,KAAK,EAAE,yFAAyF;SACjG,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,MAA6C;QAClE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,YAAY,EAAE,IAAA,mBAAU,GAAE;YAC1B,OAAO,EAAE,CAAC,qBAAM,CAAC,oBAAoB,CAAC;SACvC,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;;QAGV,IAAA,oCAAiB,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;KACpE,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAA0B;QAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;QAE1E,KAAK,CAAC,WAAW,GAAG;YAClB,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;;;;;;;;;;KAWb,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,qBAAqB,CAAC,MAA0B;QACpD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;QAE1E,KAAK,CAAC,WAAW,GAAG;YAClB,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;eACH,oBAAQ,CAAC,QAAQ;;wBAER,oBAAQ,CAAC,QAAQ,qBAAqB,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,SAAS;;;wBAGxG,oBAAQ,CAAC,QAAQ,yBAAyB,oBAAQ,CAAC,QAAQ,IAAI,oBAAQ,CAAC,QAAQ;eACzF,oBAAQ,CAAC,QAAQ,IAAI,oBAAQ,CAAC,QAAQ,wBAAwB,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;mBACnG,oBAAQ,CAAC,QAAQ,IAAI,oBAAQ,CAAC,QAAQ,yBAAyB,0BAAW,CAAC,SAAS;wBAC/E,oBAAQ,CAAC,QAAQ,IAAI,oBAAQ,CAAC,QAAQ,sBAAsB,oBAAQ,CAAC,QAAQ,IAAI,oBAAQ,CAAC,QAAQ,IAAI,oBAAQ,CAAC,SAAS;;wBAExH,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,SAAS;cACpG,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;qBAC1D,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,sBAAsB,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;;eAEtI,oBAAQ,CAAC,QAAQ;UACtB,oBAAQ,CAAC,QAAQ,IAAI,oBAAQ,CAAC,QAAQ;UACtC,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;UACzC,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;KACtE,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAA0B;QAC3C,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;QAExE,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,WAAW,EAAE,MAAM,CAAC,MAAM;SAC3B,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;QACX,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;;QAErD,IAAA,sCAAmB,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;;;eAG3D,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,SAAS;cAC3F,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;qBAC1D,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,sBAAsB,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;;8CAEvG,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;KAC1G,CAAC;QAEF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAE7C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,qBAAM,CAAC,aAAa,CAAC,CAAC;QAEnF,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,0BAAW,EAAE,CAAC,CAAC;QAC1D,KAAK,CAAC,WAAW,GAAG;YAClB,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,IAAI;YACnC,WAAW,EAAE,MAAM,CAAC,MAAM;YAC1B,aAAa,EAAE,MAAM,CAAC,MAAM;SAC7B,CAAC;QAEF,IAAI,OAAO,GAAU,EAAE,CAAC;QAExB,IAAI,eAAe,EAAE,CAAC;YACpB,KAAK,CAAC,KAAK,GAAG,uCAAgB,CAAC;YAC/B,IAAI,CAAC;gBACH,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC7C,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,GAAG,EAAE,CAAC;YACf,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,KAAK,IAAI;UACX,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;UACrD,yCAAkB;OACrB,CAAC;YACF,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;QAEtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAA8C;QAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;QAE1E,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC;QAEF,IAAI,MAAM,CAAC,SAAS;YAAE,KAAK,CAAC,WAAW,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAErE,KAAK,CAAC,KAAK,GAAG;;;QAGV,IAAA,sCAAmB,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;;;eAG3D,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,SAAS;cAC3F,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;qBAC1D,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,sBAAsB,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;;8CAEvG,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;KAC1G,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAAmD;QACnE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;QAE1E,KAAK,CAAC,WAAW,GAAG;YAClB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE;SAClC,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;eACH,oBAAQ,CAAC,QAAQ;sBACV,oBAAQ,CAAC,QAAQ;QAC/B,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,oBAAQ,CAAC,QAAQ,oBAAoB;;wBAEzD,oBAAQ,CAAC,QAAQ,qBAAqB,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,SAAS;;;wBAGxG,oBAAQ,CAAC,QAAQ,yBAAyB,oBAAQ,CAAC,QAAQ,IAAI,oBAAQ,CAAC,QAAQ;eACzF,oBAAQ,CAAC,QAAQ,IAAI,oBAAQ,CAAC,QAAQ,wBAAwB,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;mBACnG,oBAAQ,CAAC,QAAQ,IAAI,oBAAQ,CAAC,QAAQ,yBAAyB,0BAAW,CAAC,SAAS;wBAC/E,oBAAQ,CAAC,QAAQ,IAAI,oBAAQ,CAAC,QAAQ,sBAAsB,oBAAQ,CAAC,QAAQ,IAAI,oBAAQ,CAAC,QAAQ,IAAI,oBAAQ,CAAC,SAAS;;eAEjI,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,SAAS;cAC3F,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;qBAC1D,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,sBAAsB,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;eACtI,oBAAQ,CAAC,QAAQ;UACtB,oBAAQ,CAAC,QAAQ,IAAI,oBAAQ,CAAC,QAAQ;UACtC,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;UACzC,oBAAQ,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ,IAAI,0BAAW,CAAC,QAAQ;KACtE,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAwB;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;QAE1E,KAAK,CAAC,WAAW,GAAG;YAClB,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;;;;;;;;;;KAWb,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,MAId;QACC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAEjG,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS;SACjE,CAAC;QAEF,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC;YACrD,KAAK,CAAC,KAAK,IAAI,sCAAsC,IAAI,CAAC,UAAU,CAAC,iBAAiB;;;;qBAIvE,oBAAQ,CAAC,QAAQ;;KAEjC,CAAC;QACF,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,KAAK,IAAI;QACb,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE;;iBAEvB,oBAAQ,CAAC,QAAQ;KAC7B,CAAC;QACF,CAAC;QAED,KAAK,CAAC,KAAK,IAAI;;;QAGX,IAAA,sCAAmB,EAAC,EAAE,SAAS,EAAE,oBAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,oBAAQ,CAAC,QAAQ,OAAO,EAAE,CAAC;eACtF,oBAAQ,CAAC,QAAQ,KAAK,oBAAQ,CAAC,QAAQ;KACjD,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,MAI1B;QACC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1F,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,UAAU,EAAE,MAAM,CAAC,UAAU;SAC9B,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;OACZ,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE;cACzB,oBAAQ,CAAC,QAAQ;;;;;;QAMvB,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE;KAC3C,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,MAMvB;QACC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAEjG,KAAK,CAAC,WAAW,GAAG;YAClB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,KAAK;SACrC,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;QAEV,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,EAAE;QAC3D,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,6CAA6C,CAAC,CAAC,CAAC,EAAE;QACrG,IAAA,sCAAmB,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;;KAErE,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAyE;QACxF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAEjG,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;;QAEX,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,kDAAkD,CAAC,CAAC,CAAC,EAAE;QACrE,IAAA,8CAA2B,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;;;;;;QAMrE,IAAA,sCAAmB,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;;;KAGrE,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAAyE;QAC3F,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAEjG,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;;;;;;;;QAQX,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,gDAAgD,CAAC,CAAC,CAAC,EAAE;;;;;;QAMnE,IAAA,sCAAmB,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;;;KAGrE,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAehB;QACC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,aAAa,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;YACnF,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE;YACjC,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE;YACzB,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,EAAE;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,KAAK;YAClC,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE;YACzB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;YAC3B,IAAI,EAAE,IAAA,mBAAU,GAAE;YAClB,cAAc,EAAE,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;YACtF,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE;YAC7B,YAAY,EAAE,IAAA,mBAAU,GAAE;YAC1B,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,IAAI;YAC/C,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,KAAK;YAClD,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,IAAI,IAAI;SACtD,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;;;;;;;;;;;;UAaR,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE;UACvC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,8CAA8C,CAAC,CAAC,CAAC,EAAE;;UAE5E,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,oDAAoD,CAAC,CAAC,CAAC,EAAE;;;;;;;;;QASvF,IAAA,oCAAiB,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;KACpE,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEjC,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAA0B;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,IAAI,EAAE,IAAA,mBAAU,GAAE;YAClB,cAAc,EAAE,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;SACnF,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;;;KAGd,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEjC,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAab;QACC,MAAM,UAAU,GAAG,EAAE,CAAC;QACtB,2EAA2E;QAC3E,gDAAgD;QAChD,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS;YAAE,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACpE,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACvC,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACvC,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,cAAc;YAAE,UAAU,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACrE,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,KAAK,EAAE;YAAE,UAAU,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC1G,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;YACjD,UAAU,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;YAAE,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAEvE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE;YACjC,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,IAAI;YAC3B,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,IAAI;YACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,IAAI;YAC7B,OAAO,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE;YAC3B,YAAY,EAAE,IAAA,mBAAU,GAAE;YAC1B,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,IAAI;SAC5B,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;;YAGN,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;;QAGzB,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;YAC1C,CAAC,CAAC;;;;;;;;;;cAUE,IAAA,oCAAiB,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;WACpE;YACD,CAAC,CAAC,EACN;KACD,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAA2C;QAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,IAAI;SAC9B,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;;KAGb,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAA0B;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;;;KAGd,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAwC;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;;;;KAId,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAA0C;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;;;;KAId,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAA0B;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;;;OAIX,CAAC;QAEJ,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAA0C;QAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,YAAY,EAAE,IAAA,mBAAU,GAAE;YAC1B,OAAO,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;SACzB,CAAC;QAEF,kFAAkF;QAClF,qEAAqE;QACrE,IAAI,MAAM,CAAC,MAAM,KAAK,qBAAM,CAAC,aAAa,EAAE,CAAC;YAC3C,KAAK,CAAC,KAAK,IAAI;;UAEX,IAAA,oCAAiB,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;OAC3C,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,KAAK,IAAI;;UAEX,IAAA,oCAAiB,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;OACpE,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,MAA0C;QACjE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,mBAAmB,EAAE,qBAAM,CAAC,aAAa;SAC1C,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;;;;;;KAMd,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,0BAA0B;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1F,KAAK,CAAC,WAAW,GAAG;YAClB,mBAAmB,EAAE,qBAAM,CAAC,aAAa;SAC1C,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;;;;KAKb,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,mCAAmC,CAAC,MAAoC;QAC5E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1F,KAAK,CAAC,WAAW,GAAG;YAClB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;YACzC,kBAAkB,EAAE,qBAAM,CAAC,oBAAoB;SAChD,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;;;;;;;;;;;;KAab,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,qBAAqB,CAAC,MAA6B;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1F,KAAK,CAAC,WAAW,GAAG;YAClB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,kBAAkB,EAAE,qBAAM,CAAC,oBAAoB;SAChD,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;;;;QAKV,IAAA,sCAAmB,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;;KAErE,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;CACF,CAAA;AA1vBY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,mBAAU,GAAE;qCAKF,4BAAY;QACF,kCAAe;QACpB,uBAAU;QACgB,uCAAiB;GAP9C,cAAc,CA0vB1B"}
@@ -2,18 +2,57 @@ import { ConfigService } from "@nestjs/config";
2
2
  import { EmailService } from "../../../core/email/services/email.service";
3
3
  import { UserPostDataDTO } from "../../user/dtos/user.post.dto";
4
4
  import { UserPutDataDTO } from "../../user/dtos/user.put.dto";
5
+ import { ClsService } from "nestjs-cls";
5
6
  import { BaseConfigInterface } from "../../../config/interfaces";
6
7
  import { JsonApiDataInterface } from "../../../core/jsonapi/interfaces/jsonapi.data.interface";
7
8
  import { JsonApiService } from "../../../core/jsonapi/services/jsonapi.service";
9
+ import { AbstractService } from "../../../core/neo4j/abstracts/abstract.service";
8
10
  import { UserPatchAvatarDataDTO } from "../../user/dtos/user.patch.avatar.dto";
9
11
  import { UserPatchRateDataDTO } from "../../user/dtos/user.patch.rate.dto";
12
+ import { User, UserDescriptor } from "../../user/entities/user";
10
13
  import { UserRepository } from "../repositories/user.repository";
11
- export declare class UserService {
12
- private readonly builder;
13
- private readonly db;
14
- private readonly emailService;
15
- private readonly configService;
16
- constructor(builder: JsonApiService, db: UserRepository, emailService: EmailService, configService: ConfigService<BaseConfigInterface>);
14
+ /**
15
+ * User service.
16
+ *
17
+ * Extends `AbstractService` so an application can subclass it and have BOTH the
18
+ * inherited generic methods AND every method declared here serialise with the
19
+ * *extended* model. Model resolution is by subclass polymorphism — a subclass
20
+ * re-declares `descriptor` and `model` as initialised class fields — never by a
21
+ * registry lookup (Nest constructs providers before `onModuleInit`, where models
22
+ * are registered).
23
+ *
24
+ * The three domain methods whose names collide with the abstract's generic CRUD
25
+ * (`create` / `put` / `delete`) are named `createUser` / `putUser` /
26
+ * `deleteUser` so the inherited descriptor-driven CRUD stays reachable.
27
+ */
28
+ export declare class UserService extends AbstractService<User, typeof UserDescriptor.relationships> {
29
+ protected readonly userRepository: UserRepository;
30
+ protected readonly emailService: EmailService;
31
+ protected readonly configService: ConfigService<BaseConfigInterface>;
32
+ protected readonly descriptor: import("../../..").EntityDescriptor<User, {
33
+ role: {
34
+ model: import("../../..").DataMeta;
35
+ direction: "out";
36
+ relationship: string;
37
+ cardinality: "many";
38
+ dtoKey: string;
39
+ readOnly: true;
40
+ };
41
+ company: {
42
+ model: import("../../..").DataModelInterface<import("../..").Company>;
43
+ direction: "out";
44
+ relationship: string;
45
+ cardinality: "one";
46
+ };
47
+ module: {
48
+ model: import("../../..").DataMeta;
49
+ direction: "out";
50
+ relationship: string;
51
+ cardinality: "many";
52
+ dtoKey: string;
53
+ };
54
+ }>;
55
+ constructor(jsonApiService: JsonApiService, userRepository: UserRepository, emailService: EmailService, configService: ConfigService<BaseConfigInterface>, clsService: ClsService);
17
56
  private get appConfig();
18
57
  /**
19
58
  * Defence in depth: the global Administrator role is platform-level and may
@@ -69,7 +108,7 @@ export declare class UserService {
69
108
  userId: string;
70
109
  companyId: string;
71
110
  }): Promise<JsonApiDataInterface>;
72
- put(params: {
111
+ putUser(params: {
73
112
  data: UserPutDataDTO;
74
113
  isAdmin: boolean;
75
114
  isCurrentUser: boolean;
@@ -92,7 +131,7 @@ export declare class UserService {
92
131
  findByEmail(params: {
93
132
  email: string;
94
133
  }): Promise<JsonApiDataInterface>;
95
- create(params: {
134
+ createUser(params: {
96
135
  data: UserPostDataDTO;
97
136
  forceCompanyAdmin?: boolean;
98
137
  language: string;
@@ -102,7 +141,7 @@ export declare class UserService {
102
141
  data: UserPostDataDTO;
103
142
  language: string;
104
143
  }): Promise<JsonApiDataInterface | void>;
105
- delete(params: {
144
+ deleteUser(params: {
106
145
  userId: string;
107
146
  }): Promise<void>;
108
147
  addUserToRole(params: {
@@ -1 +1 @@
1
- {"version":3,"file":"user.service.d.ts","sourceRoot":"","sources":["../../../../src/foundations/user/services/user.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user.service.d.ts","sourceRoot":"","sources":["../../../../src/foundations/user/services/user.service.ts"],"names":[],"mappings":"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"}