@wildo-ai/saas-frontend-lib 1.1.2 → 1.1.4

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 (1938) hide show
  1. package/dist/esm/browser-bootstrap/theme-bootstrap.d.ts.map +1 -1
  2. package/dist/esm/browser-bootstrap/theme-bootstrap.js.map +1 -1
  3. package/dist/esm/browser-bootstrap.exports.d.ts.map +1 -1
  4. package/dist/esm/browser-bootstrap.exports.js.map +1 -1
  5. package/dist/esm/companion-exports.d.ts +1 -1
  6. package/dist/esm/companion-exports.d.ts.map +1 -1
  7. package/dist/esm/companion-exports.js +1 -1
  8. package/dist/esm/companion-exports.js.map +1 -1
  9. package/dist/esm/companion-runtime-exports.d.ts.map +1 -1
  10. package/dist/esm/companion-runtime-exports.js.map +1 -1
  11. package/dist/esm/components/actions/action-bar.d.ts.map +1 -1
  12. package/dist/esm/components/actions/action-bar.js.map +1 -1
  13. package/dist/esm/components/actions/action-button.d.ts.map +1 -1
  14. package/dist/esm/components/actions/action-button.js.map +1 -1
  15. package/dist/esm/components/actions/button-group.d.ts.map +1 -1
  16. package/dist/esm/components/actions/button-group.js.map +1 -1
  17. package/dist/esm/components/actions/button.d.ts.map +1 -1
  18. package/dist/esm/components/actions/button.js.map +1 -1
  19. package/dist/esm/components/ai-elements/artifacts/artifact-browser.types.d.ts.map +1 -1
  20. package/dist/esm/components/ai-elements/artifacts/artifact-browser.types.js.map +1 -1
  21. package/dist/esm/components/ai-elements/artifacts/artifact-list.d.ts.map +1 -1
  22. package/dist/esm/components/ai-elements/artifacts/artifact-list.js.map +1 -1
  23. package/dist/esm/components/ai-elements/artifacts/artifact.d.ts.map +1 -1
  24. package/dist/esm/components/ai-elements/artifacts/artifact.js.map +1 -1
  25. package/dist/esm/components/ai-elements/artifacts/code-block.d.ts.map +1 -1
  26. package/dist/esm/components/ai-elements/artifacts/code-block.js.map +1 -1
  27. package/dist/esm/components/ai-elements/artifacts/image.d.ts.map +1 -1
  28. package/dist/esm/components/ai-elements/artifacts/image.js.map +1 -1
  29. package/dist/esm/components/ai-elements/artifacts/web-preview.d.ts.map +1 -1
  30. package/dist/esm/components/ai-elements/artifacts/web-preview.js.map +1 -1
  31. package/dist/esm/components/ai-elements/chat/conversation.d.ts.map +1 -1
  32. package/dist/esm/components/ai-elements/chat/conversation.js.map +1 -1
  33. package/dist/esm/components/ai-elements/chat/message.d.ts.map +1 -1
  34. package/dist/esm/components/ai-elements/chat/message.js.map +1 -1
  35. package/dist/esm/components/ai-elements/chat/prompt-input.d.ts.map +1 -1
  36. package/dist/esm/components/ai-elements/chat/prompt-input.js.map +1 -1
  37. package/dist/esm/components/ai-elements/chat/sources.d.ts.map +1 -1
  38. package/dist/esm/components/ai-elements/chat/sources.js.map +1 -1
  39. package/dist/esm/components/ai-elements/chat/suggestion.d.ts.map +1 -1
  40. package/dist/esm/components/ai-elements/chat/suggestion.js.map +1 -1
  41. package/dist/esm/components/ai-elements/decision/approval.d.ts +28 -3
  42. package/dist/esm/components/ai-elements/decision/approval.d.ts.map +1 -1
  43. package/dist/esm/components/ai-elements/decision/approval.js.map +1 -1
  44. package/dist/esm/components/ai-elements/execution/confirmation.d.ts.map +1 -1
  45. package/dist/esm/components/ai-elements/execution/confirmation.js.map +1 -1
  46. package/dist/esm/components/ai-elements/execution/queue.d.ts.map +1 -1
  47. package/dist/esm/components/ai-elements/execution/queue.js.map +1 -1
  48. package/dist/esm/components/ai-elements/execution/task.d.ts.map +1 -1
  49. package/dist/esm/components/ai-elements/execution/task.js.map +1 -1
  50. package/dist/esm/components/ai-elements/execution/tool.d.ts.map +1 -1
  51. package/dist/esm/components/ai-elements/execution/tool.js.map +1 -1
  52. package/dist/esm/components/ai-elements/graph/canvas.d.ts.map +1 -1
  53. package/dist/esm/components/ai-elements/graph/canvas.js.map +1 -1
  54. package/dist/esm/components/ai-elements/graph/connection.d.ts.map +1 -1
  55. package/dist/esm/components/ai-elements/graph/connection.js.map +1 -1
  56. package/dist/esm/components/ai-elements/graph/controls.d.ts.map +1 -1
  57. package/dist/esm/components/ai-elements/graph/controls.js.map +1 -1
  58. package/dist/esm/components/ai-elements/graph/edge.d.ts.map +1 -1
  59. package/dist/esm/components/ai-elements/graph/edge.js.map +1 -1
  60. package/dist/esm/components/ai-elements/graph/node.d.ts.map +1 -1
  61. package/dist/esm/components/ai-elements/graph/node.js.map +1 -1
  62. package/dist/esm/components/ai-elements/graph/panel.d.ts.map +1 -1
  63. package/dist/esm/components/ai-elements/graph/panel.js.map +1 -1
  64. package/dist/esm/components/ai-elements/graph/toolbar.d.ts.map +1 -1
  65. package/dist/esm/components/ai-elements/graph/toolbar.js.map +1 -1
  66. package/dist/esm/components/ai-elements/meta/agent-wrappers.d.ts.map +1 -1
  67. package/dist/esm/components/ai-elements/meta/agent-wrappers.js.map +1 -1
  68. package/dist/esm/components/ai-elements/meta/context.d.ts.map +1 -1
  69. package/dist/esm/components/ai-elements/meta/context.js.map +1 -1
  70. package/dist/esm/components/ai-elements/meta/model-selector.d.ts.map +1 -1
  71. package/dist/esm/components/ai-elements/meta/model-selector.js.map +1 -1
  72. package/dist/esm/components/ai-elements/meta/open-in-chat.d.ts.map +1 -1
  73. package/dist/esm/components/ai-elements/meta/open-in-chat.js.map +1 -1
  74. package/dist/esm/components/ai-elements/shared/loader.d.ts.map +1 -1
  75. package/dist/esm/components/ai-elements/shared/loader.js.map +1 -1
  76. package/dist/esm/components/ai-elements/shared/shimmer.d.ts.map +1 -1
  77. package/dist/esm/components/ai-elements/shared/shimmer.js.map +1 -1
  78. package/dist/esm/components/ai-elements/stream/execution-stream.d.ts.map +1 -1
  79. package/dist/esm/components/ai-elements/stream/execution-stream.js.map +1 -1
  80. package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts.map +1 -1
  81. package/dist/esm/components/ai-elements/trace/chain-of-thought.js.map +1 -1
  82. package/dist/esm/components/ai-elements/trace/checkpoint.d.ts.map +1 -1
  83. package/dist/esm/components/ai-elements/trace/checkpoint.js.map +1 -1
  84. package/dist/esm/components/ai-elements/trace/inline-citation.d.ts.map +1 -1
  85. package/dist/esm/components/ai-elements/trace/inline-citation.js.map +1 -1
  86. package/dist/esm/components/ai-elements/trace/plan.d.ts.map +1 -1
  87. package/dist/esm/components/ai-elements/trace/plan.js.map +1 -1
  88. package/dist/esm/components/ai-elements/trace/reasoning.d.ts.map +1 -1
  89. package/dist/esm/components/ai-elements/trace/reasoning.js.map +1 -1
  90. package/dist/esm/components/app/AppLayout_AuthenticatedRoute.d.ts.map +1 -1
  91. package/dist/esm/components/app/AppLayout_AuthenticatedRoute.js.map +1 -1
  92. package/dist/esm/components/app/AppLayout_ErrorBoundary.d.ts.map +1 -1
  93. package/dist/esm/components/app/AppLayout_ErrorBoundary.js.map +1 -1
  94. package/dist/esm/components/app/AppLayout_ErrorBoundary.labels.d.ts.map +1 -1
  95. package/dist/esm/components/app/AppLayout_ErrorBoundary.labels.js.map +1 -1
  96. package/dist/esm/components/app/AppLayout_Home.d.ts.map +1 -1
  97. package/dist/esm/components/app/AppLayout_Home.js.map +1 -1
  98. package/dist/esm/components/app/AppLayout_Home.labels.d.ts.map +1 -1
  99. package/dist/esm/components/app/AppLayout_Home.labels.js.map +1 -1
  100. package/dist/esm/components/app/AppLayout_MainContainer.d.ts.map +1 -1
  101. package/dist/esm/components/app/AppLayout_MainContainer.js.map +1 -1
  102. package/dist/esm/components/app/AppLayout_NotificationCenter.d.ts.map +1 -1
  103. package/dist/esm/components/app/AppLayout_NotificationCenter.js +7 -2
  104. package/dist/esm/components/app/AppLayout_NotificationCenter.js.map +1 -1
  105. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.d.ts.map +1 -1
  106. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.js.map +1 -1
  107. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.labels.d.ts.map +1 -1
  108. package/dist/esm/components/app/AppLayout_RouterErrorBoundary.labels.js.map +1 -1
  109. package/dist/esm/components/app/AppPage_Home.d.ts.map +1 -1
  110. package/dist/esm/components/app/AppPage_Home.js.map +1 -1
  111. package/dist/esm/components/app/PublicLayout_MainContainer.d.ts.map +1 -1
  112. package/dist/esm/components/app/PublicLayout_MainContainer.js.map +1 -1
  113. package/dist/esm/components/app/PublicLayout_StaticContentContainer.d.ts.map +1 -1
  114. package/dist/esm/components/app/PublicLayout_StaticContentContainer.js.map +1 -1
  115. package/dist/esm/components/app/PublicLayout_StaticContentContainer.labels.d.ts.map +1 -1
  116. package/dist/esm/components/app/PublicLayout_StaticContentContainer.labels.js.map +1 -1
  117. package/dist/esm/components/app/PublicLayout_Terms.labels.d.ts.map +1 -1
  118. package/dist/esm/components/app/PublicLayout_Terms.labels.js.map +1 -1
  119. package/dist/esm/components/auth/Auth_AuthCallback.d.ts.map +1 -1
  120. package/dist/esm/components/auth/Auth_AuthCallback.js.map +1 -1
  121. package/dist/esm/components/auth/Auth_AuthCallback.labels.d.ts.map +1 -1
  122. package/dist/esm/components/auth/Auth_AuthCallback.labels.js.map +1 -1
  123. package/dist/esm/components/auth/Auth_ConfirmEmail.d.ts.map +1 -1
  124. package/dist/esm/components/auth/Auth_ConfirmEmail.js.map +1 -1
  125. package/dist/esm/components/auth/Auth_ConfirmEmail.labels.d.ts.map +1 -1
  126. package/dist/esm/components/auth/Auth_ConfirmEmail.labels.js.map +1 -1
  127. package/dist/esm/components/auth/Auth_EnrollmentRequired.d.ts.map +1 -1
  128. package/dist/esm/components/auth/Auth_EnrollmentRequired.js.map +1 -1
  129. package/dist/esm/components/auth/Auth_EnrollmentRequired.labels.d.ts.map +1 -1
  130. package/dist/esm/components/auth/Auth_EnrollmentRequired.labels.js.map +1 -1
  131. package/dist/esm/components/auth/Auth_Invitation.d.ts.map +1 -1
  132. package/dist/esm/components/auth/Auth_Invitation.js.map +1 -1
  133. package/dist/esm/components/auth/Auth_Invitation.labels.d.ts.map +1 -1
  134. package/dist/esm/components/auth/Auth_Invitation.labels.js.map +1 -1
  135. package/dist/esm/components/auth/Auth_MagicLinkVerify.d.ts.map +1 -1
  136. package/dist/esm/components/auth/Auth_MagicLinkVerify.js.map +1 -1
  137. package/dist/esm/components/auth/Auth_MagicLinkVerify.labels.d.ts.map +1 -1
  138. package/dist/esm/components/auth/Auth_MagicLinkVerify.labels.js.map +1 -1
  139. package/dist/esm/components/auth/Auth_Main.d.ts.map +1 -1
  140. package/dist/esm/components/auth/Auth_Main.js.map +1 -1
  141. package/dist/esm/components/auth/Auth_Main.labels.d.ts.map +1 -1
  142. package/dist/esm/components/auth/Auth_Main.labels.js.map +1 -1
  143. package/dist/esm/components/auth/Auth_MfaChallenge.d.ts.map +1 -1
  144. package/dist/esm/components/auth/Auth_MfaChallenge.js.map +1 -1
  145. package/dist/esm/components/auth/Auth_MfaChallenge.labels.d.ts.map +1 -1
  146. package/dist/esm/components/auth/Auth_MfaChallenge.labels.js.map +1 -1
  147. package/dist/esm/components/auth/Auth_OAuthConsent.d.ts.map +1 -1
  148. package/dist/esm/components/auth/Auth_OAuthConsent.js.map +1 -1
  149. package/dist/esm/components/auth/Auth_OAuthConsent.labels.d.ts.map +1 -1
  150. package/dist/esm/components/auth/Auth_OAuthConsent.labels.js.map +1 -1
  151. package/dist/esm/components/auth/Auth_OAuthLoggedOut.d.ts.map +1 -1
  152. package/dist/esm/components/auth/Auth_OAuthLoggedOut.js.map +1 -1
  153. package/dist/esm/components/auth/Auth_OAuthLoggedOut.labels.d.ts.map +1 -1
  154. package/dist/esm/components/auth/Auth_OAuthLoggedOut.labels.js.map +1 -1
  155. package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.d.ts.map +1 -1
  156. package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.js.map +1 -1
  157. package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.labels.d.ts.map +1 -1
  158. package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.labels.js.map +1 -1
  159. package/dist/esm/components/auth/Auth_OneOffSession.d.ts.map +1 -1
  160. package/dist/esm/components/auth/Auth_OneOffSession.js.map +1 -1
  161. package/dist/esm/components/auth/Auth_OneOffSession.labels.d.ts.map +1 -1
  162. package/dist/esm/components/auth/Auth_OneOffSession.labels.js.map +1 -1
  163. package/dist/esm/components/auth/Auth_PasswordLost.d.ts.map +1 -1
  164. package/dist/esm/components/auth/Auth_PasswordLost.js.map +1 -1
  165. package/dist/esm/components/auth/Auth_PasswordLost.labels.d.ts.map +1 -1
  166. package/dist/esm/components/auth/Auth_PasswordLost.labels.js.map +1 -1
  167. package/dist/esm/components/auth/Auth_Register.d.ts.map +1 -1
  168. package/dist/esm/components/auth/Auth_Register.js.map +1 -1
  169. package/dist/esm/components/auth/Auth_Register.labels.d.ts.map +1 -1
  170. package/dist/esm/components/auth/Auth_Register.labels.js.map +1 -1
  171. package/dist/esm/components/auth/StepUpAuthDialog.d.ts.map +1 -1
  172. package/dist/esm/components/auth/StepUpAuthDialog.js.map +1 -1
  173. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.d.ts.map +1 -1
  174. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.js.map +1 -1
  175. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.d.ts.map +1 -1
  176. package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.js.map +1 -1
  177. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Create_SamlWizard.d.ts.map +1 -1
  178. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Create_SamlWizard.js.map +1 -1
  179. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Read_SsoSaml.d.ts.map +1 -1
  180. package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Read_SsoSaml.js.map +1 -1
  181. package/dist/esm/components/auth/admin-config/SsoConnectionSamlReadSection.d.ts.map +1 -1
  182. package/dist/esm/components/auth/admin-config/SsoConnectionSamlReadSection.js.map +1 -1
  183. package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.d.ts.map +1 -1
  184. package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.js.map +1 -1
  185. package/dist/esm/components/auth/enrollment/PhoneEnrollmentMethod.d.ts.map +1 -1
  186. package/dist/esm/components/auth/enrollment/PhoneEnrollmentMethod.js.map +1 -1
  187. package/dist/esm/components/auth/enrollment/TotpEnrollmentMethod.d.ts.map +1 -1
  188. package/dist/esm/components/auth/enrollment/TotpEnrollmentMethod.js.map +1 -1
  189. package/dist/esm/components/auth/enrollment/enrollment-method-components.d.ts.map +1 -1
  190. package/dist/esm/components/auth/enrollment/enrollment-method-components.js.map +1 -1
  191. package/dist/esm/components/auth/methods/EmailOtpAuthMethod.d.ts.map +1 -1
  192. package/dist/esm/components/auth/methods/EmailOtpAuthMethod.js.map +1 -1
  193. package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.d.ts.map +1 -1
  194. package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.js.map +1 -1
  195. package/dist/esm/components/auth/methods/MagicLinkAuthMethod.d.ts.map +1 -1
  196. package/dist/esm/components/auth/methods/MagicLinkAuthMethod.js.map +1 -1
  197. package/dist/esm/components/auth/methods/OrgOidcAuthMethod.d.ts.map +1 -1
  198. package/dist/esm/components/auth/methods/OrgOidcAuthMethod.js.map +1 -1
  199. package/dist/esm/components/auth/methods/OrgSamlAuthMethod.d.ts.map +1 -1
  200. package/dist/esm/components/auth/methods/OrgSamlAuthMethod.js.map +1 -1
  201. package/dist/esm/components/auth/methods/PasskeyAuthMethod.d.ts.map +1 -1
  202. package/dist/esm/components/auth/methods/PasskeyAuthMethod.js.map +1 -1
  203. package/dist/esm/components/auth/methods/PasswordAuthMethod.d.ts.map +1 -1
  204. package/dist/esm/components/auth/methods/PasswordAuthMethod.js.map +1 -1
  205. package/dist/esm/components/auth/methods/SmsOtpAuthMethod.d.ts.map +1 -1
  206. package/dist/esm/components/auth/methods/SmsOtpAuthMethod.js.map +1 -1
  207. package/dist/esm/components/auth/methods/TotpAuthMethod.d.ts.map +1 -1
  208. package/dist/esm/components/auth/methods/TotpAuthMethod.js.map +1 -1
  209. package/dist/esm/components/auth/methods/auth-method-components.d.ts.map +1 -1
  210. package/dist/esm/components/auth/methods/auth-method-components.js.map +1 -1
  211. package/dist/esm/components/auth/pages/AuthPage_AuthCallback.d.ts.map +1 -1
  212. package/dist/esm/components/auth/pages/AuthPage_AuthCallback.js.map +1 -1
  213. package/dist/esm/components/auth/pages/AuthPage_AuthExchange.d.ts.map +1 -1
  214. package/dist/esm/components/auth/pages/AuthPage_AuthExchange.js.map +1 -1
  215. package/dist/esm/components/auth/pages/AuthPage_ConfirmEmail.d.ts.map +1 -1
  216. package/dist/esm/components/auth/pages/AuthPage_ConfirmEmail.js.map +1 -1
  217. package/dist/esm/components/auth/pages/AuthPage_EnrollmentRequired.d.ts.map +1 -1
  218. package/dist/esm/components/auth/pages/AuthPage_EnrollmentRequired.js.map +1 -1
  219. package/dist/esm/components/auth/pages/AuthPage_Invitation.d.ts.map +1 -1
  220. package/dist/esm/components/auth/pages/AuthPage_Invitation.js.map +1 -1
  221. package/dist/esm/components/auth/pages/AuthPage_MagicLinkVerify.d.ts.map +1 -1
  222. package/dist/esm/components/auth/pages/AuthPage_MagicLinkVerify.js.map +1 -1
  223. package/dist/esm/components/auth/pages/AuthPage_Main.d.ts.map +1 -1
  224. package/dist/esm/components/auth/pages/AuthPage_Main.js.map +1 -1
  225. package/dist/esm/components/auth/pages/AuthPage_MfaChallenge.d.ts.map +1 -1
  226. package/dist/esm/components/auth/pages/AuthPage_MfaChallenge.js.map +1 -1
  227. package/dist/esm/components/auth/pages/AuthPage_OAuthConsent.d.ts.map +1 -1
  228. package/dist/esm/components/auth/pages/AuthPage_OAuthConsent.js.map +1 -1
  229. package/dist/esm/components/auth/pages/AuthPage_OAuthLoggedOut.d.ts.map +1 -1
  230. package/dist/esm/components/auth/pages/AuthPage_OAuthLoggedOut.js.map +1 -1
  231. package/dist/esm/components/auth/pages/AuthPage_OAuthLogoutConfirm.d.ts.map +1 -1
  232. package/dist/esm/components/auth/pages/AuthPage_OAuthLogoutConfirm.js.map +1 -1
  233. package/dist/esm/components/auth/pages/AuthPage_OneOffSession.d.ts.map +1 -1
  234. package/dist/esm/components/auth/pages/AuthPage_OneOffSession.js.map +1 -1
  235. package/dist/esm/components/auth/pages/AuthPage_PasswordLost.d.ts.map +1 -1
  236. package/dist/esm/components/auth/pages/AuthPage_PasswordLost.js.map +1 -1
  237. package/dist/esm/components/auth/pages/AuthPage_Register.d.ts.map +1 -1
  238. package/dist/esm/components/auth/pages/AuthPage_Register.js.map +1 -1
  239. package/dist/esm/components/auth/utils/AuthSingleFieldFormLayout.d.ts.map +1 -1
  240. package/dist/esm/components/auth/utils/AuthSingleFieldFormLayout.js.map +1 -1
  241. package/dist/esm/components/auth/utils/CredentialUsernameAutofillField.d.ts.map +1 -1
  242. package/dist/esm/components/auth/utils/CredentialUsernameAutofillField.js.map +1 -1
  243. package/dist/esm/components/auth/utils/LabeledDivider.d.ts.map +1 -1
  244. package/dist/esm/components/auth/utils/LabeledDivider.js.map +1 -1
  245. package/dist/esm/components/auth/utils/OAuthProvidersSection.d.ts.map +1 -1
  246. package/dist/esm/components/auth/utils/OAuthProvidersSection.js.map +1 -1
  247. package/dist/esm/components/auth/utils/PasswordStrengthIndicator.d.ts.map +1 -1
  248. package/dist/esm/components/auth/utils/PasswordStrengthIndicator.js.map +1 -1
  249. package/dist/esm/components/auth/utils/oauth-provider-display-label.frontend.utils.d.ts.map +1 -1
  250. package/dist/esm/components/auth/utils/oauth-provider-display-label.frontend.utils.js.map +1 -1
  251. package/dist/esm/components/auth/utils/resolvePasswordViolationsToLabels.d.ts.map +1 -1
  252. package/dist/esm/components/auth/utils/resolvePasswordViolationsToLabels.js.map +1 -1
  253. package/dist/esm/components/billing/billing-invoice-history.d.ts.map +1 -1
  254. package/dist/esm/components/billing/billing-invoice-history.js.map +1 -1
  255. package/dist/esm/components/billing/billing-portal-link.d.ts.map +1 -1
  256. package/dist/esm/components/billing/billing-portal-link.js.map +1 -1
  257. package/dist/esm/components/billing/billing-pricing-table.d.ts.map +1 -1
  258. package/dist/esm/components/billing/billing-pricing-table.js.map +1 -1
  259. package/dist/esm/components/billing/billing-subscription-status.d.ts.map +1 -1
  260. package/dist/esm/components/billing/billing-subscription-status.js.map +1 -1
  261. package/dist/esm/components/billing/billing-usage-dashboard.d.ts.map +1 -1
  262. package/dist/esm/components/billing/billing-usage-dashboard.js.map +1 -1
  263. package/dist/esm/components/data-display/AutomaticDisplayer.d.ts.map +1 -1
  264. package/dist/esm/components/data-display/AutomaticDisplayer.js.map +1 -1
  265. package/dist/esm/components/data-display/DisplayContextKindContext.d.ts.map +1 -1
  266. package/dist/esm/components/data-display/DisplayContextKindContext.js.map +1 -1
  267. package/dist/esm/components/data-display/DisplayField.d.ts.map +1 -1
  268. package/dist/esm/components/data-display/DisplayField.js +8 -5
  269. package/dist/esm/components/data-display/DisplayField.js.map +1 -1
  270. package/dist/esm/components/data-display/DisplayFieldArray.d.ts.map +1 -1
  271. package/dist/esm/components/data-display/DisplayFieldArray.js.map +1 -1
  272. package/dist/esm/components/data-display/DisplayFieldEditable.d.ts.map +1 -1
  273. package/dist/esm/components/data-display/DisplayFieldEditable.js +6 -2
  274. package/dist/esm/components/data-display/DisplayFieldEditable.js.map +1 -1
  275. package/dist/esm/components/data-display/DisplayFieldEditableArray.d.ts.map +1 -1
  276. package/dist/esm/components/data-display/DisplayFieldEditableArray.js.map +1 -1
  277. package/dist/esm/components/data-display/DisplayFieldReadOnly.d.ts.map +1 -1
  278. package/dist/esm/components/data-display/DisplayFieldReadOnly.js.map +1 -1
  279. package/dist/esm/components/data-display/DisplayFieldReadOnlyArraySection.d.ts.map +1 -1
  280. package/dist/esm/components/data-display/DisplayFieldReadOnlyArraySection.js.map +1 -1
  281. package/dist/esm/components/data-display/DisplayTemplateContext.d.ts.map +1 -1
  282. package/dist/esm/components/data-display/DisplayTemplateContext.js.map +1 -1
  283. package/dist/esm/components/data-display/DisplayValueDispatcher.d.ts.map +1 -1
  284. package/dist/esm/components/data-display/DisplayValueDispatcher.js.map +1 -1
  285. package/dist/esm/components/data-display/ResourceAutomaticDisplayer.d.ts.map +1 -1
  286. package/dist/esm/components/data-display/ResourceAutomaticDisplayer.js.map +1 -1
  287. package/dist/esm/components/data-display/ResourceSummaryDisplayer.d.ts.map +1 -1
  288. package/dist/esm/components/data-display/ResourceSummaryDisplayer.js.map +1 -1
  289. package/dist/esm/components/data-display/SummaryContext.d.ts.map +1 -1
  290. package/dist/esm/components/data-display/SummaryContext.js.map +1 -1
  291. package/dist/esm/components/data-display/automatic-displayer.utils.d.ts.map +1 -1
  292. package/dist/esm/components/data-display/automatic-displayer.utils.js.map +1 -1
  293. package/dist/esm/components/data-display/avatar.d.ts.map +1 -1
  294. package/dist/esm/components/data-display/avatar.js.map +1 -1
  295. package/dist/esm/components/data-display/badge.d.ts.map +1 -1
  296. package/dist/esm/components/data-display/badge.js.map +1 -1
  297. package/dist/esm/components/data-display/chart-echarts.d.ts.map +1 -1
  298. package/dist/esm/components/data-display/chart-echarts.js.map +1 -1
  299. package/dist/esm/components/data-display/chromes/DisplayChromeContext.d.ts.map +1 -1
  300. package/dist/esm/components/data-display/chromes/DisplayChromeContext.js.map +1 -1
  301. package/dist/esm/components/data-display/chromes/DisplayFieldChrome.d.ts.map +1 -1
  302. package/dist/esm/components/data-display/chromes/DisplayFieldChrome.js.map +1 -1
  303. package/dist/esm/components/data-display/description-list.d.ts.map +1 -1
  304. package/dist/esm/components/data-display/description-list.js.map +1 -1
  305. package/dist/esm/components/data-display/display-field-resolution.utils.d.ts.map +1 -1
  306. package/dist/esm/components/data-display/display-field-resolution.utils.js.map +1 -1
  307. package/dist/esm/components/data-display/display-field-resolved-props.d.ts.map +1 -1
  308. package/dist/esm/components/data-display/display-field-resolved-props.js.map +1 -1
  309. package/dist/esm/components/data-display/display-resource-link-trail.d.ts.map +1 -1
  310. package/dist/esm/components/data-display/display-resource-link-trail.js.map +1 -1
  311. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.d.ts.map +1 -1
  312. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.js.map +1 -1
  313. package/dist/esm/components/data-display/formatters/display-field-boolean.d.ts.map +1 -1
  314. package/dist/esm/components/data-display/formatters/display-field-boolean.js.map +1 -1
  315. package/dist/esm/components/data-display/formatters/display-field-code.d.ts.map +1 -1
  316. package/dist/esm/components/data-display/formatters/display-field-code.js.map +1 -1
  317. package/dist/esm/components/data-display/formatters/display-field-date.d.ts.map +1 -1
  318. package/dist/esm/components/data-display/formatters/display-field-date.js.map +1 -1
  319. package/dist/esm/components/data-display/formatters/display-field-datetime.d.ts.map +1 -1
  320. package/dist/esm/components/data-display/formatters/display-field-datetime.js.map +1 -1
  321. package/dist/esm/components/data-display/formatters/display-field-duration.d.ts.map +1 -1
  322. package/dist/esm/components/data-display/formatters/display-field-duration.js.map +1 -1
  323. package/dist/esm/components/data-display/formatters/display-field-enum.d.ts.map +1 -1
  324. package/dist/esm/components/data-display/formatters/display-field-enum.js.map +1 -1
  325. package/dist/esm/components/data-display/formatters/display-field-file-audio.d.ts.map +1 -1
  326. package/dist/esm/components/data-display/formatters/display-field-file-audio.js.map +1 -1
  327. package/dist/esm/components/data-display/formatters/display-field-file-document.d.ts.map +1 -1
  328. package/dist/esm/components/data-display/formatters/display-field-file-document.js.map +1 -1
  329. package/dist/esm/components/data-display/formatters/display-field-file-gallery.d.ts.map +1 -1
  330. package/dist/esm/components/data-display/formatters/display-field-file-gallery.js.map +1 -1
  331. package/dist/esm/components/data-display/formatters/display-field-file-image.d.ts.map +1 -1
  332. package/dist/esm/components/data-display/formatters/display-field-file-image.js.map +1 -1
  333. package/dist/esm/components/data-display/formatters/display-field-file-video.d.ts.map +1 -1
  334. package/dist/esm/components/data-display/formatters/display-field-file-video.js.map +1 -1
  335. package/dist/esm/components/data-display/formatters/display-field-file.d.ts.map +1 -1
  336. package/dist/esm/components/data-display/formatters/display-field-file.js.map +1 -1
  337. package/dist/esm/components/data-display/formatters/display-field-json.d.ts.map +1 -1
  338. package/dist/esm/components/data-display/formatters/display-field-json.js.map +1 -1
  339. package/dist/esm/components/data-display/formatters/display-field-money.d.ts.map +1 -1
  340. package/dist/esm/components/data-display/formatters/display-field-money.js.map +1 -1
  341. package/dist/esm/components/data-display/formatters/display-field-number.d.ts.map +1 -1
  342. package/dist/esm/components/data-display/formatters/display-field-number.js.map +1 -1
  343. package/dist/esm/components/data-display/formatters/display-field-phone.d.ts.map +1 -1
  344. package/dist/esm/components/data-display/formatters/display-field-phone.js.map +1 -1
  345. package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.d.ts.map +1 -1
  346. package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.js.map +1 -1
  347. package/dist/esm/components/data-display/formatters/display-field-range-date.d.ts.map +1 -1
  348. package/dist/esm/components/data-display/formatters/display-field-range-date.js.map +1 -1
  349. package/dist/esm/components/data-display/formatters/display-field-range-datetime.d.ts.map +1 -1
  350. package/dist/esm/components/data-display/formatters/display-field-range-datetime.js.map +1 -1
  351. package/dist/esm/components/data-display/formatters/display-field-range-money.d.ts.map +1 -1
  352. package/dist/esm/components/data-display/formatters/display-field-range-money.js.map +1 -1
  353. package/dist/esm/components/data-display/formatters/display-field-range-number.d.ts.map +1 -1
  354. package/dist/esm/components/data-display/formatters/display-field-range-number.js.map +1 -1
  355. package/dist/esm/components/data-display/formatters/display-field-range-time.d.ts.map +1 -1
  356. package/dist/esm/components/data-display/formatters/display-field-range-time.js.map +1 -1
  357. package/dist/esm/components/data-display/formatters/display-field-string.d.ts.map +1 -1
  358. package/dist/esm/components/data-display/formatters/display-field-string.js.map +1 -1
  359. package/dist/esm/components/data-display/formatters/display-field-time.d.ts.map +1 -1
  360. package/dist/esm/components/data-display/formatters/display-field-time.js.map +1 -1
  361. package/dist/esm/components/data-display/notification-indicator.d.ts.map +1 -1
  362. package/dist/esm/components/data-display/notification-indicator.js.map +1 -1
  363. package/dist/esm/components/data-display/useFileActivation.d.ts.map +1 -1
  364. package/dist/esm/components/data-display/useFileActivation.js.map +1 -1
  365. package/dist/esm/components/feedback/celebration-overlay.d.ts.map +1 -1
  366. package/dist/esm/components/feedback/celebration-overlay.js.map +1 -1
  367. package/dist/esm/components/feedback/danger-zone.d.ts.map +1 -1
  368. package/dist/esm/components/feedback/danger-zone.js.map +1 -1
  369. package/dist/esm/components/feedback/empty-display-policy.utils.d.ts.map +1 -1
  370. package/dist/esm/components/feedback/empty-display-policy.utils.js.map +1 -1
  371. package/dist/esm/components/feedback/empty-state.d.ts.map +1 -1
  372. package/dist/esm/components/feedback/empty-state.js.map +1 -1
  373. package/dist/esm/components/feedback/error-display.d.ts.map +1 -1
  374. package/dist/esm/components/feedback/error-display.js.map +1 -1
  375. package/dist/esm/components/feedback/features/feature-limit-indicator.d.ts.map +1 -1
  376. package/dist/esm/components/feedback/features/feature-limit-indicator.js.map +1 -1
  377. package/dist/esm/components/feedback/features/feature-lock-badge.d.ts.map +1 -1
  378. package/dist/esm/components/feedback/features/feature-lock-badge.js.map +1 -1
  379. package/dist/esm/components/feedback/features/feature-unavailable-dialog.d.ts.map +1 -1
  380. package/dist/esm/components/feedback/features/feature-unavailable-dialog.js.map +1 -1
  381. package/dist/esm/components/feedback/features/feature-unavailable-prompt.d.ts +36 -0
  382. package/dist/esm/components/feedback/features/feature-unavailable-prompt.d.ts.map +1 -1
  383. package/dist/esm/components/feedback/features/feature-unavailable-prompt.js +29 -0
  384. package/dist/esm/components/feedback/features/feature-unavailable-prompt.js.map +1 -1
  385. package/dist/esm/components/feedback/loading-overlay.d.ts.map +1 -1
  386. package/dist/esm/components/feedback/loading-overlay.js.map +1 -1
  387. package/dist/esm/components/feedback/loading-spinner.d.ts.map +1 -1
  388. package/dist/esm/components/feedback/loading-spinner.js.map +1 -1
  389. package/dist/esm/components/feedback/notification-center.d.ts +11 -5
  390. package/dist/esm/components/feedback/notification-center.d.ts.map +1 -1
  391. package/dist/esm/components/feedback/notification-center.js +2 -3
  392. package/dist/esm/components/feedback/notification-center.js.map +1 -1
  393. package/dist/esm/components/feedback/operations-confirm-critical.d.ts.map +1 -1
  394. package/dist/esm/components/feedback/operations-confirm-critical.js.map +1 -1
  395. package/dist/esm/components/feedback/progress.d.ts.map +1 -1
  396. package/dist/esm/components/feedback/progress.js.map +1 -1
  397. package/dist/esm/components/feedback/resource-empty-state.d.ts.map +1 -1
  398. package/dist/esm/components/feedback/resource-empty-state.js.map +1 -1
  399. package/dist/esm/components/feedback/skeleton-text.d.ts.map +1 -1
  400. package/dist/esm/components/feedback/skeleton-text.js.map +1 -1
  401. package/dist/esm/components/feedback/skeleton.d.ts.map +1 -1
  402. package/dist/esm/components/feedback/skeleton.js.map +1 -1
  403. package/dist/esm/components/feedback/toast.d.ts.map +1 -1
  404. package/dist/esm/components/feedback/toast.js.map +1 -1
  405. package/dist/esm/components/files/Files_UploadGrantDrop.d.ts +41 -0
  406. package/dist/esm/components/files/Files_UploadGrantDrop.d.ts.map +1 -0
  407. package/dist/esm/components/files/Files_UploadGrantDrop.js +207 -0
  408. package/dist/esm/components/files/Files_UploadGrantDrop.js.map +1 -0
  409. package/dist/esm/components/files/Files_UploadGrantDrop.labels.d.ts +3 -0
  410. package/dist/esm/components/files/Files_UploadGrantDrop.labels.d.ts.map +1 -0
  411. package/dist/esm/components/files/Files_UploadGrantDrop.labels.js +36 -0
  412. package/dist/esm/components/files/Files_UploadGrantDrop.labels.js.map +1 -0
  413. package/dist/esm/components/files/pages/FilesPage_UploadGrant.d.ts +8 -0
  414. package/dist/esm/components/files/pages/FilesPage_UploadGrant.d.ts.map +1 -0
  415. package/dist/esm/components/files/pages/FilesPage_UploadGrant.js +14 -0
  416. package/dist/esm/components/files/pages/FilesPage_UploadGrant.js.map +1 -0
  417. package/dist/esm/components/flows-actors/actor.d.ts.map +1 -1
  418. package/dist/esm/components/flows-actors/actor.js.map +1 -1
  419. package/dist/esm/components/flows-actors/actor.labels.d.ts.map +1 -1
  420. package/dist/esm/components/flows-actors/actor.labels.js.map +1 -1
  421. package/dist/esm/components/flows-actors/agent-config.d.ts.map +1 -1
  422. package/dist/esm/components/flows-actors/agent-config.js.map +1 -1
  423. package/dist/esm/components/flows-actors/agent-config.labels.d.ts.map +1 -1
  424. package/dist/esm/components/flows-actors/agent-config.labels.js.map +1 -1
  425. package/dist/esm/components/flows-actors/approval.d.ts.map +1 -1
  426. package/dist/esm/components/flows-actors/approval.js +21 -4
  427. package/dist/esm/components/flows-actors/approval.js.map +1 -1
  428. package/dist/esm/components/flows-actors/approval.labels.d.ts.map +1 -1
  429. package/dist/esm/components/flows-actors/approval.labels.js +5 -0
  430. package/dist/esm/components/flows-actors/approval.labels.js.map +1 -1
  431. package/dist/esm/components/flows-actors/artifact-browser.d.ts.map +1 -1
  432. package/dist/esm/components/flows-actors/artifact-browser.js.map +1 -1
  433. package/dist/esm/components/flows-actors/artifact-browser.labels.d.ts.map +1 -1
  434. package/dist/esm/components/flows-actors/artifact-browser.labels.js.map +1 -1
  435. package/dist/esm/components/flows-actors/execution-plan.d.ts.map +1 -1
  436. package/dist/esm/components/flows-actors/execution-plan.js +1 -1
  437. package/dist/esm/components/flows-actors/execution-plan.js.map +1 -1
  438. package/dist/esm/components/flows-actors/execution-plan.labels.d.ts.map +1 -1
  439. package/dist/esm/components/flows-actors/execution-plan.labels.js.map +1 -1
  440. package/dist/esm/components/flows-actors/flow-execution.d.ts.map +1 -1
  441. package/dist/esm/components/flows-actors/flow-execution.js.map +1 -1
  442. package/dist/esm/components/flows-actors/flow-execution.labels.d.ts.map +1 -1
  443. package/dist/esm/components/flows-actors/flow-execution.labels.js.map +1 -1
  444. package/dist/esm/components/flows-actors/flow-node-badges.d.ts.map +1 -1
  445. package/dist/esm/components/flows-actors/flow-node-badges.js.map +1 -1
  446. package/dist/esm/components/flows-actors/flow-node.d.ts.map +1 -1
  447. package/dist/esm/components/flows-actors/flow-node.js.map +1 -1
  448. package/dist/esm/components/flows-actors/flow-node.labels.d.ts.map +1 -1
  449. package/dist/esm/components/flows-actors/flow-node.labels.js.map +1 -1
  450. package/dist/esm/components/flows-actors/flows-actors-graph-runtime.d.ts.map +1 -1
  451. package/dist/esm/components/flows-actors/flows-actors-graph-runtime.js.map +1 -1
  452. package/dist/esm/components/flows-actors/flows-actors-graph.lazy.d.ts.map +1 -1
  453. package/dist/esm/components/flows-actors/flows-actors-graph.lazy.js.map +1 -1
  454. package/dist/esm/components/flows-actors/flows-actors-ui.utils.d.ts.map +1 -1
  455. package/dist/esm/components/flows-actors/flows-actors-ui.utils.js.map +1 -1
  456. package/dist/esm/components/flows-actors/system-catalog.d.ts.map +1 -1
  457. package/dist/esm/components/flows-actors/system-catalog.js.map +1 -1
  458. package/dist/esm/components/flows-actors/system-catalog.labels.d.ts.map +1 -1
  459. package/dist/esm/components/flows-actors/system-catalog.labels.js.map +1 -1
  460. package/dist/esm/components/flows-actors/task-detail.d.ts.map +1 -1
  461. package/dist/esm/components/flows-actors/task-detail.js.map +1 -1
  462. package/dist/esm/components/flows-actors/task-detail.labels.d.ts.map +1 -1
  463. package/dist/esm/components/flows-actors/task-detail.labels.js.map +1 -1
  464. package/dist/esm/components/flows-actors/task-memory.d.ts.map +1 -1
  465. package/dist/esm/components/flows-actors/task-memory.js +1 -1
  466. package/dist/esm/components/flows-actors/task-memory.js.map +1 -1
  467. package/dist/esm/components/flows-actors/task-memory.labels.d.ts.map +1 -1
  468. package/dist/esm/components/flows-actors/task-memory.labels.js.map +1 -1
  469. package/dist/esm/components/form/Form.d.ts.map +1 -1
  470. package/dist/esm/components/form/Form.js.map +1 -1
  471. package/dist/esm/components/form/automated/AutomatedArrayField.d.ts.map +1 -1
  472. package/dist/esm/components/form/automated/AutomatedArrayField.js +1 -1
  473. package/dist/esm/components/form/automated/AutomatedArrayField.js.map +1 -1
  474. package/dist/esm/components/form/automated/AutomatedForm.d.ts.map +1 -1
  475. package/dist/esm/components/form/automated/AutomatedForm.js +16 -9
  476. package/dist/esm/components/form/automated/AutomatedForm.js.map +1 -1
  477. package/dist/esm/components/form/automated/AutosaveContext.d.ts.map +1 -1
  478. package/dist/esm/components/form/automated/AutosaveContext.js.map +1 -1
  479. package/dist/esm/components/form/automated/FormField.d.ts.map +1 -1
  480. package/dist/esm/components/form/automated/FormField.js +9 -2
  481. package/dist/esm/components/form/automated/FormField.js.map +1 -1
  482. package/dist/esm/components/form/automated/FormFieldArray.d.ts.map +1 -1
  483. package/dist/esm/components/form/automated/FormFieldArray.js.map +1 -1
  484. package/dist/esm/components/form/automated/FormFieldComposite.d.ts.map +1 -1
  485. package/dist/esm/components/form/automated/FormFieldComposite.js +8 -6
  486. package/dist/esm/components/form/automated/FormFieldComposite.js.map +1 -1
  487. package/dist/esm/components/form/automated/FormFieldRecord.d.ts.map +1 -1
  488. package/dist/esm/components/form/automated/FormFieldRecord.js.map +1 -1
  489. package/dist/esm/components/form/automated/FormTemplateContext.d.ts.map +1 -1
  490. package/dist/esm/components/form/automated/FormTemplateContext.js.map +1 -1
  491. package/dist/esm/components/form/automated/GeneratedAssociationRelationshipField.d.ts.map +1 -1
  492. package/dist/esm/components/form/automated/GeneratedAssociationRelationshipField.js.map +1 -1
  493. package/dist/esm/components/form/automated/GeneratedReferenceRelationshipField.d.ts.map +1 -1
  494. package/dist/esm/components/form/automated/GeneratedReferenceRelationshipField.js.map +1 -1
  495. package/dist/esm/components/form/automated/ResourceAutomatedForm.d.ts.map +1 -1
  496. package/dist/esm/components/form/automated/ResourceAutomatedForm.js +37 -3
  497. package/dist/esm/components/form/automated/ResourceAutomatedForm.js.map +1 -1
  498. package/dist/esm/components/form/automated/ResourceFormActionsContext.d.ts.map +1 -1
  499. package/dist/esm/components/form/automated/ResourceFormActionsContext.js.map +1 -1
  500. package/dist/esm/components/form/automated/automated-form-submit.utils.d.ts.map +1 -1
  501. package/dist/esm/components/form/automated/automated-form-submit.utils.js.map +1 -1
  502. package/dist/esm/components/form/automated/autosave-derivation.frontend.utils.d.ts +12 -0
  503. package/dist/esm/components/form/automated/autosave-derivation.frontend.utils.d.ts.map +1 -0
  504. package/dist/esm/components/form/automated/autosave-derivation.frontend.utils.js +26 -0
  505. package/dist/esm/components/form/automated/autosave-derivation.frontend.utils.js.map +1 -0
  506. package/dist/esm/components/form/automated/autosave-indicator.d.ts.map +1 -1
  507. package/dist/esm/components/form/automated/autosave-indicator.js.map +1 -1
  508. package/dist/esm/components/form/automated/autosave-indicator.utils.d.ts.map +1 -1
  509. package/dist/esm/components/form/automated/autosave-indicator.utils.js.map +1 -1
  510. package/dist/esm/components/form/automated/create-form-default-values.utils.d.ts.map +1 -1
  511. package/dist/esm/components/form/automated/create-form-default-values.utils.js.map +1 -1
  512. package/dist/esm/components/form/automated/form-field-autocomplete.frontend.utils.d.ts.map +1 -1
  513. package/dist/esm/components/form/automated/form-field-autocomplete.frontend.utils.js.map +1 -1
  514. package/dist/esm/components/form/automated/generated-relationship-field.helpers.d.ts.map +1 -1
  515. package/dist/esm/components/form/automated/generated-relationship-field.helpers.js.map +1 -1
  516. package/dist/esm/components/form/automated/generated-relationship-field.hooks.d.ts +1 -1
  517. package/dist/esm/components/form/automated/generated-relationship-field.hooks.d.ts.map +1 -1
  518. package/dist/esm/components/form/automated/generated-relationship-field.hooks.js.map +1 -1
  519. package/dist/esm/components/form/automated/generated-relationship-field.shared.d.ts.map +1 -1
  520. package/dist/esm/components/form/automated/generated-relationship-field.shared.js.map +1 -1
  521. package/dist/esm/components/form/automated/generated-relationship-field.utils.d.ts.map +1 -1
  522. package/dist/esm/components/form/automated/generated-relationship-field.utils.js.map +1 -1
  523. package/dist/esm/components/form/automated/useArrayItemAutosaveField.d.ts.map +1 -1
  524. package/dist/esm/components/form/automated/useArrayItemAutosaveField.js.map +1 -1
  525. package/dist/esm/components/form/chromes/FormChromeContext.d.ts.map +1 -1
  526. package/dist/esm/components/form/chromes/FormChromeContext.js.map +1 -1
  527. package/dist/esm/components/form/chromes/FormFieldChrome.d.ts.map +1 -1
  528. package/dist/esm/components/form/chromes/FormFieldChrome.js.map +1 -1
  529. package/dist/esm/components/form/chromes/field.d.ts.map +1 -1
  530. package/dist/esm/components/form/chromes/field.js.map +1 -1
  531. package/dist/esm/components/form/chromes/form-primitives.d.ts.map +1 -1
  532. package/dist/esm/components/form/chromes/form-primitives.js.map +1 -1
  533. package/dist/esm/components/form/combobox.d.ts.map +1 -1
  534. package/dist/esm/components/form/combobox.js.map +1 -1
  535. package/dist/esm/components/form/controls/boolean/checkbox.d.ts.map +1 -1
  536. package/dist/esm/components/form/controls/boolean/checkbox.js.map +1 -1
  537. package/dist/esm/components/form/controls/boolean/switch.d.ts.map +1 -1
  538. package/dist/esm/components/form/controls/boolean/switch.js.map +1 -1
  539. package/dist/esm/components/form/controls/boolean/toggle-group-boolean.d.ts.map +1 -1
  540. package/dist/esm/components/form/controls/boolean/toggle-group-boolean.js.map +1 -1
  541. package/dist/esm/components/form/controls/boolean/toggle.d.ts.map +1 -1
  542. package/dist/esm/components/form/controls/boolean/toggle.js.map +1 -1
  543. package/dist/esm/components/form/controls/date-time/calendar.d.ts.map +1 -1
  544. package/dist/esm/components/form/controls/date-time/calendar.js.map +1 -1
  545. package/dist/esm/components/form/controls/date-time/date-range-picker.d.ts.map +1 -1
  546. package/dist/esm/components/form/controls/date-time/date-range-picker.js.map +1 -1
  547. package/dist/esm/components/form/controls/date-time/datepicker.d.ts.map +1 -1
  548. package/dist/esm/components/form/controls/date-time/datepicker.js.map +1 -1
  549. package/dist/esm/components/form/controls/date-time/datetime-picker.d.ts.map +1 -1
  550. package/dist/esm/components/form/controls/date-time/datetime-picker.js.map +1 -1
  551. package/dist/esm/components/form/controls/date-time/datetime-range-picker.d.ts.map +1 -1
  552. package/dist/esm/components/form/controls/date-time/datetime-range-picker.js.map +1 -1
  553. package/dist/esm/components/form/controls/date-time/time-picker.d.ts.map +1 -1
  554. package/dist/esm/components/form/controls/date-time/time-picker.js.map +1 -1
  555. package/dist/esm/components/form/controls/date-time/time-range-picker.d.ts.map +1 -1
  556. package/dist/esm/components/form/controls/date-time/time-range-picker.js.map +1 -1
  557. package/dist/esm/components/form/controls/enum/radio.d.ts.map +1 -1
  558. package/dist/esm/components/form/controls/enum/radio.js.map +1 -1
  559. package/dist/esm/components/form/controls/enum/select-multiple.d.ts.map +1 -1
  560. package/dist/esm/components/form/controls/enum/select-multiple.js.map +1 -1
  561. package/dist/esm/components/form/controls/enum/select.d.ts.map +1 -1
  562. package/dist/esm/components/form/controls/enum/select.js.map +1 -1
  563. package/dist/esm/components/form/controls/enum/toggle-group.d.ts.map +1 -1
  564. package/dist/esm/components/form/controls/enum/toggle-group.js.map +1 -1
  565. package/dist/esm/components/form/controls/file/file-upload.d.ts.map +1 -1
  566. package/dist/esm/components/form/controls/file/file-upload.js.map +1 -1
  567. package/dist/esm/components/form/controls/file/image-crop.d.ts.map +1 -1
  568. package/dist/esm/components/form/controls/file/image-crop.frontend.utils.d.ts.map +1 -1
  569. package/dist/esm/components/form/controls/file/image-crop.frontend.utils.js.map +1 -1
  570. package/dist/esm/components/form/controls/file/image-crop.js.map +1 -1
  571. package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts.map +1 -1
  572. package/dist/esm/components/form/controls/form-field-checkbox-group.js.map +1 -1
  573. package/dist/esm/components/form/controls/input-group.d.ts.map +1 -1
  574. package/dist/esm/components/form/controls/input-group.js.map +1 -1
  575. package/dist/esm/components/form/controls/input.d.ts.map +1 -1
  576. package/dist/esm/components/form/controls/input.js.map +1 -1
  577. package/dist/esm/components/form/controls/number/slider.d.ts +1 -1
  578. package/dist/esm/components/form/controls/number/slider.d.ts.map +1 -1
  579. package/dist/esm/components/form/controls/number/slider.js.map +1 -1
  580. package/dist/esm/components/form/controls/string/color-input.d.ts.map +1 -1
  581. package/dist/esm/components/form/controls/string/color-input.js.map +1 -1
  582. package/dist/esm/components/form/controls/string/inline-edit-text.d.ts.map +1 -1
  583. package/dist/esm/components/form/controls/string/inline-edit-text.js.map +1 -1
  584. package/dist/esm/components/form/controls/string/input-otp.d.ts.map +1 -1
  585. package/dist/esm/components/form/controls/string/input-otp.js.map +1 -1
  586. package/dist/esm/components/form/controls/string/markdown-editor.d.ts.map +1 -1
  587. package/dist/esm/components/form/controls/string/markdown-editor.js.map +1 -1
  588. package/dist/esm/components/form/controls/string/markdown-editor.labels.d.ts.map +1 -1
  589. package/dist/esm/components/form/controls/string/markdown-editor.labels.js.map +1 -1
  590. package/dist/esm/components/form/controls/string/password-input.d.ts.map +1 -1
  591. package/dist/esm/components/form/controls/string/password-input.js.map +1 -1
  592. package/dist/esm/components/form/controls/string/textarea.d.ts.map +1 -1
  593. package/dist/esm/components/form/controls/string/textarea.js.map +1 -1
  594. package/dist/esm/components/form/feedback/RemoteChangeNotification.d.ts.map +1 -1
  595. package/dist/esm/components/form/feedback/RemoteChangeNotification.js.map +1 -1
  596. package/dist/esm/components/form/fields/form-field-bigdecimal.d.ts.map +1 -1
  597. package/dist/esm/components/form/fields/form-field-bigdecimal.js.map +1 -1
  598. package/dist/esm/components/form/fields/form-field-bigdecimal.labels.d.ts.map +1 -1
  599. package/dist/esm/components/form/fields/form-field-bigdecimal.labels.js.map +1 -1
  600. package/dist/esm/components/form/fields/form-field-boolean.d.ts.map +1 -1
  601. package/dist/esm/components/form/fields/form-field-boolean.js +4 -2
  602. package/dist/esm/components/form/fields/form-field-boolean.js.map +1 -1
  603. package/dist/esm/components/form/fields/form-field-boolean.labels.d.ts.map +1 -1
  604. package/dist/esm/components/form/fields/form-field-boolean.labels.js.map +1 -1
  605. package/dist/esm/components/form/fields/form-field-code.d.ts.map +1 -1
  606. package/dist/esm/components/form/fields/form-field-code.js.map +1 -1
  607. package/dist/esm/components/form/fields/form-field-code.labels.d.ts.map +1 -1
  608. package/dist/esm/components/form/fields/form-field-code.labels.js.map +1 -1
  609. package/dist/esm/components/form/fields/form-field-date.d.ts.map +1 -1
  610. package/dist/esm/components/form/fields/form-field-date.js.map +1 -1
  611. package/dist/esm/components/form/fields/form-field-date.labels.d.ts.map +1 -1
  612. package/dist/esm/components/form/fields/form-field-date.labels.js.map +1 -1
  613. package/dist/esm/components/form/fields/form-field-datetime.d.ts.map +1 -1
  614. package/dist/esm/components/form/fields/form-field-datetime.js.map +1 -1
  615. package/dist/esm/components/form/fields/form-field-datetime.labels.d.ts.map +1 -1
  616. package/dist/esm/components/form/fields/form-field-datetime.labels.js.map +1 -1
  617. package/dist/esm/components/form/fields/form-field-duration.d.ts.map +1 -1
  618. package/dist/esm/components/form/fields/form-field-duration.js.map +1 -1
  619. package/dist/esm/components/form/fields/form-field-duration.labels.d.ts.map +1 -1
  620. package/dist/esm/components/form/fields/form-field-duration.labels.js.map +1 -1
  621. package/dist/esm/components/form/fields/form-field-enum.d.ts.map +1 -1
  622. package/dist/esm/components/form/fields/form-field-enum.js +4 -2
  623. package/dist/esm/components/form/fields/form-field-enum.js.map +1 -1
  624. package/dist/esm/components/form/fields/form-field-enum.labels.d.ts.map +1 -1
  625. package/dist/esm/components/form/fields/form-field-enum.labels.js.map +1 -1
  626. package/dist/esm/components/form/fields/form-field-file-provider-constraints.frontend.utils.d.ts +15 -5
  627. package/dist/esm/components/form/fields/form-field-file-provider-constraints.frontend.utils.d.ts.map +1 -1
  628. package/dist/esm/components/form/fields/form-field-file-provider-constraints.frontend.utils.js +21 -18
  629. package/dist/esm/components/form/fields/form-field-file-provider-constraints.frontend.utils.js.map +1 -1
  630. package/dist/esm/components/form/fields/form-field-file.d.ts.map +1 -1
  631. package/dist/esm/components/form/fields/form-field-file.js +139 -2
  632. package/dist/esm/components/form/fields/form-field-file.js.map +1 -1
  633. package/dist/esm/components/form/fields/form-field-file.labels.d.ts.map +1 -1
  634. package/dist/esm/components/form/fields/form-field-file.labels.js +15 -0
  635. package/dist/esm/components/form/fields/form-field-file.labels.js.map +1 -1
  636. package/dist/esm/components/form/fields/form-field-money.d.ts.map +1 -1
  637. package/dist/esm/components/form/fields/form-field-money.js.map +1 -1
  638. package/dist/esm/components/form/fields/form-field-money.labels.d.ts.map +1 -1
  639. package/dist/esm/components/form/fields/form-field-money.labels.js.map +1 -1
  640. package/dist/esm/components/form/fields/form-field-number.d.ts.map +1 -1
  641. package/dist/esm/components/form/fields/form-field-number.js +4 -2
  642. package/dist/esm/components/form/fields/form-field-number.js.map +1 -1
  643. package/dist/esm/components/form/fields/form-field-number.labels.d.ts.map +1 -1
  644. package/dist/esm/components/form/fields/form-field-number.labels.js.map +1 -1
  645. package/dist/esm/components/form/fields/form-field-phone.d.ts.map +1 -1
  646. package/dist/esm/components/form/fields/form-field-phone.js.map +1 -1
  647. package/dist/esm/components/form/fields/form-field-phone.labels.d.ts.map +1 -1
  648. package/dist/esm/components/form/fields/form-field-phone.labels.js.map +1 -1
  649. package/dist/esm/components/form/fields/form-field-range-bigdecimal.d.ts.map +1 -1
  650. package/dist/esm/components/form/fields/form-field-range-bigdecimal.js.map +1 -1
  651. package/dist/esm/components/form/fields/form-field-range-bigdecimal.labels.d.ts.map +1 -1
  652. package/dist/esm/components/form/fields/form-field-range-bigdecimal.labels.js.map +1 -1
  653. package/dist/esm/components/form/fields/form-field-range-date.d.ts.map +1 -1
  654. package/dist/esm/components/form/fields/form-field-range-date.js.map +1 -1
  655. package/dist/esm/components/form/fields/form-field-range-date.labels.d.ts.map +1 -1
  656. package/dist/esm/components/form/fields/form-field-range-date.labels.js.map +1 -1
  657. package/dist/esm/components/form/fields/form-field-range-datetime.d.ts.map +1 -1
  658. package/dist/esm/components/form/fields/form-field-range-datetime.js.map +1 -1
  659. package/dist/esm/components/form/fields/form-field-range-datetime.labels.d.ts.map +1 -1
  660. package/dist/esm/components/form/fields/form-field-range-datetime.labels.js.map +1 -1
  661. package/dist/esm/components/form/fields/form-field-range-money.d.ts.map +1 -1
  662. package/dist/esm/components/form/fields/form-field-range-money.js.map +1 -1
  663. package/dist/esm/components/form/fields/form-field-range-money.labels.d.ts.map +1 -1
  664. package/dist/esm/components/form/fields/form-field-range-money.labels.js.map +1 -1
  665. package/dist/esm/components/form/fields/form-field-range-number.d.ts.map +1 -1
  666. package/dist/esm/components/form/fields/form-field-range-number.js.map +1 -1
  667. package/dist/esm/components/form/fields/form-field-range-number.labels.d.ts.map +1 -1
  668. package/dist/esm/components/form/fields/form-field-range-number.labels.js.map +1 -1
  669. package/dist/esm/components/form/fields/form-field-range-time.d.ts.map +1 -1
  670. package/dist/esm/components/form/fields/form-field-range-time.js.map +1 -1
  671. package/dist/esm/components/form/fields/form-field-range-time.labels.d.ts.map +1 -1
  672. package/dist/esm/components/form/fields/form-field-range-time.labels.js.map +1 -1
  673. package/dist/esm/components/form/fields/form-field-string.d.ts.map +1 -1
  674. package/dist/esm/components/form/fields/form-field-string.js +7 -2
  675. package/dist/esm/components/form/fields/form-field-string.js.map +1 -1
  676. package/dist/esm/components/form/fields/form-field-string.labels.d.ts.map +1 -1
  677. package/dist/esm/components/form/fields/form-field-string.labels.js.map +1 -1
  678. package/dist/esm/components/form/fields/form-field-time.d.ts.map +1 -1
  679. package/dist/esm/components/form/fields/form-field-time.js.map +1 -1
  680. package/dist/esm/components/form/fields/form-field-time.labels.d.ts.map +1 -1
  681. package/dist/esm/components/form/fields/form-field-time.labels.js.map +1 -1
  682. package/dist/esm/components/form/fields/useFormField.d.ts.map +1 -1
  683. package/dist/esm/components/form/fields/useFormField.js.map +1 -1
  684. package/dist/esm/components/form/form-context.d.ts.map +1 -1
  685. package/dist/esm/components/form/form-context.js.map +1 -1
  686. package/dist/esm/components/form/form-context.utils.d.ts.map +1 -1
  687. package/dist/esm/components/form/form-context.utils.js.map +1 -1
  688. package/dist/esm/components/form/form-field-types.d.ts +20 -0
  689. package/dist/esm/components/form/form-field-types.d.ts.map +1 -1
  690. package/dist/esm/components/form/form-field-types.js.map +1 -1
  691. package/dist/esm/components/form/useFormSchemaContext.d.ts.map +1 -1
  692. package/dist/esm/components/form/useFormSchemaContext.js.map +1 -1
  693. package/dist/esm/components/form/validation-errors/FormErrorSummary.d.ts.map +1 -1
  694. package/dist/esm/components/form/validation-errors/FormErrorSummary.js.map +1 -1
  695. package/dist/esm/components/form/validation-errors/form-error-extraction.utils.d.ts.map +1 -1
  696. package/dist/esm/components/form/validation-errors/form-error-extraction.utils.js.map +1 -1
  697. package/dist/esm/components/form/validation-errors/form-validation.d.ts.map +1 -1
  698. package/dist/esm/components/form/validation-errors/form-validation.js.map +1 -1
  699. package/dist/esm/components/form/validation-errors/getFieldError.d.ts.map +1 -1
  700. package/dist/esm/components/form/validation-errors/getFieldError.js.map +1 -1
  701. package/dist/esm/components/form/validation-errors/scroll-to-first-error.utils.d.ts.map +1 -1
  702. package/dist/esm/components/form/validation-errors/scroll-to-first-error.utils.js.map +1 -1
  703. package/dist/esm/components/form/validation-errors/useFieldUniquenessValidation.d.ts.map +1 -1
  704. package/dist/esm/components/form/validation-errors/useFieldUniquenessValidation.js.map +1 -1
  705. package/dist/esm/components/form/validation-errors/useServerErrorInjection.d.ts.map +1 -1
  706. package/dist/esm/components/form/validation-errors/useServerErrorInjection.js.map +1 -1
  707. package/dist/esm/components/layout/aspect-ratio.d.ts.map +1 -1
  708. package/dist/esm/components/layout/aspect-ratio.js.map +1 -1
  709. package/dist/esm/components/layout/carousel.d.ts.map +1 -1
  710. package/dist/esm/components/layout/carousel.js.map +1 -1
  711. package/dist/esm/components/layout/divider.d.ts.map +1 -1
  712. package/dist/esm/components/layout/divider.js.map +1 -1
  713. package/dist/esm/components/layout/resizable.d.ts.map +1 -1
  714. package/dist/esm/components/layout/resizable.js.map +1 -1
  715. package/dist/esm/components/layout/scroll-area.d.ts.map +1 -1
  716. package/dist/esm/components/layout/scroll-area.js.map +1 -1
  717. package/dist/esm/components/layout/separator.d.ts.map +1 -1
  718. package/dist/esm/components/layout/separator.js.map +1 -1
  719. package/dist/esm/components/navigation/NavigationItemBadge.d.ts +13 -1
  720. package/dist/esm/components/navigation/NavigationItemBadge.d.ts.map +1 -1
  721. package/dist/esm/components/navigation/NavigationItemBadge.js +31 -2
  722. package/dist/esm/components/navigation/NavigationItemBadge.js.map +1 -1
  723. package/dist/esm/components/navigation/app-level/ApplicationLevel_ActivityBar.d.ts.map +1 -1
  724. package/dist/esm/components/navigation/app-level/ApplicationLevel_ActivityBar.js.map +1 -1
  725. package/dist/esm/components/navigation/app-level/ApplicationLevel_CommandMenu.d.ts.map +1 -1
  726. package/dist/esm/components/navigation/app-level/ApplicationLevel_CommandMenu.js.map +1 -1
  727. package/dist/esm/components/navigation/app-level/ApplicationLevel_ControlPanel.d.ts.map +1 -1
  728. package/dist/esm/components/navigation/app-level/ApplicationLevel_ControlPanel.js.map +1 -1
  729. package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuBar.d.ts.map +1 -1
  730. package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuBar.js.map +1 -1
  731. package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuUserOrg.d.ts.map +1 -1
  732. package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuUserOrg.js.map +1 -1
  733. package/dist/esm/components/navigation/app-level/ApplicationLevel_NavigationBack.d.ts.map +1 -1
  734. package/dist/esm/components/navigation/app-level/ApplicationLevel_NavigationBack.js.map +1 -1
  735. package/dist/esm/components/navigation/app-level/ApplicationLevel_NotificationCenter.d.ts.map +1 -1
  736. package/dist/esm/components/navigation/app-level/ApplicationLevel_NotificationCenter.js.map +1 -1
  737. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickActionButton.d.ts.map +1 -1
  738. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickActionButton.js.map +1 -1
  739. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickSwitcher.d.ts.map +1 -1
  740. package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickSwitcher.js.map +1 -1
  741. package/dist/esm/components/navigation/app-level/ApplicationLevel_Sidebar.d.ts.map +1 -1
  742. package/dist/esm/components/navigation/app-level/ApplicationLevel_Sidebar.js.map +1 -1
  743. package/dist/esm/components/navigation/app-level/ApplicationLevel_StatusBar.d.ts.map +1 -1
  744. package/dist/esm/components/navigation/app-level/ApplicationLevel_StatusBar.js.map +1 -1
  745. package/dist/esm/components/navigation/app-level/ApplicationLevel_Toolbar.d.ts.map +1 -1
  746. package/dist/esm/components/navigation/app-level/ApplicationLevel_Toolbar.js.map +1 -1
  747. package/dist/esm/components/navigation/app-level/ApplicationLevel_UtilityPanel.d.ts.map +1 -1
  748. package/dist/esm/components/navigation/app-level/ApplicationLevel_UtilityPanel.js.map +1 -1
  749. package/dist/esm/components/navigation/app-level/HostedComponentInteractionsProvider.d.ts.map +1 -1
  750. package/dist/esm/components/navigation/app-level/HostedComponentInteractionsProvider.js.map +1 -1
  751. package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.d.ts.map +1 -1
  752. package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.js.map +1 -1
  753. package/dist/esm/components/navigation/app-level/component-props.application-level.frontend.schemas.d.ts.map +1 -1
  754. package/dist/esm/components/navigation/app-level/component-props.application-level.frontend.schemas.js.map +1 -1
  755. package/dist/esm/components/navigation/app-level/useActivityBarBehavior.d.ts.map +1 -1
  756. package/dist/esm/components/navigation/app-level/useActivityBarBehavior.js.map +1 -1
  757. package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.d.ts.map +1 -1
  758. package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.js.map +1 -1
  759. package/dist/esm/components/navigation/app-level/useControlPanelBehavior.d.ts.map +1 -1
  760. package/dist/esm/components/navigation/app-level/useControlPanelBehavior.js.map +1 -1
  761. package/dist/esm/components/navigation/app-level/useMenuBarBehavior.d.ts.map +1 -1
  762. package/dist/esm/components/navigation/app-level/useMenuBarBehavior.js.map +1 -1
  763. package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.d.ts.map +1 -1
  764. package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.js.map +1 -1
  765. package/dist/esm/components/navigation/app-level/useNavigationBehaviors.d.ts.map +1 -1
  766. package/dist/esm/components/navigation/app-level/useNavigationBehaviors.js.map +1 -1
  767. package/dist/esm/components/navigation/app-level/useNotificationCenterBehavior.d.ts +5 -2
  768. package/dist/esm/components/navigation/app-level/useNotificationCenterBehavior.d.ts.map +1 -1
  769. package/dist/esm/components/navigation/app-level/useNotificationCenterBehavior.js +18 -41
  770. package/dist/esm/components/navigation/app-level/useNotificationCenterBehavior.js.map +1 -1
  771. package/dist/esm/components/navigation/app-level/useQuickActionButtonBehavior.d.ts.map +1 -1
  772. package/dist/esm/components/navigation/app-level/useQuickActionButtonBehavior.js.map +1 -1
  773. package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.d.ts.map +1 -1
  774. package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.js.map +1 -1
  775. package/dist/esm/components/navigation/app-level/useSidebarBehavior.d.ts.map +1 -1
  776. package/dist/esm/components/navigation/app-level/useSidebarBehavior.js +1 -1
  777. package/dist/esm/components/navigation/app-level/useSidebarBehavior.js.map +1 -1
  778. package/dist/esm/components/navigation/app-level/useStatusBarBehavior.d.ts.map +1 -1
  779. package/dist/esm/components/navigation/app-level/useStatusBarBehavior.js +13 -3
  780. package/dist/esm/components/navigation/app-level/useStatusBarBehavior.js.map +1 -1
  781. package/dist/esm/components/navigation/app-level/useToolbarBehavior.d.ts.map +1 -1
  782. package/dist/esm/components/navigation/app-level/useToolbarBehavior.js.map +1 -1
  783. package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.d.ts +23 -5
  784. package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.d.ts.map +1 -1
  785. package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.js +81 -13
  786. package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.js.map +1 -1
  787. package/dist/esm/components/navigation/breadcrumb.d.ts.map +1 -1
  788. package/dist/esm/components/navigation/breadcrumb.js.map +1 -1
  789. package/dist/esm/components/navigation/command.d.ts.map +1 -1
  790. package/dist/esm/components/navigation/command.js.map +1 -1
  791. package/dist/esm/components/navigation/menu-bar.d.ts +1 -1
  792. package/dist/esm/components/navigation/menu-bar.d.ts.map +1 -1
  793. package/dist/esm/components/navigation/menu-bar.js.map +1 -1
  794. package/dist/esm/components/navigation/navbar.d.ts.map +1 -1
  795. package/dist/esm/components/navigation/navbar.js.map +1 -1
  796. package/dist/esm/components/navigation/sidebar.d.ts.map +1 -1
  797. package/dist/esm/components/navigation/sidebar.js.map +1 -1
  798. package/dist/esm/components/overlays/containers/OverlayContainer.d.ts.map +1 -1
  799. package/dist/esm/components/overlays/containers/OverlayContainer.js +36 -9
  800. package/dist/esm/components/overlays/containers/OverlayContainer.js.map +1 -1
  801. package/dist/esm/components/overlays/containers/OverlayContainer.labels.d.ts.map +1 -1
  802. package/dist/esm/components/overlays/containers/OverlayContainer.labels.js.map +1 -1
  803. package/dist/esm/components/overlays/containers/alert-dialog.d.ts.map +1 -1
  804. package/dist/esm/components/overlays/containers/alert-dialog.js.map +1 -1
  805. package/dist/esm/components/overlays/containers/alert.d.ts.map +1 -1
  806. package/dist/esm/components/overlays/containers/alert.js.map +1 -1
  807. package/dist/esm/components/overlays/containers/dialog.d.ts.map +1 -1
  808. package/dist/esm/components/overlays/containers/dialog.js.map +1 -1
  809. package/dist/esm/components/overlays/containers/dialog.shared-types.d.ts.map +1 -1
  810. package/dist/esm/components/overlays/containers/dialog.shared-types.js.map +1 -1
  811. package/dist/esm/components/overlays/containers/drawer.d.ts.map +1 -1
  812. package/dist/esm/components/overlays/containers/drawer.js.map +1 -1
  813. package/dist/esm/components/overlays/containers/navigation-overlay-container.utils.d.ts.map +1 -1
  814. package/dist/esm/components/overlays/containers/navigation-overlay-container.utils.js.map +1 -1
  815. package/dist/esm/components/overlays/containers/overlay-container-mode-resolution.utils.d.ts.map +1 -1
  816. package/dist/esm/components/overlays/containers/overlay-container-mode-resolution.utils.js.map +1 -1
  817. package/dist/esm/components/overlays/containers/sheet.d.ts.map +1 -1
  818. package/dist/esm/components/overlays/containers/sheet.js.map +1 -1
  819. package/dist/esm/components/overlays/floating/context-menu.d.ts +1 -1
  820. package/dist/esm/components/overlays/floating/context-menu.d.ts.map +1 -1
  821. package/dist/esm/components/overlays/floating/context-menu.js.map +1 -1
  822. package/dist/esm/components/overlays/floating/dropdown-menu.d.ts +1 -1
  823. package/dist/esm/components/overlays/floating/dropdown-menu.d.ts.map +1 -1
  824. package/dist/esm/components/overlays/floating/dropdown-menu.js.map +1 -1
  825. package/dist/esm/components/overlays/floating/hover-card.d.ts.map +1 -1
  826. package/dist/esm/components/overlays/floating/hover-card.js.map +1 -1
  827. package/dist/esm/components/overlays/floating/menu.shared-types.d.ts.map +1 -1
  828. package/dist/esm/components/overlays/floating/menu.shared-types.js.map +1 -1
  829. package/dist/esm/components/overlays/floating/popover.d.ts.map +1 -1
  830. package/dist/esm/components/overlays/floating/popover.js.map +1 -1
  831. package/dist/esm/components/overlays/floating/tooltip.d.ts.map +1 -1
  832. package/dist/esm/components/overlays/floating/tooltip.js.map +1 -1
  833. package/dist/esm/components/progression/ProgressionAchievementBadge.d.ts.map +1 -1
  834. package/dist/esm/components/progression/ProgressionAchievementBadge.js.map +1 -1
  835. package/dist/esm/components/progression/ProgressionAchievementBadge.labels.d.ts.map +1 -1
  836. package/dist/esm/components/progression/ProgressionAchievementBadge.labels.js.map +1 -1
  837. package/dist/esm/components/progression/ProgressionMilestoneTracker.d.ts.map +1 -1
  838. package/dist/esm/components/progression/ProgressionMilestoneTracker.js.map +1 -1
  839. package/dist/esm/components/progression/ProgressionMilestoneTracker.labels.d.ts.map +1 -1
  840. package/dist/esm/components/progression/ProgressionMilestoneTracker.labels.js.map +1 -1
  841. package/dist/esm/components/resources/CollectionSelectionControls.d.ts.map +1 -1
  842. package/dist/esm/components/resources/CollectionSelectionControls.js.map +1 -1
  843. package/dist/esm/components/resources/EphemeralFieldsRevealDialog.d.ts.map +1 -1
  844. package/dist/esm/components/resources/EphemeralFieldsRevealDialog.js.map +1 -1
  845. package/dist/esm/components/resources/InlineSearchInput.d.ts.map +1 -1
  846. package/dist/esm/components/resources/InlineSearchInput.js.map +1 -1
  847. package/dist/esm/components/resources/ResourceCollectionBody_Table.d.ts.map +1 -1
  848. package/dist/esm/components/resources/ResourceCollectionBody_Table.js.map +1 -1
  849. package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.d.ts.map +1 -1
  850. package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.js.map +1 -1
  851. package/dist/esm/components/resources/ResourceCollectionToolbar.d.ts.map +1 -1
  852. package/dist/esm/components/resources/ResourceCollectionToolbar.js.map +1 -1
  853. package/dist/esm/components/resources/ResourceInPlaceOperationRow.d.ts.map +1 -1
  854. package/dist/esm/components/resources/ResourceInPlaceOperationRow.js.map +1 -1
  855. package/dist/esm/components/resources/ResourceLayout_Action.d.ts.map +1 -1
  856. package/dist/esm/components/resources/ResourceLayout_Action.js.map +1 -1
  857. package/dist/esm/components/resources/ResourceLayout_Action.labels.d.ts.map +1 -1
  858. package/dist/esm/components/resources/ResourceLayout_Action.labels.js.map +1 -1
  859. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.d.ts.map +1 -1
  860. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.js.map +1 -1
  861. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.labels.d.ts.map +1 -1
  862. package/dist/esm/components/resources/ResourceLayout_Breadcrumb.labels.js.map +1 -1
  863. package/dist/esm/components/resources/ResourceLayout_CollectionActions.d.ts.map +1 -1
  864. package/dist/esm/components/resources/ResourceLayout_CollectionActions.js.map +1 -1
  865. package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.d.ts.map +1 -1
  866. package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.js.map +1 -1
  867. package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.labels.d.ts.map +1 -1
  868. package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.labels.js.map +1 -1
  869. package/dist/esm/components/resources/ResourceLayout_ContainerNested.d.ts.map +1 -1
  870. package/dist/esm/components/resources/ResourceLayout_ContainerNested.js +9 -0
  871. package/dist/esm/components/resources/ResourceLayout_ContainerNested.js.map +1 -1
  872. package/dist/esm/components/resources/ResourceLayout_ContainerNested.labels.d.ts.map +1 -1
  873. package/dist/esm/components/resources/ResourceLayout_ContainerNested.labels.js.map +1 -1
  874. package/dist/esm/components/resources/ResourceLayout_Create.d.ts.map +1 -1
  875. package/dist/esm/components/resources/ResourceLayout_Create.js.map +1 -1
  876. package/dist/esm/components/resources/ResourceLayout_Create.labels.d.ts.map +1 -1
  877. package/dist/esm/components/resources/ResourceLayout_Create.labels.js.map +1 -1
  878. package/dist/esm/components/resources/ResourceLayout_DangerZone.d.ts.map +1 -1
  879. package/dist/esm/components/resources/ResourceLayout_DangerZone.js.map +1 -1
  880. package/dist/esm/components/resources/ResourceLayout_DangerZone.labels.d.ts.map +1 -1
  881. package/dist/esm/components/resources/ResourceLayout_DangerZone.labels.js.map +1 -1
  882. package/dist/esm/components/resources/ResourceLayout_FilterChips.d.ts.map +1 -1
  883. package/dist/esm/components/resources/ResourceLayout_FilterChips.js +1 -1
  884. package/dist/esm/components/resources/ResourceLayout_FilterChips.js.map +1 -1
  885. package/dist/esm/components/resources/ResourceLayout_Filters.d.ts.map +1 -1
  886. package/dist/esm/components/resources/ResourceLayout_Filters.js.map +1 -1
  887. package/dist/esm/components/resources/ResourceLayout_Filters.labels.d.ts.map +1 -1
  888. package/dist/esm/components/resources/ResourceLayout_Filters.labels.js.map +1 -1
  889. package/dist/esm/components/resources/ResourceLayout_FiltersControl.d.ts.map +1 -1
  890. package/dist/esm/components/resources/ResourceLayout_FiltersControl.js.map +1 -1
  891. package/dist/esm/components/resources/ResourceLayout_Header.d.ts.map +1 -1
  892. package/dist/esm/components/resources/ResourceLayout_Header.js +1 -1
  893. package/dist/esm/components/resources/ResourceLayout_Header.js.map +1 -1
  894. package/dist/esm/components/resources/ResourceLayout_Header.labels.d.ts.map +1 -1
  895. package/dist/esm/components/resources/ResourceLayout_Header.labels.js.map +1 -1
  896. package/dist/esm/components/resources/ResourceLayout_InsertedViews.d.ts.map +1 -1
  897. package/dist/esm/components/resources/ResourceLayout_InsertedViews.js.map +1 -1
  898. package/dist/esm/components/resources/ResourceLayout_List.d.ts.map +1 -1
  899. package/dist/esm/components/resources/ResourceLayout_List.js.map +1 -1
  900. package/dist/esm/components/resources/ResourceLayout_List.labels.d.ts.map +1 -1
  901. package/dist/esm/components/resources/ResourceLayout_List.labels.js.map +1 -1
  902. package/dist/esm/components/resources/ResourceLayout_List_Table.d.ts.map +1 -1
  903. package/dist/esm/components/resources/ResourceLayout_List_Table.js.map +1 -1
  904. package/dist/esm/components/resources/ResourceLayout_OperationBulk.d.ts.map +1 -1
  905. package/dist/esm/components/resources/ResourceLayout_OperationBulk.js.map +1 -1
  906. package/dist/esm/components/resources/ResourceLayout_OperationBulk.labels.d.ts.map +1 -1
  907. package/dist/esm/components/resources/ResourceLayout_OperationBulk.labels.js.map +1 -1
  908. package/dist/esm/components/resources/ResourceLayout_OperationsItems.d.ts.map +1 -1
  909. package/dist/esm/components/resources/ResourceLayout_OperationsItems.js.map +1 -1
  910. package/dist/esm/components/resources/ResourceLayout_OperationsItems.labels.d.ts.map +1 -1
  911. package/dist/esm/components/resources/ResourceLayout_OperationsItems.labels.js.map +1 -1
  912. package/dist/esm/components/resources/ResourceLayout_Pagination.d.ts.map +1 -1
  913. package/dist/esm/components/resources/ResourceLayout_Pagination.js.map +1 -1
  914. package/dist/esm/components/resources/ResourceLayout_Pagination.labels.d.ts.map +1 -1
  915. package/dist/esm/components/resources/ResourceLayout_Pagination.labels.js.map +1 -1
  916. package/dist/esm/components/resources/ResourceLayout_Read.d.ts.map +1 -1
  917. package/dist/esm/components/resources/ResourceLayout_Read.js.map +1 -1
  918. package/dist/esm/components/resources/ResourceLayout_Read.labels.d.ts.map +1 -1
  919. package/dist/esm/components/resources/ResourceLayout_Read.labels.js.map +1 -1
  920. package/dist/esm/components/resources/ResourceLayout_ReadSummary.d.ts.map +1 -1
  921. package/dist/esm/components/resources/ResourceLayout_ReadSummary.js.map +1 -1
  922. package/dist/esm/components/resources/ResourceLayout_ReadSummary.labels.d.ts.map +1 -1
  923. package/dist/esm/components/resources/ResourceLayout_ReadSummary.labels.js.map +1 -1
  924. package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.d.ts.map +1 -1
  925. package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.js.map +1 -1
  926. package/dist/esm/components/resources/ResourceLayout_Read_Expandable.d.ts.map +1 -1
  927. package/dist/esm/components/resources/ResourceLayout_Read_Expandable.js.map +1 -1
  928. package/dist/esm/components/resources/ResourceLayout_Search.d.ts.map +1 -1
  929. package/dist/esm/components/resources/ResourceLayout_Search.js.map +1 -1
  930. package/dist/esm/components/resources/ResourceLayout_Search.labels.d.ts.map +1 -1
  931. package/dist/esm/components/resources/ResourceLayout_Search.labels.js.map +1 -1
  932. package/dist/esm/components/resources/ResourceLayout_Search_Table.d.ts.map +1 -1
  933. package/dist/esm/components/resources/ResourceLayout_Search_Table.js.map +1 -1
  934. package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.d.ts.map +1 -1
  935. package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.js.map +1 -1
  936. package/dist/esm/components/resources/ResourceLayout_SortControl.d.ts.map +1 -1
  937. package/dist/esm/components/resources/ResourceLayout_SortControl.js.map +1 -1
  938. package/dist/esm/components/resources/ResourceLayout_Update.d.ts.map +1 -1
  939. package/dist/esm/components/resources/ResourceLayout_Update.js.map +1 -1
  940. package/dist/esm/components/resources/ResourceLayout_Update.labels.d.ts.map +1 -1
  941. package/dist/esm/components/resources/ResourceLayout_Update.labels.js.map +1 -1
  942. package/dist/esm/components/resources/ResourceListItemRenderer.d.ts.map +1 -1
  943. package/dist/esm/components/resources/ResourceListItemRenderer.js +1 -1
  944. package/dist/esm/components/resources/ResourceListItemRenderer.js.map +1 -1
  945. package/dist/esm/components/resources/ResourceOperationActionPopover.d.ts.map +1 -1
  946. package/dist/esm/components/resources/ResourceOperationActionPopover.js.map +1 -1
  947. package/dist/esm/components/resources/ResourceOperationSurface.d.ts.map +1 -1
  948. package/dist/esm/components/resources/ResourceOperationSurface.js.map +1 -1
  949. package/dist/esm/components/resources/ResourceOwnedViewEmbeds.d.ts.map +1 -1
  950. package/dist/esm/components/resources/ResourceOwnedViewEmbeds.js.map +1 -1
  951. package/dist/esm/components/resources/ResourceViewModeToggle.d.ts.map +1 -1
  952. package/dist/esm/components/resources/ResourceViewModeToggle.js.map +1 -1
  953. package/dist/esm/components/resources/card-action-placement.utils.d.ts.map +1 -1
  954. package/dist/esm/components/resources/card-action-placement.utils.js.map +1 -1
  955. package/dist/esm/components/resources/collection-card-layout.utils.d.ts.map +1 -1
  956. package/dist/esm/components/resources/collection-card-layout.utils.js.map +1 -1
  957. package/dist/esm/components/resources/collection-view-mode.frontend.d.ts.map +1 -1
  958. package/dist/esm/components/resources/collection-view-mode.frontend.js.map +1 -1
  959. package/dist/esm/components/resources/component-props.resources-layout.frontend.schemas.d.ts.map +1 -1
  960. package/dist/esm/components/resources/component-props.resources-layout.frontend.schemas.js.map +1 -1
  961. package/dist/esm/components/resources/embeds/ComposedChildrenRegistry.d.ts.map +1 -1
  962. package/dist/esm/components/resources/embeds/ComposedChildrenRegistry.js.map +1 -1
  963. package/dist/esm/components/resources/embeds/EmbeddedResourceDescent.d.ts.map +1 -1
  964. package/dist/esm/components/resources/embeds/EmbeddedResourceDescent.js.map +1 -1
  965. package/dist/esm/components/resources/embeds/EmbeddedResourceHostContext.d.ts.map +1 -1
  966. package/dist/esm/components/resources/embeds/EmbeddedResourceHostContext.js.map +1 -1
  967. package/dist/esm/components/resources/embeds/RelatedResourcePreview.d.ts.map +1 -1
  968. package/dist/esm/components/resources/embeds/RelatedResourcePreview.js.map +1 -1
  969. package/dist/esm/components/resources/embeds/RelatedResourceSections.d.ts.map +1 -1
  970. package/dist/esm/components/resources/embeds/RelatedResourceSections.js.map +1 -1
  971. package/dist/esm/components/resources/embeds/ResourceEmbeds.d.ts.map +1 -1
  972. package/dist/esm/components/resources/embeds/ResourceEmbeds.js.map +1 -1
  973. package/dist/esm/components/resources/embeds/child-operation-addressability.utils.d.ts.map +1 -1
  974. package/dist/esm/components/resources/embeds/child-operation-addressability.utils.js.map +1 -1
  975. package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.d.ts.map +1 -1
  976. package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.js.map +1 -1
  977. package/dist/esm/components/resources/inserted-resource-view.frontend.utils.d.ts.map +1 -1
  978. package/dist/esm/components/resources/inserted-resource-view.frontend.utils.js.map +1 -1
  979. package/dist/esm/components/resources/resource-operation-custom-view.contracts.d.ts.map +1 -1
  980. package/dist/esm/components/resources/resource-operation-custom-view.contracts.js.map +1 -1
  981. package/dist/esm/components/resources/resourceLayout.utils.d.ts.map +1 -1
  982. package/dist/esm/components/resources/resourceLayout.utils.js.map +1 -1
  983. package/dist/esm/components/resources/skeleton/ArrayField.d.ts.map +1 -1
  984. package/dist/esm/components/resources/skeleton/ArrayField.js.map +1 -1
  985. package/dist/esm/components/resources/skeleton/ArrayItemTemplate.d.ts.map +1 -1
  986. package/dist/esm/components/resources/skeleton/ArrayItemTemplate.js.map +1 -1
  987. package/dist/esm/components/resources/skeleton/DiscriminatorSwitch.d.ts.map +1 -1
  988. package/dist/esm/components/resources/skeleton/DiscriminatorSwitch.js.map +1 -1
  989. package/dist/esm/components/resources/skeleton/DisplayLayout.d.ts.map +1 -1
  990. package/dist/esm/components/resources/skeleton/DisplayLayout.js.map +1 -1
  991. package/dist/esm/components/resources/skeleton/Divider.d.ts.map +1 -1
  992. package/dist/esm/components/resources/skeleton/Divider.js.map +1 -1
  993. package/dist/esm/components/resources/skeleton/FieldScopeContext.d.ts.map +1 -1
  994. package/dist/esm/components/resources/skeleton/FieldScopeContext.js.map +1 -1
  995. package/dist/esm/components/resources/skeleton/FormErrorSummarySlot.d.ts.map +1 -1
  996. package/dist/esm/components/resources/skeleton/FormErrorSummarySlot.js.map +1 -1
  997. package/dist/esm/components/resources/skeleton/FormLayout.d.ts.map +1 -1
  998. package/dist/esm/components/resources/skeleton/FormLayout.js.map +1 -1
  999. package/dist/esm/components/resources/skeleton/FormLayoutSlotContext.d.ts.map +1 -1
  1000. package/dist/esm/components/resources/skeleton/FormLayoutSlotContext.js.map +1 -1
  1001. package/dist/esm/components/resources/skeleton/Group.d.ts.map +1 -1
  1002. package/dist/esm/components/resources/skeleton/Group.js.map +1 -1
  1003. package/dist/esm/components/resources/skeleton/ObjectScope.d.ts.map +1 -1
  1004. package/dist/esm/components/resources/skeleton/ObjectScope.js.map +1 -1
  1005. package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.d.ts +12 -0
  1006. package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.d.ts.map +1 -1
  1007. package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.js +13 -1
  1008. package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.js.map +1 -1
  1009. package/dist/esm/components/resources/skeleton/Section.d.ts.map +1 -1
  1010. package/dist/esm/components/resources/skeleton/Section.js.map +1 -1
  1011. package/dist/esm/components/resources/skeleton/Section.shared.d.ts.map +1 -1
  1012. package/dist/esm/components/resources/skeleton/Section.shared.js.map +1 -1
  1013. package/dist/esm/components/resources/skeleton/SectionFieldsContext.d.ts.map +1 -1
  1014. package/dist/esm/components/resources/skeleton/SectionFieldsContext.js.map +1 -1
  1015. package/dist/esm/components/resources/skeleton/SectionHostHeadingContext.d.ts.map +1 -1
  1016. package/dist/esm/components/resources/skeleton/SectionHostHeadingContext.js.map +1 -1
  1017. package/dist/esm/components/resources/skeleton/SectionPresentationContext.d.ts.map +1 -1
  1018. package/dist/esm/components/resources/skeleton/SectionPresentationContext.js.map +1 -1
  1019. package/dist/esm/components/resources/skeleton/SubmitButton.d.ts.map +1 -1
  1020. package/dist/esm/components/resources/skeleton/SubmitButton.js.map +1 -1
  1021. package/dist/esm/components/resources/skeleton/SummaryHeader.d.ts.map +1 -1
  1022. package/dist/esm/components/resources/skeleton/SummaryHeader.js.map +1 -1
  1023. package/dist/esm/components/resources/skeleton/SummaryLayout.d.ts.map +1 -1
  1024. package/dist/esm/components/resources/skeleton/SummaryLayout.js.map +1 -1
  1025. package/dist/esm/components/resources/skeleton/SummaryMeta.d.ts.map +1 -1
  1026. package/dist/esm/components/resources/skeleton/SummaryMeta.js.map +1 -1
  1027. package/dist/esm/components/resources/skeleton/SummaryTitle.d.ts.map +1 -1
  1028. package/dist/esm/components/resources/skeleton/SummaryTitle.js.map +1 -1
  1029. package/dist/esm/components/resources/skeleton/WizardLayout.d.ts.map +1 -1
  1030. package/dist/esm/components/resources/skeleton/WizardLayout.js.map +1 -1
  1031. package/dist/esm/components/resources/skeleton/WizardLayoutContext.d.ts.map +1 -1
  1032. package/dist/esm/components/resources/skeleton/WizardLayoutContext.js.map +1 -1
  1033. package/dist/esm/components/resources/skeleton/WizardStep.d.ts.map +1 -1
  1034. package/dist/esm/components/resources/skeleton/WizardStep.js.map +1 -1
  1035. package/dist/esm/components/resources/skeleton/WizardStepFieldsContext.d.ts.map +1 -1
  1036. package/dist/esm/components/resources/skeleton/WizardStepFieldsContext.js.map +1 -1
  1037. package/dist/esm/components/resources/skeleton/section-consolidation.shared.d.ts.map +1 -1
  1038. package/dist/esm/components/resources/skeleton/section-consolidation.shared.js.map +1 -1
  1039. package/dist/esm/components/resources/skeleton/section-consolidation.utils.d.ts.map +1 -1
  1040. package/dist/esm/components/resources/skeleton/section-consolidation.utils.js.map +1 -1
  1041. package/dist/esm/components/resources/useInlineSearch.d.ts.map +1 -1
  1042. package/dist/esm/components/resources/useInlineSearch.js.map +1 -1
  1043. package/dist/esm/components/resources/useLongPress.d.ts.map +1 -1
  1044. package/dist/esm/components/resources/useLongPress.js.map +1 -1
  1045. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.d.ts.map +1 -1
  1046. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.js.map +1 -1
  1047. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.d.ts.map +1 -1
  1048. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.js.map +1 -1
  1049. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.labels.d.ts.map +1 -1
  1050. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.labels.js.map +1 -1
  1051. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Search.d.ts.map +1 -1
  1052. package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Search.js.map +1 -1
  1053. package/dist/esm/components/resources-fields/resource-reference/ResourceFieldDisplay_ResourceReference.d.ts.map +1 -1
  1054. package/dist/esm/components/resources-fields/resource-reference/ResourceFieldDisplay_ResourceReference.js.map +1 -1
  1055. package/dist/esm/components/resources-fields/resource-reference/ResourceFieldEdit_ResourceReference.d.ts.map +1 -1
  1056. package/dist/esm/components/resources-fields/resource-reference/ResourceFieldEdit_ResourceReference.js.map +1 -1
  1057. package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.d.ts.map +1 -1
  1058. package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.js.map +1 -1
  1059. package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.d.ts.map +1 -1
  1060. package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.js.map +1 -1
  1061. package/dist/esm/components/sections/ContentSectionContainer.d.ts.map +1 -1
  1062. package/dist/esm/components/sections/ContentSectionContainer.js.map +1 -1
  1063. package/dist/esm/components/sections/ContentSectionContainer.labels.d.ts.map +1 -1
  1064. package/dist/esm/components/sections/ContentSectionContainer.labels.js.map +1 -1
  1065. package/dist/esm/components/sections/accordion.d.ts.map +1 -1
  1066. package/dist/esm/components/sections/accordion.js.map +1 -1
  1067. package/dist/esm/components/sections/card.d.ts.map +1 -1
  1068. package/dist/esm/components/sections/card.js.map +1 -1
  1069. package/dist/esm/components/sections/collapsible.d.ts.map +1 -1
  1070. package/dist/esm/components/sections/collapsible.js.map +1 -1
  1071. package/dist/esm/components/sections/content-section.d.ts.map +1 -1
  1072. package/dist/esm/components/sections/content-section.js.map +1 -1
  1073. package/dist/esm/components/sections/pagination.d.ts.map +1 -1
  1074. package/dist/esm/components/sections/pagination.js.map +1 -1
  1075. package/dist/esm/components/sections/section-grouping.shared.d.ts.map +1 -1
  1076. package/dist/esm/components/sections/section-grouping.shared.js.map +1 -1
  1077. package/dist/esm/components/sections/stacked-layout.d.ts.map +1 -1
  1078. package/dist/esm/components/sections/stacked-layout.js.map +1 -1
  1079. package/dist/esm/components/sections/stepper.d.ts.map +1 -1
  1080. package/dist/esm/components/sections/stepper.js.map +1 -1
  1081. package/dist/esm/components/sections/surface.d.ts.map +1 -1
  1082. package/dist/esm/components/sections/surface.js.map +1 -1
  1083. package/dist/esm/components/sections/table.d.ts.map +1 -1
  1084. package/dist/esm/components/sections/table.js.map +1 -1
  1085. package/dist/esm/components/sections/tabs.d.ts.map +1 -1
  1086. package/dist/esm/components/sections/tabs.js.map +1 -1
  1087. package/dist/esm/components/settings/AppPage_AppearanceSettings.d.ts.map +1 -1
  1088. package/dist/esm/components/settings/AppPage_AppearanceSettings.js.map +1 -1
  1089. package/dist/esm/components/settings/AppPage_AppearanceSettings.labels.d.ts.map +1 -1
  1090. package/dist/esm/components/settings/AppPage_AppearanceSettings.labels.js.map +1 -1
  1091. package/dist/esm/components/settings/AppPage_BillingSettings.d.ts.map +1 -1
  1092. package/dist/esm/components/settings/AppPage_BillingSettings.js.map +1 -1
  1093. package/dist/esm/components/settings/AppPage_BillingSettings.labels.d.ts.map +1 -1
  1094. package/dist/esm/components/settings/AppPage_BillingSettings.labels.js.map +1 -1
  1095. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts +121 -0
  1096. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts.map +1 -0
  1097. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.js +386 -0
  1098. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.js.map +1 -0
  1099. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.d.ts +3 -0
  1100. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.d.ts.map +1 -0
  1101. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.js +56 -0
  1102. package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.js.map +1 -0
  1103. package/dist/esm/components/settings/AppPage_InvitationsSettings.d.ts.map +1 -1
  1104. package/dist/esm/components/settings/AppPage_InvitationsSettings.js.map +1 -1
  1105. package/dist/esm/components/settings/AppPage_InvitationsSettings.labels.d.ts.map +1 -1
  1106. package/dist/esm/components/settings/AppPage_InvitationsSettings.labels.js.map +1 -1
  1107. package/dist/esm/components/settings/SettingsHub.d.ts.map +1 -1
  1108. package/dist/esm/components/settings/SettingsHub.js +32 -5
  1109. package/dist/esm/components/settings/SettingsHub.js.map +1 -1
  1110. package/dist/esm/components/settings/SettingsHub.labels.d.ts.map +1 -1
  1111. package/dist/esm/components/settings/SettingsHub.labels.js.map +1 -1
  1112. package/dist/esm/components/settings/SettingsResourceOperationPanel.d.ts.map +1 -1
  1113. package/dist/esm/components/settings/SettingsResourceOperationPanel.js.map +1 -1
  1114. package/dist/esm/components/settings/SettingsSectionNavigationHost.d.ts.map +1 -1
  1115. package/dist/esm/components/settings/SettingsSectionNavigationHost.js.map +1 -1
  1116. package/dist/esm/components/typography/heading.d.ts.map +1 -1
  1117. package/dist/esm/components/typography/heading.js.map +1 -1
  1118. package/dist/esm/components/typography/label.d.ts.map +1 -1
  1119. package/dist/esm/components/typography/label.js.map +1 -1
  1120. package/dist/esm/components/typography/link.d.ts.map +1 -1
  1121. package/dist/esm/components/typography/link.js.map +1 -1
  1122. package/dist/esm/components/typography/text.d.ts.map +1 -1
  1123. package/dist/esm/components/typography/text.js.map +1 -1
  1124. package/dist/esm/components/typography/truncated-text.d.ts.map +1 -1
  1125. package/dist/esm/components/typography/truncated-text.js.map +1 -1
  1126. package/dist/esm/components/views/ViewLayout_Header.d.ts.map +1 -1
  1127. package/dist/esm/components/views/ViewLayout_Header.js.map +1 -1
  1128. package/dist/esm/components/views/ViewNotFound.d.ts.map +1 -1
  1129. package/dist/esm/components/views/ViewNotFound.js.map +1 -1
  1130. package/dist/esm/components/views/ViewNotFound.labels.d.ts.map +1 -1
  1131. package/dist/esm/components/views/ViewNotFound.labels.js.map +1 -1
  1132. package/dist/esm/components/views/chart-view/ChartEmptyState.d.ts.map +1 -1
  1133. package/dist/esm/components/views/chart-view/ChartEmptyState.js.map +1 -1
  1134. package/dist/esm/components/views/chart-view/ChartErrorState.d.ts.map +1 -1
  1135. package/dist/esm/components/views/chart-view/ChartErrorState.js.map +1 -1
  1136. package/dist/esm/components/views/chart-view/ChartLoadingSkeleton.d.ts.map +1 -1
  1137. package/dist/esm/components/views/chart-view/ChartLoadingSkeleton.js.map +1 -1
  1138. package/dist/esm/components/views/chart-view/ChartView.d.ts.map +1 -1
  1139. package/dist/esm/components/views/chart-view/ChartView.js.map +1 -1
  1140. package/dist/esm/components/views/chart-view/ChartView.labels.d.ts.map +1 -1
  1141. package/dist/esm/components/views/chart-view/ChartView.labels.js.map +1 -1
  1142. package/dist/esm/components/views/chart-view/ChartView.lazy.d.ts.map +1 -1
  1143. package/dist/esm/components/views/chart-view/ChartView.lazy.js.map +1 -1
  1144. package/dist/esm/components/views/chart-view/ChartWidget.d.ts.map +1 -1
  1145. package/dist/esm/components/views/chart-view/ChartWidget.js.map +1 -1
  1146. package/dist/esm/components/views/chart-view/ChartWidget.labels.d.ts.map +1 -1
  1147. package/dist/esm/components/views/chart-view/ChartWidget.labels.js.map +1 -1
  1148. package/dist/esm/components/views/chart-view/WildoEChart.d.ts.map +1 -1
  1149. package/dist/esm/components/views/chart-view/WildoEChart.js.map +1 -1
  1150. package/dist/esm/components/views/chart-view/chart-export.utils.d.ts.map +1 -1
  1151. package/dist/esm/components/views/chart-view/chart-export.utils.js.map +1 -1
  1152. package/dist/esm/components/views/chart-view/chart-runtime.utils.d.ts.map +1 -1
  1153. package/dist/esm/components/views/chart-view/chart-runtime.utils.js.map +1 -1
  1154. package/dist/esm/components/views/chart-view/chart-theme-bridge.d.ts.map +1 -1
  1155. package/dist/esm/components/views/chart-view/chart-theme-bridge.js.map +1 -1
  1156. package/dist/esm/components/views/chart-view/chart-view.utils.d.ts.map +1 -1
  1157. package/dist/esm/components/views/chart-view/chart-view.utils.js.map +1 -1
  1158. package/dist/esm/components/views/chart-view/dev/ChartView.example.d.ts.map +1 -1
  1159. package/dist/esm/components/views/chart-view/dev/ChartView.example.js.map +1 -1
  1160. package/dist/esm/components/views/chart-view/echarts-setup.d.ts.map +1 -1
  1161. package/dist/esm/components/views/chart-view/echarts-setup.js.map +1 -1
  1162. package/dist/esm/components/views/chart-view/enum-color-bridge.d.ts.map +1 -1
  1163. package/dist/esm/components/views/chart-view/enum-color-bridge.js.map +1 -1
  1164. package/dist/esm/components/views/chart-view/option-builder/builder-utils.d.ts.map +1 -1
  1165. package/dist/esm/components/views/chart-view/option-builder/builder-utils.js.map +1 -1
  1166. package/dist/esm/components/views/chart-view/option-builder/builders/bar-family.builder.d.ts.map +1 -1
  1167. package/dist/esm/components/views/chart-view/option-builder/builders/bar-family.builder.js.map +1 -1
  1168. package/dist/esm/components/views/chart-view/option-builder/builders/composed.builder.d.ts.map +1 -1
  1169. package/dist/esm/components/views/chart-view/option-builder/builders/composed.builder.js.map +1 -1
  1170. package/dist/esm/components/views/chart-view/option-builder/builders/funnel.builder.d.ts.map +1 -1
  1171. package/dist/esm/components/views/chart-view/option-builder/builders/funnel.builder.js.map +1 -1
  1172. package/dist/esm/components/views/chart-view/option-builder/builders/gauge.builder.d.ts.map +1 -1
  1173. package/dist/esm/components/views/chart-view/option-builder/builders/gauge.builder.js.map +1 -1
  1174. package/dist/esm/components/views/chart-view/option-builder/builders/heatmap.builder.d.ts.map +1 -1
  1175. package/dist/esm/components/views/chart-view/option-builder/builders/heatmap.builder.js.map +1 -1
  1176. package/dist/esm/components/views/chart-view/option-builder/builders/hierarchical-family.builder.d.ts.map +1 -1
  1177. package/dist/esm/components/views/chart-view/option-builder/builders/hierarchical-family.builder.js.map +1 -1
  1178. package/dist/esm/components/views/chart-view/option-builder/builders/line-family.builder.d.ts.map +1 -1
  1179. package/dist/esm/components/views/chart-view/option-builder/builders/line-family.builder.js.map +1 -1
  1180. package/dist/esm/components/views/chart-view/option-builder/builders/parallel.builder.d.ts.map +1 -1
  1181. package/dist/esm/components/views/chart-view/option-builder/builders/parallel.builder.js.map +1 -1
  1182. package/dist/esm/components/views/chart-view/option-builder/builders/pie-family.builder.d.ts.map +1 -1
  1183. package/dist/esm/components/views/chart-view/option-builder/builders/pie-family.builder.js.map +1 -1
  1184. package/dist/esm/components/views/chart-view/option-builder/builders/radar.builder.d.ts.map +1 -1
  1185. package/dist/esm/components/views/chart-view/option-builder/builders/radar.builder.js.map +1 -1
  1186. package/dist/esm/components/views/chart-view/option-builder/builders/sankey.builder.d.ts.map +1 -1
  1187. package/dist/esm/components/views/chart-view/option-builder/builders/sankey.builder.js.map +1 -1
  1188. package/dist/esm/components/views/chart-view/option-builder/builders/scatter-family.builder.d.ts.map +1 -1
  1189. package/dist/esm/components/views/chart-view/option-builder/builders/scatter-family.builder.js.map +1 -1
  1190. package/dist/esm/components/views/chart-view/option-builder/builders/statistical-family.builder.d.ts.map +1 -1
  1191. package/dist/esm/components/views/chart-view/option-builder/builders/statistical-family.builder.js.map +1 -1
  1192. package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.d.ts.map +1 -1
  1193. package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.js.map +1 -1
  1194. package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.d.ts.map +1 -1
  1195. package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.js.map +1 -1
  1196. package/dist/esm/components/views/composite-view/CompositeLayout.d.ts.map +1 -1
  1197. package/dist/esm/components/views/composite-view/CompositeLayout.js.map +1 -1
  1198. package/dist/esm/components/views/composite-view/CompositeView.d.ts.map +1 -1
  1199. package/dist/esm/components/views/composite-view/CompositeView.js.map +1 -1
  1200. package/dist/esm/components/views/composite-view/CompositeViewContext.d.ts.map +1 -1
  1201. package/dist/esm/components/views/composite-view/CompositeViewContext.js.map +1 -1
  1202. package/dist/esm/components/views/composite-view/useCompositeResourceOperationContextBuilder.d.ts.map +1 -1
  1203. package/dist/esm/components/views/composite-view/useCompositeResourceOperationContextBuilder.js.map +1 -1
  1204. package/dist/esm/components/views/composite-view/useHostRecordDerivedParentContext.d.ts.map +1 -1
  1205. package/dist/esm/components/views/composite-view/useHostRecordDerivedParentContext.js.map +1 -1
  1206. package/dist/esm/components/views/execution-view/ExecutionView.d.ts.map +1 -1
  1207. package/dist/esm/components/views/execution-view/ExecutionView.js.map +1 -1
  1208. package/dist/esm/components/views/execution-view/ExecutionView.labels.d.ts.map +1 -1
  1209. package/dist/esm/components/views/execution-view/ExecutionView.labels.js.map +1 -1
  1210. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.d.ts.map +1 -1
  1211. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.js +11 -7
  1212. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.js.map +1 -1
  1213. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.d.ts.map +1 -1
  1214. package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.js.map +1 -1
  1215. package/dist/esm/components/views/full-custom-view/FullCustomView.d.ts.map +1 -1
  1216. package/dist/esm/components/views/full-custom-view/FullCustomView.js.map +1 -1
  1217. package/dist/esm/components/views/onboarding-view/OnboardingView.d.ts.map +1 -1
  1218. package/dist/esm/components/views/onboarding-view/OnboardingView.js +9 -2
  1219. package/dist/esm/components/views/onboarding-view/OnboardingView.js.map +1 -1
  1220. package/dist/esm/components/views/onboarding-view/OnboardingView.labels.d.ts.map +1 -1
  1221. package/dist/esm/components/views/onboarding-view/OnboardingView.labels.js.map +1 -1
  1222. package/dist/esm/components/views/onboarding-view/onboarding-view.utils.d.ts.map +1 -1
  1223. package/dist/esm/components/views/onboarding-view/onboarding-view.utils.js.map +1 -1
  1224. package/dist/esm/core/app-shell/PortalContainerContext.d.ts.map +1 -1
  1225. package/dist/esm/core/app-shell/PortalContainerContext.js.map +1 -1
  1226. package/dist/esm/core/app-shell/app-shell.schemas.d.ts +40 -18
  1227. package/dist/esm/core/app-shell/app-shell.schemas.d.ts.map +1 -1
  1228. package/dist/esm/core/app-shell/app-shell.schemas.js +0 -5
  1229. package/dist/esm/core/app-shell/app-shell.schemas.js.map +1 -1
  1230. package/dist/esm/core/app-shell/app-shell.utils.d.ts.map +1 -1
  1231. package/dist/esm/core/app-shell/app-shell.utils.js.map +1 -1
  1232. package/dist/esm/core/app-shell/hosted-components.utils.d.ts.map +1 -1
  1233. package/dist/esm/core/app-shell/hosted-components.utils.js.map +1 -1
  1234. package/dist/esm/core/app-shell/useAppShellLayout.d.ts.map +1 -1
  1235. package/dist/esm/core/app-shell/useAppShellLayout.js.map +1 -1
  1236. package/dist/esm/core/app-shell/usePublicShellLayout.d.ts.map +1 -1
  1237. package/dist/esm/core/app-shell/usePublicShellLayout.js.map +1 -1
  1238. package/dist/esm/core/automated-layout/automated-layout.frontend.schemas.d.ts +16 -0
  1239. package/dist/esm/core/automated-layout/automated-layout.frontend.schemas.d.ts.map +1 -1
  1240. package/dist/esm/core/automated-layout/automated-layout.frontend.schemas.js +17 -0
  1241. package/dist/esm/core/automated-layout/automated-layout.frontend.schemas.js.map +1 -1
  1242. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.d.ts +31 -11
  1243. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.d.ts.map +1 -1
  1244. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.js +34 -25
  1245. package/dist/esm/core/automated-layout/automated-layout.frontend.utils.js.map +1 -1
  1246. package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.d.ts +30 -4
  1247. package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.d.ts.map +1 -1
  1248. package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.js +233 -17
  1249. package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.js.map +1 -1
  1250. package/dist/esm/core/billing/BillingContext.d.ts +36 -0
  1251. package/dist/esm/core/billing/BillingContext.d.ts.map +1 -1
  1252. package/dist/esm/core/billing/BillingContext.js +1 -0
  1253. package/dist/esm/core/billing/BillingContext.js.map +1 -1
  1254. package/dist/esm/core/billing/BillingErrorNotifier.d.ts.map +1 -1
  1255. package/dist/esm/core/billing/BillingErrorNotifier.js.map +1 -1
  1256. package/dist/esm/core/billing/billing-launcher.d.ts.map +1 -1
  1257. package/dist/esm/core/billing/billing-launcher.js +1 -1
  1258. package/dist/esm/core/billing/billing-launcher.js.map +1 -1
  1259. package/dist/esm/core/billing/billing-provider-display.frontend.utils.d.ts.map +1 -1
  1260. package/dist/esm/core/billing/billing-provider-display.frontend.utils.js.map +1 -1
  1261. package/dist/esm/core/billing/useBilling.d.ts.map +1 -1
  1262. package/dist/esm/core/billing/useBilling.js.map +1 -1
  1263. package/dist/esm/core/billing/useBillingAction.d.ts.map +1 -1
  1264. package/dist/esm/core/billing/useBillingAction.js.map +1 -1
  1265. package/dist/esm/core/billing/useSafeBillingActionExecutor.d.ts.map +1 -1
  1266. package/dist/esm/core/billing/useSafeBillingActionExecutor.js.map +1 -1
  1267. package/dist/esm/core/branding/useBrandIdentity.d.ts +17 -0
  1268. package/dist/esm/core/branding/useBrandIdentity.d.ts.map +1 -1
  1269. package/dist/esm/core/branding/useBrandIdentity.js +17 -0
  1270. package/dist/esm/core/branding/useBrandIdentity.js.map +1 -1
  1271. package/dist/esm/core/branding/useBrandPresentation.d.ts.map +1 -1
  1272. package/dist/esm/core/branding/useBrandPresentation.js.map +1 -1
  1273. package/dist/esm/core/commons/devices.frontend.schemas.d.ts.map +1 -1
  1274. package/dist/esm/core/commons/devices.frontend.schemas.js.map +1 -1
  1275. package/dist/esm/core/commons/local-storage.frontend.schemas.d.ts.map +1 -1
  1276. package/dist/esm/core/commons/local-storage.frontend.schemas.js.map +1 -1
  1277. package/dist/esm/core/commons/window-event.frontend.schemas.d.ts.map +1 -1
  1278. package/dist/esm/core/commons/window-event.frontend.schemas.js.map +1 -1
  1279. package/dist/esm/core/companion/companion-exports.frontend.definitions.d.ts.map +1 -1
  1280. package/dist/esm/core/companion/companion-exports.frontend.definitions.js.map +1 -1
  1281. package/dist/esm/core/components-registry/ComponentNotInjected.d.ts.map +1 -1
  1282. package/dist/esm/core/components-registry/ComponentNotInjected.js.map +1 -1
  1283. package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.d.ts.map +1 -1
  1284. package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.js +1 -0
  1285. package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.js.map +1 -1
  1286. package/dist/esm/core/components-registry/component-registry-loader.frontend.service.d.ts.map +1 -1
  1287. package/dist/esm/core/components-registry/component-registry-loader.frontend.service.js.map +1 -1
  1288. package/dist/esm/core/components-registry/component-registry.frontend.schemas.d.ts.map +1 -1
  1289. package/dist/esm/core/components-registry/component-registry.frontend.schemas.js.map +1 -1
  1290. package/dist/esm/core/components-registry/component-registry.frontend.service.d.ts.map +1 -1
  1291. package/dist/esm/core/components-registry/component-registry.frontend.service.js +4 -1
  1292. package/dist/esm/core/components-registry/component-registry.frontend.service.js.map +1 -1
  1293. package/dist/esm/core/components-registry/component-resolver.frontend.helper.d.ts.map +1 -1
  1294. package/dist/esm/core/components-registry/component-resolver.frontend.helper.js +8 -1
  1295. package/dist/esm/core/components-registry/component-resolver.frontend.helper.js.map +1 -1
  1296. package/dist/esm/core/components-registry/provider-component-registry.frontend.service.d.ts +188 -0
  1297. package/dist/esm/core/components-registry/provider-component-registry.frontend.service.d.ts.map +1 -0
  1298. package/dist/esm/core/components-registry/provider-component-registry.frontend.service.js +255 -0
  1299. package/dist/esm/core/components-registry/provider-component-registry.frontend.service.js.map +1 -0
  1300. package/dist/esm/core/components-registry/register-framework-layouts.d.ts.map +1 -1
  1301. package/dist/esm/core/components-registry/register-framework-layouts.js +2 -0
  1302. package/dist/esm/core/components-registry/register-framework-layouts.js.map +1 -1
  1303. package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.d.ts +76 -0
  1304. package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.d.ts.map +1 -0
  1305. package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.js +99 -0
  1306. package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.js.map +1 -0
  1307. package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts +15 -5
  1308. package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts.map +1 -1
  1309. package/dist/esm/core/config/app-configuration-frontend.schemas.js.map +1 -1
  1310. package/dist/esm/core/config/app-level-components.frontend.schemas.d.ts +44 -7
  1311. package/dist/esm/core/config/app-level-components.frontend.schemas.d.ts.map +1 -1
  1312. package/dist/esm/core/config/app-level-components.frontend.schemas.js +44 -7
  1313. package/dist/esm/core/config/app-level-components.frontend.schemas.js.map +1 -1
  1314. package/dist/esm/core/config/chart-view.frontend.schemas.d.ts +14 -14
  1315. package/dist/esm/core/config/chart-view.frontend.schemas.d.ts.map +1 -1
  1316. package/dist/esm/core/config/chart-view.frontend.schemas.js.map +1 -1
  1317. package/dist/esm/core/config/composite-view.schemas.d.ts.map +1 -1
  1318. package/dist/esm/core/config/composite-view.schemas.js.map +1 -1
  1319. package/dist/esm/core/config/config-merge-utilities.d.ts.map +1 -1
  1320. package/dist/esm/core/config/config-merge-utilities.js.map +1 -1
  1321. package/dist/esm/core/config/engine-settings-destinations.d.ts +0 -49
  1322. package/dist/esm/core/config/engine-settings-destinations.d.ts.map +1 -1
  1323. package/dist/esm/core/config/engine-settings-destinations.js +102 -56
  1324. package/dist/esm/core/config/engine-settings-destinations.js.map +1 -1
  1325. package/dist/esm/core/config/execution-view.schemas.d.ts.map +1 -1
  1326. package/dist/esm/core/config/execution-view.schemas.js.map +1 -1
  1327. package/dist/esm/core/config/flows-actors-view.schemas.d.ts +5 -3
  1328. package/dist/esm/core/config/flows-actors-view.schemas.d.ts.map +1 -1
  1329. package/dist/esm/core/config/flows-actors-view.schemas.js +2 -2
  1330. package/dist/esm/core/config/flows-actors-view.schemas.js.map +1 -1
  1331. package/dist/esm/core/config/full-custom-view.schemas.d.ts.map +1 -1
  1332. package/dist/esm/core/config/full-custom-view.schemas.js.map +1 -1
  1333. package/dist/esm/core/config/inserted-view-launcher.schemas.d.ts.map +1 -1
  1334. package/dist/esm/core/config/inserted-view-launcher.schemas.js.map +1 -1
  1335. package/dist/esm/core/config/inserted-view.frontend.schemas.d.ts.map +1 -1
  1336. package/dist/esm/core/config/inserted-view.frontend.schemas.js.map +1 -1
  1337. package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts +51 -11
  1338. package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts.map +1 -1
  1339. package/dist/esm/core/config/launcher-items.frontend.schemas.js +21 -7
  1340. package/dist/esm/core/config/launcher-items.frontend.schemas.js.map +1 -1
  1341. package/dist/esm/core/config/onboarding-view.frontend.schemas.d.ts.map +1 -1
  1342. package/dist/esm/core/config/onboarding-view.frontend.schemas.js.map +1 -1
  1343. package/dist/esm/core/config/resource-owned-view-resolution.frontend.utils.d.ts.map +1 -1
  1344. package/dist/esm/core/config/resource-owned-view-resolution.frontend.utils.js.map +1 -1
  1345. package/dist/esm/core/config/settings-hub-gating.frontend.utils.d.ts.map +1 -1
  1346. package/dist/esm/core/config/settings-hub-gating.frontend.utils.js.map +1 -1
  1347. package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts +23 -1
  1348. package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts.map +1 -1
  1349. package/dist/esm/core/config/settings-hub.frontend.schemas.js +22 -0
  1350. package/dist/esm/core/config/settings-hub.frontend.schemas.js.map +1 -1
  1351. package/dist/esm/core/config/useSettingsHubConfig.d.ts.map +1 -1
  1352. package/dist/esm/core/config/useSettingsHubConfig.js +8 -1
  1353. package/dist/esm/core/config/useSettingsHubConfig.js.map +1 -1
  1354. package/dist/esm/core/config/useVisibleSettingsHubConfig.d.ts.map +1 -1
  1355. package/dist/esm/core/config/useVisibleSettingsHubConfig.js.map +1 -1
  1356. package/dist/esm/core/config/verify-feature-references.frontend.d.ts +7 -0
  1357. package/dist/esm/core/config/verify-feature-references.frontend.d.ts.map +1 -1
  1358. package/dist/esm/core/config/verify-feature-references.frontend.js +42 -1
  1359. package/dist/esm/core/config/verify-feature-references.frontend.js.map +1 -1
  1360. package/dist/esm/core/config/verify-launcher-content.d.ts.map +1 -1
  1361. package/dist/esm/core/config/verify-launcher-content.js +9 -2
  1362. package/dist/esm/core/config/verify-launcher-content.js.map +1 -1
  1363. package/dist/esm/core/config/verify-settings-hub-content.d.ts.map +1 -1
  1364. package/dist/esm/core/config/verify-settings-hub-content.js.map +1 -1
  1365. package/dist/esm/core/config/views-frontend.schemas.d.ts.map +1 -1
  1366. package/dist/esm/core/config/views-frontend.schemas.js.map +1 -1
  1367. package/dist/esm/core/enums/common-enum-registry.d.ts.map +1 -1
  1368. package/dist/esm/core/enums/common-enum-registry.js.map +1 -1
  1369. package/dist/esm/core/errors/ErrorBoundary.d.ts.map +1 -1
  1370. package/dist/esm/core/errors/ErrorBoundary.js.map +1 -1
  1371. package/dist/esm/core/errors/ErrorContext.d.ts.map +1 -1
  1372. package/dist/esm/core/errors/ErrorContext.js.map +1 -1
  1373. package/dist/esm/core/errors/GlobalErrorHandler.d.ts.map +1 -1
  1374. package/dist/esm/core/errors/GlobalErrorHandler.js.map +1 -1
  1375. package/dist/esm/core/errors/RouterErrorBoundary.d.ts.map +1 -1
  1376. package/dist/esm/core/errors/RouterErrorBoundary.js.map +1 -1
  1377. package/dist/esm/core/errors/error-management.frontend.service.d.ts.map +1 -1
  1378. package/dist/esm/core/errors/error-management.frontend.service.js.map +1 -1
  1379. package/dist/esm/core/errors/errors-builder.frontend.services.d.ts.map +1 -1
  1380. package/dist/esm/core/errors/errors-builder.frontend.services.js.map +1 -1
  1381. package/dist/esm/core/errors/errors.frontend.schemas.d.ts.map +1 -1
  1382. package/dist/esm/core/errors/errors.frontend.schemas.js.map +1 -1
  1383. package/dist/esm/core/errors/http-error-behavior.frontend.schemas.d.ts.map +1 -1
  1384. package/dist/esm/core/errors/http-error-behavior.frontend.schemas.js.map +1 -1
  1385. package/dist/esm/core/errors/useError.d.ts.map +1 -1
  1386. package/dist/esm/core/errors/useError.js.map +1 -1
  1387. package/dist/esm/core/errors/withErrorBoundary.d.ts.map +1 -1
  1388. package/dist/esm/core/errors/withErrorBoundary.js.map +1 -1
  1389. package/dist/esm/core/events/EventBusContext.d.ts.map +1 -1
  1390. package/dist/esm/core/events/EventBusContext.js.map +1 -1
  1391. package/dist/esm/core/events/NotificationContext.d.ts +6 -5
  1392. package/dist/esm/core/events/NotificationContext.d.ts.map +1 -1
  1393. package/dist/esm/core/events/NotificationContext.js +41 -39
  1394. package/dist/esm/core/events/NotificationContext.js.map +1 -1
  1395. package/dist/esm/core/events/event-bus.frontend.service.d.ts.map +1 -1
  1396. package/dist/esm/core/events/event-bus.frontend.service.js.map +1 -1
  1397. package/dist/esm/core/events/events.frontend.schemas.d.ts +34 -18
  1398. package/dist/esm/core/events/events.frontend.schemas.d.ts.map +1 -1
  1399. package/dist/esm/core/events/events.frontend.schemas.js +22 -1
  1400. package/dist/esm/core/events/events.frontend.schemas.js.map +1 -1
  1401. package/dist/esm/core/events/notification-display-policy.frontend.schemas.d.ts.map +1 -1
  1402. package/dist/esm/core/events/notification-display-policy.frontend.schemas.js.map +1 -1
  1403. package/dist/esm/core/events/toast.d.ts.map +1 -1
  1404. package/dist/esm/core/events/toast.js.map +1 -1
  1405. package/dist/esm/core/events/useEventBus.d.ts.map +1 -1
  1406. package/dist/esm/core/events/useEventBus.js.map +1 -1
  1407. package/dist/esm/core/events/useNotification.d.ts.map +1 -1
  1408. package/dist/esm/core/events/useNotification.js.map +1 -1
  1409. package/dist/esm/core/execution/ExecutionDirtyMarkerScopeContext.d.ts.map +1 -1
  1410. package/dist/esm/core/execution/ExecutionDirtyMarkerScopeContext.js.map +1 -1
  1411. package/dist/esm/core/execution/ExecutionRuntimeContext.d.ts.map +1 -1
  1412. package/dist/esm/core/execution/ExecutionRuntimeContext.js.map +1 -1
  1413. package/dist/esm/core/execution/execution-anchor.utils.d.ts.map +1 -1
  1414. package/dist/esm/core/execution/execution-anchor.utils.js.map +1 -1
  1415. package/dist/esm/core/execution/execution-dirty-markers.utils.d.ts.map +1 -1
  1416. package/dist/esm/core/execution/execution-dirty-markers.utils.js.map +1 -1
  1417. package/dist/esm/core/execution/execution-failure-handling.utils.d.ts.map +1 -1
  1418. package/dist/esm/core/execution/execution-failure-handling.utils.js.map +1 -1
  1419. package/dist/esm/core/execution/execution-outcome-emission.utils.d.ts.map +1 -1
  1420. package/dist/esm/core/execution/execution-outcome-emission.utils.js.map +1 -1
  1421. package/dist/esm/core/execution/execution-participation.utils.d.ts.map +1 -1
  1422. package/dist/esm/core/execution/execution-participation.utils.js.map +1 -1
  1423. package/dist/esm/core/execution/useExecution.d.ts.map +1 -1
  1424. package/dist/esm/core/execution/useExecution.js.map +1 -1
  1425. package/dist/esm/core/execution/useExecutionDirtyBridge.d.ts.map +1 -1
  1426. package/dist/esm/core/execution/useExecutionDirtyBridge.js.map +1 -1
  1427. package/dist/esm/core/execution/useExecutionParticipationDataPrefetch.d.ts.map +1 -1
  1428. package/dist/esm/core/execution/useExecutionParticipationDataPrefetch.js.map +1 -1
  1429. package/dist/esm/core/execution/useExecutionParticipationPrefetch.d.ts.map +1 -1
  1430. package/dist/esm/core/execution/useExecutionParticipationPrefetch.js.map +1 -1
  1431. package/dist/esm/core/execution/useExecutionParticipationRMM.d.ts.map +1 -1
  1432. package/dist/esm/core/execution/useExecutionParticipationRMM.js.map +1 -1
  1433. package/dist/esm/core/execution/useExecutionResourceOperationContextBuilder.d.ts.map +1 -1
  1434. package/dist/esm/core/execution/useExecutionResourceOperationContextBuilder.js.map +1 -1
  1435. package/dist/esm/core/execution/useExecutionResourceOperationSurface.d.ts.map +1 -1
  1436. package/dist/esm/core/execution/useExecutionResourceOperationSurface.js.map +1 -1
  1437. package/dist/esm/core/external-providers/ProviderFilePickerHost.d.ts +77 -0
  1438. package/dist/esm/core/external-providers/ProviderFilePickerHost.d.ts.map +1 -0
  1439. package/dist/esm/core/external-providers/ProviderFilePickerHost.js +114 -0
  1440. package/dist/esm/core/external-providers/ProviderFilePickerHost.js.map +1 -0
  1441. package/dist/esm/core/external-providers/frontend-provider-display-label.frontend.utils.d.ts.map +1 -1
  1442. package/dist/esm/core/external-providers/frontend-provider-display-label.frontend.utils.js.map +1 -1
  1443. package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.d.ts +33 -15
  1444. package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.d.ts.map +1 -1
  1445. package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.js +27 -21
  1446. package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.js.map +1 -1
  1447. package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.d.ts +102 -0
  1448. package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.d.ts.map +1 -0
  1449. package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.js +117 -0
  1450. package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.js.map +1 -0
  1451. package/dist/esm/core/features/FeatureGate.d.ts.map +1 -1
  1452. package/dist/esm/core/features/FeatureGate.js +1 -1
  1453. package/dist/esm/core/features/FeatureGate.js.map +1 -1
  1454. package/dist/esm/core/features/FeatureRouteGuard.d.ts.map +1 -1
  1455. package/dist/esm/core/features/FeatureRouteGuard.js +1 -1
  1456. package/dist/esm/core/features/FeatureRouteGuard.js.map +1 -1
  1457. package/dist/esm/core/features/FeaturesContext.d.ts.map +1 -1
  1458. package/dist/esm/core/features/FeaturesContext.js.map +1 -1
  1459. package/dist/esm/core/features/feature-unavailability.frontend.utils.d.ts +7 -0
  1460. package/dist/esm/core/features/feature-unavailability.frontend.utils.d.ts.map +1 -1
  1461. package/dist/esm/core/features/feature-unavailability.frontend.utils.js +5 -0
  1462. package/dist/esm/core/features/feature-unavailability.frontend.utils.js.map +1 -1
  1463. package/dist/esm/core/features/useFeatureAvailability.d.ts +2 -0
  1464. package/dist/esm/core/features/useFeatureAvailability.d.ts.map +1 -1
  1465. package/dist/esm/core/features/useFeatureAvailability.js +4 -2
  1466. package/dist/esm/core/features/useFeatureAvailability.js.map +1 -1
  1467. package/dist/esm/core/features/useFeatureGate.d.ts.map +1 -1
  1468. package/dist/esm/core/features/useFeatureGate.js.map +1 -1
  1469. package/dist/esm/core/features/useFeatures.d.ts.map +1 -1
  1470. package/dist/esm/core/features/useFeatures.js.map +1 -1
  1471. package/dist/esm/core/features/useOperationFeatureAvailability.d.ts.map +1 -1
  1472. package/dist/esm/core/features/useOperationFeatureAvailability.js.map +1 -1
  1473. package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts +26 -2
  1474. package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts.map +1 -1
  1475. package/dist/esm/core/flows-actors/FlowsActorsContext.js +60 -3
  1476. package/dist/esm/core/flows-actors/FlowsActorsContext.js.map +1 -1
  1477. package/dist/esm/core/flows-actors/useFlowsActors.d.ts.map +1 -1
  1478. package/dist/esm/core/flows-actors/useFlowsActors.js.map +1 -1
  1479. package/dist/esm/core/guidance/GuidanceContext.d.ts.map +1 -1
  1480. package/dist/esm/core/guidance/GuidanceContext.js +2 -2
  1481. package/dist/esm/core/guidance/GuidanceContext.js.map +1 -1
  1482. package/dist/esm/core/guidance/GuidanceRenderer.d.ts.map +1 -1
  1483. package/dist/esm/core/guidance/GuidanceRenderer.js.map +1 -1
  1484. package/dist/esm/core/guidance/guidance-audience.frontend.utils.d.ts.map +1 -1
  1485. package/dist/esm/core/guidance/guidance-audience.frontend.utils.js.map +1 -1
  1486. package/dist/esm/core/guidance/guidance-resource-compiler.shared.utils.d.ts.map +1 -1
  1487. package/dist/esm/core/guidance/guidance-resource-compiler.shared.utils.js.map +1 -1
  1488. package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.d.ts.map +1 -1
  1489. package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.js.map +1 -1
  1490. package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.labels.d.ts.map +1 -1
  1491. package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.labels.js.map +1 -1
  1492. package/dist/esm/core/guidance/renderers/GuidanceBadge.d.ts.map +1 -1
  1493. package/dist/esm/core/guidance/renderers/GuidanceBadge.js.map +1 -1
  1494. package/dist/esm/core/guidance/renderers/GuidanceBadge.labels.d.ts.map +1 -1
  1495. package/dist/esm/core/guidance/renderers/GuidanceBadge.labels.js.map +1 -1
  1496. package/dist/esm/core/guidance/renderers/GuidanceBanner.d.ts.map +1 -1
  1497. package/dist/esm/core/guidance/renderers/GuidanceBanner.js.map +1 -1
  1498. package/dist/esm/core/guidance/renderers/GuidanceBanner.labels.d.ts.map +1 -1
  1499. package/dist/esm/core/guidance/renderers/GuidanceBanner.labels.js.map +1 -1
  1500. package/dist/esm/core/guidance/renderers/GuidanceCard.d.ts.map +1 -1
  1501. package/dist/esm/core/guidance/renderers/GuidanceCard.js.map +1 -1
  1502. package/dist/esm/core/guidance/renderers/GuidanceCard.labels.d.ts.map +1 -1
  1503. package/dist/esm/core/guidance/renderers/GuidanceCard.labels.js.map +1 -1
  1504. package/dist/esm/core/guidance/renderers/GuidanceChecklist.d.ts.map +1 -1
  1505. package/dist/esm/core/guidance/renderers/GuidanceChecklist.js.map +1 -1
  1506. package/dist/esm/core/guidance/renderers/GuidanceChecklist.labels.d.ts.map +1 -1
  1507. package/dist/esm/core/guidance/renderers/GuidanceChecklist.labels.js.map +1 -1
  1508. package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.d.ts.map +1 -1
  1509. package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.js.map +1 -1
  1510. package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.labels.d.ts.map +1 -1
  1511. package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.labels.js.map +1 -1
  1512. package/dist/esm/core/guidance/renderers/GuidanceModal.d.ts.map +1 -1
  1513. package/dist/esm/core/guidance/renderers/GuidanceModal.js.map +1 -1
  1514. package/dist/esm/core/guidance/renderers/GuidanceModal.labels.d.ts.map +1 -1
  1515. package/dist/esm/core/guidance/renderers/GuidanceModal.labels.js.map +1 -1
  1516. package/dist/esm/core/guidance/renderers/GuidanceSurvey.d.ts.map +1 -1
  1517. package/dist/esm/core/guidance/renderers/GuidanceSurvey.js.map +1 -1
  1518. package/dist/esm/core/guidance/renderers/GuidanceSurvey.labels.d.ts.map +1 -1
  1519. package/dist/esm/core/guidance/renderers/GuidanceSurvey.labels.js.map +1 -1
  1520. package/dist/esm/core/guidance/renderers/GuidanceTooltip.d.ts.map +1 -1
  1521. package/dist/esm/core/guidance/renderers/GuidanceTooltip.js.map +1 -1
  1522. package/dist/esm/core/guidance/renderers/GuidanceTooltip.labels.d.ts.map +1 -1
  1523. package/dist/esm/core/guidance/renderers/GuidanceTooltip.labels.js.map +1 -1
  1524. package/dist/esm/core/guidance/renderers/GuidanceTour.d.ts.map +1 -1
  1525. package/dist/esm/core/guidance/renderers/GuidanceTour.js.map +1 -1
  1526. package/dist/esm/core/guidance/renderers/GuidanceTour.labels.d.ts.map +1 -1
  1527. package/dist/esm/core/guidance/renderers/GuidanceTour.labels.js.map +1 -1
  1528. package/dist/esm/core/guidance/useGuidance.d.ts.map +1 -1
  1529. package/dist/esm/core/guidance/useGuidance.js.map +1 -1
  1530. package/dist/esm/core/hotkey/DefaultHotkeyHandler.d.ts +29 -0
  1531. package/dist/esm/core/hotkey/DefaultHotkeyHandler.d.ts.map +1 -1
  1532. package/dist/esm/core/hotkey/DefaultHotkeyHandler.js +76 -1
  1533. package/dist/esm/core/hotkey/DefaultHotkeyHandler.js.map +1 -1
  1534. package/dist/esm/core/hotkey/HotkeyRegistryContext.d.ts.map +1 -1
  1535. package/dist/esm/core/hotkey/HotkeyRegistryContext.js +44 -8
  1536. package/dist/esm/core/hotkey/HotkeyRegistryContext.js.map +1 -1
  1537. package/dist/esm/core/hotkey/HotkeyShortcutsHelpDialog.d.ts.map +1 -1
  1538. package/dist/esm/core/hotkey/HotkeyShortcutsHelpDialog.js.map +1 -1
  1539. package/dist/esm/core/hotkey/hotkey-registry.frontend.schemas.d.ts +53 -1
  1540. package/dist/esm/core/hotkey/hotkey-registry.frontend.schemas.d.ts.map +1 -1
  1541. package/dist/esm/core/hotkey/hotkey-registry.frontend.schemas.js +78 -13
  1542. package/dist/esm/core/hotkey/hotkey-registry.frontend.schemas.js.map +1 -1
  1543. package/dist/esm/core/hotkey/merge-hotkey-emit-shortcuts.d.ts.map +1 -1
  1544. package/dist/esm/core/hotkey/merge-hotkey-emit-shortcuts.js.map +1 -1
  1545. package/dist/esm/core/hotkey/useHotkey.d.ts.map +1 -1
  1546. package/dist/esm/core/hotkey/useHotkey.js.map +1 -1
  1547. package/dist/esm/core/i18n/I18nContext.d.ts +32 -0
  1548. package/dist/esm/core/i18n/I18nContext.d.ts.map +1 -1
  1549. package/dist/esm/core/i18n/I18nContext.js +154 -32
  1550. package/dist/esm/core/i18n/I18nContext.js.map +1 -1
  1551. package/dist/esm/core/i18n/component-label-resolution.utils.d.ts.map +1 -1
  1552. package/dist/esm/core/i18n/component-label-resolution.utils.js.map +1 -1
  1553. package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.d.ts +51 -0
  1554. package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.d.ts.map +1 -0
  1555. package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.js +66 -0
  1556. package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.js.map +1 -0
  1557. package/dist/esm/core/i18n/useI18n.d.ts.map +1 -1
  1558. package/dist/esm/core/i18n/useI18n.js +22 -2
  1559. package/dist/esm/core/i18n/useI18n.js.map +1 -1
  1560. package/dist/esm/core/icons/IconRegistryBridge.d.ts.map +1 -1
  1561. package/dist/esm/core/icons/IconRegistryBridge.js.map +1 -1
  1562. package/dist/esm/core/icons/IconRegistryContext.d.ts.map +1 -1
  1563. package/dist/esm/core/icons/IconRegistryContext.js.map +1 -1
  1564. package/dist/esm/core/icons/icon-registry.frontend.definitions.d.ts.map +1 -1
  1565. package/dist/esm/core/icons/icon-registry.frontend.definitions.js.map +1 -1
  1566. package/dist/esm/core/icons/icon-registry.frontend.schemas.d.ts.map +1 -1
  1567. package/dist/esm/core/icons/icon-registry.frontend.schemas.js.map +1 -1
  1568. package/dist/esm/core/icons/useIconRegistry.d.ts.map +1 -1
  1569. package/dist/esm/core/icons/useIconRegistry.js.map +1 -1
  1570. package/dist/esm/core/loading/AppLoadingGate.d.ts.map +1 -1
  1571. package/dist/esm/core/loading/AppLoadingGate.js.map +1 -1
  1572. package/dist/esm/core/loading/LoadingBarrier.d.ts.map +1 -1
  1573. package/dist/esm/core/loading/LoadingBarrier.js.map +1 -1
  1574. package/dist/esm/core/loading/LoadingContext.d.ts.map +1 -1
  1575. package/dist/esm/core/loading/LoadingContext.js.map +1 -1
  1576. package/dist/esm/core/loading/LoadingGate.d.ts.map +1 -1
  1577. package/dist/esm/core/loading/LoadingGate.js +16 -3
  1578. package/dist/esm/core/loading/LoadingGate.js.map +1 -1
  1579. package/dist/esm/core/loading/loading-policy.frontend.schemas.d.ts.map +1 -1
  1580. package/dist/esm/core/loading/loading-policy.frontend.schemas.js.map +1 -1
  1581. package/dist/esm/core/loading/loading-scope.frontend.utils.d.ts.map +1 -1
  1582. package/dist/esm/core/loading/loading-scope.frontend.utils.js.map +1 -1
  1583. package/dist/esm/core/loading/loading-types.frontend.schemas.d.ts.map +1 -1
  1584. package/dist/esm/core/loading/loading-types.frontend.schemas.js.map +1 -1
  1585. package/dist/esm/core/loading/resolveLoadingPolicy.d.ts.map +1 -1
  1586. package/dist/esm/core/loading/resolveLoadingPolicy.js.map +1 -1
  1587. package/dist/esm/core/loading/useAppLoading.d.ts.map +1 -1
  1588. package/dist/esm/core/loading/useAppLoading.js.map +1 -1
  1589. package/dist/esm/core/loading/useComponentLoading.d.ts.map +1 -1
  1590. package/dist/esm/core/loading/useComponentLoading.js.map +1 -1
  1591. package/dist/esm/core/loading/useEmitLoadingScope.d.ts.map +1 -1
  1592. package/dist/esm/core/loading/useEmitLoadingScope.js.map +1 -1
  1593. package/dist/esm/core/loading/useLoading.d.ts.map +1 -1
  1594. package/dist/esm/core/loading/useLoading.js.map +1 -1
  1595. package/dist/esm/core/mode/AppModeContext.d.ts.map +1 -1
  1596. package/dist/esm/core/mode/AppModeContext.js.map +1 -1
  1597. package/dist/esm/core/mode/section-visibility.d.ts.map +1 -1
  1598. package/dist/esm/core/mode/section-visibility.js.map +1 -1
  1599. package/dist/esm/core/monitoring/analytics/AnalyticsContext.d.ts.map +1 -1
  1600. package/dist/esm/core/monitoring/analytics/AnalyticsContext.js.map +1 -1
  1601. package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.d.ts.map +1 -1
  1602. package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.js.map +1 -1
  1603. package/dist/esm/core/monitoring/analytics/analytics-provider-registry.frontend.service.d.ts.map +1 -1
  1604. package/dist/esm/core/monitoring/analytics/analytics-provider-registry.frontend.service.js.map +1 -1
  1605. package/dist/esm/core/monitoring/analytics/analytics-provider.frontend.interface.d.ts.map +1 -1
  1606. package/dist/esm/core/monitoring/analytics/analytics-provider.frontend.interface.js.map +1 -1
  1607. package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.d.ts.map +1 -1
  1608. package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.js.map +1 -1
  1609. package/dist/esm/core/monitoring/analytics/providers/console-analytics.provider.d.ts.map +1 -1
  1610. package/dist/esm/core/monitoring/analytics/providers/console-analytics.provider.js.map +1 -1
  1611. package/dist/esm/core/monitoring/analytics/useAnalytics.d.ts.map +1 -1
  1612. package/dist/esm/core/monitoring/analytics/useAnalytics.js.map +1 -1
  1613. package/dist/esm/core/monitoring/error-monitoring-bridge.frontend.service.d.ts +97 -0
  1614. package/dist/esm/core/monitoring/error-monitoring-bridge.frontend.service.d.ts.map +1 -0
  1615. package/dist/esm/core/monitoring/error-monitoring-bridge.frontend.service.js +179 -0
  1616. package/dist/esm/core/monitoring/error-monitoring-bridge.frontend.service.js.map +1 -0
  1617. package/dist/esm/core/monitoring/logger.frontend.service.d.ts.map +1 -1
  1618. package/dist/esm/core/monitoring/logger.frontend.service.js.map +1 -1
  1619. package/dist/esm/core/navigation/NavigationContentAreas.d.ts.map +1 -1
  1620. package/dist/esm/core/navigation/NavigationContentAreas.js +76 -48
  1621. package/dist/esm/core/navigation/NavigationContentAreas.js.map +1 -1
  1622. package/dist/esm/core/navigation/NavigationContext.d.ts +12 -0
  1623. package/dist/esm/core/navigation/NavigationContext.d.ts.map +1 -1
  1624. package/dist/esm/core/navigation/NavigationContext.js +24 -0
  1625. package/dist/esm/core/navigation/NavigationContext.js.map +1 -1
  1626. package/dist/esm/core/navigation/NavigationRequestBridge.d.ts.map +1 -1
  1627. package/dist/esm/core/navigation/NavigationRequestBridge.js.map +1 -1
  1628. package/dist/esm/core/navigation/hosted-pane.constants.d.ts.map +1 -1
  1629. package/dist/esm/core/navigation/hosted-pane.constants.js.map +1 -1
  1630. package/dist/esm/core/navigation/launcher-resolution.d.ts +1 -1
  1631. package/dist/esm/core/navigation/launcher-resolution.d.ts.map +1 -1
  1632. package/dist/esm/core/navigation/launcher-resolution.js +1 -1
  1633. package/dist/esm/core/navigation/launcher-resolution.js.map +1 -1
  1634. package/dist/esm/core/navigation/launcher-runtime-availability.d.ts.map +1 -1
  1635. package/dist/esm/core/navigation/launcher-runtime-availability.js.map +1 -1
  1636. package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.d.ts.map +1 -1
  1637. package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.js.map +1 -1
  1638. package/dist/esm/core/navigation/navigation-policy-resolver.service.d.ts +14 -5
  1639. package/dist/esm/core/navigation/navigation-policy-resolver.service.d.ts.map +1 -1
  1640. package/dist/esm/core/navigation/navigation-policy-resolver.service.js +146 -17
  1641. package/dist/esm/core/navigation/navigation-policy-resolver.service.js.map +1 -1
  1642. package/dist/esm/core/navigation/navigation.schemas.d.ts +58 -10
  1643. package/dist/esm/core/navigation/navigation.schemas.d.ts.map +1 -1
  1644. package/dist/esm/core/navigation/navigation.schemas.js +1 -1
  1645. package/dist/esm/core/navigation/navigation.schemas.js.map +1 -1
  1646. package/dist/esm/core/navigation/navigation.utils.d.ts +2 -2
  1647. package/dist/esm/core/navigation/navigation.utils.d.ts.map +1 -1
  1648. package/dist/esm/core/navigation/navigation.utils.js +4 -4
  1649. package/dist/esm/core/navigation/navigation.utils.js.map +1 -1
  1650. package/dist/esm/core/navigation/primary-destination-layout.d.ts.map +1 -1
  1651. package/dist/esm/core/navigation/primary-destination-layout.js.map +1 -1
  1652. package/dist/esm/core/navigation/useIsStackEntryActive.d.ts.map +1 -1
  1653. package/dist/esm/core/navigation/useIsStackEntryActive.js.map +1 -1
  1654. package/dist/esm/core/navigation/useLauncherResolutionContext.d.ts.map +1 -1
  1655. package/dist/esm/core/navigation/useLauncherResolutionContext.js.map +1 -1
  1656. package/dist/esm/core/navigation/useNavigationController.d.ts +8 -0
  1657. package/dist/esm/core/navigation/useNavigationController.d.ts.map +1 -1
  1658. package/dist/esm/core/navigation/useNavigationController.js +26 -6
  1659. package/dist/esm/core/navigation/useNavigationController.js.map +1 -1
  1660. package/dist/esm/core/navigation/useNavigationState.d.ts.map +1 -1
  1661. package/dist/esm/core/navigation/useNavigationState.js.map +1 -1
  1662. package/dist/esm/core/navigation/useOverlayTitle.d.ts.map +1 -1
  1663. package/dist/esm/core/navigation/useOverlayTitle.js.map +1 -1
  1664. package/dist/esm/core/navigation/useTransactionAwareSyncRetry.d.ts.map +1 -1
  1665. package/dist/esm/core/navigation/useTransactionAwareSyncRetry.js.map +1 -1
  1666. package/dist/esm/core/navigation/view-title-resolution.d.ts.map +1 -1
  1667. package/dist/esm/core/navigation/view-title-resolution.js.map +1 -1
  1668. package/dist/esm/core/navigation/zone-content-geometry.d.ts.map +1 -1
  1669. package/dist/esm/core/navigation/zone-content-geometry.js.map +1 -1
  1670. package/dist/esm/core/navigation/zone-empty-behavior.d.ts.map +1 -1
  1671. package/dist/esm/core/navigation/zone-empty-behavior.js.map +1 -1
  1672. package/dist/esm/core/navigation/zone-visible-entry.d.ts +26 -0
  1673. package/dist/esm/core/navigation/zone-visible-entry.d.ts.map +1 -0
  1674. package/dist/esm/core/navigation/zone-visible-entry.js +76 -0
  1675. package/dist/esm/core/navigation/zone-visible-entry.js.map +1 -0
  1676. package/dist/esm/core/requests/api-readiness-checker.frontend.service.d.ts.map +1 -1
  1677. package/dist/esm/core/requests/api-readiness-checker.frontend.service.js.map +1 -1
  1678. package/dist/esm/core/requests/auth-refresh-resilience.frontend.d.ts.map +1 -1
  1679. package/dist/esm/core/requests/auth-refresh-resilience.frontend.js.map +1 -1
  1680. package/dist/esm/core/requests/client-instance-id.frontend.service.d.ts.map +1 -1
  1681. package/dist/esm/core/requests/client-instance-id.frontend.service.js.map +1 -1
  1682. package/dist/esm/core/requests/network-backoff.frontend.utils.d.ts.map +1 -1
  1683. package/dist/esm/core/requests/network-backoff.frontend.utils.js.map +1 -1
  1684. package/dist/esm/core/requests/offline-replay-policy.frontend.d.ts.map +1 -1
  1685. package/dist/esm/core/requests/offline-replay-policy.frontend.js.map +1 -1
  1686. package/dist/esm/core/requests/request-cancellation.frontend.utils.d.ts.map +1 -1
  1687. package/dist/esm/core/requests/request-cancellation.frontend.utils.js.map +1 -1
  1688. package/dist/esm/core/requests/websockets/ConnectionStatusNotifier.d.ts.map +1 -1
  1689. package/dist/esm/core/requests/websockets/ConnectionStatusNotifier.js.map +1 -1
  1690. package/dist/esm/core/requests/websockets/WebSocketContext.d.ts.map +1 -1
  1691. package/dist/esm/core/requests/websockets/WebSocketContext.js.map +1 -1
  1692. package/dist/esm/core/requests/websockets/WebSocketEventBridge.d.ts.map +1 -1
  1693. package/dist/esm/core/requests/websockets/WebSocketEventBridge.js.map +1 -1
  1694. package/dist/esm/core/requests/websockets/useNotificationBadges.d.ts.map +1 -1
  1695. package/dist/esm/core/requests/websockets/useNotificationBadges.js +32 -19
  1696. package/dist/esm/core/requests/websockets/useNotificationBadges.js.map +1 -1
  1697. package/dist/esm/core/requests/websockets/useResourceRoom.d.ts.map +1 -1
  1698. package/dist/esm/core/requests/websockets/useResourceRoom.js.map +1 -1
  1699. package/dist/esm/core/requests/websockets/useWebSocket.d.ts.map +1 -1
  1700. package/dist/esm/core/requests/websockets/useWebSocket.js.map +1 -1
  1701. package/dist/esm/core/requests/websockets/websocket-resource-validation.frontend.service.d.ts.map +1 -1
  1702. package/dist/esm/core/requests/websockets/websocket-resource-validation.frontend.service.js.map +1 -1
  1703. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.d.ts +146 -2
  1704. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.d.ts.map +1 -1
  1705. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.js +108 -1
  1706. package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.js.map +1 -1
  1707. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.d.ts +3 -2
  1708. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.d.ts.map +1 -1
  1709. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.js +57 -4
  1710. package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.js.map +1 -1
  1711. package/dist/esm/core/requests/wildo-http-client.frontend.service.d.ts +6 -0
  1712. package/dist/esm/core/requests/wildo-http-client.frontend.service.d.ts.map +1 -1
  1713. package/dist/esm/core/requests/wildo-http-client.frontend.service.js +1 -0
  1714. package/dist/esm/core/requests/wildo-http-client.frontend.service.js.map +1 -1
  1715. package/dist/esm/core/resources/ResourceOperationViewContext.d.ts.map +1 -1
  1716. package/dist/esm/core/resources/ResourceOperationViewContext.js.map +1 -1
  1717. package/dist/esm/core/resources/ResourceOperationViewProvider.d.ts.map +1 -1
  1718. package/dist/esm/core/resources/ResourceOperationViewProvider.js.map +1 -1
  1719. package/dist/esm/core/resources/ResourceReadCacheBridge.d.ts.map +1 -1
  1720. package/dist/esm/core/resources/ResourceReadCacheBridge.js +130 -37
  1721. package/dist/esm/core/resources/ResourceReadCacheBridge.js.map +1 -1
  1722. package/dist/esm/core/resources/ResourceRegistryContext.d.ts.map +1 -1
  1723. package/dist/esm/core/resources/ResourceRegistryContext.js.map +1 -1
  1724. package/dist/esm/core/resources/ScopedResourceRegistryProvider.d.ts.map +1 -1
  1725. package/dist/esm/core/resources/ScopedResourceRegistryProvider.js.map +1 -1
  1726. package/dist/esm/core/resources/collection-export-url.frontend.utils.d.ts.map +1 -1
  1727. package/dist/esm/core/resources/collection-export-url.frontend.utils.js.map +1 -1
  1728. package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.d.ts.map +1 -1
  1729. package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.js.map +1 -1
  1730. package/dist/esm/core/resources/ephemeral-fields.utils.d.ts.map +1 -1
  1731. package/dist/esm/core/resources/ephemeral-fields.utils.js.map +1 -1
  1732. package/dist/esm/core/resources/file-serve-url.frontend.utils.d.ts.map +1 -1
  1733. package/dist/esm/core/resources/file-serve-url.frontend.utils.js.map +1 -1
  1734. package/dist/esm/core/resources/frontend-resource.utils.d.ts.map +1 -1
  1735. package/dist/esm/core/resources/frontend-resource.utils.js.map +1 -1
  1736. package/dist/esm/core/resources/hooks/useOperationEnabled.d.ts.map +1 -1
  1737. package/dist/esm/core/resources/hooks/useOperationEnabled.js.map +1 -1
  1738. package/dist/esm/core/resources/in-place/InPlaceOperationContext.d.ts.map +1 -1
  1739. package/dist/esm/core/resources/in-place/InPlaceOperationContext.js.map +1 -1
  1740. package/dist/esm/core/resources/operation-initiator-satisfaction.frontend.utils.d.ts.map +1 -1
  1741. package/dist/esm/core/resources/operation-initiator-satisfaction.frontend.utils.js.map +1 -1
  1742. package/dist/esm/core/resources/operation-semantics.frontend.utils.d.ts.map +1 -1
  1743. package/dist/esm/core/resources/operation-semantics.frontend.utils.js.map +1 -1
  1744. package/dist/esm/core/resources/relationship-quick-create.frontend.utils.d.ts.map +1 -1
  1745. package/dist/esm/core/resources/relationship-quick-create.frontend.utils.js.map +1 -1
  1746. package/dist/esm/core/resources/relationship-surface-runtime.frontend.utils.d.ts.map +1 -1
  1747. package/dist/esm/core/resources/relationship-surface-runtime.frontend.utils.js.map +1 -1
  1748. package/dist/esm/core/resources/resource-addressability.frontend.utils.d.ts.map +1 -1
  1749. package/dist/esm/core/resources/resource-addressability.frontend.utils.js.map +1 -1
  1750. package/dist/esm/core/resources/resource-operation-view.frontend.utils.d.ts.map +1 -1
  1751. package/dist/esm/core/resources/resource-operation-view.frontend.utils.js.map +1 -1
  1752. package/dist/esm/core/resources/resource-path.frontend.schemas.d.ts.map +1 -1
  1753. package/dist/esm/core/resources/resource-path.frontend.schemas.js.map +1 -1
  1754. package/dist/esm/core/resources/resource-read-cache.frontend.service.d.ts.map +1 -1
  1755. package/dist/esm/core/resources/resource-read-cache.frontend.service.js.map +1 -1
  1756. package/dist/esm/core/resources/resources-repository.frontend.service.d.ts.map +1 -1
  1757. package/dist/esm/core/resources/resources-repository.frontend.service.js.map +1 -1
  1758. package/dist/esm/core/resources/resources.frontend.schemas.d.ts.map +1 -1
  1759. package/dist/esm/core/resources/resources.frontend.schemas.js.map +1 -1
  1760. package/dist/esm/core/resources/rmm/HttpTransportAdapter.d.ts.map +1 -1
  1761. package/dist/esm/core/resources/rmm/HttpTransportAdapter.js.map +1 -1
  1762. package/dist/esm/core/resources/rmm/RMMRegistry.d.ts.map +1 -1
  1763. package/dist/esm/core/resources/rmm/RMMRegistry.js.map +1 -1
  1764. package/dist/esm/core/resources/rmm/RMMRegistryContext.d.ts.map +1 -1
  1765. package/dist/esm/core/resources/rmm/RMMRegistryContext.js.map +1 -1
  1766. package/dist/esm/core/resources/rmm/RMMWebSocketBridge.d.ts.map +1 -1
  1767. package/dist/esm/core/resources/rmm/RMMWebSocketBridge.js.map +1 -1
  1768. package/dist/esm/core/resources/rmm/ResourceMutationManager.d.ts.map +1 -1
  1769. package/dist/esm/core/resources/rmm/ResourceMutationManager.js.map +1 -1
  1770. package/dist/esm/core/resources/rmm/canonical-read.frontend.utils.d.ts.map +1 -1
  1771. package/dist/esm/core/resources/rmm/canonical-read.frontend.utils.js.map +1 -1
  1772. package/dist/esm/core/resources/rmm/field-path.utils.d.ts.map +1 -1
  1773. package/dist/esm/core/resources/rmm/field-path.utils.js.map +1 -1
  1774. package/dist/esm/core/resources/rmm/rmm-constants.d.ts.map +1 -1
  1775. package/dist/esm/core/resources/rmm/rmm-constants.js.map +1 -1
  1776. package/dist/esm/core/resources/rmm/rmm-noop-snapshot.d.ts.map +1 -1
  1777. package/dist/esm/core/resources/rmm/rmm-noop-snapshot.js.map +1 -1
  1778. package/dist/esm/core/resources/rmm/types.d.ts.map +1 -1
  1779. package/dist/esm/core/resources/rmm/types.js.map +1 -1
  1780. package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.d.ts.map +1 -1
  1781. package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.js.map +1 -1
  1782. package/dist/esm/core/resources/rmm/useListInvalidation.d.ts.map +1 -1
  1783. package/dist/esm/core/resources/rmm/useListInvalidation.js.map +1 -1
  1784. package/dist/esm/core/resources/rmm/useRMMEventHandler.d.ts.map +1 -1
  1785. package/dist/esm/core/resources/rmm/useRMMEventHandler.js.map +1 -1
  1786. package/dist/esm/core/resources/rmm/useRMMSnapshot.d.ts.map +1 -1
  1787. package/dist/esm/core/resources/rmm/useRMMSnapshot.js.map +1 -1
  1788. package/dist/esm/core/resources/rmm/useResourceMutationManager.d.ts.map +1 -1
  1789. package/dist/esm/core/resources/rmm/useResourceMutationManager.js.map +1 -1
  1790. package/dist/esm/core/resources/rmm/useResourceRMM.d.ts.map +1 -1
  1791. package/dist/esm/core/resources/rmm/useResourceRMM.js.map +1 -1
  1792. package/dist/esm/core/resources/useAuthedFileObjectUrl.frontend.hook.d.ts.map +1 -1
  1793. package/dist/esm/core/resources/useAuthedFileObjectUrl.frontend.hook.js.map +1 -1
  1794. package/dist/esm/core/resources/useHostlessResourceNavigation.d.ts.map +1 -1
  1795. package/dist/esm/core/resources/useHostlessResourceNavigation.js.map +1 -1
  1796. package/dist/esm/core/resources/useOperationEnabled.d.ts.map +1 -1
  1797. package/dist/esm/core/resources/useOperationEnabled.js.map +1 -1
  1798. package/dist/esm/core/resources/useResourceLabels.d.ts.map +1 -1
  1799. package/dist/esm/core/resources/useResourceLabels.js +20 -14
  1800. package/dist/esm/core/resources/useResourceLabels.js.map +1 -1
  1801. package/dist/esm/core/resources/useResourceOperationActions.d.ts.map +1 -1
  1802. package/dist/esm/core/resources/useResourceOperationActions.js.map +1 -1
  1803. package/dist/esm/core/resources/useResourceOperationSurface.d.ts.map +1 -1
  1804. package/dist/esm/core/resources/useResourceOperationSurface.js.map +1 -1
  1805. package/dist/esm/core/resources/useResourceRegistry.d.ts.map +1 -1
  1806. package/dist/esm/core/resources/useResourceRegistry.js.map +1 -1
  1807. package/dist/esm/core/resources/useResourceSelection.d.ts.map +1 -1
  1808. package/dist/esm/core/resources/useResourceSelection.js.map +1 -1
  1809. package/dist/esm/core/resources/utils/operation-enabled-condition.frontend.utils.d.ts.map +1 -1
  1810. package/dist/esm/core/resources/utils/operation-enabled-condition.frontend.utils.js.map +1 -1
  1811. package/dist/esm/core/runtime/AppRouter.d.ts.map +1 -1
  1812. package/dist/esm/core/runtime/AppRouter.js +2 -1
  1813. package/dist/esm/core/runtime/AppRouter.js.map +1 -1
  1814. package/dist/esm/core/runtime/ApplicationContext.shared.d.ts +9 -0
  1815. package/dist/esm/core/runtime/ApplicationContext.shared.d.ts.map +1 -1
  1816. package/dist/esm/core/runtime/ApplicationContext.shared.js.map +1 -1
  1817. package/dist/esm/core/runtime/ApplicationMainContext.d.ts.map +1 -1
  1818. package/dist/esm/core/runtime/ApplicationMainContext.js +1 -0
  1819. package/dist/esm/core/runtime/ApplicationMainContext.js.map +1 -1
  1820. package/dist/esm/core/runtime/app-config-overrides.frontend.definitions.d.ts.map +1 -1
  1821. package/dist/esm/core/runtime/app-config-overrides.frontend.definitions.js.map +1 -1
  1822. package/dist/esm/core/runtime/domain-module.frontend.definitions.d.ts.map +1 -1
  1823. package/dist/esm/core/runtime/domain-module.frontend.definitions.js.map +1 -1
  1824. package/dist/esm/core/runtime/env-variable-loader.frontend.service.d.ts.map +1 -1
  1825. package/dist/esm/core/runtime/env-variable-loader.frontend.service.js.map +1 -1
  1826. package/dist/esm/core/runtime/frontend-companion-resource-inputs.d.ts.map +1 -1
  1827. package/dist/esm/core/runtime/frontend-companion-resource-inputs.js.map +1 -1
  1828. package/dist/esm/core/runtime/routes.frontend.definitions.d.ts +6 -0
  1829. package/dist/esm/core/runtime/routes.frontend.definitions.d.ts.map +1 -1
  1830. package/dist/esm/core/runtime/routes.frontend.definitions.js +7 -0
  1831. package/dist/esm/core/runtime/routes.frontend.definitions.js.map +1 -1
  1832. package/dist/esm/core/runtime/runtime.frontend.schemas.d.ts.map +1 -1
  1833. package/dist/esm/core/runtime/runtime.frontend.schemas.js.map +1 -1
  1834. package/dist/esm/core/runtime/start-application.frontend.service.d.ts +38 -0
  1835. package/dist/esm/core/runtime/start-application.frontend.service.d.ts.map +1 -1
  1836. package/dist/esm/core/runtime/start-application.frontend.service.js +92 -3
  1837. package/dist/esm/core/runtime/start-application.frontend.service.js.map +1 -1
  1838. package/dist/esm/core/runtime/useApplication.d.ts.map +1 -1
  1839. package/dist/esm/core/runtime/useApplication.js.map +1 -1
  1840. package/dist/esm/core/scope/AppScopeContext.d.ts.map +1 -1
  1841. package/dist/esm/core/scope/AppScopeContext.js.map +1 -1
  1842. package/dist/esm/core/scope/scope.frontend.schemas.d.ts.map +1 -1
  1843. package/dist/esm/core/scope/scope.frontend.schemas.js.map +1 -1
  1844. package/dist/esm/core/scope/scope.utils.frontend.service.d.ts.map +1 -1
  1845. package/dist/esm/core/scope/scope.utils.frontend.service.js.map +1 -1
  1846. package/dist/esm/core/scope/useAppScope.d.ts.map +1 -1
  1847. package/dist/esm/core/scope/useAppScope.js.map +1 -1
  1848. package/dist/esm/core/security/AnonymousSessionContext.d.ts.map +1 -1
  1849. package/dist/esm/core/security/AnonymousSessionContext.js.map +1 -1
  1850. package/dist/esm/core/security/AuthSessionContext.d.ts.map +1 -1
  1851. package/dist/esm/core/security/AuthSessionContext.js.map +1 -1
  1852. package/dist/esm/core/security/StepUpAuthContext.d.ts.map +1 -1
  1853. package/dist/esm/core/security/StepUpAuthContext.js.map +1 -1
  1854. package/dist/esm/core/security/UserOrgsContext.d.ts.map +1 -1
  1855. package/dist/esm/core/security/UserOrgsContext.js +97 -13
  1856. package/dist/esm/core/security/UserOrgsContext.js.map +1 -1
  1857. package/dist/esm/core/security/auth-redirect.frontend.utils.d.ts.map +1 -1
  1858. package/dist/esm/core/security/auth-redirect.frontend.utils.js.map +1 -1
  1859. package/dist/esm/core/security/auth-session.utils.d.ts.map +1 -1
  1860. package/dist/esm/core/security/auth-session.utils.js.map +1 -1
  1861. package/dist/esm/core/security/cross-frontend-handoff.frontend.service.d.ts.map +1 -1
  1862. package/dist/esm/core/security/cross-frontend-handoff.frontend.service.js.map +1 -1
  1863. package/dist/esm/core/security/jwt.frontend.utils.d.ts.map +1 -1
  1864. package/dist/esm/core/security/jwt.frontend.utils.js.map +1 -1
  1865. package/dist/esm/core/security/security.frontend.schemas.d.ts.map +1 -1
  1866. package/dist/esm/core/security/security.frontend.schemas.js.map +1 -1
  1867. package/dist/esm/core/security/session-token-storage.frontend.service.d.ts.map +1 -1
  1868. package/dist/esm/core/security/session-token-storage.frontend.service.js.map +1 -1
  1869. package/dist/esm/core/security/useAuthSession.d.ts.map +1 -1
  1870. package/dist/esm/core/security/useAuthSession.js.map +1 -1
  1871. package/dist/esm/core/security/useResolvedAuthConfig.d.ts.map +1 -1
  1872. package/dist/esm/core/security/useResolvedAuthConfig.js.map +1 -1
  1873. package/dist/esm/core/security/useStepUpAuth.d.ts.map +1 -1
  1874. package/dist/esm/core/security/useStepUpAuth.js.map +1 -1
  1875. package/dist/esm/core/security/useUserOrgs.d.ts.map +1 -1
  1876. package/dist/esm/core/security/useUserOrgs.js.map +1 -1
  1877. package/dist/esm/core/ui/SurfaceErrorBoundary.d.ts.map +1 -1
  1878. package/dist/esm/core/ui/SurfaceErrorBoundary.js.map +1 -1
  1879. package/dist/esm/core/ui/SurfacePolicyContext.d.ts.map +1 -1
  1880. package/dist/esm/core/ui/SurfacePolicyContext.js.map +1 -1
  1881. package/dist/esm/core/ui/TypographyScopeContext.d.ts.map +1 -1
  1882. package/dist/esm/core/ui/TypographyScopeContext.js.map +1 -1
  1883. package/dist/esm/core/ui/UIContext.d.ts.map +1 -1
  1884. package/dist/esm/core/ui/UIContext.js.map +1 -1
  1885. package/dist/esm/core/ui/chart-style-defaults.d.ts.map +1 -1
  1886. package/dist/esm/core/ui/chart-style-defaults.js.map +1 -1
  1887. package/dist/esm/core/ui/cn.d.ts.map +1 -1
  1888. package/dist/esm/core/ui/cn.js.map +1 -1
  1889. package/dist/esm/core/ui/color-conversion.utils.d.ts.map +1 -1
  1890. package/dist/esm/core/ui/color-conversion.utils.js.map +1 -1
  1891. package/dist/esm/core/ui/design-token-class-groups.d.ts.map +1 -1
  1892. package/dist/esm/core/ui/design-token-class-groups.js.map +1 -1
  1893. package/dist/esm/core/ui/design-token-config.utils.d.ts.map +1 -1
  1894. package/dist/esm/core/ui/design-token-config.utils.js.map +1 -1
  1895. package/dist/esm/core/ui/design-token.utils.d.ts.map +1 -1
  1896. package/dist/esm/core/ui/design-token.utils.js.map +1 -1
  1897. package/dist/esm/core/ui/material-runtime.d.ts.map +1 -1
  1898. package/dist/esm/core/ui/material-runtime.js.map +1 -1
  1899. package/dist/esm/core/ui/surface-a11y.utils.d.ts.map +1 -1
  1900. package/dist/esm/core/ui/surface-a11y.utils.js.map +1 -1
  1901. package/dist/esm/core/ui/theme-preference-storage.shared.d.ts.map +1 -1
  1902. package/dist/esm/core/ui/theme-preference-storage.shared.js.map +1 -1
  1903. package/dist/esm/core/ui/themes/default.theme.d.ts.map +1 -1
  1904. package/dist/esm/core/ui/themes/default.theme.js.map +1 -1
  1905. package/dist/esm/core/ui/ui.frontend.schemas.d.ts +7 -2
  1906. package/dist/esm/core/ui/ui.frontend.schemas.d.ts.map +1 -1
  1907. package/dist/esm/core/ui/ui.frontend.schemas.js.map +1 -1
  1908. package/dist/esm/core/ui/useThemePreferenceControl.d.ts.map +1 -1
  1909. package/dist/esm/core/ui/useThemePreferenceControl.js.map +1 -1
  1910. package/dist/esm/core/ui/useUI.d.ts.map +1 -1
  1911. package/dist/esm/core/ui/useUI.js.map +1 -1
  1912. package/dist/esm/index.d.ts +7 -2
  1913. package/dist/esm/index.d.ts.map +1 -1
  1914. package/dist/esm/index.js +20 -2
  1915. package/dist/esm/index.js.map +1 -1
  1916. package/dist/esm/tailwind/index.d.ts.map +1 -1
  1917. package/dist/esm/tailwind/index.js.map +1 -1
  1918. package/dist/esm/testing/mock-builders.d.ts.map +1 -1
  1919. package/dist/esm/testing/mock-builders.js +2 -0
  1920. package/dist/esm/testing/mock-builders.js.map +1 -1
  1921. package/dist/esm/testing/mock-factory.d.ts.map +1 -1
  1922. package/dist/esm/testing/mock-factory.js.map +1 -1
  1923. package/dist/esm/testing/rmm-helpers.d.ts.map +1 -1
  1924. package/dist/esm/testing/rmm-helpers.js.map +1 -1
  1925. package/dist/esm/testing/test-providers.d.ts.map +1 -1
  1926. package/dist/esm/testing/test-providers.js.map +1 -1
  1927. package/dist/esm/testing.d.ts.map +1 -1
  1928. package/dist/esm/testing.js.map +1 -1
  1929. package/dist/tsconfig.build.tsbuildinfo +1 -1
  1930. package/package.json +6 -5
  1931. package/dist/esm/components/billing/billing-plan-change-preview.d.ts +0 -21
  1932. package/dist/esm/components/billing/billing-plan-change-preview.d.ts.map +0 -1
  1933. package/dist/esm/components/billing/billing-plan-change-preview.js +0 -12
  1934. package/dist/esm/components/billing/billing-plan-change-preview.js.map +0 -1
  1935. package/dist/esm/components/billing/billing-promotion-code-input.d.ts +0 -12
  1936. package/dist/esm/components/billing/billing-promotion-code-input.d.ts.map +0 -1
  1937. package/dist/esm/components/billing/billing-promotion-code-input.js +0 -11
  1938. package/dist/esm/components/billing/billing-promotion-code-input.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AuthSessionContext.js","sourceRoot":"","sources":["../../../../../src/core/security/AuthSessionContext.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { createContext, useState, ReactNode, useMemo, useEffect, useCallback, useRef } from 'react';\nimport { startAuthentication } from '@simplewebauthn/browser';\nimport type { PublicKeyCredentialRequestOptionsJSON } from '@simplewebauthn/browser';\nimport {\n AuthenticationResponse,\n AuthIdentificationResponse,\n AuthenticationRequest,\n AuthMethod,\n AuthFactorLevel,\n AuthSessionPurpose,\n SessionType,\n isWildoBackendError,\n} from '@wildo-ai/saas-models';\nimport { getManualCallsHttpClient } from '~wildo-frontend-lib/core/requests/wildo-http-client-manual-calls.frontend.service';\nimport { isAuthoritativeRefreshRejection, isRefreshDevLenient } from '~wildo-frontend-lib/core/requests/auth-refresh-resilience.frontend';\nimport { useResourceRegistry } from '~wildo-frontend-lib/core/resources/useResourceRegistry';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { resolveComponentLabel } from '~wildo-frontend-lib/core/i18n/component-label-resolution.utils';\nimport { LoggerFrontendService } from '~wildo-frontend-lib/core/monitoring/logger.frontend.service';\nimport { useError } from '~wildo-frontend-lib/core/errors/useError';\nimport { useApplication } from '~wildo-frontend-lib/core/runtime/useApplication';\nimport { useWebSocket } from '~wildo-frontend-lib/core/requests/websockets/useWebSocket';\nimport { useAnonymousSession } from '~wildo-frontend-lib/core/security/AnonymousSessionContext';\nimport {\n AuthState,\n EMPTY_AUTH_STATE,\n type UIFactorLevel,\n} from './security.frontend.schemas';\nimport {\n type SessionTokenStorage,\n PersistentSessionTokenStorage,\n} from './session-token-storage.frontend.service';\nimport { FrontendComponentType, MfaChallengeLabel, UserAuthLabel } from '@wildo-ai/presets-components-models';\n\nconst logger: LoggerFrontendService = LoggerFrontendService.getLogger();\nconst logDebug: (message: string, context?: Record<string, unknown>) => void = logger.debugByType('AuthSessionContext');\nlogger.setDebugTypeLogging('AuthSessionContext', false);\n\nfunction extractAuthErrorMessage(error: any, fallback: string): string {\n const guidanceExplanation = error?.wildoError?.userGuidance?.explanation\n || error?.response?.data?.error?.userGuidance?.explanation;\n if (typeof guidanceExplanation === 'string' && guidanceExplanation.length > 0) {\n return guidanceExplanation;\n }\n\n const detailsMessage = error?.response?.data?.error?.details?.message;\n if (typeof detailsMessage === 'string' && detailsMessage.length > 0) {\n return detailsMessage;\n }\n\n const contextMessage = error?.context?.message;\n if (typeof contextMessage === 'string' && contextMessage.length > 0) {\n return contextMessage;\n }\n\n return error?.message || fallback;\n}\n\n\n/**\n * Auth Session Context\n * Manages authentication, session lifecycle, and WebSocket connection\n */\n\nexport interface AuthSessionContextType {\n // Auth state\n auth: AuthState;\n\n // Token storage strategy (persistent or ephemeral)\n tokenStorage: SessionTokenStorage;\n\n // Authentication methods\n identifyByEmail: (email: string) => Promise<AuthIdentificationResponse>;\n authenticateWithPassword: (email: string, password: string) => Promise<AuthenticationResponse>;\n authenticate: (request: AuthenticationRequest) => Promise<AuthenticationResponse>;\n getSessionState: (sessionId: string) => Promise<any>;\n isAuthenticated: () => boolean;\n logout: () => void;\n\n // OAuth2 methods\n initiateOAuth2Login: (providerRef: string, returnUrl?: string) => Promise<void>;\n handleAuthCodeExchange: (code: string) => Promise<void>;\n\n // Email verification (auto-login after registration)\n handleEmailVerification: (token: string, email: string) => Promise<void>;\n\n // Invitation acceptance. Returns the PASSKEY-at-accept WebAuthn challenge when the invitee\n // chose passkey and a session was issued (caller runs the ceremony + verify); empty otherwise.\n acceptInvitation: (params: { invitationToken: string; firstName?: string; lastName?: string; password?: string; credentialMethod?: AuthMethod }) => Promise<{ passkeyRegistrationOptions?: Record<string, unknown> }>;\n\n // Magic link verification (passwordless login)\n handleMagicLinkVerify: (token: string, email: string) => Promise<AuthenticationResponse>;\n\n // MFA second factor verification\n handleMfaVerify: (sessionId: string, method: AuthMethod, code: string) => Promise<AuthenticationResponse>;\n\n // Passkey authentication (first or second factor)\n handlePasskeyAuth: (sessionId: string, factorLevel?: UIFactorLevel) => Promise<AuthenticationResponse>;\n\n // One-off session exchange (W7.3b)\n handleOneOffTokenExchange: (token: string) => Promise<void>;\n\n // Cross-frontend handoff context (cross-app-jwt-propagation Step 5)\n /**\n * Clears `auth.crossFrontendHandoffContext` after the receiving component\n * has consumed it for navigation. The context is single-use by design —\n * it describes \"you just landed via a handoff\", not an ongoing session\n * property. Leaving it set indefinitely would (a) leak handoff metadata\n * to telemetry hooks long after the navigation completed and (b) confuse\n * any subsequent handoff that arrives without one of the optional\n * fields (the receiver would read stale source/target identifiers).\n * Auth_OneOffSession calls this on unmount in cross-frontend-handoff\n * mode (see component for sequencing rationale).\n */\n clearCrossFrontendHandoffContext: () => void;\n\n // Session management\n markSessionRestored: () => void;\n setSessionRestoring: (isRestoring: boolean) => void;\n\n // WebSocket\n connectWebSocket: (token: string, organizationId?: string | null, consumableToken?: string | null) => void;\n notifyOrganizationSwitch: (newOrgId: string, previousOrgId: string) => void;\n}\n\n/**\n * AuthSession Context\n * @internal - Use useAuthSession() hook instead of accessing this directly\n */\nexport const AuthSessionContext: React.Context<AuthSessionContextType | undefined> = createContext<AuthSessionContextType | undefined>(undefined);\n\nexport const AuthSessionProvider: React.FC<{\n children: ReactNode;\n tokenStorage?: SessionTokenStorage;\n}> = ({ children, tokenStorage: tokenStorageProp }) => {\n const tokenStorage = useMemo(\n () => tokenStorageProp ?? new PersistentSessionTokenStorage(),\n [tokenStorageProp]\n );\n const { setAuthToken: setResourcesAuthToken, setTokenRenewalHandler: setResourcesTokenRenewalHandler, setConsumableToken: setResourcesConsumableToken } = useResourceRegistry();\n const { handleError } = useError();\n const { tComponent, isReady } = useI18n({ component: [FrontendComponentType.PUBLIC_LAYOUTS_USER_AUTH, FrontendComponentType.PUBLIC_LAYOUTS_MFA_CHALLENGE] });\n const { appConfig } = useApplication();\n const { connect, disconnect, refreshAuth: refreshWebSocketAuth, switchOrganization: wsSwitchOrganization } = useWebSocket();\n const { clearAnonymousSession } = useAnonymousSession();\n const hasInitializedRef = useRef(false);\n const broadcastChannelRef = useRef<BroadcastChannel | null>(null);\n const refreshInFlightRef = useRef<Promise<string> | null>(null);\n // Holds the latest `tokenRenewalHandler` so `connectWebSocket` (defined far\n // earlier in this component) can hand the WebSocket layer a stable\n // `onAuthenticationError` callback without a definition-order / stale-closure\n // dependency on the handler. Kept current by the registration effect below.\n const tokenRenewalHandlerRef = useRef<(() => Promise<string>) | null>(null);\n\n const [auth, setAuth] = useState<AuthState>({\n ...EMPTY_AUTH_STATE,\n accessToken: tokenStorage.getAccessToken(),\n // Auth-hardening Slice A Step 6 (2026-04-13) — `AuthState` no\n // longer carries a `refreshToken` field. The refresh token lives\n // exclusively in the `__wildo_refresh` `HttpOnly` cookie (set by\n // the backend, scoped `Path=/api/v1/auth`). `EphemeralSessionTokenStorage`\n // may still hold a value for one-off / test contexts via its own\n // in-memory slot but `AuthSessionContext` deliberately never\n // mirrors it into React state — the cookie is the sole source of\n // truth for the rotation channel.\n });\n\n /**\n * Auth-hardening Slice A Step 3 (2026-04-13) — `storeAuthTokens` now only\n * carries the access token. The refresh token travels via the\n * `__wildo_refresh` `HttpOnly` cookie (set by the backend on every issuance\n * / rotation, scoped `Path=/api/v1/auth`). We pass `null` to\n * `tokenStorage.storeTokens` so any stale localStorage refresh token from a\n * pre-migration session is wiped on the next call (and `EphemeralSessionTokenStorage`\n * stops accumulating an in-memory value that nothing reads).\n */\n const storeAuthTokens = (accessToken: string | null): void => {\n tokenStorage.storeTokens(accessToken, null);\n if (accessToken) {\n clearAnonymousSession();\n }\n };\n\n /**\n * Derive WebSocket URL from appConfig runtime endpoints\n *\n * IMPORTANT: Always use publicUrl (never internalUrl) since browsers cannot access\n * internal Kubernetes service URLs. The publicUrl is the Traefik ingress URL\n * that the browser can reach.\n *\n * Returns null if URL cannot be derived - WebSocket should not connect in this case.\n */\n const deriveWebSocketUrl = useCallback((): string | null => {\n if (!appConfig?.runtime?.endPoints?.main_backend_api) {\n logger.warn('WebSocket: Cannot derive URL - appConfig.runtime.endPoints.main_backend_api not available');\n return null;\n }\n\n const backendUrl = appConfig.runtime.endPoints.main_backend_api;\n // CRITICAL: Always use publicUrl for WebSocket connections from browser\n // internalUrl is only accessible within the Kubernetes cluster\n const urlString = backendUrl.publicUrl;\n\n if (!urlString) {\n logger.warn('WebSocket: Cannot derive URL - publicUrl not available in main_backend_api config');\n return null;\n }\n\n // Convert http:// to ws:// and https:// to wss://\n // IMPORTANT: Do NOT append /socket.io to the URL - Socket.IO automatically\n // uses /socket.io as the engine.io path. If we include it here, Socket.IO\n // interprets it as a namespace, causing \"Invalid namespace\" errors.\n const wsUrl = urlString.replace(/^http/, 'ws');\n return wsUrl;\n }, [appConfig]);\n\n /**\n * Connect WebSocket with current authentication token\n * Only connects if URL is available and token is valid\n */\n const connectWebSocket = useCallback((token: string, organizationId?: string | null, consumableToken?: string | null): void => {\n if (!token) {\n logDebug('WebSocket: Cannot connect - no token provided');\n return;\n }\n\n const wsUrl = deriveWebSocketUrl();\n\n if (!wsUrl) {\n logDebug('WebSocket: Cannot connect - URL is not available');\n return;\n }\n\n try {\n connect({\n url: wsUrl,\n token,\n organizationId: organizationId || undefined,\n consumableToken: consumableToken || undefined,\n autoReconnect: true,\n // Base retry delay only — the transport grows it exponentially toward its\n // 30s cap (see WebSocketContext.performActualConnect). A large budget plus\n // the connectivity supervisor (online / visibility / watchdog re-arm) means\n // the socket recovers indefinitely instead of dying after a handful of\n // attempts, so these are resilient defaults rather than a hard ceiling.\n reconnectInterval: 1000,\n maxReconnectAttempts: 15,\n // Self-heal an expired access token WITHOUT depending on HTTP traffic or\n // window focus. When the handshake is rejected for auth, the WS layer\n // calls this; `tokenRenewalHandler` performs the resilient refresh and,\n // on success, seeds the fresh token back into the socket via\n // `refreshWebSocketAuth`, so the next reconnect handshake succeeds. This\n // keeps a backgrounded/unfocused tab's real-time background jobs flowing\n // across token expiry. Read via ref because the handler is defined after\n // this callback (see `tokenRenewalHandlerRef`).\n onAuthenticationError: () => tokenRenewalHandlerRef.current?.(),\n });\n logDebug('WebSocket connection initiated', { wsUrl });\n } catch (error) {\n logger.warn('Failed to connect WebSocket', { error });\n }\n }, [connect, deriveWebSocketUrl]);\n\n /**\n * Notify WebSocket of organization switch\n */\n const notifyOrganizationSwitch = useCallback((newOrgId: string, previousOrgId: string): void => {\n wsSwitchOrganization(newOrgId, previousOrgId);\n }, [wsSwitchOrganization]);\n\n const identifyByEmail = async (email: string): Promise<AuthIdentificationResponse> => {\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n logDebug('Identifying user by email', { email });\n try {\n const resp = await getManualCallsHttpClient().identifyByEmail(email);\n\n logDebug('User identification successful', { sessionId: resp.sessionId });\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n identification: resp,\n sessionId: resp.sessionId,\n purpose: a.purpose ?? AuthSessionPurpose.LOGIN,\n }));\n\n return resp as AuthIdentificationResponse;\n } catch (e: any) {\n const msg = extractAuthErrorMessage(e, 'Identification failed');\n handleError(e, 'Identification failed', { email, message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n };\n\n const authenticateWithPassword = async (email: string, password: string): Promise<AuthenticationResponse> => {\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n logDebug('Authenticating with password', { email, sessionId: auth.sessionId });\n try {\n const sessionId = auth.sessionId;\n if (!sessionId) {\n const error = new Error('No active session. Please identify user first.');\n logger.warn('Authentication attempted without session', { email });\n throw error;\n }\n\n // Use the general authenticate endpoint with proper request structure\n const authRequest: AuthenticationRequest = {\n sessionId,\n method: AuthMethod.PASSWORD,\n factorLevel: AuthFactorLevel.FIRST,\n password,\n rememberMe: false,\n requestedIntegrations: []\n };\n\n const resp = await getManualCallsHttpClient().authenticate(authRequest);\n\n if (resp.requiresMFA && !resp.accessToken) {\n setAuth(a => ({\n ...a,\n isLoading: false,\n mfaRequired: true,\n mfaSessionId: resp.sessionId || sessionId,\n availableMfaMethods: resp.availableMFAMethods || [],\n availableEnrollmentMethods: resp.availableEnrollmentMethods || [],\n enrolledSecondFactorMethods: resp.enrolledSecondFactorMethods || [],\n usableSecondFactorMethods: resp.usableSecondFactorMethods || [],\n }));\n return resp as AuthenticationResponse;\n }\n\n const accessToken = resp.accessToken || null;\n\n storeAuthTokens(accessToken);\n\n if (accessToken) {\n getManualCallsHttpClient().setAuthToken(accessToken);\n setResourcesAuthToken(accessToken);\n }\n\n logDebug('Authentication successful', { success: resp.success, hasAccessToken: !!accessToken });\n\n if (resp.success && accessToken) {\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken,\n isRestoringSession: true,\n sessionRestored: false,\n sessionId: null,\n }));\n\n hasInitializedRef.current = true;\n } else {\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken,\n sessionId: resp.success ? null : sessionId,\n }));\n }\n\n return resp as AuthenticationResponse;\n } catch (e: any) {\n const msg = extractAuthErrorMessage(e, 'Authentication failed');\n handleError(e, 'Authentication failed', { email, message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n };\n\n const authenticate = async (request: AuthenticationRequest): Promise<AuthenticationResponse> => {\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n logDebug('Authenticating', { method: request.method, sessionId: request.sessionId || auth.sessionId });\n try {\n const sessionId = request.sessionId || auth.sessionId;\n if (!sessionId) {\n const error = new Error('No active session. Please identify user first.');\n logger.warn('Authentication attempted without session', { method: request.method });\n throw error;\n }\n\n const withSession = { ...request, sessionId } as AuthenticationRequest;\n const resp = await getManualCallsHttpClient().authenticate(withSession);\n\n if (resp.requiresMFA && !resp.accessToken) {\n setAuth(a => ({\n ...a,\n isLoading: false,\n mfaRequired: true,\n mfaSessionId: resp.sessionId || sessionId,\n availableMfaMethods: resp.availableMFAMethods || [],\n availableEnrollmentMethods: resp.availableEnrollmentMethods || [],\n enrolledSecondFactorMethods: resp.enrolledSecondFactorMethods || [],\n usableSecondFactorMethods: resp.usableSecondFactorMethods || [],\n }));\n return resp;\n }\n\n const accessToken = resp.accessToken || null;\n\n storeAuthTokens(accessToken);\n\n if (accessToken) {\n getManualCallsHttpClient().setAuthToken(accessToken);\n setResourcesAuthToken(accessToken);\n }\n\n logDebug('Authentication successful', { success: resp.success, hasAccessToken: !!accessToken, method: request.method });\n\n if (resp.success && accessToken) {\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken,\n isRestoringSession: true,\n sessionRestored: false,\n sessionId: null,\n }));\n\n hasInitializedRef.current = true;\n } else {\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken,\n sessionId: resp.success ? null : sessionId,\n }));\n }\n\n return resp;\n } catch (e: any) {\n const msg = extractAuthErrorMessage(e, 'Authentication failed');\n handleError(e, 'Authentication failed', { method: request.method, message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n };\n\n const getSessionState = async (sessionId: string): Promise<any> => {\n logDebug('Getting session state', { sessionId });\n try {\n const sessionState = await getManualCallsHttpClient().getSessionState(sessionId);\n setAuth(a => ({ ...a, sessionState, purpose: sessionState?.purpose ?? a.purpose }));\n logDebug('Session state retrieved', { sessionId });\n return sessionState;\n } catch (e: any) {\n handleError(e, 'Failed to get session state', { sessionId });\n throw e;\n }\n };\n\n const isAuthenticated = (): boolean => {\n return !!auth.accessToken;\n };\n\n /**\n * Initiate OAuth2 login by redirecting to the provider's authorization page.\n * Calls GET /auth/oauth2/authorize/:providerRef to get the authorization URL,\n * then performs a full-page redirect to that URL.\n *\n * Browser-only flow. The framework targets web stacks exclusively (the engine's\n * value prop is sharing TypeScript across browser-rendered surfaces — SAAS_APP,\n * STATIC_WEBSITE, TECH_DOC), so no native-SDK / Capacitor / Electron variants\n * exist for this method.\n */\n const initiateOAuth2Login = useCallback(async (providerRef: string, returnUrl?: string): Promise<void> => {\n logDebug('Initiating OAuth2 login', { providerRef, returnUrl });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n try {\n const { authorizationUrl } = await getManualCallsHttpClient().getOAuth2AuthorizationUrl(providerRef, returnUrl);\n logDebug('Redirecting to OAuth2 provider', { providerRef, authorizationUrl });\n window.location.href = authorizationUrl;\n } catch (e: any) {\n const msg = e?.message || 'Failed to initiate OAuth2 login';\n handleError(e, 'OAuth2 login initiation failed', { providerRef, message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [handleError]);\n\n /**\n * Exchange a single-use AUTH_CODE_EXCHANGE consumable token for a JWT pair\n * via `POST /auth/token/exchange`.\n *\n * Renamed from `handleOAuth2Callback` in cross-app-jwt-propagation\n * Step 5's deferred refactor pass — the method handles BOTH issuance\n * flows that mint AUTH_CODE_EXCHANGE codes, so the OAuth2-specific\n * naming was misleading:\n *\n * - **OAuth2 callback** (`AuthPage_AuthCallback` route): the backend\n * OAuth2 callback handler mints a code AFTER the user returns from\n * the IdP. The exchange response carries `{accessToken, expiresIn}`\n * only — the rotated refresh token lives in the `Set-Cookie:\n * __wildo_refresh=…` header (Auth-hardening A-Step 6 cookie-only\n * contract; pre-A-Step-6 the body also carried `refreshToken`).\n * - **Cross-frontend handoff** (`AuthPage_AuthExchange` route, mounted\n * at `CommonRoutePaths.authExchange = '/auth/exchange'`): the backend\n * `crossFrontendHandoff()` handler mints a code via the same\n * AUTH_CODE_EXCHANGE primitive. The exchange response ALSO carries\n * `{returnPath, sourceFrontendServiceName, targetServiceKey}` (see\n * `TokenExchangeResponseSchema`), surfaced into\n * `auth.crossFrontendHandoffContext` for the receiving component\n * (`Auth_OneOffSession` in `cross-frontend-handoff` mode) to drive\n * post-exchange navigation.\n *\n * Discrimination (\"did this code come from a handoff?\") is purely by\n * presence of `returnPath` in the response — see `TokenExchangeResponseSchema`\n * JSDoc for the load-bearing `typeof returnPath === 'string'` invariant.\n *\n * Browser-only flow. The method is intentionally decoupled from React\n * Router navigation — it accepts a `code` string and performs the\n * exchange; the page-level component extracts the code from URL params\n * and calls this. The framework targets web stacks exclusively, so no\n * native deep-link variant exists.\n */\n const handleAuthCodeExchange = useCallback(async (code: string): Promise<void> => {\n logDebug('Handling AUTH_CODE_EXCHANGE token (OAuth2 callback or cross-frontend handoff)', { codeLength: code.length });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n try {\n const response = await getManualCallsHttpClient().exchangeAuthCode(code);\n const { accessToken, returnPath, sourceFrontendServiceName, targetServiceKey } = response;\n\n storeAuthTokens(accessToken);\n getManualCallsHttpClient().setAuthToken(accessToken);\n setResourcesAuthToken(accessToken);\n\n // Cross-frontend-handoff signal: the issuer (cross-app-jwt-propagation\n // Step 2) puts `returnPath` into the consumable-token metadata; the\n // exchange handler (Step 5) round-trips it back here. OAuth2-callback\n // codes do NOT carry it, so a missing field correctly leaves the\n // context undefined for the OAuth2 path. The receiving component\n // (`Auth_OneOffSession` mounted at `/auth/exchange` in\n // cross-frontend-handoff mode) reads `crossFrontendHandoffContext`\n // and navigates accordingly.\n //\n // Discriminator invariant: `typeof returnPath === 'string'` is the\n // ONLY signal that distinguishes a handoff-issued exchange from an\n // OAuth2-callback exchange (no `kind` discriminator field is sent\n // over the wire — see `TokenExchangeResponseSchema` rationale in\n // `cross-frontend-handoff.shared.dto.schemas.ts`). The backend\n // controller is contractually required to use omit-when-absent (NOT\n // emit `null` or `''`) for OAuth2 codes; the\n // `TokenExchangeResponseSchema.parse()` call in `tokenExchange()`\n // and the integration test in\n // `cross-frontend-handoff-token-exchange.integration.test.ts`\n // jointly enforce this. If both safety nets ever regress, this\n // discriminator silently flips to false-positives and OAuth2 users\n // would land with a stale handoff context.\n const crossFrontendHandoffContext = typeof returnPath === 'string'\n ? {\n returnPath,\n ...(sourceFrontendServiceName !== undefined && { sourceFrontendServiceName }),\n ...(targetServiceKey !== undefined && { targetServiceKey }),\n }\n : undefined;\n\n logDebug('OAuth2 callback successful, tokens stored', {\n isCrossFrontendHandoff: crossFrontendHandoffContext !== undefined,\n });\n\n // Update auth state — mark as restoring so UserOrgsContext picks up and loads user data\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken,\n isRestoringSession: true,\n sessionRestored: false,\n // Clear any previous session (OAuth2 bypasses identify/authenticate flow)\n sessionId: null,\n crossFrontendHandoffContext,\n }));\n\n hasInitializedRef.current = true;\n } catch (e: any) {\n const msg = e?.message || 'OAuth2 authentication failed';\n handleError(e, 'OAuth2 callback failed', { message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError]);\n\n /**\n * Handle email verification by exchanging the verification token for JWT tokens.\n * Called from the /confirm-email page after the user clicks the verification link.\n * Flow: Email link → /confirm-email?token=xxx → this method\n *\n * On success, stores tokens and updates auth state (auto-login).\n */\n const handleEmailVerification = useCallback(async (token: string, email: string): Promise<void> => {\n logDebug('Handling email verification', { tokenLength: token.length, email });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n try {\n const response = await getManualCallsHttpClient().verifyEmail(token, email);\n\n if (response.accessToken) {\n storeAuthTokens(response.accessToken);\n getManualCallsHttpClient().setAuthToken(response.accessToken);\n setResourcesAuthToken(response.accessToken);\n\n logDebug('Email verification successful, tokens stored');\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken: response.accessToken!,\n isRestoringSession: true,\n sessionRestored: false,\n sessionId: null,\n }));\n\n hasInitializedRef.current = true;\n } else {\n logDebug('Email verification succeeded but tokens not issued — pipeline requires further steps', {\n state: response.state,\n nextStep: response.nextStep,\n });\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n sessionId: null,\n mfaRequired: response.requiresMFA ?? false,\n mfaSessionId: response.requiresMFA ? (response.sessionId ?? null) : null,\n availableMfaMethods: [],\n availableEnrollmentMethods: response.availableEnrollmentMethods || [],\n enrolledSecondFactorMethods: [],\n usableSecondFactorMethods: [],\n error: null,\n }));\n }\n } catch (e: any) {\n const msg = e?.message || 'Email verification failed';\n handleError(e, 'Email verification failed', { message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError]);\n\n const acceptInvitation = useCallback(async (\n params: { invitationToken: string; firstName?: string; lastName?: string; password?: string; credentialMethod?: AuthMethod },\n ): Promise<{ passkeyRegistrationOptions?: Record<string, unknown> }> => {\n logDebug('Handling invitation acceptance', { hasPassword: !!params.password, credentialMethod: params.credentialMethod });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n try {\n const response = await getManualCallsHttpClient().acceptInvitation(params);\n\n if (response.accessToken) {\n storeAuthTokens(response.accessToken);\n getManualCallsHttpClient().setAuthToken(response.accessToken);\n setResourcesAuthToken(response.accessToken);\n\n logDebug('Invitation acceptance successful, tokens stored');\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken: response.accessToken!,\n isRestoringSession: true,\n sessionRestored: false,\n sessionId: null,\n mfaRequired: false,\n mfaSessionId: null,\n availableMfaMethods: [],\n availableEnrollmentMethods: [],\n enrolledSecondFactorMethods: [],\n usableSecondFactorMethods: [],\n error: null,\n }));\n\n hasInitializedRef.current = true;\n } else {\n logDebug('Invitation acceptance requires further auth steps', {\n state: response.state,\n nextStep: response.nextStep,\n });\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n sessionId: null,\n mfaRequired: response.requiresMFA ?? false,\n mfaSessionId: response.requiresMFA ? (response.sessionId ?? null) : null,\n availableMfaMethods: [],\n availableEnrollmentMethods: response.availableEnrollmentMethods || [],\n enrolledSecondFactorMethods: [],\n usableSecondFactorMethods: [],\n error: null,\n }));\n }\n\n // PASSKEY-enroll-at-accept: hand the pre-generated WebAuthn registration challenge back to\n // the caller so it can run the browser ceremony and complete it against the authenticated\n // `/auth/passkey/register/verify` route (the access token was just set on the HTTP client\n // above). Present only on the passkey path's session-issued branch; undefined otherwise.\n return { passkeyRegistrationOptions: response.passkeyRegistrationOptions };\n } catch (e: any) {\n const msg = e?.message || 'Invitation acceptance failed';\n handleError(e, 'Invitation acceptance failed', { message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError]);\n\n /**\n * Handle magic link verification — verifies the token and auto-logs in the user.\n * Called from the /auth/magic-link/verify page after the user clicks the email link.\n * Returns the full AuthenticationResponse so the page can handle MFA-required state.\n */\n const handleMagicLinkVerify = useCallback(async (token: string, email: string): Promise<AuthenticationResponse> => {\n logDebug('Handling magic link verification', { tokenLength: token.length, email });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n try {\n const response = await getManualCallsHttpClient().magicLinkVerify(token, email);\n\n if (response.requiresMFA && !response.accessToken) {\n setAuth(a => ({\n ...a,\n isLoading: false,\n mfaRequired: true,\n mfaSessionId: response.sessionId || null,\n availableMfaMethods: response.availableMFAMethods || [],\n availableEnrollmentMethods: response.availableEnrollmentMethods || [],\n enrolledSecondFactorMethods: response.enrolledSecondFactorMethods || [],\n usableSecondFactorMethods: response.usableSecondFactorMethods || [],\n }));\n return response;\n }\n\n // Auth-hardening Slice A Step 6 (2026-04-13): the cookie-only\n // contract means `response.refreshToken` no longer exists on the\n // wire — the rotated value lives in the `Set-Cookie:\n // __wildo_refresh=…` response header (HttpOnly, JS-invisible).\n // Gate on `success && accessToken` only.\n if (response.success && response.accessToken) {\n storeAuthTokens(response.accessToken);\n getManualCallsHttpClient().setAuthToken(response.accessToken);\n setResourcesAuthToken(response.accessToken);\n\n logDebug('Magic link verification successful, tokens stored');\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken: response.accessToken!,\n isRestoringSession: true,\n sessionRestored: false,\n sessionId: null,\n }));\n\n hasInitializedRef.current = true;\n } else {\n setAuth(a => ({ ...a, isLoading: false }));\n }\n\n return response;\n } catch (e: any) {\n const msg = e?.message || 'Magic link verification failed';\n handleError(e, 'Magic link verification failed', { message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError]);\n\n /**\n * Handle MFA second-factor verification.\n * Dispatches to the appropriate OTP verify method based on the selected auth method.\n * On success, stores tokens and updates auth state (auto-login).\n */\n const handleMfaVerify = useCallback(async (sessionId: string, method: AuthMethod, code: string): Promise<AuthenticationResponse> => {\n logDebug('Handling MFA verification', { sessionId, method });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n try {\n const client = getManualCallsHttpClient();\n const response = await client.authenticate({\n sessionId,\n method,\n factorLevel: AuthFactorLevel.SECOND,\n token: code,\n rememberMe: false,\n requestedIntegrations: [],\n } as AuthenticationRequest);\n\n // Auth-hardening Slice A Step 6 (2026-04-13): cookie-only contract\n // — see the magic-link gate above for the full rationale.\n if (response.success && response.accessToken) {\n storeAuthTokens(response.accessToken);\n client.setAuthToken(response.accessToken);\n setResourcesAuthToken(response.accessToken);\n\n logDebug('MFA verification successful, tokens stored');\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken: response.accessToken!,\n isRestoringSession: true,\n sessionRestored: false,\n sessionId: null,\n mfaRequired: false,\n mfaSessionId: null,\n availableMfaMethods: [],\n enrolledSecondFactorMethods: [],\n usableSecondFactorMethods: [],\n }));\n\n hasInitializedRef.current = true;\n } else {\n setAuth(a => ({ ...a, isLoading: false, error: response.error || 'MFA verification failed' }));\n }\n\n return response;\n } catch (e: any) {\n const msg = e?.message || 'MFA verification failed';\n handleError(e, 'MFA verification failed', { method, message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError]);\n\n const handlePasskeyAuth = useCallback(async (sessionId: string, factorLevel: UIFactorLevel = 'first'): Promise<AuthenticationResponse> => {\n logDebug('Handling passkey authentication', { sessionId, factorLevel });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n const componentType = factorLevel === 'first' ? FrontendComponentType.PUBLIC_LAYOUTS_USER_AUTH : FrontendComponentType.PUBLIC_LAYOUTS_MFA_CHALLENGE;\n const t = (key: string) => resolveComponentLabel({\n tComponent,\n componentType,\n key,\n });\n const passkeyErrorLabel = factorLevel === 'first' ? UserAuthLabel.PASSKEY_ERROR : MfaChallengeLabel.PASSKEY_ERROR;\n const passkeyCancelledLabel = factorLevel === 'first' ? UserAuthLabel.PASSKEY_CANCELLED : MfaChallengeLabel.PASSKEY_CANCELLED;\n try {\n const client = getManualCallsHttpClient();\n const options = await client.passkeyAuthOptions(sessionId) as unknown as PublicKeyCredentialRequestOptionsJSON;\n const credential = await startAuthentication({ optionsJSON: options });\n const verifyBody = { response: credential, sessionId, factorLevel };\n const response = await client.passkeyAuthVerify(verifyBody);\n\n if (response.requiresMFA && !response.accessToken) {\n setAuth(a => ({\n ...a,\n isLoading: false,\n mfaRequired: true,\n mfaSessionId: response.sessionId || sessionId,\n availableMfaMethods: response.availableMFAMethods || [],\n availableEnrollmentMethods: response.availableEnrollmentMethods || [],\n enrolledSecondFactorMethods: response.enrolledSecondFactorMethods || [],\n usableSecondFactorMethods: response.usableSecondFactorMethods || [],\n }));\n return response;\n }\n\n // Auth-hardening Slice A Step 6 (2026-04-13): cookie-only contract\n // — see the magic-link gate above for the full rationale.\n if (response.success && response.accessToken) {\n storeAuthTokens(response.accessToken);\n client.setAuthToken(response.accessToken);\n setResourcesAuthToken(response.accessToken);\n logDebug('Passkey authentication successful, tokens stored');\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken: response.accessToken!,\n isRestoringSession: true,\n sessionRestored: false,\n sessionId: null,\n mfaRequired: false,\n mfaSessionId: null,\n availableMfaMethods: [],\n availableEnrollmentMethods: [],\n enrolledSecondFactorMethods: [],\n usableSecondFactorMethods: [],\n }));\n hasInitializedRef.current = true;\n } else {\n setAuth(a => ({ ...a, isLoading: false, error: response.error || t(passkeyErrorLabel) }));\n }\n return response;\n } catch (e: unknown) {\n const err = e as { name?: string; message?: string };\n let msg: string;\n if (err?.name === 'NotAllowedError') {\n msg = t(passkeyCancelledLabel);\n } else if (isWildoBackendError(e)) {\n const wErr = e as { userGuidance?: { explanation?: string }; message?: string };\n msg = wErr.userGuidance?.explanation || wErr.message || t(passkeyErrorLabel);\n } else {\n msg = err?.message || t(passkeyErrorLabel);\n }\n handleError(e, 'Passkey authentication failed', { sessionId, message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError, tComponent]);\n\n /**\n * W7.3b: Exchange a consumable token for a one-off session.\n * Authenticates via the backend exchange endpoint, sets up HTTP clients\n * with both JWT and consumable token headers, and connects WebSocket.\n */\n const handleOneOffTokenExchange = useCallback(async (token: string): Promise<void> => {\n logDebug('Handling one-off token exchange', { tokenLength: token.length });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n\n try {\n const client = getManualCallsHttpClient();\n const response = await client.exchangeOneOffToken(token);\n\n const { accessToken, consumableTokenValue, tokenExpiresAt, context } = response;\n\n storeAuthTokens(accessToken);\n\n client.setAuthToken(accessToken);\n setResourcesAuthToken(accessToken);\n\n if (consumableTokenValue) {\n client.setConsumableToken(consumableTokenValue);\n setResourcesConsumableToken(consumableTokenValue);\n }\n\n if (context.organizationId) {\n tokenStorage.setOrganizationId(context.organizationId);\n }\n\n connectWebSocket(accessToken, context.organizationId, consumableTokenValue);\n\n setAuth({\n ...EMPTY_AUTH_STATE,\n accessToken,\n sessionType: SessionType.ONE_OFF,\n oneOffContext: {\n originTokenId: context.tokenId,\n tokenType: context.tokenType,\n consumableTokenValue,\n tokenExpiresAt,\n scopedInitiatorIds: context.targeting?.initiatorIds,\n applicationId: context.applicationId,\n },\n sessionRestored: true,\n });\n\n hasInitializedRef.current = true;\n logDebug('One-off token exchange successful', { tokenType: context.tokenType });\n } catch (e: any) {\n const msg = e?.message || 'One-off token exchange failed';\n handleError(e, 'One-off token exchange failed', { message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [tokenStorage, setResourcesAuthToken, setResourcesConsumableToken, connectWebSocket, handleError]);\n\n const logout = useCallback((): void => {\n logDebug('Logging out user');\n\n // Auth-hardening Slice A Step 3 (2026-04-13) — refresh token now travels\n // via the `__wildo_refresh` `HttpOnly` cookie. JS can't read it (and\n // doesn't need to): the cookie auto-attaches via `withCredentials: true`\n // on `/auth/*` because of the `authCookiesInterceptor`. Backend\n // `logout()` handler dual-reads (cookie-first, body-fallback per A-K-5)\n // and ALWAYS clears the cookie, so this fire-and-forget call works even\n // when the JS access token was lost (e.g., post tab crash). We keep\n // this unconditional now — there's no JS-visible \"is there a session\n // to revoke?\" signal anymore.\n getManualCallsHttpClient()\n .logoutFromBackend()\n .catch((e) => {\n logger.warn('Backend logout call failed (token revocation)', { error: e });\n });\n\n broadcastChannelRef.current?.postMessage({ type: 'LOGOUT' });\n\n disconnect();\n\n // Clear consumable token from HTTP client singletons (prevents stale header leakage)\n getManualCallsHttpClient().setConsumableToken(null);\n getManualCallsHttpClient().setAuthToken(null);\n setResourcesConsumableToken(null);\n setResourcesAuthToken(null);\n\n tokenStorage.clear();\n setAuth(EMPTY_AUTH_STATE);\n\n hasInitializedRef.current = false;\n\n logger.info('User logged out successfully');\n }, [disconnect, tokenStorage, setResourcesAuthToken, setResourcesConsumableToken]);\n\n /**\n * Single-use clear for the cross-frontend-handoff context.\n *\n * Called by `Auth_OneOffSession` on unmount in cross-frontend-handoff\n * mode (which happens AFTER the post-exchange `<Navigate to>` resolves\n * and React unmounts the receiver). Unmount-cleanup timing is critical:\n * clearing earlier would race the `useMemo(targetUrl, [auth.crossFrontendHandoffContext, …])`\n * recomputation and could navigate the user to home instead of `returnPath`.\n */\n const clearCrossFrontendHandoffContext = useCallback((): void => {\n setAuth(a => (a.crossFrontendHandoffContext === undefined\n ? a\n : { ...a, crossFrontendHandoffContext: undefined }));\n }, []);\n\n /**\n * Mark session as restored (called by UserOrgsContext when it finishes loading user data)\n */\n const markSessionRestored = useCallback((): void => {\n setAuth(a => ({\n ...a,\n sessionRestored: true,\n isRestoringSession: false,\n }));\n }, []);\n\n /**\n * Set session restoring state (called by UserOrgsContext)\n */\n const setSessionRestoring = useCallback((isRestoring: boolean): void => {\n setAuth(a => ({\n ...a,\n isRestoringSession: isRestoring,\n }));\n }, []);\n\n // ─────────────────────────────────────────────────────────────────────────\n // Token refresh handler (re-entrant safe)\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Token renewal handler registered on HTTP clients.\n * Called automatically by the interceptor when a 401 OUTDATED_AUTH_JWT is received.\n *\n * Re-entrant safe: if multiple requests get 401 simultaneously, only one refresh\n * call is made and all callers share the same promise.\n */\n const tokenRenewalHandler = useCallback(async (): Promise<string> => {\n // If a refresh is already in flight IN THIS TAB, piggyback on it.\n if (refreshInFlightRef.current) {\n logger.debug('Auth token renewal already in flight; waiting for shared result');\n return refreshInFlightRef.current;\n }\n\n // The access token that just failed verification. Captured before we take\n // the cross-tab lock so that, once we hold it, we can detect whether\n // another tab already rotated a fresh token into shared storage while we\n // were waiting (see `adoptCrossTabRefreshedToken`).\n const staleAccessToken = tokenStorage.getAccessToken();\n\n // Adopt — WITHOUT a network call — an access token that another tab already\n // rotated into the shared store while we were queued on the cross-tab lock.\n // Returns the adopted token, or `null` if storage still holds the stale\n // token (meaning THIS tab must perform the network rotation).\n const adoptCrossTabRefreshedToken = (): string | null => {\n const current = tokenStorage.getAccessToken();\n if (current && current !== staleAccessToken) {\n getManualCallsHttpClient().setAuthToken(current);\n setResourcesAuthToken(current);\n setAuth(a => (a.accessToken === current ? a : { ...a, accessToken: current }));\n refreshWebSocketAuth(current);\n logger.debug('Auth token renewal short-circuited; adopted token rotated by another tab');\n return current;\n }\n return null;\n };\n\n // The actual network rotation + local propagation. Assumes the caller holds\n // the cross-tab refresh lock (or that no lock primitive is available).\n const performNetworkRefresh = async (): Promise<string> => {\n // Auth-hardening Slice A Step 3 (2026-04-13) — refresh token travels via\n // the `__wildo_refresh` `HttpOnly` cookie. JS can't see the cookie\n // (`HttpOnly` blocks DOM reads), so we can't pre-check whether a refresh\n // is even possible; we just attempt the call.\n logger.debug('Auth token renewal started');\n const result = await getManualCallsHttpClient().refreshTokens();\n\n // Persist the rotated access token. The rotated refresh token landed in\n // the `__wildo_refresh` cookie via `Set-Cookie` on the same response —\n // the browser cookie store updated automatically; no JS plumbing needed.\n storeAuthTokens(result.accessToken);\n\n getManualCallsHttpClient().setAuthToken(result.accessToken);\n setResourcesAuthToken(result.accessToken);\n\n // Update React state — only the access token surfaces here.\n setAuth(a => ({\n ...a,\n accessToken: result.accessToken,\n }));\n\n // Broadcast the rotated ACCESS token so other tabs adopt it instead of\n // independently refreshing. The rotated refresh token is NOT broadcast —\n // it already landed in the shared same-origin `__wildo_refresh` cookie.\n broadcastChannelRef.current?.postMessage({\n type: 'TOKEN_REFRESHED',\n accessToken: result.accessToken,\n });\n\n logger.debug('Auth token renewal succeeded; frontend clients updated');\n refreshWebSocketAuth(result.accessToken);\n return result.accessToken;\n };\n\n // RC1 — CROSS-TAB SERIALIZATION via the Web Locks API.\n //\n // `refreshInFlightRef` only dedupes refreshes WITHIN a tab. Across tabs,\n // a mass-expiry event (e.g. a dev backend recompile expiring every tab's\n // access token at the same instant) makes every tab fire `/auth/token/\n // refresh` with the SAME current cookie. One wins and rotates the token;\n // the others present the now-rotated token a beat later, the backend's\n // reuse-detection treats that as theft and `invalidateAllTokensForUser`\n // NUKES every session. The `wildo-auth-refresh` lock ensures only ONE tab\n // performs the network rotation; the rest wait, then adopt the winner's\n // already-rotated token with no second network call. Falls back to a plain\n // refresh where Web Locks is unavailable (non-secure context / old browser;\n // localhost dev IS a secure context, so the lock is active there).\n const doRefresh = async (): Promise<string> => {\n const locks = typeof navigator !== 'undefined' ? navigator.locks : undefined;\n if (!locks?.request) {\n return performNetworkRefresh();\n }\n return locks.request('wildo-auth-refresh', async () => {\n const adopted = adoptCrossTabRefreshedToken();\n if (adopted) return adopted;\n return performNetworkRefresh();\n });\n };\n\n // Store the promise so concurrent callers in this tab share it.\n refreshInFlightRef.current = doRefresh().finally(() => {\n refreshInFlightRef.current = null;\n });\n\n try {\n return await refreshInFlightRef.current;\n } catch (error) {\n // RC2/RC3 — classify the failure. `logout()` clears the SHARED\n // `__wildo_refresh` cookie, so destroying the session on a transient\n // failure (backend restarting / 5xx / timeout) permanently logs out\n // every tab and breaks recovery. Only an AUTHORITATIVE rejection (the\n // backend explicitly refused this refresh token) warrants logout — and\n // in DEVELOPMENT not even that, because dev recompiles routinely produce\n // authoritative-looking 400/401s while the session is in fact fine once\n // the backend settles. See `auth-refresh-resilience.frontend.ts`.\n const authoritative = isAuthoritativeRefreshRejection(error);\n const devLenient = isRefreshDevLenient();\n\n if (authoritative && !devLenient) {\n logger.warn('Auth token renewal failed; refresh token was rejected and logout will follow', {\n error: isWildoBackendError(error)\n ? error.customMessageReference\n : (error instanceof Error ? error.message : 'Unknown error'),\n });\n logout();\n } else {\n logger.warn(\n 'Auth token renewal failed but session is preserved (will retry on the next request)',\n {\n authoritative,\n devLenient,\n reason: authoritative\n ? 'development leniency active — not logging out on an authoritative rejection'\n : 'transient failure (backend unreachable / 5xx / timeout) — not an authoritative rejection',\n },\n );\n }\n throw error;\n }\n }, [setResourcesAuthToken, logout, refreshWebSocketAuth, tokenStorage]);\n\n // Register the token renewal handler on both HTTP clients + expose it via ref\n // so the WebSocket `onAuthenticationError` callback (wired in `connectWebSocket`\n // above) always invokes the current handler.\n useEffect(() => {\n tokenRenewalHandlerRef.current = tokenRenewalHandler;\n getManualCallsHttpClient().setTokenRenewalHandler(tokenRenewalHandler);\n setResourcesTokenRenewalHandler(tokenRenewalHandler);\n }, [tokenRenewalHandler, setResourcesTokenRenewalHandler]);\n\n // Cross-tab token coordination via BroadcastChannel.\n // When one tab refreshes tokens, it broadcasts the new tokens so other tabs\n // adopt them instead of independently refreshing (which triggers rotation detection).\n useEffect(() => {\n if (typeof BroadcastChannel === 'undefined') return;\n\n const channel = new BroadcastChannel('wildo-auth-tokens');\n broadcastChannelRef.current = channel;\n\n channel.onmessage = (event: MessageEvent) => {\n const { type, accessToken } = event.data ?? {};\n\n if (type === 'TOKEN_REFRESHED' && accessToken) {\n // Auth-hardening Slice A Step 6 (2026-04-13) — payload only\n // carries the rotated access token. The rotated refresh token\n // landed in the shared `__wildo_refresh` cookie via the issuing\n // tab's `Set-Cookie` response, and same-origin tabs see the\n // new cookie automatically; nothing for this receiver to do.\n // Pre-Slice-A tabs that broadcast a `refreshToken` field have\n // long since aged out (A-Step 6 ships well after the dual-read\n // window closed); the destructuring above doesn't pick it up.\n logger.debug('Auth token renewal received from another tab; frontend clients updated');\n storeAuthTokens(accessToken);\n getManualCallsHttpClient().setAuthToken(accessToken);\n setResourcesAuthToken(accessToken);\n setAuth(a => ({ ...a, accessToken }));\n refreshWebSocketAuth(accessToken);\n }\n\n if (type === 'LOGOUT') {\n logDebug('Received logout signal from another tab');\n disconnect();\n tokenStorage.clear();\n getManualCallsHttpClient().setConsumableToken(null);\n setResourcesConsumableToken(null);\n storeAuthTokens(null);\n getManualCallsHttpClient().setAuthToken(null);\n setResourcesAuthToken(null);\n setAuth(EMPTY_AUTH_STATE);\n }\n };\n\n return () => {\n channel.close();\n broadcastChannelRef.current = null;\n };\n }, [setResourcesAuthToken, setResourcesConsumableToken, disconnect, refreshWebSocketAuth, tokenStorage]);\n\n // Initialize auth tokens on mount (from storage)\n useEffect(() => {\n // Prevent multiple initializations\n if (hasInitializedRef.current) {\n return;\n }\n\n // Auth-hardening Slice A Step 3 (2026-04-13) — only the access token\n // is stored client-side. The refresh token lives in the\n // `__wildo_refresh` `HttpOnly` cookie which JS can't read; it's\n // implicitly available as soon as the browser includes it on the\n // first `/auth/token/refresh` round-trip. No \"do we have a refresh\n // token?\" check needed at mount.\n const storedAccessToken = tokenStorage.getAccessToken();\n\n if (!storedAccessToken) {\n logDebug('No stored access token found');\n hasInitializedRef.current = true;\n return;\n }\n\n logDebug('Found stored access token, initializing auth state');\n hasInitializedRef.current = true;\n\n setAuth(a => ({\n ...a,\n accessToken: storedAccessToken,\n isRestoringSession: true,\n }));\n\n getManualCallsHttpClient().setAuthToken(storedAccessToken);\n setResourcesAuthToken(storedAccessToken);\n\n // UserOrgsContext will handle fetching user data and marking session as restored\n }, [setResourcesAuthToken, tokenStorage]);\n\n const value = useMemo<AuthSessionContextType>(() => ({\n auth,\n tokenStorage,\n\n // Authentication methods\n identifyByEmail,\n authenticateWithPassword,\n authenticate,\n getSessionState,\n isAuthenticated,\n logout,\n\n // OAuth2 + cross-frontend-handoff (shared AUTH_CODE_EXCHANGE primitive)\n initiateOAuth2Login,\n handleAuthCodeExchange,\n\n // Email verification\n handleEmailVerification,\n acceptInvitation,\n\n // Magic link verification\n handleMagicLinkVerify,\n\n // MFA verification\n handleMfaVerify,\n handlePasskeyAuth,\n\n // One-off session exchange (W7.3b)\n handleOneOffTokenExchange,\n\n // Cross-frontend handoff context (cross-app-jwt-propagation Step 5)\n clearCrossFrontendHandoffContext,\n\n // Session management\n markSessionRestored,\n setSessionRestoring,\n\n // WebSocket\n connectWebSocket,\n notifyOrganizationSwitch,\n }), [\n auth,\n tokenStorage,\n logout,\n initiateOAuth2Login,\n handleAuthCodeExchange,\n handleEmailVerification,\n acceptInvitation,\n handleMagicLinkVerify,\n handleMfaVerify,\n handlePasskeyAuth,\n handleOneOffTokenExchange,\n clearCrossFrontendHandoffContext,\n markSessionRestored,\n setSessionRestoring,\n connectWebSocket,\n notifyOrganizationSwitch,\n ]);\n\n return <AuthSessionContext.Provider value={value}>{children}</AuthSessionContext.Provider>;\n};\n"]}
1
+ {"version":3,"file":"AuthSessionContext.js","sourceRoot":"","sources":["../../../../src/core/security/AuthSessionContext.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { createContext, useState, ReactNode, useMemo, useEffect, useCallback, useRef } from 'react';\nimport { startAuthentication } from '@simplewebauthn/browser';\nimport type { PublicKeyCredentialRequestOptionsJSON } from '@simplewebauthn/browser';\nimport {\n AuthenticationResponse,\n AuthIdentificationResponse,\n AuthenticationRequest,\n AuthMethod,\n AuthFactorLevel,\n AuthSessionPurpose,\n SessionType,\n isWildoBackendError,\n} from '@wildo-ai/saas-models';\nimport { getManualCallsHttpClient } from '~wildo-frontend-lib/core/requests/wildo-http-client-manual-calls.frontend.service';\nimport { isAuthoritativeRefreshRejection, isRefreshDevLenient } from '~wildo-frontend-lib/core/requests/auth-refresh-resilience.frontend';\nimport { useResourceRegistry } from '~wildo-frontend-lib/core/resources/useResourceRegistry';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { resolveComponentLabel } from '~wildo-frontend-lib/core/i18n/component-label-resolution.utils';\nimport { LoggerFrontendService } from '~wildo-frontend-lib/core/monitoring/logger.frontend.service';\nimport { useError } from '~wildo-frontend-lib/core/errors/useError';\nimport { useApplication } from '~wildo-frontend-lib/core/runtime/useApplication';\nimport { useWebSocket } from '~wildo-frontend-lib/core/requests/websockets/useWebSocket';\nimport { useAnonymousSession } from '~wildo-frontend-lib/core/security/AnonymousSessionContext';\nimport {\n AuthState,\n EMPTY_AUTH_STATE,\n type UIFactorLevel,\n} from './security.frontend.schemas';\nimport {\n type SessionTokenStorage,\n PersistentSessionTokenStorage,\n} from './session-token-storage.frontend.service';\nimport { FrontendComponentType, MfaChallengeLabel, UserAuthLabel } from '@wildo-ai/presets-components-models';\n\nconst logger: LoggerFrontendService = LoggerFrontendService.getLogger();\nconst logDebug: (message: string, context?: Record<string, unknown>) => void = logger.debugByType('AuthSessionContext');\nlogger.setDebugTypeLogging('AuthSessionContext', false);\n\nfunction extractAuthErrorMessage(error: any, fallback: string): string {\n const guidanceExplanation = error?.wildoError?.userGuidance?.explanation\n || error?.response?.data?.error?.userGuidance?.explanation;\n if (typeof guidanceExplanation === 'string' && guidanceExplanation.length > 0) {\n return guidanceExplanation;\n }\n\n const detailsMessage = error?.response?.data?.error?.details?.message;\n if (typeof detailsMessage === 'string' && detailsMessage.length > 0) {\n return detailsMessage;\n }\n\n const contextMessage = error?.context?.message;\n if (typeof contextMessage === 'string' && contextMessage.length > 0) {\n return contextMessage;\n }\n\n return error?.message || fallback;\n}\n\n\n/**\n * Auth Session Context\n * Manages authentication, session lifecycle, and WebSocket connection\n */\n\nexport interface AuthSessionContextType {\n // Auth state\n auth: AuthState;\n\n // Token storage strategy (persistent or ephemeral)\n tokenStorage: SessionTokenStorage;\n\n // Authentication methods\n identifyByEmail: (email: string) => Promise<AuthIdentificationResponse>;\n authenticateWithPassword: (email: string, password: string) => Promise<AuthenticationResponse>;\n authenticate: (request: AuthenticationRequest) => Promise<AuthenticationResponse>;\n getSessionState: (sessionId: string) => Promise<any>;\n isAuthenticated: () => boolean;\n logout: () => void;\n\n // OAuth2 methods\n initiateOAuth2Login: (providerRef: string, returnUrl?: string) => Promise<void>;\n handleAuthCodeExchange: (code: string) => Promise<void>;\n\n // Email verification (auto-login after registration)\n handleEmailVerification: (token: string, email: string) => Promise<void>;\n\n // Invitation acceptance. Returns the PASSKEY-at-accept WebAuthn challenge when the invitee\n // chose passkey and a session was issued (caller runs the ceremony + verify); empty otherwise.\n acceptInvitation: (params: { invitationToken: string; firstName?: string; lastName?: string; password?: string; credentialMethod?: AuthMethod }) => Promise<{ passkeyRegistrationOptions?: Record<string, unknown> }>;\n\n // Magic link verification (passwordless login)\n handleMagicLinkVerify: (token: string, email: string) => Promise<AuthenticationResponse>;\n\n // MFA second factor verification\n handleMfaVerify: (sessionId: string, method: AuthMethod, code: string) => Promise<AuthenticationResponse>;\n\n // Passkey authentication (first or second factor)\n handlePasskeyAuth: (sessionId: string, factorLevel?: UIFactorLevel) => Promise<AuthenticationResponse>;\n\n // One-off session exchange (W7.3b)\n handleOneOffTokenExchange: (token: string) => Promise<void>;\n\n // Cross-frontend handoff context (cross-app-jwt-propagation Step 5)\n /**\n * Clears `auth.crossFrontendHandoffContext` after the receiving component\n * has consumed it for navigation. The context is single-use by design —\n * it describes \"you just landed via a handoff\", not an ongoing session\n * property. Leaving it set indefinitely would (a) leak handoff metadata\n * to telemetry hooks long after the navigation completed and (b) confuse\n * any subsequent handoff that arrives without one of the optional\n * fields (the receiver would read stale source/target identifiers).\n * Auth_OneOffSession calls this on unmount in cross-frontend-handoff\n * mode (see component for sequencing rationale).\n */\n clearCrossFrontendHandoffContext: () => void;\n\n // Session management\n markSessionRestored: () => void;\n setSessionRestoring: (isRestoring: boolean) => void;\n\n // WebSocket\n connectWebSocket: (token: string, organizationId?: string | null, consumableToken?: string | null) => void;\n notifyOrganizationSwitch: (newOrgId: string, previousOrgId: string) => void;\n}\n\n/**\n * AuthSession Context\n * @internal - Use useAuthSession() hook instead of accessing this directly\n */\nexport const AuthSessionContext: React.Context<AuthSessionContextType | undefined> = createContext<AuthSessionContextType | undefined>(undefined);\n\nexport const AuthSessionProvider: React.FC<{\n children: ReactNode;\n tokenStorage?: SessionTokenStorage;\n}> = ({ children, tokenStorage: tokenStorageProp }) => {\n const tokenStorage = useMemo(\n () => tokenStorageProp ?? new PersistentSessionTokenStorage(),\n [tokenStorageProp]\n );\n const { setAuthToken: setResourcesAuthToken, setTokenRenewalHandler: setResourcesTokenRenewalHandler, setConsumableToken: setResourcesConsumableToken } = useResourceRegistry();\n const { handleError } = useError();\n const { tComponent, isReady } = useI18n({ component: [FrontendComponentType.PUBLIC_LAYOUTS_USER_AUTH, FrontendComponentType.PUBLIC_LAYOUTS_MFA_CHALLENGE] });\n const { appConfig } = useApplication();\n const { connect, disconnect, refreshAuth: refreshWebSocketAuth, switchOrganization: wsSwitchOrganization } = useWebSocket();\n const { clearAnonymousSession } = useAnonymousSession();\n const hasInitializedRef = useRef(false);\n const broadcastChannelRef = useRef<BroadcastChannel | null>(null);\n const refreshInFlightRef = useRef<Promise<string> | null>(null);\n // Holds the latest `tokenRenewalHandler` so `connectWebSocket` (defined far\n // earlier in this component) can hand the WebSocket layer a stable\n // `onAuthenticationError` callback without a definition-order / stale-closure\n // dependency on the handler. Kept current by the registration effect below.\n const tokenRenewalHandlerRef = useRef<(() => Promise<string>) | null>(null);\n\n const [auth, setAuth] = useState<AuthState>({\n ...EMPTY_AUTH_STATE,\n accessToken: tokenStorage.getAccessToken(),\n // Auth-hardening Slice A Step 6 (2026-04-13) — `AuthState` no\n // longer carries a `refreshToken` field. The refresh token lives\n // exclusively in the `__wildo_refresh` `HttpOnly` cookie (set by\n // the backend, scoped `Path=/api/v1/auth`). `EphemeralSessionTokenStorage`\n // may still hold a value for one-off / test contexts via its own\n // in-memory slot but `AuthSessionContext` deliberately never\n // mirrors it into React state — the cookie is the sole source of\n // truth for the rotation channel.\n });\n\n /**\n * Auth-hardening Slice A Step 3 (2026-04-13) — `storeAuthTokens` now only\n * carries the access token. The refresh token travels via the\n * `__wildo_refresh` `HttpOnly` cookie (set by the backend on every issuance\n * / rotation, scoped `Path=/api/v1/auth`). We pass `null` to\n * `tokenStorage.storeTokens` so any stale localStorage refresh token from a\n * pre-migration session is wiped on the next call (and `EphemeralSessionTokenStorage`\n * stops accumulating an in-memory value that nothing reads).\n */\n const storeAuthTokens = (accessToken: string | null): void => {\n tokenStorage.storeTokens(accessToken, null);\n if (accessToken) {\n clearAnonymousSession();\n }\n };\n\n /**\n * Derive WebSocket URL from appConfig runtime endpoints\n *\n * IMPORTANT: Always use publicUrl (never internalUrl) since browsers cannot access\n * internal Kubernetes service URLs. The publicUrl is the Traefik ingress URL\n * that the browser can reach.\n *\n * Returns null if URL cannot be derived - WebSocket should not connect in this case.\n */\n const deriveWebSocketUrl = useCallback((): string | null => {\n if (!appConfig?.runtime?.endPoints?.main_backend_api) {\n logger.warn('WebSocket: Cannot derive URL - appConfig.runtime.endPoints.main_backend_api not available');\n return null;\n }\n\n const backendUrl = appConfig.runtime.endPoints.main_backend_api;\n // CRITICAL: Always use publicUrl for WebSocket connections from browser\n // internalUrl is only accessible within the Kubernetes cluster\n const urlString = backendUrl.publicUrl;\n\n if (!urlString) {\n logger.warn('WebSocket: Cannot derive URL - publicUrl not available in main_backend_api config');\n return null;\n }\n\n // Convert http:// to ws:// and https:// to wss://\n // IMPORTANT: Do NOT append /socket.io to the URL - Socket.IO automatically\n // uses /socket.io as the engine.io path. If we include it here, Socket.IO\n // interprets it as a namespace, causing \"Invalid namespace\" errors.\n const wsUrl = urlString.replace(/^http/, 'ws');\n return wsUrl;\n }, [appConfig]);\n\n /**\n * Connect WebSocket with current authentication token\n * Only connects if URL is available and token is valid\n */\n const connectWebSocket = useCallback((token: string, organizationId?: string | null, consumableToken?: string | null): void => {\n if (!token) {\n logDebug('WebSocket: Cannot connect - no token provided');\n return;\n }\n\n const wsUrl = deriveWebSocketUrl();\n\n if (!wsUrl) {\n logDebug('WebSocket: Cannot connect - URL is not available');\n return;\n }\n\n try {\n connect({\n url: wsUrl,\n token,\n organizationId: organizationId || undefined,\n consumableToken: consumableToken || undefined,\n autoReconnect: true,\n // Base retry delay only — the transport grows it exponentially toward its\n // 30s cap (see WebSocketContext.performActualConnect). A large budget plus\n // the connectivity supervisor (online / visibility / watchdog re-arm) means\n // the socket recovers indefinitely instead of dying after a handful of\n // attempts, so these are resilient defaults rather than a hard ceiling.\n reconnectInterval: 1000,\n maxReconnectAttempts: 15,\n // Self-heal an expired access token WITHOUT depending on HTTP traffic or\n // window focus. When the handshake is rejected for auth, the WS layer\n // calls this; `tokenRenewalHandler` performs the resilient refresh and,\n // on success, seeds the fresh token back into the socket via\n // `refreshWebSocketAuth`, so the next reconnect handshake succeeds. This\n // keeps a backgrounded/unfocused tab's real-time background jobs flowing\n // across token expiry. Read via ref because the handler is defined after\n // this callback (see `tokenRenewalHandlerRef`).\n onAuthenticationError: () => tokenRenewalHandlerRef.current?.(),\n });\n logDebug('WebSocket connection initiated', { wsUrl });\n } catch (error) {\n logger.warn('Failed to connect WebSocket', { error });\n }\n }, [connect, deriveWebSocketUrl]);\n\n /**\n * Notify WebSocket of organization switch\n */\n const notifyOrganizationSwitch = useCallback((newOrgId: string, previousOrgId: string): void => {\n wsSwitchOrganization(newOrgId, previousOrgId);\n }, [wsSwitchOrganization]);\n\n const identifyByEmail = async (email: string): Promise<AuthIdentificationResponse> => {\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n logDebug('Identifying user by email', { email });\n try {\n const resp = await getManualCallsHttpClient().identifyByEmail(email);\n\n logDebug('User identification successful', { sessionId: resp.sessionId });\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n identification: resp,\n sessionId: resp.sessionId,\n purpose: a.purpose ?? AuthSessionPurpose.LOGIN,\n }));\n\n return resp as AuthIdentificationResponse;\n } catch (e: any) {\n const msg = extractAuthErrorMessage(e, 'Identification failed');\n handleError(e, 'Identification failed', { email, message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n };\n\n const authenticateWithPassword = async (email: string, password: string): Promise<AuthenticationResponse> => {\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n logDebug('Authenticating with password', { email, sessionId: auth.sessionId });\n try {\n const sessionId = auth.sessionId;\n if (!sessionId) {\n const error = new Error('No active session. Please identify user first.');\n logger.warn('Authentication attempted without session', { email });\n throw error;\n }\n\n // Use the general authenticate endpoint with proper request structure\n const authRequest: AuthenticationRequest = {\n sessionId,\n method: AuthMethod.PASSWORD,\n factorLevel: AuthFactorLevel.FIRST,\n password,\n rememberMe: false,\n requestedIntegrations: []\n };\n\n const resp = await getManualCallsHttpClient().authenticate(authRequest);\n\n if (resp.requiresMFA && !resp.accessToken) {\n setAuth(a => ({\n ...a,\n isLoading: false,\n mfaRequired: true,\n mfaSessionId: resp.sessionId || sessionId,\n availableMfaMethods: resp.availableMFAMethods || [],\n availableEnrollmentMethods: resp.availableEnrollmentMethods || [],\n enrolledSecondFactorMethods: resp.enrolledSecondFactorMethods || [],\n usableSecondFactorMethods: resp.usableSecondFactorMethods || [],\n }));\n return resp as AuthenticationResponse;\n }\n\n const accessToken = resp.accessToken || null;\n\n storeAuthTokens(accessToken);\n\n if (accessToken) {\n getManualCallsHttpClient().setAuthToken(accessToken);\n setResourcesAuthToken(accessToken);\n }\n\n logDebug('Authentication successful', { success: resp.success, hasAccessToken: !!accessToken });\n\n if (resp.success && accessToken) {\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken,\n isRestoringSession: true,\n sessionRestored: false,\n sessionId: null,\n }));\n\n hasInitializedRef.current = true;\n } else {\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken,\n sessionId: resp.success ? null : sessionId,\n }));\n }\n\n return resp as AuthenticationResponse;\n } catch (e: any) {\n const msg = extractAuthErrorMessage(e, 'Authentication failed');\n handleError(e, 'Authentication failed', { email, message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n };\n\n const authenticate = async (request: AuthenticationRequest): Promise<AuthenticationResponse> => {\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n logDebug('Authenticating', { method: request.method, sessionId: request.sessionId || auth.sessionId });\n try {\n const sessionId = request.sessionId || auth.sessionId;\n if (!sessionId) {\n const error = new Error('No active session. Please identify user first.');\n logger.warn('Authentication attempted without session', { method: request.method });\n throw error;\n }\n\n const withSession = { ...request, sessionId } as AuthenticationRequest;\n const resp = await getManualCallsHttpClient().authenticate(withSession);\n\n if (resp.requiresMFA && !resp.accessToken) {\n setAuth(a => ({\n ...a,\n isLoading: false,\n mfaRequired: true,\n mfaSessionId: resp.sessionId || sessionId,\n availableMfaMethods: resp.availableMFAMethods || [],\n availableEnrollmentMethods: resp.availableEnrollmentMethods || [],\n enrolledSecondFactorMethods: resp.enrolledSecondFactorMethods || [],\n usableSecondFactorMethods: resp.usableSecondFactorMethods || [],\n }));\n return resp;\n }\n\n const accessToken = resp.accessToken || null;\n\n storeAuthTokens(accessToken);\n\n if (accessToken) {\n getManualCallsHttpClient().setAuthToken(accessToken);\n setResourcesAuthToken(accessToken);\n }\n\n logDebug('Authentication successful', { success: resp.success, hasAccessToken: !!accessToken, method: request.method });\n\n if (resp.success && accessToken) {\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken,\n isRestoringSession: true,\n sessionRestored: false,\n sessionId: null,\n }));\n\n hasInitializedRef.current = true;\n } else {\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken,\n sessionId: resp.success ? null : sessionId,\n }));\n }\n\n return resp;\n } catch (e: any) {\n const msg = extractAuthErrorMessage(e, 'Authentication failed');\n handleError(e, 'Authentication failed', { method: request.method, message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n };\n\n const getSessionState = async (sessionId: string): Promise<any> => {\n logDebug('Getting session state', { sessionId });\n try {\n const sessionState = await getManualCallsHttpClient().getSessionState(sessionId);\n setAuth(a => ({ ...a, sessionState, purpose: sessionState?.purpose ?? a.purpose }));\n logDebug('Session state retrieved', { sessionId });\n return sessionState;\n } catch (e: any) {\n handleError(e, 'Failed to get session state', { sessionId });\n throw e;\n }\n };\n\n const isAuthenticated = (): boolean => {\n return !!auth.accessToken;\n };\n\n /**\n * Initiate OAuth2 login by redirecting to the provider's authorization page.\n * Calls GET /auth/oauth2/authorize/:providerRef to get the authorization URL,\n * then performs a full-page redirect to that URL.\n *\n * Browser-only flow. The framework targets web stacks exclusively (the engine's\n * value prop is sharing TypeScript across browser-rendered surfaces — SAAS_APP,\n * STATIC_WEBSITE, TECH_DOC), so no native-SDK / Capacitor / Electron variants\n * exist for this method.\n */\n const initiateOAuth2Login = useCallback(async (providerRef: string, returnUrl?: string): Promise<void> => {\n logDebug('Initiating OAuth2 login', { providerRef, returnUrl });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n try {\n const { authorizationUrl } = await getManualCallsHttpClient().getOAuth2AuthorizationUrl(providerRef, returnUrl);\n logDebug('Redirecting to OAuth2 provider', { providerRef, authorizationUrl });\n window.location.href = authorizationUrl;\n } catch (e: any) {\n const msg = e?.message || 'Failed to initiate OAuth2 login';\n handleError(e, 'OAuth2 login initiation failed', { providerRef, message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [handleError]);\n\n /**\n * Exchange a single-use AUTH_CODE_EXCHANGE consumable token for a JWT pair\n * via `POST /auth/token/exchange`.\n *\n * Renamed from `handleOAuth2Callback` in cross-app-jwt-propagation\n * Step 5's deferred refactor pass — the method handles BOTH issuance\n * flows that mint AUTH_CODE_EXCHANGE codes, so the OAuth2-specific\n * naming was misleading:\n *\n * - **OAuth2 callback** (`AuthPage_AuthCallback` route): the backend\n * OAuth2 callback handler mints a code AFTER the user returns from\n * the IdP. The exchange response carries `{accessToken, expiresIn}`\n * only — the rotated refresh token lives in the `Set-Cookie:\n * __wildo_refresh=…` header (Auth-hardening A-Step 6 cookie-only\n * contract; pre-A-Step-6 the body also carried `refreshToken`).\n * - **Cross-frontend handoff** (`AuthPage_AuthExchange` route, mounted\n * at `CommonRoutePaths.authExchange = '/auth/exchange'`): the backend\n * `crossFrontendHandoff()` handler mints a code via the same\n * AUTH_CODE_EXCHANGE primitive. The exchange response ALSO carries\n * `{returnPath, sourceFrontendServiceName, targetServiceKey}` (see\n * `TokenExchangeResponseSchema`), surfaced into\n * `auth.crossFrontendHandoffContext` for the receiving component\n * (`Auth_OneOffSession` in `cross-frontend-handoff` mode) to drive\n * post-exchange navigation.\n *\n * Discrimination (\"did this code come from a handoff?\") is purely by\n * presence of `returnPath` in the response — see `TokenExchangeResponseSchema`\n * JSDoc for the load-bearing `typeof returnPath === 'string'` invariant.\n *\n * Browser-only flow. The method is intentionally decoupled from React\n * Router navigation — it accepts a `code` string and performs the\n * exchange; the page-level component extracts the code from URL params\n * and calls this. The framework targets web stacks exclusively, so no\n * native deep-link variant exists.\n */\n const handleAuthCodeExchange = useCallback(async (code: string): Promise<void> => {\n logDebug('Handling AUTH_CODE_EXCHANGE token (OAuth2 callback or cross-frontend handoff)', { codeLength: code.length });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n try {\n const response = await getManualCallsHttpClient().exchangeAuthCode(code);\n const { accessToken, returnPath, sourceFrontendServiceName, targetServiceKey } = response;\n\n storeAuthTokens(accessToken);\n getManualCallsHttpClient().setAuthToken(accessToken);\n setResourcesAuthToken(accessToken);\n\n // Cross-frontend-handoff signal: the issuer (cross-app-jwt-propagation\n // Step 2) puts `returnPath` into the consumable-token metadata; the\n // exchange handler (Step 5) round-trips it back here. OAuth2-callback\n // codes do NOT carry it, so a missing field correctly leaves the\n // context undefined for the OAuth2 path. The receiving component\n // (`Auth_OneOffSession` mounted at `/auth/exchange` in\n // cross-frontend-handoff mode) reads `crossFrontendHandoffContext`\n // and navigates accordingly.\n //\n // Discriminator invariant: `typeof returnPath === 'string'` is the\n // ONLY signal that distinguishes a handoff-issued exchange from an\n // OAuth2-callback exchange (no `kind` discriminator field is sent\n // over the wire — see `TokenExchangeResponseSchema` rationale in\n // `cross-frontend-handoff.shared.dto.schemas.ts`). The backend\n // controller is contractually required to use omit-when-absent (NOT\n // emit `null` or `''`) for OAuth2 codes; the\n // `TokenExchangeResponseSchema.parse()` call in `tokenExchange()`\n // and the integration test in\n // `cross-frontend-handoff-token-exchange.integration.test.ts`\n // jointly enforce this. If both safety nets ever regress, this\n // discriminator silently flips to false-positives and OAuth2 users\n // would land with a stale handoff context.\n const crossFrontendHandoffContext = typeof returnPath === 'string'\n ? {\n returnPath,\n ...(sourceFrontendServiceName !== undefined && { sourceFrontendServiceName }),\n ...(targetServiceKey !== undefined && { targetServiceKey }),\n }\n : undefined;\n\n logDebug('OAuth2 callback successful, tokens stored', {\n isCrossFrontendHandoff: crossFrontendHandoffContext !== undefined,\n });\n\n // Update auth state — mark as restoring so UserOrgsContext picks up and loads user data\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken,\n isRestoringSession: true,\n sessionRestored: false,\n // Clear any previous session (OAuth2 bypasses identify/authenticate flow)\n sessionId: null,\n crossFrontendHandoffContext,\n }));\n\n hasInitializedRef.current = true;\n } catch (e: any) {\n const msg = e?.message || 'OAuth2 authentication failed';\n handleError(e, 'OAuth2 callback failed', { message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError]);\n\n /**\n * Handle email verification by exchanging the verification token for JWT tokens.\n * Called from the /confirm-email page after the user clicks the verification link.\n * Flow: Email link → /confirm-email?token=xxx → this method\n *\n * On success, stores tokens and updates auth state (auto-login).\n */\n const handleEmailVerification = useCallback(async (token: string, email: string): Promise<void> => {\n logDebug('Handling email verification', { tokenLength: token.length, email });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n try {\n const response = await getManualCallsHttpClient().verifyEmail(token, email);\n\n if (response.accessToken) {\n storeAuthTokens(response.accessToken);\n getManualCallsHttpClient().setAuthToken(response.accessToken);\n setResourcesAuthToken(response.accessToken);\n\n logDebug('Email verification successful, tokens stored');\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken: response.accessToken!,\n isRestoringSession: true,\n sessionRestored: false,\n sessionId: null,\n }));\n\n hasInitializedRef.current = true;\n } else {\n logDebug('Email verification succeeded but tokens not issued — pipeline requires further steps', {\n state: response.state,\n nextStep: response.nextStep,\n });\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n sessionId: null,\n mfaRequired: response.requiresMFA ?? false,\n mfaSessionId: response.requiresMFA ? (response.sessionId ?? null) : null,\n availableMfaMethods: [],\n availableEnrollmentMethods: response.availableEnrollmentMethods || [],\n enrolledSecondFactorMethods: [],\n usableSecondFactorMethods: [],\n error: null,\n }));\n }\n } catch (e: any) {\n const msg = e?.message || 'Email verification failed';\n handleError(e, 'Email verification failed', { message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError]);\n\n const acceptInvitation = useCallback(async (\n params: { invitationToken: string; firstName?: string; lastName?: string; password?: string; credentialMethod?: AuthMethod },\n ): Promise<{ passkeyRegistrationOptions?: Record<string, unknown> }> => {\n logDebug('Handling invitation acceptance', { hasPassword: !!params.password, credentialMethod: params.credentialMethod });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n try {\n const response = await getManualCallsHttpClient().acceptInvitation(params);\n\n if (response.accessToken) {\n storeAuthTokens(response.accessToken);\n getManualCallsHttpClient().setAuthToken(response.accessToken);\n setResourcesAuthToken(response.accessToken);\n\n logDebug('Invitation acceptance successful, tokens stored');\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken: response.accessToken!,\n isRestoringSession: true,\n sessionRestored: false,\n sessionId: null,\n mfaRequired: false,\n mfaSessionId: null,\n availableMfaMethods: [],\n availableEnrollmentMethods: [],\n enrolledSecondFactorMethods: [],\n usableSecondFactorMethods: [],\n error: null,\n }));\n\n hasInitializedRef.current = true;\n } else {\n logDebug('Invitation acceptance requires further auth steps', {\n state: response.state,\n nextStep: response.nextStep,\n });\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n sessionId: null,\n mfaRequired: response.requiresMFA ?? false,\n mfaSessionId: response.requiresMFA ? (response.sessionId ?? null) : null,\n availableMfaMethods: [],\n availableEnrollmentMethods: response.availableEnrollmentMethods || [],\n enrolledSecondFactorMethods: [],\n usableSecondFactorMethods: [],\n error: null,\n }));\n }\n\n // PASSKEY-enroll-at-accept: hand the pre-generated WebAuthn registration challenge back to\n // the caller so it can run the browser ceremony and complete it against the authenticated\n // `/auth/passkey/register/verify` route (the access token was just set on the HTTP client\n // above). Present only on the passkey path's session-issued branch; undefined otherwise.\n return { passkeyRegistrationOptions: response.passkeyRegistrationOptions };\n } catch (e: any) {\n const msg = e?.message || 'Invitation acceptance failed';\n handleError(e, 'Invitation acceptance failed', { message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError]);\n\n /**\n * Handle magic link verification — verifies the token and auto-logs in the user.\n * Called from the /auth/magic-link/verify page after the user clicks the email link.\n * Returns the full AuthenticationResponse so the page can handle MFA-required state.\n */\n const handleMagicLinkVerify = useCallback(async (token: string, email: string): Promise<AuthenticationResponse> => {\n logDebug('Handling magic link verification', { tokenLength: token.length, email });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n try {\n const response = await getManualCallsHttpClient().magicLinkVerify(token, email);\n\n if (response.requiresMFA && !response.accessToken) {\n setAuth(a => ({\n ...a,\n isLoading: false,\n mfaRequired: true,\n mfaSessionId: response.sessionId || null,\n availableMfaMethods: response.availableMFAMethods || [],\n availableEnrollmentMethods: response.availableEnrollmentMethods || [],\n enrolledSecondFactorMethods: response.enrolledSecondFactorMethods || [],\n usableSecondFactorMethods: response.usableSecondFactorMethods || [],\n }));\n return response;\n }\n\n // Auth-hardening Slice A Step 6 (2026-04-13): the cookie-only\n // contract means `response.refreshToken` no longer exists on the\n // wire — the rotated value lives in the `Set-Cookie:\n // __wildo_refresh=…` response header (HttpOnly, JS-invisible).\n // Gate on `success && accessToken` only.\n if (response.success && response.accessToken) {\n storeAuthTokens(response.accessToken);\n getManualCallsHttpClient().setAuthToken(response.accessToken);\n setResourcesAuthToken(response.accessToken);\n\n logDebug('Magic link verification successful, tokens stored');\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken: response.accessToken!,\n isRestoringSession: true,\n sessionRestored: false,\n sessionId: null,\n }));\n\n hasInitializedRef.current = true;\n } else {\n setAuth(a => ({ ...a, isLoading: false }));\n }\n\n return response;\n } catch (e: any) {\n const msg = e?.message || 'Magic link verification failed';\n handleError(e, 'Magic link verification failed', { message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError]);\n\n /**\n * Handle MFA second-factor verification.\n * Dispatches to the appropriate OTP verify method based on the selected auth method.\n * On success, stores tokens and updates auth state (auto-login).\n */\n const handleMfaVerify = useCallback(async (sessionId: string, method: AuthMethod, code: string): Promise<AuthenticationResponse> => {\n logDebug('Handling MFA verification', { sessionId, method });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n try {\n const client = getManualCallsHttpClient();\n const response = await client.authenticate({\n sessionId,\n method,\n factorLevel: AuthFactorLevel.SECOND,\n token: code,\n rememberMe: false,\n requestedIntegrations: [],\n } as AuthenticationRequest);\n\n // Auth-hardening Slice A Step 6 (2026-04-13): cookie-only contract\n // — see the magic-link gate above for the full rationale.\n if (response.success && response.accessToken) {\n storeAuthTokens(response.accessToken);\n client.setAuthToken(response.accessToken);\n setResourcesAuthToken(response.accessToken);\n\n logDebug('MFA verification successful, tokens stored');\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken: response.accessToken!,\n isRestoringSession: true,\n sessionRestored: false,\n sessionId: null,\n mfaRequired: false,\n mfaSessionId: null,\n availableMfaMethods: [],\n enrolledSecondFactorMethods: [],\n usableSecondFactorMethods: [],\n }));\n\n hasInitializedRef.current = true;\n } else {\n setAuth(a => ({ ...a, isLoading: false, error: response.error || 'MFA verification failed' }));\n }\n\n return response;\n } catch (e: any) {\n const msg = e?.message || 'MFA verification failed';\n handleError(e, 'MFA verification failed', { method, message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError]);\n\n const handlePasskeyAuth = useCallback(async (sessionId: string, factorLevel: UIFactorLevel = 'first'): Promise<AuthenticationResponse> => {\n logDebug('Handling passkey authentication', { sessionId, factorLevel });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n const componentType = factorLevel === 'first' ? FrontendComponentType.PUBLIC_LAYOUTS_USER_AUTH : FrontendComponentType.PUBLIC_LAYOUTS_MFA_CHALLENGE;\n const t = (key: string) => resolveComponentLabel({\n tComponent,\n componentType,\n key,\n });\n const passkeyErrorLabel = factorLevel === 'first' ? UserAuthLabel.PASSKEY_ERROR : MfaChallengeLabel.PASSKEY_ERROR;\n const passkeyCancelledLabel = factorLevel === 'first' ? UserAuthLabel.PASSKEY_CANCELLED : MfaChallengeLabel.PASSKEY_CANCELLED;\n try {\n const client = getManualCallsHttpClient();\n const options = await client.passkeyAuthOptions(sessionId) as unknown as PublicKeyCredentialRequestOptionsJSON;\n const credential = await startAuthentication({ optionsJSON: options });\n const verifyBody = { response: credential, sessionId, factorLevel };\n const response = await client.passkeyAuthVerify(verifyBody);\n\n if (response.requiresMFA && !response.accessToken) {\n setAuth(a => ({\n ...a,\n isLoading: false,\n mfaRequired: true,\n mfaSessionId: response.sessionId || sessionId,\n availableMfaMethods: response.availableMFAMethods || [],\n availableEnrollmentMethods: response.availableEnrollmentMethods || [],\n enrolledSecondFactorMethods: response.enrolledSecondFactorMethods || [],\n usableSecondFactorMethods: response.usableSecondFactorMethods || [],\n }));\n return response;\n }\n\n // Auth-hardening Slice A Step 6 (2026-04-13): cookie-only contract\n // — see the magic-link gate above for the full rationale.\n if (response.success && response.accessToken) {\n storeAuthTokens(response.accessToken);\n client.setAuthToken(response.accessToken);\n setResourcesAuthToken(response.accessToken);\n logDebug('Passkey authentication successful, tokens stored');\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken: response.accessToken!,\n isRestoringSession: true,\n sessionRestored: false,\n sessionId: null,\n mfaRequired: false,\n mfaSessionId: null,\n availableMfaMethods: [],\n availableEnrollmentMethods: [],\n enrolledSecondFactorMethods: [],\n usableSecondFactorMethods: [],\n }));\n hasInitializedRef.current = true;\n } else {\n setAuth(a => ({ ...a, isLoading: false, error: response.error || t(passkeyErrorLabel) }));\n }\n return response;\n } catch (e: unknown) {\n const err = e as { name?: string; message?: string };\n let msg: string;\n if (err?.name === 'NotAllowedError') {\n msg = t(passkeyCancelledLabel);\n } else if (isWildoBackendError(e)) {\n const wErr = e as { userGuidance?: { explanation?: string }; message?: string };\n msg = wErr.userGuidance?.explanation || wErr.message || t(passkeyErrorLabel);\n } else {\n msg = err?.message || t(passkeyErrorLabel);\n }\n handleError(e, 'Passkey authentication failed', { sessionId, message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError, tComponent]);\n\n /**\n * W7.3b: Exchange a consumable token for a one-off session.\n * Authenticates via the backend exchange endpoint, sets up HTTP clients\n * with both JWT and consumable token headers, and connects WebSocket.\n */\n const handleOneOffTokenExchange = useCallback(async (token: string): Promise<void> => {\n logDebug('Handling one-off token exchange', { tokenLength: token.length });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n\n try {\n const client = getManualCallsHttpClient();\n const response = await client.exchangeOneOffToken(token);\n\n const { accessToken, consumableTokenValue, tokenExpiresAt, context } = response;\n\n storeAuthTokens(accessToken);\n\n client.setAuthToken(accessToken);\n setResourcesAuthToken(accessToken);\n\n if (consumableTokenValue) {\n client.setConsumableToken(consumableTokenValue);\n setResourcesConsumableToken(consumableTokenValue);\n }\n\n if (context.organizationId) {\n tokenStorage.setOrganizationId(context.organizationId);\n }\n\n connectWebSocket(accessToken, context.organizationId, consumableTokenValue);\n\n setAuth({\n ...EMPTY_AUTH_STATE,\n accessToken,\n sessionType: SessionType.ONE_OFF,\n oneOffContext: {\n originTokenId: context.tokenId,\n tokenType: context.tokenType,\n consumableTokenValue,\n tokenExpiresAt,\n scopedInitiatorIds: context.targeting?.initiatorIds,\n applicationId: context.applicationId,\n },\n sessionRestored: true,\n });\n\n hasInitializedRef.current = true;\n logDebug('One-off token exchange successful', { tokenType: context.tokenType });\n } catch (e: any) {\n const msg = e?.message || 'One-off token exchange failed';\n handleError(e, 'One-off token exchange failed', { message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [tokenStorage, setResourcesAuthToken, setResourcesConsumableToken, connectWebSocket, handleError]);\n\n const logout = useCallback((): void => {\n logDebug('Logging out user');\n\n // Auth-hardening Slice A Step 3 (2026-04-13) — refresh token now travels\n // via the `__wildo_refresh` `HttpOnly` cookie. JS can't read it (and\n // doesn't need to): the cookie auto-attaches via `withCredentials: true`\n // on `/auth/*` because of the `authCookiesInterceptor`. Backend\n // `logout()` handler dual-reads (cookie-first, body-fallback per A-K-5)\n // and ALWAYS clears the cookie, so this fire-and-forget call works even\n // when the JS access token was lost (e.g., post tab crash). We keep\n // this unconditional now — there's no JS-visible \"is there a session\n // to revoke?\" signal anymore.\n getManualCallsHttpClient()\n .logoutFromBackend()\n .catch((e) => {\n logger.warn('Backend logout call failed (token revocation)', { error: e });\n });\n\n broadcastChannelRef.current?.postMessage({ type: 'LOGOUT' });\n\n disconnect();\n\n // Clear consumable token from HTTP client singletons (prevents stale header leakage)\n getManualCallsHttpClient().setConsumableToken(null);\n getManualCallsHttpClient().setAuthToken(null);\n setResourcesConsumableToken(null);\n setResourcesAuthToken(null);\n\n tokenStorage.clear();\n setAuth(EMPTY_AUTH_STATE);\n\n hasInitializedRef.current = false;\n\n logger.info('User logged out successfully');\n }, [disconnect, tokenStorage, setResourcesAuthToken, setResourcesConsumableToken]);\n\n /**\n * Single-use clear for the cross-frontend-handoff context.\n *\n * Called by `Auth_OneOffSession` on unmount in cross-frontend-handoff\n * mode (which happens AFTER the post-exchange `<Navigate to>` resolves\n * and React unmounts the receiver). Unmount-cleanup timing is critical:\n * clearing earlier would race the `useMemo(targetUrl, [auth.crossFrontendHandoffContext, …])`\n * recomputation and could navigate the user to home instead of `returnPath`.\n */\n const clearCrossFrontendHandoffContext = useCallback((): void => {\n setAuth(a => (a.crossFrontendHandoffContext === undefined\n ? a\n : { ...a, crossFrontendHandoffContext: undefined }));\n }, []);\n\n /**\n * Mark session as restored (called by UserOrgsContext when it finishes loading user data)\n */\n const markSessionRestored = useCallback((): void => {\n setAuth(a => ({\n ...a,\n sessionRestored: true,\n isRestoringSession: false,\n }));\n }, []);\n\n /**\n * Set session restoring state (called by UserOrgsContext)\n */\n const setSessionRestoring = useCallback((isRestoring: boolean): void => {\n setAuth(a => ({\n ...a,\n isRestoringSession: isRestoring,\n }));\n }, []);\n\n // ─────────────────────────────────────────────────────────────────────────\n // Token refresh handler (re-entrant safe)\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Token renewal handler registered on HTTP clients.\n * Called automatically by the interceptor when a 401 OUTDATED_AUTH_JWT is received.\n *\n * Re-entrant safe: if multiple requests get 401 simultaneously, only one refresh\n * call is made and all callers share the same promise.\n */\n const tokenRenewalHandler = useCallback(async (): Promise<string> => {\n // If a refresh is already in flight IN THIS TAB, piggyback on it.\n if (refreshInFlightRef.current) {\n logger.debug('Auth token renewal already in flight; waiting for shared result');\n return refreshInFlightRef.current;\n }\n\n // The access token that just failed verification. Captured before we take\n // the cross-tab lock so that, once we hold it, we can detect whether\n // another tab already rotated a fresh token into shared storage while we\n // were waiting (see `adoptCrossTabRefreshedToken`).\n const staleAccessToken = tokenStorage.getAccessToken();\n\n // Adopt — WITHOUT a network call — an access token that another tab already\n // rotated into the shared store while we were queued on the cross-tab lock.\n // Returns the adopted token, or `null` if storage still holds the stale\n // token (meaning THIS tab must perform the network rotation).\n const adoptCrossTabRefreshedToken = (): string | null => {\n const current = tokenStorage.getAccessToken();\n if (current && current !== staleAccessToken) {\n getManualCallsHttpClient().setAuthToken(current);\n setResourcesAuthToken(current);\n setAuth(a => (a.accessToken === current ? a : { ...a, accessToken: current }));\n refreshWebSocketAuth(current);\n logger.debug('Auth token renewal short-circuited; adopted token rotated by another tab');\n return current;\n }\n return null;\n };\n\n // The actual network rotation + local propagation. Assumes the caller holds\n // the cross-tab refresh lock (or that no lock primitive is available).\n const performNetworkRefresh = async (): Promise<string> => {\n // Auth-hardening Slice A Step 3 (2026-04-13) — refresh token travels via\n // the `__wildo_refresh` `HttpOnly` cookie. JS can't see the cookie\n // (`HttpOnly` blocks DOM reads), so we can't pre-check whether a refresh\n // is even possible; we just attempt the call.\n logger.debug('Auth token renewal started');\n const result = await getManualCallsHttpClient().refreshTokens();\n\n // Persist the rotated access token. The rotated refresh token landed in\n // the `__wildo_refresh` cookie via `Set-Cookie` on the same response —\n // the browser cookie store updated automatically; no JS plumbing needed.\n storeAuthTokens(result.accessToken);\n\n getManualCallsHttpClient().setAuthToken(result.accessToken);\n setResourcesAuthToken(result.accessToken);\n\n // Update React state — only the access token surfaces here.\n setAuth(a => ({\n ...a,\n accessToken: result.accessToken,\n }));\n\n // Broadcast the rotated ACCESS token so other tabs adopt it instead of\n // independently refreshing. The rotated refresh token is NOT broadcast —\n // it already landed in the shared same-origin `__wildo_refresh` cookie.\n broadcastChannelRef.current?.postMessage({\n type: 'TOKEN_REFRESHED',\n accessToken: result.accessToken,\n });\n\n logger.debug('Auth token renewal succeeded; frontend clients updated');\n refreshWebSocketAuth(result.accessToken);\n return result.accessToken;\n };\n\n // RC1 — CROSS-TAB SERIALIZATION via the Web Locks API.\n //\n // `refreshInFlightRef` only dedupes refreshes WITHIN a tab. Across tabs,\n // a mass-expiry event (e.g. a dev backend recompile expiring every tab's\n // access token at the same instant) makes every tab fire `/auth/token/\n // refresh` with the SAME current cookie. One wins and rotates the token;\n // the others present the now-rotated token a beat later, the backend's\n // reuse-detection treats that as theft and `invalidateAllTokensForUser`\n // NUKES every session. The `wildo-auth-refresh` lock ensures only ONE tab\n // performs the network rotation; the rest wait, then adopt the winner's\n // already-rotated token with no second network call. Falls back to a plain\n // refresh where Web Locks is unavailable (non-secure context / old browser;\n // localhost dev IS a secure context, so the lock is active there).\n const doRefresh = async (): Promise<string> => {\n const locks = typeof navigator !== 'undefined' ? navigator.locks : undefined;\n if (!locks?.request) {\n return performNetworkRefresh();\n }\n return locks.request('wildo-auth-refresh', async () => {\n const adopted = adoptCrossTabRefreshedToken();\n if (adopted) return adopted;\n return performNetworkRefresh();\n });\n };\n\n // Store the promise so concurrent callers in this tab share it.\n refreshInFlightRef.current = doRefresh().finally(() => {\n refreshInFlightRef.current = null;\n });\n\n try {\n return await refreshInFlightRef.current;\n } catch (error) {\n // RC2/RC3 — classify the failure. `logout()` clears the SHARED\n // `__wildo_refresh` cookie, so destroying the session on a transient\n // failure (backend restarting / 5xx / timeout) permanently logs out\n // every tab and breaks recovery. Only an AUTHORITATIVE rejection (the\n // backend explicitly refused this refresh token) warrants logout — and\n // in DEVELOPMENT not even that, because dev recompiles routinely produce\n // authoritative-looking 400/401s while the session is in fact fine once\n // the backend settles. See `auth-refresh-resilience.frontend.ts`.\n const authoritative = isAuthoritativeRefreshRejection(error);\n const devLenient = isRefreshDevLenient();\n\n if (authoritative && !devLenient) {\n logger.warn('Auth token renewal failed; refresh token was rejected and logout will follow', {\n error: isWildoBackendError(error)\n ? error.customMessageReference\n : (error instanceof Error ? error.message : 'Unknown error'),\n });\n logout();\n } else {\n logger.warn(\n 'Auth token renewal failed but session is preserved (will retry on the next request)',\n {\n authoritative,\n devLenient,\n reason: authoritative\n ? 'development leniency active — not logging out on an authoritative rejection'\n : 'transient failure (backend unreachable / 5xx / timeout) — not an authoritative rejection',\n },\n );\n }\n throw error;\n }\n }, [setResourcesAuthToken, logout, refreshWebSocketAuth, tokenStorage]);\n\n // Register the token renewal handler on both HTTP clients + expose it via ref\n // so the WebSocket `onAuthenticationError` callback (wired in `connectWebSocket`\n // above) always invokes the current handler.\n useEffect(() => {\n tokenRenewalHandlerRef.current = tokenRenewalHandler;\n getManualCallsHttpClient().setTokenRenewalHandler(tokenRenewalHandler);\n setResourcesTokenRenewalHandler(tokenRenewalHandler);\n }, [tokenRenewalHandler, setResourcesTokenRenewalHandler]);\n\n // Cross-tab token coordination via BroadcastChannel.\n // When one tab refreshes tokens, it broadcasts the new tokens so other tabs\n // adopt them instead of independently refreshing (which triggers rotation detection).\n useEffect(() => {\n if (typeof BroadcastChannel === 'undefined') return;\n\n const channel = new BroadcastChannel('wildo-auth-tokens');\n broadcastChannelRef.current = channel;\n\n channel.onmessage = (event: MessageEvent) => {\n const { type, accessToken } = event.data ?? {};\n\n if (type === 'TOKEN_REFRESHED' && accessToken) {\n // Auth-hardening Slice A Step 6 (2026-04-13) — payload only\n // carries the rotated access token. The rotated refresh token\n // landed in the shared `__wildo_refresh` cookie via the issuing\n // tab's `Set-Cookie` response, and same-origin tabs see the\n // new cookie automatically; nothing for this receiver to do.\n // Pre-Slice-A tabs that broadcast a `refreshToken` field have\n // long since aged out (A-Step 6 ships well after the dual-read\n // window closed); the destructuring above doesn't pick it up.\n logger.debug('Auth token renewal received from another tab; frontend clients updated');\n storeAuthTokens(accessToken);\n getManualCallsHttpClient().setAuthToken(accessToken);\n setResourcesAuthToken(accessToken);\n setAuth(a => ({ ...a, accessToken }));\n refreshWebSocketAuth(accessToken);\n }\n\n if (type === 'LOGOUT') {\n logDebug('Received logout signal from another tab');\n disconnect();\n tokenStorage.clear();\n getManualCallsHttpClient().setConsumableToken(null);\n setResourcesConsumableToken(null);\n storeAuthTokens(null);\n getManualCallsHttpClient().setAuthToken(null);\n setResourcesAuthToken(null);\n setAuth(EMPTY_AUTH_STATE);\n }\n };\n\n return () => {\n channel.close();\n broadcastChannelRef.current = null;\n };\n }, [setResourcesAuthToken, setResourcesConsumableToken, disconnect, refreshWebSocketAuth, tokenStorage]);\n\n // Initialize auth tokens on mount (from storage)\n useEffect(() => {\n // Prevent multiple initializations\n if (hasInitializedRef.current) {\n return;\n }\n\n // Auth-hardening Slice A Step 3 (2026-04-13) — only the access token\n // is stored client-side. The refresh token lives in the\n // `__wildo_refresh` `HttpOnly` cookie which JS can't read; it's\n // implicitly available as soon as the browser includes it on the\n // first `/auth/token/refresh` round-trip. No \"do we have a refresh\n // token?\" check needed at mount.\n const storedAccessToken = tokenStorage.getAccessToken();\n\n if (!storedAccessToken) {\n logDebug('No stored access token found');\n hasInitializedRef.current = true;\n return;\n }\n\n logDebug('Found stored access token, initializing auth state');\n hasInitializedRef.current = true;\n\n setAuth(a => ({\n ...a,\n accessToken: storedAccessToken,\n isRestoringSession: true,\n }));\n\n getManualCallsHttpClient().setAuthToken(storedAccessToken);\n setResourcesAuthToken(storedAccessToken);\n\n // UserOrgsContext will handle fetching user data and marking session as restored\n }, [setResourcesAuthToken, tokenStorage]);\n\n const value = useMemo<AuthSessionContextType>(() => ({\n auth,\n tokenStorage,\n\n // Authentication methods\n identifyByEmail,\n authenticateWithPassword,\n authenticate,\n getSessionState,\n isAuthenticated,\n logout,\n\n // OAuth2 + cross-frontend-handoff (shared AUTH_CODE_EXCHANGE primitive)\n initiateOAuth2Login,\n handleAuthCodeExchange,\n\n // Email verification\n handleEmailVerification,\n acceptInvitation,\n\n // Magic link verification\n handleMagicLinkVerify,\n\n // MFA verification\n handleMfaVerify,\n handlePasskeyAuth,\n\n // One-off session exchange (W7.3b)\n handleOneOffTokenExchange,\n\n // Cross-frontend handoff context (cross-app-jwt-propagation Step 5)\n clearCrossFrontendHandoffContext,\n\n // Session management\n markSessionRestored,\n setSessionRestoring,\n\n // WebSocket\n connectWebSocket,\n notifyOrganizationSwitch,\n }), [\n auth,\n tokenStorage,\n logout,\n initiateOAuth2Login,\n handleAuthCodeExchange,\n handleEmailVerification,\n acceptInvitation,\n handleMagicLinkVerify,\n handleMfaVerify,\n handlePasskeyAuth,\n handleOneOffTokenExchange,\n clearCrossFrontendHandoffContext,\n markSessionRestored,\n setSessionRestoring,\n connectWebSocket,\n notifyOrganizationSwitch,\n ]);\n\n return <AuthSessionContext.Provider value={value}>{children}</AuthSessionContext.Provider>;\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"StepUpAuthContext.d.ts","sourceRoot":"","sources":["../../../../../src/core/security/StepUpAuthContext.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,EAAiB,SAAS,EAAqD,MAAM,OAAO,CAAC;AAM3G,MAAM,WAAW,qBAAqB;IACpC,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAA+D,CAAC;AAE/I,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,CAuFhE,CAAC"}
1
+ {"version":3,"file":"StepUpAuthContext.d.ts","sourceRoot":"","sources":["../../../../src/core/security/StepUpAuthContext.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,EAAiB,SAAS,EAAqD,MAAM,OAAO,CAAC;AAM3G,MAAM,WAAW,qBAAqB;IACpC,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAA+D,CAAC;AAE/I,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,CAuFhE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"StepUpAuthContext.js","sourceRoot":"","sources":["../../../../../src/core/security/StepUpAuthContext.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * StepUpAuthContext\n *\n * Manages the step-up re-authentication flow triggered by HTTP 403 STEP_UP_REQUIRED responses.\n *\n * The provider registers a handler on both HTTP clients (manual calls + resources).\n * When the backend rejects a request because the user's last authentication is stale,\n * the HTTP interceptor calls the handler, which opens a dialog for re-authentication.\n * On success, the interceptor retries the original request with the new X-Reauth-Token header.\n */\n\nimport React, { createContext, ReactNode, useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { AuthMethod } from '@wildo-ai/saas-models';\nimport { getManualCallsHttpClient } from '~wildo-frontend-lib/core/requests/wildo-http-client-manual-calls.frontend.service';\nimport { useResourceRegistry } from '~wildo-frontend-lib/core/resources/useResourceRegistry';\nimport { StepUpAuthDialog } from '~wildo-frontend-lib/components/auth/StepUpAuthDialog';\n\nexport interface StepUpAuthContextType {\n isStepUpPending: boolean;\n}\n\nexport const StepUpAuthContext: React.Context<StepUpAuthContextType | undefined> = createContext<StepUpAuthContextType | undefined>(undefined);\n\nexport const StepUpAuthProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const { setStepUpAuthHandler: setResourcesStepUpAuthHandler } = useResourceRegistry();\n const [isDialogOpen, setIsDialogOpen] = useState(false);\n const [error, setError] = useState<string | null>(null);\n const [isLoading, setIsLoading] = useState(false);\n\n const pendingResolveRef = useRef<((token: string) => void) | null>(null);\n const pendingRejectRef = useRef<((reason: Error) => void) | null>(null);\n const stepUpInFlightRef = useRef<Promise<string> | null>(null);\n\n const stepUpAuthHandler = useCallback((): Promise<string> => {\n // Deduplicate: if a step-up is already in flight, share the same promise\n if (stepUpInFlightRef.current) {\n return stepUpInFlightRef.current;\n }\n const promise = new Promise<string>((resolve, reject) => {\n pendingResolveRef.current = resolve;\n pendingRejectRef.current = reject;\n setError(null);\n setIsLoading(false);\n setIsDialogOpen(true);\n });\n stepUpInFlightRef.current = promise;\n promise.finally(() => { stepUpInFlightRef.current = null; });\n return promise;\n }, []);\n\n const setResourcesHandlerRef = useRef(setResourcesStepUpAuthHandler);\n useEffect(() => {\n setResourcesHandlerRef.current = setResourcesStepUpAuthHandler;\n }, [setResourcesStepUpAuthHandler]);\n\n useEffect(() => {\n getManualCallsHttpClient().setStepUpAuthHandler(stepUpAuthHandler);\n setResourcesHandlerRef.current(stepUpAuthHandler);\n return () => {\n getManualCallsHttpClient().setStepUpAuthHandler(null);\n setResourcesHandlerRef.current(null);\n pendingRejectRef.current?.(new Error('StepUpAuthProvider unmounted'));\n pendingResolveRef.current = null;\n pendingRejectRef.current = null;\n };\n }, [stepUpAuthHandler]);\n\n const handleConfirm = useCallback(async (password: string) => {\n setIsLoading(true);\n setError(null);\n try {\n const { reAuthToken } = await getManualCallsHttpClient().reAuthenticate(\n AuthMethod.PASSWORD,\n { password }\n );\n setIsDialogOpen(false);\n pendingResolveRef.current?.(reAuthToken);\n pendingResolveRef.current = null;\n pendingRejectRef.current = null;\n } catch (e: unknown) {\n const message = e instanceof Error ? e.message : 'Authentication failed';\n setError(message);\n } finally {\n setIsLoading(false);\n }\n }, []);\n\n const handleCancel = useCallback(() => {\n setIsDialogOpen(false);\n pendingRejectRef.current?.(new Error('Step-up authentication cancelled'));\n pendingResolveRef.current = null;\n pendingRejectRef.current = null;\n }, []);\n\n const value = useMemo<StepUpAuthContextType>(() => ({\n isStepUpPending: isDialogOpen,\n }), [isDialogOpen]);\n\n return (\n <StepUpAuthContext.Provider value={value}>\n {children}\n <StepUpAuthDialog\n open={isDialogOpen}\n onConfirm={handleConfirm}\n onCancel={handleCancel}\n error={error}\n isLoading={isLoading}\n />\n </StepUpAuthContext.Provider>\n );\n};\n"]}
1
+ {"version":3,"file":"StepUpAuthContext.js","sourceRoot":"","sources":["../../../../src/core/security/StepUpAuthContext.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * StepUpAuthContext\n *\n * Manages the step-up re-authentication flow triggered by HTTP 403 STEP_UP_REQUIRED responses.\n *\n * The provider registers a handler on both HTTP clients (manual calls + resources).\n * When the backend rejects a request because the user's last authentication is stale,\n * the HTTP interceptor calls the handler, which opens a dialog for re-authentication.\n * On success, the interceptor retries the original request with the new X-Reauth-Token header.\n */\n\nimport React, { createContext, ReactNode, useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { AuthMethod } from '@wildo-ai/saas-models';\nimport { getManualCallsHttpClient } from '~wildo-frontend-lib/core/requests/wildo-http-client-manual-calls.frontend.service';\nimport { useResourceRegistry } from '~wildo-frontend-lib/core/resources/useResourceRegistry';\nimport { StepUpAuthDialog } from '~wildo-frontend-lib/components/auth/StepUpAuthDialog';\n\nexport interface StepUpAuthContextType {\n isStepUpPending: boolean;\n}\n\nexport const StepUpAuthContext: React.Context<StepUpAuthContextType | undefined> = createContext<StepUpAuthContextType | undefined>(undefined);\n\nexport const StepUpAuthProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const { setStepUpAuthHandler: setResourcesStepUpAuthHandler } = useResourceRegistry();\n const [isDialogOpen, setIsDialogOpen] = useState(false);\n const [error, setError] = useState<string | null>(null);\n const [isLoading, setIsLoading] = useState(false);\n\n const pendingResolveRef = useRef<((token: string) => void) | null>(null);\n const pendingRejectRef = useRef<((reason: Error) => void) | null>(null);\n const stepUpInFlightRef = useRef<Promise<string> | null>(null);\n\n const stepUpAuthHandler = useCallback((): Promise<string> => {\n // Deduplicate: if a step-up is already in flight, share the same promise\n if (stepUpInFlightRef.current) {\n return stepUpInFlightRef.current;\n }\n const promise = new Promise<string>((resolve, reject) => {\n pendingResolveRef.current = resolve;\n pendingRejectRef.current = reject;\n setError(null);\n setIsLoading(false);\n setIsDialogOpen(true);\n });\n stepUpInFlightRef.current = promise;\n promise.finally(() => { stepUpInFlightRef.current = null; });\n return promise;\n }, []);\n\n const setResourcesHandlerRef = useRef(setResourcesStepUpAuthHandler);\n useEffect(() => {\n setResourcesHandlerRef.current = setResourcesStepUpAuthHandler;\n }, [setResourcesStepUpAuthHandler]);\n\n useEffect(() => {\n getManualCallsHttpClient().setStepUpAuthHandler(stepUpAuthHandler);\n setResourcesHandlerRef.current(stepUpAuthHandler);\n return () => {\n getManualCallsHttpClient().setStepUpAuthHandler(null);\n setResourcesHandlerRef.current(null);\n pendingRejectRef.current?.(new Error('StepUpAuthProvider unmounted'));\n pendingResolveRef.current = null;\n pendingRejectRef.current = null;\n };\n }, [stepUpAuthHandler]);\n\n const handleConfirm = useCallback(async (password: string) => {\n setIsLoading(true);\n setError(null);\n try {\n const { reAuthToken } = await getManualCallsHttpClient().reAuthenticate(\n AuthMethod.PASSWORD,\n { password }\n );\n setIsDialogOpen(false);\n pendingResolveRef.current?.(reAuthToken);\n pendingResolveRef.current = null;\n pendingRejectRef.current = null;\n } catch (e: unknown) {\n const message = e instanceof Error ? e.message : 'Authentication failed';\n setError(message);\n } finally {\n setIsLoading(false);\n }\n }, []);\n\n const handleCancel = useCallback(() => {\n setIsDialogOpen(false);\n pendingRejectRef.current?.(new Error('Step-up authentication cancelled'));\n pendingResolveRef.current = null;\n pendingRejectRef.current = null;\n }, []);\n\n const value = useMemo<StepUpAuthContextType>(() => ({\n isStepUpPending: isDialogOpen,\n }), [isDialogOpen]);\n\n return (\n <StepUpAuthContext.Provider value={value}>\n {children}\n <StepUpAuthDialog\n open={isDialogOpen}\n onConfirm={handleConfirm}\n onCancel={handleCancel}\n error={error}\n isLoading={isLoading}\n />\n </StepUpAuthContext.Provider>\n );\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"UserOrgsContext.d.ts","sourceRoot":"","sources":["../../../../../src/core/security/UserOrgsContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAA2B,SAAS,EAA2C,MAAM,OAAO,CAAC;AAC3G,OAAO,EACL,WAAW,EACX,mBAAmB,EAMnB,6BAA6B,EAC7B,WAAW,EAGZ,MAAM,uBAAuB,CAAC;AAK/B,OAAO,EACL,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AA0BlD;;;;GAIG;AAEH,MAAM,WAAW,mBAAmB;IAElC,IAAI,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;IAChD,eAAe,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACtE,wBAAwB,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,0BAA0B,CAAC,CAAC;IACxF,YAAY,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,cAAc,CAAC,CAAC;IAChE,eAAe,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACtE,eAAe,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACtE,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,cAAc,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAGvC,mBAAmB,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,qBAAqB,CAAC,CAAC;IAC9E,sBAAsB,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,wBAAwB,CAAC,CAAC;IAGpF,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;IAGzB,aAAa,EAAE,mBAAmB,EAAE,CAAC;IACrC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,WAAW,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACzC,wBAAwB,EAAE,6BAA6B,GAAG,IAAI,CAAC;IAG/D,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IAG5B,sBAAsB,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC;IACzD,sBAAsB,EAAE,MAAM,mBAAmB,GAAG,IAAI,CAAC;IACzD,oBAAoB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAG1C,UAAU,EAAE,MAAM,WAAW,GAAG,IAAI,CAAC;CACtC;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAA6D,CAAC;AAEzI,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,CA8qB9D,CAAC"}
1
+ {"version":3,"file":"UserOrgsContext.d.ts","sourceRoot":"","sources":["../../../../src/core/security/UserOrgsContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAA2B,SAAS,EAA2C,MAAM,OAAO,CAAC;AAC3G,OAAO,EACL,WAAW,EACX,mBAAmB,EAMnB,6BAA6B,EAC7B,WAAW,EAGZ,MAAM,uBAAuB,CAAC;AAK/B,OAAO,EACL,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AA0BlD;;;;GAIG;AAEH,MAAM,WAAW,mBAAmB;IAElC,IAAI,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;IAChD,eAAe,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACtE,wBAAwB,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,0BAA0B,CAAC,CAAC;IACxF,YAAY,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,cAAc,CAAC,CAAC;IAChE,eAAe,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACtE,eAAe,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACtE,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,cAAc,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAGvC,mBAAmB,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,qBAAqB,CAAC,CAAC;IAC9E,sBAAsB,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,wBAAwB,CAAC,CAAC;IAGpF,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;IAGzB,aAAa,EAAE,mBAAmB,EAAE,CAAC;IACrC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,WAAW,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACzC,wBAAwB,EAAE,6BAA6B,GAAG,IAAI,CAAC;IAG/D,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IAG5B,sBAAsB,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC;IACzD,sBAAsB,EAAE,MAAM,mBAAmB,GAAG,IAAI,CAAC;IACzD,oBAAoB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAG1C,UAAU,EAAE,MAAM,WAAW,GAAG,IAAI,CAAC;CACtC;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAA6D,CAAC;AAEzI,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,CA+wB9D,CAAC"}