@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
|
@@ -29,15 +29,18 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
|
|
|
29
29
|
* locale-bound copy, and freezing it into a framework component is how a missing
|
|
30
30
|
* translation becomes invisible.
|
|
31
31
|
*/
|
|
32
|
-
import { useCallback, useEffect, useMemo, useState } from 'react';
|
|
33
|
-
import { BUILTIN_PROVIDER_CAPABILITY } from '@wildo-ai/saas-models/public-runtime';
|
|
32
|
+
import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
33
|
+
import { BUILTIN_PROVIDER_CAPABILITY, layerProviderFilePickerConstraints } from '@wildo-ai/saas-models/public-runtime';
|
|
34
34
|
import { useApplication } from '../../core/runtime/useApplication.js';
|
|
35
|
+
import { getManualCallsHttpClient } from '../../core/requests/wildo-http-client-manual-calls.frontend.service.js';
|
|
35
36
|
import { ProviderComponentStatus, useProviderComponent, useProviderComponentChoices, } from '../../core/components-registry/useProviderComponent.frontend.hooks.js';
|
|
36
37
|
import { receiveProviderFileSelections, } from './provider-file-selection.frontend.utils.js';
|
|
37
38
|
const FILE_PICKER_CAPABILITY = BUILTIN_PROVIDER_CAPABILITY.FRONTEND_FILE_PICKER;
|
|
38
39
|
export function ProviderFilePickerHost(props) {
|
|
39
40
|
const { providerComponentRegistry, frontendProviderRegistry } = useApplication();
|
|
40
|
-
const
|
|
41
|
+
const allChoices = useProviderComponentChoices(FILE_PICKER_CAPABILITY);
|
|
42
|
+
const acceptedStorages = props.acceptedStorages;
|
|
43
|
+
const choices = useMemo(() => allChoices.filter((choice) => choice.fileStorage === undefined || (acceptedStorages?.includes(choice.fileStorage) ?? false)), [allChoices, acceptedStorages]);
|
|
41
44
|
const [chosen, setChosen] = useState(
|
|
42
45
|
// A single provider needs no chooser: presenting one option as a choice is
|
|
43
46
|
// a click that carries no information. Several is a genuine decision and is
|
|
@@ -60,6 +63,12 @@ export function ProviderFilePickerHost(props) {
|
|
|
60
63
|
return {};
|
|
61
64
|
return frontendProviderRegistry?.getProviderByRef(chosen)?.publicConfig ?? {};
|
|
62
65
|
}, [chosen, frontendProviderRegistry]);
|
|
66
|
+
// The chosen provider's half, laid under the field's own. Recomputed when the
|
|
67
|
+
// person picks a different vendor, which is the whole point: the two vendors
|
|
68
|
+
// may declare different limits and each picker must be told its own.
|
|
69
|
+
const fieldConstraints = props.constraints;
|
|
70
|
+
const multiple = props.multiple;
|
|
71
|
+
const constraints = useMemo(() => layerProviderFilePickerConstraints({ base: fieldConstraints, multiple, publicConfig }), [fieldConstraints, multiple, publicConfig]);
|
|
63
72
|
// Destructured, not read off `props` inside the callbacks: `props` is a fresh
|
|
64
73
|
// object every render, so depending on it would give both callbacks a new
|
|
65
74
|
// identity on every parent render — and a picker keying an effect on
|
|
@@ -85,6 +94,40 @@ export function ProviderFilePickerHost(props) {
|
|
|
85
94
|
onProviderFailure?.({ providerRef: chosen, error });
|
|
86
95
|
}, [chosen, onProviderFailure]);
|
|
87
96
|
const handleCancel = useCallback(() => onCancel?.(), [onCancel]);
|
|
97
|
+
/*
|
|
98
|
+
* A chosen provider whose picker can never mount — its component failed to load, or a
|
|
99
|
+
* `<script>` its provider declares did not (`SCRIPT_LOAD_FAILED`) — is a failure the
|
|
100
|
+
* surface must hear about. Rendering nothing and saying nothing would leave a person who
|
|
101
|
+
* clicked a provider looking at a control that silently ignores them; the registry's
|
|
102
|
+
* diagnostic reaches a developer's log, not the field. Reported ONCE per chosen provider:
|
|
103
|
+
* `onProviderFailure` may change identity on every parent render, and the registry never
|
|
104
|
+
* retries, so a second report would describe the same failure again.
|
|
105
|
+
*/
|
|
106
|
+
const reportedUnavailableRef = useRef(undefined);
|
|
107
|
+
useEffect(() => {
|
|
108
|
+
if (status !== ProviderComponentStatus.UNAVAILABLE || chosen === undefined) {
|
|
109
|
+
reportedUnavailableRef.current = undefined;
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
if (reportedUnavailableRef.current === chosen)
|
|
113
|
+
return;
|
|
114
|
+
reportedUnavailableRef.current = chosen;
|
|
115
|
+
onProviderFailure?.({
|
|
116
|
+
providerRef: chosen,
|
|
117
|
+
error: new Error(`Provider "${chosen}" cannot open its file picker: its component or a script it declares did not load. `
|
|
118
|
+
+ 'The provider component registry logged the cause.'),
|
|
119
|
+
});
|
|
120
|
+
}, [status, chosen, onProviderFailure]);
|
|
121
|
+
// The caller's own token for the chosen provider, from the one door that hands one out (#394 P4).
|
|
122
|
+
// Resolved lazily — a picker asks when it opens, never before — and `undefined` when nothing is
|
|
123
|
+
// connected, which the picker reports in its own words. Never read from `publicConfig`, which is
|
|
124
|
+
// served to every browser.
|
|
125
|
+
const getAccessToken = useCallback(async () => {
|
|
126
|
+
if (chosen === undefined)
|
|
127
|
+
return undefined;
|
|
128
|
+
const granted = await getManualCallsHttpClient().getProviderConnectionAccessToken(chosen);
|
|
129
|
+
return granted?.accessToken;
|
|
130
|
+
}, [chosen]);
|
|
88
131
|
if (choices.length === 0)
|
|
89
132
|
return null;
|
|
90
133
|
const chooser = props.renderChooser?.({ choices, chosen, choose: setChosen })
|
|
@@ -93,7 +136,7 @@ export function ProviderFilePickerHost(props) {
|
|
|
93
136
|
// not make the registry know any capability's props. The narrowing happens
|
|
94
137
|
// HERE, where the capability is known, and it is the only cast in the path.
|
|
95
138
|
const Picker = Component;
|
|
96
|
-
return (_jsxs(_Fragment, { children: [choices.length > 1 ? chooser : null, status === ProviderComponentStatus.READY && Picker !== null && chosen !== undefined ? (_jsx(Picker, { providerRef: chosen, publicConfig: publicConfig, constraints:
|
|
139
|
+
return (_jsxs(_Fragment, { children: [choices.length > 1 ? chooser : null, status === ProviderComponentStatus.READY && Picker !== null && chosen !== undefined ? (_jsx(Picker, { providerRef: chosen, publicConfig: publicConfig, constraints: constraints, getAccessToken: getAccessToken, onSelect: handleSelect, onCancel: handleCancel, onError: handleError })) : null] }));
|
|
97
140
|
}
|
|
98
141
|
function defaultChooser(input) {
|
|
99
142
|
return (_jsx("div", { role: "group", children: input.choices.map((choice) => (_jsx("button", { type: "button", "aria-pressed": choice.providerRef === input.chosen, onClick: () => input.choose(choice.providerRef), children: choice.displayName ?? choice.providerRef }, choice.providerRef))) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProviderFilePickerHost.js","sourceRoot":"","sources":["../../../../src/core/external-providers/ProviderFilePickerHost.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * The framework side of a provider file picker: choose a provider, load its\n * component on demand, mount it, and hold whatever it returns to the contract\n * it declared.\n *\n * This is the seam issue #380 exists to create. Before it, a provider could not\n * contribute a component at all, and resolution beside the registry was\n * first-match — so a Drive picker and a Dropbox picker could not coexist for one\n * field, and which one won depended on map order.\n *\n * ## What this component decides and what it deliberately does not\n *\n * It decides NOTHING about which provider is right. `useProviderComponentChoices`\n * returns every live provider that carries a picker, in a stable order, and this\n * host renders them for a person to choose between. A framework that picked one\n * would be making a product decision in a lookup table, which is the defect the\n * registry was rebuilt to remove.\n *\n * It also does not interpret a selection. Routing a `REMOTE_REFERENCE` to the\n * application's executor door, or uploading a `BROWSER_READABLE_FILE`, is the\n * FIELD's job — this host hands up an outcome that is already checked against\n * the provider's declaration, so the field can branch on a `kind` it can trust.\n *\n * ## Chrome\n *\n * There is none beyond a list of buttons and the mounted component. Every label\n * is an i18n KEY resolved by the caller: a provider's display name is\n * locale-bound copy, and freezing it into a framework component is how a missing\n * translation becomes invisible.\n */\n\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport type { ProviderCapability } from '@wildo-ai/saas-models';\nimport { BUILTIN_PROVIDER_CAPABILITY } from '@wildo-ai/saas-models/public-runtime';\nimport type {\n ProviderFilePickerConstraints,\n ProviderFilePickerProps,\n ProviderFileSelection,\n} from '@wildo-ai/external-connectors-public/app';\nimport { useApplication } from '~wildo-frontend-lib/core/runtime/useApplication';\nimport {\n ProviderComponentStatus,\n useProviderComponent,\n useProviderComponentChoices,\n type ProviderComponentChoice,\n} from '~wildo-frontend-lib/core/components-registry/useProviderComponent.frontend.hooks';\nimport {\n receiveProviderFileSelections,\n type ProviderFileSelectionRejection,\n} from './provider-file-selection.frontend.utils';\n\nconst FILE_PICKER_CAPABILITY = BUILTIN_PROVIDER_CAPABILITY.FRONTEND_FILE_PICKER as ProviderCapability;\n\nexport interface ProviderFilePickerHostProps {\n readonly constraints: ProviderFilePickerConstraints;\n /**\n * Called with selections that have already been checked against the chosen\n * provider's declaration, so every `kind` here is the one that provider said\n * it would produce.\n */\n onSelect(providerRef: string, selections: readonly ProviderFileSelection[]): void;\n onCancel?(): void;\n /**\n * A provider's picker failed, or contradicted its own declaration. Both reach\n * here because both mean the same thing to a user — this picker did not work —\n * while the distinction that matters to a developer is in the rejection.\n */\n onProviderFailure?(failure: { readonly providerRef: string; readonly error?: Error; readonly rejections?: readonly ProviderFileSelectionRejection[] }): void;\n /**\n * Renders the chooser. Supplied by the caller, because a chooser is chrome and\n * this package's components are injected rather than hard-coded. The default\n * below is plain buttons: enough to be usable, not enough to be a design.\n */\n renderChooser?(input: {\n readonly choices: readonly ProviderComponentChoice[];\n readonly chosen: string | undefined;\n choose(providerRef: string): void;\n }): React.ReactNode;\n}\n\nexport function ProviderFilePickerHost(props: ProviderFilePickerHostProps): React.ReactElement | null {\n const { providerComponentRegistry, frontendProviderRegistry } = useApplication();\n const choices = useProviderComponentChoices(FILE_PICKER_CAPABILITY);\n const [chosen, setChosen] = useState<string | undefined>(\n // A single provider needs no chooser: presenting one option as a choice is\n // a click that carries no information. Several is a genuine decision and is\n // never made here.\n () => (choices.length === 1 ? choices[0]?.providerRef : undefined),\n );\n\n const soleProviderRef = choices.length === 1 ? choices[0]?.providerRef : undefined;\n useEffect(() => {\n // The initializer above runs ONCE. In today's runtime that is enough — the\n // registry is populated before application services are handed out and the\n // context gates children on them — but a host whose only correctness\n // argument lives in another file's ordering is one refactor from rendering\n // nothing at all: with a single late-arriving provider there would be no\n // chooser (length is 1) and no picker (nothing chosen).\n if (soleProviderRef !== undefined && chosen === undefined) setChosen(soleProviderRef);\n }, [soleProviderRef, chosen]);\n const { status, Component } = useProviderComponent(FILE_PICKER_CAPABILITY, chosen);\n\n const publicConfig = useMemo(() => {\n if (chosen === undefined) return {};\n return frontendProviderRegistry?.getProviderByRef(chosen as never)?.publicConfig ?? {};\n }, [chosen, frontendProviderRegistry]);\n\n // Destructured, not read off `props` inside the callbacks: `props` is a fresh\n // object every render, so depending on it would give both callbacks a new\n // identity on every parent render — and a picker keying an effect on\n // `onSelect` would then re-run its whole open sequence each time.\n const { onSelect, onCancel, onProviderFailure } = props;\n\n const handleSelect = useCallback(\n (selections: readonly ProviderFileSelection[]) => {\n if (chosen === undefined) return;\n\n const outcome = receiveProviderFileSelections({\n providerRef: chosen,\n descriptor: providerComponentRegistry?.describe(FILE_PICKER_CAPABILITY, chosen),\n selections,\n });\n\n if (outcome.rejections.length > 0) {\n onProviderFailure?.({ providerRef: chosen, rejections: outcome.rejections });\n return;\n }\n\n onSelect(chosen, outcome.accepted);\n },\n [chosen, providerComponentRegistry, onSelect, onProviderFailure],\n );\n\n const handleError = useCallback(\n (error: Error) => {\n if (chosen === undefined) return;\n onProviderFailure?.({ providerRef: chosen, error });\n },\n [chosen, onProviderFailure],\n );\n\n const handleCancel = useCallback(() => onCancel?.(), [onCancel]);\n\n if (choices.length === 0) return null;\n\n const chooser = props.renderChooser?.({ choices, chosen, choose: setChosen })\n ?? defaultChooser({ choices, chosen, choose: setChosen });\n\n // `Component` is typed as the registry's opaque component: this package must\n // not make the registry know any capability's props. The narrowing happens\n // HERE, where the capability is known, and it is the only cast in the path.\n const Picker = Component as React.ComponentType<ProviderFilePickerProps> | null;\n\n return (\n <>\n {choices.length > 1 ? chooser : null}\n {status === ProviderComponentStatus.READY && Picker !== null && chosen !== undefined ? (\n <Picker\n providerRef={chosen}\n publicConfig={publicConfig}\n constraints={props.constraints}\n onSelect={handleSelect}\n onCancel={handleCancel}\n onError={handleError}\n />\n ) : null}\n </>\n );\n}\n\nfunction defaultChooser(input: {\n readonly choices: readonly ProviderComponentChoice[];\n readonly chosen: string | undefined;\n choose(providerRef: string): void;\n}): React.ReactNode {\n return (\n <div role=\"group\">\n {input.choices.map((choice) => (\n <button\n key={choice.providerRef}\n type=\"button\"\n aria-pressed={choice.providerRef === input.chosen}\n onClick={() => input.choose(choice.providerRef)}\n >\n {/* The authored fallback, NOT a translation — a surface that has an\n i18n service should pass `renderChooser` and resolve the key. */}\n {choice.displayName ?? choice.providerRef}\n </button>\n ))}\n </div>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ProviderFilePickerHost.js","sourceRoot":"","sources":["../../../../../src/core/external-providers/ProviderFilePickerHost.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * The framework side of a provider file picker: choose a provider, load its\n * component on demand, mount it, and hold whatever it returns to the contract\n * it declared.\n *\n * This is the seam issue #380 exists to create. Before it, a provider could not\n * contribute a component at all, and resolution beside the registry was\n * first-match — so a Drive picker and a Dropbox picker could not coexist for one\n * field, and which one won depended on map order.\n *\n * ## What this component decides and what it deliberately does not\n *\n * It decides NOTHING about which provider is right. `useProviderComponentChoices`\n * returns every live provider that carries a picker, in a stable order, and this\n * host renders them for a person to choose between. A framework that picked one\n * would be making a product decision in a lookup table, which is the defect the\n * registry was rebuilt to remove.\n *\n * It also does not interpret a selection. Routing a `REMOTE_REFERENCE` to the\n * application's executor door, or uploading a `BROWSER_READABLE_FILE`, is the\n * FIELD's job — this host hands up an outcome that is already checked against\n * the provider's declaration, so the field can branch on a `kind` it can trust.\n *\n * ## Chrome\n *\n * There is none beyond a list of buttons and the mounted component. Every label\n * is an i18n KEY resolved by the caller: a provider's display name is\n * locale-bound copy, and freezing it into a framework component is how a missing\n * translation becomes invisible.\n */\n\nimport React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport type { ProviderCapability } from '@wildo-ai/saas-models';\nimport { BUILTIN_PROVIDER_CAPABILITY, layerProviderFilePickerConstraints } from '@wildo-ai/saas-models/public-runtime';\nimport type { FileStorageAccepted } from '@wildo-ai/saas-models/public-runtime';\nimport type {\n ProviderFilePickerConstraints,\n ProviderFilePickerProps,\n ProviderFileSelection,\n} from '@wildo-ai/saas-models/public-runtime';\nimport { useApplication } from '~wildo-frontend-lib/core/runtime/useApplication';\nimport { getManualCallsHttpClient } from '~wildo-frontend-lib/core/requests/wildo-http-client-manual-calls.frontend.service';\nimport {\n ProviderComponentStatus,\n useProviderComponent,\n useProviderComponentChoices,\n type ProviderComponentChoice,\n} from '~wildo-frontend-lib/core/components-registry/useProviderComponent.frontend.hooks';\nimport {\n receiveProviderFileSelections,\n type ProviderFileSelectionRejection,\n} from './provider-file-selection.frontend.utils';\n\nconst FILE_PICKER_CAPABILITY = BUILTIN_PROVIDER_CAPABILITY.FRONTEND_FILE_PICKER as ProviderCapability;\n\nexport interface ProviderFilePickerHostProps {\n /**\n * The FIELD's own constraints, read from its Zod metadata. The chosen\n * provider's declared limits are laid UNDER these, here, per provider — never\n * resolved once by the caller, which is how one vendor's limit came to govern\n * every other vendor's picker (#380).\n */\n readonly constraints: ProviderFilePickerConstraints;\n /**\n * Whether the field accepts several files. A `maxSelectionCount` a provider\n * declares applies only to a `multiple` field; a single-file field never\n * inherits a selection count, whatever the vendor allows.\n */\n readonly multiple: boolean;\n /**\n * The field's `z_file({ storageAccepted })` (#394 P5). A provider whose picker\n * fronts a storage (a `REMOTE_REFERENCE` picker — the file stays at the\n * vendor) is offered only when this names that storage, because the link it\n * produces lands in that storage and the backend refuses it otherwise. A\n * provider declaring no storage delivers bytes into the field's own storage\n * and is offered regardless. Undefined — the field declared nothing — accepts\n * no vendor storage: the default storage is the framework's.\n */\n readonly acceptedStorages?: ReadonlyArray<FileStorageAccepted>;\n /**\n * Called with selections that have already been checked against the chosen\n * provider's declaration, so every `kind` here is the one that provider said\n * it would produce.\n */\n onSelect(providerRef: string, selections: readonly ProviderFileSelection[]): void;\n onCancel?(): void;\n /**\n * A provider's picker failed, or contradicted its own declaration. Both reach\n * here because both mean the same thing to a user — this picker did not work —\n * while the distinction that matters to a developer is in the rejection.\n */\n onProviderFailure?(failure: { readonly providerRef: string; readonly error?: Error; readonly rejections?: readonly ProviderFileSelectionRejection[] }): void;\n /**\n * Renders the chooser. Supplied by the caller, because a chooser is chrome and\n * this package's components are injected rather than hard-coded. The default\n * below is plain buttons: enough to be usable, not enough to be a design.\n */\n renderChooser?(input: {\n readonly choices: readonly ProviderComponentChoice[];\n readonly chosen: string | undefined;\n choose(providerRef: string): void;\n }): React.ReactNode;\n}\n\nexport function ProviderFilePickerHost(props: ProviderFilePickerHostProps): React.ReactElement | null {\n const { providerComponentRegistry, frontendProviderRegistry } = useApplication();\n const allChoices = useProviderComponentChoices(FILE_PICKER_CAPABILITY);\n const acceptedStorages = props.acceptedStorages;\n const choices = useMemo(\n () => allChoices.filter((choice) => choice.fileStorage === undefined || (acceptedStorages?.includes(choice.fileStorage) ?? false)),\n [allChoices, acceptedStorages],\n );\n const [chosen, setChosen] = useState<string | undefined>(\n // A single provider needs no chooser: presenting one option as a choice is\n // a click that carries no information. Several is a genuine decision and is\n // never made here.\n () => (choices.length === 1 ? choices[0]?.providerRef : undefined),\n );\n\n const soleProviderRef = choices.length === 1 ? choices[0]?.providerRef : undefined;\n useEffect(() => {\n // The initializer above runs ONCE. In today's runtime that is enough — the\n // registry is populated before application services are handed out and the\n // context gates children on them — but a host whose only correctness\n // argument lives in another file's ordering is one refactor from rendering\n // nothing at all: with a single late-arriving provider there would be no\n // chooser (length is 1) and no picker (nothing chosen).\n if (soleProviderRef !== undefined && chosen === undefined) setChosen(soleProviderRef);\n }, [soleProviderRef, chosen]);\n const { status, Component } = useProviderComponent(FILE_PICKER_CAPABILITY, chosen);\n\n const publicConfig = useMemo(() => {\n if (chosen === undefined) return {};\n return frontendProviderRegistry?.getProviderByRef(chosen as never)?.publicConfig ?? {};\n }, [chosen, frontendProviderRegistry]);\n\n // The chosen provider's half, laid under the field's own. Recomputed when the\n // person picks a different vendor, which is the whole point: the two vendors\n // may declare different limits and each picker must be told its own.\n const fieldConstraints = props.constraints;\n const multiple = props.multiple;\n const constraints = useMemo(\n () => layerProviderFilePickerConstraints({ base: fieldConstraints, multiple, publicConfig }),\n [fieldConstraints, multiple, publicConfig],\n );\n\n // Destructured, not read off `props` inside the callbacks: `props` is a fresh\n // object every render, so depending on it would give both callbacks a new\n // identity on every parent render — and a picker keying an effect on\n // `onSelect` would then re-run its whole open sequence each time.\n const { onSelect, onCancel, onProviderFailure } = props;\n\n const handleSelect = useCallback(\n (selections: readonly ProviderFileSelection[]) => {\n if (chosen === undefined) return;\n\n const outcome = receiveProviderFileSelections({\n providerRef: chosen,\n descriptor: providerComponentRegistry?.describe(FILE_PICKER_CAPABILITY, chosen),\n selections,\n });\n\n if (outcome.rejections.length > 0) {\n onProviderFailure?.({ providerRef: chosen, rejections: outcome.rejections });\n return;\n }\n\n onSelect(chosen, outcome.accepted);\n },\n [chosen, providerComponentRegistry, onSelect, onProviderFailure],\n );\n\n const handleError = useCallback(\n (error: Error) => {\n if (chosen === undefined) return;\n onProviderFailure?.({ providerRef: chosen, error });\n },\n [chosen, onProviderFailure],\n );\n\n const handleCancel = useCallback(() => onCancel?.(), [onCancel]);\n\n /*\n * A chosen provider whose picker can never mount — its component failed to load, or a\n * `<script>` its provider declares did not (`SCRIPT_LOAD_FAILED`) — is a failure the\n * surface must hear about. Rendering nothing and saying nothing would leave a person who\n * clicked a provider looking at a control that silently ignores them; the registry's\n * diagnostic reaches a developer's log, not the field. Reported ONCE per chosen provider:\n * `onProviderFailure` may change identity on every parent render, and the registry never\n * retries, so a second report would describe the same failure again.\n */\n const reportedUnavailableRef = useRef<string | undefined>(undefined);\n useEffect(() => {\n if (status !== ProviderComponentStatus.UNAVAILABLE || chosen === undefined) {\n reportedUnavailableRef.current = undefined;\n return;\n }\n if (reportedUnavailableRef.current === chosen) return;\n reportedUnavailableRef.current = chosen;\n onProviderFailure?.({\n providerRef: chosen,\n error: new Error(\n `Provider \"${chosen}\" cannot open its file picker: its component or a script it declares did not load. `\n + 'The provider component registry logged the cause.',\n ),\n });\n }, [status, chosen, onProviderFailure]);\n\n // The caller's own token for the chosen provider, from the one door that hands one out (#394 P4).\n // Resolved lazily — a picker asks when it opens, never before — and `undefined` when nothing is\n // connected, which the picker reports in its own words. Never read from `publicConfig`, which is\n // served to every browser.\n const getAccessToken = useCallback(async (): Promise<string | undefined> => {\n if (chosen === undefined) return undefined;\n const granted = await getManualCallsHttpClient().getProviderConnectionAccessToken(chosen);\n return granted?.accessToken;\n }, [chosen]);\n\n if (choices.length === 0) return null;\n\n const chooser = props.renderChooser?.({ choices, chosen, choose: setChosen })\n ?? defaultChooser({ choices, chosen, choose: setChosen });\n\n // `Component` is typed as the registry's opaque component: this package must\n // not make the registry know any capability's props. The narrowing happens\n // HERE, where the capability is known, and it is the only cast in the path.\n const Picker = Component as React.ComponentType<ProviderFilePickerProps> | null;\n\n return (\n <>\n {choices.length > 1 ? chooser : null}\n {status === ProviderComponentStatus.READY && Picker !== null && chosen !== undefined ? (\n <Picker\n providerRef={chosen}\n publicConfig={publicConfig}\n constraints={constraints}\n getAccessToken={getAccessToken}\n onSelect={handleSelect}\n onCancel={handleCancel}\n onError={handleError}\n />\n ) : null}\n </>\n );\n}\n\nfunction defaultChooser(input: {\n readonly choices: readonly ProviderComponentChoice[];\n readonly chosen: string | undefined;\n choose(providerRef: string): void;\n}): React.ReactNode {\n return (\n <div role=\"group\">\n {input.choices.map((choice) => (\n <button\n key={choice.providerRef}\n type=\"button\"\n aria-pressed={choice.providerRef === input.chosen}\n onClick={() => input.choose(choice.providerRef)}\n >\n {/* The authored fallback, NOT a translation — a surface that has an\n i18n service should pass `renderChooser` and resolve the key. */}\n {choice.displayName ?? choice.providerRef}\n </button>\n ))}\n </div>\n );\n}\n"]}
|
package/dist/esm/core/external-providers/frontend-provider-display-label.frontend.utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend-provider-display-label.frontend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"frontend-provider-display-label.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/core/external-providers/frontend-provider-display-label.frontend.utils.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,iCAAiC;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;CACrC;AAED;;;;;;GAMG;AACH,wBAAgB,uCAAuC,CACrD,SAAS,EAAE,aAAa,CAAC,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,GAClD,MAAM,EAAE,CASV;AAED;;;;;;;;;GASG;AACH,wBAAgB,mCAAmC,CACjD,KAAK,EAAE,iCAAiC,GACvC,MAAM,CASR"}
|
package/dist/esm/core/external-providers/frontend-provider-display-label.frontend.utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend-provider-display-label.frontend.utils.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"frontend-provider-display-label.frontend.utils.js","sourceRoot":"","sources":["../../../../../src/core/external-providers/frontend-provider-display-label.frontend.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,sCAAsC,CAAC;AAcxF;;;;;;GAMG;AACH,MAAM,UAAU,uCAAuC,CACrD,SAAmD;IAEnD,OAAO,KAAK,CAAC,IAAI,CACf,IAAI,GAAG,CACL,SAAS,CAAC,MAAM,CACd,CAAC,QAAQ,EAAsB,EAAE,CAC/B,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CACtD,CACF,CACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,mCAAmC,CACjD,KAAwC;IAExC,MAAM,QAAQ,GAAG,KAAK,CAAC,mBAAmB,IAAI,gCAAgC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAClG,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,CAAC;IAE/C,IAAI,UAAU,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC1C,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,OAAO,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,WAAW,CAAC;AACvE,CAAC","sourcesContent":["import { buildProviderDisplayNameLabelKey } from '@wildo-ai/saas-models/public-runtime';\n\nexport interface FrontendProviderDisplayLabelInput {\n providerRef: string;\n displayName?: string;\n displayNameLabelKey?: string;\n /**\n * Optional explicit fallback when the caller wants a non-ref technical\n * fallback (for example a brand label sourced from a static map).\n */\n fallbackLabel?: string;\n translate?: (key: string) => string;\n}\n\n/**\n * Collect unique, non-empty provider display-label keys for `useI18n({ keys })`.\n *\n * The helper intentionally stays tiny and framework-agnostic: call sites can\n * build whatever provider view-model they need, then hand only the optional\n * label keys here to get the deduped request list.\n */\nexport function collectFrontendProviderDisplayLabelKeys(\n labelKeys: ReadonlyArray<string | undefined | null>,\n): string[] {\n return Array.from(\n new Set(\n labelKeys.filter(\n (labelKey): labelKey is string =>\n typeof labelKey === 'string' && labelKey.length > 0,\n ),\n ),\n );\n}\n\n/**\n * Resolve a user-facing provider label without freezing locale-bound copy into\n * provider metadata or generated artifacts.\n *\n * Order of preference:\n * 1. Translation resolved from the provider label key.\n * 2. Authored display name on the provider metadata.\n * 3. Optional caller-supplied fallback label.\n * 4. Raw provider ref as the technical last resort.\n */\nexport function resolveFrontendProviderDisplayLabel(\n input: FrontendProviderDisplayLabelInput,\n): string {\n const labelKey = input.displayNameLabelKey ?? buildProviderDisplayNameLabelKey(input.providerRef);\n const translated = input.translate?.(labelKey);\n\n if (translated && translated !== labelKey) {\n return translated;\n }\n\n return input.displayName ?? input.fallbackLabel ?? input.providerRef;\n}\n"]}
|
|
@@ -28,8 +28,7 @@ import type { FrontendAppProviderModule, FrontendAppProviderRef, FrontendProvide
|
|
|
28
28
|
* Everything the registry needs to join the two channels.
|
|
29
29
|
*
|
|
30
30
|
* `modules` absent is the ordinary case for an application that declares no
|
|
31
|
-
*
|
|
32
|
-
* file, so there is nothing to import and nothing to pass.
|
|
31
|
+
* frontend provider. Config sync emits an empty map so startup imports remain stable.
|
|
33
32
|
*/
|
|
34
33
|
export interface FrontendProviderRegistryHydrationInput {
|
|
35
34
|
readonly entries?: FrontendProvidersBlock;
|
package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend-provider-registry.frontend.service.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"frontend-provider-registry.frontend.service.d.ts","sourceRoot":"","sources":["../../../../../src/core/external-providers/frontend-provider-registry.frontend.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EACV,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAK7E,OAAO,KAAK,EACV,yBAAyB,EACzB,sBAAsB,EACtB,mCAAmC,EACnC,2BAA2B,EAC5B,MAAM,0CAA0C,CAAC;AAElD;;;;;GAKG;AACH,MAAM,WAAW,sCAAsC;IACrD,QAAQ,CAAC,OAAO,CAAC,EAAE,sBAAsB,CAAC;IAC1C,QAAQ,CAAC,OAAO,CAAC,EAAE,2BAA2B,CAAC;IAC/C,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,mCAAmC,KAAK,IAAI,CAAC;CACnF;AAED,MAAM,WAAW,uCAAuC;IACtD,gEAAgE;IAChE,gBAAgB,CAAC,GAAG,EAAE,sBAAsB,GAAG,yBAAyB,GAAG,SAAS,CAAC;IAErF,wBAAwB,CACtB,kBAAkB,EAAE,kBAAkB,GACrC,aAAa,CAAC,yBAAyB,CAAC,CAAC;IAE5C,wBAAwB,CACtB,kBAAkB,EAAE,kBAAkB,GACrC,yBAAyB,GAAG,SAAS,CAAC;IAEzC,mCAAmC,CACjC,kBAAkB,EAAE,kBAAkB,EACtC,gBAAgB,EAAE,gBAAgB,GAAG,MAAM,GAC1C,yBAAyB,GAAG,SAAS,CAAC;IAEzC,iEAAiE;IACjE,OAAO,IAAI,aAAa,CAAC,yBAAyB,CAAC,CAAC;CACrD;AAED,qBAAa,+CACX,YAAW,uCAAuC;IAElD,OAAO,CAAC,QAAQ,CAEb;IAEH,UAAU,CAAC,KAAK,CAAC,EAAE,sCAAsC,GAAG,IAAI;IAQhE,gBAAgB,CACd,GAAG,EAAE,sBAAsB,GAC1B,yBAAyB,GAAG,SAAS;IAIxC,wBAAwB,CACtB,kBAAkB,EAAE,kBAAkB,GACrC,aAAa,CAAC,yBAAyB,CAAC;IAI3C,wBAAwB,CACtB,kBAAkB,EAAE,kBAAkB,GACrC,yBAAyB,GAAG,SAAS;IAIxC,mCAAmC,CACjC,kBAAkB,EAAE,kBAAkB,EACtC,gBAAgB,EAAE,gBAAgB,GAAG,MAAM,GAC1C,yBAAyB,GAAG,SAAS;IAQxC,OAAO,IAAI,aAAa,CAAC,yBAAyB,CAAC;CAGpD;AAED,wBAAgB,6CAA6C,CAC3D,KAAK,CAAC,EAAE,sCAAsC,GAC7C,uCAAuC,CAIzC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend-provider-registry.frontend.service.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"frontend-provider-registry.frontend.service.js","sourceRoot":"","sources":["../../../../../src/core/external-providers/frontend-provider-registry.frontend.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAOH,OAAO,EACL,2BAA2B,EAC3B,mCAAmC,GACpC,MAAM,0CAA0C,CAAC;AAyClD,MAAM,OAAO,+CAA+C;IAGlD,QAAQ,GAAG,2BAA2B,CAAC;QAC7C,OAAO,EAAE,IAAI,GAAG,EAAqD;KACtE,CAAC,CAAC;IAEH,UAAU,CAAC,KAA8C;QACvD,IAAI,CAAC,QAAQ,GAAG,mCAAmC,CAAC;YAClD,OAAO,EAAE,KAAK,EAAE,OAAO;YACvB,OAAO,EAAE,KAAK,EAAE,OAAO;YACvB,YAAY,EAAE,KAAK,EAAE,YAAY;SAClC,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB,CACd,GAA2B;QAE3B,OAAO,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC7C,CAAC;IAED,wBAAwB,CACtB,kBAAsC;QAEtC,OAAO,IAAI,CAAC,QAAQ,CAAC,gCAAgC,CAAC,kBAAkB,CAAC,CAAC;IAC5E,CAAC;IAED,wBAAwB,CACtB,kBAAsC;QAEtC,OAAO,IAAI,CAAC,QAAQ,CAAC,gCAAgC,CAAC,kBAAkB,CAAC,CAAC;IAC5E,CAAC;IAED,mCAAmC,CACjC,kBAAsC,EACtC,gBAA2C;QAE3C,OAAO,IAAI,CAAC,QAAQ;aACjB,gCAAgC,CAAC,kBAAkB,CAAC;aACpD,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CACjB,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,KAAK,gBAAgB,CAAC,CACrE,CAAC;IACN,CAAC;IAED,OAAO;QACL,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7C,CAAC;CACF;AAED,MAAM,UAAU,6CAA6C,CAC3D,KAA8C;IAE9C,MAAM,OAAO,GAAG,IAAI,+CAA+C,EAAE,CAAC;IACtE,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC1B,OAAO,OAAO,CAAC;AACjB,CAAC","sourcesContent":["/**\n * `FrontendProviderRegistryFrontendService` — frontend-side API for\n * reading the per-app provider catalog.\n *\n * The registry is built from TWO channels and no longer from a cast (#332):\n *\n * - **DATA** — `FrontendAppBootstrapPayload.frontendProviders`, hydrated\n * once at app start from `/application-config`. Built by\n * `FrontendBootstrapBackendService.buildPayload()`, which is the SOLE\n * cross-facet seam where backend code projects a `BackendProviderModule`\n * into a `FrontendProviderEntry`. It is the authority on WHICH providers\n * this frontend service has turned on, in this environment.\n * - **CODE** — `generatedFrontendProviderModules` from the app's own\n * `src/generated/frontend-providers.generated.ts`, written by\n * `wildo config sync` and passed in through `StartApplicationOptions`. It\n * is the authority on what code this bundle contains — an SDK loader, a\n * public-config validator — none of which JSON could ever carry.\n *\n * From the frontend's perspective this service is still the only legal way to\n * read provider information — direct imports from\n * `@wildo-ai/external-connectors-private/*` are a TypeScript error because the\n * frontend bundle does not depend on that package.\n */\n\nimport type {\n FrontendProvidersBlock,\n ProviderCapability,\n} from '@wildo-ai/saas-models';\nimport type { ProviderProtocol } from '@wildo-ai/saas-models/public-runtime';\nimport {\n composeFrontendAppProviders,\n composeHydratedFrontendAppProviders,\n} from '@wildo-ai/external-connectors-public/app';\nimport type {\n FrontendAppProviderModule,\n FrontendAppProviderRef,\n FrontendProviderHydrationDiagnostic,\n GeneratedAppProviderModules,\n} from '@wildo-ai/external-connectors-public/app';\n\n/**\n * Everything the registry needs to join the two channels.\n *\n * `modules` absent is the ordinary case for an application that declares no\n * frontend provider. Config sync emits an empty map so startup imports remain stable.\n */\nexport interface FrontendProviderRegistryHydrationInput {\n readonly entries?: FrontendProvidersBlock;\n readonly modules?: GeneratedAppProviderModules;\n readonly onDiagnostic?: (diagnostic: FrontendProviderHydrationDiagnostic) => void;\n}\n\nexport interface FrontendProviderRegistryFrontendService {\n /** Hydrated from `FrontendAppBootstrapPayload` at app start. */\n getProviderByRef(ref: FrontendAppProviderRef): FrontendAppProviderModule | undefined;\n\n listByProviderCapability(\n providerCapability: ProviderCapability,\n ): ReadonlyArray<FrontendAppProviderModule>;\n\n findByProviderCapability(\n providerCapability: ProviderCapability,\n ): FrontendAppProviderModule | undefined;\n\n findByProviderCapabilityAndProtocol(\n providerCapability: ProviderCapability,\n providerProtocol: ProviderProtocol | string,\n ): FrontendAppProviderModule | undefined;\n\n /** All providers (read-only). For debug / introspection only. */\n listAll(): ReadonlyArray<FrontendAppProviderModule>;\n}\n\nexport class InMemoryFrontendProviderRegistryFrontendService\n implements FrontendProviderRegistryFrontendService\n{\n private registry = composeFrontendAppProviders({\n modules: new Map<FrontendAppProviderRef, FrontendAppProviderModule>(),\n });\n\n initialize(input?: FrontendProviderRegistryHydrationInput): void {\n this.registry = composeHydratedFrontendAppProviders({\n entries: input?.entries,\n modules: input?.modules,\n onDiagnostic: input?.onDiagnostic,\n });\n }\n\n getProviderByRef(\n ref: FrontendAppProviderRef,\n ): FrontendAppProviderModule | undefined {\n return this.registry.getProviderByRef(ref);\n }\n\n listByProviderCapability(\n providerCapability: ProviderCapability,\n ): ReadonlyArray<FrontendAppProviderModule> {\n return this.registry.getProvidersByProviderCapability(providerCapability);\n }\n\n findByProviderCapability(\n providerCapability: ProviderCapability,\n ): FrontendAppProviderModule | undefined {\n return this.registry.findProviderByProviderCapability(providerCapability);\n }\n\n findByProviderCapabilityAndProtocol(\n providerCapability: ProviderCapability,\n providerProtocol: ProviderProtocol | string,\n ): FrontendAppProviderModule | undefined {\n return this.registry\n .getProvidersByProviderCapability(providerCapability)\n .find((provider) =>\n provider.protocols.some((protocol) => protocol === providerProtocol),\n );\n }\n\n listAll(): ReadonlyArray<FrontendAppProviderModule> {\n return [...this.registry.modules.values()];\n }\n}\n\nexport function createFrontendProviderRegistryFrontendService(\n input?: FrontendProviderRegistryHydrationInput,\n): FrontendProviderRegistryFrontendService {\n const service = new InMemoryFrontendProviderRegistryFrontendService();\n service.initialize(input);\n return service;\n}\n"]}
|
|
@@ -51,8 +51,7 @@
|
|
|
51
51
|
* nothing in the log. A returned result lets the mounting surface show the user
|
|
52
52
|
* that the picker misbehaved and lets the diagnostic name the provider.
|
|
53
53
|
*/
|
|
54
|
-
import { ProviderFrontendSelectionDelivery, type ProviderFrontendComponentDescriptor } from '@wildo-ai/saas-models/public-runtime';
|
|
55
|
-
import type { ProviderFileSelection } from '@wildo-ai/external-connectors-public/app';
|
|
54
|
+
import { ProviderFrontendSelectionDelivery, type ProviderFileSelection, type ProviderFrontendComponentDescriptor } from '@wildo-ai/saas-models/public-runtime';
|
|
56
55
|
/** Why a selection a picker produced was not accepted. */
|
|
57
56
|
export declare enum ProviderFileSelectionRejectionKind {
|
|
58
57
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-file-selection.frontend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"provider-file-selection.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/core/external-providers/provider-file-selection.frontend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAEH,OAAO,EACL,iCAAiC,EACjC,KAAK,qBAAqB,EAC1B,KAAK,mCAAmC,EACzC,MAAM,sCAAsC,CAAC;AAE9C,0DAA0D;AAC1D,oBAAY,kCAAkC;IAC5C;;;;;OAKG;IACH,6BAA6B,kCAAkC;IAC/D;;;;;OAKG;IACH,gCAAgC,qCAAqC;CACtE;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,IAAI,EAAE,kCAAkC,CAAC;IAClD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,QAAQ,CAAC,QAAQ,CAAC,EAAE,iCAAiC,CAAC;IACtD,yEAAyE;IACzE,QAAQ,CAAC,QAAQ,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAC;CACnD;AAED,MAAM,WAAW,4BAA4B;IAC3C,2FAA2F;IAC3F,QAAQ,CAAC,QAAQ,EAAE,SAAS,qBAAqB,EAAE,CAAC;IACpD,QAAQ,CAAC,UAAU,EAAE,SAAS,8BAA8B,EAAE,CAAC;CAChE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACnD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,mCAAmC,GAAG,SAAS,CAAC;IACrE,QAAQ,CAAC,UAAU,EAAE,SAAS,qBAAqB,EAAE,CAAC;CACvD,GAAG,4BAA4B,CAqC/B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-file-selection.frontend.utils.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"provider-file-selection.frontend.utils.js","sourceRoot":"","sources":["../../../../../src/core/external-providers/provider-file-selection.frontend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAQH,0DAA0D;AAC1D,MAAM,CAAN,IAAY,kCAeX;AAfD,WAAY,kCAAkC;IAC5C;;;;;OAKG;IACH,qGAA+D,CAAA;IAC/D;;;;;OAKG;IACH,2GAAqE,CAAA;AACvE,CAAC,EAfW,kCAAkC,KAAlC,kCAAkC,QAe7C;AAkBD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,6BAA6B,CAAC,KAI7C;IACC,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,EAAE,iBAAiB,CAAC;IAErD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO;YACL,QAAQ,EAAE,EAAE;YACZ,UAAU,EAAE,CAAC;oBACX,IAAI,EAAE,kCAAkC,CAAC,6BAA6B;oBACtE,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC9B,OAAO,EACL,aAAa,KAAK,CAAC,WAAW,8CAA8C;0BAC1E,qFAAqF;0BACrF,wFAAwF;0BACxF,4FAA4F;iBACjG,CAAC;SACH,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAqC,EAAE,CAAC;IACxD,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QACzC,IAAI,SAAS,CAAC,IAAI,KAAK,QAAQ;YAAE,SAAS;QAC1C,UAAU,CAAC,IAAI,CAAC;YACd,IAAI,EAAE,kCAAkC,CAAC,gCAAgC;YACzE,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,QAAQ;YACR,QAAQ,EAAE,SAAS,CAAC,IAAI;YACxB,OAAO,EACL,aAAa,KAAK,CAAC,WAAW,wCAAwC,QAAQ,mBAAmB;kBAC/F,IAAI,SAAS,CAAC,IAAI,0EAA0E;kBAC5F,6FAA6F;kBAC7F,yEAAyE;SAC9E,CAAC,CAAC;IACL,CAAC;IAED,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC;QAC1B,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE;QAC9B,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;AACrD,CAAC","sourcesContent":["/**\n * Holding a provider's file picker to the selection contract it DECLARED.\n *\n * ## Why this exists at all\n *\n * Issue #383 (Q5) settled what \"an application calls a third party directly from\n * a custom frontend component\" means when the component is a file picker, and\n * the answer was **per vendor, declared**: a picker for a credentialed vendor\n * hands back an opaque remote reference the backend resolves, a picker running\n * on a browser-safe grant hands back bytes or a URL the browser already has, and\n * a provider states which of the two it is.\n *\n * The union alone would have been the hedge that decision rejected. Three arms\n * with a runtime discriminant is a shape that says *\"one of these three, we will\n * find out when it happens\"* — and an application's file field cannot be written\n * against that: the reference arm has to be posted to the executor door, the\n * browser-readable arms go through the ordinary upload path, and choosing\n * between them at runtime means every field carries both.\n *\n * So the declaration is enforced here. A provider that declares\n * `REMOTE_REFERENCE` and hands back a `File` is refused, loudly, naming both\n * sides. Without this the declaration would be decoration, and a reviewer\n * reading a provider's manifest would be reading a wish rather than a contract.\n *\n * ## It is the SANCTIONED seam, not the only possible one\n *\n * `ProviderFilePickerHost` is the path that calls this, and it is what a surface\n * should use. But the registry and the `useProviderComponent` hooks are public\n * too — an application can resolve a provider's component itself, cast it and\n * mount it, and a selection then reaches that application without passing\n * through here.\n *\n * That is deliberate and it is stated rather than closed off: a framework that\n * could only mount a provider component one way would be unable to serve a\n * surface the framework has not thought of, which is the whole reason the\n * capability vocabulary is open. What the framework guarantees is that ITS\n * routing honours the declaration; an application taking the component directly\n * has taken the contract with it, and should call this function.\n *\n * An earlier revision of this paragraph said \"the one seam every selection\n * crosses\", which stopped being true in the same change that exported the other\n * path. Kept as a correction because a load-bearing sentence that quietly goes\n * false is how the next reader inherits a guarantee nobody makes.\n *\n * ## Why refusal is REPORTED rather than thrown\n *\n * This runs inside a picker's own callback, which is usually a vendor SDK's\n * event handler rather than a React render. A throw there does not reach an\n * error boundary — it reaches the vendor's own dispatcher, which typically\n * swallows it — so the surface would stop responding with nothing on screen and\n * nothing in the log. A returned result lets the mounting surface show the user\n * that the picker misbehaved and lets the diagnostic name the provider.\n */\n\nimport {\n ProviderFrontendSelectionDelivery,\n type ProviderFileSelection,\n type ProviderFrontendComponentDescriptor,\n} from '@wildo-ai/saas-models/public-runtime';\n\n/** Why a selection a picker produced was not accepted. */\nexport enum ProviderFileSelectionRejectionKind {\n /**\n * The provider declared no `selectionDelivery` for its file picker, so the\n * framework cannot know whether the result is a backend reference or bytes —\n * and therefore cannot route it anywhere. An authoring defect in the provider\n * package, not a user error.\n */\n PROVIDER_DECLARED_NO_DELIVERY = 'PROVIDER_DECLARED_NO_DELIVERY',\n /**\n * The picker returned a selection whose kind is not the one it declared. This\n * is the case the whole declaration exists to catch: a `REMOTE_REFERENCE`\n * provider handing back a `File` means bytes reached the browser on a path\n * nobody reviewed for it.\n */\n DELIVERY_CONTRADICTS_DECLARATION = 'DELIVERY_CONTRADICTS_DECLARATION',\n}\n\nexport interface ProviderFileSelectionRejection {\n readonly kind: ProviderFileSelectionRejectionKind;\n readonly providerRef: string;\n readonly message: string;\n /** The delivery the provider declared, when it declared one. */\n readonly declared?: ProviderFrontendSelectionDelivery;\n /** The kind the picker actually produced, for the contradiction case. */\n readonly received?: ProviderFileSelection['kind'];\n}\n\nexport interface ProviderFileSelectionOutcome {\n /** Selections that match the declaration. Empty when anything was rejected — see below. */\n readonly accepted: readonly ProviderFileSelection[];\n readonly rejections: readonly ProviderFileSelectionRejection[];\n}\n\n/**\n * Checks every selection against what the provider declared.\n *\n * **All or nothing.** One contradicting selection rejects the whole batch rather\n * than the offending item, and that is deliberate: a picker that returned three\n * files of which one has the wrong shape is a picker whose contract is not what\n * it says, and accepting the other two would leave an application holding a\n * partial result it never asked for from a component it can no longer trust.\n * Silently dropping one of a user's three chosen files is the worse outcome —\n * the user sees two, has no idea why, and nothing anywhere says so.\n */\nexport function receiveProviderFileSelections(input: {\n readonly providerRef: string;\n readonly descriptor: ProviderFrontendComponentDescriptor | undefined;\n readonly selections: readonly ProviderFileSelection[];\n}): ProviderFileSelectionOutcome {\n const declared = input.descriptor?.selectionDelivery;\n\n if (declared === undefined) {\n return {\n accepted: [],\n rejections: [{\n kind: ProviderFileSelectionRejectionKind.PROVIDER_DECLARED_NO_DELIVERY,\n providerRef: input.providerRef,\n message:\n `Provider \"${input.providerRef}\" contributes a file picker but declares no `\n + '`selectionDelivery`, so the framework cannot tell whether a selection is a backend '\n + 'reference or bytes the browser already holds — and therefore cannot route it. Declare '\n + 'one on the component: `components: { FRONTEND_FILE_PICKER: { load, selectionDelivery } }`.',\n }],\n };\n }\n\n const rejections: ProviderFileSelectionRejection[] = [];\n for (const selection of input.selections) {\n if (selection.kind === declared) continue;\n rejections.push({\n kind: ProviderFileSelectionRejectionKind.DELIVERY_CONTRADICTS_DECLARATION,\n providerRef: input.providerRef,\n declared,\n received: selection.kind,\n message:\n `Provider \"${input.providerRef}\" declared its file picker delivers \"${declared}\" and returned a `\n + `\"${selection.kind}\" selection. Which one a provider emits is a declaration, not a runtime `\n + 'choice (issue #383): a surface routes a selection before it mounts the picker, so a picker '\n + 'that contradicts its own declaration is refused rather than guessed at.',\n });\n }\n\n return rejections.length > 0\n ? { accepted: [], rejections }\n : { accepted: input.selections, rejections: [] };\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureGate.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"FeatureGate.d.ts","sourceRoot":"","sources":["../../../../../src/core/features/FeatureGate.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAA0B,KAAK,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAM5F,MAAM,WAAW,gBAAgB;IAC/B,kCAAkC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,CAAC,YAAY,EAAE,mBAAmB,KAAK,KAAK,CAAC,SAAS,CAAC;CAC5E;AAED,wBAAgB,WAAW,CAAC,EAC1B,SAAS,EACT,QAAQ,EACR,iBAAiB,GAClB,EAAE,gBAAgB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAgC7C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureGate.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"FeatureGate.js","sourceRoot":"","sources":["../../../../../src/core/features/FeatureGate.tsx"],"names":[],"mappings":";AAsBA,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAA4B,MAAM,0BAA0B,CAAC;AAC5F,OAAO,EAAE,wBAAwB,EAAE,MAAM,6EAA6E,CAAC;AACvH,OAAO,EAAE,gBAAgB,EAAE,MAAM,mDAAmD,CAAC;AAgBrF,MAAM,UAAU,WAAW,CAAC,EAC1B,SAAS,EACT,QAAQ,EACR,iBAAiB,GACA;IACjB,MAAM,YAAY,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;IACvD,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IAEzC,yCAAyC;IACzC,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC;QAC7B,OAAO,4BAAG,QAAQ,GAAI,CAAC;IACzB,CAAC;IAED,iCAAiC;IACjC,IAAI,YAAY,CAAC,QAAQ,KAAK,6BAA6B,CAAC,IAAI,EAAE,CAAC;QACjE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,sCAAsC;IACtC,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO,4BAAG,iBAAiB,CAAC,YAAY,CAAC,GAAI,CAAC;IAChD,CAAC;IAED,6EAA6E;IAC7E,4EAA4E;IAC5E,OAAO,CACL,KAAC,wBAAwB,IACvB,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAC/B,eAAe,EAAE,YAAY,CAAC,eAAe,EAC7C,SAAS,EAAE,YAAY,CAAC,SAAS,EACjC,mBAAmB,EAAE,YAAY,CAAC,cAAc,EAAE,MAAM,EACxD,kBAAkB,EAAE,YAAY,CAAC,kBAAkB,EACnD,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,YAAY,CAAC,GAC3C,CACH,CAAC;AACJ,CAAC","sourcesContent":["/**\n * FeatureGate — Declarative feature gating component\n * \n * Wraps children with a feature availability check. If the feature is available,\n * renders children. If not, automatically renders the policy-driven prompt.\n * \n * Usage:\n * const analyticsFeatureId = APP_FEATURE_IDS.ADVANCED_ANALYTICS;\n *\n * <FeatureGate featureId={analyticsFeatureId}>\n * <AnalyticsDashboard />\n * </FeatureGate>\n * \n * // Custom rendering when unavailable:\n * <FeatureGate featureId={analyticsFeatureId} renderUnavailable={(availability) => (\n * <MyCustomUpsell availability={availability} />\n * )}>\n * <AnalyticsDashboard />\n * </FeatureGate>\n */\n\nimport React from 'react';\nimport { FeatureUnavailabilityBehavior } from '@wildo-ai/saas-models';\nimport { useFeatureAvailability, type FeatureAvailability } from './useFeatureAvailability';\nimport { FeatureUnavailablePrompt } from '~wildo-frontend-lib/components/feedback/features/feature-unavailable-prompt';\nimport { useBillingAction } from '~wildo-frontend-lib/core/billing/useBillingAction';\n\n// Note: useFeatureGate hook is in a separate file (useFeatureGate.ts) for React Fast Refresh compatibility.\n\nexport interface FeatureGateProps {\n /** Feature identifier to check */\n featureId: string;\n /** Content to render when the feature is available */\n children: React.ReactNode;\n /** \n * Optional custom renderer when the feature is unavailable.\n * If omitted, renders the policy-driven FeatureUnavailablePrompt automatically.\n */\n renderUnavailable?: (availability: FeatureAvailability) => React.ReactNode;\n}\n\nexport function FeatureGate({\n featureId,\n children,\n renderUnavailable,\n}: FeatureGateProps): React.JSX.Element | null {\n const availability = useFeatureAvailability(featureId);\n const billingAction = useBillingAction();\n\n // Feature is available → render children\n if (availability.isAvailable) {\n return <>{children}</>;\n }\n\n // HIDE behavior → render nothing\n if (availability.behavior === FeatureUnavailabilityBehavior.HIDE) {\n return null;\n }\n\n // Custom renderer provided → delegate\n if (renderUnavailable) {\n return <>{renderUnavailable(availability)}</>;\n }\n\n // Default: policy-driven prompt. Inline FeatureGate surfaces do not expose a\n // generic \"go back\" action because they are embedded into the current page.\n return (\n <FeatureUnavailablePrompt\n behavior={availability.behavior}\n missingFeatures={availability.missingFeatures}\n limitInfo={availability.limitInfo}\n upgradeOptionsCount={availability.upgradeOptions?.length}\n customComponentRef={availability.customComponentRef}\n onDismiss={undefined}\n onAction={() => billingAction(availability)}\n />\n );\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureRouteGuard.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"FeatureRouteGuard.d.ts","sourceRoot":"","sources":["../../../../../src/core/features/FeatureRouteGuard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,uCAAuC,EAAE,MAAM,+DAA+D,CAAC;AAc7H,UAAU,sBAAsB;IAC9B,mDAAmD;IACnD,SAAS,CAAC,EAAE,uCAAuC,CAAC;IACpD,4DAA4D;IAC5D,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAC1C,6DAA6D;IAC7D,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAMD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAsF9D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureRouteGuard.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"FeatureRouteGuard.js","sourceRoot":"","sources":["../../../../../src/core/features/FeatureRouteGuard.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * FeatureRouteGuard\n * \n * Route-level guard that checks feature availability before rendering page content.\n * Routes are always registered (so deep links and bookmarks work), but the guard\n * intercepts rendering when a feature is unavailable.\n * \n * Behavior is determined by the feature unavailability policy:\n * - HIDE → Navigate to home\n * - All other behaviors → FeatureUnavailablePrompt (adapts content per behavior)\n * \n * The prompt renders INSIDE the app layout (sidebar stays visible) — it replaces\n * only the route content area, not the entire page.\n */\n\nimport React from 'react';\nimport { useNavigate } from 'react-router-dom';\nimport {\n FeatureUnavailabilityBehavior,\n NavigationZoneName,\n type RequiredFeaturesConfig,\n} from '@wildo-ai/saas-models';\nimport type { FrontendResourceConfiguration_Operation } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport { useOperationFeatureAvailability, type RequiredFeaturesCheckable } from './useOperationFeatureAvailability';\nimport { FeatureUnavailablePrompt } from '~wildo-frontend-lib/components/feedback/features/feature-unavailable-prompt';\nimport { useBillingAction } from '~wildo-frontend-lib/core/billing/useBillingAction';\nimport { useEventBus } from '~wildo-frontend-lib/core/events/useEventBus';\nimport { FrontendEvents } from '~wildo-frontend-lib/core/events/events.frontend.schemas';\nimport { NavigationContext } from '~wildo-frontend-lib/core/navigation/NavigationContext';\nimport { NavigationUtils } from '~wildo-frontend-lib/core/navigation/navigation.utils';\nimport { navigateHomeWithFreshStart } from '~wildo-frontend-lib/core/navigation/navigation-clean-break.frontend.utils';\n\n// ================================\n// Props\n// ================================\n\ninterface FeatureRouteGuardProps {\n /** For resource routes: the operation to check. */\n operation?: FrontendResourceConfiguration_Operation;\n /** For view routes: the view's required features config. */\n requiredFeatures?: RequiredFeaturesConfig;\n /** The page content to render when features are available */\n children: React.ReactNode;\n}\n\n// ================================\n// Component\n// ================================\n\nexport const FeatureRouteGuard: React.FC<FeatureRouteGuardProps> = ({\n operation,\n requiredFeatures,\n children,\n}) => {\n const navigate = useNavigate();\n const billingAction = useBillingAction();\n const { emit } = useEventBus();\n const navigationContext = React.useContext(NavigationContext);\n\n const effectiveOperation = React.useMemo(() => {\n if (operation) return operation;\n if (requiredFeatures) {\n return { requiredFeatures, operationIdentifier: 'VIEW_ACCESS' } as RequiredFeaturesCheckable as FrontendResourceConfiguration_Operation;\n }\n return null;\n }, [operation, requiredFeatures]);\n\n const availability = useOperationFeatureAvailability(effectiveOperation);\n\n const navigateHome = React.useCallback(() => {\n navigateHomeWithFreshStart({\n emit,\n routerNavigate: navigate,\n });\n }, [emit, navigate]);\n\n // Dismiss handler: prefer runtime-owned back semantics, otherwise fall back to\n // a full fresh-start redirect home.\n const handleDismiss = React.useCallback(() => {\n if (navigationContext) {\n // The ONE go-back resolver (see `NavigationUtils.resolveGoBackTarget`): a hosted pane's URL is\n // composed under its host here exactly as the controller's `goBack` composes it.\n const target = NavigationUtils.resolveGoBackTarget({\n currentBrowserUrl: NavigationUtils.buildBrowserUrl(window.location.pathname, window.location.search),\n getZoneState: navigationContext.getZoneState,\n });\n if (target?.browserUrl) {\n emit(FrontendEvents.NAVIGATION_POP, { zone: target.zone });\n navigate(target.browserUrl, { replace: true });\n return;\n }\n }\n\n navigateHome();\n }, [emit, navigate, navigateHome, navigationContext]);\n\n // Computed (and the effect registered) BEFORE the early returns below:\n // `availability` flips between undefined / available / unavailable across\n // renders, so the hook count must not depend on it (rules of hooks).\n const shouldHide =\n availability !== undefined &&\n !availability.isAvailable &&\n availability.behavior === FeatureUnavailabilityBehavior.HIDE;\n\n React.useEffect(() => {\n if (!shouldHide) {\n return;\n }\n\n navigateHome();\n }, [navigateHome, shouldHide]);\n\n // No requiredFeatures → no gating\n if (!availability) return <>{children}</>;\n\n // Features are available → render children\n if (availability.isAvailable) return <>{children}</>;\n\n // HIDE → navigate away silently\n if (shouldHide) {\n return null;\n }\n\n // All other behaviors → single reusable prompt (adapts per behavior)\n return (\n <FeatureUnavailablePrompt\n behavior={availability.behavior}\n missingFeatures={availability.missingFeatures}\n limitInfo={availability.limitInfo}\n upgradeOptionsCount={availability.upgradeOptions?.length}\n customComponentRef={availability.customComponentRef}\n onDismiss={handleDismiss}\n onAction={() => billingAction(availability)}\n />\n );\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeaturesContext.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"FeaturesContext.d.ts","sourceRoot":"","sources":["../../../../../src/core/features/FeaturesContext.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAuF,MAAM,OAAO,CAAC;AAC5G,OAAO,EAKL,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC/B,MAAM,uBAAuB,CAAC;AAoC/B,MAAM,WAAW,mBAAmB;IAElC,+DAA+D;IAC/D,gBAAgB,EAAE,yBAAyB,CAAC;IAC5C,8CAA8C;IAC9C,wBAAwB,EAAE,wBAAwB,GAAG,IAAI,CAAC;IAG1D,4EAA4E;IAC5E,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAGnD,iFAAiF;IACjF,oBAAoB,EAAE,oBAAoB,CAAC,sBAAsB,CAAC,CAAC;IAGnE,mFAAmF;IACnF,gBAAgB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC;IACjD;;;;OAIG;IACH,gBAAgB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC;IACjD,kGAAkG;IAClG,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACpD,yEAAyE;IACzE,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IAC3D,uFAAuF;IACvF,oBAAoB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IAGhE,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAGpB,wFAAwF;IACxF,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AASD,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAA6D,CAAC;AAMzI,UAAU,qBAAqB;IAC7B,mFAAmF;IACnF,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,gBAAgB,CAAC,EAAE,oBAAoB,EAAE,QAAQ,EAAE,EAAE,qBAAqB,GAAG,KAAK,CAAC,YAAY,CA6P9G"}
|
|
@@ -16,9 +16,12 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
16
16
|
* Stale usage data means the frontend might allow a click that the backend rejects
|
|
17
17
|
* (which is acceptable — the error is caught and displayed).
|
|
18
18
|
*/
|
|
19
|
-
import { createContext, useEffect, useState, useCallback, useMemo, useRef } from 'react';
|
|
20
|
-
import { CoreWebSocketEvent, FEATURES_UNLIMITED, MAIN_API_BASE_PATH, } from '@wildo-ai/saas-models';
|
|
19
|
+
import { createContext, useContext, useEffect, useState, useCallback, useMemo, useRef } from 'react';
|
|
20
|
+
import { CoreResourceType, CoreWebSocketEvent, FEATURES_UNLIMITED, MAIN_API_BASE_PATH, } from '@wildo-ai/saas-models';
|
|
21
21
|
import { useWebSocket } from '../../core/requests/websockets/useWebSocket.js';
|
|
22
|
+
import { EventBusContext } from '../../core/events/EventBusContext.js';
|
|
23
|
+
import { FrontendEvents } from '../../core/events/events.frontend.schemas.js';
|
|
24
|
+
import { useResourceReachability } from '../../core/resources/useResourceRegistry.js';
|
|
22
25
|
import { useAuthSession } from '../../core/security/useAuthSession.js';
|
|
23
26
|
import { LoggerFrontendService } from '../../core/monitoring/logger.frontend.service.js';
|
|
24
27
|
import { getManualCallsHttpClient } from '../../core/requests/wildo-http-client-manual-calls.frontend.service.js';
|
|
@@ -58,11 +61,19 @@ export function FeaturesProvider({ featureConfiguration, children }) {
|
|
|
58
61
|
const debounceTimerRef = useRef(null);
|
|
59
62
|
// ── Auth — features are user-scoped, only fetch when authenticated ──
|
|
60
63
|
const { isAuthenticated } = useAuthSession();
|
|
61
|
-
|
|
64
|
+
// Fetch only when this consumer can REACH the features route: configured-and-authenticated is half
|
|
65
|
+
// the answer (#1069, the #268 rule). The resolved features are derived from the per-user ledger, so
|
|
66
|
+
// a consumer whose registry excludes it — the application-creation workbench — has no route to ask.
|
|
67
|
+
const featuresReachable = useResourceReachability(CoreResourceType.USER_FEATURES);
|
|
68
|
+
const authenticated = isAuthenticated() && featuresReachable;
|
|
62
69
|
const appScope = useAppScopeSafe();
|
|
63
70
|
const currentOrganizationId = appScope?.currentOrganizationId ?? null;
|
|
64
71
|
// ── WebSocket ──
|
|
65
72
|
const { on } = useWebSocket();
|
|
73
|
+
// ── Frontend event bus (preference changes) ──
|
|
74
|
+
// Read from the context directly: `useEventBus().bus` is typed as the React context object, not the bus.
|
|
75
|
+
const bus = useContext(EventBusContext);
|
|
76
|
+
const errorRef = useRef(null);
|
|
66
77
|
// ── Build definitions map from configuration ──
|
|
67
78
|
const featureDefinitions = useMemo(() => {
|
|
68
79
|
const map = new Map();
|
|
@@ -135,6 +146,22 @@ export function FeaturesProvider({ featureConfiguration, children }) {
|
|
|
135
146
|
mountedRef.current = false;
|
|
136
147
|
};
|
|
137
148
|
}, [authenticated, currentOrganizationId, fetchResolvedFeatures, clearResolvedFeatures]);
|
|
149
|
+
useEffect(() => {
|
|
150
|
+
errorRef.current = error;
|
|
151
|
+
}, [error]);
|
|
152
|
+
// ── Retry a FAILED fetch when the person's preferences change (#534) ──
|
|
153
|
+
// A declared service consent requirement refuses this read until the person grants it, so the fetch that ran at
|
|
154
|
+
// sign-in can fail — and while the organization stays the same nothing else would retry it, leaving features
|
|
155
|
+
// unresolved until a reload. A preferences change is how a consent decision reaches the rest of the application,
|
|
156
|
+
// so it retries a failed fetch. Only a failed one: a theme or language change does not invalidate a good set.
|
|
157
|
+
useEffect(() => {
|
|
158
|
+
if (!authenticated)
|
|
159
|
+
return;
|
|
160
|
+
return bus.on(FrontendEvents.USER_PREFERENCES_CHANGED, () => {
|
|
161
|
+
if (errorRef.current)
|
|
162
|
+
fetchResolvedFeatures();
|
|
163
|
+
});
|
|
164
|
+
}, [authenticated, bus, fetchResolvedFeatures]);
|
|
138
165
|
// ── WebSocket invalidation (debounced to coalesce rapid events) ──
|
|
139
166
|
useEffect(() => {
|
|
140
167
|
if (!authenticated)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeaturesContext.js","sourceRoot":"","sources":["../../../../src/core/features/FeaturesContext.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAc,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAChG,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,GAKnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,2DAA2D,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,kDAAkD,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6DAA6D,CAAC;AACpG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mFAAmF,CAAC;AAC7H,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAE7E,mCAAmC;AACnC,SAAS;AACT,mCAAmC;AAEnC,MAAM,cAAc,GAA0B,qBAAqB,CAAC,SAAS,EAAE,CAAC;AAChF,MAAM,QAAQ,GAAiE,cAAc,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;AAC7H,cAAc,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;AAE7D,mCAAmC;AACnC,YAAY;AACZ,mCAAmC;AAEnC,MAAM,gBAAgB,GAAG,GAAG,kBAAkB,oBAAoB,CAAC;AAEnE,mEAAmE;AACnE,MAAM,mBAAmB,GAAG;IAC1B,kBAAkB,CAAC,sBAAsB;IACzC,kBAAkB,CAAC,4BAA4B;IAC/C,kBAAkB,CAAC,uBAAuB;IAC1C,kBAAkB,CAAC,wBAAwB;CACnC,CAAC;AA8CX,4BAA4B;AAC5B,MAAM,cAAc,GAA8B;IAChD,QAAQ,EAAE,EAAE;IACZ,MAAM,EAAE,EAAE;IACV,YAAY,EAAE,EAAE;CACjB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAmD,aAAa,CAAkC,SAAS,CAAC,CAAC;AAYzI,MAAM,UAAU,gBAAgB,CAAC,EAAE,oBAAoB,EAAE,QAAQ,EAAyB;IACxF,cAAc;IACd,MAAM,CAAC,wBAAwB,EAAE,2BAA2B,CAAC,GAAG,QAAQ,CAAkC,IAAI,CAAC,CAAC;IAChH,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAU,IAAI,CAAC,CAAC;IAC1D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAC;IAEvD,kCAAkC;IAClC,MAAM,gBAAgB,GAAG,MAAM,CAAU,KAAK,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,MAAM,CAAU,IAAI,CAAC,CAAC;IACzC,MAAM,gBAAgB,GAAG,MAAM,CAAuC,IAAI,CAAC,CAAC;IAE5E,uEAAuE;IACvE,MAAM,EAAE,eAAe,EAAE,GAAG,cAAc,EAAE,CAAC;IAC7C,MAAM,aAAa,GAAG,eAAe,EAAE,CAAC;IACxC,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;IACnC,MAAM,qBAAqB,GAAG,QAAQ,EAAE,qBAAqB,IAAI,IAAI,CAAC;IAEtE,kBAAkB;IAClB,MAAM,EAAE,EAAE,EAAE,GAAG,YAAY,EAAE,CAAC;IAE9B,iDAAiD;IACjD,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,EAAE;QACtC,MAAM,GAAG,GAAG,IAAI,GAAG,EAA6B,CAAC;QACjD,KAAK,MAAM,GAAG,IAAI,oBAAoB,CAAC,WAAW,EAAE,CAAC;YACnD,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QAC/B,CAAC;QACD,QAAQ,CAAC,+BAA+B,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/D,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAC;IAEvC,8BAA8B;IAC9B,MAAM,oBAAoB,GAAG,OAAO,CAClC,GAAG,EAAE,CAAC,oBAAoB,CAAC,oBAAoB,EAC/C,CAAC,oBAAoB,CAAC,oBAAoB,CAAC,CAC5C,CAAC;IAEF,kCAAkC;IAClC,MAAM,gBAAgB,GAA8B,OAAO,CAAC,GAAG,EAAE;QAC/D,IAAI,CAAC,wBAAwB;YAAE,OAAO,cAAc,CAAC;QACrD,OAAO;YACL,QAAQ,EAAE,wBAAwB,CAAC,QAAQ;YAC3C,MAAM,EAAE,wBAAwB,CAAC,MAAM;YACvC,YAAY,EAAE,wBAAwB,CAAC,YAAY;SACpD,CAAC;IACJ,CAAC,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC;IAE/B,MAAM,qBAAqB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7C,2BAA2B,CAAC,IAAI,CAAC,CAAC;QAClC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,6CAA6C;IAC7C,MAAM,qBAAqB,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACnD,IAAI,gBAAgB,CAAC,OAAO;YAAE,OAAO;QACrC,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;QAEhC,IAAI,CAAC;YACH,QAAQ,CAAC,yCAAyC,CAAC,CAAC;YACpD,MAAM,UAAU,GAAG,wBAAwB,EAAE,CAAC;YAC9C,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,GAAG,CAA2B,gBAAgB,CAAC,CAAC;YAElF,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,2BAA2B,CAAC,QAAQ,CAAC,CAAC;gBACtC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACf,QAAQ,CAAC,2BAA2B,EAAE;oBACpC,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;oBACtC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM;oBAC/C,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,MAAM;iBACtD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,QAAQ,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,EAAE,OAAO,IAAI,0BAA0B,CAAC,CAAC,CAAC;gBAC7F,QAAQ,CAAC,mCAAmC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,YAAY,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;YACD,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;QACnC,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,8DAA8D;IAC9D,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;QAC1B,IAAI,aAAa,EAAE,CAAC;YAClB,YAAY,CAAC,IAAI,CAAC,CAAC;YACnB,qBAAqB,EAAE,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,qBAAqB,EAAE,CAAC;QAC1B,CAAC;QACD,OAAO,GAAG,EAAE;YACV,UAAU,CAAC,OAAO,GAAG,KAAK,CAAC;QAC7B,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,aAAa,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAEzF,oEAAoE;IACpE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa;YAAE,OAAO;QAE3B,MAAM,aAAa,GAAsB,EAAE,CAAC;QAE5C,MAAM,gBAAgB,GAAG,GAAG,EAAE;YAC5B,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;gBAC7B,YAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACzC,CAAC;YACD,gBAAgB,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBACzC,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;gBAChC,qBAAqB,EAAE,CAAC;YAC1B,CAAC,EAAE,GAAG,CAAC,CAAC;QACV,CAAC,CAAC;QAEF,KAAK,MAAM,KAAK,IAAI,mBAAmB,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBAC3B,QAAQ,CAAC,2DAA2D,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;gBACjF,gBAAgB,EAAE,CAAC;YACrB,CAAC,CAAC,CAAC;YACH,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;QAED,OAAO,GAAG,EAAE;YACV,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;gBAC7B,YAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACzC,CAAC;YACD,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;gBAClC,KAAK,EAAE,CAAC;YACV,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,aAAa,EAAE,EAAE,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAE/C,8CAA8C;IAC9C,MAAM,mBAAmB,GAAG,OAAO,CACjC,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EACxC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAC5B,CAAC;IAEF,8BAA8B;IAC9B,MAAM,gBAAgB,GAAG,WAAW,CAClC,CAAC,SAAiB,EAAW,EAAE;QAC7B,OAAO,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC,EACD,CAAC,mBAAmB,CAAC,CACtB,CAAC;IAEF,MAAM,gBAAgB,GAAG,WAAW,CAClC,CAAC,SAAiB,EAAW,EAAE;QAC7B,0EAA0E;QAC1E,yEAAyE;QACzE,8CAA8C;QAC9C,2EAA2E;QAC3E,0BAA0B;QAC1B,8EAA8E;QAC9E,0EAA0E;QAC1E,2EAA2E;QAC3E,gFAAgF;QAChF,sEAAsE;QACtE,8EAA8E;QAC9E,sEAAsE;QACtE,IAAI,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,OAAO,IAAI,CAAC;QACpD,OAAO,OAAO,CAAC,wBAAwB,EAAE,cAAc,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IACxE,CAAC,EACD,CAAC,mBAAmB,EAAE,wBAAwB,CAAC,CAChD,CAAC;IAEF,MAAM,QAAQ,GAAG,WAAW,CAC1B,CAAC,SAAiB,EAAsB,EAAE;QACxC,OAAO,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC,EACD,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAC1B,CAAC;IAEF,MAAM,eAAe,GAAG,WAAW,CACjC,CAAC,SAAiB,EAAsB,EAAE;QACxC,OAAO,gBAAgB,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC,EACD,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAChC,CAAC;IAEF,MAAM,oBAAoB,GAAG,WAAW,CACtC,CAAC,SAAiB,EAAsB,EAAE;QACxC,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QAC1C,IAAI,KAAK,KAAK,kBAAkB;YAAE,OAAO,SAAS,CAAC,CAAC,sCAAsC;QAC1F,MAAM,KAAK,GAAG,gBAAgB,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,CAAC;IACpC,CAAC,EACD,CAAC,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,CAAC,YAAY,CAAC,CACzD,CAAC;IAEF,sDAAsD;IACtD,MAAM,YAAY,GAAwB,OAAO,CAC/C,GAAG,EAAE,CAAC,CAAC;QACL,gBAAgB;QAChB,wBAAwB;QACxB,kBAAkB;QAClB,oBAAoB;QACpB,gBAAgB;QAChB,gBAAgB;QAChB,QAAQ;QACR,eAAe;QACf,oBAAoB;QACpB,SAAS;QACT,KAAK;QACL,OAAO,EAAE,qBAAqB;KAC/B,CAAC,EACF;QACE,gBAAgB;QAChB,wBAAwB;QACxB,kBAAkB;QAClB,oBAAoB;QACpB,gBAAgB;QAChB,gBAAgB;QAChB,QAAQ;QACR,eAAe;QACf,oBAAoB;QACpB,SAAS;QACT,KAAK;QACL,qBAAqB;KACtB,CACF,CAAC;IAEF,OAAO,CACL,KAAC,eAAe,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,YAC1C,QAAQ,GACgB,CAC5B,CAAC;AACJ,CAAC","sourcesContent":["/**\n * FeaturesContext\n *\n * Central context for feature gating on the frontend.\n *\n * Responsibilities:\n * - Receives the merged FeatureConfiguration (core + custom) from app initialization\n * - Builds a definitions map for fast lookup\n * - Fetches resolved features from backend API: GET /api/v1/features/resolved\n * - Caches resolved features in context state\n * - Invalidates on WebSocket events (FEATURES_CHANGED, BILLING_STATUS_CHANGED, etc.)\n * - Exposes raw resolved features + definitions + unavailability policy\n *\n * Frontend limit checking is ADVISORY — backend gate is authoritative.\n * Stale usage data means the frontend might allow a click that the backend rejects\n * (which is acceptable — the error is caught and displayed).\n */\n\nimport React, { createContext, useEffect, useState, useCallback, useMemo, useRef } from 'react';\nimport {\n CoreWebSocketEvent,\n FEATURES_UNLIMITED,\n MAIN_API_BASE_PATH,\n type FeatureConfiguration,\n type FeatureDefinition,\n type ResolvedFeaturesResponse,\n type ResolvedFeaturesWithUsage,\n} from '@wildo-ai/saas-models';\nimport { useWebSocket } from '~wildo-frontend-lib/core/requests/websockets/useWebSocket';\nimport { useAuthSession } from '~wildo-frontend-lib/core/security/useAuthSession';\nimport { LoggerFrontendService } from '~wildo-frontend-lib/core/monitoring/logger.frontend.service';\nimport { getManualCallsHttpClient } from '~wildo-frontend-lib/core/requests/wildo-http-client-manual-calls.frontend.service';\nimport { useAppScopeSafe } from '~wildo-frontend-lib/core/scope/useAppScope';\n\n// ================================\n// Logger\n// ================================\n\nconst featuresLogger: LoggerFrontendService = LoggerFrontendService.getLogger();\nconst logDebug: (message: string, context?: Record<string, unknown>) => void = featuresLogger.debugByType('FeaturesContext');\nfeaturesLogger.setDebugTypeLogging('FeaturesContext', false);\n\n// ================================\n// Constants\n// ================================\n\nconst FEATURES_API_URL = `${MAIN_API_BASE_PATH}/features/resolved`;\n\n/** WebSocket events that trigger a refetch of resolved features */\nconst INVALIDATION_EVENTS = [\n CoreWebSocketEvent.BILLING_STATUS_CHANGED,\n CoreWebSocketEvent.BILLING_SUBSCRIPTION_UPDATED,\n CoreWebSocketEvent.BILLING_ACCOUNT_CHANGED,\n CoreWebSocketEvent.BILLING_FEATURES_UPDATED,\n] as const;\n\n// ================================\n// Context Type\n// ================================\n\nexport interface FeaturesContextType {\n // ── Resolved features from backend ──\n /** Raw resolved features with usage data (from backend API) */\n resolvedFeatures: ResolvedFeaturesWithUsage;\n /** Full response including upgrade options */\n resolvedFeaturesResponse: ResolvedFeaturesResponse | null;\n\n // ── Feature definitions (from configuration) ──\n /** Feature definitions map (built from featureConfiguration.definitions) */\n featureDefinitions: Map<string, FeatureDefinition>;\n\n // ── Policy ──\n /** The unavailability policy (from featureConfiguration.unavailabilityPolicy) */\n unavailabilityPolicy: FeatureConfiguration['unavailabilityPolicy'];\n\n // ── Convenience accessors ──\n /** Check if a boolean feature is ENTITLED for the current scope (plan/profile). */\n isFeatureEnabled: (featureId: string) => boolean;\n /**\n * Check if the app OFFERS a feature for the current scope — entitled now, or\n * reachable via an upgrade/add-on. Plan-independent survival signal, distinct\n * from `isFeatureEnabled` (entitlement). See the impl for the two-axis rationale.\n */\n isFeatureOffered: (featureId: string) => boolean;\n /** Get a limit value (FEATURES_UNLIMITED = unlimited). Returns undefined if feature not found. */\n getLimit: (featureId: string) => number | undefined;\n /** Get current usage for a limit feature. undefined if no usage data. */\n getCurrentUsage: (featureId: string) => number | undefined;\n /** Get remaining capacity (limit - current). undefined if unlimited or no counting. */\n getRemainingCapacity: (featureId: string) => number | undefined;\n\n // ── State ──\n isLoading: boolean;\n error: Error | null;\n\n // ── Actions ──\n /** Force refetch of resolved features (e.g., after a mutation on a counted resource) */\n refetch: () => void;\n}\n\n// ── Default empty state ──\nconst EMPTY_RESOLVED: ResolvedFeaturesWithUsage = {\n features: [],\n limits: {},\n currentUsage: {},\n};\n\nexport const FeaturesContext: React.Context<FeaturesContextType | undefined> = createContext<FeaturesContextType | undefined>(undefined);\n\n// ================================\n// Provider\n// ================================\n\ninterface FeaturesProviderProps {\n /** Merged FeatureConfiguration (core + custom) — passed from app initialization */\n featureConfiguration: FeatureConfiguration;\n children: React.ReactNode;\n}\n\nexport function FeaturesProvider({ featureConfiguration, children }: FeaturesProviderProps): React.ReactElement {\n // ── State ──\n const [resolvedFeaturesResponse, setResolvedFeaturesResponse] = useState<ResolvedFeaturesResponse | null>(null);\n const [isLoading, setIsLoading] = useState<boolean>(true);\n const [error, setError] = useState<Error | null>(null);\n\n // ── Refs for stable callbacks ──\n const fetchInFlightRef = useRef<boolean>(false);\n const mountedRef = useRef<boolean>(true);\n const debounceTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n // ── Auth — features are user-scoped, only fetch when authenticated ──\n const { isAuthenticated } = useAuthSession();\n const authenticated = isAuthenticated();\n const appScope = useAppScopeSafe();\n const currentOrganizationId = appScope?.currentOrganizationId ?? null;\n\n // ── WebSocket ──\n const { on } = useWebSocket();\n\n // ── Build definitions map from configuration ──\n const featureDefinitions = useMemo(() => {\n const map = new Map<string, FeatureDefinition>();\n for (const def of featureConfiguration.definitions) {\n map.set(def.identifier, def);\n }\n logDebug('Feature definitions map built', { count: map.size });\n return map;\n }, [featureConfiguration.definitions]);\n\n // ── Unavailability policy ──\n const unavailabilityPolicy = useMemo(\n () => featureConfiguration.unavailabilityPolicy,\n [featureConfiguration.unavailabilityPolicy],\n );\n\n // ── Derived resolved features ──\n const resolvedFeatures: ResolvedFeaturesWithUsage = useMemo(() => {\n if (!resolvedFeaturesResponse) return EMPTY_RESOLVED;\n return {\n features: resolvedFeaturesResponse.features,\n limits: resolvedFeaturesResponse.limits,\n currentUsage: resolvedFeaturesResponse.currentUsage,\n };\n }, [resolvedFeaturesResponse]);\n\n const clearResolvedFeatures = useCallback(() => {\n setResolvedFeaturesResponse(null);\n setError(null);\n setIsLoading(false);\n }, []);\n\n // ── Fetch resolved features from backend ──\n const fetchResolvedFeatures = useCallback(async () => {\n if (fetchInFlightRef.current) return;\n fetchInFlightRef.current = true;\n\n try {\n logDebug('Fetching resolved features from backend');\n const httpClient = getManualCallsHttpClient();\n const response = await httpClient.get<ResolvedFeaturesResponse>(FEATURES_API_URL);\n\n if (mountedRef.current) {\n setResolvedFeaturesResponse(response);\n setError(null);\n logDebug('Resolved features fetched', {\n featureCount: response.features.length,\n limitCount: Object.keys(response.limits).length,\n usageCount: Object.keys(response.currentUsage).length,\n });\n }\n } catch (err: any) {\n if (mountedRef.current) {\n setError(err instanceof Error ? err : new Error(err?.message ?? 'Failed to fetch features'));\n logDebug('Failed to fetch resolved features', { error: err?.message });\n }\n } finally {\n if (mountedRef.current) {\n setIsLoading(false);\n }\n fetchInFlightRef.current = false;\n }\n }, []);\n\n // ── Fetch when authenticated (and refetch on auth change) ──\n useEffect(() => {\n mountedRef.current = true;\n if (authenticated) {\n setIsLoading(true);\n fetchResolvedFeatures();\n } else {\n clearResolvedFeatures();\n }\n return () => {\n mountedRef.current = false;\n };\n }, [authenticated, currentOrganizationId, fetchResolvedFeatures, clearResolvedFeatures]);\n\n // ── WebSocket invalidation (debounced to coalesce rapid events) ──\n useEffect(() => {\n if (!authenticated) return;\n\n const unsubscribers: Array<() => void> = [];\n\n const debouncedRefetch = () => {\n if (debounceTimerRef.current) {\n clearTimeout(debounceTimerRef.current);\n }\n debounceTimerRef.current = setTimeout(() => {\n debounceTimerRef.current = null;\n fetchResolvedFeatures();\n }, 300);\n };\n\n for (const event of INVALIDATION_EVENTS) {\n const unsub = on(event, () => {\n logDebug('WebSocket invalidation event received, scheduling refetch', { event });\n debouncedRefetch();\n });\n unsubscribers.push(unsub);\n }\n\n return () => {\n if (debounceTimerRef.current) {\n clearTimeout(debounceTimerRef.current);\n }\n for (const unsub of unsubscribers) {\n unsub();\n }\n };\n }, [authenticated, on, fetchResolvedFeatures]);\n\n // ── Derived features set for O(1) lookups ──\n const resolvedFeaturesSet = useMemo(\n () => new Set(resolvedFeatures.features),\n [resolvedFeatures.features],\n );\n\n // ── Convenience accessors ──\n const isFeatureEnabled = useCallback(\n (featureId: string): boolean => {\n return resolvedFeaturesSet.has(featureId);\n },\n [resolvedFeaturesSet],\n );\n\n const isFeatureOffered = useCallback(\n (featureId: string): boolean => {\n // \"Offered\" = the app makes this feature available for the current scope,\n // INDEPENDENT of whether the current plan/profile currently ENTITLES it:\n // - entitled now (in `resolvedFeatures`), OR\n // - not entitled but reachable via an upgrade/add-on the backend surfaced\n // in `upgradeOptions`.\n // This is the plan-independent \"does this app offer feature X\" axis, distinct\n // from `isFeatureEnabled` (the entitlement axis). Consumers gate SURVIVAL\n // (should the surface exist at all) on `isFeatureOffered`, then render the\n // entitlement state via {@link FeatureGate} (content vs upgrade/add-on prompt).\n // Billing OFF → `upgradeOptions` is empty, so offered == entitled (no\n // \"offered-but-locked\" state exists without a plan to upgrade to). Billing ON\n // → `upgradeOptions` carries the sellable-but-not-yet-owned features.\n if (resolvedFeaturesSet.has(featureId)) return true;\n return Boolean(resolvedFeaturesResponse?.upgradeOptions?.[featureId]);\n },\n [resolvedFeaturesSet, resolvedFeaturesResponse],\n );\n\n const getLimit = useCallback(\n (featureId: string): number | undefined => {\n return resolvedFeatures.limits[featureId];\n },\n [resolvedFeatures.limits],\n );\n\n const getCurrentUsage = useCallback(\n (featureId: string): number | undefined => {\n return resolvedFeatures.currentUsage[featureId];\n },\n [resolvedFeatures.currentUsage],\n );\n\n const getRemainingCapacity = useCallback(\n (featureId: string): number | undefined => {\n const limit = resolvedFeatures.limits[featureId];\n if (limit === undefined) return undefined;\n if (limit === FEATURES_UNLIMITED) return undefined; // unlimited → no meaningful remaining\n const usage = resolvedFeatures.currentUsage[featureId] ?? 0;\n return Math.max(0, limit - usage);\n },\n [resolvedFeatures.limits, resolvedFeatures.currentUsage],\n );\n\n // ── Context value (memoized for stable reference) ──\n const contextValue: FeaturesContextType = useMemo(\n () => ({\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n isFeatureEnabled,\n isFeatureOffered,\n getLimit,\n getCurrentUsage,\n getRemainingCapacity,\n isLoading,\n error,\n refetch: fetchResolvedFeatures,\n }),\n [\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n isFeatureEnabled,\n isFeatureOffered,\n getLimit,\n getCurrentUsage,\n getRemainingCapacity,\n isLoading,\n error,\n fetchResolvedFeatures,\n ],\n );\n\n return (\n <FeaturesContext.Provider value={contextValue}>\n {children}\n </FeaturesContext.Provider>\n );\n}\n\n// Note: useFeatures hook is in a separate file (useFeatures.ts) for React Fast Refresh compatibility.\n"]}
|
|
1
|
+
{"version":3,"file":"FeaturesContext.js","sourceRoot":"","sources":["../../../../../src/core/features/FeaturesContext.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * FeaturesContext\n *\n * Central context for feature gating on the frontend.\n *\n * Responsibilities:\n * - Receives the merged FeatureConfiguration (core + custom) from app initialization\n * - Builds a definitions map for fast lookup\n * - Fetches resolved features from backend API: GET /api/v1/features/resolved\n * - Caches resolved features in context state\n * - Invalidates on WebSocket events (FEATURES_CHANGED, BILLING_STATUS_CHANGED, etc.)\n * - Exposes raw resolved features + definitions + unavailability policy\n *\n * Frontend limit checking is ADVISORY — backend gate is authoritative.\n * Stale usage data means the frontend might allow a click that the backend rejects\n * (which is acceptable — the error is caught and displayed).\n */\n\nimport React, { createContext, useContext, useEffect, useState, useCallback, useMemo, useRef } from 'react';\nimport {\n CoreResourceType,\n CoreWebSocketEvent,\n FEATURES_UNLIMITED,\n MAIN_API_BASE_PATH,\n type FeatureConfiguration,\n type FeatureDefinition,\n type ResolvedFeaturesResponse,\n type ResolvedFeaturesWithUsage,\n} from '@wildo-ai/saas-models';\nimport { useWebSocket } from '~wildo-frontend-lib/core/requests/websockets/useWebSocket';\nimport { EventBusContext } from '~wildo-frontend-lib/core/events/EventBusContext';\nimport { FrontendEvents } from '~wildo-frontend-lib/core/events/events.frontend.schemas';\nimport { useResourceReachability } from '~wildo-frontend-lib/core/resources/useResourceRegistry';\nimport { useAuthSession } from '~wildo-frontend-lib/core/security/useAuthSession';\nimport { LoggerFrontendService } from '~wildo-frontend-lib/core/monitoring/logger.frontend.service';\nimport { getManualCallsHttpClient } from '~wildo-frontend-lib/core/requests/wildo-http-client-manual-calls.frontend.service';\nimport { useAppScopeSafe } from '~wildo-frontend-lib/core/scope/useAppScope';\n\n// ================================\n// Logger\n// ================================\n\nconst featuresLogger: LoggerFrontendService = LoggerFrontendService.getLogger();\nconst logDebug: (message: string, context?: Record<string, unknown>) => void = featuresLogger.debugByType('FeaturesContext');\nfeaturesLogger.setDebugTypeLogging('FeaturesContext', false);\n\n// ================================\n// Constants\n// ================================\n\nconst FEATURES_API_URL = `${MAIN_API_BASE_PATH}/features/resolved`;\n\n/** WebSocket events that trigger a refetch of resolved features */\nconst INVALIDATION_EVENTS = [\n CoreWebSocketEvent.BILLING_STATUS_CHANGED,\n CoreWebSocketEvent.BILLING_SUBSCRIPTION_UPDATED,\n CoreWebSocketEvent.BILLING_ACCOUNT_CHANGED,\n CoreWebSocketEvent.BILLING_FEATURES_UPDATED,\n] as const;\n\n// ================================\n// Context Type\n// ================================\n\nexport interface FeaturesContextType {\n // ── Resolved features from backend ──\n /** Raw resolved features with usage data (from backend API) */\n resolvedFeatures: ResolvedFeaturesWithUsage;\n /** Full response including upgrade options */\n resolvedFeaturesResponse: ResolvedFeaturesResponse | null;\n\n // ── Feature definitions (from configuration) ──\n /** Feature definitions map (built from featureConfiguration.definitions) */\n featureDefinitions: Map<string, FeatureDefinition>;\n\n // ── Policy ──\n /** The unavailability policy (from featureConfiguration.unavailabilityPolicy) */\n unavailabilityPolicy: FeatureConfiguration['unavailabilityPolicy'];\n\n // ── Convenience accessors ──\n /** Check if a boolean feature is ENTITLED for the current scope (plan/profile). */\n isFeatureEnabled: (featureId: string) => boolean;\n /**\n * Check if the app OFFERS a feature for the current scope — entitled now, or\n * reachable via an upgrade/add-on. Plan-independent survival signal, distinct\n * from `isFeatureEnabled` (entitlement). See the impl for the two-axis rationale.\n */\n isFeatureOffered: (featureId: string) => boolean;\n /** Get a limit value (FEATURES_UNLIMITED = unlimited). Returns undefined if feature not found. */\n getLimit: (featureId: string) => number | undefined;\n /** Get current usage for a limit feature. undefined if no usage data. */\n getCurrentUsage: (featureId: string) => number | undefined;\n /** Get remaining capacity (limit - current). undefined if unlimited or no counting. */\n getRemainingCapacity: (featureId: string) => number | undefined;\n\n // ── State ──\n isLoading: boolean;\n error: Error | null;\n\n // ── Actions ──\n /** Force refetch of resolved features (e.g., after a mutation on a counted resource) */\n refetch: () => void;\n}\n\n// ── Default empty state ──\nconst EMPTY_RESOLVED: ResolvedFeaturesWithUsage = {\n features: [],\n limits: {},\n currentUsage: {},\n};\n\nexport const FeaturesContext: React.Context<FeaturesContextType | undefined> = createContext<FeaturesContextType | undefined>(undefined);\n\n// ================================\n// Provider\n// ================================\n\ninterface FeaturesProviderProps {\n /** Merged FeatureConfiguration (core + custom) — passed from app initialization */\n featureConfiguration: FeatureConfiguration;\n children: React.ReactNode;\n}\n\nexport function FeaturesProvider({ featureConfiguration, children }: FeaturesProviderProps): React.ReactElement {\n // ── State ──\n const [resolvedFeaturesResponse, setResolvedFeaturesResponse] = useState<ResolvedFeaturesResponse | null>(null);\n const [isLoading, setIsLoading] = useState<boolean>(true);\n const [error, setError] = useState<Error | null>(null);\n\n // ── Refs for stable callbacks ──\n const fetchInFlightRef = useRef<boolean>(false);\n const mountedRef = useRef<boolean>(true);\n const debounceTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n // ── Auth — features are user-scoped, only fetch when authenticated ──\n const { isAuthenticated } = useAuthSession();\n // Fetch only when this consumer can REACH the features route: configured-and-authenticated is half\n // the answer (#1069, the #268 rule). The resolved features are derived from the per-user ledger, so\n // a consumer whose registry excludes it — the application-creation workbench — has no route to ask.\n const featuresReachable = useResourceReachability(CoreResourceType.USER_FEATURES);\n const authenticated = isAuthenticated() && featuresReachable;\n const appScope = useAppScopeSafe();\n const currentOrganizationId = appScope?.currentOrganizationId ?? null;\n\n // ── WebSocket ──\n const { on } = useWebSocket();\n\n // ── Frontend event bus (preference changes) ──\n // Read from the context directly: `useEventBus().bus` is typed as the React context object, not the bus.\n const bus = useContext(EventBusContext);\n const errorRef = useRef<Error | null>(null);\n\n // ── Build definitions map from configuration ──\n const featureDefinitions = useMemo(() => {\n const map = new Map<string, FeatureDefinition>();\n for (const def of featureConfiguration.definitions) {\n map.set(def.identifier, def);\n }\n logDebug('Feature definitions map built', { count: map.size });\n return map;\n }, [featureConfiguration.definitions]);\n\n // ── Unavailability policy ──\n const unavailabilityPolicy = useMemo(\n () => featureConfiguration.unavailabilityPolicy,\n [featureConfiguration.unavailabilityPolicy],\n );\n\n // ── Derived resolved features ──\n const resolvedFeatures: ResolvedFeaturesWithUsage = useMemo(() => {\n if (!resolvedFeaturesResponse) return EMPTY_RESOLVED;\n return {\n features: resolvedFeaturesResponse.features,\n limits: resolvedFeaturesResponse.limits,\n currentUsage: resolvedFeaturesResponse.currentUsage,\n };\n }, [resolvedFeaturesResponse]);\n\n const clearResolvedFeatures = useCallback(() => {\n setResolvedFeaturesResponse(null);\n setError(null);\n setIsLoading(false);\n }, []);\n\n // ── Fetch resolved features from backend ──\n const fetchResolvedFeatures = useCallback(async () => {\n if (fetchInFlightRef.current) return;\n fetchInFlightRef.current = true;\n\n try {\n logDebug('Fetching resolved features from backend');\n const httpClient = getManualCallsHttpClient();\n const response = await httpClient.get<ResolvedFeaturesResponse>(FEATURES_API_URL);\n\n if (mountedRef.current) {\n setResolvedFeaturesResponse(response);\n setError(null);\n logDebug('Resolved features fetched', {\n featureCount: response.features.length,\n limitCount: Object.keys(response.limits).length,\n usageCount: Object.keys(response.currentUsage).length,\n });\n }\n } catch (err: any) {\n if (mountedRef.current) {\n setError(err instanceof Error ? err : new Error(err?.message ?? 'Failed to fetch features'));\n logDebug('Failed to fetch resolved features', { error: err?.message });\n }\n } finally {\n if (mountedRef.current) {\n setIsLoading(false);\n }\n fetchInFlightRef.current = false;\n }\n }, []);\n\n // ── Fetch when authenticated (and refetch on auth change) ──\n useEffect(() => {\n mountedRef.current = true;\n if (authenticated) {\n setIsLoading(true);\n fetchResolvedFeatures();\n } else {\n clearResolvedFeatures();\n }\n return () => {\n mountedRef.current = false;\n };\n }, [authenticated, currentOrganizationId, fetchResolvedFeatures, clearResolvedFeatures]);\n\n useEffect(() => {\n errorRef.current = error;\n }, [error]);\n\n // ── Retry a FAILED fetch when the person's preferences change (#534) ──\n // A declared service consent requirement refuses this read until the person grants it, so the fetch that ran at\n // sign-in can fail — and while the organization stays the same nothing else would retry it, leaving features\n // unresolved until a reload. A preferences change is how a consent decision reaches the rest of the application,\n // so it retries a failed fetch. Only a failed one: a theme or language change does not invalidate a good set.\n useEffect(() => {\n if (!authenticated) return;\n return bus.on(FrontendEvents.USER_PREFERENCES_CHANGED, () => {\n if (errorRef.current) fetchResolvedFeatures();\n });\n }, [authenticated, bus, fetchResolvedFeatures]);\n\n // ── WebSocket invalidation (debounced to coalesce rapid events) ──\n useEffect(() => {\n if (!authenticated) return;\n\n const unsubscribers: Array<() => void> = [];\n\n const debouncedRefetch = () => {\n if (debounceTimerRef.current) {\n clearTimeout(debounceTimerRef.current);\n }\n debounceTimerRef.current = setTimeout(() => {\n debounceTimerRef.current = null;\n fetchResolvedFeatures();\n }, 300);\n };\n\n for (const event of INVALIDATION_EVENTS) {\n const unsub = on(event, () => {\n logDebug('WebSocket invalidation event received, scheduling refetch', { event });\n debouncedRefetch();\n });\n unsubscribers.push(unsub);\n }\n\n return () => {\n if (debounceTimerRef.current) {\n clearTimeout(debounceTimerRef.current);\n }\n for (const unsub of unsubscribers) {\n unsub();\n }\n };\n }, [authenticated, on, fetchResolvedFeatures]);\n\n // ── Derived features set for O(1) lookups ──\n const resolvedFeaturesSet = useMemo(\n () => new Set(resolvedFeatures.features),\n [resolvedFeatures.features],\n );\n\n // ── Convenience accessors ──\n const isFeatureEnabled = useCallback(\n (featureId: string): boolean => {\n return resolvedFeaturesSet.has(featureId);\n },\n [resolvedFeaturesSet],\n );\n\n const isFeatureOffered = useCallback(\n (featureId: string): boolean => {\n // \"Offered\" = the app makes this feature available for the current scope,\n // INDEPENDENT of whether the current plan/profile currently ENTITLES it:\n // - entitled now (in `resolvedFeatures`), OR\n // - not entitled but reachable via an upgrade/add-on the backend surfaced\n // in `upgradeOptions`.\n // This is the plan-independent \"does this app offer feature X\" axis, distinct\n // from `isFeatureEnabled` (the entitlement axis). Consumers gate SURVIVAL\n // (should the surface exist at all) on `isFeatureOffered`, then render the\n // entitlement state via {@link FeatureGate} (content vs upgrade/add-on prompt).\n // Billing OFF → `upgradeOptions` is empty, so offered == entitled (no\n // \"offered-but-locked\" state exists without a plan to upgrade to). Billing ON\n // → `upgradeOptions` carries the sellable-but-not-yet-owned features.\n if (resolvedFeaturesSet.has(featureId)) return true;\n return Boolean(resolvedFeaturesResponse?.upgradeOptions?.[featureId]);\n },\n [resolvedFeaturesSet, resolvedFeaturesResponse],\n );\n\n const getLimit = useCallback(\n (featureId: string): number | undefined => {\n return resolvedFeatures.limits[featureId];\n },\n [resolvedFeatures.limits],\n );\n\n const getCurrentUsage = useCallback(\n (featureId: string): number | undefined => {\n return resolvedFeatures.currentUsage[featureId];\n },\n [resolvedFeatures.currentUsage],\n );\n\n const getRemainingCapacity = useCallback(\n (featureId: string): number | undefined => {\n const limit = resolvedFeatures.limits[featureId];\n if (limit === undefined) return undefined;\n if (limit === FEATURES_UNLIMITED) return undefined; // unlimited → no meaningful remaining\n const usage = resolvedFeatures.currentUsage[featureId] ?? 0;\n return Math.max(0, limit - usage);\n },\n [resolvedFeatures.limits, resolvedFeatures.currentUsage],\n );\n\n // ── Context value (memoized for stable reference) ──\n const contextValue: FeaturesContextType = useMemo(\n () => ({\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n isFeatureEnabled,\n isFeatureOffered,\n getLimit,\n getCurrentUsage,\n getRemainingCapacity,\n isLoading,\n error,\n refetch: fetchResolvedFeatures,\n }),\n [\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n isFeatureEnabled,\n isFeatureOffered,\n getLimit,\n getCurrentUsage,\n getRemainingCapacity,\n isLoading,\n error,\n fetchResolvedFeatures,\n ],\n );\n\n return (\n <FeaturesContext.Provider value={contextValue}>\n {children}\n </FeaturesContext.Provider>\n );\n}\n\n// Note: useFeatures hook is in a separate file (useFeatures.ts) for React Fast Refresh compatibility.\n"]}
|