@wildo-ai/saas-frontend-lib 1.1.3 → 1.1.5
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.
- package/dist/esm/browser-bootstrap/theme-bootstrap.d.ts.map +1 -1
- package/dist/esm/browser-bootstrap/theme-bootstrap.js.map +1 -1
- package/dist/esm/browser-bootstrap.exports.d.ts.map +1 -1
- package/dist/esm/browser-bootstrap.exports.js.map +1 -1
- package/dist/esm/companion-exports.d.ts +1 -1
- package/dist/esm/companion-exports.d.ts.map +1 -1
- package/dist/esm/companion-exports.js +1 -1
- package/dist/esm/companion-exports.js.map +1 -1
- package/dist/esm/companion-runtime-exports.d.ts.map +1 -1
- package/dist/esm/companion-runtime-exports.js.map +1 -1
- package/dist/esm/components/actions/action-bar.d.ts +30 -0
- package/dist/esm/components/actions/action-bar.d.ts.map +1 -1
- package/dist/esm/components/actions/action-bar.js.map +1 -1
- package/dist/esm/components/actions/action-button.d.ts +5 -0
- package/dist/esm/components/actions/action-button.d.ts.map +1 -1
- package/dist/esm/components/actions/action-button.js.map +1 -1
- package/dist/esm/components/actions/button-group.d.ts.map +1 -1
- package/dist/esm/components/actions/button-group.js.map +1 -1
- package/dist/esm/components/actions/button.d.ts +15 -0
- package/dist/esm/components/actions/button.d.ts.map +1 -1
- package/dist/esm/components/actions/button.js +14 -0
- package/dist/esm/components/actions/button.js.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/artifact-browser.types.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/artifact-browser.types.js.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/artifact-list.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/artifact-list.js.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/artifact.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/artifact.js.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/code-block.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/code-block.js.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/diff-block.d.ts +38 -0
- package/dist/esm/components/ai-elements/artifacts/diff-block.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/diff-block.js +9 -0
- package/dist/esm/components/ai-elements/artifacts/diff-block.js.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/image.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/image.js.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/unified-diff.utils.d.ts +68 -0
- package/dist/esm/components/ai-elements/artifacts/unified-diff.utils.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/unified-diff.utils.js +162 -0
- package/dist/esm/components/ai-elements/artifacts/unified-diff.utils.js.map +1 -0
- package/dist/esm/components/ai-elements/artifacts/web-preview.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/web-preview.js.map +1 -1
- package/dist/esm/components/ai-elements/chat/conversation.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/chat/conversation.js.map +1 -1
- package/dist/esm/components/ai-elements/chat/message.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/chat/message.js.map +1 -1
- package/dist/esm/components/ai-elements/chat/prompt-input.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/chat/prompt-input.js.map +1 -1
- package/dist/esm/components/ai-elements/chat/sources.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/chat/sources.js.map +1 -1
- package/dist/esm/components/ai-elements/chat/suggestion.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/chat/suggestion.js.map +1 -1
- package/dist/esm/components/ai-elements/decision/approval.d.ts +30 -1
- package/dist/esm/components/ai-elements/decision/approval.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/decision/approval.js.map +1 -1
- package/dist/esm/components/ai-elements/execution/confirmation.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/execution/confirmation.js.map +1 -1
- package/dist/esm/components/ai-elements/execution/queue.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/execution/queue.js.map +1 -1
- package/dist/esm/components/ai-elements/execution/task.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/execution/task.js.map +1 -1
- package/dist/esm/components/ai-elements/execution/tool.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/execution/tool.js.map +1 -1
- package/dist/esm/components/ai-elements/graph/canvas.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/canvas.js.map +1 -1
- package/dist/esm/components/ai-elements/graph/connection.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/connection.js.map +1 -1
- package/dist/esm/components/ai-elements/graph/controls.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/controls.js.map +1 -1
- package/dist/esm/components/ai-elements/graph/edge.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/edge.js.map +1 -1
- package/dist/esm/components/ai-elements/graph/node.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/node.js.map +1 -1
- package/dist/esm/components/ai-elements/graph/panel.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/panel.js.map +1 -1
- package/dist/esm/components/ai-elements/graph/toolbar.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/toolbar.js.map +1 -1
- package/dist/esm/components/ai-elements/meta/agent-wrappers.d.ts +0 -1
- package/dist/esm/components/ai-elements/meta/agent-wrappers.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/meta/agent-wrappers.js.map +1 -1
- package/dist/esm/components/ai-elements/meta/context.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/meta/context.js.map +1 -1
- package/dist/esm/components/ai-elements/meta/model-selector.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/meta/model-selector.js.map +1 -1
- package/dist/esm/components/ai-elements/meta/open-in-chat.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/meta/open-in-chat.js.map +1 -1
- package/dist/esm/components/ai-elements/shared/loader.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/shared/loader.js.map +1 -1
- package/dist/esm/components/ai-elements/shared/shimmer.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/shared/shimmer.js.map +1 -1
- package/dist/esm/components/ai-elements/stream/execution-stream.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/stream/execution-stream.js.map +1 -1
- package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts +22 -0
- package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/trace/chain-of-thought.js +29 -3
- package/dist/esm/components/ai-elements/trace/chain-of-thought.js.map +1 -1
- package/dist/esm/components/ai-elements/trace/checkpoint.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/trace/checkpoint.js.map +1 -1
- package/dist/esm/components/ai-elements/trace/inline-citation.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/trace/inline-citation.js.map +1 -1
- package/dist/esm/components/ai-elements/trace/plan.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/trace/plan.js.map +1 -1
- package/dist/esm/components/ai-elements/trace/reasoning.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/trace/reasoning.js.map +1 -1
- package/dist/esm/components/app/AppLayout_AuthenticatedRoute.d.ts +6 -0
- package/dist/esm/components/app/AppLayout_AuthenticatedRoute.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_AuthenticatedRoute.js +84 -9
- package/dist/esm/components/app/AppLayout_AuthenticatedRoute.js.map +1 -1
- package/dist/esm/components/app/AppLayout_ConsentGate.d.ts +40 -0
- package/dist/esm/components/app/AppLayout_ConsentGate.d.ts.map +1 -0
- package/dist/esm/components/app/AppLayout_ConsentGate.js +17 -0
- package/dist/esm/components/app/AppLayout_ConsentGate.js.map +1 -0
- package/dist/esm/components/app/AppLayout_ConsentGate.labels.d.ts +3 -0
- package/dist/esm/components/app/AppLayout_ConsentGate.labels.d.ts.map +1 -0
- package/dist/esm/components/app/AppLayout_ConsentGate.labels.js +75 -0
- package/dist/esm/components/app/AppLayout_ConsentGate.labels.js.map +1 -0
- package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.d.ts +32 -0
- package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.d.ts.map +1 -0
- package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.js +13 -0
- package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.js.map +1 -0
- package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.labels.d.ts +3 -0
- package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.labels.d.ts.map +1 -0
- package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.labels.js +46 -0
- package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.labels.js.map +1 -0
- package/dist/esm/components/app/AppLayout_ErrorBoundary.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_ErrorBoundary.js.map +1 -1
- package/dist/esm/components/app/AppLayout_ErrorBoundary.labels.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_ErrorBoundary.labels.js.map +1 -1
- package/dist/esm/components/app/AppLayout_Home.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_Home.js.map +1 -1
- package/dist/esm/components/app/AppLayout_Home.labels.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_Home.labels.js.map +1 -1
- package/dist/esm/components/app/AppLayout_MainContainer.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_MainContainer.js.map +1 -1
- package/dist/esm/components/app/AppLayout_NotificationCenter.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_NotificationCenter.js.map +1 -1
- package/dist/esm/components/app/AppLayout_RouterErrorBoundary.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_RouterErrorBoundary.js +27 -25
- package/dist/esm/components/app/AppLayout_RouterErrorBoundary.js.map +1 -1
- package/dist/esm/components/app/AppLayout_RouterErrorBoundary.labels.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_RouterErrorBoundary.labels.js +4 -6
- package/dist/esm/components/app/AppLayout_RouterErrorBoundary.labels.js.map +1 -1
- package/dist/esm/components/app/AppPage_Home.d.ts.map +1 -1
- package/dist/esm/components/app/AppPage_Home.js.map +1 -1
- package/dist/esm/components/app/PublicLayout_MainContainer.d.ts +3 -0
- package/dist/esm/components/app/PublicLayout_MainContainer.d.ts.map +1 -1
- package/dist/esm/components/app/PublicLayout_MainContainer.js +24 -0
- package/dist/esm/components/app/PublicLayout_MainContainer.js.map +1 -1
- package/dist/esm/components/app/PublicLayout_StaticContentContainer.d.ts.map +1 -1
- package/dist/esm/components/app/PublicLayout_StaticContentContainer.js.map +1 -1
- package/dist/esm/components/app/PublicLayout_StaticContentContainer.labels.d.ts.map +1 -1
- package/dist/esm/components/app/PublicLayout_StaticContentContainer.labels.js.map +1 -1
- package/dist/esm/components/app/PublicLayout_Terms.d.ts +59 -0
- package/dist/esm/components/app/PublicLayout_Terms.d.ts.map +1 -0
- package/dist/esm/components/app/PublicLayout_Terms.js +8 -0
- package/dist/esm/components/app/PublicLayout_Terms.js.map +1 -0
- package/dist/esm/components/app/PublicLayout_Terms.labels.d.ts.map +1 -1
- package/dist/esm/components/app/PublicLayout_Terms.labels.js +16 -6
- package/dist/esm/components/app/PublicLayout_Terms.labels.js.map +1 -1
- package/dist/esm/components/auth/Auth_AuthCallback.d.ts +3 -1
- package/dist/esm/components/auth/Auth_AuthCallback.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_AuthCallback.js +21 -7
- package/dist/esm/components/auth/Auth_AuthCallback.js.map +1 -1
- package/dist/esm/components/auth/Auth_AuthCallback.labels.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_AuthCallback.labels.js +2 -0
- package/dist/esm/components/auth/Auth_AuthCallback.labels.js.map +1 -1
- package/dist/esm/components/auth/Auth_ConfirmEmail.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_ConfirmEmail.js +35 -17
- package/dist/esm/components/auth/Auth_ConfirmEmail.js.map +1 -1
- package/dist/esm/components/auth/Auth_ConfirmEmail.labels.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_ConfirmEmail.labels.js.map +1 -1
- package/dist/esm/components/auth/Auth_EnrollmentRequired.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_EnrollmentRequired.js +121 -11
- package/dist/esm/components/auth/Auth_EnrollmentRequired.js.map +1 -1
- package/dist/esm/components/auth/Auth_EnrollmentRequired.labels.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_EnrollmentRequired.labels.js +1 -0
- package/dist/esm/components/auth/Auth_EnrollmentRequired.labels.js.map +1 -1
- package/dist/esm/components/auth/Auth_Invitation.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_Invitation.js +91 -59
- package/dist/esm/components/auth/Auth_Invitation.js.map +1 -1
- package/dist/esm/components/auth/Auth_Invitation.labels.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_Invitation.labels.js +7 -0
- package/dist/esm/components/auth/Auth_Invitation.labels.js.map +1 -1
- package/dist/esm/components/auth/Auth_MagicLinkVerify.d.ts +8 -3
- package/dist/esm/components/auth/Auth_MagicLinkVerify.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_MagicLinkVerify.js +38 -21
- package/dist/esm/components/auth/Auth_MagicLinkVerify.js.map +1 -1
- package/dist/esm/components/auth/Auth_MagicLinkVerify.labels.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_MagicLinkVerify.labels.js.map +1 -1
- package/dist/esm/components/auth/Auth_Main.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_Main.js +224 -41
- package/dist/esm/components/auth/Auth_Main.js.map +1 -1
- package/dist/esm/components/auth/Auth_Main.labels.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_Main.labels.js +4 -0
- package/dist/esm/components/auth/Auth_Main.labels.js.map +1 -1
- package/dist/esm/components/auth/Auth_MfaChallenge.d.ts +3 -0
- package/dist/esm/components/auth/Auth_MfaChallenge.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_MfaChallenge.js +76 -19
- package/dist/esm/components/auth/Auth_MfaChallenge.js.map +1 -1
- package/dist/esm/components/auth/Auth_MfaChallenge.labels.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_MfaChallenge.labels.js.map +1 -1
- package/dist/esm/components/auth/Auth_OAuthConsent.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_OAuthConsent.js +2 -1
- package/dist/esm/components/auth/Auth_OAuthConsent.js.map +1 -1
- package/dist/esm/components/auth/Auth_OAuthConsent.labels.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_OAuthConsent.labels.js.map +1 -1
- package/dist/esm/components/auth/Auth_OAuthLoggedOut.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_OAuthLoggedOut.js.map +1 -1
- package/dist/esm/components/auth/Auth_OAuthLoggedOut.labels.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_OAuthLoggedOut.labels.js.map +1 -1
- package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.js.map +1 -1
- package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.labels.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_OAuthLogoutConfirm.labels.js.map +1 -1
- package/dist/esm/components/auth/Auth_OneOffSession.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_OneOffSession.js +5 -3
- package/dist/esm/components/auth/Auth_OneOffSession.js.map +1 -1
- package/dist/esm/components/auth/Auth_OneOffSession.labels.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_OneOffSession.labels.js.map +1 -1
- package/dist/esm/components/auth/Auth_OrganizationOnboarding.d.ts +34 -0
- package/dist/esm/components/auth/Auth_OrganizationOnboarding.d.ts.map +1 -0
- package/dist/esm/components/auth/Auth_OrganizationOnboarding.js +158 -0
- package/dist/esm/components/auth/Auth_OrganizationOnboarding.js.map +1 -0
- package/dist/esm/components/auth/Auth_OrganizationOnboarding.labels.d.ts +3 -0
- package/dist/esm/components/auth/Auth_OrganizationOnboarding.labels.d.ts.map +1 -0
- package/dist/esm/components/auth/Auth_OrganizationOnboarding.labels.js +22 -0
- package/dist/esm/components/auth/Auth_OrganizationOnboarding.labels.js.map +1 -0
- package/dist/esm/components/auth/Auth_PasswordLost.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_PasswordLost.js +9 -7
- package/dist/esm/components/auth/Auth_PasswordLost.js.map +1 -1
- package/dist/esm/components/auth/Auth_PasswordLost.labels.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_PasswordLost.labels.js +5 -0
- package/dist/esm/components/auth/Auth_PasswordLost.labels.js.map +1 -1
- package/dist/esm/components/auth/Auth_Register.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_Register.js +403 -55
- package/dist/esm/components/auth/Auth_Register.js.map +1 -1
- package/dist/esm/components/auth/Auth_Register.labels.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_Register.labels.js +71 -2
- package/dist/esm/components/auth/Auth_Register.labels.js.map +1 -1
- package/dist/esm/components/auth/StepUpAuthDialog.d.ts +67 -2
- package/dist/esm/components/auth/StepUpAuthDialog.d.ts.map +1 -1
- package/dist/esm/components/auth/StepUpAuthDialog.js +131 -15
- package/dist/esm/components/auth/StepUpAuthDialog.js.map +1 -1
- package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.d.ts.map +1 -1
- package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.js +40 -58
- package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.js.map +1 -1
- package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.d.ts.map +1 -1
- package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.js +23 -1
- package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.js.map +1 -1
- package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Create_SamlWizard.d.ts.map +1 -1
- package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Create_SamlWizard.js +6 -5
- package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Create_SamlWizard.js.map +1 -1
- package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Read_SsoSaml.d.ts.map +1 -1
- package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Read_SsoSaml.js.map +1 -1
- package/dist/esm/components/auth/admin-config/SsoConnectionSamlReadSection.d.ts.map +1 -1
- package/dist/esm/components/auth/admin-config/SsoConnectionSamlReadSection.js +5 -4
- package/dist/esm/components/auth/admin-config/SsoConnectionSamlReadSection.js.map +1 -1
- package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.d.ts.map +1 -1
- package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.js +6 -4
- package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.js.map +1 -1
- package/dist/esm/components/auth/enrollment/PhoneEnrollmentMethod.d.ts.map +1 -1
- package/dist/esm/components/auth/enrollment/PhoneEnrollmentMethod.js +7 -4
- package/dist/esm/components/auth/enrollment/PhoneEnrollmentMethod.js.map +1 -1
- package/dist/esm/components/auth/enrollment/TotpEnrollmentMethod.d.ts.map +1 -1
- package/dist/esm/components/auth/enrollment/TotpEnrollmentMethod.js +7 -4
- package/dist/esm/components/auth/enrollment/TotpEnrollmentMethod.js.map +1 -1
- package/dist/esm/components/auth/enrollment/enrollment-method-components.d.ts +10 -2
- package/dist/esm/components/auth/enrollment/enrollment-method-components.d.ts.map +1 -1
- package/dist/esm/components/auth/enrollment/enrollment-method-components.js.map +1 -1
- package/dist/esm/components/auth/methods/EmailOtpAuthMethod.d.ts.map +1 -1
- package/dist/esm/components/auth/methods/EmailOtpAuthMethod.js +10 -7
- package/dist/esm/components/auth/methods/EmailOtpAuthMethod.js.map +1 -1
- package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.d.ts.map +1 -1
- package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.js +5 -3
- package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.js.map +1 -1
- package/dist/esm/components/auth/methods/MagicLinkAuthMethod.d.ts.map +1 -1
- package/dist/esm/components/auth/methods/MagicLinkAuthMethod.js +8 -5
- package/dist/esm/components/auth/methods/MagicLinkAuthMethod.js.map +1 -1
- package/dist/esm/components/auth/methods/OrgOidcAuthMethod.d.ts.map +1 -1
- package/dist/esm/components/auth/methods/OrgOidcAuthMethod.js +11 -8
- package/dist/esm/components/auth/methods/OrgOidcAuthMethod.js.map +1 -1
- package/dist/esm/components/auth/methods/OrgSamlAuthMethod.d.ts.map +1 -1
- package/dist/esm/components/auth/methods/OrgSamlAuthMethod.js +7 -6
- package/dist/esm/components/auth/methods/OrgSamlAuthMethod.js.map +1 -1
- package/dist/esm/components/auth/methods/PasskeyAuthMethod.d.ts.map +1 -1
- package/dist/esm/components/auth/methods/PasskeyAuthMethod.js +15 -17
- package/dist/esm/components/auth/methods/PasskeyAuthMethod.js.map +1 -1
- package/dist/esm/components/auth/methods/PasswordAuthMethod.d.ts.map +1 -1
- package/dist/esm/components/auth/methods/PasswordAuthMethod.js +4 -18
- package/dist/esm/components/auth/methods/PasswordAuthMethod.js.map +1 -1
- package/dist/esm/components/auth/methods/SmsOtpAuthMethod.d.ts.map +1 -1
- package/dist/esm/components/auth/methods/SmsOtpAuthMethod.js +10 -7
- package/dist/esm/components/auth/methods/SmsOtpAuthMethod.js.map +1 -1
- package/dist/esm/components/auth/methods/TotpAuthMethod.d.ts.map +1 -1
- package/dist/esm/components/auth/methods/TotpAuthMethod.js +5 -3
- package/dist/esm/components/auth/methods/TotpAuthMethod.js.map +1 -1
- package/dist/esm/components/auth/methods/auth-method-components.d.ts +15 -18
- package/dist/esm/components/auth/methods/auth-method-components.d.ts.map +1 -1
- package/dist/esm/components/auth/methods/auth-method-components.js +9 -26
- package/dist/esm/components/auth/methods/auth-method-components.js.map +1 -1
- package/dist/esm/components/auth/methods/auth-method-presentation.d.ts +105 -0
- package/dist/esm/components/auth/methods/auth-method-presentation.d.ts.map +1 -0
- package/dist/esm/components/auth/methods/auth-method-presentation.js +103 -0
- package/dist/esm/components/auth/methods/auth-method-presentation.js.map +1 -0
- package/dist/esm/components/auth/pages/AuthPage_AuthCallback.d.ts.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_AuthCallback.js.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_AuthExchange.d.ts.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_AuthExchange.js.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_ConfirmEmail.d.ts.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_ConfirmEmail.js.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_EnrollmentRequired.d.ts.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_EnrollmentRequired.js.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_Invitation.d.ts.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_Invitation.js.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_MagicLinkVerify.d.ts +2 -1
- package/dist/esm/components/auth/pages/AuthPage_MagicLinkVerify.d.ts.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_MagicLinkVerify.js +4 -2
- package/dist/esm/components/auth/pages/AuthPage_MagicLinkVerify.js.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_Main.d.ts.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_Main.js +3 -1
- package/dist/esm/components/auth/pages/AuthPage_Main.js.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_MfaChallenge.d.ts.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_MfaChallenge.js.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_OAuthConsent.d.ts.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_OAuthConsent.js.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_OAuthLoggedOut.d.ts.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_OAuthLoggedOut.js.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_OAuthLogoutConfirm.d.ts.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_OAuthLogoutConfirm.js.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_OneOffSession.d.ts.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_OneOffSession.js.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_OrganizationOnboarding.d.ts +11 -0
- package/dist/esm/components/auth/pages/AuthPage_OrganizationOnboarding.d.ts.map +1 -0
- package/dist/esm/components/auth/pages/AuthPage_OrganizationOnboarding.js +15 -0
- package/dist/esm/components/auth/pages/AuthPage_OrganizationOnboarding.js.map +1 -0
- package/dist/esm/components/auth/pages/AuthPage_PasswordLost.d.ts.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_PasswordLost.js.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_ReAuthenticationCallback.d.ts +3 -0
- package/dist/esm/components/auth/pages/AuthPage_ReAuthenticationCallback.d.ts.map +1 -0
- package/dist/esm/components/auth/pages/AuthPage_ReAuthenticationCallback.js +51 -0
- package/dist/esm/components/auth/pages/AuthPage_ReAuthenticationCallback.js.map +1 -0
- package/dist/esm/components/auth/pages/AuthPage_Register.d.ts.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_Register.js.map +1 -1
- package/dist/esm/components/auth/utils/AuthMethodChoiceList.d.ts +54 -0
- package/dist/esm/components/auth/utils/AuthMethodChoiceList.d.ts.map +1 -0
- package/dist/esm/components/auth/utils/AuthMethodChoiceList.js +53 -0
- package/dist/esm/components/auth/utils/AuthMethodChoiceList.js.map +1 -0
- package/dist/esm/components/auth/utils/AuthMethodIcon.d.ts +15 -0
- package/dist/esm/components/auth/utils/AuthMethodIcon.d.ts.map +1 -0
- package/dist/esm/components/auth/utils/AuthMethodIcon.js +16 -0
- package/dist/esm/components/auth/utils/AuthMethodIcon.js.map +1 -0
- package/dist/esm/components/auth/utils/AuthSecondaryLink.d.ts +24 -0
- package/dist/esm/components/auth/utils/AuthSecondaryLink.d.ts.map +1 -0
- package/dist/esm/components/auth/utils/AuthSecondaryLink.js +20 -0
- package/dist/esm/components/auth/utils/AuthSecondaryLink.js.map +1 -0
- package/dist/esm/components/auth/utils/AuthSingleFieldFormLayout.d.ts.map +1 -1
- package/dist/esm/components/auth/utils/AuthSingleFieldFormLayout.js.map +1 -1
- package/dist/esm/components/auth/utils/CredentialUsernameAutofillField.d.ts.map +1 -1
- package/dist/esm/components/auth/utils/CredentialUsernameAutofillField.js.map +1 -1
- package/dist/esm/components/auth/utils/LabeledDivider.d.ts.map +1 -1
- package/dist/esm/components/auth/utils/LabeledDivider.js.map +1 -1
- package/dist/esm/components/auth/utils/OAuthProvidersSection.d.ts +11 -1
- package/dist/esm/components/auth/utils/OAuthProvidersSection.d.ts.map +1 -1
- package/dist/esm/components/auth/utils/OAuthProvidersSection.js +5 -3
- package/dist/esm/components/auth/utils/OAuthProvidersSection.js.map +1 -1
- package/dist/esm/components/auth/utils/PasswordStrengthIndicator.d.ts +8 -1
- package/dist/esm/components/auth/utils/PasswordStrengthIndicator.d.ts.map +1 -1
- package/dist/esm/components/auth/utils/PasswordStrengthIndicator.js +15 -6
- package/dist/esm/components/auth/utils/PasswordStrengthIndicator.js.map +1 -1
- package/dist/esm/components/auth/utils/oauth-provider-display-label.frontend.utils.d.ts.map +1 -1
- package/dist/esm/components/auth/utils/oauth-provider-display-label.frontend.utils.js.map +1 -1
- package/dist/esm/components/auth/utils/resolvePasswordViolationsToLabels.d.ts.map +1 -1
- package/dist/esm/components/auth/utils/resolvePasswordViolationsToLabels.js.map +1 -1
- package/dist/esm/components/auth/utils/useMfaContinuationNavigation.d.ts +32 -0
- package/dist/esm/components/auth/utils/useMfaContinuationNavigation.d.ts.map +1 -0
- package/dist/esm/components/auth/utils/useMfaContinuationNavigation.js +44 -0
- package/dist/esm/components/auth/utils/useMfaContinuationNavigation.js.map +1 -0
- package/dist/esm/components/billing/billing-invoice-history.d.ts +1 -0
- package/dist/esm/components/billing/billing-invoice-history.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-invoice-history.js +7 -3
- package/dist/esm/components/billing/billing-invoice-history.js.map +1 -1
- package/dist/esm/components/billing/billing-plan-change-preview.d.ts +17 -0
- package/dist/esm/components/billing/billing-plan-change-preview.d.ts.map +1 -0
- package/dist/esm/components/billing/billing-plan-change-preview.js +8 -0
- package/dist/esm/components/billing/billing-plan-change-preview.js.map +1 -0
- package/dist/esm/components/billing/billing-portal-link.d.ts +1 -0
- package/dist/esm/components/billing/billing-portal-link.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-portal-link.js +6 -2
- package/dist/esm/components/billing/billing-portal-link.js.map +1 -1
- package/dist/esm/components/billing/billing-pricing-table.d.ts +4 -1
- package/dist/esm/components/billing/billing-pricing-table.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-pricing-table.js +30 -8
- package/dist/esm/components/billing/billing-pricing-table.js.map +1 -1
- package/dist/esm/components/billing/billing-subscription-status.d.ts +1 -0
- package/dist/esm/components/billing/billing-subscription-status.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-subscription-status.js +8 -4
- package/dist/esm/components/billing/billing-subscription-status.js.map +1 -1
- package/dist/esm/components/billing/billing-usage-dashboard.d.ts +2 -0
- package/dist/esm/components/billing/billing-usage-dashboard.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-usage-dashboard.js +9 -4
- package/dist/esm/components/billing/billing-usage-dashboard.js.map +1 -1
- package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.d.ts +74 -0
- package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.d.ts.map +1 -0
- package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.js +197 -0
- package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.js.map +1 -0
- package/dist/esm/components/data-display/AutomaticDisplayer.d.ts +28 -2
- package/dist/esm/components/data-display/AutomaticDisplayer.d.ts.map +1 -1
- package/dist/esm/components/data-display/AutomaticDisplayer.js +18 -9
- package/dist/esm/components/data-display/AutomaticDisplayer.js.map +1 -1
- package/dist/esm/components/data-display/DisplayContextKindContext.d.ts +43 -0
- package/dist/esm/components/data-display/DisplayContextKindContext.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayContextKindContext.js +45 -0
- package/dist/esm/components/data-display/DisplayContextKindContext.js.map +1 -1
- package/dist/esm/components/data-display/DisplayField.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayField.js +92 -9
- package/dist/esm/components/data-display/DisplayField.js.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldArray.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldArray.js.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldEditable.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldEditable.js +8 -3
- package/dist/esm/components/data-display/DisplayFieldEditable.js.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldEditableArray.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldEditableArray.js +7 -5
- package/dist/esm/components/data-display/DisplayFieldEditableArray.js.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldReadOnly.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldReadOnly.js.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldReadOnlyArraySection.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldReadOnlyArraySection.js.map +1 -1
- package/dist/esm/components/data-display/DisplayTemplateContext.d.ts +11 -0
- package/dist/esm/components/data-display/DisplayTemplateContext.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayTemplateContext.js.map +1 -1
- package/dist/esm/components/data-display/DisplayValueDispatcher.d.ts +2 -2
- package/dist/esm/components/data-display/DisplayValueDispatcher.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayValueDispatcher.js +162 -15
- package/dist/esm/components/data-display/DisplayValueDispatcher.js.map +1 -1
- package/dist/esm/components/data-display/ResourceAutomaticDisplayer.d.ts +4 -0
- package/dist/esm/components/data-display/ResourceAutomaticDisplayer.d.ts.map +1 -1
- package/dist/esm/components/data-display/ResourceAutomaticDisplayer.js +97 -14
- package/dist/esm/components/data-display/ResourceAutomaticDisplayer.js.map +1 -1
- package/dist/esm/components/data-display/ResourceSummaryDisplayer.d.ts.map +1 -1
- package/dist/esm/components/data-display/ResourceSummaryDisplayer.js +6 -1
- package/dist/esm/components/data-display/ResourceSummaryDisplayer.js.map +1 -1
- package/dist/esm/components/data-display/SummaryContext.d.ts.map +1 -1
- package/dist/esm/components/data-display/SummaryContext.js.map +1 -1
- package/dist/esm/components/data-display/automatic-displayer.utils.d.ts +19 -0
- package/dist/esm/components/data-display/automatic-displayer.utils.d.ts.map +1 -1
- package/dist/esm/components/data-display/automatic-displayer.utils.js.map +1 -1
- package/dist/esm/components/data-display/avatar.d.ts.map +1 -1
- package/dist/esm/components/data-display/avatar.js.map +1 -1
- package/dist/esm/components/data-display/badge-tone.d.ts +37 -0
- package/dist/esm/components/data-display/badge-tone.d.ts.map +1 -0
- package/dist/esm/components/data-display/badge-tone.js +54 -0
- package/dist/esm/components/data-display/badge-tone.js.map +1 -0
- package/dist/esm/components/data-display/badge.d.ts.map +1 -1
- package/dist/esm/components/data-display/badge.js.map +1 -1
- package/dist/esm/components/data-display/chart-echarts.d.ts.map +1 -1
- package/dist/esm/components/data-display/chart-echarts.js.map +1 -1
- package/dist/esm/components/data-display/chromes/DisplayChromeContext.d.ts.map +1 -1
- package/dist/esm/components/data-display/chromes/DisplayChromeContext.js.map +1 -1
- package/dist/esm/components/data-display/chromes/DisplayFieldChrome.d.ts +23 -6
- package/dist/esm/components/data-display/chromes/DisplayFieldChrome.d.ts.map +1 -1
- package/dist/esm/components/data-display/chromes/DisplayFieldChrome.js +17 -12
- package/dist/esm/components/data-display/chromes/DisplayFieldChrome.js.map +1 -1
- package/dist/esm/components/data-display/description-list.d.ts +5 -1
- package/dist/esm/components/data-display/description-list.d.ts.map +1 -1
- package/dist/esm/components/data-display/description-list.js.map +1 -1
- package/dist/esm/components/data-display/display-field-resolution.utils.d.ts +14 -7
- package/dist/esm/components/data-display/display-field-resolution.utils.d.ts.map +1 -1
- package/dist/esm/components/data-display/display-field-resolution.utils.js +17 -36
- package/dist/esm/components/data-display/display-field-resolution.utils.js.map +1 -1
- package/dist/esm/components/data-display/display-field-resolved-props.d.ts.map +1 -1
- package/dist/esm/components/data-display/display-field-resolved-props.js.map +1 -1
- package/dist/esm/components/data-display/display-resource-link-trail.d.ts.map +1 -1
- package/dist/esm/components/data-display/display-resource-link-trail.js.map +1 -1
- package/dist/esm/components/data-display/duration.d.ts +46 -0
- package/dist/esm/components/data-display/duration.d.ts.map +1 -0
- package/dist/esm/components/data-display/duration.js +9 -0
- package/dist/esm/components/data-display/duration.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-address.d.ts +22 -0
- package/dist/esm/components/data-display/formatters/display-field-address.d.ts.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-address.js +8 -0
- package/dist/esm/components/data-display/formatters/display-field-address.js.map +1 -0
- package/dist/esm/components/data-display/formatters/display-field-bigdecimal.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-bigdecimal.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-boolean.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-boolean.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-code.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-code.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-date.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-date.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-datetime.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-datetime.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-duration.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-duration.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-enum.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-enum.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-audio.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-audio.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-document.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-document.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-gallery.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-gallery.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-image.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-image.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-video.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file-video.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-file.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-json.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-json.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-money.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-money.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-number.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-number.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-phone.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-phone.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-date.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-date.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-datetime.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-datetime.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-money.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-money.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-number.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-number.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-time.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-range-time.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-string.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-string.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-time.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-time.js.map +1 -1
- package/dist/esm/components/data-display/identifier.d.ts +54 -0
- package/dist/esm/components/data-display/identifier.d.ts.map +1 -0
- package/dist/esm/components/data-display/identifier.js +9 -0
- package/dist/esm/components/data-display/identifier.js.map +1 -0
- package/dist/esm/components/data-display/kbd.d.ts +32 -0
- package/dist/esm/components/data-display/kbd.d.ts.map +1 -0
- package/dist/esm/components/data-display/kbd.js +9 -0
- package/dist/esm/components/data-display/kbd.js.map +1 -0
- package/dist/esm/components/data-display/notification-indicator.d.ts.map +1 -1
- package/dist/esm/components/data-display/notification-indicator.js.map +1 -1
- package/dist/esm/components/data-display/timeline.d.ts +89 -0
- package/dist/esm/components/data-display/timeline.d.ts.map +1 -0
- package/dist/esm/components/data-display/timeline.js +31 -0
- package/dist/esm/components/data-display/timeline.js.map +1 -0
- package/dist/esm/components/data-display/useFileActivation.d.ts.map +1 -1
- package/dist/esm/components/data-display/useFileActivation.js.map +1 -1
- package/dist/esm/components/feedback/celebration-overlay.d.ts +20 -1
- package/dist/esm/components/feedback/celebration-overlay.d.ts.map +1 -1
- package/dist/esm/components/feedback/celebration-overlay.js +35 -15
- package/dist/esm/components/feedback/celebration-overlay.js.map +1 -1
- package/dist/esm/components/feedback/danger-zone.d.ts.map +1 -1
- package/dist/esm/components/feedback/danger-zone.js.map +1 -1
- package/dist/esm/components/feedback/empty-display-policy.utils.d.ts.map +1 -1
- package/dist/esm/components/feedback/empty-display-policy.utils.js.map +1 -1
- package/dist/esm/components/feedback/empty-state.d.ts.map +1 -1
- package/dist/esm/components/feedback/empty-state.js.map +1 -1
- package/dist/esm/components/feedback/error-display.d.ts.map +1 -1
- package/dist/esm/components/feedback/error-display.js.map +1 -1
- package/dist/esm/components/feedback/features/feature-limit-indicator.d.ts.map +1 -1
- package/dist/esm/components/feedback/features/feature-limit-indicator.js.map +1 -1
- package/dist/esm/components/feedback/features/feature-lock-badge.d.ts.map +1 -1
- package/dist/esm/components/feedback/features/feature-lock-badge.js.map +1 -1
- package/dist/esm/components/feedback/features/feature-unavailable-dialog.d.ts.map +1 -1
- package/dist/esm/components/feedback/features/feature-unavailable-dialog.js.map +1 -1
- package/dist/esm/components/feedback/features/feature-unavailable-prompt.d.ts.map +1 -1
- package/dist/esm/components/feedback/features/feature-unavailable-prompt.js.map +1 -1
- package/dist/esm/components/feedback/lazy-door-error-boundary.d.ts +57 -0
- package/dist/esm/components/feedback/lazy-door-error-boundary.d.ts.map +1 -0
- package/dist/esm/components/feedback/lazy-door-error-boundary.js +66 -0
- package/dist/esm/components/feedback/lazy-door-error-boundary.js.map +1 -0
- package/dist/esm/components/feedback/loading-overlay.d.ts.map +1 -1
- package/dist/esm/components/feedback/loading-overlay.js.map +1 -1
- package/dist/esm/components/feedback/loading-spinner.d.ts.map +1 -1
- package/dist/esm/components/feedback/loading-spinner.js.map +1 -1
- package/dist/esm/components/feedback/notification-center.d.ts +8 -8
- package/dist/esm/components/feedback/notification-center.d.ts.map +1 -1
- package/dist/esm/components/feedback/notification-center.js +7 -6
- package/dist/esm/components/feedback/notification-center.js.map +1 -1
- package/dist/esm/components/feedback/operations-confirm-critical.d.ts +13 -0
- package/dist/esm/components/feedback/operations-confirm-critical.d.ts.map +1 -1
- package/dist/esm/components/feedback/operations-confirm-critical.js.map +1 -1
- package/dist/esm/components/feedback/progress.d.ts.map +1 -1
- package/dist/esm/components/feedback/progress.js.map +1 -1
- package/dist/esm/components/feedback/resource-empty-state.d.ts.map +1 -1
- package/dist/esm/components/feedback/resource-empty-state.js.map +1 -1
- package/dist/esm/components/feedback/skeleton-text.d.ts.map +1 -1
- package/dist/esm/components/feedback/skeleton-text.js.map +1 -1
- package/dist/esm/components/feedback/skeleton.d.ts.map +1 -1
- package/dist/esm/components/feedback/skeleton.js.map +1 -1
- package/dist/esm/components/feedback/toast.d.ts.map +1 -1
- package/dist/esm/components/feedback/toast.js.map +1 -1
- package/dist/esm/components/files/Files_UploadGrantDrop.d.ts.map +1 -1
- package/dist/esm/components/files/Files_UploadGrantDrop.js +13 -11
- package/dist/esm/components/files/Files_UploadGrantDrop.js.map +1 -1
- package/dist/esm/components/files/Files_UploadGrantDrop.labels.d.ts.map +1 -1
- package/dist/esm/components/files/Files_UploadGrantDrop.labels.js.map +1 -1
- package/dist/esm/components/files/pages/FilesPage_UploadGrant.d.ts.map +1 -1
- package/dist/esm/components/files/pages/FilesPage_UploadGrant.js.map +1 -1
- package/dist/esm/components/flows-actors/actor.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/actor.js +6 -2
- package/dist/esm/components/flows-actors/actor.js.map +1 -1
- package/dist/esm/components/flows-actors/actor.labels.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/actor.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/agent-config.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/agent-config.js +0 -1
- package/dist/esm/components/flows-actors/agent-config.js.map +1 -1
- package/dist/esm/components/flows-actors/agent-config.labels.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/agent-config.labels.js +5 -4
- package/dist/esm/components/flows-actors/agent-config.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/approval-modification-refusal.utils.d.ts +14 -0
- package/dist/esm/components/flows-actors/approval-modification-refusal.utils.d.ts.map +1 -0
- package/dist/esm/components/flows-actors/approval-modification-refusal.utils.js +30 -0
- package/dist/esm/components/flows-actors/approval-modification-refusal.utils.js.map +1 -0
- package/dist/esm/components/flows-actors/approval.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/approval.js +74 -13
- package/dist/esm/components/flows-actors/approval.js.map +1 -1
- package/dist/esm/components/flows-actors/approval.labels.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/approval.labels.js +15 -0
- package/dist/esm/components/flows-actors/approval.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/artifact-browser.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/artifact-browser.js.map +1 -1
- package/dist/esm/components/flows-actors/artifact-browser.labels.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/artifact-browser.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/execution-plan.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/execution-plan.js +1 -1
- package/dist/esm/components/flows-actors/execution-plan.js.map +1 -1
- package/dist/esm/components/flows-actors/execution-plan.labels.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/execution-plan.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/flow-execution.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/flow-execution.js +8 -10
- package/dist/esm/components/flows-actors/flow-execution.js.map +1 -1
- package/dist/esm/components/flows-actors/flow-execution.labels.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/flow-execution.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/flow-node-badges.d.ts +3 -0
- package/dist/esm/components/flows-actors/flow-node-badges.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/flow-node-badges.js +37 -10
- package/dist/esm/components/flows-actors/flow-node-badges.js.map +1 -1
- package/dist/esm/components/flows-actors/flow-node.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/flow-node.js.map +1 -1
- package/dist/esm/components/flows-actors/flow-node.labels.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/flow-node.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/flows-actors-graph-runtime.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/flows-actors-graph-runtime.js.map +1 -1
- package/dist/esm/components/flows-actors/flows-actors-graph.lazy.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/flows-actors-graph.lazy.js +13 -12
- package/dist/esm/components/flows-actors/flows-actors-graph.lazy.js.map +1 -1
- package/dist/esm/components/flows-actors/flows-actors-ui.utils.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/flows-actors-ui.utils.js.map +1 -1
- package/dist/esm/components/flows-actors/system-catalog.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/system-catalog.js +3 -3
- package/dist/esm/components/flows-actors/system-catalog.js.map +1 -1
- package/dist/esm/components/flows-actors/system-catalog.labels.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/system-catalog.labels.js +0 -1
- package/dist/esm/components/flows-actors/system-catalog.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/task-detail.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/task-detail.js +4 -2
- package/dist/esm/components/flows-actors/task-detail.js.map +1 -1
- package/dist/esm/components/flows-actors/task-detail.labels.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/task-detail.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/task-memory.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/task-memory.js +1 -1
- package/dist/esm/components/flows-actors/task-memory.js.map +1 -1
- package/dist/esm/components/flows-actors/task-memory.labels.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/task-memory.labels.js.map +1 -1
- package/dist/esm/components/form/Form.d.ts +5 -4
- package/dist/esm/components/form/Form.d.ts.map +1 -1
- package/dist/esm/components/form/Form.js +12 -9
- package/dist/esm/components/form/Form.js.map +1 -1
- package/dist/esm/components/form/automated/AutomatedArrayField.d.ts.map +1 -1
- package/dist/esm/components/form/automated/AutomatedArrayField.js +44 -34
- package/dist/esm/components/form/automated/AutomatedArrayField.js.map +1 -1
- package/dist/esm/components/form/automated/AutomatedForm.d.ts.map +1 -1
- package/dist/esm/components/form/automated/AutomatedForm.js.map +1 -1
- package/dist/esm/components/form/automated/AutosaveContext.d.ts.map +1 -1
- package/dist/esm/components/form/automated/AutosaveContext.js +4 -2
- package/dist/esm/components/form/automated/AutosaveContext.js.map +1 -1
- package/dist/esm/components/form/automated/FormField.d.ts +12 -1
- package/dist/esm/components/form/automated/FormField.d.ts.map +1 -1
- package/dist/esm/components/form/automated/FormField.js +126 -30
- package/dist/esm/components/form/automated/FormField.js.map +1 -1
- package/dist/esm/components/form/automated/FormFieldArray.d.ts.map +1 -1
- package/dist/esm/components/form/automated/FormFieldArray.js.map +1 -1
- package/dist/esm/components/form/automated/FormFieldComposite.d.ts.map +1 -1
- package/dist/esm/components/form/automated/FormFieldComposite.js.map +1 -1
- package/dist/esm/components/form/automated/FormFieldRecord.d.ts.map +1 -1
- package/dist/esm/components/form/automated/FormFieldRecord.js.map +1 -1
- package/dist/esm/components/form/automated/FormTemplateContext.d.ts.map +1 -1
- package/dist/esm/components/form/automated/FormTemplateContext.js.map +1 -1
- package/dist/esm/components/form/automated/GeneratedAssociationRelationshipField.d.ts.map +1 -1
- package/dist/esm/components/form/automated/GeneratedAssociationRelationshipField.js.map +1 -1
- package/dist/esm/components/form/automated/GeneratedReferenceRelationshipField.d.ts.map +1 -1
- package/dist/esm/components/form/automated/GeneratedReferenceRelationshipField.js.map +1 -1
- package/dist/esm/components/form/automated/ResourceAutomatedForm.d.ts.map +1 -1
- package/dist/esm/components/form/automated/ResourceAutomatedForm.js +140 -40
- package/dist/esm/components/form/automated/ResourceAutomatedForm.js.map +1 -1
- package/dist/esm/components/form/automated/ResourceFormActionsContext.d.ts.map +1 -1
- package/dist/esm/components/form/automated/ResourceFormActionsContext.js.map +1 -1
- package/dist/esm/components/form/automated/automated-form-submit.utils.d.ts +20 -0
- package/dist/esm/components/form/automated/automated-form-submit.utils.d.ts.map +1 -1
- package/dist/esm/components/form/automated/automated-form-submit.utils.js +46 -0
- package/dist/esm/components/form/automated/automated-form-submit.utils.js.map +1 -1
- package/dist/esm/components/form/automated/autosave-derivation.frontend.utils.d.ts.map +1 -1
- package/dist/esm/components/form/automated/autosave-derivation.frontend.utils.js.map +1 -1
- package/dist/esm/components/form/automated/autosave-indicator.d.ts.map +1 -1
- package/dist/esm/components/form/automated/autosave-indicator.js.map +1 -1
- package/dist/esm/components/form/automated/autosave-indicator.utils.d.ts.map +1 -1
- package/dist/esm/components/form/automated/autosave-indicator.utils.js.map +1 -1
- package/dist/esm/components/form/automated/create-form-default-values.utils.d.ts.map +1 -1
- package/dist/esm/components/form/automated/create-form-default-values.utils.js.map +1 -1
- package/dist/esm/components/form/automated/field-clearing-rule.frontend.utils.d.ts +42 -0
- package/dist/esm/components/form/automated/field-clearing-rule.frontend.utils.d.ts.map +1 -0
- package/dist/esm/components/form/automated/field-clearing-rule.frontend.utils.js +47 -0
- package/dist/esm/components/form/automated/field-clearing-rule.frontend.utils.js.map +1 -0
- package/dist/esm/components/form/automated/form-field-autocomplete.frontend.utils.d.ts.map +1 -1
- package/dist/esm/components/form/automated/form-field-autocomplete.frontend.utils.js.map +1 -1
- package/dist/esm/components/form/automated/generated-relationship-field.helpers.d.ts.map +1 -1
- package/dist/esm/components/form/automated/generated-relationship-field.helpers.js.map +1 -1
- package/dist/esm/components/form/automated/generated-relationship-field.hooks.d.ts.map +1 -1
- package/dist/esm/components/form/automated/generated-relationship-field.hooks.js.map +1 -1
- package/dist/esm/components/form/automated/generated-relationship-field.shared.d.ts.map +1 -1
- package/dist/esm/components/form/automated/generated-relationship-field.shared.js.map +1 -1
- package/dist/esm/components/form/automated/generated-relationship-field.utils.d.ts.map +1 -1
- package/dist/esm/components/form/automated/generated-relationship-field.utils.js.map +1 -1
- package/dist/esm/components/form/automated/useArrayItemAutosaveField.d.ts.map +1 -1
- package/dist/esm/components/form/automated/useArrayItemAutosaveField.js.map +1 -1
- package/dist/esm/components/form/chromes/FormChromeContext.d.ts.map +1 -1
- package/dist/esm/components/form/chromes/FormChromeContext.js.map +1 -1
- package/dist/esm/components/form/chromes/FormFieldChrome.d.ts.map +1 -1
- package/dist/esm/components/form/chromes/FormFieldChrome.js +32 -20
- package/dist/esm/components/form/chromes/FormFieldChrome.js.map +1 -1
- package/dist/esm/components/form/chromes/field.d.ts.map +1 -1
- package/dist/esm/components/form/chromes/field.js.map +1 -1
- package/dist/esm/components/form/chromes/form-primitives.d.ts.map +1 -1
- package/dist/esm/components/form/chromes/form-primitives.js.map +1 -1
- package/dist/esm/components/form/combobox.d.ts.map +1 -1
- package/dist/esm/components/form/combobox.js.map +1 -1
- package/dist/esm/components/form/controls/boolean/checkbox.d.ts +10 -0
- package/dist/esm/components/form/controls/boolean/checkbox.d.ts.map +1 -1
- package/dist/esm/components/form/controls/boolean/checkbox.js.map +1 -1
- package/dist/esm/components/form/controls/boolean/switch.d.ts.map +1 -1
- package/dist/esm/components/form/controls/boolean/switch.js.map +1 -1
- package/dist/esm/components/form/controls/boolean/toggle-group-boolean.d.ts.map +1 -1
- package/dist/esm/components/form/controls/boolean/toggle-group-boolean.js.map +1 -1
- package/dist/esm/components/form/controls/boolean/toggle.d.ts.map +1 -1
- package/dist/esm/components/form/controls/boolean/toggle.js.map +1 -1
- package/dist/esm/components/form/controls/date-time/calendar.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/calendar.js.map +1 -1
- package/dist/esm/components/form/controls/date-time/date-range-picker.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/date-range-picker.js.map +1 -1
- package/dist/esm/components/form/controls/date-time/datepicker.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/datepicker.js.map +1 -1
- package/dist/esm/components/form/controls/date-time/datetime-picker.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/datetime-picker.js.map +1 -1
- package/dist/esm/components/form/controls/date-time/datetime-range-picker.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/datetime-range-picker.js.map +1 -1
- package/dist/esm/components/form/controls/date-time/time-picker.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/time-picker.js.map +1 -1
- package/dist/esm/components/form/controls/date-time/time-range-picker.d.ts.map +1 -1
- package/dist/esm/components/form/controls/date-time/time-range-picker.js.map +1 -1
- package/dist/esm/components/form/controls/enum/radio.d.ts.map +1 -1
- package/dist/esm/components/form/controls/enum/radio.js.map +1 -1
- package/dist/esm/components/form/controls/enum/select-multiple.d.ts.map +1 -1
- package/dist/esm/components/form/controls/enum/select-multiple.js.map +1 -1
- package/dist/esm/components/form/controls/enum/select.d.ts.map +1 -1
- package/dist/esm/components/form/controls/enum/select.js.map +1 -1
- package/dist/esm/components/form/controls/enum/toggle-group.d.ts +23 -0
- package/dist/esm/components/form/controls/enum/toggle-group.d.ts.map +1 -1
- package/dist/esm/components/form/controls/enum/toggle-group.js +20 -0
- package/dist/esm/components/form/controls/enum/toggle-group.js.map +1 -1
- package/dist/esm/components/form/controls/file/file-readiness.frontend.utils.d.ts +19 -0
- package/dist/esm/components/form/controls/file/file-readiness.frontend.utils.d.ts.map +1 -0
- package/dist/esm/components/form/controls/file/file-readiness.frontend.utils.js +50 -0
- package/dist/esm/components/form/controls/file/file-readiness.frontend.utils.js.map +1 -0
- package/dist/esm/components/form/controls/file/file-upload.d.ts.map +1 -1
- package/dist/esm/components/form/controls/file/file-upload.js.map +1 -1
- package/dist/esm/components/form/controls/file/image-crop.d.ts.map +1 -1
- package/dist/esm/components/form/controls/file/image-crop.frontend.utils.d.ts.map +1 -1
- package/dist/esm/components/form/controls/file/image-crop.frontend.utils.js.map +1 -1
- package/dist/esm/components/form/controls/file/image-crop.js.map +1 -1
- package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts.map +1 -1
- package/dist/esm/components/form/controls/form-field-checkbox-group.js +33 -32
- package/dist/esm/components/form/controls/form-field-checkbox-group.js.map +1 -1
- package/dist/esm/components/form/controls/input-group.d.ts.map +1 -1
- package/dist/esm/components/form/controls/input-group.js.map +1 -1
- package/dist/esm/components/form/controls/input.d.ts.map +1 -1
- package/dist/esm/components/form/controls/input.js.map +1 -1
- package/dist/esm/components/form/controls/number/slider.d.ts +1 -1
- package/dist/esm/components/form/controls/number/slider.d.ts.map +1 -1
- package/dist/esm/components/form/controls/number/slider.js.map +1 -1
- package/dist/esm/components/form/controls/string/color-input.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/color-input.js.map +1 -1
- package/dist/esm/components/form/controls/string/inline-edit-text.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/inline-edit-text.js.map +1 -1
- package/dist/esm/components/form/controls/string/input-otp.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/input-otp.js.map +1 -1
- package/dist/esm/components/form/controls/string/markdown-editor.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/markdown-editor.js.map +1 -1
- package/dist/esm/components/form/controls/string/markdown-editor.labels.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/markdown-editor.labels.js.map +1 -1
- package/dist/esm/components/form/controls/string/password-input.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/password-input.js.map +1 -1
- package/dist/esm/components/form/controls/string/textarea.d.ts.map +1 -1
- package/dist/esm/components/form/controls/string/textarea.js.map +1 -1
- package/dist/esm/components/form/feedback/RemoteChangeNotification.d.ts.map +1 -1
- package/dist/esm/components/form/feedback/RemoteChangeNotification.js.map +1 -1
- package/dist/esm/components/form/fields/accepted-file-kinds-description.frontend.utils.d.ts +15 -0
- package/dist/esm/components/form/fields/accepted-file-kinds-description.frontend.utils.d.ts.map +1 -0
- package/dist/esm/components/form/fields/accepted-file-kinds-description.frontend.utils.js +53 -0
- package/dist/esm/components/form/fields/accepted-file-kinds-description.frontend.utils.js.map +1 -0
- package/dist/esm/components/form/fields/form-field-address.d.ts +56 -0
- package/dist/esm/components/form/fields/form-field-address.d.ts.map +1 -0
- package/dist/esm/components/form/fields/form-field-address.js +178 -0
- package/dist/esm/components/form/fields/form-field-address.js.map +1 -0
- package/dist/esm/components/form/fields/form-field-address.labels.d.ts +3 -0
- package/dist/esm/components/form/fields/form-field-address.labels.d.ts.map +1 -0
- package/dist/esm/components/form/fields/form-field-address.labels.js +53 -0
- package/dist/esm/components/form/fields/form-field-address.labels.js.map +1 -0
- package/dist/esm/components/form/fields/form-field-bigdecimal.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-bigdecimal.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-bigdecimal.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-bigdecimal.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-boolean.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-boolean.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-boolean.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-boolean.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-code.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-code.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-code.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-code.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-date.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-date.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-date.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-date.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-datetime.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-datetime.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-datetime.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-datetime.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-duration.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-duration.js +5 -7
- package/dist/esm/components/form/fields/form-field-duration.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-duration.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-duration.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-enum.d.ts +14 -1
- package/dist/esm/components/form/fields/form-field-enum.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-enum.js +310 -32
- package/dist/esm/components/form/fields/form-field-enum.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-enum.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-enum.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-file-provider-constraints.frontend.utils.d.ts +18 -27
- package/dist/esm/components/form/fields/form-field-file-provider-constraints.frontend.utils.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-file-provider-constraints.frontend.utils.js +19 -46
- package/dist/esm/components/form/fields/form-field-file-provider-constraints.frontend.utils.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-file.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-file.js +267 -114
- package/dist/esm/components/form/fields/form-field-file.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-file.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-file.labels.js +18 -2
- package/dist/esm/components/form/fields/form-field-file.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-money.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-money.js +8 -34
- package/dist/esm/components/form/fields/form-field-money.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-money.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-money.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-number.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-number.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-number.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-number.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-phone.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-phone.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-phone.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-phone.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-bigdecimal.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-bigdecimal.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-bigdecimal.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-bigdecimal.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-date.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-date.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-date.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-date.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-datetime.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-datetime.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-datetime.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-datetime.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-money.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-money.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-money.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-money.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-number.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-number.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-number.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-number.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-time.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-time.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-time.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-time.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-string.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-string.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-string.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-string.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-time.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-time.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-time.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-time.labels.js.map +1 -1
- package/dist/esm/components/form/fields/useFormField.d.ts.map +1 -1
- package/dist/esm/components/form/fields/useFormField.js.map +1 -1
- package/dist/esm/components/form/form-context.d.ts.map +1 -1
- package/dist/esm/components/form/form-context.js.map +1 -1
- package/dist/esm/components/form/form-context.utils.d.ts.map +1 -1
- package/dist/esm/components/form/form-context.utils.js.map +1 -1
- package/dist/esm/components/form/form-external-validation.d.ts +11 -0
- package/dist/esm/components/form/form-external-validation.d.ts.map +1 -0
- package/dist/esm/components/form/form-external-validation.js +17 -0
- package/dist/esm/components/form/form-external-validation.js.map +1 -0
- package/dist/esm/components/form/form-field-types.d.ts +20 -0
- package/dist/esm/components/form/form-field-types.d.ts.map +1 -1
- package/dist/esm/components/form/form-field-types.js.map +1 -1
- package/dist/esm/components/form/useFormSchemaContext.d.ts.map +1 -1
- package/dist/esm/components/form/useFormSchemaContext.js.map +1 -1
- package/dist/esm/components/form/validation-errors/FormErrorSummary.d.ts.map +1 -1
- package/dist/esm/components/form/validation-errors/FormErrorSummary.js.map +1 -1
- package/dist/esm/components/form/validation-errors/form-error-extraction.utils.d.ts +13 -12
- package/dist/esm/components/form/validation-errors/form-error-extraction.utils.d.ts.map +1 -1
- package/dist/esm/components/form/validation-errors/form-error-extraction.utils.js +15 -17
- package/dist/esm/components/form/validation-errors/form-error-extraction.utils.js.map +1 -1
- package/dist/esm/components/form/validation-errors/form-validation.d.ts.map +1 -1
- package/dist/esm/components/form/validation-errors/form-validation.js.map +1 -1
- package/dist/esm/components/form/validation-errors/getFieldError.d.ts +6 -0
- package/dist/esm/components/form/validation-errors/getFieldError.d.ts.map +1 -1
- package/dist/esm/components/form/validation-errors/getFieldError.js +12 -1
- package/dist/esm/components/form/validation-errors/getFieldError.js.map +1 -1
- package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.d.ts +23 -0
- package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.d.ts.map +1 -0
- package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.js +10 -0
- package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.js.map +1 -0
- package/dist/esm/components/form/validation-errors/scroll-to-first-error.utils.d.ts.map +1 -1
- package/dist/esm/components/form/validation-errors/scroll-to-first-error.utils.js.map +1 -1
- package/dist/esm/components/form/validation-errors/unstarted-field-visit.d.ts +60 -0
- package/dist/esm/components/form/validation-errors/unstarted-field-visit.d.ts.map +1 -0
- package/dist/esm/components/form/validation-errors/unstarted-field-visit.js +79 -0
- package/dist/esm/components/form/validation-errors/unstarted-field-visit.js.map +1 -0
- package/dist/esm/components/form/validation-errors/useFieldUniquenessValidation.d.ts.map +1 -1
- package/dist/esm/components/form/validation-errors/useFieldUniquenessValidation.js +5 -2
- package/dist/esm/components/form/validation-errors/useFieldUniquenessValidation.js.map +1 -1
- package/dist/esm/components/form/validation-errors/useServerErrorInjection.d.ts +6 -1
- package/dist/esm/components/form/validation-errors/useServerErrorInjection.d.ts.map +1 -1
- package/dist/esm/components/form/validation-errors/useServerErrorInjection.js +10 -2
- package/dist/esm/components/form/validation-errors/useServerErrorInjection.js.map +1 -1
- package/dist/esm/components/form/validation-errors/validate-field-url.frontend.d.ts +32 -0
- package/dist/esm/components/form/validation-errors/validate-field-url.frontend.d.ts.map +1 -0
- package/dist/esm/components/form/validation-errors/validate-field-url.frontend.js +35 -0
- package/dist/esm/components/form/validation-errors/validate-field-url.frontend.js.map +1 -0
- package/dist/esm/components/form/validation-errors/zod-issue-resolver.d.ts +17 -0
- package/dist/esm/components/form/validation-errors/zod-issue-resolver.d.ts.map +1 -0
- package/dist/esm/components/form/validation-errors/zod-issue-resolver.js +73 -0
- package/dist/esm/components/form/validation-errors/zod-issue-resolver.js.map +1 -0
- package/dist/esm/components/layout/aspect-ratio.d.ts.map +1 -1
- package/dist/esm/components/layout/aspect-ratio.js.map +1 -1
- package/dist/esm/components/layout/carousel.d.ts.map +1 -1
- package/dist/esm/components/layout/carousel.js.map +1 -1
- package/dist/esm/components/layout/divider.d.ts.map +1 -1
- package/dist/esm/components/layout/divider.js.map +1 -1
- package/dist/esm/components/layout/resizable.d.ts.map +1 -1
- package/dist/esm/components/layout/resizable.js.map +1 -1
- package/dist/esm/components/layout/scroll-area.d.ts.map +1 -1
- package/dist/esm/components/layout/scroll-area.js.map +1 -1
- package/dist/esm/components/layout/separator.d.ts.map +1 -1
- package/dist/esm/components/layout/separator.js.map +1 -1
- package/dist/esm/components/navigation/NavigationItemBadge.d.ts +7 -1
- package/dist/esm/components/navigation/NavigationItemBadge.d.ts.map +1 -1
- package/dist/esm/components/navigation/NavigationItemBadge.js +29 -1
- package/dist/esm/components/navigation/NavigationItemBadge.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_ActivityBar.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_ActivityBar.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_CommandMenu.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_CommandMenu.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_ControlPanel.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_ControlPanel.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuBar.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuBar.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuUserOrg.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_MenuUserOrg.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_NavigationBack.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_NavigationBack.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_NotificationCenter.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_NotificationCenter.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickActionButton.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickActionButton.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickSwitcher.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickSwitcher.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_Sidebar.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_Sidebar.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_StatusBar.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_StatusBar.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_Toolbar.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_Toolbar.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_UtilityPanel.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_UtilityPanel.js.map +1 -1
- package/dist/esm/components/navigation/app-level/HostedComponentInteractionsProvider.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/HostedComponentInteractionsProvider.js.map +1 -1
- package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.js +26 -10
- package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.js.map +1 -1
- package/dist/esm/components/navigation/app-level/component-props.application-level.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/component-props.application-level.frontend.schemas.js.map +1 -1
- package/dist/esm/components/navigation/app-level/sidebar-resource-browser-empty-label.d.ts +14 -0
- package/dist/esm/components/navigation/app-level/sidebar-resource-browser-empty-label.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/sidebar-resource-browser-empty-label.js +13 -0
- package/dist/esm/components/navigation/app-level/sidebar-resource-browser-empty-label.js.map +1 -0
- package/dist/esm/components/navigation/app-level/useActivityBarBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useActivityBarBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.js +16 -12
- package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useControlPanelBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useControlPanelBehavior.js +12 -9
- package/dist/esm/components/navigation/app-level/useControlPanelBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useMenuBarBehavior.d.ts +9 -0
- package/dist/esm/components/navigation/app-level/useMenuBarBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useMenuBarBehavior.js +38 -2
- package/dist/esm/components/navigation/app-level/useMenuBarBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useNavigationBehaviors.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useNavigationBehaviors.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useNotificationCenterBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useNotificationCenterBehavior.js +34 -15
- package/dist/esm/components/navigation/app-level/useNotificationCenterBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useQuickActionButtonBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useQuickActionButtonBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.js +3 -1
- package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useSidebarBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useSidebarBehavior.js +26 -3
- package/dist/esm/components/navigation/app-level/useSidebarBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useStatusBarBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useStatusBarBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useToolbarBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useToolbarBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.d.ts +16 -1
- package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.js +20 -25
- package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.js.map +1 -1
- package/dist/esm/components/navigation/breadcrumb.d.ts.map +1 -1
- package/dist/esm/components/navigation/breadcrumb.js.map +1 -1
- package/dist/esm/components/navigation/command.d.ts.map +1 -1
- package/dist/esm/components/navigation/command.js.map +1 -1
- package/dist/esm/components/navigation/menu-bar.d.ts.map +1 -1
- package/dist/esm/components/navigation/menu-bar.js.map +1 -1
- package/dist/esm/components/navigation/navbar.d.ts.map +1 -1
- package/dist/esm/components/navigation/navbar.js.map +1 -1
- package/dist/esm/components/navigation/sidebar.d.ts.map +1 -1
- package/dist/esm/components/navigation/sidebar.js.map +1 -1
- package/dist/esm/components/overlays/containers/OverlayContainer.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/OverlayContainer.js +44 -14
- package/dist/esm/components/overlays/containers/OverlayContainer.js.map +1 -1
- package/dist/esm/components/overlays/containers/OverlayContainer.labels.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/OverlayContainer.labels.js.map +1 -1
- package/dist/esm/components/overlays/containers/alert-dialog.d.ts +16 -12
- package/dist/esm/components/overlays/containers/alert-dialog.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/alert-dialog.js.map +1 -1
- package/dist/esm/components/overlays/containers/alert.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/alert.js.map +1 -1
- package/dist/esm/components/overlays/containers/dialog.d.ts +3 -1
- package/dist/esm/components/overlays/containers/dialog.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/dialog.js.map +1 -1
- package/dist/esm/components/overlays/containers/dialog.shared-types.d.ts +25 -7
- package/dist/esm/components/overlays/containers/dialog.shared-types.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/dialog.shared-types.js.map +1 -1
- package/dist/esm/components/overlays/containers/drawer.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/drawer.js.map +1 -1
- package/dist/esm/components/overlays/containers/navigation-overlay-container.utils.d.ts +21 -1
- package/dist/esm/components/overlays/containers/navigation-overlay-container.utils.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/navigation-overlay-container.utils.js +34 -1
- package/dist/esm/components/overlays/containers/navigation-overlay-container.utils.js.map +1 -1
- package/dist/esm/components/overlays/containers/overlay-container-mode-resolution.utils.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/overlay-container-mode-resolution.utils.js.map +1 -1
- package/dist/esm/components/overlays/containers/sheet.d.ts +6 -4
- package/dist/esm/components/overlays/containers/sheet.d.ts.map +1 -1
- package/dist/esm/components/overlays/containers/sheet.js.map +1 -1
- package/dist/esm/components/overlays/floating/context-menu.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/context-menu.js.map +1 -1
- package/dist/esm/components/overlays/floating/dropdown-menu.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/dropdown-menu.js.map +1 -1
- package/dist/esm/components/overlays/floating/hover-card.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/hover-card.js.map +1 -1
- package/dist/esm/components/overlays/floating/menu.shared-types.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/menu.shared-types.js.map +1 -1
- package/dist/esm/components/overlays/floating/popover.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/popover.js.map +1 -1
- package/dist/esm/components/overlays/floating/tooltip.d.ts.map +1 -1
- package/dist/esm/components/overlays/floating/tooltip.js.map +1 -1
- package/dist/esm/components/progression/ProgressionAchievementBadge.d.ts.map +1 -1
- package/dist/esm/components/progression/ProgressionAchievementBadge.js.map +1 -1
- package/dist/esm/components/progression/ProgressionAchievementBadge.labels.d.ts.map +1 -1
- package/dist/esm/components/progression/ProgressionAchievementBadge.labels.js.map +1 -1
- package/dist/esm/components/progression/ProgressionMilestoneTracker.d.ts +55 -4
- package/dist/esm/components/progression/ProgressionMilestoneTracker.d.ts.map +1 -1
- package/dist/esm/components/progression/ProgressionMilestoneTracker.js +265 -32
- package/dist/esm/components/progression/ProgressionMilestoneTracker.js.map +1 -1
- package/dist/esm/components/progression/ProgressionMilestoneTracker.labels.d.ts.map +1 -1
- package/dist/esm/components/progression/ProgressionMilestoneTracker.labels.js +42 -4
- package/dist/esm/components/progression/ProgressionMilestoneTracker.labels.js.map +1 -1
- package/dist/esm/components/resources/CollectionSelectionControls.d.ts +34 -15
- package/dist/esm/components/resources/CollectionSelectionControls.d.ts.map +1 -1
- package/dist/esm/components/resources/CollectionSelectionControls.js +4 -3
- package/dist/esm/components/resources/CollectionSelectionControls.js.map +1 -1
- package/dist/esm/components/resources/CollectionSelectionHeaderRail.d.ts +30 -0
- package/dist/esm/components/resources/CollectionSelectionHeaderRail.d.ts.map +1 -0
- package/dist/esm/components/resources/CollectionSelectionHeaderRail.js +17 -0
- package/dist/esm/components/resources/CollectionSelectionHeaderRail.js.map +1 -0
- package/dist/esm/components/resources/EphemeralFieldsRevealDialog.d.ts.map +1 -1
- package/dist/esm/components/resources/EphemeralFieldsRevealDialog.js.map +1 -1
- package/dist/esm/components/resources/InlineSearchInput.d.ts.map +1 -1
- package/dist/esm/components/resources/InlineSearchInput.js.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionBody_Table.d.ts +10 -1
- package/dist/esm/components/resources/ResourceCollectionBody_Table.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionBody_Table.js +9 -5
- package/dist/esm/components/resources/ResourceCollectionBody_Table.js.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionFilterPresets.d.ts +45 -0
- package/dist/esm/components/resources/ResourceCollectionFilterPresets.d.ts.map +1 -0
- package/dist/esm/components/resources/ResourceCollectionFilterPresets.js +81 -0
- package/dist/esm/components/resources/ResourceCollectionFilterPresets.js.map +1 -0
- package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.d.ts +22 -4
- package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.js +31 -6
- package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.js.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionToolbar.d.ts +25 -9
- package/dist/esm/components/resources/ResourceCollectionToolbar.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionToolbar.js +3 -2
- package/dist/esm/components/resources/ResourceCollectionToolbar.js.map +1 -1
- package/dist/esm/components/resources/ResourceInPlaceOperationRow.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceInPlaceOperationRow.js +2 -2
- package/dist/esm/components/resources/ResourceInPlaceOperationRow.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Action.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Action.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Action.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Action.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Breadcrumb.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Breadcrumb.js +2 -1
- package/dist/esm/components/resources/ResourceLayout_Breadcrumb.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Breadcrumb.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Breadcrumb.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_CollectionActions.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_CollectionActions.js +2 -2
- package/dist/esm/components/resources/ResourceLayout_CollectionActions.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ContainerNested.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ContainerNested.js +3 -3
- package/dist/esm/components/resources/ResourceLayout_ContainerNested.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ContainerNested.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ContainerNested.labels.js +4 -4
- package/dist/esm/components/resources/ResourceLayout_ContainerNested.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Create.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Create.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Create.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Create.labels.js +1 -0
- package/dist/esm/components/resources/ResourceLayout_Create.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_DangerZone.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_DangerZone.js +13 -18
- package/dist/esm/components/resources/ResourceLayout_DangerZone.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_DangerZone.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_DangerZone.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_FilterChips.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_FilterChips.js +13 -2
- package/dist/esm/components/resources/ResourceLayout_FilterChips.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Filters.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Filters.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Filters.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Filters.labels.js +2 -0
- package/dist/esm/components/resources/ResourceLayout_Filters.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_FiltersControl.d.ts +7 -1
- package/dist/esm/components/resources/ResourceLayout_FiltersControl.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_FiltersControl.js +66 -11
- package/dist/esm/components/resources/ResourceLayout_FiltersControl.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Header.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Header.js +85 -42
- package/dist/esm/components/resources/ResourceLayout_Header.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Header.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Header.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_InsertedViews.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_InsertedViews.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_List.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_List.js +130 -46
- package/dist/esm/components/resources/ResourceLayout_List.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_List.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_List.labels.js +12 -0
- package/dist/esm/components/resources/ResourceLayout_List.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_List_Table.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_List_Table.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_OperationBulk.d.ts +23 -1
- package/dist/esm/components/resources/ResourceLayout_OperationBulk.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_OperationBulk.js +52 -16
- package/dist/esm/components/resources/ResourceLayout_OperationBulk.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_OperationBulk.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_OperationBulk.labels.js +44 -0
- package/dist/esm/components/resources/ResourceLayout_OperationBulk.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_OperationsItems.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_OperationsItems.js +2 -2
- package/dist/esm/components/resources/ResourceLayout_OperationsItems.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_OperationsItems.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_OperationsItems.labels.js +78 -0
- package/dist/esm/components/resources/ResourceLayout_OperationsItems.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Pagination.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Pagination.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Pagination.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Pagination.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Read.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Read.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Read.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Read.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ReadSummary.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ReadSummary.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ReadSummary.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ReadSummary.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.js +2 -2
- package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Read_Expandable.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Read_Expandable.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Search.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Search.js +48 -25
- package/dist/esm/components/resources/ResourceLayout_Search.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Search.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Search.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Search_Table.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Search_Table.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.js +60 -44
- package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_SortControl.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_SortControl.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Update.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Update.js +18 -65
- package/dist/esm/components/resources/ResourceLayout_Update.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Update.labels.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Update.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceListItemRenderer.d.ts +26 -6
- package/dist/esm/components/resources/ResourceListItemRenderer.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceListItemRenderer.js +29 -11
- package/dist/esm/components/resources/ResourceListItemRenderer.js.map +1 -1
- package/dist/esm/components/resources/ResourceOperationActionPopover.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceOperationActionPopover.js +2 -2
- package/dist/esm/components/resources/ResourceOperationActionPopover.js.map +1 -1
- package/dist/esm/components/resources/ResourceOperationDetachedHost.d.ts +43 -0
- package/dist/esm/components/resources/ResourceOperationDetachedHost.d.ts.map +1 -0
- package/dist/esm/components/resources/ResourceOperationDetachedHost.js +94 -0
- package/dist/esm/components/resources/ResourceOperationDetachedHost.js.map +1 -0
- package/dist/esm/components/resources/ResourceOperationSurface.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceOperationSurface.js.map +1 -1
- package/dist/esm/components/resources/ResourceOwnedViewEmbeds.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceOwnedViewEmbeds.js.map +1 -1
- package/dist/esm/components/resources/ResourceViewModeToggle.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceViewModeToggle.js.map +1 -1
- package/dist/esm/components/resources/card-action-placement.utils.d.ts.map +1 -1
- package/dist/esm/components/resources/card-action-placement.utils.js.map +1 -1
- package/dist/esm/components/resources/collection-card-layout.utils.d.ts +37 -0
- package/dist/esm/components/resources/collection-card-layout.utils.d.ts.map +1 -1
- package/dist/esm/components/resources/collection-card-layout.utils.js +37 -0
- package/dist/esm/components/resources/collection-card-layout.utils.js.map +1 -1
- package/dist/esm/components/resources/collection-view-mode.frontend.d.ts.map +1 -1
- package/dist/esm/components/resources/collection-view-mode.frontend.js.map +1 -1
- package/dist/esm/components/resources/component-props.resources-layout.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/components/resources/component-props.resources-layout.frontend.schemas.js.map +1 -1
- package/dist/esm/components/resources/embeds/ComposedChildrenRegistry.d.ts.map +1 -1
- package/dist/esm/components/resources/embeds/ComposedChildrenRegistry.js.map +1 -1
- package/dist/esm/components/resources/embeds/EmbeddedResourceDescent.d.ts.map +1 -1
- package/dist/esm/components/resources/embeds/EmbeddedResourceDescent.js.map +1 -1
- package/dist/esm/components/resources/embeds/EmbeddedResourceHostContext.d.ts.map +1 -1
- package/dist/esm/components/resources/embeds/EmbeddedResourceHostContext.js.map +1 -1
- package/dist/esm/components/resources/embeds/RelatedResourcePreview.d.ts.map +1 -1
- package/dist/esm/components/resources/embeds/RelatedResourcePreview.js +5 -5
- package/dist/esm/components/resources/embeds/RelatedResourcePreview.js.map +1 -1
- package/dist/esm/components/resources/embeds/RelatedResourceSections.d.ts.map +1 -1
- package/dist/esm/components/resources/embeds/RelatedResourceSections.js.map +1 -1
- package/dist/esm/components/resources/embeds/ResourceEmbeds.d.ts +9 -0
- package/dist/esm/components/resources/embeds/ResourceEmbeds.d.ts.map +1 -1
- package/dist/esm/components/resources/embeds/ResourceEmbeds.js +1 -0
- package/dist/esm/components/resources/embeds/ResourceEmbeds.js.map +1 -1
- package/dist/esm/components/resources/embeds/child-operation-addressability.utils.d.ts.map +1 -1
- package/dist/esm/components/resources/embeds/child-operation-addressability.utils.js.map +1 -1
- package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.d.ts.map +1 -1
- package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.js.map +1 -1
- package/dist/esm/components/resources/inserted-resource-view.frontend.utils.d.ts.map +1 -1
- package/dist/esm/components/resources/inserted-resource-view.frontend.utils.js.map +1 -1
- package/dist/esm/components/resources/resource-operation-custom-view.contracts.d.ts.map +1 -1
- package/dist/esm/components/resources/resource-operation-custom-view.contracts.js.map +1 -1
- package/dist/esm/components/resources/resourceLayout.utils.d.ts +10 -0
- package/dist/esm/components/resources/resourceLayout.utils.d.ts.map +1 -1
- package/dist/esm/components/resources/resourceLayout.utils.js +20 -43
- package/dist/esm/components/resources/resourceLayout.utils.js.map +1 -1
- package/dist/esm/components/resources/skeleton/ArrayField.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/ArrayField.js.map +1 -1
- package/dist/esm/components/resources/skeleton/ArrayItemTemplate.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/ArrayItemTemplate.js.map +1 -1
- package/dist/esm/components/resources/skeleton/DiscriminatorSwitch.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/DiscriminatorSwitch.js.map +1 -1
- package/dist/esm/components/resources/skeleton/DisplayDiscriminatorSwitch.d.ts +42 -0
- package/dist/esm/components/resources/skeleton/DisplayDiscriminatorSwitch.d.ts.map +1 -0
- package/dist/esm/components/resources/skeleton/DisplayDiscriminatorSwitch.js +44 -0
- package/dist/esm/components/resources/skeleton/DisplayDiscriminatorSwitch.js.map +1 -0
- package/dist/esm/components/resources/skeleton/DisplayLayout.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/DisplayLayout.js +1 -1
- package/dist/esm/components/resources/skeleton/DisplayLayout.js.map +1 -1
- package/dist/esm/components/resources/skeleton/Divider.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/Divider.js.map +1 -1
- package/dist/esm/components/resources/skeleton/FieldScopeContext.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/FieldScopeContext.js.map +1 -1
- package/dist/esm/components/resources/skeleton/FormErrorSummarySlot.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/FormErrorSummarySlot.js.map +1 -1
- package/dist/esm/components/resources/skeleton/FormLayout.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/FormLayout.js.map +1 -1
- package/dist/esm/components/resources/skeleton/FormLayoutSlotContext.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/FormLayoutSlotContext.js.map +1 -1
- package/dist/esm/components/resources/skeleton/Group.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/Group.js +1 -1
- package/dist/esm/components/resources/skeleton/Group.js.map +1 -1
- package/dist/esm/components/resources/skeleton/ObjectScope.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/ObjectScope.js.map +1 -1
- package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.d.ts +32 -0
- package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.js +21 -3
- package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.js.map +1 -1
- package/dist/esm/components/resources/skeleton/Section.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/Section.js.map +1 -1
- package/dist/esm/components/resources/skeleton/Section.shared.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/Section.shared.js.map +1 -1
- package/dist/esm/components/resources/skeleton/SectionFieldsContext.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/SectionFieldsContext.js.map +1 -1
- package/dist/esm/components/resources/skeleton/SectionHostHeadingContext.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/SectionHostHeadingContext.js.map +1 -1
- package/dist/esm/components/resources/skeleton/SectionPresentationContext.d.ts +8 -0
- package/dist/esm/components/resources/skeleton/SectionPresentationContext.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/SectionPresentationContext.js.map +1 -1
- package/dist/esm/components/resources/skeleton/SubmitButton.d.ts +12 -1
- package/dist/esm/components/resources/skeleton/SubmitButton.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/SubmitButton.js +2 -2
- package/dist/esm/components/resources/skeleton/SubmitButton.js.map +1 -1
- package/dist/esm/components/resources/skeleton/SummaryHeader.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/SummaryHeader.js.map +1 -1
- package/dist/esm/components/resources/skeleton/SummaryLayout.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/SummaryLayout.js +53 -1
- package/dist/esm/components/resources/skeleton/SummaryLayout.js.map +1 -1
- package/dist/esm/components/resources/skeleton/SummaryMeta.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/SummaryMeta.js.map +1 -1
- package/dist/esm/components/resources/skeleton/SummaryTitle.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/SummaryTitle.js.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardLayout.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardLayout.js +7 -0
- package/dist/esm/components/resources/skeleton/WizardLayout.js.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardLayoutContext.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardLayoutContext.js.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardStep.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardStep.js.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardStepFieldsContext.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardStepFieldsContext.js.map +1 -1
- package/dist/esm/components/resources/skeleton/section-consolidation.shared.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/section-consolidation.shared.js.map +1 -1
- package/dist/esm/components/resources/skeleton/section-consolidation.utils.d.ts +2 -2
- package/dist/esm/components/resources/skeleton/section-consolidation.utils.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/section-consolidation.utils.js +2 -2
- package/dist/esm/components/resources/skeleton/section-consolidation.utils.js.map +1 -1
- package/dist/esm/components/resources/useInlineSearch.d.ts.map +1 -1
- package/dist/esm/components/resources/useInlineSearch.js.map +1 -1
- package/dist/esm/components/resources/useLongPress.d.ts.map +1 -1
- package/dist/esm/components/resources/useLongPress.js.map +1 -1
- package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.d.ts +1 -1
- package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.d.ts.map +1 -1
- package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.js +30 -7
- package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.js.map +1 -1
- package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.d.ts.map +1 -1
- package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.js.map +1 -1
- package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.labels.d.ts.map +1 -1
- package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.labels.js.map +1 -1
- package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Search.d.ts.map +1 -1
- package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Search.js.map +1 -1
- package/dist/esm/components/resources-fields/resource-reference/ResourceFieldDisplay_ResourceReference.d.ts +7 -0
- package/dist/esm/components/resources-fields/resource-reference/ResourceFieldDisplay_ResourceReference.d.ts.map +1 -1
- package/dist/esm/components/resources-fields/resource-reference/ResourceFieldDisplay_ResourceReference.js.map +1 -1
- package/dist/esm/components/resources-fields/resource-reference/ResourceFieldEdit_ResourceReference.d.ts.map +1 -1
- package/dist/esm/components/resources-fields/resource-reference/ResourceFieldEdit_ResourceReference.js.map +1 -1
- package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.d.ts.map +1 -1
- package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.js.map +1 -1
- package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.d.ts +3 -3
- package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.d.ts.map +1 -1
- package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.js +12 -13
- package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.js.map +1 -1
- package/dist/esm/components/sections/ContentSectionContainer.d.ts +4 -0
- package/dist/esm/components/sections/ContentSectionContainer.d.ts.map +1 -1
- package/dist/esm/components/sections/ContentSectionContainer.js +12 -5
- package/dist/esm/components/sections/ContentSectionContainer.js.map +1 -1
- package/dist/esm/components/sections/ContentSectionContainer.labels.d.ts.map +1 -1
- package/dist/esm/components/sections/ContentSectionContainer.labels.js.map +1 -1
- package/dist/esm/components/sections/accordion.d.ts.map +1 -1
- package/dist/esm/components/sections/accordion.js.map +1 -1
- package/dist/esm/components/sections/card.d.ts +50 -0
- package/dist/esm/components/sections/card.d.ts.map +1 -1
- package/dist/esm/components/sections/card.js +34 -1
- package/dist/esm/components/sections/card.js.map +1 -1
- package/dist/esm/components/sections/collapsible.d.ts.map +1 -1
- package/dist/esm/components/sections/collapsible.js.map +1 -1
- package/dist/esm/components/sections/content-section.d.ts.map +1 -1
- package/dist/esm/components/sections/content-section.js.map +1 -1
- package/dist/esm/components/sections/pagination.d.ts.map +1 -1
- package/dist/esm/components/sections/pagination.js.map +1 -1
- package/dist/esm/components/sections/section-grouping.shared.d.ts +10 -1
- package/dist/esm/components/sections/section-grouping.shared.d.ts.map +1 -1
- package/dist/esm/components/sections/section-grouping.shared.js +11 -2
- package/dist/esm/components/sections/section-grouping.shared.js.map +1 -1
- package/dist/esm/components/sections/stacked-layout.d.ts.map +1 -1
- package/dist/esm/components/sections/stacked-layout.js.map +1 -1
- package/dist/esm/components/sections/stepper.d.ts.map +1 -1
- package/dist/esm/components/sections/stepper.js.map +1 -1
- package/dist/esm/components/sections/surface.d.ts +4 -2
- package/dist/esm/components/sections/surface.d.ts.map +1 -1
- package/dist/esm/components/sections/surface.js +36 -1
- package/dist/esm/components/sections/surface.js.map +1 -1
- package/dist/esm/components/sections/table.d.ts.map +1 -1
- package/dist/esm/components/sections/table.js.map +1 -1
- package/dist/esm/components/sections/tabs.d.ts +44 -0
- package/dist/esm/components/sections/tabs.d.ts.map +1 -1
- package/dist/esm/components/sections/tabs.js +32 -0
- package/dist/esm/components/sections/tabs.js.map +1 -1
- package/dist/esm/components/settings/AppPage_AppearanceSettings.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_AppearanceSettings.js.map +1 -1
- package/dist/esm/components/settings/AppPage_AppearanceSettings.labels.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_AppearanceSettings.labels.js.map +1 -1
- package/dist/esm/components/settings/AppPage_BillingSettings.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_BillingSettings.js.map +1 -1
- package/dist/esm/components/settings/AppPage_BillingSettings.labels.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_BillingSettings.labels.js.map +1 -1
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts +116 -49
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.js +392 -109
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.js.map +1 -1
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.js +39 -3
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.js.map +1 -1
- package/dist/esm/components/settings/AppPage_InvitationsSettings.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_InvitationsSettings.js.map +1 -1
- package/dist/esm/components/settings/AppPage_InvitationsSettings.labels.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_InvitationsSettings.labels.js.map +1 -1
- package/dist/esm/components/settings/SettingsHub.d.ts +16 -8
- package/dist/esm/components/settings/SettingsHub.d.ts.map +1 -1
- package/dist/esm/components/settings/SettingsHub.js +218 -47
- package/dist/esm/components/settings/SettingsHub.js.map +1 -1
- package/dist/esm/components/settings/SettingsHub.labels.d.ts.map +1 -1
- package/dist/esm/components/settings/SettingsHub.labels.js +3 -0
- package/dist/esm/components/settings/SettingsHub.labels.js.map +1 -1
- package/dist/esm/components/settings/SettingsResourceOperationPanel.d.ts.map +1 -1
- package/dist/esm/components/settings/SettingsResourceOperationPanel.js +26 -3
- package/dist/esm/components/settings/SettingsResourceOperationPanel.js.map +1 -1
- package/dist/esm/components/settings/SettingsSectionNavigationHost.d.ts.map +1 -1
- package/dist/esm/components/settings/SettingsSectionNavigationHost.js +7 -0
- package/dist/esm/components/settings/SettingsSectionNavigationHost.js.map +1 -1
- package/dist/esm/components/typography/heading.d.ts.map +1 -1
- package/dist/esm/components/typography/heading.js.map +1 -1
- package/dist/esm/components/typography/label.d.ts.map +1 -1
- package/dist/esm/components/typography/label.js.map +1 -1
- package/dist/esm/components/typography/link.d.ts +1 -0
- package/dist/esm/components/typography/link.d.ts.map +1 -1
- package/dist/esm/components/typography/link.js.map +1 -1
- package/dist/esm/components/typography/text.d.ts +7 -1
- package/dist/esm/components/typography/text.d.ts.map +1 -1
- package/dist/esm/components/typography/text.js.map +1 -1
- package/dist/esm/components/typography/truncated-text.d.ts.map +1 -1
- package/dist/esm/components/typography/truncated-text.js.map +1 -1
- package/dist/esm/components/views/ViewLayout_Header.d.ts +4 -3
- package/dist/esm/components/views/ViewLayout_Header.d.ts.map +1 -1
- package/dist/esm/components/views/ViewLayout_Header.js +10 -7
- package/dist/esm/components/views/ViewLayout_Header.js.map +1 -1
- package/dist/esm/components/views/ViewNotFound.d.ts.map +1 -1
- package/dist/esm/components/views/ViewNotFound.js.map +1 -1
- package/dist/esm/components/views/ViewNotFound.labels.d.ts +16 -0
- package/dist/esm/components/views/ViewNotFound.labels.d.ts.map +1 -1
- package/dist/esm/components/views/ViewNotFound.labels.js +33 -9
- package/dist/esm/components/views/ViewNotFound.labels.js.map +1 -1
- package/dist/esm/components/views/chart-view/ChartEmptyState.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/ChartEmptyState.js +5 -5
- package/dist/esm/components/views/chart-view/ChartEmptyState.js.map +1 -1
- package/dist/esm/components/views/chart-view/ChartErrorState.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/ChartErrorState.js +4 -6
- package/dist/esm/components/views/chart-view/ChartErrorState.js.map +1 -1
- package/dist/esm/components/views/chart-view/ChartLoadingSkeleton.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/ChartLoadingSkeleton.js.map +1 -1
- package/dist/esm/components/views/chart-view/ChartView.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/ChartView.js +10 -3
- package/dist/esm/components/views/chart-view/ChartView.js.map +1 -1
- package/dist/esm/components/views/chart-view/ChartView.labels.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/ChartView.labels.js.map +1 -1
- package/dist/esm/components/views/chart-view/ChartView.lazy.d.ts +3 -1
- package/dist/esm/components/views/chart-view/ChartView.lazy.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/ChartView.lazy.js +22 -2
- package/dist/esm/components/views/chart-view/ChartView.lazy.js.map +1 -1
- package/dist/esm/components/views/chart-view/ChartWidget.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/ChartWidget.js.map +1 -1
- package/dist/esm/components/views/chart-view/ChartWidget.labels.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/ChartWidget.labels.js.map +1 -1
- package/dist/esm/components/views/chart-view/WildoEChart.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/WildoEChart.js.map +1 -1
- package/dist/esm/components/views/chart-view/chart-export.utils.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/chart-export.utils.js.map +1 -1
- package/dist/esm/components/views/chart-view/chart-runtime.utils.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/chart-runtime.utils.js.map +1 -1
- package/dist/esm/components/views/chart-view/chart-theme-bridge.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/chart-theme-bridge.js.map +1 -1
- package/dist/esm/components/views/chart-view/chart-view.utils.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/chart-view.utils.js.map +1 -1
- package/dist/esm/components/views/chart-view/dev/ChartView.example.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/dev/ChartView.example.js.map +1 -1
- package/dist/esm/components/views/chart-view/echarts-setup.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/echarts-setup.js.map +1 -1
- package/dist/esm/components/views/chart-view/enum-color-bridge.d.ts +16 -13
- package/dist/esm/components/views/chart-view/enum-color-bridge.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/enum-color-bridge.js +33 -30
- package/dist/esm/components/views/chart-view/enum-color-bridge.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builder-utils.d.ts +11 -4
- package/dist/esm/components/views/chart-view/option-builder/builder-utils.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builder-utils.js +16 -6
- package/dist/esm/components/views/chart-view/option-builder/builder-utils.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/bar-family.builder.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/bar-family.builder.js +3 -3
- package/dist/esm/components/views/chart-view/option-builder/builders/bar-family.builder.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/composed.builder.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/composed.builder.js +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/composed.builder.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/funnel.builder.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/funnel.builder.js +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/funnel.builder.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/gauge.builder.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/gauge.builder.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/heatmap.builder.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/heatmap.builder.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/hierarchical-family.builder.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/hierarchical-family.builder.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/line-family.builder.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/line-family.builder.js +2 -2
- package/dist/esm/components/views/chart-view/option-builder/builders/line-family.builder.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/parallel.builder.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/parallel.builder.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/pie-family.builder.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/pie-family.builder.js +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/pie-family.builder.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/radar.builder.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/radar.builder.js +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/radar.builder.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/sankey.builder.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/sankey.builder.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/scatter-family.builder.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/scatter-family.builder.js +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/scatter-family.builder.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/statistical-family.builder.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/statistical-family.builder.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.d.ts +5 -0
- package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.js +2 -1
- package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.js.map +1 -1
- package/dist/esm/components/views/composite-view/CompositeLayout.d.ts +4 -0
- package/dist/esm/components/views/composite-view/CompositeLayout.d.ts.map +1 -1
- package/dist/esm/components/views/composite-view/CompositeLayout.js +14 -2
- package/dist/esm/components/views/composite-view/CompositeLayout.js.map +1 -1
- package/dist/esm/components/views/composite-view/CompositeView.d.ts.map +1 -1
- package/dist/esm/components/views/composite-view/CompositeView.js.map +1 -1
- package/dist/esm/components/views/composite-view/CompositeViewContext.d.ts.map +1 -1
- package/dist/esm/components/views/composite-view/CompositeViewContext.js.map +1 -1
- package/dist/esm/components/views/composite-view/useCompositeResourceOperationContextBuilder.d.ts.map +1 -1
- package/dist/esm/components/views/composite-view/useCompositeResourceOperationContextBuilder.js.map +1 -1
- package/dist/esm/components/views/composite-view/useHostRecordDerivedParentContext.d.ts.map +1 -1
- package/dist/esm/components/views/composite-view/useHostRecordDerivedParentContext.js.map +1 -1
- package/dist/esm/components/views/execution-view/ExecutionView.d.ts.map +1 -1
- package/dist/esm/components/views/execution-view/ExecutionView.js.map +1 -1
- package/dist/esm/components/views/execution-view/ExecutionView.labels.d.ts.map +1 -1
- package/dist/esm/components/views/execution-view/ExecutionView.labels.js.map +1 -1
- package/dist/esm/components/views/flows-actors-view/FlowsActorsView.d.ts.map +1 -1
- package/dist/esm/components/views/flows-actors-view/FlowsActorsView.js +77 -34
- package/dist/esm/components/views/flows-actors-view/FlowsActorsView.js.map +1 -1
- package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.d.ts.map +1 -1
- package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.js +24 -0
- package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.js.map +1 -1
- package/dist/esm/components/views/full-custom-view/FullCustomView.d.ts.map +1 -1
- package/dist/esm/components/views/full-custom-view/FullCustomView.js.map +1 -1
- package/dist/esm/components/views/onboarding-view/OnboardingView.d.ts.map +1 -1
- package/dist/esm/components/views/onboarding-view/OnboardingView.js +42 -41
- package/dist/esm/components/views/onboarding-view/OnboardingView.js.map +1 -1
- package/dist/esm/components/views/onboarding-view/OnboardingView.labels.d.ts.map +1 -1
- package/dist/esm/components/views/onboarding-view/OnboardingView.labels.js.map +1 -1
- package/dist/esm/components/views/onboarding-view/onboarding-view.utils.d.ts.map +1 -1
- package/dist/esm/components/views/onboarding-view/onboarding-view.utils.js.map +1 -1
- package/dist/esm/core/app-shell/PortalContainerContext.d.ts.map +1 -1
- package/dist/esm/core/app-shell/PortalContainerContext.js.map +1 -1
- package/dist/esm/core/app-shell/app-shell.schemas.d.ts +31 -4
- package/dist/esm/core/app-shell/app-shell.schemas.d.ts.map +1 -1
- package/dist/esm/core/app-shell/app-shell.schemas.js.map +1 -1
- package/dist/esm/core/app-shell/app-shell.utils.d.ts.map +1 -1
- package/dist/esm/core/app-shell/app-shell.utils.js.map +1 -1
- package/dist/esm/core/app-shell/hosted-components.utils.d.ts.map +1 -1
- package/dist/esm/core/app-shell/hosted-components.utils.js.map +1 -1
- package/dist/esm/core/app-shell/useAppShellLayout.d.ts.map +1 -1
- package/dist/esm/core/app-shell/useAppShellLayout.js.map +1 -1
- package/dist/esm/core/app-shell/usePublicShellLayout.d.ts +2 -1
- package/dist/esm/core/app-shell/usePublicShellLayout.d.ts.map +1 -1
- package/dist/esm/core/app-shell/usePublicShellLayout.js +15 -2
- package/dist/esm/core/app-shell/usePublicShellLayout.js.map +1 -1
- package/dist/esm/core/automated-layout/automated-layout.frontend.schemas.d.ts +16 -0
- package/dist/esm/core/automated-layout/automated-layout.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/automated-layout/automated-layout.frontend.schemas.js +17 -0
- package/dist/esm/core/automated-layout/automated-layout.frontend.schemas.js.map +1 -1
- package/dist/esm/core/automated-layout/automated-layout.frontend.utils.d.ts +16 -9
- package/dist/esm/core/automated-layout/automated-layout.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/automated-layout/automated-layout.frontend.utils.js +106 -13
- package/dist/esm/core/automated-layout/automated-layout.frontend.utils.js.map +1 -1
- package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.d.ts +39 -0
- package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.js +100 -0
- package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.js.map +1 -0
- package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.d.ts +21 -7
- package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.js +160 -122
- package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.js.map +1 -1
- package/dist/esm/core/billing/BillingContext.d.ts +15 -3
- package/dist/esm/core/billing/BillingContext.d.ts.map +1 -1
- package/dist/esm/core/billing/BillingContext.js +91 -28
- package/dist/esm/core/billing/BillingContext.js.map +1 -1
- package/dist/esm/core/billing/BillingErrorNotifier.d.ts.map +1 -1
- package/dist/esm/core/billing/BillingErrorNotifier.js +9 -5
- package/dist/esm/core/billing/BillingErrorNotifier.js.map +1 -1
- package/dist/esm/core/billing/billing-launcher.d.ts.map +1 -1
- package/dist/esm/core/billing/billing-launcher.js +1 -1
- package/dist/esm/core/billing/billing-launcher.js.map +1 -1
- package/dist/esm/core/billing/billing-provider-display.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/billing/billing-provider-display.frontend.utils.js.map +1 -1
- package/dist/esm/core/billing/useBilling.d.ts.map +1 -1
- package/dist/esm/core/billing/useBilling.js.map +1 -1
- package/dist/esm/core/billing/useBillingAction.d.ts.map +1 -1
- package/dist/esm/core/billing/useBillingAction.js +6 -5
- package/dist/esm/core/billing/useBillingAction.js.map +1 -1
- package/dist/esm/core/billing/useBillingPlanChange.d.ts +37 -0
- package/dist/esm/core/billing/useBillingPlanChange.d.ts.map +1 -0
- package/dist/esm/core/billing/useBillingPlanChange.js +113 -0
- package/dist/esm/core/billing/useBillingPlanChange.js.map +1 -0
- package/dist/esm/core/billing/useSafeBillingActionExecutor.d.ts +3 -0
- package/dist/esm/core/billing/useSafeBillingActionExecutor.d.ts.map +1 -1
- package/dist/esm/core/billing/useSafeBillingActionExecutor.js +7 -5
- package/dist/esm/core/billing/useSafeBillingActionExecutor.js.map +1 -1
- package/dist/esm/core/branding/useBrandIdentity.d.ts.map +1 -1
- package/dist/esm/core/branding/useBrandIdentity.js.map +1 -1
- package/dist/esm/core/branding/useBrandPresentation.d.ts.map +1 -1
- package/dist/esm/core/branding/useBrandPresentation.js.map +1 -1
- package/dist/esm/core/commons/devices.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/commons/devices.frontend.schemas.js.map +1 -1
- package/dist/esm/core/commons/local-storage.frontend.schemas.d.ts +15 -0
- package/dist/esm/core/commons/local-storage.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/commons/local-storage.frontend.schemas.js +16 -0
- package/dist/esm/core/commons/local-storage.frontend.schemas.js.map +1 -1
- package/dist/esm/core/commons/window-event.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/commons/window-event.frontend.schemas.js.map +1 -1
- package/dist/esm/core/companion/companion-exports.frontend.definitions.d.ts.map +1 -1
- package/dist/esm/core/companion/companion-exports.frontend.definitions.js.map +1 -1
- package/dist/esm/core/components-registry/ComponentNotInjected.d.ts.map +1 -1
- package/dist/esm/core/components-registry/ComponentNotInjected.js.map +1 -1
- package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.d.ts.map +1 -1
- package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.js +23 -3
- package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.js.map +1 -1
- package/dist/esm/core/components-registry/component-registry-loader.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/components-registry/component-registry-loader.frontend.service.js.map +1 -1
- package/dist/esm/core/components-registry/component-registry.frontend.schemas.d.ts +24 -2
- package/dist/esm/core/components-registry/component-registry.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/components-registry/component-registry.frontend.schemas.js.map +1 -1
- package/dist/esm/core/components-registry/component-registry.frontend.service.d.ts +12 -12
- package/dist/esm/core/components-registry/component-registry.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/components-registry/component-registry.frontend.service.js.map +1 -1
- package/dist/esm/core/components-registry/component-resolver.frontend.helper.d.ts.map +1 -1
- package/dist/esm/core/components-registry/component-resolver.frontend.helper.js.map +1 -1
- package/dist/esm/core/components-registry/provider-component-registry.frontend.service.d.ts +133 -18
- package/dist/esm/core/components-registry/provider-component-registry.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/components-registry/provider-component-registry.frontend.service.js +181 -21
- package/dist/esm/core/components-registry/provider-component-registry.frontend.service.js.map +1 -1
- package/dist/esm/core/components-registry/register-framework-layouts.d.ts.map +1 -1
- package/dist/esm/core/components-registry/register-framework-layouts.js +4 -0
- package/dist/esm/core/components-registry/register-framework-layouts.js.map +1 -1
- package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.d.ts +20 -5
- package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.d.ts.map +1 -1
- package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.js +13 -5
- package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.js.map +1 -1
- package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts +31 -31
- package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/app-configuration-frontend.schemas.js +10 -0
- package/dist/esm/core/config/app-configuration-frontend.schemas.js.map +1 -1
- package/dist/esm/core/config/app-level-components.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/app-level-components.frontend.schemas.js.map +1 -1
- package/dist/esm/core/config/chart-view.frontend.schemas.d.ts +8 -8
- package/dist/esm/core/config/chart-view.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/chart-view.frontend.schemas.js.map +1 -1
- package/dist/esm/core/config/composite-view.schemas.d.ts +26 -4
- package/dist/esm/core/config/composite-view.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/composite-view.schemas.js +10 -0
- package/dist/esm/core/config/composite-view.schemas.js.map +1 -1
- package/dist/esm/core/config/config-merge-utilities.d.ts.map +1 -1
- package/dist/esm/core/config/config-merge-utilities.js.map +1 -1
- package/dist/esm/core/config/engine-settings-destinations.d.ts +0 -69
- package/dist/esm/core/config/engine-settings-destinations.d.ts.map +1 -1
- package/dist/esm/core/config/engine-settings-destinations.js +430 -90
- package/dist/esm/core/config/engine-settings-destinations.js.map +1 -1
- package/dist/esm/core/config/execution-view.schemas.d.ts +3 -3
- package/dist/esm/core/config/execution-view.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/execution-view.schemas.js +1 -1
- package/dist/esm/core/config/execution-view.schemas.js.map +1 -1
- package/dist/esm/core/config/flows-actors-view.schemas.d.ts +3 -2
- package/dist/esm/core/config/flows-actors-view.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/flows-actors-view.schemas.js +1 -1
- package/dist/esm/core/config/flows-actors-view.schemas.js.map +1 -1
- package/dist/esm/core/config/full-custom-view.schemas.d.ts +9 -0
- package/dist/esm/core/config/full-custom-view.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/full-custom-view.schemas.js +16 -0
- package/dist/esm/core/config/full-custom-view.schemas.js.map +1 -1
- package/dist/esm/core/config/inserted-view-launcher.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/inserted-view-launcher.schemas.js.map +1 -1
- package/dist/esm/core/config/inserted-view.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/inserted-view.frontend.schemas.js.map +1 -1
- package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts +19 -5
- package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/launcher-items.frontend.schemas.js.map +1 -1
- package/dist/esm/core/config/onboarding-view.frontend.schemas.d.ts +18 -10
- package/dist/esm/core/config/onboarding-view.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/onboarding-view.frontend.schemas.js +17 -21
- package/dist/esm/core/config/onboarding-view.frontend.schemas.js.map +1 -1
- package/dist/esm/core/config/resource-owned-view-resolution.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/config/resource-owned-view-resolution.frontend.utils.js.map +1 -1
- package/dist/esm/core/config/settings-hub-gating.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/config/settings-hub-gating.frontend.utils.js.map +1 -1
- package/dist/esm/core/config/settings-hub-presentation.frontend.utils.d.ts +22 -0
- package/dist/esm/core/config/settings-hub-presentation.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/config/settings-hub-presentation.frontend.utils.js +91 -0
- package/dist/esm/core/config/settings-hub-presentation.frontend.utils.js.map +1 -0
- package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts +39 -11
- package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/settings-hub.frontend.schemas.js +14 -2
- package/dist/esm/core/config/settings-hub.frontend.schemas.js.map +1 -1
- package/dist/esm/core/config/useSettingsHubConfig.d.ts +24 -3
- package/dist/esm/core/config/useSettingsHubConfig.d.ts.map +1 -1
- package/dist/esm/core/config/useSettingsHubConfig.js +38 -10
- package/dist/esm/core/config/useSettingsHubConfig.js.map +1 -1
- package/dist/esm/core/config/useVisibleSettingsHubConfig.d.ts +28 -1
- package/dist/esm/core/config/useVisibleSettingsHubConfig.d.ts.map +1 -1
- package/dist/esm/core/config/useVisibleSettingsHubConfig.js +36 -4
- package/dist/esm/core/config/useVisibleSettingsHubConfig.js.map +1 -1
- package/dist/esm/core/config/verify-feature-references.frontend.d.ts.map +1 -1
- package/dist/esm/core/config/verify-feature-references.frontend.js.map +1 -1
- package/dist/esm/core/config/verify-launcher-content.d.ts.map +1 -1
- package/dist/esm/core/config/verify-launcher-content.js.map +1 -1
- package/dist/esm/core/config/verify-settings-hub-content.d.ts +13 -2
- package/dist/esm/core/config/verify-settings-hub-content.d.ts.map +1 -1
- package/dist/esm/core/config/verify-settings-hub-content.js +33 -2
- package/dist/esm/core/config/verify-settings-hub-content.js.map +1 -1
- package/dist/esm/core/config/view-label-declaration.schemas.d.ts +22 -0
- package/dist/esm/core/config/view-label-declaration.schemas.d.ts.map +1 -0
- package/dist/esm/core/config/view-label-declaration.schemas.js +1 -0
- package/dist/esm/core/config/view-label-declaration.schemas.js.map +1 -0
- package/dist/esm/core/config/views-frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/views-frontend.schemas.js.map +1 -1
- package/dist/esm/core/enums/common-enum-registry.d.ts +28 -5
- package/dist/esm/core/enums/common-enum-registry.d.ts.map +1 -1
- package/dist/esm/core/enums/common-enum-registry.js +41 -7
- package/dist/esm/core/enums/common-enum-registry.js.map +1 -1
- package/dist/esm/core/errors/ErrorBoundary.d.ts.map +1 -1
- package/dist/esm/core/errors/ErrorBoundary.js.map +1 -1
- package/dist/esm/core/errors/ErrorContext.d.ts.map +1 -1
- package/dist/esm/core/errors/ErrorContext.js +12 -29
- package/dist/esm/core/errors/ErrorContext.js.map +1 -1
- package/dist/esm/core/errors/ErrorModalContent.d.ts +18 -0
- package/dist/esm/core/errors/ErrorModalContent.d.ts.map +1 -0
- package/dist/esm/core/errors/ErrorModalContent.js +18 -0
- package/dist/esm/core/errors/ErrorModalContent.js.map +1 -0
- package/dist/esm/core/errors/GlobalErrorHandler.d.ts.map +1 -1
- package/dist/esm/core/errors/GlobalErrorHandler.js +12 -41
- package/dist/esm/core/errors/GlobalErrorHandler.js.map +1 -1
- package/dist/esm/core/errors/RouterErrorBoundary.d.ts.map +1 -1
- package/dist/esm/core/errors/RouterErrorBoundary.js.map +1 -1
- package/dist/esm/core/errors/error-management.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/errors/error-management.frontend.service.js +4 -4
- package/dist/esm/core/errors/error-management.frontend.service.js.map +1 -1
- package/dist/esm/core/errors/errors-builder.frontend.services.d.ts.map +1 -1
- package/dist/esm/core/errors/errors-builder.frontend.services.js +3 -3
- package/dist/esm/core/errors/errors-builder.frontend.services.js.map +1 -1
- package/dist/esm/core/errors/errors.frontend.schemas.d.ts +24 -11
- package/dist/esm/core/errors/errors.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/errors/errors.frontend.schemas.js +8 -11
- package/dist/esm/core/errors/errors.frontend.schemas.js.map +1 -1
- package/dist/esm/core/errors/http-error-behavior.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/errors/http-error-behavior.frontend.schemas.js.map +1 -1
- package/dist/esm/core/errors/useError.d.ts.map +1 -1
- package/dist/esm/core/errors/useError.js.map +1 -1
- package/dist/esm/core/errors/useUserFacingErrorMessage.d.ts +40 -0
- package/dist/esm/core/errors/useUserFacingErrorMessage.d.ts.map +1 -0
- package/dist/esm/core/errors/useUserFacingErrorMessage.js +48 -0
- package/dist/esm/core/errors/useUserFacingErrorMessage.js.map +1 -0
- package/dist/esm/core/errors/user-facing-error-message.frontend.utils.d.ts +141 -0
- package/dist/esm/core/errors/user-facing-error-message.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/errors/user-facing-error-message.frontend.utils.js +256 -0
- package/dist/esm/core/errors/user-facing-error-message.frontend.utils.js.map +1 -0
- package/dist/esm/core/errors/withErrorBoundary.d.ts.map +1 -1
- package/dist/esm/core/errors/withErrorBoundary.js.map +1 -1
- package/dist/esm/core/events/EventBusContext.d.ts.map +1 -1
- package/dist/esm/core/events/EventBusContext.js.map +1 -1
- package/dist/esm/core/events/NotificationContext.d.ts +22 -0
- package/dist/esm/core/events/NotificationContext.d.ts.map +1 -1
- package/dist/esm/core/events/NotificationContext.js +239 -70
- package/dist/esm/core/events/NotificationContext.js.map +1 -1
- package/dist/esm/core/events/event-bus.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/events/event-bus.frontend.service.js.map +1 -1
- package/dist/esm/core/events/events.frontend.schemas.d.ts +121 -46
- package/dist/esm/core/events/events.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/events/events.frontend.schemas.js +68 -7
- package/dist/esm/core/events/events.frontend.schemas.js.map +1 -1
- package/dist/esm/core/events/notification-display-policy.frontend.schemas.d.ts +0 -13
- package/dist/esm/core/events/notification-display-policy.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/events/notification-display-policy.frontend.schemas.js +0 -23
- package/dist/esm/core/events/notification-display-policy.frontend.schemas.js.map +1 -1
- package/dist/esm/core/events/toast.d.ts.map +1 -1
- package/dist/esm/core/events/toast.js.map +1 -1
- package/dist/esm/core/events/useEventBus.d.ts.map +1 -1
- package/dist/esm/core/events/useEventBus.js.map +1 -1
- package/dist/esm/core/events/useNotification.d.ts.map +1 -1
- package/dist/esm/core/events/useNotification.js.map +1 -1
- package/dist/esm/core/execution/ExecutionDirtyMarkerScopeContext.d.ts.map +1 -1
- package/dist/esm/core/execution/ExecutionDirtyMarkerScopeContext.js.map +1 -1
- package/dist/esm/core/execution/ExecutionRuntimeContext.d.ts.map +1 -1
- package/dist/esm/core/execution/ExecutionRuntimeContext.js.map +1 -1
- package/dist/esm/core/execution/execution-anchor.utils.d.ts.map +1 -1
- package/dist/esm/core/execution/execution-anchor.utils.js.map +1 -1
- package/dist/esm/core/execution/execution-dirty-markers.utils.d.ts.map +1 -1
- package/dist/esm/core/execution/execution-dirty-markers.utils.js.map +1 -1
- package/dist/esm/core/execution/execution-failure-handling.utils.d.ts.map +1 -1
- package/dist/esm/core/execution/execution-failure-handling.utils.js.map +1 -1
- package/dist/esm/core/execution/execution-outcome-emission.utils.d.ts.map +1 -1
- package/dist/esm/core/execution/execution-outcome-emission.utils.js +3 -4
- package/dist/esm/core/execution/execution-outcome-emission.utils.js.map +1 -1
- package/dist/esm/core/execution/execution-participation.utils.d.ts.map +1 -1
- package/dist/esm/core/execution/execution-participation.utils.js.map +1 -1
- package/dist/esm/core/execution/useExecution.d.ts +7 -1
- package/dist/esm/core/execution/useExecution.d.ts.map +1 -1
- package/dist/esm/core/execution/useExecution.js.map +1 -1
- package/dist/esm/core/execution/useExecutionDirtyBridge.d.ts.map +1 -1
- package/dist/esm/core/execution/useExecutionDirtyBridge.js.map +1 -1
- package/dist/esm/core/execution/useExecutionParticipationDataPrefetch.d.ts.map +1 -1
- package/dist/esm/core/execution/useExecutionParticipationDataPrefetch.js.map +1 -1
- package/dist/esm/core/execution/useExecutionParticipationPrefetch.d.ts.map +1 -1
- package/dist/esm/core/execution/useExecutionParticipationPrefetch.js.map +1 -1
- package/dist/esm/core/execution/useExecutionParticipationRMM.d.ts.map +1 -1
- package/dist/esm/core/execution/useExecutionParticipationRMM.js.map +1 -1
- package/dist/esm/core/execution/useExecutionResourceOperationContextBuilder.d.ts.map +1 -1
- package/dist/esm/core/execution/useExecutionResourceOperationContextBuilder.js.map +1 -1
- package/dist/esm/core/execution/useExecutionResourceOperationSurface.d.ts.map +1 -1
- package/dist/esm/core/execution/useExecutionResourceOperationSurface.js +8 -1
- package/dist/esm/core/execution/useExecutionResourceOperationSurface.js.map +1 -1
- package/dist/esm/core/external-providers/ProviderFilePickerHost.d.ts +24 -1
- package/dist/esm/core/external-providers/ProviderFilePickerHost.d.ts.map +1 -1
- package/dist/esm/core/external-providers/ProviderFilePickerHost.js +47 -4
- package/dist/esm/core/external-providers/ProviderFilePickerHost.js.map +1 -1
- package/dist/esm/core/external-providers/frontend-provider-display-label.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/external-providers/frontend-provider-display-label.frontend.utils.js.map +1 -1
- package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.d.ts +1 -2
- package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.js.map +1 -1
- package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.d.ts +1 -2
- package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.js.map +1 -1
- package/dist/esm/core/features/FeatureGate.d.ts.map +1 -1
- package/dist/esm/core/features/FeatureGate.js.map +1 -1
- package/dist/esm/core/features/FeatureRouteGuard.d.ts.map +1 -1
- package/dist/esm/core/features/FeatureRouteGuard.js.map +1 -1
- package/dist/esm/core/features/FeaturesContext.d.ts.map +1 -1
- package/dist/esm/core/features/FeaturesContext.js +30 -3
- package/dist/esm/core/features/FeaturesContext.js.map +1 -1
- package/dist/esm/core/features/feature-gate-surface.example.d.ts +44 -0
- package/dist/esm/core/features/feature-gate-surface.example.d.ts.map +1 -0
- package/dist/esm/core/features/feature-gate-surface.example.js +38 -0
- package/dist/esm/core/features/feature-gate-surface.example.js.map +1 -0
- package/dist/esm/core/features/feature-unavailability.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/features/feature-unavailability.frontend.utils.js.map +1 -1
- package/dist/esm/core/features/useFeatureAvailability.d.ts.map +1 -1
- package/dist/esm/core/features/useFeatureAvailability.js.map +1 -1
- package/dist/esm/core/features/useFeatureGate.d.ts.map +1 -1
- package/dist/esm/core/features/useFeatureGate.js.map +1 -1
- package/dist/esm/core/features/useFeatures.d.ts.map +1 -1
- package/dist/esm/core/features/useFeatures.js.map +1 -1
- package/dist/esm/core/features/useOperationFeatureAvailability.d.ts.map +1 -1
- package/dist/esm/core/features/useOperationFeatureAvailability.js.map +1 -1
- package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts +48 -4
- package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts.map +1 -1
- package/dist/esm/core/flows-actors/FlowsActorsContext.js +144 -20
- package/dist/esm/core/flows-actors/FlowsActorsContext.js.map +1 -1
- package/dist/esm/core/flows-actors/useFlowsActors.d.ts.map +1 -1
- package/dist/esm/core/flows-actors/useFlowsActors.js.map +1 -1
- package/dist/esm/core/guidance/GuidanceContext.d.ts +34 -1
- package/dist/esm/core/guidance/GuidanceContext.d.ts.map +1 -1
- package/dist/esm/core/guidance/GuidanceContext.js +1004 -117
- package/dist/esm/core/guidance/GuidanceContext.js.map +1 -1
- package/dist/esm/core/guidance/GuidanceRenderer.d.ts +54 -1
- package/dist/esm/core/guidance/GuidanceRenderer.d.ts.map +1 -1
- package/dist/esm/core/guidance/GuidanceRenderer.js +355 -13
- package/dist/esm/core/guidance/GuidanceRenderer.js.map +1 -1
- package/dist/esm/core/guidance/guidance-audience.frontend.utils.d.ts +22 -2
- package/dist/esm/core/guidance/guidance-audience.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/guidance/guidance-audience.frontend.utils.js +59 -1
- package/dist/esm/core/guidance/guidance-audience.frontend.utils.js.map +1 -1
- package/dist/esm/core/guidance/guidance-resource-compiler.shared.utils.d.ts.map +1 -1
- package/dist/esm/core/guidance/guidance-resource-compiler.shared.utils.js +51 -1
- package/dist/esm/core/guidance/guidance-resource-compiler.shared.utils.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.labels.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceAnnouncement.labels.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceBadge.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceBadge.js +17 -8
- package/dist/esm/core/guidance/renderers/GuidanceBadge.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceBadge.labels.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceBadge.labels.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceBanner.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceBanner.js +11 -1
- package/dist/esm/core/guidance/renderers/GuidanceBanner.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceBanner.labels.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceBanner.labels.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceCard.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceCard.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceCard.labels.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceCard.labels.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceChecklist.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceChecklist.js +4 -1
- package/dist/esm/core/guidance/renderers/GuidanceChecklist.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceChecklist.labels.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceChecklist.labels.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.labels.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.labels.js +4 -0
- package/dist/esm/core/guidance/renderers/GuidanceChecklistItem.labels.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceModal.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceModal.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceModal.labels.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceModal.labels.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceSurvey.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceSurvey.js +28 -5
- package/dist/esm/core/guidance/renderers/GuidanceSurvey.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceSurvey.labels.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceSurvey.labels.js +8 -0
- package/dist/esm/core/guidance/renderers/GuidanceSurvey.labels.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceTooltip.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceTooltip.js +14 -1
- package/dist/esm/core/guidance/renderers/GuidanceTooltip.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceTooltip.labels.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceTooltip.labels.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceTour.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceTour.js +26 -3
- package/dist/esm/core/guidance/renderers/GuidanceTour.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceTour.labels.d.ts.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceTour.labels.js.map +1 -1
- package/dist/esm/core/guidance/useGuidance.d.ts.map +1 -1
- package/dist/esm/core/guidance/useGuidance.js.map +1 -1
- package/dist/esm/core/hotkey/DefaultHotkeyHandler.d.ts +8 -4
- package/dist/esm/core/hotkey/DefaultHotkeyHandler.d.ts.map +1 -1
- package/dist/esm/core/hotkey/DefaultHotkeyHandler.js +9 -5
- package/dist/esm/core/hotkey/DefaultHotkeyHandler.js.map +1 -1
- package/dist/esm/core/hotkey/HotkeyRegistryContext.d.ts.map +1 -1
- package/dist/esm/core/hotkey/HotkeyRegistryContext.js +3 -2
- package/dist/esm/core/hotkey/HotkeyRegistryContext.js.map +1 -1
- package/dist/esm/core/hotkey/HotkeyShortcutsHelpDialog.d.ts.map +1 -1
- package/dist/esm/core/hotkey/HotkeyShortcutsHelpDialog.js +2 -1
- package/dist/esm/core/hotkey/HotkeyShortcutsHelpDialog.js.map +1 -1
- package/dist/esm/core/hotkey/hotkey-registry.frontend.schemas.d.ts +25 -1
- package/dist/esm/core/hotkey/hotkey-registry.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/hotkey/hotkey-registry.frontend.schemas.js +28 -2
- package/dist/esm/core/hotkey/hotkey-registry.frontend.schemas.js.map +1 -1
- package/dist/esm/core/hotkey/merge-hotkey-emit-shortcuts.d.ts.map +1 -1
- package/dist/esm/core/hotkey/merge-hotkey-emit-shortcuts.js.map +1 -1
- package/dist/esm/core/hotkey/useHotkey.d.ts.map +1 -1
- package/dist/esm/core/hotkey/useHotkey.js.map +1 -1
- package/dist/esm/core/i18n/I18nContext.d.ts +59 -6
- package/dist/esm/core/i18n/I18nContext.d.ts.map +1 -1
- package/dist/esm/core/i18n/I18nContext.js +125 -28
- package/dist/esm/core/i18n/I18nContext.js.map +1 -1
- package/dist/esm/core/i18n/component-label-resolution.utils.d.ts +41 -30
- package/dist/esm/core/i18n/component-label-resolution.utils.d.ts.map +1 -1
- package/dist/esm/core/i18n/component-label-resolution.utils.js +69 -34
- package/dist/esm/core/i18n/component-label-resolution.utils.js.map +1 -1
- package/dist/esm/core/i18n/operation-title-resolution.utils.d.ts +23 -0
- package/dist/esm/core/i18n/operation-title-resolution.utils.d.ts.map +1 -0
- package/dist/esm/core/i18n/operation-title-resolution.utils.js +25 -0
- package/dist/esm/core/i18n/operation-title-resolution.utils.js.map +1 -0
- package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.js.map +1 -1
- package/dist/esm/core/i18n/useI18n.d.ts.map +1 -1
- package/dist/esm/core/i18n/useI18n.js.map +1 -1
- package/dist/esm/core/icons/IconRegistryBridge.d.ts.map +1 -1
- package/dist/esm/core/icons/IconRegistryBridge.js.map +1 -1
- package/dist/esm/core/icons/IconRegistryContext.d.ts.map +1 -1
- package/dist/esm/core/icons/IconRegistryContext.js +10 -0
- package/dist/esm/core/icons/IconRegistryContext.js.map +1 -1
- package/dist/esm/core/icons/icon-registry.frontend.definitions.d.ts.map +1 -1
- package/dist/esm/core/icons/icon-registry.frontend.definitions.js.map +1 -1
- package/dist/esm/core/icons/icon-registry.frontend.schemas.d.ts +8 -0
- package/dist/esm/core/icons/icon-registry.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/icons/icon-registry.frontend.schemas.js +8 -0
- package/dist/esm/core/icons/icon-registry.frontend.schemas.js.map +1 -1
- package/dist/esm/core/icons/useIconRegistry.d.ts.map +1 -1
- package/dist/esm/core/icons/useIconRegistry.js.map +1 -1
- package/dist/esm/core/loading/AppLoadingGate.d.ts.map +1 -1
- package/dist/esm/core/loading/AppLoadingGate.js.map +1 -1
- package/dist/esm/core/loading/LoadingBarrier.d.ts.map +1 -1
- package/dist/esm/core/loading/LoadingBarrier.js.map +1 -1
- package/dist/esm/core/loading/LoadingContext.d.ts.map +1 -1
- package/dist/esm/core/loading/LoadingContext.js.map +1 -1
- package/dist/esm/core/loading/LoadingGate.d.ts.map +1 -1
- package/dist/esm/core/loading/LoadingGate.js +41 -7
- package/dist/esm/core/loading/LoadingGate.js.map +1 -1
- package/dist/esm/core/loading/loading-policy.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/loading/loading-policy.frontend.schemas.js.map +1 -1
- package/dist/esm/core/loading/loading-scope.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/loading/loading-scope.frontend.utils.js.map +1 -1
- package/dist/esm/core/loading/loading-types.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/loading/loading-types.frontend.schemas.js.map +1 -1
- package/dist/esm/core/loading/resolveLoadingPolicy.d.ts.map +1 -1
- package/dist/esm/core/loading/resolveLoadingPolicy.js.map +1 -1
- package/dist/esm/core/loading/useAppLoading.d.ts.map +1 -1
- package/dist/esm/core/loading/useAppLoading.js.map +1 -1
- package/dist/esm/core/loading/useComponentLoading.d.ts.map +1 -1
- package/dist/esm/core/loading/useComponentLoading.js.map +1 -1
- package/dist/esm/core/loading/useEmitLoadingScope.d.ts.map +1 -1
- package/dist/esm/core/loading/useEmitLoadingScope.js.map +1 -1
- package/dist/esm/core/loading/useLoading.d.ts.map +1 -1
- package/dist/esm/core/loading/useLoading.js.map +1 -1
- package/dist/esm/core/mode/AppModeContext.d.ts.map +1 -1
- package/dist/esm/core/mode/AppModeContext.js.map +1 -1
- package/dist/esm/core/mode/section-visibility.d.ts.map +1 -1
- package/dist/esm/core/mode/section-visibility.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/AnalyticsContext.d.ts +9 -1
- package/dist/esm/core/monitoring/analytics/AnalyticsContext.d.ts.map +1 -1
- package/dist/esm/core/monitoring/analytics/AnalyticsContext.js +131 -59
- package/dist/esm/core/monitoring/analytics/AnalyticsContext.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.d.ts +9 -0
- package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.d.ts.map +1 -1
- package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.js +80 -73
- package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/AnalyticsScopeBridge.d.ts +5 -0
- package/dist/esm/core/monitoring/analytics/AnalyticsScopeBridge.d.ts.map +1 -0
- package/dist/esm/core/monitoring/analytics/AnalyticsScopeBridge.js +16 -0
- package/dist/esm/core/monitoring/analytics/AnalyticsScopeBridge.js.map +1 -0
- package/dist/esm/core/monitoring/analytics/analytics-provider-registry.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/monitoring/analytics/analytics-provider-registry.frontend.service.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/analytics-provider.frontend.interface.d.ts.map +1 -1
- package/dist/esm/core/monitoring/analytics/analytics-provider.frontend.interface.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.d.ts.map +1 -1
- package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/providers/console-analytics.provider.d.ts.map +1 -1
- package/dist/esm/core/monitoring/analytics/providers/console-analytics.provider.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/useAnalytics.d.ts.map +1 -1
- package/dist/esm/core/monitoring/analytics/useAnalytics.js +1 -1
- package/dist/esm/core/monitoring/analytics/useAnalytics.js.map +1 -1
- package/dist/esm/core/monitoring/error-monitoring-bridge.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/monitoring/error-monitoring-bridge.frontend.service.js.map +1 -1
- package/dist/esm/core/monitoring/logger.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/monitoring/logger.frontend.service.js.map +1 -1
- package/dist/esm/core/navigation/NavigationContentAreas.d.ts +66 -2
- package/dist/esm/core/navigation/NavigationContentAreas.d.ts.map +1 -1
- package/dist/esm/core/navigation/NavigationContentAreas.js +482 -73
- package/dist/esm/core/navigation/NavigationContentAreas.js.map +1 -1
- package/dist/esm/core/navigation/NavigationContext.d.ts +42 -0
- package/dist/esm/core/navigation/NavigationContext.d.ts.map +1 -1
- package/dist/esm/core/navigation/NavigationContext.js +8 -0
- package/dist/esm/core/navigation/NavigationContext.js.map +1 -1
- package/dist/esm/core/navigation/NavigationRequestBridge.d.ts.map +1 -1
- package/dist/esm/core/navigation/NavigationRequestBridge.js.map +1 -1
- package/dist/esm/core/navigation/hosted-pane.constants.d.ts.map +1 -1
- package/dist/esm/core/navigation/hosted-pane.constants.js.map +1 -1
- package/dist/esm/core/navigation/launcher-resolution.d.ts.map +1 -1
- package/dist/esm/core/navigation/launcher-resolution.js.map +1 -1
- package/dist/esm/core/navigation/launcher-runtime-availability.d.ts.map +1 -1
- package/dist/esm/core/navigation/launcher-runtime-availability.js.map +1 -1
- package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.d.ts +22 -0
- package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.js +24 -0
- package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.js.map +1 -1
- package/dist/esm/core/navigation/navigation-policy-resolver.service.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation-policy-resolver.service.js +79 -17
- package/dist/esm/core/navigation/navigation-policy-resolver.service.js.map +1 -1
- package/dist/esm/core/navigation/navigation.schemas.d.ts +38 -14
- package/dist/esm/core/navigation/navigation.schemas.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation.schemas.js +10 -4
- package/dist/esm/core/navigation/navigation.schemas.js.map +1 -1
- package/dist/esm/core/navigation/navigation.utils.d.ts +60 -2
- package/dist/esm/core/navigation/navigation.utils.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation.utils.js +123 -17
- package/dist/esm/core/navigation/navigation.utils.js.map +1 -1
- package/dist/esm/core/navigation/primary-destination-layout.d.ts +58 -0
- package/dist/esm/core/navigation/primary-destination-layout.d.ts.map +1 -1
- package/dist/esm/core/navigation/primary-destination-layout.js +58 -0
- package/dist/esm/core/navigation/primary-destination-layout.js.map +1 -1
- package/dist/esm/core/navigation/split-fit.d.ts +56 -0
- package/dist/esm/core/navigation/split-fit.d.ts.map +1 -0
- package/dist/esm/core/navigation/split-fit.js +61 -0
- package/dist/esm/core/navigation/split-fit.js.map +1 -0
- package/dist/esm/core/navigation/useIsStackEntryActive.d.ts.map +1 -1
- package/dist/esm/core/navigation/useIsStackEntryActive.js.map +1 -1
- package/dist/esm/core/navigation/useLauncherResolutionContext.d.ts +4 -2
- package/dist/esm/core/navigation/useLauncherResolutionContext.d.ts.map +1 -1
- package/dist/esm/core/navigation/useLauncherResolutionContext.js +26 -4
- package/dist/esm/core/navigation/useLauncherResolutionContext.js.map +1 -1
- package/dist/esm/core/navigation/useNavigationController.d.ts +6 -3
- package/dist/esm/core/navigation/useNavigationController.d.ts.map +1 -1
- package/dist/esm/core/navigation/useNavigationController.js +167 -22
- package/dist/esm/core/navigation/useNavigationController.js.map +1 -1
- package/dist/esm/core/navigation/useNavigationState.d.ts.map +1 -1
- package/dist/esm/core/navigation/useNavigationState.js.map +1 -1
- package/dist/esm/core/navigation/useOverlayTitle.d.ts.map +1 -1
- package/dist/esm/core/navigation/useOverlayTitle.js +2 -5
- package/dist/esm/core/navigation/useOverlayTitle.js.map +1 -1
- package/dist/esm/core/navigation/useSynchronousBrowserLocation.d.ts +58 -0
- package/dist/esm/core/navigation/useSynchronousBrowserLocation.d.ts.map +1 -0
- package/dist/esm/core/navigation/useSynchronousBrowserLocation.js +68 -0
- package/dist/esm/core/navigation/useSynchronousBrowserLocation.js.map +1 -0
- package/dist/esm/core/navigation/useTransactionAwareSyncRetry.d.ts.map +1 -1
- package/dist/esm/core/navigation/useTransactionAwareSyncRetry.js.map +1 -1
- package/dist/esm/core/navigation/view-title-resolution.d.ts +18 -0
- package/dist/esm/core/navigation/view-title-resolution.d.ts.map +1 -1
- package/dist/esm/core/navigation/view-title-resolution.js +20 -2
- package/dist/esm/core/navigation/view-title-resolution.js.map +1 -1
- package/dist/esm/core/navigation/zone-content-geometry.d.ts.map +1 -1
- package/dist/esm/core/navigation/zone-content-geometry.js.map +1 -1
- package/dist/esm/core/navigation/zone-emphasis.d.ts +42 -0
- package/dist/esm/core/navigation/zone-emphasis.d.ts.map +1 -0
- package/dist/esm/core/navigation/zone-emphasis.js +50 -0
- package/dist/esm/core/navigation/zone-emphasis.js.map +1 -0
- package/dist/esm/core/navigation/zone-empty-behavior.d.ts +22 -0
- package/dist/esm/core/navigation/zone-empty-behavior.d.ts.map +1 -1
- package/dist/esm/core/navigation/zone-empty-behavior.js +21 -0
- package/dist/esm/core/navigation/zone-empty-behavior.js.map +1 -1
- package/dist/esm/core/navigation/zone-visible-entry.d.ts.map +1 -1
- package/dist/esm/core/navigation/zone-visible-entry.js.map +1 -1
- package/dist/esm/core/requests/api-readiness-checker.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/requests/api-readiness-checker.frontend.service.js.map +1 -1
- package/dist/esm/core/requests/auth-refresh-resilience.frontend.d.ts.map +1 -1
- package/dist/esm/core/requests/auth-refresh-resilience.frontend.js.map +1 -1
- package/dist/esm/core/requests/client-instance-id.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/requests/client-instance-id.frontend.service.js.map +1 -1
- package/dist/esm/core/requests/network-backoff.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/requests/network-backoff.frontend.utils.js.map +1 -1
- package/dist/esm/core/requests/offline-replay-policy.frontend.d.ts.map +1 -1
- package/dist/esm/core/requests/offline-replay-policy.frontend.js.map +1 -1
- package/dist/esm/core/requests/request-cancellation.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/requests/request-cancellation.frontend.utils.js.map +1 -1
- package/dist/esm/core/requests/websockets/ConnectionStatusNotifier.d.ts.map +1 -1
- package/dist/esm/core/requests/websockets/ConnectionStatusNotifier.js.map +1 -1
- package/dist/esm/core/requests/websockets/WebSocketContext.d.ts.map +1 -1
- package/dist/esm/core/requests/websockets/WebSocketContext.js.map +1 -1
- package/dist/esm/core/requests/websockets/WebSocketEventBridge.d.ts +1 -0
- package/dist/esm/core/requests/websockets/WebSocketEventBridge.d.ts.map +1 -1
- package/dist/esm/core/requests/websockets/WebSocketEventBridge.js +22 -0
- package/dist/esm/core/requests/websockets/WebSocketEventBridge.js.map +1 -1
- package/dist/esm/core/requests/websockets/useNotificationBadges.d.ts.map +1 -1
- package/dist/esm/core/requests/websockets/useNotificationBadges.js.map +1 -1
- package/dist/esm/core/requests/websockets/useResourceRoom.d.ts.map +1 -1
- package/dist/esm/core/requests/websockets/useResourceRoom.js.map +1 -1
- package/dist/esm/core/requests/websockets/useWebSocket.d.ts.map +1 -1
- package/dist/esm/core/requests/websockets/useWebSocket.js.map +1 -1
- package/dist/esm/core/requests/websockets/websocket-resource-validation.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/requests/websockets/websocket-resource-validation.frontend.service.js.map +1 -1
- package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.d.ts +417 -30
- package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.js +232 -17
- package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.js.map +1 -1
- package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.d.ts +19 -2
- package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.js +129 -13
- package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.js.map +1 -1
- package/dist/esm/core/requests/wildo-http-client.frontend.service.d.ts +22 -4
- package/dist/esm/core/requests/wildo-http-client.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/requests/wildo-http-client.frontend.service.js +24 -4
- package/dist/esm/core/requests/wildo-http-client.frontend.service.js.map +1 -1
- package/dist/esm/core/resources/ResourceOperationViewContext.d.ts.map +1 -1
- package/dist/esm/core/resources/ResourceOperationViewContext.js.map +1 -1
- package/dist/esm/core/resources/ResourceOperationViewProvider.d.ts.map +1 -1
- package/dist/esm/core/resources/ResourceOperationViewProvider.js.map +1 -1
- package/dist/esm/core/resources/ResourceReadCacheBridge.d.ts.map +1 -1
- package/dist/esm/core/resources/ResourceReadCacheBridge.js +148 -51
- package/dist/esm/core/resources/ResourceReadCacheBridge.js.map +1 -1
- package/dist/esm/core/resources/ResourceRegistryContext.d.ts.map +1 -1
- package/dist/esm/core/resources/ResourceRegistryContext.js.map +1 -1
- package/dist/esm/core/resources/ScopedResourceRegistryProvider.d.ts.map +1 -1
- package/dist/esm/core/resources/ScopedResourceRegistryProvider.js.map +1 -1
- package/dist/esm/core/resources/bulk-failure-grouping.frontend.utils.d.ts +26 -0
- package/dist/esm/core/resources/bulk-failure-grouping.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/resources/bulk-failure-grouping.frontend.utils.js +23 -0
- package/dist/esm/core/resources/bulk-failure-grouping.frontend.utils.js.map +1 -0
- package/dist/esm/core/resources/collection-export-url.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/collection-export-url.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/collection-filter-presets.frontend.utils.d.ts +41 -0
- package/dist/esm/core/resources/collection-filter-presets.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/resources/collection-filter-presets.frontend.utils.js +143 -0
- package/dist/esm/core/resources/collection-filter-presets.frontend.utils.js.map +1 -0
- package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.d.ts +7 -0
- package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.js +7 -1
- package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/ephemeral-fields.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/ephemeral-fields.utils.js.map +1 -1
- package/dist/esm/core/resources/file-serve-url.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/file-serve-url.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/frontend-resource.utils.d.ts +74 -2
- package/dist/esm/core/resources/frontend-resource.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/frontend-resource.utils.js +152 -19
- package/dist/esm/core/resources/frontend-resource.utils.js.map +1 -1
- package/dist/esm/core/resources/hooks/useOperationEnabled.d.ts +18 -0
- package/dist/esm/core/resources/hooks/useOperationEnabled.d.ts.map +1 -1
- package/dist/esm/core/resources/hooks/useOperationEnabled.js +18 -4
- package/dist/esm/core/resources/hooks/useOperationEnabled.js.map +1 -1
- package/dist/esm/core/resources/in-place/InPlaceOperationContext.d.ts.map +1 -1
- package/dist/esm/core/resources/in-place/InPlaceOperationContext.js.map +1 -1
- package/dist/esm/core/resources/operation-initiator-satisfaction.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/operation-initiator-satisfaction.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/operation-semantics.frontend.utils.d.ts +137 -7
- package/dist/esm/core/resources/operation-semantics.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/operation-semantics.frontend.utils.js +209 -16
- package/dist/esm/core/resources/operation-semantics.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/relationship-quick-create.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/relationship-quick-create.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/relationship-surface-runtime.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/relationship-surface-runtime.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/resource-addressability.frontend.utils.d.ts +42 -0
- package/dist/esm/core/resources/resource-addressability.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/resource-addressability.frontend.utils.js +36 -1
- package/dist/esm/core/resources/resource-addressability.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.d.ts +59 -0
- package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.js +151 -0
- package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.js.map +1 -0
- package/dist/esm/core/resources/resource-operation-view.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/resource-operation-view.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/resource-path.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/resources/resource-path.frontend.schemas.js.map +1 -1
- package/dist/esm/core/resources/resource-read-cache.frontend.service.d.ts +26 -0
- package/dist/esm/core/resources/resource-read-cache.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/resources/resource-read-cache.frontend.service.js +30 -0
- package/dist/esm/core/resources/resource-read-cache.frontend.service.js.map +1 -1
- package/dist/esm/core/resources/resources-repository.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/resources/resources-repository.frontend.service.js +2 -2
- package/dist/esm/core/resources/resources-repository.frontend.service.js.map +1 -1
- package/dist/esm/core/resources/resources.frontend.schemas.d.ts +231 -14
- package/dist/esm/core/resources/resources.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/resources/resources.frontend.schemas.js +182 -8
- package/dist/esm/core/resources/resources.frontend.schemas.js.map +1 -1
- package/dist/esm/core/resources/rmm/HttpTransportAdapter.d.ts +6 -0
- package/dist/esm/core/resources/rmm/HttpTransportAdapter.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/HttpTransportAdapter.js +14 -2
- package/dist/esm/core/resources/rmm/HttpTransportAdapter.js.map +1 -1
- package/dist/esm/core/resources/rmm/RMMRegistry.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/RMMRegistry.js.map +1 -1
- package/dist/esm/core/resources/rmm/RMMRegistryContext.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/RMMRegistryContext.js.map +1 -1
- package/dist/esm/core/resources/rmm/RMMWebSocketBridge.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/RMMWebSocketBridge.js +3 -3
- package/dist/esm/core/resources/rmm/RMMWebSocketBridge.js.map +1 -1
- package/dist/esm/core/resources/rmm/ResourceMutationManager.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/ResourceMutationManager.js +77 -8
- package/dist/esm/core/resources/rmm/ResourceMutationManager.js.map +1 -1
- package/dist/esm/core/resources/rmm/canonical-read.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/canonical-read.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/rmm/field-path.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/field-path.utils.js.map +1 -1
- package/dist/esm/core/resources/rmm/mutation-error-report.utils.d.ts +18 -0
- package/dist/esm/core/resources/rmm/mutation-error-report.utils.d.ts.map +1 -0
- package/dist/esm/core/resources/rmm/mutation-error-report.utils.js +21 -0
- package/dist/esm/core/resources/rmm/mutation-error-report.utils.js.map +1 -0
- package/dist/esm/core/resources/rmm/rmm-constants.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/rmm-constants.js.map +1 -1
- package/dist/esm/core/resources/rmm/rmm-noop-snapshot.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/rmm-noop-snapshot.js.map +1 -1
- package/dist/esm/core/resources/rmm/types.d.ts +14 -0
- package/dist/esm/core/resources/rmm/types.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/types.js.map +1 -1
- package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.js.map +1 -1
- package/dist/esm/core/resources/rmm/useListInvalidation.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/useListInvalidation.js.map +1 -1
- package/dist/esm/core/resources/rmm/useRMMEventHandler.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/useRMMEventHandler.js.map +1 -1
- package/dist/esm/core/resources/rmm/useRMMSnapshot.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/useRMMSnapshot.js.map +1 -1
- package/dist/esm/core/resources/rmm/useResourceMutationManager.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/useResourceMutationManager.js.map +1 -1
- package/dist/esm/core/resources/rmm/useResourceRMM.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/useResourceRMM.js +2 -3
- package/dist/esm/core/resources/rmm/useResourceRMM.js.map +1 -1
- package/dist/esm/core/resources/useAuthedFileObjectUrl.frontend.hook.d.ts.map +1 -1
- package/dist/esm/core/resources/useAuthedFileObjectUrl.frontend.hook.js.map +1 -1
- package/dist/esm/core/resources/useBulkJobProgress.d.ts +22 -0
- package/dist/esm/core/resources/useBulkJobProgress.d.ts.map +1 -0
- package/dist/esm/core/resources/useBulkJobProgress.js +51 -0
- package/dist/esm/core/resources/useBulkJobProgress.js.map +1 -0
- package/dist/esm/core/resources/useHostlessResourceNavigation.d.ts.map +1 -1
- package/dist/esm/core/resources/useHostlessResourceNavigation.js.map +1 -1
- package/dist/esm/core/resources/useOperationEnabled.d.ts.map +1 -1
- package/dist/esm/core/resources/useOperationEnabled.js.map +1 -1
- package/dist/esm/core/resources/useResourceLabels.d.ts +27 -9
- package/dist/esm/core/resources/useResourceLabels.d.ts.map +1 -1
- package/dist/esm/core/resources/useResourceLabels.js +45 -138
- package/dist/esm/core/resources/useResourceLabels.js.map +1 -1
- package/dist/esm/core/resources/useResourceOperationActions.d.ts +33 -0
- package/dist/esm/core/resources/useResourceOperationActions.d.ts.map +1 -1
- package/dist/esm/core/resources/useResourceOperationActions.js +393 -87
- package/dist/esm/core/resources/useResourceOperationActions.js.map +1 -1
- package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.d.ts +23 -0
- package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.d.ts.map +1 -0
- package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.js +85 -0
- package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.js.map +1 -0
- package/dist/esm/core/resources/useResourceOperationSurface.d.ts +5 -0
- package/dist/esm/core/resources/useResourceOperationSurface.d.ts.map +1 -1
- package/dist/esm/core/resources/useResourceOperationSurface.js.map +1 -1
- package/dist/esm/core/resources/useResourceRegistry.d.ts +18 -0
- package/dist/esm/core/resources/useResourceRegistry.d.ts.map +1 -1
- package/dist/esm/core/resources/useResourceRegistry.js +23 -0
- package/dist/esm/core/resources/useResourceRegistry.js.map +1 -1
- package/dist/esm/core/resources/useResourceSelection.d.ts +36 -1
- package/dist/esm/core/resources/useResourceSelection.d.ts.map +1 -1
- package/dist/esm/core/resources/useResourceSelection.js +32 -1
- package/dist/esm/core/resources/useResourceSelection.js.map +1 -1
- package/dist/esm/core/resources/utils/operation-enabled-condition.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/utils/operation-enabled-condition.frontend.utils.js.map +1 -1
- package/dist/esm/core/runtime/AppRouter.d.ts.map +1 -1
- package/dist/esm/core/runtime/AppRouter.js +25 -4
- package/dist/esm/core/runtime/AppRouter.js.map +1 -1
- package/dist/esm/core/runtime/ApplicationContext.shared.d.ts.map +1 -1
- package/dist/esm/core/runtime/ApplicationContext.shared.js.map +1 -1
- package/dist/esm/core/runtime/ApplicationMainContext.d.ts +3 -0
- package/dist/esm/core/runtime/ApplicationMainContext.d.ts.map +1 -1
- package/dist/esm/core/runtime/ApplicationMainContext.js +30 -2
- package/dist/esm/core/runtime/ApplicationMainContext.js.map +1 -1
- package/dist/esm/core/runtime/StartupFailureScreen.d.ts +24 -0
- package/dist/esm/core/runtime/StartupFailureScreen.d.ts.map +1 -0
- package/dist/esm/core/runtime/StartupFailureScreen.js +25 -0
- package/dist/esm/core/runtime/StartupFailureScreen.js.map +1 -0
- package/dist/esm/core/runtime/app-config-overrides.frontend.definitions.d.ts.map +1 -1
- package/dist/esm/core/runtime/app-config-overrides.frontend.definitions.js.map +1 -1
- package/dist/esm/core/runtime/domain-module.frontend.definitions.d.ts.map +1 -1
- package/dist/esm/core/runtime/domain-module.frontend.definitions.js.map +1 -1
- package/dist/esm/core/runtime/env-variable-loader.frontend.service.d.ts +16 -0
- package/dist/esm/core/runtime/env-variable-loader.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/runtime/env-variable-loader.frontend.service.js +22 -0
- package/dist/esm/core/runtime/env-variable-loader.frontend.service.js.map +1 -1
- package/dist/esm/core/runtime/frontend-companion-resource-inputs.d.ts.map +1 -1
- package/dist/esm/core/runtime/frontend-companion-resource-inputs.js.map +1 -1
- package/dist/esm/core/runtime/routes.frontend.definitions.d.ts +28 -4
- package/dist/esm/core/runtime/routes.frontend.definitions.d.ts.map +1 -1
- package/dist/esm/core/runtime/routes.frontend.definitions.js +29 -5
- package/dist/esm/core/runtime/routes.frontend.definitions.js.map +1 -1
- package/dist/esm/core/runtime/runtime.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/runtime/runtime.frontend.schemas.js.map +1 -1
- package/dist/esm/core/runtime/start-application.frontend.service.d.ts +2 -2
- package/dist/esm/core/runtime/start-application.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/runtime/start-application.frontend.service.js +54 -15
- package/dist/esm/core/runtime/start-application.frontend.service.js.map +1 -1
- package/dist/esm/core/runtime/startup-failure-copy.frontend.d.ts +48 -0
- package/dist/esm/core/runtime/startup-failure-copy.frontend.d.ts.map +1 -0
- package/dist/esm/core/runtime/startup-failure-copy.frontend.js +95 -0
- package/dist/esm/core/runtime/startup-failure-copy.frontend.js.map +1 -0
- package/dist/esm/core/runtime/useApplication.d.ts.map +1 -1
- package/dist/esm/core/runtime/useApplication.js.map +1 -1
- package/dist/esm/core/scope/AppScopeContext.d.ts.map +1 -1
- package/dist/esm/core/scope/AppScopeContext.js.map +1 -1
- package/dist/esm/core/scope/scope.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/scope/scope.frontend.schemas.js.map +1 -1
- package/dist/esm/core/scope/scope.utils.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/scope/scope.utils.frontend.service.js.map +1 -1
- package/dist/esm/core/scope/useAppScope.d.ts.map +1 -1
- package/dist/esm/core/scope/useAppScope.js.map +1 -1
- package/dist/esm/core/security/AnonymousSessionContext.d.ts.map +1 -1
- package/dist/esm/core/security/AnonymousSessionContext.js.map +1 -1
- package/dist/esm/core/security/AuthSessionContext.d.ts +88 -3
- package/dist/esm/core/security/AuthSessionContext.d.ts.map +1 -1
- package/dist/esm/core/security/AuthSessionContext.js +607 -116
- package/dist/esm/core/security/AuthSessionContext.js.map +1 -1
- package/dist/esm/core/security/StepUpAuthContext.d.ts +12 -0
- package/dist/esm/core/security/StepUpAuthContext.d.ts.map +1 -1
- package/dist/esm/core/security/StepUpAuthContext.js +58 -12
- package/dist/esm/core/security/StepUpAuthContext.js.map +1 -1
- package/dist/esm/core/security/UserOrgsContext.d.ts +15 -1
- package/dist/esm/core/security/UserOrgsContext.d.ts.map +1 -1
- package/dist/esm/core/security/UserOrgsContext.js +110 -16
- package/dist/esm/core/security/UserOrgsContext.js.map +1 -1
- package/dist/esm/core/security/auth-redirect.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/security/auth-redirect.frontend.utils.js.map +1 -1
- package/dist/esm/core/security/auth-session.utils.d.ts.map +1 -1
- package/dist/esm/core/security/auth-session.utils.js +21 -4
- package/dist/esm/core/security/auth-session.utils.js.map +1 -1
- package/dist/esm/core/security/consent-gate.frontend.utils.d.ts +102 -0
- package/dist/esm/core/security/consent-gate.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/security/consent-gate.frontend.utils.js +112 -0
- package/dist/esm/core/security/consent-gate.frontend.utils.js.map +1 -0
- package/dist/esm/core/security/cross-frontend-handoff.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/security/cross-frontend-handoff.frontend.service.js.map +1 -1
- package/dist/esm/core/security/federated-reauthentication.frontend.d.ts +74 -0
- package/dist/esm/core/security/federated-reauthentication.frontend.d.ts.map +1 -0
- package/dist/esm/core/security/federated-reauthentication.frontend.js +135 -0
- package/dist/esm/core/security/federated-reauthentication.frontend.js.map +1 -0
- package/dist/esm/core/security/jwt.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/security/jwt.frontend.utils.js.map +1 -1
- package/dist/esm/core/security/organization-onboarding.frontend.utils.d.ts +50 -0
- package/dist/esm/core/security/organization-onboarding.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/security/organization-onboarding.frontend.utils.js +55 -0
- package/dist/esm/core/security/organization-onboarding.frontend.utils.js.map +1 -0
- package/dist/esm/core/security/pending-mfa-session-storage.frontend.utils.d.ts +58 -0
- package/dist/esm/core/security/pending-mfa-session-storage.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/security/pending-mfa-session-storage.frontend.utils.js +88 -0
- package/dist/esm/core/security/pending-mfa-session-storage.frontend.utils.js.map +1 -0
- package/dist/esm/core/security/registration-outcome.frontend.utils.d.ts +78 -0
- package/dist/esm/core/security/registration-outcome.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/security/registration-outcome.frontend.utils.js +114 -0
- package/dist/esm/core/security/registration-outcome.frontend.utils.js.map +1 -0
- package/dist/esm/core/security/route-organization-access.frontend.utils.d.ts +75 -0
- package/dist/esm/core/security/route-organization-access.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/security/route-organization-access.frontend.utils.js +78 -0
- package/dist/esm/core/security/route-organization-access.frontend.utils.js.map +1 -0
- package/dist/esm/core/security/security.frontend.schemas.d.ts +70 -1
- package/dist/esm/core/security/security.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/security/security.frontend.schemas.js +68 -0
- package/dist/esm/core/security/security.frontend.schemas.js.map +1 -1
- package/dist/esm/core/security/session-token-storage.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/security/session-token-storage.frontend.service.js.map +1 -1
- package/dist/esm/core/security/useAuthSession.d.ts.map +1 -1
- package/dist/esm/core/security/useAuthSession.js.map +1 -1
- package/dist/esm/core/security/useConsentGateBehavior.d.ts +36 -0
- package/dist/esm/core/security/useConsentGateBehavior.d.ts.map +1 -0
- package/dist/esm/core/security/useConsentGateBehavior.js +59 -0
- package/dist/esm/core/security/useConsentGateBehavior.js.map +1 -0
- package/dist/esm/core/security/useDocumentAcceptanceGateBehavior.d.ts +76 -0
- package/dist/esm/core/security/useDocumentAcceptanceGateBehavior.d.ts.map +1 -0
- package/dist/esm/core/security/useDocumentAcceptanceGateBehavior.js +168 -0
- package/dist/esm/core/security/useDocumentAcceptanceGateBehavior.js.map +1 -0
- package/dist/esm/core/security/useResolvedAuthConfig.d.ts +21 -2
- package/dist/esm/core/security/useResolvedAuthConfig.d.ts.map +1 -1
- package/dist/esm/core/security/useResolvedAuthConfig.js +9 -5
- package/dist/esm/core/security/useResolvedAuthConfig.js.map +1 -1
- package/dist/esm/core/security/useRouteOrganizationAccess.d.ts +13 -0
- package/dist/esm/core/security/useRouteOrganizationAccess.d.ts.map +1 -0
- package/dist/esm/core/security/useRouteOrganizationAccess.js +101 -0
- package/dist/esm/core/security/useRouteOrganizationAccess.js.map +1 -0
- package/dist/esm/core/security/useStepUpAuth.d.ts.map +1 -1
- package/dist/esm/core/security/useStepUpAuth.js.map +1 -1
- package/dist/esm/core/security/useUserOrgs.d.ts.map +1 -1
- package/dist/esm/core/security/useUserOrgs.js.map +1 -1
- package/dist/esm/core/ui/SurfaceErrorBoundary.d.ts +3 -0
- package/dist/esm/core/ui/SurfaceErrorBoundary.d.ts.map +1 -1
- package/dist/esm/core/ui/SurfaceErrorBoundary.js +46 -14
- package/dist/esm/core/ui/SurfaceErrorBoundary.js.map +1 -1
- package/dist/esm/core/ui/SurfaceErrorBoundary.labels.d.ts +3 -0
- package/dist/esm/core/ui/SurfaceErrorBoundary.labels.d.ts.map +1 -0
- package/dist/esm/core/ui/SurfaceErrorBoundary.labels.js +14 -0
- package/dist/esm/core/ui/SurfaceErrorBoundary.labels.js.map +1 -0
- package/dist/esm/core/ui/SurfacePolicyContext.d.ts.map +1 -1
- package/dist/esm/core/ui/SurfacePolicyContext.js.map +1 -1
- package/dist/esm/core/ui/TypographyScopeContext.d.ts.map +1 -1
- package/dist/esm/core/ui/TypographyScopeContext.js.map +1 -1
- package/dist/esm/core/ui/UIContext.d.ts.map +1 -1
- package/dist/esm/core/ui/UIContext.js +22 -5
- package/dist/esm/core/ui/UIContext.js.map +1 -1
- package/dist/esm/core/ui/chart-style-defaults.d.ts.map +1 -1
- package/dist/esm/core/ui/chart-style-defaults.js.map +1 -1
- package/dist/esm/core/ui/cn.d.ts.map +1 -1
- package/dist/esm/core/ui/cn.js.map +1 -1
- package/dist/esm/core/ui/color-conversion.utils.d.ts.map +1 -1
- package/dist/esm/core/ui/color-conversion.utils.js.map +1 -1
- package/dist/esm/core/ui/design-token-class-groups.d.ts.map +1 -1
- package/dist/esm/core/ui/design-token-class-groups.js.map +1 -1
- package/dist/esm/core/ui/design-token-config.utils.d.ts.map +1 -1
- package/dist/esm/core/ui/design-token-config.utils.js.map +1 -1
- package/dist/esm/core/ui/design-token.utils.d.ts.map +1 -1
- package/dist/esm/core/ui/design-token.utils.js +3 -3
- package/dist/esm/core/ui/design-token.utils.js.map +1 -1
- package/dist/esm/core/ui/material-runtime.d.ts.map +1 -1
- package/dist/esm/core/ui/material-runtime.js.map +1 -1
- package/dist/esm/core/ui/surface-a11y.utils.d.ts.map +1 -1
- package/dist/esm/core/ui/surface-a11y.utils.js.map +1 -1
- package/dist/esm/core/ui/theme-preference-storage.shared.d.ts.map +1 -1
- package/dist/esm/core/ui/theme-preference-storage.shared.js.map +1 -1
- package/dist/esm/core/ui/themes/default.theme.d.ts.map +1 -1
- package/dist/esm/core/ui/themes/default.theme.js +109 -13
- package/dist/esm/core/ui/themes/default.theme.js.map +1 -1
- package/dist/esm/core/ui/ui.frontend.schemas.d.ts +2 -5
- package/dist/esm/core/ui/ui.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/ui/ui.frontend.schemas.js.map +1 -1
- package/dist/esm/core/ui/useThemePreferenceControl.d.ts.map +1 -1
- package/dist/esm/core/ui/useThemePreferenceControl.js.map +1 -1
- package/dist/esm/core/ui/useUI.d.ts.map +1 -1
- package/dist/esm/core/ui/useUI.js.map +1 -1
- package/dist/esm/index.d.ts +29 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +41 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/tailwind/index.d.ts.map +1 -1
- package/dist/esm/tailwind/index.js +95 -2
- package/dist/esm/tailwind/index.js.map +1 -1
- package/dist/esm/testing/mock-builders.d.ts.map +1 -1
- package/dist/esm/testing/mock-builders.js +35 -1
- package/dist/esm/testing/mock-builders.js.map +1 -1
- package/dist/esm/testing/mock-factory.d.ts.map +1 -1
- package/dist/esm/testing/mock-factory.js.map +1 -1
- package/dist/esm/testing/rmm-helpers.d.ts +2 -0
- package/dist/esm/testing/rmm-helpers.d.ts.map +1 -1
- package/dist/esm/testing/rmm-helpers.js.map +1 -1
- package/dist/esm/testing/test-providers.d.ts.map +1 -1
- package/dist/esm/testing/test-providers.js.map +1 -1
- package/dist/esm/testing.d.ts.map +1 -1
- package/dist/esm/testing.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +22 -33
|
@@ -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, WebAuthnAbortService } from '@simplewebauthn/browser';\nimport type { PublicKeyCredentialRequestOptionsJSON } from '@simplewebauthn/browser';\nimport {\n AuthNextStep,\n AuthenticationResponse,\n AuthIdentificationResponse,\n AuthenticationRequest,\n AuthMethod,\n AuthFactorLevel,\n AuthSessionPurpose,\n AuthenticationSessionState,\n SessionType,\n isWildoBackendError,\n type OnboardingObligation,\n} from '@wildo-ai/saas-models';\n\n/**\n * What an onboarding completion came to (#1374): the account signed in, or the session is still parked and owes\n * `pendingObligations` next. The onboarding step renders the next step from it.\n */\nexport interface OnboardingCompletionOutcome {\n signedIn: boolean;\n pendingObligations: OnboardingObligation[];\n}\nimport {\n getManualCallsHttpClient,\n type EnrollmentSessionSettlementResponse,\n type OnboardingCompletionResponse,\n type RegisterAccountRequest,\n} from '~wildo-frontend-lib/core/requests/wildo-http-client-manual-calls.frontend.service';\nimport { classifyRegistrationOutcome, RegistrationOutcome } from '~wildo-frontend-lib/core/security/registration-outcome.frontend.utils';\nimport { isSpentOrganizationOnboardingSession, parkedOrganizationOnboardingSessionId } from '~wildo-frontend-lib/core/security/organization-onboarding.frontend.utils';\nimport { forgetPendingMfaSession, rememberPendingMfaSession } from '~wildo-frontend-lib/core/security/pending-mfa-session-storage.frontend.utils';\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 { useUserFacingErrorMessage } from '~wildo-frontend-lib/core/errors/useUserFacingErrorMessage';\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 authFactorLevelForUiLevel,\n PasskeyAutofillExpiredError, PasskeyAutofillSupersededError,\n PasskeySignInMediation,\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\n/**\n * The session states on which the server still admits second-factor work — a challenge or an enrollment\n * ceremony. Mirrors the admission in `auth-jwt-guard.backend.service.ts` (`extractFromSessionOrJwt`), so\n * the client never adopts a session the server would refuse to act on.\n */\nconst SECOND_FACTOR_PENDING_SESSION_STATES: ReadonlySet<AuthenticationSessionState> = new Set([\n AuthenticationSessionState.MFA_REQUIRED,\n AuthenticationSessionState.MFA_ENROLLMENT_REQUIRED,\n]);\n\n/**\n * The fields of `GET /auth/session/:sessionId` that describe a session still owing a second factor: its\n * state, which decides adoption, and the four method lists an MFA-required authentication RESPONSE\n * carries, so a session recovered by id lands in exactly the auth state a session produced by a call would.\n */\nexport interface PendingMfaSessionState {\n state?: AuthenticationSessionState;\n availableSecondFactorMethods?: AuthState['availableMfaMethods'];\n availableEnrollmentMethods?: AuthState['availableEnrollmentMethods'];\n enrolledSecondFactorMethods?: AuthState['enrolledSecondFactorMethods'];\n usableSecondFactorMethods?: AuthState['usableSecondFactorMethods'];\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 /**\n * Begin a federated sign-in, carrying any governed-document releases the person accepted first.\n *\n * The ids are optional and absent for every sign-IN — a returning user is accepting nothing. A\n * SIGN-UP surface passes what the acceptance control gathered, and the backend stores them in the\n * server-side OAuth state token so they cannot be edited on the way to the provider and back\n * (#1383).\n */\n initiateOAuth2Login: (providerRef: string, returnUrl?: string, acceptedGovernedDocumentReleaseIds?: readonly 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), and `signInRequired` when the invitation\n // was accepted but no session was issued (#1158).\n acceptInvitation: (params: { invitationToken: string; firstName?: string; lastName?: string; password?: string; credentialMethod?: AuthMethod }) => Promise<{ passkeyRegistrationOptions?: Record<string, unknown>; signInRequired?: boolean }>;\n\n /**\n * Public registration (#972). Submits the registration, classifies the answer once, adopts the auth\n * state that outcome implies — a signed-in session, or a registration session parked at the\n * second-factor enrollment gate — and returns the outcome for the screen to render. Every other\n * outcome changes no auth state. Errors propagate unhandled: the registration form renders them\n * inline, field by field.\n */\n registerAccount: (params: RegisterAccountRequest) => Promise<RegistrationOutcome>;\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 /**\n * Adopt the outcome of an MFA enrollment ceremony. When the ceremony COMPLETED a registration or\n * invitation session (its response carried an access token; the refresh token arrived as a cookie),\n * this signs the user in exactly as a completed MFA challenge does and returns `true`. When it parked the\n * session at organization onboarding (#1090), this adopts the parked session and also returns `true`: the\n * onboarding step, not the challenge, is where the person goes next. Returns `false` — changing nothing —\n * for any other outcome, so the caller keeps routing (a login session goes on to the challenge).\n */\n completeEnrollmentSession: (settlement: EnrollmentSessionSettlementResponse | undefined) => boolean;\n\n /**\n * Adopt a server-side session that still owes a second factor, recovered by its id rather than\n * produced by a response this context handled (#1033). Every other path into `mfaRequired` is a\n * response to a call made here; a hard load of an auth route has made no call, so the in-memory\n * state is empty while the session it names is valid. Returns `true` and populates the MFA state\n * when the session is in a state the server still admits second-factor work on (`MFA_REQUIRED`,\n * `MFA_ENROLLMENT_REQUIRED`); returns `false` — changing nothing — otherwise.\n */\n adoptPendingMfaSession: (sessionId: string, sessionState: PendingMfaSessionState | null | undefined) => boolean;\n\n /**\n * Name the organization the account parked at onboarding owes (`auth.onboardingSessionId`), and sign it in\n * (#1090). On success the tokens are adopted exactly as a completed sign-in adopts them and the parked\n * session is cleared. Errors propagate for the onboarding step to render. A SPENT session (expired, or\n * completed elsewhere) is also forgotten, since it can never complete; any other refusal keeps it parked so\n * the person can retry. After a spent session the person signs in again and, the obligation being durable,\n * comes straight back (#1091).\n */\n completeOrganizationOnboarding: (organizationName: string) => Promise<OnboardingCompletionOutcome>;\n\n /**\n * Give the names the account parked at onboarding owes (#1374), for a user type that collects them after the\n * address is proven. Same contract as {@link completeOrganizationOnboarding}: signs in when nothing else is owed,\n * otherwise leaves the session parked and answers what remains.\n */\n completeProfileOnboarding: (firstName: string, lastName: string) => Promise<OnboardingCompletionOutcome>;\n\n /**\n * Forget the session parked at organization onboarding without completing it, to sign in as someone else\n * (#1090). Every auth screen routes a parked context to the onboarding step, so without this a person who\n * reached it with the wrong account could not get back to sign-in short of a reload. Nothing is lost: the\n * obligation is durable on the server, so that account is returned to onboarding the next time it signs in.\n */\n abandonOrganizationOnboarding: () => void;\n\n // Passkey authentication (first or second factor)\n handlePasskeyAuth: (sessionId: string, factorLevel?: UIFactorLevel) => Promise<AuthenticationResponse>;\n /**\n * Username-less passkey sign-in: no email is typed, the device offers every account the person holds\n * a passkey for on this site, and the server signs in the account the chosen passkey belongs to.\n * `CONDITIONAL` is passkey autofill on the email field; `MODAL` is the explicit button.\n */\n signInWithPasskey: (mediation?: PasskeySignInMediation) => 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\n/**\n * How long before its challenge expires a waiting autofill request is stopped and restarted. Long enough\n * for the restart's request to land and a fresh challenge to be issued before the old one is gone.\n */\nconst PASSKEY_AUTOFILL_REARM_MARGIN_MS = 15_000;\n\n/**\n * Tell the browser a passkey is unknown to this application, so it stops offering it.\n *\n * Feature-detected and best-effort: `PublicKeyCredential.signalUnknownCredential` is a WebAuthn Level 3\n * addition not every browser ships, and a browser that cannot hear the signal loses nothing — the\n * sign-in already failed. Called only when the server said the credential is UNKNOWN, never on a\n * signature or user-verification refusal, which would hide a passkey the application still holds.\n *\n * spec-cite: https://web.dev/articles/passkey-form-autofill — `PublicKeyCredential.signalUnknownCredential()`: \"Call this static method on the client-side if your server indicates that a presented credential ID is unknown.\"\n */\nfunction signalUnknownPasskeyCredential(rpId: string | undefined, credentialId: string): void {\n const credentialApi = (globalThis as { PublicKeyCredential?: { signalUnknownCredential?: (input: { rpId: string; credentialId: string }) => Promise<void> } }).PublicKeyCredential;\n if (!rpId || typeof credentialApi?.signalUnknownCredential !== 'function') return;\n void credentialApi.signalUnknownCredential({ rpId, credentialId }).catch(() => undefined);\n}\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 // `auth.error` is rendered verbatim by the auth screens, so every failure written into it goes through\n // the shared resolver: localized, and never the error's raw `message` / server `details.message`.\n const toUserFacingErrorMessage = useUserFacingErrorMessage();\n /** The MFA surface's own words for a failed second factor, used where the error names nothing more precise. */\n const mfaFailureLabel = useCallback(\n () => resolveComponentLabel({ tComponent, componentType: FrontendComponentType.PUBLIC_LAYOUTS_MFA_CHALLENGE, key: MfaChallengeLabel.ERROR_GENERIC }),\n [tComponent],\n );\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 // Identification owns account-specific methods, session and organization branding. Only the\n // latest request may publish them; logout or provider disposal retires outstanding requests.\n const identificationGenerationRef = useRef(0);\n /**\n * How many passkey ceremonies the PERSON started are open (the button, a second-factor passkey step).\n * An autofill ceremony checks it after its options arrive and steps aside rather than starting a\n * WebAuthn request that would abort their prompt.\n */\n const personStartedPasskeyCeremoniesRef = useRef(0);\n useEffect(() => () => { identificationGenerationRef.current += 1; }, []);\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 * An answer parked the account at organization onboarding (#1090): remember the session the onboarding step\n * completes on, and drop every second-factor continuation — nothing more is owed there, and a leftover\n * `mfaRequired` would send the screens to a challenge. Nothing is signed in and no token is touched.\n */\n const adoptOrganizationOnboardingSession = (sessionId: string): void => {\n setAuth(a => ({\n ...a,\n isLoading: false,\n error: null,\n sessionId: null,\n onboardingSessionId: sessionId,\n mfaRequired: false,\n mfaSessionId: null,\n availableMfaMethods: [],\n availableEnrollmentMethods: [],\n enrolledSecondFactorMethods: [],\n usableSecondFactorMethods: [],\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 const generation = ++identificationGenerationRef.current;\n // Starting a sign-in abandons any session this tab still remembers as owing a factor — possibly another\n // person's, in a shared tab. Explicit for the same hard-load reason `logout` gives (#1068).\n forgetPendingMfaSession();\n setAuth(a => ({\n ...a,\n isLoading: true,\n error: null,\n identification: null,\n sessionId: null,\n sessionState: null,\n onboardingSessionId: null,\n mfaRequired: false,\n mfaSessionId: null,\n availableMfaMethods: [],\n availableEnrollmentMethods: [],\n enrolledSecondFactorMethods: [],\n usableSecondFactorMethods: [],\n }));\n logDebug('Identifying user by email', { email });\n try {\n const resp = await getManualCallsHttpClient().identifyByEmail(email);\n\n if (generation !== identificationGenerationRef.current) return resp;\n\n logDebug('User identification successful', { sessionId: resp.sessionId });\n\n setAuth(a => generation !== identificationGenerationRef.current ? 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 if (generation !== identificationGenerationRef.current) throw e;\n const msg = toUserFacingErrorMessage(e);\n handleError(e, 'Identification failed', { email, message: msg });\n setAuth(a => generation !== identificationGenerationRef.current ? a : ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n };\n\n /**\n * Adopt a factor-completion response that did not stop at an MFA challenge — shared by\n * `authenticateWithPassword` and `authenticate`, which carried two copies of this until #1009.\n *\n * ## A response without a token never removes one (#1009)\n *\n * Since #971 exactly one of two concurrent completions of the same factor mints; the other answers\n * `success: false, retryAllowed: false`. One tab can send both — a double click, a retried request — and\n * nothing orders their responses. The copies this replaces wrote `storeAuthTokens(resp.accessToken || null)`\n * and `accessToken: null` on EVERY response, so a losing answer arriving after the winning one erased the\n * token the winner had just stored and the screen read as signed out (the HttpOnly refresh cookie recovered\n * it on the next refresh, which is why it was degraded rather than a lockout).\n *\n * A token-less response carries no information about a session this tab already holds — it only says this\n * one request did not mint — so it changes nothing but the loading flag while a token is held. Removing a\n * token belongs to the two paths that DO carry that information: an explicit sign-out (including the\n * cross-tab `LOGOUT` broadcast) and a failed refresh. Held is read from the updater's own state, never from\n * the `auth` closure, which is the render the losing call was issued from and predates the winner.\n */\n const adoptFactorCompletionResponse = (resp: AuthenticationResponse, sessionId: string): void => {\n const accessToken = resp.accessToken || null;\n\n if (!accessToken) {\n setAuth(a => (a.accessToken\n ? { ...a, isLoading: false }\n : { ...a, isLoading: false, sessionId: resp.success ? null : sessionId }));\n return;\n }\n\n storeAuthTokens(accessToken);\n getManualCallsHttpClient().setAuthToken(accessToken);\n setResourcesAuthToken(accessToken);\n\n if (resp.success) {\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,\n }));\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 // #1091: a sign-in by an account that still owes its organization resumes onboarding instead of minting.\n const parkedOnboardingSessionId = parkedOrganizationOnboardingSessionId(resp);\n if (parkedOnboardingSessionId) {\n adoptOrganizationOnboardingSession(parkedOnboardingSessionId);\n return resp as AuthenticationResponse;\n }\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 logDebug('Authentication successful', { success: resp.success, hasAccessToken: !!resp.accessToken });\n\n adoptFactorCompletionResponse(resp as AuthenticationResponse, sessionId);\n\n return resp as AuthenticationResponse;\n } catch (e: any) {\n const msg = toUserFacingErrorMessage(e);\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 // #1091: a sign-in by an account that still owes its organization resumes onboarding instead of minting.\n const parkedOnboardingSessionId = parkedOrganizationOnboardingSessionId(resp);\n if (parkedOnboardingSessionId) {\n adoptOrganizationOnboardingSession(parkedOnboardingSessionId);\n return resp as AuthenticationResponse;\n }\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 logDebug('Authentication successful', { success: resp.success, hasAccessToken: !!resp.accessToken, method: request.method });\n\n adoptFactorCompletionResponse(resp, sessionId);\n\n return resp;\n } catch (e: any) {\n const msg = toUserFacingErrorMessage(e);\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 (\n providerRef: string,\n returnUrl?: string,\n acceptedGovernedDocumentReleaseIds?: readonly string[],\n ): Promise<void> => {\n logDebug('Initiating OAuth2 login', { providerRef, returnUrl });\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n try {\n const { authorizationUrl } = await getManualCallsHttpClient()\n .getOAuth2AuthorizationUrl(providerRef, returnUrl, undefined, acceptedGovernedDocumentReleaseIds);\n logDebug('Redirecting to OAuth2 provider', { providerRef, authorizationUrl });\n window.location.href = authorizationUrl;\n } catch (e: any) {\n const msg = toUserFacingErrorMessage(e);\n handleError(e, 'OAuth2 login initiation failed', { providerRef, message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [handleError, toUserFacingErrorMessage]);\n\n /**\n * Exchange a single-use AUTH_CODE_EXCHANGE consumable token for a JWT pair\n * via `POST /auth/token/exchange` — or, for a federated sign-in the backend\n * parked because the account still owes its organization (#1103), for the\n * onboarding session it must complete (`auth.onboardingSessionId`; no token).\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\n // #1103: a federated sign-in by an account that still owes its organization — onboarding comes first.\n const parkedOnboardingSessionId = parkedOrganizationOnboardingSessionId(response);\n if (parkedOnboardingSessionId) {\n logDebug('Code exchange parked the federated sign-in at organization onboarding');\n adoptOrganizationOnboardingSession(parkedOnboardingSessionId);\n return;\n }\n if (!('accessToken' in response)) {\n throw new Error('The code exchange answered with neither a sign-in nor a parked onboarding session.');\n }\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 = toUserFacingErrorMessage(e);\n handleError(e, 'OAuth2 callback failed', { message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError, toUserFacingErrorMessage]);\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 if (parkedOrganizationOnboardingSessionId(response)) {\n logDebug('Email verification parked the registrant at organization onboarding', { state: response.state });\n adoptOrganizationOnboardingSession(response.sessionId!);\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 = toUserFacingErrorMessage(e);\n handleError(e, 'Email verification failed', { message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError, toUserFacingErrorMessage]);\n\n const acceptInvitation = useCallback(async (\n params: { invitationToken: string; firstName?: string; lastName?: string; password?: string; credentialMethod?: AuthMethod },\n ): Promise<{ passkeyRegistrationOptions?: Record<string, unknown>; signInRequired?: boolean }> => {\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 // `signInRequired` (#1158): the invitation was accepted and no session was issued; the caller sends the invitee to sign in.\n return { passkeyRegistrationOptions: response.passkeyRegistrationOptions, signInRequired: response.nextStep === AuthNextStep.SIGN_IN_REQUIRED };\n } catch (e: any) {\n const msg = toUserFacingErrorMessage(e);\n handleError(e, 'Invitation acceptance failed', { message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError, toUserFacingErrorMessage]);\n\n /*\n * Public registration (#972). The registration screen used to call the HTTP client itself and\n * announce \"check your email\" whatever came back, so the two outcomes that carry a SESSION were lost:\n * a deferred-verification registrant who had just been signed in, and one whose user type requires a\n * second factor they must enroll first — who never reached the enrollment gate that completes their\n * registration session (#603).\n *\n * The answer is classified ONCE, by `classifyRegistrationOutcome`, and the screen renders from the same\n * value — so what the context adopted and what the screen shows cannot disagree.\n *\n * Deliberately NOT routed through `handleError`, and `auth.isLoading` / `auth.error` are left alone:\n * a refused registration is a form outcome (a taken slug, a password policy) the screen shows inline,\n * and a global error surface would duplicate it.\n */\n const registerAccount = useCallback(async (params: RegisterAccountRequest): Promise<RegistrationOutcome> => {\n logDebug('Handling public registration', { hasPassword: !!params.password });\n const response = await getManualCallsHttpClient().register(params);\n const outcome = classifyRegistrationOutcome(response);\n\n if (outcome === RegistrationOutcome.SIGNED_IN) {\n const accessToken = response.accessToken!;\n storeAuthTokens(accessToken);\n getManualCallsHttpClient().setAuthToken(accessToken);\n setResourcesAuthToken(accessToken);\n\n logDebug('Registration signed the registrant in, tokens stored', { state: response.state });\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n 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 if (outcome === RegistrationOutcome.MFA_ENROLLMENT_REQUIRED) {\n logDebug('Registration owes a second-factor enrollment before sign-in', { state: response.state, nextStep: response.nextStep });\n\n /*\n * The same continuation state `handleEmailVerification` and `acceptInvitation` set for this answer.\n * A brand-new account has enrolled nothing, so nothing is usable — which is precisely what sends\n * `useMfaContinuationNavigation` to the enrollment gate rather than to a challenge.\n */\n setAuth(a => ({\n ...a,\n isLoading: false,\n sessionId: null,\n mfaRequired: true,\n mfaSessionId: response.sessionId!,\n availableMfaMethods: [],\n availableEnrollmentMethods: response.availableEnrollmentMethods || [],\n enrolledSecondFactorMethods: [],\n usableSecondFactorMethods: [],\n error: null,\n }));\n } else if (outcome === RegistrationOutcome.ORGANIZATION_ONBOARDING_REQUIRED) {\n logDebug('Registration parked the registrant at organization onboarding', { state: response.state });\n adoptOrganizationOnboardingSession(response.sessionId!);\n } else {\n logDebug('Registration answered without a session to adopt', { outcome, state: response.state, nextStep: response.nextStep });\n }\n\n return outcome;\n }, [setResourcesAuthToken]);\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 // #1091 / #1089: the link signs in an account that still owes its organization — onboarding comes first.\n const parkedOnboardingSessionId = parkedOrganizationOnboardingSessionId(response);\n if (parkedOnboardingSessionId) {\n adoptOrganizationOnboardingSession(parkedOnboardingSessionId);\n return response;\n }\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 = toUserFacingErrorMessage(e);\n handleError(e, 'Magic link verification failed', { message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError, toUserFacingErrorMessage]);\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 // #1091: the second factor completed a sign-in whose account still owes its organization.\n const parkedOnboardingSessionId = parkedOrganizationOnboardingSessionId(response);\n if (parkedOnboardingSessionId) {\n adoptOrganizationOnboardingSession(parkedOnboardingSessionId);\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\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 // `response.error` is server-authored English; the MFA surface says what failed.\n setAuth(a => ({ ...a, isLoading: false, error: toUserFacingErrorMessage(null, mfaFailureLabel()) }));\n }\n\n return response;\n } catch (e: any) {\n const msg = toUserFacingErrorMessage(e, mfaFailureLabel());\n handleError(e, 'MFA verification failed', { method, message: msg });\n setAuth(a => ({ ...a, isLoading: false, error: msg }));\n throw e;\n }\n }, [setResourcesAuthToken, handleError, toUserFacingErrorMessage, mfaFailureLabel]);\n\n /*\n * The enrollment gate's recovery after a hard load (#1033). The MFA challenge URL is self-sufficient —\n * it carries `sessionId` and re-reads the session from the server — but the gate it hands off to read\n * its session ONLY from this context, which a hard load leaves empty, so it bounced a valid\n * enrollment-pending session to sign-in.\n *\n * Keyed on the session's STATE, the same question the server asks before it lets an enrollment\n * ceremony run on a session (`auth-jwt-guard.backend.service.ts`, `extractFromSessionOrJwt`). NOT on\n * `requiresMFA`: that flag is cleared when a LOGIN's second factor completes, but a registration's\n * completion writes its terminal state without clearing it, so keying on the flag would re-open a\n * finished session as one that owes a factor — and offer enrollments the server then refuses.\n */\n const adoptPendingMfaSession = useCallback((sessionId: string, sessionState: PendingMfaSessionState | null | undefined): boolean => {\n if (!sessionState?.state || !SECOND_FACTOR_PENDING_SESSION_STATES.has(sessionState.state)) {\n return false;\n }\n\n setAuth(a => ({\n ...a,\n mfaRequired: true,\n mfaSessionId: sessionId,\n availableMfaMethods: sessionState.availableSecondFactorMethods || [],\n availableEnrollmentMethods: sessionState.availableEnrollmentMethods || [],\n enrolledSecondFactorMethods: sessionState.enrolledSecondFactorMethods || [],\n usableSecondFactorMethods: sessionState.usableSecondFactorMethods || [],\n }));\n return true;\n }, []);\n\n /*\n * The registration-time MFA enrollment's sign-in (#603). A registrant who must enroll a second factor\n * before their first session has already proven the factor by enrolling it, so the backend completes\n * the registration session inside the enrollment ceremony and returns the access token there — there\n * is no challenge to answer. This is the ONE place that token is adopted, with the same state\n * transition `handleMfaVerify` applies on a completed challenge, so the enrollment screen does not\n * re-implement token storage and the two ways of finishing MFA leave identical auth state.\n */\n const completeEnrollmentSession = useCallback((settlement: EnrollmentSessionSettlementResponse | undefined): boolean => {\n // The enrollment settled a registration session at ONBOARDING_PENDING (#1011): the organization comes next.\n const parkedOnboardingSessionId = parkedOrganizationOnboardingSessionId(settlement);\n if (parkedOnboardingSessionId) {\n logDebug('Enrollment parked the registration session at organization onboarding');\n adoptOrganizationOnboardingSession(parkedOnboardingSessionId);\n return true;\n }\n\n if (!settlement?.accessToken || settlement.state !== AuthenticationSessionState.COMPLETED) {\n return false;\n }\n\n const client = getManualCallsHttpClient();\n storeAuthTokens(settlement.accessToken);\n client.setAuthToken(settlement.accessToken);\n setResourcesAuthToken(settlement.accessToken);\n\n logDebug('Enrollment completed the registration session, tokens stored');\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken: settlement.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 return true;\n }, [setResourcesAuthToken]);\n\n /*\n * The organization-onboarding step's completion (#1090). The parked session is the context's own\n * (`auth.onboardingSessionId`), never a screen's argument: every answer that parks one adopts it here, so the\n * step cannot be pointed at a session this tab did not receive. The completion consumes the session and mints\n * exactly once (#1008), so the tokens are adopted with the same transition every other completed sign-in\n * applies, and the parked session is cleared in the same write.\n */\n /**\n * Run one onboarding completion and adopt its answer (#1090, #1374). Both completion doors share it: an answer\n * carrying a token signs the account in exactly as a completed sign-in does, and clears the parked session; an\n * answer without one is the session still parked on another obligation — no longer an error since #1374 — and\n * the step moves on to what `pendingObligations` names.\n */\n const runOnboardingCompletion = useCallback(async (\n complete: (sessionId: string) => Promise<OnboardingCompletionResponse>,\n ): Promise<OnboardingCompletionOutcome> => {\n const sessionId = auth.onboardingSessionId;\n if (!sessionId) {\n throw new Error('No session is parked at onboarding.');\n }\n\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n try {\n const client = getManualCallsHttpClient();\n const response = await complete(sessionId);\n if (!response.accessToken) {\n setAuth(a => ({ ...a, isLoading: false }));\n logDebug('Onboarding obligation completed; the session stays parked on the rest', { pendingObligations: response.pendingObligations });\n return { signedIn: false, pendingObligations: response.pendingObligations ?? [] };\n }\n\n storeAuthTokens(response.accessToken);\n client.setAuthToken(response.accessToken);\n setResourcesAuthToken(response.accessToken);\n\n logDebug('Onboarding completed, tokens stored', { organizationId: response.organizationId });\n\n setAuth(a => ({\n ...a,\n isLoading: false,\n accessToken: response.accessToken!,\n isRestoringSession: true,\n sessionRestored: false,\n sessionId: null,\n onboardingSessionId: 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 return { signedIn: true, pendingObligations: [] };\n } catch (e: any) {\n // Rendered by the onboarding step itself; `auth.error` is left alone so no global surface duplicates it.\n // A spent session can never complete, so it is forgotten — otherwise every guarded screen would keep\n // routing back to a form whose every submission is refused.\n if (isSpentOrganizationOnboardingSession(e)) {\n leaveOrganizationOnboardingForSignIn();\n } else {\n setAuth(a => ({ ...a, isLoading: false }));\n }\n throw e;\n }\n }, [auth.onboardingSessionId, setResourcesAuthToken]);\n\n const completeOrganizationOnboarding = useCallback(\n (organizationName: string): Promise<OnboardingCompletionOutcome> =>\n runOnboardingCompletion((sessionId) => getManualCallsHttpClient().completeOrgOnboarding(sessionId, organizationName)),\n [runOnboardingCompletion],\n );\n\n const completeProfileOnboarding = useCallback(\n (firstName: string, lastName: string): Promise<OnboardingCompletionOutcome> =>\n runOnboardingCompletion((sessionId) => getManualCallsHttpClient().completeProfileOnboarding(sessionId, firstName, lastName)),\n [runOnboardingCompletion],\n );\n\n /*\n * Leaving onboarding without completing it is a return to a FRESH sign-in, not just forgetting the parked\n * session. A sign-in that was parked still holds the identification it started from (email, the old session\n * id), and the sign-in screen renders straight to that account's credential form when an identification is\n * present — a form whose every submission is refused, because the parked session replaced the one it needs.\n * So this resets the sign-in state exactly as starting a new identification does (`identifyByEmail`): it\n * invalidates any in-flight identification, forgets a remembered pending second factor, and clears the\n * identification with the parked session.\n */\n const leaveOrganizationOnboardingForSignIn = (): void => {\n identificationGenerationRef.current += 1;\n forgetPendingMfaSession();\n setAuth(a => ({\n ...a,\n isLoading: false,\n error: null,\n identification: null,\n sessionId: null,\n sessionState: null,\n onboardingSessionId: null,\n }));\n };\n\n const abandonOrganizationOnboarding = useCallback((): void => {\n leaveOrganizationOnboardingForSignIn();\n }, []);\n\n /**\n * The ONE passkey sign-in ceremony, behind three entries: an identified session's passkey method\n * (`handlePasskeyAuth`), the sign-in-with-a-passkey button and passkey autofill (`signInWithPasskey`).\n *\n * The server answers `{ sessionId, options }`, and the verification presents THAT session: without a\n * `sessionId` the options door opens the sign-in itself, and the challenge is bound to the session it\n * opened. The account that signs in is the one the chosen passkey belongs to.\n *\n * Autofill (`conditional`) differs in one respect: until the person picks a passkey nothing they did\n * has failed, so a refusal before then — the page moving on, a network error, a browser that aborts —\n * is re-thrown without touching the page's error or loading state.\n */\n const runPasskeyCeremony = useCallback(async ({\n sessionId,\n factorLevel,\n conditional,\n }: {\n sessionId?: string;\n factorLevel: UIFactorLevel;\n conditional: boolean;\n }): Promise<AuthenticationResponse> => {\n logDebug('Handling passkey authentication', { sessionId, factorLevel, conditional });\n if (!conditional) {\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n }\n let credentialPresented = false;\n let autofillExpired = false;\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 begun = await client.passkeyAuthOptions(sessionId);\n const optionsJSON: PublicKeyCredentialRequestOptionsJSON = begun.options;\n if (conditional && personStartedPasskeyCeremoniesRef.current > 0) {\n // The person opened a passkey prompt while this autofill was still loading its options. Starting\n // our request now would abort theirs (`startAuthentication` cancels any pending ceremony), so step\n // aside. Residual: `startAuthentication` awaits the browser's `isConditionalMediationAvailable()`\n // before it creates its abort signal, so a button prompt opened DURING that browser call could\n // still be aborted. It is practically unreachable: the counter rises before the button's own\n // options request, so the button would need its whole network round trip to finish inside it.\n throw new PasskeyAutofillSupersededError();\n }\n // Autofill waits indefinitely; its challenge does not. Stop the wait just before the server's\n // challenge (and the session bound to it) runs out, so the page can start a fresh one instead of\n // letting the person pick a passkey that can no longer be redeemed.\n let autofillExpiredTimer: ReturnType<typeof setTimeout> | undefined;\n const rearmInMs = (begun.expiresInSeconds ?? 0) * 1000 - PASSKEY_AUTOFILL_REARM_MARGIN_MS;\n const armAutofillExpiry = conditional && rearmInMs > 0;\n // A WALL-CLOCK deadline as well as the timer: timers do not run while a laptop sleeps and are\n // throttled in background tabs, so a tab woken past its deadline would offer a passkey whose\n // session is already gone. The page becoming visible or focused re-checks the clock.\n const autofillDeadline = Date.now() + rearmInMs;\n const expireAutofill = () => {\n if (autofillExpired) return;\n autofillExpired = true;\n WebAuthnAbortService.cancelCeremony();\n };\n const onPageResumed = () => {\n if (Date.now() >= autofillDeadline) expireAutofill();\n };\n if (armAutofillExpiry) {\n autofillExpiredTimer = setTimeout(expireAutofill, rearmInMs);\n if (typeof document !== 'undefined') document.addEventListener('visibilitychange', onPageResumed);\n if (typeof window !== 'undefined') window.addEventListener('focus', onPageResumed);\n }\n let credential: Awaited<ReturnType<typeof startAuthentication>>;\n try {\n credential = await startAuthentication({ optionsJSON, useBrowserAutofill: conditional });\n } finally {\n clearTimeout(autofillExpiredTimer);\n if (armAutofillExpiry) {\n if (typeof document !== 'undefined') document.removeEventListener('visibilitychange', onPageResumed);\n if (typeof window !== 'undefined') window.removeEventListener('focus', onPageResumed);\n }\n }\n credentialPresented = true;\n if (conditional) {\n setAuth(a => ({ ...a, isLoading: true, error: null }));\n }\n // `factorLevel` here is the UI vocabulary; the wire carries `AuthFactorLevel`. Forwarding it\n // verbatim was a 400 on every passkey sign-in (see `authFactorLevelForUiLevel`).\n const response = await client.passkeyAuthVerify({ response: credential, sessionId: begun.sessionId, factorLevel: authFactorLevelForUiLevel(factorLevel) });\n\n // The application no longer holds this passkey (deleted, or the account is gone): tell the browser,\n // so it stops offering a credential that can never sign in.\n if (response.passkeyCredentialUnknown) {\n signalUnknownPasskeyCredential(optionsJSON?.rpId, credential.id);\n }\n\n // #1091: a passkey sign-in by an account that still owes its organization resumes onboarding.\n const parkedOnboardingSessionId = parkedOrganizationOnboardingSessionId(response);\n if (parkedOnboardingSessionId) {\n adoptOrganizationOnboardingSession(parkedOnboardingSessionId);\n return response;\n }\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 // `response.error` is server-authored English; the passkey surface says what failed.\n setAuth(a => ({ ...a, isLoading: false, error: toUserFacingErrorMessage(null, t(passkeyErrorLabel)) }));\n }\n return response;\n } catch (e: unknown) {\n if (conditional && !credentialPresented) {\n // Autofill that never produced a passkey: the page moved on, the browser aborted the wait, or\n // its challenge was about to expire. Nothing the person did failed, so the page is left exactly\n // as it was — and only the expiry case asks the page to start again.\n throw autofillExpired ? new PasskeyAutofillExpiredError() : e;\n }\n // A cancelled browser prompt is the one failure this surface names itself. Everything else goes\n // through the shared resolver — a `400 validation` used to reach the screen as the word `validation`.\n const msg = (e as { name?: string } | null)?.name === 'NotAllowedError'\n ? t(passkeyCancelledLabel)\n : toUserFacingErrorMessage(e, t(passkeyErrorLabel));\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, toUserFacingErrorMessage]);\n\n /** A ceremony the person started: counted while open, so a loading autofill steps aside for it. */\n const runPersonStartedPasskeyCeremony = useCallback(\n async (input: { sessionId?: string; factorLevel: UIFactorLevel }): Promise<AuthenticationResponse> => {\n personStartedPasskeyCeremoniesRef.current += 1;\n try {\n return await runPasskeyCeremony({ ...input, conditional: false });\n } finally {\n personStartedPasskeyCeremoniesRef.current -= 1;\n }\n },\n [runPasskeyCeremony],\n );\n\n const handlePasskeyAuth = useCallback(\n (sessionId: string, factorLevel: UIFactorLevel = 'first'): Promise<AuthenticationResponse> =>\n runPersonStartedPasskeyCeremony({ sessionId, factorLevel }),\n [runPersonStartedPasskeyCeremony],\n );\n\n const signInWithPasskey = useCallback(\n (mediation: PasskeySignInMediation = PasskeySignInMediation.MODAL): Promise<AuthenticationResponse> =>\n mediation === PasskeySignInMediation.CONDITIONAL\n ? runPasskeyCeremony({ factorLevel: 'first', conditional: true })\n : runPersonStartedPasskeyCeremony({ factorLevel: 'first' }),\n [runPasskeyCeremony, runPersonStartedPasskeyCeremony],\n );\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 identificationGenerationRef.current += 1;\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 = toUserFacingErrorMessage(e);\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, toUserFacingErrorMessage]);\n\n /*\n * The ONE writer of the tab-scoped pending-MFA-session copy (#1068) — see\n * `pending-mfa-session-storage.frontend.utils.ts` for why the copy lives in `sessionStorage`.\n *\n * Driven by auth-state TRANSITIONS rather than by the ~six call sites that set `mfaSessionId`, so a path\n * added tomorrow is remembered without anyone remembering to remember it:\n * - a session that owes a second factor and has no token → remember it;\n * - that session going away (completion, identification restarting, logout) or a token arriving → forget.\n *\n * The ref makes \"going away\" a transition rather than a state. On a hard load the context starts empty\n * with nothing remembered in memory, and forgetting on that EMPTY state would erase the very entry the\n * enrollment gate is about to recover. Terminal acts that must forget even then (logout, a new\n * identification) forget explicitly.\n */\n const rememberedPendingMfaSessionIdRef = useRef<string | null>(null);\n useEffect(() => {\n const pendingSessionId = auth.mfaRequired && !auth.accessToken ? auth.mfaSessionId : null;\n if (pendingSessionId) {\n rememberPendingMfaSession({ sessionId: pendingSessionId, email: auth.identification?.email ?? '' });\n rememberedPendingMfaSessionIdRef.current = pendingSessionId;\n return;\n }\n if (rememberedPendingMfaSessionIdRef.current !== null || auth.accessToken) {\n forgetPendingMfaSession();\n rememberedPendingMfaSessionIdRef.current = null;\n }\n }, [auth.mfaRequired, auth.mfaSessionId, auth.accessToken, auth.identification?.email]);\n\n const logout = useCallback((): void => {\n logDebug('Logging out user');\n identificationGenerationRef.current += 1;\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 // Explicit, not left to the transition effect: after a hard load nothing is remembered in memory, so\n // the effect would not see a session going away — and a signed-out tab must not recover one (#1068).\n forgetPendingMfaSession();\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 identificationGenerationRef.current += 1;\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 registerAccount,\n\n // Magic link verification\n handleMagicLinkVerify,\n\n // MFA verification\n handleMfaVerify,\n completeEnrollmentSession,\n adoptPendingMfaSession,\n completeOrganizationOnboarding,\n completeProfileOnboarding,\n abandonOrganizationOnboarding,\n handlePasskeyAuth,\n signInWithPasskey,\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 registerAccount,\n handleMagicLinkVerify,\n handleMfaVerify,\n completeEnrollmentSession,\n adoptPendingMfaSession,\n completeOrganizationOnboarding,\n completeProfileOnboarding,\n abandonOrganizationOnboarding,\n handlePasskeyAuth,\n signInWithPasskey,\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"]}
|
|
@@ -9,6 +9,8 @@
|
|
|
9
9
|
* On success, the interceptor retries the original request with the new X-Reauth-Token header.
|
|
10
10
|
*/
|
|
11
11
|
import React, { ReactNode } from 'react';
|
|
12
|
+
import { ReAuthenticationPurpose } from '@wildo-ai/saas-models';
|
|
13
|
+
import { type StepUpProof } from '../../components/auth/StepUpAuthDialog';
|
|
12
14
|
export interface StepUpAuthContextType {
|
|
13
15
|
isStepUpPending: boolean;
|
|
14
16
|
}
|
|
@@ -16,4 +18,14 @@ export declare const StepUpAuthContext: React.Context<StepUpAuthContextType | un
|
|
|
16
18
|
export declare const StepUpAuthProvider: React.FC<{
|
|
17
19
|
children: ReactNode;
|
|
18
20
|
}>;
|
|
21
|
+
/**
|
|
22
|
+
* Turn what the person supplied into a single-use step-up token.
|
|
23
|
+
*
|
|
24
|
+
* A passkey takes two round trips because WebAuthn is challenge-response: fetch the server's
|
|
25
|
+
* challenge, have the authenticator sign it, then present the assertion. Password and TOTP are one. A
|
|
26
|
+
* linked identity runs its provider in a popup and redeems the code it returns (#1441).
|
|
27
|
+
*/
|
|
28
|
+
export declare function obtainStepUpToken(proof: StepUpProof, purpose?: ReAuthenticationPurpose, signal?: AbortSignal): Promise<{
|
|
29
|
+
reAuthToken: string;
|
|
30
|
+
}>;
|
|
19
31
|
//# sourceMappingURL=StepUpAuthContext.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepUpAuthContext.d.ts","sourceRoot":"","sources":["
|
|
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;AAC3G,OAAO,EAAc,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAK5E,OAAO,EAAoB,KAAK,WAAW,EAAE,MAAM,sDAAsD,CAAC;AAG1G,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,CAqGhE,CAAC;AAEF;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,uBAAyD,EAClE,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC,CAiBlC"}
|