@hed-hog/core 0.0.387 → 0.0.393

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 (935) hide show
  1. package/README.md +51 -11
  2. package/dist/access-log/access-log.controller.d.ts.map +1 -1
  3. package/dist/access-log/access-log.controller.js +1 -1
  4. package/dist/access-log/access-log.controller.js.map +1 -1
  5. package/dist/access-log/access-log.interceptor.d.ts.map +1 -1
  6. package/dist/access-log/access-log.interceptor.js +11 -6
  7. package/dist/access-log/access-log.interceptor.js.map +1 -1
  8. package/dist/access-log/access-log.service.d.ts +4 -0
  9. package/dist/access-log/access-log.service.d.ts.map +1 -1
  10. package/dist/access-log/access-log.service.js +31 -4
  11. package/dist/access-log/access-log.service.js.map +1 -1
  12. package/dist/access-log/dto/query-access-log.dto.d.ts +2 -0
  13. package/dist/access-log/dto/query-access-log.dto.d.ts.map +1 -1
  14. package/dist/access-log/dto/query-access-log.dto.js +5 -0
  15. package/dist/access-log/dto/query-access-log.dto.js.map +1 -1
  16. package/dist/ai/ai-attachment.fragments.d.ts +23 -0
  17. package/dist/ai/ai-attachment.fragments.d.ts.map +1 -0
  18. package/dist/ai/ai-attachment.fragments.js +34 -0
  19. package/dist/ai/ai-attachment.fragments.js.map +1 -0
  20. package/dist/ai/ai.controller.d.ts +12 -17
  21. package/dist/ai/ai.controller.d.ts.map +1 -1
  22. package/dist/ai/ai.controller.js +17 -2
  23. package/dist/ai/ai.controller.js.map +1 -1
  24. package/dist/ai/ai.module.d.ts.map +1 -1
  25. package/dist/ai/ai.module.js +3 -2
  26. package/dist/ai/ai.module.js.map +1 -1
  27. package/dist/ai/ai.prompts.d.ts +16 -0
  28. package/dist/ai/ai.prompts.d.ts.map +1 -0
  29. package/dist/ai/ai.prompts.js +37 -0
  30. package/dist/ai/ai.prompts.js.map +1 -0
  31. package/dist/ai/ai.service.d.ts +92 -12
  32. package/dist/ai/ai.service.d.ts.map +1 -1
  33. package/dist/ai/ai.service.js +309 -88
  34. package/dist/ai/ai.service.js.map +1 -1
  35. package/dist/ai/dto/chat.dto.d.ts +4 -1
  36. package/dist/ai/dto/chat.dto.d.ts.map +1 -1
  37. package/dist/ai/dto/chat.dto.js +23 -1
  38. package/dist/ai/dto/chat.dto.js.map +1 -1
  39. package/dist/ai/dto/create-agent.dto.d.ts +1 -1
  40. package/dist/ai/dto/create-agent.dto.d.ts.map +1 -1
  41. package/dist/ai/dto/create-agent.dto.js +1 -1
  42. package/dist/ai/dto/create-agent.dto.js.map +1 -1
  43. package/dist/ai/dto/richtext-edit-html.dto.d.ts +5 -0
  44. package/dist/ai/dto/richtext-edit-html.dto.d.ts.map +1 -0
  45. package/dist/ai/dto/richtext-edit-html.dto.js +27 -0
  46. package/dist/ai/dto/richtext-edit-html.dto.js.map +1 -0
  47. package/dist/ai/dto/update-agent.dto.d.ts +1 -1
  48. package/dist/ai/dto/update-agent.dto.d.ts.map +1 -1
  49. package/dist/ai/dto/update-agent.dto.js +1 -1
  50. package/dist/ai/dto/update-agent.dto.js.map +1 -1
  51. package/dist/ai/richtext-ai.prompts.d.ts +5 -0
  52. package/dist/ai/richtext-ai.prompts.d.ts.map +1 -0
  53. package/dist/ai/richtext-ai.prompts.js +57 -0
  54. package/dist/ai/richtext-ai.prompts.js.map +1 -0
  55. package/dist/ai/richtext-ai.service.d.ts +34 -0
  56. package/dist/ai/richtext-ai.service.d.ts.map +1 -0
  57. package/dist/ai/richtext-ai.service.js +95 -0
  58. package/dist/ai/richtext-ai.service.js.map +1 -0
  59. package/dist/ai-instruction/ai-instruction.controller.d.ts +59 -5
  60. package/dist/ai-instruction/ai-instruction.controller.d.ts.map +1 -1
  61. package/dist/ai-instruction/ai-instruction.controller.js +63 -20
  62. package/dist/ai-instruction/ai-instruction.controller.js.map +1 -1
  63. package/dist/ai-instruction/ai-instruction.module.d.ts.map +1 -1
  64. package/dist/ai-instruction/ai-instruction.module.js +13 -2
  65. package/dist/ai-instruction/ai-instruction.module.js.map +1 -1
  66. package/dist/ai-instruction/ai-instruction.service.d.ts +131 -6
  67. package/dist/ai-instruction/ai-instruction.service.d.ts.map +1 -1
  68. package/dist/ai-instruction/ai-instruction.service.js +533 -60
  69. package/dist/ai-instruction/ai-instruction.service.js.map +1 -1
  70. package/dist/ai-instruction/ai-prompt-builder.service.d.ts +8 -0
  71. package/dist/ai-instruction/ai-prompt-builder.service.d.ts.map +1 -1
  72. package/dist/ai-instruction/ai-prompt-builder.service.js +10 -1
  73. package/dist/ai-instruction/ai-prompt-builder.service.js.map +1 -1
  74. package/dist/ai-instruction/ai-prompt-registry.d.ts +45 -0
  75. package/dist/ai-instruction/ai-prompt-registry.d.ts.map +1 -0
  76. package/dist/ai-instruction/ai-prompt-registry.js +49 -0
  77. package/dist/ai-instruction/ai-prompt-registry.js.map +1 -0
  78. package/dist/ai-instruction/ai-prompt-resolver.service.d.ts +89 -0
  79. package/dist/ai-instruction/ai-prompt-resolver.service.d.ts.map +1 -0
  80. package/dist/ai-instruction/ai-prompt-resolver.service.js +222 -0
  81. package/dist/ai-instruction/ai-prompt-resolver.service.js.map +1 -0
  82. package/dist/ai-instruction/ai-prompt-template.util.d.ts +70 -0
  83. package/dist/ai-instruction/ai-prompt-template.util.d.ts.map +1 -0
  84. package/dist/ai-instruction/ai-prompt-template.util.js +154 -0
  85. package/dist/ai-instruction/ai-prompt-template.util.js.map +1 -0
  86. package/dist/ai-instruction/dto/create-ai-instruction.dto.d.ts +5 -0
  87. package/dist/ai-instruction/dto/create-ai-instruction.dto.d.ts.map +1 -1
  88. package/dist/ai-instruction/dto/create-ai-instruction.dto.js +27 -1
  89. package/dist/ai-instruction/dto/create-ai-instruction.dto.js.map +1 -1
  90. package/dist/ai-instruction/dto/preview-ai-instruction.dto.d.ts +14 -0
  91. package/dist/ai-instruction/dto/preview-ai-instruction.dto.d.ts.map +1 -0
  92. package/dist/ai-instruction/dto/preview-ai-instruction.dto.js +42 -0
  93. package/dist/ai-instruction/dto/preview-ai-instruction.dto.js.map +1 -0
  94. package/dist/ai-instruction/dto/update-ai-instruction.dto.d.ts +11 -0
  95. package/dist/ai-instruction/dto/update-ai-instruction.dto.d.ts.map +1 -1
  96. package/dist/ai-instruction/dto/update-ai-instruction.dto.js +34 -0
  97. package/dist/ai-instruction/dto/update-ai-instruction.dto.js.map +1 -1
  98. package/dist/ai-instruction/types/ai-instruction.types.d.ts +13 -1
  99. package/dist/ai-instruction/types/ai-instruction.types.d.ts.map +1 -1
  100. package/dist/ai-instruction/types/ai-instruction.types.js +10 -0
  101. package/dist/ai-instruction/types/ai-instruction.types.js.map +1 -1
  102. package/dist/auth/auth.controller.d.ts +89 -15
  103. package/dist/auth/auth.controller.d.ts.map +1 -1
  104. package/dist/auth/auth.controller.js +116 -44
  105. package/dist/auth/auth.controller.js.map +1 -1
  106. package/dist/auth/auth.module.d.ts.map +1 -1
  107. package/dist/auth/auth.module.js +2 -0
  108. package/dist/auth/auth.module.js.map +1 -1
  109. package/dist/auth/auth.service.d.ts +169 -12
  110. package/dist/auth/auth.service.d.ts.map +1 -1
  111. package/dist/auth/auth.service.js +314 -67
  112. package/dist/auth/auth.service.js.map +1 -1
  113. package/dist/auth/dto/confirm-email.dto.d.ts +4 -0
  114. package/dist/auth/dto/confirm-email.dto.d.ts.map +1 -0
  115. package/dist/auth/dto/confirm-email.dto.js +22 -0
  116. package/dist/auth/dto/confirm-email.dto.js.map +1 -0
  117. package/dist/auth/dto/resend-confirmation.dto.d.ts +8 -0
  118. package/dist/auth/dto/resend-confirmation.dto.d.ts.map +1 -0
  119. package/dist/auth/dto/resend-confirmation.dto.js +36 -0
  120. package/dist/auth/dto/resend-confirmation.dto.js.map +1 -0
  121. package/dist/authorize/authorize.controller.d.ts +1 -1
  122. package/dist/authorize/authorize.controller.d.ts.map +1 -1
  123. package/dist/authorize/authorize.controller.js +4 -2
  124. package/dist/authorize/authorize.controller.js.map +1 -1
  125. package/dist/authorize/authorize.service.d.ts +7 -0
  126. package/dist/authorize/authorize.service.d.ts.map +1 -1
  127. package/dist/authorize/authorize.service.js +1 -1
  128. package/dist/authorize/authorize.service.js.map +1 -1
  129. package/dist/captcha/captcha.module.d.ts +3 -0
  130. package/dist/captcha/captcha.module.d.ts.map +1 -0
  131. package/dist/captcha/captcha.module.js +23 -0
  132. package/dist/captcha/captcha.module.js.map +1 -0
  133. package/dist/captcha/captcha.service.d.ts +38 -0
  134. package/dist/captcha/captcha.service.d.ts.map +1 -0
  135. package/dist/captcha/captcha.service.js +144 -0
  136. package/dist/captcha/captcha.service.js.map +1 -0
  137. package/dist/challenge/challenge.service.d.ts +31 -9
  138. package/dist/challenge/challenge.service.d.ts.map +1 -1
  139. package/dist/challenge/challenge.service.js +111 -16
  140. package/dist/challenge/challenge.service.js.map +1 -1
  141. package/dist/core.module.d.ts +3 -1
  142. package/dist/core.module.d.ts.map +1 -1
  143. package/dist/core.module.js +46 -2
  144. package/dist/core.module.js.map +1 -1
  145. package/dist/dashboard/dashboard/dashboard.controller.d.ts +21 -21
  146. package/dist/dashboard/dashboard/dashboard.service.d.ts +21 -21
  147. package/dist/dashboard/dashboard-component/dashboard-component.controller.d.ts +10 -10
  148. package/dist/dashboard/dashboard-component/dashboard-component.service.d.ts +10 -10
  149. package/dist/dashboard/dashboard-component-role/dashboard-component-role.controller.d.ts +20 -20
  150. package/dist/dashboard/dashboard-component-role/dashboard-component-role.service.d.ts +20 -20
  151. package/dist/dashboard/dashboard-core/dashboard-core.controller.d.ts +3 -3
  152. package/dist/dashboard/dashboard-core/dashboard-core.service.d.ts +3 -3
  153. package/dist/dashboard/dashboard-item/dashboard-item.controller.d.ts +2 -2
  154. package/dist/dashboard/dashboard-item/dashboard-item.service.d.ts +2 -2
  155. package/dist/dashboard/dashboard-role/dashboard-role.controller.d.ts +13 -13
  156. package/dist/dashboard/dashboard-role/dashboard-role.service.d.ts +13 -13
  157. package/dist/file/file.controller.d.ts +8 -1
  158. package/dist/file/file.controller.d.ts.map +1 -1
  159. package/dist/file/file.controller.js +45 -7
  160. package/dist/file/file.controller.js.map +1 -1
  161. package/dist/file/file.service.d.ts +134 -1
  162. package/dist/file/file.service.d.ts.map +1 -1
  163. package/dist/file/file.service.js +363 -12
  164. package/dist/file/file.service.js.map +1 -1
  165. package/dist/file/image-optimization.service.d.ts +43 -0
  166. package/dist/file/image-optimization.service.d.ts.map +1 -1
  167. package/dist/file/image-optimization.service.js +154 -0
  168. package/dist/file/image-optimization.service.js.map +1 -1
  169. package/dist/file/provider/abstract.provider.d.ts +16 -0
  170. package/dist/file/provider/abstract.provider.d.ts.map +1 -1
  171. package/dist/file/provider/abstract.provider.js +4 -0
  172. package/dist/file/provider/abstract.provider.js.map +1 -1
  173. package/dist/file/provider/gcs.provider.d.ts +2 -0
  174. package/dist/file/provider/gcs.provider.d.ts.map +1 -1
  175. package/dist/file/provider/gcs.provider.js +10 -0
  176. package/dist/file/provider/gcs.provider.js.map +1 -1
  177. package/dist/file/provider/local.provider.d.ts +1 -0
  178. package/dist/file/provider/local.provider.d.ts.map +1 -1
  179. package/dist/file/provider/local.provider.js +13 -0
  180. package/dist/file/provider/local.provider.js.map +1 -1
  181. package/dist/file/provider/s3.provider.d.ts +5 -0
  182. package/dist/file/provider/s3.provider.d.ts.map +1 -1
  183. package/dist/file/provider/s3.provider.js +15 -0
  184. package/dist/file/provider/s3.provider.js.map +1 -1
  185. package/dist/file/provider/spaces.provider.d.ts +5 -0
  186. package/dist/file/provider/spaces.provider.d.ts.map +1 -1
  187. package/dist/file/provider/spaces.provider.js +16 -0
  188. package/dist/file/provider/spaces.provider.js.map +1 -1
  189. package/dist/impersonation/dto/redeem-impersonation.dto.d.ts +4 -0
  190. package/dist/impersonation/dto/redeem-impersonation.dto.d.ts.map +1 -0
  191. package/dist/impersonation/dto/redeem-impersonation.dto.js +23 -0
  192. package/dist/impersonation/dto/redeem-impersonation.dto.js.map +1 -0
  193. package/dist/impersonation/dto/start-impersonation.dto.d.ts +7 -0
  194. package/dist/impersonation/dto/start-impersonation.dto.d.ts.map +1 -0
  195. package/dist/impersonation/dto/start-impersonation.dto.js +27 -0
  196. package/dist/impersonation/dto/start-impersonation.dto.js.map +1 -0
  197. package/dist/impersonation/impersonation-restrictions.d.ts +26 -0
  198. package/dist/impersonation/impersonation-restrictions.d.ts.map +1 -0
  199. package/dist/impersonation/impersonation-restrictions.js +76 -0
  200. package/dist/impersonation/impersonation-restrictions.js.map +1 -0
  201. package/dist/impersonation/impersonation.controller.d.ts +90 -0
  202. package/dist/impersonation/impersonation.controller.d.ts.map +1 -0
  203. package/dist/impersonation/impersonation.controller.js +135 -0
  204. package/dist/impersonation/impersonation.controller.js.map +1 -0
  205. package/dist/impersonation/impersonation.module.d.ts +8 -0
  206. package/dist/impersonation/impersonation.module.d.ts.map +1 -0
  207. package/dist/impersonation/impersonation.module.js +44 -0
  208. package/dist/impersonation/impersonation.module.js.map +1 -0
  209. package/dist/impersonation/impersonation.service.d.ts +164 -0
  210. package/dist/impersonation/impersonation.service.d.ts.map +1 -0
  211. package/dist/impersonation/impersonation.service.js +408 -0
  212. package/dist/impersonation/impersonation.service.js.map +1 -0
  213. package/dist/incident/incident-notifier.service.d.ts +36 -0
  214. package/dist/incident/incident-notifier.service.d.ts.map +1 -0
  215. package/dist/incident/incident-notifier.service.js +208 -0
  216. package/dist/incident/incident-notifier.service.js.map +1 -0
  217. package/dist/incident/incident.controller.d.ts +23 -0
  218. package/dist/incident/incident.controller.d.ts.map +1 -0
  219. package/dist/incident/incident.controller.js +75 -0
  220. package/dist/incident/incident.controller.js.map +1 -0
  221. package/dist/incident/incident.module.d.ts +7 -0
  222. package/dist/incident/incident.module.d.ts.map +1 -0
  223. package/dist/incident/incident.module.js +32 -0
  224. package/dist/incident/incident.module.js.map +1 -0
  225. package/dist/incident/incident.service.d.ts +72 -0
  226. package/dist/incident/incident.service.d.ts.map +1 -0
  227. package/dist/incident/incident.service.js +184 -0
  228. package/dist/incident/incident.service.js.map +1 -0
  229. package/dist/index.d.ts +43 -0
  230. package/dist/index.d.ts.map +1 -1
  231. package/dist/index.js +49 -0
  232. package/dist/index.js.map +1 -1
  233. package/dist/integration/services/outbox-polling.coordinator.d.ts +2 -0
  234. package/dist/integration/services/outbox-polling.coordinator.d.ts.map +1 -1
  235. package/dist/integration/services/outbox-polling.coordinator.js +50 -30
  236. package/dist/integration/services/outbox-polling.coordinator.js.map +1 -1
  237. package/dist/integration/services/outbox.service.d.ts.map +1 -1
  238. package/dist/integration/services/outbox.service.js +5 -1
  239. package/dist/integration/services/outbox.service.js.map +1 -1
  240. package/dist/integration-profile/dto/test.dto.d.ts +13 -0
  241. package/dist/integration-profile/dto/test.dto.d.ts.map +1 -0
  242. package/dist/integration-profile/dto/test.dto.js +26 -0
  243. package/dist/integration-profile/dto/test.dto.js.map +1 -0
  244. package/dist/integration-profile/integration-profile.controller.d.ts +12 -1
  245. package/dist/integration-profile/integration-profile.controller.d.ts.map +1 -1
  246. package/dist/integration-profile/integration-profile.controller.js +9 -1
  247. package/dist/integration-profile/integration-profile.controller.js.map +1 -1
  248. package/dist/integration-profile/integration-profile.module.d.ts +6 -1
  249. package/dist/integration-profile/integration-profile.module.d.ts.map +1 -1
  250. package/dist/integration-profile/integration-profile.module.js +26 -3
  251. package/dist/integration-profile/integration-profile.module.js.map +1 -1
  252. package/dist/integration-profile/integration-profile.secrets.d.ts.map +1 -1
  253. package/dist/integration-profile/integration-profile.secrets.js +12 -1
  254. package/dist/integration-profile/integration-profile.secrets.js.map +1 -1
  255. package/dist/integration-profile/integration-profile.service.d.ts +26 -7
  256. package/dist/integration-profile/integration-profile.service.d.ts.map +1 -1
  257. package/dist/integration-profile/integration-profile.service.js +94 -91
  258. package/dist/integration-profile/integration-profile.service.js.map +1 -1
  259. package/dist/integration-profile/integration-profile.utils.d.ts +27 -1
  260. package/dist/integration-profile/integration-profile.utils.d.ts.map +1 -1
  261. package/dist/integration-profile/integration-profile.utils.js +46 -5
  262. package/dist/integration-profile/integration-profile.utils.js.map +1 -1
  263. package/dist/integration-profile/testers/ai.testers.d.ts +3 -0
  264. package/dist/integration-profile/testers/ai.testers.d.ts.map +1 -0
  265. package/dist/integration-profile/testers/ai.testers.js +125 -0
  266. package/dist/integration-profile/testers/ai.testers.js.map +1 -0
  267. package/dist/integration-profile/testers/captcha.testers.d.ts +3 -0
  268. package/dist/integration-profile/testers/captcha.testers.d.ts.map +1 -0
  269. package/dist/integration-profile/testers/captcha.testers.js +121 -0
  270. package/dist/integration-profile/testers/captcha.testers.js.map +1 -0
  271. package/dist/integration-profile/testers/email.testers.d.ts +3 -0
  272. package/dist/integration-profile/testers/email.testers.d.ts.map +1 -0
  273. package/dist/integration-profile/testers/email.testers.js +156 -0
  274. package/dist/integration-profile/testers/email.testers.js.map +1 -0
  275. package/dist/integration-profile/testers/http-probe.d.ts +57 -0
  276. package/dist/integration-profile/testers/http-probe.d.ts.map +1 -0
  277. package/dist/integration-profile/testers/http-probe.js +140 -0
  278. package/dist/integration-profile/testers/http-probe.js.map +1 -0
  279. package/dist/integration-profile/testers/index.d.ts +12 -0
  280. package/dist/integration-profile/testers/index.d.ts.map +1 -0
  281. package/dist/integration-profile/testers/index.js +45 -0
  282. package/dist/integration-profile/testers/index.js.map +1 -0
  283. package/dist/integration-profile/testers/infrastructure.testers.d.ts +3 -0
  284. package/dist/integration-profile/testers/infrastructure.testers.d.ts.map +1 -0
  285. package/dist/integration-profile/testers/infrastructure.testers.js +105 -0
  286. package/dist/integration-profile/testers/infrastructure.testers.js.map +1 -0
  287. package/dist/integration-profile/testers/integration-tester.registry.d.ts +17 -0
  288. package/dist/integration-profile/testers/integration-tester.registry.d.ts.map +1 -0
  289. package/dist/integration-profile/testers/integration-tester.registry.js +52 -0
  290. package/dist/integration-profile/testers/integration-tester.registry.js.map +1 -0
  291. package/dist/integration-profile/testers/integration-tester.types.d.ts +55 -0
  292. package/dist/integration-profile/testers/integration-tester.types.d.ts.map +1 -0
  293. package/dist/integration-profile/testers/integration-tester.types.js +16 -0
  294. package/dist/integration-profile/testers/integration-tester.types.js.map +1 -0
  295. package/dist/integration-profile/testers/messaging.testers.d.ts +3 -0
  296. package/dist/integration-profile/testers/messaging.testers.d.ts.map +1 -0
  297. package/dist/integration-profile/testers/messaging.testers.js +70 -0
  298. package/dist/integration-profile/testers/messaging.testers.js.map +1 -0
  299. package/dist/integration-profile/testers/oauth.testers.d.ts +3 -0
  300. package/dist/integration-profile/testers/oauth.testers.d.ts.map +1 -0
  301. package/dist/integration-profile/testers/oauth.testers.js +285 -0
  302. package/dist/integration-profile/testers/oauth.testers.js.map +1 -0
  303. package/dist/integration-profile/testers/payment.testers.d.ts +3 -0
  304. package/dist/integration-profile/testers/payment.testers.d.ts.map +1 -0
  305. package/dist/integration-profile/testers/payment.testers.js +169 -0
  306. package/dist/integration-profile/testers/payment.testers.js.map +1 -0
  307. package/dist/integration-profile/testers/storage.testers.d.ts +3 -0
  308. package/dist/integration-profile/testers/storage.testers.d.ts.map +1 -0
  309. package/dist/integration-profile/testers/storage.testers.js +208 -0
  310. package/dist/integration-profile/testers/storage.testers.js.map +1 -0
  311. package/dist/language/en.json +15 -2
  312. package/dist/language/pt.json +15 -2
  313. package/dist/leaked-password/leaked-password.controller.d.ts +24 -0
  314. package/dist/leaked-password/leaked-password.controller.d.ts.map +1 -0
  315. package/dist/leaked-password/leaked-password.controller.js +78 -0
  316. package/dist/leaked-password/leaked-password.controller.js.map +1 -0
  317. package/dist/leaked-password/leaked-password.module.d.ts +8 -0
  318. package/dist/leaked-password/leaked-password.module.d.ts.map +1 -0
  319. package/dist/leaked-password/leaked-password.module.js +31 -0
  320. package/dist/leaked-password/leaked-password.module.js.map +1 -0
  321. package/dist/leaked-password/leaked-password.service.d.ts +64 -0
  322. package/dist/leaked-password/leaked-password.service.d.ts.map +1 -0
  323. package/dist/leaked-password/leaked-password.service.js +218 -0
  324. package/dist/leaked-password/leaked-password.service.js.map +1 -0
  325. package/dist/locale/locale.controller.d.ts +1 -1
  326. package/dist/locale/locale.service.d.ts +1 -1
  327. package/dist/mail/dto/preview.dto.d.ts +18 -0
  328. package/dist/mail/dto/preview.dto.d.ts.map +1 -0
  329. package/dist/mail/dto/preview.dto.js +66 -0
  330. package/dist/mail/dto/preview.dto.js.map +1 -0
  331. package/dist/mail/dto/send.dto.d.ts +44 -0
  332. package/dist/mail/dto/send.dto.d.ts.map +1 -1
  333. package/dist/mail/dto/send.dto.js +20 -0
  334. package/dist/mail/dto/send.dto.js.map +1 -1
  335. package/dist/mail/mail.controller.d.ts +5 -0
  336. package/dist/mail/mail.controller.d.ts.map +1 -1
  337. package/dist/mail/mail.controller.js +16 -2
  338. package/dist/mail/mail.controller.js.map +1 -1
  339. package/dist/mail/mail.module.d.ts.map +1 -1
  340. package/dist/mail/mail.module.js +2 -0
  341. package/dist/mail/mail.module.js.map +1 -1
  342. package/dist/mail/mail.service.d.ts +69 -4
  343. package/dist/mail/mail.service.d.ts.map +1 -1
  344. package/dist/mail/mail.service.js +278 -37
  345. package/dist/mail/mail.service.js.map +1 -1
  346. package/dist/mail-delivery/mail-delivery-provision.service.d.ts +21 -0
  347. package/dist/mail-delivery/mail-delivery-provision.service.d.ts.map +1 -0
  348. package/dist/mail-delivery/mail-delivery-provision.service.js +64 -0
  349. package/dist/mail-delivery/mail-delivery-provision.service.js.map +1 -0
  350. package/dist/mail-delivery/mail-delivery.constants.d.ts +17 -0
  351. package/dist/mail-delivery/mail-delivery.constants.d.ts.map +1 -0
  352. package/dist/mail-delivery/mail-delivery.constants.js +31 -0
  353. package/dist/mail-delivery/mail-delivery.constants.js.map +1 -0
  354. package/dist/mail-delivery/mail-delivery.controller.d.ts +19 -0
  355. package/dist/mail-delivery/mail-delivery.controller.d.ts.map +1 -0
  356. package/dist/mail-delivery/mail-delivery.controller.js +53 -0
  357. package/dist/mail-delivery/mail-delivery.controller.js.map +1 -0
  358. package/dist/mail-delivery/mail-delivery.module.d.ts +7 -0
  359. package/dist/mail-delivery/mail-delivery.module.d.ts.map +1 -0
  360. package/dist/mail-delivery/mail-delivery.module.js +36 -0
  361. package/dist/mail-delivery/mail-delivery.module.js.map +1 -0
  362. package/dist/mail-delivery/mail-delivery.service.d.ts +38 -0
  363. package/dist/mail-delivery/mail-delivery.service.d.ts.map +1 -0
  364. package/dist/mail-delivery/mail-delivery.service.js +140 -0
  365. package/dist/mail-delivery/mail-delivery.service.js.map +1 -0
  366. package/dist/mail-delivery/ses-event.parser.d.ts +27 -0
  367. package/dist/mail-delivery/ses-event.parser.d.ts.map +1 -0
  368. package/dist/mail-delivery/ses-event.parser.js +131 -0
  369. package/dist/mail-delivery/ses-event.parser.js.map +1 -0
  370. package/dist/mail-delivery/ses-webhook.service.d.ts +58 -0
  371. package/dist/mail-delivery/ses-webhook.service.d.ts.map +1 -0
  372. package/dist/mail-delivery/ses-webhook.service.js +214 -0
  373. package/dist/mail-delivery/ses-webhook.service.js.map +1 -0
  374. package/dist/mail-delivery/sns-message.util.d.ts +38 -0
  375. package/dist/mail-delivery/sns-message.util.d.ts.map +1 -0
  376. package/dist/mail-delivery/sns-message.util.js +109 -0
  377. package/dist/mail-delivery/sns-message.util.js.map +1 -0
  378. package/dist/mail-layout/dto/update.dto.d.ts +17 -0
  379. package/dist/mail-layout/dto/update.dto.d.ts.map +1 -0
  380. package/dist/mail-layout/dto/update.dto.js +27 -0
  381. package/dist/mail-layout/dto/update.dto.js.map +1 -0
  382. package/dist/mail-layout/mail-layout.controller.d.ts +15 -0
  383. package/dist/mail-layout/mail-layout.controller.d.ts.map +1 -0
  384. package/dist/mail-layout/mail-layout.controller.js +71 -0
  385. package/dist/mail-layout/mail-layout.controller.js.map +1 -0
  386. package/dist/mail-layout/mail-layout.module.d.ts +3 -0
  387. package/dist/mail-layout/mail-layout.module.d.ts.map +1 -0
  388. package/dist/mail-layout/mail-layout.module.js +35 -0
  389. package/dist/mail-layout/mail-layout.module.js.map +1 -0
  390. package/dist/mail-layout/mail-layout.service.d.ts +27 -0
  391. package/dist/mail-layout/mail-layout.service.d.ts.map +1 -0
  392. package/dist/mail-layout/mail-layout.service.js +80 -0
  393. package/dist/mail-layout/mail-layout.service.js.map +1 -0
  394. package/dist/mail-sent/dto/query-mail-sent-list.dto.d.ts +5 -0
  395. package/dist/mail-sent/dto/query-mail-sent-list.dto.d.ts.map +1 -1
  396. package/dist/mail-sent/dto/query-mail-sent-list.dto.js +6 -0
  397. package/dist/mail-sent/dto/query-mail-sent-list.dto.js.map +1 -1
  398. package/dist/mail-sent/mail-sent.controller.d.ts +39 -0
  399. package/dist/mail-sent/mail-sent.controller.d.ts.map +1 -1
  400. package/dist/mail-sent/mail-sent.service.d.ts +39 -0
  401. package/dist/mail-sent/mail-sent.service.d.ts.map +1 -1
  402. package/dist/mail-sent/mail-sent.service.js +45 -4
  403. package/dist/mail-sent/mail-sent.service.js.map +1 -1
  404. package/dist/mailbox/mailbox-fetcher.registry.d.ts +100 -0
  405. package/dist/mailbox/mailbox-fetcher.registry.d.ts.map +1 -0
  406. package/dist/mailbox/mailbox-fetcher.registry.js +59 -0
  407. package/dist/mailbox/mailbox-fetcher.registry.js.map +1 -0
  408. package/dist/mailbox/mailbox.module.d.ts +8 -0
  409. package/dist/mailbox/mailbox.module.d.ts.map +1 -0
  410. package/dist/mailbox/mailbox.module.js +27 -0
  411. package/dist/mailbox/mailbox.module.js.map +1 -0
  412. package/dist/mcp-chat/mcp-chat.controller.d.ts +2 -2
  413. package/dist/mcp-chat/mcp-chat.service.d.ts +24 -2
  414. package/dist/mcp-chat/mcp-chat.service.d.ts.map +1 -1
  415. package/dist/mcp-chat/mcp-chat.service.js +80 -24
  416. package/dist/mcp-chat/mcp-chat.service.js.map +1 -1
  417. package/dist/meeting/meeting-provider.registry.d.ts +155 -0
  418. package/dist/meeting/meeting-provider.registry.d.ts.map +1 -0
  419. package/dist/meeting/meeting-provider.registry.js +53 -0
  420. package/dist/meeting/meeting-provider.registry.js.map +1 -0
  421. package/dist/meeting/meeting.constants.d.ts +47 -0
  422. package/dist/meeting/meeting.constants.d.ts.map +1 -0
  423. package/dist/meeting/meeting.constants.js +21 -0
  424. package/dist/meeting/meeting.constants.js.map +1 -0
  425. package/dist/meeting/meeting.module.d.ts +7 -0
  426. package/dist/meeting/meeting.module.d.ts.map +1 -0
  427. package/dist/meeting/meeting.module.js +26 -0
  428. package/dist/meeting/meeting.module.js.map +1 -0
  429. package/dist/menu/menu.controller.d.ts +3 -3
  430. package/dist/menu/menu.service.d.ts +3 -3
  431. package/dist/middlewares/locale-injection.middleware.d.ts +12 -0
  432. package/dist/middlewares/locale-injection.middleware.d.ts.map +1 -1
  433. package/dist/middlewares/locale-injection.middleware.js +20 -4
  434. package/dist/middlewares/locale-injection.middleware.js.map +1 -1
  435. package/dist/notification/notification.controller.d.ts +12 -12
  436. package/dist/notification/notification.service.d.ts +12 -12
  437. package/dist/oauth/oauth-token-broker.service.d.ts +72 -0
  438. package/dist/oauth/oauth-token-broker.service.d.ts.map +1 -0
  439. package/dist/oauth/oauth-token-broker.service.js +258 -0
  440. package/dist/oauth/oauth-token-broker.service.js.map +1 -0
  441. package/dist/oauth/oauth.module.d.ts.map +1 -1
  442. package/dist/oauth/oauth.module.js +3 -1
  443. package/dist/oauth/oauth.module.js.map +1 -1
  444. package/dist/oauth/oauth.service.d.ts +2 -0
  445. package/dist/oauth/oauth.service.d.ts.map +1 -1
  446. package/dist/oauth/oauth.service.js +6 -3
  447. package/dist/oauth/oauth.service.js.map +1 -1
  448. package/dist/oauth/providers/google.provider.d.ts +7 -0
  449. package/dist/oauth/providers/google.provider.d.ts.map +1 -1
  450. package/dist/oauth/providers/google.provider.js +43 -13
  451. package/dist/oauth/providers/google.provider.js.map +1 -1
  452. package/dist/observability/monitored-cron.d.ts +34 -0
  453. package/dist/observability/monitored-cron.d.ts.map +1 -0
  454. package/dist/observability/monitored-cron.js +118 -0
  455. package/dist/observability/monitored-cron.js.map +1 -0
  456. package/dist/pairing/dto/approve-reverse-pairing.dto.d.ts +12 -0
  457. package/dist/pairing/dto/approve-reverse-pairing.dto.d.ts.map +1 -0
  458. package/dist/pairing/dto/approve-reverse-pairing.dto.js +30 -0
  459. package/dist/pairing/dto/approve-reverse-pairing.dto.js.map +1 -0
  460. package/dist/pairing/dto/claim-pairing.dto.d.ts +11 -0
  461. package/dist/pairing/dto/claim-pairing.dto.d.ts.map +1 -0
  462. package/dist/pairing/dto/claim-pairing.dto.js +35 -0
  463. package/dist/pairing/dto/claim-pairing.dto.js.map +1 -0
  464. package/dist/pairing/dto/confirm-pairing.dto.d.ts +10 -0
  465. package/dist/pairing/dto/confirm-pairing.dto.d.ts.map +1 -0
  466. package/dist/pairing/dto/confirm-pairing.dto.js +24 -0
  467. package/dist/pairing/dto/confirm-pairing.dto.js.map +1 -0
  468. package/dist/pairing/dto/poll-reverse-pairing.dto.d.ts +5 -0
  469. package/dist/pairing/dto/poll-reverse-pairing.dto.d.ts.map +1 -0
  470. package/dist/pairing/dto/poll-reverse-pairing.dto.js +24 -0
  471. package/dist/pairing/dto/poll-reverse-pairing.dto.js.map +1 -0
  472. package/dist/pairing/dto/start-pairing.dto.d.ts +11 -0
  473. package/dist/pairing/dto/start-pairing.dto.d.ts.map +1 -0
  474. package/dist/pairing/dto/start-pairing.dto.js +30 -0
  475. package/dist/pairing/dto/start-pairing.dto.js.map +1 -0
  476. package/dist/pairing/dto/start-reverse-pairing.dto.d.ts +24 -0
  477. package/dist/pairing/dto/start-reverse-pairing.dto.d.ts.map +1 -0
  478. package/dist/pairing/dto/start-reverse-pairing.dto.js +47 -0
  479. package/dist/pairing/dto/start-reverse-pairing.dto.js.map +1 -0
  480. package/dist/pairing/pairing.controller.d.ts +118 -0
  481. package/dist/pairing/pairing.controller.d.ts.map +1 -0
  482. package/dist/pairing/pairing.controller.js +296 -0
  483. package/dist/pairing/pairing.controller.js.map +1 -0
  484. package/dist/pairing/pairing.module.d.ts +10 -0
  485. package/dist/pairing/pairing.module.d.ts.map +1 -0
  486. package/dist/pairing/pairing.module.js +40 -0
  487. package/dist/pairing/pairing.module.js.map +1 -0
  488. package/dist/pairing/pairing.service.d.ts +238 -0
  489. package/dist/pairing/pairing.service.d.ts.map +1 -0
  490. package/dist/pairing/pairing.service.js +495 -0
  491. package/dist/pairing/pairing.service.js.map +1 -0
  492. package/dist/pdf/pdf.service.d.ts +11 -6
  493. package/dist/pdf/pdf.service.d.ts.map +1 -1
  494. package/dist/pdf/pdf.service.js +60 -20
  495. package/dist/pdf/pdf.service.js.map +1 -1
  496. package/dist/presence/presence.controller.d.ts +16 -0
  497. package/dist/presence/presence.controller.d.ts.map +1 -0
  498. package/dist/presence/presence.controller.js +60 -0
  499. package/dist/presence/presence.controller.js.map +1 -0
  500. package/dist/presence/presence.listener.d.ts +29 -0
  501. package/dist/presence/presence.listener.d.ts.map +1 -0
  502. package/dist/presence/presence.listener.js +82 -0
  503. package/dist/presence/presence.listener.js.map +1 -0
  504. package/dist/presence/presence.module.d.ts +3 -0
  505. package/dist/presence/presence.module.d.ts.map +1 -0
  506. package/dist/presence/presence.module.js +32 -0
  507. package/dist/presence/presence.module.js.map +1 -0
  508. package/dist/presence/presence.service.d.ts +42 -0
  509. package/dist/presence/presence.service.d.ts.map +1 -0
  510. package/dist/presence/presence.service.js +147 -0
  511. package/dist/presence/presence.service.js.map +1 -0
  512. package/dist/profile/dto/delete-account.dto.d.ts +8 -0
  513. package/dist/profile/dto/delete-account.dto.d.ts.map +1 -0
  514. package/dist/profile/dto/delete-account.dto.js +22 -0
  515. package/dist/profile/dto/delete-account.dto.js.map +1 -0
  516. package/dist/profile/events/profile-account-deleted.event.d.ts +12 -0
  517. package/dist/profile/events/profile-account-deleted.event.d.ts.map +1 -0
  518. package/dist/profile/events/profile-account-deleted.event.js +17 -0
  519. package/dist/profile/events/profile-account-deleted.event.js.map +1 -0
  520. package/dist/profile/profile.controller.d.ts +32 -15
  521. package/dist/profile/profile.controller.d.ts.map +1 -1
  522. package/dist/profile/profile.controller.js +75 -46
  523. package/dist/profile/profile.controller.js.map +1 -1
  524. package/dist/profile/profile.service.d.ts +41 -18
  525. package/dist/profile/profile.service.d.ts.map +1 -1
  526. package/dist/profile/profile.service.js +133 -48
  527. package/dist/profile/profile.service.js.map +1 -1
  528. package/dist/realtime/realtime.gateway.d.ts +48 -0
  529. package/dist/realtime/realtime.gateway.d.ts.map +1 -0
  530. package/dist/realtime/realtime.gateway.js +156 -0
  531. package/dist/realtime/realtime.gateway.js.map +1 -0
  532. package/dist/realtime/realtime.module.d.ts +8 -0
  533. package/dist/realtime/realtime.module.d.ts.map +1 -0
  534. package/dist/realtime/realtime.module.js +29 -0
  535. package/dist/realtime/realtime.module.js.map +1 -0
  536. package/dist/realtime/realtime.service.d.ts +51 -0
  537. package/dist/realtime/realtime.service.d.ts.map +1 -0
  538. package/dist/realtime/realtime.service.js +177 -0
  539. package/dist/realtime/realtime.service.js.map +1 -0
  540. package/dist/redis/redis-pubsub.d.ts +27 -0
  541. package/dist/redis/redis-pubsub.d.ts.map +1 -0
  542. package/dist/redis/redis-pubsub.js +184 -0
  543. package/dist/redis/redis-pubsub.js.map +1 -0
  544. package/dist/role/guards/role.guard.d.ts +5 -0
  545. package/dist/role/guards/role.guard.d.ts.map +1 -1
  546. package/dist/role/guards/role.guard.js +41 -39
  547. package/dist/role/guards/role.guard.js.map +1 -1
  548. package/dist/role/role.controller.d.ts +3 -3
  549. package/dist/role/role.service.d.ts +3 -3
  550. package/dist/session/session.controller.d.ts +2 -0
  551. package/dist/session/session.controller.d.ts.map +1 -1
  552. package/dist/session/session.service.d.ts +39 -0
  553. package/dist/session/session.service.d.ts.map +1 -1
  554. package/dist/session/session.service.js +91 -8
  555. package/dist/session/session.service.js.map +1 -1
  556. package/dist/setting/brand-asset.service.d.ts +48 -0
  557. package/dist/setting/brand-asset.service.d.ts.map +1 -0
  558. package/dist/setting/brand-asset.service.js +130 -0
  559. package/dist/setting/brand-asset.service.js.map +1 -0
  560. package/dist/setting/dto/create.dto.d.ts.map +1 -1
  561. package/dist/setting/dto/create.dto.js +9 -2
  562. package/dist/setting/dto/create.dto.js.map +1 -1
  563. package/dist/setting/setting.controller.d.ts +5 -5
  564. package/dist/setting/setting.module.d.ts.map +1 -1
  565. package/dist/setting/setting.module.js +3 -2
  566. package/dist/setting/setting.module.js.map +1 -1
  567. package/dist/setting/setting.service.d.ts +41 -5
  568. package/dist/setting/setting.service.d.ts.map +1 -1
  569. package/dist/setting/setting.service.js +113 -1
  570. package/dist/setting/setting.service.js.map +1 -1
  571. package/dist/token/token.service.d.ts +23 -2
  572. package/dist/token/token.service.d.ts.map +1 -1
  573. package/dist/token/token.service.js +39 -4
  574. package/dist/token/token.service.js.map +1 -1
  575. package/dist/user/dto/create-with-email-and-password.dto.d.ts +2 -0
  576. package/dist/user/dto/create-with-email-and-password.dto.d.ts.map +1 -1
  577. package/dist/user/dto/create-with-email-and-password.dto.js +5 -0
  578. package/dist/user/dto/create-with-email-and-password.dto.js.map +1 -1
  579. package/dist/user/dto/query-user-mail-list.dto.d.ts +5 -0
  580. package/dist/user/dto/query-user-mail-list.dto.d.ts.map +1 -0
  581. package/dist/user/dto/query-user-mail-list.dto.js +25 -0
  582. package/dist/user/dto/query-user-mail-list.dto.js.map +1 -0
  583. package/dist/user/user-credential.util.d.ts +19 -0
  584. package/dist/user/user-credential.util.d.ts.map +1 -0
  585. package/dist/user/user-credential.util.js +32 -0
  586. package/dist/user/user-credential.util.js.map +1 -0
  587. package/dist/user/user.controller.d.ts +24 -26
  588. package/dist/user/user.controller.d.ts.map +1 -1
  589. package/dist/user/user.controller.js +18 -3
  590. package/dist/user/user.controller.js.map +1 -1
  591. package/dist/user/user.service.d.ts +71 -29
  592. package/dist/user/user.service.d.ts.map +1 -1
  593. package/dist/user/user.service.js +291 -17
  594. package/dist/user/user.service.js.map +1 -1
  595. package/dist/user-device/user-device.controller.d.ts +54 -0
  596. package/dist/user-device/user-device.controller.d.ts.map +1 -0
  597. package/dist/user-device/user-device.controller.js +103 -0
  598. package/dist/user-device/user-device.controller.js.map +1 -0
  599. package/dist/user-device/user-device.module.d.ts +3 -0
  600. package/dist/user-device/user-device.module.d.ts.map +1 -0
  601. package/dist/user-device/user-device.module.js +26 -0
  602. package/dist/user-device/user-device.module.js.map +1 -0
  603. package/dist/user-device/user-device.service.d.ts +71 -0
  604. package/dist/user-device/user-device.service.d.ts.map +1 -0
  605. package/dist/user-device/user-device.service.js +158 -0
  606. package/dist/user-device/user-device.service.js.map +1 -0
  607. package/dist/utils/device-key.d.ts +23 -0
  608. package/dist/utils/device-key.d.ts.map +1 -0
  609. package/dist/utils/device-key.js +31 -0
  610. package/dist/utils/device-key.js.map +1 -0
  611. package/dist/utils/geo-ip.d.ts +38 -0
  612. package/dist/utils/geo-ip.d.ts.map +1 -0
  613. package/dist/utils/geo-ip.js +122 -0
  614. package/dist/utils/geo-ip.js.map +1 -0
  615. package/dist/utils/locale-context.d.ts +10 -7
  616. package/dist/utils/locale-context.d.ts.map +1 -1
  617. package/dist/utils/locale-context.js +14 -8
  618. package/dist/utils/locale-context.js.map +1 -1
  619. package/dist/utils/security-event-vars.d.ts +56 -0
  620. package/dist/utils/security-event-vars.d.ts.map +1 -0
  621. package/dist/utils/security-event-vars.js +109 -0
  622. package/dist/utils/security-event-vars.js.map +1 -0
  623. package/dist/utils/user-agent.d.ts +19 -0
  624. package/dist/utils/user-agent.d.ts.map +1 -0
  625. package/dist/utils/user-agent.js +36 -0
  626. package/dist/utils/user-agent.js.map +1 -0
  627. package/dist/validators/is-strong-password-with-settings.validator.d.ts.map +1 -1
  628. package/dist/validators/is-strong-password-with-settings.validator.js +11 -0
  629. package/dist/validators/is-strong-password-with-settings.validator.js.map +1 -1
  630. package/dist/validators/service-locator.d.ts +9 -0
  631. package/dist/validators/service-locator.d.ts.map +1 -1
  632. package/dist/validators/service-locator.js +12 -0
  633. package/dist/validators/service-locator.js.map +1 -1
  634. package/dist/webhook-integration/webhook-integration.service.d.ts +5 -0
  635. package/dist/webhook-integration/webhook-integration.service.d.ts.map +1 -1
  636. package/dist/webhook-integration/webhook-integration.service.js +50 -4
  637. package/dist/webhook-integration/webhook-integration.service.js.map +1 -1
  638. package/dist/webhook-integration/webhook-protocol.registry.d.ts +6 -0
  639. package/dist/webhook-integration/webhook-protocol.registry.d.ts.map +1 -1
  640. package/dist/webhook-integration/webhook-protocol.registry.js.map +1 -1
  641. package/dist/whatsapp-sender/whatsapp-sender.module.d.ts +3 -0
  642. package/dist/whatsapp-sender/whatsapp-sender.module.d.ts.map +1 -0
  643. package/dist/whatsapp-sender/whatsapp-sender.module.js +23 -0
  644. package/dist/whatsapp-sender/whatsapp-sender.module.js.map +1 -0
  645. package/dist/whatsapp-sender/whatsapp-sender.service.d.ts +50 -0
  646. package/dist/whatsapp-sender/whatsapp-sender.service.d.ts.map +1 -0
  647. package/dist/whatsapp-sender/whatsapp-sender.service.js +224 -0
  648. package/dist/whatsapp-sender/whatsapp-sender.service.js.map +1 -0
  649. package/hedhog/data/integration_provider.yaml +25 -0
  650. package/hedhog/data/mail.yaml +275 -112
  651. package/hedhog/data/mail_layout.yaml +198 -0
  652. package/hedhog/data/menu.yaml +69 -3
  653. package/hedhog/data/role.yaml +16 -0
  654. package/hedhog/data/route.yaml +307 -3
  655. package/hedhog/data/setting_group.yaml +315 -1
  656. package/hedhog/data/setting_subgroup.yaml +8 -0
  657. package/hedhog/frontend/app/_lib/hooks/use-core-access.test.tsx.ejs +125 -0
  658. package/hedhog/frontend/app/_lib/hooks/use-core-access.ts.ejs +29 -0
  659. package/hedhog/frontend/app/_lib/hooks/use-impersonation-access.test.ts.ejs +71 -0
  660. package/hedhog/frontend/app/_lib/hooks/use-impersonation-access.ts.ejs +32 -0
  661. package/hedhog/frontend/app/access-log/page.tsx.ejs +96 -22
  662. package/hedhog/frontend/app/account/components/active-sessions.tsx.ejs +17 -1
  663. package/hedhog/frontend/app/account/components/known-devices.tsx.ejs +89 -0
  664. package/hedhog/frontend/app/account/components/mfa-setup-dialog.tsx.ejs +36 -0
  665. package/hedhog/frontend/app/account/components/profile-form.tsx.ejs +2 -1
  666. package/hedhog/frontend/app/account/components/two-factor-auth.tsx.ejs +2 -0
  667. package/hedhog/frontend/app/account/components/user-devices-list.tsx.ejs +186 -0
  668. package/hedhog/frontend/app/account/devices/page.tsx.ejs +5 -0
  669. package/hedhog/frontend/app/account/hooks/use-mfa-setup.ts.ejs +10 -7
  670. package/hedhog/frontend/app/account/layout.tsx.ejs +2 -0
  671. package/hedhog/frontend/app/ai_agent/page.tsx.ejs +7 -4
  672. package/hedhog/frontend/app/ai_instruction/_components/ai-instruction-form.tsx.ejs +580 -0
  673. package/hedhog/frontend/app/ai_instruction/_components/ai-instruction-preview.tsx.ejs +150 -0
  674. package/hedhog/frontend/app/ai_instruction/_components/ai-instruction-versions.tsx.ejs +199 -0
  675. package/hedhog/frontend/app/ai_instruction/_components/prompt-diff.tsx.ejs +63 -0
  676. package/hedhog/frontend/app/ai_instruction/_lib/line-diff.spec.ts.ejs +59 -0
  677. package/hedhog/frontend/app/ai_instruction/_lib/line-diff.ts.ejs +72 -0
  678. package/hedhog/frontend/app/ai_instruction/_lib/prompt-template.spec.ts.ejs +170 -0
  679. package/hedhog/frontend/app/ai_instruction/_lib/prompt-template.ts.ejs +167 -0
  680. package/hedhog/frontend/app/ai_instruction/_lib/types.ts.ejs +99 -0
  681. package/hedhog/frontend/app/ai_instruction/page.tsx.ejs +422 -0
  682. package/hedhog/frontend/app/configurations/[slug]/components/setting-field.test.tsx.ejs +298 -0
  683. package/hedhog/frontend/app/configurations/[slug]/components/setting-field.tsx.ejs +410 -1223
  684. package/hedhog/frontend/app/incidents/page.tsx.ejs +400 -0
  685. package/hedhog/frontend/app/integration/profiles/page.tsx.ejs +153 -84
  686. package/hedhog/frontend/app/mail/layout/page.tsx.ejs +344 -0
  687. package/hedhog/frontend/app/mail/log/page.tsx.ejs +210 -3
  688. package/hedhog/frontend/app/mail/template/page.tsx.ejs +292 -200
  689. package/hedhog/frontend/app/mcp_chat/page.tsx.ejs +129 -17
  690. package/hedhog/frontend/app/pages/_components/page-delete-dialog.tsx.ejs +343 -0
  691. package/hedhog/frontend/app/pages/_components/page-detail-sheet.tsx.ejs +438 -0
  692. package/hedhog/frontend/app/pages/_components/page-wizard-sheet.tsx.ejs +1009 -0
  693. package/hedhog/frontend/app/pages/_components/system-page-types.ts.ejs +56 -0
  694. package/hedhog/frontend/app/pages/_components/use-system-pages.ts.ejs +171 -0
  695. package/hedhog/frontend/app/pages/page.tsx.ejs +514 -0
  696. package/hedhog/frontend/app/users/active-session.tsx.ejs +58 -11
  697. package/hedhog/frontend/app/users/page.tsx.ejs +186 -21
  698. package/hedhog/frontend/app/users/simulate-access-dialog.test.tsx.ejs +202 -0
  699. package/hedhog/frontend/app/users/simulate-access-dialog.tsx.ejs +170 -0
  700. package/hedhog/frontend/app/users/user-activity-timeline.tsx.ejs +250 -0
  701. package/hedhog/frontend/app/users/user-devices.tsx.ejs +89 -0
  702. package/hedhog/frontend/app/users/user-logs.tsx.ejs +13 -1
  703. package/hedhog/frontend/app/users/user-mails.tsx.ejs +399 -0
  704. package/hedhog/frontend/app/users/user-sheet.tsx.ejs +106 -99
  705. package/hedhog/frontend/messages/en.json +643 -49
  706. package/hedhog/frontend/messages/pt.json +643 -49
  707. package/hedhog/table/access_log.yaml +7 -0
  708. package/hedhog/table/ai_agent.yaml +1 -0
  709. package/hedhog/table/ai_instruction.yaml +15 -0
  710. package/hedhog/table/file.yaml +8 -0
  711. package/hedhog/table/leaked_password.yaml +18 -0
  712. package/hedhog/table/mail_delivery_event.yaml +76 -0
  713. package/hedhog/table/mail_layout.yaml +35 -0
  714. package/hedhog/table/mail_sent.yaml +23 -0
  715. package/hedhog/table/mail_var.yaml +4 -0
  716. package/hedhog/table/setting.yaml +1 -0
  717. package/hedhog/table/system_incident.yaml +59 -0
  718. package/hedhog/table/user_activity.yaml +9 -0
  719. package/hedhog/table/user_device.yaml +52 -0
  720. package/hedhog/table/user_presence.yaml +36 -0
  721. package/hedhog/table/user_session.yaml +20 -1
  722. package/package.json +7 -2
  723. package/src/access-log/access-log.controller.ts +1 -0
  724. package/src/access-log/access-log.interceptor.ts +9 -3
  725. package/src/access-log/access-log.service.spec.ts +33 -2
  726. package/src/access-log/access-log.service.ts +38 -0
  727. package/src/access-log/dto/query-access-log.dto.ts +5 -0
  728. package/src/ai/ai-attachment.fragments.spec.ts +319 -0
  729. package/src/ai/ai-attachment.fragments.ts +35 -0
  730. package/src/ai/ai.controller.ts +9 -0
  731. package/src/ai/ai.module.ts +3 -2
  732. package/src/ai/ai.prompts.ts +38 -0
  733. package/src/ai/ai.service.spec.ts +280 -0
  734. package/src/ai/ai.service.ts +475 -82
  735. package/src/ai/dto/chat.dto.ts +33 -3
  736. package/src/ai/dto/create-agent.dto.ts +2 -2
  737. package/src/ai/dto/richtext-edit-html.dto.ts +11 -0
  738. package/src/ai/dto/update-agent.dto.ts +2 -2
  739. package/src/ai/richtext-ai.prompts.ts +57 -0
  740. package/src/ai/richtext-ai.service.ts +109 -0
  741. package/src/ai-instruction/ai-instruction.controller.ts +40 -9
  742. package/src/ai-instruction/ai-instruction.module.ts +13 -2
  743. package/src/ai-instruction/ai-instruction.service.spec.ts +658 -0
  744. package/src/ai-instruction/ai-instruction.service.ts +661 -62
  745. package/src/ai-instruction/ai-prompt-builder.service.ts +10 -1
  746. package/src/ai-instruction/ai-prompt-registry.ts +87 -0
  747. package/src/ai-instruction/ai-prompt-resolver.service.spec.ts +375 -0
  748. package/src/ai-instruction/ai-prompt-resolver.service.ts +295 -0
  749. package/src/ai-instruction/ai-prompt-template.util.spec.ts +162 -0
  750. package/src/ai-instruction/ai-prompt-template.util.ts +199 -0
  751. package/src/ai-instruction/dto/create-ai-instruction.dto.ts +39 -3
  752. package/src/ai-instruction/dto/preview-ai-instruction.dto.ts +26 -0
  753. package/src/ai-instruction/dto/update-ai-instruction.dto.ts +42 -1
  754. package/src/ai-instruction/types/ai-instruction.types.ts +24 -1
  755. package/src/auth/auth.controller.ts +78 -13
  756. package/src/auth/auth.module.ts +2 -0
  757. package/src/auth/auth.service.spec.ts +386 -7
  758. package/src/auth/auth.service.ts +435 -81
  759. package/src/auth/dto/confirm-email.dto.ts +7 -0
  760. package/src/auth/dto/resend-confirmation.dto.ts +20 -0
  761. package/src/authorize/authorize.controller.ts +2 -0
  762. package/src/authorize/authorize.service.spec.ts +23 -0
  763. package/src/authorize/authorize.service.ts +8 -0
  764. package/src/captcha/captcha.module.ts +10 -0
  765. package/src/captcha/captcha.service.spec.ts +210 -0
  766. package/src/captcha/captcha.service.ts +191 -0
  767. package/src/challenge/challenge.service.spec.ts +112 -4
  768. package/src/challenge/challenge.service.ts +131 -17
  769. package/src/core.module.ts +46 -1
  770. package/src/file/file.controller.ts +54 -4
  771. package/src/file/file.service.spec.ts +275 -0
  772. package/src/file/file.service.ts +468 -16
  773. package/src/file/image-optimization.service.spec.ts +92 -0
  774. package/src/file/image-optimization.service.ts +202 -0
  775. package/src/file/provider/abstract.provider.ts +23 -0
  776. package/src/file/provider/gcs.provider.ts +17 -0
  777. package/src/file/provider/local.provider.ts +21 -0
  778. package/src/file/provider/s3.provider.ts +25 -0
  779. package/src/file/provider/spaces.provider.ts +26 -0
  780. package/src/impersonation/dto/redeem-impersonation.dto.ts +8 -0
  781. package/src/impersonation/dto/start-impersonation.dto.ts +13 -0
  782. package/src/impersonation/impersonation-restrictions.ts +84 -0
  783. package/src/impersonation/impersonation.controller.ts +109 -0
  784. package/src/impersonation/impersonation.module.ts +31 -0
  785. package/src/impersonation/impersonation.service.spec.ts +427 -0
  786. package/src/impersonation/impersonation.service.ts +577 -0
  787. package/src/incident/incident-notifier.service.spec.ts +205 -0
  788. package/src/incident/incident-notifier.service.ts +241 -0
  789. package/src/incident/incident.controller.ts +38 -0
  790. package/src/incident/incident.module.ts +19 -0
  791. package/src/incident/incident.service.spec.ts +150 -0
  792. package/src/incident/incident.service.ts +209 -0
  793. package/src/index.ts +58 -0
  794. package/src/integration/services/outbox-polling.coordinator.spec.ts +90 -0
  795. package/src/integration/services/outbox-polling.coordinator.ts +62 -40
  796. package/src/integration/services/outbox.service.spec.ts +8 -0
  797. package/src/integration/services/outbox.service.ts +19 -13
  798. package/src/integration-profile/dto/test.dto.ts +19 -0
  799. package/src/integration-profile/integration-profile.controller.ts +10 -1
  800. package/src/integration-profile/integration-profile.module.spec.ts +51 -0
  801. package/src/integration-profile/integration-profile.module.ts +23 -4
  802. package/src/integration-profile/integration-profile.secrets.ts +12 -1
  803. package/src/integration-profile/integration-profile.service.spec.ts +279 -0
  804. package/src/integration-profile/integration-profile.service.ts +120 -124
  805. package/src/integration-profile/integration-profile.utils.spec.ts +22 -0
  806. package/src/integration-profile/integration-profile.utils.ts +78 -3
  807. package/src/integration-profile/testers/ai.testers.ts +165 -0
  808. package/src/integration-profile/testers/captcha.testers.spec.ts +92 -0
  809. package/src/integration-profile/testers/captcha.testers.ts +139 -0
  810. package/src/integration-profile/testers/email.testers.ts +194 -0
  811. package/src/integration-profile/testers/http-probe.spec.ts +153 -0
  812. package/src/integration-profile/testers/http-probe.ts +171 -0
  813. package/src/integration-profile/testers/index.ts +30 -0
  814. package/src/integration-profile/testers/infrastructure.testers.ts +122 -0
  815. package/src/integration-profile/testers/integration-tester.registry.spec.ts +75 -0
  816. package/src/integration-profile/testers/integration-tester.registry.ts +43 -0
  817. package/src/integration-profile/testers/integration-tester.types.ts +61 -0
  818. package/src/integration-profile/testers/messaging.testers.ts +102 -0
  819. package/src/integration-profile/testers/oauth.testers.spec.ts +220 -0
  820. package/src/integration-profile/testers/oauth.testers.ts +305 -0
  821. package/src/integration-profile/testers/payment.testers.ts +185 -0
  822. package/src/integration-profile/testers/remaining.testers.spec.ts +401 -0
  823. package/src/integration-profile/testers/storage.testers.spec.ts +185 -0
  824. package/src/integration-profile/testers/storage.testers.ts +226 -0
  825. package/src/integration-profile/testers/tester-coverage.spec.ts +58 -0
  826. package/src/language/en.json +15 -2
  827. package/src/language/pt.json +15 -2
  828. package/src/leaked-password/README.md +83 -0
  829. package/src/leaked-password/leaked-password.controller.ts +52 -0
  830. package/src/leaked-password/leaked-password.module.ts +18 -0
  831. package/src/leaked-password/leaked-password.service.ts +242 -0
  832. package/src/leaked-password/seed/build-seed-sql.mjs +180 -0
  833. package/src/leaked-password/seed/common-passwords.txt +335 -0
  834. package/src/mail/dto/preview.dto.ts +50 -0
  835. package/src/mail/dto/send.dto.ts +58 -1
  836. package/src/mail/mail-template.spec.ts +274 -0
  837. package/src/mail/mail.controller.ts +9 -2
  838. package/src/mail/mail.module.ts +2 -0
  839. package/src/mail/mail.service.spec.ts +422 -6
  840. package/src/mail/mail.service.ts +337 -34
  841. package/src/mail-delivery/mail-delivery-provision.service.ts +66 -0
  842. package/src/mail-delivery/mail-delivery.constants.ts +31 -0
  843. package/src/mail-delivery/mail-delivery.controller.ts +38 -0
  844. package/src/mail-delivery/mail-delivery.module.ts +23 -0
  845. package/src/mail-delivery/mail-delivery.service.spec.ts +136 -0
  846. package/src/mail-delivery/mail-delivery.service.ts +152 -0
  847. package/src/mail-delivery/ses-event.parser.spec.ts +140 -0
  848. package/src/mail-delivery/ses-event.parser.ts +191 -0
  849. package/src/mail-delivery/ses-webhook.service.spec.ts +170 -0
  850. package/src/mail-delivery/ses-webhook.service.ts +240 -0
  851. package/src/mail-delivery/sns-message.util.spec.ts +163 -0
  852. package/src/mail-delivery/sns-message.util.ts +125 -0
  853. package/src/mail-layout/dto/update.dto.ts +19 -0
  854. package/src/mail-layout/mail-layout.controller.ts +47 -0
  855. package/src/mail-layout/mail-layout.module.ts +22 -0
  856. package/src/mail-layout/mail-layout.service.ts +94 -0
  857. package/src/mail-sent/dto/query-mail-sent-list.dto.ts +15 -0
  858. package/src/mail-sent/mail-sent.service.ts +46 -2
  859. package/src/mailbox/mailbox-fetcher.registry.ts +132 -0
  860. package/src/mailbox/mailbox.module.ts +14 -0
  861. package/src/mcp-chat/mcp-chat.service.spec.ts +236 -0
  862. package/src/mcp-chat/mcp-chat.service.ts +122 -26
  863. package/src/meeting/meeting-provider.registry.ts +193 -0
  864. package/src/meeting/meeting.constants.ts +53 -0
  865. package/src/meeting/meeting.module.ts +13 -0
  866. package/src/middlewares/locale-injection.middleware.ts +25 -6
  867. package/src/oauth/oauth-token-broker.service.spec.ts +172 -0
  868. package/src/oauth/oauth-token-broker.service.ts +363 -0
  869. package/src/oauth/oauth.module.ts +3 -1
  870. package/src/oauth/oauth.service.ts +8 -2
  871. package/src/oauth/providers/google.provider.ts +49 -15
  872. package/src/observability/monitored-cron.spec.ts +102 -0
  873. package/src/observability/monitored-cron.ts +110 -0
  874. package/src/pairing/dto/approve-reverse-pairing.dto.ts +20 -0
  875. package/src/pairing/dto/claim-pairing.dto.ts +19 -0
  876. package/src/pairing/dto/confirm-pairing.dto.ts +14 -0
  877. package/src/pairing/dto/poll-reverse-pairing.dto.ts +9 -0
  878. package/src/pairing/dto/start-pairing.dto.ts +19 -0
  879. package/src/pairing/dto/start-reverse-pairing.dto.ts +45 -0
  880. package/src/pairing/pairing.controller.ts +246 -0
  881. package/src/pairing/pairing.module.ts +27 -0
  882. package/src/pairing/pairing.service.spec.ts +462 -0
  883. package/src/pairing/pairing.service.ts +614 -0
  884. package/src/pdf/pdf.service.ts +81 -24
  885. package/src/presence/presence.controller.ts +29 -0
  886. package/src/presence/presence.listener.ts +53 -0
  887. package/src/presence/presence.module.ts +19 -0
  888. package/src/presence/presence.service.spec.ts +97 -0
  889. package/src/presence/presence.service.ts +160 -0
  890. package/src/profile/dto/delete-account.dto.ts +11 -0
  891. package/src/profile/events/profile-account-deleted.event.ts +13 -0
  892. package/src/profile/profile.controller.ts +46 -34
  893. package/src/profile/profile.service.ts +164 -46
  894. package/src/realtime/realtime.gateway.ts +138 -0
  895. package/src/realtime/realtime.module.ts +16 -0
  896. package/src/realtime/realtime.service.spec.ts +50 -0
  897. package/src/realtime/realtime.service.ts +187 -0
  898. package/src/redis/redis-pubsub.ts +190 -0
  899. package/src/role/guards/role.guard.spec.ts +75 -0
  900. package/src/role/guards/role.guard.ts +64 -46
  901. package/src/session/session.service.spec.ts +81 -0
  902. package/src/session/session.service.ts +93 -6
  903. package/src/setting/brand-asset.service.ts +137 -0
  904. package/src/setting/dto/create.dto.ts +13 -2
  905. package/src/setting/setting.module.ts +3 -2
  906. package/src/setting/setting.service.spec.ts +135 -1
  907. package/src/setting/setting.service.ts +138 -2
  908. package/src/token/token.service.spec.ts +62 -0
  909. package/src/token/token.service.ts +57 -3
  910. package/src/user/dto/create-with-email-and-password.dto.ts +6 -1
  911. package/src/user/dto/query-user-mail-list.dto.ts +10 -0
  912. package/src/user/user-credential.util.ts +35 -0
  913. package/src/user/user.controller.ts +17 -2
  914. package/src/user/user.service.spec.ts +186 -2
  915. package/src/user/user.service.ts +361 -16
  916. package/src/user-device/user-device.controller.ts +77 -0
  917. package/src/user-device/user-device.module.ts +13 -0
  918. package/src/user-device/user-device.service.spec.ts +234 -0
  919. package/src/user-device/user-device.service.ts +168 -0
  920. package/src/utils/device-key.spec.ts +57 -0
  921. package/src/utils/device-key.ts +32 -0
  922. package/src/utils/geo-ip.spec.ts +134 -0
  923. package/src/utils/geo-ip.ts +93 -0
  924. package/src/utils/locale-context.spec.ts +27 -1
  925. package/src/utils/locale-context.ts +15 -12
  926. package/src/utils/security-event-vars.spec.ts +161 -0
  927. package/src/utils/security-event-vars.ts +153 -0
  928. package/src/utils/user-agent.spec.ts +37 -0
  929. package/src/utils/user-agent.ts +46 -0
  930. package/src/validators/is-strong-password-with-settings.validator.ts +12 -0
  931. package/src/validators/service-locator.ts +15 -0
  932. package/src/webhook-integration/webhook-integration.service.ts +57 -3
  933. package/src/webhook-integration/webhook-protocol.registry.ts +6 -0
  934. package/src/whatsapp-sender/whatsapp-sender.module.ts +10 -0
  935. package/src/whatsapp-sender/whatsapp-sender.service.ts +313 -0
@@ -13,6 +13,7 @@ const api_prisma_1 = require("@hed-hog/api-prisma");
13
13
  const common_1 = require("@nestjs/common");
14
14
  const auth_module_1 = require("../auth/auth.module");
15
15
  const mail_module_1 = require("../mail/mail.module");
16
+ const brand_asset_service_1 = require("./brand-asset.service");
16
17
  const setting_controller_1 = require("./setting.controller");
17
18
  const setting_service_1 = require("./setting.service");
18
19
  let SettingModule = class SettingModule {
@@ -29,8 +30,8 @@ exports.SettingModule = SettingModule = __decorate([
29
30
  (0, common_1.forwardRef)(() => mail_module_1.MailModule),
30
31
  ],
31
32
  controllers: [setting_controller_1.SettingsController],
32
- providers: [setting_service_1.SettingService],
33
- exports: [setting_service_1.SettingService],
33
+ providers: [setting_service_1.SettingService, brand_asset_service_1.BrandAssetService],
34
+ exports: [setting_service_1.SettingService, brand_asset_service_1.BrandAssetService],
34
35
  })
35
36
  ], SettingModule);
36
37
  //# sourceMappingURL=setting.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setting.module.js","sourceRoot":"","sources":["../../src/setting/setting.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,oDAAmD;AACnD,4DAA2D;AAC3D,oDAAmD;AACnD,2CAA4D;AAC5D,qDAAiD;AACjD,qDAAiD;AACjD,6DAA0D;AAC1D,uDAAmD;AAe5C,IAAM,aAAa,GAAnB,MAAM,aAAa;CAAI,CAAA;AAAjB,sCAAa;wBAAb,aAAa;IAbzB,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,wBAAU,CAAC;YAC5B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,yBAAY,CAAC;YAC9B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,iCAAgB,CAAC;YAClC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,yBAAY,CAAC;YAC9B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,wBAAU,CAAC;SAC7B;QACD,WAAW,EAAE,CAAC,uCAAkB,CAAC;QACjC,SAAS,EAAE,CAAC,gCAAc,CAAC;QAC3B,OAAO,EAAE,CAAC,gCAAc,CAAC;KAC1B,CAAC;GACW,aAAa,CAAI"}
1
+ {"version":3,"file":"setting.module.js","sourceRoot":"","sources":["../../src/setting/setting.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,oDAAmD;AACnD,4DAA2D;AAC3D,oDAAmD;AACnD,2CAA4D;AAC5D,qDAAiD;AACjD,qDAAiD;AACjD,+DAA0D;AAC1D,6DAA0D;AAC1D,uDAAmD;AAe5C,IAAM,aAAa,GAAnB,MAAM,aAAa;CAAI,CAAA;AAAjB,sCAAa;wBAAb,aAAa;IAbzB,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,wBAAU,CAAC;YAC5B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,yBAAY,CAAC;YAC9B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,iCAAgB,CAAC;YAClC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,yBAAY,CAAC;YAC9B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,wBAAU,CAAC;SAC7B;QACD,WAAW,EAAE,CAAC,uCAAkB,CAAC;QACjC,SAAS,EAAE,CAAC,gCAAc,EAAE,uCAAiB,CAAC;QAC9C,OAAO,EAAE,CAAC,gCAAc,EAAE,uCAAiB,CAAC;KAC7C,CAAC;GACW,aAAa,CAAI"}
@@ -21,6 +21,8 @@ export declare class SettingService implements OnModuleInit, OnModuleDestroy {
21
21
  private readonly settingsVersionCheckIntervalMs;
22
22
  private localSettingsVersion;
23
23
  private lastSettingsVersionCheckAt;
24
+ private settingsVersionCheckInFlight;
25
+ private settingsVersionStateEnsured;
24
26
  private redisPublisher;
25
27
  private redisSubscriber;
26
28
  private readonly redisErrorLogCooldownMs;
@@ -40,6 +42,7 @@ export declare class SettingService implements OnModuleInit, OnModuleDestroy {
40
42
  private syncSettingsVersionFromDatabase;
41
43
  private bumpSettingsVersion;
42
44
  private ensureCacheVersionFresh;
45
+ private runSettingsVersionCheck;
43
46
  private publishSettingsVersionChange;
44
47
  exportSettings(includeSecrets?: boolean): Promise<Buffer>;
45
48
  importSettings(locale: string, file: MulterFile): Promise<{
@@ -99,8 +102,8 @@ export declare class SettingService implements OnModuleInit, OnModuleDestroy {
99
102
  created_at: Date;
100
103
  updated_at: Date;
101
104
  type: import("@prisma/client").$Enums.setting_type_0f055cd5ea_enum;
102
- slug: string;
103
105
  value: string | null;
106
+ slug: string;
104
107
  component: import("@prisma/client").$Enums.setting_component_6e72a03bda_enum;
105
108
  user_override: boolean;
106
109
  group_id: number;
@@ -111,8 +114,8 @@ export declare class SettingService implements OnModuleInit, OnModuleDestroy {
111
114
  created_at: Date;
112
115
  updated_at: Date;
113
116
  type: import("@prisma/client").$Enums.setting_type_0f055cd5ea_enum;
114
- slug: string;
115
117
  value: string | null;
118
+ slug: string;
116
119
  component: import("@prisma/client").$Enums.setting_component_6e72a03bda_enum;
117
120
  user_override: boolean;
118
121
  group_id: number;
@@ -123,8 +126,8 @@ export declare class SettingService implements OnModuleInit, OnModuleDestroy {
123
126
  created_at: Date;
124
127
  updated_at: Date;
125
128
  type: import("@prisma/client").$Enums.setting_type_0f055cd5ea_enum;
126
- slug: string;
127
129
  value: string | null;
130
+ slug: string;
128
131
  component: import("@prisma/client").$Enums.setting_component_6e72a03bda_enum;
129
132
  user_override: boolean;
130
133
  group_id: number;
@@ -138,8 +141,8 @@ export declare class SettingService implements OnModuleInit, OnModuleDestroy {
138
141
  created_at: Date;
139
142
  updated_at: Date;
140
143
  type: import("@prisma/client").$Enums.setting_type_0f055cd5ea_enum;
141
- slug: string;
142
144
  value: string | null;
145
+ slug: string;
143
146
  component: import("@prisma/client").$Enums.setting_component_6e72a03bda_enum;
144
147
  user_override: boolean;
145
148
  group_id: number;
@@ -150,8 +153,8 @@ export declare class SettingService implements OnModuleInit, OnModuleDestroy {
150
153
  created_at: Date;
151
154
  updated_at: Date;
152
155
  type: import("@prisma/client").$Enums.setting_type_0f055cd5ea_enum;
153
- slug: string;
154
156
  value: string | null;
157
+ slug: string;
155
158
  component: import("@prisma/client").$Enums.setting_component_6e72a03bda_enum;
156
159
  user_override: boolean;
157
160
  group_id: number;
@@ -168,6 +171,39 @@ export declare class SettingService implements OnModuleInit, OnModuleDestroy {
168
171
  value: string;
169
172
  setting_id: number;
170
173
  }>;
174
+ /**
175
+ * Le SO o override do usuario, sem cair para o valor global.
176
+ *
177
+ * `getSettingValues(slug, userId)` nao serve para isso: quando o usuario nao
178
+ * tem override ele devolve o valor global, indistinguivel de uma preferencia
179
+ * real. Quem precisa saber se o usuario *escolheu* algo - o idioma do e-mail
180
+ * e a gravacao unica no login - depende dessa diferenca.
181
+ */
182
+ getUserSettingValue(userId: number, slug: string): Promise<string | null>;
183
+ /**
184
+ * Idioma efetivo de um usuario.
185
+ *
186
+ * Cadeia unica do sistema, para que e-mail, aviso de idioma de curso e
187
+ * qualquer outra decisao de idioma respondam a mesma pergunta do mesmo jeito:
188
+ *
189
+ * 1. preferencia gravada do usuario - escolha explicita sempre vence;
190
+ * 2. idioma que o cliente declarou nesta requisicao;
191
+ * 3. setting global `language`;
192
+ * 4. `en`.
193
+ *
194
+ * O passo 2 exige que o cliente tenha REALMENTE declarado: o `en` que o
195
+ * middleware usa como default nao pode vencer a setting do sistema.
196
+ */
197
+ resolveUserLocale(userId?: number | null): Promise<string>;
198
+ /**
199
+ * Valores aceitos por uma setting de combobox (`setting_list`).
200
+ *
201
+ * `setSettingUserValue` valida que a setting existe e permite override, mas
202
+ * nao valida o *valor*. Sem esta checagem, um navegador em `de-DE` gravaria
203
+ * `de` como idioma e todo e-mail seguinte procuraria um template que nao
204
+ * existe.
205
+ */
206
+ getSettingListValues(slug: string): Promise<string[]>;
171
207
  getSettingValues(slug: string | string[], userId?: number): Promise<Record<string, any>>;
172
208
  setCache(value: Record<string, any>): Record<string, any>;
173
209
  clearCache(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"setting.service.d.ts","sourceRoot":"","sources":["../../src/setting/setting.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setting.service.d.ts","sourceRoot":"","sources":["../../src/setting/setting.service.ts"],"names":[],"mappings":"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"}
@@ -70,6 +70,8 @@ let SettingService = SettingService_1 = class SettingService {
70
70
  this.settingsVersionCheckIntervalMs = Math.max(1000, Number(process.env.SETTINGS_VERSION_CHECK_INTERVAL_MS || 5000));
71
71
  this.localSettingsVersion = 0;
72
72
  this.lastSettingsVersionCheckAt = 0;
73
+ this.settingsVersionCheckInFlight = null;
74
+ this.settingsVersionStateEnsured = false;
73
75
  this.redisPublisher = null;
74
76
  this.redisSubscriber = null;
75
77
  this.redisErrorLogCooldownMs = Math.max(1000, Number(process.env.REDIS_SETTINGS_ERROR_LOG_COOLDOWN_MS || 30000));
@@ -191,11 +193,17 @@ let SettingService = SettingService_1 = class SettingService {
191
193
  this.clearCache();
192
194
  }
193
195
  async ensureSettingsVersionState() {
196
+ // A linha é criada uma vez e nunca some; repetir o INSERT a cada checagem de versão
197
+ // dobrava as queries de um caminho que roda a cada 5s em todo processo.
198
+ if (this.settingsVersionStateEnsured) {
199
+ return;
200
+ }
194
201
  await this.prismaService.$executeRawUnsafe(`
195
202
  INSERT INTO "setting_runtime_state" ("scope", "version", "updated_at")
196
203
  VALUES ('global', 0, NOW())
197
204
  ON CONFLICT ("scope") DO NOTHING
198
205
  `);
206
+ this.settingsVersionStateEnsured = true;
199
207
  }
200
208
  parseVersionValue(value) {
201
209
  if (typeof value === 'number') {
@@ -244,8 +252,20 @@ let SettingService = SettingService_1 = class SettingService {
244
252
  if (now - this.lastSettingsVersionCheckAt < this.settingsVersionCheckIntervalMs) {
245
253
  return;
246
254
  }
255
+ // `lastSettingsVersionCheckAt` só avança depois do await, então uma rajada de leituras
256
+ // paralelas (ex.: lote de uploads de segmentos HLS) disparava a mesma dupla de queries
257
+ // uma vez por chamada e ocupava o pool inteiro. Todas passam a esperar a mesma checagem.
258
+ if (this.settingsVersionCheckInFlight) {
259
+ return this.settingsVersionCheckInFlight;
260
+ }
261
+ this.settingsVersionCheckInFlight = this.runSettingsVersionCheck(now).finally(() => {
262
+ this.settingsVersionCheckInFlight = null;
263
+ });
264
+ return this.settingsVersionCheckInFlight;
265
+ }
266
+ async runSettingsVersionCheck(startedAt) {
247
267
  const currentVersion = await this.getSettingsVersionFromDatabase();
248
- this.lastSettingsVersionCheckAt = now;
268
+ this.lastSettingsVersionCheckAt = startedAt;
249
269
  if (currentVersion > this.localSettingsVersion) {
250
270
  this.localSettingsVersion = currentVersion;
251
271
  this.clearCache();
@@ -418,12 +438,17 @@ let SettingService = SettingService_1 = class SettingService {
418
438
  'password-min-numbers',
419
439
  'password-min-uppercase',
420
440
  'password-min-length',
441
+ 'password-max-age-days',
442
+ 'password-block-leaked',
421
443
  'mfa-email-code-length',
422
444
  'mcp-enabled',
445
+ 'richtext-ai-enabled',
446
+ 'richtext-ai-profile-id',
423
447
  'date-format',
424
448
  'time-format',
425
449
  'timezone',
426
450
  'menu-width',
451
+ 'pagination-page-sizes',
427
452
  'maintenance-mode-enabled',
428
453
  'providers',
429
454
  'oauth-facebook-enabled',
@@ -436,6 +461,7 @@ let SettingService = SettingService_1 = class SettingService {
436
461
  'disable-authentication-with-email-and-password',
437
462
  'contact-allow-company-registration',
438
463
  'operations.comment-edit-window',
464
+ 'vaults.auto-lock-seconds',
439
465
  'lms-video-conversion-enabled',
440
466
  'lms-video-frame-capture-interval-seconds',
441
467
  'lms-error-modal-enabled',
@@ -1077,6 +1103,92 @@ let SettingService = SettingService_1 = class SettingService {
1077
1103
  },
1078
1104
  });
1079
1105
  }
1106
+ /**
1107
+ * Le SO o override do usuario, sem cair para o valor global.
1108
+ *
1109
+ * `getSettingValues(slug, userId)` nao serve para isso: quando o usuario nao
1110
+ * tem override ele devolve o valor global, indistinguivel de uma preferencia
1111
+ * real. Quem precisa saber se o usuario *escolheu* algo - o idioma do e-mail
1112
+ * e a gravacao unica no login - depende dessa diferenca.
1113
+ */
1114
+ async getUserSettingValue(userId, slug) {
1115
+ var _a;
1116
+ if (!userId) {
1117
+ return null;
1118
+ }
1119
+ const settingUser = await this.prismaService.setting_user.findFirst({
1120
+ where: {
1121
+ user_id: userId,
1122
+ setting: {
1123
+ slug,
1124
+ user_override: true,
1125
+ },
1126
+ },
1127
+ select: {
1128
+ value: true,
1129
+ },
1130
+ });
1131
+ const value = String((_a = settingUser === null || settingUser === void 0 ? void 0 : settingUser.value) !== null && _a !== void 0 ? _a : '').trim();
1132
+ return value || null;
1133
+ }
1134
+ /**
1135
+ * Idioma efetivo de um usuario.
1136
+ *
1137
+ * Cadeia unica do sistema, para que e-mail, aviso de idioma de curso e
1138
+ * qualquer outra decisao de idioma respondam a mesma pergunta do mesmo jeito:
1139
+ *
1140
+ * 1. preferencia gravada do usuario - escolha explicita sempre vence;
1141
+ * 2. idioma que o cliente declarou nesta requisicao;
1142
+ * 3. setting global `language`;
1143
+ * 4. `en`.
1144
+ *
1145
+ * O passo 2 exige que o cliente tenha REALMENTE declarado: o `en` que o
1146
+ * middleware usa como default nao pode vencer a setting do sistema.
1147
+ */
1148
+ async resolveUserLocale(userId) {
1149
+ var _a, _b, _c;
1150
+ try {
1151
+ if (userId) {
1152
+ const preferred = (0, api_locale_1.normalizeLocaleCode)(await this.getUserSettingValue(userId, 'language'));
1153
+ if (preferred) {
1154
+ return preferred;
1155
+ }
1156
+ }
1157
+ const fromRequest = (0, api_locale_1.normalizeLocaleCode)((0, api_locale_1.getLocaleFromContext)());
1158
+ if (fromRequest && (0, api_locale_1.isLocaleDetectedFromContext)()) {
1159
+ return fromRequest;
1160
+ }
1161
+ const settings = await this.getSettingValues(['language']);
1162
+ return (_b = (_a = (0, api_locale_1.normalizeLocaleCode)(settings === null || settings === void 0 ? void 0 : settings['language'])) !== null && _a !== void 0 ? _a : fromRequest) !== null && _b !== void 0 ? _b : 'en';
1163
+ }
1164
+ catch (error) {
1165
+ this.logger.warn(`Could not resolve locale for user ${userId}: ${error}`);
1166
+ return (_c = (0, api_locale_1.normalizeLocaleCode)((0, api_locale_1.getLocaleFromContext)())) !== null && _c !== void 0 ? _c : 'en';
1167
+ }
1168
+ }
1169
+ /**
1170
+ * Valores aceitos por uma setting de combobox (`setting_list`).
1171
+ *
1172
+ * `setSettingUserValue` valida que a setting existe e permite override, mas
1173
+ * nao valida o *valor*. Sem esta checagem, um navegador em `de-DE` gravaria
1174
+ * `de` como idioma e todo e-mail seguinte procuraria um template que nao
1175
+ * existe.
1176
+ */
1177
+ async getSettingListValues(slug) {
1178
+ var _a;
1179
+ const setting = await this.prismaService.setting.findFirst({
1180
+ where: { slug },
1181
+ select: {
1182
+ setting_list: {
1183
+ select: { value: true },
1184
+ orderBy: { order: 'asc' },
1185
+ },
1186
+ },
1187
+ });
1188
+ return ((_a = setting === null || setting === void 0 ? void 0 : setting.setting_list) !== null && _a !== void 0 ? _a : [])
1189
+ .map((item) => { var _a; return String((_a = item === null || item === void 0 ? void 0 : item.value) !== null && _a !== void 0 ? _a : '').trim(); })
1190
+ .filter(Boolean);
1191
+ }
1080
1192
  async getSettingValues(slug, userId) {
1081
1193
  const slugs = Array.isArray(slug) ? slug : [slug];
1082
1194
  if (userId === undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"setting.service.js","sourceRoot":"","sources":["../../src/setting/setting.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAgD;AAChD,oDAAmE;AACnE,4DAA2E;AAC3E,oDAAkF;AAClF,2CASwB;AACxB,6CAAyC;AACzC,2CAA6B;AAC7B,iCAA2D;AAC3D,iHAA2G;AAuBpG,IAAM,cAAc,sBAApB,MAAM,cAAc;IAsBzB,YAEE,aAA6C,EAE7C,iBAAqD,EAErD,aAA6C,EAE7C,cAA+D;QAN9C,kBAAa,GAAb,aAAa,CAAe;QAE5B,sBAAiB,GAAjB,iBAAiB,CAAmB;QAEpC,kBAAa,GAAb,aAAa,CAAe;QAE5B,mBAAc,GAAd,cAAc,CAAgC;QA5BhD,WAAM,GAAG,IAAI,eAAM,CAAC,gBAAc,CAAC,IAAI,CAAC,CAAC;QAClD,mBAAc,GAAwB,EAAE,CAAC;QAChC,eAAU,GAAG,IAAA,wBAAU,GAAE,CAAC;QAC1B,iBAAY,GAAG,+BAA+B,CAAC;QAC/C,aAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACtD,mCAA8B,GAAG,IAAI,CAAC,GAAG,CACxD,IAAI,EACJ,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,kCAAkC,IAAI,IAAI,CAAC,CAC/D,CAAC;QACM,yBAAoB,GAAG,CAAC,CAAC;QACzB,+BAA0B,GAAG,CAAC,CAAC;QAC/B,mBAAc,GAA2B,IAAI,CAAC;QAC9C,oBAAe,GAA2B,IAAI,CAAC;QACtC,4BAAuB,GAAG,IAAI,CAAC,GAAG,CACjD,IAAI,EACJ,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,oCAAoC,IAAI,KAAK,CAAC,CAClE,CAAC;QACM,kCAA6B,GAAG,CAAC,CAAC;QAClC,iCAA4B,GAAG,CAAC,CAAC;IAWrC,CAAC;IAEL,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,CAAC,+BAA+B,EAAE,CAAC;QAC7C,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,OAAO,CAAC,UAAU,CAAC;YACvB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,eAAe,CAAC;YAC/C,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC;SAC/C,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,MAA8B;QAC/D,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QACtB,CAAC;QAAC,WAAM,CAAC;YACP,IAAI,CAAC;gBACH,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,CAAC;YAAC,WAAM,CAAC;gBACP,yBAAyB;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;IAEO,mBAAmB,CAAC,IAAgC,EAAE,KAAc;QAC1E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,SAAS,GACb,IAAI,KAAK,YAAY;YACnB,CAAC,CAAC,IAAI,CAAC,6BAA6B;YACpC,CAAC,CAAC,IAAI,CAAC,4BAA4B,CAAC;QAExC,IAAI,GAAG,GAAG,SAAS,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACnD,OAAO;QACT,CAAC;QAED,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;YAC1B,IAAI,CAAC,6BAA6B,GAAG,GAAG,CAAC;QAC3C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,4BAA4B,GAAG,GAAG,CAAC;QAC1C,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,IAAI,WAAW,OAAO,EAAE,CAAC,CAAC;IAC/D,CAAC;IAEO,wBAAwB,CAAC,KAAc;;QAC7C,IAAI,KAAK,YAAY,cAAc,KAAI,MAAA,KAAK,CAAC,MAAM,0CAAE,MAAM,CAAA,EAAE,CAAC;YAC5D,OAAO,KAAK,CAAC,MAAM;iBAChB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;iBACxE,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC;QACD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,OAAO,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC3C,CAAC;QACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAEO,KAAK,CAAC,mBAAmB;QAC/B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,mEAAmE,CACpE,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,IAAI,CAAC,eAAe,GAAG,IAAA,oBAAY,EAAC;gBAClC,GAAG,EAAE,IAAI,CAAC,QAAQ;gBAClB,MAAM,EAAE;oBACN,iBAAiB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,GAAG,EAAE,IAAI,CAAC;iBAC9D;aACF,CAAC,CAAC;YACH,IAAI,CAAC,cAAc,GAAG,IAAA,oBAAY,EAAC;gBACjC,GAAG,EAAE,IAAI,CAAC,QAAQ;gBAClB,MAAM,EAAE;oBACN,iBAAiB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,GAAG,EAAE,IAAI,CAAC;iBAC9D;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACzC,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;YAChD,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACxC,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;YAEH,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;YACrC,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBACxE,MAAM,IAAI,CAAC,iCAAiC,CAAC,OAAO,CAAC,CAAC;YACxD,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,0CAA0C,IAAI,CAAC,YAAY,EAAE,CAC9D,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,6CAA6C,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,CACpF,CAAC;YAEF,MAAM,OAAO,CAAC,UAAU,CAAC;gBACvB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,eAAe,CAAC;gBAC/C,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC;aAC/C,CAAC,CAAC;YAEH,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iCAAiC,CAAC,OAAe;QAC7D,IAAI,OAA+B,CAAC;QAEpC,IAAI,CAAC;YACH,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAA2B,CAAC;QAC1D,CAAC;QAAC,WAAM,CAAC;YACP,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,gBAAgB,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACtF,OAAO;QACT,CAAC;QAED,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;QAC5C,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7C,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAEO,KAAK,CAAC,0BAA0B;QACtC,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC;;;;KAI1C,CAAC,CAAC;IACL,CAAC;IAEO,iBAAiB,CAAC,KAAc;QACtC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;QAED,OAAO,CAAC,CAAC;IACX,CAAC;IAEO,KAAK,CAAC,8BAA8B;;QAC1C,MAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAExC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAA8B;;;;;KAKlF,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAA,IAAI,CAAC,CAAC,CAAC,0CAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IAEO,KAAK,CAAC,+BAA+B;QAC3C,IAAI,CAAC,oBAAoB,GAAG,MAAM,IAAI,CAAC,8BAA8B,EAAE,CAAC;QACxE,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,mBAAmB;;QAC/B,MAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAExC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAA8B;;;;;;KAMlF,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAA,IAAI,CAAC,CAAC,CAAC,0CAAE,OAAO,CAAC,CAAC;QAC7D,IAAI,CAAC,oBAAoB,GAAG,WAAW,CAAC;QACxC,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7C,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,uBAAuB;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,GAAG,GAAG,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,8BAA8B,EAAE,CAAC;YAChF,OAAO;QACT,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,8BAA8B,EAAE,CAAC;QACnE,IAAI,CAAC,0BAA0B,GAAG,GAAG,CAAC;QAEtC,IAAI,cAAc,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC/C,IAAI,CAAC,oBAAoB,GAAG,cAAc,CAAC;YAC3C,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,4BAA4B,CAAC,KAAe;;QACxD,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACjE,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAErD,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,cAAc,0CAAE,MAAM,CAAA,EAAE,CAAC;YACjC,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAA2B;YACtC,gBAAgB,EAAE,IAAI,CAAC,UAAU;YACjC,OAAO,EAAE,WAAW;YACpB,KAAK,EAAE,aAAa;SACrB,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QAChF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,8CAA8C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACvG,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,cAAc,GAAG,KAAK;QACzC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC;YACzD,KAAK,oBACA,CAAE,CAAC,cAAc,CAAC,CAAC,CAAC;gBACjB,GAAG,EAAE;oBACH,EAAE,IAAI,EAAE,yCAA4B,CAAC,MAAM,EAAE;iBAC9C;aACN,CAAC,CAAC,CAAC,EAAE,CAAC,CACR;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI;aACZ;SACF,CAAC,CAAC;QAEH,yCAAyC;QACzC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACzC,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAc,EAAE,IAAgB;QACnD,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC;QACT,IAAI,CAAC;YACH,gCAAgC;YAChC,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;YAChE,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,4BAAmB,CAAC,IAAA,0BAAa,EAAC,uBAAuB,EAAE,MAAM,EAAE,mDAAmD,CAAC,CAAC,CAAC;QACrI,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,4BAAmB,CAAC,IAAA,0BAAa,EAAC,kBAAkB,EAAE,MAAM,EAAE,kDAAkD,CAAC,CAAC,CAAC;QAC/H,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC;YACjE,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,EAAE,EAAE,aAAa;iBAClB;aACF;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,IAAI;aACX;SACF,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QACxF,MAAM,YAAY,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QAE3F,+CAA+C;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE7E,OAAO;YACL,aAAa,EAAE,aAAa,CAAC,MAAM;YACnC,aAAa,EAAE,UAAU,CAAC,MAAM;YAChC,YAAY;YACZ,UAAU;YACV,QAAQ,EAAE,SAAS;SACpB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,QAAgD;QAClE,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC;YACjE,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,EAAE,EAAE,KAAK;iBACV;aACF;YACD,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI;aACZ;SACF,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,EAAE,CAAC;QACvB,MAAM,eAAe,GAA8B,EAAE,CAAC;QAEtD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,eAAe,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;YAC9E,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,SAAS,GAAG,IAAI,CAAC,uBAAuB,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;gBAEpF,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC;oBAChC,KAAK,EAAE;wBACL,EAAE,EAAE,eAAe,CAAC,EAAE;qBACvB;oBACD,IAAI,EAAE;wBACJ,KAAK,EAAE,SAAS;qBACjB;iBACF,CAAC,CACH,CAAC;gBAEF,eAAe,CAAC,IAAI,CAAC;oBACnB,SAAS,EAAE,eAAe,CAAC,EAAE;oBAC7B,IAAI,EAAE,eAAe,CAAC,IAAI;oBAC1B,IAAI,EAAE,eAAe,CAAC,IAAI;oBAC1B,QAAQ,EAAE,eAAe,CAAC,KAAK;oBAC/B,QAAQ,EAAE,SAAS;oBACnB,MAAM,EAAE,eAAe;iBACxB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;YACnD,MAAM,IAAI,CAAC,wBAAwB,CAAC,eAAe,CAAC,CAAC;YACrD,MAAM,IAAI,CAAC,4BAA4B,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACpF,CAAC;QAED,OAAO;YACL,OAAO,EAAE,IAAI;YACb,YAAY,EAAE,WAAW,CAAC,MAAM;SACjC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;QACtD,MAAM,KAAK,GAAG;YACZ,UAAU;YACV,aAAa;YACb,eAAe;YACf,UAAU;YACV,WAAW;YACX,qBAAqB;YACrB,gCAAgC;YAChC,uBAAuB;YACvB,kCAAkC;YAClC,oBAAoB;YACpB,+BAA+B;YAC/B,mBAAmB;YACnB,8BAA8B;YAC9B,wBAAwB;YACxB,mCAAmC;YACnC,kBAAkB;YAClB,6BAA6B;YAC7B,oBAAoB;YACpB,+BAA+B;YAC/B,sBAAsB;YACtB,iCAAiC;YACjC,mBAAmB;YACnB,8BAA8B;YAC9B,kBAAkB;YAClB,6BAA6B;YAC7B,uBAAuB;YACvB,kCAAkC;YAClC,iBAAiB;YACjB,4BAA4B;YAC5B,cAAc;YACd,YAAY;YACZ,iBAAiB;YACjB,YAAY;YACZ,sBAAsB;YACtB,sBAAsB;YACtB,wBAAwB;YACxB,qBAAqB;YACrB,uBAAuB;YACvB,aAAa;YACb,aAAa;YACb,aAAa;YACb,UAAU;YACV,YAAY;YACZ,0BAA0B;YAC1B,WAAW;YACX,wBAAwB;YACxB,sBAAsB;YACtB,sBAAsB;YACtB,yBAAyB;YACzB,kCAAkC;YAClC,qBAAqB;YACrB,wBAAwB;YACxB,gDAAgD;YAChD,oCAAoC;YACpC,gCAAgC;YAChC,8BAA8B;YAC9B,0CAA0C;YAC1C,yBAAyB;YACzB,KAAK;YACL,UAAU;SACX,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACnD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,MAAc;;QACvC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC5D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAExD,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACvC,MAAM,IAAI,GAAG,MAAA,WAAW,CAAC,OAAO,0CAAE,IAAI,CAAC;YACvC,IAAI,CAAC,IAAI;gBAAE,SAAS;YAEpB,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;YAChC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;gBAAE,SAAS;YAEpD,MAAM,WAAW,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,IAAI,CAAC,CAAC;YACpC,MAAM,UAAU,GAAG,OAAO,WAAW,CAAC;YAEtC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,KAAK,MAAM,CAAC;gBACjC,SAAS;YACX,CAAC;YAED,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;gBAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC7B,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;gBACtD,SAAS;YACX,CAAC;YAED,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;gBAC1D,IAAI,CAAC;oBACH,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACpC,CAAC;gBAAC,WAAM,CAAC;oBACP,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;gBACxB,CAAC;gBACD,SAAS;YACX,CAAC;YAED,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACxB,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,IAAgB;QACpC,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,EAAE,CAAC;QACvB,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC;YACjE,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;iBAC1C;aACF;YACD,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI;aACZ;SACF,CAAC,CAAC;QACH,MAAM,eAAe,GAA8B,EAAE,CAAC;QAEtD,KAAK,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC3C,MAAM,eAAe,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YAC5E,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,SAAS;YACX,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,uBAAuB,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAE5E,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC;gBACpC,KAAK,EAAE;oBACL,IAAI;iBACL;gBACD,IAAI,EAAE;oBACJ,KAAK,EAAE,SAAS;iBACjB;aACF,CAAC,CACH,CAAC;YAEF,eAAe,CAAC,IAAI,CAAC;gBACnB,SAAS,EAAE,eAAe,CAAC,EAAE;gBAC7B,IAAI,EAAE,eAAe,CAAC,IAAI;gBAC1B,IAAI,EAAE,eAAe,CAAC,IAAI;gBAC1B,QAAQ,EAAE,eAAe,CAAC,KAAK;gBAC/B,QAAQ,EAAE,SAAS;gBACnB,MAAM,EAAE,iBAAiB;aAC1B,CAAC,CAAC;QACL,CAAC;QAED,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QACnD,MAAM,IAAI,CAAC,wBAAwB,CAAC,eAAe,CAAC,CAAC;QACrD,MAAM,IAAI,CAAC,4BAA4B,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAClF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,MAAW,EACX,gBAAqB,EACrB,IAAY,EACZ,MAAc;QAEd,MAAM,MAAM,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAEjC,gBAAgB,CAAC,QAAQ,GAAG,GAAG,CAAC;QAEhC,MAAM,EAAE,GAAU,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAC1D,MAAM,EACN,gBAAgB,CACjB,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAClD,IAAI,CAAC,aAAa,CAAC,OAAO,EAC1B,gBAAgB,EAChB;YACE,KAAK,EAAE;gBACL,GAAG,EAAE;oBACH,aAAa,EAAE;wBACb,IAAI;qBACL;oBACD,EAAE;iBACH;aACF;YACD,OAAO,EAAE;gBACP,aAAa,EAAE;oBACb,OAAO,EAAE;wBACP,oBAAoB,EAAE;4BACpB,KAAK,EAAE;gCACL,MAAM,EAAE;oCACN,IAAI,EAAE,MAAM;iCACb;6BACF;4BACD,MAAM,EAAE;gCACN,IAAI,EAAE,IAAI;gCACV,WAAW,EAAE,IAAI;6BAClB;yBACF;qBACF;iBACF;gBACD,gBAAgB,EAAE;oBAChB,OAAO,EAAE;wBACP,uBAAuB,EAAE;4BACvB,KAAK,EAAE;gCACL,MAAM,EAAE;oCACN,IAAI,EAAE,MAAM;iCACb;6BACF;4BACD,MAAM,EAAE;gCACN,IAAI,EAAE,IAAI;gCACV,WAAW,EAAE,IAAI;6BAClB;yBACF;qBACF;iBACF;gBACD,cAAc,EAAE;oBACd,KAAK,EAAE;wBACL,MAAM,EAAE;4BACN,IAAI,EAAE,MAAM;yBACb;qBACF;oBACD,MAAM,EAAE;wBACN,IAAI,EAAE,IAAI;wBACV,WAAW,EAAE,IAAI;qBAClB;iBACF;gBACD,YAAY,EAAE;oBACZ,MAAM,EAAE;wBACN,EAAE,EAAE,IAAI;wBACR,KAAK,EAAE,IAAI;wBACX,KAAK,EAAE,IAAI;qBACZ;oBACD,OAAO,EAAE;wBACP,KAAK,EAAE,KAAK;qBACb;iBACF;gBACD,YAAY,EAAE;oBACZ,KAAK,EAAE;wBACL,OAAO,EAAE,MAAM;qBAChB;oBACD,MAAM,EAAE;wBACN,UAAU,EAAE,IAAI;wBAChB,KAAK,EAAE,IAAI;qBACZ;iBACF;aACF;SACF,EACD,gBAAgB,CACjB,CAAC;QAEF,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAY,EAAE,EAAE;;YAC7C,OAAO,CAAC,aAAa,GAAG,IAAA,sBAAgB,EACtC,sBAAsB,EACtB,OAAO,CAAC,aAAa,CACtB,CAAC;YAEF,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;gBAC7B,OAAO,CAAC,gBAAgB,GAAG,IAAA,sBAAgB,EACzC,yBAAyB,EACzB,OAAO,CAAC,gBAAgB,CACzB,CAAC;YACJ,CAAC;YAED,MAAA,OAAO,CAAC,UAAU,oCAAlB,OAAO,CAAC,UAAU,GAAK,MAAA,MAAA,OAAO,CAAC,WAAW,mCAAI,MAAA,OAAO,CAAC,gBAAgB,0CAAE,EAAE,mCAAI,IAAI,EAAC;YAEnF,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,MAAc,EAAE,gBAA+B;QACrE,MAAM,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAEhC,gBAAgB,CAAC,QAAQ,GAAG,GAAG,CAAC;QAEhC,MAAM,EAAE,GAAU,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAC1D,MAAM,EACN,gBAAgB,CACjB,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAClD,IAAI,CAAC,aAAa,CAAC,aAAa,EAChC,gBAAgB,EAChB;YACE,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,GAAG,EAAE,QAAQ;iBACd;gBACD,EAAE;aACH;YACD,OAAO,EAAE;gBACP,oBAAoB,EAAE;oBACpB,KAAK,EAAE;wBACL,MAAM,EAAE;4BACN,IAAI,EAAE,MAAM;yBACb;qBACF;oBACD,MAAM,EAAE;wBACN,IAAI,EAAE,IAAI;wBACV,WAAW,EAAE,IAAI;qBAClB;iBACF;aACF;SACF,EACD,sBAAsB,CACvB,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc,EAAE,gBAA+B;QAChE,MAAM,MAAM,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAEjC,MAAM,EAAE,GAAU,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAC1D,MAAM,EACN,gBAAgB,CACjB,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAClD,IAAI,CAAC,aAAa,CAAC,OAAO,EAC1B,gBAAgB,EAChB;YACE,KAAK,EAAE;gBACL,EAAE;aACH;YACD,OAAO,EAAE;gBACP,aAAa,EAAE;oBACb,OAAO,EAAE;wBACP,oBAAoB,EAAE;4BACpB,KAAK,EAAE;gCACL,MAAM,EAAE;oCACN,IAAI,EAAE,MAAM;iCACb;6BACF;4BACD,MAAM,EAAE;gCACN,IAAI,EAAE,IAAI;gCACV,WAAW,EAAE,IAAI;6BAClB;yBACF;qBACF;iBACF;gBACD,gBAAgB,EAAE;oBAChB,OAAO,EAAE;wBACP,uBAAuB,EAAE;4BACvB,KAAK,EAAE;gCACL,MAAM,EAAE;oCACN,IAAI,EAAE,MAAM;iCACb;6BACF;4BACD,MAAM,EAAE;gCACN,IAAI,EAAE,IAAI;gCACV,WAAW,EAAE,IAAI;6BAClB;yBACF;qBACF;iBACF;gBACD,cAAc,EAAE;oBACd,KAAK,EAAE;wBACL,MAAM,EAAE;4BACN,IAAI,EAAE,MAAM;yBACb;qBACF;oBACD,MAAM,EAAE;wBACN,IAAI,EAAE,IAAI;wBACV,WAAW,EAAE,IAAI;qBAClB;iBACF;gBACD,YAAY,EAAE;oBACZ,MAAM,EAAE;wBACN,EAAE,EAAE,IAAI;wBACR,KAAK,EAAE,IAAI;wBACX,KAAK,EAAE,IAAI;qBACZ;oBACD,OAAO,EAAE;wBACP,KAAK,EAAE,KAAK;qBACb;iBACF;aACF;SACF,EACD,gBAAgB,CACjB,CAAC;QAEF,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAY,EAAE,EAAE;;YAC7C,OAAO,CAAC,aAAa,GAAG,IAAA,sBAAgB,EACtC,sBAAsB,EACtB,OAAO,CAAC,aAAa,CACtB,CAAC;YAEF,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;gBAC7B,OAAO,CAAC,gBAAgB,GAAG,IAAA,sBAAgB,EACzC,yBAAyB,EACzB,OAAO,CAAC,gBAAgB,CACzB,CAAC;YACJ,CAAC;YAED,MAAA,OAAO,CAAC,UAAU,oCAAlB,OAAO,CAAC,UAAU,GAChB,MAAA,MAAA,OAAO,CAAC,WAAW,mCAAI,MAAA,OAAO,CAAC,gBAAgB,0CAAE,EAAE,mCAAI,IAAI,EAAC;YAE9D,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,SAAiB,EAAE,IAA0B;;QAC1E,IAAI,CAAC,UAAU,EAAE,CAAC;QAElB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC;YAC1D,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE;YACxB,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI;gBACR,SAAS,EAAE,IAAI;aAChB;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,0BAAiB,CAAC,mBAAmB,SAAS,aAAa,CAAC,CAAC;QACzE,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,CAAC,MAAA,OAAO,CAAC,SAAS,mCAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QAChE,IAAI,SAAS,KAAK,UAAU,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;YACzD,MAAM,IAAI,4BAAmB,CAC3B,2DAA2D,CAC5D,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,CAAC,MAAA,IAAI,CAAC,OAAO,mCAAI,EAAE,CAAC;aACjC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;;YAAC,OAAA,CAAC;gBACvB,KAAK,EAAE,MAAA,MAAA,MAAM,CAAC,KAAK,0CAAE,IAAI,EAAE,mCAAI,EAAE;gBACjC,KAAK,EAAE,MAAA,MAAM,CAAC,KAAK,mCAAI,KAAK,GAAG,CAAC;aACjC,CAAC,CAAA;SAAA,CAAC;aACF,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAE/C,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC;YAC7D,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE;YACxB,IAAI,EAAE;gBACJ,YAAY,EAAE;oBACZ,UAAU,EAAE,EAAE;oBACd,MAAM,EAAE,OAAO;iBAChB;aACF;YACD,OAAO,EAAE;gBACP,YAAY,EAAE;oBACZ,MAAM,EAAE;wBACN,EAAE,EAAE,IAAI;wBACR,KAAK,EAAE,IAAI;wBACX,KAAK,EAAE,IAAI;qBACZ;oBACD,OAAO,EAAE;wBACP,KAAK,EAAE,KAAK;qBACb;iBACF;aACF;SACF,CAAC,CAAC;QAEH,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,SAAiB;QACzB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC;YAC1D,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE;SACzB,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,0BAAiB,CAAC,mBAAmB,SAAS,aAAa,CAAC,CAAC;QACzE,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAe,EAAE,OAAe;QAC3C,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC;YAC7D,IAAI,EAAE;gBACJ,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,IAAW;gBACtB,KAAK,EAAE,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC;gBAC1D,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,aAAa,EAAE;oBACb,OAAO,EAAE;wBACP,EAAE,EAAE,IAAI,CAAC,QAAQ;qBAClB;iBACF;aACF;SACF,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,wBAAwB,CAAC;YAClC;gBACE,SAAS,EAAE,cAAc,CAAC,EAAE;gBAC5B,IAAI,EAAE,cAAc,CAAC,IAAI;gBACzB,IAAI,EAAE,cAAc,CAAC,IAAI;gBACzB,QAAQ,EAAE,SAAS;gBACnB,QAAQ,EAAE,cAAc,CAAC,KAAK;gBAC9B,MAAM,EAAE,QAAQ;aACjB;SACF,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,4BAA4B,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QAE/D,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAmC;QACxD,IAAI,CAAC,UAAU,EAAE,CAAC;QAElB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC;YAChE,KAAK,EAAE;gBACL,EAAE;aACH;YACD,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI;aACZ;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI,CAAA,EAAE,CAAC;YAC1B,MAAM,IAAI,0BAAiB,CAAC,oBAAoB,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,EAAE,IAAI,EAAE,GAAG,cAAc,CAAC;QAEhC,qDAAqD;QACrD,MAAM,UAAU,GAAQ,EAAE,CAAC;QAE3B,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAC9B,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,IAAW,CAAC;QACrC,CAAC;QAED,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC7B,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACjF,CAAC;QAED,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACrC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QAChD,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACjC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,SAAgB,CAAC;QAC/C,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChC,UAAU,CAAC,aAAa,GAAG;gBACzB,OAAO,EAAE;oBACP,EAAE,EAAE,IAAI,CAAC,QAAQ;iBAClB;aACF,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC;YAC7D,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,IAAI,EAAE,UAAU;SACjB,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,wBAAwB,CAAC;YAClC;gBACE,SAAS,EAAE,cAAc,CAAC,EAAE;gBAC5B,IAAI,EAAE,cAAc,CAAC,IAAI;gBACzB,IAAI,EAAE,cAAc,CAAC,IAAI;gBACzB,QAAQ,EAAE,cAAc,CAAC,KAAK;gBAC9B,QAAQ,EAAE,cAAc,CAAC,KAAK;gBAC9B,MAAM,EAAE,QAAQ;aACjB;SACF,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,4BAA4B,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QAE/D,oDAAoD;QACpD,MAAM,MAAM,qBAAQ,cAAc,CAAE,CAAC;QACrC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;QACvF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,IAAY,EAAE,IAAe;QAChD,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC;YAChE,KAAK,EAAE;gBACL,IAAI;aACL;YACD,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI;aACZ;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,EAAE,CAAA,EAAE,CAAC;YACxB,MAAM,IAAI,0BAAiB,CAAC,qBAAqB,IAAI,aAAa,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAEhF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC;YAC7D,KAAK,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE;YAChC,IAAI,EAAE;gBACJ,KAAK,EAAE,SAAS;aACjB;SACF,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,wBAAwB,CAAC;YAClC;gBACE,SAAS,EAAE,cAAc,CAAC,EAAE;gBAC5B,IAAI,EAAE,cAAc,CAAC,IAAI;gBACzB,IAAI,EAAE,cAAc,CAAC,IAAI;gBACzB,QAAQ,EAAE,cAAc,CAAC,KAAK;gBAC9B,QAAQ,EAAE,cAAc,CAAC,KAAK;gBAC9B,MAAM,EAAE,gBAAgB;aACzB;SACF,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,4BAA4B,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QAE/D,MAAM,MAAM,qBAAQ,cAAc,CAAE,CAAC;QACrC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;QACvF,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,2BAA2B,CAAC,KAAU;QAC5C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,eAAe,CAAC;QACzB,CAAC;QAED,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;QACtB,CAAC;QAED,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QAAC,WAAM,CAAC;YACP,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAEO,cAAc,CAAC,KAAU;QAC/B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC1C,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QACjC,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1B,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,wBAAwB,CAAC,OAAkC;QACvE,MAAM,MAAM,GAAG,OAAO;aACnB,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;aACxC,MAAM,CACL,CAAC,MAAM,EAAE,EAAE,CACT,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,QAAQ,CAAC;YACjD,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,QAAQ,CAAC,CACpD;aACA,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;;YAAC,OAAA,CAAC;gBAChB,SAAS,EAAE,sBAAsB;gBACjC,YAAY,EAAE,MAAM;gBACpB,aAAa,EAAE,SAAS;gBACxB,WAAW,EAAE,MAAM,CAAC,MAAA,MAAM,CAAC,SAAS,mCAAI,MAAM,CAAC,IAAI,CAAC;gBACpD,OAAO,EAAE;oBACP,SAAS,EAAE,MAAA,MAAM,CAAC,SAAS,mCAAI,IAAI;oBACnC,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,IAAI,EAAE,MAAA,MAAM,CAAC,IAAI,mCAAI,IAAI;oBACzB,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC;iBAC/C;gBACD,QAAQ,EAAE;oBACR,WAAW,EAAE,MAAM,CAAC,IAAI;oBACxB,MAAM,EAAE,MAAM,CAAC,MAAM;iBACtB;aACF,CAAC,CAAA;SAAA,CAAC,CAAC;QAEN,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,qBAAqB,MAAM,CAAC,MAAM,2BAA2B,EAC7D,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACrD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,uBAAuB,CAAC,IAAY,EAAE,KAAU;QAC9C,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,SAAS;gBACZ,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;YAC/D,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;oBACzE,OAAO,EAAE,CAAC;gBACZ,CAAC;gBAED,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;oBACnC,MAAM,IAAI,4BAAmB,CAAC,sCAAsC,KAAK,EAAE,CAAC,CAAC;gBAC/E,CAAC;gBAED,OAAO,YAAY,CAAC,QAAQ,EAAE,CAAC;YACjC,CAAC;YACD,KAAK,OAAO,CAAC;YACb,KAAK,MAAM;gBACT,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACnE;gBACE,OAAO,KAAK,CAAC;QACjB,CAAC;IACH,CAAC;IAED,uBAAuB,CAAC,IAAY,EAAE,KAAU;QAC9C,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,SAAS;gBACZ,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;YAC/D,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;oBACzE,OAAO,EAAE,CAAC;gBACZ,CAAC;gBAED,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;oBACnC,MAAM,IAAI,4BAAmB,CAAC,sCAAsC,KAAK,EAAE,CAAC,CAAC;gBAC/E,CAAC;gBAED,OAAO,YAAY,CAAC,QAAQ,EAAE,CAAC;YACjC,CAAC;YACD,KAAK,OAAO,CAAC;YACb,KAAK,MAAM;gBACT,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACnE;gBACE,OAAO,KAAK,CAAC;QACjB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAa,EAAC,EAAE,GAAG,EAAa;QAC3C,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,GAAG,IAAI,SAAS,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YACpC,MAAM,IAAI,4BAAmB,CAC3B,iDAAiD,CAClD,CAAC;QACJ,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC;YACjE,KAAK,EAAE;gBACL,EAAE,EAAE;oBACF,EAAE,EAAE,GAAG;iBACR;aACF;YACD,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,IAAI;aACX;SACF,CAAC,CAAC;QAEH,IAAI,gBAAgB,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC;YAC3C,MAAM,IAAI,4BAAmB,CAC3B,IAAA,0BAAa,EAAC,sBAAsB,EAAE,MAAM,EAAE,+BAA+B,CAAC,CAC/E,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC;YAC1D,KAAK,EAAE;gBACL,EAAE,EAAE;oBACF,EAAE,EAAE,GAAG;iBACR;aACF;SACF,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,CAAC,4BAA4B,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACrF,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,MAAa,EAAE,OAAe,EAAE,IAAY,EAAE,KAAa;QACnF,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC;YACpD,KAAK,EAAE;gBACL,EAAE,EAAE,OAAO;aACZ;YACD,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI;aACT;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,0BAAiB,CAAC,IAAA,0BAAa,EAAC,cAAc,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;QACxF,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC;YACzD,KAAK,EAAE;gBACL,IAAI;gBACJ,aAAa,EAAE,IAAI;aACpB;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,0BAAiB,CACzB,IAAA,0BAAa,EAAC,iBAAiB,EAAE,MAAM,EAAE,6CAA6C,CAAC,CACxF,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC;YAClD,KAAK,EAAE;gBACL,kBAAkB,EAAE;oBAClB,UAAU,EAAE,OAAO,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,CAAC,EAAE;iBACjB;aACF;YACD,MAAM,EAAE;gBACN,UAAU,EAAE,OAAO,CAAC,EAAE;gBACtB,KAAK;gBACL,OAAO,EAAE,IAAI,CAAC,EAAE;aACjB;YACD,MAAM,EAAE;gBACN,KAAK;aACN;YACD,MAAM,EAAE;gBACN,UAAU,EAAE,IAAI;gBAChB,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,IAAI;aACZ;SACF,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,IAAuB,EACvB,MAAe;QAGf,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACvC,CAAC;QAED,IACE,MAAM,KAAK,SAAS;YACpB,IAAI,CAAC,cAAc;YACnB,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAC9E,CAAC;YACD,gDAAgD;YAChD,MAAM,MAAM,GAAwB,EAAE,CAAC;YACvC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAChB,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;YACrC,CAAC,CAAC,CAAC;YACH,OAAO,MAAM,CAAC;QAChB,CAAC;QAID,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAE3C,IAAI,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC;YACtD,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,EAAE,EAAE,IAAI;iBACT;aACF;YACD,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI;gBACR,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;gBACV,aAAa,EAAE,IAAI;aACpB;SACF,CAAC,CAAC;QAEH,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;QAEhE,MAAM,WAAW,GACf,MAAM,KAAK,SAAS;YAClB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC;gBAC7C,KAAK,EAAE;oBACL,OAAO,EAAE,MAAM;oBACf,UAAU,EAAE;wBACV,EAAE,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,EAAE,CAAC;qBACnD;iBACF;gBACD,MAAM,EAAE;oBACN,KAAK,EAAE,IAAI;oBACX,UAAU,EAAE,IAAI;iBACjB;aACF,CAAC,CAAC;QAET,MAAM,IAAI,GAAwB,EAAE,CAAC;QACrC,MAAM,SAAS,GAAwB,EAAE,CAAC;QAE1C,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;gBACf,KAAK,SAAS;oBACZ,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC;oBAClC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC;oBACvC,MAAM;gBACR,KAAK,QAAQ;oBACX,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBAC/B,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBACpC,MAAM;gBACR,KAAK,OAAO,CAAC;gBACb,KAAK,MAAM;oBACT,IAAI,CAAC;wBACH,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;wBACnC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBAC1C,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;wBAClD,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;wBACvB,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;oBAC9B,CAAC;oBACD,MAAM;gBACR;oBACE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;oBACvB,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;YAChC,CAAC;QACH,CAAC;QAED,yDAAyD;QACzD,WAAW,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;;YACzB,MAAM,YAAY,GAAG,MAAA,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,UAAU,CAAC,0CAAE,IAAI,CAAC;YAChF,IAAI,YAAY,EAAE,CAAC;gBACjB,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC;YAChC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,KAA0B;QACjC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YAC/B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,UAAU;QACR,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAAe;QAEnC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC;YACpD,KAAK,EAAE;gBACL,EAAE,EAAE,OAAO;aACZ;YACD,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI;aACT;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,0BAAiB,CAAC,iBAAiB,CAAC,CAAC;QACjD,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC;YAC9C,KAAK,EAAE;gBACL,OAAO;aACR;YACD,OAAO,EAAE;gBACP,OAAO,EAAE;oBACP,MAAM,EAAE;wBACN,IAAI,EAAE,IAAI;qBACX;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,IAAY,EAAE,KAAa;QACxC,IAAI,CAAC,UAAU,EAAE,CAAC;QAElB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC;YAChE,KAAK,EAAE;gBACL,IAAI;aACL;YACD,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI;aACZ;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,EAAE,CAAA,EAAE,CAAC;YACxB,MAAM,IAAI,0BAAiB,CAAC,qBAAqB,IAAI,aAAa,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC;YACzD,KAAK,EAAE;gBACL,IAAI;aACL;YACD,IAAI,EAAE;gBACJ,KAAK,EAAE,SAAS;aACjB;SACF,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,wBAAwB,CAAC;YAClC;gBACE,SAAS,EAAE,cAAc,CAAC,EAAE;gBAC5B,IAAI,EAAE,cAAc,CAAC,IAAI;gBACzB,IAAI,EAAE,cAAc,CAAC,IAAI;gBACzB,QAAQ,EAAE,cAAc,CAAC,KAAK;gBAC9B,QAAQ,EAAE,SAAS;gBACnB,MAAM,EAAE,UAAU;aACnB;SACF,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,4BAA4B,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QAE/D,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAA;AA/4CY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,mBAAU,GAAE;IAwBR,WAAA,IAAA,eAAM,EAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,0BAAa,CAAC,CAAC,CAAA;IAEvC,WAAA,IAAA,eAAM,EAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,kCAAiB,CAAC,CAAC,CAAA;IAE3C,WAAA,IAAA,eAAM,EAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,0BAAa,CAAC,CAAC,CAAA;IAEvC,WAAA,IAAA,eAAM,EAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,kEAA8B,CAAC,CAAC,CAAA;qCALzB,0BAAa;QAET,kCAAiB;QAErB,0BAAa;QAEZ,kEAA8B;GA9BtD,cAAc,CA+4C1B"}
1
+ {"version":3,"file":"setting.service.js","sourceRoot":"","sources":["../../src/setting/setting.service.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { PrismaService } from "@hed-hog/api-prisma";
2
- import { JwtService } from "@nestjs/jwt";
2
+ import { JwtService, JwtSignOptions } from "@nestjs/jwt";
3
3
  import { SecurityService } from "../security/security.service";
4
4
  import { SettingService } from "../setting/setting.service";
5
5
  export declare class TokenService {
@@ -10,7 +10,13 @@ export declare class TokenService {
10
10
  private readonly logger;
11
11
  constructor(prisma: PrismaService, jwt: JwtService, security: SecurityService, setting: SettingService);
12
12
  verify(locale: string, token: string): Promise<any>;
13
- createAccessToken(payload: Record<string, any>): Promise<string>;
13
+ /**
14
+ * `options` permite sobrescrever o `expiresIn` global do JwtModule numa
15
+ * chamada especifica — usado pela simulacao de acesso, cujo token precisa
16
+ * morrer junto com a sessao (que nao e renovavel) e nao aos 15 minutos
17
+ * padrao.
18
+ */
19
+ createAccessToken(payload: Record<string, any>, options?: JwtSignOptions): Promise<string>;
14
20
  createOpaqueToken(size?: number): Promise<string>;
15
21
  private normalizeCookieDomain;
16
22
  private getCookieDomain;
@@ -28,6 +34,21 @@ export declare class TokenService {
28
34
  userAgent: string;
29
35
  email: string;
30
36
  }>;
37
+ /**
38
+ * Token do link de confirmação de e-mail enviado no cadastro. É um JWT, e não
39
+ * um token opaco em `user_identifier_challenge` como o do reset de senha, por
40
+ * dois motivos: `completeAccount`/`authorizeAccountInvite` aceitam qualquer
41
+ * linha válida daquela tabela, então um token gravado ali transformaria o
42
+ * e-mail de boas-vindas num link de login de 7 dias — o claim `purpose` fecha
43
+ * essa porta; e como nada é consumido, clicar duas vezes (pré-fetch do
44
+ * cliente de e-mail, encaminhamento) continua funcionando.
45
+ */
46
+ createEmailConfirmationToken(payload: {
47
+ userIdentifierId: number;
48
+ }): Promise<string>;
49
+ verifyEmailConfirmationToken(locale: string, token: string): Promise<{
50
+ userIdentifierId: number;
51
+ }>;
31
52
  decodeExpiredToken(token: string): Promise<any>;
32
53
  }
33
54
  //# sourceMappingURL=token.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"token.service.d.ts","sourceRoot":"","sources":["../../src/token/token.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,qBACa,YAAY;IAIrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAEpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAEzB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAT1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiC;gBAGrC,MAAM,EAAE,aAAa,EAErB,GAAG,EAAE,UAAU,EAEf,QAAQ,EAAE,eAAe,EAEzB,OAAO,EAAE,cAAc;IAGpC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IA4DpC,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAM9C,iBAAiB,CAAC,IAAI,SAAK;IAIjC,OAAO,CAAC,qBAAqB;YAoBf,eAAe;IAcvB,wBAAwB,CAAC,GAAG,KAAA,GAAG,OAAO,CAAC,IAAI,CAAC;IAe5C,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAA,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB1F,uBAAuB,CAAC,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;IAOxG,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAgBxH,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAUtD"}
1
+ {"version":3,"file":"token.service.d.ts","sourceRoot":"","sources":["../../src/token/token.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAK5D,qBACa,YAAY;IAIrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAEpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAEzB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAT1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiC;gBAGrC,MAAM,EAAE,aAAa,EAErB,GAAG,EAAE,UAAU,EAEf,QAAQ,EAAE,eAAe,EAEzB,OAAO,EAAE,cAAc;IAGpC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IA4D1C;;;;;OAKG;IACG,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc;IAOxE,iBAAiB,CAAC,IAAI,SAAK;IAIjC,OAAO,CAAC,qBAAqB;YAoBf,eAAe;IAcvB,wBAAwB,CAAC,GAAG,KAAA,GAAG,OAAO,CAAC,IAAI,CAAC;IAe5C,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAA,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB1F,uBAAuB,CAAC,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;IAOxG,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAgB9H;;;;;;;;OAQG;IACG,4BAA4B,CAAC,OAAO,EAAE;QAAE,gBAAgB,EAAE,MAAM,CAAA;KAAE;IAUlE,4BAA4B,CAChC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC;QAAE,gBAAgB,EAAE,MAAM,CAAA;KAAE,CAAC;IAsBlC,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAUtD"}
@@ -20,6 +20,8 @@ const common_1 = require("@nestjs/common");
20
20
  const jwt_1 = require("@nestjs/jwt");
21
21
  const security_service_1 = require("../security/security.service");
22
22
  const setting_service_1 = require("../setting/setting.service");
23
+ /** Claim que separa o token do link de confirmação de e-mail dos demais JWTs. */
24
+ const EMAIL_CONFIRMATION_PURPOSE = 'email-confirmation';
23
25
  let TokenService = TokenService_1 = class TokenService {
24
26
  constructor(prisma, jwt, security, setting) {
25
27
  this.prisma = prisma;
@@ -76,10 +78,14 @@ let TokenService = TokenService_1 = class TokenService {
76
78
  throw new common_1.UnauthorizedException(errMsg || (0, api_locale_1.getLocaleText)('accessDenied', locale, 'Access denied.'));
77
79
  }
78
80
  }
79
- async createAccessToken(payload) {
80
- return this.jwt.signAsync(payload, {
81
- secret: this.security.getJwtSecret(),
82
- });
81
+ /**
82
+ * `options` permite sobrescrever o `expiresIn` global do JwtModule numa
83
+ * chamada especifica — usado pela simulacao de acesso, cujo token precisa
84
+ * morrer junto com a sessao (que nao e renovavel) e nao aos 15 minutos
85
+ * padrao.
86
+ */
87
+ async createAccessToken(payload, options) {
88
+ return this.jwt.signAsync(payload, Object.assign({ secret: this.security.getJwtSecret() }, (options !== null && options !== void 0 ? options : {})));
83
89
  }
84
90
  async createOpaqueToken(size = 64) {
85
91
  return this.security.randomOpaque(size);
@@ -159,6 +165,35 @@ let TokenService = TokenService_1 = class TokenService {
159
165
  throw new common_1.ForbiddenException('Invalid or expired MFA token');
160
166
  }
161
167
  }
168
+ /**
169
+ * Token do link de confirmação de e-mail enviado no cadastro. É um JWT, e não
170
+ * um token opaco em `user_identifier_challenge` como o do reset de senha, por
171
+ * dois motivos: `completeAccount`/`authorizeAccountInvite` aceitam qualquer
172
+ * linha válida daquela tabela, então um token gravado ali transformaria o
173
+ * e-mail de boas-vindas num link de login de 7 dias — o claim `purpose` fecha
174
+ * essa porta; e como nada é consumido, clicar duas vezes (pré-fetch do
175
+ * cliente de e-mail, encaminhamento) continua funcionando.
176
+ */
177
+ async createEmailConfirmationToken(payload) {
178
+ return this.jwt.signAsync(Object.assign(Object.assign({}, payload), { purpose: EMAIL_CONFIRMATION_PURPOSE }), {
179
+ secret: this.security.getJwtSecret(),
180
+ expiresIn: '7d',
181
+ });
182
+ }
183
+ async verifyEmailConfirmationToken(locale, token) {
184
+ try {
185
+ const payload = await this.jwt.verifyAsync(token, {
186
+ secret: this.security.getJwtSecret(),
187
+ });
188
+ if (payload.purpose !== EMAIL_CONFIRMATION_PURPOSE) {
189
+ throw new Error('Token purpose mismatch');
190
+ }
191
+ return { userIdentifierId: payload.userIdentifierId };
192
+ }
193
+ catch (error) {
194
+ throw new common_1.BadRequestException((0, api_locale_1.getLocaleText)('confirmEmail.invalidOrExpired', locale, 'This confirmation link is invalid or has expired.'));
195
+ }
196
+ }
162
197
  async decodeExpiredToken(token) {
163
198
  try {
164
199
  return await this.jwt.verifyAsync(token, {
@@ -1 +1 @@
1
- {"version":3,"file":"token.service.js","sourceRoot":"","sources":["../../src/token/token.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"token.service.js","sourceRoot":"","sources":["../../src/token/token.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAoD;AACpD,oDAAoD;AACpD,2CAAwI;AACxI,qCAAyD;AACzD,mEAA+D;AAC/D,gEAA4D;AAE5D,iFAAiF;AACjF,MAAM,0BAA0B,GAAG,oBAAoB,CAAC;AAGjD,IAAM,YAAY,oBAAlB,MAAM,YAAY;IAGvB,YACmB,MAAqB,EAEtC,GAAgC,EAEhC,QAA0C,EAE1C,OAAwC;QANvB,WAAM,GAAN,MAAM,CAAe;QAErB,QAAG,GAAH,GAAG,CAAY;QAEf,aAAQ,GAAR,QAAQ,CAAiB;QAEzB,YAAO,GAAP,OAAO,CAAgB;QATzB,WAAM,GAAG,IAAI,eAAM,CAAC,cAAY,CAAC,IAAI,CAAC,CAAC;IAUpD,CAAC;IAEL,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,KAAa;;QACxC,IAAI,CAAC;YAEH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE;gBAChD,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;aACrC,CAAC,CAAC;YAEH,8DAA8D;YAC9D,IAAI,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACrC,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC;wBACxD,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,SAAS,EAAE;wBAChC,MAAM,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;qBAC/C,CAAC,CAAC;oBAEH,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,OAAO,CAAC,SAAS,WAAW,OAAO,CAAC,GAAG,kBAAkB,CAAC,CAAC;wBACvG,MAAM,IAAI,8BAAqB,CAC7B,IAAA,0BAAa,EAAC,gBAAgB,EAAE,MAAM,EAAE,2BAA2B,CAAC,CACrE,CAAC;oBACJ,CAAC;oBAED,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;wBAChC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,OAAO,CAAC,SAAS,WAAW,OAAO,CAAC,GAAG,eAAe,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;wBACtI,MAAM,IAAI,8BAAqB,CAC7B,IAAA,0BAAa,EAAC,gBAAgB,EAAE,MAAM,EAAE,2BAA2B,CAAC,CACrE,CAAC;oBACJ,CAAC;oBAED,IAAI,OAAO,CAAC,UAAU,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;wBACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,OAAO,CAAC,SAAS,WAAW,OAAO,CAAC,GAAG,eAAe,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;wBACvI,MAAM,IAAI,8BAAqB,CAC7B,IAAA,0BAAa,EAAC,gBAAgB,EAAE,MAAM,EAAE,2BAA2B,CAAC,CACrE,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAAC,OAAO,YAAY,EAAE,CAAC;oBACtB,iEAAiE;oBACjE,IAAI,YAAY,YAAY,8BAAqB,EAAE,CAAC;wBAClD,MAAM,YAAY,CAAC;oBACrB,CAAC;oBACD,oFAAoF;oBACpF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+CAA+C,OAAO,CAAC,SAAS,WAAW,OAAO,CAAC,GAAG,KAAM,YAAoB,aAApB,YAAY,uBAAZ,YAAY,CAAU,OAAO,EAAE,CAAC,CAAC;gBACjJ,CAAC;YACH,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,MAAC,KAAa,aAAb,KAAK,uBAAL,KAAK,CAAU,IAAI,mCAAI,cAAc,CAAC;YACvD,MAAM,MAAM,GAAG,MAAC,KAAa,aAAb,KAAK,uBAAL,KAAK,CAAU,OAAO,mCAAI,EAAE,CAAC;YAC7C,0FAA0F;YAC1F,IAAI,CAAC,CAAC,KAAK,YAAY,8BAAqB,CAAC,IAAI,OAAO,KAAK,mBAAmB,EAAE,CAAC;gBACjF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,OAAO,KAAK,MAAM,EAAE,CAAC,CAAC;YACrE,CAAC;YACD,qDAAqD;YACrD,MAAM,IAAI,8BAAqB,CAC7B,MAAM,IAAI,IAAA,0BAAa,EAAC,cAAc,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAClE,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,iBAAiB,CAAC,OAA4B,EAAE,OAAwB;QAC5E,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,kBAC/B,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,IACjC,CAAC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC,EAClB,CAAC;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,IAAI,GAAG,EAAE;QAC/B,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAEO,qBAAqB,CAAC,KAAqB;QACjD,MAAM,UAAU,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAE,CAAC;QAEjC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,IAAI,GAAG,UAAU;aACpB,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC;aAC5B,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aACb,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aACb,IAAI,EAAE,CAAC;QAEV,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,WAAW,IAAI,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1E,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,eAAe;QAC3B,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAE7E,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,cAAc,CAAC;QACxB,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;YACnD,SAAS;SACV,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,GAAG;QAEhC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,CAAC,MAAM,IAAI,MAAM,KAAK,WAAW,CAAC;QACtD,MAAM,aAAa,GAAQ;YACzB,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;SACvC,CAAC;QACF,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC;YAC5B,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC;QAChC,CAAC;QACD,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,MAAc,EAAE,GAAG,EAAE,KAAa,EAAE,UAAgB;QAC9E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,CAAC,MAAM,IAAI,MAAM,KAAK,WAAW,CAAC;QACtD,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACjD,MAAM,aAAa,GAAQ;YACzB,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;YACtC,MAAM;SACP,CAAC;QACF,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC;YAC5B,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC;QAChC,CAAC;QACD,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;IAEzC,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,OAAgF;QAC5G,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE;YACjC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;YACpC,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,KAAa;QACzC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE;gBAChD,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;aACrC,CAAC,CAAC;YACH,OAAO;gBACL,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,KAAK,EAAE,OAAO,CAAC,KAAK;aACrB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,2BAAkB,CAAC,8BAA8B,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,4BAA4B,CAAC,OAAqC;QACtE,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,iCAClB,OAAO,KAAE,OAAO,EAAE,0BAA0B,KACjD;YACE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;YACpC,SAAS,EAAE,IAAI;SAChB,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,4BAA4B,CAChC,MAAc,EACd,KAAa;QAEb,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE;gBAChD,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;aACrC,CAAC,CAAC;YAEH,IAAI,OAAO,CAAC,OAAO,KAAK,0BAA0B,EAAE,CAAC;gBACnD,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAC5C,CAAC;YAED,OAAO,EAAE,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC;QACxD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,4BAAmB,CAC3B,IAAA,0BAAa,EACX,+BAA+B,EAC/B,MAAM,EACN,mDAAmD,CACpD,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,KAAa;QACpC,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE;gBACvC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;gBACpC,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,8BAAqB,CAAC,eAAe,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;CACF,CAAA;AAzOY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,mBAAU,GAAE;IAMR,WAAA,IAAA,eAAM,EAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,gBAAU,CAAC,CAAC,CAAA;IAEpC,WAAA,IAAA,eAAM,EAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,kCAAe,CAAC,CAAC,CAAA;IAEzC,WAAA,IAAA,eAAM,EAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,gCAAc,CAAC,CAAC,CAAA;qCALhB,0BAAa;QAEhB,gBAAU;QAEL,kCAAe;QAEhB,gCAAc;GAV/B,YAAY,CAyOxB"}