@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
@@ -1 +1 @@
1
- {"version":3,"file":"consumable-token.shared.schemas.js","sourceRoot":"","sources":["../../../../src/security/authentications/consumable-token.shared.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,+EAA+E;AAC/E,uEAAuE;AACvE,+EAA+E;AAE/E,MAAM,CAAN,IAAY,wBAoEX;AApED,WAAY,wBAAwB;IAChC,6FAAiE,CAAA;IACjE,6DAAiD,CAAA;IACjD,qEAAqD,CAAA;IACrD,qEAAqD,CAAA;IACrD,yDAA+C,CAAA;IAC/C,+EAA0D,CAAA;IAC1D,yEAAuD,CAAA;IACvD,wFAAwF;IACxF,qEAAqD,CAAA;IACrD,kEAAkE;IAClE,mDAA4C,CAAA;IAC5C,+EAA+E;IAC/E,qDAA6C,CAAA;IAC7C,qEAAqE;IACrE,+CAA0C,CAAA;IAC1C,sFAAsF;IACtF,qEAAqD,CAAA;IACrD,yEAAyE;IACzE,+DAAkD,CAAA;IAClD,kEAAkE;IAClE,6CAAyC,CAAA;IACzC;;;;;OAKG;IACH,+EAA0D,CAAA;IAC1D;;;;;;;;OAQG;IACH,yEAAuD,CAAA;IACvD;;;;;;;;;;;OAWG;IACH,iFAA2D,CAAA;IAC3D;;;;;;;;;;;;;;OAcG;IACH,mEAAoD,CAAA;AACxD,CAAC,EApEW,wBAAwB,KAAxB,wBAAwB,QAoEnC;AAED,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC;IAC9C,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC;IAChC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACpB,CAAC,CAAC;AAMH,+EAA+E;AAC/E,qEAAqE;AACrE,+EAA+E;AAE/E;;;;;;GAMG;AACH,MAAM,CAAN,IAAY,+BAIX;AAJD,WAAY,+BAA+B;IACvC,4DAA8B,CAAA;IAC9B,kEAAiC,CAAA;IACjC,sEAAmC,CAAA;AACvC,CAAC,EAJW,+BAA+B,KAA/B,+BAA+B,QAI1C;AAkLD;;;;GAIG;AACH,MAAM,CAAN,IAAY,yBAGX;AAHD,WAAY,yBAAyB;IACjC,wDAA2B,CAAA;IAC3B,kDAAqB,CAAA;AACzB,CAAC,EAHW,yBAAyB,KAAzB,yBAAyB,QAGpC","sourcesContent":["import { z } from \"zod\";\nimport type { ExpiresInDuration } from \"@wildo-ai/zod-decorators\";\nimport type { ExecutionContext_RoleInfo } from \"../../runtime/execution-context.shared.schemas\";\n\n\n// ============================================================================\n// CONSUMABLE TOKEN TYPES — Extensible enum of engine-level token types\n// ============================================================================\n\nexport enum CoreConsumableTokenTypes {\n ORGANIZATION_MEMBER_INVITATION = 'organization_member_invitation',\n PASSWORD_RESET = 'password_reset',\n EMAIL_VERIFICATION = 'email_verification',\n FILE_PUBLIC_ACCESS = 'file_public_access',\n OAUTH2_STATE = 'oauth2_state',\n EXTERNAL_CALLBACK_STATE = 'external_callback_state',\n WEBHOOK_VERIFICATION = 'webhook_verification',\n /** Delivers JWT tokens to the frontend after OAuth2 callback processing (Decision 7) */\n AUTH_CODE_EXCHANGE = 'auth_code_exchange',\n /** Email OTP code for MFA second factor verification (Step 10) */\n EMAIL_OTP = 'email_otp',\n /** Magic link token for passwordless first-factor authentication (Phase G2) */\n MAGIC_LINK = 'magic_link',\n /** SMS OTP code for first/second factor authentication (Phase G2) */\n SMS_OTP = 'sms_otp',\n /** Phone number verification code — not an auth flow, just verification (Phase G2) */\n PHONE_VERIFICATION = 'phone_verification',\n /** SAML AuthnRequest correlation state (AUTH-2: SAML Protocol Engine) */\n SAML_AUTH_STATE = 'saml_auth_state',\n /** Re-authentication token for sensitive method changes (#13f) */\n REAUTH = 'reauth',\n /**\n * OIDC authorization code (Wildo-as-provider authorization_code flow). Single-use,\n * short-TTL; its metadata binds the code to the authenticated `userId`, the requesting\n * `clientId`, the granted `scope`, the `redirectUri`, the PKCE `codeChallenge`, and the\n * optional `nonce`. Redeemed at the token endpoint for an ID token + access + refresh.\n */\n OIDC_AUTHORIZATION_CODE = 'oidc_authorization_code',\n /**\n * OIDC interactive-consent request (Wildo-as-provider authorization_code consent gate). Minted at\n * `/oauth/authorize` for a client whose `requiresConsent` is true, INSTEAD of auto-issuing the\n * code. Single-use, short-TTL; its metadata carries the SAME authorization request the code would\n * bind (`clientId`, `scope`, `redirectUri`, `codeChallenge`, `nonce?`, `resource?`, `state?`)\n * plus the authenticated `userId`. Consumed at `/oauth/authorize/decision`: on APPROVE it mints\n * the authorization code from the stored request; on DENY the flow ends with `access_denied`.\n * Storing the request server-side means the consent decision cannot tamper with the parameters.\n */\n OIDC_CONSENT_REQUEST = 'oidc_consent_request',\n /**\n * OIDC RP-Initiated Logout confirmation (revocation-C §6 — the logout-confirmation prompt that\n * mitigates BROWSER-based logout CSRF; a cross-origin page cannot read this token from the victim's\n * URL to complete the confirm). Minted at `GET /oauth/end-session` for any request that is NOT a\n * trusted RP logout (no/forged `id_token_hint`, or a valid hint whose `post_logout_redirect_uri`\n * is absent / unregistered / mismatched), INSTEAD of terminating the session inline. Single-use,\n * short-TTL; its metadata carries the already-validated `{ userId?, sessionId? }` the confirm step\n * acts on (storing it server-side means the confirmation cannot tamper with WHICH session ends).\n * Consumed at `POST /oauth/end-session/confirm`: on confirm it terminates that session (if any) and\n * lands on `/oauth/logged-out`. A trusted RP logout (valid hint + exact-match registered redirect)\n * skips this entirely and terminates + redirects to the RP directly — the Keycloak-style posture.\n */\n OIDC_LOGOUT_CONFIRMATION = 'oidc_logout_confirmation',\n /**\n * A single-use grant to upload ONE file into ONE resource file field, minted by a principal who\n * could perform the target CREATE/UPDATE and redeemed by whoever holds it — an AI agent's `curl`,\n * or a human on the drop page — without the minter's own credential ever leaving the server.\n *\n * Exists because MCP tool arguments are model-generated JSON and cannot carry bytes; see #312.\n * `SINGLE_USE` only (a reusable upload credential is the presigned-URL defect rebuilt inside\n * the API). Typed fields carry identity — `userId`/`organizationId`/`roles` snapshot of the\n * minter, `resourceIdentifier` = target resource, `relatedId` = target row for UPDATE — and\n * `metadata` carries the ROUTE binding (`fieldName`, `operation`, `minter`, `producedFileId`),\n * which the upload middleware checks and the identity layer deliberately ignores. Lifetime is\n * bounded at the mint by `FILE_UPLOAD_GRANT_ABSOLUTE_MAX_MINUTES`, rejecting rather than\n * clamping: this credential is designed to leave the trust boundary (a transcript, a shell\n * history), so the engine owns the bound.\n */\n FILE_UPLOAD_GRANT = 'file_upload_grant',\n}\n\nexport const ConsumableTokenTypesSchema = z.union([\n z.enum(CoreConsumableTokenTypes),\n z.string().min(1),\n]);\n\n\nexport type ConsumableTokenTypes = z.infer<typeof ConsumableTokenTypesSchema>;\n\n\n// ============================================================================\n// CONSUMPTION MODE — Three behavioral categories for token lifecycle\n// ============================================================================\n\n/**\n * Defines how a token behaves when used.\n *\n * - `SINGLE_USE`: Consumed after first successful use (password reset, invitation acceptance)\n * - `BOUNDED_REUSE`: Can be used N times or until expiry (file sharing link, meeting join link)\n * - `EPHEMERAL_STATE`: Carries state through a redirect, consumed on callback (OAuth state, payment callback)\n */\nexport enum ConsumableToken_ConsumptionMode {\n SINGLE_USE = 'SINGLE_USE',\n BOUNDED_REUSE = 'BOUNDED_REUSE',\n EPHEMERAL_STATE = 'EPHEMERAL_STATE',\n}\n\n\n// ============================================================================\n// UTILITY TYPE — StaticOrDerived<T>\n// ============================================================================\n\n/**\n * A value that can either be provided statically or derived from the operation result at runtime.\n *\n * Static: `{ value: 7, unit: 'days' }`\n * Derived: `(currentObject) => ({ value: currentObject.shareDurationDays, unit: 'days' })`\n *\n * NOTE: This is intentionally NOT `ResourceConfiguration_FunctionWithContextNeeds` (R5).\n * `FunctionWithContextNeeds` wraps functions with metadata flags (`needsObjectContext`, `needsUserContext`)\n * for factory introspection. `StaticOrDerived<T>` is simpler — it's just \"literal value OR function from\n * currentObject\" with no metadata flags. The factory marks dynamic values as `_isDynamic` during\n * processing, which is a different mechanism entirely.\n */\nexport type StaticOrDerived<T> = T | ((currentObject: Record<string, any>) => T);\n\n\n// ============================================================================\n// DECLARATIVE CONFIG TYPES — For operation variant configuration\n// ============================================================================\n\n/** @wildo_source:part:start saas.models.resource-config.token-generation facet:layer:shared facet:family:resource-config\n *\n * Config-declared gate deciding whether a `tokenGeneration` side-effect actually\n * mints a token, evaluated against the POST-operation row (`currentObject`).\n *\n * WHY the destructured params-object shape `({ currentObject }) => boolean` and NOT\n * the positional `StaticOrDerived` shape used by `expiresIn`/`grantedRoles` above (R5):\n * this deliberately mirrors the operation-variant `enabledCondition` predicate (see the\n * org-members REVOKE/RESEND configs) so an app author writes ONE predicate form for every\n * \"config-declared gate over currentObject\". The trade-off is worth it — cross-surface\n * authoring consistency beats intra-type consistency with the positional derivers.\n *\n * WHY the params object carries ONLY `currentObject` (unlike the notification `condition`,\n * which also gets `inputDto`/`objectContext`/`initiatorIds`): a token is a PERSISTED\n * side-effect keyed on the resulting row, so its gate must depend only on the persisted\n * result — never on raw request input. Narrowing the params to `currentObject` makes that\n * guarantee structural. (It also keeps this type free of the `resources-config` params type,\n * which would be a circular import — `resources-config.shared.schemas` imports FROM here.)\n */\nexport type TokenGenerationCondition = (params: { currentObject: Record<string, any> }) => boolean;\n/** @wildo_source:part:end saas.models.resource-config.token-generation */\n\n/** @wildo_source:part:start saas.models.resource-config.token-generation facet:layer:shared facet:family:resource-config\n *\n * Declarative config for automatic token generation on an operation variant.\n * Placed on CREATE/RESEND-like operations to generate a token as a side-effect.\n *\n * Import from `@wildo-ai/saas-models`; application authors normally provide\n * this shape through an API-call variant in\n * `createResourceConfiguration_Initialization(...)`.\n *\n * The operation pipeline creates the token in the same persistence transaction\n * as the resource mutation, then injects `additionalContext.tokenValue` into\n * post-commit notification dispatch.\n *\n * The contract requires one canonical persisted resource state. It cannot be\n * authored on a collection/aggregate operation, a core bulk mutation, or a\n * variant with `haveBulkOperation: true`; those operations do not expose one\n * unambiguous related resource identity for the generated token.\n *\n * @example\n * `tokenGeneration: { tokenType: MyTokenType.INVITATION, consumptionMode:\n * ConsumableToken_ConsumptionMode.SINGLE_USE, expiresIn: { value: 7, unit:\n * DurationUnit.DAYS }, relatedIdField: '_id' }`\n */\nexport type TokenGenerationConfig = {\n /** Token type identifier (from CoreConsumableTokenTypes or custom app enum) */\n tokenType: ConsumableTokenTypes;\n\n /** How the token behaves when used */\n consumptionMode: ConsumableToken_ConsumptionMode;\n\n /**\n * Expiration duration — static or derived from currentObject.\n * Units: minutes, hours, or days only. Value must be ≥ 1.\n * Static: `{ value: 7, unit: DurationUnit.DAYS }`\n * Derived: `(currentObject) => ({ value: currentObject.shareDurationDays, unit: 'days' })`\n */\n expiresIn: StaticOrDerived<ExpiresInDuration>;\n\n /**\n * Optional gate — mint this token ONLY when the predicate returns truthy against the\n * post-operation row. Absent = always mint.\n *\n * Canonical use: a POLYMORPHIC CREATE (org-member INVITE vs DIRECT-ADD) mints the\n * single-use accept token ONLY for the INVITED branch. A direct-add (founder / SSO-JIT /\n * SCIM) persists `ACTIVE` with nothing to accept, so minting a token there would leave a\n * live single-use accept token dangling on an already-ACTIVE row (a hygiene/security\n * hole). Keying on the resulting `status` — the semantic driver, uniformly present on\n * every branch's `currentObject` — auto-covers any future non-INVITED direct-add path.\n *\n * @example `({ currentObject }) => currentObject.status === OrganizationMemberStatus.INVITED`\n */\n condition?: TokenGenerationCondition;\n\n /**\n * Roles granted when the token is used for authentication.\n * Static: `[{ roles: ['ORG_MEMBER'], relatedPrimaryScope: 'ORGANIZATIONS' }]`\n * Derived: `(currentObject) => [{ roles: [currentObject.assignedRole], relatedPrimaryScope: 'ORGANIZATIONS' }]`\n */\n grantedRoles?: StaticOrDerived<ExecutionContext_RoleInfo[]>;\n\n /** Max uses for BOUNDED_REUSE mode. Required when consumptionMode is BOUNDED_REUSE. */\n maxUses?: number;\n\n /** Revoke existing tokens of same type for same relatedId before creating new one (e.g., RESEND) */\n revokeExistingForSameRelated?: boolean;\n\n /** Field in currentState to use as relatedId. Defaults to '_id' (the resource's own ID). */\n relatedIdField?: string;\n\n /**\n * Field in currentState to capture as the token's userId (user_self pattern).\n * e.g., 'invitedUserId' — if not set, no userId stored on token.\n */\n userIdField?: string;\n\n /**\n * W7.3b: Marks the generated token as exchangeable for a one-off session JWT.\n * When true, the token can be used via POST /auth/one-off-session/exchange.\n */\n createsOneOffSession?: boolean;\n\n /**\n * W7.3b: When the token is consumed — at exchange time or at target operation time.\n * Required when `createsOneOffSession` is true.\n * - `EXCHANGE`: consumed immediately when exchanged for a JWT (no token carried into session)\n * - `TARGET_OPERATION`: carried through the session, consumed when the target operation executes\n */\n consumeAt?: 'EXCHANGE' | 'TARGET_OPERATION';\n\n /**\n * W7.3b: Builds targeting.initiatorIds for frontend URL resolution.\n * Maps field identifier names to field paths in currentState.\n * organizationId is auto-included from execution context if not specified.\n *\n * Example: `{ taskId: '_id' }` → on a Tasks resource, reads `currentState._id` as the taskId.\n * The frontend uses these to resolve the target URL after session exchange.\n */\n targetingFields?: Record<string, string>;\n\n /**\n * Public path of the frontend page that consumes this token (e.g. `/invitation`).\n * When set, the notification dispatcher builds\n * `additionalContext.acceptUrl = <frontendPublicUrl><emailLinkPath>?token=<tokenValue>`\n * for the token-bearing notification email, so the recipient can act on the\n * token straight from the email. Without it, only the raw `tokenValue` is\n * exposed and the email falls back to its generic (sign-in) CTA. Use a stable\n * framework route — the backend cannot import frontend route constants.\n */\n emailLinkPath?: string;\n};\n/** @wildo_source:part:end saas.models.resource-config.token-generation */\n\n/**\n * Declarative config for automatic token revocation on an operation variant.\n * Placed on DELETE-like operations to revoke associated tokens before the resource is removed.\n *\n * Pipeline placement: BEFORE the core operation (pre-operation step).\n * Like token generation, revocation requires one canonical current resource\n * state and cannot be combined with collection/aggregate or authored/generated\n * bulk mutation semantics. It also cannot run on CREATE because no current\n * resource exists before persistence.\n */\nexport type TokenRevocationConfig = {\n /** Which token types to revoke when this operation executes */\n tokenTypes: ConsumableTokenTypes[];\n\n /** Field in currentState to use as relatedId for revocation lookup. Defaults to '_id'. */\n relatedIdField?: string;\n};\n\n/**\n * How a consumable token interacts with JWT/API-key authentication on an operation.\n * ALTERNATIVE: token alone is sufficient (replaces JWT). Used by PASSWORD_RESET, MAGIC_LINK, etc.\n * ADDITIVE: token is required ON TOP of JWT auth. Used by one-off session target operations.\n */\nexport enum TokenAuthenticationPolicy {\n ALTERNATIVE = 'ALTERNATIVE',\n ADDITIVE = 'ADDITIVE',\n}\n\n/**\n * Declarative config declaring that an operation accepts consumable tokens for authentication.\n * Replaces the old `ResourceConfiguration_OperationVariant_ApiCall_ConsumableToken`.\n *\n * NOTE: No `isConsumed` field — consumption is controlled by the token user's `consumptionMode`\n * (set at creation time), not by the operation config. This avoids contradictions between config\n * and entity state (Trap 5).\n */\nexport type TokenAuthenticationConfig = {\n /** Which token types this operation accepts for authentication */\n types: ConsumableTokenTypes[];\n policy: TokenAuthenticationPolicy;\n};\n"]}
1
+ {"version":3,"file":"consumable-token.shared.schemas.js","sourceRoot":"","sources":["../../../../../src/security/authentications/consumable-token.shared.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,+EAA+E;AAC/E,uEAAuE;AACvE,+EAA+E;AAE/E,MAAM,CAAN,IAAY,wBA0FX;AA1FD,WAAY,wBAAwB;IAChC,6FAAiE,CAAA;IACjE,6DAAiD,CAAA;IACjD,qEAAqD,CAAA;IACrD,qEAAqD,CAAA;IACrD,yDAA+C,CAAA;IAC/C,+EAA0D,CAAA;IAC1D,yEAAuD,CAAA;IACvD,wFAAwF;IACxF,qEAAqD,CAAA;IACrD,kEAAkE;IAClE,mDAA4C,CAAA;IAC5C,+EAA+E;IAC/E,qDAA6C,CAAA;IAC7C,qEAAqE;IACrE,+CAA0C,CAAA;IAC1C,sFAAsF;IACtF,qEAAqD,CAAA;IACrD,yEAAyE;IACzE,+DAAkD,CAAA;IAClD;;;;OAIG;IACH,6CAAyC,CAAA;IACzC;;;;;;;;;OASG;IACH,uDAA8C,CAAA;IAC9C;;;;;OAKG;IACH,yEAAuD,CAAA;IACvD;;;;;OAKG;IACH,+EAA0D,CAAA;IAC1D;;;;;;;;OAQG;IACH,yEAAuD,CAAA;IACvD;;;;;;;;;;;OAWG;IACH,iFAA2D,CAAA;IAC3D;;;;;;;;;;;;;;OAcG;IACH,mEAAoD,CAAA;AACxD,CAAC,EA1FW,wBAAwB,KAAxB,wBAAwB,QA0FnC;AAED,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC;IAC9C,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC;IAChC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACpB,CAAC,CAAC;AAMH,+EAA+E;AAC/E,qEAAqE;AACrE,+EAA+E;AAE/E;;;;;;GAMG;AACH,MAAM,CAAN,IAAY,+BAIX;AAJD,WAAY,+BAA+B;IACvC,4DAA8B,CAAA;IAC9B,kEAAiC,CAAA;IACjC,sEAAmC,CAAA;AACvC,CAAC,EAJW,+BAA+B,KAA/B,+BAA+B,QAI1C;AAkLD;;;;GAIG;AACH,MAAM,CAAN,IAAY,yBAGX;AAHD,WAAY,yBAAyB;IACjC,wDAA2B,CAAA;IAC3B,kDAAqB,CAAA;AACzB,CAAC,EAHW,yBAAyB,KAAzB,yBAAyB,QAGpC","sourcesContent":["import { z } from \"zod\";\nimport type { ExpiresInDuration } from \"@wildo-ai/zod-decorators\";\nimport type { ExecutionContext_RoleInfo } from \"../../runtime/execution-context.shared.schemas\";\n\n\n// ============================================================================\n// CONSUMABLE TOKEN TYPES — Extensible enum of engine-level token types\n// ============================================================================\n\nexport enum CoreConsumableTokenTypes {\n ORGANIZATION_MEMBER_INVITATION = 'organization_member_invitation',\n PASSWORD_RESET = 'password_reset',\n EMAIL_VERIFICATION = 'email_verification',\n FILE_PUBLIC_ACCESS = 'file_public_access',\n OAUTH2_STATE = 'oauth2_state',\n EXTERNAL_CALLBACK_STATE = 'external_callback_state',\n WEBHOOK_VERIFICATION = 'webhook_verification',\n /** Delivers JWT tokens to the frontend after OAuth2 callback processing (Decision 7) */\n AUTH_CODE_EXCHANGE = 'auth_code_exchange',\n /** Email OTP code for MFA second factor verification (Step 10) */\n EMAIL_OTP = 'email_otp',\n /** Magic link token for passwordless first-factor authentication (Phase G2) */\n MAGIC_LINK = 'magic_link',\n /** SMS OTP code for first/second factor authentication (Phase G2) */\n SMS_OTP = 'sms_otp',\n /** Phone number verification code — not an auth flow, just verification (Phase G2) */\n PHONE_VERIFICATION = 'phone_verification',\n /** SAML AuthnRequest correlation state (AUTH-2: SAML Protocol Engine) */\n SAML_AUTH_STATE = 'saml_auth_state',\n /**\n * Step-up proof: the account holder re-proved who they are, with a factor the user type's\n * `stepUpAuth.methods` accepts. The ONLY type a sensitive operation, a method removal or a TOTP\n * disable accepts (#13f, #422).\n */\n REAUTH = 'reauth',\n /**\n * Binding proof (#1417): the account holder re-proved who they are in order to ADD a way to sign in,\n * with any factor they hold, whatever the step-up policy names. Accepted by the binding doors and by\n * nothing else, so it cannot unlock a sensitive operation.\n *\n * It exists because a step-up policy that names a factor the account does not hold yet would\n * otherwise deadlock: a password-only account told to enrol a passkey could only mint a password\n * proof, and the policy refuses a password. Separating the proof by purpose lets the policy bind the\n * step-up without locking the enrolment it asks for.\n */\n REAUTH_BIND = 'reauth_bind',\n /**\n * One-time code carrying a re-authentication proof (`REAUTH` or `REAUTH_BIND`) minted by a\n * federated re-authentication (#1441). The identity provider's callback lands in a popup; the code\n * is handed to the window that opened it, which redeems it with its OWN bearer, so the proof can be\n * redeemed only by the account it was minted for, and the proof itself never travels in a URL.\n */\n REAUTH_CODE_EXCHANGE = 'reauth_code_exchange',\n /**\n * OIDC authorization code (Wildo-as-provider authorization_code flow). Single-use,\n * short-TTL; its metadata binds the code to the authenticated `userId`, the requesting\n * `clientId`, the granted `scope`, the `redirectUri`, the PKCE `codeChallenge`, and the\n * optional `nonce`. Redeemed at the token endpoint for an ID token + access + refresh.\n */\n OIDC_AUTHORIZATION_CODE = 'oidc_authorization_code',\n /**\n * OIDC interactive-consent request (Wildo-as-provider authorization_code consent gate). Minted at\n * `/oauth/authorize` for a client whose `requiresConsent` is true, INSTEAD of auto-issuing the\n * code. Single-use, short-TTL; its metadata carries the SAME authorization request the code would\n * bind (`clientId`, `scope`, `redirectUri`, `codeChallenge`, `nonce?`, `resource?`, `state?`)\n * plus the authenticated `userId`. Consumed at `/oauth/authorize/decision`: on APPROVE it mints\n * the authorization code from the stored request; on DENY the flow ends with `access_denied`.\n * Storing the request server-side means the consent decision cannot tamper with the parameters.\n */\n OIDC_CONSENT_REQUEST = 'oidc_consent_request',\n /**\n * OIDC RP-Initiated Logout confirmation (revocation-C §6 — the logout-confirmation prompt that\n * mitigates BROWSER-based logout CSRF; a cross-origin page cannot read this token from the victim's\n * URL to complete the confirm). Minted at `GET /oauth/end-session` for any request that is NOT a\n * trusted RP logout (no/forged `id_token_hint`, or a valid hint whose `post_logout_redirect_uri`\n * is absent / unregistered / mismatched), INSTEAD of terminating the session inline. Single-use,\n * short-TTL; its metadata carries the already-validated `{ userId?, sessionId? }` the confirm step\n * acts on (storing it server-side means the confirmation cannot tamper with WHICH session ends).\n * Consumed at `POST /oauth/end-session/confirm`: on confirm it terminates that session (if any) and\n * lands on `/oauth/logged-out`. A trusted RP logout (valid hint + exact-match registered redirect)\n * skips this entirely and terminates + redirects to the RP directly — the Keycloak-style posture.\n */\n OIDC_LOGOUT_CONFIRMATION = 'oidc_logout_confirmation',\n /**\n * A single-use grant to upload ONE file into ONE resource file field, minted by a principal who\n * could perform the target CREATE/UPDATE and redeemed by whoever holds it — an AI agent's `curl`,\n * or a human on the drop page — without the minter's own credential ever leaving the server.\n *\n * Exists because MCP tool arguments are model-generated JSON and cannot carry bytes; see #312.\n * `SINGLE_USE` only (a reusable upload credential is the presigned-URL defect rebuilt inside\n * the API). Typed fields carry identity — `userId`/`organizationId`/`roles` snapshot of the\n * minter, `resourceIdentifier` = target resource, `relatedId` = target row for UPDATE — and\n * `metadata` carries the ROUTE binding (`fieldName`, `operation`, `minter`, `producedFileId`),\n * which the upload middleware checks and the identity layer deliberately ignores. Lifetime is\n * bounded at the mint by `FILE_UPLOAD_GRANT_ABSOLUTE_MAX_MINUTES`, rejecting rather than\n * clamping: this credential is designed to leave the trust boundary (a transcript, a shell\n * history), so the engine owns the bound.\n */\n FILE_UPLOAD_GRANT = 'file_upload_grant',\n}\n\nexport const ConsumableTokenTypesSchema = z.union([\n z.enum(CoreConsumableTokenTypes),\n z.string().min(1),\n]);\n\n\nexport type ConsumableTokenTypes = z.infer<typeof ConsumableTokenTypesSchema>;\n\n\n// ============================================================================\n// CONSUMPTION MODE — Three behavioral categories for token lifecycle\n// ============================================================================\n\n/**\n * Defines how a token behaves when used.\n *\n * - `SINGLE_USE`: Consumed after first successful use (password reset, invitation acceptance)\n * - `BOUNDED_REUSE`: Can be used N times or until expiry (file sharing link, meeting join link)\n * - `EPHEMERAL_STATE`: Carries state through a redirect, consumed on callback (OAuth state, payment callback)\n */\nexport enum ConsumableToken_ConsumptionMode {\n SINGLE_USE = 'SINGLE_USE',\n BOUNDED_REUSE = 'BOUNDED_REUSE',\n EPHEMERAL_STATE = 'EPHEMERAL_STATE',\n}\n\n\n// ============================================================================\n// UTILITY TYPE — StaticOrDerived<T>\n// ============================================================================\n\n/**\n * A value that can either be provided statically or derived from the operation result at runtime.\n *\n * Static: `{ value: 7, unit: 'days' }`\n * Derived: `(currentObject) => ({ value: currentObject.shareDurationDays, unit: 'days' })`\n *\n * NOTE: This is intentionally NOT `ResourceConfiguration_FunctionWithContextNeeds` (R5).\n * `FunctionWithContextNeeds` wraps functions with metadata flags (`needsObjectContext`, `needsUserContext`)\n * for factory introspection. `StaticOrDerived<T>` is simpler — it's just \"literal value OR function from\n * currentObject\" with no metadata flags. The factory marks dynamic values as `_isDynamic` during\n * processing, which is a different mechanism entirely.\n */\nexport type StaticOrDerived<T> = T | ((currentObject: Record<string, any>) => T);\n\n\n// ============================================================================\n// DECLARATIVE CONFIG TYPES — For operation variant configuration\n// ============================================================================\n\n/** @wildo_source:part:start saas.models.resource-config.token-generation facet:layer:shared facet:family:resource-config\n *\n * Config-declared gate deciding whether a `tokenGeneration` side-effect actually\n * mints a token, evaluated against the POST-operation row (`currentObject`).\n *\n * WHY the destructured params-object shape `({ currentObject }) => boolean` and NOT\n * the positional `StaticOrDerived` shape used by `expiresIn`/`grantedRoles` above (R5):\n * this deliberately mirrors the operation-variant `enabledCondition` predicate (see the\n * org-members REVOKE/RESEND configs) so an app author writes ONE predicate form for every\n * \"config-declared gate over currentObject\". The trade-off is worth it — cross-surface\n * authoring consistency beats intra-type consistency with the positional derivers.\n *\n * WHY the params object carries ONLY `currentObject` (unlike the notification `condition`,\n * which also gets `inputDto`/`objectContext`/`initiatorIds`): a token is a PERSISTED\n * side-effect keyed on the resulting row, so its gate must depend only on the persisted\n * result — never on raw request input. Narrowing the params to `currentObject` makes that\n * guarantee structural. (It also keeps this type free of the `resources-config` params type,\n * which would be a circular import — `resources-config.shared.schemas` imports FROM here.)\n */\nexport type TokenGenerationCondition = (params: { currentObject: Record<string, any> }) => boolean;\n/** @wildo_source:part:end saas.models.resource-config.token-generation */\n\n/** @wildo_source:part:start saas.models.resource-config.token-generation facet:layer:shared facet:family:resource-config\n *\n * Declarative config for automatic token generation on an operation variant.\n * Placed on CREATE/RESEND-like operations to generate a token as a side-effect.\n *\n * Import from `@wildo-ai/saas-models`; application authors normally provide\n * this shape through an API-call variant in\n * `createResourceConfiguration_Initialization(...)`.\n *\n * The operation pipeline creates the token in the same persistence transaction\n * as the resource mutation, then injects `additionalContext.tokenValue` into\n * post-commit notification dispatch.\n *\n * The contract requires one canonical persisted resource state. It cannot be\n * authored on a collection/aggregate operation, a core bulk mutation, or a\n * variant with `haveBulkOperation: true`; those operations do not expose one\n * unambiguous related resource identity for the generated token.\n *\n * @example\n * `tokenGeneration: { tokenType: MyTokenType.INVITATION, consumptionMode:\n * ConsumableToken_ConsumptionMode.SINGLE_USE, expiresIn: { value: 7, unit:\n * DurationUnit.DAYS }, relatedIdField: '_id' }`\n */\nexport type TokenGenerationConfig = {\n /** Token type identifier (from CoreConsumableTokenTypes or custom app enum) */\n tokenType: ConsumableTokenTypes;\n\n /** How the token behaves when used */\n consumptionMode: ConsumableToken_ConsumptionMode;\n\n /**\n * Expiration duration — static or derived from currentObject.\n * Units: minutes, hours, or days only. Value must be ≥ 1.\n * Static: `{ value: 7, unit: DurationUnit.DAYS }`\n * Derived: `(currentObject) => ({ value: currentObject.shareDurationDays, unit: 'days' })`\n */\n expiresIn: StaticOrDerived<ExpiresInDuration>;\n\n /**\n * Optional gate — mint this token ONLY when the predicate returns truthy against the\n * post-operation row. Absent = always mint.\n *\n * Canonical use: a POLYMORPHIC CREATE (org-member INVITE vs DIRECT-ADD) mints the\n * single-use accept token ONLY for the INVITED branch. A direct-add (founder / SSO-JIT /\n * SCIM) persists `ACTIVE` with nothing to accept, so minting a token there would leave a\n * live single-use accept token dangling on an already-ACTIVE row (a hygiene/security\n * hole). Keying on the resulting `status` — the semantic driver, uniformly present on\n * every branch's `currentObject` — auto-covers any future non-INVITED direct-add path.\n *\n * @example `({ currentObject }) => currentObject.status === OrganizationMemberStatus.INVITED`\n */\n condition?: TokenGenerationCondition;\n\n /**\n * Roles granted when the token is used for authentication.\n * Static: `[{ roles: ['ORG_MEMBER'], relatedPrimaryScope: 'ORGANIZATIONS' }]`\n * Derived: `(currentObject) => [{ roles: [currentObject.assignedRole], relatedPrimaryScope: 'ORGANIZATIONS' }]`\n */\n grantedRoles?: StaticOrDerived<ExecutionContext_RoleInfo[]>;\n\n /** Max uses for BOUNDED_REUSE mode. Required when consumptionMode is BOUNDED_REUSE. */\n maxUses?: number;\n\n /** Revoke existing tokens of same type for same relatedId before creating new one (e.g., RESEND) */\n revokeExistingForSameRelated?: boolean;\n\n /** Field in currentState to use as relatedId. Defaults to '_id' (the resource's own ID). */\n relatedIdField?: string;\n\n /**\n * Field in currentState to capture as the token's userId (user_self pattern).\n * e.g., 'invitedUserId' — if not set, no userId stored on token.\n */\n userIdField?: string;\n\n /**\n * W7.3b: Marks the generated token as exchangeable for a one-off session JWT.\n * When true, the token can be used via POST /auth/one-off-session/exchange.\n */\n createsOneOffSession?: boolean;\n\n /**\n * W7.3b: When the token is consumed — at exchange time or at target operation time.\n * Required when `createsOneOffSession` is true.\n * - `EXCHANGE`: consumed immediately when exchanged for a JWT (no token carried into session)\n * - `TARGET_OPERATION`: carried through the session, consumed when the target operation executes\n */\n consumeAt?: 'EXCHANGE' | 'TARGET_OPERATION';\n\n /**\n * W7.3b: Builds targeting.initiatorIds for frontend URL resolution.\n * Maps field identifier names to field paths in currentState.\n * organizationId is auto-included from execution context if not specified.\n *\n * Example: `{ taskId: '_id' }` → on a Tasks resource, reads `currentState._id` as the taskId.\n * The frontend uses these to resolve the target URL after session exchange.\n */\n targetingFields?: Record<string, string>;\n\n /**\n * Public path of the frontend page that consumes this token (e.g. `/invitation`).\n * When set, the notification dispatcher builds\n * `additionalContext.acceptUrl = <frontendPublicUrl><emailLinkPath>?token=<tokenValue>`\n * for the token-bearing notification email, so the recipient can act on the\n * token straight from the email. Without it, only the raw `tokenValue` is\n * exposed and the email falls back to its generic (sign-in) CTA. Use a stable\n * framework route — the backend cannot import frontend route constants.\n */\n emailLinkPath?: string;\n};\n/** @wildo_source:part:end saas.models.resource-config.token-generation */\n\n/**\n * Declarative config for automatic token revocation on an operation variant.\n * Placed on DELETE-like operations to revoke associated tokens before the resource is removed.\n *\n * Pipeline placement: BEFORE the core operation (pre-operation step).\n * Like token generation, revocation requires one canonical current resource\n * state and cannot be combined with collection/aggregate or authored/generated\n * bulk mutation semantics. It also cannot run on CREATE because no current\n * resource exists before persistence.\n */\nexport type TokenRevocationConfig = {\n /** Which token types to revoke when this operation executes */\n tokenTypes: ConsumableTokenTypes[];\n\n /** Field in currentState to use as relatedId for revocation lookup. Defaults to '_id'. */\n relatedIdField?: string;\n};\n\n/**\n * How a consumable token interacts with JWT/API-key authentication on an operation.\n * ALTERNATIVE: token alone is sufficient (replaces JWT). Used by PASSWORD_RESET, MAGIC_LINK, etc.\n * ADDITIVE: token is required ON TOP of JWT auth. Used by one-off session target operations.\n */\nexport enum TokenAuthenticationPolicy {\n ALTERNATIVE = 'ALTERNATIVE',\n ADDITIVE = 'ADDITIVE',\n}\n\n/**\n * Declarative config declaring that an operation accepts consumable tokens for authentication.\n * Replaces the old `ResourceConfiguration_OperationVariant_ApiCall_ConsumableToken`.\n *\n * NOTE: No `isConsumed` field — consumption is controlled by the token user's `consumptionMode`\n * (set at creation time), not by the operation config. This avoids contradictions between config\n * and entity state (Trap 5).\n */\nexport type TokenAuthenticationConfig = {\n /** Which token types this operation accepts for authentication */\n types: ConsumableTokenTypes[];\n policy: TokenAuthenticationPolicy;\n};\n"]}
@@ -185,7 +185,13 @@ export declare const TokenExchangeRequestSchema: z.ZodObject<{
185
185
  */
186
186
  export type TokenExchangeRequest = z.infer<typeof TokenExchangeRequestSchema>;
187
187
  /**
188
- * Response body for `POST /auth/token/exchange` (cross-app-jwt-propagation Step 5).
188
+ * Response body for `POST /auth/token/exchange` (cross-app-jwt-propagation Step 5) when the code signs in.
189
+ *
190
+ * A code a federated sign-in was PARKED behind (#1103 — the account still owes its organization) answers with
191
+ * the separate `TokenExchangeOrganizationOnboardingResponseSchema` instead (`{ nextStep, sessionId }`, no token).
192
+ * It is kept out of this schema on purpose: this one is strict and parsed by receivers that can never hold a
193
+ * parked code (the docs site redeems only handoff codes, which need a signed-in caller), so widening it would
194
+ * teach them a shape they must then refuse.
189
195
  *
190
196
  * Lives in this file (rather than `authentication.shared.dto.schemas.ts`)
191
197
  * because every receiver of an AUTH_CODE_EXCHANGE token — the SaaS app, the
@@ -1 +1 @@
1
- {"version":3,"file":"cross-frontend-handoff.shared.dto.schemas.d.ts","sourceRoot":"","sources":["../../../../src/security/authentications/cross-frontend-handoff.shared.dto.schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;;;GAKG;AACH,oBAAY,6BAA6B;IACrC,yFAAyF;IACzF,uBAAuB,4BAA4B;IAEnD,8JAA8J;IAC9J,mCAAmC,wCAAwC;IAE3E,2IAA2I;IAC3I,yCAAyC,8CAA8C;CAC1F;AA+FD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,eAAO,MAAM,iCAAiC;;;kBAG5C,CAAC;AAEH;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAE5F;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,kCAAkC;;;kBAG7C,CAAC;AAEH;;;GAGG;AACH,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC;AAE9F;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B;;kBAErC,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,2BAA2B;;;;;;kBAMtC,CAAC;AAEH;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
1
+ {"version":3,"file":"cross-frontend-handoff.shared.dto.schemas.d.ts","sourceRoot":"","sources":["../../../../../src/security/authentications/cross-frontend-handoff.shared.dto.schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;;;GAKG;AACH,oBAAY,6BAA6B;IACrC,yFAAyF;IACzF,uBAAuB,4BAA4B;IAEnD,8JAA8J;IAC9J,mCAAmC,wCAAwC;IAE3E,2IAA2I;IAC3I,yCAAyC,8CAA8C;CAC1F;AA+FD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,eAAO,MAAM,iCAAiC;;;kBAG5C,CAAC;AAEH;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAE5F;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,kCAAkC;;;kBAG7C,CAAC;AAEH;;;GAGG;AACH,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC;AAE9F;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B;;kBAErC,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AACH;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,2BAA2B;;;;;;kBAMtC,CAAC;AAEH;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
@@ -247,7 +247,13 @@ export const TokenExchangeRequestSchema = z.strictObject({
247
247
  code: z.string().min(1),
248
248
  });
249
249
  /**
250
- * Response body for `POST /auth/token/exchange` (cross-app-jwt-propagation Step 5).
250
+ * Response body for `POST /auth/token/exchange` (cross-app-jwt-propagation Step 5) when the code signs in.
251
+ *
252
+ * A code a federated sign-in was PARKED behind (#1103 — the account still owes its organization) answers with
253
+ * the separate `TokenExchangeOrganizationOnboardingResponseSchema` instead (`{ nextStep, sessionId }`, no token).
254
+ * It is kept out of this schema on purpose: this one is strict and parsed by receivers that can never hold a
255
+ * parked code (the docs site redeems only handoff codes, which need a signed-in caller), so widening it would
256
+ * teach them a shape they must then refuse.
251
257
  *
252
258
  * Lives in this file (rather than `authentication.shared.dto.schemas.ts`)
253
259
  * because every receiver of an AUTH_CODE_EXCHANGE token — the SaaS app, the
@@ -1 +1 @@
1
- {"version":3,"file":"cross-frontend-handoff.shared.dto.schemas.js","sourceRoot":"","sources":["../../../../../src/security/authentications/cross-frontend-handoff.shared.dto.schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAE9E;;;;;GAKG;AACH,MAAM,CAAN,IAAY,6BASX;AATD,WAAY,6BAA6B;IACrC,yFAAyF;IACzF,oFAAmD,CAAA;IAEnD,8JAA8J;IAC9J,4GAA2E,CAAA;IAE3E,2IAA2I;IAC3I,wHAAuF,CAAA;AAC3F,CAAC,EATW,6BAA6B,KAA7B,6BAA6B,QASxC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,mBAAmB,GAA0E;IAC/F,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,GAAG,EAAE,OAAO,EAAE,mCAAmC,EAAE;IACvF,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,gCAAgC,EAAE;IACtF;;;;;OAKG;IACH,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,kFAAkF,EAAE;IAC1I;;;;;;;;;;;;;;OAcG;IACH;QACI,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,wBAAwB,CAAC,KAAK,CAAC;QACjD,OAAO,EAAE,yEAAyE;KACrF;IACD,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,mDAAmD,EAAE;IACzG,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,2DAA2D,EAAE;IACjH,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,4DAA4D,EAAE;IACnH,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,gDAAgD,EAAE;CACxG,CAAC;AAEF;;;;;;;GAOG;AACH,SAAS,sBAAsB,CAA8B,MAAS;IAClE,OAAO,mBAAmB,CAAC,MAAM,CAC7B,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,CAAiB,EAC3E,MAAM,CACT,CAAC;AACN,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,qCAAqC,GAAG,sBAAsB,CAChE,CAAC;KACI,MAAM,EAAE;KACR,OAAO,CAAC,EAAE,CAAC;KACX,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAC1D,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,YAAY,CAAC;IAC5D,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,8BAA8B,CAAC;IACnE,UAAU,EAAE,qCAAqC;CACpD,CAAC,CAAC;AAmBH;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC,YAAY,CAAC;IAC7D,UAAU,EAAE,CAAC,CAAC,GAAG,EAAE;IACnB,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC;AAQH;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,YAAY,CAAC;IACrD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1B,CAAC,CAAC;AAOH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,YAAY,CAAC;IACtD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,UAAU,EAAE,sBAAsB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzD,yBAAyB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC1C,CAAC,CAAC","sourcesContent":["/**\n * Cross-Frontend Handoff DTO atoms (cross-app-jwt-propagation Step 2).\n *\n * Self-service endpoint contract that the source frontend's authenticated user\n * invokes to obtain a one-time AUTH_CODE_EXCHANGE token bound to a target\n * frontend service. The source frontend then redirects the browser to the\n * target frontend's `/auth/exchange` page, which POSTs to the existing\n * `/auth/token/exchange` endpoint to consume the code and receive a fresh\n * JWT pair.\n *\n * Built on the existing AUTH_CODE_EXCHANGE primitive (used by OAuth2 callback\n * today). Does NOT introduce a new consumable token type, a new exchange\n * endpoint, or any cookie-based transport — the contract is bearer-only and\n * piggybacks on the mature exchange + anonymous-transposition wiring.\n *\n * CORS posture: bearer-only. The endpoint reads `Authorization: Bearer …`\n * from the source frontend's session; receivers MUST NOT set\n * `withCredentials: true` on their fetch call. Every declared frontendService\n * is automatically allowed via the existing `deriveCorsOrigins()` seam.\n *\n * Why this file is split out of `authentication.shared.dto.schemas.ts`:\n * - The parent file is 750+ lines, depends on `UserContextSchema`,\n * `AvailableMethodSchema`, `SessionType`, `AuthMethod`, `AuthFactorLevel`,\n * `AuthSessionPurpose`, `AuthUtils`, AND `@wildo-ai/zod-decorators`. Any\n * browser bundle that touches a single symbol from it pays the full\n * transitive cost (see `saas-models-public-runtime.md` K-1).\n * - This file is intentionally minimal: ONLY `import { z } from 'zod'`. It\n * can be safely re-exported from `@wildo-ai/saas-models/public-runtime`\n * (saas-models-public-runtime.md K-4) without booting `initZodDecorators`\n * or pulling `reflect-metadata`.\n *\n * DRY contract:\n * - `authentication.shared.dto.schemas.ts` re-exports everything in this\n * file via `export * from './cross-frontend-handoff.shared.dto.schemas'`\n * so existing root-barrel imports\n * (`import { CrossFrontendHandoffRequest } from '@wildo-ai/saas-models'`)\n * keep working unchanged.\n * - The atoms live ONLY in this file. Do NOT duplicate any declaration\n * into the parent file — that would defeat the purpose of the split.\n *\n * Historical note — H-3 / M-7 cross-frontend-handoff incident:\n * An earlier iteration of `engine/saas-technical-doc`'s\n * `<AuthExchangePage>` shipped a silently-undefined\n * `response.metadata?.returnPath` read that compiled cleanly even\n * though `metadata` was not a key on the inferred response type. The\n * bad read was caught by code review (M-7) and removed by reading the\n * correct top-level `response.returnPath` instead. The cross-package\n * `z.infer` types ARE tight when the decorator-framework runtime is\n * booted on the consuming bundle (the docs runtime entry calls\n * `ensureZodDecoratorsLoaded(z)` for that reason — see\n * `engine/saas-technical-doc/src/runtime/index.ts`). The\n * `expectTypeOf` pins in\n * `__tests__/authentication.shared.dto.schemas.test.ts` (executed via\n * Vitest's `typecheck.enabled` mode) defend against future regressions\n * on the three public-runtime DTOs declared below.\n */\n\nimport { z } from 'zod';\n\nimport { isSameOriginRedirectPath } from './same-origin-redirect-path.shared';\n\n/**\n * Stable error codes for the cross-frontend handoff endpoint, returned as\n * `{ error: { code, message, context } }` with HTTP 400. Exported as a TS enum\n * so callers (notably the docs-site `docsAuthClient.ts`) can branch on the\n * code, not on the message.\n */\nexport enum CrossFrontendHandoffErrorCode {\n /** The `targetServiceKey` is not a key in `appConfigService.config.frontendServices`. */\n UNKNOWN_TARGET_FRONTEND = 'UNKNOWN_TARGET_FRONTEND',\n\n /** The target service is declared but `runtime.endPoints[targetServiceKey].publicUrl` is missing for the current env. Fail-closed (no auto-derived guess). */\n TARGET_FRONTEND_HOST_NOT_CONFIGURED = 'TARGET_FRONTEND_HOST_NOT_CONFIGURED',\n\n /** The target service is declared, but its frontend runtime does not mount `/auth/exchange` and therefore cannot redeem a handoff code. */\n TARGET_FRONTEND_AUTH_EXCHANGE_UNSUPPORTED = 'TARGET_FRONTEND_AUTH_EXCHANGE_UNSUPPORTED',\n}\n\n/**\n * Single source of truth for `returnPath` defense-in-depth refines.\n *\n * Two consumers apply this exact set of rules:\n * - Issuer side (`CrossFrontendHandoff_ReturnPathSchema`): validates the\n * request body of `POST /auth/cross-frontend-handoff`. Adds a `.default`\n * + `.transform` to normalise empty strings to `'/'`.\n * - Receiver side (`TokenExchangeResponseSchema.returnPath`): validates the\n * response body of `POST /auth/token/exchange` so a corrupted /\n * hand-tampered metadata round-trip cannot smuggle an\n * open-redirect / path-traversal / XSS payload past the receiver schema.\n * The schema is `.optional()` at the response level (OAuth2-callback\n * codes don't carry a `returnPath` at all — see `TokenExchangeResponseSchema`\n * JSDoc) so the refines only run when the field is present.\n *\n * Kept as a list (not as a single chained schema) so we can apply the\n * exact same checks to both an `optional` schema and a `default('').transform`\n * schema without duplicating the message strings. Drift between the two\n * sides would be a security regression — collapsing them onto one source\n * is the K-1 / \"framework mindset\" contract from `design-philosophy.mdc`.\n */\nconst RETURN_PATH_REFINES: ReadonlyArray<{ check: (value: string) => boolean; message: string }> = [\n { check: (value) => value.length <= 256, message: 'returnPath exceeds 256 characters' },\n { check: (value) => value.startsWith('/'), message: 'returnPath must start with \"/\"' },\n /**\n * Scheme-relative URL: `//evil.com` is interpreted by browsers as\n * `https://evil.com` when handed to `location.assign` / `<Navigate to>`,\n * despite passing the `startsWith('/')` check. Classic open-redirect\n * vector — explicitly rejected here so we cannot silently regress.\n */\n { check: (value) => !value.startsWith('//'), message: 'returnPath must not start with \"//\" (scheme-relative URL — open-redirect vector)' },\n /**\n * The AUTHORITATIVE origin check, and the reason the character rules below are now\n * defence-in-depth rather than the guarantee.\n *\n * Every rule in this list is a deny-list over BYTES; a browser navigates to what its URL PARSER\n * produces. The two diverge because the parser strips ASCII tab / LF / CR from the input before\n * parsing, so `/<TAB>/evil.com` becomes `//evil.com` and resolves cross-origin while satisfying\n * `startsWith('/')`, `!startsWith('//')`, `!includes('\\\\')` and `!includes('://')` — i.e. every\n * refine that was here before. Adding three more banned characters would only postpone the next\n * parser rule, so the question is put to the parser itself.\n *\n * This refine is placed AFTER the cheap prefix rules deliberately: those produce a precise,\n * actionable message for the two shapes an honest caller actually gets wrong, and this one is the\n * catch-all that must never be reachable by an honest caller at all.\n */\n {\n check: (value) => isSameOriginRedirectPath(value),\n message: 'returnPath must resolve to a location on this application\\'s own origin',\n },\n { check: (value) => !value.includes('..'), message: 'returnPath must not contain \"..\" (path traversal)' },\n { check: (value) => !value.includes('\\\\'), message: 'returnPath must not contain \"\\\\\" (Windows path injection)' },\n { check: (value) => !value.includes('://'), message: 'returnPath must not contain \"://\" (absolute URL injection)' },\n { check: (value) => !/[<>\"]/.test(value), message: 'returnPath must not contain \"<\", \">\", or \"\\\\\"\"' },\n];\n\n/**\n * Apply the shared `RETURN_PATH_REFINES` to any string-producing schema.\n *\n * Generic over the input schema type so the request side (which\n * pre-transforms `''` → `'/'`) and the response side (which keeps the\n * raw string verbatim) both keep their input-type fluency. The runtime\n * effect is identical: a `.refine()` chain in `RETURN_PATH_REFINES` order.\n */\nfunction applyReturnPathRefines<T extends z.ZodType<string>>(schema: T): T {\n return RETURN_PATH_REFINES.reduce<T>(\n (acc, { check, message }) => acc.refine(check, { message }) as unknown as T,\n schema,\n );\n}\n\n/**\n * Validates a `returnPath` for the cross-frontend handoff endpoint REQUEST body.\n *\n * Defense-in-depth at the schema boundary so direct API consumers cannot\n * bypass handler-level checks. The receiving frontend's `AuthExchangePage`\n * may call `location.assign(returnPath)` after exchanging the token; an\n * unvalidated path is an open-redirect / XSS / path-traversal vector.\n *\n * Rules: see `RETURN_PATH_REFINES` above (single source of truth — also\n * applied to `TokenExchangeResponseSchema.returnPath` so issuer and receiver\n * cannot drift). Additionally:\n * - Empty string is normalised to `'/'` (root) via the schema's `transform`.\n * Refines run AFTER transform so the post-transform `'/'` is what gets\n * validated — `''` → `'/'` → passes `startsWith('/')` → accepted.\n */\nconst CrossFrontendHandoff_ReturnPathSchema = applyReturnPathRefines(\n z\n .string()\n .default('')\n .transform((value) => (value === '' ? '/' : value)),\n);\n\n/**\n * Request body for `POST /auth/cross-frontend-handoff`.\n *\n * The caller is the user themselves, asking the backend \"issue me a one-time\n * code so I can hand my session to frontend X (with optional return path)\".\n *\n * Field semantics:\n * - `targetServiceKey` MUST be the per-service unique identity that\n * `appConfigService.config.frontendServices` is keyed by AND that\n * `runtime.endPoints[*]` is keyed by. **Today that identity is the\n * `serviceName`** declared on `wildo.saas.config.ts → services.<key>.serviceName`\n * (e.g. `'wonder-todos-docs'`, NOT the services map key `'docs'`):\n * apps-manager's `buildManagedFrontendServicesSeed` keys\n * `frontendServices` by `serviceName`, wildo-cli's\n * `AppBootstrapService.buildRuntimeEndpoints` keys\n * `APPLICATION_RUNTIME_ENDPOINTS` by `serviceName`, the\n * `X-Frontend-Service-Name` header carries `serviceName` (via\n * `VITE_FRONTEND_SERVICE_NAME`), and the K8s ingress builder keys\n * per-frontend endpoints by `Object.keys(frontendServices)` — i.e.\n * `serviceName` again. Passing the services map key (`'docs'`)\n * instead would fail the handler's\n * `frontendServices[body.targetServiceKey]` membership check\n * with `UNKNOWN_TARGET_FRONTEND`. The name `targetServiceKey` is\n * load-bearing only as \"the runtime identity an SDK consumer\n * passes through\" — semantically it is a `frontendServiceName`.\n * The eventual convergence on `services.<key>` as the single\n * canonical identity is tracked under the cross-app / apps-manager\n * workstream (a multi-PR migration touching apps-manager seeding,\n * wildo-cli endpoint emission, the `VITE_FRONTEND_SERVICE_NAME`\n * build-time injection, and every consumer of `lookupFrontendPublicUrl`).\n * Renamed from the original `targetFrontendSlug` to lock the semantics\n * in the schema, not just JSDoc — a wrong-typed body fails at parse time.\n * - `returnPath` is the path on the target frontend the user should land on\n * AFTER the token exchange completes. Validated via\n * `CrossFrontendHandoff_ReturnPathSchema`.\n *\n * **Runtime vs type guarantee**: the schema applies\n * `.default('').transform(empty → '/')` so at RUNTIME, by the time the\n * parsed body reaches the handler, `returnPath` is always a non-empty\n * string (defaulted to `'/'` if the caller omitted it or sent `''`).\n * At the TYPE level, however, `z.infer<typeof CrossFrontendHandoffRequestSchema>`\n * keeps `returnPath?: string` — TypeScript does not propagate the\n * post-default tightening through the `.refine()` chain on a\n * `ZodPipe<ZodDefault<…>, ZodTransform>`. Handler code therefore has\n * two safe options:\n * - treat `returnPath` as `string | undefined` and fall back to `'/'`\n * defensively, OR\n * - rely on the runtime invariant after parsing (the body NEVER reaches\n * the handler unparsed; the controller validates it via\n * `CrossFrontendHandoffRequestSchema.parse()` before dispatch).\n *\n * The exported `CrossFrontendHandoffRequest` type is `z.infer` of the\n * schema, so it matches the OUTPUT shape (with the optional-`returnPath`\n * caveat above). For the WIRE shape (where every other field's optional\n * semantics may differ), use `z.input<typeof CrossFrontendHandoffRequestSchema>`.\n */\nexport const CrossFrontendHandoffRequestSchema = z.strictObject({\n targetServiceKey: z.string().min(1, 'targetServiceKey is required'),\n returnPath: CrossFrontendHandoff_ReturnPathSchema,\n});\n\n/**\n * Output (parsed) shape of `POST /auth/cross-frontend-handoff`'s request body.\n *\n * Consumers that need the WIRE shape (where `returnPath` is `string | undefined`)\n * should use `z.input<typeof CrossFrontendHandoffRequestSchema>` instead.\n *\n * Cross-package safety: every consuming bundle MUST boot\n * `@wildo-ai/zod-decorators` once via `ensureZodDecoratorsLoaded(z)`\n * before reading `z.infer<typeof …>` on schemas exported from this file.\n * The SaaS app + backend get this for free via the saas-models root barrel\n * (which runs `initZodDecorators()` on load); the docs runtime does it\n * explicitly in `engine/saas-technical-doc/src/runtime/index.ts`. The\n * `expectTypeOf` pins in the schemas test file enforce that the inferred\n * shape stays tight; CI runs them via Vitest `typecheck.enabled` mode.\n */\nexport type CrossFrontendHandoffRequest = z.infer<typeof CrossFrontendHandoffRequestSchema>;\n\n/**\n * Response body for `POST /auth/cross-frontend-handoff`.\n *\n * Field semantics:\n * - `handoffUrl` — the URL the source frontend should redirect to:\n * `https://<targetPublicHost>/auth/exchange?code=<token>&return=<percent-encoded-returnPath>`.\n * Typed as `string` (not a branded URL type) because consumers immediately\n * hand it to `location.assign()` / `<Link to>`, neither of which expects\n * a branded type. The runtime validator enforces `z.url()` shape.\n * - `expiresAt` — ISO-8601 timestamp; the consumable token TTL is 60 seconds\n * (shorter than OAuth2's 5 min — the user is mid-redirect, not waiting on\n * a third-party IdP). The strict ISO refine catches a misbehaving server /\n * fixture that emits a non-ISO string at parse time on the receiving end\n * (the docs-chat client validates with this schema).\n */\nexport const CrossFrontendHandoffResponseSchema = z.strictObject({\n handoffUrl: z.url(),\n expiresAt: z.iso.datetime(),\n});\n\n/**\n * Inferred response shape — see `CrossFrontendHandoffRequest` JSDoc on the\n * cross-package `z.infer` safety contract.\n */\nexport type CrossFrontendHandoffResponse = z.infer<typeof CrossFrontendHandoffResponseSchema>;\n\n/**\n * Request body for `POST /auth/token/exchange`.\n *\n * Kept beside `TokenExchangeResponseSchema` because every consumer that can\n * receive an AUTH_CODE_EXCHANGE code must send this body. Do not let clients\n * hand-roll `{ code }` literals: the request side is part of the same public\n * runtime contract as the response and must drift in lockstep.\n */\nexport const TokenExchangeRequestSchema = z.strictObject({\n code: z.string().min(1),\n});\n\n/**\n * Inferred request body for `POST /auth/token/exchange`.\n */\nexport type TokenExchangeRequest = z.infer<typeof TokenExchangeRequestSchema>;\n\n/**\n * Response body for `POST /auth/token/exchange` (cross-app-jwt-propagation Step 5).\n *\n * Lives in this file (rather than `authentication.shared.dto.schemas.ts`)\n * because every receiver of an AUTH_CODE_EXCHANGE token — the SaaS app, the\n * docs site — is by construction also a client-bundle target. Keeping the\n * response schema in the public-runtime-safe atom file lets those receivers\n * import the same source of truth via `@wildo-ai/saas-models/public-runtime`\n * without paying the `initZodDecorators()` boot cost\n * (saas-models-public-runtime.md K-1, K-4).\n *\n * Field semantics:\n * - `accessToken`, `expiresIn` — the freshly minted access-token response for\n * the consuming frontend. The consumable token's metadata also carries the\n * refresh token internally, but the exchange handler routes it to the\n * HttpOnly cookie channel rather than the JSON body.\n * - `returnPath` — present only for handoff-issued codes (NOT OAuth2-callback\n * codes); the path the receiving frontend should navigate to after the\n * exchange completes. Refined with the same `RETURN_PATH_REFINES` as the\n * issuer-side `CrossFrontendHandoff_ReturnPathSchema` (single source of\n * truth — issuer and receiver cannot drift on which payloads are rejected).\n * The optional+refines composition means: when absent, the field passes\n * silently (OAuth2-callback path); when present, it MUST clear every\n * refine, otherwise the receiver-side `.parse()` call in `tokenExchange()`\n * throws and the response never goes out. That is intentional — a\n * tampered metadata round-trip is a security event, not a degraded UX.\n * - `sourceFrontendServiceName`, `targetServiceKey` — present only for\n * handoff-issued codes. Lets the receiver render telemetry / breadcrumbs\n * (\"you came from the admin panel\") without round-tripping another API call.\n *\n * Why optional fields rather than a discriminated union: OAuth2-callback\n * codes go through the same exchange handler with the same metadata\n * skeleton minus the handoff-specific fields, so a discriminator would\n * require a synthetic `kind` field that adds no information. The optionality\n * IS the discriminator: presence of `returnPath` (or `sourceFrontendServiceName`)\n * tells the receiver \"this came from a cross-frontend handoff, treat it\n * accordingly\". This load-bearing invariant is enforced upstream by the\n * `tokenExchange()` controller, which mints the response object via\n * `if (typeof metadata.returnPath === 'string') response.returnPath = …`\n * (omit-when-absent). If a future regression starts emitting `null` or `''`\n * for OAuth2-callback codes, the receiver-side discrimination breaks\n * silently — the contract is documented here and pinned by the integration\n * test in `cross-frontend-handoff-token-exchange.integration.test.ts`.\n *\n * **H-3 history**: an early `<AuthExchangePage>` implementation read\n * `response.metadata?.returnPath` (always undefined — `metadata` is not\n * a key on the response). The bad read was caught by code review (M-7)\n * and replaced by reading the correct top-level `response.returnPath`.\n * Cross-package `z.infer<typeof TokenExchangeResponseSchema>` IS tight\n * (the same bad access today fires `TS2339: Property 'metadata' does\n * not exist`) provided the consuming bundle has booted\n * `@wildo-ai/zod-decorators` once via `ensureZodDecoratorsLoaded(z)` —\n * which the docs runtime entry does (`engine/saas-technical-doc/src/runtime/index.ts`)\n * and the SaaS app gets implicitly via the saas-models root barrel. The\n * `expectTypeOf` pins in the schemas test file enforce that the inferred\n * shape stays tight; CI runs them via Vitest `typecheck.enabled` mode.\n */\n/**\n * Token exchange response (cross-app-jwt-propagation Step 5 + OAuth2 callback).\n *\n * **Wire contract — refresh token is NEVER included** (Auth-hardening\n * Slice A Step 6, 2026-04-13). Pre-Slice-A this schema carried\n * `refreshToken: z.string()` which was emitted in the JSON body for\n * AUTH_CODE_EXCHANGE redemptions. The cookie migration (A-Step 2)\n * routed the refresh token to `Set-Cookie: __wildo_refresh=…`;\n * A-Step 6 removes the body field entirely. The receiving frontend\n * (SaaS app via `saas-frontend-lib`, or docs site via `docsAuthClient`)\n * stores the access token in memory; the SaaS app additionally\n * receives the refresh cookie automatically (same-origin browser\n * default), while the docs site has no refresh loop and re-handshakes\n * on next gated navigation when the access token expires.\n *\n * The strict-object shape pins the H-3 invariant: `returnPath` lives at\n * the TOP LEVEL — there is intentionally NO `metadata` envelope. Adding\n * an unknown key would now ALSO fire because `refreshToken` is removed\n * (a server still emitting `refreshToken` would fail strict-parse on\n * the receiver — surfacing the misalignment loudly rather than letting\n * the field silently leak through).\n */\nexport const TokenExchangeResponseSchema = z.strictObject({\n accessToken: z.string(),\n expiresIn: z.number(),\n returnPath: applyReturnPathRefines(z.string()).optional(),\n sourceFrontendServiceName: z.string().optional(),\n targetServiceKey: z.string().optional(),\n});\n\n/**\n * Inferred response shape — see `TokenExchangeResponseSchema` JSDoc on\n * the cross-package `z.infer` safety contract (post-H-3 fix).\n */\nexport type TokenExchangeResponse = z.infer<typeof TokenExchangeResponseSchema>;\n"]}
1
+ {"version":3,"file":"cross-frontend-handoff.shared.dto.schemas.js","sourceRoot":"","sources":["../../../../../src/security/authentications/cross-frontend-handoff.shared.dto.schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAE9E;;;;;GAKG;AACH,MAAM,CAAN,IAAY,6BASX;AATD,WAAY,6BAA6B;IACrC,yFAAyF;IACzF,oFAAmD,CAAA;IAEnD,8JAA8J;IAC9J,4GAA2E,CAAA;IAE3E,2IAA2I;IAC3I,wHAAuF,CAAA;AAC3F,CAAC,EATW,6BAA6B,KAA7B,6BAA6B,QASxC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,mBAAmB,GAA0E;IAC/F,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,GAAG,EAAE,OAAO,EAAE,mCAAmC,EAAE;IACvF,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,gCAAgC,EAAE;IACtF;;;;;OAKG;IACH,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,kFAAkF,EAAE;IAC1I;;;;;;;;;;;;;;OAcG;IACH;QACI,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,wBAAwB,CAAC,KAAK,CAAC;QACjD,OAAO,EAAE,yEAAyE;KACrF;IACD,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,mDAAmD,EAAE;IACzG,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,2DAA2D,EAAE;IACjH,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,4DAA4D,EAAE;IACnH,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,gDAAgD,EAAE;CACxG,CAAC;AAEF;;;;;;;GAOG;AACH,SAAS,sBAAsB,CAA8B,MAAS;IAClE,OAAO,mBAAmB,CAAC,MAAM,CAC7B,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,CAAiB,EAC3E,MAAM,CACT,CAAC;AACN,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,qCAAqC,GAAG,sBAAsB,CAChE,CAAC;KACI,MAAM,EAAE;KACR,OAAO,CAAC,EAAE,CAAC;KACX,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAC1D,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,YAAY,CAAC;IAC5D,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,8BAA8B,CAAC;IACnE,UAAU,EAAE,qCAAqC;CACpD,CAAC,CAAC;AAmBH;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC,YAAY,CAAC;IAC7D,UAAU,EAAE,CAAC,CAAC,GAAG,EAAE;IACnB,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC;AAQH;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,YAAY,CAAC;IACrD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1B,CAAC,CAAC;AAOH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AACH;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,YAAY,CAAC;IACtD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,UAAU,EAAE,sBAAsB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzD,yBAAyB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC1C,CAAC,CAAC","sourcesContent":["/**\n * Cross-Frontend Handoff DTO atoms (cross-app-jwt-propagation Step 2).\n *\n * Self-service endpoint contract that the source frontend's authenticated user\n * invokes to obtain a one-time AUTH_CODE_EXCHANGE token bound to a target\n * frontend service. The source frontend then redirects the browser to the\n * target frontend's `/auth/exchange` page, which POSTs to the existing\n * `/auth/token/exchange` endpoint to consume the code and receive a fresh\n * JWT pair.\n *\n * Built on the existing AUTH_CODE_EXCHANGE primitive (used by OAuth2 callback\n * today). Does NOT introduce a new consumable token type, a new exchange\n * endpoint, or any cookie-based transport — the contract is bearer-only and\n * piggybacks on the mature exchange + anonymous-transposition wiring.\n *\n * CORS posture: bearer-only. The endpoint reads `Authorization: Bearer …`\n * from the source frontend's session; receivers MUST NOT set\n * `withCredentials: true` on their fetch call. Every declared frontendService\n * is automatically allowed via the existing `deriveCorsOrigins()` seam.\n *\n * Why this file is split out of `authentication.shared.dto.schemas.ts`:\n * - The parent file is 750+ lines, depends on `UserContextSchema`,\n * `AvailableMethodSchema`, `SessionType`, `AuthMethod`, `AuthFactorLevel`,\n * `AuthSessionPurpose`, `AuthUtils`, AND `@wildo-ai/zod-decorators`. Any\n * browser bundle that touches a single symbol from it pays the full\n * transitive cost (see `saas-models-public-runtime.md` K-1).\n * - This file is intentionally minimal: ONLY `import { z } from 'zod'`. It\n * can be safely re-exported from `@wildo-ai/saas-models/public-runtime`\n * (saas-models-public-runtime.md K-4) without booting `initZodDecorators`\n * or pulling `reflect-metadata`.\n *\n * DRY contract:\n * - `authentication.shared.dto.schemas.ts` re-exports everything in this\n * file via `export * from './cross-frontend-handoff.shared.dto.schemas'`\n * so existing root-barrel imports\n * (`import { CrossFrontendHandoffRequest } from '@wildo-ai/saas-models'`)\n * keep working unchanged.\n * - The atoms live ONLY in this file. Do NOT duplicate any declaration\n * into the parent file — that would defeat the purpose of the split.\n *\n * Historical note — H-3 / M-7 cross-frontend-handoff incident:\n * An earlier iteration of `engine/saas-technical-doc`'s\n * `<AuthExchangePage>` shipped a silently-undefined\n * `response.metadata?.returnPath` read that compiled cleanly even\n * though `metadata` was not a key on the inferred response type. The\n * bad read was caught by code review (M-7) and removed by reading the\n * correct top-level `response.returnPath` instead. The cross-package\n * `z.infer` types ARE tight when the decorator-framework runtime is\n * booted on the consuming bundle (the docs runtime entry calls\n * `ensureZodDecoratorsLoaded(z)` for that reason — see\n * `engine/saas-technical-doc/src/runtime/index.ts`). The\n * `expectTypeOf` pins in\n * `__tests__/authentication.shared.dto.schemas.test.ts` (executed via\n * Vitest's `typecheck.enabled` mode) defend against future regressions\n * on the three public-runtime DTOs declared below.\n */\n\nimport { z } from 'zod';\n\nimport { isSameOriginRedirectPath } from './same-origin-redirect-path.shared';\n\n/**\n * Stable error codes for the cross-frontend handoff endpoint, returned as\n * `{ error: { code, message, context } }` with HTTP 400. Exported as a TS enum\n * so callers (notably the docs-site `docsAuthClient.ts`) can branch on the\n * code, not on the message.\n */\nexport enum CrossFrontendHandoffErrorCode {\n /** The `targetServiceKey` is not a key in `appConfigService.config.frontendServices`. */\n UNKNOWN_TARGET_FRONTEND = 'UNKNOWN_TARGET_FRONTEND',\n\n /** The target service is declared but `runtime.endPoints[targetServiceKey].publicUrl` is missing for the current env. Fail-closed (no auto-derived guess). */\n TARGET_FRONTEND_HOST_NOT_CONFIGURED = 'TARGET_FRONTEND_HOST_NOT_CONFIGURED',\n\n /** The target service is declared, but its frontend runtime does not mount `/auth/exchange` and therefore cannot redeem a handoff code. */\n TARGET_FRONTEND_AUTH_EXCHANGE_UNSUPPORTED = 'TARGET_FRONTEND_AUTH_EXCHANGE_UNSUPPORTED',\n}\n\n/**\n * Single source of truth for `returnPath` defense-in-depth refines.\n *\n * Two consumers apply this exact set of rules:\n * - Issuer side (`CrossFrontendHandoff_ReturnPathSchema`): validates the\n * request body of `POST /auth/cross-frontend-handoff`. Adds a `.default`\n * + `.transform` to normalise empty strings to `'/'`.\n * - Receiver side (`TokenExchangeResponseSchema.returnPath`): validates the\n * response body of `POST /auth/token/exchange` so a corrupted /\n * hand-tampered metadata round-trip cannot smuggle an\n * open-redirect / path-traversal / XSS payload past the receiver schema.\n * The schema is `.optional()` at the response level (OAuth2-callback\n * codes don't carry a `returnPath` at all — see `TokenExchangeResponseSchema`\n * JSDoc) so the refines only run when the field is present.\n *\n * Kept as a list (not as a single chained schema) so we can apply the\n * exact same checks to both an `optional` schema and a `default('').transform`\n * schema without duplicating the message strings. Drift between the two\n * sides would be a security regression — collapsing them onto one source\n * is the K-1 / \"framework mindset\" contract from `design-philosophy.mdc`.\n */\nconst RETURN_PATH_REFINES: ReadonlyArray<{ check: (value: string) => boolean; message: string }> = [\n { check: (value) => value.length <= 256, message: 'returnPath exceeds 256 characters' },\n { check: (value) => value.startsWith('/'), message: 'returnPath must start with \"/\"' },\n /**\n * Scheme-relative URL: `//evil.com` is interpreted by browsers as\n * `https://evil.com` when handed to `location.assign` / `<Navigate to>`,\n * despite passing the `startsWith('/')` check. Classic open-redirect\n * vector — explicitly rejected here so we cannot silently regress.\n */\n { check: (value) => !value.startsWith('//'), message: 'returnPath must not start with \"//\" (scheme-relative URL — open-redirect vector)' },\n /**\n * The AUTHORITATIVE origin check, and the reason the character rules below are now\n * defence-in-depth rather than the guarantee.\n *\n * Every rule in this list is a deny-list over BYTES; a browser navigates to what its URL PARSER\n * produces. The two diverge because the parser strips ASCII tab / LF / CR from the input before\n * parsing, so `/<TAB>/evil.com` becomes `//evil.com` and resolves cross-origin while satisfying\n * `startsWith('/')`, `!startsWith('//')`, `!includes('\\\\')` and `!includes('://')` — i.e. every\n * refine that was here before. Adding three more banned characters would only postpone the next\n * parser rule, so the question is put to the parser itself.\n *\n * This refine is placed AFTER the cheap prefix rules deliberately: those produce a precise,\n * actionable message for the two shapes an honest caller actually gets wrong, and this one is the\n * catch-all that must never be reachable by an honest caller at all.\n */\n {\n check: (value) => isSameOriginRedirectPath(value),\n message: 'returnPath must resolve to a location on this application\\'s own origin',\n },\n { check: (value) => !value.includes('..'), message: 'returnPath must not contain \"..\" (path traversal)' },\n { check: (value) => !value.includes('\\\\'), message: 'returnPath must not contain \"\\\\\" (Windows path injection)' },\n { check: (value) => !value.includes('://'), message: 'returnPath must not contain \"://\" (absolute URL injection)' },\n { check: (value) => !/[<>\"]/.test(value), message: 'returnPath must not contain \"<\", \">\", or \"\\\\\"\"' },\n];\n\n/**\n * Apply the shared `RETURN_PATH_REFINES` to any string-producing schema.\n *\n * Generic over the input schema type so the request side (which\n * pre-transforms `''` → `'/'`) and the response side (which keeps the\n * raw string verbatim) both keep their input-type fluency. The runtime\n * effect is identical: a `.refine()` chain in `RETURN_PATH_REFINES` order.\n */\nfunction applyReturnPathRefines<T extends z.ZodType<string>>(schema: T): T {\n return RETURN_PATH_REFINES.reduce<T>(\n (acc, { check, message }) => acc.refine(check, { message }) as unknown as T,\n schema,\n );\n}\n\n/**\n * Validates a `returnPath` for the cross-frontend handoff endpoint REQUEST body.\n *\n * Defense-in-depth at the schema boundary so direct API consumers cannot\n * bypass handler-level checks. The receiving frontend's `AuthExchangePage`\n * may call `location.assign(returnPath)` after exchanging the token; an\n * unvalidated path is an open-redirect / XSS / path-traversal vector.\n *\n * Rules: see `RETURN_PATH_REFINES` above (single source of truth — also\n * applied to `TokenExchangeResponseSchema.returnPath` so issuer and receiver\n * cannot drift). Additionally:\n * - Empty string is normalised to `'/'` (root) via the schema's `transform`.\n * Refines run AFTER transform so the post-transform `'/'` is what gets\n * validated — `''` → `'/'` → passes `startsWith('/')` → accepted.\n */\nconst CrossFrontendHandoff_ReturnPathSchema = applyReturnPathRefines(\n z\n .string()\n .default('')\n .transform((value) => (value === '' ? '/' : value)),\n);\n\n/**\n * Request body for `POST /auth/cross-frontend-handoff`.\n *\n * The caller is the user themselves, asking the backend \"issue me a one-time\n * code so I can hand my session to frontend X (with optional return path)\".\n *\n * Field semantics:\n * - `targetServiceKey` MUST be the per-service unique identity that\n * `appConfigService.config.frontendServices` is keyed by AND that\n * `runtime.endPoints[*]` is keyed by. **Today that identity is the\n * `serviceName`** declared on `wildo.saas.config.ts → services.<key>.serviceName`\n * (e.g. `'wonder-todos-docs'`, NOT the services map key `'docs'`):\n * apps-manager's `buildManagedFrontendServicesSeed` keys\n * `frontendServices` by `serviceName`, wildo-cli's\n * `AppBootstrapService.buildRuntimeEndpoints` keys\n * `APPLICATION_RUNTIME_ENDPOINTS` by `serviceName`, the\n * `X-Frontend-Service-Name` header carries `serviceName` (via\n * `VITE_FRONTEND_SERVICE_NAME`), and the K8s ingress builder keys\n * per-frontend endpoints by `Object.keys(frontendServices)` — i.e.\n * `serviceName` again. Passing the services map key (`'docs'`)\n * instead would fail the handler's\n * `frontendServices[body.targetServiceKey]` membership check\n * with `UNKNOWN_TARGET_FRONTEND`. The name `targetServiceKey` is\n * load-bearing only as \"the runtime identity an SDK consumer\n * passes through\" — semantically it is a `frontendServiceName`.\n * The eventual convergence on `services.<key>` as the single\n * canonical identity is tracked under the cross-app / apps-manager\n * workstream (a multi-PR migration touching apps-manager seeding,\n * wildo-cli endpoint emission, the `VITE_FRONTEND_SERVICE_NAME`\n * build-time injection, and every consumer of `lookupFrontendPublicUrl`).\n * Renamed from the original `targetFrontendSlug` to lock the semantics\n * in the schema, not just JSDoc — a wrong-typed body fails at parse time.\n * - `returnPath` is the path on the target frontend the user should land on\n * AFTER the token exchange completes. Validated via\n * `CrossFrontendHandoff_ReturnPathSchema`.\n *\n * **Runtime vs type guarantee**: the schema applies\n * `.default('').transform(empty → '/')` so at RUNTIME, by the time the\n * parsed body reaches the handler, `returnPath` is always a non-empty\n * string (defaulted to `'/'` if the caller omitted it or sent `''`).\n * At the TYPE level, however, `z.infer<typeof CrossFrontendHandoffRequestSchema>`\n * keeps `returnPath?: string` — TypeScript does not propagate the\n * post-default tightening through the `.refine()` chain on a\n * `ZodPipe<ZodDefault<…>, ZodTransform>`. Handler code therefore has\n * two safe options:\n * - treat `returnPath` as `string | undefined` and fall back to `'/'`\n * defensively, OR\n * - rely on the runtime invariant after parsing (the body NEVER reaches\n * the handler unparsed; the controller validates it via\n * `CrossFrontendHandoffRequestSchema.parse()` before dispatch).\n *\n * The exported `CrossFrontendHandoffRequest` type is `z.infer` of the\n * schema, so it matches the OUTPUT shape (with the optional-`returnPath`\n * caveat above). For the WIRE shape (where every other field's optional\n * semantics may differ), use `z.input<typeof CrossFrontendHandoffRequestSchema>`.\n */\nexport const CrossFrontendHandoffRequestSchema = z.strictObject({\n targetServiceKey: z.string().min(1, 'targetServiceKey is required'),\n returnPath: CrossFrontendHandoff_ReturnPathSchema,\n});\n\n/**\n * Output (parsed) shape of `POST /auth/cross-frontend-handoff`'s request body.\n *\n * Consumers that need the WIRE shape (where `returnPath` is `string | undefined`)\n * should use `z.input<typeof CrossFrontendHandoffRequestSchema>` instead.\n *\n * Cross-package safety: every consuming bundle MUST boot\n * `@wildo-ai/zod-decorators` once via `ensureZodDecoratorsLoaded(z)`\n * before reading `z.infer<typeof …>` on schemas exported from this file.\n * The SaaS app + backend get this for free via the saas-models root barrel\n * (which runs `initZodDecorators()` on load); the docs runtime does it\n * explicitly in `engine/saas-technical-doc/src/runtime/index.ts`. The\n * `expectTypeOf` pins in the schemas test file enforce that the inferred\n * shape stays tight; CI runs them via Vitest `typecheck.enabled` mode.\n */\nexport type CrossFrontendHandoffRequest = z.infer<typeof CrossFrontendHandoffRequestSchema>;\n\n/**\n * Response body for `POST /auth/cross-frontend-handoff`.\n *\n * Field semantics:\n * - `handoffUrl` — the URL the source frontend should redirect to:\n * `https://<targetPublicHost>/auth/exchange?code=<token>&return=<percent-encoded-returnPath>`.\n * Typed as `string` (not a branded URL type) because consumers immediately\n * hand it to `location.assign()` / `<Link to>`, neither of which expects\n * a branded type. The runtime validator enforces `z.url()` shape.\n * - `expiresAt` — ISO-8601 timestamp; the consumable token TTL is 60 seconds\n * (shorter than OAuth2's 5 min — the user is mid-redirect, not waiting on\n * a third-party IdP). The strict ISO refine catches a misbehaving server /\n * fixture that emits a non-ISO string at parse time on the receiving end\n * (the docs-chat client validates with this schema).\n */\nexport const CrossFrontendHandoffResponseSchema = z.strictObject({\n handoffUrl: z.url(),\n expiresAt: z.iso.datetime(),\n});\n\n/**\n * Inferred response shape — see `CrossFrontendHandoffRequest` JSDoc on the\n * cross-package `z.infer` safety contract.\n */\nexport type CrossFrontendHandoffResponse = z.infer<typeof CrossFrontendHandoffResponseSchema>;\n\n/**\n * Request body for `POST /auth/token/exchange`.\n *\n * Kept beside `TokenExchangeResponseSchema` because every consumer that can\n * receive an AUTH_CODE_EXCHANGE code must send this body. Do not let clients\n * hand-roll `{ code }` literals: the request side is part of the same public\n * runtime contract as the response and must drift in lockstep.\n */\nexport const TokenExchangeRequestSchema = z.strictObject({\n code: z.string().min(1),\n});\n\n/**\n * Inferred request body for `POST /auth/token/exchange`.\n */\nexport type TokenExchangeRequest = z.infer<typeof TokenExchangeRequestSchema>;\n\n/**\n * Response body for `POST /auth/token/exchange` (cross-app-jwt-propagation Step 5) when the code signs in.\n *\n * A code a federated sign-in was PARKED behind (#1103 — the account still owes its organization) answers with\n * the separate `TokenExchangeOrganizationOnboardingResponseSchema` instead (`{ nextStep, sessionId }`, no token).\n * It is kept out of this schema on purpose: this one is strict and parsed by receivers that can never hold a\n * parked code (the docs site redeems only handoff codes, which need a signed-in caller), so widening it would\n * teach them a shape they must then refuse.\n *\n * Lives in this file (rather than `authentication.shared.dto.schemas.ts`)\n * because every receiver of an AUTH_CODE_EXCHANGE token — the SaaS app, the\n * docs site — is by construction also a client-bundle target. Keeping the\n * response schema in the public-runtime-safe atom file lets those receivers\n * import the same source of truth via `@wildo-ai/saas-models/public-runtime`\n * without paying the `initZodDecorators()` boot cost\n * (saas-models-public-runtime.md K-1, K-4).\n *\n * Field semantics:\n * - `accessToken`, `expiresIn` — the freshly minted access-token response for\n * the consuming frontend. The consumable token's metadata also carries the\n * refresh token internally, but the exchange handler routes it to the\n * HttpOnly cookie channel rather than the JSON body.\n * - `returnPath` — present only for handoff-issued codes (NOT OAuth2-callback\n * codes); the path the receiving frontend should navigate to after the\n * exchange completes. Refined with the same `RETURN_PATH_REFINES` as the\n * issuer-side `CrossFrontendHandoff_ReturnPathSchema` (single source of\n * truth — issuer and receiver cannot drift on which payloads are rejected).\n * The optional+refines composition means: when absent, the field passes\n * silently (OAuth2-callback path); when present, it MUST clear every\n * refine, otherwise the receiver-side `.parse()` call in `tokenExchange()`\n * throws and the response never goes out. That is intentional — a\n * tampered metadata round-trip is a security event, not a degraded UX.\n * - `sourceFrontendServiceName`, `targetServiceKey` — present only for\n * handoff-issued codes. Lets the receiver render telemetry / breadcrumbs\n * (\"you came from the admin panel\") without round-tripping another API call.\n *\n * Why optional fields rather than a discriminated union: OAuth2-callback\n * codes go through the same exchange handler with the same metadata\n * skeleton minus the handoff-specific fields, so a discriminator would\n * require a synthetic `kind` field that adds no information. The optionality\n * IS the discriminator: presence of `returnPath` (or `sourceFrontendServiceName`)\n * tells the receiver \"this came from a cross-frontend handoff, treat it\n * accordingly\". This load-bearing invariant is enforced upstream by the\n * `tokenExchange()` controller, which mints the response object via\n * `if (typeof metadata.returnPath === 'string') response.returnPath = …`\n * (omit-when-absent). If a future regression starts emitting `null` or `''`\n * for OAuth2-callback codes, the receiver-side discrimination breaks\n * silently — the contract is documented here and pinned by the integration\n * test in `cross-frontend-handoff-token-exchange.integration.test.ts`.\n *\n * **H-3 history**: an early `<AuthExchangePage>` implementation read\n * `response.metadata?.returnPath` (always undefined — `metadata` is not\n * a key on the response). The bad read was caught by code review (M-7)\n * and replaced by reading the correct top-level `response.returnPath`.\n * Cross-package `z.infer<typeof TokenExchangeResponseSchema>` IS tight\n * (the same bad access today fires `TS2339: Property 'metadata' does\n * not exist`) provided the consuming bundle has booted\n * `@wildo-ai/zod-decorators` once via `ensureZodDecoratorsLoaded(z)` —\n * which the docs runtime entry does (`engine/saas-technical-doc/src/runtime/index.ts`)\n * and the SaaS app gets implicitly via the saas-models root barrel. The\n * `expectTypeOf` pins in the schemas test file enforce that the inferred\n * shape stays tight; CI runs them via Vitest `typecheck.enabled` mode.\n */\n/**\n * Token exchange response (cross-app-jwt-propagation Step 5 + OAuth2 callback).\n *\n * **Wire contract — refresh token is NEVER included** (Auth-hardening\n * Slice A Step 6, 2026-04-13). Pre-Slice-A this schema carried\n * `refreshToken: z.string()` which was emitted in the JSON body for\n * AUTH_CODE_EXCHANGE redemptions. The cookie migration (A-Step 2)\n * routed the refresh token to `Set-Cookie: __wildo_refresh=…`;\n * A-Step 6 removes the body field entirely. The receiving frontend\n * (SaaS app via `saas-frontend-lib`, or docs site via `docsAuthClient`)\n * stores the access token in memory; the SaaS app additionally\n * receives the refresh cookie automatically (same-origin browser\n * default), while the docs site has no refresh loop and re-handshakes\n * on next gated navigation when the access token expires.\n *\n * The strict-object shape pins the H-3 invariant: `returnPath` lives at\n * the TOP LEVEL — there is intentionally NO `metadata` envelope. Adding\n * an unknown key would now ALSO fire because `refreshToken` is removed\n * (a server still emitting `refreshToken` would fail strict-parse on\n * the receiver — surfacing the misalignment loudly rather than letting\n * the field silently leak through).\n */\nexport const TokenExchangeResponseSchema = z.strictObject({\n accessToken: z.string(),\n expiresIn: z.number(),\n returnPath: applyReturnPathRefines(z.string()).optional(),\n sourceFrontendServiceName: z.string().optional(),\n targetServiceKey: z.string().optional(),\n});\n\n/**\n * Inferred response shape — see `TokenExchangeResponseSchema` JSDoc on\n * the cross-package `z.infer` safety contract (post-H-3 fix).\n */\nexport type TokenExchangeResponse = z.infer<typeof TokenExchangeResponseSchema>;\n"]}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * The passwords a verifier must refuse, and the rule that REPLACED composition rules.
3
+ *
4
+ * > "When processing a request to establish or change a password, verifiers SHALL compare the
5
+ * > prospective secret against a blocklist that contains known commonly used, expected, or
6
+ * > compromised passwords. The entire password SHALL be subject to comparison, not substrings or
7
+ * > words that might be contained therein."
8
+ *
9
+ * spec-cite: NIST SP 800-63B-4 §3.1.1.2 "Password Verifiers"
10
+ * (https://pages.nist.gov/800-63-4/sp800-63b.html).
11
+ *
12
+ * That same section is where Wildo's composition rules went: "Verifiers and CSPs SHALL NOT impose
13
+ * other composition rules (e.g., requiring mixtures of different character types) for passwords."
14
+ * So this list is not an extra check bolted onto the old policy — it is the check the standard asks
15
+ * for INSTEAD of the ones that were removed, and without it the policy would have lost a rule and
16
+ * gained nothing.
17
+ *
18
+ * ## Why the list is SMALL, deliberately
19
+ *
20
+ * The standard says so in the same paragraph: "Excessively large blocklists are of little
21
+ * incremental security benefit because the blocklist is used to defend against online attacks, which
22
+ * are already limited by the throttling requirements described in Sec. 3.2.2."
23
+ * spec-cite: NIST SP 800-63B-4 §3.1.1.2 (https://pages.nist.gov/800-63-4/sp800-63b.html).
24
+ * Wildo's lockout policy IS that throttling. So this list only has to cover what an attacker reaches BEFORE the
25
+ * throttle bites — a few hundred guesses, not a breach corpus.
26
+ *
27
+ * ## Why it is bundled rather than fetched
28
+ *
29
+ * A k-anonymity range query to a third-party breach API sends a hash prefix off the machine every
30
+ * time anybody sets a password. That is an outbound dependency on the sign-up path: it fails when
31
+ * the third party does, and it is a privacy fact a generated application would owe its own users.
32
+ * A bundled list costs nothing at runtime, works offline, and the standard explicitly says size is
33
+ * not where the security comes from. An application wanting a corpus check can add one; the
34
+ * framework's floor does not rest on somebody else's uptime.
35
+ *
36
+ * ## The two CONTEXTUAL guesses matter more than the list
37
+ *
38
+ * Appendix A.3 names them: "specific words (e.g., the name of the service itself) that users are
39
+ * likely to choose". The application's own name and the local part of the user's own address are the
40
+ * first two things an attacker tries and the two no static list can hold, because they differ per
41
+ * application and per person.
42
+ *
43
+ * ## Comparison is WHOLE-STRING
44
+ *
45
+ * Case-folded and trimmed, and nothing else. Substring matching is refused by the sentence quoted
46
+ * above, and it is also what makes a blocklist infuriating: rejecting everything CONTAINING "admin"
47
+ * refuses `administrative-quandary-seven` for no reason. It is why `correct horse battery staple`
48
+ * is ACCEPTED while `correcthorsebatterystaple` is refused — the spaced form is a different string,
49
+ * and only the closed-up form is a famous enough guess to be worth refusing.
50
+ *
51
+ * assurance-control: WILDO.IDENTITY.CREDENTIAL_LIFECYCLE — a password an attacker would reach before
52
+ * the throttle does is refused at the moment it is set.
53
+ */
54
+ /**
55
+ * What an attacker guesses about THIS application and THIS person, which no static list can hold.
56
+ *
57
+ * `appName` is the service's own name and `email` contributes its local part. Both are also compared
58
+ * with separators squashed out, because `Wonder Todos` and `wondertodos` are one guess.
59
+ */
60
+ export interface PasswordBlocklistContext {
61
+ readonly appName?: string;
62
+ readonly email?: string;
63
+ }
64
+ /**
65
+ * Is this password one an attacker reaches before the throttle does?
66
+ *
67
+ * Whole-string comparison against the bundled list and the two contextual guesses. An empty
68
+ * candidate answers `false`: an empty password is the length rule's business, and answering `true`
69
+ * here would report the wrong reason for it.
70
+ */
71
+ export declare function isPasswordBlocklisted(password: string, context?: PasswordBlocklistContext): boolean;
72
+ /** The bundled entry count, for tests that assert the list has not been emptied by a bad edit. */
73
+ export declare const COMMON_PASSWORD_BLOCKLIST_SIZE: number;
74
+ //# sourceMappingURL=password-blocklist.shared.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"password-blocklist.shared.utils.d.ts","sourceRoot":"","sources":["../../../../../src/security/authentications/password-blocklist.shared.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAuCH;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAiBD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAKnG;AAED,kGAAkG;AAClG,eAAO,MAAM,8BAA8B,EAAE,MAAiC,CAAC"}
@@ -0,0 +1,122 @@
1
+ /**
2
+ * The passwords a verifier must refuse, and the rule that REPLACED composition rules.
3
+ *
4
+ * > "When processing a request to establish or change a password, verifiers SHALL compare the
5
+ * > prospective secret against a blocklist that contains known commonly used, expected, or
6
+ * > compromised passwords. The entire password SHALL be subject to comparison, not substrings or
7
+ * > words that might be contained therein."
8
+ *
9
+ * spec-cite: NIST SP 800-63B-4 §3.1.1.2 "Password Verifiers"
10
+ * (https://pages.nist.gov/800-63-4/sp800-63b.html).
11
+ *
12
+ * That same section is where Wildo's composition rules went: "Verifiers and CSPs SHALL NOT impose
13
+ * other composition rules (e.g., requiring mixtures of different character types) for passwords."
14
+ * So this list is not an extra check bolted onto the old policy — it is the check the standard asks
15
+ * for INSTEAD of the ones that were removed, and without it the policy would have lost a rule and
16
+ * gained nothing.
17
+ *
18
+ * ## Why the list is SMALL, deliberately
19
+ *
20
+ * The standard says so in the same paragraph: "Excessively large blocklists are of little
21
+ * incremental security benefit because the blocklist is used to defend against online attacks, which
22
+ * are already limited by the throttling requirements described in Sec. 3.2.2."
23
+ * spec-cite: NIST SP 800-63B-4 §3.1.1.2 (https://pages.nist.gov/800-63-4/sp800-63b.html).
24
+ * Wildo's lockout policy IS that throttling. So this list only has to cover what an attacker reaches BEFORE the
25
+ * throttle bites — a few hundred guesses, not a breach corpus.
26
+ *
27
+ * ## Why it is bundled rather than fetched
28
+ *
29
+ * A k-anonymity range query to a third-party breach API sends a hash prefix off the machine every
30
+ * time anybody sets a password. That is an outbound dependency on the sign-up path: it fails when
31
+ * the third party does, and it is a privacy fact a generated application would owe its own users.
32
+ * A bundled list costs nothing at runtime, works offline, and the standard explicitly says size is
33
+ * not where the security comes from. An application wanting a corpus check can add one; the
34
+ * framework's floor does not rest on somebody else's uptime.
35
+ *
36
+ * ## The two CONTEXTUAL guesses matter more than the list
37
+ *
38
+ * Appendix A.3 names them: "specific words (e.g., the name of the service itself) that users are
39
+ * likely to choose". The application's own name and the local part of the user's own address are the
40
+ * first two things an attacker tries and the two no static list can hold, because they differ per
41
+ * application and per person.
42
+ *
43
+ * ## Comparison is WHOLE-STRING
44
+ *
45
+ * Case-folded and trimmed, and nothing else. Substring matching is refused by the sentence quoted
46
+ * above, and it is also what makes a blocklist infuriating: rejecting everything CONTAINING "admin"
47
+ * refuses `administrative-quandary-seven` for no reason. It is why `correct horse battery staple`
48
+ * is ACCEPTED while `correcthorsebatterystaple` is refused — the spaced form is a different string,
49
+ * and only the closed-up form is a famous enough guess to be worth refusing.
50
+ *
51
+ * assurance-control: WILDO.IDENTITY.CREDENTIAL_LIFECYCLE — a password an attacker would reach before
52
+ * the throttle does is refused at the moment it is set.
53
+ */
54
+ /**
55
+ * The passwords attackers try first, ordered roughly by observed frequency in public breach
56
+ * analyses. The order carries no meaning at runtime — membership is a set lookup — and it is kept as
57
+ * a readable array rather than a generated artifact so that a reader wondering "is mine in here?"
58
+ * can answer it by looking.
59
+ */
60
+ const COMMON_PASSWORDS = [
61
+ '123456', '123456789', '12345678', '1234567890', '1234567', '12345', '123123', '111111', '000000',
62
+ '654321', '666666', '888888', '121212', '112233', '159753', '987654321', '123321', '1234',
63
+ 'password', 'password1', 'password123', 'passw0rd', 'p@ssw0rd', 'p@ssword', 'pass', 'passwd',
64
+ 'password12', 'password1234', 'passw0rd1', 'secret', 'secret123',
65
+ 'qwerty', 'qwerty123', 'qwerty1234', 'qwertyuiop', 'qwe123', '1q2w3e4r', '1q2w3e4r5t', 'asdfgh',
66
+ 'asdfghjkl', 'zxcvbnm', 'azerty', 'qazwsx', 'qwertz', 'asdf', 'asdf1234',
67
+ 'iloveyou', 'iloveyou1', 'princess', 'sunshine', 'monkey', 'dragon', 'football', 'baseball',
68
+ 'superman', 'batman', 'starwars', 'master', 'shadow', 'hunter', 'trustno1', 'trustnoone',
69
+ 'freedom', 'whatever', 'letmein', 'letmein123', 'welcome', 'welcome1', 'welcome123',
70
+ 'login', 'admin', 'admin123', 'admin1234', 'administrator', 'root', 'root123', 'guest',
71
+ 'test', 'test123', 'demo', 'user', 'default', 'changeme', 'changeme123', 'access',
72
+ 'abc123', 'abcd1234', 'a1b2c3', 'aaaaaa', 'temp', 'temporary',
73
+ 'summer', 'winter', 'spring', 'autumn', 'january', 'december',
74
+ 'chocolate', 'liverpool', 'arsenal', 'chelsea', 'barcelona', 'juventus',
75
+ 'computer', 'internet', 'samsung', 'google', 'facebook', 'linkedin',
76
+ 'ninja', 'cheese', 'pepper', 'ginger', 'cookie', 'flower', 'purple', 'orange', 'silver',
77
+ 'loveme', 'lovely', 'family', 'friends', 'forever', 'nothing', 'anything',
78
+ 'soccer', 'hockey', 'killer', 'michael', 'jennifer', 'jordan', 'george', 'charlie', 'thomas',
79
+ 'robert', 'daniel', 'andrew', 'matthew', 'joshua', 'anthony', 'william', 'nicole', 'ashley',
80
+ 'amanda', 'jessica', 'samantha',
81
+ 'correcthorsebatterystaple',
82
+ ];
83
+ const COMMON_PASSWORD_SET = new Set(COMMON_PASSWORDS);
84
+ /** Case-folded and trimmed. Nothing else — the comparison is whole-string, per §3.1.1.2. */
85
+ function normalizeCandidate(candidate) {
86
+ return candidate.trim().toLowerCase();
87
+ }
88
+ function contextualGuesses(context) {
89
+ const guesses = new Set();
90
+ const add = (value) => {
91
+ if (!value)
92
+ return;
93
+ const normalized = normalizeCandidate(value);
94
+ if (normalized.length === 0)
95
+ return;
96
+ guesses.add(normalized);
97
+ const squashed = normalized.replace(/[\s._-]+/g, '');
98
+ if (squashed.length > 0)
99
+ guesses.add(squashed);
100
+ };
101
+ add(context?.appName);
102
+ add(context?.email?.split('@')[0]);
103
+ return guesses;
104
+ }
105
+ /**
106
+ * Is this password one an attacker reaches before the throttle does?
107
+ *
108
+ * Whole-string comparison against the bundled list and the two contextual guesses. An empty
109
+ * candidate answers `false`: an empty password is the length rule's business, and answering `true`
110
+ * here would report the wrong reason for it.
111
+ */
112
+ export function isPasswordBlocklisted(password, context) {
113
+ const normalized = normalizeCandidate(password);
114
+ if (normalized.length === 0)
115
+ return false;
116
+ if (COMMON_PASSWORD_SET.has(normalized))
117
+ return true;
118
+ return contextualGuesses(context).has(normalized);
119
+ }
120
+ /** The bundled entry count, for tests that assert the list has not been emptied by a bad edit. */
121
+ export const COMMON_PASSWORD_BLOCKLIST_SIZE = COMMON_PASSWORD_SET.size;
122
+ //# sourceMappingURL=password-blocklist.shared.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"password-blocklist.shared.utils.js","sourceRoot":"","sources":["../../../../../src/security/authentications/password-blocklist.shared.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAEH;;;;;GAKG;AACH,MAAM,gBAAgB,GAAsB;IAC1C,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ;IACjG,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM;IACzF,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ;IAC5F,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW;IAChE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ;IAC/F,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU;IACxE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU;IAC3F,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY;IACxF,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY;IACnF,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO;IACtF,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ;IACjF,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW;IAC7D,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU;IAC7D,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU;IACvE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU;IACnE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ;IACvF,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU;IACzE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ;IAC5F,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ;IAC3F,QAAQ,EAAE,SAAS,EAAE,UAAU;IAC/B,2BAA2B;CAC5B,CAAC;AAEF,MAAM,mBAAmB,GAAwB,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC;AAE3E,4FAA4F;AAC5F,SAAS,kBAAkB,CAAC,SAAiB;IAC3C,OAAO,SAAS,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACxC,CAAC;AAaD,SAAS,iBAAiB,CAAC,OAA6C;IACtE,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,GAAG,GAAG,CAAC,KAAyB,EAAQ,EAAE;QAC9C,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,MAAM,UAAU,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QACpC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACxB,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACrD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC,CAAC;IACF,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACtB,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAgB,EAAE,OAAkC;IACxF,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAChD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1C,IAAI,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAC;IACrD,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AACpD,CAAC;AAED,kGAAkG;AAClG,MAAM,CAAC,MAAM,8BAA8B,GAAW,mBAAmB,CAAC,IAAI,CAAC","sourcesContent":["/**\n * The passwords a verifier must refuse, and the rule that REPLACED composition rules.\n *\n * > \"When processing a request to establish or change a password, verifiers SHALL compare the\n * > prospective secret against a blocklist that contains known commonly used, expected, or\n * > compromised passwords. The entire password SHALL be subject to comparison, not substrings or\n * > words that might be contained therein.\"\n *\n * spec-cite: NIST SP 800-63B-4 §3.1.1.2 \"Password Verifiers\"\n * (https://pages.nist.gov/800-63-4/sp800-63b.html).\n *\n * That same section is where Wildo's composition rules went: \"Verifiers and CSPs SHALL NOT impose\n * other composition rules (e.g., requiring mixtures of different character types) for passwords.\"\n * So this list is not an extra check bolted onto the old policy — it is the check the standard asks\n * for INSTEAD of the ones that were removed, and without it the policy would have lost a rule and\n * gained nothing.\n *\n * ## Why the list is SMALL, deliberately\n *\n * The standard says so in the same paragraph: \"Excessively large blocklists are of little\n * incremental security benefit because the blocklist is used to defend against online attacks, which\n * are already limited by the throttling requirements described in Sec. 3.2.2.\"\n * spec-cite: NIST SP 800-63B-4 §3.1.1.2 (https://pages.nist.gov/800-63-4/sp800-63b.html).\n * Wildo's lockout policy IS that throttling. So this list only has to cover what an attacker reaches BEFORE the\n * throttle bites — a few hundred guesses, not a breach corpus.\n *\n * ## Why it is bundled rather than fetched\n *\n * A k-anonymity range query to a third-party breach API sends a hash prefix off the machine every\n * time anybody sets a password. That is an outbound dependency on the sign-up path: it fails when\n * the third party does, and it is a privacy fact a generated application would owe its own users.\n * A bundled list costs nothing at runtime, works offline, and the standard explicitly says size is\n * not where the security comes from. An application wanting a corpus check can add one; the\n * framework's floor does not rest on somebody else's uptime.\n *\n * ## The two CONTEXTUAL guesses matter more than the list\n *\n * Appendix A.3 names them: \"specific words (e.g., the name of the service itself) that users are\n * likely to choose\". The application's own name and the local part of the user's own address are the\n * first two things an attacker tries and the two no static list can hold, because they differ per\n * application and per person.\n *\n * ## Comparison is WHOLE-STRING\n *\n * Case-folded and trimmed, and nothing else. Substring matching is refused by the sentence quoted\n * above, and it is also what makes a blocklist infuriating: rejecting everything CONTAINING \"admin\"\n * refuses `administrative-quandary-seven` for no reason. It is why `correct horse battery staple`\n * is ACCEPTED while `correcthorsebatterystaple` is refused — the spaced form is a different string,\n * and only the closed-up form is a famous enough guess to be worth refusing.\n *\n * assurance-control: WILDO.IDENTITY.CREDENTIAL_LIFECYCLE — a password an attacker would reach before\n * the throttle does is refused at the moment it is set.\n */\n\n/**\n * The passwords attackers try first, ordered roughly by observed frequency in public breach\n * analyses. The order carries no meaning at runtime — membership is a set lookup — and it is kept as\n * a readable array rather than a generated artifact so that a reader wondering \"is mine in here?\"\n * can answer it by looking.\n */\nconst COMMON_PASSWORDS: readonly string[] = [\n '123456', '123456789', '12345678', '1234567890', '1234567', '12345', '123123', '111111', '000000',\n '654321', '666666', '888888', '121212', '112233', '159753', '987654321', '123321', '1234',\n 'password', 'password1', 'password123', 'passw0rd', 'p@ssw0rd', 'p@ssword', 'pass', 'passwd',\n 'password12', 'password1234', 'passw0rd1', 'secret', 'secret123',\n 'qwerty', 'qwerty123', 'qwerty1234', 'qwertyuiop', 'qwe123', '1q2w3e4r', '1q2w3e4r5t', 'asdfgh',\n 'asdfghjkl', 'zxcvbnm', 'azerty', 'qazwsx', 'qwertz', 'asdf', 'asdf1234',\n 'iloveyou', 'iloveyou1', 'princess', 'sunshine', 'monkey', 'dragon', 'football', 'baseball',\n 'superman', 'batman', 'starwars', 'master', 'shadow', 'hunter', 'trustno1', 'trustnoone',\n 'freedom', 'whatever', 'letmein', 'letmein123', 'welcome', 'welcome1', 'welcome123',\n 'login', 'admin', 'admin123', 'admin1234', 'administrator', 'root', 'root123', 'guest',\n 'test', 'test123', 'demo', 'user', 'default', 'changeme', 'changeme123', 'access',\n 'abc123', 'abcd1234', 'a1b2c3', 'aaaaaa', 'temp', 'temporary',\n 'summer', 'winter', 'spring', 'autumn', 'january', 'december',\n 'chocolate', 'liverpool', 'arsenal', 'chelsea', 'barcelona', 'juventus',\n 'computer', 'internet', 'samsung', 'google', 'facebook', 'linkedin',\n 'ninja', 'cheese', 'pepper', 'ginger', 'cookie', 'flower', 'purple', 'orange', 'silver',\n 'loveme', 'lovely', 'family', 'friends', 'forever', 'nothing', 'anything',\n 'soccer', 'hockey', 'killer', 'michael', 'jennifer', 'jordan', 'george', 'charlie', 'thomas',\n 'robert', 'daniel', 'andrew', 'matthew', 'joshua', 'anthony', 'william', 'nicole', 'ashley',\n 'amanda', 'jessica', 'samantha',\n 'correcthorsebatterystaple',\n];\n\nconst COMMON_PASSWORD_SET: ReadonlySet<string> = new Set(COMMON_PASSWORDS);\n\n/** Case-folded and trimmed. Nothing else — the comparison is whole-string, per §3.1.1.2. */\nfunction normalizeCandidate(candidate: string): string {\n return candidate.trim().toLowerCase();\n}\n\n/**\n * What an attacker guesses about THIS application and THIS person, which no static list can hold.\n *\n * `appName` is the service's own name and `email` contributes its local part. Both are also compared\n * with separators squashed out, because `Wonder Todos` and `wondertodos` are one guess.\n */\nexport interface PasswordBlocklistContext {\n readonly appName?: string;\n readonly email?: string;\n}\n\nfunction contextualGuesses(context: PasswordBlocklistContext | undefined): Set<string> {\n const guesses = new Set<string>();\n const add = (value: string | undefined): void => {\n if (!value) return;\n const normalized = normalizeCandidate(value);\n if (normalized.length === 0) return;\n guesses.add(normalized);\n const squashed = normalized.replace(/[\\s._-]+/g, '');\n if (squashed.length > 0) guesses.add(squashed);\n };\n add(context?.appName);\n add(context?.email?.split('@')[0]);\n return guesses;\n}\n\n/**\n * Is this password one an attacker reaches before the throttle does?\n *\n * Whole-string comparison against the bundled list and the two contextual guesses. An empty\n * candidate answers `false`: an empty password is the length rule's business, and answering `true`\n * here would report the wrong reason for it.\n */\nexport function isPasswordBlocklisted(password: string, context?: PasswordBlocklistContext): boolean {\n const normalized = normalizeCandidate(password);\n if (normalized.length === 0) return false;\n if (COMMON_PASSWORD_SET.has(normalized)) return true;\n return contextualGuesses(context).has(normalized);\n}\n\n/** The bundled entry count, for tests that assert the list has not been emptied by a bad edit. */\nexport const COMMON_PASSWORD_BLOCKLIST_SIZE: number = COMMON_PASSWORD_SET.size;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"password-reset.shared.dto.schemas.d.ts","sourceRoot":"","sources":["../../../../src/security/authentications/password-reset.shared.dto.schemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB;;;GAGG;AACH,eAAO,MAAM,6BAA6B;;iBAIxC,CAAC;AAGH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAEpF;;;;GAIG;AACH,eAAO,MAAM,8BAA8B;;;iBAGzC,CAAC;AAGH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAMtF;;;;;;;GAOG;AACH,eAAO,MAAM,kCAAkC;;;iBAO7C,CAAC;AAGH,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC"}
1
+ {"version":3,"file":"password-reset.shared.dto.schemas.d.ts","sourceRoot":"","sources":["../../../../../src/security/authentications/password-reset.shared.dto.schemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB;;;GAGG;AACH,eAAO,MAAM,6BAA6B;;iBAIxC,CAAC;AAGH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAEpF;;;;GAIG;AACH,eAAO,MAAM,8BAA8B;;;iBAGzC,CAAC;AAGH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAMtF;;;;;;;GAOG;AACH,eAAO,MAAM,kCAAkC;;;iBAO7C,CAAC;AAGH,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC"}