@wildo-ai/saas-models 1.1.4 → 1.1.6

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 (1399) hide show
  1. package/dist/esm/__tests__/setup.d.ts.map +1 -1
  2. package/dist/esm/_inspect.d.ts.map +1 -1
  3. package/dist/esm/applications/application-metadata.shared.resources-config.schemas.d.ts +1 -1
  4. package/dist/esm/applications/application-metadata.shared.resources-config.schemas.d.ts.map +1 -1
  5. package/dist/esm/applications/application-subject.shared.schemas.d.ts.map +1 -1
  6. package/dist/esm/applications/application-versions.shared.resources-config.schemas.d.ts +1 -1
  7. package/dist/esm/applications/application-versions.shared.resources-config.schemas.d.ts.map +1 -1
  8. package/dist/esm/applications/application-versions.shared.resources-config.schemas.js +4 -3
  9. package/dist/esm/applications/application-versions.shared.resources-config.schemas.js.map +1 -1
  10. package/dist/esm/applications/applications-context.schemas.d.ts +412 -20
  11. package/dist/esm/applications/applications-context.schemas.d.ts.map +1 -1
  12. package/dist/esm/applications/applications.shared.resources-config.schemas.d.ts +1 -0
  13. package/dist/esm/applications/applications.shared.resources-config.schemas.d.ts.map +1 -1
  14. package/dist/esm/applications/applications.shared.resources-config.schemas.js +4 -3
  15. package/dist/esm/applications/applications.shared.resources-config.schemas.js.map +1 -1
  16. package/dist/esm/applications/applications.shared.schemas.d.ts +10 -7
  17. package/dist/esm/applications/applications.shared.schemas.d.ts.map +1 -1
  18. package/dist/esm/applications/applications.shared.schemas.js +46 -9
  19. package/dist/esm/applications/applications.shared.schemas.js.map +1 -1
  20. package/dist/esm/billing/billing-account.shared.resources-config.schemas.d.ts +11 -3
  21. package/dist/esm/billing/billing-account.shared.resources-config.schemas.d.ts.map +1 -1
  22. package/dist/esm/billing/billing-account.shared.resources-config.schemas.js +50 -17
  23. package/dist/esm/billing/billing-account.shared.resources-config.schemas.js.map +1 -1
  24. package/dist/esm/billing/billing-account.shared.schemas.d.ts.map +1 -1
  25. package/dist/esm/billing/billing-account.shared.schemas.js +2 -2
  26. package/dist/esm/billing/billing-account.shared.schemas.js.map +1 -1
  27. package/dist/esm/billing/billing-configuration.shared.schemas.d.ts +25 -0
  28. package/dist/esm/billing/billing-configuration.shared.schemas.d.ts.map +1 -1
  29. package/dist/esm/billing/billing-configuration.shared.schemas.js +19 -0
  30. package/dist/esm/billing/billing-configuration.shared.schemas.js.map +1 -1
  31. package/dist/esm/billing/billing-enums.shared.schemas.d.ts +114 -10
  32. package/dist/esm/billing/billing-enums.shared.schemas.d.ts.map +1 -1
  33. package/dist/esm/billing/billing-enums.shared.schemas.js +121 -9
  34. package/dist/esm/billing/billing-enums.shared.schemas.js.map +1 -1
  35. package/dist/esm/billing/billing-types.shared.schemas.d.ts +61 -15
  36. package/dist/esm/billing/billing-types.shared.schemas.d.ts.map +1 -1
  37. package/dist/esm/billing/billing-types.shared.schemas.js +54 -26
  38. package/dist/esm/billing/billing-types.shared.schemas.js.map +1 -1
  39. package/dist/esm/billing/credit-pool.shared.resources-config.schemas.d.ts +2 -0
  40. package/dist/esm/billing/credit-pool.shared.resources-config.schemas.d.ts.map +1 -1
  41. package/dist/esm/billing/credit-pool.shared.resources-config.schemas.js +18 -7
  42. package/dist/esm/billing/credit-pool.shared.resources-config.schemas.js.map +1 -1
  43. package/dist/esm/billing/credit-pool.shared.schemas.d.ts +2 -0
  44. package/dist/esm/billing/credit-pool.shared.schemas.d.ts.map +1 -1
  45. package/dist/esm/billing/credit-pool.shared.schemas.js +7 -1
  46. package/dist/esm/billing/credit-pool.shared.schemas.js.map +1 -1
  47. package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.d.ts.map +1 -1
  48. package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.js +6 -6
  49. package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.js.map +1 -1
  50. package/dist/esm/billing/invoice-ref.shared.schemas.d.ts.map +1 -1
  51. package/dist/esm/billing/invoice-ref.shared.schemas.js +1 -1
  52. package/dist/esm/billing/invoice-ref.shared.schemas.js.map +1 -1
  53. package/dist/esm/billing/price.shared.resources-config.schemas.d.ts.map +1 -1
  54. package/dist/esm/billing/price.shared.resources-config.schemas.js +32 -2
  55. package/dist/esm/billing/price.shared.resources-config.schemas.js.map +1 -1
  56. package/dist/esm/billing/price.shared.schemas.d.ts.map +1 -1
  57. package/dist/esm/billing/price.shared.schemas.js +5 -3
  58. package/dist/esm/billing/price.shared.schemas.js.map +1 -1
  59. package/dist/esm/billing/product-behavior-policy.shared.schemas.d.ts +11 -1
  60. package/dist/esm/billing/product-behavior-policy.shared.schemas.d.ts.map +1 -1
  61. package/dist/esm/billing/product-behavior-policy.shared.schemas.js +39 -23
  62. package/dist/esm/billing/product-behavior-policy.shared.schemas.js.map +1 -1
  63. package/dist/esm/billing/product-definition.shared.schemas.d.ts +30 -2
  64. package/dist/esm/billing/product-definition.shared.schemas.d.ts.map +1 -1
  65. package/dist/esm/billing/product-definition.shared.schemas.js +35 -0
  66. package/dist/esm/billing/product-definition.shared.schemas.js.map +1 -1
  67. package/dist/esm/billing/product.shared.resources-config.schemas.d.ts +6 -3
  68. package/dist/esm/billing/product.shared.resources-config.schemas.d.ts.map +1 -1
  69. package/dist/esm/billing/product.shared.resources-config.schemas.js +32 -2
  70. package/dist/esm/billing/product.shared.resources-config.schemas.js.map +1 -1
  71. package/dist/esm/billing/product.shared.schemas.d.ts +8 -3
  72. package/dist/esm/billing/product.shared.schemas.d.ts.map +1 -1
  73. package/dist/esm/billing/product.shared.schemas.js +25 -7
  74. package/dist/esm/billing/product.shared.schemas.js.map +1 -1
  75. package/dist/esm/billing/promotions.shared.resources-config.schemas.d.ts.map +1 -1
  76. package/dist/esm/billing/promotions.shared.resources-config.schemas.js +41 -11
  77. package/dist/esm/billing/promotions.shared.resources-config.schemas.js.map +1 -1
  78. package/dist/esm/billing/promotions.shared.schemas.d.ts.map +1 -1
  79. package/dist/esm/billing/public-pricing-catalog.shared.atoms.d.ts +135 -0
  80. package/dist/esm/billing/public-pricing-catalog.shared.atoms.d.ts.map +1 -0
  81. package/dist/esm/billing/public-pricing-catalog.shared.atoms.js +112 -0
  82. package/dist/esm/billing/public-pricing-catalog.shared.atoms.js.map +1 -0
  83. package/dist/esm/billing/public-pricing-catalog.shared.d.ts +30 -0
  84. package/dist/esm/billing/public-pricing-catalog.shared.d.ts.map +1 -0
  85. package/dist/esm/billing/public-pricing-catalog.shared.js +53 -0
  86. package/dist/esm/billing/public-pricing-catalog.shared.js.map +1 -0
  87. package/dist/esm/billing/referral-reward.shared.schemas.d.ts +51 -0
  88. package/dist/esm/billing/referral-reward.shared.schemas.d.ts.map +1 -0
  89. package/dist/esm/billing/referral-reward.shared.schemas.js +92 -0
  90. package/dist/esm/billing/referral-reward.shared.schemas.js.map +1 -0
  91. package/dist/esm/billing/referral.shared.resources-config.schemas.d.ts +54 -33
  92. package/dist/esm/billing/referral.shared.resources-config.schemas.d.ts.map +1 -1
  93. package/dist/esm/billing/referral.shared.resources-config.schemas.js +76 -2
  94. package/dist/esm/billing/referral.shared.resources-config.schemas.js.map +1 -1
  95. package/dist/esm/billing/referral.shared.schemas.d.ts +23 -37
  96. package/dist/esm/billing/referral.shared.schemas.d.ts.map +1 -1
  97. package/dist/esm/billing/referral.shared.schemas.js +27 -44
  98. package/dist/esm/billing/referral.shared.schemas.js.map +1 -1
  99. package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts +32 -2
  100. package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts.map +1 -1
  101. package/dist/esm/billing/subscription.shared.resources-config.schemas.js +95 -16
  102. package/dist/esm/billing/subscription.shared.resources-config.schemas.js.map +1 -1
  103. package/dist/esm/billing/subscription.shared.schemas.d.ts +81 -5
  104. package/dist/esm/billing/subscription.shared.schemas.d.ts.map +1 -1
  105. package/dist/esm/billing/subscription.shared.schemas.js +88 -25
  106. package/dist/esm/billing/subscription.shared.schemas.js.map +1 -1
  107. package/dist/esm/billing/usage-flush-evidence.shared.schemas.d.ts +49 -0
  108. package/dist/esm/billing/usage-flush-evidence.shared.schemas.d.ts.map +1 -0
  109. package/dist/esm/billing/usage-flush-evidence.shared.schemas.js +48 -0
  110. package/dist/esm/billing/usage-flush-evidence.shared.schemas.js.map +1 -0
  111. package/dist/esm/billing/usage-record.shared.resources-config.schemas.d.ts.map +1 -1
  112. package/dist/esm/billing/usage-record.shared.schemas.d.ts +1 -0
  113. package/dist/esm/billing/usage-record.shared.schemas.d.ts.map +1 -1
  114. package/dist/esm/billing/usage-record.shared.schemas.js +8 -5
  115. package/dist/esm/billing/usage-record.shared.schemas.js.map +1 -1
  116. package/dist/esm/charts/aggregation-query.shared.schemas.d.ts.map +1 -1
  117. package/dist/esm/charts/chart-definition-builder.shared.d.ts.map +1 -1
  118. package/dist/esm/companion/provider-discovery.shared.schemas.d.ts +150 -3
  119. package/dist/esm/companion/provider-discovery.shared.schemas.d.ts.map +1 -1
  120. package/dist/esm/companion/provider-discovery.shared.schemas.js +84 -1
  121. package/dist/esm/companion/provider-discovery.shared.schemas.js.map +1 -1
  122. package/dist/esm/companion/shared-library-companion.shared.definitions.d.ts.map +1 -1
  123. package/dist/esm/companion-exports.d.ts.map +1 -1
  124. package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.d.ts +28 -4
  125. package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.d.ts.map +1 -1
  126. package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.js +25 -7
  127. package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.js.map +1 -1
  128. package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.d.ts +70 -0
  129. package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.d.ts.map +1 -1
  130. package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.js +87 -0
  131. package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.js.map +1 -1
  132. package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.d.ts +484 -0
  133. package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.d.ts.map +1 -0
  134. package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.js +857 -0
  135. package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.js.map +1 -0
  136. package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.d.ts +7 -0
  137. package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.d.ts.map +1 -1
  138. package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.js.map +1 -1
  139. package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.d.ts +30 -4
  140. package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.d.ts.map +1 -1
  141. package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.js +29 -8
  142. package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.js.map +1 -1
  143. package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts +37 -6
  144. package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts.map +1 -1
  145. package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js +53 -9
  146. package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js.map +1 -1
  147. package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.d.ts +2432 -162
  148. package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.d.ts.map +1 -1
  149. package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.js +2545 -124
  150. package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.js.map +1 -1
  151. package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.d.ts +10 -0
  152. package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.d.ts.map +1 -1
  153. package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js +177 -7
  154. package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js.map +1 -1
  155. package/dist/esm/compliance/documents/governed-document-interactions.shared.schemas.d.ts +463 -0
  156. package/dist/esm/compliance/documents/governed-document-interactions.shared.schemas.d.ts.map +1 -0
  157. package/dist/esm/compliance/documents/governed-document-interactions.shared.schemas.js +526 -0
  158. package/dist/esm/compliance/documents/governed-document-interactions.shared.schemas.js.map +1 -0
  159. package/dist/esm/compliance/documents/governed-documents.shared.schemas.d.ts +539 -15
  160. package/dist/esm/compliance/documents/governed-documents.shared.schemas.d.ts.map +1 -1
  161. package/dist/esm/compliance/documents/governed-documents.shared.schemas.js +402 -14
  162. package/dist/esm/compliance/documents/governed-documents.shared.schemas.js.map +1 -1
  163. package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.resources-config.schemas.d.ts +18 -0
  164. package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.resources-config.schemas.d.ts.map +1 -0
  165. package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.resources-config.schemas.js +89 -0
  166. package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.resources-config.schemas.js.map +1 -0
  167. package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.schemas.d.ts +47 -0
  168. package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.schemas.d.ts.map +1 -0
  169. package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.schemas.js +73 -0
  170. package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.schemas.js.map +1 -0
  171. package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.d.ts +23 -0
  172. package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.d.ts.map +1 -1
  173. package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.js +41 -1
  174. package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.js.map +1 -1
  175. package/dist/esm/compliance/privacy/capability-consent-purposes.shared.utils.d.ts +33 -0
  176. package/dist/esm/compliance/privacy/capability-consent-purposes.shared.utils.d.ts.map +1 -0
  177. package/dist/esm/compliance/privacy/capability-consent-purposes.shared.utils.js +30 -0
  178. package/dist/esm/compliance/privacy/capability-consent-purposes.shared.utils.js.map +1 -0
  179. package/dist/esm/compliance/privacy/client-storage.shared.schemas.d.ts +6 -5
  180. package/dist/esm/compliance/privacy/client-storage.shared.schemas.d.ts.map +1 -1
  181. package/dist/esm/compliance/privacy/client-storage.shared.schemas.js +15 -5
  182. package/dist/esm/compliance/privacy/client-storage.shared.schemas.js.map +1 -1
  183. package/dist/esm/compliance/privacy/consent-gate-vocabulary.shared.schemas.d.ts +127 -0
  184. package/dist/esm/compliance/privacy/consent-gate-vocabulary.shared.schemas.d.ts.map +1 -0
  185. package/dist/esm/compliance/privacy/consent-gate-vocabulary.shared.schemas.js +94 -0
  186. package/dist/esm/compliance/privacy/consent-gate-vocabulary.shared.schemas.js.map +1 -0
  187. package/dist/esm/compliance/privacy/consent-purposes.shared.d.ts +125 -0
  188. package/dist/esm/compliance/privacy/consent-purposes.shared.d.ts.map +1 -0
  189. package/dist/esm/compliance/privacy/consent-purposes.shared.js +136 -0
  190. package/dist/esm/compliance/privacy/consent-purposes.shared.js.map +1 -0
  191. package/dist/esm/compliance/privacy/data-retention.shared.schemas.d.ts +0 -8
  192. package/dist/esm/compliance/privacy/data-retention.shared.schemas.d.ts.map +0 -1
  193. package/dist/esm/compliance/privacy/data-retention.shared.schemas.js.map +0 -1
  194. package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.d.ts +100 -0
  195. package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.d.ts.map +1 -0
  196. package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.js +146 -0
  197. package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.js.map +1 -0
  198. package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.d.ts.map +1 -1
  199. package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts +38 -0
  200. package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts.map +1 -1
  201. package/dist/esm/compliance/privacy/impersonalization.shared.schemas.js +39 -0
  202. package/dist/esm/compliance/privacy/impersonalization.shared.schemas.js.map +1 -1
  203. package/dist/esm/compliance/privacy/legal-hold-subject-attribution.shared.utils.d.ts +35 -0
  204. package/dist/esm/compliance/privacy/legal-hold-subject-attribution.shared.utils.d.ts.map +1 -0
  205. package/dist/esm/compliance/privacy/legal-hold-subject-attribution.shared.utils.js +82 -0
  206. package/dist/esm/compliance/privacy/legal-hold-subject-attribution.shared.utils.js.map +1 -0
  207. package/dist/esm/compliance/privacy/legal-holds.shared.resources-config.schemas.d.ts +37 -0
  208. package/dist/esm/compliance/privacy/legal-holds.shared.resources-config.schemas.d.ts.map +1 -0
  209. package/dist/esm/compliance/privacy/legal-holds.shared.resources-config.schemas.js +223 -0
  210. package/dist/esm/compliance/privacy/legal-holds.shared.resources-config.schemas.js.map +1 -0
  211. package/dist/esm/compliance/privacy/legal-holds.shared.schemas.d.ts +222 -0
  212. package/dist/esm/compliance/privacy/legal-holds.shared.schemas.d.ts.map +1 -0
  213. package/dist/esm/compliance/privacy/legal-holds.shared.schemas.js +331 -0
  214. package/dist/esm/compliance/privacy/legal-holds.shared.schemas.js.map +1 -0
  215. package/dist/esm/compliance/privacy/operating-jurisdictions.shared.schemas.d.ts.map +1 -1
  216. package/dist/esm/compliance/privacy/operating-jurisdictions.shared.schemas.js.map +1 -1
  217. package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.d.ts +105 -28
  218. package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.d.ts.map +1 -1
  219. package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.js +107 -26
  220. package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.js.map +1 -1
  221. package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.d.ts.map +1 -1
  222. package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.d.ts.map +1 -1
  223. package/dist/esm/compliance/privacy/privacy.shared.schemas.d.ts +9 -17
  224. package/dist/esm/compliance/privacy/privacy.shared.schemas.d.ts.map +1 -1
  225. package/dist/esm/compliance/privacy/privacy.shared.schemas.js +74 -31
  226. package/dist/esm/compliance/privacy/privacy.shared.schemas.js.map +1 -1
  227. package/dist/esm/compliance/privacy/provider-capability-disclosure.shared.schemas.d.ts +52 -0
  228. package/dist/esm/compliance/privacy/provider-capability-disclosure.shared.schemas.d.ts.map +1 -0
  229. package/dist/esm/compliance/privacy/provider-capability-disclosure.shared.schemas.js +116 -0
  230. package/dist/esm/compliance/privacy/provider-capability-disclosure.shared.schemas.js.map +1 -0
  231. package/dist/esm/compliance/privacy/purpose-ref.shared.schemas.d.ts +11 -0
  232. package/dist/esm/compliance/privacy/purpose-ref.shared.schemas.d.ts.map +1 -0
  233. package/dist/esm/compliance/privacy/purpose-ref.shared.schemas.js +11 -0
  234. package/dist/esm/compliance/privacy/purpose-ref.shared.schemas.js.map +1 -0
  235. package/dist/esm/compliance/privacy/redaction.shared.schemas.d.ts.map +1 -1
  236. package/dist/esm/compliance/privacy/redaction.shared.schemas.js.map +1 -1
  237. package/dist/esm/compliance/privacy/retention-binding.shared.utils.d.ts +93 -0
  238. package/dist/esm/compliance/privacy/retention-binding.shared.utils.d.ts.map +1 -0
  239. package/dist/esm/compliance/privacy/retention-binding.shared.utils.js +149 -0
  240. package/dist/esm/compliance/privacy/retention-binding.shared.utils.js.map +1 -0
  241. package/dist/esm/compliance/privacy/retention-enforcement-records.shared.resources-config.schemas.d.ts +43 -0
  242. package/dist/esm/compliance/privacy/retention-enforcement-records.shared.resources-config.schemas.d.ts.map +1 -0
  243. package/dist/esm/compliance/privacy/retention-enforcement-records.shared.resources-config.schemas.js +106 -0
  244. package/dist/esm/compliance/privacy/retention-enforcement-records.shared.resources-config.schemas.js.map +1 -0
  245. package/dist/esm/compliance/privacy/retention-enforcement-records.shared.schemas.d.ts +209 -0
  246. package/dist/esm/compliance/privacy/retention-enforcement-records.shared.schemas.d.ts.map +1 -0
  247. package/dist/esm/compliance/privacy/retention-enforcement-records.shared.schemas.js +226 -0
  248. package/dist/esm/compliance/privacy/retention-enforcement-records.shared.schemas.js.map +1 -0
  249. package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.d.ts +129 -5
  250. package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.d.ts.map +1 -1
  251. package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.js +128 -4
  252. package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.js.map +1 -1
  253. package/dist/esm/compliance/privacy/retention-scope-deleted.shared.utils.d.ts +53 -0
  254. package/dist/esm/compliance/privacy/retention-scope-deleted.shared.utils.d.ts.map +1 -0
  255. package/dist/esm/compliance/privacy/retention-scope-deleted.shared.utils.js +74 -0
  256. package/dist/esm/compliance/privacy/retention-scope-deleted.shared.utils.js.map +1 -0
  257. package/dist/esm/compliance/privacy/subject-data-recipients.shared.schemas.d.ts +311 -0
  258. package/dist/esm/compliance/privacy/subject-data-recipients.shared.schemas.d.ts.map +1 -0
  259. package/dist/esm/compliance/privacy/subject-data-recipients.shared.schemas.js +355 -0
  260. package/dist/esm/compliance/privacy/subject-data-recipients.shared.schemas.js.map +1 -0
  261. package/dist/esm/compliance/privacy/subject-erasure-lane-evidence.shared.schemas.d.ts +47 -0
  262. package/dist/esm/compliance/privacy/subject-erasure-lane-evidence.shared.schemas.d.ts.map +1 -0
  263. package/dist/esm/compliance/privacy/subject-erasure-lane-evidence.shared.schemas.js +98 -0
  264. package/dist/esm/compliance/privacy/subject-erasure-lane-evidence.shared.schemas.js.map +1 -0
  265. package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.d.ts +507 -35
  266. package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.d.ts.map +1 -1
  267. package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.js +513 -17
  268. package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.js.map +1 -1
  269. package/dist/esm/compliance/privacy/subject-export-render.shared.utils.d.ts.map +1 -1
  270. package/dist/esm/compliance/privacy/subject-export-render.shared.utils.js +26 -0
  271. package/dist/esm/compliance/privacy/subject-export-render.shared.utils.js.map +1 -1
  272. package/dist/esm/compliance/privacy/subject-export.shared.schemas.d.ts +9 -0
  273. package/dist/esm/compliance/privacy/subject-export.shared.schemas.d.ts.map +1 -1
  274. package/dist/esm/compliance/privacy/subject-export.shared.schemas.js.map +1 -1
  275. package/dist/esm/compliance/review-cadence.shared.schemas.d.ts +56 -0
  276. package/dist/esm/compliance/review-cadence.shared.schemas.d.ts.map +1 -0
  277. package/dist/esm/compliance/review-cadence.shared.schemas.js +71 -0
  278. package/dist/esm/compliance/review-cadence.shared.schemas.js.map +1 -0
  279. package/dist/esm/compliance/risk-posture.shared.schemas.d.ts +161 -0
  280. package/dist/esm/compliance/risk-posture.shared.schemas.d.ts.map +1 -0
  281. package/dist/esm/compliance/risk-posture.shared.schemas.js +166 -0
  282. package/dist/esm/compliance/risk-posture.shared.schemas.js.map +1 -0
  283. package/dist/esm/config/analytics-value-moments.shared.schemas.d.ts +4 -3
  284. package/dist/esm/config/analytics-value-moments.shared.schemas.d.ts.map +1 -1
  285. package/dist/esm/config/analytics-value-moments.shared.schemas.js +4 -3
  286. package/dist/esm/config/analytics-value-moments.shared.schemas.js.map +1 -1
  287. package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts +331 -10
  288. package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts.map +1 -1
  289. package/dist/esm/config/app-configuration-shared.shared.schemas.js +289 -9
  290. package/dist/esm/config/app-configuration-shared.shared.schemas.js.map +1 -1
  291. package/dist/esm/config/auth-config-resolution.shared.utils.d.ts +75 -3
  292. package/dist/esm/config/auth-config-resolution.shared.utils.d.ts.map +1 -1
  293. package/dist/esm/config/auth-config-resolution.shared.utils.js +93 -4
  294. package/dist/esm/config/auth-config-resolution.shared.utils.js.map +1 -1
  295. package/dist/esm/config/brand-assets.shared.schemas.d.ts +5 -4
  296. package/dist/esm/config/brand-assets.shared.schemas.d.ts.map +1 -1
  297. package/dist/esm/config/brand-assets.shared.schemas.js +14 -4
  298. package/dist/esm/config/brand-assets.shared.schemas.js.map +1 -1
  299. package/dist/esm/config/entity-identity-config.shared.schemas.d.ts +532 -19
  300. package/dist/esm/config/entity-identity-config.shared.schemas.d.ts.map +1 -1
  301. package/dist/esm/config/entity-identity-config.shared.schemas.js +628 -28
  302. package/dist/esm/config/entity-identity-config.shared.schemas.js.map +1 -1
  303. package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts +32 -32
  304. package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts.map +1 -1
  305. package/dist/esm/config/frontend/chart-registration-alignment.shared.d.ts.map +1 -1
  306. package/dist/esm/config/frontend/chart-registration-alignment.shared.js.map +1 -1
  307. package/dist/esm/config/frontend/navigation.shared.schemas.d.ts +180 -77
  308. package/dist/esm/config/frontend/navigation.shared.schemas.d.ts.map +1 -1
  309. package/dist/esm/config/frontend/navigation.shared.schemas.js +354 -104
  310. package/dist/esm/config/frontend/navigation.shared.schemas.js.map +1 -1
  311. package/dist/esm/config/frontend/onboarding.shared.schemas.d.ts +90 -133
  312. package/dist/esm/config/frontend/onboarding.shared.schemas.d.ts.map +1 -1
  313. package/dist/esm/config/frontend/onboarding.shared.schemas.js +148 -100
  314. package/dist/esm/config/frontend/onboarding.shared.schemas.js.map +1 -1
  315. package/dist/esm/config/registration-acquisition-policy.shared.utils.d.ts.map +1 -1
  316. package/dist/esm/config-authoring.entry.d.ts.map +1 -1
  317. package/dist/esm/crdt/crdt-merge.shared.utils.d.ts.map +1 -1
  318. package/dist/esm/data-seeding/data-seeding-config.shared.schemas.d.ts.map +1 -1
  319. package/dist/esm/errors/caught-error-description.shared.utils.d.ts +69 -0
  320. package/dist/esm/errors/caught-error-description.shared.utils.d.ts.map +1 -0
  321. package/dist/esm/errors/caught-error-description.shared.utils.js +77 -0
  322. package/dist/esm/errors/caught-error-description.shared.utils.js.map +1 -0
  323. package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts +212 -42
  324. package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts.map +1 -1
  325. package/dist/esm/errors/errors.custom-message-ref.shared.definitions.js +214 -41
  326. package/dist/esm/errors/errors.custom-message-ref.shared.definitions.js.map +1 -1
  327. package/dist/esm/errors/errors.shared.definitions.d.ts.map +1 -1
  328. package/dist/esm/errors/errors.shared.definitions.js +1 -1
  329. package/dist/esm/errors/errors.shared.definitions.js.map +1 -1
  330. package/dist/esm/errors/errors.shared.schemas.d.ts +49 -41
  331. package/dist/esm/errors/errors.shared.schemas.d.ts.map +1 -1
  332. package/dist/esm/errors/errors.shared.schemas.js +52 -62
  333. package/dist/esm/errors/errors.shared.schemas.js.map +1 -1
  334. package/dist/esm/errors/errors.shared.utils.d.ts.map +1 -1
  335. package/dist/esm/errors/thrown-value-description.shared.utils.d.ts +26 -0
  336. package/dist/esm/errors/thrown-value-description.shared.utils.d.ts.map +1 -0
  337. package/dist/esm/errors/thrown-value-description.shared.utils.js +66 -0
  338. package/dist/esm/errors/thrown-value-description.shared.utils.js.map +1 -0
  339. package/dist/esm/external-data/external-data-pipeline-description.shared.d.ts +70 -0
  340. package/dist/esm/external-data/external-data-pipeline-description.shared.d.ts.map +1 -0
  341. package/dist/esm/external-data/external-data-pipeline-description.shared.js +92 -0
  342. package/dist/esm/external-data/external-data-pipeline-description.shared.js.map +1 -0
  343. package/dist/esm/external-data/external-data-pipeline-pass-mode.shared.d.ts +154 -0
  344. package/dist/esm/external-data/external-data-pipeline-pass-mode.shared.d.ts.map +1 -0
  345. package/dist/esm/external-data/external-data-pipeline-pass-mode.shared.js +161 -0
  346. package/dist/esm/external-data/external-data-pipeline-pass-mode.shared.js.map +1 -0
  347. package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts +1118 -95
  348. package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts.map +1 -1
  349. package/dist/esm/external-data/external-data-pipeline.shared.schemas.js +1166 -24
  350. package/dist/esm/external-data/external-data-pipeline.shared.schemas.js.map +1 -1
  351. package/dist/esm/external-data/external-data-provenance.shared.d.ts +71 -0
  352. package/dist/esm/external-data/external-data-provenance.shared.d.ts.map +1 -0
  353. package/dist/esm/external-data/external-data-provenance.shared.js +88 -0
  354. package/dist/esm/external-data/external-data-provenance.shared.js.map +1 -0
  355. package/dist/esm/external-data.exports.d.ts +6 -0
  356. package/dist/esm/external-data.exports.d.ts.map +1 -1
  357. package/dist/esm/external-data.exports.js +12 -0
  358. package/dist/esm/external-data.exports.js.map +1 -1
  359. package/dist/esm/external-providers/compose-provider-registry.shared.d.ts.map +1 -1
  360. package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts +28 -14
  361. package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts.map +1 -1
  362. package/dist/esm/external-providers/engine-capabilities.shared.schemas.js +33 -16
  363. package/dist/esm/external-providers/engine-capabilities.shared.schemas.js.map +1 -1
  364. package/dist/esm/external-providers/engine-capability-resolution-mode.shared.d.ts +5 -3
  365. package/dist/esm/external-providers/engine-capability-resolution-mode.shared.d.ts.map +1 -1
  366. package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js +8 -3
  367. package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js.map +1 -1
  368. package/dist/esm/external-providers/engine-capability-surface.shared.d.ts +77 -0
  369. package/dist/esm/external-providers/engine-capability-surface.shared.d.ts.map +1 -0
  370. package/dist/esm/external-providers/engine-capability-surface.shared.js +175 -0
  371. package/dist/esm/external-providers/engine-capability-surface.shared.js.map +1 -0
  372. package/dist/esm/external-providers/external-providers.shared.schemas.d.ts +2 -0
  373. package/dist/esm/external-providers/external-providers.shared.schemas.d.ts.map +1 -1
  374. package/dist/esm/external-providers/external-providers.shared.schemas.js +21 -0
  375. package/dist/esm/external-providers/external-providers.shared.schemas.js.map +1 -1
  376. package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts +281 -10
  377. package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts.map +1 -1
  378. package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.d.ts +115 -0
  379. package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.d.ts.map +1 -1
  380. package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.js +149 -0
  381. package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.js.map +1 -1
  382. package/dist/esm/external-providers/frontend-capability-runtime.shared.types.d.ts +45 -0
  383. package/dist/esm/external-providers/frontend-capability-runtime.shared.types.d.ts.map +1 -1
  384. package/dist/esm/external-providers/frontend-capability-runtime.shared.types.js +14 -0
  385. package/dist/esm/external-providers/frontend-capability-runtime.shared.types.js.map +1 -1
  386. package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts +242 -7
  387. package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts.map +1 -1
  388. package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js +127 -3
  389. package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js.map +1 -1
  390. package/dist/esm/external-providers/frontend-provider-public-config.shared.d.ts +187 -36
  391. package/dist/esm/external-providers/frontend-provider-public-config.shared.d.ts.map +1 -1
  392. package/dist/esm/external-providers/frontend-provider-public-config.shared.js +261 -47
  393. package/dist/esm/external-providers/frontend-provider-public-config.shared.js.map +1 -1
  394. package/dist/esm/external-providers/model-cost-accounting-config.shared.schemas.d.ts +53 -0
  395. package/dist/esm/external-providers/model-cost-accounting-config.shared.schemas.d.ts.map +1 -0
  396. package/dist/esm/external-providers/model-cost-accounting-config.shared.schemas.js +41 -0
  397. package/dist/esm/external-providers/model-cost-accounting-config.shared.schemas.js.map +1 -0
  398. package/dist/esm/external-providers/provider-address-lookup-contract.shared.types.d.ts +150 -0
  399. package/dist/esm/external-providers/provider-address-lookup-contract.shared.types.d.ts.map +1 -0
  400. package/dist/esm/external-providers/provider-address-lookup-contract.shared.types.js +22 -0
  401. package/dist/esm/external-providers/provider-address-lookup-contract.shared.types.js.map +1 -0
  402. package/dist/esm/external-providers/provider-augmentation-opt-ins.shared.schemas.d.ts +42 -0
  403. package/dist/esm/external-providers/provider-augmentation-opt-ins.shared.schemas.d.ts.map +1 -0
  404. package/dist/esm/external-providers/provider-augmentation-opt-ins.shared.schemas.js +49 -0
  405. package/dist/esm/external-providers/provider-augmentation-opt-ins.shared.schemas.js.map +1 -0
  406. package/dist/esm/external-providers/provider-authentication-assurance.shared.schemas.d.ts +30 -0
  407. package/dist/esm/external-providers/provider-authentication-assurance.shared.schemas.d.ts.map +1 -0
  408. package/dist/esm/external-providers/provider-authentication-assurance.shared.schemas.js +32 -0
  409. package/dist/esm/external-providers/provider-authentication-assurance.shared.schemas.js.map +1 -0
  410. package/dist/esm/external-providers/provider-browser-operations.shared.schemas.d.ts +139 -0
  411. package/dist/esm/external-providers/provider-browser-operations.shared.schemas.d.ts.map +1 -0
  412. package/dist/esm/external-providers/provider-browser-operations.shared.schemas.js +141 -0
  413. package/dist/esm/external-providers/provider-browser-operations.shared.schemas.js.map +1 -0
  414. package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts +48 -13
  415. package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts.map +1 -1
  416. package/dist/esm/external-providers/provider-capability.shared.schemas.js +44 -10
  417. package/dist/esm/external-providers/provider-capability.shared.schemas.js.map +1 -1
  418. package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts +341 -4
  419. package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts.map +1 -1
  420. package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js +270 -20
  421. package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js.map +1 -1
  422. package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.d.ts +6 -2
  423. package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.d.ts.map +1 -1
  424. package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.js +6 -2
  425. package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.js.map +1 -1
  426. package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.d.ts +181 -6
  427. package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.d.ts.map +1 -1
  428. package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.js +132 -5
  429. package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.js.map +1 -1
  430. package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts +5 -2
  431. package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts.map +1 -1
  432. package/dist/esm/external-providers/provider-metadata.shared.schemas.js +5 -2
  433. package/dist/esm/external-providers/provider-metadata.shared.schemas.js.map +1 -1
  434. package/dist/esm/external-providers/provider-package-allow-list.shared.schemas.d.ts +42 -0
  435. package/dist/esm/external-providers/provider-package-allow-list.shared.schemas.d.ts.map +1 -0
  436. package/dist/esm/external-providers/provider-package-allow-list.shared.schemas.js +57 -0
  437. package/dist/esm/external-providers/provider-package-allow-list.shared.schemas.js.map +1 -0
  438. package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts +6 -0
  439. package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts.map +1 -1
  440. package/dist/esm/external-providers/provider-protocol.shared.schemas.js +6 -0
  441. package/dist/esm/external-providers/provider-protocol.shared.schemas.js.map +1 -1
  442. package/dist/esm/external-providers/provider-scope-reauthorization.shared.schemas.d.ts +58 -0
  443. package/dist/esm/external-providers/provider-scope-reauthorization.shared.schemas.d.ts.map +1 -0
  444. package/dist/esm/external-providers/provider-scope-reauthorization.shared.schemas.js +35 -0
  445. package/dist/esm/external-providers/provider-scope-reauthorization.shared.schemas.js.map +1 -0
  446. package/dist/esm/external-providers/provider-shared-connections.shared.schemas.d.ts +115 -0
  447. package/dist/esm/external-providers/provider-shared-connections.shared.schemas.d.ts.map +1 -0
  448. package/dist/esm/external-providers/provider-shared-connections.shared.schemas.js +137 -0
  449. package/dist/esm/external-providers/provider-shared-connections.shared.schemas.js.map +1 -0
  450. package/dist/esm/external-providers/provider-tier-rule.shared.utils.d.ts.map +1 -1
  451. package/dist/esm/external-providers/provider-tier-rule.shared.utils.js.map +1 -1
  452. package/dist/esm/external-providers/provider-usage-cost.shared.d.ts +73 -0
  453. package/dist/esm/external-providers/provider-usage-cost.shared.d.ts.map +1 -0
  454. package/dist/esm/external-providers/provider-usage-cost.shared.js +171 -0
  455. package/dist/esm/external-providers/provider-usage-cost.shared.js.map +1 -0
  456. package/dist/esm/external-providers/provider-usage-pricing.example.d.ts +12 -0
  457. package/dist/esm/external-providers/provider-usage-pricing.example.d.ts.map +1 -0
  458. package/dist/esm/external-providers/provider-usage-pricing.example.js +40 -0
  459. package/dist/esm/external-providers/provider-usage-pricing.example.js.map +1 -0
  460. package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.d.ts +68 -32
  461. package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.d.ts.map +1 -1
  462. package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.js +63 -52
  463. package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.js.map +1 -1
  464. package/dist/esm/features/application-features.shared.resources-config.schemas.d.ts +7 -5
  465. package/dist/esm/features/application-features.shared.resources-config.schemas.d.ts.map +1 -1
  466. package/dist/esm/features/application-features.shared.resources-config.schemas.js +43 -8
  467. package/dist/esm/features/application-features.shared.resources-config.schemas.js.map +1 -1
  468. package/dist/esm/features/connected-feature.example.d.ts +64 -0
  469. package/dist/esm/features/connected-feature.example.d.ts.map +1 -0
  470. package/dist/esm/features/connected-feature.example.js +87 -0
  471. package/dist/esm/features/connected-feature.example.js.map +1 -0
  472. package/dist/esm/features/core-feature-definitions.shared.d.ts.map +1 -1
  473. package/dist/esm/features/core-feature-definitions.shared.js +2 -1
  474. package/dist/esm/features/core-feature-definitions.shared.js.map +1 -1
  475. package/dist/esm/features/feature-builders.shared.d.ts.map +1 -1
  476. package/dist/esm/features/feature-builders.shared.js.map +1 -1
  477. package/dist/esm/features/feature-definition.shared.schemas.d.ts +2 -11
  478. package/dist/esm/features/feature-definition.shared.schemas.d.ts.map +1 -1
  479. package/dist/esm/features/feature-definition.shared.schemas.js +0 -12
  480. package/dist/esm/features/feature-definition.shared.schemas.js.map +1 -1
  481. package/dist/esm/features/feature-registry.shared.d.ts.map +1 -1
  482. package/dist/esm/features/feature-resolution.shared.schemas.d.ts.map +1 -1
  483. package/dist/esm/features/scope-features.shared.schemas.d.ts +74 -7
  484. package/dist/esm/features/scope-features.shared.schemas.d.ts.map +1 -1
  485. package/dist/esm/features/scope-features.shared.schemas.js +64 -5
  486. package/dist/esm/features/scope-features.shared.schemas.js.map +1 -1
  487. package/dist/esm/features/user-features.shared.resources-config.schemas.d.ts +6 -6
  488. package/dist/esm/features/user-features.shared.resources-config.schemas.d.ts.map +1 -1
  489. package/dist/esm/features/user-features.shared.resources-config.schemas.js +34 -52
  490. package/dist/esm/features/user-features.shared.resources-config.schemas.js.map +1 -1
  491. package/dist/esm/files/file-remote-reference-link.shared.schemas.d.ts.map +1 -1
  492. package/dist/esm/files/file-remote-reference-link.shared.schemas.js.map +1 -1
  493. package/dist/esm/files/file-upload-grant.shared.schemas.d.ts.map +1 -1
  494. package/dist/esm/files/file-upload-grant.shared.schemas.js.map +1 -1
  495. package/dist/esm/files/files.shared.resources-config.schemas.d.ts +3 -3
  496. package/dist/esm/files/files.shared.resources-config.schemas.d.ts.map +1 -1
  497. package/dist/esm/files/files.shared.resources-config.schemas.js +3 -3
  498. package/dist/esm/files/files.shared.resources-config.schemas.js.map +1 -1
  499. package/dist/esm/files/files.shared.schemas.d.ts.map +1 -1
  500. package/dist/esm/files/files.shared.schemas.js.map +1 -1
  501. package/dist/esm/files/files.shared.utils.d.ts.map +1 -1
  502. package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.d.ts.map +1 -1
  503. package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.d.ts.map +1 -1
  504. package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.d.ts.map +1 -1
  505. package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.d.ts.map +1 -1
  506. package/dist/esm/flows-actors/actors.shared.schemas.d.ts +279 -140
  507. package/dist/esm/flows-actors/actors.shared.schemas.d.ts.map +1 -1
  508. package/dist/esm/flows-actors/actors.shared.schemas.js +130 -2
  509. package/dist/esm/flows-actors/actors.shared.schemas.js.map +1 -1
  510. package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts +22 -0
  511. package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts.map +1 -1
  512. package/dist/esm/flows-actors/agent-traceability.shared.schemas.js +7 -0
  513. package/dist/esm/flows-actors/agent-traceability.shared.schemas.js.map +1 -1
  514. package/dist/esm/flows-actors/agent-work-decisions.shared.resources-config.schemas.d.ts +68 -0
  515. package/dist/esm/flows-actors/agent-work-decisions.shared.resources-config.schemas.d.ts.map +1 -0
  516. package/dist/esm/flows-actors/agent-work-decisions.shared.resources-config.schemas.js +276 -0
  517. package/dist/esm/flows-actors/agent-work-decisions.shared.resources-config.schemas.js.map +1 -0
  518. package/dist/esm/flows-actors/agent-work-decisions.shared.schemas.d.ts +468 -0
  519. package/dist/esm/flows-actors/agent-work-decisions.shared.schemas.d.ts.map +1 -0
  520. package/dist/esm/flows-actors/agent-work-decisions.shared.schemas.js +472 -0
  521. package/dist/esm/flows-actors/agent-work-decisions.shared.schemas.js.map +1 -0
  522. package/dist/esm/flows-actors/agents.shared.schemas.d.ts +3 -3
  523. package/dist/esm/flows-actors/agents.shared.schemas.d.ts.map +1 -1
  524. package/dist/esm/flows-actors/agents.shared.schemas.js +11 -5
  525. package/dist/esm/flows-actors/agents.shared.schemas.js.map +1 -1
  526. package/dist/esm/flows-actors/autonomous-agents.shared.schemas.d.ts +118 -0
  527. package/dist/esm/flows-actors/autonomous-agents.shared.schemas.d.ts.map +1 -0
  528. package/dist/esm/flows-actors/autonomous-agents.shared.schemas.js +144 -0
  529. package/dist/esm/flows-actors/autonomous-agents.shared.schemas.js.map +1 -0
  530. package/dist/esm/flows-actors/deliberation.shared.schemas.d.ts +13 -0
  531. package/dist/esm/flows-actors/deliberation.shared.schemas.d.ts.map +1 -1
  532. package/dist/esm/flows-actors/deliberation.shared.schemas.js.map +1 -1
  533. package/dist/esm/flows-actors/execution-plan-readiness.shared.utils.d.ts +45 -0
  534. package/dist/esm/flows-actors/execution-plan-readiness.shared.utils.d.ts.map +1 -0
  535. package/dist/esm/flows-actors/execution-plan-readiness.shared.utils.js +51 -0
  536. package/dist/esm/flows-actors/execution-plan-readiness.shared.utils.js.map +1 -0
  537. package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.d.ts.map +1 -1
  538. package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts +173 -8
  539. package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts.map +1 -1
  540. package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js +269 -13
  541. package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js.map +1 -1
  542. package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.d.ts.map +1 -1
  543. package/dist/esm/flows-actors/flows-actors-task.shared.schemas.d.ts +2 -2
  544. package/dist/esm/flows-actors/flows-actors-task.shared.schemas.d.ts.map +1 -1
  545. package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts +51 -8
  546. package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts.map +1 -1
  547. package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.js +51 -11
  548. package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.js.map +1 -1
  549. package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.d.ts +0 -200
  550. package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.d.ts.map +1 -1
  551. package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.js +25 -54
  552. package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.js.map +1 -1
  553. package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.d.ts +45 -9
  554. package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.d.ts.map +1 -1
  555. package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.js +31 -6
  556. package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.js.map +1 -1
  557. package/dist/esm/flows-actors/flows-actors.io.shared.schemas.d.ts.map +1 -1
  558. package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js +30 -30
  559. package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js.map +1 -1
  560. package/dist/esm/flows-actors/flows-actors.system.shared.definitions.d.ts.map +1 -1
  561. package/dist/esm/flows-actors/flows-actors.system.shared.schemas.d.ts +16 -74
  562. package/dist/esm/flows-actors/flows-actors.system.shared.schemas.d.ts.map +1 -1
  563. package/dist/esm/flows-actors/flows-actors.system.shared.schemas.js +1 -2
  564. package/dist/esm/flows-actors/flows-actors.system.shared.schemas.js.map +1 -1
  565. package/dist/esm/flows-actors/flows.shared.schemas.d.ts +15 -1
  566. package/dist/esm/flows-actors/flows.shared.schemas.d.ts.map +1 -1
  567. package/dist/esm/flows-actors/flows.shared.schemas.js.map +1 -1
  568. package/dist/esm/flows-actors/human-decision.shared.schemas.d.ts +627 -0
  569. package/dist/esm/flows-actors/human-decision.shared.schemas.d.ts.map +1 -0
  570. package/dist/esm/flows-actors/human-decision.shared.schemas.js +754 -0
  571. package/dist/esm/flows-actors/human-decision.shared.schemas.js.map +1 -0
  572. package/dist/esm/flows-actors/mcp-servers.shared.schemas.d.ts.map +1 -1
  573. package/dist/esm/flows-actors/mcp-servers.shared.schemas.js +4 -2
  574. package/dist/esm/flows-actors/mcp-servers.shared.schemas.js.map +1 -1
  575. package/dist/esm/flows-actors/model-call-attributions.shared.resources-config.schemas.d.ts +46 -0
  576. package/dist/esm/flows-actors/model-call-attributions.shared.resources-config.schemas.d.ts.map +1 -0
  577. package/dist/esm/flows-actors/model-call-attributions.shared.resources-config.schemas.js +65 -0
  578. package/dist/esm/flows-actors/model-call-attributions.shared.resources-config.schemas.js.map +1 -0
  579. package/dist/esm/flows-actors/model-call-attributions.shared.schemas.d.ts +120 -0
  580. package/dist/esm/flows-actors/model-call-attributions.shared.schemas.d.ts.map +1 -0
  581. package/dist/esm/flows-actors/model-call-attributions.shared.schemas.js +165 -0
  582. package/dist/esm/flows-actors/model-call-attributions.shared.schemas.js.map +1 -0
  583. package/dist/esm/flows-actors/model-cost-period-aggregates.shared.resources-config.schemas.d.ts +45 -0
  584. package/dist/esm/flows-actors/model-cost-period-aggregates.shared.resources-config.schemas.d.ts.map +1 -0
  585. package/dist/esm/flows-actors/model-cost-period-aggregates.shared.resources-config.schemas.js +127 -0
  586. package/dist/esm/flows-actors/model-cost-period-aggregates.shared.resources-config.schemas.js.map +1 -0
  587. package/dist/esm/flows-actors/model-cost-period-aggregates.shared.schemas.d.ts +83 -0
  588. package/dist/esm/flows-actors/model-cost-period-aggregates.shared.schemas.d.ts.map +1 -0
  589. package/dist/esm/flows-actors/model-cost-period-aggregates.shared.schemas.js +97 -0
  590. package/dist/esm/flows-actors/model-cost-period-aggregates.shared.schemas.js.map +1 -0
  591. package/dist/esm/flows-actors/model-cost-summary.shared.schemas.d.ts +136 -0
  592. package/dist/esm/flows-actors/model-cost-summary.shared.schemas.d.ts.map +1 -0
  593. package/dist/esm/flows-actors/model-cost-summary.shared.schemas.js +90 -0
  594. package/dist/esm/flows-actors/model-cost-summary.shared.schemas.js.map +1 -0
  595. package/dist/esm/flows-actors/prompt-ir.shared.schemas.d.ts.map +1 -1
  596. package/dist/esm/flows-actors/provider-call-records.shared.resources-config.schemas.d.ts +28 -0
  597. package/dist/esm/flows-actors/provider-call-records.shared.resources-config.schemas.d.ts.map +1 -0
  598. package/dist/esm/flows-actors/provider-call-records.shared.resources-config.schemas.js +95 -0
  599. package/dist/esm/flows-actors/provider-call-records.shared.resources-config.schemas.js.map +1 -0
  600. package/dist/esm/flows-actors/provider-call-records.shared.schemas.d.ts +121 -0
  601. package/dist/esm/flows-actors/provider-call-records.shared.schemas.d.ts.map +1 -0
  602. package/dist/esm/flows-actors/provider-call-records.shared.schemas.js +194 -0
  603. package/dist/esm/flows-actors/provider-call-records.shared.schemas.js.map +1 -0
  604. package/dist/esm/flows-actors/review-deadlines.shared.schemas.d.ts +268 -0
  605. package/dist/esm/flows-actors/review-deadlines.shared.schemas.d.ts.map +1 -0
  606. package/dist/esm/flows-actors/review-deadlines.shared.schemas.js +576 -0
  607. package/dist/esm/flows-actors/review-deadlines.shared.schemas.js.map +1 -0
  608. package/dist/esm/flows-actors/tasks.actors.shared.schemas.d.ts +88 -81
  609. package/dist/esm/flows-actors/tasks.actors.shared.schemas.d.ts.map +1 -1
  610. package/dist/esm/flows-actors/tasks.actors.shared.schemas.js +75 -38
  611. package/dist/esm/flows-actors/tasks.actors.shared.schemas.js.map +1 -1
  612. package/dist/esm/flows-actors/work-attribution.shared.schemas.d.ts +129 -0
  613. package/dist/esm/flows-actors/work-attribution.shared.schemas.d.ts.map +1 -0
  614. package/dist/esm/flows-actors/work-attribution.shared.schemas.js +141 -0
  615. package/dist/esm/flows-actors/work-attribution.shared.schemas.js.map +1 -0
  616. package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.d.ts +22 -1
  617. package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.d.ts.map +1 -1
  618. package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.js +23 -0
  619. package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.js.map +1 -1
  620. package/dist/esm/frontend-definitions/settings-destination-ref.definitions.d.ts +167 -1
  621. package/dist/esm/frontend-definitions/settings-destination-ref.definitions.d.ts.map +1 -1
  622. package/dist/esm/frontend-definitions/settings-destination-ref.definitions.js +178 -0
  623. package/dist/esm/frontend-definitions/settings-destination-ref.definitions.js.map +1 -1
  624. package/dist/esm/guidance/guidance-flow.shared.schemas.d.ts +106 -24
  625. package/dist/esm/guidance/guidance-flow.shared.schemas.d.ts.map +1 -1
  626. package/dist/esm/guidance/guidance-flow.shared.schemas.js +152 -14
  627. package/dist/esm/guidance/guidance-flow.shared.schemas.js.map +1 -1
  628. package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.d.ts.map +1 -1
  629. package/dist/esm/guidance/guidance-state.shared.schemas.d.ts.map +1 -1
  630. package/dist/esm/guidance/guidance-state.shared.schemas.js +11 -10
  631. package/dist/esm/guidance/guidance-state.shared.schemas.js.map +1 -1
  632. package/dist/esm/guidance/guidance-state.shared.utils.d.ts.map +1 -1
  633. package/dist/esm/guidance/guidance-state.shared.utils.js.map +1 -1
  634. package/dist/esm/guidance/lifecycle-config.shared.schemas.d.ts.map +1 -1
  635. package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.d.ts.map +1 -1
  636. package/dist/esm/guidance/lifecycle-state.shared.schemas.d.ts +0 -6
  637. package/dist/esm/guidance/lifecycle-state.shared.schemas.d.ts.map +1 -1
  638. package/dist/esm/guidance/lifecycle-state.shared.schemas.js +6 -25
  639. package/dist/esm/guidance/lifecycle-state.shared.schemas.js.map +1 -1
  640. package/dist/esm/guidance/milestone-builders.shared.d.ts +4 -2
  641. package/dist/esm/guidance/milestone-builders.shared.d.ts.map +1 -1
  642. package/dist/esm/guidance/milestone-builders.shared.js +4 -2
  643. package/dist/esm/guidance/milestone-builders.shared.js.map +1 -1
  644. package/dist/esm/guidance/milestone-definition.shared.schemas.d.ts +66 -4
  645. package/dist/esm/guidance/milestone-definition.shared.schemas.d.ts.map +1 -1
  646. package/dist/esm/guidance/milestone-definition.shared.schemas.js +50 -0
  647. package/dist/esm/guidance/milestone-definition.shared.schemas.js.map +1 -1
  648. package/dist/esm/guidance/progression-presentation.shared.schemas.d.ts +71 -0
  649. package/dist/esm/guidance/progression-presentation.shared.schemas.d.ts.map +1 -0
  650. package/dist/esm/guidance/progression-presentation.shared.schemas.js +72 -0
  651. package/dist/esm/guidance/progression-presentation.shared.schemas.js.map +1 -0
  652. package/dist/esm/guidance/progression-state.shared.resources-config.schemas.d.ts +2 -0
  653. package/dist/esm/guidance/progression-state.shared.resources-config.schemas.d.ts.map +1 -1
  654. package/dist/esm/guidance/progression-state.shared.schemas.d.ts +4 -0
  655. package/dist/esm/guidance/progression-state.shared.schemas.d.ts.map +1 -1
  656. package/dist/esm/guidance/progression-state.shared.schemas.js +12 -6
  657. package/dist/esm/guidance/progression-state.shared.schemas.js.map +1 -1
  658. package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.d.ts.map +1 -1
  659. package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.js +2 -1
  660. package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.js.map +1 -1
  661. package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts +730 -441
  662. package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts.map +1 -1
  663. package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js +747 -233
  664. package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js.map +1 -1
  665. package/dist/esm/http-api-binding/http-api-erasure-stance.shared.d.ts +62 -0
  666. package/dist/esm/http-api-binding/http-api-erasure-stance.shared.d.ts.map +1 -0
  667. package/dist/esm/http-api-binding/http-api-erasure-stance.shared.js +66 -0
  668. package/dist/esm/http-api-binding/http-api-erasure-stance.shared.js.map +1 -0
  669. package/dist/esm/http-api-binding/http-api-rest-write-operations.shared.schemas.d.ts +133 -0
  670. package/dist/esm/http-api-binding/http-api-rest-write-operations.shared.schemas.d.ts.map +1 -0
  671. package/dist/esm/http-api-binding/http-api-rest-write-operations.shared.schemas.js +191 -0
  672. package/dist/esm/http-api-binding/http-api-rest-write-operations.shared.schemas.js.map +1 -0
  673. package/dist/esm/http-api-binding/http-api-transport-dialect.shared.d.ts +138 -0
  674. package/dist/esm/http-api-binding/http-api-transport-dialect.shared.d.ts.map +1 -0
  675. package/dist/esm/http-api-binding/http-api-transport-dialect.shared.js +139 -0
  676. package/dist/esm/http-api-binding/http-api-transport-dialect.shared.js.map +1 -0
  677. package/dist/esm/http-api-binding/read-through-engine-anchors.shared.d.ts +38 -0
  678. package/dist/esm/http-api-binding/read-through-engine-anchors.shared.d.ts.map +1 -0
  679. package/dist/esm/http-api-binding/read-through-engine-anchors.shared.js +42 -0
  680. package/dist/esm/http-api-binding/read-through-engine-anchors.shared.js.map +1 -0
  681. package/dist/esm/i18n/application-config-vocabulary.shared.d.ts +36 -0
  682. package/dist/esm/i18n/application-config-vocabulary.shared.d.ts.map +1 -0
  683. package/dist/esm/i18n/application-config-vocabulary.shared.js +39 -0
  684. package/dist/esm/i18n/application-config-vocabulary.shared.js.map +1 -0
  685. package/dist/esm/i18n/engine-open-vocabulary-values.shared.d.ts +11 -0
  686. package/dist/esm/i18n/engine-open-vocabulary-values.shared.d.ts.map +1 -0
  687. package/dist/esm/i18n/engine-open-vocabulary-values.shared.js +14 -0
  688. package/dist/esm/i18n/engine-open-vocabulary-values.shared.js.map +1 -0
  689. package/dist/esm/i18n/engine-open-vocabulary.shared.d.ts +20 -0
  690. package/dist/esm/i18n/engine-open-vocabulary.shared.d.ts.map +1 -0
  691. package/dist/esm/i18n/engine-open-vocabulary.shared.js +21 -0
  692. package/dist/esm/i18n/engine-open-vocabulary.shared.js.map +1 -0
  693. package/dist/esm/i18n/labelling.dto.shared.schemas.d.ts.map +1 -1
  694. package/dist/esm/inbound/conversation-threads.shared.resources-config.schemas.d.ts +94 -0
  695. package/dist/esm/inbound/conversation-threads.shared.resources-config.schemas.d.ts.map +1 -0
  696. package/dist/esm/inbound/conversation-threads.shared.resources-config.schemas.js +206 -0
  697. package/dist/esm/inbound/conversation-threads.shared.resources-config.schemas.js.map +1 -0
  698. package/dist/esm/inbound/conversation-threads.shared.schemas.d.ts +169 -0
  699. package/dist/esm/inbound/conversation-threads.shared.schemas.d.ts.map +1 -0
  700. package/dist/esm/inbound/conversation-threads.shared.schemas.js +231 -0
  701. package/dist/esm/inbound/conversation-threads.shared.schemas.js.map +1 -0
  702. package/dist/esm/inbound/inbound-channels.shared.schemas.d.ts +195 -0
  703. package/dist/esm/inbound/inbound-channels.shared.schemas.d.ts.map +1 -0
  704. package/dist/esm/inbound/inbound-channels.shared.schemas.js +244 -0
  705. package/dist/esm/inbound/inbound-channels.shared.schemas.js.map +1 -0
  706. package/dist/esm/inbound/inbound-delivery.shared.resources-config.schemas.d.ts +36 -0
  707. package/dist/esm/inbound/inbound-delivery.shared.resources-config.schemas.d.ts.map +1 -0
  708. package/dist/esm/inbound/inbound-delivery.shared.resources-config.schemas.js +169 -0
  709. package/dist/esm/inbound/inbound-delivery.shared.resources-config.schemas.js.map +1 -0
  710. package/dist/esm/inbound/inbound-delivery.shared.schemas.d.ts +404 -0
  711. package/dist/esm/inbound/inbound-delivery.shared.schemas.d.ts.map +1 -0
  712. package/dist/esm/inbound/inbound-delivery.shared.schemas.js +449 -0
  713. package/dist/esm/inbound/inbound-delivery.shared.schemas.js.map +1 -0
  714. package/dist/esm/inbound/inbound-endpoint-env.shared.d.ts +46 -0
  715. package/dist/esm/inbound/inbound-endpoint-env.shared.d.ts.map +1 -0
  716. package/dist/esm/inbound/inbound-endpoint-env.shared.js +57 -0
  717. package/dist/esm/inbound/inbound-endpoint-env.shared.js.map +1 -0
  718. package/dist/esm/index.d.ts +99 -5
  719. package/dist/esm/index.d.ts.map +1 -1
  720. package/dist/esm/index.js +138 -17
  721. package/dist/esm/index.js.map +1 -1
  722. package/dist/esm/meta-workflows/actions.meta-workflows.shared.schemas.d.ts.map +1 -0
  723. package/dist/esm/meta-workflows/actions.meta-workflows.shared.schemas.js.map +1 -0
  724. package/dist/esm/meta-workflows/catalog.meta-workflows.shared.schemas.d.ts.map +1 -0
  725. package/dist/esm/meta-workflows/catalog.meta-workflows.shared.schemas.js.map +1 -0
  726. package/dist/esm/meta-workflows/coding-tasks.meta-workflows.shared.schemas.d.ts +130 -0
  727. package/dist/esm/meta-workflows/coding-tasks.meta-workflows.shared.schemas.d.ts.map +1 -0
  728. package/dist/esm/meta-workflows/coding-tasks.meta-workflows.shared.schemas.js +104 -0
  729. package/dist/esm/meta-workflows/coding-tasks.meta-workflows.shared.schemas.js.map +1 -0
  730. package/dist/esm/meta-workflows/context-selection.meta-workflows.shared.schemas.d.ts.map +1 -0
  731. package/dist/esm/meta-workflows/context-selection.meta-workflows.shared.schemas.js.map +1 -0
  732. package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/decisions.meta-workflows.shared.schemas.d.ts +92 -0
  733. package/dist/esm/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts.map +1 -0
  734. package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/decisions.meta-workflows.shared.schemas.js +76 -0
  735. package/dist/esm/meta-workflows/decisions.meta-workflows.shared.schemas.js.map +1 -0
  736. package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.d.ts +638 -0
  737. package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.d.ts.map +1 -0
  738. package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.js +759 -0
  739. package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.js.map +1 -0
  740. package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/portable-primitives.meta-workflows.shared.schemas.d.ts +15 -8
  741. package/dist/esm/meta-workflows/portable-primitives.meta-workflows.shared.schemas.d.ts.map +1 -0
  742. package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/portable-primitives.meta-workflows.shared.schemas.js +15 -8
  743. package/dist/esm/meta-workflows/portable-primitives.meta-workflows.shared.schemas.js.map +1 -0
  744. package/dist/esm/meta-workflows.exports.d.ts +21 -26
  745. package/dist/esm/meta-workflows.exports.d.ts.map +1 -1
  746. package/dist/esm/meta-workflows.exports.js +21 -26
  747. package/dist/esm/meta-workflows.exports.js.map +1 -1
  748. package/dist/esm/monitoring/monitoring.shared.schemas.d.ts.map +1 -1
  749. package/dist/esm/notifications/email/email-context.shared.schemas.d.ts.map +1 -1
  750. package/dist/esm/notifications/email/email-submission.shared.enums.d.ts +16 -0
  751. package/dist/esm/notifications/email/email-submission.shared.enums.d.ts.map +1 -0
  752. package/dist/esm/notifications/email/email-submission.shared.enums.js +17 -0
  753. package/dist/esm/notifications/email/email-submission.shared.enums.js.map +1 -0
  754. package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts +43 -1
  755. package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts.map +1 -1
  756. package/dist/esm/notifications/email/email-template-registry.shared.schemas.js +85 -3
  757. package/dist/esm/notifications/email/email-template-registry.shared.schemas.js.map +1 -1
  758. package/dist/esm/notifications/email/email-template.shared.enums.d.ts.map +1 -1
  759. package/dist/esm/notifications/email/email-template.shared.enums.js.map +1 -1
  760. package/dist/esm/notifications/inbound-email/inbound-email.shared.resources-config.schemas.d.ts +131 -0
  761. package/dist/esm/notifications/inbound-email/inbound-email.shared.resources-config.schemas.d.ts.map +1 -0
  762. package/dist/esm/notifications/inbound-email/inbound-email.shared.resources-config.schemas.js +258 -0
  763. package/dist/esm/notifications/inbound-email/inbound-email.shared.resources-config.schemas.js.map +1 -0
  764. package/dist/esm/notifications/inbound-email/inbound-email.shared.schemas.d.ts +448 -0
  765. package/dist/esm/notifications/inbound-email/inbound-email.shared.schemas.d.ts.map +1 -0
  766. package/dist/esm/notifications/inbound-email/inbound-email.shared.schemas.js +530 -0
  767. package/dist/esm/notifications/inbound-email/inbound-email.shared.schemas.js.map +1 -0
  768. package/dist/esm/notifications/m2m/m2m-webhook-delivery-contract.shared.d.ts.map +1 -1
  769. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.d.ts.map +1 -1
  770. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.js +8 -4
  771. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.js.map +1 -1
  772. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.d.ts +2 -1
  773. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.d.ts.map +1 -1
  774. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.js +3 -2
  775. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.js.map +1 -1
  776. package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts +16 -1
  777. package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts.map +1 -1
  778. package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js +86 -15
  779. package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js.map +1 -1
  780. package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts +19 -12
  781. package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts.map +1 -1
  782. package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js +77 -12
  783. package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js.map +1 -1
  784. package/dist/esm/notifications/notification-badges.core.definitions.d.ts.map +1 -1
  785. package/dist/esm/notifications/notification-badges.core.definitions.js.map +1 -1
  786. package/dist/esm/notifications/notification-badges.schemas.d.ts +35 -3
  787. package/dist/esm/notifications/notification-badges.schemas.d.ts.map +1 -1
  788. package/dist/esm/notifications/notification-badges.schemas.js +43 -3
  789. package/dist/esm/notifications/notification-badges.schemas.js.map +1 -1
  790. package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.d.ts +1 -1
  791. package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.d.ts.map +1 -1
  792. package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.js +12 -33
  793. package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.js.map +1 -1
  794. package/dist/esm/notifications/notifications.shared.schemas.d.ts +85 -407
  795. package/dist/esm/notifications/notifications.shared.schemas.d.ts.map +1 -1
  796. package/dist/esm/notifications/notifications.shared.schemas.js +130 -66
  797. package/dist/esm/notifications/notifications.shared.schemas.js.map +1 -1
  798. package/dist/esm/organizations/application-owner-organization.shared.schemas.d.ts +145 -0
  799. package/dist/esm/organizations/application-owner-organization.shared.schemas.d.ts.map +1 -0
  800. package/dist/esm/organizations/application-owner-organization.shared.schemas.js +146 -0
  801. package/dist/esm/organizations/application-owner-organization.shared.schemas.js.map +1 -0
  802. package/dist/esm/organizations/organization-features.shared.resources-config.schemas.d.ts +7 -5
  803. package/dist/esm/organizations/organization-features.shared.resources-config.schemas.d.ts.map +1 -1
  804. package/dist/esm/organizations/organization-features.shared.resources-config.schemas.js +32 -9
  805. package/dist/esm/organizations/organization-features.shared.resources-config.schemas.js.map +1 -1
  806. package/dist/esm/organizations/organization-members.shared.resources-config.schemas.d.ts +4 -1
  807. package/dist/esm/organizations/organization-members.shared.resources-config.schemas.d.ts.map +1 -1
  808. package/dist/esm/organizations/organization-members.shared.resources-config.schemas.js +78 -28
  809. package/dist/esm/organizations/organization-members.shared.resources-config.schemas.js.map +1 -1
  810. package/dist/esm/organizations/organization-members.shared.schemas.d.ts +4 -1
  811. package/dist/esm/organizations/organization-members.shared.schemas.d.ts.map +1 -1
  812. package/dist/esm/organizations/organization-members.shared.schemas.js +39 -1
  813. package/dist/esm/organizations/organization-members.shared.schemas.js.map +1 -1
  814. package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.d.ts.map +1 -1
  815. package/dist/esm/organizations/organization-notifications.shared.schemas.d.ts.map +1 -1
  816. package/dist/esm/organizations/organization-notifications.shared.schemas.js +9 -9
  817. package/dist/esm/organizations/organization-notifications.shared.schemas.js.map +1 -1
  818. package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.d.ts.map +1 -1
  819. package/dist/esm/organizations/organization-preferences.shared.schemas.d.ts +2 -1
  820. package/dist/esm/organizations/organization-preferences.shared.schemas.d.ts.map +1 -1
  821. package/dist/esm/organizations/organization-preferences.shared.schemas.js +7 -4
  822. package/dist/esm/organizations/organization-preferences.shared.schemas.js.map +1 -1
  823. package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.d.ts +0 -1
  824. package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.d.ts.map +1 -1
  825. package/dist/esm/organizations/organization-profile.shared.schemas.d.ts +8 -6
  826. package/dist/esm/organizations/organization-profile.shared.schemas.d.ts.map +1 -1
  827. package/dist/esm/organizations/organization-profile.shared.schemas.js +19 -12
  828. package/dist/esm/organizations/organization-profile.shared.schemas.js.map +1 -1
  829. package/dist/esm/organizations/organization-unit-inheritance.shared.d.ts.map +1 -1
  830. package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.d.ts.map +1 -1
  831. package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.js +1 -1
  832. package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.js.map +1 -1
  833. package/dist/esm/organizations/organization-unit-members.shared.schemas.d.ts.map +1 -1
  834. package/dist/esm/organizations/organization-unit-members.shared.schemas.js +2 -1
  835. package/dist/esm/organizations/organization-unit-members.shared.schemas.js.map +1 -1
  836. package/dist/esm/organizations/organization-unit-narrowing-decision.shared.d.ts +63 -1
  837. package/dist/esm/organizations/organization-unit-narrowing-decision.shared.d.ts.map +1 -1
  838. package/dist/esm/organizations/organization-unit-narrowing-decision.shared.js +106 -5
  839. package/dist/esm/organizations/organization-unit-narrowing-decision.shared.js.map +1 -1
  840. package/dist/esm/organizations/organization-unit-narrowing.example.d.ts.map +1 -1
  841. package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts +29 -2
  842. package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts.map +1 -1
  843. package/dist/esm/organizations/organization-unit-narrowing.shared.js +36 -0
  844. package/dist/esm/organizations/organization-unit-narrowing.shared.js.map +1 -1
  845. package/dist/esm/organizations/organization-units.shared.resources-config.schemas.d.ts +2 -0
  846. package/dist/esm/organizations/organization-units.shared.resources-config.schemas.d.ts.map +1 -1
  847. package/dist/esm/organizations/organization-units.shared.resources-config.schemas.js +10 -2
  848. package/dist/esm/organizations/organization-units.shared.resources-config.schemas.js.map +1 -1
  849. package/dist/esm/organizations/organization-units.shared.schemas.d.ts +17 -5
  850. package/dist/esm/organizations/organization-units.shared.schemas.d.ts.map +1 -1
  851. package/dist/esm/organizations/organization-units.shared.schemas.js +65 -5
  852. package/dist/esm/organizations/organization-units.shared.schemas.js.map +1 -1
  853. package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts +53 -7
  854. package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts.map +1 -1
  855. package/dist/esm/organizations/organizations.shared.resources-config.schemas.js +162 -14
  856. package/dist/esm/organizations/organizations.shared.resources-config.schemas.js.map +1 -1
  857. package/dist/esm/organizations/organizations.shared.schemas.d.ts +23 -83
  858. package/dist/esm/organizations/organizations.shared.schemas.d.ts.map +1 -1
  859. package/dist/esm/organizations/organizations.shared.schemas.js +87 -19
  860. package/dist/esm/organizations/organizations.shared.schemas.js.map +1 -1
  861. package/dist/esm/organizations/service-provider-activity-feed.shared.resources-config.schemas.d.ts +58 -0
  862. package/dist/esm/organizations/service-provider-activity-feed.shared.resources-config.schemas.d.ts.map +1 -0
  863. package/dist/esm/organizations/service-provider-activity-feed.shared.resources-config.schemas.js +188 -0
  864. package/dist/esm/organizations/service-provider-activity-feed.shared.resources-config.schemas.js.map +1 -0
  865. package/dist/esm/organizations/service-provider-activity-feed.shared.schemas.d.ts +122 -0
  866. package/dist/esm/organizations/service-provider-activity-feed.shared.schemas.d.ts.map +1 -0
  867. package/dist/esm/organizations/service-provider-activity-feed.shared.schemas.js +136 -0
  868. package/dist/esm/organizations/service-provider-activity-feed.shared.schemas.js.map +1 -0
  869. package/dist/esm/organizations/service-provider-capability-grants.shared.resources-config.schemas.d.ts +36 -0
  870. package/dist/esm/organizations/service-provider-capability-grants.shared.resources-config.schemas.d.ts.map +1 -0
  871. package/dist/esm/organizations/service-provider-capability-grants.shared.resources-config.schemas.js +155 -0
  872. package/dist/esm/organizations/service-provider-capability-grants.shared.resources-config.schemas.js.map +1 -0
  873. package/dist/esm/organizations/service-provider-capability-grants.shared.schemas.d.ts +229 -0
  874. package/dist/esm/organizations/service-provider-capability-grants.shared.schemas.d.ts.map +1 -0
  875. package/dist/esm/organizations/service-provider-capability-grants.shared.schemas.js +290 -0
  876. package/dist/esm/organizations/service-provider-capability-grants.shared.schemas.js.map +1 -0
  877. package/dist/esm/organizations/service-provider-client-controls.shared.schemas.d.ts +48 -0
  878. package/dist/esm/organizations/service-provider-client-controls.shared.schemas.d.ts.map +1 -0
  879. package/dist/esm/organizations/service-provider-client-controls.shared.schemas.js +50 -0
  880. package/dist/esm/organizations/service-provider-client-controls.shared.schemas.js.map +1 -0
  881. package/dist/esm/organizations/service-provider-relationships.shared.resources-config.schemas.d.ts +97 -0
  882. package/dist/esm/organizations/service-provider-relationships.shared.resources-config.schemas.d.ts.map +1 -0
  883. package/dist/esm/organizations/service-provider-relationships.shared.resources-config.schemas.js +572 -0
  884. package/dist/esm/organizations/service-provider-relationships.shared.resources-config.schemas.js.map +1 -0
  885. package/dist/esm/organizations/service-provider-relationships.shared.schemas.d.ts +590 -0
  886. package/dist/esm/organizations/service-provider-relationships.shared.schemas.d.ts.map +1 -0
  887. package/dist/esm/organizations/service-provider-relationships.shared.schemas.js +869 -0
  888. package/dist/esm/organizations/service-provider-relationships.shared.schemas.js.map +1 -0
  889. package/dist/esm/organizations/tenant-teardown-config.shared.schemas.d.ts +36 -6
  890. package/dist/esm/organizations/tenant-teardown-config.shared.schemas.d.ts.map +1 -1
  891. package/dist/esm/organizations/tenant-teardown-config.shared.schemas.js +57 -16
  892. package/dist/esm/organizations/tenant-teardown-config.shared.schemas.js.map +1 -1
  893. package/dist/esm/provider-registration-runtime.exports.d.ts +1 -1
  894. package/dist/esm/provider-registration-runtime.exports.d.ts.map +1 -1
  895. package/dist/esm/provider-registration-runtime.exports.js +1 -1
  896. package/dist/esm/provider-registration-runtime.exports.js.map +1 -1
  897. package/dist/esm/public-runtime/index.d.ts +65 -17
  898. package/dist/esm/public-runtime/index.d.ts.map +1 -1
  899. package/dist/esm/public-runtime/index.js +65 -17
  900. package/dist/esm/public-runtime/index.js.map +1 -1
  901. package/dist/esm/queue/jobs.shared.resources-config.schemas.d.ts +7 -8
  902. package/dist/esm/queue/jobs.shared.resources-config.schemas.d.ts.map +1 -1
  903. package/dist/esm/queue/jobs.shared.resources-config.schemas.js +30 -6
  904. package/dist/esm/queue/jobs.shared.resources-config.schemas.js.map +1 -1
  905. package/dist/esm/queue/jobs.shared.schemas.d.ts +416 -2
  906. package/dist/esm/queue/jobs.shared.schemas.d.ts.map +1 -1
  907. package/dist/esm/queue/jobs.shared.schemas.js +327 -11
  908. package/dist/esm/queue/jobs.shared.schemas.js.map +1 -1
  909. package/dist/esm/queue/jobs.shared.utils.d.ts +6 -4
  910. package/dist/esm/queue/jobs.shared.utils.d.ts.map +1 -1
  911. package/dist/esm/queue/jobs.shared.utils.js +5 -4
  912. package/dist/esm/queue/jobs.shared.utils.js.map +1 -1
  913. package/dist/esm/queue/queues.shared.schemas.d.ts +20 -8
  914. package/dist/esm/queue/queues.shared.schemas.d.ts.map +1 -1
  915. package/dist/esm/queue/queues.shared.schemas.js +23 -18
  916. package/dist/esm/queue/queues.shared.schemas.js.map +1 -1
  917. package/dist/esm/queue/queues.shared.utils.d.ts +4 -2
  918. package/dist/esm/queue/queues.shared.utils.d.ts.map +1 -1
  919. package/dist/esm/queue/queues.shared.utils.js +4 -2
  920. package/dist/esm/queue/queues.shared.utils.js.map +1 -1
  921. package/dist/esm/rag/rag-retrieval-health.shared.d.ts +27 -0
  922. package/dist/esm/rag/rag-retrieval-health.shared.d.ts.map +1 -0
  923. package/dist/esm/rag/rag-retrieval-health.shared.js +29 -0
  924. package/dist/esm/rag/rag-retrieval-health.shared.js.map +1 -0
  925. package/dist/esm/requests/header-keys.shared.d.ts +12 -0
  926. package/dist/esm/requests/header-keys.shared.d.ts.map +1 -1
  927. package/dist/esm/requests/header-keys.shared.js +14 -0
  928. package/dist/esm/requests/header-keys.shared.js.map +1 -1
  929. package/dist/esm/requests/idempotency-key.shared.d.ts +76 -0
  930. package/dist/esm/requests/idempotency-key.shared.d.ts.map +1 -0
  931. package/dist/esm/requests/idempotency-key.shared.js +112 -0
  932. package/dist/esm/requests/idempotency-key.shared.js.map +1 -0
  933. package/dist/esm/requests/manual-controllers-routes-documentation.d.ts.map +1 -1
  934. package/dist/esm/requests/manual-controllers-routes-documentation.js +365 -25
  935. package/dist/esm/requests/manual-controllers-routes-documentation.js.map +1 -1
  936. package/dist/esm/requests/manual-controllers-routes-urls.d.ts +138 -23
  937. package/dist/esm/requests/manual-controllers-routes-urls.d.ts.map +1 -1
  938. package/dist/esm/requests/manual-controllers-routes-urls.js +166 -0
  939. package/dist/esm/requests/manual-controllers-routes-urls.js.map +1 -1
  940. package/dist/esm/requests/rate-limits.shared.schemas.d.ts.map +1 -1
  941. package/dist/esm/requests/rate-limits.shared.schemas.js.map +1 -1
  942. package/dist/esm/requests/websocket.shared.schemas.d.ts +267 -26
  943. package/dist/esm/requests/websocket.shared.schemas.d.ts.map +1 -1
  944. package/dist/esm/requests/websocket.shared.schemas.js +310 -23
  945. package/dist/esm/requests/websocket.shared.schemas.js.map +1 -1
  946. package/dist/esm/resources/child-operations.shared.schemas.d.ts +56 -5
  947. package/dist/esm/resources/child-operations.shared.schemas.d.ts.map +1 -1
  948. package/dist/esm/resources/child-operations.shared.schemas.js +97 -5
  949. package/dist/esm/resources/child-operations.shared.schemas.js.map +1 -1
  950. package/dist/esm/resources/context-policy.shared.schemas.d.ts +20 -0
  951. package/dist/esm/resources/context-policy.shared.schemas.d.ts.map +1 -1
  952. package/dist/esm/resources/context-policy.shared.schemas.js +3 -0
  953. package/dist/esm/resources/context-policy.shared.schemas.js.map +1 -1
  954. package/dist/esm/resources/embedded-resource-mark.shared.utils.d.ts +21 -0
  955. package/dist/esm/resources/embedded-resource-mark.shared.utils.d.ts.map +1 -0
  956. package/dist/esm/resources/embedded-resource-mark.shared.utils.js +22 -0
  957. package/dist/esm/resources/embedded-resource-mark.shared.utils.js.map +1 -0
  958. package/dist/esm/resources/relationship-display.shared.schemas.d.ts.map +1 -1
  959. package/dist/esm/resources/resources-config.shared.factory.d.ts.map +1 -1
  960. package/dist/esm/resources/resources-config.shared.factory.js +1296 -47
  961. package/dist/esm/resources/resources-config.shared.factory.js.map +1 -1
  962. package/dist/esm/resources/resources-config.shared.schemas.d.ts +866 -92
  963. package/dist/esm/resources/resources-config.shared.schemas.d.ts.map +1 -1
  964. package/dist/esm/resources/resources-config.shared.schemas.js +460 -33
  965. package/dist/esm/resources/resources-config.shared.schemas.js.map +1 -1
  966. package/dist/esm/resources/resources-registry.shared.core.definitions.d.ts.map +1 -1
  967. package/dist/esm/resources/resources-registry.shared.core.definitions.js +730 -81
  968. package/dist/esm/resources/resources-registry.shared.core.definitions.js.map +1 -1
  969. package/dist/esm/resources/resources-relationships.shared.factory.d.ts.map +1 -1
  970. package/dist/esm/resources/resources-relationships.shared.factory.js.map +1 -1
  971. package/dist/esm/resources/resources-serialization.shared.schemas.d.ts.map +1 -1
  972. package/dist/esm/resources/resources.shared.core.definitions.d.ts +64 -0
  973. package/dist/esm/resources/resources.shared.core.definitions.d.ts.map +1 -1
  974. package/dist/esm/resources/resources.shared.core.definitions.js +120 -0
  975. package/dist/esm/resources/resources.shared.core.definitions.js.map +1 -1
  976. package/dist/esm/resources/resources.shared.schemas.d.ts +258 -27
  977. package/dist/esm/resources/resources.shared.schemas.d.ts.map +1 -1
  978. package/dist/esm/resources/resources.shared.schemas.js +233 -29
  979. package/dist/esm/resources/resources.shared.schemas.js.map +1 -1
  980. package/dist/esm/resources/resources.shared.utils.d.ts +18 -9
  981. package/dist/esm/resources/resources.shared.utils.d.ts.map +1 -1
  982. package/dist/esm/resources/resources.shared.utils.js +54 -14
  983. package/dist/esm/resources/resources.shared.utils.js.map +1 -1
  984. package/dist/esm/resources/utils/collection-export.shared.utils.d.ts +2 -2
  985. package/dist/esm/resources/utils/collection-export.shared.utils.d.ts.map +1 -1
  986. package/dist/esm/resources/utils/collection-export.shared.utils.js +4 -2
  987. package/dist/esm/resources/utils/collection-export.shared.utils.js.map +1 -1
  988. package/dist/esm/resources/utils/composition-cascade-deletability.validation.d.ts +44 -12
  989. package/dist/esm/resources/utils/composition-cascade-deletability.validation.d.ts.map +1 -1
  990. package/dist/esm/resources/utils/composition-cascade-deletability.validation.js +46 -23
  991. package/dist/esm/resources/utils/composition-cascade-deletability.validation.js.map +1 -1
  992. package/dist/esm/resources/utils/composition-seedability.validation.d.ts.map +1 -1
  993. package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.d.ts.map +1 -1
  994. package/dist/esm/resources/utils/dependent-lifecycle-classification.validation.d.ts +61 -0
  995. package/dist/esm/resources/utils/dependent-lifecycle-classification.validation.d.ts.map +1 -0
  996. package/dist/esm/resources/utils/dependent-lifecycle-classification.validation.js +79 -0
  997. package/dist/esm/resources/utils/dependent-lifecycle-classification.validation.js.map +1 -0
  998. package/dist/esm/resources/utils/duplicate-relationship-registration.validation.d.ts.map +1 -1
  999. package/dist/esm/resources/utils/field-value-disclosure.utils.d.ts.map +1 -1
  1000. package/dist/esm/resources/utils/field-value-disclosure.utils.js.map +1 -1
  1001. package/dist/esm/resources/utils/http-api-write-declaration.shared.utils.d.ts +103 -0
  1002. package/dist/esm/resources/utils/http-api-write-declaration.shared.utils.d.ts.map +1 -0
  1003. package/dist/esm/resources/utils/http-api-write-declaration.shared.utils.js +275 -0
  1004. package/dist/esm/resources/utils/http-api-write-declaration.shared.utils.js.map +1 -0
  1005. package/dist/esm/resources/utils/initiator-stamped-field-satisfiability.validation.d.ts +60 -0
  1006. package/dist/esm/resources/utils/initiator-stamped-field-satisfiability.validation.d.ts.map +1 -0
  1007. package/dist/esm/resources/utils/initiator-stamped-field-satisfiability.validation.js +80 -0
  1008. package/dist/esm/resources/utils/initiator-stamped-field-satisfiability.validation.js.map +1 -0
  1009. package/dist/esm/resources/utils/no-subject-data-stance-coherence.shared.utils.d.ts +51 -0
  1010. package/dist/esm/resources/utils/no-subject-data-stance-coherence.shared.utils.d.ts.map +1 -0
  1011. package/dist/esm/resources/utils/no-subject-data-stance-coherence.shared.utils.js +28 -0
  1012. package/dist/esm/resources/utils/no-subject-data-stance-coherence.shared.utils.js.map +1 -0
  1013. package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.d.ts.map +1 -1
  1014. package/dist/esm/resources/utils/populated-file-fields.shared.utils.d.ts +21 -0
  1015. package/dist/esm/resources/utils/populated-file-fields.shared.utils.d.ts.map +1 -0
  1016. package/dist/esm/resources/utils/populated-file-fields.shared.utils.js +170 -0
  1017. package/dist/esm/resources/utils/populated-file-fields.shared.utils.js.map +1 -0
  1018. package/dist/esm/resources/utils/repository-dto-builder.utils.d.ts.map +1 -1
  1019. package/dist/esm/resources/utils/request-schema-field-carriage.shared.utils.d.ts +2 -0
  1020. package/dist/esm/resources/utils/request-schema-field-carriage.shared.utils.d.ts.map +1 -0
  1021. package/dist/esm/resources/utils/request-schema-field-carriage.shared.utils.js +33 -0
  1022. package/dist/esm/resources/utils/request-schema-field-carriage.shared.utils.js.map +1 -0
  1023. package/dist/esm/resources/utils/required-fk-fillability.validation.d.ts.map +1 -1
  1024. package/dist/esm/resources/utils/resource-operation-type-guards.utils.d.ts.map +1 -1
  1025. package/dist/esm/resources/utils/resource-polymorphism.factory.d.ts +15 -0
  1026. package/dist/esm/resources/utils/resource-polymorphism.factory.d.ts.map +1 -1
  1027. package/dist/esm/resources/utils/resource-polymorphism.factory.js +6 -1
  1028. package/dist/esm/resources/utils/resource-polymorphism.factory.js.map +1 -1
  1029. package/dist/esm/resources/utils/resource-polymorphism.relationships.d.ts.map +1 -1
  1030. package/dist/esm/resources/utils/resource-polymorphism.schemas.d.ts.map +1 -1
  1031. package/dist/esm/resources/utils/resource-polymorphism.schemas.js +30 -4
  1032. package/dist/esm/resources/utils/resource-polymorphism.schemas.js.map +1 -1
  1033. package/dist/esm/resources/utils/resource-polymorphism.utils.d.ts.map +1 -1
  1034. package/dist/esm/resources/utils/resource-subtree.utils.d.ts.map +1 -1
  1035. package/dist/esm/resources/utils/resources-config-context-needs.utils.d.ts.map +1 -1
  1036. package/dist/esm/resources/utils/resources-config-naming.utils.d.ts +15 -0
  1037. package/dist/esm/resources/utils/resources-config-naming.utils.d.ts.map +1 -1
  1038. package/dist/esm/resources/utils/resources-config-naming.utils.js +56 -11
  1039. package/dist/esm/resources/utils/resources-config-naming.utils.js.map +1 -1
  1040. package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.d.ts +97 -1
  1041. package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.d.ts.map +1 -1
  1042. package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.js +402 -60
  1043. package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.js.map +1 -1
  1044. package/dist/esm/resources/utils/resources-config-operations.path.utils.d.ts.map +1 -1
  1045. package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.d.ts +34 -0
  1046. package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.d.ts.map +1 -1
  1047. package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.js +45 -1
  1048. package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.js.map +1 -1
  1049. package/dist/esm/resources/utils/resources-config-operations.utils.d.ts.map +1 -1
  1050. package/dist/esm/resources/utils/resources-serialization.utils.d.ts +19 -2
  1051. package/dist/esm/resources/utils/resources-serialization.utils.d.ts.map +1 -1
  1052. package/dist/esm/resources/utils/resources-serialization.utils.js +4 -0
  1053. package/dist/esm/resources/utils/resources-serialization.utils.js.map +1 -1
  1054. package/dist/esm/resources/utils/resources-summary.utils.d.ts.map +1 -1
  1055. package/dist/esm/resources/utils/resources-summary.utils.js.map +1 -1
  1056. package/dist/esm/resources/utils/schema-family-builder.utils.d.ts.map +1 -1
  1057. package/dist/esm/resources/utils/schema-type-inference.utils.d.ts.map +1 -1
  1058. package/dist/esm/resources/utils/schema-type-utils.d.ts.map +1 -1
  1059. package/dist/esm/resources/utils/schema-variant-resolver.utils.d.ts.map +1 -1
  1060. package/dist/esm/resources/utils/shared-persistence-collection.utils.d.ts +29 -0
  1061. package/dist/esm/resources/utils/shared-persistence-collection.utils.d.ts.map +1 -1
  1062. package/dist/esm/resources/utils/shared-persistence-collection.utils.js +45 -9
  1063. package/dist/esm/resources/utils/shared-persistence-collection.utils.js.map +1 -1
  1064. package/dist/esm/resources/utils/templatable-file-fields.shared.utils.d.ts.map +1 -1
  1065. package/dist/esm/resources/utils/templatable-file-fields.shared.utils.js +49 -11
  1066. package/dist/esm/resources/utils/templatable-file-fields.shared.utils.js.map +1 -1
  1067. package/dist/esm/resources/work-unit.shared.schemas.d.ts +20 -0
  1068. package/dist/esm/resources/work-unit.shared.schemas.d.ts.map +1 -0
  1069. package/dist/esm/resources/work-unit.shared.schemas.js +19 -0
  1070. package/dist/esm/resources/work-unit.shared.schemas.js.map +1 -0
  1071. package/dist/esm/runtime/domain-module.shared.definitions.d.ts.map +1 -1
  1072. package/dist/esm/runtime/domain-module.shared.definitions.js.map +1 -1
  1073. package/dist/esm/runtime/execution-context.shared.schemas.d.ts +48 -1
  1074. package/dist/esm/runtime/execution-context.shared.schemas.d.ts.map +1 -1
  1075. package/dist/esm/runtime/execution-context.shared.schemas.js +101 -9
  1076. package/dist/esm/runtime/execution-context.shared.schemas.js.map +1 -1
  1077. package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.d.ts +1 -0
  1078. package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.d.ts.map +1 -1
  1079. package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.js +41 -21
  1080. package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.js.map +1 -1
  1081. package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.d.ts +1 -0
  1082. package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.d.ts.map +1 -1
  1083. package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.js +65 -49
  1084. package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.js.map +1 -1
  1085. package/dist/esm/security/api-keys/api-keys.shared.schemas.d.ts +26 -0
  1086. package/dist/esm/security/api-keys/api-keys.shared.schemas.d.ts.map +1 -1
  1087. package/dist/esm/security/api-keys/api-keys.shared.schemas.js +39 -5
  1088. package/dist/esm/security/api-keys/api-keys.shared.schemas.js.map +1 -1
  1089. package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.d.ts.map +1 -1
  1090. package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts +133 -19
  1091. package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts.map +1 -1
  1092. package/dist/esm/security/authentications/authentication.shared.dto.schemas.js +166 -6
  1093. package/dist/esm/security/authentications/authentication.shared.dto.schemas.js.map +1 -1
  1094. package/dist/esm/security/authentications/authentication.shared.schemas.d.ts +324 -9
  1095. package/dist/esm/security/authentications/authentication.shared.schemas.d.ts.map +1 -1
  1096. package/dist/esm/security/authentications/authentication.shared.schemas.js +411 -8
  1097. package/dist/esm/security/authentications/authentication.shared.schemas.js.map +1 -1
  1098. package/dist/esm/security/authentications/authentication.shared.utils.d.ts +87 -4
  1099. package/dist/esm/security/authentications/authentication.shared.utils.d.ts.map +1 -1
  1100. package/dist/esm/security/authentications/authentication.shared.utils.js +95 -6
  1101. package/dist/esm/security/authentications/authentication.shared.utils.js.map +1 -1
  1102. package/dist/esm/security/authentications/consumable-token.shared.schemas.d.ts +23 -1
  1103. package/dist/esm/security/authentications/consumable-token.shared.schemas.d.ts.map +1 -1
  1104. package/dist/esm/security/authentications/consumable-token.shared.schemas.js +23 -1
  1105. package/dist/esm/security/authentications/consumable-token.shared.schemas.js.map +1 -1
  1106. package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.d.ts +7 -1
  1107. package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.d.ts.map +1 -1
  1108. package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.js +7 -1
  1109. package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.js.map +1 -1
  1110. package/dist/esm/security/authentications/password-blocklist.shared.utils.d.ts +74 -0
  1111. package/dist/esm/security/authentications/password-blocklist.shared.utils.d.ts.map +1 -0
  1112. package/dist/esm/security/authentications/password-blocklist.shared.utils.js +122 -0
  1113. package/dist/esm/security/authentications/password-blocklist.shared.utils.js.map +1 -0
  1114. package/dist/esm/security/authentications/password-reset.shared.dto.schemas.d.ts.map +1 -1
  1115. package/dist/esm/security/authentications/registration.shared.dto.schemas.d.ts +88 -2
  1116. package/dist/esm/security/authentications/registration.shared.dto.schemas.d.ts.map +1 -1
  1117. package/dist/esm/security/authentications/registration.shared.dto.schemas.js +149 -2
  1118. package/dist/esm/security/authentications/registration.shared.dto.schemas.js.map +1 -1
  1119. package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.d.ts +57 -11
  1120. package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.d.ts.map +1 -1
  1121. package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.js +46 -13
  1122. package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.js.map +1 -1
  1123. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.d.ts +11 -0
  1124. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.d.ts.map +1 -1
  1125. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.js +34 -10
  1126. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.js.map +1 -1
  1127. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.d.ts +16 -2
  1128. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.d.ts.map +1 -1
  1129. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.js +36 -6
  1130. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.js.map +1 -1
  1131. package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.d.ts.map +1 -1
  1132. package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.js +18 -12
  1133. package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.js.map +1 -1
  1134. package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.d.ts +2 -0
  1135. package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.d.ts.map +1 -1
  1136. package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.js +9 -0
  1137. package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.js.map +1 -1
  1138. package/dist/esm/security/authentications/service-provider-client-authentication.shared.schemas.d.ts +169 -0
  1139. package/dist/esm/security/authentications/service-provider-client-authentication.shared.schemas.d.ts.map +1 -0
  1140. package/dist/esm/security/authentications/service-provider-client-authentication.shared.schemas.js +162 -0
  1141. package/dist/esm/security/authentications/service-provider-client-authentication.shared.schemas.js.map +1 -0
  1142. package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.d.ts.map +1 -1
  1143. package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.js +14 -9
  1144. package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.js.map +1 -1
  1145. package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.d.ts.map +1 -1
  1146. package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.resources-config.schemas.d.ts +27 -0
  1147. package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.resources-config.schemas.d.ts.map +1 -0
  1148. package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.resources-config.schemas.js +109 -0
  1149. package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.resources-config.schemas.js.map +1 -0
  1150. package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.schemas.d.ts +66 -0
  1151. package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.schemas.d.ts.map +1 -0
  1152. package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.schemas.js +107 -0
  1153. package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.schemas.js.map +1 -0
  1154. package/dist/esm/security/authentications/siem/siem-delivery-reliability-contract.shared.d.ts.map +1 -1
  1155. package/dist/esm/security/authentications/siem/siem-delivery-reliability-contract.shared.js.map +1 -1
  1156. package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.d.ts +19 -0
  1157. package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.d.ts.map +1 -1
  1158. package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.js +50 -13
  1159. package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.js.map +1 -1
  1160. package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.d.ts +18 -6
  1161. package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.d.ts.map +1 -1
  1162. package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.js +139 -10
  1163. package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.js.map +1 -1
  1164. package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.d.ts +26 -0
  1165. package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.d.ts.map +1 -1
  1166. package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.js +63 -33
  1167. package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.js.map +1 -1
  1168. package/dist/esm/security/authentications/sso/sso-config.shared.schemas.d.ts +0 -40
  1169. package/dist/esm/security/authentications/sso/sso-config.shared.schemas.d.ts.map +1 -1
  1170. package/dist/esm/security/authentications/sso/sso-config.shared.schemas.js +127 -50
  1171. package/dist/esm/security/authentications/sso/sso-config.shared.schemas.js.map +1 -1
  1172. package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.d.ts +26 -7
  1173. package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.d.ts.map +1 -1
  1174. package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.js +98 -38
  1175. package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.js.map +1 -1
  1176. package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.d.ts +6 -26
  1177. package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.d.ts.map +1 -1
  1178. package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.js +153 -70
  1179. package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.js.map +1 -1
  1180. package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.d.ts +13 -5
  1181. package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.d.ts.map +1 -1
  1182. package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.js +12 -4
  1183. package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.js.map +1 -1
  1184. package/dist/esm/security/authorizations/application-access-grants.shared.resources-config.schemas.d.ts +4 -0
  1185. package/dist/esm/security/authorizations/application-access-grants.shared.resources-config.schemas.d.ts.map +1 -1
  1186. package/dist/esm/security/authorizations/application-access-grants.shared.resources-config.schemas.js +9 -1
  1187. package/dist/esm/security/authorizations/application-access-grants.shared.resources-config.schemas.js.map +1 -1
  1188. package/dist/esm/security/authorizations/application-access-grants.shared.schemas.d.ts +44 -0
  1189. package/dist/esm/security/authorizations/application-access-grants.shared.schemas.d.ts.map +1 -1
  1190. package/dist/esm/security/authorizations/application-access-grants.shared.schemas.js +52 -0
  1191. package/dist/esm/security/authorizations/application-access-grants.shared.schemas.js.map +1 -1
  1192. package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.d.ts.map +1 -1
  1193. package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js +7 -7
  1194. package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js.map +1 -1
  1195. package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.d.ts.map +1 -1
  1196. package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.js.map +1 -1
  1197. package/dist/esm/security/authorizations/roles.shared.defaults.d.ts.map +1 -1
  1198. package/dist/esm/security/authorizations/roles.shared.defaults.js +62 -0
  1199. package/dist/esm/security/authorizations/roles.shared.defaults.js.map +1 -1
  1200. package/dist/esm/security/authorizations/roles.shared.schemas.d.ts +91 -1
  1201. package/dist/esm/security/authorizations/roles.shared.schemas.d.ts.map +1 -1
  1202. package/dist/esm/security/authorizations/roles.shared.schemas.js +109 -0
  1203. package/dist/esm/security/authorizations/roles.shared.schemas.js.map +1 -1
  1204. package/dist/esm/security/authorizations/roles.shared.utils.d.ts.map +1 -1
  1205. package/dist/esm/security/authorizations/roles.shared.utils.js +2 -0
  1206. package/dist/esm/security/authorizations/roles.shared.utils.js.map +1 -1
  1207. package/dist/esm/security/connected-accounts/provider-connection-listing.shared.schemas.d.ts +86 -0
  1208. package/dist/esm/security/connected-accounts/provider-connection-listing.shared.schemas.d.ts.map +1 -0
  1209. package/dist/esm/security/connected-accounts/provider-connection-listing.shared.schemas.js +40 -0
  1210. package/dist/esm/security/connected-accounts/provider-connection-listing.shared.schemas.js.map +1 -0
  1211. package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.d.ts +6 -2
  1212. package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.d.ts.map +1 -1
  1213. package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.js +2 -1
  1214. package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.js.map +1 -1
  1215. package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.d.ts +7 -3
  1216. package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.d.ts.map +1 -1
  1217. package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.js +15 -43
  1218. package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.js.map +1 -1
  1219. package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.d.ts +242 -23
  1220. package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.d.ts.map +1 -1
  1221. package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.js +310 -62
  1222. package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.js.map +1 -1
  1223. package/dist/esm/security/credential-rotation-grace.shared.utils.d.ts +69 -0
  1224. package/dist/esm/security/credential-rotation-grace.shared.utils.d.ts.map +1 -0
  1225. package/dist/esm/security/credential-rotation-grace.shared.utils.js +77 -0
  1226. package/dist/esm/security/credential-rotation-grace.shared.utils.js.map +1 -0
  1227. package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.d.ts +6 -3
  1228. package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.d.ts.map +1 -1
  1229. package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js +102 -12
  1230. package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js.map +1 -1
  1231. package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts +8 -3
  1232. package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts.map +1 -1
  1233. package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js +194 -17
  1234. package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js.map +1 -1
  1235. package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts +1 -0
  1236. package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts.map +1 -1
  1237. package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js +25 -4
  1238. package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js.map +1 -1
  1239. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.d.ts.map +1 -1
  1240. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.d.ts.map +1 -1
  1241. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.js.map +1 -1
  1242. package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.d.ts.map +1 -1
  1243. package/dist/esm/security/outbound-target-control.shared.schemas.d.ts +73 -0
  1244. package/dist/esm/security/outbound-target-control.shared.schemas.d.ts.map +1 -0
  1245. package/dist/esm/security/outbound-target-control.shared.schemas.js +75 -0
  1246. package/dist/esm/security/outbound-target-control.shared.schemas.js.map +1 -0
  1247. package/dist/esm/security/submission-challenge/submission-challenge.shared.d.ts +143 -0
  1248. package/dist/esm/security/submission-challenge/submission-challenge.shared.d.ts.map +1 -0
  1249. package/dist/esm/security/submission-challenge/submission-challenge.shared.js +123 -0
  1250. package/dist/esm/security/submission-challenge/submission-challenge.shared.js.map +1 -0
  1251. package/dist/esm/systems-of-record/system-of-record-actions.shared.schemas.d.ts +384 -0
  1252. package/dist/esm/systems-of-record/system-of-record-actions.shared.schemas.d.ts.map +1 -0
  1253. package/dist/esm/systems-of-record/system-of-record-actions.shared.schemas.js +327 -0
  1254. package/dist/esm/systems-of-record/system-of-record-actions.shared.schemas.js.map +1 -0
  1255. package/dist/esm/systems-of-record/system-of-record-credential-kind.shared.d.ts +159 -0
  1256. package/dist/esm/systems-of-record/system-of-record-credential-kind.shared.d.ts.map +1 -0
  1257. package/dist/esm/systems-of-record/system-of-record-credential-kind.shared.js +164 -0
  1258. package/dist/esm/systems-of-record/system-of-record-credential-kind.shared.js.map +1 -0
  1259. package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.d.ts +322 -0
  1260. package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.d.ts.map +1 -0
  1261. package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.js +229 -0
  1262. package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.js.map +1 -0
  1263. package/dist/esm/systems-of-record/system-of-record-env.shared.d.ts +79 -0
  1264. package/dist/esm/systems-of-record/system-of-record-env.shared.d.ts.map +1 -0
  1265. package/dist/esm/systems-of-record/system-of-record-env.shared.js +116 -0
  1266. package/dist/esm/systems-of-record/system-of-record-env.shared.js.map +1 -0
  1267. package/dist/esm/systems-of-record/system-of-record-error-codes.shared.d.ts +403 -0
  1268. package/dist/esm/systems-of-record/system-of-record-error-codes.shared.d.ts.map +1 -0
  1269. package/dist/esm/systems-of-record/system-of-record-error-codes.shared.js +430 -0
  1270. package/dist/esm/systems-of-record/system-of-record-error-codes.shared.js.map +1 -0
  1271. package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.d.ts +788 -0
  1272. package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.d.ts.map +1 -0
  1273. package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.js +985 -0
  1274. package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.js.map +1 -0
  1275. package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.resources-config.schemas.d.ts +31 -0
  1276. package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.resources-config.schemas.d.ts.map +1 -0
  1277. package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.resources-config.schemas.js +233 -0
  1278. package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.resources-config.schemas.js.map +1 -0
  1279. package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.schemas.d.ts +127 -0
  1280. package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.schemas.d.ts.map +1 -0
  1281. package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.schemas.js +204 -0
  1282. package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.schemas.js.map +1 -0
  1283. package/dist/esm/testing/resource-config-builders.d.ts.map +1 -1
  1284. package/dist/esm/testing/resource-config-builders.js +10 -4
  1285. package/dist/esm/testing/resource-config-builders.js.map +1 -1
  1286. package/dist/esm/testing.d.ts.map +1 -1
  1287. package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.d.ts +2 -1
  1288. package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.d.ts.map +1 -1
  1289. package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.js +2 -1
  1290. package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.js.map +1 -1
  1291. package/dist/esm/users/anonymous-users.shared.resources-config.schemas.d.ts +141 -24
  1292. package/dist/esm/users/anonymous-users.shared.resources-config.schemas.d.ts.map +1 -1
  1293. package/dist/esm/users/anonymous-users.shared.resources-config.schemas.js +264 -0
  1294. package/dist/esm/users/anonymous-users.shared.resources-config.schemas.js.map +1 -1
  1295. package/dist/esm/users/anonymous-users.shared.schema.d.ts +5 -3
  1296. package/dist/esm/users/anonymous-users.shared.schema.d.ts.map +1 -1
  1297. package/dist/esm/users/anonymous-users.shared.schema.js +18 -1
  1298. package/dist/esm/users/anonymous-users.shared.schema.js.map +1 -1
  1299. package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.d.ts +2 -1
  1300. package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.d.ts.map +1 -1
  1301. package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.js +29 -0
  1302. package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.js.map +1 -1
  1303. package/dist/esm/users/inbound-contacts.shared.schemas.d.ts +2 -1
  1304. package/dist/esm/users/inbound-contacts.shared.schemas.d.ts.map +1 -1
  1305. package/dist/esm/users/user-consent-decision.shared.utils.d.ts +127 -0
  1306. package/dist/esm/users/user-consent-decision.shared.utils.d.ts.map +1 -0
  1307. package/dist/esm/users/user-consent-decision.shared.utils.js +189 -0
  1308. package/dist/esm/users/user-consent-decision.shared.utils.js.map +1 -0
  1309. package/dist/esm/users/user-credentials.shared.resources-config.schemas.d.ts.map +1 -1
  1310. package/dist/esm/users/user-credentials.shared.schemas.d.ts.map +1 -1
  1311. package/dist/esm/users/user-identity-links.shared.resources-config.schemas.d.ts +1 -0
  1312. package/dist/esm/users/user-identity-links.shared.resources-config.schemas.d.ts.map +1 -1
  1313. package/dist/esm/users/user-identity-links.shared.schemas.d.ts +1 -0
  1314. package/dist/esm/users/user-identity-links.shared.schemas.d.ts.map +1 -1
  1315. package/dist/esm/users/user-identity-links.shared.schemas.js +30 -0
  1316. package/dist/esm/users/user-identity-links.shared.schemas.js.map +1 -1
  1317. package/dist/esm/users/user-preferences-reset.shared.utils.d.ts +6 -6
  1318. package/dist/esm/users/user-preferences-reset.shared.utils.d.ts.map +1 -1
  1319. package/dist/esm/users/user-preferences-reset.shared.utils.js +8 -8
  1320. package/dist/esm/users/user-preferences-reset.shared.utils.js.map +1 -1
  1321. package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts +71 -29
  1322. package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts.map +1 -1
  1323. package/dist/esm/users/user-preferences.shared.resources-config.schemas.js +99 -0
  1324. package/dist/esm/users/user-preferences.shared.resources-config.schemas.js.map +1 -1
  1325. package/dist/esm/users/user-profiles.shared.resources-config.schemas.d.ts.map +1 -1
  1326. package/dist/esm/users/user-profiles.shared.resources-config.schemas.js +25 -9
  1327. package/dist/esm/users/user-profiles.shared.resources-config.schemas.js.map +1 -1
  1328. package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts +4 -7
  1329. package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts.map +1 -1
  1330. package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.js +12 -1
  1331. package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.js.map +1 -1
  1332. package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.d.ts.map +1 -1
  1333. package/dist/esm/users/user-self.shared.resources-config.schemas.d.ts +1 -0
  1334. package/dist/esm/users/user-self.shared.resources-config.schemas.d.ts.map +1 -1
  1335. package/dist/esm/users/user-self.shared.resources-config.schemas.js +3 -3
  1336. package/dist/esm/users/user-self.shared.resources-config.schemas.js.map +1 -1
  1337. package/dist/esm/users/users.shared.resources-config.schemas.d.ts +1 -0
  1338. package/dist/esm/users/users.shared.resources-config.schemas.d.ts.map +1 -1
  1339. package/dist/esm/users/users.shared.resources-config.schemas.js +84 -22
  1340. package/dist/esm/users/users.shared.resources-config.schemas.js.map +1 -1
  1341. package/dist/esm/users/users.shared.schemas.d.ts +23 -18
  1342. package/dist/esm/users/users.shared.schemas.d.ts.map +1 -1
  1343. package/dist/esm/users/users.shared.schemas.js +117 -27
  1344. package/dist/esm/users/users.shared.schemas.js.map +1 -1
  1345. package/package.json +14 -35
  1346. package/dist/esm/compliance/privacy/data-retention.shared.schemas.js +0 -7
  1347. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.d.ts +0 -19
  1348. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.d.ts.map +0 -1
  1349. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.js +0 -35
  1350. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.js.map +0 -1
  1351. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.d.ts +0 -213
  1352. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.d.ts.map +0 -1
  1353. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.js +0 -287
  1354. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.js.map +0 -1
  1355. package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.d.ts +0 -236
  1356. package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.d.ts.map +0 -1
  1357. package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.js +0 -212
  1358. package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.js.map +0 -1
  1359. package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.d.ts.map +0 -1
  1360. package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.js.map +0 -1
  1361. package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.d.ts +0 -17
  1362. package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.d.ts.map +0 -1
  1363. package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.js +0 -31
  1364. package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.js.map +0 -1
  1365. package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.d.ts.map +0 -1
  1366. package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.js.map +0 -1
  1367. package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.d.ts.map +0 -1
  1368. package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.js.map +0 -1
  1369. package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.d.ts +0 -28
  1370. package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.d.ts.map +0 -1
  1371. package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.js +0 -28
  1372. package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.js.map +0 -1
  1373. package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts.map +0 -1
  1374. package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.js.map +0 -1
  1375. package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.d.ts +0 -100
  1376. package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.d.ts.map +0 -1
  1377. package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.js +0 -232
  1378. package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.js.map +0 -1
  1379. package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.d.ts +0 -29
  1380. package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.d.ts.map +0 -1
  1381. package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.js +0 -58
  1382. package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.js.map +0 -1
  1383. package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.d.ts.map +0 -1
  1384. package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.js.map +0 -1
  1385. package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.d.ts +0 -81
  1386. package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.d.ts.map +0 -1
  1387. package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.js +0 -82
  1388. package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.js.map +0 -1
  1389. package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.d.ts +0 -2
  1390. package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.d.ts.map +0 -1
  1391. package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.js +0 -1
  1392. package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.js.map +0 -1
  1393. package/dist/tsconfig.build.tsbuildinfo +0 -1
  1394. /package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/actions.meta-workflows.shared.schemas.d.ts +0 -0
  1395. /package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/actions.meta-workflows.shared.schemas.js +0 -0
  1396. /package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/catalog.meta-workflows.shared.schemas.d.ts +0 -0
  1397. /package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/catalog.meta-workflows.shared.schemas.js +0 -0
  1398. /package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/context-selection.meta-workflows.shared.schemas.d.ts +0 -0
  1399. /package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/context-selection.meta-workflows.shared.schemas.js +0 -0
@@ -44,6 +44,15 @@ export declare enum UserStatus {
44
44
  PENDING_INVITATION = "PENDING_INVITATION",
45
45
  DELETED = "DELETED"
46
46
  }
47
+ /**
48
+ * True when a person of this status may still act on their own data — ACTIVE only, the same rule the sign-in,
49
+ * token refresh and request-context gates apply to the person themself.
50
+ *
51
+ * Named for the inbound pipeline (#1629): a USER-scope delivery runs on one person's data, and a handler must
52
+ * not act there for someone who could not act there themself. It is the user-scope twin of
53
+ * `isAuthorityConferringOrganizationStatus`.
54
+ */
55
+ export declare function isAuthorityConferringUserStatus(status: UserStatus | undefined): boolean;
47
56
  export declare enum UserTheme {
48
57
  LIGHT = "LIGHT",
49
58
  DARK = "DARK",
@@ -52,6 +61,7 @@ export declare enum UserTheme {
52
61
  export declare const UserSchema: z.ZodObject<{
53
62
  _id: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
54
63
  email: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEmail>>>>;
64
+ emailVerifiedAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<z.ZodDate>>>;
55
65
  status: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodEnum<typeof UserStatus>>>>>>;
56
66
  appRoles: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodArray<z.ZodUnion<readonly [z.ZodEnum<typeof CORE_APP_ROLES>, z.ZodString]>>>>>;
57
67
  userTypes: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodArray<z.ZodString>>>>;
@@ -63,7 +73,6 @@ export type User = z.infer<typeof UserSchema>;
63
73
  export declare const UserLanguagePreferencesSchema: z.ZodObject<{
64
74
  primaryLanguage: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof AvailableLanguage>>>>;
65
75
  fallbackLanguages: z.ZodDefault<z.ZodArray<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof AvailableLanguage>>>>>;
66
- autoDetect: z.ZodDefault<z.ZodBoolean>;
67
76
  useOrganizationDefault: z.ZodDefault<z.ZodBoolean>;
68
77
  }, z.core.$strip>;
69
78
  export type UserLanguagePreferences = z.infer<typeof UserLanguagePreferencesSchema>;
@@ -81,8 +90,6 @@ export declare const UserProfileSchema: z.ZodObject<{
81
90
  export type UserProfile = z.infer<typeof UserProfileSchema>;
82
91
  export declare const UserPreferences_NotificationsSchema: z.ZodObject<{
83
92
  email: z.ZodDefault<z.ZodBoolean>;
84
- push: z.ZodDefault<z.ZodBoolean>;
85
- sms: z.ZodDefault<z.ZodBoolean>;
86
93
  inApp: z.ZodDefault<z.ZodBoolean>;
87
94
  }, z.core.$strip>;
88
95
  export type UserPreferences_Notifications = z.infer<typeof UserPreferences_NotificationsSchema>;
@@ -157,14 +164,12 @@ export declare const UserPreferencesSchema: z.ZodObject<{
157
164
  userId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>>>;
158
165
  notifications: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodObject<{
159
166
  email: z.ZodDefault<z.ZodBoolean>;
160
- push: z.ZodDefault<z.ZodBoolean>;
161
- sms: z.ZodDefault<z.ZodBoolean>;
162
167
  inApp: z.ZodDefault<z.ZodBoolean>;
163
168
  }, z.core.$strip>>>;
164
- privacy: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodObject<{
165
- dataProcessingConsent: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodEnum<typeof import("..").DataProcessingConsent>>>;
166
- privacyLevel: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodEnum<typeof import("..").PrivacyLevel>>>;
167
- }, z.core.$strip>>>;
169
+ privacy: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodObject<{
170
+ consentedPurposes: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodArray<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof import("..").ConsentPurpose>>>>>;
171
+ consentDecidedAt: z.ZodOptional<z.ZodDate>;
172
+ }, z.core.$strip>>>>;
168
173
  ui: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodObject<{
169
174
  theme: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodEnum<typeof UserTheme>>>;
170
175
  }, z.core.$strip>>>;
@@ -177,7 +182,6 @@ export declare const UserPreferencesSchema: z.ZodObject<{
177
182
  languagePreferences: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodObject<{
178
183
  primaryLanguage: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof AvailableLanguage>>>>;
179
184
  fallbackLanguages: z.ZodDefault<z.ZodArray<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof AvailableLanguage>>>>>;
180
- autoDetect: z.ZodDefault<z.ZodBoolean>;
181
185
  useOrganizationDefault: z.ZodDefault<z.ZodBoolean>;
182
186
  }, z.core.$strip>>>>;
183
187
  }, z.core.$strip>;
@@ -201,6 +205,7 @@ export type UserPreferences = z.infer<typeof UserPreferencesSchema>;
201
205
  export declare const UserContextSchema: z.ZodObject<{
202
206
  _id: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
203
207
  email: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEmail>>>>;
208
+ emailVerifiedAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<z.ZodDate>>>;
204
209
  status: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodEnum<typeof UserStatus>>>>>>;
205
210
  appRoles: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodArray<z.ZodUnion<readonly [z.ZodEnum<typeof CORE_APP_ROLES>, z.ZodString]>>>>>;
206
211
  userTypes: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodArray<z.ZodString>>>>;
@@ -223,14 +228,12 @@ export declare const UserContextSchema: z.ZodObject<{
223
228
  userId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>>>;
224
229
  notifications: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodObject<{
225
230
  email: z.ZodDefault<z.ZodBoolean>;
226
- push: z.ZodDefault<z.ZodBoolean>;
227
- sms: z.ZodDefault<z.ZodBoolean>;
228
231
  inApp: z.ZodDefault<z.ZodBoolean>;
229
232
  }, z.core.$strip>>>;
230
- privacy: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodObject<{
231
- dataProcessingConsent: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodEnum<typeof import("..").DataProcessingConsent>>>;
232
- privacyLevel: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodEnum<typeof import("..").PrivacyLevel>>>;
233
- }, z.core.$strip>>>;
233
+ privacy: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodObject<{
234
+ consentedPurposes: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodArray<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof import("..").ConsentPurpose>>>>>;
235
+ consentDecidedAt: z.ZodOptional<z.ZodDate>;
236
+ }, z.core.$strip>>>>;
234
237
  ui: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodObject<{
235
238
  theme: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodEnum<typeof UserTheme>>>;
236
239
  }, z.core.$strip>>>;
@@ -243,13 +246,12 @@ export declare const UserContextSchema: z.ZodObject<{
243
246
  languagePreferences: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodObject<{
244
247
  primaryLanguage: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof AvailableLanguage>>>>;
245
248
  fallbackLanguages: z.ZodDefault<z.ZodArray<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof AvailableLanguage>>>>>;
246
- autoDetect: z.ZodDefault<z.ZodBoolean>;
247
249
  useOrganizationDefault: z.ZodDefault<z.ZodBoolean>;
248
250
  }, z.core.$strip>>>>;
249
251
  }, z.core.$strip>>;
250
252
  organizationMembers: z.ZodOptional<z.ZodArray<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodObject<{
251
253
  _id: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
252
- userId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>>>;
254
+ userId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>>>>;
253
255
  userEmail: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<z.ZodEmail>>>>>>;
254
256
  organizationId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>>;
255
257
  roles: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodDefault<z.ZodArray<z.ZodUnion<readonly [z.ZodEnum<typeof import("..").CORE_ORG_ROLES>, z.ZodString]>>>>>>;
@@ -258,6 +260,9 @@ export declare const UserContextSchema: z.ZodObject<{
258
260
  userTitle: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<z.ZodString>>>>;
259
261
  invitedByUserId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<z.ZodString>>>>;
260
262
  invitedAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<z.ZodDate>>>>;
263
+ serviceProviderRelationshipId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<z.ZodString>>>>>>;
264
+ providerOrganizationId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<z.ZodString>>>>>>;
265
+ providerOrganizationName: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<z.ZodString>>>>;
261
266
  instanceLabel: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<z.ZodString>>;
262
267
  createdAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<z.ZodDefault<z.ZodDate>>>>>;
263
268
  updatedAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodOptional<z.ZodDefault<z.ZodDate>>>>>;
@@ -1 +1 @@
1
- {"version":3,"file":"users.shared.schemas.d.ts","sourceRoot":"","sources":["../../../src/users/users.shared.schemas.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAkB,cAAc,EAAE,MAAM,iDAAiD,CAAC;AAGjG,OAAO,EAAE,iBAAiB,EAAkB,UAAU,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAKhH;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,0BAA0B,CAAC;AAEzD;;;;;;;;;GASG;AACH,eAAO,MAAM,gBAAgB,aAAa,CAAC;AAE3C;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,aAAa,CAAC;AAEhD,oBAAY,UAAU;IACpB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,oBAAoB,yBAAyB;IAC7C,kBAAkB,uBAAuB;IACzC,OAAO,YAAY;CACpB;AAED,oBAAY,SAAS;IACnB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,IAAI,SAAS;CACd;AAED,eAAO,MAAM,UAAU;;;;;;;;;iBAoGrB,CAAC;AACH,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAE9C,eAAO,MAAM,6BAA6B;;;;;iBASxC,CAAC;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAEpF,eAAO,MAAM,iBAAiB;;;;;;;;;;iBA0E5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,mCAAmC;;;;;iBAK9C,CAAC;AACH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;AAEhG,eAAO,MAAM,8BAA8B;;iBAEzC,CAAC;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,8BAA8B;;;;;iBAQzC,CAAC;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF;;;;;;;;;;;;;;;;GAgBG;AACH,oBAAY,mBAAmB;IAC7B,aAAa,kBAAkB;IAC/B,OAAO,YAAY;IACnB,EAAE,OAAO;IACT,QAAQ,aAAa;IACrB,QAAQ,wBAAwB;CACjC;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAuDhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAK5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"users.shared.schemas.d.ts","sourceRoot":"","sources":["../../../../src/users/users.shared.schemas.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAkB,cAAc,EAAE,MAAM,iDAAiD,CAAC;AAGjG,OAAO,EAAE,iBAAiB,EAAkB,UAAU,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAKhH;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,0BAA0B,CAAC;AAEzD;;;;;;;;;GASG;AACH,eAAO,MAAM,gBAAgB,aAAa,CAAC;AAE3C;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,aAAa,CAAC;AAEhD,oBAAY,UAAU;IACpB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,oBAAoB,yBAAyB;IAC7C,kBAAkB,uBAAuB;IACzC,OAAO,YAAY;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,CAEvF;AAED,oBAAY,SAAS;IACnB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,IAAI,SAAS;CACd;AAED,eAAO,MAAM,UAAU;;;;;;;;;;iBAqIrB,CAAC;AACH,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAE9C,eAAO,MAAM,6BAA6B;;;;iBA4BxC,CAAC;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAEpF,eAAO,MAAM,iBAAiB;;;;;;;;;;iBA2F5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,mCAAmC;;;iBAM9C,CAAC;AACH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;AAEhG,eAAO,MAAM,8BAA8B;;iBAEzC,CAAC;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,8BAA8B;;;;;iBAQzC,CAAC;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF;;;;;;;;;;;;;;;;GAgBG;AACH,oBAAY,mBAAmB;IAC7B,aAAa,kBAAkB;IAC/B,OAAO,YAAY;IACnB,EAAE,OAAO;IACT,QAAQ,aAAa;IACrB,QAAQ,wBAAwB;CACjC;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;iBAgEhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAK5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
@@ -8,7 +8,7 @@ import { AppRolesSchema, CORE_APP_ROLES } from '../security/authorizations/roles
8
8
  import { UserPrivacySchema } from '../compliance/privacy/privacy.shared.schemas.js';
9
9
  import { OrganizationMemberSchema } from '../organizations/organization-members.shared.schemas.js';
10
10
  import { AvailableLanguage, TimezoneSchema, DateFormat, TimeFormat } from '@wildo-ai/presets-components-models';
11
- import { EnumEditMode, z_phone, z_file, FileNature, addDataCategories, addImpersonalizeWith } from '@wildo-ai/zod-decorators';
11
+ import { EnumMultipleEditMode, z_phone, z_file, FileNature, addDataCategories, addImpersonalizeWith } from '@wildo-ai/zod-decorators';
12
12
  import { RedactionType } from '../compliance/privacy/redaction.shared.schemas.js';
13
13
  import { PersonalDataCategory } from '../compliance/privacy/personal-data-category.shared.schemas.js';
14
14
  /**
@@ -50,6 +50,17 @@ export var UserStatus;
50
50
  UserStatus["PENDING_INVITATION"] = "PENDING_INVITATION";
51
51
  UserStatus["DELETED"] = "DELETED";
52
52
  })(UserStatus || (UserStatus = {}));
53
+ /**
54
+ * True when a person of this status may still act on their own data — ACTIVE only, the same rule the sign-in,
55
+ * token refresh and request-context gates apply to the person themself.
56
+ *
57
+ * Named for the inbound pipeline (#1629): a USER-scope delivery runs on one person's data, and a handler must
58
+ * not act there for someone who could not act there themself. It is the user-scope twin of
59
+ * `isAuthorityConferringOrganizationStatus`.
60
+ */
61
+ export function isAuthorityConferringUserStatus(status) {
62
+ return status === UserStatus.ACTIVE;
63
+ }
53
64
  export var UserTheme;
54
65
  (function (UserTheme) {
55
66
  UserTheme["LIGHT"] = "LIGHT";
@@ -91,6 +102,39 @@ export const UserSchema = z.object({
91
102
  // rather than IDENTITY: it is how the person is reached. That it also serves as the identity
92
103
  // anchor is a property of this schema, not of the datum.
93
104
  PersonalDataCategory.CONTACT_DETAILS),
105
+ /**
106
+ * WHEN this address was proven to be reachable by the person who holds the account — and nothing else.
107
+ *
108
+ * ## Why a moment, and why it is not `status` (#1285)
109
+ *
110
+ * `email_verified` is an OIDC claim this application ISSUES to relying parties, and it was derived
111
+ * from `UserStatus.ACTIVE`. ACTIVE does not mean the address was proven: with
112
+ * `EmailVerificationMode.DEFERRED`, and on the password-less path, registration creates an ACTIVE
113
+ * account precisely so the emailed link can be the way in — the address is proven when the link is
114
+ * CLICKED, which may be later or never. So an application could assert to every relying party that
115
+ * an address was verified when nothing had verified it.
116
+ *
117
+ * The registration flow already knows the difference and says so at its own site: *"The status gate
118
+ * and the verification gate are not the same gate, and conflating them is what makes this look wrong
119
+ * at first glance."* This field is that sentence made readable by everything downstream.
120
+ *
121
+ * ## Absent is UNKNOWN, never false
122
+ *
123
+ * There is no backfill, so an account verified before this field existed carries nothing. Readers
124
+ * therefore treat absence as unknown and OMIT the claim — which is the doctrine
125
+ * `oidc-user-claims.backend.service.ts` already states for itself: *"assert the claim only when the
126
+ * status determines it; omit it otherwise rather than assert an unknown state."* Absence must not
127
+ * become `false`: that would tell a relying party an address is unverified when it may well have
128
+ * been, which is a different false statement rather than a safer one.
129
+ *
130
+ * Mirrors `UserCredentials.phoneVerifiedAt`, which has recorded the same fact for the phone channel
131
+ * since SMS OTP shipped. Email was the channel with no record at all.
132
+ *
133
+ * NOT `.isAuditEvidence()`, for the reason the block below gives about `email`: the act is already
134
+ * recorded as its own auditable event (`logUserEmailVerified`), and a moment beside a masked
135
+ * identity anchor does not decide authority.
136
+ */
137
+ emailVerifiedAt: z.date().optional().excludeFromCreate().excludeFromUpdate(),
94
138
  // The three fields below carry `.isAuditEvidence()`: their VALUES are recorded before-and-after on
95
139
  // the `resource_operation_performed` audit event. All three decide what the principal may do, and
96
140
  // all three hold closed vocabulary rather than personal data — so recording them is both necessary
@@ -152,14 +196,33 @@ export const UserSchema = z.object({
152
196
  updatedAt: z.date().default(() => new Date()).isDBIndexed().excludeFromCreate().excludeFromUpdate()
153
197
  });
154
198
  export const UserLanguagePreferencesSchema = z.object({
155
- primaryLanguage: z.enum(AvailableLanguage).systemEnum('AvailableLanguage').default(AvailableLanguage.EN).isSummaryField(),
156
- // Compact multi-select: render as a chips combobox (searchable popover) instead
157
- // of a full inline checkbox column — `editMode: COMBOBOX` on the array item is the
158
- // opt-in that `FormFieldArray` reads to render `ComboboxMultiple`. Fits a
159
- // settings-row layout where the long language list would otherwise overflow.
160
- fallbackLanguages: z.array(z.enum(AvailableLanguage).systemEnum('AvailableLanguage').enumUI({ edit: { editMode: EnumEditMode.COMBOBOX } })).default([AvailableLanguage.EN]),
161
- autoDetect: z.boolean().default(true),
162
- useOrganizationDefault: z.boolean().default(false),
199
+ primaryLanguage: z.enum(AvailableLanguage).systemEnum('AvailableLanguage').default(AvailableLanguage.EN).isSummaryField().describe("The language this user reads the application in, and the language of the notification and password-reset emails sent to them. In the interface, the organization's primary language takes precedence when the organization enforces it or the user opts into the organization default, and a language the application does not offer is ignored. Defaults to `en`."),
200
+ /**
201
+ * The languages to use, in order, when `primaryLanguage` is one the application does not offer (#1799).
202
+ *
203
+ * Read in two places, through one ordering: the interface's language resolution tries them after the
204
+ * primary language and before anything it remembers or detects; the recipient language of a
205
+ * notification or password-reset email tries them after the primary language and before the user's
206
+ * regional locale. Each is used only if the application (and, in the interface, the organization)
207
+ * offers it. It was stored and edited and read by nothing until then.
208
+ *
209
+ * Defaults to EMPTY, not `[en]`: a fixed English default would quietly override the application's
210
+ * own fallback language for every user who never set this.
211
+ *
212
+ * Compact multi-select: render as a chips combobox (searchable popover) instead of a full inline
213
+ * checkbox column — `multipleEditMode: COMBOBOX` on the array item is the opt-in the multiple enum
214
+ * control reads (`resolveEnumMultipleEditMode`). The single-select `editMode` means nothing on an array item. Fits a settings-row layout where the long language list would
215
+ * otherwise overflow.
216
+ */
217
+ fallbackLanguages: z
218
+ .array(z.enum(AvailableLanguage).systemEnum('AvailableLanguage').enumUI({ edit: { multipleEditMode: EnumMultipleEditMode.COMBOBOX } }))
219
+ .default([])
220
+ .describe('Languages to use, in order, when `primaryLanguage` is not one the application offers — in the interface, and for the notification and password-reset emails sent to this user. A language the application does not offer is skipped. Empty by default, which leaves the application\'s own fallback in charge.'),
221
+ // `autoDetect` was removed (#1799). It was consulted only after the primary language had failed AND
222
+ // nothing was remembered, which for a signed-in user with the default `en` primary is effectively
223
+ // never. The application-level `appPreferences.languages.autoDetectFromBrowser` still governs the one
224
+ // case that remains, a first visit before anyone has signed in.
225
+ useOrganizationDefault: z.boolean().default(false).describe("When true, the interface uses the organization's primary language instead of this user's own `primaryLanguage`. Defaults to false."),
163
226
  });
164
227
  export const UserProfileSchema = z.object({
165
228
  _id: z.string().min(1).isPrimaryKey().isSummaryField(),
@@ -178,10 +241,20 @@ export const UserProfileSchema = z.object({
178
241
  * `aspectRatio 1:1` constraint enforces the square crop. Upload-only — there
179
242
  * is no external-URL branch.
180
243
  */
181
- // REMOVE nulls the stored `{ fileId, updatedAt }` reference, which is what erasure can honestly
182
- // promise here: the profile stops pointing at the person's face. It does NOT delete the underlying
183
- // stored object — file bytes are owned by the file resource and its own lifecycle, and claiming
184
- // otherwise in a schema comment would be the kind of unverified assertion this lane exists to stop.
244
+ // REMOVE nulls the stored `{ fileId, updatedAt }` reference AND the underlying file is deleted.
245
+ //
246
+ // Corrected 2026-09-17: this said the stored object was NOT deleted, on the grounds that file bytes
247
+ // belong to the file resource's own lifecycle. That is not what the engine does. `userProfiles`
248
+ // declares a `retentionPolicy`, so `impersonalizeRowsInPlace` governs it; this field is a personal
249
+ // file field (REMOVE, not KEEP); and that scrub's own comment states the rule — "a field-level
250
+ // scrub cannot reach INSIDE a stored blob, so a file field marked personal is only erased by
251
+ // deleting the file". The deletion is sequenced as a post-commit effect on the parent transaction
252
+ // so a rolled-back scrub can never destroy files for a row that stayed live.
253
+ //
254
+ // The old comment under-claimed, which is the safer direction and still false — and it was
255
+ // load-bearing: `remove_avatar` was acknowledged as unimplementable partly by reasoning from it
256
+ // (#1275). A schema comment about what the product does is a claim, and this one had never been
257
+ // checked against the code it described.
185
258
  avatar: addImpersonalizeWith(z_file({
186
259
  nature: FileNature.IMAGE,
187
260
  allowedMimeTypes: 'Images',
@@ -206,21 +279,29 @@ export const UserProfileSchema = z.object({
206
279
  * Stored value is still a plain E.164 string, so DTO/persistence are unchanged.
207
280
  */
208
281
  //
209
- // `addDataCategories` rather than the fluent form: `z_phone()` returns a ZodPipe, which carries no
210
- // prototype-installed decorators at all (a decorator-WIDE gap, not specific to this one). A phone
211
- // number is contact-detail personal data by definition, so the escape hatch is load-bearing here
212
- // rather than a curiosity.
282
+ // A phone number is contact-detail personal data by definition, so both declarations are
283
+ // load-bearing here rather than a curiosity.
284
+ //
285
+ // The helper form is kept DELIBERATELY, and the reason changed on 2026-09-17. It used to be the
286
+ // only form that worked: `z_phone()` ends in `.pipe(z.string())`, so its constructor is `ZodPipe`,
287
+ // a name in no applyable-type list — and the per-instance decorator install keys on that name, so
288
+ // a phone schema carried NO decorators at all and the fluent form threw. That gap is closed and
289
+ // `z_phone().dataCategories(…).impersonalizeWith(…)` now works. What keeps the helper here is that
290
+ // it needs no prototype method at all, which makes this field's classification independent of the
291
+ // decorator-install path entirely — worth having on the one field whose misclassification is a
292
+ // privacy incident rather than a rendering bug.
213
293
  phoneNumber: addImpersonalizeWith(addDataCategories(z_phone().optional(), PersonalDataCategory.CONTACT_DETAILS), RedactionType.REMOVE),
214
294
  title: addImpersonalizeWith(z.string().max(100).optional().dataCategories(PersonalDataCategory.PROFESSIONAL), RedactionType.REMOVE)
215
295
  });
216
296
  export const UserPreferences_NotificationsSchema = z.object({
217
- email: z.boolean().default(true),
218
- push: z.boolean().default(true),
219
- sms: z.boolean().default(false),
220
- inApp: z.boolean().default(true)
297
+ email: z.boolean().default(true).describe("When false, notification emails about the user's own account are not sent to them. Emails the user receives because of a role they hold, notices marked as always delivered, and account-recovery emails such as password reset are sent regardless. Defaults to true."),
298
+ // `push` and `sms` were removed (#1799): the dispatcher sent neither channel — it logged "not yet
299
+ // implemented" and returned — and no notification declared either, so a user who turned push off "to
300
+ // stop notifications" turned off nothing. They come back with a channel that actually delivers.
301
+ inApp: z.boolean().default(true).describe("When false, the application's interface stops showing this user the real-time notifications the server sends them, as pop-ups or in the notification centre. Data on screen keeps updating live. Defaults to true.")
221
302
  });
222
303
  export const UserPreferences_UI_ThemeSchema = z.object({
223
- theme: z.enum(UserTheme).default(UserTheme.AUTO).isSummaryField(),
304
+ theme: z.enum(UserTheme).default(UserTheme.AUTO).isSummaryField().describe("The colour scheme the interface uses for this user: `LIGHT`, `DARK`, or `AUTO` to follow the device's system setting. Applied whenever the user's preferences load, so the choice follows them across devices. Defaults to `AUTO`."),
224
305
  });
225
306
  /**
226
307
  * A member's OWN regional choices — and every field is OPTIONAL, deliberately.
@@ -254,13 +335,13 @@ export const UserPreferences_UI_ThemeSchema = z.object({
254
335
  * before — the difference is only that a tenant which HAS authored something is now heard.
255
336
  */
256
337
  export const UserPreferences_RegionalSchema = z.object({
257
- timezone: TimezoneSchema.optional().isSummaryField(),
338
+ timezone: TimezoneSchema.optional().isSummaryField().describe("The IANA time zone (for example `Europe/Paris`) in which the interface shows dates and times to this user. When omitted, the organization's time zone applies, then UTC."),
258
339
  // LOCALE_DEFAULT (not ISO_8601) remains the framework FALLBACK, resolved in `I18nContext`: "no
259
340
  // expressed preference" must mean locale-driven rendering. Storing it here would pin every
260
341
  // preference-less member to it and mask both the organization layer and the locale fallback.
261
- dateFormat: z.enum(DateFormat).systemEnum('DateFormat').optional(),
262
- timeFormat: z.enum(TimeFormat).systemEnum('TimeFormat').optional(),
263
- locale: z.enum(AvailableLanguage).systemEnum('AvailableLanguage').optional().isSummaryField()
342
+ dateFormat: z.enum(DateFormat).systemEnum('DateFormat').optional().describe("How the interface shows dates to this user: `LOCALE_DEFAULT` follows the conventions of the resolved locale, every other value is a fixed pattern. When omitted, the organization's date format applies, then `LOCALE_DEFAULT`."),
343
+ timeFormat: z.enum(TimeFormat).systemEnum('TimeFormat').optional().describe("Whether the interface shows times to this user on a 12-hour (`12h`) or 24-hour (`24h`) clock. When omitted, the organization's setting applies, then `24h`."),
344
+ locale: z.enum(AvailableLanguage).systemEnum('AvailableLanguage').optional().isSummaryField().describe("The language tag (for example `en-GB`) whose conventions the interface uses to format dates, times and numbers for this user. When omitted, the organization's locale applies, then the language the interface is shown in. It is also published as the `locale` claim to OpenID Connect clients.")
264
345
  });
265
346
  /**
266
347
  * The preference blocks a caller can address as a unit — the closed vocabulary behind
@@ -314,8 +395,17 @@ export const UserPreferencesSchema = z.object({
314
395
  // reader nothing the word "preferences" does not.
315
396
  notifications: addImpersonalizeWith(UserPreferences_NotificationsSchema.default(UserPreferences_NotificationsSchema.parse({}))
316
397
  .dataCategories(PersonalDataCategory.USAGE), RedactionType.RESET),
398
+ // CREATE cannot carry the consent decision, because the row is SEEDED (the USERS → USER_PREFERENCES
399
+ // `onParentCreate` composition writes only the parent key) and a person has decided nothing at that
400
+ // point. Every door that writes a decision emits a row: the gate, the self and admin UPDATE, the
401
+ // RESET, and `carry_anonymous_consent`. CREATE sits below the automatic audit floor, so a consent
402
+ // accepted there would be stored with no trace, which is what
403
+ // `evidence-requirement:consent-decision-transition-record` C2 forbids. The control marker for that
404
+ // objective sits on the decision leaf itself (`UserPrivacySchema.consentedPurposes`); this site only
405
+ // narrows which verbs can reach it.
317
406
  privacy: addImpersonalizeWith(UserPrivacySchema.default(UserPrivacySchema.parse({}))
318
- .dataCategories(PersonalDataCategory.USAGE), RedactionType.RESET),
407
+ .dataCategories(PersonalDataCategory.USAGE)
408
+ .excludeFromCreate(), RedactionType.RESET),
319
409
  ui: UserPreferences_UI_ThemeSchema.default(UserPreferences_UI_ThemeSchema.parse({})).isSummaryField(),
320
410
  // Timezone and locale are the two that most clearly identify something about the person rather
321
411
  // than about the session — a timezone narrows where they are, which is why LOCATION rides here.
@@ -1 +1 @@
1
- {"version":3,"file":"users.shared.schemas.js","sourceRoot":"","sources":["../../../src/users/users.shared.schemas.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,iDAAiD,CAAC;AACjG,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AACjF,OAAO,EAAE,wBAAwB,EAAE,MAAM,sDAAsD,CAAC;AAChG,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAChH,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAC9H,OAAO,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6DAA6D,CAAC;AAEnG;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;AAEzD;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,UAAU,CAAC;AAEhD,MAAM,CAAN,IAAY,UAOX;AAPD,WAAY,UAAU;IACpB,+BAAiB,CAAA;IACjB,mCAAqB,CAAA;IACrB,qCAAuB,CAAA;IACvB,2DAA6C,CAAA;IAC7C,uDAAyC,CAAA;IACzC,iCAAmB,CAAA;AACrB,CAAC,EAPW,UAAU,KAAV,UAAU,QAOrB;AAED,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,4BAAe,CAAA;IACf,0BAAa,CAAA;IACb,0BAAa,CAAA;AACf,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,cAAc,EAAE;IACtD;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,KAAK,EAAE,iBAAiB,CACtB,oBAAoB,CAClB,CAAC,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC,cAAc,EAAE,CAAC,iBAAiB,EAAE,EACrF,aAAa,CAAC,IAAI,EAClB,EAAE,SAAS,EAAE,iBAAiB,EAAE,CACjC;IACD,gGAAgG;IAChG,+FAA+F;IAC/F,0FAA0F;IAC1F,gGAAgG;IAChG,6FAA6F;IAC7F,yDAAyD;IACzD,oBAAoB,CAAC,eAAe,CACrC;IACD,mGAAmG;IACnG,kGAAkG;IAClG,mGAAmG;IACnG,gGAAgG;IAChG,oBAAoB;IACpB,EAAE;IACF,mGAAmG;IACnG,8FAA8F;IAC9F,+FAA+F;IAC/F,sFAAsF;IACtF;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,iBAAiB,EAAE;IAC1H,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,eAAe,EAAE;IACpG,+GAA+G;IAC/G,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,eAAe,EAAE;IAC1E;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,uBAAuB,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC,iBAAiB,EAAE,CAAC,iBAAiB,EAAE;IAClG,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,cAAc,EAAE,CAAC,iBAAiB,EAAE,CAAC,iBAAiB,EAAE;IACpH,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,iBAAiB,EAAE,CAAC,iBAAiB,EAAE;CACpG,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,cAAc,EAAE;IACzH,gFAAgF;IAChF,mFAAmF;IACnF,0EAA0E;IAC1E,6EAA6E;IAC7E,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAC3K,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACrC,sBAAsB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CACnD,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,cAAc,EAAE;IACtD,6EAA6E;IAC7E,sEAAsE;IACtE,iFAAiF;IACjF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,YAAY,EAAE,CAAC,cAAc,EAAE,CAAC,iBAAiB,EAAE;IACtG,SAAS,EAAE,oBAAoB,CAC7B,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EACxF,aAAa,CAAC,IAAI,EAClB,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAChC;IACD,QAAQ,EAAE,oBAAoB,CAC5B,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EACxF,aAAa,CAAC,IAAI,EAClB,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAChC;IACD,WAAW,EAAE,oBAAoB,CAC/B,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EAC7F,aAAa,CAAC,MAAM,CACrB;IACD;;;;;;;OAOG;IACH,gGAAgG;IAChG,mGAAmG;IACnG,gGAAgG;IAChG,oGAAoG;IACpG,MAAM,EAAE,oBAAoB,CAC1B,MAAM,CAAC;QACL,MAAM,EAAE,UAAU,CAAC,KAAK;QACxB,gBAAgB,EAAE,QAAQ;QAC1B,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;QACxB,gBAAgB,EAAE;YAChB,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;YACpC,kBAAkB,EAAE,IAAI;SACzB;KACF,CAAC,CAAC,QAAQ,EAAE,CAAC,cAAc,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EAC3D,aAAa,CAAC,MAAM,CACrB;IACD,+FAA+F;IAC/F,kGAAkG;IAClG,gGAAgG;IAChG,mEAAmE;IACnE,GAAG,EAAE,oBAAoB,CACvB,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,cAAc,CAAC,oBAAoB,CAAC,YAAY,CAAC,EAChF,aAAa,CAAC,MAAM,CACrB;IACD;;;;;;OAMG;IACH,EAAE;IACF,mGAAmG;IACnG,kGAAkG;IAClG,iGAAiG;IACjG,2BAA2B;IAC3B,WAAW,EAAE,oBAAoB,CAC/B,iBAAiB,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,oBAAoB,CAAC,eAAe,CAAC,EAC7E,aAAa,CAAC,MAAM,CACrB;IACD,KAAK,EAAE,oBAAoB,CACzB,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,cAAc,CAAC,oBAAoB,CAAC,YAAY,CAAC,EAChF,aAAa,CAAC,MAAM,CACrB;CACF,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1D,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAChC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC/B,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAC/B,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;CACjC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE;CAClE,CAAC,CAAC;AAGH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,cAAc,EAAE;IACpD,+FAA+F;IAC/F,2FAA2F;IAC3F,6FAA6F;IAC7F,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE;IAClE,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE;IAClE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,QAAQ,EAAE,CAAC,cAAc,EAAE;CAC9F,CAAC,CAAC;AAGH;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAN,IAAY,mBAMX;AAND,WAAY,mBAAmB;IAC7B,sDAA+B,CAAA;IAC/B,0CAAmB,CAAA;IACnB,gCAAS,CAAA;IACT,4CAAqB,CAAA;IACrB,uDAAgC,CAAA;AAClC,CAAC,EANW,mBAAmB,KAAnB,mBAAmB,QAM9B;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,cAAc,EAAE;IACtD,kFAAkF;IAClF,oFAAoF;IACpF,8EAA8E;IAC9E,oFAAoF;IACpF,oFAAoF;IACpF,iCAAiC;IACjC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,YAAY,EAAE,CAAC,cAAc,EAAE,CAAC,iBAAiB,EAAE;IACtG,yFAAyF;IACzF,EAAE;IACF,iGAAiG;IACjG,kGAAkG;IAClG,mGAAmG;IACnG,kEAAkE;IAClE,EAAE;IACF,iGAAiG;IACjG,iGAAiG;IACjG,mGAAmG;IACnG,+FAA+F;IAC/F,gEAAgE;IAChE,EAAE;IACF,mGAAmG;IACnG,+FAA+F;IAC/F,kDAAkD;IAClD,aAAa,EAAE,oBAAoB,CACjC,mCAAmC,CAAC,OAAO,CAAC,mCAAmC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;SACvF,cAAc,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAC7C,aAAa,CAAC,KAAK,CACpB;IAED,OAAO,EAAE,oBAAoB,CAC3B,iBAAiB,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;SACnD,cAAc,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAC7C,aAAa,CAAC,KAAK,CACpB;IAED,EAAE,EAAE,8BAA8B,CAAC,OAAO,CAAC,8BAA8B,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE;IAErG,+FAA+F;IAC/F,gGAAgG;IAChG,kGAAkG;IAClG,gFAAgF;IAChF,QAAQ,EAAE,oBAAoB,CAC5B,8BAA8B,CAAC,OAAO,CAAC,8BAA8B,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE;SAC9F,cAAc,CAAC,CAAC,oBAAoB,CAAC,KAAK,EAAE,oBAAoB,CAAC,QAAQ,CAAC,CAAC,EAC9E,aAAa,CAAC,KAAK,CACpB;IAED,gCAAgC;IAChC,mBAAmB,EAAE,oBAAoB,CACvC,6BAA6B,CAAC,OAAO,CAAC,6BAA6B,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE;SAC5F,cAAc,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAC7C,aAAa,CAAC,KAAK,CACpB;CACF,CAAC,CAAC;AAGH;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,UAAU,CAAC,MAAM,CAAC;IACjD,sFAAsF;IACtF,eAAe,EAAE,iBAAiB,CAAC,QAAQ,EAAE;IAC7C,mBAAmB,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IACrD,mBAAmB,EAAE,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,QAAQ,EAAE;CAClE,CAAC,CAAC","sourcesContent":["/**\n * User Shared Schemas\n * \n * Shared user schemas for frontend and backend with MongoDB compatibility\n */\n\nimport { z } from 'zod';\n\nimport { AppRolesSchema, CORE_APP_ROLES } from '../security/authorizations/roles.shared.schemas';\nimport { UserPrivacySchema } from '../compliance/privacy/privacy.shared.schemas';\nimport { OrganizationMemberSchema } from '../organizations/organization-members.shared.schemas';\nimport { AvailableLanguage, TimezoneSchema, DateFormat, TimeFormat } from '@wildo-ai/presets-components-models';\nimport { EnumEditMode, z_phone, z_file, FileNature, addDataCategories, addImpersonalizeWith } from '@wildo-ai/zod-decorators';\nimport { RedactionType } from '../compliance/privacy/redaction.shared.schemas';\nimport { PersonalDataCategory } from '../compliance/privacy/personal-data-category.shared.schemas';\n\n/**\n * The address written over a user's `email` when the subject is erased and the row retained.\n *\n * `.invalid` is an RFC 2606 reserved TLD: it can never be registered and never resolves, so an\n * erased address cannot be delivered to, cannot be confused with a live account, and cannot become\n * a real identity if a stray code path ever re-mails it.\n *\n * Exported as ONE named source so the erasure orchestrator, tests and any operator query recognize\n * an erased subject without duplicating the literal.\n */\nexport const ERASED_USER_EMAIL = 'erased@erased.invalid';\n\n/**\n * What a REQUIRED name field becomes when the subject is erased.\n *\n * `firstName` and `lastName` are `min(1)`, so REMOVE is not available to them — nulling a required\n * field would leave a row the schema itself rejects on the next read. MASK with a value that is\n * obviously not a name keeps the row parseable while carrying no information about the person.\n *\n * Deliberately the same placeholder as `ERASED_FILE_NAME_PLACEHOLDER`: a reader meeting `[erased]`\n * in an export or an admin view should not have to learn a second vocabulary to recognise it.\n */\nexport const ERASED_USER_NAME = '[erased]';\n\n/**\n * What an erased EXTERNAL identifier becomes — a provider's own id for the person.\n *\n * Distinct from `ERASED_USER_NAME` despite the same literal, because the two answer different\n * questions and will diverge: a name is displayed to a human, an external id is matched against a\n * provider's records. Merging them would make a future change to either silently change the other.\n */\nexport const ERASED_IDENTITY_VALUE = '[erased]';\n\nexport enum UserStatus {\n ACTIVE = 'ACTIVE',\n INACTIVE = 'INACTIVE',\n SUSPENDED = 'SUSPENDED',\n PENDING_VERIFICATION = 'PENDING_VERIFICATION',\n PENDING_INVITATION = 'PENDING_INVITATION',\n DELETED = 'DELETED'\n}\n\nexport enum UserTheme {\n LIGHT = 'LIGHT',\n DARK = 'DARK',\n AUTO = 'AUTO'\n}\n\nexport const UserSchema = z.object({\n _id: z.string().min(1).isPrimaryKey().isSummaryField(),\n /**\n * Email is the STRICT unique identity anchor — there is never more than one\n * `User` per email. `.isUnique()` is the fail-closed DB backstop; every\n * provisioning path (self-registration, org-admin invite, SSO JIT, SCIM,\n * anonymous transposition) MUST find-or-create by this normalized value rather\n * than blind-create, and recover from the duplicate-key `409` on the rare\n * concurrent race (e.g. an invite and an SSO JIT landing at once). `.toLowerCase()`\n * normalizes before both the lookup and the unique check so casing can't fork an\n * identity. `.excludeFromUpdate()` keeps the anchor immutable.\n *\n * **It is also the ONLY personal datum on this row** (the rest is `_id`, status, roles, types and\n * timestamps; names / bio / phone / avatar all live on `USER_PROFILES`). So it is what a subject\n * erasure scrubs — `MASK` to {@link ERASED_USER_EMAIL}, which keeps the row resolvable as an\n * anonymized subject for the retained billing records whose foreign keys point at it.\n *\n * `MASK` with an explicit value rather than `REMOVE`: `REMOVE` writes `null`, which this schema\n * rejects, so it would force `.nullish()` here — widening the identity anchor to\n * `string | null | undefined` for ~20+ consumers (auth registration, password reset, JWT guard,\n * SCIM, SSO provisioning, org invites) AND making it optional at CREATE, to represent a state only\n * the audited see-through reader can ever observe, since a retained row is hidden from every\n * normal read. The default mask constant cannot be used either — it is not a valid email.\n * Every erased user shares this one address; that cannot collide, because the unique index on a\n * retention-governed resource covers only non-retained rows and the scrub flips the row to\n * `RETAINED` in the same write.\n */\n email: addDataCategories(\n addImpersonalizeWith(\n z.email().isDBIndexed().isUnique().toLowerCase().isSummaryField().excludeFromUpdate(),\n RedactionType.MASK,\n { maskValue: ERASED_USER_EMAIL },\n ),\n // Declared because the engine owes its OWN inventory. Without it, every generated application's\n // privacy notice would name `users.email` as an outstanding category gap — the field carries a\n // scrub treatment, which is the application saying it holds personal data, so the missing\n // category would be a provable omission the framework left for each app to fix. CONTACT_DETAILS\n // rather than IDENTITY: it is how the person is reached. That it also serves as the identity\n // anchor is a property of this schema, not of the datum.\n PersonalDataCategory.CONTACT_DETAILS,\n ),\n // The three fields below carry `.isAuditEvidence()`: their VALUES are recorded before-and-after on\n // the `resource_operation_performed` audit event. All three decide what the principal may do, and\n // all three hold closed vocabulary rather than personal data — so recording them is both necessary\n // as authorization evidence and free of personal data whose erasure obligations could reach the\n // immutable ledger.\n //\n // Contrast `email` directly above, which is deliberately NOT marked: it is the identity anchor and\n // is `.impersonalizeWith(MASK)`, i.e. a value the framework must be able to scrub on erasure.\n // Copying it into an unscrubbable audit row would defeat that capability. That is the whole D4\n // boundary in one file — mark what decides authority, never what identifies a person.\n /**\n * Account lifecycle and access posture.\n *\n * `.excludeFromUpdate()` since 2026-08-01. Lifecycle transitions belong to the dedicated verbs —\n * `users | suspend_user` / `unsuspend_user` and `user_self | deactivate_account` /\n * `reactivate_account` — which own the state machine, the reason, the audit event and the\n * administrative-continuity floors. A generic field patch reproduces none of that, so accepting\n * `status` on the ordinary UPDATE contract meant an administrator could retire an account through\n * a door that asked none of those questions. Mirrors `OrganizationMemberSchema.status`, whose\n * JSDoc has described the same rule for the same reason since before these verbs existed.\n *\n * ⚠️ The trusted server-side writers must therefore use `updateAsSystem`, which re-attaches the\n * field past the repository's strict request-DTO re-parse — email verification\n * (`PENDING_VERIFICATION → ACTIVE`), SCIM re-activation, and SCIM/IdP deprovisioning. All four\n * were migrated in the same change, and `USERS` opts into `systemAccessPolicy.update` for exactly\n * them. A NEW trusted writer that reaches for `servicesRegistryHandler.update` here will be\n * SILENTLY stripped — the account simply never changes state, with no error and no signal.\n *\n * assurance-control: WILDO.IDENTITY.LIFECYCLE — a change to whether a principal may authenticate\n * runs through one guarded, evidenced authority.\n */\n status: z.enum(UserStatus).default(UserStatus.ACTIVE).isDBIndexed().isSummaryField().isAuditEvidence().excludeFromUpdate(),\n appRoles: z.array(AppRolesSchema).default([CORE_APP_ROLES.APP_USER]).isDBIndexed().isAuditEvidence(),\n /** User types from config (e.g. 'user', 'admin', 'consumer'). Determines auth policy, registration context. */\n userTypes: z.array(z.string()).default([]).isDBIndexed().isAuditEvidence(),\n /**\n * When an automated sweep must return this account to `ACTIVE`.\n *\n * Written only by `users | suspend_user`, whose contract takes `suspensionDuration` in DAYS. The\n * transition hook resolves that duration to an absolute instant before persisting, because a\n * duration is only meaningful relative to a moment the row does not otherwise record.\n *\n * Voluntary `user_self | deactivate_account` deliberately has no schedule: an INACTIVE account\n * returns only when its subject calls `reactivate_account`. Absent therefore means an indefinite\n * admin suspension or a non-scheduled lifecycle state.\n *\n * Server-owned (`.excludeFromCreate().excludeFromUpdate()`) so the transition verbs are the only\n * writers, and indexed because the reactivation sweep queries exactly \"rows whose scheduled\n * reactivation has passed\". Deliberately NOT `.isAuditEvidence()`: unlike the three fields above\n * it does not decide what the principal may do — it is a scheduling detail, and the transition's\n * own audit event already records the reason and the resulting status.\n *\n * ⚠️ For admin suspension, the value is a PROMISE the reactivation batch keeps. Persisting it without that sweep would\n * be the same defect as a verb answering success while writing nothing: an authored intention\n * that nothing honors.\n */\n scheduledReactivationAt: z.date().optional().isDBIndexed().excludeFromCreate().excludeFromUpdate(),\n createdAt: z.date().default(() => new Date()).isDBIndexed().isSummaryField().excludeFromCreate().excludeFromUpdate(),\n updatedAt: z.date().default(() => new Date()).isDBIndexed().excludeFromCreate().excludeFromUpdate()\n});\nexport type User = z.infer<typeof UserSchema>;\n\nexport const UserLanguagePreferencesSchema = z.object({\n primaryLanguage: z.enum(AvailableLanguage).systemEnum('AvailableLanguage').default(AvailableLanguage.EN).isSummaryField(),\n // Compact multi-select: render as a chips combobox (searchable popover) instead\n // of a full inline checkbox column — `editMode: COMBOBOX` on the array item is the\n // opt-in that `FormFieldArray` reads to render `ComboboxMultiple`. Fits a\n // settings-row layout where the long language list would otherwise overflow.\n fallbackLanguages: z.array(z.enum(AvailableLanguage).systemEnum('AvailableLanguage').enumUI({ edit: { editMode: EnumEditMode.COMBOBOX } })).default([AvailableLanguage.EN]),\n autoDetect: z.boolean().default(true),\n useOrganizationDefault: z.boolean().default(false),\n});\nexport type UserLanguagePreferences = z.infer<typeof UserLanguagePreferencesSchema>;\n\nexport const UserProfileSchema = z.object({\n _id: z.string().min(1).isPrimaryKey().isSummaryField(),\n // `.isUnique()`: one profile per user (1:1 composition). Backstops the eager\n // `onParentCreate` seed + the provisioning paths against a concurrent\n // double-create — the durable idempotency guarantee behind the declarative seed.\n userId: z.string().min(1).isDBIndexed().isUnique().isForeignKey().isSummaryField().excludeFromUpdate(),\n firstName: addImpersonalizeWith(\n z.string().min(1).max(50).isSummaryField().dataCategories(PersonalDataCategory.IDENTITY),\n RedactionType.MASK,\n { maskValue: ERASED_USER_NAME },\n ),\n lastName: addImpersonalizeWith(\n z.string().min(1).max(50).isSummaryField().dataCategories(PersonalDataCategory.IDENTITY),\n RedactionType.MASK,\n { maskValue: ERASED_USER_NAME },\n ),\n displayName: addImpersonalizeWith(\n z.string().max(100).optional().isSummaryField().dataCategories(PersonalDataCategory.IDENTITY),\n RedactionType.REMOVE,\n ),\n /**\n * Profile avatar — a single uploaded square image (≤ 2 MB, ≤ 1024px), stored\n * as the standard file reference `{ fileId, updatedAt }` and rendered as a\n * square avatar. Uses the plain `z_file()` image pipeline (upload / storage /\n * DTO / persistence / metadata population) with no bespoke field type; the\n * `aspectRatio 1:1` constraint enforces the square crop. Upload-only — there\n * is no external-URL branch.\n */\n // REMOVE nulls the stored `{ fileId, updatedAt }` reference, which is what erasure can honestly\n // promise here: the profile stops pointing at the person's face. It does NOT delete the underlying\n // stored object — file bytes are owned by the file resource and its own lifecycle, and claiming\n // otherwise in a schema comment would be the kind of unverified assertion this lane exists to stop.\n avatar: addImpersonalizeWith(\n z_file({\n nature: FileNature.IMAGE,\n allowedMimeTypes: 'Images',\n maxSize: 2 * 1024 * 1024,\n imageConstraints: {\n maxWidth: 1024,\n maxHeight: 1024,\n aspectRatio: { width: 1, height: 1 },\n generateThumbnails: true,\n },\n }).optional().dataCategories(PersonalDataCategory.IDENTITY),\n RedactionType.REMOVE,\n ),\n // Free prose the person wrote about themselves. USER_CONTENT says what the field is FOR, never\n // what it will contain — a bio is a classic surface where a special category (a health condition,\n // a religious observance, a political affiliation) arrives unannounced, and no schema certifies\n // otherwise. Nothing here is a claim that it does NOT contain one.\n bio: addImpersonalizeWith(\n z.string().max(500).optional().dataCategories(PersonalDataCategory.USER_CONTENT),\n RedactionType.REMOVE,\n ),\n /**\n * E.164 phone number (e.g. \"+33123456789\"). `z_phone()` carries the phone\n * metadata that drives the international phone INPUT on edit (country selector +\n * national number) and the formatted international DISPLAY on read — replacing\n * the old raw `z.string().regex(...)` that surfaced the regex to the user.\n * Stored value is still a plain E.164 string, so DTO/persistence are unchanged.\n */\n //\n // `addDataCategories` rather than the fluent form: `z_phone()` returns a ZodPipe, which carries no\n // prototype-installed decorators at all (a decorator-WIDE gap, not specific to this one). A phone\n // number is contact-detail personal data by definition, so the escape hatch is load-bearing here\n // rather than a curiosity.\n phoneNumber: addImpersonalizeWith(\n addDataCategories(z_phone().optional(), PersonalDataCategory.CONTACT_DETAILS),\n RedactionType.REMOVE,\n ),\n title: addImpersonalizeWith(\n z.string().max(100).optional().dataCategories(PersonalDataCategory.PROFESSIONAL),\n RedactionType.REMOVE,\n )\n});\nexport type UserProfile = z.infer<typeof UserProfileSchema>;\n\nexport const UserPreferences_NotificationsSchema = z.object({\n email: z.boolean().default(true),\n push: z.boolean().default(true),\n sms: z.boolean().default(false),\n inApp: z.boolean().default(true)\n});\nexport type UserPreferences_Notifications = z.infer<typeof UserPreferences_NotificationsSchema>;\n\nexport const UserPreferences_UI_ThemeSchema = z.object({\n theme: z.enum(UserTheme).default(UserTheme.AUTO).isSummaryField(),\n});\nexport type UserPreferences_UI_Theme = z.infer<typeof UserPreferences_UI_ThemeSchema>;\n\n/**\n * A member's OWN regional choices — and every field is OPTIONAL, deliberately.\n *\n * **Absence is a real state and it is the point of this block**: it means the member has expressed\n * no preference, so the value comes from the organization's own regional record\n * (`OrganizationPreferences.timezone` / `.locale` / `.dateFormat` / `.timeFormat`), and only then\n * from the framework fallback. `I18nContext` resolves that chain — member, then organization, then\n * framework — and it can only do so because an unexpressed preference is representable here.\n *\n * All four carried a Zod `.default(...)` until 2026-09-08 (#410), and the defaults were not a\n * convenience: they made the organization layer UNIMPLEMENTABLE. A `.default()` MATERIALIZES at\n * parse, so every member with a preferences row carried `'UTC'`, `EN`, `LOCALE_DEFAULT` and\n * `TWENTY_FOUR_HOUR` whether or not they had ever opened the settings screen — indistinguishable\n * from having chosen them. A tenant that set `Europe/Paris` could never reach a single member,\n * because there was no member left who had not \"expressed\" UTC.\n *\n * The same shape had already cost a decision elsewhere: `cancelImmediately: z.boolean().default(false)`\n * made \"the caller expressed no cancellation preference\" unobservable, which is why the authored\n * `defaultBehavior` policy beneath it was unimplementable rather than merely unimplemented (#408).\n * A default one layer up erases the state the layer beneath exists to answer for.\n *\n * `locale` in particular was also WRONG on its own terms. `I18nContext` resolves it as\n * `regional.locale ?? currentLanguage ?? 'en'`, so a materialized `EN` meant the left side always\n * won and the resolved UI language was never consulted: a member using the application in French\n * got `en` date, time and number formatting. Removing the default is what lets that `??` chain do\n * what it was written to do.\n *\n * Note what did NOT change: the framework's fallbacks are unchanged, and they are still exactly\n * these four values. A member in a tenant that has authored nothing sees precisely what they saw\n * before — the difference is only that a tenant which HAS authored something is now heard.\n */\nexport const UserPreferences_RegionalSchema = z.object({\n timezone: TimezoneSchema.optional().isSummaryField(),\n // LOCALE_DEFAULT (not ISO_8601) remains the framework FALLBACK, resolved in `I18nContext`: \"no\n // expressed preference\" must mean locale-driven rendering. Storing it here would pin every\n // preference-less member to it and mask both the organization layer and the locale fallback.\n dateFormat: z.enum(DateFormat).systemEnum('DateFormat').optional(),\n timeFormat: z.enum(TimeFormat).systemEnum('TimeFormat').optional(),\n locale: z.enum(AvailableLanguage).systemEnum('AvailableLanguage').optional().isSummaryField()\n});\nexport type UserPreferences_Regional = z.infer<typeof UserPreferences_RegionalSchema>;\n\n/**\n * The preference blocks a caller can address as a unit — the closed vocabulary behind\n * `reset_to_defaults` on USER_SELF_PREFERENCES.\n *\n * **Every value IS the persisted field name on {@link UserPreferencesSchema}.** That is the\n * point of the enum, not a coincidence: it lets the reset patch be DERIVED from the vocabulary\n * instead of routed through a hand-written flag-to-field map. The previous contract was six\n * booleans (`resetNotifications`, `resetUI`, …) that named no schema path, so the whole request\n * was stripped before persistence and the route answered 200 having reset nothing.\n *\n * Adding a preference group to the schema means adding a member here; the mapped type in\n * `user-preferences-reset.shared.utils.ts` then refuses to compile until the group declares how\n * it resets. Renaming a group field without renaming the value fails the same way.\n *\n * Note `LANGUAGE = 'languagePreferences'` — the member reads as the concept, the value is the\n * field. Do not \"tidy\" the value to `language`; it is an address, not a label.\n */\nexport enum UserPreferenceGroup {\n NOTIFICATIONS = 'notifications',\n PRIVACY = 'privacy',\n UI = 'ui',\n REGIONAL = 'regional',\n LANGUAGE = 'languagePreferences',\n}\n\nexport const UserPreferencesSchema = z.object({\n _id: z.string().min(1).isPrimaryKey().isSummaryField(),\n // `.isUnique()` is the idempotency backstop for onParentCreate seeding: the eager\n // seed (and any retry) is deduplicated at the DB layer — a second seed for the same\n // user fails the unique constraint and is swallowed, guaranteeing exactly one\n // preferences row per user. (Prod migration note: dedupe any pre-existing duplicate\n // userId rows before this index builds; preferences was seeded nowhere pre-feature,\n // so duplicates are unexpected.)\n userId: z.string().min(1).isDBIndexed().isUnique().isForeignKey().isSummaryField().excludeFromUpdate(),\n // ── Which preference blocks are data ABOUT the person, and which are rendering state ──\n //\n // Declared at the BLOCK, not on the leaves inside it. The resolver walks TOP-LEVEL fields only —\n // the same limit the subject-export compiler and the impersonalize writer have — so a category on\n // `regional.timezone` would be invisible. That is not a workaround: a notice enumerates KINDS, and\n // \"communication preferences\" is the kind, not \"the sms boolean\".\n //\n // `ui` is deliberately NOT declared. A theme choice is about how the SYSTEM renders for someone,\n // not a fact about them — the same line that keeps job executions, entitlement limits and unread\n // counters out of the inventory. The three below are the other side of it: how the person wants to\n // be CONTACTED, what they decided about their own privacy, and where and in what language they\n // are — each a fact about them that a notice owes an answer on.\n //\n // USAGE rather than a preference-specific category. The vocabulary is deliberately coarse where it\n // is ours: a member per settings screen is a granularity nobody maintains, and it would tell a\n // reader nothing the word \"preferences\" does not.\n notifications: addImpersonalizeWith(\n UserPreferences_NotificationsSchema.default(UserPreferences_NotificationsSchema.parse({}))\n .dataCategories(PersonalDataCategory.USAGE),\n RedactionType.RESET,\n ),\n \n privacy: addImpersonalizeWith(\n UserPrivacySchema.default(UserPrivacySchema.parse({}))\n .dataCategories(PersonalDataCategory.USAGE),\n RedactionType.RESET,\n ),\n \n ui: UserPreferences_UI_ThemeSchema.default(UserPreferences_UI_ThemeSchema.parse({})).isSummaryField(),\n \n // Timezone and locale are the two that most clearly identify something about the person rather\n // than about the session — a timezone narrows where they are, which is why LOCATION rides here.\n // LOCATION as well as USAGE — a timezone and a locale narrow where a person is. RESET returns the\n // application's own defaults, which is what a person who never chose still has.\n regional: addImpersonalizeWith(\n UserPreferences_RegionalSchema.default(UserPreferences_RegionalSchema.parse({})).isSummaryField()\n .dataCategories([PersonalDataCategory.USAGE, PersonalDataCategory.LOCATION]),\n RedactionType.RESET,\n ),\n \n // Enhanced language preferences\n languagePreferences: addImpersonalizeWith(\n UserLanguagePreferencesSchema.default(UserLanguagePreferencesSchema.parse({})).isSummaryField()\n .dataCategories(PersonalDataCategory.USAGE),\n RedactionType.RESET,\n )\n});\nexport type UserPreferences = z.infer<typeof UserPreferencesSchema>;\n\n/**\n * The hand-authored mirror of the auto-generated `USER_SELF` CONTEXT response.\n *\n * Every field name here MUST be the one `addRelationshipPlaceholders` declares on the generated\n * `contextDto`, i.e. `Resources_SharedUtils.resolveRelationshipObjectIdentity(...).objectFieldName`\n * for the relationship. This schema is a TYPE for consumers (the frontend casts the context read to\n * it, and the auth response embeds it); it does not validate the response, so a name that drifts\n * from the generated DTO is invisible until someone reads a field that is never there.\n *\n * `userSelfPreferences` is PLURAL because `USER_SELF_PREFERENCES` declares\n * `resourceFieldIdentifier: 'userSelfPreferencesId'` and the DTO's field name is that identifier's\n * base — unlike `userSelfProfile`, whose identifier is already singular (`userSelfProfileId`). It\n * read `userSelfPreference` until 2026-09-10, which is the name the POPULATION side used to\n * produce; the generated DTO never declared it, so the populated preferences were Zod-stripped on\n * the way out and no application ever received them (issue #563).\n */\nexport const UserContextSchema = UserSchema.extend({\n // Relationship-based field names — must match the auto-generated context DTO exactly.\n userSelfProfile: UserProfileSchema.optional(),\n userSelfPreferences: UserPreferencesSchema.optional(),\n organizationMembers: z.array(OrganizationMemberSchema).optional(),\n});\nexport type UserContext = z.infer<typeof UserContextSchema>; \n"]}
1
+ {"version":3,"file":"users.shared.schemas.js","sourceRoot":"","sources":["../../../../src/users/users.shared.schemas.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * User Shared Schemas\n * \n * Shared user schemas for frontend and backend with MongoDB compatibility\n */\n\nimport { z } from 'zod';\n\nimport { AppRolesSchema, CORE_APP_ROLES } from '../security/authorizations/roles.shared.schemas';\nimport { UserPrivacySchema } from '../compliance/privacy/privacy.shared.schemas';\nimport { OrganizationMemberSchema } from '../organizations/organization-members.shared.schemas';\nimport { AvailableLanguage, TimezoneSchema, DateFormat, TimeFormat } from '@wildo-ai/presets-components-models';\nimport { EnumMultipleEditMode, z_phone, z_file, FileNature, addDataCategories, addImpersonalizeWith } from '@wildo-ai/zod-decorators';\nimport { RedactionType } from '../compliance/privacy/redaction.shared.schemas';\nimport { PersonalDataCategory } from '../compliance/privacy/personal-data-category.shared.schemas';\n\n/**\n * The address written over a user's `email` when the subject is erased and the row retained.\n *\n * `.invalid` is an RFC 2606 reserved TLD: it can never be registered and never resolves, so an\n * erased address cannot be delivered to, cannot be confused with a live account, and cannot become\n * a real identity if a stray code path ever re-mails it.\n *\n * Exported as ONE named source so the erasure orchestrator, tests and any operator query recognize\n * an erased subject without duplicating the literal.\n */\nexport const ERASED_USER_EMAIL = 'erased@erased.invalid';\n\n/**\n * What a REQUIRED name field becomes when the subject is erased.\n *\n * `firstName` and `lastName` are `min(1)`, so REMOVE is not available to them — nulling a required\n * field would leave a row the schema itself rejects on the next read. MASK with a value that is\n * obviously not a name keeps the row parseable while carrying no information about the person.\n *\n * Deliberately the same placeholder as `ERASED_FILE_NAME_PLACEHOLDER`: a reader meeting `[erased]`\n * in an export or an admin view should not have to learn a second vocabulary to recognise it.\n */\nexport const ERASED_USER_NAME = '[erased]';\n\n/**\n * What an erased EXTERNAL identifier becomes — a provider's own id for the person.\n *\n * Distinct from `ERASED_USER_NAME` despite the same literal, because the two answer different\n * questions and will diverge: a name is displayed to a human, an external id is matched against a\n * provider's records. Merging them would make a future change to either silently change the other.\n */\nexport const ERASED_IDENTITY_VALUE = '[erased]';\n\nexport enum UserStatus {\n ACTIVE = 'ACTIVE',\n INACTIVE = 'INACTIVE',\n SUSPENDED = 'SUSPENDED',\n PENDING_VERIFICATION = 'PENDING_VERIFICATION',\n PENDING_INVITATION = 'PENDING_INVITATION',\n DELETED = 'DELETED'\n}\n\n/**\n * True when a person of this status may still act on their own data — ACTIVE only, the same rule the sign-in,\n * token refresh and request-context gates apply to the person themself.\n *\n * Named for the inbound pipeline (#1629): a USER-scope delivery runs on one person's data, and a handler must\n * not act there for someone who could not act there themself. It is the user-scope twin of\n * `isAuthorityConferringOrganizationStatus`.\n */\nexport function isAuthorityConferringUserStatus(status: UserStatus | undefined): boolean {\n return status === UserStatus.ACTIVE;\n}\n\nexport enum UserTheme {\n LIGHT = 'LIGHT',\n DARK = 'DARK',\n AUTO = 'AUTO'\n}\n\nexport const UserSchema = z.object({\n _id: z.string().min(1).isPrimaryKey().isSummaryField(),\n /**\n * Email is the STRICT unique identity anchor — there is never more than one\n * `User` per email. `.isUnique()` is the fail-closed DB backstop; every\n * provisioning path (self-registration, org-admin invite, SSO JIT, SCIM,\n * anonymous transposition) MUST find-or-create by this normalized value rather\n * than blind-create, and recover from the duplicate-key `409` on the rare\n * concurrent race (e.g. an invite and an SSO JIT landing at once). `.toLowerCase()`\n * normalizes before both the lookup and the unique check so casing can't fork an\n * identity. `.excludeFromUpdate()` keeps the anchor immutable.\n *\n * **It is also the ONLY personal datum on this row** (the rest is `_id`, status, roles, types and\n * timestamps; names / bio / phone / avatar all live on `USER_PROFILES`). So it is what a subject\n * erasure scrubs — `MASK` to {@link ERASED_USER_EMAIL}, which keeps the row resolvable as an\n * anonymized subject for the retained billing records whose foreign keys point at it.\n *\n * `MASK` with an explicit value rather than `REMOVE`: `REMOVE` writes `null`, which this schema\n * rejects, so it would force `.nullish()` here — widening the identity anchor to\n * `string | null | undefined` for ~20+ consumers (auth registration, password reset, JWT guard,\n * SCIM, SSO provisioning, org invites) AND making it optional at CREATE, to represent a state only\n * the audited see-through reader can ever observe, since a retained row is hidden from every\n * normal read. The default mask constant cannot be used either — it is not a valid email.\n * Every erased user shares this one address; that cannot collide, because the unique index on a\n * retention-governed resource covers only non-retained rows and the scrub flips the row to\n * `RETAINED` in the same write.\n */\n email: addDataCategories(\n addImpersonalizeWith(\n z.email().isDBIndexed().isUnique().toLowerCase().isSummaryField().excludeFromUpdate(),\n RedactionType.MASK,\n { maskValue: ERASED_USER_EMAIL },\n ),\n // Declared because the engine owes its OWN inventory. Without it, every generated application's\n // privacy notice would name `users.email` as an outstanding category gap — the field carries a\n // scrub treatment, which is the application saying it holds personal data, so the missing\n // category would be a provable omission the framework left for each app to fix. CONTACT_DETAILS\n // rather than IDENTITY: it is how the person is reached. That it also serves as the identity\n // anchor is a property of this schema, not of the datum.\n PersonalDataCategory.CONTACT_DETAILS,\n ),\n /**\n * WHEN this address was proven to be reachable by the person who holds the account — and nothing else.\n *\n * ## Why a moment, and why it is not `status` (#1285)\n *\n * `email_verified` is an OIDC claim this application ISSUES to relying parties, and it was derived\n * from `UserStatus.ACTIVE`. ACTIVE does not mean the address was proven: with\n * `EmailVerificationMode.DEFERRED`, and on the password-less path, registration creates an ACTIVE\n * account precisely so the emailed link can be the way in — the address is proven when the link is\n * CLICKED, which may be later or never. So an application could assert to every relying party that\n * an address was verified when nothing had verified it.\n *\n * The registration flow already knows the difference and says so at its own site: *\"The status gate\n * and the verification gate are not the same gate, and conflating them is what makes this look wrong\n * at first glance.\"* This field is that sentence made readable by everything downstream.\n *\n * ## Absent is UNKNOWN, never false\n *\n * There is no backfill, so an account verified before this field existed carries nothing. Readers\n * therefore treat absence as unknown and OMIT the claim — which is the doctrine\n * `oidc-user-claims.backend.service.ts` already states for itself: *\"assert the claim only when the\n * status determines it; omit it otherwise rather than assert an unknown state.\"* Absence must not\n * become `false`: that would tell a relying party an address is unverified when it may well have\n * been, which is a different false statement rather than a safer one.\n *\n * Mirrors `UserCredentials.phoneVerifiedAt`, which has recorded the same fact for the phone channel\n * since SMS OTP shipped. Email was the channel with no record at all.\n *\n * NOT `.isAuditEvidence()`, for the reason the block below gives about `email`: the act is already\n * recorded as its own auditable event (`logUserEmailVerified`), and a moment beside a masked\n * identity anchor does not decide authority.\n */\n emailVerifiedAt: z.date().optional().excludeFromCreate().excludeFromUpdate(),\n // The three fields below carry `.isAuditEvidence()`: their VALUES are recorded before-and-after on\n // the `resource_operation_performed` audit event. All three decide what the principal may do, and\n // all three hold closed vocabulary rather than personal data — so recording them is both necessary\n // as authorization evidence and free of personal data whose erasure obligations could reach the\n // immutable ledger.\n //\n // Contrast `email` directly above, which is deliberately NOT marked: it is the identity anchor and\n // is `.impersonalizeWith(MASK)`, i.e. a value the framework must be able to scrub on erasure.\n // Copying it into an unscrubbable audit row would defeat that capability. That is the whole D4\n // boundary in one file — mark what decides authority, never what identifies a person.\n /**\n * Account lifecycle and access posture.\n *\n * `.excludeFromUpdate()` since 2026-08-01. Lifecycle transitions belong to the dedicated verbs —\n * `users | suspend_user` / `unsuspend_user` and `user_self | deactivate_account` /\n * `reactivate_account` — which own the state machine, the reason, the audit event and the\n * administrative-continuity floors. A generic field patch reproduces none of that, so accepting\n * `status` on the ordinary UPDATE contract meant an administrator could retire an account through\n * a door that asked none of those questions. Mirrors `OrganizationMemberSchema.status`, whose\n * JSDoc has described the same rule for the same reason since before these verbs existed.\n *\n * ⚠️ The trusted server-side writers must therefore use `updateAsSystem`, which re-attaches the\n * field past the repository's strict request-DTO re-parse — email verification\n * (`PENDING_VERIFICATION → ACTIVE`), SCIM re-activation, and SCIM/IdP deprovisioning. All four\n * were migrated in the same change, and `USERS` opts into `systemAccessPolicy.update` for exactly\n * them. A NEW trusted writer that reaches for `servicesRegistryHandler.update` here will be\n * SILENTLY stripped — the account simply never changes state, with no error and no signal.\n *\n * assurance-control: WILDO.IDENTITY.LIFECYCLE — a change to whether a principal may authenticate\n * runs through one guarded, evidenced authority.\n */\n status: z.enum(UserStatus).default(UserStatus.ACTIVE).isDBIndexed().isSummaryField().isAuditEvidence().excludeFromUpdate(),\n appRoles: z.array(AppRolesSchema).default([CORE_APP_ROLES.APP_USER]).isDBIndexed().isAuditEvidence(),\n /** User types from config (e.g. 'user', 'admin', 'consumer'). Determines auth policy, registration context. */\n userTypes: z.array(z.string()).default([]).isDBIndexed().isAuditEvidence(),\n /**\n * When an automated sweep must return this account to `ACTIVE`.\n *\n * Written only by `users | suspend_user`, whose contract takes `suspensionDuration` in DAYS. The\n * transition hook resolves that duration to an absolute instant before persisting, because a\n * duration is only meaningful relative to a moment the row does not otherwise record.\n *\n * Voluntary `user_self | deactivate_account` deliberately has no schedule: an INACTIVE account\n * returns only when its subject calls `reactivate_account`. Absent therefore means an indefinite\n * admin suspension or a non-scheduled lifecycle state.\n *\n * Server-owned (`.excludeFromCreate().excludeFromUpdate()`) so the transition verbs are the only\n * writers, and indexed because the reactivation sweep queries exactly \"rows whose scheduled\n * reactivation has passed\". Deliberately NOT `.isAuditEvidence()`: unlike the three fields above\n * it does not decide what the principal may do — it is a scheduling detail, and the transition's\n * own audit event already records the reason and the resulting status.\n *\n * ⚠️ For admin suspension, the value is a PROMISE the reactivation batch keeps. Persisting it without that sweep would\n * be the same defect as a verb answering success while writing nothing: an authored intention\n * that nothing honors.\n */\n scheduledReactivationAt: z.date().optional().isDBIndexed().excludeFromCreate().excludeFromUpdate(),\n createdAt: z.date().default(() => new Date()).isDBIndexed().isSummaryField().excludeFromCreate().excludeFromUpdate(),\n updatedAt: z.date().default(() => new Date()).isDBIndexed().excludeFromCreate().excludeFromUpdate()\n});\nexport type User = z.infer<typeof UserSchema>;\n\nexport const UserLanguagePreferencesSchema = z.object({\n primaryLanguage: z.enum(AvailableLanguage).systemEnum('AvailableLanguage').default(AvailableLanguage.EN).isSummaryField().describe(\"The language this user reads the application in, and the language of the notification and password-reset emails sent to them. In the interface, the organization's primary language takes precedence when the organization enforces it or the user opts into the organization default, and a language the application does not offer is ignored. Defaults to `en`.\"),\n /**\n * The languages to use, in order, when `primaryLanguage` is one the application does not offer (#1799).\n *\n * Read in two places, through one ordering: the interface's language resolution tries them after the\n * primary language and before anything it remembers or detects; the recipient language of a\n * notification or password-reset email tries them after the primary language and before the user's\n * regional locale. Each is used only if the application (and, in the interface, the organization)\n * offers it. It was stored and edited and read by nothing until then.\n *\n * Defaults to EMPTY, not `[en]`: a fixed English default would quietly override the application's\n * own fallback language for every user who never set this.\n *\n * Compact multi-select: render as a chips combobox (searchable popover) instead of a full inline\n * checkbox column — `multipleEditMode: COMBOBOX` on the array item is the opt-in the multiple enum\n * control reads (`resolveEnumMultipleEditMode`). The single-select `editMode` means nothing on an array item. Fits a settings-row layout where the long language list would\n * otherwise overflow.\n */\n fallbackLanguages: z\n .array(z.enum(AvailableLanguage).systemEnum('AvailableLanguage').enumUI({ edit: { multipleEditMode: EnumMultipleEditMode.COMBOBOX } }))\n .default([])\n .describe('Languages to use, in order, when `primaryLanguage` is not one the application offers — in the interface, and for the notification and password-reset emails sent to this user. A language the application does not offer is skipped. Empty by default, which leaves the application\\'s own fallback in charge.'),\n // `autoDetect` was removed (#1799). It was consulted only after the primary language had failed AND\n // nothing was remembered, which for a signed-in user with the default `en` primary is effectively\n // never. The application-level `appPreferences.languages.autoDetectFromBrowser` still governs the one\n // case that remains, a first visit before anyone has signed in.\n useOrganizationDefault: z.boolean().default(false).describe(\"When true, the interface uses the organization's primary language instead of this user's own `primaryLanguage`. Defaults to false.\"),\n});\nexport type UserLanguagePreferences = z.infer<typeof UserLanguagePreferencesSchema>;\n\nexport const UserProfileSchema = z.object({\n _id: z.string().min(1).isPrimaryKey().isSummaryField(),\n // `.isUnique()`: one profile per user (1:1 composition). Backstops the eager\n // `onParentCreate` seed + the provisioning paths against a concurrent\n // double-create — the durable idempotency guarantee behind the declarative seed.\n userId: z.string().min(1).isDBIndexed().isUnique().isForeignKey().isSummaryField().excludeFromUpdate(),\n firstName: addImpersonalizeWith(\n z.string().min(1).max(50).isSummaryField().dataCategories(PersonalDataCategory.IDENTITY),\n RedactionType.MASK,\n { maskValue: ERASED_USER_NAME },\n ),\n lastName: addImpersonalizeWith(\n z.string().min(1).max(50).isSummaryField().dataCategories(PersonalDataCategory.IDENTITY),\n RedactionType.MASK,\n { maskValue: ERASED_USER_NAME },\n ),\n displayName: addImpersonalizeWith(\n z.string().max(100).optional().isSummaryField().dataCategories(PersonalDataCategory.IDENTITY),\n RedactionType.REMOVE,\n ),\n /**\n * Profile avatar — a single uploaded square image (≤ 2 MB, ≤ 1024px), stored\n * as the standard file reference `{ fileId, updatedAt }` and rendered as a\n * square avatar. Uses the plain `z_file()` image pipeline (upload / storage /\n * DTO / persistence / metadata population) with no bespoke field type; the\n * `aspectRatio 1:1` constraint enforces the square crop. Upload-only — there\n * is no external-URL branch.\n */\n // REMOVE nulls the stored `{ fileId, updatedAt }` reference AND the underlying file is deleted.\n //\n // Corrected 2026-09-17: this said the stored object was NOT deleted, on the grounds that file bytes\n // belong to the file resource's own lifecycle. That is not what the engine does. `userProfiles`\n // declares a `retentionPolicy`, so `impersonalizeRowsInPlace` governs it; this field is a personal\n // file field (REMOVE, not KEEP); and that scrub's own comment states the rule — \"a field-level\n // scrub cannot reach INSIDE a stored blob, so a file field marked personal is only erased by\n // deleting the file\". The deletion is sequenced as a post-commit effect on the parent transaction\n // so a rolled-back scrub can never destroy files for a row that stayed live.\n //\n // The old comment under-claimed, which is the safer direction and still false — and it was\n // load-bearing: `remove_avatar` was acknowledged as unimplementable partly by reasoning from it\n // (#1275). A schema comment about what the product does is a claim, and this one had never been\n // checked against the code it described.\n avatar: addImpersonalizeWith(\n z_file({\n nature: FileNature.IMAGE,\n allowedMimeTypes: 'Images',\n maxSize: 2 * 1024 * 1024,\n imageConstraints: {\n maxWidth: 1024,\n maxHeight: 1024,\n aspectRatio: { width: 1, height: 1 },\n generateThumbnails: true,\n },\n }).optional().dataCategories(PersonalDataCategory.IDENTITY),\n RedactionType.REMOVE,\n ),\n // Free prose the person wrote about themselves. USER_CONTENT says what the field is FOR, never\n // what it will contain — a bio is a classic surface where a special category (a health condition,\n // a religious observance, a political affiliation) arrives unannounced, and no schema certifies\n // otherwise. Nothing here is a claim that it does NOT contain one.\n bio: addImpersonalizeWith(\n z.string().max(500).optional().dataCategories(PersonalDataCategory.USER_CONTENT),\n RedactionType.REMOVE,\n ),\n /**\n * E.164 phone number (e.g. \"+33123456789\"). `z_phone()` carries the phone\n * metadata that drives the international phone INPUT on edit (country selector +\n * national number) and the formatted international DISPLAY on read — replacing\n * the old raw `z.string().regex(...)` that surfaced the regex to the user.\n * Stored value is still a plain E.164 string, so DTO/persistence are unchanged.\n */\n //\n // A phone number is contact-detail personal data by definition, so both declarations are\n // load-bearing here rather than a curiosity.\n //\n // The helper form is kept DELIBERATELY, and the reason changed on 2026-09-17. It used to be the\n // only form that worked: `z_phone()` ends in `.pipe(z.string())`, so its constructor is `ZodPipe`,\n // a name in no applyable-type list — and the per-instance decorator install keys on that name, so\n // a phone schema carried NO decorators at all and the fluent form threw. That gap is closed and\n // `z_phone().dataCategories(…).impersonalizeWith(…)` now works. What keeps the helper here is that\n // it needs no prototype method at all, which makes this field's classification independent of the\n // decorator-install path entirely — worth having on the one field whose misclassification is a\n // privacy incident rather than a rendering bug.\n phoneNumber: addImpersonalizeWith(\n addDataCategories(z_phone().optional(), PersonalDataCategory.CONTACT_DETAILS),\n RedactionType.REMOVE,\n ),\n title: addImpersonalizeWith(\n z.string().max(100).optional().dataCategories(PersonalDataCategory.PROFESSIONAL),\n RedactionType.REMOVE,\n )\n});\nexport type UserProfile = z.infer<typeof UserProfileSchema>;\n\nexport const UserPreferences_NotificationsSchema = z.object({\n email: z.boolean().default(true).describe(\"When false, notification emails about the user's own account are not sent to them. Emails the user receives because of a role they hold, notices marked as always delivered, and account-recovery emails such as password reset are sent regardless. Defaults to true.\"),\n // `push` and `sms` were removed (#1799): the dispatcher sent neither channel — it logged \"not yet\n // implemented\" and returned — and no notification declared either, so a user who turned push off \"to\n // stop notifications\" turned off nothing. They come back with a channel that actually delivers.\n inApp: z.boolean().default(true).describe(\"When false, the application's interface stops showing this user the real-time notifications the server sends them, as pop-ups or in the notification centre. Data on screen keeps updating live. Defaults to true.\")\n});\nexport type UserPreferences_Notifications = z.infer<typeof UserPreferences_NotificationsSchema>;\n\nexport const UserPreferences_UI_ThemeSchema = z.object({\n theme: z.enum(UserTheme).default(UserTheme.AUTO).isSummaryField().describe(\"The colour scheme the interface uses for this user: `LIGHT`, `DARK`, or `AUTO` to follow the device's system setting. Applied whenever the user's preferences load, so the choice follows them across devices. Defaults to `AUTO`.\"),\n});\nexport type UserPreferences_UI_Theme = z.infer<typeof UserPreferences_UI_ThemeSchema>;\n\n/**\n * A member's OWN regional choices — and every field is OPTIONAL, deliberately.\n *\n * **Absence is a real state and it is the point of this block**: it means the member has expressed\n * no preference, so the value comes from the organization's own regional record\n * (`OrganizationPreferences.timezone` / `.locale` / `.dateFormat` / `.timeFormat`), and only then\n * from the framework fallback. `I18nContext` resolves that chain — member, then organization, then\n * framework — and it can only do so because an unexpressed preference is representable here.\n *\n * All four carried a Zod `.default(...)` until 2026-09-08 (#410), and the defaults were not a\n * convenience: they made the organization layer UNIMPLEMENTABLE. A `.default()` MATERIALIZES at\n * parse, so every member with a preferences row carried `'UTC'`, `EN`, `LOCALE_DEFAULT` and\n * `TWENTY_FOUR_HOUR` whether or not they had ever opened the settings screen — indistinguishable\n * from having chosen them. A tenant that set `Europe/Paris` could never reach a single member,\n * because there was no member left who had not \"expressed\" UTC.\n *\n * The same shape had already cost a decision elsewhere: `cancelImmediately: z.boolean().default(false)`\n * made \"the caller expressed no cancellation preference\" unobservable, which is why the authored\n * `defaultBehavior` policy beneath it was unimplementable rather than merely unimplemented (#408).\n * A default one layer up erases the state the layer beneath exists to answer for.\n *\n * `locale` in particular was also WRONG on its own terms. `I18nContext` resolves it as\n * `regional.locale ?? currentLanguage ?? 'en'`, so a materialized `EN` meant the left side always\n * won and the resolved UI language was never consulted: a member using the application in French\n * got `en` date, time and number formatting. Removing the default is what lets that `??` chain do\n * what it was written to do.\n *\n * Note what did NOT change: the framework's fallbacks are unchanged, and they are still exactly\n * these four values. A member in a tenant that has authored nothing sees precisely what they saw\n * before — the difference is only that a tenant which HAS authored something is now heard.\n */\nexport const UserPreferences_RegionalSchema = z.object({\n timezone: TimezoneSchema.optional().isSummaryField().describe(\"The IANA time zone (for example `Europe/Paris`) in which the interface shows dates and times to this user. When omitted, the organization's time zone applies, then UTC.\"),\n // LOCALE_DEFAULT (not ISO_8601) remains the framework FALLBACK, resolved in `I18nContext`: \"no\n // expressed preference\" must mean locale-driven rendering. Storing it here would pin every\n // preference-less member to it and mask both the organization layer and the locale fallback.\n dateFormat: z.enum(DateFormat).systemEnum('DateFormat').optional().describe(\"How the interface shows dates to this user: `LOCALE_DEFAULT` follows the conventions of the resolved locale, every other value is a fixed pattern. When omitted, the organization's date format applies, then `LOCALE_DEFAULT`.\"),\n timeFormat: z.enum(TimeFormat).systemEnum('TimeFormat').optional().describe(\"Whether the interface shows times to this user on a 12-hour (`12h`) or 24-hour (`24h`) clock. When omitted, the organization's setting applies, then `24h`.\"),\n locale: z.enum(AvailableLanguage).systemEnum('AvailableLanguage').optional().isSummaryField().describe(\"The language tag (for example `en-GB`) whose conventions the interface uses to format dates, times and numbers for this user. When omitted, the organization's locale applies, then the language the interface is shown in. It is also published as the `locale` claim to OpenID Connect clients.\")\n});\nexport type UserPreferences_Regional = z.infer<typeof UserPreferences_RegionalSchema>;\n\n/**\n * The preference blocks a caller can address as a unit — the closed vocabulary behind\n * `reset_to_defaults` on USER_SELF_PREFERENCES.\n *\n * **Every value IS the persisted field name on {@link UserPreferencesSchema}.** That is the\n * point of the enum, not a coincidence: it lets the reset patch be DERIVED from the vocabulary\n * instead of routed through a hand-written flag-to-field map. The previous contract was six\n * booleans (`resetNotifications`, `resetUI`, …) that named no schema path, so the whole request\n * was stripped before persistence and the route answered 200 having reset nothing.\n *\n * Adding a preference group to the schema means adding a member here; the mapped type in\n * `user-preferences-reset.shared.utils.ts` then refuses to compile until the group declares how\n * it resets. Renaming a group field without renaming the value fails the same way.\n *\n * Note `LANGUAGE = 'languagePreferences'` — the member reads as the concept, the value is the\n * field. Do not \"tidy\" the value to `language`; it is an address, not a label.\n */\nexport enum UserPreferenceGroup {\n NOTIFICATIONS = 'notifications',\n PRIVACY = 'privacy',\n UI = 'ui',\n REGIONAL = 'regional',\n LANGUAGE = 'languagePreferences',\n}\n\nexport const UserPreferencesSchema = z.object({\n _id: z.string().min(1).isPrimaryKey().isSummaryField(),\n // `.isUnique()` is the idempotency backstop for onParentCreate seeding: the eager\n // seed (and any retry) is deduplicated at the DB layer — a second seed for the same\n // user fails the unique constraint and is swallowed, guaranteeing exactly one\n // preferences row per user. (Prod migration note: dedupe any pre-existing duplicate\n // userId rows before this index builds; preferences was seeded nowhere pre-feature,\n // so duplicates are unexpected.)\n userId: z.string().min(1).isDBIndexed().isUnique().isForeignKey().isSummaryField().excludeFromUpdate(),\n // ── Which preference blocks are data ABOUT the person, and which are rendering state ──\n //\n // Declared at the BLOCK, not on the leaves inside it. The resolver walks TOP-LEVEL fields only —\n // the same limit the subject-export compiler and the impersonalize writer have — so a category on\n // `regional.timezone` would be invisible. That is not a workaround: a notice enumerates KINDS, and\n // \"communication preferences\" is the kind, not \"the sms boolean\".\n //\n // `ui` is deliberately NOT declared. A theme choice is about how the SYSTEM renders for someone,\n // not a fact about them — the same line that keeps job executions, entitlement limits and unread\n // counters out of the inventory. The three below are the other side of it: how the person wants to\n // be CONTACTED, what they decided about their own privacy, and where and in what language they\n // are — each a fact about them that a notice owes an answer on.\n //\n // USAGE rather than a preference-specific category. The vocabulary is deliberately coarse where it\n // is ours: a member per settings screen is a granularity nobody maintains, and it would tell a\n // reader nothing the word \"preferences\" does not.\n notifications: addImpersonalizeWith(\n UserPreferences_NotificationsSchema.default(UserPreferences_NotificationsSchema.parse({}))\n .dataCategories(PersonalDataCategory.USAGE),\n RedactionType.RESET,\n ),\n \n // CREATE cannot carry the consent decision, because the row is SEEDED (the USERS → USER_PREFERENCES\n // `onParentCreate` composition writes only the parent key) and a person has decided nothing at that\n // point. Every door that writes a decision emits a row: the gate, the self and admin UPDATE, the\n // RESET, and `carry_anonymous_consent`. CREATE sits below the automatic audit floor, so a consent\n // accepted there would be stored with no trace, which is what\n // `evidence-requirement:consent-decision-transition-record` C2 forbids. The control marker for that\n // objective sits on the decision leaf itself (`UserPrivacySchema.consentedPurposes`); this site only\n // narrows which verbs can reach it.\n privacy: addImpersonalizeWith(\n UserPrivacySchema.default(UserPrivacySchema.parse({}))\n .dataCategories(PersonalDataCategory.USAGE)\n .excludeFromCreate(),\n RedactionType.RESET,\n ),\n \n ui: UserPreferences_UI_ThemeSchema.default(UserPreferences_UI_ThemeSchema.parse({})).isSummaryField(),\n \n // Timezone and locale are the two that most clearly identify something about the person rather\n // than about the session — a timezone narrows where they are, which is why LOCATION rides here.\n // LOCATION as well as USAGE — a timezone and a locale narrow where a person is. RESET returns the\n // application's own defaults, which is what a person who never chose still has.\n regional: addImpersonalizeWith(\n UserPreferences_RegionalSchema.default(UserPreferences_RegionalSchema.parse({})).isSummaryField()\n .dataCategories([PersonalDataCategory.USAGE, PersonalDataCategory.LOCATION]),\n RedactionType.RESET,\n ),\n \n // Enhanced language preferences\n languagePreferences: addImpersonalizeWith(\n UserLanguagePreferencesSchema.default(UserLanguagePreferencesSchema.parse({})).isSummaryField()\n .dataCategories(PersonalDataCategory.USAGE),\n RedactionType.RESET,\n )\n});\nexport type UserPreferences = z.infer<typeof UserPreferencesSchema>;\n\n/**\n * The hand-authored mirror of the auto-generated `USER_SELF` CONTEXT response.\n *\n * Every field name here MUST be the one `addRelationshipPlaceholders` declares on the generated\n * `contextDto`, i.e. `Resources_SharedUtils.resolveRelationshipObjectIdentity(...).objectFieldName`\n * for the relationship. This schema is a TYPE for consumers (the frontend casts the context read to\n * it, and the auth response embeds it); it does not validate the response, so a name that drifts\n * from the generated DTO is invisible until someone reads a field that is never there.\n *\n * `userSelfPreferences` is PLURAL because `USER_SELF_PREFERENCES` declares\n * `resourceFieldIdentifier: 'userSelfPreferencesId'` and the DTO's field name is that identifier's\n * base — unlike `userSelfProfile`, whose identifier is already singular (`userSelfProfileId`). It\n * read `userSelfPreference` until 2026-09-10, which is the name the POPULATION side used to\n * produce; the generated DTO never declared it, so the populated preferences were Zod-stripped on\n * the way out and no application ever received them (issue #563).\n */\nexport const UserContextSchema = UserSchema.extend({\n // Relationship-based field names — must match the auto-generated context DTO exactly.\n userSelfProfile: UserProfileSchema.optional(),\n userSelfPreferences: UserPreferencesSchema.optional(),\n organizationMembers: z.array(OrganizationMemberSchema).optional(),\n});\nexport type UserContext = z.infer<typeof UserContextSchema>; \n"]}