@wildo-ai/saas-models 1.0.1 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1282) hide show
  1. package/LICENSE +34 -0
  2. package/dist/esm/.builder.pid +9 -0
  3. package/dist/esm/__tests__/setup.d.ts.map +1 -1
  4. package/dist/esm/__tests__/setup.js +18 -3
  5. package/dist/esm/__tests__/setup.js.map +1 -1
  6. package/dist/esm/_inspect.d.ts +2 -0
  7. package/dist/esm/_inspect.d.ts.map +1 -0
  8. package/dist/esm/_inspect.js +3 -0
  9. package/dist/esm/_inspect.js.map +1 -0
  10. package/dist/esm/applications/application-metadata.shared.resources-config.schemas.d.ts +6 -6
  11. package/dist/esm/applications/application-metadata.shared.resources-config.schemas.d.ts.map +1 -1
  12. package/dist/esm/applications/application-metadata.shared.resources-config.schemas.js +5 -1
  13. package/dist/esm/applications/application-metadata.shared.resources-config.schemas.js.map +1 -1
  14. package/dist/esm/applications/application-subject.shared.schemas.d.ts +51 -0
  15. package/dist/esm/applications/application-subject.shared.schemas.d.ts.map +1 -0
  16. package/dist/esm/applications/application-subject.shared.schemas.js +56 -0
  17. package/dist/esm/applications/application-subject.shared.schemas.js.map +1 -0
  18. package/dist/esm/applications/application-versions.shared.resources-config.schemas.d.ts +9 -11
  19. package/dist/esm/applications/application-versions.shared.resources-config.schemas.d.ts.map +1 -1
  20. package/dist/esm/applications/application-versions.shared.resources-config.schemas.js +42 -74
  21. package/dist/esm/applications/application-versions.shared.resources-config.schemas.js.map +1 -1
  22. package/dist/esm/applications/applications-context.schemas.d.ts +228 -200
  23. package/dist/esm/applications/applications-context.schemas.d.ts.map +1 -1
  24. package/dist/esm/applications/applications-context.schemas.js +1 -1
  25. package/dist/esm/applications/applications-context.schemas.js.map +1 -1
  26. package/dist/esm/applications/applications.shared.resources-config.schemas.d.ts +4 -9
  27. package/dist/esm/applications/applications.shared.resources-config.schemas.d.ts.map +1 -1
  28. package/dist/esm/applications/applications.shared.resources-config.schemas.js +103 -87
  29. package/dist/esm/applications/applications.shared.resources-config.schemas.js.map +1 -1
  30. package/dist/esm/applications/applications.shared.schemas.d.ts +59 -5
  31. package/dist/esm/applications/applications.shared.schemas.d.ts.map +1 -1
  32. package/dist/esm/applications/applications.shared.schemas.js +80 -3
  33. package/dist/esm/applications/applications.shared.schemas.js.map +1 -1
  34. package/dist/esm/billing/billing-account.shared.resources-config.schemas.d.ts +4 -4
  35. package/dist/esm/billing/billing-account.shared.resources-config.schemas.d.ts.map +1 -1
  36. package/dist/esm/billing/billing-account.shared.resources-config.schemas.js +98 -25
  37. package/dist/esm/billing/billing-account.shared.resources-config.schemas.js.map +1 -1
  38. package/dist/esm/billing/billing-account.shared.schemas.d.ts +32 -8
  39. package/dist/esm/billing/billing-account.shared.schemas.d.ts.map +1 -1
  40. package/dist/esm/billing/billing-account.shared.schemas.js +67 -2
  41. package/dist/esm/billing/billing-account.shared.schemas.js.map +1 -1
  42. package/dist/esm/billing/billing-configuration.shared.schemas.d.ts +8 -8
  43. package/dist/esm/billing/billing-configuration.shared.schemas.d.ts.map +1 -1
  44. package/dist/esm/billing/billing-configuration.shared.schemas.js +2 -3
  45. package/dist/esm/billing/billing-configuration.shared.schemas.js.map +1 -1
  46. package/dist/esm/billing/billing-enums.shared.schemas.d.ts +75 -0
  47. package/dist/esm/billing/billing-enums.shared.schemas.d.ts.map +1 -1
  48. package/dist/esm/billing/billing-enums.shared.schemas.js +78 -1
  49. package/dist/esm/billing/billing-enums.shared.schemas.js.map +1 -1
  50. package/dist/esm/billing/billing-types.shared.schemas.d.ts +204 -42
  51. package/dist/esm/billing/billing-types.shared.schemas.d.ts.map +1 -1
  52. package/dist/esm/billing/billing-types.shared.schemas.js +76 -1
  53. package/dist/esm/billing/billing-types.shared.schemas.js.map +1 -1
  54. package/dist/esm/billing/credit-pool.shared.resources-config.schemas.d.ts +8 -6
  55. package/dist/esm/billing/credit-pool.shared.resources-config.schemas.d.ts.map +1 -1
  56. package/dist/esm/billing/credit-pool.shared.resources-config.schemas.js +48 -16
  57. package/dist/esm/billing/credit-pool.shared.resources-config.schemas.js.map +1 -1
  58. package/dist/esm/billing/credit-pool.shared.schemas.d.ts +9 -9
  59. package/dist/esm/billing/credit-pool.shared.schemas.d.ts.map +1 -1
  60. package/dist/esm/billing/credit-pool.shared.schemas.js +13 -6
  61. package/dist/esm/billing/credit-pool.shared.schemas.js.map +1 -1
  62. package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.d.ts +2 -2
  63. package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.d.ts.map +1 -1
  64. package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.js +26 -17
  65. package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.js.map +1 -1
  66. package/dist/esm/billing/invoice-ref.shared.schemas.d.ts +10 -10
  67. package/dist/esm/billing/invoice-ref.shared.schemas.d.ts.map +1 -1
  68. package/dist/esm/billing/invoice-ref.shared.schemas.js +32 -7
  69. package/dist/esm/billing/invoice-ref.shared.schemas.js.map +1 -1
  70. package/dist/esm/billing/price.shared.resources-config.schemas.d.ts +7 -7
  71. package/dist/esm/billing/price.shared.resources-config.schemas.d.ts.map +1 -1
  72. package/dist/esm/billing/price.shared.resources-config.schemas.js +23 -5
  73. package/dist/esm/billing/price.shared.resources-config.schemas.js.map +1 -1
  74. package/dist/esm/billing/price.shared.schemas.d.ts +4 -4
  75. package/dist/esm/billing/price.shared.schemas.d.ts.map +1 -1
  76. package/dist/esm/billing/price.shared.schemas.js +1 -1
  77. package/dist/esm/billing/price.shared.schemas.js.map +1 -1
  78. package/dist/esm/billing/product-behavior-policy.shared.schemas.d.ts +9 -9
  79. package/dist/esm/billing/product-behavior-policy.shared.schemas.d.ts.map +1 -1
  80. package/dist/esm/billing/product-behavior-policy.shared.schemas.js +10 -2
  81. package/dist/esm/billing/product-behavior-policy.shared.schemas.js.map +1 -1
  82. package/dist/esm/billing/product-definition.shared.schemas.d.ts +27 -27
  83. package/dist/esm/billing/product-definition.shared.schemas.d.ts.map +1 -1
  84. package/dist/esm/billing/product-definition.shared.schemas.js +39 -9
  85. package/dist/esm/billing/product-definition.shared.schemas.js.map +1 -1
  86. package/dist/esm/billing/product.shared.resources-config.schemas.d.ts +22 -22
  87. package/dist/esm/billing/product.shared.resources-config.schemas.d.ts.map +1 -1
  88. package/dist/esm/billing/product.shared.resources-config.schemas.js +6 -6
  89. package/dist/esm/billing/product.shared.resources-config.schemas.js.map +1 -1
  90. package/dist/esm/billing/product.shared.schemas.d.ts +19 -19
  91. package/dist/esm/billing/product.shared.schemas.d.ts.map +1 -1
  92. package/dist/esm/billing/product.shared.schemas.js +1 -1
  93. package/dist/esm/billing/product.shared.schemas.js.map +1 -1
  94. package/dist/esm/billing/promotions.shared.resources-config.schemas.d.ts +7 -7
  95. package/dist/esm/billing/promotions.shared.resources-config.schemas.d.ts.map +1 -1
  96. package/dist/esm/billing/promotions.shared.resources-config.schemas.js +34 -6
  97. package/dist/esm/billing/promotions.shared.resources-config.schemas.js.map +1 -1
  98. package/dist/esm/billing/promotions.shared.schemas.d.ts +2 -2
  99. package/dist/esm/billing/promotions.shared.schemas.d.ts.map +1 -1
  100. package/dist/esm/billing/promotions.shared.schemas.js +1 -1
  101. package/dist/esm/billing/promotions.shared.schemas.js.map +1 -1
  102. package/dist/esm/billing/referral.shared.resources-config.schemas.d.ts +12 -12
  103. package/dist/esm/billing/referral.shared.resources-config.schemas.d.ts.map +1 -1
  104. package/dist/esm/billing/referral.shared.resources-config.schemas.js +5 -5
  105. package/dist/esm/billing/referral.shared.resources-config.schemas.js.map +1 -1
  106. package/dist/esm/billing/referral.shared.schemas.d.ts +7 -7
  107. package/dist/esm/billing/referral.shared.schemas.d.ts.map +1 -1
  108. package/dist/esm/billing/referral.shared.schemas.js +36 -8
  109. package/dist/esm/billing/referral.shared.schemas.js.map +1 -1
  110. package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts +6 -6
  111. package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts.map +1 -1
  112. package/dist/esm/billing/subscription.shared.resources-config.schemas.js +51 -24
  113. package/dist/esm/billing/subscription.shared.resources-config.schemas.js.map +1 -1
  114. package/dist/esm/billing/subscription.shared.schemas.d.ts +13 -13
  115. package/dist/esm/billing/subscription.shared.schemas.d.ts.map +1 -1
  116. package/dist/esm/billing/subscription.shared.schemas.js +37 -5
  117. package/dist/esm/billing/subscription.shared.schemas.js.map +1 -1
  118. package/dist/esm/billing/usage-record.shared.resources-config.schemas.d.ts +2 -2
  119. package/dist/esm/billing/usage-record.shared.resources-config.schemas.d.ts.map +1 -1
  120. package/dist/esm/billing/usage-record.shared.resources-config.schemas.js +23 -14
  121. package/dist/esm/billing/usage-record.shared.resources-config.schemas.js.map +1 -1
  122. package/dist/esm/billing/usage-record.shared.schemas.d.ts +15 -12
  123. package/dist/esm/billing/usage-record.shared.schemas.d.ts.map +1 -1
  124. package/dist/esm/billing/usage-record.shared.schemas.js +34 -7
  125. package/dist/esm/billing/usage-record.shared.schemas.js.map +1 -1
  126. package/dist/esm/charts/aggregation-query.shared.schemas.d.ts +36 -36
  127. package/dist/esm/charts/aggregation-query.shared.schemas.d.ts.map +1 -1
  128. package/dist/esm/charts/aggregation-query.shared.schemas.js +6 -6
  129. package/dist/esm/charts/aggregation-query.shared.schemas.js.map +1 -1
  130. package/dist/esm/charts/aggregation.shared.definitions.d.ts.map +1 -1
  131. package/dist/esm/charts/aggregation.shared.definitions.js +1 -1
  132. package/dist/esm/charts/aggregation.shared.definitions.js.map +1 -1
  133. package/dist/esm/charts/chart-definition-builder.shared.d.ts +5 -3
  134. package/dist/esm/charts/chart-definition-builder.shared.d.ts.map +1 -1
  135. package/dist/esm/charts/chart-definition-builder.shared.js +4 -2
  136. package/dist/esm/charts/chart-definition-builder.shared.js.map +1 -1
  137. package/dist/esm/{runtime/companion-artifact-placement.shared.definitions.d.ts → companion/artifact-placement.shared.definitions.d.ts} +2 -3
  138. package/dist/esm/companion/artifact-placement.shared.definitions.d.ts.map +1 -0
  139. package/dist/esm/{runtime/companion-artifact-placement.shared.definitions.js → companion/artifact-placement.shared.definitions.js} +1 -2
  140. package/dist/esm/companion/artifact-placement.shared.definitions.js.map +1 -0
  141. package/dist/esm/companion/provider-discovery.shared.schemas.d.ts +131 -0
  142. package/dist/esm/companion/provider-discovery.shared.schemas.d.ts.map +1 -0
  143. package/dist/esm/companion/provider-discovery.shared.schemas.js +122 -0
  144. package/dist/esm/companion/provider-discovery.shared.schemas.js.map +1 -0
  145. package/dist/esm/companion/shared-library-companion.shared.definitions.d.ts +6 -0
  146. package/dist/esm/companion/shared-library-companion.shared.definitions.d.ts.map +1 -0
  147. package/dist/esm/companion/shared-library-companion.shared.definitions.js +1 -0
  148. package/dist/esm/companion/shared-library-companion.shared.definitions.js.map +1 -0
  149. package/dist/esm/companion-exports.d.ts +4 -0
  150. package/dist/esm/companion-exports.d.ts.map +1 -0
  151. package/dist/esm/companion-exports.js +4 -0
  152. package/dist/esm/companion-exports.js.map +1 -0
  153. package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.d.ts +65 -0
  154. package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.d.ts.map +1 -0
  155. package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.js +68 -0
  156. package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.js.map +1 -0
  157. package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.d.ts +147 -0
  158. package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.d.ts.map +1 -0
  159. package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.js +20 -0
  160. package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.js.map +1 -0
  161. package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.d.ts +60 -16
  162. package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.d.ts.map +1 -1
  163. package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.js +77 -10
  164. package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.js.map +1 -1
  165. package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts +58 -0
  166. package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts.map +1 -0
  167. package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js +74 -0
  168. package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js.map +1 -0
  169. package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.d.ts +1949 -115
  170. package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.d.ts.map +1 -1
  171. package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.js +2229 -11
  172. package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.js.map +1 -1
  173. package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.d.ts +25 -10
  174. package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.d.ts.map +1 -1
  175. package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js +226 -3
  176. package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js.map +1 -1
  177. package/dist/esm/compliance/data-classification/data-classification.shared.schemas.d.ts +8 -0
  178. package/dist/esm/compliance/data-classification/data-classification.shared.schemas.d.ts.map +1 -0
  179. package/dist/esm/compliance/data-classification/data-classification.shared.schemas.js +9 -0
  180. package/dist/esm/compliance/data-classification/data-classification.shared.schemas.js.map +1 -0
  181. package/dist/esm/compliance/documents/governed-documents.shared.schemas.d.ts +524 -0
  182. package/dist/esm/compliance/documents/governed-documents.shared.schemas.d.ts.map +1 -0
  183. package/dist/esm/compliance/documents/governed-documents.shared.schemas.js +482 -0
  184. package/dist/esm/compliance/documents/governed-documents.shared.schemas.js.map +1 -0
  185. package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.d.ts +112 -0
  186. package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.d.ts.map +1 -0
  187. package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.js +120 -0
  188. package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.js.map +1 -0
  189. package/dist/esm/compliance/privacy/client-storage.shared.schemas.d.ts +134 -0
  190. package/dist/esm/compliance/privacy/client-storage.shared.schemas.d.ts.map +1 -0
  191. package/dist/esm/compliance/privacy/client-storage.shared.schemas.js +129 -0
  192. package/dist/esm/compliance/privacy/client-storage.shared.schemas.js.map +1 -0
  193. package/dist/esm/compliance/privacy/data-retention.shared.schemas.d.ts +1 -1
  194. package/dist/esm/compliance/privacy/data-retention.shared.schemas.d.ts.map +1 -1
  195. package/dist/esm/compliance/privacy/data-retention.shared.schemas.js +1 -1
  196. package/dist/esm/compliance/privacy/data-retention.shared.schemas.js.map +1 -1
  197. package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.d.ts +50 -0
  198. package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.d.ts.map +1 -0
  199. package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.js +98 -0
  200. package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.js.map +1 -0
  201. package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts +181 -0
  202. package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts.map +1 -0
  203. package/dist/esm/compliance/privacy/impersonalization.shared.schemas.js +184 -0
  204. package/dist/esm/compliance/privacy/impersonalization.shared.schemas.js.map +1 -0
  205. package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.d.ts +230 -0
  206. package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.d.ts.map +1 -0
  207. package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.js +232 -0
  208. package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.js.map +1 -0
  209. package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.d.ts +220 -0
  210. package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.d.ts.map +1 -0
  211. package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.js +252 -0
  212. package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.js.map +1 -0
  213. package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.d.ts +75 -0
  214. package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.d.ts.map +1 -0
  215. package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.js +43 -0
  216. package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.js.map +1 -0
  217. package/dist/esm/compliance/privacy/privacy.shared.schemas.d.ts +56 -43
  218. package/dist/esm/compliance/privacy/privacy.shared.schemas.d.ts.map +1 -1
  219. package/dist/esm/compliance/privacy/privacy.shared.schemas.js +72 -18
  220. package/dist/esm/compliance/privacy/privacy.shared.schemas.js.map +1 -1
  221. package/dist/esm/compliance/privacy/redaction.shared.schemas.d.ts +21 -3
  222. package/dist/esm/compliance/privacy/redaction.shared.schemas.d.ts.map +1 -1
  223. package/dist/esm/compliance/privacy/redaction.shared.schemas.js +19 -1
  224. package/dist/esm/compliance/privacy/redaction.shared.schemas.js.map +1 -1
  225. package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.d.ts +124 -0
  226. package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.d.ts.map +1 -0
  227. package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.js +107 -0
  228. package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.js.map +1 -0
  229. package/dist/esm/compliance/privacy/sharing.shared.schemas.d.ts.map +1 -1
  230. package/dist/esm/compliance/privacy/sharing.shared.schemas.js +1 -1
  231. package/dist/esm/compliance/privacy/sharing.shared.schemas.js.map +1 -1
  232. package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.d.ts +279 -0
  233. package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.d.ts.map +1 -0
  234. package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.js +238 -0
  235. package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.js.map +1 -0
  236. package/dist/esm/compliance/privacy/subject-export-render.shared.utils.d.ts +74 -0
  237. package/dist/esm/compliance/privacy/subject-export-render.shared.utils.d.ts.map +1 -0
  238. package/dist/esm/compliance/privacy/subject-export-render.shared.utils.js +137 -0
  239. package/dist/esm/compliance/privacy/subject-export-render.shared.utils.js.map +1 -0
  240. package/dist/esm/compliance/privacy/subject-export.shared.schemas.d.ts +457 -0
  241. package/dist/esm/compliance/privacy/subject-export.shared.schemas.d.ts.map +1 -0
  242. package/dist/esm/compliance/privacy/subject-export.shared.schemas.js +549 -0
  243. package/dist/esm/compliance/privacy/subject-export.shared.schemas.js.map +1 -0
  244. package/dist/esm/config/analytics-value-moments.shared.schemas.d.ts +13 -13
  245. package/dist/esm/config/analytics-value-moments.shared.schemas.d.ts.map +1 -1
  246. package/dist/esm/config/analytics-value-moments.shared.schemas.js +1 -1
  247. package/dist/esm/config/analytics-value-moments.shared.schemas.js.map +1 -1
  248. package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts +135 -125
  249. package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts.map +1 -1
  250. package/dist/esm/config/app-configuration-shared.shared.schemas.js +74 -10
  251. package/dist/esm/config/app-configuration-shared.shared.schemas.js.map +1 -1
  252. package/dist/esm/config/app-frontend-type.shared.schemas.d.ts +94 -0
  253. package/dist/esm/config/app-frontend-type.shared.schemas.d.ts.map +1 -0
  254. package/dist/esm/config/app-frontend-type.shared.schemas.js +95 -0
  255. package/dist/esm/config/app-frontend-type.shared.schemas.js.map +1 -0
  256. package/dist/esm/config/auth-config-resolution.shared.utils.d.ts +35 -5
  257. package/dist/esm/config/auth-config-resolution.shared.utils.d.ts.map +1 -1
  258. package/dist/esm/config/auth-config-resolution.shared.utils.js +44 -2
  259. package/dist/esm/config/auth-config-resolution.shared.utils.js.map +1 -1
  260. package/dist/esm/config/brand-assets.shared.schemas.d.ts +89 -0
  261. package/dist/esm/config/brand-assets.shared.schemas.d.ts.map +1 -0
  262. package/dist/esm/config/brand-assets.shared.schemas.js +99 -0
  263. package/dist/esm/config/brand-assets.shared.schemas.js.map +1 -0
  264. package/dist/esm/config/configuration-validation.shared.schemas.d.ts +12 -1
  265. package/dist/esm/config/configuration-validation.shared.schemas.d.ts.map +1 -1
  266. package/dist/esm/config/configuration-validation.shared.schemas.js +12 -1
  267. package/dist/esm/config/configuration-validation.shared.schemas.js.map +1 -1
  268. package/dist/esm/config/entity-identity-config.shared.schemas.d.ts +170 -91
  269. package/dist/esm/config/entity-identity-config.shared.schemas.d.ts.map +1 -1
  270. package/dist/esm/config/entity-identity-config.shared.schemas.js +130 -19
  271. package/dist/esm/config/entity-identity-config.shared.schemas.js.map +1 -1
  272. package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts +167 -166
  273. package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts.map +1 -1
  274. package/dist/esm/config/frontend/chart-definition.shared.schemas.js +93 -9
  275. package/dist/esm/config/frontend/chart-definition.shared.schemas.js.map +1 -1
  276. package/dist/esm/config/frontend/chart-registration-alignment.shared.d.ts +69 -0
  277. package/dist/esm/config/frontend/chart-registration-alignment.shared.d.ts.map +1 -0
  278. package/dist/esm/config/frontend/chart-registration-alignment.shared.js +61 -0
  279. package/dist/esm/config/frontend/chart-registration-alignment.shared.js.map +1 -0
  280. package/dist/esm/config/frontend/navigation.shared.schemas.d.ts +110 -39
  281. package/dist/esm/config/frontend/navigation.shared.schemas.d.ts.map +1 -1
  282. package/dist/esm/config/frontend/navigation.shared.schemas.js +93 -9
  283. package/dist/esm/config/frontend/navigation.shared.schemas.js.map +1 -1
  284. package/dist/esm/config/frontend/onboarding.shared.schemas.d.ts +70 -134
  285. package/dist/esm/config/frontend/onboarding.shared.schemas.d.ts.map +1 -1
  286. package/dist/esm/config/frontend/onboarding.shared.schemas.js +27 -25
  287. package/dist/esm/config/frontend/onboarding.shared.schemas.js.map +1 -1
  288. package/dist/esm/config/postgresql.shared.schemas.d.ts.map +1 -1
  289. package/dist/esm/config/postgresql.shared.schemas.js +1 -1
  290. package/dist/esm/config/postgresql.shared.schemas.js.map +1 -1
  291. package/dist/esm/config/registration-acquisition-policy.shared.utils.d.ts +24 -0
  292. package/dist/esm/config/registration-acquisition-policy.shared.utils.d.ts.map +1 -0
  293. package/dist/esm/config/registration-acquisition-policy.shared.utils.js +62 -0
  294. package/dist/esm/config/registration-acquisition-policy.shared.utils.js.map +1 -0
  295. package/dist/esm/config-authoring.entry.d.ts +5 -0
  296. package/dist/esm/config-authoring.entry.d.ts.map +1 -0
  297. package/dist/esm/config-authoring.entry.js +7 -0
  298. package/dist/esm/config-authoring.entry.js.map +1 -0
  299. package/dist/esm/crdt/crdt-merge.shared.utils.d.ts +1 -1
  300. package/dist/esm/crdt/crdt-merge.shared.utils.d.ts.map +1 -1
  301. package/dist/esm/crdt/crdt-merge.shared.utils.js +1 -1
  302. package/dist/esm/crdt/crdt-merge.shared.utils.js.map +1 -1
  303. package/dist/esm/data-seeding/data-seeding-config.shared.schemas.d.ts +66 -0
  304. package/dist/esm/data-seeding/data-seeding-config.shared.schemas.d.ts.map +1 -0
  305. package/dist/esm/data-seeding/data-seeding-config.shared.schemas.js +118 -0
  306. package/dist/esm/data-seeding/data-seeding-config.shared.schemas.js.map +1 -0
  307. package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts +348 -1
  308. package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts.map +1 -1
  309. package/dist/esm/errors/errors.custom-message-ref.shared.definitions.js +357 -1
  310. package/dist/esm/errors/errors.custom-message-ref.shared.definitions.js.map +1 -1
  311. package/dist/esm/errors/errors.shared.definitions.d.ts +2 -2
  312. package/dist/esm/errors/errors.shared.definitions.d.ts.map +1 -1
  313. package/dist/esm/errors/errors.shared.definitions.js +12 -1
  314. package/dist/esm/errors/errors.shared.definitions.js.map +1 -1
  315. package/dist/esm/errors/errors.shared.schemas.d.ts +82 -36
  316. package/dist/esm/errors/errors.shared.schemas.d.ts.map +1 -1
  317. package/dist/esm/errors/errors.shared.schemas.js +100 -3
  318. package/dist/esm/errors/errors.shared.schemas.js.map +1 -1
  319. package/dist/esm/errors/errors.shared.utils.d.ts +1 -1
  320. package/dist/esm/errors/errors.shared.utils.d.ts.map +1 -1
  321. package/dist/esm/errors/errors.shared.utils.js +1 -1
  322. package/dist/esm/errors/errors.shared.utils.js.map +1 -1
  323. package/dist/esm/errors/resource-access-forbidden.shared.error.d.ts +16 -0
  324. package/dist/esm/errors/resource-access-forbidden.shared.error.d.ts.map +1 -0
  325. package/dist/esm/errors/resource-access-forbidden.shared.error.js +18 -0
  326. package/dist/esm/errors/resource-access-forbidden.shared.error.js.map +1 -0
  327. package/dist/esm/errors/zod-issue-formatting.shared.utils.d.ts +113 -0
  328. package/dist/esm/errors/zod-issue-formatting.shared.utils.d.ts.map +1 -0
  329. package/dist/esm/errors/zod-issue-formatting.shared.utils.js +102 -0
  330. package/dist/esm/errors/zod-issue-formatting.shared.utils.js.map +1 -0
  331. package/dist/esm/exports/tabular-csv.shared.utils.d.ts +42 -0
  332. package/dist/esm/exports/tabular-csv.shared.utils.d.ts.map +1 -0
  333. package/dist/esm/exports/tabular-csv.shared.utils.js +63 -0
  334. package/dist/esm/exports/tabular-csv.shared.utils.js.map +1 -0
  335. package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts +347 -0
  336. package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts.map +1 -0
  337. package/dist/esm/external-data/external-data-pipeline.shared.schemas.js +206 -0
  338. package/dist/esm/external-data/external-data-pipeline.shared.schemas.js.map +1 -0
  339. package/dist/esm/external-data.exports.d.ts +30 -0
  340. package/dist/esm/external-data.exports.d.ts.map +1 -0
  341. package/dist/esm/external-data.exports.js +30 -0
  342. package/dist/esm/external-data.exports.js.map +1 -0
  343. package/dist/esm/external-providers/compose-provider-registry.shared.d.ts +63 -0
  344. package/dist/esm/external-providers/compose-provider-registry.shared.d.ts.map +1 -0
  345. package/dist/esm/external-providers/compose-provider-registry.shared.js +102 -0
  346. package/dist/esm/external-providers/compose-provider-registry.shared.js.map +1 -0
  347. package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts +164 -0
  348. package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts.map +1 -0
  349. package/dist/esm/external-providers/engine-capabilities.shared.schemas.js +194 -0
  350. package/dist/esm/external-providers/engine-capabilities.shared.schemas.js.map +1 -0
  351. package/dist/esm/external-providers/engine-capability-resolution-mode.shared.d.ts +39 -0
  352. package/dist/esm/external-providers/engine-capability-resolution-mode.shared.d.ts.map +1 -0
  353. package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js +85 -0
  354. package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js.map +1 -0
  355. package/dist/esm/external-providers/external-providers.shared.schemas.d.ts +22 -22
  356. package/dist/esm/external-providers/external-providers.shared.schemas.d.ts.map +1 -1
  357. package/dist/esm/external-providers/external-providers.shared.schemas.js +5 -5
  358. package/dist/esm/external-providers/external-providers.shared.schemas.js.map +1 -1
  359. package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts +319 -0
  360. package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts.map +1 -0
  361. package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.js +17 -0
  362. package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.js.map +1 -0
  363. package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts +35 -0
  364. package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts.map +1 -0
  365. package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js +19 -0
  366. package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js.map +1 -0
  367. package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts +135 -0
  368. package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts.map +1 -0
  369. package/dist/esm/external-providers/provider-capability.shared.schemas.js +102 -0
  370. package/dist/esm/external-providers/provider-capability.shared.schemas.js.map +1 -0
  371. package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts +175 -0
  372. package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts.map +1 -0
  373. package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js +211 -0
  374. package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js.map +1 -0
  375. package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts +37 -0
  376. package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts.map +1 -0
  377. package/dist/esm/external-providers/provider-metadata.shared.schemas.js +58 -0
  378. package/dist/esm/external-providers/provider-metadata.shared.schemas.js.map +1 -0
  379. package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts +65 -0
  380. package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts.map +1 -0
  381. package/dist/esm/external-providers/provider-protocol.shared.schemas.js +63 -0
  382. package/dist/esm/external-providers/provider-protocol.shared.schemas.js.map +1 -0
  383. package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.d.ts +99 -0
  384. package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.d.ts.map +1 -0
  385. package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.js +137 -0
  386. package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.js.map +1 -0
  387. package/dist/esm/features/application-features.shared.resources-config.schemas.d.ts +39 -0
  388. package/dist/esm/features/application-features.shared.resources-config.schemas.d.ts.map +1 -0
  389. package/dist/esm/features/application-features.shared.resources-config.schemas.js +147 -0
  390. package/dist/esm/features/application-features.shared.resources-config.schemas.js.map +1 -0
  391. package/dist/esm/features/core-feature-definitions.shared.d.ts +17 -2
  392. package/dist/esm/features/core-feature-definitions.shared.d.ts.map +1 -1
  393. package/dist/esm/features/core-feature-definitions.shared.js +91 -3
  394. package/dist/esm/features/core-feature-definitions.shared.js.map +1 -1
  395. package/dist/esm/features/feature-builders.shared.d.ts +13 -2
  396. package/dist/esm/features/feature-builders.shared.d.ts.map +1 -1
  397. package/dist/esm/features/feature-builders.shared.js +3 -1
  398. package/dist/esm/features/feature-builders.shared.js.map +1 -1
  399. package/dist/esm/features/feature-definition.shared.schemas.d.ts +70 -24
  400. package/dist/esm/features/feature-definition.shared.schemas.d.ts.map +1 -1
  401. package/dist/esm/features/feature-definition.shared.schemas.js +84 -1
  402. package/dist/esm/features/feature-definition.shared.schemas.js.map +1 -1
  403. package/dist/esm/features/feature-registry.shared.d.ts +8 -9
  404. package/dist/esm/features/feature-registry.shared.d.ts.map +1 -1
  405. package/dist/esm/features/feature-registry.shared.js +5 -8
  406. package/dist/esm/features/feature-registry.shared.js.map +1 -1
  407. package/dist/esm/features/feature-resolution.shared.schemas.d.ts +1 -1
  408. package/dist/esm/features/feature-resolution.shared.schemas.d.ts.map +1 -1
  409. package/dist/esm/features/feature-resolution.shared.schemas.js +1 -1
  410. package/dist/esm/features/feature-resolution.shared.schemas.js.map +1 -1
  411. package/dist/esm/features/scope-features.shared.schemas.d.ts +9 -10
  412. package/dist/esm/features/scope-features.shared.schemas.d.ts.map +1 -1
  413. package/dist/esm/features/scope-features.shared.schemas.js +20 -6
  414. package/dist/esm/features/scope-features.shared.schemas.js.map +1 -1
  415. package/dist/esm/features/user-features.shared.resources-config.schemas.d.ts +9 -9
  416. package/dist/esm/features/user-features.shared.resources-config.schemas.d.ts.map +1 -1
  417. package/dist/esm/features/user-features.shared.resources-config.schemas.js +35 -1
  418. package/dist/esm/features/user-features.shared.resources-config.schemas.js.map +1 -1
  419. package/dist/esm/files/files.shared.resources-config.schemas.d.ts +35 -9
  420. package/dist/esm/files/files.shared.resources-config.schemas.d.ts.map +1 -1
  421. package/dist/esm/files/files.shared.resources-config.schemas.js +27 -5
  422. package/dist/esm/files/files.shared.resources-config.schemas.js.map +1 -1
  423. package/dist/esm/files/files.shared.schemas.d.ts +71 -13
  424. package/dist/esm/files/files.shared.schemas.d.ts.map +1 -1
  425. package/dist/esm/files/files.shared.schemas.js +110 -35
  426. package/dist/esm/files/files.shared.schemas.js.map +1 -1
  427. package/dist/esm/files/files.shared.utils.d.ts +9 -5
  428. package/dist/esm/files/files.shared.utils.d.ts.map +1 -1
  429. package/dist/esm/files/files.shared.utils.js +10 -6
  430. package/dist/esm/files/files.shared.utils.js.map +1 -1
  431. package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.d.ts +40 -0
  432. package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.d.ts.map +1 -0
  433. package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.js +204 -0
  434. package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.js.map +1 -0
  435. package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.d.ts +113 -0
  436. package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.d.ts.map +1 -0
  437. package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.js +153 -0
  438. package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.js.map +1 -0
  439. package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.d.ts +61 -0
  440. package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.d.ts.map +1 -0
  441. package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.js +143 -0
  442. package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.js.map +1 -0
  443. package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.d.ts +77 -0
  444. package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.d.ts.map +1 -0
  445. package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.js +103 -0
  446. package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.js.map +1 -0
  447. package/dist/esm/flows-actors/actors.shared.schemas.d.ts +339 -326
  448. package/dist/esm/flows-actors/actors.shared.schemas.d.ts.map +1 -1
  449. package/dist/esm/flows-actors/actors.shared.schemas.js +29 -6
  450. package/dist/esm/flows-actors/actors.shared.schemas.js.map +1 -1
  451. package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts +237 -0
  452. package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts.map +1 -0
  453. package/dist/esm/flows-actors/agent-traceability.shared.schemas.js +152 -0
  454. package/dist/esm/flows-actors/agent-traceability.shared.schemas.js.map +1 -0
  455. package/dist/esm/flows-actors/agents.shared.schemas.d.ts +180 -23
  456. package/dist/esm/flows-actors/agents.shared.schemas.d.ts.map +1 -1
  457. package/dist/esm/flows-actors/agents.shared.schemas.js +69 -2
  458. package/dist/esm/flows-actors/agents.shared.schemas.js.map +1 -1
  459. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.d.ts +19 -0
  460. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.d.ts.map +1 -0
  461. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.js +35 -0
  462. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.js.map +1 -0
  463. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.d.ts +29 -45
  464. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.d.ts.map +1 -1
  465. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.js +2 -34
  466. package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.js.map +1 -1
  467. package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.d.ts +2 -2
  468. package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.d.ts.map +1 -1
  469. package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.js +1 -1
  470. package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.js.map +1 -1
  471. package/dist/esm/flows-actors/deliberation.shared.schemas.d.ts +642 -0
  472. package/dist/esm/flows-actors/deliberation.shared.schemas.d.ts.map +1 -0
  473. package/dist/esm/flows-actors/deliberation.shared.schemas.js +604 -0
  474. package/dist/esm/flows-actors/deliberation.shared.schemas.js.map +1 -0
  475. package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.d.ts +48 -0
  476. package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.d.ts.map +1 -0
  477. package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.js +179 -0
  478. package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.js.map +1 -0
  479. package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts +200 -0
  480. package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts.map +1 -0
  481. package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js +337 -0
  482. package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js.map +1 -0
  483. package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.d.ts +59 -0
  484. package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.d.ts.map +1 -0
  485. package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.js +223 -0
  486. package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.js.map +1 -0
  487. package/dist/esm/flows-actors/flows-actors-task.shared.schemas.d.ts +426 -0
  488. package/dist/esm/flows-actors/flows-actors-task.shared.schemas.d.ts.map +1 -0
  489. package/dist/esm/flows-actors/flows-actors-task.shared.schemas.js +317 -0
  490. package/dist/esm/flows-actors/flows-actors-task.shared.schemas.js.map +1 -0
  491. package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts +109 -58
  492. package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts.map +1 -1
  493. package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.js +48 -1
  494. package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.js.map +1 -1
  495. package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.d.ts +62 -62
  496. package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.d.ts.map +1 -1
  497. package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.js +2 -2
  498. package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.js.map +1 -1
  499. package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.d.ts +112 -11
  500. package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.d.ts.map +1 -1
  501. package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.js +63 -1
  502. package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.js.map +1 -1
  503. package/dist/esm/flows-actors/flows-actors.io.shared.schemas.d.ts +60 -20
  504. package/dist/esm/flows-actors/flows-actors.io.shared.schemas.d.ts.map +1 -1
  505. package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js +36 -3
  506. package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js.map +1 -1
  507. package/dist/esm/flows-actors/flows-actors.system.shared.definitions.d.ts +35 -0
  508. package/dist/esm/flows-actors/flows-actors.system.shared.definitions.d.ts.map +1 -0
  509. package/dist/esm/flows-actors/flows-actors.system.shared.definitions.js +1 -0
  510. package/dist/esm/flows-actors/flows-actors.system.shared.definitions.js.map +1 -0
  511. package/dist/esm/flows-actors/flows-actors.system.shared.schemas.d.ts +88 -63
  512. package/dist/esm/flows-actors/flows-actors.system.shared.schemas.d.ts.map +1 -1
  513. package/dist/esm/flows-actors/flows-actors.system.shared.schemas.js +32 -5
  514. package/dist/esm/flows-actors/flows-actors.system.shared.schemas.js.map +1 -1
  515. package/dist/esm/flows-actors/flows.shared.schemas.d.ts +63 -49
  516. package/dist/esm/flows-actors/flows.shared.schemas.d.ts.map +1 -1
  517. package/dist/esm/flows-actors/flows.shared.schemas.js +1 -1
  518. package/dist/esm/flows-actors/flows.shared.schemas.js.map +1 -1
  519. package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.d.ts +73 -0
  520. package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.d.ts.map +1 -0
  521. package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.js +149 -0
  522. package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.js.map +1 -0
  523. package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.d.ts +20 -0
  524. package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.d.ts.map +1 -0
  525. package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.js +34 -0
  526. package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.js.map +1 -0
  527. package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.d.ts +125 -0
  528. package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.d.ts.map +1 -0
  529. package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.js +136 -0
  530. package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.js.map +1 -0
  531. package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.d.ts +180 -0
  532. package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.d.ts.map +1 -0
  533. package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.js +187 -0
  534. package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.js.map +1 -0
  535. package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.d.ts +28 -0
  536. package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.d.ts.map +1 -0
  537. package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.js +28 -0
  538. package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.js.map +1 -0
  539. package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts +446 -0
  540. package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts.map +1 -0
  541. package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.js +678 -0
  542. package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.js.map +1 -0
  543. package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.d.ts +106 -0
  544. package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.d.ts.map +1 -0
  545. package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.js +243 -0
  546. package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.js.map +1 -0
  547. package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.d.ts +29 -0
  548. package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.d.ts.map +1 -0
  549. package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.js +58 -0
  550. package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.js.map +1 -0
  551. package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.d.ts +61 -0
  552. package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.d.ts.map +1 -0
  553. package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.js +93 -0
  554. package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.js.map +1 -0
  555. package/dist/esm/flows-actors/prompt-ir.shared.schemas.d.ts +5 -5
  556. package/dist/esm/flows-actors/prompt-ir.shared.schemas.d.ts.map +1 -1
  557. package/dist/esm/flows-actors/prompt-ir.shared.schemas.js +2 -2
  558. package/dist/esm/flows-actors/prompt-ir.shared.schemas.js.map +1 -1
  559. package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.d.ts +81 -0
  560. package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.d.ts.map +1 -0
  561. package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.js +82 -0
  562. package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.js.map +1 -0
  563. package/dist/esm/flows-actors/tasks.actors.shared.schemas.d.ts +257 -194
  564. package/dist/esm/flows-actors/tasks.actors.shared.schemas.d.ts.map +1 -1
  565. package/dist/esm/flows-actors/tasks.actors.shared.schemas.js +28 -2
  566. package/dist/esm/flows-actors/tasks.actors.shared.schemas.js.map +1 -1
  567. package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.d.ts.map +1 -1
  568. package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.js +1 -1
  569. package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.js.map +1 -1
  570. package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.d.ts.map +1 -1
  571. package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.js +1 -1
  572. package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.js.map +1 -1
  573. package/dist/esm/guidance/guidance-flow.shared.schemas.d.ts +51 -89
  574. package/dist/esm/guidance/guidance-flow.shared.schemas.d.ts.map +1 -1
  575. package/dist/esm/guidance/guidance-flow.shared.schemas.js +1 -1
  576. package/dist/esm/guidance/guidance-flow.shared.schemas.js.map +1 -1
  577. package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.d.ts +22 -19
  578. package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.d.ts.map +1 -1
  579. package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.js +61 -5
  580. package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.js.map +1 -1
  581. package/dist/esm/guidance/guidance-state.shared.schemas.d.ts +46 -10
  582. package/dist/esm/guidance/guidance-state.shared.schemas.d.ts.map +1 -1
  583. package/dist/esm/guidance/guidance-state.shared.schemas.js +15 -4
  584. package/dist/esm/guidance/guidance-state.shared.schemas.js.map +1 -1
  585. package/dist/esm/guidance/guidance-state.shared.utils.d.ts +25 -0
  586. package/dist/esm/guidance/guidance-state.shared.utils.d.ts.map +1 -0
  587. package/dist/esm/guidance/guidance-state.shared.utils.js +72 -0
  588. package/dist/esm/guidance/guidance-state.shared.utils.js.map +1 -0
  589. package/dist/esm/guidance/lifecycle-config.shared.schemas.d.ts +11 -11
  590. package/dist/esm/guidance/lifecycle-config.shared.schemas.d.ts.map +1 -1
  591. package/dist/esm/guidance/lifecycle-config.shared.schemas.js +1 -1
  592. package/dist/esm/guidance/lifecycle-config.shared.schemas.js.map +1 -1
  593. package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.d.ts +28 -25
  594. package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.d.ts.map +1 -1
  595. package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.js +71 -7
  596. package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.js.map +1 -1
  597. package/dist/esm/guidance/lifecycle-state.shared.schemas.d.ts +53 -14
  598. package/dist/esm/guidance/lifecycle-state.shared.schemas.d.ts.map +1 -1
  599. package/dist/esm/guidance/lifecycle-state.shared.schemas.js +26 -25
  600. package/dist/esm/guidance/lifecycle-state.shared.schemas.js.map +1 -1
  601. package/dist/esm/guidance/milestone-builders.shared.d.ts +2 -2
  602. package/dist/esm/guidance/milestone-builders.shared.d.ts.map +1 -1
  603. package/dist/esm/guidance/milestone-builders.shared.js +1 -1
  604. package/dist/esm/guidance/milestone-builders.shared.js.map +1 -1
  605. package/dist/esm/guidance/milestone-definition.shared.schemas.d.ts +2 -2
  606. package/dist/esm/guidance/milestone-definition.shared.schemas.d.ts.map +1 -1
  607. package/dist/esm/guidance/milestone-definition.shared.schemas.js +1 -1
  608. package/dist/esm/guidance/milestone-definition.shared.schemas.js.map +1 -1
  609. package/dist/esm/guidance/progression-state.shared.resources-config.schemas.d.ts +22 -19
  610. package/dist/esm/guidance/progression-state.shared.resources-config.schemas.d.ts.map +1 -1
  611. package/dist/esm/guidance/progression-state.shared.resources-config.schemas.js +72 -7
  612. package/dist/esm/guidance/progression-state.shared.resources-config.schemas.js.map +1 -1
  613. package/dist/esm/guidance/progression-state.shared.schemas.d.ts +40 -10
  614. package/dist/esm/guidance/progression-state.shared.schemas.d.ts.map +1 -1
  615. package/dist/esm/guidance/progression-state.shared.schemas.js +16 -6
  616. package/dist/esm/guidance/progression-state.shared.schemas.js.map +1 -1
  617. package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.d.ts +69 -0
  618. package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.d.ts.map +1 -0
  619. package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.js +232 -0
  620. package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.js.map +1 -0
  621. package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts +566 -0
  622. package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts.map +1 -0
  623. package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js +513 -0
  624. package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js.map +1 -0
  625. package/dist/esm/i18n/interpolate-label-params.shared.utils.d.ts +52 -0
  626. package/dist/esm/i18n/interpolate-label-params.shared.utils.d.ts.map +1 -0
  627. package/dist/esm/i18n/interpolate-label-params.shared.utils.js +63 -0
  628. package/dist/esm/i18n/interpolate-label-params.shared.utils.js.map +1 -0
  629. package/dist/esm/i18n/labelling.dto.shared.schemas.d.ts +3 -3
  630. package/dist/esm/i18n/labelling.dto.shared.schemas.d.ts.map +1 -1
  631. package/dist/esm/i18n/labelling.dto.shared.schemas.js +1 -1
  632. package/dist/esm/i18n/labelling.dto.shared.schemas.js.map +1 -1
  633. package/dist/esm/index.d.ts +277 -200
  634. package/dist/esm/index.d.ts.map +1 -1
  635. package/dist/esm/index.js +122 -15
  636. package/dist/esm/index.js.map +1 -1
  637. package/dist/esm/meta-workflows.exports.d.ts +51 -0
  638. package/dist/esm/meta-workflows.exports.d.ts.map +1 -0
  639. package/dist/esm/meta-workflows.exports.js +51 -0
  640. package/dist/esm/meta-workflows.exports.js.map +1 -0
  641. package/dist/esm/monitoring/monitoring.shared.schemas.d.ts +16 -16
  642. package/dist/esm/monitoring/monitoring.shared.schemas.d.ts.map +1 -1
  643. package/dist/esm/monitoring/monitoring.shared.schemas.js +1 -1
  644. package/dist/esm/monitoring/monitoring.shared.schemas.js.map +1 -1
  645. package/dist/esm/notifications/email/email-context.shared.schemas.d.ts +9 -9
  646. package/dist/esm/notifications/email/email-context.shared.schemas.d.ts.map +1 -1
  647. package/dist/esm/notifications/email/email-context.shared.schemas.js +8 -3
  648. package/dist/esm/notifications/email/email-context.shared.schemas.js.map +1 -1
  649. package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts +33 -46
  650. package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts.map +1 -1
  651. package/dist/esm/notifications/email/email-template-registry.shared.schemas.js +20 -140
  652. package/dist/esm/notifications/email/email-template-registry.shared.schemas.js.map +1 -1
  653. package/dist/esm/notifications/email/email-template.shared.enums.d.ts +145 -0
  654. package/dist/esm/notifications/email/email-template.shared.enums.d.ts.map +1 -0
  655. package/dist/esm/notifications/email/email-template.shared.enums.js +164 -0
  656. package/dist/esm/notifications/email/email-template.shared.enums.js.map +1 -0
  657. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.d.ts +43 -0
  658. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.d.ts.map +1 -0
  659. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.js +231 -0
  660. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.js.map +1 -0
  661. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.d.ts +159 -0
  662. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.d.ts.map +1 -0
  663. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.js +191 -0
  664. package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.js.map +1 -0
  665. package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts +62 -0
  666. package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts.map +1 -0
  667. package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js +183 -0
  668. package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js.map +1 -0
  669. package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts +134 -0
  670. package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts.map +1 -0
  671. package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js +159 -0
  672. package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js.map +1 -0
  673. package/dist/esm/notifications/notification-badges.core.definitions.d.ts +10 -1
  674. package/dist/esm/notifications/notification-badges.core.definitions.d.ts.map +1 -1
  675. package/dist/esm/notifications/notification-badges.core.definitions.js +11 -13
  676. package/dist/esm/notifications/notification-badges.core.definitions.js.map +1 -1
  677. package/dist/esm/notifications/notification-badges.schemas.d.ts +147 -43
  678. package/dist/esm/notifications/notification-badges.schemas.d.ts.map +1 -1
  679. package/dist/esm/notifications/notification-badges.schemas.js +130 -23
  680. package/dist/esm/notifications/notification-badges.schemas.js.map +1 -1
  681. package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.d.ts +40 -15
  682. package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.d.ts.map +1 -1
  683. package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.js +149 -23
  684. package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.js.map +1 -1
  685. package/dist/esm/notifications/notifications.shared.schemas.d.ts +352 -25
  686. package/dist/esm/notifications/notifications.shared.schemas.d.ts.map +1 -1
  687. package/dist/esm/notifications/notifications.shared.schemas.js +47 -2
  688. package/dist/esm/notifications/notifications.shared.schemas.js.map +1 -1
  689. package/dist/esm/organizations/organization-features.shared.resources-config.schemas.d.ts +21 -10
  690. package/dist/esm/organizations/organization-features.shared.resources-config.schemas.d.ts.map +1 -1
  691. package/dist/esm/organizations/organization-features.shared.resources-config.schemas.js +54 -47
  692. package/dist/esm/organizations/organization-features.shared.resources-config.schemas.js.map +1 -1
  693. package/dist/esm/organizations/organization-features.shared.schemas.d.ts +10 -2
  694. package/dist/esm/organizations/organization-features.shared.schemas.d.ts.map +1 -1
  695. package/dist/esm/organizations/organization-features.shared.schemas.js +10 -2
  696. package/dist/esm/organizations/organization-features.shared.schemas.js.map +1 -1
  697. package/dist/esm/organizations/organization-members.shared.resources-config.schemas.d.ts +31 -17
  698. package/dist/esm/organizations/organization-members.shared.resources-config.schemas.d.ts.map +1 -1
  699. package/dist/esm/organizations/organization-members.shared.resources-config.schemas.js +294 -54
  700. package/dist/esm/organizations/organization-members.shared.resources-config.schemas.js.map +1 -1
  701. package/dist/esm/organizations/organization-members.shared.schemas.d.ts +31 -41
  702. package/dist/esm/organizations/organization-members.shared.schemas.d.ts.map +1 -1
  703. package/dist/esm/organizations/organization-members.shared.schemas.js +181 -37
  704. package/dist/esm/organizations/organization-members.shared.schemas.js.map +1 -1
  705. package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.d.ts +8 -8
  706. package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.d.ts.map +1 -1
  707. package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.js +43 -2
  708. package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.js.map +1 -1
  709. package/dist/esm/organizations/organization-notifications.shared.schemas.d.ts +25 -4
  710. package/dist/esm/organizations/organization-notifications.shared.schemas.d.ts.map +1 -1
  711. package/dist/esm/organizations/organization-notifications.shared.schemas.js +35 -15
  712. package/dist/esm/organizations/organization-notifications.shared.schemas.js.map +1 -1
  713. package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.d.ts +7 -7
  714. package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.d.ts.map +1 -1
  715. package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.js +42 -3
  716. package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.js.map +1 -1
  717. package/dist/esm/organizations/organization-preferences.shared.schemas.d.ts +4 -4
  718. package/dist/esm/organizations/organization-preferences.shared.schemas.d.ts.map +1 -1
  719. package/dist/esm/organizations/organization-preferences.shared.schemas.js +17 -4
  720. package/dist/esm/organizations/organization-preferences.shared.schemas.js.map +1 -1
  721. package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.d.ts +10 -10
  722. package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.d.ts.map +1 -1
  723. package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.js +32 -2
  724. package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.js.map +1 -1
  725. package/dist/esm/organizations/organization-profile.shared.schemas.d.ts +6 -6
  726. package/dist/esm/organizations/organization-profile.shared.schemas.d.ts.map +1 -1
  727. package/dist/esm/organizations/organization-profile.shared.schemas.js +28 -2
  728. package/dist/esm/organizations/organization-profile.shared.schemas.js.map +1 -1
  729. package/dist/esm/organizations/organization-unit-inheritance.shared.d.ts +94 -0
  730. package/dist/esm/organizations/organization-unit-inheritance.shared.d.ts.map +1 -0
  731. package/dist/esm/organizations/organization-unit-inheritance.shared.js +96 -0
  732. package/dist/esm/organizations/organization-unit-inheritance.shared.js.map +1 -0
  733. package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.d.ts +30 -0
  734. package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.d.ts.map +1 -0
  735. package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.js +97 -0
  736. package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.js.map +1 -0
  737. package/dist/esm/organizations/organization-unit-members.shared.schemas.d.ts +56 -0
  738. package/dist/esm/organizations/organization-unit-members.shared.schemas.d.ts.map +1 -0
  739. package/dist/esm/organizations/organization-unit-members.shared.schemas.js +92 -0
  740. package/dist/esm/organizations/organization-unit-members.shared.schemas.js.map +1 -0
  741. package/dist/esm/organizations/organization-unit-narrowing-decision.shared.d.ts +130 -0
  742. package/dist/esm/organizations/organization-unit-narrowing-decision.shared.d.ts.map +1 -0
  743. package/dist/esm/organizations/organization-unit-narrowing-decision.shared.js +139 -0
  744. package/dist/esm/organizations/organization-unit-narrowing-decision.shared.js.map +1 -0
  745. package/dist/esm/organizations/organization-unit-narrowing.example.d.ts +27 -0
  746. package/dist/esm/organizations/organization-unit-narrowing.example.d.ts.map +1 -0
  747. package/dist/esm/organizations/organization-unit-narrowing.example.js +29 -0
  748. package/dist/esm/organizations/organization-unit-narrowing.example.js.map +1 -0
  749. package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts +137 -0
  750. package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts.map +1 -0
  751. package/dist/esm/organizations/organization-unit-narrowing.shared.js +133 -0
  752. package/dist/esm/organizations/organization-unit-narrowing.shared.js.map +1 -0
  753. package/dist/esm/organizations/organization-units.shared.path.d.ts +103 -0
  754. package/dist/esm/organizations/organization-units.shared.path.d.ts.map +1 -0
  755. package/dist/esm/organizations/organization-units.shared.path.js +120 -0
  756. package/dist/esm/organizations/organization-units.shared.path.js.map +1 -0
  757. package/dist/esm/organizations/organization-units.shared.resources-config.schemas.d.ts +8 -8
  758. package/dist/esm/organizations/organization-units.shared.resources-config.schemas.d.ts.map +1 -1
  759. package/dist/esm/organizations/organization-units.shared.resources-config.schemas.js +1 -1
  760. package/dist/esm/organizations/organization-units.shared.resources-config.schemas.js.map +1 -1
  761. package/dist/esm/organizations/organization-units.shared.schemas.d.ts +69 -8
  762. package/dist/esm/organizations/organization-units.shared.schemas.d.ts.map +1 -1
  763. package/dist/esm/organizations/organization-units.shared.schemas.js +89 -5
  764. package/dist/esm/organizations/organization-units.shared.schemas.js.map +1 -1
  765. package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts +46 -11
  766. package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts.map +1 -1
  767. package/dist/esm/organizations/organizations.shared.resources-config.schemas.js +505 -34
  768. package/dist/esm/organizations/organizations.shared.resources-config.schemas.js.map +1 -1
  769. package/dist/esm/organizations/organizations.shared.schemas.d.ts +95 -39
  770. package/dist/esm/organizations/organizations.shared.schemas.d.ts.map +1 -1
  771. package/dist/esm/organizations/organizations.shared.schemas.js +228 -6
  772. package/dist/esm/organizations/organizations.shared.schemas.js.map +1 -1
  773. package/dist/esm/organizations/tenant-teardown-config.shared.schemas.d.ts +36 -0
  774. package/dist/esm/organizations/tenant-teardown-config.shared.schemas.d.ts.map +1 -0
  775. package/dist/esm/organizations/tenant-teardown-config.shared.schemas.js +66 -0
  776. package/dist/esm/organizations/tenant-teardown-config.shared.schemas.js.map +1 -0
  777. package/dist/esm/provider-registration-runtime.exports.d.ts +4 -0
  778. package/dist/esm/provider-registration-runtime.exports.d.ts.map +1 -0
  779. package/dist/esm/provider-registration-runtime.exports.js +4 -0
  780. package/dist/esm/provider-registration-runtime.exports.js.map +1 -0
  781. package/dist/esm/public-runtime/index.d.ts +164 -0
  782. package/dist/esm/public-runtime/index.d.ts.map +1 -0
  783. package/dist/esm/public-runtime/index.js +164 -0
  784. package/dist/esm/public-runtime/index.js.map +1 -0
  785. package/dist/esm/queue/jobs.shared.resources-config.schemas.d.ts +4 -4
  786. package/dist/esm/queue/jobs.shared.resources-config.schemas.d.ts.map +1 -1
  787. package/dist/esm/queue/jobs.shared.resources-config.schemas.js +12 -1
  788. package/dist/esm/queue/jobs.shared.resources-config.schemas.js.map +1 -1
  789. package/dist/esm/queue/jobs.shared.schemas.d.ts +114 -42
  790. package/dist/esm/queue/jobs.shared.schemas.d.ts.map +1 -1
  791. package/dist/esm/queue/jobs.shared.schemas.js +114 -12
  792. package/dist/esm/queue/jobs.shared.schemas.js.map +1 -1
  793. package/dist/esm/queue/jobs.shared.utils.d.ts +3 -3
  794. package/dist/esm/queue/jobs.shared.utils.d.ts.map +1 -1
  795. package/dist/esm/queue/jobs.shared.utils.js +2 -2
  796. package/dist/esm/queue/jobs.shared.utils.js.map +1 -1
  797. package/dist/esm/queue/queues.shared.schemas.d.ts +17 -15
  798. package/dist/esm/queue/queues.shared.schemas.d.ts.map +1 -1
  799. package/dist/esm/queue/queues.shared.schemas.js +14 -5
  800. package/dist/esm/queue/queues.shared.schemas.js.map +1 -1
  801. package/dist/esm/queue/queues.shared.utils.d.ts +137 -6
  802. package/dist/esm/queue/queues.shared.utils.d.ts.map +1 -1
  803. package/dist/esm/queue/queues.shared.utils.js +161 -9
  804. package/dist/esm/queue/queues.shared.utils.js.map +1 -1
  805. package/dist/esm/queue/rabbitmq-queue-args.shared.d.ts.map +1 -1
  806. package/dist/esm/queue/rabbitmq-queue-args.shared.js +1 -1
  807. package/dist/esm/queue/rabbitmq-queue-args.shared.js.map +1 -1
  808. package/dist/esm/requests/header-keys.shared.d.ts +23 -1
  809. package/dist/esm/requests/header-keys.shared.d.ts.map +1 -1
  810. package/dist/esm/requests/header-keys.shared.js +45 -2
  811. package/dist/esm/requests/header-keys.shared.js.map +1 -1
  812. package/dist/esm/requests/http-requests.shared.d.ts +1 -0
  813. package/dist/esm/requests/http-requests.shared.d.ts.map +1 -1
  814. package/dist/esm/requests/http-requests.shared.js +2 -1
  815. package/dist/esm/requests/http-requests.shared.js.map +1 -1
  816. package/dist/esm/requests/manual-controllers-routes-urls.d.ts +189 -5
  817. package/dist/esm/requests/manual-controllers-routes-urls.d.ts.map +1 -1
  818. package/dist/esm/requests/manual-controllers-routes-urls.js +255 -6
  819. package/dist/esm/requests/manual-controllers-routes-urls.js.map +1 -1
  820. package/dist/esm/requests/rate-limits.shared.schemas.d.ts +75 -24
  821. package/dist/esm/requests/rate-limits.shared.schemas.d.ts.map +1 -1
  822. package/dist/esm/requests/rate-limits.shared.schemas.js +80 -18
  823. package/dist/esm/requests/rate-limits.shared.schemas.js.map +1 -1
  824. package/dist/esm/requests/websocket.shared.schemas.d.ts +248 -120
  825. package/dist/esm/requests/websocket.shared.schemas.d.ts.map +1 -1
  826. package/dist/esm/requests/websocket.shared.schemas.js +92 -2
  827. package/dist/esm/requests/websocket.shared.schemas.js.map +1 -1
  828. package/dist/esm/resources/child-operations.shared.schemas.d.ts +128 -23
  829. package/dist/esm/resources/child-operations.shared.schemas.d.ts.map +1 -1
  830. package/dist/esm/resources/child-operations.shared.schemas.js +147 -11
  831. package/dist/esm/resources/child-operations.shared.schemas.js.map +1 -1
  832. package/dist/esm/resources/context-policy.shared.schemas.d.ts +4 -4
  833. package/dist/esm/resources/context-policy.shared.schemas.d.ts.map +1 -1
  834. package/dist/esm/resources/context-policy.shared.schemas.js +1 -1
  835. package/dist/esm/resources/context-policy.shared.schemas.js.map +1 -1
  836. package/dist/esm/resources/relationship-display.shared.schemas.d.ts +31 -1352
  837. package/dist/esm/resources/relationship-display.shared.schemas.d.ts.map +1 -1
  838. package/dist/esm/resources/relationship-display.shared.schemas.js +13 -161
  839. package/dist/esm/resources/relationship-display.shared.schemas.js.map +1 -1
  840. package/dist/esm/resources/resources-config.shared.factory.d.ts +60 -5
  841. package/dist/esm/resources/resources-config.shared.factory.d.ts.map +1 -1
  842. package/dist/esm/resources/resources-config.shared.factory.js +1507 -87
  843. package/dist/esm/resources/resources-config.shared.factory.js.map +1 -1
  844. package/dist/esm/resources/resources-config.shared.schemas.d.ts +1638 -43
  845. package/dist/esm/resources/resources-config.shared.schemas.d.ts.map +1 -1
  846. package/dist/esm/resources/resources-config.shared.schemas.js +478 -13
  847. package/dist/esm/resources/resources-config.shared.schemas.js.map +1 -1
  848. package/dist/esm/resources/resources-registry.shared.core.definitions.d.ts +3 -3
  849. package/dist/esm/resources/resources-registry.shared.core.definitions.d.ts.map +1 -1
  850. package/dist/esm/resources/resources-registry.shared.core.definitions.js +782 -96
  851. package/dist/esm/resources/resources-registry.shared.core.definitions.js.map +1 -1
  852. package/dist/esm/resources/resources-relationships.shared.factory.d.ts +37 -7
  853. package/dist/esm/resources/resources-relationships.shared.factory.d.ts.map +1 -1
  854. package/dist/esm/resources/resources-relationships.shared.factory.js +76 -24
  855. package/dist/esm/resources/resources-relationships.shared.factory.js.map +1 -1
  856. package/dist/esm/resources/resources-serialization.shared.schemas.d.ts +19 -19
  857. package/dist/esm/resources/resources-serialization.shared.schemas.d.ts.map +1 -1
  858. package/dist/esm/resources/resources-serialization.shared.schemas.js +1 -1
  859. package/dist/esm/resources/resources-serialization.shared.schemas.js.map +1 -1
  860. package/dist/esm/resources/resources.shared.core.definitions.d.ts +84 -8
  861. package/dist/esm/resources/resources.shared.core.definitions.d.ts.map +1 -1
  862. package/dist/esm/resources/resources.shared.core.definitions.js +165 -19
  863. package/dist/esm/resources/resources.shared.core.definitions.js.map +1 -1
  864. package/dist/esm/resources/resources.shared.schemas.d.ts +582 -602
  865. package/dist/esm/resources/resources.shared.schemas.d.ts.map +1 -1
  866. package/dist/esm/resources/resources.shared.schemas.js +581 -5
  867. package/dist/esm/resources/resources.shared.schemas.js.map +1 -1
  868. package/dist/esm/resources/resources.shared.utils.d.ts +363 -15
  869. package/dist/esm/resources/resources.shared.utils.d.ts.map +1 -1
  870. package/dist/esm/resources/resources.shared.utils.js +569 -16
  871. package/dist/esm/resources/resources.shared.utils.js.map +1 -1
  872. package/dist/esm/resources/utils/collection-export.shared.utils.d.ts +65 -0
  873. package/dist/esm/resources/utils/collection-export.shared.utils.d.ts.map +1 -0
  874. package/dist/esm/resources/utils/collection-export.shared.utils.js +150 -0
  875. package/dist/esm/resources/utils/collection-export.shared.utils.js.map +1 -0
  876. package/dist/esm/resources/utils/composition-cascade-deletability.validation.d.ts +134 -0
  877. package/dist/esm/resources/utils/composition-cascade-deletability.validation.d.ts.map +1 -0
  878. package/dist/esm/resources/utils/composition-cascade-deletability.validation.js +167 -0
  879. package/dist/esm/resources/utils/composition-cascade-deletability.validation.js.map +1 -0
  880. package/dist/esm/resources/utils/composition-seedability.validation.d.ts +63 -0
  881. package/dist/esm/resources/utils/composition-seedability.validation.d.ts.map +1 -0
  882. package/dist/esm/resources/utils/composition-seedability.validation.js +75 -0
  883. package/dist/esm/resources/utils/composition-seedability.validation.js.map +1 -0
  884. package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.d.ts +10 -0
  885. package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.d.ts.map +1 -0
  886. package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.js +25 -0
  887. package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.js.map +1 -0
  888. package/dist/esm/resources/utils/duplicate-relationship-registration.validation.d.ts +111 -0
  889. package/dist/esm/resources/utils/duplicate-relationship-registration.validation.d.ts.map +1 -0
  890. package/dist/esm/resources/utils/duplicate-relationship-registration.validation.js +109 -0
  891. package/dist/esm/resources/utils/duplicate-relationship-registration.validation.js.map +1 -0
  892. package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.d.ts +52 -0
  893. package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.d.ts.map +1 -0
  894. package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.js +57 -0
  895. package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.js.map +1 -0
  896. package/dist/esm/resources/utils/repository-dto-builder.utils.d.ts.map +1 -1
  897. package/dist/esm/resources/utils/repository-dto-builder.utils.js +1 -1
  898. package/dist/esm/resources/utils/repository-dto-builder.utils.js.map +1 -1
  899. package/dist/esm/resources/utils/required-fk-fillability.validation.d.ts +108 -0
  900. package/dist/esm/resources/utils/required-fk-fillability.validation.d.ts.map +1 -0
  901. package/dist/esm/resources/utils/required-fk-fillability.validation.js +186 -0
  902. package/dist/esm/resources/utils/required-fk-fillability.validation.js.map +1 -0
  903. package/dist/esm/resources/utils/resource-operation-type-guards.utils.d.ts +107 -3
  904. package/dist/esm/resources/utils/resource-operation-type-guards.utils.d.ts.map +1 -1
  905. package/dist/esm/resources/utils/resource-operation-type-guards.utils.js +133 -2
  906. package/dist/esm/resources/utils/resource-operation-type-guards.utils.js.map +1 -1
  907. package/dist/esm/resources/utils/resource-polymorphism.factory.d.ts +39 -31
  908. package/dist/esm/resources/utils/resource-polymorphism.factory.d.ts.map +1 -1
  909. package/dist/esm/resources/utils/resource-polymorphism.factory.js +9 -9
  910. package/dist/esm/resources/utils/resource-polymorphism.factory.js.map +1 -1
  911. package/dist/esm/resources/utils/resource-polymorphism.relationships.d.ts +7 -7
  912. package/dist/esm/resources/utils/resource-polymorphism.relationships.d.ts.map +1 -1
  913. package/dist/esm/resources/utils/resource-polymorphism.relationships.js +1 -1
  914. package/dist/esm/resources/utils/resource-polymorphism.relationships.js.map +1 -1
  915. package/dist/esm/resources/utils/resource-polymorphism.schemas.d.ts +139 -5
  916. package/dist/esm/resources/utils/resource-polymorphism.schemas.d.ts.map +1 -1
  917. package/dist/esm/resources/utils/resource-polymorphism.schemas.js +301 -3
  918. package/dist/esm/resources/utils/resource-polymorphism.schemas.js.map +1 -1
  919. package/dist/esm/resources/utils/resource-polymorphism.utils.d.ts +1 -1
  920. package/dist/esm/resources/utils/resource-polymorphism.utils.d.ts.map +1 -1
  921. package/dist/esm/resources/utils/resource-polymorphism.utils.js +1 -1
  922. package/dist/esm/resources/utils/resource-polymorphism.utils.js.map +1 -1
  923. package/dist/esm/resources/utils/resource-subtree.utils.d.ts +1 -1
  924. package/dist/esm/resources/utils/resource-subtree.utils.d.ts.map +1 -1
  925. package/dist/esm/resources/utils/resource-subtree.utils.js +1 -1
  926. package/dist/esm/resources/utils/resource-subtree.utils.js.map +1 -1
  927. package/dist/esm/resources/utils/resources-config-context-needs.utils.d.ts +1 -1
  928. package/dist/esm/resources/utils/resources-config-context-needs.utils.d.ts.map +1 -1
  929. package/dist/esm/resources/utils/resources-config-context-needs.utils.js +1 -1
  930. package/dist/esm/resources/utils/resources-config-context-needs.utils.js.map +1 -1
  931. package/dist/esm/resources/utils/resources-config-naming.utils.d.ts.map +1 -1
  932. package/dist/esm/resources/utils/resources-config-naming.utils.js +1 -1
  933. package/dist/esm/resources/utils/resources-config-naming.utils.js.map +1 -1
  934. package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.d.ts +256 -39
  935. package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.d.ts.map +1 -1
  936. package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.js +898 -233
  937. package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.js.map +1 -1
  938. package/dist/esm/resources/utils/resources-config-operations.path.utils.d.ts +16 -6
  939. package/dist/esm/resources/utils/resources-config-operations.path.utils.d.ts.map +1 -1
  940. package/dist/esm/resources/utils/resources-config-operations.path.utils.js +35 -10
  941. package/dist/esm/resources/utils/resources-config-operations.path.utils.js.map +1 -1
  942. package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.d.ts +120 -20
  943. package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.d.ts.map +1 -1
  944. package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.js +394 -81
  945. package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.js.map +1 -1
  946. package/dist/esm/resources/utils/resources-config-operations.utils.d.ts +2 -2
  947. package/dist/esm/resources/utils/resources-config-operations.utils.d.ts.map +1 -1
  948. package/dist/esm/resources/utils/resources-config-operations.utils.js +1 -1
  949. package/dist/esm/resources/utils/resources-config-operations.utils.js.map +1 -1
  950. package/dist/esm/resources/utils/resources-serialization.utils.d.ts +77 -2
  951. package/dist/esm/resources/utils/resources-serialization.utils.d.ts.map +1 -1
  952. package/dist/esm/resources/utils/resources-serialization.utils.js +80 -1
  953. package/dist/esm/resources/utils/resources-serialization.utils.js.map +1 -1
  954. package/dist/esm/resources/utils/resources-summary.utils.d.ts +1 -1
  955. package/dist/esm/resources/utils/resources-summary.utils.d.ts.map +1 -1
  956. package/dist/esm/resources/utils/resources-summary.utils.js +1 -1
  957. package/dist/esm/resources/utils/resources-summary.utils.js.map +1 -1
  958. package/dist/esm/resources/utils/schema-family-builder.utils.d.ts +21 -3
  959. package/dist/esm/resources/utils/schema-family-builder.utils.d.ts.map +1 -1
  960. package/dist/esm/resources/utils/schema-family-builder.utils.js +7 -1
  961. package/dist/esm/resources/utils/schema-family-builder.utils.js.map +1 -1
  962. package/dist/esm/resources/utils/schema-type-inference.utils.d.ts.map +1 -1
  963. package/dist/esm/resources/utils/schema-type-inference.utils.js +1 -1
  964. package/dist/esm/resources/utils/schema-type-inference.utils.js.map +1 -1
  965. package/dist/esm/resources/utils/schema-type-utils.d.ts +1 -1
  966. package/dist/esm/resources/utils/schema-type-utils.d.ts.map +1 -1
  967. package/dist/esm/resources/utils/schema-type-utils.js +1 -1
  968. package/dist/esm/resources/utils/schema-type-utils.js.map +1 -1
  969. package/dist/esm/resources/utils/schema-variant-resolver.utils.d.ts +1 -1
  970. package/dist/esm/resources/utils/schema-variant-resolver.utils.d.ts.map +1 -1
  971. package/dist/esm/resources/utils/schema-variant-resolver.utils.js +1 -1
  972. package/dist/esm/resources/utils/schema-variant-resolver.utils.js.map +1 -1
  973. package/dist/esm/resources/utils/shared-persistence-collection.utils.d.ts +203 -0
  974. package/dist/esm/resources/utils/shared-persistence-collection.utils.d.ts.map +1 -0
  975. package/dist/esm/resources/utils/shared-persistence-collection.utils.js +284 -0
  976. package/dist/esm/resources/utils/shared-persistence-collection.utils.js.map +1 -0
  977. package/dist/esm/resources/utils/templatable-file-fields.shared.utils.d.ts +25 -0
  978. package/dist/esm/resources/utils/templatable-file-fields.shared.utils.d.ts.map +1 -0
  979. package/dist/esm/resources/utils/templatable-file-fields.shared.utils.js +322 -0
  980. package/dist/esm/resources/utils/templatable-file-fields.shared.utils.js.map +1 -0
  981. package/dist/esm/runtime/domain-module.shared.definitions.d.ts +32 -10
  982. package/dist/esm/runtime/domain-module.shared.definitions.d.ts.map +1 -1
  983. package/dist/esm/runtime/domain-module.shared.definitions.js +3 -2
  984. package/dist/esm/runtime/domain-module.shared.definitions.js.map +1 -1
  985. package/dist/esm/runtime/execution-context.shared.schemas.d.ts +93 -9
  986. package/dist/esm/runtime/execution-context.shared.schemas.d.ts.map +1 -1
  987. package/dist/esm/runtime/execution-context.shared.schemas.js +122 -7
  988. package/dist/esm/runtime/execution-context.shared.schemas.js.map +1 -1
  989. package/dist/esm/runtime/runtime.shared.schemas.d.ts.map +1 -1
  990. package/dist/esm/runtime/runtime.shared.schemas.js +1 -1
  991. package/dist/esm/runtime/runtime.shared.schemas.js.map +1 -1
  992. package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.d.ts +14 -11
  993. package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.d.ts.map +1 -1
  994. package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.js +65 -2
  995. package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.js.map +1 -1
  996. package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.d.ts +14 -11
  997. package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.d.ts.map +1 -1
  998. package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.js +162 -1
  999. package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.js.map +1 -1
  1000. package/dist/esm/security/api-keys/api-keys.shared.schemas.d.ts +79 -29
  1001. package/dist/esm/security/api-keys/api-keys.shared.schemas.d.ts.map +1 -1
  1002. package/dist/esm/security/api-keys/api-keys.shared.schemas.js +87 -6
  1003. package/dist/esm/security/api-keys/api-keys.shared.schemas.js.map +1 -1
  1004. package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.d.ts +185 -0
  1005. package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.d.ts.map +1 -0
  1006. package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.js +198 -0
  1007. package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.js.map +1 -0
  1008. package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts +307 -149
  1009. package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts.map +1 -1
  1010. package/dist/esm/security/authentications/authentication.shared.dto.schemas.js +177 -27
  1011. package/dist/esm/security/authentications/authentication.shared.dto.schemas.js.map +1 -1
  1012. package/dist/esm/security/authentications/authentication.shared.schemas.d.ts +64 -8
  1013. package/dist/esm/security/authentications/authentication.shared.schemas.d.ts.map +1 -1
  1014. package/dist/esm/security/authentications/authentication.shared.schemas.js +56 -9
  1015. package/dist/esm/security/authentications/authentication.shared.schemas.js.map +1 -1
  1016. package/dist/esm/security/authentications/authentication.shared.utils.d.ts +3 -3
  1017. package/dist/esm/security/authentications/authentication.shared.utils.d.ts.map +1 -1
  1018. package/dist/esm/security/authentications/authentication.shared.utils.js +1 -1
  1019. package/dist/esm/security/authentications/authentication.shared.utils.js.map +1 -1
  1020. package/dist/esm/security/authentications/consumable-token.shared.schemas.d.ts +103 -5
  1021. package/dist/esm/security/authentications/consumable-token.shared.schemas.d.ts.map +1 -1
  1022. package/dist/esm/security/authentications/consumable-token.shared.schemas.js +31 -1
  1023. package/dist/esm/security/authentications/consumable-token.shared.schemas.js.map +1 -1
  1024. package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.d.ts +278 -0
  1025. package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.d.ts.map +1 -0
  1026. package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.js +335 -0
  1027. package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.js.map +1 -0
  1028. package/dist/esm/security/authentications/password-reset.shared.dto.schemas.d.ts +6 -6
  1029. package/dist/esm/security/authentications/password-reset.shared.dto.schemas.d.ts.map +1 -1
  1030. package/dist/esm/security/authentications/password-reset.shared.dto.schemas.js +11 -4
  1031. package/dist/esm/security/authentications/password-reset.shared.dto.schemas.js.map +1 -1
  1032. package/dist/esm/security/authentications/registration.shared.dto.schemas.d.ts +51 -18
  1033. package/dist/esm/security/authentications/registration.shared.dto.schemas.d.ts.map +1 -1
  1034. package/dist/esm/security/authentications/registration.shared.dto.schemas.js +70 -13
  1035. package/dist/esm/security/authentications/registration.shared.dto.schemas.js.map +1 -1
  1036. package/dist/esm/security/authentications/same-origin-redirect-path.shared.d.ts +69 -0
  1037. package/dist/esm/security/authentications/same-origin-redirect-path.shared.d.ts.map +1 -0
  1038. package/dist/esm/security/authentications/same-origin-redirect-path.shared.js +93 -0
  1039. package/dist/esm/security/authentications/same-origin-redirect-path.shared.js.map +1 -0
  1040. package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.d.ts +91 -0
  1041. package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.d.ts.map +1 -0
  1042. package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.js +91 -0
  1043. package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.js.map +1 -0
  1044. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.d.ts +2 -9
  1045. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.d.ts.map +1 -1
  1046. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.js +49 -33
  1047. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.js.map +1 -1
  1048. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.d.ts +41 -14
  1049. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.d.ts.map +1 -1
  1050. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.js +158 -5
  1051. package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.js.map +1 -1
  1052. package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.d.ts +21 -9
  1053. package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.d.ts.map +1 -1
  1054. package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.js +92 -18
  1055. package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.js.map +1 -1
  1056. package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.d.ts +11 -10
  1057. package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.d.ts.map +1 -1
  1058. package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.js +29 -7
  1059. package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.js.map +1 -1
  1060. package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.d.ts +12 -5
  1061. package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.d.ts.map +1 -1
  1062. package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.js +81 -5
  1063. package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.js.map +1 -1
  1064. package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.d.ts +17 -5
  1065. package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.d.ts.map +1 -1
  1066. package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.js +29 -5
  1067. package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.js.map +1 -1
  1068. package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.d.ts +2 -9
  1069. package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.d.ts.map +1 -1
  1070. package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.js +46 -33
  1071. package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.js.map +1 -1
  1072. package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.d.ts +34 -9
  1073. package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.d.ts.map +1 -1
  1074. package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.js +47 -3
  1075. package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.js.map +1 -1
  1076. package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.d.ts +2 -17
  1077. package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.d.ts.map +1 -1
  1078. package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.js +55 -53
  1079. package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.js.map +1 -1
  1080. package/dist/esm/security/authentications/sso/sso-config.shared.schemas.d.ts +37 -37
  1081. package/dist/esm/security/authentications/sso/sso-config.shared.schemas.d.ts.map +1 -1
  1082. package/dist/esm/security/authentications/sso/sso-config.shared.schemas.js +53 -13
  1083. package/dist/esm/security/authentications/sso/sso-config.shared.schemas.js.map +1 -1
  1084. package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.d.ts +79 -7
  1085. package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.d.ts.map +1 -1
  1086. package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.js +157 -14
  1087. package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.js.map +1 -1
  1088. package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.d.ts +113 -118
  1089. package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.d.ts.map +1 -1
  1090. package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.js +111 -49
  1091. package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.js.map +1 -1
  1092. package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.d.ts +57 -0
  1093. package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.d.ts.map +1 -0
  1094. package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.js +58 -0
  1095. package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.js.map +1 -0
  1096. package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.d.ts +35 -0
  1097. package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.d.ts.map +1 -0
  1098. package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js +252 -0
  1099. package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js.map +1 -0
  1100. package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.d.ts +171 -0
  1101. package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.d.ts.map +1 -0
  1102. package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.js +239 -0
  1103. package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.js.map +1 -0
  1104. package/dist/esm/security/authorizations/roles.shared.defaults.d.ts +1 -1
  1105. package/dist/esm/security/authorizations/roles.shared.defaults.d.ts.map +1 -1
  1106. package/dist/esm/security/authorizations/roles.shared.defaults.js +6 -1
  1107. package/dist/esm/security/authorizations/roles.shared.defaults.js.map +1 -1
  1108. package/dist/esm/security/authorizations/roles.shared.schemas.d.ts +12 -3
  1109. package/dist/esm/security/authorizations/roles.shared.schemas.d.ts.map +1 -1
  1110. package/dist/esm/security/authorizations/roles.shared.schemas.js +15 -1
  1111. package/dist/esm/security/authorizations/roles.shared.schemas.js.map +1 -1
  1112. package/dist/esm/security/authorizations/roles.shared.utils.d.ts +133 -0
  1113. package/dist/esm/security/authorizations/roles.shared.utils.d.ts.map +1 -0
  1114. package/dist/esm/security/authorizations/roles.shared.utils.js +218 -0
  1115. package/dist/esm/security/authorizations/roles.shared.utils.js.map +1 -0
  1116. package/dist/esm/security/crypto-keys/crypto-keys.shared.schemas.d.ts.map +1 -1
  1117. package/dist/esm/security/crypto-keys/crypto-keys.shared.schemas.js +1 -1
  1118. package/dist/esm/security/crypto-keys/crypto-keys.shared.schemas.js.map +1 -1
  1119. package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.d.ts +47 -0
  1120. package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.d.ts.map +1 -0
  1121. package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js +228 -0
  1122. package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js.map +1 -0
  1123. package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts +46 -0
  1124. package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts.map +1 -0
  1125. package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js +365 -0
  1126. package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js.map +1 -0
  1127. package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts +192 -0
  1128. package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts.map +1 -0
  1129. package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js +401 -0
  1130. package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js.map +1 -0
  1131. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.d.ts +30 -0
  1132. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.d.ts.map +1 -0
  1133. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.js +83 -0
  1134. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.js.map +1 -0
  1135. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.d.ts +29 -0
  1136. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.d.ts.map +1 -0
  1137. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.js +53 -0
  1138. package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.js.map +1 -0
  1139. package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.d.ts +117 -0
  1140. package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.d.ts.map +1 -0
  1141. package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.js +180 -0
  1142. package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.js.map +1 -0
  1143. package/dist/esm/testing/resource-config-builders.d.ts +4 -4
  1144. package/dist/esm/testing/resource-config-builders.d.ts.map +1 -1
  1145. package/dist/esm/testing/resource-config-builders.js +9 -2
  1146. package/dist/esm/testing/resource-config-builders.js.map +1 -1
  1147. package/dist/esm/testing.d.ts +1 -1
  1148. package/dist/esm/testing.d.ts.map +1 -1
  1149. package/dist/esm/testing.js +1 -1
  1150. package/dist/esm/testing.js.map +1 -1
  1151. package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.d.ts +76 -0
  1152. package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.d.ts.map +1 -0
  1153. package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.js +72 -0
  1154. package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.js.map +1 -0
  1155. package/dist/esm/users/anonymous-users.shared.resources-config.schemas.d.ts +28 -17
  1156. package/dist/esm/users/anonymous-users.shared.resources-config.schemas.d.ts.map +1 -1
  1157. package/dist/esm/users/anonymous-users.shared.resources-config.schemas.js +43 -4
  1158. package/dist/esm/users/anonymous-users.shared.resources-config.schemas.js.map +1 -1
  1159. package/dist/esm/users/anonymous-users.shared.schema.d.ts +19 -12
  1160. package/dist/esm/users/anonymous-users.shared.schema.d.ts.map +1 -1
  1161. package/dist/esm/users/anonymous-users.shared.schema.js +68 -4
  1162. package/dist/esm/users/anonymous-users.shared.schema.js.map +1 -1
  1163. package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.d.ts +52 -0
  1164. package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.d.ts.map +1 -0
  1165. package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.js +153 -0
  1166. package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.js.map +1 -0
  1167. package/dist/esm/users/inbound-contacts.shared.schemas.d.ts +47 -17
  1168. package/dist/esm/users/inbound-contacts.shared.schemas.d.ts.map +1 -1
  1169. package/dist/esm/users/inbound-contacts.shared.schemas.js +123 -9
  1170. package/dist/esm/users/inbound-contacts.shared.schemas.js.map +1 -1
  1171. package/dist/esm/users/user-credentials.shared.resources-config.schemas.d.ts +12 -12
  1172. package/dist/esm/users/user-credentials.shared.resources-config.schemas.d.ts.map +1 -1
  1173. package/dist/esm/users/user-credentials.shared.resources-config.schemas.js +11 -1
  1174. package/dist/esm/users/user-credentials.shared.resources-config.schemas.js.map +1 -1
  1175. package/dist/esm/users/user-credentials.shared.schemas.d.ts +15 -10
  1176. package/dist/esm/users/user-credentials.shared.schemas.d.ts.map +1 -1
  1177. package/dist/esm/users/user-credentials.shared.schemas.js +53 -9
  1178. package/dist/esm/users/user-credentials.shared.schemas.js.map +1 -1
  1179. package/dist/esm/users/user-identity-links.shared.resources-config.schemas.d.ts +13 -11
  1180. package/dist/esm/users/user-identity-links.shared.resources-config.schemas.d.ts.map +1 -1
  1181. package/dist/esm/users/user-identity-links.shared.resources-config.schemas.js +24 -1
  1182. package/dist/esm/users/user-identity-links.shared.resources-config.schemas.js.map +1 -1
  1183. package/dist/esm/users/user-identity-links.shared.schemas.d.ts +22 -19
  1184. package/dist/esm/users/user-identity-links.shared.schemas.d.ts.map +1 -1
  1185. package/dist/esm/users/user-identity-links.shared.schemas.js +107 -23
  1186. package/dist/esm/users/user-identity-links.shared.schemas.js.map +1 -1
  1187. package/dist/esm/users/user-preferences-reset.shared.utils.d.ts +78 -0
  1188. package/dist/esm/users/user-preferences-reset.shared.utils.d.ts.map +1 -0
  1189. package/dist/esm/users/user-preferences-reset.shared.utils.js +98 -0
  1190. package/dist/esm/users/user-preferences-reset.shared.utils.js.map +1 -0
  1191. package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts +31 -61
  1192. package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts.map +1 -1
  1193. package/dist/esm/users/user-preferences.shared.resources-config.schemas.js +34 -203
  1194. package/dist/esm/users/user-preferences.shared.resources-config.schemas.js.map +1 -1
  1195. package/dist/esm/users/user-profiles.shared.resources-config.schemas.d.ts +13 -14
  1196. package/dist/esm/users/user-profiles.shared.resources-config.schemas.d.ts.map +1 -1
  1197. package/dist/esm/users/user-profiles.shared.resources-config.schemas.js +66 -31
  1198. package/dist/esm/users/user-profiles.shared.resources-config.schemas.js.map +1 -1
  1199. package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts +33 -60
  1200. package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts.map +1 -1
  1201. package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.js +49 -175
  1202. package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.js.map +1 -1
  1203. package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.d.ts +13 -21
  1204. package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.d.ts.map +1 -1
  1205. package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.js +12 -119
  1206. package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.js.map +1 -1
  1207. package/dist/esm/users/user-self.shared.resources-config.schemas.d.ts +12 -16
  1208. package/dist/esm/users/user-self.shared.resources-config.schemas.d.ts.map +1 -1
  1209. package/dist/esm/users/user-self.shared.resources-config.schemas.js +263 -115
  1210. package/dist/esm/users/user-self.shared.resources-config.schemas.js.map +1 -1
  1211. package/dist/esm/users/users.shared.resources-config.schemas.d.ts +13 -16
  1212. package/dist/esm/users/users.shared.resources-config.schemas.d.ts.map +1 -1
  1213. package/dist/esm/users/users.shared.resources-config.schemas.js +376 -141
  1214. package/dist/esm/users/users.shared.resources-config.schemas.js.map +1 -1
  1215. package/dist/esm/users/users.shared.schemas.d.ts +110 -108
  1216. package/dist/esm/users/users.shared.schemas.d.ts.map +1 -1
  1217. package/dist/esm/users/users.shared.schemas.js +215 -19
  1218. package/dist/esm/users/users.shared.schemas.js.map +1 -1
  1219. package/dist/tsconfig.build.tsbuildinfo +1 -1
  1220. package/package.json +54 -27
  1221. package/dist/esm/compliance/compliance-framework/compliance-frameworks.shared.schemas.d.ts +0 -37
  1222. package/dist/esm/compliance/compliance-framework/compliance-frameworks.shared.schemas.d.ts.map +0 -1
  1223. package/dist/esm/compliance/compliance-framework/compliance-frameworks.shared.schemas.js +0 -38
  1224. package/dist/esm/compliance/compliance-framework/compliance-frameworks.shared.schemas.js.map +0 -1
  1225. package/dist/esm/external-providers/feature-bindings-policy.shared.schemas.d.ts +0 -27
  1226. package/dist/esm/external-providers/feature-bindings-policy.shared.schemas.d.ts.map +0 -1
  1227. package/dist/esm/external-providers/feature-bindings-policy.shared.schemas.js +0 -35
  1228. package/dist/esm/external-providers/feature-bindings-policy.shared.schemas.js.map +0 -1
  1229. package/dist/esm/external-providers/feature-mapping.shared.schemas.d.ts +0 -80
  1230. package/dist/esm/external-providers/feature-mapping.shared.schemas.d.ts.map +0 -1
  1231. package/dist/esm/external-providers/feature-mapping.shared.schemas.js +0 -159
  1232. package/dist/esm/external-providers/feature-mapping.shared.schemas.js.map +0 -1
  1233. package/dist/esm/external-providers/wildo-features.shared.schemas.d.ts +0 -102
  1234. package/dist/esm/external-providers/wildo-features.shared.schemas.d.ts.map +0 -1
  1235. package/dist/esm/external-providers/wildo-features.shared.schemas.js +0 -124
  1236. package/dist/esm/external-providers/wildo-features.shared.schemas.js.map +0 -1
  1237. package/dist/esm/features/platform-capability-definitions.shared.d.ts +0 -50
  1238. package/dist/esm/features/platform-capability-definitions.shared.d.ts.map +0 -1
  1239. package/dist/esm/features/platform-capability-definitions.shared.js +0 -30
  1240. package/dist/esm/features/platform-capability-definitions.shared.js.map +0 -1
  1241. package/dist/esm/flows-actors/agents-context.shared.schemas.d.ts +0 -181
  1242. package/dist/esm/flows-actors/agents-context.shared.schemas.d.ts.map +0 -1
  1243. package/dist/esm/flows-actors/agents-context.shared.schemas.js +0 -116
  1244. package/dist/esm/flows-actors/agents-context.shared.schemas.js.map +0 -1
  1245. package/dist/esm/notifications/email/email-header-footer-template.shared.resources-config.schemas.d.ts +0 -39
  1246. package/dist/esm/notifications/email/email-header-footer-template.shared.resources-config.schemas.d.ts.map +0 -1
  1247. package/dist/esm/notifications/email/email-header-footer-template.shared.resources-config.schemas.js +0 -113
  1248. package/dist/esm/notifications/email/email-header-footer-template.shared.resources-config.schemas.js.map +0 -1
  1249. package/dist/esm/notifications/email/email-header-footer-template.shared.schemas.d.ts +0 -63
  1250. package/dist/esm/notifications/email/email-header-footer-template.shared.schemas.d.ts.map +0 -1
  1251. package/dist/esm/notifications/email/email-header-footer-template.shared.schemas.js +0 -110
  1252. package/dist/esm/notifications/email/email-header-footer-template.shared.schemas.js.map +0 -1
  1253. package/dist/esm/notifications/email/email-template.shared.resources-config.schemas.d.ts +0 -62
  1254. package/dist/esm/notifications/email/email-template.shared.resources-config.schemas.d.ts.map +0 -1
  1255. package/dist/esm/notifications/email/email-template.shared.resources-config.schemas.js +0 -112
  1256. package/dist/esm/notifications/email/email-template.shared.resources-config.schemas.js.map +0 -1
  1257. package/dist/esm/notifications/email/email-template.shared.schemas.d.ts +0 -162
  1258. package/dist/esm/notifications/email/email-template.shared.schemas.d.ts.map +0 -1
  1259. package/dist/esm/notifications/email/email-template.shared.schemas.js +0 -189
  1260. package/dist/esm/notifications/email/email-template.shared.schemas.js.map +0 -1
  1261. package/dist/esm/organizations/organization-member-invitations.shared.resources-config.schemas.d.ts +0 -37
  1262. package/dist/esm/organizations/organization-member-invitations.shared.resources-config.schemas.d.ts.map +0 -1
  1263. package/dist/esm/organizations/organization-member-invitations.shared.resources-config.schemas.js +0 -207
  1264. package/dist/esm/organizations/organization-member-invitations.shared.resources-config.schemas.js.map +0 -1
  1265. package/dist/esm/resources/testing/SchemaDecoratorTestUtils.d.ts +0 -91
  1266. package/dist/esm/resources/testing/SchemaDecoratorTestUtils.d.ts.map +0 -1
  1267. package/dist/esm/resources/testing/SchemaDecoratorTestUtils.js +0 -325
  1268. package/dist/esm/resources/testing/SchemaDecoratorTestUtils.js.map +0 -1
  1269. package/dist/esm/runtime/companion-artifact-placement.shared.definitions.d.ts.map +0 -1
  1270. package/dist/esm/runtime/companion-artifact-placement.shared.definitions.js.map +0 -1
  1271. package/dist/esm/security/authentications/policy/auth-policy.shared.resources-config.schemas.d.ts +0 -10
  1272. package/dist/esm/security/authentications/policy/auth-policy.shared.resources-config.schemas.d.ts.map +0 -1
  1273. package/dist/esm/security/authentications/policy/auth-policy.shared.resources-config.schemas.js +0 -52
  1274. package/dist/esm/security/authentications/policy/auth-policy.shared.resources-config.schemas.js.map +0 -1
  1275. package/dist/esm/security/authentications/policy/auth-policy.shared.schemas.d.ts +0 -52
  1276. package/dist/esm/security/authentications/policy/auth-policy.shared.schemas.d.ts.map +0 -1
  1277. package/dist/esm/security/authentications/policy/auth-policy.shared.schemas.js +0 -40
  1278. package/dist/esm/security/authentications/policy/auth-policy.shared.schemas.js.map +0 -1
  1279. package/dist/esm/testing/schema-decorator-utils.d.ts +0 -91
  1280. package/dist/esm/testing/schema-decorator-utils.d.ts.map +0 -1
  1281. package/dist/esm/testing/schema-decorator-utils.js +0 -325
  1282. package/dist/esm/testing/schema-decorator-utils.js.map +0 -1
@@ -0,0 +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"]}
@@ -10,8 +10,8 @@ import { z } from 'zod';
10
10
  * Also used as the frontend form schema for the email input step.
11
11
  */
12
12
  export declare const PasswordResetRequestDtoSchema: z.ZodObject<{
13
- email: z.ZodEmail;
14
- }, z.core.$strip, core.$ZodObjectExtra>;
13
+ email: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEmail>;
14
+ }, z.core.$strip>;
15
15
  export type PasswordResetRequestDto = z.infer<typeof PasswordResetRequestDtoSchema>;
16
16
  /**
17
17
  * POST /auth/password-reset/complete — API contract
@@ -21,7 +21,7 @@ export type PasswordResetRequestDto = z.infer<typeof PasswordResetRequestDtoSche
21
21
  export declare const PasswordResetCompleteDtoSchema: z.ZodObject<{
22
22
  token: z.ZodString;
23
23
  newPassword: z.ZodString;
24
- }, z.core.$strip, core.$ZodObjectExtra>;
24
+ }, z.core.$strip>;
25
25
  export type PasswordResetCompleteDto = z.infer<typeof PasswordResetCompleteDtoSchema>;
26
26
  /**
27
27
  * Frontend form schema for the password reset completion step.
@@ -32,8 +32,8 @@ export type PasswordResetCompleteDto = z.infer<typeof PasswordResetCompleteDtoSc
32
32
  * The .isPassword() decorator tells FormField to render password inputs.
33
33
  */
34
34
  export declare const PasswordResetCompleteFormDtoSchema: z.ZodObject<{
35
- newPassword: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
36
- confirmPassword: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
37
- }, z.core.$strip, core.$ZodObjectExtra>;
35
+ newPassword: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
36
+ confirmPassword: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
37
+ }, z.core.$strip>;
38
38
  export type PasswordResetCompleteFormDto = z.infer<typeof PasswordResetCompleteFormDtoSchema>;
39
39
  //# sourceMappingURL=password-reset.shared.dto.schemas.d.ts.map
@@ -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;AAMxB;;;GAGG;AACH,eAAO,MAAM,6BAA6B;;uCAExC,CAAC;AAGH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAEpF;;;;GAIG;AACH,eAAO,MAAM,8BAA8B;;;uCAGzC,CAAC;AAGH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAMtF;;;;;;;GAOG;AACH,eAAO,MAAM,kCAAkC;;;uCAG7C,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"}
@@ -5,6 +5,7 @@
5
5
  * Used by both frontend (Form component) and backend (req.body parsing).
6
6
  */
7
7
  import { z } from 'zod';
8
+ import { AutocompleteFieldIdentifier } from '@wildo-ai/zod-decorators';
8
9
  // ═══════════════════════════════════════════════════════════════
9
10
  // API DTOs — what goes over the wire
10
11
  // ═══════════════════════════════════════════════════════════════
@@ -13,7 +14,9 @@ import { z } from 'zod';
13
14
  * Also used as the frontend form schema for the email input step.
14
15
  */
15
16
  export const PasswordResetRequestDtoSchema = z.object({
16
- email: z.email().toLowerCase(),
17
+ email: z.email().toLowerCase().stringUI({
18
+ edit: { autoComplete: AutocompleteFieldIdentifier.EMAIL },
19
+ }),
17
20
  });
18
21
  /**
19
22
  * POST /auth/password-reset/complete — API contract
@@ -36,7 +39,11 @@ export const PasswordResetCompleteDtoSchema = z.object({
36
39
  * The .isPassword() decorator tells FormField to render password inputs.
37
40
  */
38
41
  export const PasswordResetCompleteFormDtoSchema = z.object({
39
- newPassword: z.string().min(1).isPassword(),
40
- confirmPassword: z.string().min(1).isPassword(),
42
+ newPassword: z.string().min(1).isPassword().stringUI({
43
+ edit: { autoComplete: AutocompleteFieldIdentifier.NEW_PASSWORD },
44
+ }),
45
+ confirmPassword: z.string().min(1).isPassword().stringUI({
46
+ edit: { autoComplete: AutocompleteFieldIdentifier.NEW_PASSWORD },
47
+ }),
41
48
  });
42
- //# sourceMappingURL=password-reset.shared.dto.schemas.js.map
49
+ //# sourceMappingURL=password-reset.shared.dto.schemas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"password-reset.shared.dto.schemas.js","sourceRoot":"","sources":["../../../../src/security/authentications/password-reset.shared.dto.schemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,kEAAkE;AAClE,qCAAqC;AACrC,kEAAkE;AAElE;;;GAGG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE;CAC/B,CAAC,CAAC;AAKH;;;;GAIG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC/B,CAAC,CAAC;AAKH,kEAAkE;AAClE,mEAAmE;AACnE,kEAAkE;AAElE;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC,MAAM,CAAC;IACzD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE;IAC3C,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE;CAChD,CAAC,CAAC"}
1
+ {"version":3,"file":"password-reset.shared.dto.schemas.js","sourceRoot":"","sources":["../../../../../src/security/authentications/password-reset.shared.dto.schemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAEvE,kEAAkE;AAClE,qCAAqC;AACrC,kEAAkE;AAElE;;;GAGG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC;QACtC,IAAI,EAAE,EAAE,YAAY,EAAE,2BAA2B,CAAC,KAAK,EAAE;KAC1D,CAAC;CACH,CAAC,CAAC;AAKH;;;;GAIG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC/B,CAAC,CAAC;AAKH,kEAAkE;AAClE,mEAAmE;AACnE,kEAAkE;AAElE;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC,MAAM,CAAC;IACzD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC;QACnD,IAAI,EAAE,EAAE,YAAY,EAAE,2BAA2B,CAAC,YAAY,EAAE;KACjE,CAAC;IACF,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC;QACvD,IAAI,EAAE,EAAE,YAAY,EAAE,2BAA2B,CAAC,YAAY,EAAE;KACjE,CAAC;CACH,CAAC,CAAC","sourcesContent":["/**\n * Password Reset — Shared DTO Schemas\n *\n * Single source of truth for password reset validation.\n * Used by both frontend (Form component) and backend (req.body parsing).\n */\n\nimport { z } from 'zod';\nimport { AutocompleteFieldIdentifier } from '@wildo-ai/zod-decorators';\n\n// ═══════════════════════════════════════════════════════════════\n// API DTOs — what goes over the wire\n// ═══════════════════════════════════════════════════════════════\n\n/**\n * POST /auth/password-reset/request\n * Also used as the frontend form schema for the email input step.\n */\nexport const PasswordResetRequestDtoSchema = z.object({\n email: z.email().toLowerCase().stringUI({\n edit: { autoComplete: AutocompleteFieldIdentifier.EMAIL },\n }),\n});\n\n\nexport type PasswordResetRequestDto = z.infer<typeof PasswordResetRequestDtoSchema>;\n\n/**\n * POST /auth/password-reset/complete — API contract\n * Backend uses this for req.body parsing.\n * token comes from URL on the frontend, so this is NOT the form schema.\n */\nexport const PasswordResetCompleteDtoSchema = z.object({\n token: z.string().min(1),\n newPassword: z.string().min(1),\n});\n\n\nexport type PasswordResetCompleteDto = z.infer<typeof PasswordResetCompleteDtoSchema>;\n\n// ═══════════════════════════════════════════════════════════════\n// Form DTO — frontend form fields (token comes from URL, not form)\n// ═══════════════════════════════════════════════════════════════\n\n/**\n * Frontend form schema for the password reset completion step.\n * Includes confirmPassword for client-side match validation.\n *\n * NOTE: The .refine() for password match is applied at the component level\n * (not here) because the error message needs i18n: t('passwordMismatch').\n * The .isPassword() decorator tells FormField to render password inputs.\n */\nexport const PasswordResetCompleteFormDtoSchema = z.object({\n newPassword: z.string().min(1).isPassword().stringUI({\n edit: { autoComplete: AutocompleteFieldIdentifier.NEW_PASSWORD },\n }),\n confirmPassword: z.string().min(1).isPassword().stringUI({\n edit: { autoComplete: AutocompleteFieldIdentifier.NEW_PASSWORD },\n }),\n});\n\n\nexport type PasswordResetCompleteFormDto = z.infer<typeof PasswordResetCompleteFormDtoSchema>;\n"]}
@@ -5,6 +5,7 @@
5
5
  * Used by both frontend (AutomatedForm component) and backend (req.body parsing).
6
6
  */
7
7
  import { z } from 'zod';
8
+ import { AuthMethod } from './authentication.shared.schemas';
8
9
  /**
9
10
  * POST /auth/register — registration form fields.
10
11
  * Used as:
@@ -17,13 +18,13 @@ import { z } from 'zod';
17
18
  * The .isPassword() decorator tells FormField to render password inputs.
18
19
  */
19
20
  export declare const UserRegisterFormDtoSchema: z.ZodObject<{
20
- email: z.ZodEmail;
21
- firstName: z.ZodString;
22
- lastName: z.ZodString;
23
- organizationName: z.ZodOptional<z.ZodString>;
24
- password: z.ZodOptional<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
25
- confirmPassword: z.ZodOptional<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
26
- }, z.core.$strip, core.$ZodObjectExtra>;
21
+ email: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEmail>;
22
+ firstName: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
23
+ lastName: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
24
+ organizationName: z.ZodOptional<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
25
+ password: z.ZodOptional<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>;
26
+ confirmPassword: z.ZodOptional<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>;
27
+ }, z.core.$strip>;
27
28
  export type UserRegisterFormDto = z.infer<typeof UserRegisterFormDtoSchema>;
28
29
  /**
29
30
  * POST /auth/register — API contract (what goes over the wire).
@@ -36,7 +37,7 @@ export declare const UserRegisterApiDtoSchema: z.ZodObject<{
36
37
  lastName: z.ZodString;
37
38
  password: z.ZodOptional<z.ZodString>;
38
39
  organizationName: z.ZodOptional<z.ZodString>;
39
- }, z.core.$strip, core.$ZodObjectExtra>;
40
+ }, z.core.$strip>;
40
41
  export type UserRegisterApiDto = z.infer<typeof UserRegisterApiDtoSchema>;
41
42
  /**
42
43
  * POST /auth/invitation/accept — public invitation-acceptance form fields.
@@ -48,21 +49,53 @@ export type UserRegisterApiDto = z.infer<typeof UserRegisterApiDtoSchema>;
48
49
  * confirmPassword is frontend-only and excluded from the API DTO.
49
50
  */
50
51
  export declare const UserInvitationFormDtoSchema: z.ZodObject<{
51
- firstName: z.ZodOptional<z.ZodString>;
52
- lastName: z.ZodOptional<z.ZodString>;
53
- password: z.ZodOptional<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
54
- confirmPassword: z.ZodOptional<z.ZodString>;
55
- }, z.core.$strip, core.$ZodObjectExtra>;
52
+ firstName: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
53
+ lastName: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
54
+ password: z.ZodOptional<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>;
55
+ confirmPassword: z.ZodOptional<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>;
56
+ }, z.core.$strip>;
56
57
  export type UserInvitationFormDto = z.infer<typeof UserInvitationFormDtoSchema>;
58
+ /**
59
+ * The first-factor credential the invitee chooses to establish at acceptance.
60
+ *
61
+ * The invitation-accept endpoint supports exactly three establishment paths (SSO-managed
62
+ * invitees are routed to the IdP's enterprise-authorize flow, NOT this endpoint):
63
+ * - `PASSWORD` — set a password now. When both `credentialMethod` and
64
+ * `password` are omitted, intentionally activate with no local credential;
65
+ * another configured authentication method can establish later sessions.
66
+ * - `MAGIC_LINK` — activate with no local credential; a magic link is emailed and the
67
+ * session is established when the invitee clicks it.
68
+ * - `PASSKEY` — enroll a NEW WebAuthn credential at accept; the invitation token bootstraps
69
+ * the session and the passkey is registered as the go-forward credential.
70
+ */
71
+ export declare const INVITATION_ACCEPT_CREDENTIAL_METHODS: readonly [AuthMethod.PASSWORD, AuthMethod.MAGIC_LINK, AuthMethod.PASSKEY];
72
+ /**
73
+ * The subset of {@link AuthMethod} an invitee may establish at accept time. Enterprise-SSO / social-
74
+ * OAuth invitees are routed to the IdP authorize flow, NOT the accept endpoint, so those members are
75
+ * intentionally absent. Single source of truth for BOTH the request DTO (`credentialMethod` enum) and
76
+ * the backend `AcceptInvitationParams.credentialMethod` — so the service signature can never drift
77
+ * wider than the wire contract it is fed from.
78
+ */
79
+ export type InvitationAcceptCredentialMethod = (typeof INVITATION_ACCEPT_CREDENTIAL_METHODS)[number];
57
80
  /**
58
81
  * POST /auth/invitation/accept — API contract.
82
+ *
83
+ * `credentialMethod` is optional by design. When absent, a provided `password`
84
+ * establishes a password credential; without one, acceptance activates the
85
+ * membership without a local credential. `MAGIC_LINK` and `PASSKEY` are
86
+ * explicit because they initiate method-specific work.
59
87
  */
60
88
  export declare const UserInvitationApiDtoSchema: z.ZodObject<{
61
89
  invitationToken: z.ZodString;
62
- firstName: z.ZodOptional<z.ZodString>;
63
- lastName: z.ZodOptional<z.ZodString>;
90
+ firstName: z.ZodString;
91
+ lastName: z.ZodString;
64
92
  password: z.ZodOptional<z.ZodString>;
65
- }, z.core.$strip, core.$ZodObjectExtra>;
93
+ credentialMethod: z.ZodOptional<z.ZodEnum<{
94
+ PASSWORD: AuthMethod.PASSWORD;
95
+ MAGIC_LINK: AuthMethod.MAGIC_LINK;
96
+ PASSKEY: AuthMethod.PASSKEY;
97
+ }>>;
98
+ }, z.core.$strip>;
66
99
  export type UserInvitationApiDto = z.infer<typeof UserInvitationApiDtoSchema>;
67
100
  /**
68
101
  * POST /auth/invitation/reject — API contract.
@@ -70,7 +103,7 @@ export type UserInvitationApiDto = z.infer<typeof UserInvitationApiDtoSchema>;
70
103
  export declare const UserInvitationRejectApiDtoSchema: z.ZodObject<{
71
104
  invitationToken: z.ZodString;
72
105
  rejectionReason: z.ZodOptional<z.ZodString>;
73
- }, z.core.$strip, core.$ZodObjectExtra>;
106
+ }, z.core.$strip>;
74
107
  export type UserInvitationRejectApiDto = z.infer<typeof UserInvitationRejectApiDtoSchema>;
75
108
  /**
76
109
  * POST /auth/verify-email — API contract.
@@ -80,6 +113,6 @@ export type UserInvitationRejectApiDto = z.infer<typeof UserInvitationRejectApiD
80
113
  export declare const EmailVerifyDtoSchema: z.ZodObject<{
81
114
  token: z.ZodString;
82
115
  email: z.ZodEmail;
83
- }, z.core.$strip, core.$ZodObjectExtra>;
116
+ }, z.core.$strip>;
84
117
  export type EmailVerifyDto = z.infer<typeof EmailVerifyDtoSchema>;
85
118
  //# sourceMappingURL=registration.shared.dto.schemas.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registration.shared.dto.schemas.d.ts","sourceRoot":"","sources":["../../../../src/security/authentications/registration.shared.dto.schemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB;;;;;;;;;;GAUG;AACH,eAAO,MAAM,yBAAyB;;;;;;;uCAQpC,CAAC;AAGH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E;;;;GAIG;AACH,eAAO,MAAM,wBAAwB;;;;;;uCAOnC,CAAC;AAGH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAM1E;;;;;;;;GAQG;AACH,eAAO,MAAM,2BAA2B;;;;;uCAKtC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;uCAKrC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E;;GAEG;AACH,eAAO,MAAM,gCAAgC;;;uCAG3C,CAAC;AAEH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAM1F;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;;;uCAG/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
1
+ {"version":3,"file":"registration.shared.dto.schemas.d.ts","sourceRoot":"","sources":["../../../../../src/security/authentications/registration.shared.dto.schemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAM7D;;;;;;;;;;GAUG;AACH,eAAO,MAAM,yBAAyB;;;;;;;iBAoBpC,CAAC;AAGH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E;;;;GAIG;AACH,eAAO,MAAM,wBAAwB;;;;;;iBAOnC,CAAC;AAGH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAM1E;;;;;;;;GAQG;AACH,eAAO,MAAM,2BAA2B;;;;;iBAqBtC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,oCAAoC,2EAIvC,CAAC;AAEX;;;;;;GAMG;AACH,MAAM,MAAM,gCAAgC,GAAG,CAAC,OAAO,oCAAoC,CAAC,CAAC,MAAM,CAAC,CAAC;AAErG;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;iBASrC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E;;GAEG;AACH,eAAO,MAAM,gCAAgC;;;iBAG3C,CAAC;AAEH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAM1F;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;;;iBAG/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
@@ -5,6 +5,8 @@
5
5
  * Used by both frontend (AutomatedForm component) and backend (req.body parsing).
6
6
  */
7
7
  import { z } from 'zod';
8
+ import { AutocompleteFieldIdentifier } from '@wildo-ai/zod-decorators';
9
+ import { AuthMethod } from './authentication.shared.schemas.js';
8
10
  // ═══════════════════════════════════════════════════════════════
9
11
  // Registration Form + API DTO
10
12
  // ═══════════════════════════════════════════════════════════════
@@ -20,13 +22,25 @@ import { z } from 'zod';
20
22
  * The .isPassword() decorator tells FormField to render password inputs.
21
23
  */
22
24
  export const UserRegisterFormDtoSchema = z.object({
23
- email: z.email().toLowerCase(),
24
- firstName: z.string().min(1).max(50),
25
- lastName: z.string().min(1).max(50),
25
+ email: z.email().toLowerCase().stringUI({
26
+ edit: { autoComplete: AutocompleteFieldIdentifier.EMAIL },
27
+ }),
28
+ firstName: z.string().min(1).max(50).stringUI({
29
+ edit: { autoComplete: AutocompleteFieldIdentifier.GIVEN_NAME },
30
+ }),
31
+ lastName: z.string().min(1).max(50).stringUI({
32
+ edit: { autoComplete: AutocompleteFieldIdentifier.FAMILY_NAME },
33
+ }),
26
34
  /** W6.2: Org name when orgNameSource is 'ask'. Conditionally shown on frontend. */
27
- organizationName: z.string().min(1).max(200).optional(),
28
- password: z.string().min(1).isPassword().optional(),
29
- confirmPassword: z.string().min(1).isPassword().optional(),
35
+ organizationName: z.string().min(1).max(200).stringUI({
36
+ edit: { autoComplete: AutocompleteFieldIdentifier.ORGANIZATION },
37
+ }).optional(),
38
+ password: z.string().min(1).isPassword().stringUI({
39
+ edit: { autoComplete: AutocompleteFieldIdentifier.NEW_PASSWORD },
40
+ }).optional(),
41
+ confirmPassword: z.string().min(1).isPassword().stringUI({
42
+ edit: { autoComplete: AutocompleteFieldIdentifier.NEW_PASSWORD },
43
+ }).optional(),
30
44
  });
31
45
  /**
32
46
  * POST /auth/register — API contract (what goes over the wire).
@@ -54,19 +68,62 @@ export const UserRegisterApiDtoSchema = z.object({
54
68
  * confirmPassword is frontend-only and excluded from the API DTO.
55
69
  */
56
70
  export const UserInvitationFormDtoSchema = z.object({
57
- firstName: z.string().max(50).optional(),
58
- lastName: z.string().max(50).optional(),
59
- password: z.string().isPassword().optional(),
60
- confirmPassword: z.string().optional(),
71
+ // Required, mirroring registration: the invitee establishes their identity at acceptance, and
72
+ // the profile seed keys on non-empty first+last (UserProfileSchema requires both).
73
+ // `.regex(/\S/)` rejects a WHITESPACE-ONLY name client-side — which `.min(1)` alone would PASS
74
+ // (" " has length 2), then the frontend `normalizeText`/`.trim()` collapses it to `undefined`
75
+ // and the required API DTO 400s AFTER the form said the field was valid. It is a CHECK,
76
+ // deliberately NOT a `.trim()` TRANSFORM: a transform ahead of `.stringUI()` disrupts the
77
+ // decorator's introspection surface (`getFieldUIEditConfig`). Trailing/leading whitespace is
78
+ // normalized at the authoritative boundary (`UserInvitationApiDtoSchema`, `.trim().min(1)`).
79
+ firstName: z.string().min(1).max(50).regex(/\S/).stringUI({
80
+ edit: { autoComplete: AutocompleteFieldIdentifier.GIVEN_NAME },
81
+ }),
82
+ lastName: z.string().min(1).max(50).regex(/\S/).stringUI({
83
+ edit: { autoComplete: AutocompleteFieldIdentifier.FAMILY_NAME },
84
+ }),
85
+ password: z.string().isPassword().stringUI({
86
+ edit: { autoComplete: AutocompleteFieldIdentifier.NEW_PASSWORD },
87
+ }).optional(),
88
+ confirmPassword: z.string().isPassword().stringUI({
89
+ edit: { autoComplete: AutocompleteFieldIdentifier.NEW_PASSWORD },
90
+ }).optional(),
61
91
  });
92
+ /**
93
+ * The first-factor credential the invitee chooses to establish at acceptance.
94
+ *
95
+ * The invitation-accept endpoint supports exactly three establishment paths (SSO-managed
96
+ * invitees are routed to the IdP's enterprise-authorize flow, NOT this endpoint):
97
+ * - `PASSWORD` — set a password now. When both `credentialMethod` and
98
+ * `password` are omitted, intentionally activate with no local credential;
99
+ * another configured authentication method can establish later sessions.
100
+ * - `MAGIC_LINK` — activate with no local credential; a magic link is emailed and the
101
+ * session is established when the invitee clicks it.
102
+ * - `PASSKEY` — enroll a NEW WebAuthn credential at accept; the invitation token bootstraps
103
+ * the session and the passkey is registered as the go-forward credential.
104
+ */
105
+ export const INVITATION_ACCEPT_CREDENTIAL_METHODS = [
106
+ AuthMethod.PASSWORD,
107
+ AuthMethod.MAGIC_LINK,
108
+ AuthMethod.PASSKEY,
109
+ ];
62
110
  /**
63
111
  * POST /auth/invitation/accept — API contract.
112
+ *
113
+ * `credentialMethod` is optional by design. When absent, a provided `password`
114
+ * establishes a password credential; without one, acceptance activates the
115
+ * membership without a local credential. `MAGIC_LINK` and `PASSKEY` are
116
+ * explicit because they initiate method-specific work.
64
117
  */
65
118
  export const UserInvitationApiDtoSchema = z.object({
66
119
  invitationToken: z.string().min(1),
67
- firstName: z.string().max(50).optional(),
68
- lastName: z.string().max(50).optional(),
120
+ // Required (min 1), mirroring registration — see UserInvitationFormDtoSchema.
121
+ // `.trim()` before `.min(1)` fail-closes a whitespace-only name at the boundary
122
+ // (a direct API caller can't seed a blank profile name).
123
+ firstName: z.string().trim().min(1).max(50),
124
+ lastName: z.string().trim().min(1).max(50),
69
125
  password: z.string().optional(),
126
+ credentialMethod: z.enum(INVITATION_ACCEPT_CREDENTIAL_METHODS).optional(),
70
127
  });
71
128
  /**
72
129
  * POST /auth/invitation/reject — API contract.
@@ -87,4 +144,4 @@ export const EmailVerifyDtoSchema = z.object({
87
144
  token: z.string().min(1),
88
145
  email: z.email().toLowerCase(),
89
146
  });
90
- //# sourceMappingURL=registration.shared.dto.schemas.js.map
147
+ //# sourceMappingURL=registration.shared.dto.schemas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"registration.shared.dto.schemas.js","sourceRoot":"","sources":["../../../../src/security/authentications/registration.shared.dto.schemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registration.shared.dto.schemas.js","sourceRoot":"","sources":["../../../../../src/security/authentications/registration.shared.dto.schemas.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * User Registration — Shared DTO Schemas\n *\n * Single source of truth for user registration validation.\n * Used by both frontend (AutomatedForm component) and backend (req.body parsing).\n */\n\nimport { z } from 'zod';\nimport { AutocompleteFieldIdentifier } from '@wildo-ai/zod-decorators';\nimport { AuthMethod } from './authentication.shared.schemas';\n\n// ═══════════════════════════════════════════════════════════════\n// Registration Form + API DTO\n// ═══════════════════════════════════════════════════════════════\n\n/**\n * POST /auth/register — registration form fields.\n * Used as:\n * - Frontend: AutomatedForm schema (all 5 fields rendered)\n * - Backend: req.body parsing (minus confirmPassword)\n *\n * confirmPassword is a frontend-only field for client-side match validation.\n * The .refine() for password match is applied at the component level\n * (not here) because the error message needs i18n.\n * The .isPassword() decorator tells FormField to render password inputs.\n */\nexport const UserRegisterFormDtoSchema = z.object({\n email: z.email().toLowerCase().stringUI({\n edit: { autoComplete: AutocompleteFieldIdentifier.EMAIL },\n }),\n firstName: z.string().min(1).max(50).stringUI({\n edit: { autoComplete: AutocompleteFieldIdentifier.GIVEN_NAME },\n }),\n lastName: z.string().min(1).max(50).stringUI({\n edit: { autoComplete: AutocompleteFieldIdentifier.FAMILY_NAME },\n }),\n /** W6.2: Org name when orgNameSource is 'ask'. Conditionally shown on frontend. */\n organizationName: z.string().min(1).max(200).stringUI({\n edit: { autoComplete: AutocompleteFieldIdentifier.ORGANIZATION },\n }).optional(),\n password: z.string().min(1).isPassword().stringUI({\n edit: { autoComplete: AutocompleteFieldIdentifier.NEW_PASSWORD },\n }).optional(),\n confirmPassword: z.string().min(1).isPassword().stringUI({\n edit: { autoComplete: AutocompleteFieldIdentifier.NEW_PASSWORD },\n }).optional(),\n});\n\n\nexport type UserRegisterFormDto = z.infer<typeof UserRegisterFormDtoSchema>;\n\n/**\n * POST /auth/register — API contract (what goes over the wire).\n * Backend uses this for req.body parsing.\n * confirmPassword is NOT sent to the backend.\n */\nexport const UserRegisterApiDtoSchema = z.object({\n email: z.email().toLowerCase(),\n firstName: z.string().min(1).max(50),\n lastName: z.string().min(1).max(50),\n password: z.string().min(1).optional(),\n /** W6.2: Org name when orgNameSource is 'ask'. */\n organizationName: z.string().min(1).max(200).optional(),\n});\n\n\nexport type UserRegisterApiDto = z.infer<typeof UserRegisterApiDtoSchema>;\n\n// ═══════════════════════════════════════════════════════════════\n// Invitation Acceptance DTOs\n// ═══════════════════════════════════════════════════════════════\n\n/**\n * POST /auth/invitation/accept — public invitation-acceptance form fields.\n *\n * The invitation token identifies the target invitation. Name/password fields are optional\n * because an existing invited user may only need to confirm the invitation, while a new\n * invited user can provide profile/password data in the same flow.\n *\n * confirmPassword is frontend-only and excluded from the API DTO.\n */\nexport const UserInvitationFormDtoSchema = z.object({\n // Required, mirroring registration: the invitee establishes their identity at acceptance, and\n // the profile seed keys on non-empty first+last (UserProfileSchema requires both).\n // `.regex(/\\S/)` rejects a WHITESPACE-ONLY name client-side — which `.min(1)` alone would PASS\n // (\" \" has length 2), then the frontend `normalizeText`/`.trim()` collapses it to `undefined`\n // and the required API DTO 400s AFTER the form said the field was valid. It is a CHECK,\n // deliberately NOT a `.trim()` TRANSFORM: a transform ahead of `.stringUI()` disrupts the\n // decorator's introspection surface (`getFieldUIEditConfig`). Trailing/leading whitespace is\n // normalized at the authoritative boundary (`UserInvitationApiDtoSchema`, `.trim().min(1)`).\n firstName: z.string().min(1).max(50).regex(/\\S/).stringUI({\n edit: { autoComplete: AutocompleteFieldIdentifier.GIVEN_NAME },\n }),\n lastName: z.string().min(1).max(50).regex(/\\S/).stringUI({\n edit: { autoComplete: AutocompleteFieldIdentifier.FAMILY_NAME },\n }),\n password: z.string().isPassword().stringUI({\n edit: { autoComplete: AutocompleteFieldIdentifier.NEW_PASSWORD },\n }).optional(),\n confirmPassword: z.string().isPassword().stringUI({\n edit: { autoComplete: AutocompleteFieldIdentifier.NEW_PASSWORD },\n }).optional(),\n});\n\nexport type UserInvitationFormDto = z.infer<typeof UserInvitationFormDtoSchema>;\n\n/**\n * The first-factor credential the invitee chooses to establish at acceptance.\n *\n * The invitation-accept endpoint supports exactly three establishment paths (SSO-managed\n * invitees are routed to the IdP's enterprise-authorize flow, NOT this endpoint):\n * - `PASSWORD` — set a password now. When both `credentialMethod` and\n * `password` are omitted, intentionally activate with no local credential;\n * another configured authentication method can establish later sessions.\n * - `MAGIC_LINK` — activate with no local credential; a magic link is emailed and the\n * session is established when the invitee clicks it.\n * - `PASSKEY` — enroll a NEW WebAuthn credential at accept; the invitation token bootstraps\n * the session and the passkey is registered as the go-forward credential.\n */\nexport const INVITATION_ACCEPT_CREDENTIAL_METHODS = [\n AuthMethod.PASSWORD,\n AuthMethod.MAGIC_LINK,\n AuthMethod.PASSKEY,\n] as const;\n\n/**\n * The subset of {@link AuthMethod} an invitee may establish at accept time. Enterprise-SSO / social-\n * OAuth invitees are routed to the IdP authorize flow, NOT the accept endpoint, so those members are\n * intentionally absent. Single source of truth for BOTH the request DTO (`credentialMethod` enum) and\n * the backend `AcceptInvitationParams.credentialMethod` — so the service signature can never drift\n * wider than the wire contract it is fed from.\n */\nexport type InvitationAcceptCredentialMethod = (typeof INVITATION_ACCEPT_CREDENTIAL_METHODS)[number];\n\n/**\n * POST /auth/invitation/accept — API contract.\n *\n * `credentialMethod` is optional by design. When absent, a provided `password`\n * establishes a password credential; without one, acceptance activates the\n * membership without a local credential. `MAGIC_LINK` and `PASSKEY` are\n * explicit because they initiate method-specific work.\n */\nexport const UserInvitationApiDtoSchema = z.object({\n invitationToken: z.string().min(1),\n // Required (min 1), mirroring registration — see UserInvitationFormDtoSchema.\n // `.trim()` before `.min(1)` fail-closes a whitespace-only name at the boundary\n // (a direct API caller can't seed a blank profile name).\n firstName: z.string().trim().min(1).max(50),\n lastName: z.string().trim().min(1).max(50),\n password: z.string().optional(),\n credentialMethod: z.enum(INVITATION_ACCEPT_CREDENTIAL_METHODS).optional(),\n});\n\nexport type UserInvitationApiDto = z.infer<typeof UserInvitationApiDtoSchema>;\n\n/**\n * POST /auth/invitation/reject — API contract.\n */\nexport const UserInvitationRejectApiDtoSchema = z.object({\n invitationToken: z.string().min(1),\n rejectionReason: z.string().max(500).optional(),\n});\n\nexport type UserInvitationRejectApiDto = z.infer<typeof UserInvitationRejectApiDtoSchema>;\n\n// ═══════════════════════════════════════════════════════════════\n// Email Verification API DTO\n// ═══════════════════════════════════════════════════════════════\n\n/**\n * POST /auth/verify-email — API contract.\n * Token and email are extracted from URL query parameters on the frontend.\n * Email is required for defense-in-depth constant-time comparison against token metadata.\n */\nexport const EmailVerifyDtoSchema = z.object({\n token: z.string().min(1),\n email: z.email().toLowerCase(),\n});\n\nexport type EmailVerifyDto = z.infer<typeof EmailVerifyDtoSchema>;\n"]}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * The ONE answer to "may the browser be navigated to this string after authentication?".
3
+ *
4
+ * ## Why this atom exists
5
+ *
6
+ * Four independent implementations of this question shipped in this repository, each a hand-written
7
+ * deny-list of characters, and on 2026-08-15 **all four admitted the same family of hostile inputs**:
8
+ *
9
+ * | Site | Shape |
10
+ * |---|---|
11
+ * | `saas-frontend-lib` — `isSafeAuthRedirectTarget` | `startsWith('/') && !startsWith('//')` |
12
+ * | `saas-frontend-lib` — `Auth_OneOffSession.sanitizeReturnPath` | the above + `..` / `\` / `://` / `<>"` / length |
13
+ * | `saas-technical-doc` — `AuthExchangePage.sanitizeReturnPath` | a verbatim copy of the previous row |
14
+ * | `saas-models` — `RETURN_PATH_REFINES` (issuer AND receiver schema) | the same rules as Zod refines |
15
+ *
16
+ * The three deny-list copies were written to "mirror" each other and did — including the hole. That
17
+ * is the failure mode `.claude/rules/invariant-call-site-enumeration.md` exists for, and the reason
18
+ * this predicate is an importable atom rather than a fifth copy: a policy expressed as a private
19
+ * constant reaches exactly the file that declares it.
20
+ *
21
+ * ## Why a PARSE, not a character deny-list
22
+ *
23
+ * A deny-list tests the bytes a human reads. The browser navigates to what its URL PARSER produces,
24
+ * and the two disagree through two normalisation rules that no reasonable author remembers:
25
+ *
26
+ * - For a SPECIAL scheme (http/https) a backslash is treated as a slash while the authority is being
27
+ * consumed, so `/\evil.com` is `//evil.com`.
28
+ * - ASCII **tab, LF and CR are removed from the input before parsing**, anywhere in the string — so
29
+ * `/<TAB>/evil.com` is also `//evil.com`.
30
+ *
31
+ * The second rule is what defeated every deny-list here: they all banned `\` and none of them banned
32
+ * the whitespace that becomes a `/`. Banning three more characters would leave the next parser rule
33
+ * uncovered, so the check asks the parser itself instead.
34
+ *
35
+ * Measured with `new URL(target, base)` — the same algorithm a browser applies to `location.href`,
36
+ * `location.assign` and `<Navigate to>` — these SEVEN targets resolve to `https://evil.com/` while
37
+ * passing a `startsWith('/') && !startsWith('//')` test:
38
+ * `/\evil.com`, `/\\evil.com`, `/\/evil.com`, `/<TAB>/evil.com`, `/<TAB>\evil.com`,
39
+ * `/<LF>/evil.com`, `/<CR>/evil.com`.
40
+ *
41
+ * spec-cite: WHATWG URL Standard — the basic URL parser removes all ASCII tab and newline from the
42
+ * input, and the "special authority ignore slashes state" consumes `\` interchangeably with `/`.
43
+ *
44
+ * ## Scope boundary
45
+ *
46
+ * This atom answers the ORIGIN question only. Path traversal (`..`), markup injection (`<>"`) and
47
+ * length ceilings are separate concerns owned by the callers that need them — collapsing them in
48
+ * here would make one predicate answer four questions and give a caller no way to say which one it
49
+ * failed.
50
+ *
51
+ * Import-free by construction (`/public-runtime` bundle budget): no `zod`, no decorators, nothing
52
+ * beyond the platform `URL` global, which every browser and every supported Node version provides.
53
+ */
54
+ /**
55
+ * Does `value` denote a location on the app's OWN origin?
56
+ *
57
+ * Accepts absolute-path references only (`/dashboard`, `/a/b?c=1#d`). Everything else is refused:
58
+ * absolute URLs, protocol-relative references, bare-relative paths, and every input whose parsed form
59
+ * escapes the base by a mechanism the caller did not anticipate.
60
+ *
61
+ * The two prefix conditions are a PRECONDITION, not a duplicate of the parse: they refuse an absolute
62
+ * reference before it reaches the parser, so nothing can be admitted by coincidentally resolving onto
63
+ * the sentinel origin itself.
64
+ *
65
+ * Returns `false` — never throws — for any input, including one the URL parser rejects outright
66
+ * (`/\` produces an authority-less special URL and throws).
67
+ */
68
+ export declare function isSameOriginRedirectPath(value: string | null | undefined): value is string;
69
+ //# sourceMappingURL=same-origin-redirect-path.shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"same-origin-redirect-path.shared.d.ts","sourceRoot":"","sources":["../../../../../src/security/authentications/same-origin-redirect-path.shared.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAcH;;;;;;;;;;;;;GAaG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,IAAI,MAAM,CAc1F"}
@@ -0,0 +1,93 @@
1
+ /**
2
+ * The ONE answer to "may the browser be navigated to this string after authentication?".
3
+ *
4
+ * ## Why this atom exists
5
+ *
6
+ * Four independent implementations of this question shipped in this repository, each a hand-written
7
+ * deny-list of characters, and on 2026-08-15 **all four admitted the same family of hostile inputs**:
8
+ *
9
+ * | Site | Shape |
10
+ * |---|---|
11
+ * | `saas-frontend-lib` — `isSafeAuthRedirectTarget` | `startsWith('/') && !startsWith('//')` |
12
+ * | `saas-frontend-lib` — `Auth_OneOffSession.sanitizeReturnPath` | the above + `..` / `\` / `://` / `<>"` / length |
13
+ * | `saas-technical-doc` — `AuthExchangePage.sanitizeReturnPath` | a verbatim copy of the previous row |
14
+ * | `saas-models` — `RETURN_PATH_REFINES` (issuer AND receiver schema) | the same rules as Zod refines |
15
+ *
16
+ * The three deny-list copies were written to "mirror" each other and did — including the hole. That
17
+ * is the failure mode `.claude/rules/invariant-call-site-enumeration.md` exists for, and the reason
18
+ * this predicate is an importable atom rather than a fifth copy: a policy expressed as a private
19
+ * constant reaches exactly the file that declares it.
20
+ *
21
+ * ## Why a PARSE, not a character deny-list
22
+ *
23
+ * A deny-list tests the bytes a human reads. The browser navigates to what its URL PARSER produces,
24
+ * and the two disagree through two normalisation rules that no reasonable author remembers:
25
+ *
26
+ * - For a SPECIAL scheme (http/https) a backslash is treated as a slash while the authority is being
27
+ * consumed, so `/\evil.com` is `//evil.com`.
28
+ * - ASCII **tab, LF and CR are removed from the input before parsing**, anywhere in the string — so
29
+ * `/<TAB>/evil.com` is also `//evil.com`.
30
+ *
31
+ * The second rule is what defeated every deny-list here: they all banned `\` and none of them banned
32
+ * the whitespace that becomes a `/`. Banning three more characters would leave the next parser rule
33
+ * uncovered, so the check asks the parser itself instead.
34
+ *
35
+ * Measured with `new URL(target, base)` — the same algorithm a browser applies to `location.href`,
36
+ * `location.assign` and `<Navigate to>` — these SEVEN targets resolve to `https://evil.com/` while
37
+ * passing a `startsWith('/') && !startsWith('//')` test:
38
+ * `/\evil.com`, `/\\evil.com`, `/\/evil.com`, `/<TAB>/evil.com`, `/<TAB>\evil.com`,
39
+ * `/<LF>/evil.com`, `/<CR>/evil.com`.
40
+ *
41
+ * spec-cite: WHATWG URL Standard — the basic URL parser removes all ASCII tab and newline from the
42
+ * input, and the "special authority ignore slashes state" consumes `\` interchangeably with `/`.
43
+ *
44
+ * ## Scope boundary
45
+ *
46
+ * This atom answers the ORIGIN question only. Path traversal (`..`), markup injection (`<>"`) and
47
+ * length ceilings are separate concerns owned by the callers that need them — collapsing them in
48
+ * here would make one predicate answer four questions and give a caller no way to say which one it
49
+ * failed.
50
+ *
51
+ * Import-free by construction (`/public-runtime` bundle budget): no `zod`, no decorators, nothing
52
+ * beyond the platform `URL` global, which every browser and every supported Node version provides.
53
+ */
54
+ /**
55
+ * A synthetic origin no deployment can ever be served from, used ONLY as the resolution base.
56
+ *
57
+ * Deliberately not the live origin. The question — "does this reference stay inside the site it is
58
+ * resolved against?" — has the same answer for every base, so binding it to ambient browser state
59
+ * would make the predicate untestable as a pure function and unusable on the server, where this same
60
+ * atom validates the issuer's request body. `.invalid` is reserved by RFC 6761 §6.4 and guaranteed
61
+ * never to resolve, so the sentinel can never collide with a real origin — which matters precisely
62
+ * because "resolved origin EQUALS the base" is the accepting condition.
63
+ */
64
+ const SAME_ORIGIN_RESOLUTION_BASE = 'https://same-origin-redirect-guard.invalid/';
65
+ /**
66
+ * Does `value` denote a location on the app's OWN origin?
67
+ *
68
+ * Accepts absolute-path references only (`/dashboard`, `/a/b?c=1#d`). Everything else is refused:
69
+ * absolute URLs, protocol-relative references, bare-relative paths, and every input whose parsed form
70
+ * escapes the base by a mechanism the caller did not anticipate.
71
+ *
72
+ * The two prefix conditions are a PRECONDITION, not a duplicate of the parse: they refuse an absolute
73
+ * reference before it reaches the parser, so nothing can be admitted by coincidentally resolving onto
74
+ * the sentinel origin itself.
75
+ *
76
+ * Returns `false` — never throws — for any input, including one the URL parser rejects outright
77
+ * (`/\` produces an authority-less special URL and throws).
78
+ */
79
+ export function isSameOriginRedirectPath(value) {
80
+ if (!value) {
81
+ return false;
82
+ }
83
+ if (!value.startsWith('/') || value.startsWith('//')) {
84
+ return false;
85
+ }
86
+ try {
87
+ return new URL(value, SAME_ORIGIN_RESOLUTION_BASE).origin === new URL(SAME_ORIGIN_RESOLUTION_BASE).origin;
88
+ }
89
+ catch {
90
+ return false;
91
+ }
92
+ }
93
+ //# sourceMappingURL=same-origin-redirect-path.shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"same-origin-redirect-path.shared.js","sourceRoot":"","sources":["../../../../../src/security/authentications/same-origin-redirect-path.shared.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAEH;;;;;;;;;GASG;AACH,MAAM,2BAA2B,GAAG,6CAA6C,CAAC;AAElF;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAgC;IACvE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC;QACH,OAAO,IAAI,GAAG,CAAC,KAAK,EAAE,2BAA2B,CAAC,CAAC,MAAM,KAAK,IAAI,GAAG,CAAC,2BAA2B,CAAC,CAAC,MAAM,CAAC;IAC5G,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC","sourcesContent":["/**\n * The ONE answer to \"may the browser be navigated to this string after authentication?\".\n *\n * ## Why this atom exists\n *\n * Four independent implementations of this question shipped in this repository, each a hand-written\n * deny-list of characters, and on 2026-08-15 **all four admitted the same family of hostile inputs**:\n *\n * | Site | Shape |\n * |---|---|\n * | `saas-frontend-lib` — `isSafeAuthRedirectTarget` | `startsWith('/') && !startsWith('//')` |\n * | `saas-frontend-lib` — `Auth_OneOffSession.sanitizeReturnPath` | the above + `..` / `\\` / `://` / `<>\"` / length |\n * | `saas-technical-doc` — `AuthExchangePage.sanitizeReturnPath` | a verbatim copy of the previous row |\n * | `saas-models` — `RETURN_PATH_REFINES` (issuer AND receiver schema) | the same rules as Zod refines |\n *\n * The three deny-list copies were written to \"mirror\" each other and did — including the hole. That\n * is the failure mode `.claude/rules/invariant-call-site-enumeration.md` exists for, and the reason\n * this predicate is an importable atom rather than a fifth copy: a policy expressed as a private\n * constant reaches exactly the file that declares it.\n *\n * ## Why a PARSE, not a character deny-list\n *\n * A deny-list tests the bytes a human reads. The browser navigates to what its URL PARSER produces,\n * and the two disagree through two normalisation rules that no reasonable author remembers:\n *\n * - For a SPECIAL scheme (http/https) a backslash is treated as a slash while the authority is being\n * consumed, so `/\\evil.com` is `//evil.com`.\n * - ASCII **tab, LF and CR are removed from the input before parsing**, anywhere in the string — so\n * `/<TAB>/evil.com` is also `//evil.com`.\n *\n * The second rule is what defeated every deny-list here: they all banned `\\` and none of them banned\n * the whitespace that becomes a `/`. Banning three more characters would leave the next parser rule\n * uncovered, so the check asks the parser itself instead.\n *\n * Measured with `new URL(target, base)` — the same algorithm a browser applies to `location.href`,\n * `location.assign` and `<Navigate to>` — these SEVEN targets resolve to `https://evil.com/` while\n * passing a `startsWith('/') && !startsWith('//')` test:\n * `/\\evil.com`, `/\\\\evil.com`, `/\\/evil.com`, `/<TAB>/evil.com`, `/<TAB>\\evil.com`,\n * `/<LF>/evil.com`, `/<CR>/evil.com`.\n *\n * spec-cite: WHATWG URL Standard — the basic URL parser removes all ASCII tab and newline from the\n * input, and the \"special authority ignore slashes state\" consumes `\\` interchangeably with `/`.\n *\n * ## Scope boundary\n *\n * This atom answers the ORIGIN question only. Path traversal (`..`), markup injection (`<>\"`) and\n * length ceilings are separate concerns owned by the callers that need them — collapsing them in\n * here would make one predicate answer four questions and give a caller no way to say which one it\n * failed.\n *\n * Import-free by construction (`/public-runtime` bundle budget): no `zod`, no decorators, nothing\n * beyond the platform `URL` global, which every browser and every supported Node version provides.\n */\n\n/**\n * A synthetic origin no deployment can ever be served from, used ONLY as the resolution base.\n *\n * Deliberately not the live origin. The question — \"does this reference stay inside the site it is\n * resolved against?\" — has the same answer for every base, so binding it to ambient browser state\n * would make the predicate untestable as a pure function and unusable on the server, where this same\n * atom validates the issuer's request body. `.invalid` is reserved by RFC 6761 §6.4 and guaranteed\n * never to resolve, so the sentinel can never collide with a real origin — which matters precisely\n * because \"resolved origin EQUALS the base\" is the accepting condition.\n */\nconst SAME_ORIGIN_RESOLUTION_BASE = 'https://same-origin-redirect-guard.invalid/';\n\n/**\n * Does `value` denote a location on the app's OWN origin?\n *\n * Accepts absolute-path references only (`/dashboard`, `/a/b?c=1#d`). Everything else is refused:\n * absolute URLs, protocol-relative references, bare-relative paths, and every input whose parsed form\n * escapes the base by a mechanism the caller did not anticipate.\n *\n * The two prefix conditions are a PRECONDITION, not a duplicate of the parse: they refuse an absolute\n * reference before it reaches the parser, so nothing can be admitted by coincidentally resolving onto\n * the sentinel origin itself.\n *\n * Returns `false` — never throws — for any input, including one the URL parser rejects outright\n * (`/\\` produces an authority-less special URL and throws).\n */\nexport function isSameOriginRedirectPath(value: string | null | undefined): value is string {\n if (!value) {\n return false;\n }\n\n if (!value.startsWith('/') || value.startsWith('//')) {\n return false;\n }\n\n try {\n return new URL(value, SAME_ORIGIN_RESOLUTION_BASE).origin === new URL(SAME_ORIGIN_RESOLUTION_BASE).origin;\n } catch {\n return false;\n }\n}\n"]}