@wildo-ai/saas-frontend-lib 1.1.7 → 1.1.9
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.map +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.map +1 -1
- package/dist/esm/components/actions/action-bar.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/diff-block.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/ai-elements/artifacts/unified-diff.utils.js.map +1 -1
- 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.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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/app/AppLayout_AuthenticatedRoute.js.map +1 -1
- package/dist/esm/components/app/AppLayout_ConsentGate.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_ConsentGate.js.map +1 -1
- package/dist/esm/components/app/AppLayout_ConsentGate.labels.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_ConsentGate.labels.js.map +1 -1
- package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.js.map +1 -1
- package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.labels.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_DocumentAcceptanceGate.labels.js.map +1 -1
- 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.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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/app/PublicLayout_Terms.js.map +1 -1
- package/dist/esm/components/app/PublicLayout_Terms.labels.d.ts.map +1 -1
- package/dist/esm/components/app/PublicLayout_Terms.labels.js.map +1 -1
- package/dist/esm/components/auth/Auth_AuthCallback.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/auth/Auth_ConfirmEmail.d.ts.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/components/auth/Auth_Invitation.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/auth/Auth_MagicLinkVerify.d.ts.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/components/auth/Auth_MfaChallenge.d.ts.map +1 -1
- 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.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.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.map +1 -1
- package/dist/esm/components/auth/Auth_OrganizationOnboarding.js.map +1 -1
- package/dist/esm/components/auth/Auth_OrganizationOnboarding.labels.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_OrganizationOnboarding.labels.js.map +1 -1
- package/dist/esm/components/auth/Auth_PasswordLost.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/auth/Auth_Register.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/auth/StepUpAuthDialog.d.ts.map +1 -1
- 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.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.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.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.map +1 -1
- package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/auth/enrollment/TotpEnrollmentMethod.d.ts.map +1 -1
- package/dist/esm/components/auth/enrollment/TotpEnrollmentMethod.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/auth/methods/OrgOidcAuthMethod.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/auth/methods/PasskeyAuthMethod.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/auth/methods/SmsOtpAuthMethod.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/auth/methods/auth-method-components.d.ts.map +1 -1
- package/dist/esm/components/auth/methods/auth-method-components.js.map +1 -1
- package/dist/esm/components/auth/methods/auth-method-presentation.d.ts.map +1 -1
- package/dist/esm/components/auth/methods/auth-method-presentation.js.map +1 -1
- 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.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_OrganizationOnboarding.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_ReAuthenticationCallback.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/auth/utils/AuthMethodChoiceList.js.map +1 -1
- package/dist/esm/components/auth/utils/AuthMethodIcon.d.ts.map +1 -1
- package/dist/esm/components/auth/utils/AuthMethodIcon.js.map +1 -1
- package/dist/esm/components/auth/utils/AuthSecondaryLink.d.ts.map +1 -1
- package/dist/esm/components/auth/utils/AuthSecondaryLink.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/auth/utils/OAuthProvidersSection.js.map +1 -1
- package/dist/esm/components/auth/utils/PasswordStrengthIndicator.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/auth/utils/useMfaContinuationNavigation.js.map +1 -1
- package/dist/esm/components/billing/billing-invoice-history.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-invoice-history.js.map +1 -1
- package/dist/esm/components/billing/billing-plan-change-preview.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-plan-change-preview.js.map +1 -1
- package/dist/esm/components/billing/billing-portal-link.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-portal-link.js.map +1 -1
- package/dist/esm/components/billing/billing-pricing-table.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-pricing-table.js.map +1 -1
- package/dist/esm/components/billing/billing-subscription-status.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-subscription-status.js.map +1 -1
- package/dist/esm/components/billing/billing-usage-dashboard.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-usage-dashboard.js.map +1 -1
- package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.d.ts.map +1 -1
- package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.js.map +1 -1
- package/dist/esm/components/data-display/AutomaticDisplayer.d.ts.map +1 -1
- package/dist/esm/components/data-display/AutomaticDisplayer.js.map +1 -1
- package/dist/esm/components/data-display/DisplayContextKindContext.d.ts.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldEditableArray.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/data-display/DisplayTemplateContext.js.map +1 -1
- package/dist/esm/components/data-display/DisplayValueDispatcher.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayValueDispatcher.js.map +1 -1
- package/dist/esm/components/data-display/ResourceAutomaticDisplayer.d.ts.map +1 -1
- 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.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.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.map +1 -1
- package/dist/esm/components/data-display/badge-tone.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/data-display/chromes/DisplayFieldChrome.js.map +1 -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.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/data-display/duration.js.map +1 -1
- package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.d.ts.map +1 -1
- package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.js.map +1 -1
- package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.d.ts.map +1 -1
- package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.js.map +1 -1
- package/dist/esm/components/data-display/external-data-provenance/useExternalDataFieldProvenance.d.ts.map +1 -1
- package/dist/esm/components/data-display/external-data-provenance/useExternalDataFieldProvenance.js.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-address.d.ts.map +1 -1
- package/dist/esm/components/data-display/formatters/display-field-address.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/data-display/identifier.js.map +1 -1
- package/dist/esm/components/data-display/kbd.d.ts.map +1 -1
- package/dist/esm/components/data-display/kbd.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/data-display/timeline.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/feedback/lazy-door-error-boundary.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/feedback/notification-center.js.map +1 -1
- 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.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.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.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.map +1 -1
- package/dist/esm/components/flows-actors/approval-modification-refusal.utils.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/approval-modification-refusal.utils.js.map +1 -1
- package/dist/esm/components/flows-actors/approval.d.ts.map +1 -1
- 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.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.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.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.map +1 -1
- 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.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.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.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.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.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.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/components/form/automated/FormField.d.ts.map +1 -1
- 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.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/TemplatePlacedFieldsContext.d.ts.map +1 -1
- package/dist/esm/components/form/automated/TemplatePlacedFieldsContext.js.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/components/form/automated/field-clearing-rule.frontend.utils.js.map +1 -1
- 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.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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/form/controls/file/file-readiness.frontend.utils.js.map +1 -1
- 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.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.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.map +1 -1
- package/dist/esm/components/form/fields/accepted-file-kinds-description.frontend.utils.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-address.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-address.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-address.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-address.labels.js.map +1 -1
- 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.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.map +1 -1
- 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.map +1 -1
- 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.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.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.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-organization-role.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-string-organization-role.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.map +1 -1
- package/dist/esm/components/form/form-external-validation.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/form/validation-errors/getFieldError.js.map +1 -1
- package/dist/esm/components/form/validation-errors/resolver-error-nesting.d.ts.map +1 -1
- package/dist/esm/components/form/validation-errors/resolver-error-nesting.js.map +1 -1
- package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.d.ts.map +1 -1
- package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/form/validation-errors/unstarted-field-visit.js.map +1 -1
- package/dist/esm/components/form/validation-errors/useFieldUniquenessValidation.d.ts.map +1 -1
- package/dist/esm/components/form/validation-errors/useFieldUniquenessValidation.js.map +1 -1
- package/dist/esm/components/form/validation-errors/useServerErrorInjection.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/form/validation-errors/validate-field-url.frontend.js.map +1 -1
- package/dist/esm/components/form/validation-errors/zod-issue-resolver.d.ts.map +1 -1
- package/dist/esm/components/form/validation-errors/zod-issue-resolver.js.map +1 -1
- 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.map +1 -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.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.map +1 -1
- package/dist/esm/components/navigation/app-level/sidebar-resource-browser-empty-label.js.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/components/navigation/app-level/useMenuBarBehavior.d.ts.map +1 -1
- 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.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.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.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.map +1 -1
- 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.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.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.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.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.map +1 -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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/resources/CollectionSelectionControls.d.ts.map +1 -1
- package/dist/esm/components/resources/CollectionSelectionControls.js.map +1 -1
- package/dist/esm/components/resources/CollectionSelectionHeaderRail.d.ts.map +1 -1
- package/dist/esm/components/resources/CollectionSelectionHeaderRail.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionBody_Table.js.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionFilterPresets.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionFilterPresets.js.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.js.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionToolbar.d.ts.map +1 -1
- 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.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.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.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.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.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.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_DangerZone.d.ts.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_FiltersControl.d.ts.map +1 -1
- 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.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.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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_OperationsItems.d.ts.map +1 -1
- 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.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.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.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.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.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.map +1 -1
- package/dist/esm/components/resources/ResourceListItemRenderer.js.map +1 -1
- package/dist/esm/components/resources/ResourceOperationActionDropdown.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceOperationActionDropdown.js.map +1 -1
- package/dist/esm/components/resources/ResourceOperationActionPopover.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceOperationActionPopover.js.map +1 -1
- package/dist/esm/components/resources/ResourceOperationDetachedHost.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceOperationDetachedHost.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/resources/collection-card-layout.utils.js.map +1 -1
- package/dist/esm/components/resources/collection-create-placement.utils.d.ts.map +1 -1
- package/dist/esm/components/resources/collection-create-placement.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.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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/resources/skeleton/DisplayDiscriminatorSwitch.js.map +1 -1
- package/dist/esm/components/resources/skeleton/DisplayLayout.d.ts.map +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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/resources/skeleton/SectionPresentationContext.js.map +1 -1
- package/dist/esm/components/resources/skeleton/SubmitButton.d.ts.map +1 -1
- 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.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.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.map +1 -1
- 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.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.js.map +1 -1
- package/dist/esm/components/sections/ContentSectionContainer.d.ts.map +1 -1
- 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.map +1 -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.map +1 -1
- 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.map +1 -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.map +1 -1
- package/dist/esm/components/sections/tabs.js.map +1 -1
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.js.map +1 -1
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.labels.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.labels.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.map +1 -1
- 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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/settings/SettingsResourceOperationPanel.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/components/settings/useOwnerProviderConnections.d.ts.map +1 -1
- package/dist/esm/components/settings/useOwnerProviderConnections.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.map +1 -1
- package/dist/esm/components/typography/link.js.map +1 -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.map +1 -1
- 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.map +1 -1
- 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.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.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.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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.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.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.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.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.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.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.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.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.map +1 -1
- package/dist/esm/components/views/chart-view/useResourceChartData.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/useResourceChartData.js.map +1 -1
- package/dist/esm/components/views/composite-view/CompositeLayout.d.ts.map +1 -1
- 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.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.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.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/AppShellBuildingBlocks.d.ts.map +1 -1
- package/dist/esm/core/app-shell/AppShellBuildingBlocks.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.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.map +1 -1
- package/dist/esm/core/app-shell/usePublicShellLayout.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/billing/BillingContext.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/billing/billing-launcher.d.ts.map +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.map +1 -1
- package/dist/esm/core/billing/useBillingPlanChange.d.ts.map +1 -1
- package/dist/esm/core/billing/useBillingPlanChange.js.map +1 -1
- package/dist/esm/core/billing/useSafeBillingActionExecutor.d.ts.map +1 -1
- 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.map +1 -1
- 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.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.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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.d.ts.map +1 -1
- package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.js.map +1 -1
- package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts.map +1 -1
- 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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/config/engine-settings-destinations.js.map +1 -1
- package/dist/esm/core/config/execution-view.schemas.d.ts.map +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.map +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.map +1 -1
- 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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/config/settings-hub-presentation.frontend.utils.js.map +1 -1
- package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/settings-hub.frontend.schemas.js.map +1 -1
- package/dist/esm/core/config/useSettingsHubConfig.d.ts.map +1 -1
- package/dist/esm/core/config/useSettingsHubConfig.js.map +1 -1
- package/dist/esm/core/config/useVisibleSettingsHubConfig.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/config/verify-settings-hub-content.js.map +1 -1
- package/dist/esm/core/config/view-label-declaration.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/view-label-declaration.schemas.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/errors/ErrorModalContent.d.ts.map +1 -1
- package/dist/esm/core/errors/ErrorModalContent.js.map +1 -1
- package/dist/esm/core/errors/GlobalErrorHandler.d.ts.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/core/errors/errors.frontend.schemas.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/errors/useUserFacingErrorMessage.js.map +1 -1
- package/dist/esm/core/errors/user-facing-error-message.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/errors/user-facing-error-message.frontend.utils.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/events/events.frontend.schemas.js.map +1 -1
- 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.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.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.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.map +1 -1
- package/dist/esm/core/external-providers/ConsentBasedProviderSdks.d.ts.map +1 -1
- package/dist/esm/core/external-providers/ConsentBasedProviderSdks.js.map +1 -1
- package/dist/esm/core/external-providers/ProviderAddressLookupCombobox.d.ts.map +1 -1
- package/dist/esm/core/external-providers/ProviderAddressLookupCombobox.js.map +1 -1
- package/dist/esm/core/external-providers/ProviderAddressLookupHost.d.ts.map +1 -1
- package/dist/esm/core/external-providers/ProviderAddressLookupHost.js.map +1 -1
- package/dist/esm/core/external-providers/ProviderFilePickerHost.d.ts.map +1 -1
- 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.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-address-lookup-selection.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/external-providers/provider-address-lookup-selection.frontend.utils.js.map +1 -1
- 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/external-providers/provider-scope-reauthorization-offers.frontend.d.ts.map +1 -1
- package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.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.map +1 -1
- package/dist/esm/core/features/feature-gate-surface.example.d.ts.map +1 -1
- package/dist/esm/core/features/feature-gate-surface.example.js.map +1 -1
- 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.map +1 -1
- 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/flows-actors/usePendingDecisions.d.ts.map +1 -1
- package/dist/esm/core/flows-actors/usePendingDecisions.js.map +1 -1
- package/dist/esm/core/guidance/GuidanceContext.d.ts.map +1 -1
- package/dist/esm/core/guidance/GuidanceContext.js.map +1 -1
- package/dist/esm/core/guidance/GuidanceRenderer.d.ts.map +1 -1
- package/dist/esm/core/guidance/GuidanceRenderer.js.map +1 -1
- package/dist/esm/core/guidance/guidance-audience.frontend.utils.d.ts.map +1 -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.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.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.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.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.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.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.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceTooltip.d.ts.map +1 -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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/hotkey/HotkeyShortcutsHelpDialog.d.ts.map +1 -1
- package/dist/esm/core/hotkey/HotkeyShortcutsHelpDialog.js.map +1 -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.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.map +1 -1
- package/dist/esm/core/i18n/I18nContext.js.map +1 -1
- package/dist/esm/core/i18n/component-label-resolution.utils.d.ts.map +1 -1
- package/dist/esm/core/i18n/component-label-resolution.utils.js.map +1 -1
- package/dist/esm/core/i18n/operation-title-resolution.utils.d.ts.map +1 -1
- package/dist/esm/core/i18n/operation-title-resolution.utils.js.map +1 -1
- 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.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.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/core/monitoring/analytics/AnalyticsContext.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.d.ts.map +1 -1
- package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/AnalyticsScopeBridge.d.ts.map +1 -1
- package/dist/esm/core/monitoring/analytics/AnalyticsScopeBridge.js.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/core/navigation/NavigationContentAreas.js.map +1 -1
- package/dist/esm/core/navigation/NavigationContext.d.ts.map +1 -1
- 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-cascade.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation-cascade.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/navigation/navigation-controller-internals.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation-controller-internals.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.map +1 -1
- package/dist/esm/core/navigation/navigation.schemas.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation.schemas.js.map +1 -1
- package/dist/esm/core/navigation/navigation.utils.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation.utils.js.map +1 -1
- package/dist/esm/core/navigation/primary-destination-layout.d.ts.map +1 -1
- package/dist/esm/core/navigation/primary-destination-layout.js.map +1 -1
- package/dist/esm/core/navigation/split-fit.d.ts.map +1 -1
- package/dist/esm/core/navigation/split-fit.js.map +1 -1
- package/dist/esm/core/navigation/useLauncherResolutionContext.d.ts.map +1 -1
- package/dist/esm/core/navigation/useLauncherResolutionContext.js.map +1 -1
- package/dist/esm/core/navigation/useNavigationController.d.ts.map +1 -1
- package/dist/esm/core/navigation/useNavigationController.js.map +1 -1
- package/dist/esm/core/navigation/useNavigationRouterSync.d.ts.map +1 -1
- package/dist/esm/core/navigation/useNavigationRouterSync.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.map +1 -1
- package/dist/esm/core/navigation/useResponsiveZoneMigration.d.ts.map +1 -1
- package/dist/esm/core/navigation/useResponsiveZoneMigration.js.map +1 -1
- package/dist/esm/core/navigation/useSynchronousBrowserLocation.d.ts.map +1 -1
- package/dist/esm/core/navigation/useSynchronousBrowserLocation.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/navigation/view-title-resolution.js.map +1 -1
- package/dist/esm/core/navigation/zone-collapse-migration.d.ts.map +1 -1
- package/dist/esm/core/navigation/zone-collapse-migration.js.map +1 -1
- package/dist/esm/core/navigation/zone-collapse.d.ts.map +1 -1
- package/dist/esm/core/navigation/zone-collapse.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.map +1 -1
- package/dist/esm/core/navigation/zone-emphasis.js.map +1 -1
- package/dist/esm/core/navigation/zone-empty-behavior.d.ts.map +1 -1
- 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.map +1 -1
- 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/usePublishNotificationBadgeCount.d.ts.map +1 -1
- package/dist/esm/core/requests/websockets/usePublishNotificationBadgeCount.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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/core/resources/bulk-failure-grouping.frontend.utils.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/resources/collection-filter-presets.frontend.utils.js.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/core/resources/frontend-resource.utils.js.map +1 -1
- package/dist/esm/core/resources/hooks/useOperationEnabled.d.ts.map +1 -1
- 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.map +1 -1
- 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.map +1 -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.map +1 -1
- package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/resources/resources.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/resources/resources.frontend.schemas.js.map +1 -1
- package/dist/esm/core/resources/rmm/HttpTransportAdapter.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/resources/rmm/ResourceMutationManager.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/resources/rmm/mutation-error-report.utils.js.map +1 -1
- 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.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.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.map +1 -1
- package/dist/esm/core/resources/useBulkJobProgress.js.map +1 -1
- 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/useOperationDirectExecution.d.ts.map +1 -1
- package/dist/esm/core/resources/useOperationDirectExecution.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.map +1 -1
- package/dist/esm/core/resources/useResourceLabels.js.map +1 -1
- package/dist/esm/core/resources/useResourceOperationActions.d.ts.map +1 -1
- package/dist/esm/core/resources/useResourceOperationActions.js.map +1 -1
- package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.d.ts.map +1 -1
- package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/resources/useResourceRegistry.js.map +1 -1
- package/dist/esm/core/resources/useResourceSelection.d.ts.map +1 -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.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.map +1 -1
- package/dist/esm/core/runtime/ApplicationMainContext.js.map +1 -1
- package/dist/esm/core/runtime/StartupFailureScreen.d.ts.map +1 -1
- package/dist/esm/core/runtime/StartupFailureScreen.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/runtime/start-application.frontend.service.js.map +1 -1
- package/dist/esm/core/runtime/startup-failure-copy.frontend.d.ts.map +1 -1
- package/dist/esm/core/runtime/startup-failure-copy.frontend.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/security/AuthSessionContext.js.map +1 -1
- package/dist/esm/core/security/StepUpAuthContext.d.ts.map +1 -1
- package/dist/esm/core/security/StepUpAuthContext.js.map +1 -1
- package/dist/esm/core/security/UserOrgsContext.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/security/consent-gate.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/security/consent-gate.frontend.utils.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/security/federated-reauthentication.frontend.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/security/organization-onboarding.frontend.utils.js.map +1 -1
- package/dist/esm/core/security/pending-mfa-session-storage.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/security/pending-mfa-session-storage.frontend.utils.js.map +1 -1
- package/dist/esm/core/security/registration-outcome.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/security/registration-outcome.frontend.utils.js.map +1 -1
- package/dist/esm/core/security/route-organization-access.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/security/route-organization-access.frontend.utils.js.map +1 -1
- package/dist/esm/core/security/security.frontend.schemas.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/security/useConsentGateBehavior.js.map +1 -1
- package/dist/esm/core/security/useDocumentAcceptanceGateBehavior.d.ts.map +1 -1
- package/dist/esm/core/security/useDocumentAcceptanceGateBehavior.js.map +1 -1
- package/dist/esm/core/security/useGrantedConsentPurposes.d.ts.map +1 -1
- package/dist/esm/core/security/useGrantedConsentPurposes.js.map +1 -1
- package/dist/esm/core/security/useResolvedAuthConfig.d.ts.map +1 -1
- package/dist/esm/core/security/useResolvedAuthConfig.js.map +1 -1
- package/dist/esm/core/security/useRouteOrganizationAccess.d.ts.map +1 -1
- package/dist/esm/core/security/useRouteOrganizationAccess.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/core/ui/SurfaceErrorBoundary.js.map +1 -1
- package/dist/esm/core/ui/SurfaceErrorBoundary.labels.d.ts.map +1 -1
- package/dist/esm/core/ui/SurfaceErrorBoundary.labels.js.map +1 -1
- 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.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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/tailwind/index.d.ts.map +1 -1
- package/dist/esm/tailwind/index.js.map +1 -1
- package/dist/esm/testing/app-shell-placement-coverage.d.ts.map +1 -1
- package/dist/esm/testing/app-shell-placement-coverage.js.map +1 -1
- package/dist/esm/testing/mock-builders.d.ts.map +1 -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.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 +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceLayout_SemanticOperationFallback.js","sourceRoot":"","sources":["../../../../src/components/resources/ResourceLayout_SemanticOperationFallback.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useCallback, useEffect, useMemo, useState } from 'react';\n\nimport { ResourceAutomatedForm } from '~wildo-frontend-lib/components/form/automated/ResourceAutomatedForm';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { resolveOperationDisplayTitle } from '~wildo-frontend-lib/core/i18n/operation-title-resolution.utils';\nimport { resolveComponentLabel } from '~wildo-frontend-lib/core/i18n/component-label-resolution.utils';\nimport { useResourceOperationViewContext } from '~wildo-frontend-lib/core/resources/ResourceOperationViewContext';\nimport { resolveDeclaredUpdateLikeMutationFallbackMode } from '~wildo-frontend-lib/core/resources/rmm/update-like-mutation-fallback.frontend';\nimport { ResourceLayout_Header } from '~wildo-frontend-lib/components/resources/ResourceLayout_Header';\nimport { LoadingGate } from '~wildo-frontend-lib/core/loading/LoadingGate';\nimport { Button } from '~wildo-frontend-lib/components/actions/button';\nimport { ButtonVariants_Variant } from '~wildo-frontend-lib/components/actions/button';\nimport { OperationsConfirmCritical } from '~wildo-frontend-lib/components/feedback/operations-confirm-critical';\nimport { FrontendComponentType } from '@wildo-ai/presets-components-models';\nimport { ResourcesConfig_OperationPathUtils, ResourceOperationRiskLevel } from '@wildo-ai/saas-models';\nimport {\n isGeneratedFileRegenerateOperation,\n operationCollectsNoCallerInput,\n} from '~wildo-frontend-lib/core/resources/operation-semantics.frontend.utils';\nimport { useOperationDirectExecution } from '~wildo-frontend-lib/core/resources/useOperationDirectExecution';\n\nimport { BaseResourcesLayoutProps } from './component-props.resources-layout.frontend.schemas';\nimport { LoggerFrontendService } from '~wildo-frontend-lib/core/monitoring/logger.frontend.service';\n\nconst logger = LoggerFrontendService.getLogger();\n\n/**\n * How much page chrome the operation body renders around its form.\n *\n * The body itself — the RMM contract, the CRITICAL double-validation, the success/error events, the\n * zero-input confirm path — is IDENTICAL in every host, and that is the point of this being a mode\n * rather than a second component. A popover that re-implemented the execution flow to drop a header\n * would be a second source of the operation contract, which is how the bulk selector came to be\n * spelled two different ways.\n */\nexport enum ResourceOperationHostChrome {\n /** Page/overlay host: resource header above the form, form width capped for readability. */\n FULL = 'full',\n /**\n * Anchored host (a popover): no header — the button the panel is anchored to already names the\n * action, so a heading repeats it — and no width cap, because the panel sizes itself.\n */\n COMPACT = 'compact',\n}\n\nexport interface ResourceLayoutSemanticOperationFallbackProps extends BaseResourcesLayoutProps {\n errorMessage: string;\n errorComponent: string;\n onSuccess?: (result: unknown) => void;\n /**\n * Cancel affordance forwarded to the action form's footer (audit D5).\n * Overlay hosts pass the modal-close path here — see `ResourceAutomatedForm.onCancel`.\n */\n onCancel?: () => void;\n /** Chrome density — see {@link ResourceOperationHostChrome}. Defaults to `FULL`. */\n chrome?: ResourceOperationHostChrome;\n}\n\n/**\n * Temporary default body for custom operations that already resolve into a core\n * host family via `resourceOperationLike`, but do not yet have a richer\n * family-specific preset/runtime. This keeps the new host-family contract safe\n * while preserving the proven action-form execution flow.\n */\nexport function ResourceLayout_SemanticOperationFallback({\n ...props\n}: ResourceLayoutSemanticOperationFallbackProps): React.JSX.Element | null {\n const { errorMessage, errorComponent, onSuccess, onCancel, chrome } = props;\n const {\n resourceContext: currentResourceContext,\n navigationZone,\n navigationInitiator,\n resourceType,\n operation,\n } = useResourceOperationViewContext();\n /*\n * THIS HOST READS THE AMBIENT OPERATION VIEW, NOT ITS `resourceContext` PROP — so a host rendered\n * outside its operation's own view silently executes the wrong operation, and the mismatch is\n * reported here rather than left to show up as an empty form.\n *\n * It did show up that way: the anchored \"Change status\" panel on the Wonder Todos list was handed\n * `change_status` and rendered the LISTING's form — an empty schema, so the authored template's\n * `workflow` group drew its heading and nothing else, and Submit would have run `list`. The fix is\n * `ResourceOperationDetachedHost`, which establishes the view a detached host needs; this is the\n * signal for the next host that renders the fallback without one.\n *\n * Reported, not thrown. A throw here would take down a working page to announce a wrong form one\n * layer inside it, and the navigation hosts that pass a `resourceContext` identical to their view\n * must keep rendering. Compared by operation PATH KEY, which names the operation AND its variant —\n * the bulk `admin` variant and the default variant of one operation are different forms.\n */\n const handedOperation = props.resourceContext?.operation;\n const handedOperationKey = handedOperation\n ? ResourcesConfig_OperationPathUtils.createOperationPathKeyFromOperation(handedOperation)\n : undefined;\n const ambientOperationKey = operation\n ? ResourcesConfig_OperationPathUtils.createOperationPathKeyFromOperation(operation)\n : undefined;\n useEffect(() => {\n if (handedOperationKey && ambientOperationKey && handedOperationKey !== ambientOperationKey) {\n logger.error(\n `[ResourceLayout_SemanticOperationFallback] handed \"${handedOperationKey}\" but the nearest operation view is `\n + `\"${ambientOperationKey}\" — this host would render and execute the wrong operation. A host rendered outside its `\n + `operation's own view must provide one; use ResourceOperationDetachedHost.`,\n );\n }\n }, [handedOperationKey, ambientOperationKey]);\n const { tComponent, tResourceOperation, isReady } = useI18n({\n component: FrontendComponentType.RESOURCES_LAYOUTS_ACTION,\n resource: resourceType,\n });\n\n const i18nKeys = useMemo(() => [\n `resources.${resourceType}`,\n `components.${FrontendComponentType.RESOURCES_LAYOUTS_ACTION}`,\n ], [resourceType]);\n // True while a CRITICAL zero-input action awaits typed double-validation.\n const [pendingCriticalExecute, setPendingCriticalExecute] = useState(false);\n\n /*\n * The form-less execution — RMM-or-direct, the target-id bootstrap, the outcome announcement — is\n * `useOperationDirectExecution`, shared with the DROPDOWN host. The form below is handed the same\n * success and failure paths, so every way this host can finish means the same thing.\n */\n const {\n execute,\n isExecuting: isExecutingWithoutForm,\n isBootstrapping: isBootstrappingResourceId,\n completeWithSuccess: handleSuccess,\n reportFailure: handleError,\n } = useOperationDirectExecution({ onSuccess, errorMessage, errorComponent });\n\n const actionLabel = useMemo(() => {\n // An ungenerated operation title is its key path (#1450) — this is a LABEL, so it must look\n // missing. The type-to-confirm phrase further down deliberately differs: it goes through\n // `resolveOperationDisplayTitle` and falls back to the operation IDENTIFIER, because that one is\n // text a person has to TYPE, and nobody should be asked to type a key path.\n return tResourceOperation(resourceType, String(operation.operationIdentifier), 'title');\n }, [operation.operationIdentifier, resourceType, tResourceOperation]);\n const runningActionLabel = useMemo(() => {\n return resolveComponentLabel({\n tComponent,\n componentType: FrontendComponentType.RESOURCES_LAYOUTS_ACTION,\n key: 'runningAction',\n params: { actionLabel },\n });\n }, [actionLabel, tComponent]);\n\n const handleExecuteWithoutForm = useCallback(async () => {\n await execute();\n }, [execute]);\n\n // \"Is there a form?\" is the same question the action ladder asks before firing directly — a bulk\n // body holding only the host-filled selector is not one, and rendered as an empty form with Save.\n const hasRequestSchema = !operationCollectsNoCallerInput(operation) && !isGeneratedFileRegenerateOperation(operation);\n\n // ── CRITICAL \"double validation\" on the zero-input action button ─────────\n // A CRITICAL custom op with no requestDto executes from a single confirm\n // button here. Gate it with the same typed double-validation the action bar\n // and form-submit paths use, so every CRITICAL op is consistent regardless of\n // its input shape.\n const isCriticalOperation = operation.riskLevel === ResourceOperationRiskLevel.CRITICAL;\n const criticalConfirmationPhrase = useMemo(\n () => resolveOperationDisplayTitle(tResourceOperation, resourceType, String(operation.operationIdentifier)),\n [tResourceOperation, resourceType, operation.operationIdentifier],\n );\n const handleExecuteWithCriticalGuard = useCallback(() => {\n if (isCriticalOperation) {\n setPendingCriticalExecute(true);\n return;\n }\n void handleExecuteWithoutForm();\n }, [isCriticalOperation, handleExecuteWithoutForm]);\n const handleConfirmCriticalExecute = useCallback(() => {\n setPendingCriticalExecute(false);\n void handleExecuteWithoutForm();\n }, [handleExecuteWithoutForm]);\n const handleCancelCriticalExecute = useCallback(() => {\n setPendingCriticalExecute(false);\n }, []);\n\n const isCompactChrome = chrome === ResourceOperationHostChrome.COMPACT;\n\n if (isReady === false) return null;\n\n return (\n <LoadingGate i18nKeys={i18nKeys}>\n <div className={isCompactChrome ? 'space-y-field' : 'space-y-section'}>\n {!isCompactChrome && (\n <ResourceLayout_Header\n resourceContext={currentResourceContext}\n navigationZone={navigationZone}\n navigationInitiator={navigationInitiator}\n />\n )}\n\n {hasRequestSchema ? (\n <ResourceAutomatedForm\n resourceContext={currentResourceContext}\n navigationZone={navigationZone}\n onSuccess={handleSuccess}\n onError={handleError}\n onCancel={onCancel}\n showErrorSummary\n className={isCompactChrome ? undefined : 'max-w-2xl'}\n updateLikeMutationFallbackMode={resolveDeclaredUpdateLikeMutationFallbackMode(operation)}\n />\n ) : (\n <div className={isCompactChrome ? 'bg-muted rounded-lg p-container' : 'bg-muted rounded-lg p-container max-w-2xl'}>\n <p className=\"text-sm text-muted-foreground mb-field\">\n {resolveComponentLabel({\n tComponent,\n componentType: FrontendComponentType.RESOURCES_LAYOUTS_ACTION,\n key: 'confirmMessage',\n })}\n </p>\n <Button\n type=\"button\"\n variant={ButtonVariants_Variant.DEFAULT}\n onClick={handleExecuteWithCriticalGuard}\n disabled={isExecutingWithoutForm || isBootstrappingResourceId}\n >\n {isExecutingWithoutForm || isBootstrappingResourceId ? runningActionLabel : actionLabel}\n </Button>\n </div>\n )}\n\n {/* CRITICAL double-validation for a zero-input action: type the action label to proceed. */}\n {pendingCriticalExecute && (\n <OperationsConfirmCritical\n open\n onOpenChange={(open) => { if (!open) handleCancelCriticalExecute(); }}\n cancelCallback={handleCancelCriticalExecute}\n validationCallback={handleConfirmCriticalExecute}\n requireTypedConfirmation\n confirmationPhrase={criticalConfirmationPhrase}\n />\n )}\n </div>\n </LoadingGate>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ResourceLayout_SemanticOperationFallback.js","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceLayout_SemanticOperationFallback.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useCallback, useEffect, useMemo, useState } from 'react';\n\nimport { ResourceAutomatedForm } from '~wildo-frontend-lib/components/form/automated/ResourceAutomatedForm';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { resolveOperationDisplayTitle } from '~wildo-frontend-lib/core/i18n/operation-title-resolution.utils';\nimport { resolveComponentLabel } from '~wildo-frontend-lib/core/i18n/component-label-resolution.utils';\nimport { useResourceOperationViewContext } from '~wildo-frontend-lib/core/resources/ResourceOperationViewContext';\nimport { resolveDeclaredUpdateLikeMutationFallbackMode } from '~wildo-frontend-lib/core/resources/rmm/update-like-mutation-fallback.frontend';\nimport { ResourceLayout_Header } from '~wildo-frontend-lib/components/resources/ResourceLayout_Header';\nimport { LoadingGate } from '~wildo-frontend-lib/core/loading/LoadingGate';\nimport { Button } from '~wildo-frontend-lib/components/actions/button';\nimport { ButtonVariants_Variant } from '~wildo-frontend-lib/components/actions/button';\nimport { OperationsConfirmCritical } from '~wildo-frontend-lib/components/feedback/operations-confirm-critical';\nimport { FrontendComponentType } from '@wildo-ai/presets-components-models';\nimport { ResourcesConfig_OperationPathUtils, ResourceOperationRiskLevel } from '@wildo-ai/saas-models';\nimport {\n isGeneratedFileRegenerateOperation,\n operationCollectsNoCallerInput,\n} from '~wildo-frontend-lib/core/resources/operation-semantics.frontend.utils';\nimport { useOperationDirectExecution } from '~wildo-frontend-lib/core/resources/useOperationDirectExecution';\n\nimport { BaseResourcesLayoutProps } from './component-props.resources-layout.frontend.schemas';\nimport { LoggerFrontendService } from '~wildo-frontend-lib/core/monitoring/logger.frontend.service';\n\nconst logger = LoggerFrontendService.getLogger();\n\n/**\n * How much page chrome the operation body renders around its form.\n *\n * The body itself — the RMM contract, the CRITICAL double-validation, the success/error events, the\n * zero-input confirm path — is IDENTICAL in every host, and that is the point of this being a mode\n * rather than a second component. A popover that re-implemented the execution flow to drop a header\n * would be a second source of the operation contract, which is how the bulk selector came to be\n * spelled two different ways.\n */\nexport enum ResourceOperationHostChrome {\n /** Page/overlay host: resource header above the form, form width capped for readability. */\n FULL = 'full',\n /**\n * Anchored host (a popover): no header — the button the panel is anchored to already names the\n * action, so a heading repeats it — and no width cap, because the panel sizes itself.\n */\n COMPACT = 'compact',\n}\n\nexport interface ResourceLayoutSemanticOperationFallbackProps extends BaseResourcesLayoutProps {\n errorMessage: string;\n errorComponent: string;\n onSuccess?: (result: unknown) => void;\n /**\n * Cancel affordance forwarded to the action form's footer (audit D5).\n * Overlay hosts pass the modal-close path here — see `ResourceAutomatedForm.onCancel`.\n */\n onCancel?: () => void;\n /** Chrome density — see {@link ResourceOperationHostChrome}. Defaults to `FULL`. */\n chrome?: ResourceOperationHostChrome;\n}\n\n/**\n * Temporary default body for custom operations that already resolve into a core\n * host family via `resourceOperationLike`, but do not yet have a richer\n * family-specific preset/runtime. This keeps the new host-family contract safe\n * while preserving the proven action-form execution flow.\n */\nexport function ResourceLayout_SemanticOperationFallback({\n ...props\n}: ResourceLayoutSemanticOperationFallbackProps): React.JSX.Element | null {\n const { errorMessage, errorComponent, onSuccess, onCancel, chrome } = props;\n const {\n resourceContext: currentResourceContext,\n navigationZone,\n navigationInitiator,\n resourceType,\n operation,\n } = useResourceOperationViewContext();\n /*\n * THIS HOST READS THE AMBIENT OPERATION VIEW, NOT ITS `resourceContext` PROP — so a host rendered\n * outside its operation's own view silently executes the wrong operation, and the mismatch is\n * reported here rather than left to show up as an empty form.\n *\n * It did show up that way: the anchored \"Change status\" panel on the Wonder Todos list was handed\n * `change_status` and rendered the LISTING's form — an empty schema, so the authored template's\n * `workflow` group drew its heading and nothing else, and Submit would have run `list`. The fix is\n * `ResourceOperationDetachedHost`, which establishes the view a detached host needs; this is the\n * signal for the next host that renders the fallback without one.\n *\n * Reported, not thrown. A throw here would take down a working page to announce a wrong form one\n * layer inside it, and the navigation hosts that pass a `resourceContext` identical to their view\n * must keep rendering. Compared by operation PATH KEY, which names the operation AND its variant —\n * the bulk `admin` variant and the default variant of one operation are different forms.\n */\n const handedOperation = props.resourceContext?.operation;\n const handedOperationKey = handedOperation\n ? ResourcesConfig_OperationPathUtils.createOperationPathKeyFromOperation(handedOperation)\n : undefined;\n const ambientOperationKey = operation\n ? ResourcesConfig_OperationPathUtils.createOperationPathKeyFromOperation(operation)\n : undefined;\n useEffect(() => {\n if (handedOperationKey && ambientOperationKey && handedOperationKey !== ambientOperationKey) {\n logger.error(\n `[ResourceLayout_SemanticOperationFallback] handed \"${handedOperationKey}\" but the nearest operation view is `\n + `\"${ambientOperationKey}\" — this host would render and execute the wrong operation. A host rendered outside its `\n + `operation's own view must provide one; use ResourceOperationDetachedHost.`,\n );\n }\n }, [handedOperationKey, ambientOperationKey]);\n const { tComponent, tResourceOperation, isReady } = useI18n({\n component: FrontendComponentType.RESOURCES_LAYOUTS_ACTION,\n resource: resourceType,\n });\n\n const i18nKeys = useMemo(() => [\n `resources.${resourceType}`,\n `components.${FrontendComponentType.RESOURCES_LAYOUTS_ACTION}`,\n ], [resourceType]);\n // True while a CRITICAL zero-input action awaits typed double-validation.\n const [pendingCriticalExecute, setPendingCriticalExecute] = useState(false);\n\n /*\n * The form-less execution — RMM-or-direct, the target-id bootstrap, the outcome announcement — is\n * `useOperationDirectExecution`, shared with the DROPDOWN host. The form below is handed the same\n * success and failure paths, so every way this host can finish means the same thing.\n */\n const {\n execute,\n isExecuting: isExecutingWithoutForm,\n isBootstrapping: isBootstrappingResourceId,\n completeWithSuccess: handleSuccess,\n reportFailure: handleError,\n } = useOperationDirectExecution({ onSuccess, errorMessage, errorComponent });\n\n const actionLabel = useMemo(() => {\n // An ungenerated operation title is its key path (#1450) — this is a LABEL, so it must look\n // missing. The type-to-confirm phrase further down deliberately differs: it goes through\n // `resolveOperationDisplayTitle` and falls back to the operation IDENTIFIER, because that one is\n // text a person has to TYPE, and nobody should be asked to type a key path.\n return tResourceOperation(resourceType, String(operation.operationIdentifier), 'title');\n }, [operation.operationIdentifier, resourceType, tResourceOperation]);\n const runningActionLabel = useMemo(() => {\n return resolveComponentLabel({\n tComponent,\n componentType: FrontendComponentType.RESOURCES_LAYOUTS_ACTION,\n key: 'runningAction',\n params: { actionLabel },\n });\n }, [actionLabel, tComponent]);\n\n const handleExecuteWithoutForm = useCallback(async () => {\n await execute();\n }, [execute]);\n\n // \"Is there a form?\" is the same question the action ladder asks before firing directly — a bulk\n // body holding only the host-filled selector is not one, and rendered as an empty form with Save.\n const hasRequestSchema = !operationCollectsNoCallerInput(operation) && !isGeneratedFileRegenerateOperation(operation);\n\n // ── CRITICAL \"double validation\" on the zero-input action button ─────────\n // A CRITICAL custom op with no requestDto executes from a single confirm\n // button here. Gate it with the same typed double-validation the action bar\n // and form-submit paths use, so every CRITICAL op is consistent regardless of\n // its input shape.\n const isCriticalOperation = operation.riskLevel === ResourceOperationRiskLevel.CRITICAL;\n const criticalConfirmationPhrase = useMemo(\n () => resolveOperationDisplayTitle(tResourceOperation, resourceType, String(operation.operationIdentifier)),\n [tResourceOperation, resourceType, operation.operationIdentifier],\n );\n const handleExecuteWithCriticalGuard = useCallback(() => {\n if (isCriticalOperation) {\n setPendingCriticalExecute(true);\n return;\n }\n void handleExecuteWithoutForm();\n }, [isCriticalOperation, handleExecuteWithoutForm]);\n const handleConfirmCriticalExecute = useCallback(() => {\n setPendingCriticalExecute(false);\n void handleExecuteWithoutForm();\n }, [handleExecuteWithoutForm]);\n const handleCancelCriticalExecute = useCallback(() => {\n setPendingCriticalExecute(false);\n }, []);\n\n const isCompactChrome = chrome === ResourceOperationHostChrome.COMPACT;\n\n if (isReady === false) return null;\n\n return (\n <LoadingGate i18nKeys={i18nKeys}>\n <div className={isCompactChrome ? 'space-y-field' : 'space-y-section'}>\n {!isCompactChrome && (\n <ResourceLayout_Header\n resourceContext={currentResourceContext}\n navigationZone={navigationZone}\n navigationInitiator={navigationInitiator}\n />\n )}\n\n {hasRequestSchema ? (\n <ResourceAutomatedForm\n resourceContext={currentResourceContext}\n navigationZone={navigationZone}\n onSuccess={handleSuccess}\n onError={handleError}\n onCancel={onCancel}\n showErrorSummary\n className={isCompactChrome ? undefined : 'max-w-2xl'}\n updateLikeMutationFallbackMode={resolveDeclaredUpdateLikeMutationFallbackMode(operation)}\n />\n ) : (\n <div className={isCompactChrome ? 'bg-muted rounded-lg p-container' : 'bg-muted rounded-lg p-container max-w-2xl'}>\n <p className=\"text-sm text-muted-foreground mb-field\">\n {resolveComponentLabel({\n tComponent,\n componentType: FrontendComponentType.RESOURCES_LAYOUTS_ACTION,\n key: 'confirmMessage',\n })}\n </p>\n <Button\n type=\"button\"\n variant={ButtonVariants_Variant.DEFAULT}\n onClick={handleExecuteWithCriticalGuard}\n disabled={isExecutingWithoutForm || isBootstrappingResourceId}\n >\n {isExecutingWithoutForm || isBootstrappingResourceId ? runningActionLabel : actionLabel}\n </Button>\n </div>\n )}\n\n {/* CRITICAL double-validation for a zero-input action: type the action label to proceed. */}\n {pendingCriticalExecute && (\n <OperationsConfirmCritical\n open\n onOpenChange={(open) => { if (!open) handleCancelCriticalExecute(); }}\n cancelCallback={handleCancelCriticalExecute}\n validationCallback={handleConfirmCriticalExecute}\n requireTypedConfirmation\n confirmationPhrase={criticalConfirmationPhrase}\n />\n )}\n </div>\n </LoadingGate>\n );\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceLayout_SortControl.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"ResourceLayout_SortControl.d.ts","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceLayout_SortControl.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAyC,MAAM,OAAO,CAAC;AAkC9D,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,+BAA+B;IAC9C,oDAAoD;IACpD,YAAY,EAAE,MAAM,CAAC;IACrB,iFAAiF;IACjF,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,sEAAsE;IACtE,YAAY,EAAE,SAAS,SAAS,EAAE,CAAC;IACnC,gDAAgD;IAChD,YAAY,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,IAAI,CAAC;IAC3C,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAiHD,eAAO,MAAM,0BAA0B,GAAI,sEAMxC,+BAA+B,KAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAqKxD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceLayout_SortControl.js","sourceRoot":"","sources":["../../../../src/components/resources/ResourceLayout_SortControl.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * ResourceLayout_SortControl — multi-field sort control for collection views.\n *\n * A compact icon + active-count badge button (a sort glyph, matching the\n * icon-only Filters trigger) that opens a popover holding an ORDERED list of\n * sort rules (\"sort by Created By ↓, then Is Public ↑\"). Each rule has a\n * direction toggle and a remove control; priority is reordered by **dragging**\n * the grip handle (the same `@dnd-kit` pattern `AutomatedArrayField` uses — pointer\n * drag + keyboard-sensor a11y). Unused fields are appended via \"Add sort\".\n * Priority = list order.\n *\n * Produces `SortState[]` (highest priority first), compatible with\n * `ResourceSearchCallParameters.sort` and the LIST `sort=a:desc,b:asc` query\n * serialization. The table body drives the SAME `SortState[]` from its column\n * headers, so cards and table share one sort model.\n */\n\nimport React, { useMemo, useCallback, useState } from 'react';\nimport {\n DndContext,\n closestCenter,\n KeyboardSensor,\n PointerSensor,\n useSensor,\n useSensors,\n type DragEndEvent,\n} from '@dnd-kit/core';\nimport {\n SortableContext,\n useSortable,\n arrayMove,\n sortableKeyboardCoordinates,\n verticalListSortingStrategy,\n} from '@dnd-kit/sortable';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { useIconRegistry } from '~wildo-frontend-lib/core/icons/useIconRegistry';\nimport { StandardIconReference, IconSize } from '~wildo-frontend-lib/core/icons/icon-registry.frontend.schemas';\nimport { cn } from '~wildo-frontend-lib/core/ui/cn';\nimport { Button, ButtonVariants_Variant } from '~wildo-frontend-lib/components/actions/button';\nimport {\n Popover,\n PopoverTrigger,\n PopoverContent,\n} from '~wildo-frontend-lib/components/overlays/floating/popover';\nimport { FrontendComponentType, ButtonSize } from '@wildo-ai/presets-components-models';\nimport { HorizontalAlign } from '@wildo-ai/zod-decorators';\n\n// =============================================================================\n// TYPES\n// =============================================================================\n\nexport interface SortState {\n field: string;\n direction: 'asc' | 'desc';\n}\n\nexport interface ResourceLayout_SortControlProps {\n /** Resource type for i18n field label resolution */\n resourceType: string;\n /** Available sort fields (from the LIST/SEARCH operation config `sortFields`) */\n sortFields: readonly string[];\n /** Active sort rules, highest priority first (empty = no sorting). */\n currentSorts: readonly SortState[];\n /** Callback with the next ordered rule list. */\n onSortChange: (sorts: SortState[]) => void;\n /** Optional className for the trigger. */\n className?: string;\n}\n\n// =============================================================================\n// DND PRIMITIVES (mirrors AutomatedArrayField — single source of the drag pattern)\n// =============================================================================\n\n/**\n * Converts a dnd-kit Transform to a CSS translate3d string.\n * Inlined to avoid the `@dnd-kit/utilities` dependency (same as AutomatedArrayField).\n */\nfunction transformToString(\n transform: { x: number; y: number; scaleX: number; scaleY: number } | null,\n): string | undefined {\n if (!transform) return undefined;\n return `translate3d(${Math.round(transform.x)}px, ${Math.round(transform.y)}px, 0)`;\n}\n\n// Module-level sensor options so they are not recreated each render.\nconst POINTER_SENSOR_OPTIONS = { activationConstraint: { distance: 8 } } as const;\nconst KEYBOARD_SENSOR_OPTIONS = { coordinateGetter: sortableKeyboardCoordinates } as const;\n\ninterface SortableSortRuleProps {\n rule: SortState;\n index: number;\n /** Show the drag handle only when there is more than one rule to reorder. */\n reorderable: boolean;\n label: string;\n reorderLabel: string;\n ascLabel: string;\n descLabel: string;\n removeLabel: string;\n onToggleDirection: (index: number) => void;\n onRemove: (index: number) => void;\n renderIcon: (request: StandardIconReference, opts: { size: IconSize; className?: string }) => React.ReactElement;\n}\n\n/**\n * One sortable rule row. The drag listeners live on the grip handle only (not the\n * whole row) so the direction-toggle and remove controls stay clickable. The\n * sortable id is the rule's `field` — stable across reorders and unique because a\n * field can appear at most once in the sort list.\n */\nfunction SortableSortRule({\n rule,\n index,\n reorderable,\n label,\n reorderLabel,\n ascLabel,\n descLabel,\n removeLabel,\n onToggleDirection,\n onRemove,\n renderIcon,\n}: SortableSortRuleProps): React.JSX.Element {\n const { attributes, listeners, setNodeRef, transform, transition, isDragging } = useSortable({\n id: rule.field,\n disabled: !reorderable,\n });\n const isAsc = rule.direction === 'asc';\n const style: React.CSSProperties = {\n transform: transformToString(transform),\n transition,\n opacity: isDragging ? 0.5 : undefined,\n zIndex: isDragging ? 10 : undefined,\n position: 'relative',\n };\n\n return (\n <div\n ref={setNodeRef}\n style={style}\n className=\"flex items-center gap-element-sm rounded-md bg-muted/40 px-element-sm py-1\"\n >\n {reorderable && (\n <button\n type=\"button\"\n className={cn(\n 'shrink-0 cursor-grab touch-none rounded p-0.5 text-muted-foreground/60',\n 'hover:bg-accent/50 hover:text-muted-foreground',\n 'focus-ring-offset active:cursor-grabbing',\n )}\n aria-label={reorderLabel}\n {...attributes}\n {...listeners}\n >\n {renderIcon(StandardIconReference.GRIP_VERTICAL, { size: IconSize.SM })}\n </button>\n )}\n <span className=\"flex-1 truncate text-sm\">{label}</span>\n <Button\n type=\"button\" variant={ButtonVariants_Variant.OUTLINE} size={ButtonSize.SM}\n onClick={() => onToggleDirection(index)}\n className=\"h-6 gap-1 px-2 text-xs\"\n >\n {renderIcon(isAsc ? StandardIconReference.CHEVRON_UP : StandardIconReference.CHEVRON_DOWN, { size: IconSize.XS })}\n {isAsc ? ascLabel : descLabel}\n </Button>\n <Button\n type=\"button\" variant={ButtonVariants_Variant.GHOST} size={ButtonSize.ICON_SM}\n className=\"h-5 w-5 p-0 text-muted-foreground\"\n onClick={() => onRemove(index)} aria-label={removeLabel}\n >\n {renderIcon(StandardIconReference.X_MARK, { size: IconSize.XS })}\n </Button>\n </div>\n );\n}\n\n// =============================================================================\n// COMPONENT\n// =============================================================================\n\nexport const ResourceLayout_SortControl = ({\n resourceType,\n sortFields,\n currentSorts,\n onSortChange,\n className,\n}: ResourceLayout_SortControlProps): React.JSX.Element | null => {\n const { tResourceFieldDisplay, tComponent, isReady } = useI18n({\n component: FrontendComponentType.RESOURCES_LAYOUTS_LIST,\n resource: resourceType,\n });\n const { renderIcon } = useIconRegistry();\n // Controlled open so the popover survives the re-render each rule edit triggers.\n // The host renders the toolbar OUTSIDE its LoadingGate, so refetch no longer\n // remounts this control; `onFocusOutside` (below) keeps it open when a clicked\n // \"+ field\" button unmounts and focus briefly escapes.\n const [open, setOpen] = useState(false);\n\n // DnD sensors: pointer (small activation distance to avoid accidental drags) +\n // keyboard (sortable-aware coordinate getter for a11y).\n const sensors = useSensors(\n useSensor(PointerSensor, POINTER_SENSOR_OPTIONS),\n useSensor(KeyboardSensor, KEYBOARD_SENSOR_OPTIONS),\n );\n\n const labelFor = useCallback(\n (field: string): string => tResourceFieldDisplay(resourceType, field, 'label'),\n [tResourceFieldDisplay, resourceType],\n );\n\n const unsortedFields = useMemo(\n () => sortFields.filter((f) => !currentSorts.some((s) => s.field === f)),\n [sortFields, currentSorts],\n );\n\n // Stable sortable ids for SortableContext (one per active rule, keyed by field).\n const sortableIds = useMemo(() => currentSorts.map((s) => s.field), [currentSorts]);\n\n const toggleDirection = useCallback((index: number) => {\n onSortChange(currentSorts.map((s, i) =>\n i === index ? { ...s, direction: s.direction === 'asc' ? 'desc' : 'asc' } : s,\n ));\n }, [currentSorts, onSortChange]);\n\n const removeRule = useCallback((index: number) => {\n onSortChange(currentSorts.filter((_, i) => i !== index));\n }, [currentSorts, onSortChange]);\n\n const handleDragEnd = useCallback((event: DragEndEvent) => {\n const { active, over } = event;\n if (over && active.id !== over.id) {\n const oldIndex = currentSorts.findIndex((s) => s.field === active.id);\n const newIndex = currentSorts.findIndex((s) => s.field === over.id);\n if (oldIndex !== -1 && newIndex !== -1) {\n onSortChange(arrayMove([...currentSorts], oldIndex, newIndex));\n }\n }\n }, [currentSorts, onSortChange]);\n\n const addField = useCallback((field: string) => {\n onSortChange([...currentSorts, { field, direction: 'asc' }]);\n }, [currentSorts, onSortChange]);\n\n const clearAll = useCallback(() => onSortChange([]), [onSortChange]);\n\n if (sortFields.length === 0 || !isReady) return null;\n\n const tc = (key: string): string => tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, key);\n const activeCount = currentSorts.length;\n const reorderable = activeCount > 1;\n const sortIcon = renderIcon(StandardIconReference.CHEVRONS_UP_DOWN, { size: IconSize.SM });\n const ascLabel = tc('sortAsc');\n const descLabel = tc('sortDesc');\n const removeLabel = tc('removeSort');\n const reorderLabel = tc('reorderSort');\n\n return (\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n <Button\n type=\"button\"\n variant={ButtonVariants_Variant.OUTLINE}\n size={ButtonSize.SM}\n aria-label={tc('sortLabel')}\n title={tc('sortLabel')}\n className={cn('gap-1.5', className)}\n >\n <span aria-hidden=\"true\">{sortIcon}</span>\n {activeCount > 0 && (\n <span className=\"inline-flex items-center justify-center min-w-5 h-5 px-1 text-xs font-semibold rounded-full bg-primary text-primary-foreground\">\n {activeCount}\n </span>\n )}\n </Button>\n </PopoverTrigger>\n\n <PopoverContent\n align={HorizontalAlign.START}\n className=\"w-72 p-element-sm space-y-element-sm\"\n // Editing a rule (add / remove) unmounts the clicked button, so focus\n // escapes to <body> and Radix would dismiss the popover. Keep it open for\n // focus-driven interactions; genuine outside POINTER clicks still close it\n // (so the user can click away to dismiss). `onInteractOutside` is the union\n // Radix actually consults — guarding `onFocusOutside` alone is not enough.\n onInteractOutside={(e) => {\n const type = e.detail.originalEvent?.type;\n const isPointer = type === 'pointerdown' || type === 'mousedown' || type === 'touchstart' || type === 'click';\n if (!isPointer) e.preventDefault();\n }}\n >\n <div className=\"flex items-center justify-between px-element-sm\">\n <span className=\"text-xs font-medium text-muted-foreground\">{tc('sortLabel')}</span>\n {activeCount > 0 && (\n <Button\n type=\"button\"\n variant={ButtonVariants_Variant.GHOST}\n size={ButtonSize.SM}\n onClick={clearAll}\n className=\"h-auto py-0.5 text-xs text-muted-foreground\"\n >\n {tc('clearSort')}\n </Button>\n )}\n </div>\n\n {/* Active sort rules, highest priority first — drag the grip to reorder. */}\n <DndContext sensors={sensors} collisionDetection={closestCenter} onDragEnd={handleDragEnd}>\n <SortableContext items={sortableIds} strategy={verticalListSortingStrategy}>\n <div className=\"space-y-element-sm\">\n {currentSorts.map((rule, index) => (\n <SortableSortRule\n key={rule.field}\n rule={rule}\n index={index}\n reorderable={reorderable}\n label={labelFor(rule.field)}\n reorderLabel={reorderLabel}\n ascLabel={ascLabel}\n descLabel={descLabel}\n removeLabel={removeLabel}\n onToggleDirection={toggleDirection}\n onRemove={removeRule}\n renderIcon={renderIcon}\n />\n ))}\n </div>\n </SortableContext>\n </DndContext>\n\n {/* Add a field to the sort (appended at lowest priority) */}\n {unsortedFields.length > 0 && (\n <div className=\"space-y-1 border-t border-border/50 pt-element-sm\">\n <span className=\"px-element-sm text-xs text-muted-foreground\">{tc('addSort')}</span>\n <div className=\"flex flex-wrap gap-1 px-element-sm\">\n {unsortedFields.map((field) => (\n <Button\n key={field}\n type=\"button\" variant={ButtonVariants_Variant.GHOST} size={ButtonSize.SM}\n onClick={() => addField(field)}\n className=\"h-6 gap-1 px-2 text-xs\"\n >\n <span aria-hidden=\"true\">{renderIcon(StandardIconReference.PLUS, { size: IconSize.XS })}</span>\n {labelFor(field)}\n </Button>\n ))}\n </div>\n </div>\n )}\n </PopoverContent>\n </Popover>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"ResourceLayout_SortControl.js","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceLayout_SortControl.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * ResourceLayout_SortControl — multi-field sort control for collection views.\n *\n * A compact icon + active-count badge button (a sort glyph, matching the\n * icon-only Filters trigger) that opens a popover holding an ORDERED list of\n * sort rules (\"sort by Created By ↓, then Is Public ↑\"). Each rule has a\n * direction toggle and a remove control; priority is reordered by **dragging**\n * the grip handle (the same `@dnd-kit` pattern `AutomatedArrayField` uses — pointer\n * drag + keyboard-sensor a11y). Unused fields are appended via \"Add sort\".\n * Priority = list order.\n *\n * Produces `SortState[]` (highest priority first), compatible with\n * `ResourceSearchCallParameters.sort` and the LIST `sort=a:desc,b:asc` query\n * serialization. The table body drives the SAME `SortState[]` from its column\n * headers, so cards and table share one sort model.\n */\n\nimport React, { useMemo, useCallback, useState } from 'react';\nimport {\n DndContext,\n closestCenter,\n KeyboardSensor,\n PointerSensor,\n useSensor,\n useSensors,\n type DragEndEvent,\n} from '@dnd-kit/core';\nimport {\n SortableContext,\n useSortable,\n arrayMove,\n sortableKeyboardCoordinates,\n verticalListSortingStrategy,\n} from '@dnd-kit/sortable';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { useIconRegistry } from '~wildo-frontend-lib/core/icons/useIconRegistry';\nimport { StandardIconReference, IconSize } from '~wildo-frontend-lib/core/icons/icon-registry.frontend.schemas';\nimport { cn } from '~wildo-frontend-lib/core/ui/cn';\nimport { Button, ButtonVariants_Variant } from '~wildo-frontend-lib/components/actions/button';\nimport {\n Popover,\n PopoverTrigger,\n PopoverContent,\n} from '~wildo-frontend-lib/components/overlays/floating/popover';\nimport { FrontendComponentType, ButtonSize } from '@wildo-ai/presets-components-models';\nimport { HorizontalAlign } from '@wildo-ai/zod-decorators';\n\n// =============================================================================\n// TYPES\n// =============================================================================\n\nexport interface SortState {\n field: string;\n direction: 'asc' | 'desc';\n}\n\nexport interface ResourceLayout_SortControlProps {\n /** Resource type for i18n field label resolution */\n resourceType: string;\n /** Available sort fields (from the LIST/SEARCH operation config `sortFields`) */\n sortFields: readonly string[];\n /** Active sort rules, highest priority first (empty = no sorting). */\n currentSorts: readonly SortState[];\n /** Callback with the next ordered rule list. */\n onSortChange: (sorts: SortState[]) => void;\n /** Optional className for the trigger. */\n className?: string;\n}\n\n// =============================================================================\n// DND PRIMITIVES (mirrors AutomatedArrayField — single source of the drag pattern)\n// =============================================================================\n\n/**\n * Converts a dnd-kit Transform to a CSS translate3d string.\n * Inlined to avoid the `@dnd-kit/utilities` dependency (same as AutomatedArrayField).\n */\nfunction transformToString(\n transform: { x: number; y: number; scaleX: number; scaleY: number } | null,\n): string | undefined {\n if (!transform) return undefined;\n return `translate3d(${Math.round(transform.x)}px, ${Math.round(transform.y)}px, 0)`;\n}\n\n// Module-level sensor options so they are not recreated each render.\nconst POINTER_SENSOR_OPTIONS = { activationConstraint: { distance: 8 } } as const;\nconst KEYBOARD_SENSOR_OPTIONS = { coordinateGetter: sortableKeyboardCoordinates } as const;\n\ninterface SortableSortRuleProps {\n rule: SortState;\n index: number;\n /** Show the drag handle only when there is more than one rule to reorder. */\n reorderable: boolean;\n label: string;\n reorderLabel: string;\n ascLabel: string;\n descLabel: string;\n removeLabel: string;\n onToggleDirection: (index: number) => void;\n onRemove: (index: number) => void;\n renderIcon: (request: StandardIconReference, opts: { size: IconSize; className?: string }) => React.ReactElement;\n}\n\n/**\n * One sortable rule row. The drag listeners live on the grip handle only (not the\n * whole row) so the direction-toggle and remove controls stay clickable. The\n * sortable id is the rule's `field` — stable across reorders and unique because a\n * field can appear at most once in the sort list.\n */\nfunction SortableSortRule({\n rule,\n index,\n reorderable,\n label,\n reorderLabel,\n ascLabel,\n descLabel,\n removeLabel,\n onToggleDirection,\n onRemove,\n renderIcon,\n}: SortableSortRuleProps): React.JSX.Element {\n const { attributes, listeners, setNodeRef, transform, transition, isDragging } = useSortable({\n id: rule.field,\n disabled: !reorderable,\n });\n const isAsc = rule.direction === 'asc';\n const style: React.CSSProperties = {\n transform: transformToString(transform),\n transition,\n opacity: isDragging ? 0.5 : undefined,\n zIndex: isDragging ? 10 : undefined,\n position: 'relative',\n };\n\n return (\n <div\n ref={setNodeRef}\n style={style}\n className=\"flex items-center gap-element-sm rounded-md bg-muted/40 px-element-sm py-1\"\n >\n {reorderable && (\n <button\n type=\"button\"\n className={cn(\n 'shrink-0 cursor-grab touch-none rounded p-0.5 text-muted-foreground/60',\n 'hover:bg-accent/50 hover:text-muted-foreground',\n 'focus-ring-offset active:cursor-grabbing',\n )}\n aria-label={reorderLabel}\n {...attributes}\n {...listeners}\n >\n {renderIcon(StandardIconReference.GRIP_VERTICAL, { size: IconSize.SM })}\n </button>\n )}\n <span className=\"flex-1 truncate text-sm\">{label}</span>\n <Button\n type=\"button\" variant={ButtonVariants_Variant.OUTLINE} size={ButtonSize.SM}\n onClick={() => onToggleDirection(index)}\n className=\"h-6 gap-1 px-2 text-xs\"\n >\n {renderIcon(isAsc ? StandardIconReference.CHEVRON_UP : StandardIconReference.CHEVRON_DOWN, { size: IconSize.XS })}\n {isAsc ? ascLabel : descLabel}\n </Button>\n <Button\n type=\"button\" variant={ButtonVariants_Variant.GHOST} size={ButtonSize.ICON_SM}\n className=\"h-5 w-5 p-0 text-muted-foreground\"\n onClick={() => onRemove(index)} aria-label={removeLabel}\n >\n {renderIcon(StandardIconReference.X_MARK, { size: IconSize.XS })}\n </Button>\n </div>\n );\n}\n\n// =============================================================================\n// COMPONENT\n// =============================================================================\n\nexport const ResourceLayout_SortControl = ({\n resourceType,\n sortFields,\n currentSorts,\n onSortChange,\n className,\n}: ResourceLayout_SortControlProps): React.JSX.Element | null => {\n const { tResourceFieldDisplay, tComponent, isReady } = useI18n({\n component: FrontendComponentType.RESOURCES_LAYOUTS_LIST,\n resource: resourceType,\n });\n const { renderIcon } = useIconRegistry();\n // Controlled open so the popover survives the re-render each rule edit triggers.\n // The host renders the toolbar OUTSIDE its LoadingGate, so refetch no longer\n // remounts this control; `onFocusOutside` (below) keeps it open when a clicked\n // \"+ field\" button unmounts and focus briefly escapes.\n const [open, setOpen] = useState(false);\n\n // DnD sensors: pointer (small activation distance to avoid accidental drags) +\n // keyboard (sortable-aware coordinate getter for a11y).\n const sensors = useSensors(\n useSensor(PointerSensor, POINTER_SENSOR_OPTIONS),\n useSensor(KeyboardSensor, KEYBOARD_SENSOR_OPTIONS),\n );\n\n const labelFor = useCallback(\n (field: string): string => tResourceFieldDisplay(resourceType, field, 'label'),\n [tResourceFieldDisplay, resourceType],\n );\n\n const unsortedFields = useMemo(\n () => sortFields.filter((f) => !currentSorts.some((s) => s.field === f)),\n [sortFields, currentSorts],\n );\n\n // Stable sortable ids for SortableContext (one per active rule, keyed by field).\n const sortableIds = useMemo(() => currentSorts.map((s) => s.field), [currentSorts]);\n\n const toggleDirection = useCallback((index: number) => {\n onSortChange(currentSorts.map((s, i) =>\n i === index ? { ...s, direction: s.direction === 'asc' ? 'desc' : 'asc' } : s,\n ));\n }, [currentSorts, onSortChange]);\n\n const removeRule = useCallback((index: number) => {\n onSortChange(currentSorts.filter((_, i) => i !== index));\n }, [currentSorts, onSortChange]);\n\n const handleDragEnd = useCallback((event: DragEndEvent) => {\n const { active, over } = event;\n if (over && active.id !== over.id) {\n const oldIndex = currentSorts.findIndex((s) => s.field === active.id);\n const newIndex = currentSorts.findIndex((s) => s.field === over.id);\n if (oldIndex !== -1 && newIndex !== -1) {\n onSortChange(arrayMove([...currentSorts], oldIndex, newIndex));\n }\n }\n }, [currentSorts, onSortChange]);\n\n const addField = useCallback((field: string) => {\n onSortChange([...currentSorts, { field, direction: 'asc' }]);\n }, [currentSorts, onSortChange]);\n\n const clearAll = useCallback(() => onSortChange([]), [onSortChange]);\n\n if (sortFields.length === 0 || !isReady) return null;\n\n const tc = (key: string): string => tComponent(FrontendComponentType.RESOURCES_LAYOUTS_LIST, key);\n const activeCount = currentSorts.length;\n const reorderable = activeCount > 1;\n const sortIcon = renderIcon(StandardIconReference.CHEVRONS_UP_DOWN, { size: IconSize.SM });\n const ascLabel = tc('sortAsc');\n const descLabel = tc('sortDesc');\n const removeLabel = tc('removeSort');\n const reorderLabel = tc('reorderSort');\n\n return (\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n <Button\n type=\"button\"\n variant={ButtonVariants_Variant.OUTLINE}\n size={ButtonSize.SM}\n aria-label={tc('sortLabel')}\n title={tc('sortLabel')}\n className={cn('gap-1.5', className)}\n >\n <span aria-hidden=\"true\">{sortIcon}</span>\n {activeCount > 0 && (\n <span className=\"inline-flex items-center justify-center min-w-5 h-5 px-1 text-xs font-semibold rounded-full bg-primary text-primary-foreground\">\n {activeCount}\n </span>\n )}\n </Button>\n </PopoverTrigger>\n\n <PopoverContent\n align={HorizontalAlign.START}\n className=\"w-72 p-element-sm space-y-element-sm\"\n // Editing a rule (add / remove) unmounts the clicked button, so focus\n // escapes to <body> and Radix would dismiss the popover. Keep it open for\n // focus-driven interactions; genuine outside POINTER clicks still close it\n // (so the user can click away to dismiss). `onInteractOutside` is the union\n // Radix actually consults — guarding `onFocusOutside` alone is not enough.\n onInteractOutside={(e) => {\n const type = e.detail.originalEvent?.type;\n const isPointer = type === 'pointerdown' || type === 'mousedown' || type === 'touchstart' || type === 'click';\n if (!isPointer) e.preventDefault();\n }}\n >\n <div className=\"flex items-center justify-between px-element-sm\">\n <span className=\"text-xs font-medium text-muted-foreground\">{tc('sortLabel')}</span>\n {activeCount > 0 && (\n <Button\n type=\"button\"\n variant={ButtonVariants_Variant.GHOST}\n size={ButtonSize.SM}\n onClick={clearAll}\n className=\"h-auto py-0.5 text-xs text-muted-foreground\"\n >\n {tc('clearSort')}\n </Button>\n )}\n </div>\n\n {/* Active sort rules, highest priority first — drag the grip to reorder. */}\n <DndContext sensors={sensors} collisionDetection={closestCenter} onDragEnd={handleDragEnd}>\n <SortableContext items={sortableIds} strategy={verticalListSortingStrategy}>\n <div className=\"space-y-element-sm\">\n {currentSorts.map((rule, index) => (\n <SortableSortRule\n key={rule.field}\n rule={rule}\n index={index}\n reorderable={reorderable}\n label={labelFor(rule.field)}\n reorderLabel={reorderLabel}\n ascLabel={ascLabel}\n descLabel={descLabel}\n removeLabel={removeLabel}\n onToggleDirection={toggleDirection}\n onRemove={removeRule}\n renderIcon={renderIcon}\n />\n ))}\n </div>\n </SortableContext>\n </DndContext>\n\n {/* Add a field to the sort (appended at lowest priority) */}\n {unsortedFields.length > 0 && (\n <div className=\"space-y-1 border-t border-border/50 pt-element-sm\">\n <span className=\"px-element-sm text-xs text-muted-foreground\">{tc('addSort')}</span>\n <div className=\"flex flex-wrap gap-1 px-element-sm\">\n {unsortedFields.map((field) => (\n <Button\n key={field}\n type=\"button\" variant={ButtonVariants_Variant.GHOST} size={ButtonSize.SM}\n onClick={() => addField(field)}\n className=\"h-6 gap-1 px-2 text-xs\"\n >\n <span aria-hidden=\"true\">{renderIcon(StandardIconReference.PLUS, { size: IconSize.XS })}</span>\n {labelFor(field)}\n </Button>\n ))}\n </div>\n </div>\n )}\n </PopoverContent>\n </Popover>\n );\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceLayout_Update.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"ResourceLayout_Update.d.ts","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceLayout_Update.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAA+B,MAAM,OAAO,CAAC;AAWpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kFAAkF,CAAA;AAOvH,OAAO,EAAE,wBAAwB,EAAE,MAAM,qDAAqD,CAAA;AAI9F,MAAM,WAAW,wCAAyC,SAAQ,wBAAwB;CAAG;AAE7F,eAAO,MAAM,mCAAmC,GAAI,0DAIjD,wCAAwC,KAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IA0GjE,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,wCAAwC,GAAG,oBAAoB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAU9I"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceLayout_Update.js","sourceRoot":"","sources":["../../../../src/components/resources/ResourceLayout_Update.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAc,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,wDAAwD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,qEAAqE,CAAC;AAC5G,OAAO,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gEAAgE,CAAC;AACvG,OAAO,EAAE,uBAAuB,EAAE,MAAM,6DAA6D,CAAC;AACtG,OAAO,EAAE,2BAA2B,EAAE,MAAM,gEAAgE,CAAC;AAC7G,OAAO,EAAE,kCAAkC,EAAE,MAAM,uEAAuE,CAAC;AAC3H,OAAO,EAAE,qBAAqB,EAAE,MAAM,gEAAgE,CAAC;AAGvG,OAAO,EAAE,uBAAuB,EAAE,MAAM,iFAAiF,CAAA;AACzH,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAA;AAC5F,OAAO,EACL,iCAAiC,EACjC,kCAAkC,GACnC,MAAM,2EAA2E,CAAC;AAEnF,OAAO,EAAE,wCAAwC,EAAE,MAAM,4CAA4C,CAAC;AAKtG,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,EAClD,eAAe,EACf,cAAc,EACd,mBAAmB,EACsB,EAA4B,EAAE;IACvE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QACtC,SAAS,EAAE,qBAAqB,CAAC,wBAAwB;KAC1D,CAAC,CAAC;IACH,MAAM,EACJ,eAAe,EAAE,sBAAsB,EACvC,SAAS,EACT,yBAAyB,EACzB,uBAAuB,EACvB,gBAAgB,EAChB,WAAW,GACZ,GAAG,2BAA2B,CAAC;QAC9B,eAAe;QACf,cAAc;QACd,mBAAmB;KACpB,CAAC,CAAC;IACH,MAAM,qBAAqB,GAAG,qBAAqB,CAAC;QAClD,UAAU;QACV,aAAa,EAAE,qBAAqB,CAAC,wBAAwB;QAC7D,GAAG,EAAE,kBAAkB;KACxB,CAAC,CAAC;IACH,MAAM,4BAA4B,GAAG,qBAAqB,CAAC;QACzD,UAAU;QACV,aAAa,EAAE,qBAAqB,CAAC,wBAAwB;QAC7D,GAAG,EAAE,yBAAyB;KAC/B,CAAC,CAAC;IACH,MAAM,EAAE,YAAY,EAAE,GAAG,uBAAuB,EAAE,CAAC;IACnD;;;;;OAKG;IACH,MAAM,oBAAoB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC5C,IAAI,SAAS,CAAC,eAAe,EAAE,CAAC;YAC9B,gBAAgB,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,6EAA6E;QAC7E,4EAA4E;QAC5E,4EAA4E;QAC5E,8EAA8E;QAC9E,gFAAgF;QAChF,uBAAuB,CAAC;YACtB,kBAAkB,EAAE,cAAc,KAAK,cAAc,CAAC,OAAO;gBAC3D,CAAC,CAAC,oBAAoB,CAAC,OAAO;gBAC9B,CAAC,CAAC,SAAS;SACd,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,gBAAgB,EAAE,uBAAuB,EAAE,cAAc,EAAE,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC;IAE3F,MAAM,eAAe,GAAG,kCAAkC,CAAC,sBAAsB,EAAE,SAAS,CAAC,CAAC;IAC9F,MAAM,iBAAiB,GAAG,WAAW,CAAC,CAAC,MAAe,EAAE,EAAE;QACxD,eAAe,CAAC,MAAM,CAAC,CAAC;QACxB,oBAAoB,EAAE,CAAC;IACzB,CAAC,EAAE,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAE5C,kEAAkE;IAClE,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,KAAY,EAAE,EAAE;QAC/C,WAAW,CAAC,KAAK,EAAE,qBAAqB,EAAE,qCAAqC,CAAC,CAAC;IACnF,CAAC,EAAE,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAAC,CAAC;IAEzC,2EAA2E;IAC3E,yEAAyE;IACzE,wCAAwC;IACxC,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CAAC,CAAC,cAAc,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EACpF,CAAC,cAAc,EAAE,YAAY,CAAC,CAC/B,CAAC;IAEF,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,IAAI,yBAAyB,EAAE,CAAC;QAC9B,OAAO,CACL,KAAC,wCAAwC,IACvC,eAAe,EAAE,sBAAsB,EACvC,cAAc,EAAE,cAAc,EAC9B,mBAAmB,EAAE,mBAAmB,EACxC,YAAY,EAAE,4BAA4B,EAC1C,cAAc,EAAC,qCAAqC,EACpD,SAAS,EAAE,oBAAoB,EAC/B,QAAQ,EAAE,YAAY,GACtB,CACH,CAAC;IACJ,CAAC;IAED,OAAO,CACL,eAAK,SAAS,EAAC,iBAAiB,aAE9B,KAAC,qBAAqB,IACpB,eAAe,EAAE,sBAAsB,EACvC,cAAc,EAAE,cAAc,EAC9B,mBAAmB,EAAE,mBAAmB,GACxC,EAGF,KAAC,qBAAqB,IACpB,eAAe,EAAE,sBAAsB,EACvC,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE,iBAAiB,EAC5B,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,YAAY,EACtB,gBAAgB,SAChB,IACE,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,UAAU,qBAAqB,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,EAAmE;IACzH,MAAM,iBAAiB,GAAG,kCAAkC,CAA2C,KAAK,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IACxI,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO,KAAC,iBAAiB,OAAK,KAAK,GAAI,CAAC;IAC1C,CAAC;IAED,MAAM,eAAe,GAAG,iCAAiC,CAAC,KAAK,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAC3F,MAAM,cAAc,GAAG,MAAM,IAAI,eAAe,IAAI,eAAe,CAAC,OAAO,CAAC;IAC5E,MAAM,SAAS,GAAG,uBAAuB,CAA2C,qBAAqB,CAAC,wBAAwB,EAAE,uBAAuB,CAAC,CAAC,cAAc,CAAC,CAAC;IAC7K,OAAO,KAAC,SAAS,OAAK,KAAK,GAAI,CAAC;AAClC,CAAC","sourcesContent":["/**\n * Default UPDATE layout preset.\n *\n * ── Tabbed Mode Awareness ─────────\n *\n * When NavigationZoneContentModel.TABBED is active, UPDATE forms can be opened\n * as tabs alongside READ views. The pane renders a tab bar with both\n * READ and UPDATE entries visible.\n *\n * Tab-specific behaviors for UPDATE:\n * - Successful form submission navigates back to READ. In tab mode,\n * this replaces the tab entry's content (TAB stays, operation changes).\n * - Cancel closes the UPDATE and reverts the tab to READ (or closes\n * the tab if UPDATE was opened via PUSH-on-tab from another pane).\n * - Dirty form + tab switch: prompt unsaved changes warning.\n * - Tab label shows \"[Resource Title] (editing)\" to distinguish from READ.\n *\n * Key invariant: UPDATE in a tab is ALWAYS for a single resource.\n * Bulk UPDATE goes through standard PUSH navigation, not TAB.\n *\n * No changes needed now — ZoneContentRenderer handles tab rendering.\n * This component already works in isolation and supports multiple instances.\n */\n\nimport React, { useCallback, useMemo } from 'react';\nimport { NavigationTransition } from '@wildo-ai/saas-models';\nimport { NavigationZone } from '~wildo-frontend-lib/core/navigation/navigation.schemas';\nimport { ResourceAutomatedForm } from '~wildo-frontend-lib/components/form/automated/ResourceAutomatedForm';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { resolveComponentLabel } from '~wildo-frontend-lib/core/i18n/component-label-resolution.utils';\nimport { useNavigationController } from '~wildo-frontend-lib/core/navigation/useNavigationController';\nimport { useResourceOperationSurface } from '~wildo-frontend-lib/core/resources/useResourceOperationSurface';\nimport { useResourceOperationOutcomeEmitter } from '~wildo-frontend-lib/core/resources/useResourceOperationOutcomeEmitter';\nimport { ResourceLayout_Header } from '~wildo-frontend-lib/components/resources/ResourceLayout_Header';\n\nimport { ComponentPresetProps } from '~wildo-frontend-lib/core/components-registry/component-registry.frontend.schemas'\nimport { createComponentResolver } from '~wildo-frontend-lib/core/components-registry/component-resolver.frontend.helper'\nimport { CorePresetNames, FrontendComponentType } from '@wildo-ai/presets-components-models'\nimport {\n resolveResourceOperationPresetKey,\n resolveResourceOperationCustomView,\n} from '~wildo-frontend-lib/core/resources/resource-operation-view.frontend.utils';\nimport { BaseResourcesLayoutProps } from './component-props.resources-layout.frontend.schemas'\nimport { ResourceLayout_SemanticOperationFallback } from './ResourceLayout_SemanticOperationFallback';\n\n// --- Contract ---\nexport interface ResourceLayoutPreset_Update_DefaultProps extends BaseResourcesLayoutProps {}\n\nexport const ResourceLayoutPreset_Update_Default = ({\n resourceContext,\n navigationZone,\n navigationInitiator\n}: ResourceLayoutPreset_Update_DefaultProps): React.JSX.Element | null => {\n const { tComponent, isReady } = useI18n({\n component: FrontendComponentType.RESOURCES_LAYOUTS_UPDATE,\n });\n const {\n resourceContext: currentResourceContext,\n operation,\n isSemanticCustomOperation,\n navigateToPreferredRead,\n goBackWithinZone,\n reportError,\n } = useResourceOperationSurface({\n resourceContext,\n navigationZone,\n navigationInitiator,\n });\n const formUpdateFailedLabel = resolveComponentLabel({\n tComponent,\n componentType: FrontendComponentType.RESOURCES_LAYOUTS_UPDATE,\n key: 'formUpdateFailed',\n });\n const semanticOperationFailedLabel = resolveComponentLabel({\n tComponent,\n componentType: FrontendComponentType.RESOURCES_LAYOUTS_UPDATE,\n key: 'semanticOperationFailed',\n });\n const { closeOverlay } = useNavigationController();\n /**\n * What happens AFTER a successful update — navigation only. Announcing the outcome is\n * `useResourceOperationOutcomeEmitter`'s job: the form branch below calls it, and the semantic\n * branch hands this to `ResourceLayout_SemanticOperationFallback`, which announces on its own.\n * A bulk update goes back to the listing it came from; a single-row one reveals the record.\n */\n const navigateAfterSuccess = useCallback(() => {\n if (operation.isBulkOperation) {\n goBackWithinZone();\n return;\n }\n\n // When the update form is hosted in an OVERLAY, revealing the updated record\n // must BREAK OUT of the transient dialog into a structural zone — otherwise\n // the READ resolves through `fromOverlay.transitions` and stacks inside the\n // dialog, leaving the popup stuck open. PROMOTE clears the overlay and places\n // the reveal in PRIMARY. Non-overlay hosts keep the default source-zone policy.\n navigateToPreferredRead({\n transitionOverride: navigationZone === NavigationZone.OVERLAY\n ? NavigationTransition.PROMOTE\n : undefined,\n });\n }, [goBackWithinZone, navigateToPreferredRead, navigationZone, operation.isBulkOperation]);\n\n const announceOutcome = useResourceOperationOutcomeEmitter(currentResourceContext, operation);\n const handleFormSuccess = useCallback((result: unknown) => {\n announceOutcome(result);\n navigateAfterSuccess();\n }, [announceOutcome, navigateAfterSuccess]);\n\n // Handle form error - integrate with centralized error management\n const handleError = useCallback((error: Error) => {\n reportError(error, formUpdateFailedLabel, 'ResourceLayoutPreset_Update_Default');\n }, [formUpdateFailedLabel, reportError]);\n\n // Audit D5: overlay-hosted update forms get a secondary Cancel button that\n // closes the modal through the same path as the top-right X. Non-overlay\n // hosts keep the single-primary footer.\n const handleCancel = useMemo(\n () => (navigationZone === NavigationZone.OVERLAY ? () => closeOverlay() : undefined),\n [navigationZone, closeOverlay],\n );\n\n if (!isReady) return null;\n\n if (isSemanticCustomOperation) {\n return (\n <ResourceLayout_SemanticOperationFallback\n resourceContext={currentResourceContext}\n navigationZone={navigationZone}\n navigationInitiator={navigationInitiator}\n errorMessage={semanticOperationFailedLabel}\n errorComponent=\"ResourceLayoutPreset_Update_Default\"\n onSuccess={navigateAfterSuccess}\n onCancel={handleCancel}\n />\n );\n }\n\n return (\n <div className=\"space-y-section\">\n {/* Header with back button */}\n <ResourceLayout_Header\n resourceContext={currentResourceContext}\n navigationZone={navigationZone}\n navigationInitiator={navigationInitiator}\n />\n\n {/* Form */}\n <ResourceAutomatedForm\n resourceContext={currentResourceContext}\n navigationZone={navigationZone}\n onSuccess={handleFormSuccess}\n onError={handleError}\n onCancel={handleCancel}\n showErrorSummary\n />\n </div>\n );\n};\n\nexport function ResourceLayout_Update({ preset, ...props }: ResourceLayoutPreset_Update_DefaultProps & ComponentPresetProps): React.JSX.Element {\n const ComponentOverride = resolveResourceOperationCustomView<ResourceLayoutPreset_Update_DefaultProps>(props.resourceContext.operation);\n if (ComponentOverride) {\n return <ComponentOverride {...props} />;\n }\n\n const operationPreset = resolveResourceOperationPresetKey(props.resourceContext.operation);\n const resolvedPreset = preset ?? operationPreset ?? CorePresetNames.DEFAULT;\n const Component = createComponentResolver<ResourceLayoutPreset_Update_DefaultProps>(FrontendComponentType.RESOURCES_LAYOUTS_UPDATE, 'ResourceLayout_Update')(resolvedPreset);\n return <Component {...props} />;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ResourceLayout_Update.js","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceLayout_Update.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * Default UPDATE layout preset.\n *\n * ── Tabbed Mode Awareness ─────────\n *\n * When NavigationZoneContentModel.TABBED is active, UPDATE forms can be opened\n * as tabs alongside READ views. The pane renders a tab bar with both\n * READ and UPDATE entries visible.\n *\n * Tab-specific behaviors for UPDATE:\n * - Successful form submission navigates back to READ. In tab mode,\n * this replaces the tab entry's content (TAB stays, operation changes).\n * - Cancel closes the UPDATE and reverts the tab to READ (or closes\n * the tab if UPDATE was opened via PUSH-on-tab from another pane).\n * - Dirty form + tab switch: prompt unsaved changes warning.\n * - Tab label shows \"[Resource Title] (editing)\" to distinguish from READ.\n *\n * Key invariant: UPDATE in a tab is ALWAYS for a single resource.\n * Bulk UPDATE goes through standard PUSH navigation, not TAB.\n *\n * No changes needed now — ZoneContentRenderer handles tab rendering.\n * This component already works in isolation and supports multiple instances.\n */\n\nimport React, { useCallback, useMemo } from 'react';\nimport { NavigationTransition } from '@wildo-ai/saas-models';\nimport { NavigationZone } from '~wildo-frontend-lib/core/navigation/navigation.schemas';\nimport { ResourceAutomatedForm } from '~wildo-frontend-lib/components/form/automated/ResourceAutomatedForm';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { resolveComponentLabel } from '~wildo-frontend-lib/core/i18n/component-label-resolution.utils';\nimport { useNavigationController } from '~wildo-frontend-lib/core/navigation/useNavigationController';\nimport { useResourceOperationSurface } from '~wildo-frontend-lib/core/resources/useResourceOperationSurface';\nimport { useResourceOperationOutcomeEmitter } from '~wildo-frontend-lib/core/resources/useResourceOperationOutcomeEmitter';\nimport { ResourceLayout_Header } from '~wildo-frontend-lib/components/resources/ResourceLayout_Header';\n\nimport { ComponentPresetProps } from '~wildo-frontend-lib/core/components-registry/component-registry.frontend.schemas'\nimport { createComponentResolver } from '~wildo-frontend-lib/core/components-registry/component-resolver.frontend.helper'\nimport { CorePresetNames, FrontendComponentType } from '@wildo-ai/presets-components-models'\nimport {\n resolveResourceOperationPresetKey,\n resolveResourceOperationCustomView,\n} from '~wildo-frontend-lib/core/resources/resource-operation-view.frontend.utils';\nimport { BaseResourcesLayoutProps } from './component-props.resources-layout.frontend.schemas'\nimport { ResourceLayout_SemanticOperationFallback } from './ResourceLayout_SemanticOperationFallback';\n\n// --- Contract ---\nexport interface ResourceLayoutPreset_Update_DefaultProps extends BaseResourcesLayoutProps {}\n\nexport const ResourceLayoutPreset_Update_Default = ({\n resourceContext,\n navigationZone,\n navigationInitiator\n}: ResourceLayoutPreset_Update_DefaultProps): React.JSX.Element | null => {\n const { tComponent, isReady } = useI18n({\n component: FrontendComponentType.RESOURCES_LAYOUTS_UPDATE,\n });\n const {\n resourceContext: currentResourceContext,\n operation,\n isSemanticCustomOperation,\n navigateToPreferredRead,\n goBackWithinZone,\n reportError,\n } = useResourceOperationSurface({\n resourceContext,\n navigationZone,\n navigationInitiator,\n });\n const formUpdateFailedLabel = resolveComponentLabel({\n tComponent,\n componentType: FrontendComponentType.RESOURCES_LAYOUTS_UPDATE,\n key: 'formUpdateFailed',\n });\n const semanticOperationFailedLabel = resolveComponentLabel({\n tComponent,\n componentType: FrontendComponentType.RESOURCES_LAYOUTS_UPDATE,\n key: 'semanticOperationFailed',\n });\n const { closeOverlay } = useNavigationController();\n /**\n * What happens AFTER a successful update — navigation only. Announcing the outcome is\n * `useResourceOperationOutcomeEmitter`'s job: the form branch below calls it, and the semantic\n * branch hands this to `ResourceLayout_SemanticOperationFallback`, which announces on its own.\n * A bulk update goes back to the listing it came from; a single-row one reveals the record.\n */\n const navigateAfterSuccess = useCallback(() => {\n if (operation.isBulkOperation) {\n goBackWithinZone();\n return;\n }\n\n // When the update form is hosted in an OVERLAY, revealing the updated record\n // must BREAK OUT of the transient dialog into a structural zone — otherwise\n // the READ resolves through `fromOverlay.transitions` and stacks inside the\n // dialog, leaving the popup stuck open. PROMOTE clears the overlay and places\n // the reveal in PRIMARY. Non-overlay hosts keep the default source-zone policy.\n navigateToPreferredRead({\n transitionOverride: navigationZone === NavigationZone.OVERLAY\n ? NavigationTransition.PROMOTE\n : undefined,\n });\n }, [goBackWithinZone, navigateToPreferredRead, navigationZone, operation.isBulkOperation]);\n\n const announceOutcome = useResourceOperationOutcomeEmitter(currentResourceContext, operation);\n const handleFormSuccess = useCallback((result: unknown) => {\n announceOutcome(result);\n navigateAfterSuccess();\n }, [announceOutcome, navigateAfterSuccess]);\n\n // Handle form error - integrate with centralized error management\n const handleError = useCallback((error: Error) => {\n reportError(error, formUpdateFailedLabel, 'ResourceLayoutPreset_Update_Default');\n }, [formUpdateFailedLabel, reportError]);\n\n // Audit D5: overlay-hosted update forms get a secondary Cancel button that\n // closes the modal through the same path as the top-right X. Non-overlay\n // hosts keep the single-primary footer.\n const handleCancel = useMemo(\n () => (navigationZone === NavigationZone.OVERLAY ? () => closeOverlay() : undefined),\n [navigationZone, closeOverlay],\n );\n\n if (!isReady) return null;\n\n if (isSemanticCustomOperation) {\n return (\n <ResourceLayout_SemanticOperationFallback\n resourceContext={currentResourceContext}\n navigationZone={navigationZone}\n navigationInitiator={navigationInitiator}\n errorMessage={semanticOperationFailedLabel}\n errorComponent=\"ResourceLayoutPreset_Update_Default\"\n onSuccess={navigateAfterSuccess}\n onCancel={handleCancel}\n />\n );\n }\n\n return (\n <div className=\"space-y-section\">\n {/* Header with back button */}\n <ResourceLayout_Header\n resourceContext={currentResourceContext}\n navigationZone={navigationZone}\n navigationInitiator={navigationInitiator}\n />\n\n {/* Form */}\n <ResourceAutomatedForm\n resourceContext={currentResourceContext}\n navigationZone={navigationZone}\n onSuccess={handleFormSuccess}\n onError={handleError}\n onCancel={handleCancel}\n showErrorSummary\n />\n </div>\n );\n};\n\nexport function ResourceLayout_Update({ preset, ...props }: ResourceLayoutPreset_Update_DefaultProps & ComponentPresetProps): React.JSX.Element {\n const ComponentOverride = resolveResourceOperationCustomView<ResourceLayoutPreset_Update_DefaultProps>(props.resourceContext.operation);\n if (ComponentOverride) {\n return <ComponentOverride {...props} />;\n }\n\n const operationPreset = resolveResourceOperationPresetKey(props.resourceContext.operation);\n const resolvedPreset = preset ?? operationPreset ?? CorePresetNames.DEFAULT;\n const Component = createComponentResolver<ResourceLayoutPreset_Update_DefaultProps>(FrontendComponentType.RESOURCES_LAYOUTS_UPDATE, 'ResourceLayout_Update')(resolvedPreset);\n return <Component {...props} />;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceLayout_Update.labels.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"ResourceLayout_Update.labels.d.ts","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceLayout_Update.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,KAAK,mBAAmB,EAA2B,MAAM,qCAAqC,CAAC;AAM1I,eAAO,MAAM,4BAA4B,EAAE,mBAAmB,EAW7D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceLayout_Update.labels.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"ResourceLayout_Update.labels.js","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceLayout_Update.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAA4B,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAE1I,2EAA2E;AAC3E,6EAA6E;AAC7E,+EAA+E;AAE/E,MAAM,CAAC,MAAM,4BAA4B,GAA0B;IACjE;QACE,GAAG,EAAE,kBAAkB;QACvB,IAAI,EAAE,SAAS,CAAC,OAAO;QACvB,OAAO,EAAE,4DAA4D;KACtE;IACD;QACE,GAAG,EAAE,yBAAyB;QAC9B,IAAI,EAAE,SAAS,CAAC,OAAO;QACvB,OAAO,EAAE,8HAA8H;KACxI;CACF,CAAC;AACF,uBAAuB,CAAC,qBAAqB,CAAC,wBAAwB,EAAE,4BAA4B,CAAC,CAAC","sourcesContent":["import { FrontendComponentType, LabelKind, type LabellingUnitaryDef, registerComponentLabels } from '@wildo-ai/presets-components-models';\n\n// Companion-only label metadata for this component: keys + params + (where\n// authored) per-key purpose / kind / variable meaning. Statically scanned by\n// the dev companion; NOT imported at runtime, so it never ships in the bundle.\n\nexport const ResourcesLayoutsUpdateLabels: LabellingUnitaryDef[] = [\n {\n ref: 'formUpdateFailed',\n kind: LabelKind.MESSAGE,\n purpose: 'Error shown when submitting the resource update form fails',\n },\n {\n ref: 'semanticOperationFailed',\n kind: LabelKind.MESSAGE,\n purpose: 'Error shown to the user when a custom action hosted by the update layout could not be completed (avoid the word \"operation\")',\n },\n];\nregisterComponentLabels(FrontendComponentType.RESOURCES_LAYOUTS_UPDATE, ResourcesLayoutsUpdateLabels);\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceListItemRenderer.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"ResourceListItemRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceListItemRenderer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceListItemRenderer.js","sourceRoot":"","sources":["../../../../src/components/resources/ResourceListItemRenderer.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * ResourceListItemRenderer\n *\n * Shared item renderer for List and Search presets.\n * Encapsulates schema-aware field rendering (FK, enum, date, array),\n * primary/secondary field split, and per-item operations.\n *\n * Used by List_Default and Search_Default to ensure parity in how\n * resource items are displayed.\n */\n\nimport React, { useMemo, useCallback } from 'react';\nimport { z } from 'zod';\nimport {\n CoreResourceOperation,\n ResourceOperationDisplayMode,\n ErrorCustomMessageReference,\n} from '@wildo-ai/saas-models';\nimport type { AnyFrontendResourceConfiguration, FrontendResourcesRegistry } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport { getEnumValues, DisplayChromeMode, ViewportBreakpoint } from '@wildo-ai/zod-decorators';\nimport { UIContext } from '~wildo-frontend-lib/core/ui/UIContext';\nimport { useLongPress } from '~wildo-frontend-lib/components/resources/useLongPress';\nimport { DisplayField } from '~wildo-frontend-lib/components/data-display/DisplayField';\nimport { DisplayChromeProvider } from '~wildo-frontend-lib/components/data-display/chromes/DisplayChromeContext';\nimport { ResourceSummaryDisplayer } from '~wildo-frontend-lib/components/data-display/ResourceSummaryDisplayer';\nimport { Text } from '~wildo-frontend-lib/components/typography/text';\nimport { FrontendResourceUtils, frontendResourceUtils } from '~wildo-frontend-lib/core/resources/frontend-resource.utils';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { AutomatedLayoutFrontendUtils } from '~wildo-frontend-lib/core/automated-layout/automated-layout.frontend.utils';\nimport { resolveResourceLabelEnumSchema } from '~wildo-frontend-lib/core/resources/resource-label-field-paths.frontend.utils';\nimport type { FrontendResourceOperationContext } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport { cn } from '~wildo-frontend-lib/core/ui/cn';\nimport { CheckboxRoot } from '~wildo-frontend-lib/components/form/controls/boolean/checkbox';\nimport {\n CARD_ROW_PADDING_CLASS,\n CARD_SELECTION_RAIL_CLASS,\n CARD_SELECTION_SLOT_CLASS,\n} from '~wildo-frontend-lib/components/resources/collection-card-layout.utils';\nimport type { CardActionPlacement } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport { resolveCardActionPlacementClasses } from './card-action-placement.utils';\n\n// =============================================================================\n// TYPES\n// =============================================================================\n\nexport interface ResourceListItemRendererProps {\n /** The data item to render */\n item: Record<string, unknown>;\n /** Resource type */\n resourceType: string;\n /** Resource configuration */\n resourceConfig: AnyFrontendResourceConfiguration;\n /** Resource registry */\n registry: FrontendResourcesRegistry;\n /** Ordered list of summary fields to display */\n summaryFields: string[];\n /** Pre-resolved field labels (from i18n) */\n fieldLabelsMap: Record<string, string>;\n /** Function to resolve enum display values via i18n — `fieldSchema` names the enum the field declares (#966) */\n tResourceFieldEnumValue: (resourceType: string, fieldName: string, enumValue: string, fieldSchema: z.ZodTypeAny | undefined) => string;\n /**\n * What a click on the row does — and, by its ABSENCE, that a click does nothing.\n *\n * Optional since 2026-09-20, and the optionality is the point. The card used to take this\n * REQUIRED and paint itself `cursor-pointer` + `role=\"button\"` + `tabIndex={0}` unconditionally,\n * so every summary row in the product announced itself as a button. Whether the click could act\n * was decided somewhere else entirely — in the host, by whether a READ operation resolves to a\n * view — and the two were never compared. On the audit trail the answer was \"it cannot\", so the\n * row invited a click, took focus, answered Enter and Space, and did nothing at any of them.\n *\n * A host that cannot open a row now omits this, and the affordance disappears with the behaviour\n * because both are read off the same value.\n */\n onItemClick?: (item: Record<string, unknown>) => void;\n /** Optional operations component to render for this item */\n operationsSlot?: React.ReactNode;\n /**\n * Where the per-item operations sit within the card (2-axis anchor +\n * orientation). Resolved by the host from `collectionDisplayConfig.cardActionPlacement`.\n * Omitted → the default (inline-end, vertically centered, horizontal row).\n */\n cardActionPlacement?: CardActionPlacement;\n /**\n * Selection affordance. When `selectable`, a leading checkbox renders and\n * toggles selection via `onToggleSelect` (independent of the row click, which\n * still navigates). `isSelected` drives the checkbox + a selected highlight.\n */\n selectable?: boolean;\n isSelected?: boolean;\n onToggleSelect?: (item: Record<string, unknown>) => void;\n /**\n * Whether the collection is currently in SELECTION MODE (any item selected).\n * Mobile UX: a long-press enters selection mode, and while active a plain TAP\n * toggles selection instead of navigating (the \"long-press to multi-select\"\n * pattern). Gated to touch/mobile — on desktop a click always navigates and\n * the checkbox is the explicit toggle.\n */\n selectionActive?: boolean;\n /** Accessible label for the selection checkbox (host provides the i18n string). */\n selectAriaLabel?: string;\n /** Optional className for the root container */\n className?: string;\n /** Interactive CSS classes from design system (hover state, transition) */\n interactiveClasses?: {\n hover?: string;\n transition?: string;\n };\n}\n\n// =============================================================================\n// FIELD VALUE RENDERER\n// =============================================================================\n\nexport interface FieldValueRendererProps {\n fieldName: string;\n value: unknown;\n fieldSchema: z.ZodTypeAny | undefined;\n fieldLabel: string | undefined;\n resourceType: string;\n tResourceFieldEnumValue: (resourceType: string, fieldName: string, enumValue: string, fieldSchema: z.ZodTypeAny | undefined) => string;\n /**\n * The whole record this cell belongs to, forwarded to the dispatcher as `parentData`.\n *\n * Optional so a caller rendering a bare value is unaffected — but every collection caller passes\n * it, because a field frequently needs a sibling to render correctly and a cell that does not know\n * its row cannot reach one.\n */\n record?: Record<string, unknown>;\n}\n\n/**\n * Renders a single summary field VALUE through the shared decorator-driven\n * display pipeline (`DisplayField` → `DisplayValueDispatcher` → presets) — the\n * SAME path the detail/read view uses — so the FULL zod-UI display policy is\n * honored in lists/tables by default: enum → badge (+ per-value colors),\n * boolean → checkmark / yes-no, string → truncate / multiline, FK → reference,\n * date → formatted, money/bigdecimal/duration/etc.\n *\n * Previously this re-implemented a weak subset (enum-as-plain-text, naive array\n * join, `String(value)` fallback) that silently ignored every\n * `{primitive}UI().display` decorator, so listings/tables diverged from the\n * detail view (e.g. a `displayMode: BADGE` enum rendered as plain text). Routing\n * through `DisplayField` removes that divergence and the maintenance burden of a\n * parallel renderer.\n *\n * The card (\"Label:\" prefix) and the table (column header) own the label, so the\n * value is rendered under COMPACT chrome — a bare value with no framework\n * label/description wrapper. i18n enum labels are threaded explicitly via\n * `enumLabels` because there is no surrounding `DisplayTemplateContext`\n * (which is what supplies them inside `AutomaticDisplayer`).\n */\nexport function FieldValueRenderer({\n fieldName,\n value,\n fieldSchema,\n fieldLabel,\n resourceType,\n record,\n tResourceFieldEnumValue,\n}: FieldValueRendererProps): React.JSX.Element | null {\n // Build the enum value→label map from the same i18n translator the list\n // already uses, so enum badges show translated labels rather than raw enum\n // values. Hook runs unconditionally, before the null-value early return.\n //\n // The vocabulary is read off the ENUM-BEARING schema — the field, or an array's element — through the\n // resolver the detail views and the labelling planner share. Asking only \"is the field itself an enum\"\n // left every array of an enum raw in a list or a table: a member directory printed `ORG_MEMBER` while\n // the same roles read \"Organization member\" on the member's own page.\n const enumLabels = useMemo<Record<string, string> | undefined>(() => {\n const enumSchema = fieldSchema ? resolveResourceLabelEnumSchema(fieldSchema) : undefined;\n if (!enumSchema) return undefined;\n const enumValues = getEnumValues(enumSchema);\n if (enumValues.length === 0) return undefined;\n return Object.fromEntries(\n enumValues.map((enumValue) => [enumValue, tResourceFieldEnumValue(resourceType, fieldName, enumValue, fieldSchema)]),\n );\n }, [fieldSchema, resourceType, fieldName, tResourceFieldEnumValue]);\n\n if (value === null || value === undefined) return null;\n\n return (\n <div className=\"flex min-w-0 items-baseline gap-element-sm\">\n {fieldLabel && <span className=\"text-xs text-muted-foreground\">{fieldLabel}:</span>}\n {fieldSchema ? (\n // COMPACT chrome → bare value with the full decorator policy applied.\n <DisplayChromeProvider displayChromeMode={DisplayChromeMode.COMPACT}>\n <DisplayField\n name={fieldName}\n schema={fieldSchema}\n value={value}\n enumLabels={enumLabels}\n // The ROW this cell belongs to. Every other display surface hands the dispatcher its\n // record as `parentData`; a collection cell did not, so anything a field needs from its\n // siblings was unreachable from a list or a table — including a foreign key's\n // `labelFallbackField`, which is why a member directory printed raw ObjectIds.\n parentData={record}\n disableInlineEdit\n className=\"min-w-0 truncate text-sm text-muted-foreground\"\n />\n </DisplayChromeProvider>\n ) : (\n // No schema resolved for this field — `DisplayField` requires a schema,\n // so fall back to a plain string (matches the previous default branch).\n <span className=\"min-w-0 truncate text-sm text-muted-foreground\">{String(value)}</span>\n )}\n </div>\n );\n}\n\n// =============================================================================\n// MAIN COMPONENT\n// =============================================================================\n\nexport function ResourceListItemRenderer({\n item,\n resourceType,\n resourceConfig,\n registry,\n summaryFields,\n fieldLabelsMap,\n tResourceFieldEnumValue,\n onItemClick,\n operationsSlot,\n cardActionPlacement,\n selectable = false,\n isSelected = false,\n onToggleSelect,\n selectionActive = false,\n selectAriaLabel,\n className,\n interactiveClasses,\n}: ResourceListItemRendererProps): React.JSX.Element {\n if (!resourceConfig?.resourceFieldIdentifier) {\n throw FrontendResourceUtils.buildConfigurationError(\n ErrorCustomMessageReference.FRONTEND_RESOURCE_FIELD_IDENTIFIER_NOT_FOUND,\n { resourceType, component: 'ResourceListItemRenderer' }\n );\n }\n const fieldIdentifier = resourceConfig.resourceFieldIdentifier as string;\n // Resolve the record's own id (`_id`), not the cross-resource field-identifier\n // name (`<resource>Id`) which is absent from a plain record — see\n // FrontendResourceUtils.getResourceObjectId.\n const itemId = FrontendResourceUtils.getResourceObjectId(item, fieldIdentifier);\n\n // Primary display: use computeFrontendResourceLabel for the primary value.\n // For a junction this resolves the server-projected instance label (e.g. a\n // `forwardedLabel` virtual field referenced by `getFrontendResourceLabel`).\n /*\n * The translator goes to the label callback. Without it `computeFrontendResourceLabel` falls back\n * to an IDENTITY `t`, so a label callback that words its row through the label tree rendered the\n * key — then its own fallback, a ref — on every card, while the same row's page header (which\n * passes `t`) read correctly (#1454: governed documents titled `document-definition:…` in lists).\n */\n const { t: tLabel, formatDate, formatDateTime } = useI18n({ resource: resourceType });\n const primaryLabel = useMemo((): string => {\n const label = FrontendResourceUtils.computeFrontendResourceLabel({\n resourceType,\n registry,\n currentObject: item,\n t: tLabel,\n formatDate,\n formatDateTime,\n });\n return String(label || item[summaryFields[0]] || `${resourceType} #${itemId}`);\n }, [item, resourceType, registry, summaryFields, itemId, tLabel, formatDate, formatDateTime]);\n\n // Secondary fields: every summary field EXCEPT the one already shown as the\n // primary label (title). The title comes from `computeFrontendResourceLabel`\n // — an arbitrary label strategy (a `string[]` join or a function), NOT\n // necessarily `summaryFields[0]`. Excluding the title positionally (`slice(1)`)\n // had two bugs: (a) it REPEATED the title when the label field wasn't first\n // (e.g. a list whose label is `name` but whose first summary field is `status`\n // → \"Name: …\" rendered under the identical title), and (b) it silently DROPPED\n // `summaryFields[0]` whenever that field wasn't the label. Excluding the title\n // by VALUE fixes both: the field whose value equals the title is the label\n // field wherever it sits, and every genuine non-label summary field is kept.\n // (The primary-scope FK is dropped upstream by\n // `ResourceLayoutUtils.detectSummaryFields`, so it never reaches here.)\n const secondaryFields = useMemo(\n () => summaryFields.filter((fieldName) => {\n const value = item[fieldName];\n if (value === null || value === undefined) return false;\n return String(value) !== primaryLabel;\n }),\n [summaryFields, item, primaryLabel],\n );\n\n // Schema shape for field type detection\n const schemaShape = useMemo(() => {\n const mainSchema = resourceConfig?.mainSchema;\n if (!mainSchema) return null;\n // Polymorphic resources feed a discriminated-union schema; resolve the union-aware field shape (else getObjectShape returns null for the union → no field labels).\n return AutomatedLayoutFrontendUtils.getObjectLikeFieldShape(mainSchema, { commonOnly: false }) ?? null;\n }, [resourceConfig]);\n\n // AUTHORED summary template — the `layout.summary` contract promises coverage\n // of \"cards, list items, FK references\". When a resource authors one, the card\n // defers its ENTIRE content region (title + body) to `ResourceSummaryDisplayer`:\n // the title is now a first-class template element (`<SummaryTitle />`, placed by\n // `<SummaryLayout>`), so a status badge can sit inline with the title and the\n // exact same composition renders in the FK popover. We pass the primary label we\n // already computed (correct `t`, junction forwardedLabel) into the displayer's\n // SummaryContext instead of rendering our own title above it.\n //\n // Resources WITHOUT an authored template keep the legacy host-owned title +\n // generic \"Label: value\" body: routing them through the GENERATED default\n // template would restyle every list in every app for no authored reason.\n const authoredSummaryTemplate = resourceConfig?.frontendConfiguration?.layout?.summary;\n\n const hoverClass = interactiveClasses?.hover ?? '';\n const transitionClass = interactiveClasses?.transition ?? '';\n // Resolve where the per-item actions sit (2-axis anchor → flex classes). The\n // content + actions share one flex container so actions never overlap text.\n const placement = resolveCardActionPlacementClasses(cardActionPlacement);\n\n // Mobile multi-select: a long-press ENTERS selection mode (selects this item);\n // while selection mode is active (`selectionActive`), a plain TAP toggles\n // selection instead of navigating. Gated to a mobile viewport — on desktop a\n // click always navigates and the checkbox is the explicit toggle. Long-press\n // is touch-only (the hook binds touch handlers).\n // Optional UIContext read: a rendering leaf shouldn't hard-require the shell's\n // UIProvider just to check the breakpoint — outside a provider (isolated\n // renders/tests) it degrades to desktop behavior (isMobile = false).\n const ui = React.useContext(UIContext);\n const isMobile = ui?.UIConfig?.currentBreakpoint === ViewportBreakpoint.MOBILE;\n const tapTogglesSelection = selectable && selectionActive && isMobile;\n // Long-press ENTERS selection mode — gated to the SAME condition as tap-toggle\n // (selectable + mobile viewport) so the two can't disagree (e.g. enter mode on\n // a tablet where tap-toggle is off, stranding the user mid-multiselect).\n const longPress = useLongPress(\n () => onToggleSelect?.(item),\n { enabled: selectable && !!onToggleSelect && isMobile },\n );\n\n /*\n * A row is INTERACTIVE when something can happen on it: the host gave it a click handler, or the\n * view is in mobile multi-select where a tap toggles selection. Everything the card says about\n * itself — the pointer, the button role, the focusability, the key handling — is read off this one\n * value, so the promise and the behaviour cannot drift apart.\n */\n const isActivatable = Boolean(onItemClick) || tapTogglesSelection;\n\n const handleActivate = () => {\n // Swallow the synthetic click that follows a long-press (it already selected).\n if (longPress.consumeLongPress()) return;\n if (tapTogglesSelection) {\n onToggleSelect?.(item);\n return;\n }\n onItemClick?.(item);\n };\n\n /*\n * ─── The card is NOT a button; its ACTIVATOR is ────────────────────────────────────────────\n *\n * The card root used to be `role=\"button\"` with `tabIndex={0}` and Enter/Space handling, and it\n * CONTAINED the row's selection checkbox and its \"More actions\" button. ARIA does not allow\n * interactive descendants inside a button, and assistive technology may flatten the whole card\n * into one control — a screen-reader user could reach \"open this record\" but not reliably\n * \"select it\" or \"its actions\". axe reported it as `nested-interactive`, serious, on every card\n * of the todos list (#1718).\n *\n * This is the settled card-with-a-primary-action shape: a real `<button>` carries the name and\n * the keyboard activation, and it is a SIBLING of the checkbox and the actions rather than their\n * container. It is laid over the whole card (`absolute inset-0`) so its focus ring outlines the\n * card and a click on empty space lands on it; the rail after it is positioned too, so it stacks\n * above and its controls stay directly clickable. The root keeps its pointer `onClick` and the\n * long-press, so a click on the card's TEXT still opens the record — pointer behaviour is\n * unchanged, and the keyboard path is now a button that needs no hand-written key handling.\n */\n return (\n <div\n className={cn(\n CARD_ROW_PADDING_CLASS, transitionClass,\n isActivatable && 'relative',\n // Both only when a click leads somewhere — see `isActivatable`.\n isActivatable && hoverClass,\n isActivatable && 'cursor-pointer',\n isSelected && 'bg-primary/5',\n // Prevent the browser text-selection that a long-press would start.\n selectable && 'select-none',\n className,\n )}\n onClick={isActivatable ? handleActivate : undefined}\n {...longPress.handlers}\n >\n {isActivatable && (\n <button\n type=\"button\"\n aria-label={String(primaryLabel)}\n // Selection state is conveyed by the row's checkbox; the bg tint is a purely visual\n // reinforcement, and `aria-pressed` would misdescribe a button that OPENS the record.\n className=\"absolute inset-0 rounded-[inherit] focus-ring-inset outline-hidden\"\n onClick={(e) => {\n // The root's own onClick would run the same activation again for this click.\n e.stopPropagation();\n handleActivate();\n }}\n />\n )}\n {/* Leading selection rail (only when the view is selectable). The checkbox\n toggles selection and stops propagation so it never triggers the row's\n navigation — mirrors the table select-cell contract. */}\n <div className={cn(CARD_SELECTION_RAIL_CLASS, isActivatable && 'relative')}>\n {/* stopPropagation on click, keydown AND touchstart: the card opens on a\n click and arms a long-press on a touch hold, so without these guards\n toggling the checkbox would also navigate, and a hold over it would arm\n the row's long-press. */}\n {selectable && (\n <div\n // `pt-0.5` optically centres the box on the first line of text beside it; the\n // HORIZONTAL half comes from the shared constant, which the header rail also reads.\n className={cn(CARD_SELECTION_SLOT_CLASS, 'pt-0.5')}\n onClick={(e) => e.stopPropagation()}\n onKeyDown={(e) => e.stopPropagation()}\n onTouchStart={(e) => e.stopPropagation()}\n >\n <CheckboxRoot\n checked={isSelected}\n onCheckedChange={() => onToggleSelect?.(item)}\n aria-label={selectAriaLabel ?? String(primaryLabel)}\n />\n </div>\n )}\n <div className={cn(placement.containerClass, 'min-w-0 flex-1')}>\n <div className={cn('space-y-item-xs', placement.contentClass)}>\n {authoredSummaryTemplate && resourceConfig?.mainSchema ? (\n // Authored template owns title + body. The title is fed via\n // SummaryContext (primaryLabel) and rendered by `<SummaryTitle />`\n // inside the template, so we do NOT render our own title here. The\n // region stays click-through so the whole card navigates (same as the\n // legacy body); an author who embeds a genuinely interactive control\n // stops propagation within their own template.\n <ResourceSummaryDisplayer\n resourceType={resourceType}\n schema={resourceConfig.mainSchema}\n data={item}\n primaryLabel={primaryLabel}\n />\n ) : (\n <>\n <Text as=\"p\" className=\"font-medium text-foreground\" truncate>{primaryLabel}</Text>\n {secondaryFields.map((fieldName) => {\n const value = item[fieldName];\n if (value === null || value === undefined) return null;\n return (\n <div key={fieldName}>\n <FieldValueRenderer\n fieldName={fieldName}\n value={value}\n fieldSchema={schemaShape?.[fieldName] as z.ZodTypeAny | undefined}\n fieldLabel={fieldLabelsMap[fieldName]}\n resourceType={resourceType}\n record={item as Record<string, unknown>}\n tResourceFieldEnumValue={tResourceFieldEnumValue}\n />\n </div>\n );\n })}\n </>\n )}\n </div>\n {operationsSlot && (\n // stopPropagation on click, keydown AND touchstart: an action tap or\n // keyboard activation must not also navigate the row, and a hold over\n // an action must not arm the row's long-press selection. (Mirrors the\n // checkbox rail — all three axes.)\n <div\n className={placement.actionsClass}\n onClick={(e) => e.stopPropagation()}\n onKeyDown={(e) => e.stopPropagation()}\n onTouchStart={(e) => e.stopPropagation()}\n >\n {operationsSlot}\n </div>\n )}\n </div>\n </div>\n </div>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ResourceListItemRenderer.js","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceListItemRenderer.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * ResourceListItemRenderer\n *\n * Shared item renderer for List and Search presets.\n * Encapsulates schema-aware field rendering (FK, enum, date, array),\n * primary/secondary field split, and per-item operations.\n *\n * Used by List_Default and Search_Default to ensure parity in how\n * resource items are displayed.\n */\n\nimport React, { useMemo, useCallback } from 'react';\nimport { z } from 'zod';\nimport {\n CoreResourceOperation,\n ResourceOperationDisplayMode,\n ErrorCustomMessageReference,\n} from '@wildo-ai/saas-models';\nimport type { AnyFrontendResourceConfiguration, FrontendResourcesRegistry } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport { getEnumValues, DisplayChromeMode, ViewportBreakpoint } from '@wildo-ai/zod-decorators';\nimport { UIContext } from '~wildo-frontend-lib/core/ui/UIContext';\nimport { useLongPress } from '~wildo-frontend-lib/components/resources/useLongPress';\nimport { DisplayField } from '~wildo-frontend-lib/components/data-display/DisplayField';\nimport { DisplayChromeProvider } from '~wildo-frontend-lib/components/data-display/chromes/DisplayChromeContext';\nimport { ResourceSummaryDisplayer } from '~wildo-frontend-lib/components/data-display/ResourceSummaryDisplayer';\nimport { Text } from '~wildo-frontend-lib/components/typography/text';\nimport { FrontendResourceUtils, frontendResourceUtils } from '~wildo-frontend-lib/core/resources/frontend-resource.utils';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { AutomatedLayoutFrontendUtils } from '~wildo-frontend-lib/core/automated-layout/automated-layout.frontend.utils';\nimport { resolveResourceLabelEnumSchema } from '~wildo-frontend-lib/core/resources/resource-label-field-paths.frontend.utils';\nimport type { FrontendResourceOperationContext } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport { cn } from '~wildo-frontend-lib/core/ui/cn';\nimport { CheckboxRoot } from '~wildo-frontend-lib/components/form/controls/boolean/checkbox';\nimport {\n CARD_ROW_PADDING_CLASS,\n CARD_SELECTION_RAIL_CLASS,\n CARD_SELECTION_SLOT_CLASS,\n} from '~wildo-frontend-lib/components/resources/collection-card-layout.utils';\nimport type { CardActionPlacement } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport { resolveCardActionPlacementClasses } from './card-action-placement.utils';\n\n// =============================================================================\n// TYPES\n// =============================================================================\n\nexport interface ResourceListItemRendererProps {\n /** The data item to render */\n item: Record<string, unknown>;\n /** Resource type */\n resourceType: string;\n /** Resource configuration */\n resourceConfig: AnyFrontendResourceConfiguration;\n /** Resource registry */\n registry: FrontendResourcesRegistry;\n /** Ordered list of summary fields to display */\n summaryFields: string[];\n /** Pre-resolved field labels (from i18n) */\n fieldLabelsMap: Record<string, string>;\n /** Function to resolve enum display values via i18n — `fieldSchema` names the enum the field declares (#966) */\n tResourceFieldEnumValue: (resourceType: string, fieldName: string, enumValue: string, fieldSchema: z.ZodTypeAny | undefined) => string;\n /**\n * What a click on the row does — and, by its ABSENCE, that a click does nothing.\n *\n * Optional since 2026-09-20, and the optionality is the point. The card used to take this\n * REQUIRED and paint itself `cursor-pointer` + `role=\"button\"` + `tabIndex={0}` unconditionally,\n * so every summary row in the product announced itself as a button. Whether the click could act\n * was decided somewhere else entirely — in the host, by whether a READ operation resolves to a\n * view — and the two were never compared. On the audit trail the answer was \"it cannot\", so the\n * row invited a click, took focus, answered Enter and Space, and did nothing at any of them.\n *\n * A host that cannot open a row now omits this, and the affordance disappears with the behaviour\n * because both are read off the same value.\n */\n onItemClick?: (item: Record<string, unknown>) => void;\n /** Optional operations component to render for this item */\n operationsSlot?: React.ReactNode;\n /**\n * Where the per-item operations sit within the card (2-axis anchor +\n * orientation). Resolved by the host from `collectionDisplayConfig.cardActionPlacement`.\n * Omitted → the default (inline-end, vertically centered, horizontal row).\n */\n cardActionPlacement?: CardActionPlacement;\n /**\n * Selection affordance. When `selectable`, a leading checkbox renders and\n * toggles selection via `onToggleSelect` (independent of the row click, which\n * still navigates). `isSelected` drives the checkbox + a selected highlight.\n */\n selectable?: boolean;\n isSelected?: boolean;\n onToggleSelect?: (item: Record<string, unknown>) => void;\n /**\n * Whether the collection is currently in SELECTION MODE (any item selected).\n * Mobile UX: a long-press enters selection mode, and while active a plain TAP\n * toggles selection instead of navigating (the \"long-press to multi-select\"\n * pattern). Gated to touch/mobile — on desktop a click always navigates and\n * the checkbox is the explicit toggle.\n */\n selectionActive?: boolean;\n /** Accessible label for the selection checkbox (host provides the i18n string). */\n selectAriaLabel?: string;\n /** Optional className for the root container */\n className?: string;\n /** Interactive CSS classes from design system (hover state, transition) */\n interactiveClasses?: {\n hover?: string;\n transition?: string;\n };\n}\n\n// =============================================================================\n// FIELD VALUE RENDERER\n// =============================================================================\n\nexport interface FieldValueRendererProps {\n fieldName: string;\n value: unknown;\n fieldSchema: z.ZodTypeAny | undefined;\n fieldLabel: string | undefined;\n resourceType: string;\n tResourceFieldEnumValue: (resourceType: string, fieldName: string, enumValue: string, fieldSchema: z.ZodTypeAny | undefined) => string;\n /**\n * The whole record this cell belongs to, forwarded to the dispatcher as `parentData`.\n *\n * Optional so a caller rendering a bare value is unaffected — but every collection caller passes\n * it, because a field frequently needs a sibling to render correctly and a cell that does not know\n * its row cannot reach one.\n */\n record?: Record<string, unknown>;\n}\n\n/**\n * Renders a single summary field VALUE through the shared decorator-driven\n * display pipeline (`DisplayField` → `DisplayValueDispatcher` → presets) — the\n * SAME path the detail/read view uses — so the FULL zod-UI display policy is\n * honored in lists/tables by default: enum → badge (+ per-value colors),\n * boolean → checkmark / yes-no, string → truncate / multiline, FK → reference,\n * date → formatted, money/bigdecimal/duration/etc.\n *\n * Previously this re-implemented a weak subset (enum-as-plain-text, naive array\n * join, `String(value)` fallback) that silently ignored every\n * `{primitive}UI().display` decorator, so listings/tables diverged from the\n * detail view (e.g. a `displayMode: BADGE` enum rendered as plain text). Routing\n * through `DisplayField` removes that divergence and the maintenance burden of a\n * parallel renderer.\n *\n * The card (\"Label:\" prefix) and the table (column header) own the label, so the\n * value is rendered under COMPACT chrome — a bare value with no framework\n * label/description wrapper. i18n enum labels are threaded explicitly via\n * `enumLabels` because there is no surrounding `DisplayTemplateContext`\n * (which is what supplies them inside `AutomaticDisplayer`).\n */\nexport function FieldValueRenderer({\n fieldName,\n value,\n fieldSchema,\n fieldLabel,\n resourceType,\n record,\n tResourceFieldEnumValue,\n}: FieldValueRendererProps): React.JSX.Element | null {\n // Build the enum value→label map from the same i18n translator the list\n // already uses, so enum badges show translated labels rather than raw enum\n // values. Hook runs unconditionally, before the null-value early return.\n //\n // The vocabulary is read off the ENUM-BEARING schema — the field, or an array's element — through the\n // resolver the detail views and the labelling planner share. Asking only \"is the field itself an enum\"\n // left every array of an enum raw in a list or a table: a member directory printed `ORG_MEMBER` while\n // the same roles read \"Organization member\" on the member's own page.\n const enumLabels = useMemo<Record<string, string> | undefined>(() => {\n const enumSchema = fieldSchema ? resolveResourceLabelEnumSchema(fieldSchema) : undefined;\n if (!enumSchema) return undefined;\n const enumValues = getEnumValues(enumSchema);\n if (enumValues.length === 0) return undefined;\n return Object.fromEntries(\n enumValues.map((enumValue) => [enumValue, tResourceFieldEnumValue(resourceType, fieldName, enumValue, fieldSchema)]),\n );\n }, [fieldSchema, resourceType, fieldName, tResourceFieldEnumValue]);\n\n if (value === null || value === undefined) return null;\n\n return (\n <div className=\"flex min-w-0 items-baseline gap-element-sm\">\n {fieldLabel && <span className=\"text-xs text-muted-foreground\">{fieldLabel}:</span>}\n {fieldSchema ? (\n // COMPACT chrome → bare value with the full decorator policy applied.\n <DisplayChromeProvider displayChromeMode={DisplayChromeMode.COMPACT}>\n <DisplayField\n name={fieldName}\n schema={fieldSchema}\n value={value}\n enumLabels={enumLabels}\n // The ROW this cell belongs to. Every other display surface hands the dispatcher its\n // record as `parentData`; a collection cell did not, so anything a field needs from its\n // siblings was unreachable from a list or a table — including a foreign key's\n // `labelFallbackField`, which is why a member directory printed raw ObjectIds.\n parentData={record}\n disableInlineEdit\n className=\"min-w-0 truncate text-sm text-muted-foreground\"\n />\n </DisplayChromeProvider>\n ) : (\n // No schema resolved for this field — `DisplayField` requires a schema,\n // so fall back to a plain string (matches the previous default branch).\n <span className=\"min-w-0 truncate text-sm text-muted-foreground\">{String(value)}</span>\n )}\n </div>\n );\n}\n\n// =============================================================================\n// MAIN COMPONENT\n// =============================================================================\n\nexport function ResourceListItemRenderer({\n item,\n resourceType,\n resourceConfig,\n registry,\n summaryFields,\n fieldLabelsMap,\n tResourceFieldEnumValue,\n onItemClick,\n operationsSlot,\n cardActionPlacement,\n selectable = false,\n isSelected = false,\n onToggleSelect,\n selectionActive = false,\n selectAriaLabel,\n className,\n interactiveClasses,\n}: ResourceListItemRendererProps): React.JSX.Element {\n if (!resourceConfig?.resourceFieldIdentifier) {\n throw FrontendResourceUtils.buildConfigurationError(\n ErrorCustomMessageReference.FRONTEND_RESOURCE_FIELD_IDENTIFIER_NOT_FOUND,\n { resourceType, component: 'ResourceListItemRenderer' }\n );\n }\n const fieldIdentifier = resourceConfig.resourceFieldIdentifier as string;\n // Resolve the record's own id (`_id`), not the cross-resource field-identifier\n // name (`<resource>Id`) which is absent from a plain record — see\n // FrontendResourceUtils.getResourceObjectId.\n const itemId = FrontendResourceUtils.getResourceObjectId(item, fieldIdentifier);\n\n // Primary display: use computeFrontendResourceLabel for the primary value.\n // For a junction this resolves the server-projected instance label (e.g. a\n // `forwardedLabel` virtual field referenced by `getFrontendResourceLabel`).\n /*\n * The translator goes to the label callback. Without it `computeFrontendResourceLabel` falls back\n * to an IDENTITY `t`, so a label callback that words its row through the label tree rendered the\n * key — then its own fallback, a ref — on every card, while the same row's page header (which\n * passes `t`) read correctly (#1454: governed documents titled `document-definition:…` in lists).\n */\n const { t: tLabel, formatDate, formatDateTime } = useI18n({ resource: resourceType });\n const primaryLabel = useMemo((): string => {\n const label = FrontendResourceUtils.computeFrontendResourceLabel({\n resourceType,\n registry,\n currentObject: item,\n t: tLabel,\n formatDate,\n formatDateTime,\n });\n return String(label || item[summaryFields[0]] || `${resourceType} #${itemId}`);\n }, [item, resourceType, registry, summaryFields, itemId, tLabel, formatDate, formatDateTime]);\n\n // Secondary fields: every summary field EXCEPT the one already shown as the\n // primary label (title). The title comes from `computeFrontendResourceLabel`\n // — an arbitrary label strategy (a `string[]` join or a function), NOT\n // necessarily `summaryFields[0]`. Excluding the title positionally (`slice(1)`)\n // had two bugs: (a) it REPEATED the title when the label field wasn't first\n // (e.g. a list whose label is `name` but whose first summary field is `status`\n // → \"Name: …\" rendered under the identical title), and (b) it silently DROPPED\n // `summaryFields[0]` whenever that field wasn't the label. Excluding the title\n // by VALUE fixes both: the field whose value equals the title is the label\n // field wherever it sits, and every genuine non-label summary field is kept.\n // (The primary-scope FK is dropped upstream by\n // `ResourceLayoutUtils.detectSummaryFields`, so it never reaches here.)\n const secondaryFields = useMemo(\n () => summaryFields.filter((fieldName) => {\n const value = item[fieldName];\n if (value === null || value === undefined) return false;\n return String(value) !== primaryLabel;\n }),\n [summaryFields, item, primaryLabel],\n );\n\n // Schema shape for field type detection\n const schemaShape = useMemo(() => {\n const mainSchema = resourceConfig?.mainSchema;\n if (!mainSchema) return null;\n // Polymorphic resources feed a discriminated-union schema; resolve the union-aware field shape (else getObjectShape returns null for the union → no field labels).\n return AutomatedLayoutFrontendUtils.getObjectLikeFieldShape(mainSchema, { commonOnly: false }) ?? null;\n }, [resourceConfig]);\n\n // AUTHORED summary template — the `layout.summary` contract promises coverage\n // of \"cards, list items, FK references\". When a resource authors one, the card\n // defers its ENTIRE content region (title + body) to `ResourceSummaryDisplayer`:\n // the title is now a first-class template element (`<SummaryTitle />`, placed by\n // `<SummaryLayout>`), so a status badge can sit inline with the title and the\n // exact same composition renders in the FK popover. We pass the primary label we\n // already computed (correct `t`, junction forwardedLabel) into the displayer's\n // SummaryContext instead of rendering our own title above it.\n //\n // Resources WITHOUT an authored template keep the legacy host-owned title +\n // generic \"Label: value\" body: routing them through the GENERATED default\n // template would restyle every list in every app for no authored reason.\n const authoredSummaryTemplate = resourceConfig?.frontendConfiguration?.layout?.summary;\n\n const hoverClass = interactiveClasses?.hover ?? '';\n const transitionClass = interactiveClasses?.transition ?? '';\n // Resolve where the per-item actions sit (2-axis anchor → flex classes). The\n // content + actions share one flex container so actions never overlap text.\n const placement = resolveCardActionPlacementClasses(cardActionPlacement);\n\n // Mobile multi-select: a long-press ENTERS selection mode (selects this item);\n // while selection mode is active (`selectionActive`), a plain TAP toggles\n // selection instead of navigating. Gated to a mobile viewport — on desktop a\n // click always navigates and the checkbox is the explicit toggle. Long-press\n // is touch-only (the hook binds touch handlers).\n // Optional UIContext read: a rendering leaf shouldn't hard-require the shell's\n // UIProvider just to check the breakpoint — outside a provider (isolated\n // renders/tests) it degrades to desktop behavior (isMobile = false).\n const ui = React.useContext(UIContext);\n const isMobile = ui?.UIConfig?.currentBreakpoint === ViewportBreakpoint.MOBILE;\n const tapTogglesSelection = selectable && selectionActive && isMobile;\n // Long-press ENTERS selection mode — gated to the SAME condition as tap-toggle\n // (selectable + mobile viewport) so the two can't disagree (e.g. enter mode on\n // a tablet where tap-toggle is off, stranding the user mid-multiselect).\n const longPress = useLongPress(\n () => onToggleSelect?.(item),\n { enabled: selectable && !!onToggleSelect && isMobile },\n );\n\n /*\n * A row is INTERACTIVE when something can happen on it: the host gave it a click handler, or the\n * view is in mobile multi-select where a tap toggles selection. Everything the card says about\n * itself — the pointer, the button role, the focusability, the key handling — is read off this one\n * value, so the promise and the behaviour cannot drift apart.\n */\n const isActivatable = Boolean(onItemClick) || tapTogglesSelection;\n\n const handleActivate = () => {\n // Swallow the synthetic click that follows a long-press (it already selected).\n if (longPress.consumeLongPress()) return;\n if (tapTogglesSelection) {\n onToggleSelect?.(item);\n return;\n }\n onItemClick?.(item);\n };\n\n /*\n * ─── The card is NOT a button; its ACTIVATOR is ────────────────────────────────────────────\n *\n * The card root used to be `role=\"button\"` with `tabIndex={0}` and Enter/Space handling, and it\n * CONTAINED the row's selection checkbox and its \"More actions\" button. ARIA does not allow\n * interactive descendants inside a button, and assistive technology may flatten the whole card\n * into one control — a screen-reader user could reach \"open this record\" but not reliably\n * \"select it\" or \"its actions\". axe reported it as `nested-interactive`, serious, on every card\n * of the todos list (#1718).\n *\n * This is the settled card-with-a-primary-action shape: a real `<button>` carries the name and\n * the keyboard activation, and it is a SIBLING of the checkbox and the actions rather than their\n * container. It is laid over the whole card (`absolute inset-0`) so its focus ring outlines the\n * card and a click on empty space lands on it; the rail after it is positioned too, so it stacks\n * above and its controls stay directly clickable. The root keeps its pointer `onClick` and the\n * long-press, so a click on the card's TEXT still opens the record — pointer behaviour is\n * unchanged, and the keyboard path is now a button that needs no hand-written key handling.\n */\n return (\n <div\n className={cn(\n CARD_ROW_PADDING_CLASS, transitionClass,\n isActivatable && 'relative',\n // Both only when a click leads somewhere — see `isActivatable`.\n isActivatable && hoverClass,\n isActivatable && 'cursor-pointer',\n isSelected && 'bg-primary/5',\n // Prevent the browser text-selection that a long-press would start.\n selectable && 'select-none',\n className,\n )}\n onClick={isActivatable ? handleActivate : undefined}\n {...longPress.handlers}\n >\n {isActivatable && (\n <button\n type=\"button\"\n aria-label={String(primaryLabel)}\n // Selection state is conveyed by the row's checkbox; the bg tint is a purely visual\n // reinforcement, and `aria-pressed` would misdescribe a button that OPENS the record.\n className=\"absolute inset-0 rounded-[inherit] focus-ring-inset outline-hidden\"\n onClick={(e) => {\n // The root's own onClick would run the same activation again for this click.\n e.stopPropagation();\n handleActivate();\n }}\n />\n )}\n {/* Leading selection rail (only when the view is selectable). The checkbox\n toggles selection and stops propagation so it never triggers the row's\n navigation — mirrors the table select-cell contract. */}\n <div className={cn(CARD_SELECTION_RAIL_CLASS, isActivatable && 'relative')}>\n {/* stopPropagation on click, keydown AND touchstart: the card opens on a\n click and arms a long-press on a touch hold, so without these guards\n toggling the checkbox would also navigate, and a hold over it would arm\n the row's long-press. */}\n {selectable && (\n <div\n // `pt-0.5` optically centres the box on the first line of text beside it; the\n // HORIZONTAL half comes from the shared constant, which the header rail also reads.\n className={cn(CARD_SELECTION_SLOT_CLASS, 'pt-0.5')}\n onClick={(e) => e.stopPropagation()}\n onKeyDown={(e) => e.stopPropagation()}\n onTouchStart={(e) => e.stopPropagation()}\n >\n <CheckboxRoot\n checked={isSelected}\n onCheckedChange={() => onToggleSelect?.(item)}\n aria-label={selectAriaLabel ?? String(primaryLabel)}\n />\n </div>\n )}\n <div className={cn(placement.containerClass, 'min-w-0 flex-1')}>\n <div className={cn('space-y-item-xs', placement.contentClass)}>\n {authoredSummaryTemplate && resourceConfig?.mainSchema ? (\n // Authored template owns title + body. The title is fed via\n // SummaryContext (primaryLabel) and rendered by `<SummaryTitle />`\n // inside the template, so we do NOT render our own title here. The\n // region stays click-through so the whole card navigates (same as the\n // legacy body); an author who embeds a genuinely interactive control\n // stops propagation within their own template.\n <ResourceSummaryDisplayer\n resourceType={resourceType}\n schema={resourceConfig.mainSchema}\n data={item}\n primaryLabel={primaryLabel}\n />\n ) : (\n <>\n <Text as=\"p\" className=\"font-medium text-foreground\" truncate>{primaryLabel}</Text>\n {secondaryFields.map((fieldName) => {\n const value = item[fieldName];\n if (value === null || value === undefined) return null;\n return (\n <div key={fieldName}>\n <FieldValueRenderer\n fieldName={fieldName}\n value={value}\n fieldSchema={schemaShape?.[fieldName] as z.ZodTypeAny | undefined}\n fieldLabel={fieldLabelsMap[fieldName]}\n resourceType={resourceType}\n record={item as Record<string, unknown>}\n tResourceFieldEnumValue={tResourceFieldEnumValue}\n />\n </div>\n );\n })}\n </>\n )}\n </div>\n {operationsSlot && (\n // stopPropagation on click, keydown AND touchstart: an action tap or\n // keyboard activation must not also navigate the row, and a hold over\n // an action must not arm the row's long-press selection. (Mirrors the\n // checkbox rail — all three axes.)\n <div\n className={placement.actionsClass}\n onClick={(e) => e.stopPropagation()}\n onKeyDown={(e) => e.stopPropagation()}\n onTouchStart={(e) => e.stopPropagation()}\n >\n {operationsSlot}\n </div>\n )}\n </div>\n </div>\n </div>\n );\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceOperationActionDropdown.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"ResourceOperationActionDropdown.d.ts","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceOperationActionDropdown.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAM/D,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,+DAA+D,CAAC;AACtH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wDAAwD,CAAC;AA+B7F,MAAM,WAAW,wCAAwC;IACvD,eAAe,EAAE,gCAAgC,CAAC;IAClD,cAAc,EAAE,cAAc,CAAC;IAC/B,iGAAiG;IACjG,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8FAA8F;IAC9F,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,mCAAmC,CAAC,EAClD,eAAe,EACf,cAAc,EACd,YAAY,EACZ,SAAS,GACV,EAAE,wCAAwC,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAM9D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceOperationActionDropdown.js","sourceRoot":"","sources":["../../../../src/components/resources/ResourceOperationActionDropdown.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useCallback, useEffect, useMemo } from 'react';\nimport type { z } from 'zod';\n\nimport { FrontendComponentType } from '@wildo-ai/presets-components-models';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { resolveComponentLabel } from '~wildo-frontend-lib/core/i18n/component-label-resolution.utils';\nimport type { FrontendResourceOperationContext } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport type { NavigationZone } from '~wildo-frontend-lib/core/navigation/navigation.schemas';\nimport { ResourceOperationViewProvider } from '~wildo-frontend-lib/core/resources/ResourceOperationViewProvider';\nimport { useResourceOperationViewContext } from '~wildo-frontend-lib/core/resources/ResourceOperationViewContext';\nimport { useOperationDirectExecution } from '~wildo-frontend-lib/core/resources/useOperationDirectExecution';\nimport { useResourceLabels } from '~wildo-frontend-lib/core/resources/useResourceLabels';\nimport {\n ResourceOperationChoiceDomain,\n resolveResourceOperationDropdownChoice,\n type ResourceOperationDropdownChoice,\n} from '~wildo-frontend-lib/core/resources/operation-semantics.frontend.utils';\nimport { useResourceSearch } from '~wildo-frontend-lib/components/resources-fields/resource-reference/useResourceSearch';\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from '~wildo-frontend-lib/components/navigation/command';\nimport { LoadingSpinner } from '~wildo-frontend-lib/components/feedback/loading-spinner';\nimport { useIconRegistry } from '~wildo-frontend-lib/core/icons/useIconRegistry';\nimport { IconSize, StandardIconReference } from '~wildo-frontend-lib/core/icons/icon-registry.frontend.schemas';\nimport { cn } from '~wildo-frontend-lib/core/ui/cn';\nimport { getEnumValues } from '@wildo-ai/zod-decorators';\n\n/**\n * Above this many enum values the list gets a search input. Below it, typing is slower than\n * scanning — a status menu of five does not want a text box above it.\n */\nconst ENUM_CHOICE_SEARCH_THRESHOLD = 7;\n\nexport interface ResourceOperationActionDropdownBodyProps {\n resourceContext: FrontendResourceOperationContext;\n navigationZone: NavigationZone;\n /** The value the acted-on row currently holds for the choice field, marked ✓. Absent in bulk. */\n currentValue?: string;\n /** Closes the anchored list — on a successful pick, and on picking the value already held. */\n onDismiss: () => void;\n}\n\n/**\n * The body of a DROPDOWN action (`ResourceOperationActionPresentation.DROPDOWN`): the operation's\n * admissible values, anchored to its button. Picking one executes the operation with it.\n *\n * ## A detached host, like the popover it sits beside\n *\n * It is drawn inside whatever page opened it, so it establishes its OWN operation view first — the\n * rule `ResourceOperationDetachedHost` exists for, and the reason execution here cannot run the\n * listing's operation by accident. Execution is `useOperationDirectExecution`, the same form-less path\n * the operation fallback uses: RMM for an update-like row action, the bulk selection merged for a\n * bulk one, the outcome announced either way.\n *\n * ## Two lists, because the two domains are different things\n *\n * An ENUM is closed and known: every value is listed, labelled by the same `useResourceLabels` call\n * the form makes, so the menu and the form can never disagree about a word. A REFERENCE is records on\n * the server: the list is `useResourceSearch`, the hook behind the form's reference picker, so its\n * scoping (tenant, M:N junction, parent context) is the picker's by construction rather than a copy.\n */\nexport function ResourceOperationActionDropdownBody({\n resourceContext,\n navigationZone,\n currentValue,\n onDismiss,\n}: ResourceOperationActionDropdownBodyProps): React.JSX.Element {\n return (\n <ResourceOperationViewProvider resourceContext={resourceContext} navigationZone={navigationZone}>\n <ResourceOperationChoiceList currentValue={currentValue} onDismiss={onDismiss} />\n </ResourceOperationViewProvider>\n );\n}\n\ninterface ChoiceListProps {\n currentValue?: string;\n onDismiss: () => void;\n}\n\nfunction ResourceOperationChoiceList({ currentValue, onDismiss }: ChoiceListProps): React.JSX.Element | null {\n const { operation, resourceType } = useResourceOperationViewContext();\n // Resource-scoped like the executor and the fallback: a resource may override the component's words.\n const { tComponent } = useI18n({ component: FrontendComponentType.RESOURCES_LAYOUTS_ACTION, resource: resourceType });\n const choice = useMemo(() => resolveResourceOperationDropdownChoice(operation), [operation]);\n\n const { execute, isExecuting, isBootstrapping } = useOperationDirectExecution({\n onSuccess: onDismiss,\n errorMessage: resolveComponentLabel({\n tComponent,\n componentType: FrontendComponentType.RESOURCES_LAYOUTS_ACTION,\n key: 'executionFailed',\n }),\n errorComponent: 'ResourceOperationActionDropdownBody',\n });\n\n const handlePick = useCallback((value: string) => {\n if (!choice) return;\n // Picking what the row already holds is a no-op a person expects to simply close the menu —\n // sending it would write an identical value and announce a change that did not happen.\n if (value === currentValue) {\n onDismiss();\n return;\n }\n void execute({ [choice.fieldName]: value });\n }, [choice, currentValue, execute, onDismiss]);\n\n // The resolver only selects DROPDOWN when a choice field exists, so this is a defensive boundary:\n // an operation reshaped under a live panel renders nothing rather than a list for a field it lost.\n if (!choice) return null;\n\n const busy = isExecuting || isBootstrapping;\n return choice.domain === ResourceOperationChoiceDomain.REFERENCE\n ? <ReferenceChoiceList choice={choice} currentValue={currentValue} busy={busy} onPick={handlePick} />\n : <EnumChoiceList choice={choice} currentValue={currentValue} busy={busy} onPick={handlePick} />;\n}\n\ninterface DomainListProps {\n choice: ResourceOperationDropdownChoice;\n currentValue?: string;\n busy: boolean;\n onPick: (value: string) => void;\n}\n\nfunction EnumChoiceList({ choice, currentValue, busy, onPick }: DomainListProps): React.JSX.Element {\n const { resourceType, operation } = useResourceOperationViewContext();\n const { tComponent, isReady } = useI18n({ component: FrontendComponentType.LOW_LEVEL_FORM_FIELD });\n const { enumLabels, isReady: areLabelsReady } = useResourceLabels(\n // A choice exists only for an object request body, so this is that body.\n operation.requestDto as z.ZodTypeAny,\n { resourceType, operationId: String(operation.operationIdentifier) },\n undefined,\n 'edit',\n );\n const values = useMemo(() => getEnumValues(choice.fieldSchema) ?? [], [choice.fieldSchema]);\n const labels = enumLabels[choice.fieldName];\n const searchable = values.length > ENUM_CHOICE_SEARCH_THRESHOLD;\n\n // Nothing until the words exist: a value list drawn before its labels load shows raw wire values\n // for a frame, which reads as the missing labels this repository refuses to invent.\n if (isReady === false || areLabelsReady === false) return <ChoiceListLoading />;\n\n return (\n <Command shouldFilter={searchable}>\n {searchable && (\n <CommandInput placeholder={tComponent(FrontendComponentType.LOW_LEVEL_FORM_FIELD, 'searchPlaceholder')} />\n )}\n <CommandList>\n <CommandEmpty>{tComponent(FrontendComponentType.LOW_LEVEL_FORM_FIELD, 'noResults')}</CommandEmpty>\n <CommandGroup>\n {values.map((value) => {\n const label = labels?.[value] ?? value;\n return (\n <ChoiceItem\n key={value}\n value={value}\n label={label}\n isCurrent={value === currentValue}\n disabled={busy}\n onPick={onPick}\n />\n );\n })}\n </CommandGroup>\n </CommandList>\n </Command>\n );\n}\n\nfunction ReferenceChoiceList({ choice, currentValue, busy, onPick }: DomainListProps): React.JSX.Element {\n const { tComponent, isReady } = useI18n({ component: FrontendComponentType.LOW_LEVEL_FORM_FIELD });\n const { options, isLoading, setIsOpen, handleSearchChange, emptyMessage, fetchError } = useResourceSearch({\n schema: choice.fieldSchema,\n name: choice.fieldName,\n value: currentValue,\n });\n\n // The list IS the open dropdown: it exists only while the panel is open, so it asks for its first\n // page on mount and releases the search on unmount, exactly as the picker does on open/close.\n useEffect(() => {\n setIsOpen(true);\n return () => setIsOpen(false);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n if (isReady === false) return <ChoiceListLoading />;\n\n return (\n // Server-side search: the options arriving are already the matches, so cmdk must not filter them\n // a second time against the label it happens to hold.\n <Command shouldFilter={false}>\n <CommandInput\n placeholder={tComponent(FrontendComponentType.LOW_LEVEL_FORM_FIELD, 'searchPlaceholder')}\n onValueChange={handleSearchChange}\n autoFocus\n />\n <CommandList>\n <CommandEmpty>\n {isLoading ? <ChoiceListLoading /> : (fetchError?.message ?? emptyMessage)}\n </CommandEmpty>\n <CommandGroup>\n {options.map((option) => (\n <ChoiceItem\n key={option.value}\n value={option.value}\n label={option.label}\n isCurrent={option.value === currentValue}\n disabled={busy || option.disabled === true}\n onPick={onPick}\n />\n ))}\n </CommandGroup>\n </CommandList>\n </Command>\n );\n}\n\n/** The list's place while its words load — the same spinner the reference search shows. */\nfunction ChoiceListLoading(): React.JSX.Element {\n return <span className=\"flex justify-center py-element\"><LoadingSpinner size={16} /></span>;\n}\n\ninterface ChoiceItemProps {\n value: string;\n label: string;\n isCurrent: boolean;\n disabled: boolean;\n onPick: (value: string) => void;\n}\n\n/** One value. The ✓ column is always reserved, so labels align whether or not a row is current. */\nfunction ChoiceItem({ value, label, isCurrent, disabled, onPick }: ChoiceItemProps): React.JSX.Element {\n const { renderIcon } = useIconRegistry();\n return (\n <CommandItem\n value={value}\n keywords={[label]}\n disabled={disabled}\n onSelect={() => onPick(value)}\n aria-current={isCurrent ? 'true' : undefined}\n data-choice-value={value}\n >\n {renderIcon(StandardIconReference.CHECK, {\n size: IconSize.SM,\n className: cn('me-2 shrink-0', isCurrent ? 'opacity-100' : 'opacity-0'),\n })}\n <span className=\"truncate\">{label}</span>\n </CommandItem>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ResourceOperationActionDropdown.js","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceOperationActionDropdown.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useCallback, useEffect, useMemo } from 'react';\nimport type { z } from 'zod';\n\nimport { FrontendComponentType } from '@wildo-ai/presets-components-models';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { resolveComponentLabel } from '~wildo-frontend-lib/core/i18n/component-label-resolution.utils';\nimport type { FrontendResourceOperationContext } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport type { NavigationZone } from '~wildo-frontend-lib/core/navigation/navigation.schemas';\nimport { ResourceOperationViewProvider } from '~wildo-frontend-lib/core/resources/ResourceOperationViewProvider';\nimport { useResourceOperationViewContext } from '~wildo-frontend-lib/core/resources/ResourceOperationViewContext';\nimport { useOperationDirectExecution } from '~wildo-frontend-lib/core/resources/useOperationDirectExecution';\nimport { useResourceLabels } from '~wildo-frontend-lib/core/resources/useResourceLabels';\nimport {\n ResourceOperationChoiceDomain,\n resolveResourceOperationDropdownChoice,\n type ResourceOperationDropdownChoice,\n} from '~wildo-frontend-lib/core/resources/operation-semantics.frontend.utils';\nimport { useResourceSearch } from '~wildo-frontend-lib/components/resources-fields/resource-reference/useResourceSearch';\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from '~wildo-frontend-lib/components/navigation/command';\nimport { LoadingSpinner } from '~wildo-frontend-lib/components/feedback/loading-spinner';\nimport { useIconRegistry } from '~wildo-frontend-lib/core/icons/useIconRegistry';\nimport { IconSize, StandardIconReference } from '~wildo-frontend-lib/core/icons/icon-registry.frontend.schemas';\nimport { cn } from '~wildo-frontend-lib/core/ui/cn';\nimport { getEnumValues } from '@wildo-ai/zod-decorators';\n\n/**\n * Above this many enum values the list gets a search input. Below it, typing is slower than\n * scanning — a status menu of five does not want a text box above it.\n */\nconst ENUM_CHOICE_SEARCH_THRESHOLD = 7;\n\nexport interface ResourceOperationActionDropdownBodyProps {\n resourceContext: FrontendResourceOperationContext;\n navigationZone: NavigationZone;\n /** The value the acted-on row currently holds for the choice field, marked ✓. Absent in bulk. */\n currentValue?: string;\n /** Closes the anchored list — on a successful pick, and on picking the value already held. */\n onDismiss: () => void;\n}\n\n/**\n * The body of a DROPDOWN action (`ResourceOperationActionPresentation.DROPDOWN`): the operation's\n * admissible values, anchored to its button. Picking one executes the operation with it.\n *\n * ## A detached host, like the popover it sits beside\n *\n * It is drawn inside whatever page opened it, so it establishes its OWN operation view first — the\n * rule `ResourceOperationDetachedHost` exists for, and the reason execution here cannot run the\n * listing's operation by accident. Execution is `useOperationDirectExecution`, the same form-less path\n * the operation fallback uses: RMM for an update-like row action, the bulk selection merged for a\n * bulk one, the outcome announced either way.\n *\n * ## Two lists, because the two domains are different things\n *\n * An ENUM is closed and known: every value is listed, labelled by the same `useResourceLabels` call\n * the form makes, so the menu and the form can never disagree about a word. A REFERENCE is records on\n * the server: the list is `useResourceSearch`, the hook behind the form's reference picker, so its\n * scoping (tenant, M:N junction, parent context) is the picker's by construction rather than a copy.\n */\nexport function ResourceOperationActionDropdownBody({\n resourceContext,\n navigationZone,\n currentValue,\n onDismiss,\n}: ResourceOperationActionDropdownBodyProps): React.JSX.Element {\n return (\n <ResourceOperationViewProvider resourceContext={resourceContext} navigationZone={navigationZone}>\n <ResourceOperationChoiceList currentValue={currentValue} onDismiss={onDismiss} />\n </ResourceOperationViewProvider>\n );\n}\n\ninterface ChoiceListProps {\n currentValue?: string;\n onDismiss: () => void;\n}\n\nfunction ResourceOperationChoiceList({ currentValue, onDismiss }: ChoiceListProps): React.JSX.Element | null {\n const { operation, resourceType } = useResourceOperationViewContext();\n // Resource-scoped like the executor and the fallback: a resource may override the component's words.\n const { tComponent } = useI18n({ component: FrontendComponentType.RESOURCES_LAYOUTS_ACTION, resource: resourceType });\n const choice = useMemo(() => resolveResourceOperationDropdownChoice(operation), [operation]);\n\n const { execute, isExecuting, isBootstrapping } = useOperationDirectExecution({\n onSuccess: onDismiss,\n errorMessage: resolveComponentLabel({\n tComponent,\n componentType: FrontendComponentType.RESOURCES_LAYOUTS_ACTION,\n key: 'executionFailed',\n }),\n errorComponent: 'ResourceOperationActionDropdownBody',\n });\n\n const handlePick = useCallback((value: string) => {\n if (!choice) return;\n // Picking what the row already holds is a no-op a person expects to simply close the menu —\n // sending it would write an identical value and announce a change that did not happen.\n if (value === currentValue) {\n onDismiss();\n return;\n }\n void execute({ [choice.fieldName]: value });\n }, [choice, currentValue, execute, onDismiss]);\n\n // The resolver only selects DROPDOWN when a choice field exists, so this is a defensive boundary:\n // an operation reshaped under a live panel renders nothing rather than a list for a field it lost.\n if (!choice) return null;\n\n const busy = isExecuting || isBootstrapping;\n return choice.domain === ResourceOperationChoiceDomain.REFERENCE\n ? <ReferenceChoiceList choice={choice} currentValue={currentValue} busy={busy} onPick={handlePick} />\n : <EnumChoiceList choice={choice} currentValue={currentValue} busy={busy} onPick={handlePick} />;\n}\n\ninterface DomainListProps {\n choice: ResourceOperationDropdownChoice;\n currentValue?: string;\n busy: boolean;\n onPick: (value: string) => void;\n}\n\nfunction EnumChoiceList({ choice, currentValue, busy, onPick }: DomainListProps): React.JSX.Element {\n const { resourceType, operation } = useResourceOperationViewContext();\n const { tComponent, isReady } = useI18n({ component: FrontendComponentType.LOW_LEVEL_FORM_FIELD });\n const { enumLabels, isReady: areLabelsReady } = useResourceLabels(\n // A choice exists only for an object request body, so this is that body.\n operation.requestDto as z.ZodTypeAny,\n { resourceType, operationId: String(operation.operationIdentifier) },\n undefined,\n 'edit',\n );\n const values = useMemo(() => getEnumValues(choice.fieldSchema) ?? [], [choice.fieldSchema]);\n const labels = enumLabels[choice.fieldName];\n const searchable = values.length > ENUM_CHOICE_SEARCH_THRESHOLD;\n\n // Nothing until the words exist: a value list drawn before its labels load shows raw wire values\n // for a frame, which reads as the missing labels this repository refuses to invent.\n if (isReady === false || areLabelsReady === false) return <ChoiceListLoading />;\n\n return (\n <Command shouldFilter={searchable}>\n {searchable && (\n <CommandInput placeholder={tComponent(FrontendComponentType.LOW_LEVEL_FORM_FIELD, 'searchPlaceholder')} />\n )}\n <CommandList>\n <CommandEmpty>{tComponent(FrontendComponentType.LOW_LEVEL_FORM_FIELD, 'noResults')}</CommandEmpty>\n <CommandGroup>\n {values.map((value) => {\n const label = labels?.[value] ?? value;\n return (\n <ChoiceItem\n key={value}\n value={value}\n label={label}\n isCurrent={value === currentValue}\n disabled={busy}\n onPick={onPick}\n />\n );\n })}\n </CommandGroup>\n </CommandList>\n </Command>\n );\n}\n\nfunction ReferenceChoiceList({ choice, currentValue, busy, onPick }: DomainListProps): React.JSX.Element {\n const { tComponent, isReady } = useI18n({ component: FrontendComponentType.LOW_LEVEL_FORM_FIELD });\n const { options, isLoading, setIsOpen, handleSearchChange, emptyMessage, fetchError } = useResourceSearch({\n schema: choice.fieldSchema,\n name: choice.fieldName,\n value: currentValue,\n });\n\n // The list IS the open dropdown: it exists only while the panel is open, so it asks for its first\n // page on mount and releases the search on unmount, exactly as the picker does on open/close.\n useEffect(() => {\n setIsOpen(true);\n return () => setIsOpen(false);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n if (isReady === false) return <ChoiceListLoading />;\n\n return (\n // Server-side search: the options arriving are already the matches, so cmdk must not filter them\n // a second time against the label it happens to hold.\n <Command shouldFilter={false}>\n <CommandInput\n placeholder={tComponent(FrontendComponentType.LOW_LEVEL_FORM_FIELD, 'searchPlaceholder')}\n onValueChange={handleSearchChange}\n autoFocus\n />\n <CommandList>\n <CommandEmpty>\n {isLoading ? <ChoiceListLoading /> : (fetchError?.message ?? emptyMessage)}\n </CommandEmpty>\n <CommandGroup>\n {options.map((option) => (\n <ChoiceItem\n key={option.value}\n value={option.value}\n label={option.label}\n isCurrent={option.value === currentValue}\n disabled={busy || option.disabled === true}\n onPick={onPick}\n />\n ))}\n </CommandGroup>\n </CommandList>\n </Command>\n );\n}\n\n/** The list's place while its words load — the same spinner the reference search shows. */\nfunction ChoiceListLoading(): React.JSX.Element {\n return <span className=\"flex justify-center py-element\"><LoadingSpinner size={16} /></span>;\n}\n\ninterface ChoiceItemProps {\n value: string;\n label: string;\n isCurrent: boolean;\n disabled: boolean;\n onPick: (value: string) => void;\n}\n\n/** One value. The ✓ column is always reserved, so labels align whether or not a row is current. */\nfunction ChoiceItem({ value, label, isCurrent, disabled, onPick }: ChoiceItemProps): React.JSX.Element {\n const { renderIcon } = useIconRegistry();\n return (\n <CommandItem\n value={value}\n keywords={[label]}\n disabled={disabled}\n onSelect={() => onPick(value)}\n aria-current={isCurrent ? 'true' : undefined}\n data-choice-value={value}\n >\n {renderIcon(StandardIconReference.CHECK, {\n size: IconSize.SM,\n className: cn('me-2 shrink-0', isCurrent ? 'opacity-100' : 'opacity-0'),\n })}\n <span className=\"truncate\">{label}</span>\n </CommandItem>\n );\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceOperationActionPopover.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"ResourceOperationActionPopover.d.ts","sourceRoot":"","sources":["../../../../../src/components/resources/ResourceOperationActionPopover.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAK3C,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,+DAA+D,CAAC;AACtH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wDAAwD,CAAC;AAG7F,MAAM,WAAW,uCAAuC;IACtD,eAAe,EAAE,gCAAgC,CAAC;IAClD,cAAc,EAAE,cAAc,CAAC;IAC/B,mEAAmE;IACnE,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kCAAkC,CAAC,EACjD,eAAe,EACf,cAAc,EACd,SAAS,GACV,EAAE,uCAAuC,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAuB7D"}
|