@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":"useOperationEnabled.js","sourceRoot":"","sources":["../../../../../src/core/resources/hooks/useOperationEnabled.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * React hook for checking if an operation is enabled.\n * \n * This hook evaluates the enabledCondition for an operation based on:\n * - Current object (for READ/UPDATE/DELETE)\n * - Input DTO (for CREATE)\n * - User context (from UserOrgsContext)\n * - Object context (fetched if needed)\n * \n * Usage:\n * ```tsx\n * const { isEnabled, isLoading } = useOperationEnabled({\n * operation: myOperation,\n * currentObject: myObject,\n * resourceType: 'TODOS'\n * });\n * ```\n */\n\nimport { useMemo } from 'react';\nimport { useResourceRegistry } from '~wildo-frontend-lib/core/resources/useResourceRegistry';\nimport { useUserOrgs } from '~wildo-frontend-lib/core/security/useUserOrgs';\nimport {\n evaluateEnabledCondition,\n type EvaluateEnabledConditionParams,\n getOperationContextNeeds,\n} from '~wildo-frontend-lib/core/resources/utils/operation-enabled-condition.frontend.utils';\nimport type { FrontendResourceConfiguration_Operation } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport {\n type ResourceType,\n type ExecutionContext_InitiatorIds,\n FeatureUnavailabilityBehavior,\n ResourcesConfig_OperationPathUtils,\n} from '@wildo-ai/saas-models';\nimport { useState, useEffect } from 'react';\nimport { useFeatures } from '~wildo-frontend-lib/core/features/useFeatures';\nimport {\n resolveOperationFeatureAvailability,\n type FeatureAvailability,\n} from '~wildo-frontend-lib/core/features/useOperationFeatureAvailability';\nimport { useAppScopeSafe } from '~wildo-frontend-lib/core/scope/useAppScope';\nimport { useBillingSafe } from '~wildo-frontend-lib/core/billing/useBilling';\nimport { buildFeaturePolicyRoles } from '~wildo-frontend-lib/core/features/feature-unavailability.frontend.utils';\n\nexport type { FeatureAvailability };\n\nexport interface UseOperationEnabledParams<TMainSchema = any> {\n /** The operation to evaluate */\n operation: FrontendResourceConfiguration_Operation<any, any, any>;\n /** Current object (for READ/UPDATE/DELETE operations) */\n currentObject?: TMainSchema;\n /** Input DTO (for CREATE operations) */\n inputDto?: Partial<TMainSchema>;\n /** Object context (parent/child relationships) - optional, will be fetched if needed */\n objectContext?: any;\n /** Resource type */\n resourceType: ResourceType;\n /** Whether to enable evaluation (default: true) */\n enabled?: boolean;\n}\n\nexport interface UseOperationEnabledResult {\n /** Whether the operation is enabled */\n isEnabled: boolean;\n /** Whether evaluation is in progress */\n isLoading: boolean;\n /** Error if evaluation failed */\n error: Error | null;\n /** Context needs for the operation */\n contextNeeds: {\n needsObjectContext: boolean;\n needsUserContext: boolean;\n };\n /** Feature availability information (undefined if no requiredFeatures on operation) */\n featureAvailability?: FeatureAvailability;\n}\n\n/** Result type for the batch useOperationsEnabled hook */\nexport interface OperationEnabledEntry {\n isEnabled: boolean;\n featureAvailability?: FeatureAvailability;\n /**\n * For a BULK operation judged row by row (`selectionObjects`): the indices, in `selectionObjects`,\n * of the rows that FAIL its condition. Present only when some do. It is what lets the bar say\n * \"2 of 5 selected can't…\" and offer to keep only the eligible rows, instead of a bare greyed button.\n */\n ineligibleSelectionIndices?: readonly number[];\n}\n\nexport interface UseOperationsEnabledParams<TMainSchema = any> {\n currentObject?: TMainSchema;\n inputDto?: Partial<TMainSchema>;\n objectContext?: EvaluateEnabledConditionParams<TMainSchema>['objectContext'];\n resourceType?: ResourceType;\n enabled?: boolean;\n /**\n * The rows a BULK operation would act on. A bulk twin inherits its single-row variant's\n * `enabledCondition`, which reads `currentObject` — so it is judged against EACH selected row,\n * and the action is enabled only when every row passes. That is the backend's rule\n * (`ServicesRegistryHandlerBackendService`, the multi-row branch of the enabled-state gate): the\n * write is one write over the whole selection, so offering it on \"most rows qualify\" would only\n * trade a disabled button for a refusal after the click.\n *\n * Ignored for a non-bulk operation, which keeps `currentObject`. When absent, a bulk operation is\n * judged against `currentObject` as before.\n */\n selectionObjects?: readonly TMainSchema[];\n}\n\nexport function buildOperationEnabledKey(\n operation: FrontendResourceConfiguration_Operation<any, any, any>,\n): string {\n return ResourcesConfig_OperationPathUtils.createOperationPathKeyFromOperation(operation as any);\n}\n\nfunction operationNeedsDeferredGate(\n operation: FrontendResourceConfiguration_Operation<any, any, any>,\n): boolean {\n return Boolean(operation.enabledCondition || operation.requiredFeatures);\n}\n\n/**\n * Derives a value-stable {@link ExecutionContext_InitiatorIds} from the\n * individual initiator primitives.\n *\n * Both enabled-condition hooks below feed `initiatorIds` into an effect's\n * dependency array. Building it directly from the `user` object and the\n * `appScope.primaryScopeValues` object made its identity churn whenever EITHER\n * source object's reference changed — most notably an access-token refresh,\n * which rebuilds `primaryScopeValues` (the access token is one of its `useMemo`\n * dependencies) even when the decoded user / organization / application ids are\n * unchanged. That needlessly re-fired the (async) evaluation effect. Keying the\n * memo on the three extracted primitives keeps the returned object\n * referentially stable until an id genuinely changes.\n */\nfunction useStableInitiatorIds(\n userId: string | null | undefined,\n organizationId: string | null | undefined,\n applicationId: string | null | undefined,\n): ExecutionContext_InitiatorIds | undefined {\n return useMemo((): ExecutionContext_InitiatorIds | undefined => {\n const ids: ExecutionContext_InitiatorIds = {};\n if (userId) ids.userId = userId;\n if (organizationId) ids.organizationId = organizationId;\n if (applicationId) ids.applicationId = applicationId;\n return Object.keys(ids).length > 0 ? ids : undefined;\n }, [userId, organizationId, applicationId]);\n}\n\n/**\n * Hook to check if an operation is enabled based on enabledCondition.\n * \n * Automatically handles:\n * - Context needs extraction\n * - User context from UserOrgsContext\n * - Object context fetching (if needed)\n * - Caching based on operation, object, and user\n */\nexport function useOperationEnabled<TMainSchema = any>(\n params: UseOperationEnabledParams<TMainSchema>\n): UseOperationEnabledResult {\n const {\n operation,\n currentObject,\n inputDto,\n objectContext: providedObjectContext,\n resourceType,\n enabled = true,\n } = params;\n\n const { getResourcesRegistry, doOperation } = useResourceRegistry();\n const { user, permissions } = useUserOrgs();\n const appScope = useAppScopeSafe();\n const billing = useBillingSafe();\n const resourcesRegistry = getResourcesRegistry();\n const {\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n isLoading: featuresLoading,\n } = useFeatures();\n\n // Extract context needs (static, doesn't need to be in effect)\n const contextNeeds = useMemo(\n () => getOperationContextNeeds(operation),\n [operation]\n );\n\n const initiatorIds = useStableInitiatorIds(\n user?._id,\n appScope?.primaryScopeValues?.organizationId,\n appScope?.primaryScopeValues?.applicationId,\n );\n\n // ── Feature availability check (synchronous, from context) ──\n const featureAvailability = useMemo((): FeatureAvailability | undefined => {\n if (featuresLoading) {\n return operation?.requiredFeatures\n ? { isAvailable: false, behavior: FeatureUnavailabilityBehavior.DISABLE }\n : undefined;\n }\n const userRoles = buildFeaturePolicyRoles(\n permissions,\n appScope?.currentOrganizationId ?? null,\n );\n\n return resolveOperationFeatureAvailability(operation, {\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n userRoles,\n billingEnabled: billing?.isEnabled ?? false,\n });\n }, [\n operation,\n featuresLoading,\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n permissions,\n appScope?.currentOrganizationId,\n billing?.isEnabled,\n ]);\n\n const [isEnabled, setIsEnabled] = useState<boolean>(() => !operationNeedsDeferredGate(operation));\n const [isLoading, setIsLoading] = useState<boolean>(() => operationNeedsDeferredGate(operation));\n const [error, setError] = useState<Error | null>(null);\n\n useEffect(() => {\n // Skip evaluation if disabled or no operation\n if (!enabled || !operation) {\n setIsEnabled(true);\n setIsLoading(false);\n return;\n }\n\n // ── Feature check first (fast, synchronous) ──\n if (featureAvailability && !featureAvailability.isAvailable) {\n setIsEnabled(false);\n setIsLoading(false);\n return;\n }\n\n // Check if operation has enabledCondition\n if (!('enabledCondition' in operation) || !operation.enabledCondition) {\n // No enabledCondition means always enabled\n setIsEnabled(true);\n setIsLoading(false);\n return;\n }\n\n // If needsUserContext but no user, operation is disabled\n if (contextNeeds.needsUserContext && !user) {\n setIsEnabled(false);\n setIsLoading(false);\n return;\n }\n\n // Evaluate enabledCondition\n setIsLoading(true);\n setError(null);\n\n evaluateEnabledCondition({\n operation,\n currentObject,\n inputDto,\n userContext: user || undefined,\n initiatorIds,\n objectContext: providedObjectContext,\n resourcesRegistry,\n resourceType,\n doOperation,\n })\n .then((enabled) => {\n setIsEnabled(enabled);\n setIsLoading(false);\n })\n .catch((err) => {\n setError(err instanceof Error ? err : new Error('Unknown error'));\n setIsEnabled(false); // Default to disabled on error for safety\n setIsLoading(false);\n });\n }, [\n enabled,\n operation,\n currentObject,\n inputDto,\n providedObjectContext,\n user,\n initiatorIds,\n resourcesRegistry,\n resourceType,\n contextNeeds.needsUserContext,\n doOperation,\n featureAvailability,\n ]);\n\n return {\n isEnabled,\n isLoading,\n error,\n contextNeeds,\n featureAvailability,\n };\n}\n\n/**\n * Hook to check if multiple operations are enabled.\n * Useful for filtering operation lists.\n * \n * Evaluation order per operation:\n * 1. Feature check (fast, synchronous from context) — if failed, isEnabled=false with featureAvailability\n * 2. enabledCondition (may be async) — if failed, isEnabled=false, featureAvailability=undefined (not a feature issue)\n * \n * @param operations - Array of operations to check\n * @param currentObject - Current object (optional)\n * @param resourceType - Resource type\n * @returns Map of operation-path keys to { isEnabled, featureAvailability? }\n */\n/** Shallow value-equality for a single feature-availability descriptor. */\nfunction featureAvailabilityEqual(\n a: FeatureAvailability | undefined,\n b: FeatureAvailability | undefined,\n): boolean {\n if (a === b) return true;\n if (!a || !b) return false;\n const ka = Object.keys(a) as (keyof FeatureAvailability)[];\n const kb = Object.keys(b);\n if (ka.length !== kb.length) return false;\n for (const k of ka) {\n if (a[k] !== b[k]) return false;\n }\n return true;\n}\n\n/**\n * Value-equality for the operations-enabled map. The async evaluation rebuilds a\n * fresh `Map` on every run, and its effect re-fires whenever any input identity\n * churns (e.g. a recomputed `operations`/`filteredOps` array). Without this guard\n * `setEnabledMap(freshMap)` re-renders on every commit even when nothing changed —\n * the recomputed map feeds the action-bar `items` memo, which re-renders the row\n * operations (and their Radix tooltips/menus) in a tight loop that pegs the CPU.\n * Comparing by value lets `setEnabledMap` bail when the enabled-states are\n * unchanged, breaking the loop while still propagating any real change.\n */\nfunction operationsEnabledMapsEqual(\n a: Map<string, OperationEnabledEntry>,\n b: Map<string, OperationEnabledEntry>,\n): boolean {\n if (a === b) return true;\n if (a.size !== b.size) return false;\n for (const [key, av] of a) {\n const bv = b.get(key);\n if (!bv) return false;\n if (av.isEnabled !== bv.isEnabled) return false;\n if ((av.ineligibleSelectionIndices ?? []).join(',') !== (bv.ineligibleSelectionIndices ?? []).join(',')) return false;\n if (!featureAvailabilityEqual(av.featureAvailability, bv.featureAvailability)) return false;\n }\n return true;\n}\n\nexport function useOperationsEnabled<TMainSchema = any>(\n operations: FrontendResourceConfiguration_Operation<any, any, any>[],\n params: UseOperationsEnabledParams<TMainSchema> = {},\n): Map<string, OperationEnabledEntry> {\n const {\n currentObject,\n inputDto,\n objectContext: providedObjectContext,\n resourceType,\n enabled = true,\n selectionObjects,\n } = params;\n const { getResourcesRegistry, doOperation } = useResourceRegistry();\n const { user, permissions } = useUserOrgs();\n const appScope = useAppScopeSafe();\n const billing = useBillingSafe();\n const resourcesRegistry = getResourcesRegistry();\n const {\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n isLoading: featuresLoading,\n } = useFeatures();\n\n const initiatorIds = useStableInitiatorIds(\n user?._id,\n appScope?.primaryScopeValues?.organizationId,\n appScope?.primaryScopeValues?.applicationId,\n );\n\n const [enabledMap, setEnabledMap] = useState<Map<string, OperationEnabledEntry>>(new Map());\n\n useEffect(() => {\n if (!enabled) {\n const bypassMap = new Map<string, OperationEnabledEntry>();\n operations.forEach((operation) => {\n bypassMap.set(buildOperationEnabledKey(operation), { isEnabled: true });\n });\n setEnabledMap((prev) => (operationsEnabledMapsEqual(prev, bypassMap) ? prev : bypassMap));\n return;\n }\n\n if (!operations.length || !resourceType) {\n setEnabledMap((prev) => (prev.size === 0 ? prev : new Map()));\n return;\n }\n\n let cancelled = false;\n\n const userRoles = buildFeaturePolicyRoles(\n permissions,\n appScope?.currentOrganizationId ?? null,\n );\n\n const featureCtx = {\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n userRoles,\n billingEnabled: billing?.isEnabled ?? false,\n };\n\n const evaluateAll = async () => {\n const results = new Map<string, OperationEnabledEntry>();\n\n await Promise.all(\n operations.map(async (operation) => {\n const operationKey = buildOperationEnabledKey(operation);\n\n const featureAvailability = featuresLoading\n ? (operation.requiredFeatures ? { isAvailable: false as const, behavior: FeatureUnavailabilityBehavior.DISABLE } : undefined)\n : resolveOperationFeatureAvailability(operation, featureCtx);\n\n if (featureAvailability && !featureAvailability.isAvailable) {\n results.set(operationKey, { isEnabled: false, featureAvailability });\n return;\n }\n\n if (!('enabledCondition' in operation) || !operation.enabledCondition) {\n results.set(operationKey, { isEnabled: true, featureAvailability });\n return;\n }\n\n const needs = getOperationContextNeeds(operation);\n if (needs.needsUserContext && !user) {\n results.set(operationKey, { isEnabled: false, featureAvailability });\n return;\n }\n\n try {\n const evaluateFor = (subject: TMainSchema | undefined) => evaluateEnabledCondition({\n operation,\n currentObject: subject,\n inputDto,\n userContext: user || undefined,\n initiatorIds,\n objectContext: providedObjectContext,\n resourcesRegistry,\n resourceType,\n doOperation,\n });\n if (operation.isBulkOperation === true && selectionObjects && selectionObjects.length > 0) {\n const perRow = await Promise.all(selectionObjects.map((row) => evaluateFor(row)));\n const ineligible = perRow.flatMap((passes, index) => (passes ? [] : [index]));\n results.set(operationKey, {\n isEnabled: ineligible.length === 0,\n featureAvailability,\n ...(ineligible.length > 0 ? { ineligibleSelectionIndices: ineligible } : {}),\n });\n } else {\n results.set(operationKey, { isEnabled: await evaluateFor(currentObject), featureAvailability });\n }\n } catch (error) {\n results.set(operationKey, { isEnabled: false, featureAvailability });\n }\n })\n );\n\n if (!cancelled) {\n setEnabledMap((prev) => (operationsEnabledMapsEqual(prev, results) ? prev : results));\n }\n };\n\n evaluateAll();\n\n return () => { cancelled = true; };\n }, [\n enabled,\n operations,\n currentObject,\n selectionObjects,\n inputDto,\n providedObjectContext,\n user,\n initiatorIds,\n permissions,\n appScope?.currentOrganizationId,\n resourcesRegistry,\n resourceType,\n doOperation,\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n featuresLoading,\n billing?.isEnabled,\n ]);\n\n return enabledMap;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"useOperationEnabled.js","sourceRoot":"","sources":["../../../../../../src/core/resources/hooks/useOperationEnabled.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * React hook for checking if an operation is enabled.\n * \n * This hook evaluates the enabledCondition for an operation based on:\n * - Current object (for READ/UPDATE/DELETE)\n * - Input DTO (for CREATE)\n * - User context (from UserOrgsContext)\n * - Object context (fetched if needed)\n * \n * Usage:\n * ```tsx\n * const { isEnabled, isLoading } = useOperationEnabled({\n * operation: myOperation,\n * currentObject: myObject,\n * resourceType: 'TODOS'\n * });\n * ```\n */\n\nimport { useMemo } from 'react';\nimport { useResourceRegistry } from '~wildo-frontend-lib/core/resources/useResourceRegistry';\nimport { useUserOrgs } from '~wildo-frontend-lib/core/security/useUserOrgs';\nimport {\n evaluateEnabledCondition,\n type EvaluateEnabledConditionParams,\n getOperationContextNeeds,\n} from '~wildo-frontend-lib/core/resources/utils/operation-enabled-condition.frontend.utils';\nimport type { FrontendResourceConfiguration_Operation } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport {\n type ResourceType,\n type ExecutionContext_InitiatorIds,\n FeatureUnavailabilityBehavior,\n ResourcesConfig_OperationPathUtils,\n} from '@wildo-ai/saas-models';\nimport { useState, useEffect } from 'react';\nimport { useFeatures } from '~wildo-frontend-lib/core/features/useFeatures';\nimport {\n resolveOperationFeatureAvailability,\n type FeatureAvailability,\n} from '~wildo-frontend-lib/core/features/useOperationFeatureAvailability';\nimport { useAppScopeSafe } from '~wildo-frontend-lib/core/scope/useAppScope';\nimport { useBillingSafe } from '~wildo-frontend-lib/core/billing/useBilling';\nimport { buildFeaturePolicyRoles } from '~wildo-frontend-lib/core/features/feature-unavailability.frontend.utils';\n\nexport type { FeatureAvailability };\n\nexport interface UseOperationEnabledParams<TMainSchema = any> {\n /** The operation to evaluate */\n operation: FrontendResourceConfiguration_Operation<any, any, any>;\n /** Current object (for READ/UPDATE/DELETE operations) */\n currentObject?: TMainSchema;\n /** Input DTO (for CREATE operations) */\n inputDto?: Partial<TMainSchema>;\n /** Object context (parent/child relationships) - optional, will be fetched if needed */\n objectContext?: any;\n /** Resource type */\n resourceType: ResourceType;\n /** Whether to enable evaluation (default: true) */\n enabled?: boolean;\n}\n\nexport interface UseOperationEnabledResult {\n /** Whether the operation is enabled */\n isEnabled: boolean;\n /** Whether evaluation is in progress */\n isLoading: boolean;\n /** Error if evaluation failed */\n error: Error | null;\n /** Context needs for the operation */\n contextNeeds: {\n needsObjectContext: boolean;\n needsUserContext: boolean;\n };\n /** Feature availability information (undefined if no requiredFeatures on operation) */\n featureAvailability?: FeatureAvailability;\n}\n\n/** Result type for the batch useOperationsEnabled hook */\nexport interface OperationEnabledEntry {\n isEnabled: boolean;\n featureAvailability?: FeatureAvailability;\n /**\n * For a BULK operation judged row by row (`selectionObjects`): the indices, in `selectionObjects`,\n * of the rows that FAIL its condition. Present only when some do. It is what lets the bar say\n * \"2 of 5 selected can't…\" and offer to keep only the eligible rows, instead of a bare greyed button.\n */\n ineligibleSelectionIndices?: readonly number[];\n}\n\nexport interface UseOperationsEnabledParams<TMainSchema = any> {\n currentObject?: TMainSchema;\n inputDto?: Partial<TMainSchema>;\n objectContext?: EvaluateEnabledConditionParams<TMainSchema>['objectContext'];\n resourceType?: ResourceType;\n enabled?: boolean;\n /**\n * The rows a BULK operation would act on. A bulk twin inherits its single-row variant's\n * `enabledCondition`, which reads `currentObject` — so it is judged against EACH selected row,\n * and the action is enabled only when every row passes. That is the backend's rule\n * (`ServicesRegistryHandlerBackendService`, the multi-row branch of the enabled-state gate): the\n * write is one write over the whole selection, so offering it on \"most rows qualify\" would only\n * trade a disabled button for a refusal after the click.\n *\n * Ignored for a non-bulk operation, which keeps `currentObject`. When absent, a bulk operation is\n * judged against `currentObject` as before.\n */\n selectionObjects?: readonly TMainSchema[];\n}\n\nexport function buildOperationEnabledKey(\n operation: FrontendResourceConfiguration_Operation<any, any, any>,\n): string {\n return ResourcesConfig_OperationPathUtils.createOperationPathKeyFromOperation(operation as any);\n}\n\nfunction operationNeedsDeferredGate(\n operation: FrontendResourceConfiguration_Operation<any, any, any>,\n): boolean {\n return Boolean(operation.enabledCondition || operation.requiredFeatures);\n}\n\n/**\n * Derives a value-stable {@link ExecutionContext_InitiatorIds} from the\n * individual initiator primitives.\n *\n * Both enabled-condition hooks below feed `initiatorIds` into an effect's\n * dependency array. Building it directly from the `user` object and the\n * `appScope.primaryScopeValues` object made its identity churn whenever EITHER\n * source object's reference changed — most notably an access-token refresh,\n * which rebuilds `primaryScopeValues` (the access token is one of its `useMemo`\n * dependencies) even when the decoded user / organization / application ids are\n * unchanged. That needlessly re-fired the (async) evaluation effect. Keying the\n * memo on the three extracted primitives keeps the returned object\n * referentially stable until an id genuinely changes.\n */\nfunction useStableInitiatorIds(\n userId: string | null | undefined,\n organizationId: string | null | undefined,\n applicationId: string | null | undefined,\n): ExecutionContext_InitiatorIds | undefined {\n return useMemo((): ExecutionContext_InitiatorIds | undefined => {\n const ids: ExecutionContext_InitiatorIds = {};\n if (userId) ids.userId = userId;\n if (organizationId) ids.organizationId = organizationId;\n if (applicationId) ids.applicationId = applicationId;\n return Object.keys(ids).length > 0 ? ids : undefined;\n }, [userId, organizationId, applicationId]);\n}\n\n/**\n * Hook to check if an operation is enabled based on enabledCondition.\n * \n * Automatically handles:\n * - Context needs extraction\n * - User context from UserOrgsContext\n * - Object context fetching (if needed)\n * - Caching based on operation, object, and user\n */\nexport function useOperationEnabled<TMainSchema = any>(\n params: UseOperationEnabledParams<TMainSchema>\n): UseOperationEnabledResult {\n const {\n operation,\n currentObject,\n inputDto,\n objectContext: providedObjectContext,\n resourceType,\n enabled = true,\n } = params;\n\n const { getResourcesRegistry, doOperation } = useResourceRegistry();\n const { user, permissions } = useUserOrgs();\n const appScope = useAppScopeSafe();\n const billing = useBillingSafe();\n const resourcesRegistry = getResourcesRegistry();\n const {\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n isLoading: featuresLoading,\n } = useFeatures();\n\n // Extract context needs (static, doesn't need to be in effect)\n const contextNeeds = useMemo(\n () => getOperationContextNeeds(operation),\n [operation]\n );\n\n const initiatorIds = useStableInitiatorIds(\n user?._id,\n appScope?.primaryScopeValues?.organizationId,\n appScope?.primaryScopeValues?.applicationId,\n );\n\n // ── Feature availability check (synchronous, from context) ──\n const featureAvailability = useMemo((): FeatureAvailability | undefined => {\n if (featuresLoading) {\n return operation?.requiredFeatures\n ? { isAvailable: false, behavior: FeatureUnavailabilityBehavior.DISABLE }\n : undefined;\n }\n const userRoles = buildFeaturePolicyRoles(\n permissions,\n appScope?.currentOrganizationId ?? null,\n );\n\n return resolveOperationFeatureAvailability(operation, {\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n userRoles,\n billingEnabled: billing?.isEnabled ?? false,\n });\n }, [\n operation,\n featuresLoading,\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n permissions,\n appScope?.currentOrganizationId,\n billing?.isEnabled,\n ]);\n\n const [isEnabled, setIsEnabled] = useState<boolean>(() => !operationNeedsDeferredGate(operation));\n const [isLoading, setIsLoading] = useState<boolean>(() => operationNeedsDeferredGate(operation));\n const [error, setError] = useState<Error | null>(null);\n\n useEffect(() => {\n // Skip evaluation if disabled or no operation\n if (!enabled || !operation) {\n setIsEnabled(true);\n setIsLoading(false);\n return;\n }\n\n // ── Feature check first (fast, synchronous) ──\n if (featureAvailability && !featureAvailability.isAvailable) {\n setIsEnabled(false);\n setIsLoading(false);\n return;\n }\n\n // Check if operation has enabledCondition\n if (!('enabledCondition' in operation) || !operation.enabledCondition) {\n // No enabledCondition means always enabled\n setIsEnabled(true);\n setIsLoading(false);\n return;\n }\n\n // If needsUserContext but no user, operation is disabled\n if (contextNeeds.needsUserContext && !user) {\n setIsEnabled(false);\n setIsLoading(false);\n return;\n }\n\n // Evaluate enabledCondition\n setIsLoading(true);\n setError(null);\n\n evaluateEnabledCondition({\n operation,\n currentObject,\n inputDto,\n userContext: user || undefined,\n initiatorIds,\n objectContext: providedObjectContext,\n resourcesRegistry,\n resourceType,\n doOperation,\n })\n .then((enabled) => {\n setIsEnabled(enabled);\n setIsLoading(false);\n })\n .catch((err) => {\n setError(err instanceof Error ? err : new Error('Unknown error'));\n setIsEnabled(false); // Default to disabled on error for safety\n setIsLoading(false);\n });\n }, [\n enabled,\n operation,\n currentObject,\n inputDto,\n providedObjectContext,\n user,\n initiatorIds,\n resourcesRegistry,\n resourceType,\n contextNeeds.needsUserContext,\n doOperation,\n featureAvailability,\n ]);\n\n return {\n isEnabled,\n isLoading,\n error,\n contextNeeds,\n featureAvailability,\n };\n}\n\n/**\n * Hook to check if multiple operations are enabled.\n * Useful for filtering operation lists.\n * \n * Evaluation order per operation:\n * 1. Feature check (fast, synchronous from context) — if failed, isEnabled=false with featureAvailability\n * 2. enabledCondition (may be async) — if failed, isEnabled=false, featureAvailability=undefined (not a feature issue)\n * \n * @param operations - Array of operations to check\n * @param currentObject - Current object (optional)\n * @param resourceType - Resource type\n * @returns Map of operation-path keys to { isEnabled, featureAvailability? }\n */\n/** Shallow value-equality for a single feature-availability descriptor. */\nfunction featureAvailabilityEqual(\n a: FeatureAvailability | undefined,\n b: FeatureAvailability | undefined,\n): boolean {\n if (a === b) return true;\n if (!a || !b) return false;\n const ka = Object.keys(a) as (keyof FeatureAvailability)[];\n const kb = Object.keys(b);\n if (ka.length !== kb.length) return false;\n for (const k of ka) {\n if (a[k] !== b[k]) return false;\n }\n return true;\n}\n\n/**\n * Value-equality for the operations-enabled map. The async evaluation rebuilds a\n * fresh `Map` on every run, and its effect re-fires whenever any input identity\n * churns (e.g. a recomputed `operations`/`filteredOps` array). Without this guard\n * `setEnabledMap(freshMap)` re-renders on every commit even when nothing changed —\n * the recomputed map feeds the action-bar `items` memo, which re-renders the row\n * operations (and their Radix tooltips/menus) in a tight loop that pegs the CPU.\n * Comparing by value lets `setEnabledMap` bail when the enabled-states are\n * unchanged, breaking the loop while still propagating any real change.\n */\nfunction operationsEnabledMapsEqual(\n a: Map<string, OperationEnabledEntry>,\n b: Map<string, OperationEnabledEntry>,\n): boolean {\n if (a === b) return true;\n if (a.size !== b.size) return false;\n for (const [key, av] of a) {\n const bv = b.get(key);\n if (!bv) return false;\n if (av.isEnabled !== bv.isEnabled) return false;\n if ((av.ineligibleSelectionIndices ?? []).join(',') !== (bv.ineligibleSelectionIndices ?? []).join(',')) return false;\n if (!featureAvailabilityEqual(av.featureAvailability, bv.featureAvailability)) return false;\n }\n return true;\n}\n\nexport function useOperationsEnabled<TMainSchema = any>(\n operations: FrontendResourceConfiguration_Operation<any, any, any>[],\n params: UseOperationsEnabledParams<TMainSchema> = {},\n): Map<string, OperationEnabledEntry> {\n const {\n currentObject,\n inputDto,\n objectContext: providedObjectContext,\n resourceType,\n enabled = true,\n selectionObjects,\n } = params;\n const { getResourcesRegistry, doOperation } = useResourceRegistry();\n const { user, permissions } = useUserOrgs();\n const appScope = useAppScopeSafe();\n const billing = useBillingSafe();\n const resourcesRegistry = getResourcesRegistry();\n const {\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n isLoading: featuresLoading,\n } = useFeatures();\n\n const initiatorIds = useStableInitiatorIds(\n user?._id,\n appScope?.primaryScopeValues?.organizationId,\n appScope?.primaryScopeValues?.applicationId,\n );\n\n const [enabledMap, setEnabledMap] = useState<Map<string, OperationEnabledEntry>>(new Map());\n\n useEffect(() => {\n if (!enabled) {\n const bypassMap = new Map<string, OperationEnabledEntry>();\n operations.forEach((operation) => {\n bypassMap.set(buildOperationEnabledKey(operation), { isEnabled: true });\n });\n setEnabledMap((prev) => (operationsEnabledMapsEqual(prev, bypassMap) ? prev : bypassMap));\n return;\n }\n\n if (!operations.length || !resourceType) {\n setEnabledMap((prev) => (prev.size === 0 ? prev : new Map()));\n return;\n }\n\n let cancelled = false;\n\n const userRoles = buildFeaturePolicyRoles(\n permissions,\n appScope?.currentOrganizationId ?? null,\n );\n\n const featureCtx = {\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n userRoles,\n billingEnabled: billing?.isEnabled ?? false,\n };\n\n const evaluateAll = async () => {\n const results = new Map<string, OperationEnabledEntry>();\n\n await Promise.all(\n operations.map(async (operation) => {\n const operationKey = buildOperationEnabledKey(operation);\n\n const featureAvailability = featuresLoading\n ? (operation.requiredFeatures ? { isAvailable: false as const, behavior: FeatureUnavailabilityBehavior.DISABLE } : undefined)\n : resolveOperationFeatureAvailability(operation, featureCtx);\n\n if (featureAvailability && !featureAvailability.isAvailable) {\n results.set(operationKey, { isEnabled: false, featureAvailability });\n return;\n }\n\n if (!('enabledCondition' in operation) || !operation.enabledCondition) {\n results.set(operationKey, { isEnabled: true, featureAvailability });\n return;\n }\n\n const needs = getOperationContextNeeds(operation);\n if (needs.needsUserContext && !user) {\n results.set(operationKey, { isEnabled: false, featureAvailability });\n return;\n }\n\n try {\n const evaluateFor = (subject: TMainSchema | undefined) => evaluateEnabledCondition({\n operation,\n currentObject: subject,\n inputDto,\n userContext: user || undefined,\n initiatorIds,\n objectContext: providedObjectContext,\n resourcesRegistry,\n resourceType,\n doOperation,\n });\n if (operation.isBulkOperation === true && selectionObjects && selectionObjects.length > 0) {\n const perRow = await Promise.all(selectionObjects.map((row) => evaluateFor(row)));\n const ineligible = perRow.flatMap((passes, index) => (passes ? [] : [index]));\n results.set(operationKey, {\n isEnabled: ineligible.length === 0,\n featureAvailability,\n ...(ineligible.length > 0 ? { ineligibleSelectionIndices: ineligible } : {}),\n });\n } else {\n results.set(operationKey, { isEnabled: await evaluateFor(currentObject), featureAvailability });\n }\n } catch (error) {\n results.set(operationKey, { isEnabled: false, featureAvailability });\n }\n })\n );\n\n if (!cancelled) {\n setEnabledMap((prev) => (operationsEnabledMapsEqual(prev, results) ? prev : results));\n }\n };\n\n evaluateAll();\n\n return () => { cancelled = true; };\n }, [\n enabled,\n operations,\n currentObject,\n selectionObjects,\n inputDto,\n providedObjectContext,\n user,\n initiatorIds,\n permissions,\n appScope?.currentOrganizationId,\n resourcesRegistry,\n resourceType,\n doOperation,\n resolvedFeatures,\n resolvedFeaturesResponse,\n featureDefinitions,\n unavailabilityPolicy,\n featuresLoading,\n billing?.isEnabled,\n ]);\n\n return enabledMap;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InPlaceOperationContext.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"InPlaceOperationContext.d.ts","sourceRoot":"","sources":["../../../../../../src/core/resources/in-place/InPlaceOperationContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoE,MAAM,OAAO,CAAC;AAEzF,OAAO,KAAK,EAAE,uCAAuC,EAAE,gCAAgC,EAAE,MAAM,+DAA+D,CAAC;AAE/J;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH;;;;;;GAMG;AACH,oBAAY,0BAA0B;IACpC,gEAAgE;IAChE,OAAO,YAAY;IACnB,qFAAqF;IACrF,MAAM,WAAW;CAClB;AAED,UAAU,0BAA0B;IAClC,iEAAiE;IACjE,SAAS,EAAE,uCAAuC,CAAC;IACnD,mGAAmG;IACnG,eAAe,EAAE,gCAAgC,CAAC;CACnD;AAED,MAAM,MAAM,sBAAsB,GAC9B,CAAC,0BAA0B,GAAG;IAC5B,IAAI,EAAE,0BAA0B,CAAC,OAAO,CAAC;IACzC,+DAA+D;IAC/D,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC,GACF,CAAC,0BAA0B,GAAG;IAC5B,IAAI,EAAE,0BAA0B,CAAC,MAAM,CAAC;CACzC,CAAC,CAAC;AAEP,MAAM,WAAW,0BAA0B;IACzC;;;;;OAKG;IACH,WAAW,EAAE,OAAO,CAAC;IACrB,uEAAuE;IACvE,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACtC,IAAI,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,CAAC;IAC/C,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,wFAAwF;IACxF,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC;IAChD;;;OAGG;IACH,cAAc,EAAE,OAAO,CAAC;CACzB;AAaD,MAAM,WAAW,6BAA6B;IAC5C;;;;;;;OAOG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,wBAAwB,CAAC,EACvC,YAAY,EACZ,QAAQ,GACT,EAAE,6BAA6B,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAoCnD;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,IAAI,0BAA0B,CAEhE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InPlaceOperationContext.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"InPlaceOperationContext.js","sourceRoot":"","sources":["../../../../../../src/core/resources/in-place/InPlaceOperationContext.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAIzF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH;;;;;;GAMG;AACH,MAAM,CAAN,IAAY,0BAKX;AALD,WAAY,0BAA0B;IACpC,gEAAgE;IAChE,iDAAmB,CAAA;IACnB,qFAAqF;IACrF,+CAAiB,CAAA;AACnB,CAAC,EALW,0BAA0B,KAA1B,0BAA0B,QAKrC;AAwCD,MAAM,sBAAsB,GAA+B;IACzD,WAAW,EAAE,KAAK;IAClB,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS;IACrB,KAAK,EAAE,GAAG,EAAE,CAAC,SAAS;IACtB,eAAe,EAAE,GAAG,EAAE,CAAC,KAAK;IAC5B,cAAc,EAAE,KAAK;CACtB,CAAC;AAEF,MAAM,uBAAuB,GAAG,aAAa,CAA6B,sBAAsB,CAAC,CAAC;AAelG,MAAM,UAAU,wBAAwB,CAAC,EACvC,YAAY,EACZ,QAAQ,GACsB;IAC9B,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAgC,IAAI,CAAC,CAAC;IAE1E,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,IAA4B,EAAE,EAAE;QACxD,IAAI,IAAI,CAAC,eAAe,CAAC,YAAY,KAAK,YAAY,EAAE,CAAC;YACvD,+FAA+F;YAC/F,6FAA6F;YAC7F,sBAAsB;YACtB,OAAO;QACT,CAAC;QACD,SAAS,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAErD,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,SAAiB,EAAE,EAAE;QACxD,iGAAiG;QACjG,6FAA6F;QAC7F,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QAC7B,OAAO,MAAM,EAAE,IAAI,KAAK,0BAA0B,CAAC,OAAO,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC;IAC/F,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,MAAM,UAAU,GAAG,OAAO,CAA6B,GAAG,EAAE,CAAC,CAAC;QAC5D,WAAW,EAAE,IAAI;QACjB,MAAM;QACN,IAAI;QACJ,KAAK;QACL,eAAe;QACf,cAAc,EAAE,MAAM,EAAE,IAAI,KAAK,0BAA0B,CAAC,MAAM;KACnE,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC;IAE5C,OAAO,CACL,KAAC,uBAAuB,CAAC,QAAQ,IAAC,KAAK,EAAE,UAAU,YAChD,QAAQ,GACwB,CACpC,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB;IACjC,OAAO,UAAU,CAAC,uBAAuB,CAAC,CAAC;AAC7C,CAAC","sourcesContent":["import React, { createContext, useCallback, useContext, useMemo, useState } from 'react';\n\nimport type { FrontendResourceConfiguration_Operation, FrontendResourceOperationContext } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\n\n/**\n * Where an ELEMENT-LEVEL operation is hosted — the mechanism behind\n * `ResourceOperationActionPresentation.INLINE` and `NavigationTransition.INPLACE`.\n *\n * ## Why this is NOT part of navigation\n *\n * `NavigationTransition.INPLACE` has existed since the navigation model was written and has never\n * done what its own docstring promises (\"operates at the element level, not the zone level\",\n * \"surrounding items remain visible\", \"the zone stack is unchanged\"). What it actually did was\n * resolve to the source zone and emit `NAVIGATION_REPLACE` — swapping the whole zone, which is\n * precisely REPLACE. The preset inline-edit kit has shipped it for CREATE/UPDATE the whole time.\n *\n * The reason it stayed hollow is visible in that list of promises: element-level hosting uses NONE\n * of what the navigation layer provides. No zone, no stack entry, no transition verb, no appearance,\n * no lifecycle modifier. Routing it through a resolver whose entire vocabulary it declines left the\n * controller holding a verb it had nothing to do with, so it fell through to the nearest thing that\n * did something — and that fall-through IS the defect. Building the element-level host inside\n * navigation would have re-created it one layer down.\n *\n * So the host lives where the elements are: a COLLECTION provides it, and BOTH tiers that can select\n * it ask for it here — the per-operation `ResourceOperationActionPresentation.INLINE`, and the\n * class-level `NavigationTransition.INPLACE` that an app authors in a zone's `transitions`, its\n * `appLevel.transitions`, or a relationship's `display.inParentNavigation`. Two tiers, one host, so\n * there is nothing for them to drift apart about.\n *\n * The controller reaches it through REACT CONTEXT rather than an event, and that is load-bearing\n * rather than incidental: the NEAREST provider wins automatically, so a nested child list transforms\n * its own row and not the parent list's row of the same resource type. An event would have to carry\n * enough identity to disambiguate two mounted collections, and would still be guessing.\n *\n * ## The degrade, and why it is not optional\n *\n * An in-place host only exists inside a collection. The same action can also be rendered on a detail\n * page, in a danger zone, or in a picker, where there is no row to transform. `isAvailable` reports\n * that honestly so the caller can fall back to an overlay, instead of an action that silently does\n * nothing in half the places it renders.\n */\n/**\n * What an element-level host is hosting.\n *\n * Two shapes, because a CREATE has no element to transform. Modelling it as an `elementId` of `''`\n * or `'new'` would make every consumer's `isElementActive` check accidentally true for a row whose\n * id failed to resolve — the two cases must not be able to collide, so they are separate members.\n */\nexport enum InPlaceOperationTargetKind {\n /** An EXISTING element transforms into the operation's form. */\n ELEMENT = 'element',\n /** A NEW element materialises in the collection to collect the operation's input. */\n CREATE = 'create',\n}\n\ninterface InPlaceOperationTargetBase {\n /** The operation being hosted, resolved to its exact variant. */\n operation: FrontendResourceConfiguration_Operation;\n /** The context the host renders the operation with — identical to what any other host receives. */\n resourceContext: FrontendResourceOperationContext;\n}\n\nexport type InPlaceOperationTarget =\n | (InPlaceOperationTargetBase & {\n kind: InPlaceOperationTargetKind.ELEMENT;\n /** The row being transformed, by its addressable object id. */\n elementId: string;\n })\n | (InPlaceOperationTargetBase & {\n kind: InPlaceOperationTargetKind.CREATE;\n });\n\nexport interface InPlaceOperationController {\n /**\n * Is an element-level host mounted above this point in the tree?\n *\n * `false` outside a collection. A caller MUST branch on it rather than calling `open()` and hoping\n * — see the degrade rationale above.\n */\n isAvailable: boolean;\n /** What is currently hosted, or `null`. At most one per collection. */\n target: InPlaceOperationTarget | null;\n open: (target: InPlaceOperationTarget) => void;\n close: () => void;\n /** Is THIS element the one currently transformed? The predicate a row renderer asks. */\n isElementActive: (elementId: string) => boolean;\n /**\n * Is a NEW element being collected? The predicate a collection asks before rendering the extra\n * leading element that has no row of its own.\n */\n isCreateActive: boolean;\n}\n\nconst UNAVAILABLE_CONTROLLER: InPlaceOperationController = {\n isAvailable: false,\n target: null,\n open: () => undefined,\n close: () => undefined,\n isElementActive: () => false,\n isCreateActive: false,\n};\n\nconst InPlaceOperationContext = createContext<InPlaceOperationController>(UNAVAILABLE_CONTROLLER);\n\nexport interface InPlaceOperationProviderProps {\n /**\n * The resource whose elements this host owns.\n *\n * Nested collections mean nested providers, and the inner one shadows the outer for its own\n * subtree. Carrying the resource type makes a mismatched request refusable rather than silently\n * transforming a row of the wrong list — an inner provider that accepted anything would turn a\n * child-list action into a parent-row transformation.\n */\n resourceType: string;\n children: React.ReactNode;\n}\n\nexport function InPlaceOperationProvider({\n resourceType,\n children,\n}: InPlaceOperationProviderProps): React.JSX.Element {\n const [target, setTarget] = useState<InPlaceOperationTarget | null>(null);\n\n const open = useCallback((next: InPlaceOperationTarget) => {\n if (next.resourceContext.resourceType !== resourceType) {\n // A request for another resource's element. Refused rather than rendered: the caller's degrade\n // path (an overlay) is the correct outcome, and transforming an unrelated row would be worse\n // than doing nothing.\n return;\n }\n setTarget(next);\n }, [resourceType]);\n\n const close = useCallback(() => setTarget(null), []);\n\n const isElementActive = useCallback((elementId: string) => {\n // An empty id can never match. A row whose object id failed to resolve would otherwise match the\n // same empty string a second unresolved row produces, transforming an arbitrary one of them.\n if (!elementId) return false;\n return target?.kind === InPlaceOperationTargetKind.ELEMENT && target.elementId === elementId;\n }, [target]);\n\n const controller = useMemo<InPlaceOperationController>(() => ({\n isAvailable: true,\n target,\n open,\n close,\n isElementActive,\n isCreateActive: target?.kind === InPlaceOperationTargetKind.CREATE,\n }), [target, open, close, isElementActive]);\n\n return (\n <InPlaceOperationContext.Provider value={controller}>\n {children}\n </InPlaceOperationContext.Provider>\n );\n}\n\n/**\n * Read the element-level host.\n *\n * Never throws when absent — it returns an UNAVAILABLE controller instead, because \"there is no\n * collection here\" is an ordinary, expected situation for an action bar (a detail page, a danger\n * zone, a picker) and not a misconfiguration. A throwing hook would force every action surface to\n * know whether it happens to be inside a list.\n */\nexport function useInPlaceOperation(): InPlaceOperationController {\n return useContext(InPlaceOperationContext);\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation-initiator-satisfaction.frontend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"operation-initiator-satisfaction.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/core/resources/operation-initiator-satisfaction.frontend.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uCAAuC,EAAE,gCAAgC,EAAE,MAAM,8BAA8B,CAAC;AAG9H,wBAAgB,qCAAqC,CAAC,MAAM,EAAE;IAC5D,SAAS,EAAE,uCAAuC,CAAC;IACnD,0BAA0B,EAAE,gCAAgC,CAAC,4BAA4B,CAAC,CAAC;IAC3F,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;CACvD,GAAG,OAAO,CAkCV"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation-initiator-satisfaction.frontend.utils.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"operation-initiator-satisfaction.frontend.utils.js","sourceRoot":"","sources":["../../../../../src/core/resources/operation-initiator-satisfaction.frontend.utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAElE,MAAM,UAAU,qCAAqC,CAAC,MAIrD;IACC,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,IAAI,EAAE,CAAC;IAC7D,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,EAAE;QAC3C,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,IAAI,EAAE,CAAC;QAClD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,EAAE;YACpC,MAAM,aAAa,GAAG;gBACpB,SAAS,CAAC,eAAe;gBACzB,SAAS,CAAC,iBAAiB;gBAC3B,SAAS,CAAC,YAAY;aACvB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAiB,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAE5E,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/B,OAAO,KAAK,CAAC;YACf,CAAC;YAED,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;gBAChC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,aAAa,CAAC,MAAM,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,CAAC;gBACtG,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjC,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,MAAM,eAAe,GAAG,MAAM,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;gBACzD,OAAO,eAAe,KAAK,SAAS,IAAI,MAAM,CAAC,eAAe,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;YAC7E,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC","sourcesContent":["import type { FrontendResourceConfiguration_Operation, FrontendResourceOperationContext } from './resources.frontend.schemas';\nimport { frontendResourceUtils } from './frontend-resource.utils';\n\nexport function operationInitiatorParametersSatisfied(params: {\n operation: FrontendResourceConfiguration_Operation;\n contextResourceIdentifiers: FrontendResourceOperationContext['contextResourceIdentifiers'];\n contextualParameters: Record<string, string | number>;\n}): boolean {\n const initiatorInfos = params.operation.initiatorInfos ?? [];\n if (initiatorInfos.length === 0) {\n return true;\n }\n\n return initiatorInfos.some((initiatorInfo) => {\n const parameters = initiatorInfo.parameters ?? [];\n if (parameters.length === 0) {\n return true;\n }\n\n return parameters.every((parameter) => {\n const candidateKeys = [\n parameter.fieldIdentifier,\n parameter.relationshipField,\n parameter.resourceType,\n ].filter((key): key is string => typeof key === 'string' && key.length > 0);\n\n if (candidateKeys.length === 0) {\n return false;\n }\n\n return candidateKeys.some((key) => {\n const contextResourceId = frontendResourceUtils.getResourceId(params.contextResourceIdentifiers[key]);\n if (contextResourceId.length > 0) {\n return true;\n }\n\n const contextualValue = params.contextualParameters[key];\n return contextualValue !== undefined && String(contextualValue).length > 0;\n });\n });\n });\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation-semantics.frontend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"operation-semantics.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/core/resources/operation-semantics.frontend.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation-semantics.frontend.utils.js","sourceRoot":"","sources":["../../../../src/core/resources/operation-semantics.frontend.utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport { FieldSchemaType, getSchemaType, isFileSchema, isForeignKeyField, unwrapSchema } from '@wildo-ai/zod-decorators';\nimport {\n BULK_OPERATION_HOST_SUPPLIED_FIELDS,\n BULK_OPERATION_MATCH_FIELD,\n BULK_OPERATION_SELECTOR_FIELD,\n COLLECTION_OPERATIONS_WITHOUT_IDS,\n CoreResourceOperation,\n ResourceGeneratedOperationKind,\n ResourceOperationVariantType,\n ResourceOperationFrontendSurface,\n ResourceOperationRiskLevel,\n NavigationTransition,\n Resources_SharedUtils,\n} from '@wildo-ai/saas-models';\nimport {\n isCollectionScopedOperation,\n ResourceOperationActionPresentation,\n ResourceOperationActionScope,\n} from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\n\nexport interface ResourceOperationSemanticsLike {\n operationIdentifier: unknown;\n resourceOperationLike?: unknown;\n requestDto?: unknown;\n variantType?: unknown;\n isOperationDefault?: boolean;\n isBulkOperation?: boolean;\n variantKey?: unknown;\n /** Read only by the DROPDOWN rule: a pick that executes cannot also be a deliberate, confirmed act. */\n riskLevel?: unknown;\n /**\n * The subset of `ResourceOperationFrontendConfig` this module's decisions read.\n *\n * Deliberately a structural subset rather than the full config type: these helpers run against\n * operation objects arriving through several projections (the frontend registry, a thinned\n * navigation payload, a test fixture), and requiring the whole config would make them unusable on\n * exactly the surfaces that need them most.\n */\n operationFrontendConfig?: {\n surface?: ResourceOperationFrontendSurface;\n actionPresentation?: ResourceOperationActionPresentation;\n actionScope?: ResourceOperationActionScope;\n rowTargetRequestField?: string;\n };\n generatedOperation?: {\n kind?: unknown;\n fieldName?: unknown;\n };\n}\n\nexport const BULK_OPERATION_SELECTION_IDS_CONTEXT_KEY = 'bulkOperationSelectionIds';\n/**\n * The operation-context key carrying a CROSS-PAGE selection (\"select all N matching\") to whatever host\n * presents a bulk action's form — the sibling of {@link BULK_OPERATION_SELECTION_IDS_CONTEXT_KEY}.\n *\n * A form-bearing bulk action (one that asks for a value, like \"Change status\") is executed by the\n * form host, which adds the selection through {@link mergeBulkSelectionIntoRequestData}. That merge\n * read only the id key, so a cross-page selection never reached it and the request went out with no\n * selection but the form's own empty `_match` (#1461, #2035 run 2026-09-30).\n */\nexport const BULK_OPERATION_MATCH_SELECTION_CONTEXT_KEY = 'bulkOperationMatchSelection';\nexport const RESOURCE_OPERATION_EXECUTED_DISCRIMINATOR_CONTEXT_KEY = 'resourceOperationExecutedDiscriminator';\n\nexport type ResourceOperationLayoutKind =\n | 'create'\n | 'list'\n | 'read'\n | 'update'\n | 'search'\n | 'action';\n\nexport function isLiteralCoreResourceOperation(\n operationIdentifier: unknown,\n): operationIdentifier is CoreResourceOperation {\n return Object.values(CoreResourceOperation).includes(operationIdentifier as CoreResourceOperation);\n}\n\nexport function resolveEffectiveCoreOperation(\n operationIdentifier: unknown,\n resourceOperationLike?: unknown,\n): CoreResourceOperation | undefined {\n if (resourceOperationLike && Object.values(CoreResourceOperation).includes(resourceOperationLike as CoreResourceOperation)) {\n return resourceOperationLike as CoreResourceOperation;\n }\n\n if (Object.values(CoreResourceOperation).includes(operationIdentifier as CoreResourceOperation)) {\n return operationIdentifier as CoreResourceOperation;\n }\n\n return undefined;\n}\n\nexport function resolveEffectiveCoreOperationFromOperation(\n operation: ResourceOperationSemanticsLike,\n): CoreResourceOperation | undefined {\n return resolveEffectiveCoreOperation(\n operation.operationIdentifier,\n operation.resourceOperationLike,\n );\n}\n\nexport function matchesResourceOperationSemantic(\n operation: ResourceOperationSemanticsLike,\n coreOperation: CoreResourceOperation,\n): boolean {\n return resolveEffectiveCoreOperationFromOperation(operation) === coreOperation;\n}\n\n/**\n * The operation whose generated TITLE names a surface that shows `operationIdentifier` — the page header and\n * the overlay (dialog, sheet, tab) title alike, which must agree.\n *\n * The core EDIT surface is titled like the record's own page. UPDATE's title is generated as the name of an\n * ACTION, a button word (\"Update preferences\", \"Save changes\"), while READ's is generated as a HEADING naming\n * the surface (\"Preferences\"). An edit page headed by a verb names the button below it rather than the thing\n * being edited, and the form's own save button already says the verb. So when the resource has a READ, the\n * core UPDATE — including its polymorphic variants, which keep the `update` identifier — takes READ's title.\n *\n * Keyed on the literal identifier, NOT on the effective core semantics: a custom operation that BEHAVES like\n * an update (`claimDomain`, `reset_to_defaults`) is a named action, and its own title is the only word that\n * says which action the surface performs. A resource with no READ keeps UPDATE's title, the only word it has.\n */\nexport function resolveSurfaceTitleOperationIdentifier(\n operationIdentifier: unknown,\n resourceOperations: ReadonlyArray<{ operationIdentifier: unknown }> | undefined,\n): string {\n if (\n operationIdentifier === CoreResourceOperation.UPDATE\n && resourceOperations?.some((candidate) => candidate.operationIdentifier === CoreResourceOperation.READ)\n ) {\n return CoreResourceOperation.READ;\n }\n return String(operationIdentifier);\n}\n\nexport function isUpdateLikeCoreOperation(\n coreOperation: CoreResourceOperation | undefined,\n): boolean {\n return coreOperation === CoreResourceOperation.UPDATE\n || coreOperation === CoreResourceOperation.UPDATE_MANY;\n}\n\nexport function isSingleResourceUpdateLikeOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n return operation.isBulkOperation !== true\n && isUpdateLikeCoreOperation(resolveEffectiveCoreOperationFromOperation(operation));\n}\n\nexport function shouldEmitResourceRefreshAfterDirectOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n if (isGeneratedFileRegenerateOperation(operation)) {\n return true;\n }\n\n const effectiveOperation = resolveEffectiveCoreOperationFromOperation(operation);\n\n switch (effectiveOperation) {\n case CoreResourceOperation.CREATE:\n case CoreResourceOperation.CREATE_MANY:\n case CoreResourceOperation.UPDATE:\n case CoreResourceOperation.UPDATE_MANY:\n case CoreResourceOperation.DELETE:\n case CoreResourceOperation.DELETE_MANY:\n return true;\n default:\n return false;\n }\n}\n\nexport function readBulkOperationSelectionIds(\n additionalContext?: Record<string, unknown>,\n): string[] | undefined {\n const value = additionalContext?.[BULK_OPERATION_SELECTION_IDS_CONTEXT_KEY];\n\n if (!Array.isArray(value)) {\n return undefined;\n }\n\n const ids = value.filter((candidate): candidate is string => typeof candidate === 'string');\n return ids.length > 0 ? ids : undefined;\n}\n\n/** The cross-page selection an operation context carries, when \"select all N matching\" was chosen. */\nexport function readBulkOperationMatchSelection(\n additionalContext?: Record<string, unknown>,\n): { filters?: Record<string, unknown>; search?: string } | undefined {\n const value = additionalContext?.[BULK_OPERATION_MATCH_SELECTION_CONTEXT_KEY];\n if (!value || typeof value !== 'object' || Array.isArray(value)) {\n return undefined;\n }\n const candidate = value as { filters?: unknown; search?: unknown };\n return {\n ...(candidate.filters && typeof candidate.filters === 'object' && !Array.isArray(candidate.filters)\n ? { filters: candidate.filters as Record<string, unknown> }\n : {}),\n ...(typeof candidate.search === 'string' && candidate.search !== '' ? { search: candidate.search } : {}),\n };\n}\n\nexport function readResourceOperationExecutedDiscriminator(\n additionalContext?: Record<string, unknown>,\n): string | undefined {\n const value = additionalContext?.[RESOURCE_OPERATION_EXECUTED_DISCRIMINATOR_CONTEXT_KEY];\n return typeof value === 'string' && value.length > 0 ? value : undefined;\n}\n\n/**\n * Build the wire selector a bulk operation uses to name the rows it targets.\n *\n * The field name comes from {@link BULK_OPERATION_SELECTOR_FIELD} — the ONE named source both halves\n * of the contract read — because spelling it here is exactly how this broke. Every frontend bulk\n * surface emitted `ids`, which is not in the bulk request DTO\n * (`Resources_BulkOperationBaseSchema.extend(...)`), so the strict Zod parse stripped it and then\n * refused the request for the `_ids` it never received. It type-checked, it looked right, and the\n * generic bulk lane had never once worked from the UI.\n *\n * Every frontend producer of a bulk payload goes through this function, so there is one spelling to\n * get right rather than one per surface.\n */\nexport function buildBulkOperationSelectorPayload(ids: readonly string[]): Record<string, unknown> {\n return { [BULK_OPERATION_SELECTOR_FIELD]: [...ids] };\n}\n\n/**\n * The CROSS-PAGE selector payload: the query that produced the listing, not the rows it showed.\n *\n * Sibling of {@link buildBulkOperationSelectorPayload} and never sent beside it — the server refuses\n * a request naming both, because honouring one would make the other silently inert. The matched\n * count stays on the client: it is what the listing reported when the person chose, and the server\n * re-evaluates the query itself rather than trusting a number the client sent (#1461).\n */\nexport function buildBulkOperationMatchPayload(match: { filters?: Record<string, unknown>; search?: string }): Record<string, unknown> {\n const filters = match.filters && Object.keys(match.filters).length > 0 ? { filters: match.filters } : {};\n const search = match.search ? { search: match.search } : {};\n return { [BULK_OPERATION_MATCH_FIELD]: { ...filters, ...search } };\n}\n\n/**\n * The `resultSummary` an outcome event may carry: the operation's result when it is a PLAIN OBJECT,\n * and nothing otherwise.\n *\n * The event schema types it as a record, and every producer used to pass any non-null object —\n * which includes an array. A multi-row bulk update answers an array of rows, so its\n * RESOURCE_OPERATION_EXECUTED was refused by the event bus (\"Invalid payload\") and nobody heard that\n * the write succeeded: the listing kept its old values and the bulk bar kept the rows selected.\n * One definition, so the producers cannot disagree about it again.\n */\nexport function toOperationResultSummary(result: unknown): Record<string, unknown> | undefined {\n return typeof result === 'object' && result !== null && !Array.isArray(result)\n ? result as Record<string, unknown>\n : undefined;\n}\n\nexport function mergeBulkSelectionIntoRequestData(params: {\n operation: ResourceOperationSemanticsLike;\n requestData?: Record<string, unknown>;\n additionalContext?: Record<string, unknown>;\n}): Record<string, unknown> | undefined {\n if (params.operation.isBulkOperation !== true) {\n return params.requestData;\n }\n\n // The selector is the COLLECTION's to write, never the form's. Whatever the form's values carry\n // under a selector key is dropped first, so an empty `_match: {}` a form happened to hold can never\n // stand in for — or sit beside — the selection the person actually made.\n const formValues = params.requestData\n ? Object.fromEntries(Object.entries(params.requestData).filter(([key]) => !(BULK_OPERATION_HOST_SUPPLIED_FIELDS as readonly string[]).includes(key)))\n : undefined;\n\n const match = readBulkOperationMatchSelection(params.additionalContext);\n if (match) {\n return { ...(formValues ?? {}), ...buildBulkOperationMatchPayload(match) };\n }\n\n const ids = readBulkOperationSelectionIds(params.additionalContext);\n if (!ids || ids.length === 0) {\n return formValues;\n }\n\n return {\n ...(formValues ?? {}),\n ...buildBulkOperationSelectorPayload(ids),\n };\n}\n\nexport function isSemanticCustomResourceOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n return !isLiteralCoreResourceOperation(operation.operationIdentifier)\n && resolveEffectiveCoreOperationFromOperation(operation) !== undefined;\n}\n\nexport function isGeneratedFileRegenerateOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n return operation.generatedOperation?.kind === ResourceGeneratedOperationKind.GENERATED_FILE_REGENERATE\n || (\n typeof operation.operationIdentifier === 'string'\n && Resources_SharedUtils.parseGeneratedFileRegenerateOperationIdentifier(operation.operationIdentifier) !== undefined\n && resolveEffectiveCoreOperationFromOperation(operation) === CoreResourceOperation.UPDATE\n );\n}\n\n/**\n * Is this the file-export companion of a LIST/SEARCH operation?\n *\n * Identity comes from the generated-operation metadata, with the prefixed identifier as the fallback\n * for any surface that receives a thinned operation object — the same two-source shape\n * {@link isGeneratedFileRegenerateOperation} uses, and for the same reason: the frontend receives\n * operations through several projections and not all of them carry `generatedOperation`.\n */\nexport function isGeneratedCollectionExportOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n return operation.generatedOperation?.kind === ResourceGeneratedOperationKind.GENERATED_COLLECTION_EXPORT\n || (\n typeof operation.operationIdentifier === 'string'\n && Resources_SharedUtils.parseGeneratedCollectionExportOperationIdentifier(operation.operationIdentifier) !== undefined\n );\n}\n\n/**\n * A CUSTOM operation that borrows a COLLECTION verb, and therefore addresses no single row.\n *\n * `resourceOperationLike` answers a ROUTING question — which core verb's route shape and\n * collection-level authorization does this operation borrow. The frontend has been reading it as a\n * statement about what the operation MEANS to a user, and for the collection verbs those two\n * answers come apart: an operation borrowing one of `COLLECTION_OPERATIONS_WITHOUT_IDS` gets a\n * route with NO `:id` segment in it, so there is no row for a per-row button to act on. Clicking it\n * on the third row does exactly what clicking it on the first row does.\n *\n * `AuditLogs.EXPORT_AUDIT_LOGS` is the worked example and says so at its own declaration: it borrows\n * CREATE to get \"the collection POST route shape without … requiring a meaningless `auditLogId` path\n * value\". It then rendered a Download button on every row of the audit trail.\n *\n * DERIVED rather than declared, for the reason the generated collection-export exemption beside it\n * already gives: `actionScope: COLLECTION` is a per-app declaration, and asking every author to\n * stamp it puts the burden on them for something the framework already knows from the route it\n * built. Measured 2026-09-20 over `engine/` and `platform/`: five custom operations borrow a\n * collection verb — this export, both access-grant `REQUEST_ACCESS` verbs, SCIM `GENERATE_TOKEN` and\n * SSO `DISCOVER_ENDPOINTS` — and not one of the five is a per-row action. None had declared the\n * scope, so all five rendered per row.\n *\n * `rowTargetRequestField` is the declared ESCAPE, not an oversight: it is how an operation says \"I\n * address the clicked row through the request BODY rather than the URL\", which is precisely the\n * shape a per-row action borrowing a collection verb would take. One that declares it stays an item\n * action.\n */\nexport function isCollectionVerbBorrowingOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n // A LITERAL core verb is not borrowing anything — `CREATE` is the resource's create, and\n // `LIST`/`SEARCH`/`COUNT` are already handled as non-item operations below.\n if (isLiteralCoreResourceOperation(operation.operationIdentifier)) return false;\n if (operation.operationFrontendConfig?.rowTargetRequestField) return false;\n const effectiveCoreOperation = resolveEffectiveCoreOperationFromOperation(operation);\n return effectiveCoreOperation !== undefined\n && COLLECTION_OPERATIONS_WITHOUT_IDS.includes(effectiveCoreOperation);\n}\n\n/**\n * Does this operation act on the WHOLE COLLECTION rather than on one row?\n *\n * THE single answer to that question, because it is asked twice and the two askers do different\n * jobs: `useResourceOperationActions` decides which actions EXIST on a surface, and\n * `ResourceLayout_List` decides whether the collection-action surface is MOUNTED at all. An\n * exemption added to one alone produces actions rendered into a container that was never created —\n * which is exactly what happened on 2026-08-25, when three gate fixes in the hook changed nothing\n * visible because the mount check still said there were no collection-scoped operations here.\n *\n * That hazard used to be managed by a ⚠️ comment asking the next author to remember both sites.\n * Collapsing the predicate is the stronger form of the same instruction: there is now one site.\n *\n * Three ways to be collection-scoped, in descending order of how explicit they are:\n * 1. DECLARED — `actionScope: COLLECTION`, the per-app opt-in for a \"retry all\" / \"purge all\";\n * 2. DERIVED from the generated collection-export companion, which is collection-scoped by\n * construction and has no author to declare anything;\n * 3. DERIVED from a borrowed COLLECTION verb — see {@link isCollectionVerbBorrowingOperation}.\n */\nexport function isCollectionScopedResourceOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n return isCollectionScopedOperation(operation.operationFrontendConfig)\n || isGeneratedCollectionExportOperation(operation)\n || isCollectionVerbBorrowingOperation(operation);\n}\n\nexport const NON_ITEM_RESOURCE_OPERATIONS = new Set<CoreResourceOperation>([\n CoreResourceOperation.LIST,\n CoreResourceOperation.SEARCH,\n CoreResourceOperation.COUNT,\n CoreResourceOperation.CREATE,\n CoreResourceOperation.CREATE_MANY,\n CoreResourceOperation.READ,\n]);\n\n/**\n * Effective core semantics that are pure aggregate / collection READS — a data\n * provider the surface calls programmatically, never a per-item user action,\n * even when worn by a CUSTOM operation. A `get_state` op declaring\n * `resourceOperationLike: COUNT` (no `requestDto`) is the canonical example: it\n * fetches aggregate state for a panel to render, so as an action-bar button it is\n * a dead control that fetches and shows nothing.\n *\n * `READ` and `CREATE` are deliberately EXCLUDED: custom READ-like ops\n * (`open_portal`, `usage_stats`) and CREATE-like ops (a \"clone\" / \"duplicate\")\n * ARE real user actions and must keep their button.\n */\nexport const NON_ITEM_CUSTOM_CORE_SEMANTICS = new Set<CoreResourceOperation>([\n CoreResourceOperation.COUNT,\n CoreResourceOperation.LIST,\n CoreResourceOperation.SEARCH,\n]);\n\nexport const NAVIGABLE_RESOURCE_OPERATIONS = new Set<CoreResourceOperation>([\n CoreResourceOperation.CREATE,\n CoreResourceOperation.READ,\n CoreResourceOperation.UPDATE,\n]);\n\nexport function shouldTreatAsNonItemResourceOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n // The collection-export companion BORROWS `resourceOperationLike: LIST/SEARCH` so that routing,\n // collection-level authorization and URL building all treat it as a listing. That makes the\n // aggregate-read test below match it — and it is exactly wrong here: an export is an ACTION a user\n // clicks, not a data provider. Without this exemption the action is filtered out of every bar and\n // the feature has no surface at all, which is silent: nothing errors, the button simply never\n // renders.\n if (isGeneratedCollectionExportOperation(operation)) {\n return false;\n }\n\n if (\n isLiteralCoreResourceOperation(operation.operationIdentifier)\n && NON_ITEM_RESOURCE_OPERATIONS.has(operation.operationIdentifier)\n ) {\n return true;\n }\n\n // A CUSTOM operation whose effective core semantic is an aggregate/collection\n // read (COUNT/LIST/SEARCH) is a data provider, not a per-item action — keep it\n // out of the action bar so it does not render as a dead, do-nothing button.\n if (!isLiteralCoreResourceOperation(operation.operationIdentifier)) {\n const effectiveCoreOperation = resolveEffectiveCoreOperationFromOperation(operation);\n if (effectiveCoreOperation && NON_ITEM_CUSTOM_CORE_SEMANTICS.has(effectiveCoreOperation)) {\n return true;\n }\n }\n\n return false;\n}\n\n/**\n * The largest request-body field count the framework will present in an OVERLAY rather than a page.\n *\n * Six is a judgement, not a measurement, and it is written down here — in ONE place, named — so it\n * can be argued with instead of rediscovered. It is the point at which the industry guidance stops\n * saying \"keep the user in context\" and starts saying \"give the task the room a page has\": Carbon\n * routes complex data entry to a full page, Filament's `->form()` modal is described for collecting\n * *extra information*, not for authoring a record.\n *\n * An author who disagrees for a specific operation does not tune this number — they declare\n * `actionPresentation` and the derivation is not consulted at all. That is the escape hatch, and it\n * is why a single global constant is honest here.\n */\nexport const ACTION_MODAL_FIELD_CEILING = 6;\n\n/**\n * The largest request-body field count the framework will present in an ANCHORED PANEL rather than\n * an overlay.\n *\n * Two, and the reasoning is the one this axis's `POPOVER` member already states: the anchored panel\n * is the small-input idiom (\"snooze until…\", \"reject with a reason…\"), and it earns its\n * place by keeping the row the user is acting on visible. A third control starts wanting the room a\n * dialog has, and the panel stops being cheaper than one.\n *\n * Pairs with {@link ACTION_MODAL_FIELD_CEILING} as one ordered ladder — 1–2 anchored, 3–6 overlay,\n * beyond that a page — so the two numbers are argued with together instead of one of them silently\n * owning every case.\n */\nexport const ACTION_ANCHORED_FIELD_CEILING = 2;\n\n/**\n * Can the framework honestly present this request body inside an overlay?\n *\n * Three refusals, each for a different reason rather than by symmetry:\n * - **not an object schema** — nothing can be counted, so nothing can be promised;\n * - **a file field** — upload chrome (drag target, crop, progress, retry) needs room an overlay\n * does not have, and a half-visible upload is worse than a page;\n * - **a nested object / array-of-objects** — a nested write is a form inside a form, which is the\n * shape a page exists for.\n *\n * Anything else is judged on size alone. Note this reads the schema STRUCTURALLY and never a field\n * count carried alongside it: the operation object reaching the frontend is a projection, and a\n * count computed elsewhere would be a second source able to disagree with the schema it describes.\n */\nfunction requestBodyFitsAnOverlay(requestDto: unknown, suppliedKeys: ReadonlySet<string>): boolean {\n if (!(requestDto instanceof z.ZodObject)) {\n return false;\n }\n\n return countFieldsPresentableWithoutAPage(requestDto, ACTION_MODAL_FIELD_CEILING, suppliedKeys) !== undefined;\n}\n\n/**\n * Is this request body small and simple enough for an ANCHORED PANEL?\n *\n * The SHAPE test is identical to the overlay's — a file, a nested object or a repeating sub-form\n * belongs on a page whichever chrome is being considered — so only the ceiling differs. Sharing\n * `countFieldsPresentableWithoutAPage` is what keeps the two answers from disagreeing about what\n * \"simple\" means: two copies of that list would drift the first time a field kind is added.\n */\nfunction requestBodyFitsAnAnchoredPanel(requestDto: unknown, suppliedKeys: ReadonlySet<string>): boolean {\n return countFieldsPresentableWithoutAPage(requestDto, ACTION_ANCHORED_FIELD_CEILING, suppliedKeys) !== undefined;\n}\n\n/**\n * The request keys a BULK action's host fills itself, which are therefore not inputs a person fills.\n *\n * A bulk twin's request is the single-row request plus `_ids` — the selection — and the form hides\n * that key because the collection supplies it. Counting it anyway made every bulk action look one\n * field larger than it is: a two-field bulk action counted three and fell from the anchored panel\n * to a dialog, while the SAME action on one row got the panel. The ladder has to count what the\n * person will actually see.\n *\n * Named from `BULK_OPERATION_HOST_SUPPLIED_FIELDS` — both selectors, `_ids` and the cross-page\n * `_match` — the one list the form's omission and the execution merge also read, so the keys this\n * skips and the keys the request builder writes cannot drift apart.\n */\nfunction resolveHostSuppliedRequestKeys(operation: ResourceOperationSemanticsLike): ReadonlySet<string> {\n return operation.isBulkOperation === true ? new Set<string>(BULK_OPERATION_HOST_SUPPLIED_FIELDS) : new Set();\n}\n\n/**\n * The field count of a request body every one of whose fields can be drawn without a page, or\n * `undefined` when the body is empty, over `ceiling`, unintrospectable, or holds a field that\n * cannot.\n *\n * Reads the schema STRUCTURALLY and never a field count carried alongside it: the operation object\n * reaching the frontend is a projection, and a count computed elsewhere would be a second source\n * able to disagree with the schema it describes.\n */\nfunction countFieldsPresentableWithoutAPage(\n requestDto: unknown,\n ceiling: number,\n suppliedKeys: ReadonlySet<string>,\n): number | undefined {\n if (!(requestDto instanceof z.ZodObject)) {\n return undefined;\n }\n\n const shape = requestDto.shape as Record<string, z.ZodTypeAny>;\n // Keys the HOST supplies are not inputs anyone fills — see `resolveHostSuppliedRequestKeys`.\n const fieldNames = Object.keys(shape).filter((fieldName) => !suppliedKeys.has(fieldName));\n\n if (fieldNames.length === 0 || fieldNames.length > ceiling) {\n return undefined;\n }\n\n const everyFieldFits = fieldNames.every((fieldName) => {\n const unwrapped = unwrapSchema(shape[fieldName]!);\n\n if (isFileSchema(unwrapped)) {\n return false;\n }\n\n if (unwrapped instanceof z.ZodObject) {\n return false;\n }\n\n if (unwrapped instanceof z.ZodArray) {\n // An array of scalars (a list of ids, a set of tags) is one control and fits fine. An array of\n // OBJECTS is a repeating sub-form, which does not.\n return !(unwrapSchema(unwrapped.element as z.ZodTypeAny) instanceof z.ZodObject);\n }\n\n return true;\n });\n\n return everyFieldFits ? fieldNames.length : undefined;\n}\n\n/**\n * Does this operation declare a request body with NO fields — an explicit `z.object({})`?\n *\n * Such a zero-input operation has no form to collect, so it executes rather than opening one.\n * Mirrors the backend's `hasMeaningfulExplicitRequestDto` (inverted).\n */\nexport function hasEmptyResourceOperationRequestBody(requestDto: unknown): boolean {\n return requestDto instanceof z.ZodObject && Object.keys(requestDto.shape).length === 0;\n}\n\n/**\n * Does this operation collect NOTHING from a person? No `requestDto`, or one whose every field the\n * host supplies itself.\n *\n * A bulk twin's request is its row variant's body plus the `_ids` selector the collection fills. A\n * bulk action whose row variant takes no input therefore has a body of exactly `{ _ids }` — not\n * empty, and not something anyone types. Checking raw emptiness sent Wonder Todos' bulk \"Unassign\"\n * to a dialog holding an empty form and a Save button, where the same action on one row ran on\n * click. The action ladder and the operation host both ask this, so an action cannot run directly\n * from one surface and open an empty form on another.\n */\nexport function operationCollectsNoCallerInput(operation: ResourceOperationSemanticsLike): boolean {\n if (!operation.requestDto) {\n return true;\n }\n if (!(operation.requestDto instanceof z.ZodObject)) {\n return false;\n }\n const suppliedKeys = resolveHostSuppliedRequestKeys(operation);\n return Object.keys(operation.requestDto.shape).every((fieldName) => suppliedKeys.has(fieldName));\n}\n\n/**\n * Does this risk level ask for a confirmation before the operation runs?\n *\n * HIGH and CRITICAL do (a plain confirm, and a typed one); LOW and MEDIUM execute on click. The one\n * definition the action ladder's confirm dialog and the DROPDOWN rule both read, so \"risky enough to\n * confirm\" and \"too risky to execute on a pick\" cannot come to mean two different sets.\n */\nexport function isRiskyResourceOperation(riskLevel: unknown): boolean {\n return riskLevel === ResourceOperationRiskLevel.HIGH || riskLevel === ResourceOperationRiskLevel.CRITICAL;\n}\n\n/**\n * The kind of domain a DROPDOWN lists — the two a person can pick from without typing a value.\n *\n * Two members because the lists are genuinely different things: an enum's values are CLOSED and\n * known up front, so they are listed whole; a reference's candidates are records on the server, so\n * they are SEARCHED as you type and scoped like the form's picker. A boolean is deliberately absent —\n * a two-item menu for yes/no is a worse control than the toggle it would replace.\n */\nexport enum ResourceOperationChoiceDomain {\n /** A closed enum — every value listed, labelled as the form labels it. */\n ENUM = 'enum',\n /** A foreign key — the referenced records, searched server-side. */\n REFERENCE = 'reference',\n}\n\n/** The single field a DROPDOWN presents, and which kind of list it needs. */\nexport interface ResourceOperationDropdownChoice {\n /** The request field the pick is written to. */\n fieldName: string;\n /** That field's schema as the request DTO declares it (decorators intact). */\n fieldSchema: z.ZodTypeAny;\n domain: ResourceOperationChoiceDomain;\n}\n\n/**\n * The one choice field this operation's input consists of, or `undefined` when its input is\n * anything else.\n *\n * Qualifies only when, after the keys the host supplies itself (a bulk twin's `_ids`), EXACTLY ONE\n * field remains and it is a single enum or a single foreign key. An array is refused: picking one\n * item of a multi-pick and executing is not what the field asks for.\n *\n * Reads the schema structurally, like every other rule in this module, so the answer cannot\n * disagree with the form the same operation would otherwise render.\n */\nexport function resolveResourceOperationDropdownChoice(\n operation: ResourceOperationSemanticsLike,\n): ResourceOperationDropdownChoice | undefined {\n const requestDto = operation.requestDto;\n if (!(requestDto instanceof z.ZodObject)) {\n return undefined;\n }\n\n const suppliedKeys = resolveHostSuppliedRequestKeys(operation);\n const shape = requestDto.shape as Record<string, z.ZodTypeAny>;\n const fieldNames = Object.keys(shape).filter((fieldName) => !suppliedKeys.has(fieldName));\n if (fieldNames.length !== 1) {\n return undefined;\n }\n\n const fieldName = fieldNames[0]!;\n const fieldSchema = shape[fieldName]!;\n if (unwrapSchema(fieldSchema) instanceof z.ZodArray) {\n return undefined;\n }\n if (isForeignKeyField(fieldSchema)) {\n return { fieldName, fieldSchema, domain: ResourceOperationChoiceDomain.REFERENCE };\n }\n if (getSchemaType(fieldSchema) === FieldSchemaType.ENUM) {\n return { fieldName, fieldSchema, domain: ResourceOperationChoiceDomain.ENUM };\n }\n return undefined;\n}\n\n/**\n * Can this operation honestly present as a DROPDOWN — one choice field, one row, and no confirmation\n * owed?\n *\n * All three are correctness constraints, not taste. Without a single choice field there is no list to\n * show. A pick executes immediately, so an operation whose risk level asks for a confirmation would\n * lose it. And a BULK twin writes every selected row: one stray pick in a menu would rewrite them all\n * with no second step, which is the one place \"the pick is the submission\" is the wrong promise. Each\n * of those keeps the anchored FORM, which has an explicit Submit.\n */\nexport function operationCanPresentAsDropdown(operation: ResourceOperationSemanticsLike): boolean {\n return operation.isBulkOperation !== true\n && !isRiskyResourceOperation(operation.riskLevel)\n && resolveResourceOperationDropdownChoice(operation) !== undefined;\n}\n\n/**\n * HOW does this action collect its input?\n *\n * The single answer for every action surface. An explicitly authored\n * {@link ResourceOperationActionPresentation} is returned as authored — the author has answered the\n * question and the framework does not second-guess their TASTE — with ONE correctness exception: a\n * DROPDOWN the operation cannot honestly be resolves to POPOVER (see below). Everything else is the\n * DERIVATION for the (overwhelmingly common) case where nothing was authored.\n *\n * The derivation is ordered by how strong the evidence is, not by convenience:\n *\n * 1. **`ADDRESSABLE` ⇒ PAGE.** Declaring an operation deep-linkable IS declaring it a destination.\n * Nothing derived may take that away.\n * 2. **A literal core CREATE / READ / UPDATE ⇒ PAGE.** These are the framework's own page surfaces\n * and every app's navigation config is written against them; deriving an overlay here would\n * silently restyle every existing application.\n * 3. **Already-established in-place shapes ⇒ DIRECT.** A row-targeted action (its target rides the\n * body), a zero-input collection action, and a generated-file regenerate all executed on click\n * before this axis existed. They are stated here so the axis DESCRIBES the framework's behaviour\n * rather than sitting beside it — an axis that cannot express what the framework already does is\n * a second mechanism, not a vocabulary.\n * 4. **No caller input ⇒ DIRECT.** No `requestDto` at all, an explicit `z.object({})`, or a bulk\n * body holding only the selector the host fills ({@link operationCollectsNoCallerInput}).\n * 5. **One choice from an enum or a reference, and no confirmation owed ⇒ DROPDOWN.** The pick is\n * the submission, so the list of values IS the whole input ({@link operationCanPresentAsDropdown}).\n * 6. **One or two simple inputs ⇒ POPOVER.** An anchored panel beside the button that asked for\n * them, so the row being acted on stays visible.\n * 7. **Input that fits an overlay ⇒ MODAL.**\n * 8. **Everything else ⇒ PAGE.** Files, nested writes, large field sets — and the honest fallback\n * for a `requestDto` this code cannot introspect (a thinned projection), because refusing to\n * guess returns the behaviour the operation had before.\n *\n * ## An authored DROPDOWN that cannot be one resolves to POPOVER\n *\n * The only authored answer this function overrides, and for the same reason the click handler\n * refuses a non-navigating presentation on a zero-input update-like action: honouring it would be\n * wrong, not merely ugly. A DROPDOWN over two fields has no list to show, and one over a CRITICAL\n * operation would execute without the typed confirmation every other surface demands. POPOVER is the\n * nearest honest answer — the same anchored panel, holding the form with its Submit.\n *\n * ## Why step 6 is DERIVED, when it used to be authored-only\n *\n * This function returned `MODAL` for every small input and left `POPOVER` to authors, on the\n * reasoning that an anchored panel is a claim about the surrounding context — that the trigger is\n * anchored and visible — which the operation alone cannot support.\n *\n * The reasoning was sound and the conclusion did not follow, because nothing was ever asking this\n * function to be right about the host. **The bar already decides whether it can anchor**, and it\n * already degrades when it cannot: an item collapsed into the overflow menu or nested in a subgroup\n * takes its `onClick`, which `resolveActionPresentationTransition` maps to an OVERLAY — the same\n * chrome `MODAL` would have produced. So the cost of deriving the panel is zero where it cannot be\n * drawn, and the cost of NOT deriving it was that every small action in every application —\n * \"snooze until…\", \"reject with a reason…\" — covered the list it was acting on with a dialog, and the\n * only way out was to author the axis per operation. (The one-CHOICE actions — \"change status to…\",\n * \"assign to…\" — have since moved one step earlier, to DROPDOWN.)\n *\n * `INLINE` stays authored-only, and the asymmetry is the point: its claim is about the ELEMENT (the\n * thing being acted on is a row that can transform in place), and its degrade target is an overlay\n * over the list it was meant to keep visible — so guessing it wrong costs the user the very thing\n * the presentation exists for. A popover guessed wrong costs nothing.\n */\nexport function resolveResourceOperationActionPresentation(\n operation: ResourceOperationSemanticsLike,\n): ResourceOperationActionPresentation {\n const config = operation.operationFrontendConfig;\n\n if (config?.actionPresentation) {\n if (\n config.actionPresentation === ResourceOperationActionPresentation.DROPDOWN\n && !operationCanPresentAsDropdown(operation)\n ) {\n return ResourceOperationActionPresentation.POPOVER;\n }\n return config.actionPresentation;\n }\n\n if (config?.surface === ResourceOperationFrontendSurface.ADDRESSABLE) {\n return ResourceOperationActionPresentation.PAGE;\n }\n\n if (\n isLiteralCoreResourceOperation(operation.operationIdentifier)\n && NAVIGABLE_RESOURCE_OPERATIONS.has(operation.operationIdentifier)\n ) {\n return ResourceOperationActionPresentation.PAGE;\n }\n\n if (isGeneratedFileRegenerateOperation(operation)) {\n return ResourceOperationActionPresentation.DIRECT;\n }\n\n // A ZERO-INPUT single-resource UPDATE-like custom action keeps its host, even though it collects\n // nothing and would otherwise be DIRECT by the rule below.\n //\n // Its mutation must run under an explicit RMM-vs-weaker-guarantee contract, and only a host\n // provides one — `useResourceOperationSurface.executeCurrentOperation()` throws\n // `MissingRMMRuntimeError` rather than writing without it. Executing such an action straight from\n // the action bar would take the plain `doOperation` path and lose that guarantee SILENTLY, which\n // is why the click handler also refuses to honour an AUTHORED non-navigating presentation here:\n // this is a correctness constraint, not a styling default.\n if (!operation.requestDto && isSingleResourceUpdateLikeOperation(operation)) {\n return ResourceOperationActionPresentation.PAGE;\n }\n\n if (config?.rowTargetRequestField) {\n return ResourceOperationActionPresentation.DIRECT;\n }\n\n if (\n config?.actionScope === ResourceOperationActionScope.COLLECTION\n && hasEmptyResourceOperationRequestBody(operation.requestDto)\n ) {\n return ResourceOperationActionPresentation.DIRECT;\n }\n\n if (operationCollectsNoCallerInput(operation)) {\n return ResourceOperationActionPresentation.DIRECT;\n }\n\n if (operationCanPresentAsDropdown(operation)) {\n return ResourceOperationActionPresentation.DROPDOWN;\n }\n\n const suppliedKeys = resolveHostSuppliedRequestKeys(operation);\n\n if (requestBodyFitsAnAnchoredPanel(operation.requestDto, suppliedKeys)) {\n return ResourceOperationActionPresentation.POPOVER;\n }\n\n return requestBodyFitsAnOverlay(operation.requestDto, suppliedKeys)\n ? ResourceOperationActionPresentation.MODAL\n : ResourceOperationActionPresentation.PAGE;\n}\n\n/**\n * Does this presentation reach the NAVIGATION layer, or does the action layer own it end to end?\n *\n * `MODAL` and `PAGE` are destinations. `DIRECT`, `POPOVER`, `DROPDOWN` and `INLINE` are not: nothing is pushed,\n * no zone changes, and there is nothing for a back button to pop — routing them through navigation\n * would mint zone entries for chrome that does not live in a zone.\n *\n * `INLINE` is the one worth explaining, because `NavigationTransition.INPLACE` exists and looks like\n * its home. It is not: element-level hosting uses NONE of what navigation provides — no zone, no\n * stack entry, no appearance, no lifecycle modifier — and routing it there is exactly why that\n * transition has never done what its docstring promises (it falls through to a zone REPLACE). The\n * host lives with the elements instead; see `InPlaceOperationContext`.\n */\nexport function actionPresentationNavigates(\n presentation: ResourceOperationActionPresentation,\n): boolean {\n return presentation === ResourceOperationActionPresentation.MODAL\n || presentation === ResourceOperationActionPresentation.PAGE;\n}\n\n/**\n * The navigation transition an action presentation is an alias FOR.\n *\n * `PAGE` maps to `undefined` deliberately, and it is the most important row: a page is not a\n * transition, it is \"let the ordinary chain answer\". Returning `PUSH` here would flatten every\n * app's zone transitions, viewport overrides and relationship defaults into one verb — the axis\n * would stop being an alias and start being an override, which is the failure mode this design\n * exists to avoid.\n *\n * `POPOVER` maps to `OVERLAY` — its DEGRADE target, not its normal path. A popover normally never\n * reaches navigation ({@link actionPresentationNavigates} is false for it), but a host that cannot\n * ANCHOR one — an action collapsed into an overflow menu or nested in a subgroup — has to present\n * the same input somewhere, and the honest substitute for \"a small panel next to the button\" is an\n * overlay. Leaving it `undefined` would send that action to the ordinary chain and produce a full\n * PAGE for the presentation that asked for the least chrome of all.\n *\n * `DIRECT` maps to `undefined` because it collects nothing: there is no input to relocate.\n */\nexport function resolveActionPresentationTransition(\n presentation: ResourceOperationActionPresentation,\n): NavigationTransition | undefined {\n switch (presentation) {\n case ResourceOperationActionPresentation.MODAL:\n case ResourceOperationActionPresentation.POPOVER:\n // A DROPDOWN degrades exactly like the popover it shares a host with: where nothing can anchor\n // the list, the same single field is collected by the overlay form.\n case ResourceOperationActionPresentation.DROPDOWN:\n return NavigationTransition.OVERLAY;\n case ResourceOperationActionPresentation.INLINE:\n // The DEGRADE target, like `POPOVER`'s above. An in-place host only exists inside a collection;\n // the same action rendered on a detail page or in a danger zone has no row to transform, and\n // an overlay is the closest thing to \"collect this without leaving the page\". It is NOT\n // `NavigationTransition.INPLACE` — see `actionPresentationNavigates` for why that would be\n // rebuilding the defect.\n return NavigationTransition.OVERLAY;\n default:\n return undefined;\n }\n}\n\nexport function resolveResourceOperationLayoutKind(\n operation: ResourceOperationSemanticsLike,\n): ResourceOperationLayoutKind {\n const effectiveOperation = resolveEffectiveCoreOperationFromOperation(operation);\n\n if (!effectiveOperation) {\n return 'action';\n }\n\n switch (effectiveOperation) {\n case CoreResourceOperation.CREATE:\n case CoreResourceOperation.CREATE_MANY:\n return 'create';\n case CoreResourceOperation.LIST:\n return 'list';\n case CoreResourceOperation.READ:\n case CoreResourceOperation.DELETE:\n case CoreResourceOperation.DELETE_MANY:\n return 'read';\n case CoreResourceOperation.UPDATE:\n case CoreResourceOperation.UPDATE_MANY:\n return 'update';\n case CoreResourceOperation.SEARCH:\n return 'search';\n default:\n return 'action';\n }\n}\n\nexport function pickPreferredOperationForCoreSemantic<T extends ResourceOperationSemanticsLike>(\n operations: readonly T[],\n coreOperation: CoreResourceOperation,\n options?: {\n requireAddressable?: boolean;\n allowBulk?: boolean;\n /** See {@link getOperationsForCoreSemantic}. */\n requireLiteralIdentifier?: boolean;\n },\n): T | undefined {\n const filtered = getOperationsForCoreSemantic(operations, coreOperation, options);\n\n if (filtered.length === 0) {\n return undefined;\n }\n\n const preferredVariantTypes = [\n ResourceOperationVariantType.API_CALL,\n ResourceOperationVariantType.API_CALL_WITH_CALLBACK,\n ];\n\n return [...filtered].sort((left, right) => {\n const leftLiteral = left.operationIdentifier === coreOperation ? 1 : 0;\n const rightLiteral = right.operationIdentifier === coreOperation ? 1 : 0;\n if (leftLiteral !== rightLiteral) {\n return rightLiteral - leftLiteral;\n }\n\n const leftDefault = left.isOperationDefault ? 1 : 0;\n const rightDefault = right.isOperationDefault ? 1 : 0;\n if (leftDefault !== rightDefault) {\n return rightDefault - leftDefault;\n }\n\n const leftNonBulk = left.isBulkOperation === true ? 0 : 1;\n const rightNonBulk = right.isBulkOperation === true ? 0 : 1;\n if (leftNonBulk !== rightNonBulk) {\n return rightNonBulk - leftNonBulk;\n }\n\n const leftPreferredVariant = preferredVariantTypes.includes(left.variantType as ResourceOperationVariantType) ? 1 : 0;\n const rightPreferredVariant = preferredVariantTypes.includes(right.variantType as ResourceOperationVariantType) ? 1 : 0;\n if (leftPreferredVariant !== rightPreferredVariant) {\n return rightPreferredVariant - leftPreferredVariant;\n }\n\n const leftAddressable = left.operationFrontendConfig?.surface === ResourceOperationFrontendSurface.ADDRESSABLE ? 1 : 0;\n const rightAddressable = right.operationFrontendConfig?.surface === ResourceOperationFrontendSurface.ADDRESSABLE ? 1 : 0;\n if (leftAddressable !== rightAddressable) {\n return rightAddressable - leftAddressable;\n }\n\n return String(left.variantKey ?? '').localeCompare(String(right.variantKey ?? ''));\n })[0];\n}\n\nexport function getOperationsForCoreSemantic<T extends ResourceOperationSemanticsLike>(\n operations: readonly T[],\n coreOperation: CoreResourceOperation,\n options?: {\n requireAddressable?: boolean;\n allowBulk?: boolean;\n /**\n * Accept ONLY the literal core verb, never an operation that borrows it through\n * `resourceOperationLike`.\n *\n * Semantic matching is what lets a custom verb stand in for a core one, and that is right almost\n * everywhere. It is wrong wherever the CALLER, not the operation, supplies the words: the list's\n * create call-to-action labels itself `tResourceOperation(resourceType, CREATE, 'title')` — the\n * LITERAL create's title — so a borrowed create is mislabelled by construction rather than by\n * accident. On `AUDIT_LOGS`, whose literal CREATE is `REPOSITORY_ONLY` and therefore absent from\n * the frontend registry, that produced a primary \"Create Audit Log\" button wired to\n * `exportAuditLogs`.\n */\n requireLiteralIdentifier?: boolean;\n },\n): T[] {\n return operations.filter((operation) => {\n if (!matchesResourceOperationSemantic(operation, coreOperation)) {\n return false;\n }\n\n if (options?.requireLiteralIdentifier && operation.operationIdentifier !== coreOperation) {\n return false;\n }\n\n if (options?.requireAddressable && operation.operationFrontendConfig?.surface !== ResourceOperationFrontendSurface.ADDRESSABLE) {\n return false;\n }\n\n if (options?.allowBulk !== true && operation.isBulkOperation) {\n return false;\n }\n\n return true;\n });\n}\n"]}
|
|
1
|
+
{"version":3,"file":"operation-semantics.frontend.utils.js","sourceRoot":"","sources":["../../../../../src/core/resources/operation-semantics.frontend.utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport { FieldSchemaType, getSchemaType, isFileSchema, isForeignKeyField, unwrapSchema } from '@wildo-ai/zod-decorators';\nimport {\n BULK_OPERATION_HOST_SUPPLIED_FIELDS,\n BULK_OPERATION_MATCH_FIELD,\n BULK_OPERATION_SELECTOR_FIELD,\n COLLECTION_OPERATIONS_WITHOUT_IDS,\n CoreResourceOperation,\n ResourceGeneratedOperationKind,\n ResourceOperationVariantType,\n ResourceOperationFrontendSurface,\n ResourceOperationRiskLevel,\n NavigationTransition,\n Resources_SharedUtils,\n} from '@wildo-ai/saas-models';\nimport {\n isCollectionScopedOperation,\n ResourceOperationActionPresentation,\n ResourceOperationActionScope,\n} from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\n\nexport interface ResourceOperationSemanticsLike {\n operationIdentifier: unknown;\n resourceOperationLike?: unknown;\n requestDto?: unknown;\n variantType?: unknown;\n isOperationDefault?: boolean;\n isBulkOperation?: boolean;\n variantKey?: unknown;\n /** Read only by the DROPDOWN rule: a pick that executes cannot also be a deliberate, confirmed act. */\n riskLevel?: unknown;\n /**\n * The subset of `ResourceOperationFrontendConfig` this module's decisions read.\n *\n * Deliberately a structural subset rather than the full config type: these helpers run against\n * operation objects arriving through several projections (the frontend registry, a thinned\n * navigation payload, a test fixture), and requiring the whole config would make them unusable on\n * exactly the surfaces that need them most.\n */\n operationFrontendConfig?: {\n surface?: ResourceOperationFrontendSurface;\n actionPresentation?: ResourceOperationActionPresentation;\n actionScope?: ResourceOperationActionScope;\n rowTargetRequestField?: string;\n };\n generatedOperation?: {\n kind?: unknown;\n fieldName?: unknown;\n };\n}\n\nexport const BULK_OPERATION_SELECTION_IDS_CONTEXT_KEY = 'bulkOperationSelectionIds';\n/**\n * The operation-context key carrying a CROSS-PAGE selection (\"select all N matching\") to whatever host\n * presents a bulk action's form — the sibling of {@link BULK_OPERATION_SELECTION_IDS_CONTEXT_KEY}.\n *\n * A form-bearing bulk action (one that asks for a value, like \"Change status\") is executed by the\n * form host, which adds the selection through {@link mergeBulkSelectionIntoRequestData}. That merge\n * read only the id key, so a cross-page selection never reached it and the request went out with no\n * selection but the form's own empty `_match` (#1461, #2035 run 2026-09-30).\n */\nexport const BULK_OPERATION_MATCH_SELECTION_CONTEXT_KEY = 'bulkOperationMatchSelection';\nexport const RESOURCE_OPERATION_EXECUTED_DISCRIMINATOR_CONTEXT_KEY = 'resourceOperationExecutedDiscriminator';\n\nexport type ResourceOperationLayoutKind =\n | 'create'\n | 'list'\n | 'read'\n | 'update'\n | 'search'\n | 'action';\n\nexport function isLiteralCoreResourceOperation(\n operationIdentifier: unknown,\n): operationIdentifier is CoreResourceOperation {\n return Object.values(CoreResourceOperation).includes(operationIdentifier as CoreResourceOperation);\n}\n\nexport function resolveEffectiveCoreOperation(\n operationIdentifier: unknown,\n resourceOperationLike?: unknown,\n): CoreResourceOperation | undefined {\n if (resourceOperationLike && Object.values(CoreResourceOperation).includes(resourceOperationLike as CoreResourceOperation)) {\n return resourceOperationLike as CoreResourceOperation;\n }\n\n if (Object.values(CoreResourceOperation).includes(operationIdentifier as CoreResourceOperation)) {\n return operationIdentifier as CoreResourceOperation;\n }\n\n return undefined;\n}\n\nexport function resolveEffectiveCoreOperationFromOperation(\n operation: ResourceOperationSemanticsLike,\n): CoreResourceOperation | undefined {\n return resolveEffectiveCoreOperation(\n operation.operationIdentifier,\n operation.resourceOperationLike,\n );\n}\n\nexport function matchesResourceOperationSemantic(\n operation: ResourceOperationSemanticsLike,\n coreOperation: CoreResourceOperation,\n): boolean {\n return resolveEffectiveCoreOperationFromOperation(operation) === coreOperation;\n}\n\n/**\n * The operation whose generated TITLE names a surface that shows `operationIdentifier` — the page header and\n * the overlay (dialog, sheet, tab) title alike, which must agree.\n *\n * The core EDIT surface is titled like the record's own page. UPDATE's title is generated as the name of an\n * ACTION, a button word (\"Update preferences\", \"Save changes\"), while READ's is generated as a HEADING naming\n * the surface (\"Preferences\"). An edit page headed by a verb names the button below it rather than the thing\n * being edited, and the form's own save button already says the verb. So when the resource has a READ, the\n * core UPDATE — including its polymorphic variants, which keep the `update` identifier — takes READ's title.\n *\n * Keyed on the literal identifier, NOT on the effective core semantics: a custom operation that BEHAVES like\n * an update (`claimDomain`, `reset_to_defaults`) is a named action, and its own title is the only word that\n * says which action the surface performs. A resource with no READ keeps UPDATE's title, the only word it has.\n */\nexport function resolveSurfaceTitleOperationIdentifier(\n operationIdentifier: unknown,\n resourceOperations: ReadonlyArray<{ operationIdentifier: unknown }> | undefined,\n): string {\n if (\n operationIdentifier === CoreResourceOperation.UPDATE\n && resourceOperations?.some((candidate) => candidate.operationIdentifier === CoreResourceOperation.READ)\n ) {\n return CoreResourceOperation.READ;\n }\n return String(operationIdentifier);\n}\n\nexport function isUpdateLikeCoreOperation(\n coreOperation: CoreResourceOperation | undefined,\n): boolean {\n return coreOperation === CoreResourceOperation.UPDATE\n || coreOperation === CoreResourceOperation.UPDATE_MANY;\n}\n\nexport function isSingleResourceUpdateLikeOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n return operation.isBulkOperation !== true\n && isUpdateLikeCoreOperation(resolveEffectiveCoreOperationFromOperation(operation));\n}\n\nexport function shouldEmitResourceRefreshAfterDirectOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n if (isGeneratedFileRegenerateOperation(operation)) {\n return true;\n }\n\n const effectiveOperation = resolveEffectiveCoreOperationFromOperation(operation);\n\n switch (effectiveOperation) {\n case CoreResourceOperation.CREATE:\n case CoreResourceOperation.CREATE_MANY:\n case CoreResourceOperation.UPDATE:\n case CoreResourceOperation.UPDATE_MANY:\n case CoreResourceOperation.DELETE:\n case CoreResourceOperation.DELETE_MANY:\n return true;\n default:\n return false;\n }\n}\n\nexport function readBulkOperationSelectionIds(\n additionalContext?: Record<string, unknown>,\n): string[] | undefined {\n const value = additionalContext?.[BULK_OPERATION_SELECTION_IDS_CONTEXT_KEY];\n\n if (!Array.isArray(value)) {\n return undefined;\n }\n\n const ids = value.filter((candidate): candidate is string => typeof candidate === 'string');\n return ids.length > 0 ? ids : undefined;\n}\n\n/** The cross-page selection an operation context carries, when \"select all N matching\" was chosen. */\nexport function readBulkOperationMatchSelection(\n additionalContext?: Record<string, unknown>,\n): { filters?: Record<string, unknown>; search?: string } | undefined {\n const value = additionalContext?.[BULK_OPERATION_MATCH_SELECTION_CONTEXT_KEY];\n if (!value || typeof value !== 'object' || Array.isArray(value)) {\n return undefined;\n }\n const candidate = value as { filters?: unknown; search?: unknown };\n return {\n ...(candidate.filters && typeof candidate.filters === 'object' && !Array.isArray(candidate.filters)\n ? { filters: candidate.filters as Record<string, unknown> }\n : {}),\n ...(typeof candidate.search === 'string' && candidate.search !== '' ? { search: candidate.search } : {}),\n };\n}\n\nexport function readResourceOperationExecutedDiscriminator(\n additionalContext?: Record<string, unknown>,\n): string | undefined {\n const value = additionalContext?.[RESOURCE_OPERATION_EXECUTED_DISCRIMINATOR_CONTEXT_KEY];\n return typeof value === 'string' && value.length > 0 ? value : undefined;\n}\n\n/**\n * Build the wire selector a bulk operation uses to name the rows it targets.\n *\n * The field name comes from {@link BULK_OPERATION_SELECTOR_FIELD} — the ONE named source both halves\n * of the contract read — because spelling it here is exactly how this broke. Every frontend bulk\n * surface emitted `ids`, which is not in the bulk request DTO\n * (`Resources_BulkOperationBaseSchema.extend(...)`), so the strict Zod parse stripped it and then\n * refused the request for the `_ids` it never received. It type-checked, it looked right, and the\n * generic bulk lane had never once worked from the UI.\n *\n * Every frontend producer of a bulk payload goes through this function, so there is one spelling to\n * get right rather than one per surface.\n */\nexport function buildBulkOperationSelectorPayload(ids: readonly string[]): Record<string, unknown> {\n return { [BULK_OPERATION_SELECTOR_FIELD]: [...ids] };\n}\n\n/**\n * The CROSS-PAGE selector payload: the query that produced the listing, not the rows it showed.\n *\n * Sibling of {@link buildBulkOperationSelectorPayload} and never sent beside it — the server refuses\n * a request naming both, because honouring one would make the other silently inert. The matched\n * count stays on the client: it is what the listing reported when the person chose, and the server\n * re-evaluates the query itself rather than trusting a number the client sent (#1461).\n */\nexport function buildBulkOperationMatchPayload(match: { filters?: Record<string, unknown>; search?: string }): Record<string, unknown> {\n const filters = match.filters && Object.keys(match.filters).length > 0 ? { filters: match.filters } : {};\n const search = match.search ? { search: match.search } : {};\n return { [BULK_OPERATION_MATCH_FIELD]: { ...filters, ...search } };\n}\n\n/**\n * The `resultSummary` an outcome event may carry: the operation's result when it is a PLAIN OBJECT,\n * and nothing otherwise.\n *\n * The event schema types it as a record, and every producer used to pass any non-null object —\n * which includes an array. A multi-row bulk update answers an array of rows, so its\n * RESOURCE_OPERATION_EXECUTED was refused by the event bus (\"Invalid payload\") and nobody heard that\n * the write succeeded: the listing kept its old values and the bulk bar kept the rows selected.\n * One definition, so the producers cannot disagree about it again.\n */\nexport function toOperationResultSummary(result: unknown): Record<string, unknown> | undefined {\n return typeof result === 'object' && result !== null && !Array.isArray(result)\n ? result as Record<string, unknown>\n : undefined;\n}\n\nexport function mergeBulkSelectionIntoRequestData(params: {\n operation: ResourceOperationSemanticsLike;\n requestData?: Record<string, unknown>;\n additionalContext?: Record<string, unknown>;\n}): Record<string, unknown> | undefined {\n if (params.operation.isBulkOperation !== true) {\n return params.requestData;\n }\n\n // The selector is the COLLECTION's to write, never the form's. Whatever the form's values carry\n // under a selector key is dropped first, so an empty `_match: {}` a form happened to hold can never\n // stand in for — or sit beside — the selection the person actually made.\n const formValues = params.requestData\n ? Object.fromEntries(Object.entries(params.requestData).filter(([key]) => !(BULK_OPERATION_HOST_SUPPLIED_FIELDS as readonly string[]).includes(key)))\n : undefined;\n\n const match = readBulkOperationMatchSelection(params.additionalContext);\n if (match) {\n return { ...(formValues ?? {}), ...buildBulkOperationMatchPayload(match) };\n }\n\n const ids = readBulkOperationSelectionIds(params.additionalContext);\n if (!ids || ids.length === 0) {\n return formValues;\n }\n\n return {\n ...(formValues ?? {}),\n ...buildBulkOperationSelectorPayload(ids),\n };\n}\n\nexport function isSemanticCustomResourceOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n return !isLiteralCoreResourceOperation(operation.operationIdentifier)\n && resolveEffectiveCoreOperationFromOperation(operation) !== undefined;\n}\n\nexport function isGeneratedFileRegenerateOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n return operation.generatedOperation?.kind === ResourceGeneratedOperationKind.GENERATED_FILE_REGENERATE\n || (\n typeof operation.operationIdentifier === 'string'\n && Resources_SharedUtils.parseGeneratedFileRegenerateOperationIdentifier(operation.operationIdentifier) !== undefined\n && resolveEffectiveCoreOperationFromOperation(operation) === CoreResourceOperation.UPDATE\n );\n}\n\n/**\n * Is this the file-export companion of a LIST/SEARCH operation?\n *\n * Identity comes from the generated-operation metadata, with the prefixed identifier as the fallback\n * for any surface that receives a thinned operation object — the same two-source shape\n * {@link isGeneratedFileRegenerateOperation} uses, and for the same reason: the frontend receives\n * operations through several projections and not all of them carry `generatedOperation`.\n */\nexport function isGeneratedCollectionExportOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n return operation.generatedOperation?.kind === ResourceGeneratedOperationKind.GENERATED_COLLECTION_EXPORT\n || (\n typeof operation.operationIdentifier === 'string'\n && Resources_SharedUtils.parseGeneratedCollectionExportOperationIdentifier(operation.operationIdentifier) !== undefined\n );\n}\n\n/**\n * A CUSTOM operation that borrows a COLLECTION verb, and therefore addresses no single row.\n *\n * `resourceOperationLike` answers a ROUTING question — which core verb's route shape and\n * collection-level authorization does this operation borrow. The frontend has been reading it as a\n * statement about what the operation MEANS to a user, and for the collection verbs those two\n * answers come apart: an operation borrowing one of `COLLECTION_OPERATIONS_WITHOUT_IDS` gets a\n * route with NO `:id` segment in it, so there is no row for a per-row button to act on. Clicking it\n * on the third row does exactly what clicking it on the first row does.\n *\n * `AuditLogs.EXPORT_AUDIT_LOGS` is the worked example and says so at its own declaration: it borrows\n * CREATE to get \"the collection POST route shape without … requiring a meaningless `auditLogId` path\n * value\". It then rendered a Download button on every row of the audit trail.\n *\n * DERIVED rather than declared, for the reason the generated collection-export exemption beside it\n * already gives: `actionScope: COLLECTION` is a per-app declaration, and asking every author to\n * stamp it puts the burden on them for something the framework already knows from the route it\n * built. Measured 2026-09-20 over `engine/` and `platform/`: five custom operations borrow a\n * collection verb — this export, both access-grant `REQUEST_ACCESS` verbs, SCIM `GENERATE_TOKEN` and\n * SSO `DISCOVER_ENDPOINTS` — and not one of the five is a per-row action. None had declared the\n * scope, so all five rendered per row.\n *\n * `rowTargetRequestField` is the declared ESCAPE, not an oversight: it is how an operation says \"I\n * address the clicked row through the request BODY rather than the URL\", which is precisely the\n * shape a per-row action borrowing a collection verb would take. One that declares it stays an item\n * action.\n */\nexport function isCollectionVerbBorrowingOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n // A LITERAL core verb is not borrowing anything — `CREATE` is the resource's create, and\n // `LIST`/`SEARCH`/`COUNT` are already handled as non-item operations below.\n if (isLiteralCoreResourceOperation(operation.operationIdentifier)) return false;\n if (operation.operationFrontendConfig?.rowTargetRequestField) return false;\n const effectiveCoreOperation = resolveEffectiveCoreOperationFromOperation(operation);\n return effectiveCoreOperation !== undefined\n && COLLECTION_OPERATIONS_WITHOUT_IDS.includes(effectiveCoreOperation);\n}\n\n/**\n * Does this operation act on the WHOLE COLLECTION rather than on one row?\n *\n * THE single answer to that question, because it is asked twice and the two askers do different\n * jobs: `useResourceOperationActions` decides which actions EXIST on a surface, and\n * `ResourceLayout_List` decides whether the collection-action surface is MOUNTED at all. An\n * exemption added to one alone produces actions rendered into a container that was never created —\n * which is exactly what happened on 2026-08-25, when three gate fixes in the hook changed nothing\n * visible because the mount check still said there were no collection-scoped operations here.\n *\n * That hazard used to be managed by a ⚠️ comment asking the next author to remember both sites.\n * Collapsing the predicate is the stronger form of the same instruction: there is now one site.\n *\n * Three ways to be collection-scoped, in descending order of how explicit they are:\n * 1. DECLARED — `actionScope: COLLECTION`, the per-app opt-in for a \"retry all\" / \"purge all\";\n * 2. DERIVED from the generated collection-export companion, which is collection-scoped by\n * construction and has no author to declare anything;\n * 3. DERIVED from a borrowed COLLECTION verb — see {@link isCollectionVerbBorrowingOperation}.\n */\nexport function isCollectionScopedResourceOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n return isCollectionScopedOperation(operation.operationFrontendConfig)\n || isGeneratedCollectionExportOperation(operation)\n || isCollectionVerbBorrowingOperation(operation);\n}\n\nexport const NON_ITEM_RESOURCE_OPERATIONS = new Set<CoreResourceOperation>([\n CoreResourceOperation.LIST,\n CoreResourceOperation.SEARCH,\n CoreResourceOperation.COUNT,\n CoreResourceOperation.CREATE,\n CoreResourceOperation.CREATE_MANY,\n CoreResourceOperation.READ,\n]);\n\n/**\n * Effective core semantics that are pure aggregate / collection READS — a data\n * provider the surface calls programmatically, never a per-item user action,\n * even when worn by a CUSTOM operation. A `get_state` op declaring\n * `resourceOperationLike: COUNT` (no `requestDto`) is the canonical example: it\n * fetches aggregate state for a panel to render, so as an action-bar button it is\n * a dead control that fetches and shows nothing.\n *\n * `READ` and `CREATE` are deliberately EXCLUDED: custom READ-like ops\n * (`open_portal`, `usage_stats`) and CREATE-like ops (a \"clone\" / \"duplicate\")\n * ARE real user actions and must keep their button.\n */\nexport const NON_ITEM_CUSTOM_CORE_SEMANTICS = new Set<CoreResourceOperation>([\n CoreResourceOperation.COUNT,\n CoreResourceOperation.LIST,\n CoreResourceOperation.SEARCH,\n]);\n\nexport const NAVIGABLE_RESOURCE_OPERATIONS = new Set<CoreResourceOperation>([\n CoreResourceOperation.CREATE,\n CoreResourceOperation.READ,\n CoreResourceOperation.UPDATE,\n]);\n\nexport function shouldTreatAsNonItemResourceOperation(\n operation: ResourceOperationSemanticsLike,\n): boolean {\n // The collection-export companion BORROWS `resourceOperationLike: LIST/SEARCH` so that routing,\n // collection-level authorization and URL building all treat it as a listing. That makes the\n // aggregate-read test below match it — and it is exactly wrong here: an export is an ACTION a user\n // clicks, not a data provider. Without this exemption the action is filtered out of every bar and\n // the feature has no surface at all, which is silent: nothing errors, the button simply never\n // renders.\n if (isGeneratedCollectionExportOperation(operation)) {\n return false;\n }\n\n if (\n isLiteralCoreResourceOperation(operation.operationIdentifier)\n && NON_ITEM_RESOURCE_OPERATIONS.has(operation.operationIdentifier)\n ) {\n return true;\n }\n\n // A CUSTOM operation whose effective core semantic is an aggregate/collection\n // read (COUNT/LIST/SEARCH) is a data provider, not a per-item action — keep it\n // out of the action bar so it does not render as a dead, do-nothing button.\n if (!isLiteralCoreResourceOperation(operation.operationIdentifier)) {\n const effectiveCoreOperation = resolveEffectiveCoreOperationFromOperation(operation);\n if (effectiveCoreOperation && NON_ITEM_CUSTOM_CORE_SEMANTICS.has(effectiveCoreOperation)) {\n return true;\n }\n }\n\n return false;\n}\n\n/**\n * The largest request-body field count the framework will present in an OVERLAY rather than a page.\n *\n * Six is a judgement, not a measurement, and it is written down here — in ONE place, named — so it\n * can be argued with instead of rediscovered. It is the point at which the industry guidance stops\n * saying \"keep the user in context\" and starts saying \"give the task the room a page has\": Carbon\n * routes complex data entry to a full page, Filament's `->form()` modal is described for collecting\n * *extra information*, not for authoring a record.\n *\n * An author who disagrees for a specific operation does not tune this number — they declare\n * `actionPresentation` and the derivation is not consulted at all. That is the escape hatch, and it\n * is why a single global constant is honest here.\n */\nexport const ACTION_MODAL_FIELD_CEILING = 6;\n\n/**\n * The largest request-body field count the framework will present in an ANCHORED PANEL rather than\n * an overlay.\n *\n * Two, and the reasoning is the one this axis's `POPOVER` member already states: the anchored panel\n * is the small-input idiom (\"snooze until…\", \"reject with a reason…\"), and it earns its\n * place by keeping the row the user is acting on visible. A third control starts wanting the room a\n * dialog has, and the panel stops being cheaper than one.\n *\n * Pairs with {@link ACTION_MODAL_FIELD_CEILING} as one ordered ladder — 1–2 anchored, 3–6 overlay,\n * beyond that a page — so the two numbers are argued with together instead of one of them silently\n * owning every case.\n */\nexport const ACTION_ANCHORED_FIELD_CEILING = 2;\n\n/**\n * Can the framework honestly present this request body inside an overlay?\n *\n * Three refusals, each for a different reason rather than by symmetry:\n * - **not an object schema** — nothing can be counted, so nothing can be promised;\n * - **a file field** — upload chrome (drag target, crop, progress, retry) needs room an overlay\n * does not have, and a half-visible upload is worse than a page;\n * - **a nested object / array-of-objects** — a nested write is a form inside a form, which is the\n * shape a page exists for.\n *\n * Anything else is judged on size alone. Note this reads the schema STRUCTURALLY and never a field\n * count carried alongside it: the operation object reaching the frontend is a projection, and a\n * count computed elsewhere would be a second source able to disagree with the schema it describes.\n */\nfunction requestBodyFitsAnOverlay(requestDto: unknown, suppliedKeys: ReadonlySet<string>): boolean {\n if (!(requestDto instanceof z.ZodObject)) {\n return false;\n }\n\n return countFieldsPresentableWithoutAPage(requestDto, ACTION_MODAL_FIELD_CEILING, suppliedKeys) !== undefined;\n}\n\n/**\n * Is this request body small and simple enough for an ANCHORED PANEL?\n *\n * The SHAPE test is identical to the overlay's — a file, a nested object or a repeating sub-form\n * belongs on a page whichever chrome is being considered — so only the ceiling differs. Sharing\n * `countFieldsPresentableWithoutAPage` is what keeps the two answers from disagreeing about what\n * \"simple\" means: two copies of that list would drift the first time a field kind is added.\n */\nfunction requestBodyFitsAnAnchoredPanel(requestDto: unknown, suppliedKeys: ReadonlySet<string>): boolean {\n return countFieldsPresentableWithoutAPage(requestDto, ACTION_ANCHORED_FIELD_CEILING, suppliedKeys) !== undefined;\n}\n\n/**\n * The request keys a BULK action's host fills itself, which are therefore not inputs a person fills.\n *\n * A bulk twin's request is the single-row request plus `_ids` — the selection — and the form hides\n * that key because the collection supplies it. Counting it anyway made every bulk action look one\n * field larger than it is: a two-field bulk action counted three and fell from the anchored panel\n * to a dialog, while the SAME action on one row got the panel. The ladder has to count what the\n * person will actually see.\n *\n * Named from `BULK_OPERATION_HOST_SUPPLIED_FIELDS` — both selectors, `_ids` and the cross-page\n * `_match` — the one list the form's omission and the execution merge also read, so the keys this\n * skips and the keys the request builder writes cannot drift apart.\n */\nfunction resolveHostSuppliedRequestKeys(operation: ResourceOperationSemanticsLike): ReadonlySet<string> {\n return operation.isBulkOperation === true ? new Set<string>(BULK_OPERATION_HOST_SUPPLIED_FIELDS) : new Set();\n}\n\n/**\n * The field count of a request body every one of whose fields can be drawn without a page, or\n * `undefined` when the body is empty, over `ceiling`, unintrospectable, or holds a field that\n * cannot.\n *\n * Reads the schema STRUCTURALLY and never a field count carried alongside it: the operation object\n * reaching the frontend is a projection, and a count computed elsewhere would be a second source\n * able to disagree with the schema it describes.\n */\nfunction countFieldsPresentableWithoutAPage(\n requestDto: unknown,\n ceiling: number,\n suppliedKeys: ReadonlySet<string>,\n): number | undefined {\n if (!(requestDto instanceof z.ZodObject)) {\n return undefined;\n }\n\n const shape = requestDto.shape as Record<string, z.ZodTypeAny>;\n // Keys the HOST supplies are not inputs anyone fills — see `resolveHostSuppliedRequestKeys`.\n const fieldNames = Object.keys(shape).filter((fieldName) => !suppliedKeys.has(fieldName));\n\n if (fieldNames.length === 0 || fieldNames.length > ceiling) {\n return undefined;\n }\n\n const everyFieldFits = fieldNames.every((fieldName) => {\n const unwrapped = unwrapSchema(shape[fieldName]!);\n\n if (isFileSchema(unwrapped)) {\n return false;\n }\n\n if (unwrapped instanceof z.ZodObject) {\n return false;\n }\n\n if (unwrapped instanceof z.ZodArray) {\n // An array of scalars (a list of ids, a set of tags) is one control and fits fine. An array of\n // OBJECTS is a repeating sub-form, which does not.\n return !(unwrapSchema(unwrapped.element as z.ZodTypeAny) instanceof z.ZodObject);\n }\n\n return true;\n });\n\n return everyFieldFits ? fieldNames.length : undefined;\n}\n\n/**\n * Does this operation declare a request body with NO fields — an explicit `z.object({})`?\n *\n * Such a zero-input operation has no form to collect, so it executes rather than opening one.\n * Mirrors the backend's `hasMeaningfulExplicitRequestDto` (inverted).\n */\nexport function hasEmptyResourceOperationRequestBody(requestDto: unknown): boolean {\n return requestDto instanceof z.ZodObject && Object.keys(requestDto.shape).length === 0;\n}\n\n/**\n * Does this operation collect NOTHING from a person? No `requestDto`, or one whose every field the\n * host supplies itself.\n *\n * A bulk twin's request is its row variant's body plus the `_ids` selector the collection fills. A\n * bulk action whose row variant takes no input therefore has a body of exactly `{ _ids }` — not\n * empty, and not something anyone types. Checking raw emptiness sent Wonder Todos' bulk \"Unassign\"\n * to a dialog holding an empty form and a Save button, where the same action on one row ran on\n * click. The action ladder and the operation host both ask this, so an action cannot run directly\n * from one surface and open an empty form on another.\n */\nexport function operationCollectsNoCallerInput(operation: ResourceOperationSemanticsLike): boolean {\n if (!operation.requestDto) {\n return true;\n }\n if (!(operation.requestDto instanceof z.ZodObject)) {\n return false;\n }\n const suppliedKeys = resolveHostSuppliedRequestKeys(operation);\n return Object.keys(operation.requestDto.shape).every((fieldName) => suppliedKeys.has(fieldName));\n}\n\n/**\n * Does this risk level ask for a confirmation before the operation runs?\n *\n * HIGH and CRITICAL do (a plain confirm, and a typed one); LOW and MEDIUM execute on click. The one\n * definition the action ladder's confirm dialog and the DROPDOWN rule both read, so \"risky enough to\n * confirm\" and \"too risky to execute on a pick\" cannot come to mean two different sets.\n */\nexport function isRiskyResourceOperation(riskLevel: unknown): boolean {\n return riskLevel === ResourceOperationRiskLevel.HIGH || riskLevel === ResourceOperationRiskLevel.CRITICAL;\n}\n\n/**\n * The kind of domain a DROPDOWN lists — the two a person can pick from without typing a value.\n *\n * Two members because the lists are genuinely different things: an enum's values are CLOSED and\n * known up front, so they are listed whole; a reference's candidates are records on the server, so\n * they are SEARCHED as you type and scoped like the form's picker. A boolean is deliberately absent —\n * a two-item menu for yes/no is a worse control than the toggle it would replace.\n */\nexport enum ResourceOperationChoiceDomain {\n /** A closed enum — every value listed, labelled as the form labels it. */\n ENUM = 'enum',\n /** A foreign key — the referenced records, searched server-side. */\n REFERENCE = 'reference',\n}\n\n/** The single field a DROPDOWN presents, and which kind of list it needs. */\nexport interface ResourceOperationDropdownChoice {\n /** The request field the pick is written to. */\n fieldName: string;\n /** That field's schema as the request DTO declares it (decorators intact). */\n fieldSchema: z.ZodTypeAny;\n domain: ResourceOperationChoiceDomain;\n}\n\n/**\n * The one choice field this operation's input consists of, or `undefined` when its input is\n * anything else.\n *\n * Qualifies only when, after the keys the host supplies itself (a bulk twin's `_ids`), EXACTLY ONE\n * field remains and it is a single enum or a single foreign key. An array is refused: picking one\n * item of a multi-pick and executing is not what the field asks for.\n *\n * Reads the schema structurally, like every other rule in this module, so the answer cannot\n * disagree with the form the same operation would otherwise render.\n */\nexport function resolveResourceOperationDropdownChoice(\n operation: ResourceOperationSemanticsLike,\n): ResourceOperationDropdownChoice | undefined {\n const requestDto = operation.requestDto;\n if (!(requestDto instanceof z.ZodObject)) {\n return undefined;\n }\n\n const suppliedKeys = resolveHostSuppliedRequestKeys(operation);\n const shape = requestDto.shape as Record<string, z.ZodTypeAny>;\n const fieldNames = Object.keys(shape).filter((fieldName) => !suppliedKeys.has(fieldName));\n if (fieldNames.length !== 1) {\n return undefined;\n }\n\n const fieldName = fieldNames[0]!;\n const fieldSchema = shape[fieldName]!;\n if (unwrapSchema(fieldSchema) instanceof z.ZodArray) {\n return undefined;\n }\n if (isForeignKeyField(fieldSchema)) {\n return { fieldName, fieldSchema, domain: ResourceOperationChoiceDomain.REFERENCE };\n }\n if (getSchemaType(fieldSchema) === FieldSchemaType.ENUM) {\n return { fieldName, fieldSchema, domain: ResourceOperationChoiceDomain.ENUM };\n }\n return undefined;\n}\n\n/**\n * Can this operation honestly present as a DROPDOWN — one choice field, one row, and no confirmation\n * owed?\n *\n * All three are correctness constraints, not taste. Without a single choice field there is no list to\n * show. A pick executes immediately, so an operation whose risk level asks for a confirmation would\n * lose it. And a BULK twin writes every selected row: one stray pick in a menu would rewrite them all\n * with no second step, which is the one place \"the pick is the submission\" is the wrong promise. Each\n * of those keeps the anchored FORM, which has an explicit Submit.\n */\nexport function operationCanPresentAsDropdown(operation: ResourceOperationSemanticsLike): boolean {\n return operation.isBulkOperation !== true\n && !isRiskyResourceOperation(operation.riskLevel)\n && resolveResourceOperationDropdownChoice(operation) !== undefined;\n}\n\n/**\n * HOW does this action collect its input?\n *\n * The single answer for every action surface. An explicitly authored\n * {@link ResourceOperationActionPresentation} is returned as authored — the author has answered the\n * question and the framework does not second-guess their TASTE — with ONE correctness exception: a\n * DROPDOWN the operation cannot honestly be resolves to POPOVER (see below). Everything else is the\n * DERIVATION for the (overwhelmingly common) case where nothing was authored.\n *\n * The derivation is ordered by how strong the evidence is, not by convenience:\n *\n * 1. **`ADDRESSABLE` ⇒ PAGE.** Declaring an operation deep-linkable IS declaring it a destination.\n * Nothing derived may take that away.\n * 2. **A literal core CREATE / READ / UPDATE ⇒ PAGE.** These are the framework's own page surfaces\n * and every app's navigation config is written against them; deriving an overlay here would\n * silently restyle every existing application.\n * 3. **Already-established in-place shapes ⇒ DIRECT.** A row-targeted action (its target rides the\n * body), a zero-input collection action, and a generated-file regenerate all executed on click\n * before this axis existed. They are stated here so the axis DESCRIBES the framework's behaviour\n * rather than sitting beside it — an axis that cannot express what the framework already does is\n * a second mechanism, not a vocabulary.\n * 4. **No caller input ⇒ DIRECT.** No `requestDto` at all, an explicit `z.object({})`, or a bulk\n * body holding only the selector the host fills ({@link operationCollectsNoCallerInput}).\n * 5. **One choice from an enum or a reference, and no confirmation owed ⇒ DROPDOWN.** The pick is\n * the submission, so the list of values IS the whole input ({@link operationCanPresentAsDropdown}).\n * 6. **One or two simple inputs ⇒ POPOVER.** An anchored panel beside the button that asked for\n * them, so the row being acted on stays visible.\n * 7. **Input that fits an overlay ⇒ MODAL.**\n * 8. **Everything else ⇒ PAGE.** Files, nested writes, large field sets — and the honest fallback\n * for a `requestDto` this code cannot introspect (a thinned projection), because refusing to\n * guess returns the behaviour the operation had before.\n *\n * ## An authored DROPDOWN that cannot be one resolves to POPOVER\n *\n * The only authored answer this function overrides, and for the same reason the click handler\n * refuses a non-navigating presentation on a zero-input update-like action: honouring it would be\n * wrong, not merely ugly. A DROPDOWN over two fields has no list to show, and one over a CRITICAL\n * operation would execute without the typed confirmation every other surface demands. POPOVER is the\n * nearest honest answer — the same anchored panel, holding the form with its Submit.\n *\n * ## Why step 6 is DERIVED, when it used to be authored-only\n *\n * This function returned `MODAL` for every small input and left `POPOVER` to authors, on the\n * reasoning that an anchored panel is a claim about the surrounding context — that the trigger is\n * anchored and visible — which the operation alone cannot support.\n *\n * The reasoning was sound and the conclusion did not follow, because nothing was ever asking this\n * function to be right about the host. **The bar already decides whether it can anchor**, and it\n * already degrades when it cannot: an item collapsed into the overflow menu or nested in a subgroup\n * takes its `onClick`, which `resolveActionPresentationTransition` maps to an OVERLAY — the same\n * chrome `MODAL` would have produced. So the cost of deriving the panel is zero where it cannot be\n * drawn, and the cost of NOT deriving it was that every small action in every application —\n * \"snooze until…\", \"reject with a reason…\" — covered the list it was acting on with a dialog, and the\n * only way out was to author the axis per operation. (The one-CHOICE actions — \"change status to…\",\n * \"assign to…\" — have since moved one step earlier, to DROPDOWN.)\n *\n * `INLINE` stays authored-only, and the asymmetry is the point: its claim is about the ELEMENT (the\n * thing being acted on is a row that can transform in place), and its degrade target is an overlay\n * over the list it was meant to keep visible — so guessing it wrong costs the user the very thing\n * the presentation exists for. A popover guessed wrong costs nothing.\n */\nexport function resolveResourceOperationActionPresentation(\n operation: ResourceOperationSemanticsLike,\n): ResourceOperationActionPresentation {\n const config = operation.operationFrontendConfig;\n\n if (config?.actionPresentation) {\n if (\n config.actionPresentation === ResourceOperationActionPresentation.DROPDOWN\n && !operationCanPresentAsDropdown(operation)\n ) {\n return ResourceOperationActionPresentation.POPOVER;\n }\n return config.actionPresentation;\n }\n\n if (config?.surface === ResourceOperationFrontendSurface.ADDRESSABLE) {\n return ResourceOperationActionPresentation.PAGE;\n }\n\n if (\n isLiteralCoreResourceOperation(operation.operationIdentifier)\n && NAVIGABLE_RESOURCE_OPERATIONS.has(operation.operationIdentifier)\n ) {\n return ResourceOperationActionPresentation.PAGE;\n }\n\n if (isGeneratedFileRegenerateOperation(operation)) {\n return ResourceOperationActionPresentation.DIRECT;\n }\n\n // A ZERO-INPUT single-resource UPDATE-like custom action keeps its host, even though it collects\n // nothing and would otherwise be DIRECT by the rule below.\n //\n // Its mutation must run under an explicit RMM-vs-weaker-guarantee contract, and only a host\n // provides one — `useResourceOperationSurface.executeCurrentOperation()` throws\n // `MissingRMMRuntimeError` rather than writing without it. Executing such an action straight from\n // the action bar would take the plain `doOperation` path and lose that guarantee SILENTLY, which\n // is why the click handler also refuses to honour an AUTHORED non-navigating presentation here:\n // this is a correctness constraint, not a styling default.\n if (!operation.requestDto && isSingleResourceUpdateLikeOperation(operation)) {\n return ResourceOperationActionPresentation.PAGE;\n }\n\n if (config?.rowTargetRequestField) {\n return ResourceOperationActionPresentation.DIRECT;\n }\n\n if (\n config?.actionScope === ResourceOperationActionScope.COLLECTION\n && hasEmptyResourceOperationRequestBody(operation.requestDto)\n ) {\n return ResourceOperationActionPresentation.DIRECT;\n }\n\n if (operationCollectsNoCallerInput(operation)) {\n return ResourceOperationActionPresentation.DIRECT;\n }\n\n if (operationCanPresentAsDropdown(operation)) {\n return ResourceOperationActionPresentation.DROPDOWN;\n }\n\n const suppliedKeys = resolveHostSuppliedRequestKeys(operation);\n\n if (requestBodyFitsAnAnchoredPanel(operation.requestDto, suppliedKeys)) {\n return ResourceOperationActionPresentation.POPOVER;\n }\n\n return requestBodyFitsAnOverlay(operation.requestDto, suppliedKeys)\n ? ResourceOperationActionPresentation.MODAL\n : ResourceOperationActionPresentation.PAGE;\n}\n\n/**\n * Does this presentation reach the NAVIGATION layer, or does the action layer own it end to end?\n *\n * `MODAL` and `PAGE` are destinations. `DIRECT`, `POPOVER`, `DROPDOWN` and `INLINE` are not: nothing is pushed,\n * no zone changes, and there is nothing for a back button to pop — routing them through navigation\n * would mint zone entries for chrome that does not live in a zone.\n *\n * `INLINE` is the one worth explaining, because `NavigationTransition.INPLACE` exists and looks like\n * its home. It is not: element-level hosting uses NONE of what navigation provides — no zone, no\n * stack entry, no appearance, no lifecycle modifier — and routing it there is exactly why that\n * transition has never done what its docstring promises (it falls through to a zone REPLACE). The\n * host lives with the elements instead; see `InPlaceOperationContext`.\n */\nexport function actionPresentationNavigates(\n presentation: ResourceOperationActionPresentation,\n): boolean {\n return presentation === ResourceOperationActionPresentation.MODAL\n || presentation === ResourceOperationActionPresentation.PAGE;\n}\n\n/**\n * The navigation transition an action presentation is an alias FOR.\n *\n * `PAGE` maps to `undefined` deliberately, and it is the most important row: a page is not a\n * transition, it is \"let the ordinary chain answer\". Returning `PUSH` here would flatten every\n * app's zone transitions, viewport overrides and relationship defaults into one verb — the axis\n * would stop being an alias and start being an override, which is the failure mode this design\n * exists to avoid.\n *\n * `POPOVER` maps to `OVERLAY` — its DEGRADE target, not its normal path. A popover normally never\n * reaches navigation ({@link actionPresentationNavigates} is false for it), but a host that cannot\n * ANCHOR one — an action collapsed into an overflow menu or nested in a subgroup — has to present\n * the same input somewhere, and the honest substitute for \"a small panel next to the button\" is an\n * overlay. Leaving it `undefined` would send that action to the ordinary chain and produce a full\n * PAGE for the presentation that asked for the least chrome of all.\n *\n * `DIRECT` maps to `undefined` because it collects nothing: there is no input to relocate.\n */\nexport function resolveActionPresentationTransition(\n presentation: ResourceOperationActionPresentation,\n): NavigationTransition | undefined {\n switch (presentation) {\n case ResourceOperationActionPresentation.MODAL:\n case ResourceOperationActionPresentation.POPOVER:\n // A DROPDOWN degrades exactly like the popover it shares a host with: where nothing can anchor\n // the list, the same single field is collected by the overlay form.\n case ResourceOperationActionPresentation.DROPDOWN:\n return NavigationTransition.OVERLAY;\n case ResourceOperationActionPresentation.INLINE:\n // The DEGRADE target, like `POPOVER`'s above. An in-place host only exists inside a collection;\n // the same action rendered on a detail page or in a danger zone has no row to transform, and\n // an overlay is the closest thing to \"collect this without leaving the page\". It is NOT\n // `NavigationTransition.INPLACE` — see `actionPresentationNavigates` for why that would be\n // rebuilding the defect.\n return NavigationTransition.OVERLAY;\n default:\n return undefined;\n }\n}\n\nexport function resolveResourceOperationLayoutKind(\n operation: ResourceOperationSemanticsLike,\n): ResourceOperationLayoutKind {\n const effectiveOperation = resolveEffectiveCoreOperationFromOperation(operation);\n\n if (!effectiveOperation) {\n return 'action';\n }\n\n switch (effectiveOperation) {\n case CoreResourceOperation.CREATE:\n case CoreResourceOperation.CREATE_MANY:\n return 'create';\n case CoreResourceOperation.LIST:\n return 'list';\n case CoreResourceOperation.READ:\n case CoreResourceOperation.DELETE:\n case CoreResourceOperation.DELETE_MANY:\n return 'read';\n case CoreResourceOperation.UPDATE:\n case CoreResourceOperation.UPDATE_MANY:\n return 'update';\n case CoreResourceOperation.SEARCH:\n return 'search';\n default:\n return 'action';\n }\n}\n\nexport function pickPreferredOperationForCoreSemantic<T extends ResourceOperationSemanticsLike>(\n operations: readonly T[],\n coreOperation: CoreResourceOperation,\n options?: {\n requireAddressable?: boolean;\n allowBulk?: boolean;\n /** See {@link getOperationsForCoreSemantic}. */\n requireLiteralIdentifier?: boolean;\n },\n): T | undefined {\n const filtered = getOperationsForCoreSemantic(operations, coreOperation, options);\n\n if (filtered.length === 0) {\n return undefined;\n }\n\n const preferredVariantTypes = [\n ResourceOperationVariantType.API_CALL,\n ResourceOperationVariantType.API_CALL_WITH_CALLBACK,\n ];\n\n return [...filtered].sort((left, right) => {\n const leftLiteral = left.operationIdentifier === coreOperation ? 1 : 0;\n const rightLiteral = right.operationIdentifier === coreOperation ? 1 : 0;\n if (leftLiteral !== rightLiteral) {\n return rightLiteral - leftLiteral;\n }\n\n const leftDefault = left.isOperationDefault ? 1 : 0;\n const rightDefault = right.isOperationDefault ? 1 : 0;\n if (leftDefault !== rightDefault) {\n return rightDefault - leftDefault;\n }\n\n const leftNonBulk = left.isBulkOperation === true ? 0 : 1;\n const rightNonBulk = right.isBulkOperation === true ? 0 : 1;\n if (leftNonBulk !== rightNonBulk) {\n return rightNonBulk - leftNonBulk;\n }\n\n const leftPreferredVariant = preferredVariantTypes.includes(left.variantType as ResourceOperationVariantType) ? 1 : 0;\n const rightPreferredVariant = preferredVariantTypes.includes(right.variantType as ResourceOperationVariantType) ? 1 : 0;\n if (leftPreferredVariant !== rightPreferredVariant) {\n return rightPreferredVariant - leftPreferredVariant;\n }\n\n const leftAddressable = left.operationFrontendConfig?.surface === ResourceOperationFrontendSurface.ADDRESSABLE ? 1 : 0;\n const rightAddressable = right.operationFrontendConfig?.surface === ResourceOperationFrontendSurface.ADDRESSABLE ? 1 : 0;\n if (leftAddressable !== rightAddressable) {\n return rightAddressable - leftAddressable;\n }\n\n return String(left.variantKey ?? '').localeCompare(String(right.variantKey ?? ''));\n })[0];\n}\n\nexport function getOperationsForCoreSemantic<T extends ResourceOperationSemanticsLike>(\n operations: readonly T[],\n coreOperation: CoreResourceOperation,\n options?: {\n requireAddressable?: boolean;\n allowBulk?: boolean;\n /**\n * Accept ONLY the literal core verb, never an operation that borrows it through\n * `resourceOperationLike`.\n *\n * Semantic matching is what lets a custom verb stand in for a core one, and that is right almost\n * everywhere. It is wrong wherever the CALLER, not the operation, supplies the words: the list's\n * create call-to-action labels itself `tResourceOperation(resourceType, CREATE, 'title')` — the\n * LITERAL create's title — so a borrowed create is mislabelled by construction rather than by\n * accident. On `AUDIT_LOGS`, whose literal CREATE is `REPOSITORY_ONLY` and therefore absent from\n * the frontend registry, that produced a primary \"Create Audit Log\" button wired to\n * `exportAuditLogs`.\n */\n requireLiteralIdentifier?: boolean;\n },\n): T[] {\n return operations.filter((operation) => {\n if (!matchesResourceOperationSemantic(operation, coreOperation)) {\n return false;\n }\n\n if (options?.requireLiteralIdentifier && operation.operationIdentifier !== coreOperation) {\n return false;\n }\n\n if (options?.requireAddressable && operation.operationFrontendConfig?.surface !== ResourceOperationFrontendSurface.ADDRESSABLE) {\n return false;\n }\n\n if (options?.allowBulk !== true && operation.isBulkOperation) {\n return false;\n }\n\n return true;\n });\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relationship-quick-create.frontend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"relationship-quick-create.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/core/resources/relationship-quick-create.frontend.utils.ts"],"names":[],"mappings":"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"}
|