@wildo-ai/saas-frontend-lib 1.1.2 → 1.1.3
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/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/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 +15 -2
- 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_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 +7 -2
- 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.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_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/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_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_Register.d.ts.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_Register.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/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-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/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 +8 -5
- 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 +6 -2
- 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.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/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/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/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 +36 -0
- package/dist/esm/components/feedback/features/feature-unavailable-prompt.d.ts.map +1 -1
- package/dist/esm/components/feedback/features/feature-unavailable-prompt.js +29 -0
- package/dist/esm/components/feedback/features/feature-unavailable-prompt.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 +11 -5
- package/dist/esm/components/feedback/notification-center.d.ts.map +1 -1
- package/dist/esm/components/feedback/notification-center.js +2 -3
- 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 +41 -0
- package/dist/esm/components/files/Files_UploadGrantDrop.d.ts.map +1 -0
- package/dist/esm/components/files/Files_UploadGrantDrop.js +207 -0
- package/dist/esm/components/files/Files_UploadGrantDrop.js.map +1 -0
- package/dist/esm/components/files/Files_UploadGrantDrop.labels.d.ts +3 -0
- package/dist/esm/components/files/Files_UploadGrantDrop.labels.d.ts.map +1 -0
- package/dist/esm/components/files/Files_UploadGrantDrop.labels.js +36 -0
- package/dist/esm/components/files/Files_UploadGrantDrop.labels.js.map +1 -0
- package/dist/esm/components/files/pages/FilesPage_UploadGrant.d.ts +8 -0
- package/dist/esm/components/files/pages/FilesPage_UploadGrant.d.ts.map +1 -0
- package/dist/esm/components/files/pages/FilesPage_UploadGrant.js +14 -0
- package/dist/esm/components/files/pages/FilesPage_UploadGrant.js.map +1 -0
- 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.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/approval.js +14 -2
- 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 +2 -0
- package/dist/esm/components/flows-actors/approval.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/artifact-browser.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/artifact-browser.js.map +1 -1
- package/dist/esm/components/flows-actors/artifact-browser.labels.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/artifact-browser.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/execution-plan.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/execution-plan.js.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 +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 +16 -9
- 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 +9 -2
- 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 +8 -6
- 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 +37 -3
- package/dist/esm/components/form/automated/ResourceAutomatedForm.js.map +1 -1
- package/dist/esm/components/form/automated/ResourceFormActionsContext.d.ts.map +1 -1
- package/dist/esm/components/form/automated/ResourceFormActionsContext.js.map +1 -1
- package/dist/esm/components/form/automated/automated-form-submit.utils.d.ts.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 +12 -0
- package/dist/esm/components/form/automated/autosave-derivation.frontend.utils.d.ts.map +1 -0
- package/dist/esm/components/form/automated/autosave-derivation.frontend.utils.js +26 -0
- package/dist/esm/components/form/automated/autosave-derivation.frontend.utils.js.map +1 -0
- 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/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-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/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 +4 -2
- 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 +4 -2
- 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 +15 -5
- 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 +21 -18
- 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 +90 -2
- 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 +15 -0
- 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 +4 -2
- package/dist/esm/components/form/fields/form-field-number.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-number.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-number.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-phone.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-phone.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-phone.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-phone.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-bigdecimal.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-bigdecimal.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-bigdecimal.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-bigdecimal.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-date.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-date.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-date.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-date.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-datetime.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-datetime.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-datetime.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-datetime.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-money.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-money.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-money.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-money.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-number.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-number.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-number.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-number.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-time.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-time.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-time.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-time.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-string.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-string.js +7 -2
- 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-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/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/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/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 +6 -0
- package/dist/esm/components/navigation/NavigationItemBadge.d.ts.map +1 -1
- package/dist/esm/components/navigation/NavigationItemBadge.js +2 -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/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 +5 -2
- package/dist/esm/components/navigation/app-level/useNotificationCenterBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useNotificationCenterBehavior.js +18 -41
- 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 +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 +13 -3
- 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 +23 -5
- package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.js +81 -13
- 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/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/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 +9 -0
- 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 +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/ResourceOperationActionPopover.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceOperationActionPopover.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-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/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_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 +64 -0
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts.map +1 -0
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.js +184 -0
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.js.map +1 -0
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.d.ts +3 -0
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.d.ts.map +1 -0
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.js +26 -0
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.js.map +1 -0
- 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 +3 -0
- 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/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/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 +11 -7
- 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/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 +40 -18
- package/dist/esm/core/app-shell/app-shell.schemas.d.ts.map +1 -1
- package/dist/esm/core/app-shell/app-shell.schemas.js +0 -5
- 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 +31 -11
- 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 +34 -25
- package/dist/esm/core/automated-layout/automated-layout.frontend.utils.js.map +1 -1
- package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.d.ts +30 -4
- 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 +232 -17
- package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.js.map +1 -1
- package/dist/esm/core/billing/BillingContext.d.ts +36 -0
- package/dist/esm/core/billing/BillingContext.d.ts.map +1 -1
- package/dist/esm/core/billing/BillingContext.js +1 -0
- 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/useSafeBillingActionExecutor.d.ts.map +1 -1
- package/dist/esm/core/billing/useSafeBillingActionExecutor.js.map +1 -1
- package/dist/esm/core/branding/useBrandIdentity.d.ts +17 -0
- package/dist/esm/core/branding/useBrandIdentity.d.ts.map +1 -1
- package/dist/esm/core/branding/useBrandIdentity.js +17 -0
- 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 +1 -0
- 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 +4 -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 +8 -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 +128 -0
- package/dist/esm/core/components-registry/provider-component-registry.frontend.service.d.ts.map +1 -0
- package/dist/esm/core/components-registry/provider-component-registry.frontend.service.js +183 -0
- package/dist/esm/core/components-registry/provider-component-registry.frontend.service.js.map +1 -0
- package/dist/esm/core/components-registry/register-framework-layouts.d.ts.map +1 -1
- package/dist/esm/core/components-registry/register-framework-layouts.js +2 -0
- package/dist/esm/core/components-registry/register-framework-layouts.js.map +1 -1
- package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.d.ts +68 -0
- package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.d.ts.map +1 -0
- package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.js +98 -0
- package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.js.map +1 -0
- package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts +15 -5
- 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 +44 -7
- 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 +44 -7
- 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 +6 -6
- 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 +4 -4
- 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 +20 -0
- package/dist/esm/core/config/engine-settings-destinations.d.ts.map +1 -1
- package/dist/esm/core/config/engine-settings-destinations.js +90 -5
- 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 +5 -3
- package/dist/esm/core/config/flows-actors-view.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/flows-actors-view.schemas.js +2 -2
- 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 +51 -11
- package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/launcher-items.frontend.schemas.js +21 -7
- 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.frontend.schemas.d.ts +14 -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 +13 -0
- 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 +7 -0
- package/dist/esm/core/config/verify-feature-references.frontend.d.ts.map +1 -1
- package/dist/esm/core/config/verify-feature-references.frontend.js +42 -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 +9 -2
- 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/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/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/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 +6 -5
- package/dist/esm/core/events/NotificationContext.d.ts.map +1 -1
- package/dist/esm/core/events/NotificationContext.js +41 -39
- 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 +34 -18
- package/dist/esm/core/events/events.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/events/events.frontend.schemas.js +22 -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/ProviderFilePickerHost.d.ts +66 -0
- package/dist/esm/core/external-providers/ProviderFilePickerHost.d.ts.map +1 -0
- package/dist/esm/core/external-providers/ProviderFilePickerHost.js +101 -0
- package/dist/esm/core/external-providers/ProviderFilePickerHost.js.map +1 -0
- 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 +33 -15
- 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 +27 -21
- package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.js.map +1 -1
- package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.d.ts +103 -0
- package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.js +117 -0
- package/dist/esm/core/external-providers/provider-file-selection.frontend.utils.js.map +1 -0
- package/dist/esm/core/features/FeatureGate.d.ts.map +1 -1
- package/dist/esm/core/features/FeatureGate.js +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 +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-unavailability.frontend.utils.d.ts +7 -0
- package/dist/esm/core/features/feature-unavailability.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/features/feature-unavailability.frontend.utils.js +5 -0
- package/dist/esm/core/features/feature-unavailability.frontend.utils.js.map +1 -1
- package/dist/esm/core/features/useFeatureAvailability.d.ts +2 -0
- package/dist/esm/core/features/useFeatureAvailability.d.ts.map +1 -1
- package/dist/esm/core/features/useFeatureAvailability.js +4 -2
- 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 +20 -1
- package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts.map +1 -1
- package/dist/esm/core/flows-actors/FlowsActorsContext.js +50 -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/guidance/GuidanceContext.d.ts.map +1 -1
- package/dist/esm/core/guidance/GuidanceContext.js +2 -2
- 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 +29 -0
- package/dist/esm/core/hotkey/DefaultHotkeyHandler.d.ts.map +1 -1
- package/dist/esm/core/hotkey/DefaultHotkeyHandler.js +76 -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 +44 -8
- 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 +53 -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 +78 -13
- 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 +9 -0
- package/dist/esm/core/i18n/I18nContext.d.ts.map +1 -1
- package/dist/esm/core/i18n/I18nContext.js +149 -32
- 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/regional-preference-resolution.frontend.utils.d.ts +51 -0
- package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.js +66 -0
- package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.js.map +1 -0
- package/dist/esm/core/i18n/useI18n.d.ts.map +1 -1
- package/dist/esm/core/i18n/useI18n.js +22 -2
- 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 +16 -3
- 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/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 +97 -0
- package/dist/esm/core/monitoring/error-monitoring-bridge.frontend.service.d.ts.map +1 -0
- package/dist/esm/core/monitoring/error-monitoring-bridge.frontend.service.js +179 -0
- package/dist/esm/core/monitoring/error-monitoring-bridge.frontend.service.js.map +1 -0
- 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 +76 -48
- package/dist/esm/core/navigation/NavigationContentAreas.js.map +1 -1
- package/dist/esm/core/navigation/NavigationContext.d.ts +12 -0
- package/dist/esm/core/navigation/NavigationContext.d.ts.map +1 -1
- package/dist/esm/core/navigation/NavigationContext.js +24 -0
- package/dist/esm/core/navigation/NavigationContext.js.map +1 -1
- package/dist/esm/core/navigation/NavigationRequestBridge.d.ts.map +1 -1
- package/dist/esm/core/navigation/NavigationRequestBridge.js.map +1 -1
- package/dist/esm/core/navigation/hosted-pane.constants.d.ts.map +1 -1
- package/dist/esm/core/navigation/hosted-pane.constants.js.map +1 -1
- package/dist/esm/core/navigation/launcher-resolution.d.ts +1 -1
- package/dist/esm/core/navigation/launcher-resolution.d.ts.map +1 -1
- package/dist/esm/core/navigation/launcher-resolution.js +1 -1
- package/dist/esm/core/navigation/launcher-resolution.js.map +1 -1
- package/dist/esm/core/navigation/launcher-runtime-availability.d.ts.map +1 -1
- package/dist/esm/core/navigation/launcher-runtime-availability.js.map +1 -1
- package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.js.map +1 -1
- package/dist/esm/core/navigation/navigation-policy-resolver.service.d.ts +14 -5
- package/dist/esm/core/navigation/navigation-policy-resolver.service.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation-policy-resolver.service.js +146 -17
- package/dist/esm/core/navigation/navigation-policy-resolver.service.js.map +1 -1
- package/dist/esm/core/navigation/navigation.schemas.d.ts +58 -10
- package/dist/esm/core/navigation/navigation.schemas.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation.schemas.js +1 -1
- package/dist/esm/core/navigation/navigation.schemas.js.map +1 -1
- package/dist/esm/core/navigation/navigation.utils.d.ts +2 -2
- package/dist/esm/core/navigation/navigation.utils.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation.utils.js +4 -4
- 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/useIsStackEntryActive.d.ts.map +1 -1
- package/dist/esm/core/navigation/useIsStackEntryActive.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 +8 -0
- package/dist/esm/core/navigation/useNavigationController.d.ts.map +1 -1
- package/dist/esm/core/navigation/useNavigationController.js +26 -6
- package/dist/esm/core/navigation/useNavigationController.js.map +1 -1
- package/dist/esm/core/navigation/useNavigationState.d.ts.map +1 -1
- package/dist/esm/core/navigation/useNavigationState.js.map +1 -1
- package/dist/esm/core/navigation/useOverlayTitle.d.ts.map +1 -1
- package/dist/esm/core/navigation/useOverlayTitle.js.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-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-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 +26 -0
- package/dist/esm/core/navigation/zone-visible-entry.d.ts.map +1 -0
- package/dist/esm/core/navigation/zone-visible-entry.js +76 -0
- package/dist/esm/core/navigation/zone-visible-entry.js.map +1 -0
- 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 +32 -19
- package/dist/esm/core/requests/websockets/useNotificationBadges.js.map +1 -1
- package/dist/esm/core/requests/websockets/useResourceRoom.d.ts.map +1 -1
- package/dist/esm/core/requests/websockets/useResourceRoom.js.map +1 -1
- package/dist/esm/core/requests/websockets/useWebSocket.d.ts.map +1 -1
- package/dist/esm/core/requests/websockets/useWebSocket.js.map +1 -1
- package/dist/esm/core/requests/websockets/websocket-resource-validation.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/requests/websockets/websocket-resource-validation.frontend.service.js.map +1 -1
- package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.d.ts +73 -2
- 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 +56 -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 +6 -0
- 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 +1 -0
- 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/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/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-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 +2 -2
- 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/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/useHostlessResourceNavigation.d.ts.map +1 -1
- package/dist/esm/core/resources/useHostlessResourceNavigation.js.map +1 -1
- package/dist/esm/core/resources/useOperationEnabled.d.ts.map +1 -1
- package/dist/esm/core/resources/useOperationEnabled.js.map +1 -1
- package/dist/esm/core/resources/useResourceLabels.d.ts.map +1 -1
- package/dist/esm/core/resources/useResourceLabels.js +20 -14
- 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/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 +2 -1
- package/dist/esm/core/runtime/AppRouter.js.map +1 -1
- package/dist/esm/core/runtime/ApplicationContext.shared.d.ts +9 -0
- 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 +1 -0
- package/dist/esm/core/runtime/ApplicationMainContext.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 +6 -0
- package/dist/esm/core/runtime/routes.frontend.definitions.d.ts.map +1 -1
- package/dist/esm/core/runtime/routes.frontend.definitions.js +7 -0
- 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 +38 -0
- package/dist/esm/core/runtime/start-application.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/runtime/start-application.frontend.service.js +84 -3
- package/dist/esm/core/runtime/start-application.frontend.service.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 +37 -9
- 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/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/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/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/useResolvedAuthConfig.d.ts.map +1 -1
- package/dist/esm/core/security/useResolvedAuthConfig.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/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 +7 -2
- 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 +7 -2
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +20 -2
- 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/mock-builders.d.ts.map +1 -1
- package/dist/esm/testing/mock-builders.js +2 -0
- 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 -5
- package/dist/esm/components/billing/billing-plan-change-preview.d.ts +0 -21
- package/dist/esm/components/billing/billing-plan-change-preview.d.ts.map +0 -1
- package/dist/esm/components/billing/billing-plan-change-preview.js +0 -12
- package/dist/esm/components/billing/billing-plan-change-preview.js.map +0 -1
- package/dist/esm/components/billing/billing-promotion-code-input.d.ts +0 -12
- package/dist/esm/components/billing/billing-promotion-code-input.d.ts.map +0 -1
- package/dist/esm/components/billing/billing-promotion-code-input.js +0 -11
- package/dist/esm/components/billing/billing-promotion-code-input.js.map +0 -1
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AppPage_ConnectedAccountsSettings — the Settings Hub "Connected accounts" connect panel.
|
|
3
|
+
*
|
|
4
|
+
* A bespoke `ENGINE_PANEL`, and the reason is the shape of the act rather than the shape of the data.
|
|
5
|
+
* The stored credentials ARE a resource, and the generic surface beside this one lists, inspects and
|
|
6
|
+
* deletes them perfectly. What it cannot do is CONNECT: that is not a row somebody creates, it is a
|
|
7
|
+
* flow that leaves the application, obtains consent at a vendor, and returns with a grant nobody
|
|
8
|
+
* typed. A resource screen has no mechanism for an action of that shape, so until this existed the
|
|
9
|
+
* whole outbound-authorization lane — controller, exchange, refresher, encrypted store, migrations —
|
|
10
|
+
* had no surface that could begin it.
|
|
11
|
+
*
|
|
12
|
+
* ## Two reads, deliberately not one
|
|
13
|
+
*
|
|
14
|
+
* `listConnectableProviders()` answers what MAY be connected; the sibling resource list answers what
|
|
15
|
+
* IS. Merging them would make "you have connected nothing" and "there is nothing to connect"
|
|
16
|
+
* indistinguishable — and the first of those is the state every person starts in, which is precisely
|
|
17
|
+
* when they need the second question answered.
|
|
18
|
+
*
|
|
19
|
+
* ## USER scope only, and that is not a simplification
|
|
20
|
+
*
|
|
21
|
+
* This panel lives under the person's own settings, so it offers only connections the provider admits
|
|
22
|
+
* as USER-owned. A tenant's shared integration is the administrator's screen next door
|
|
23
|
+
* (`provider-credentials`), and the two must never be merged: one is an individual's own account that
|
|
24
|
+
* nobody else may see or spend, the other is a shared credential an administrator configures for
|
|
25
|
+
* everyone. There is no cross-scope defaulting anywhere in this lane — a person with no credential of
|
|
26
|
+
* their own is refused rather than quietly spending the organization's.
|
|
27
|
+
*
|
|
28
|
+
* ## Why it navigates instead of following a redirect
|
|
29
|
+
*
|
|
30
|
+
* The start leg answers with a URL. A 302 would be followed by this fetch, produce an opaque
|
|
31
|
+
* cross-origin response, and render the vendor's consent screen into a response body nobody sees. So
|
|
32
|
+
* the panel assigns `window.location.href` and the browser leaves — which is also why the OUTCOME
|
|
33
|
+
* arrives back as a query parameter rather than as a promise resolving: the return trip is a fresh
|
|
34
|
+
* page load from the vendor, not a continuation of this component.
|
|
35
|
+
*
|
|
36
|
+
* i18n follows the framework convention: `useI18n({ component })` requests this component's label
|
|
37
|
+
* namespace, the panel gates rendering on `isReady` so it never flashes raw key paths, and a thin
|
|
38
|
+
* `t(key)` reads each label. Copy is owned by the labelling pipeline (sibling `.labels.ts`) — no
|
|
39
|
+
* hardcoded strings, and no humanized provider ref either: a provider identifier is an open
|
|
40
|
+
* vocabulary with no authored label, so it is rendered verbatim rather than invented from its own
|
|
41
|
+
* characters.
|
|
42
|
+
*
|
|
43
|
+
* assurance-control: WILDO.IDENTITY.DELEGATED_AUTHORIZATION — the surface on which a person
|
|
44
|
+
* authorizes this application to act toward a named third party on their behalf.
|
|
45
|
+
*/
|
|
46
|
+
import React from 'react';
|
|
47
|
+
import { type ConnectableProviderView } from '../../core/requests/wildo-http-client-manual-calls.frontend.service';
|
|
48
|
+
/**
|
|
49
|
+
* The providers THIS person may connect for themselves.
|
|
50
|
+
*
|
|
51
|
+
* Named and exported rather than inlined because it is the panel's one substantive claim, and both
|
|
52
|
+
* halves of it are a way for a button to be DEAD on press:
|
|
53
|
+
*
|
|
54
|
+
* - a provider admitting only ORGANIZATION-owned connections belongs on the administrator's screen
|
|
55
|
+
* next door; offering it here renders a Connect button that answers 403;
|
|
56
|
+
* - a provider whose credential is pasted has no authorization flow to start, so its button would
|
|
57
|
+
* have nowhere to navigate.
|
|
58
|
+
*
|
|
59
|
+
* The two filters look interchangeable and are not: dropping the first shows an action the person is
|
|
60
|
+
* not entitled to, dropping the second shows an action that does not exist.
|
|
61
|
+
*/
|
|
62
|
+
export declare const selectPersonallyConnectableProviders: (providers: readonly ConnectableProviderView[]) => ConnectableProviderView[];
|
|
63
|
+
export declare const AppPage_ConnectedAccountsSettings: React.FC;
|
|
64
|
+
//# sourceMappingURL=AppPage_ConnectedAccountsSettings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AppPage_ConnectedAccountsSettings.d.ts","sourceRoot":"","sources":["../../../../src/components/settings/AppPage_ConnectedAccountsSettings.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,OAAO,KAAoD,MAAM,OAAO,CAAC;AAczE,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,mFAAmF,CAAC;AAqB3F;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,oCAAoC,GAC/C,WAAW,SAAS,uBAAuB,EAAE,KAC5C,uBAAuB,EAItB,CAAC;AAEL,eAAO,MAAM,iCAAiC,EAAE,KAAK,CAAC,EAwMrD,CAAC"}
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* AppPage_ConnectedAccountsSettings — the Settings Hub "Connected accounts" connect panel.
|
|
4
|
+
*
|
|
5
|
+
* A bespoke `ENGINE_PANEL`, and the reason is the shape of the act rather than the shape of the data.
|
|
6
|
+
* The stored credentials ARE a resource, and the generic surface beside this one lists, inspects and
|
|
7
|
+
* deletes them perfectly. What it cannot do is CONNECT: that is not a row somebody creates, it is a
|
|
8
|
+
* flow that leaves the application, obtains consent at a vendor, and returns with a grant nobody
|
|
9
|
+
* typed. A resource screen has no mechanism for an action of that shape, so until this existed the
|
|
10
|
+
* whole outbound-authorization lane — controller, exchange, refresher, encrypted store, migrations —
|
|
11
|
+
* had no surface that could begin it.
|
|
12
|
+
*
|
|
13
|
+
* ## Two reads, deliberately not one
|
|
14
|
+
*
|
|
15
|
+
* `listConnectableProviders()` answers what MAY be connected; the sibling resource list answers what
|
|
16
|
+
* IS. Merging them would make "you have connected nothing" and "there is nothing to connect"
|
|
17
|
+
* indistinguishable — and the first of those is the state every person starts in, which is precisely
|
|
18
|
+
* when they need the second question answered.
|
|
19
|
+
*
|
|
20
|
+
* ## USER scope only, and that is not a simplification
|
|
21
|
+
*
|
|
22
|
+
* This panel lives under the person's own settings, so it offers only connections the provider admits
|
|
23
|
+
* as USER-owned. A tenant's shared integration is the administrator's screen next door
|
|
24
|
+
* (`provider-credentials`), and the two must never be merged: one is an individual's own account that
|
|
25
|
+
* nobody else may see or spend, the other is a shared credential an administrator configures for
|
|
26
|
+
* everyone. There is no cross-scope defaulting anywhere in this lane — a person with no credential of
|
|
27
|
+
* their own is refused rather than quietly spending the organization's.
|
|
28
|
+
*
|
|
29
|
+
* ## Why it navigates instead of following a redirect
|
|
30
|
+
*
|
|
31
|
+
* The start leg answers with a URL. A 302 would be followed by this fetch, produce an opaque
|
|
32
|
+
* cross-origin response, and render the vendor's consent screen into a response body nobody sees. So
|
|
33
|
+
* the panel assigns `window.location.href` and the browser leaves — which is also why the OUTCOME
|
|
34
|
+
* arrives back as a query parameter rather than as a promise resolving: the return trip is a fresh
|
|
35
|
+
* page load from the vendor, not a continuation of this component.
|
|
36
|
+
*
|
|
37
|
+
* i18n follows the framework convention: `useI18n({ component })` requests this component's label
|
|
38
|
+
* namespace, the panel gates rendering on `isReady` so it never flashes raw key paths, and a thin
|
|
39
|
+
* `t(key)` reads each label. Copy is owned by the labelling pipeline (sibling `.labels.ts`) — no
|
|
40
|
+
* hardcoded strings, and no humanized provider ref either: a provider identifier is an open
|
|
41
|
+
* vocabulary with no authored label, so it is rendered verbatim rather than invented from its own
|
|
42
|
+
* characters.
|
|
43
|
+
*
|
|
44
|
+
* assurance-control: WILDO.IDENTITY.DELEGATED_AUTHORIZATION — the surface on which a person
|
|
45
|
+
* authorizes this application to act toward a named third party on their behalf.
|
|
46
|
+
*/
|
|
47
|
+
import { useCallback, useEffect, useMemo, useState } from 'react';
|
|
48
|
+
import { ButtonSize, FrontendComponentType } from '@wildo-ai/presets-components-models';
|
|
49
|
+
import { isWildoBackendError } from '@wildo-ai/saas-models';
|
|
50
|
+
import { ExternalProvider_Connection_DelegationMode, ExternalProvider_Connection_OwnerScope, } from '@wildo-ai/external-connectors-models';
|
|
51
|
+
import { Card, CardContent, CardHeader, CardTitle } from '../../components/sections/card.js';
|
|
52
|
+
import { Button, ButtonVariants_Variant } from '../../components/actions/button.js';
|
|
53
|
+
import { InputRoot } from '../../components/form/controls/input.js';
|
|
54
|
+
import { Text } from '../../components/typography/text.js';
|
|
55
|
+
import { Alert, AlertDescription } from '../../components/overlays/containers/alert.js';
|
|
56
|
+
import { useI18n } from '../../core/i18n/useI18n.js';
|
|
57
|
+
import { useUserOrgs } from '../../core/security/useUserOrgs.js';
|
|
58
|
+
import { getManualCallsHttpClient, } from '../../core/requests/wildo-http-client-manual-calls.frontend.service.js';
|
|
59
|
+
const COMPONENT = FrontendComponentType.APP_LAYOUTS_CONNECTED_ACCOUNTS_SETTINGS;
|
|
60
|
+
/**
|
|
61
|
+
* The outcome the callback wrote into the URL on its way back.
|
|
62
|
+
*
|
|
63
|
+
* Read once, from `window.location`, because this component did not survive the round trip — the
|
|
64
|
+
* browser left for the vendor and came back on a fresh page load. Read as a plain string rather than
|
|
65
|
+
* branched into a closed vocabulary: the callback's `connected` value is a provider ref, which is an
|
|
66
|
+
* open set.
|
|
67
|
+
*/
|
|
68
|
+
const readReturnOutcome = () => {
|
|
69
|
+
if (typeof window === 'undefined')
|
|
70
|
+
return {};
|
|
71
|
+
const params = new URLSearchParams(window.location.search);
|
|
72
|
+
return {
|
|
73
|
+
connected: params.get('connected') ?? undefined,
|
|
74
|
+
connectionError: params.get('connectionError') ?? undefined,
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* The providers THIS person may connect for themselves.
|
|
79
|
+
*
|
|
80
|
+
* Named and exported rather than inlined because it is the panel's one substantive claim, and both
|
|
81
|
+
* halves of it are a way for a button to be DEAD on press:
|
|
82
|
+
*
|
|
83
|
+
* - a provider admitting only ORGANIZATION-owned connections belongs on the administrator's screen
|
|
84
|
+
* next door; offering it here renders a Connect button that answers 403;
|
|
85
|
+
* - a provider whose credential is pasted has no authorization flow to start, so its button would
|
|
86
|
+
* have nowhere to navigate.
|
|
87
|
+
*
|
|
88
|
+
* The two filters look interchangeable and are not: dropping the first shows an action the person is
|
|
89
|
+
* not entitled to, dropping the second shows an action that does not exist.
|
|
90
|
+
*/
|
|
91
|
+
export const selectPersonallyConnectableProviders = (providers) => providers.filter((provider) => provider.connectable
|
|
92
|
+
&& provider.admissibleConnections.some((shape) => shape.ownerScope === ExternalProvider_Connection_OwnerScope.USER));
|
|
93
|
+
export const AppPage_ConnectedAccountsSettings = () => {
|
|
94
|
+
const { tComponent, isReady } = useI18n({ component: COMPONENT });
|
|
95
|
+
const { user } = useUserOrgs();
|
|
96
|
+
const t = useCallback((key) => tComponent(COMPONENT, key), [tComponent]);
|
|
97
|
+
/**
|
|
98
|
+
* Whose account is being connected — always the caller's own.
|
|
99
|
+
*
|
|
100
|
+
* Sent explicitly because the target schema is the SAME one the call leg uses, and there an owner
|
|
101
|
+
* genuinely varies. The backend does not trust this value: it re-checks `ownerId === callerId` and
|
|
102
|
+
* refuses anything else, so supplying it is a statement of intent rather than a decision.
|
|
103
|
+
*/
|
|
104
|
+
const selfUserId = user?._id ?? null;
|
|
105
|
+
const [providers, setProviders] = useState([]);
|
|
106
|
+
const [loading, setLoading] = useState(true);
|
|
107
|
+
const [busyRef, setBusyRef] = useState(null);
|
|
108
|
+
const [error, setError] = useState(null);
|
|
109
|
+
/** Answers to a provider's `{placeholders}`, per provider ref. Nothing is remembered across a reload. */
|
|
110
|
+
const [answers, setAnswers] = useState({});
|
|
111
|
+
// Read once on mount. The outcome describes a journey that has already finished; re-reading it on
|
|
112
|
+
// every render would make the banner reappear after the person dismissed the tab and came back.
|
|
113
|
+
const [outcome] = useState(readReturnOutcome);
|
|
114
|
+
useEffect(() => {
|
|
115
|
+
let cancelled = false;
|
|
116
|
+
(async () => {
|
|
117
|
+
try {
|
|
118
|
+
const res = await getManualCallsHttpClient().listConnectableProviders();
|
|
119
|
+
if (!cancelled)
|
|
120
|
+
setProviders(res.providers ?? []);
|
|
121
|
+
}
|
|
122
|
+
catch (e) {
|
|
123
|
+
if (isWildoBackendError(e))
|
|
124
|
+
throw e;
|
|
125
|
+
if (!cancelled)
|
|
126
|
+
setError(t('errorGeneric'));
|
|
127
|
+
}
|
|
128
|
+
finally {
|
|
129
|
+
if (!cancelled)
|
|
130
|
+
setLoading(false);
|
|
131
|
+
}
|
|
132
|
+
})();
|
|
133
|
+
return () => { cancelled = true; };
|
|
134
|
+
}, [t]);
|
|
135
|
+
const personalProviders = useMemo(() => selectPersonallyConnectableProviders(providers), [providers]);
|
|
136
|
+
const handleConnect = useCallback(async (provider) => {
|
|
137
|
+
setBusyRef(provider.providerRef);
|
|
138
|
+
setError(null);
|
|
139
|
+
try {
|
|
140
|
+
const { authorizeUrl } = await getManualCallsHttpClient().startProviderConnection(provider.providerRef, {
|
|
141
|
+
// The person connects their OWN account and nobody else's — the backend re-checks
|
|
142
|
+
// exactly this, so a tampered owner id is refused rather than honoured.
|
|
143
|
+
target: {
|
|
144
|
+
ownerScope: ExternalProvider_Connection_OwnerScope.USER,
|
|
145
|
+
ownerId: selfUserId,
|
|
146
|
+
delegation: ExternalProvider_Connection_DelegationMode.SERVICE,
|
|
147
|
+
},
|
|
148
|
+
connectionParameters: answers[provider.providerRef],
|
|
149
|
+
});
|
|
150
|
+
// The browser leaves. No state is set afterwards on purpose: this component is about to be
|
|
151
|
+
// unmounted by a navigation, and a `setState` here would be a React warning on the way out.
|
|
152
|
+
window.location.href = authorizeUrl;
|
|
153
|
+
}
|
|
154
|
+
catch (e) {
|
|
155
|
+
if (isWildoBackendError(e))
|
|
156
|
+
throw e;
|
|
157
|
+
setError(t('errorGeneric'));
|
|
158
|
+
setBusyRef(null);
|
|
159
|
+
}
|
|
160
|
+
}, [answers, selfUserId, t]);
|
|
161
|
+
// Gate on label readiness so the panel never flashes raw key paths.
|
|
162
|
+
if (!isReady)
|
|
163
|
+
return null;
|
|
164
|
+
return (_jsxs("div", { className: "flex flex-col gap-section", children: [_jsxs("div", { className: "flex flex-col gap-item-xs", children: [_jsx("h3", { className: "text-base font-semibold tracking-tight", children: t('pageTitle') }), _jsx(Text, { className: "text-sm text-muted-foreground", children: t('pageDescription') })] }), outcome.connected !== undefined && (_jsx(Alert, { children: _jsx(AlertDescription, { children: t('connectedNotice') }) })), outcome.connectionError === 'declined' && (_jsx(Alert, { children: _jsx(AlertDescription, { children: t('declinedNotice') }) })), outcome.connectionError !== undefined && outcome.connectionError !== 'declined' && (_jsx(Alert, { variant: "destructive", children: _jsx(AlertDescription, { children: t('failedNotice') }) })), error && (_jsx(Alert, { variant: "destructive", children: _jsx(AlertDescription, { children: error }) })), _jsx(Text, { className: "text-xs text-muted-foreground", children: t('disconnectNotice') }), loading ? (_jsx(Text, { className: "text-sm text-muted-foreground", children: t('loading') })) : personalProviders.length === 0 ? (_jsx(Text, { className: "text-sm text-muted-foreground", children: t('empty') })) : (_jsx("div", { className: "flex flex-col gap-group", children: personalProviders.map((provider) => (_jsxs(Card, { children: [_jsx(CardHeader, { children: _jsx(CardTitle, { children: provider.providerRef }) }), _jsxs(CardContent, { className: "flex flex-col gap-group", children: [provider.scopes !== undefined && provider.scopes.length > 0 && (_jsxs(Text, { className: "text-xs text-muted-foreground", children: [t('scopesPrefix'), " ", provider.scopes.join(', ')] })), provider.connectionParameters !== undefined && provider.connectionParameters.length > 0 && (_jsxs("div", { className: "flex flex-col gap-item-xs", children: [_jsx(Text, { className: "text-sm font-medium", children: t('parametersHeading') }), _jsx(Text, { className: "text-xs text-muted-foreground", children: t('parametersDescription') }), provider.connectionParameters.map((parameter) => (
|
|
165
|
+
// `InputRoot`, not `Input`: the compound `Input` is the SCHEMA-DRIVEN form
|
|
166
|
+
// control and requires a `name` and a Zod `schema`. These fields belong to no
|
|
167
|
+
// resource — they are answers to a vendor's URL, held for the length of one
|
|
168
|
+
// click — so inventing a schema for them would be inventing a model.
|
|
169
|
+
_jsx(InputRoot, { "aria-label": parameter, placeholder: parameter, value: answers[provider.providerRef]?.[parameter] ?? '', onChange: (event) => setAnswers((previous) => ({
|
|
170
|
+
...previous,
|
|
171
|
+
[provider.providerRef]: {
|
|
172
|
+
...previous[provider.providerRef],
|
|
173
|
+
[parameter]: event.target.value,
|
|
174
|
+
},
|
|
175
|
+
})) }, parameter)))] })), _jsx("div", { className: "flex justify-end", children: _jsx(Button, { size: ButtonSize.SM, variant: ButtonVariants_Variant.DEFAULT,
|
|
176
|
+
// Every placeholder must be answered: a half-answered set builds a URL that is
|
|
177
|
+
// still not a URL.
|
|
178
|
+
disabled: busyRef === provider.providerRef
|
|
179
|
+
// No identity yet — the auth context has not settled. Pressing now would send
|
|
180
|
+
// an empty owner and be refused for a reason nobody could act on.
|
|
181
|
+
|| selfUserId === null
|
|
182
|
+
|| (provider.connectionParameters ?? []).some((parameter) => (answers[provider.providerRef]?.[parameter] ?? '').trim() === ''), onClick: () => handleConnect(provider), children: busyRef === provider.providerRef ? t('connectingButton') : t('connectButton') }) })] })] }, provider.providerRef))) }))] }));
|
|
183
|
+
};
|
|
184
|
+
//# sourceMappingURL=AppPage_ConnectedAccountsSettings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AppPage_ConnectedAccountsSettings.js","sourceRoot":"","sources":["../../../../src/components/settings/AppPage_ConnectedAccountsSettings.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * AppPage_ConnectedAccountsSettings — the Settings Hub \"Connected accounts\" connect panel.\n *\n * A bespoke `ENGINE_PANEL`, and the reason is the shape of the act rather than the shape of the data.\n * The stored credentials ARE a resource, and the generic surface beside this one lists, inspects and\n * deletes them perfectly. What it cannot do is CONNECT: that is not a row somebody creates, it is a\n * flow that leaves the application, obtains consent at a vendor, and returns with a grant nobody\n * typed. A resource screen has no mechanism for an action of that shape, so until this existed the\n * whole outbound-authorization lane — controller, exchange, refresher, encrypted store, migrations —\n * had no surface that could begin it.\n *\n * ## Two reads, deliberately not one\n *\n * `listConnectableProviders()` answers what MAY be connected; the sibling resource list answers what\n * IS. Merging them would make \"you have connected nothing\" and \"there is nothing to connect\"\n * indistinguishable — and the first of those is the state every person starts in, which is precisely\n * when they need the second question answered.\n *\n * ## USER scope only, and that is not a simplification\n *\n * This panel lives under the person's own settings, so it offers only connections the provider admits\n * as USER-owned. A tenant's shared integration is the administrator's screen next door\n * (`provider-credentials`), and the two must never be merged: one is an individual's own account that\n * nobody else may see or spend, the other is a shared credential an administrator configures for\n * everyone. There is no cross-scope defaulting anywhere in this lane — a person with no credential of\n * their own is refused rather than quietly spending the organization's.\n *\n * ## Why it navigates instead of following a redirect\n *\n * The start leg answers with a URL. A 302 would be followed by this fetch, produce an opaque\n * cross-origin response, and render the vendor's consent screen into a response body nobody sees. So\n * the panel assigns `window.location.href` and the browser leaves — which is also why the OUTCOME\n * arrives back as a query parameter rather than as a promise resolving: the return trip is a fresh\n * page load from the vendor, not a continuation of this component.\n *\n * i18n follows the framework convention: `useI18n({ component })` requests this component's label\n * namespace, the panel gates rendering on `isReady` so it never flashes raw key paths, and a thin\n * `t(key)` reads each label. Copy is owned by the labelling pipeline (sibling `.labels.ts`) — no\n * hardcoded strings, and no humanized provider ref either: a provider identifier is an open\n * vocabulary with no authored label, so it is rendered verbatim rather than invented from its own\n * characters.\n *\n * assurance-control: WILDO.IDENTITY.DELEGATED_AUTHORIZATION — the surface on which a person\n * authorizes this application to act toward a named third party on their behalf.\n */\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { ButtonSize, FrontendComponentType } from '@wildo-ai/presets-components-models';\nimport { isWildoBackendError } from '@wildo-ai/saas-models';\nimport {\n ExternalProvider_Connection_DelegationMode,\n ExternalProvider_Connection_OwnerScope,\n} from '@wildo-ai/external-connectors-models';\nimport { Card, CardContent, CardHeader, CardTitle } from '~wildo-frontend-lib/components/sections/card';\nimport { Button, ButtonVariants_Variant } from '~wildo-frontend-lib/components/actions/button';\nimport { InputRoot } from '~wildo-frontend-lib/components/form/controls/input';\nimport { Text } from '~wildo-frontend-lib/components/typography/text';\nimport { Alert, AlertDescription } from '~wildo-frontend-lib/components/overlays/containers/alert';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { useUserOrgs } from '~wildo-frontend-lib/core/security/useUserOrgs';\nimport {\n getManualCallsHttpClient,\n type ConnectableProviderView,\n} from '~wildo-frontend-lib/core/requests/wildo-http-client-manual-calls.frontend.service';\n\nconst COMPONENT = FrontendComponentType.APP_LAYOUTS_CONNECTED_ACCOUNTS_SETTINGS;\n\n/**\n * The outcome the callback wrote into the URL on its way back.\n *\n * Read once, from `window.location`, because this component did not survive the round trip — the\n * browser left for the vendor and came back on a fresh page load. Read as a plain string rather than\n * branched into a closed vocabulary: the callback's `connected` value is a provider ref, which is an\n * open set.\n */\nconst readReturnOutcome = (): { connected?: string; connectionError?: string } => {\n if (typeof window === 'undefined') return {};\n const params = new URLSearchParams(window.location.search);\n return {\n connected: params.get('connected') ?? undefined,\n connectionError: params.get('connectionError') ?? undefined,\n };\n};\n\n/**\n * The providers THIS person may connect for themselves.\n *\n * Named and exported rather than inlined because it is the panel's one substantive claim, and both\n * halves of it are a way for a button to be DEAD on press:\n *\n * - a provider admitting only ORGANIZATION-owned connections belongs on the administrator's screen\n * next door; offering it here renders a Connect button that answers 403;\n * - a provider whose credential is pasted has no authorization flow to start, so its button would\n * have nowhere to navigate.\n *\n * The two filters look interchangeable and are not: dropping the first shows an action the person is\n * not entitled to, dropping the second shows an action that does not exist.\n */\nexport const selectPersonallyConnectableProviders = (\n providers: readonly ConnectableProviderView[],\n): ConnectableProviderView[] => providers.filter((provider) =>\n provider.connectable\n && provider.admissibleConnections.some(\n (shape) => shape.ownerScope === ExternalProvider_Connection_OwnerScope.USER,\n ));\n\nexport const AppPage_ConnectedAccountsSettings: React.FC = () => {\n const { tComponent, isReady } = useI18n({ component: COMPONENT });\n const { user } = useUserOrgs();\n\n const t = useCallback((key: string) => tComponent(COMPONENT, key), [tComponent]);\n\n /**\n * Whose account is being connected — always the caller's own.\n *\n * Sent explicitly because the target schema is the SAME one the call leg uses, and there an owner\n * genuinely varies. The backend does not trust this value: it re-checks `ownerId === callerId` and\n * refuses anything else, so supplying it is a statement of intent rather than a decision.\n */\n const selfUserId = user?._id ?? null;\n\n const [providers, setProviders] = useState<ConnectableProviderView[]>([]);\n const [loading, setLoading] = useState(true);\n const [busyRef, setBusyRef] = useState<string | null>(null);\n const [error, setError] = useState<string | null>(null);\n /** Answers to a provider's `{placeholders}`, per provider ref. Nothing is remembered across a reload. */\n const [answers, setAnswers] = useState<Record<string, Record<string, string>>>({});\n\n // Read once on mount. The outcome describes a journey that has already finished; re-reading it on\n // every render would make the banner reappear after the person dismissed the tab and came back.\n const [outcome] = useState(readReturnOutcome);\n\n useEffect(() => {\n let cancelled = false;\n (async () => {\n try {\n const res = await getManualCallsHttpClient().listConnectableProviders();\n if (!cancelled) setProviders(res.providers ?? []);\n } catch (e: unknown) {\n if (isWildoBackendError(e)) throw e;\n if (!cancelled) setError(t('errorGeneric'));\n } finally {\n if (!cancelled) setLoading(false);\n }\n })();\n return () => { cancelled = true; };\n }, [t]);\n\n const personalProviders = useMemo(() => selectPersonallyConnectableProviders(providers), [providers]);\n\n const handleConnect = useCallback(\n async (provider: ConnectableProviderView) => {\n setBusyRef(provider.providerRef);\n setError(null);\n try {\n const { authorizeUrl } = await getManualCallsHttpClient().startProviderConnection(\n provider.providerRef,\n {\n // The person connects their OWN account and nobody else's — the backend re-checks\n // exactly this, so a tampered owner id is refused rather than honoured.\n target: {\n ownerScope: ExternalProvider_Connection_OwnerScope.USER,\n ownerId: selfUserId!,\n delegation: ExternalProvider_Connection_DelegationMode.SERVICE,\n },\n connectionParameters: answers[provider.providerRef],\n },\n );\n // The browser leaves. No state is set afterwards on purpose: this component is about to be\n // unmounted by a navigation, and a `setState` here would be a React warning on the way out.\n window.location.href = authorizeUrl;\n } catch (e: unknown) {\n if (isWildoBackendError(e)) throw e;\n setError(t('errorGeneric'));\n setBusyRef(null);\n }\n },\n [answers, selfUserId, t],\n );\n\n // Gate on label readiness so the panel never flashes raw key paths.\n if (!isReady) return null;\n\n return (\n <div className=\"flex flex-col gap-section\">\n <div className=\"flex flex-col gap-item-xs\">\n {/* `h3`, not `h2`: the Settings Hub header owns the `h2` for this dialog, so a panel\n heading is one level below it. */}\n <h3 className=\"text-base font-semibold tracking-tight\">{t('pageTitle')}</h3>\n <Text className=\"text-sm text-muted-foreground\">{t('pageDescription')}</Text>\n </div>\n\n {/* The return leg's own report. `declined` is NOT destructive — somebody who pressed \"Deny\"\n made a decision, and dressing it in red tells them they did something wrong. */}\n {outcome.connected !== undefined && (\n <Alert><AlertDescription>{t('connectedNotice')}</AlertDescription></Alert>\n )}\n {outcome.connectionError === 'declined' && (\n <Alert><AlertDescription>{t('declinedNotice')}</AlertDescription></Alert>\n )}\n {outcome.connectionError !== undefined && outcome.connectionError !== 'declined' && (\n <Alert variant=\"destructive\"><AlertDescription>{t('failedNotice')}</AlertDescription></Alert>\n )}\n\n {error && (\n <Alert variant=\"destructive\"><AlertDescription>{error}</AlertDescription></Alert>\n )}\n\n {/*\n * A standing note, not a banner: it is true all the time rather than the report of something\n * that just happened, so it does not use `Alert` and does not come and go.\n *\n * It exists because removing a connection deletes THIS application's copy of the\n * authorization and tells the provider nothing — the token the provider issued stays valid\n * there until it expires on its own, and a refresh token frequently never does. Somebody who\n * presses Disconnect reasonably concludes they have withdrawn access, and that conclusion is\n * not quite true. Saying so is the honest answer available today; revoking at the provider is\n * tracked separately, and no wording here should imply it already happens.\n *\n * It sits on THIS tab rather than beside the Disconnect button because the credential list is\n * an auto-generated resource surface with no slot for copy, and giving every settings\n * destination one for the sake of a single note would be a framework change out of all\n * proportion to it.\n */}\n <Text className=\"text-xs text-muted-foreground\">{t('disconnectNotice')}</Text>\n\n {loading ? (\n <Text className=\"text-sm text-muted-foreground\">{t('loading')}</Text>\n ) : personalProviders.length === 0 ? (\n <Text className=\"text-sm text-muted-foreground\">{t('empty')}</Text>\n ) : (\n <div className=\"flex flex-col gap-group\">\n {personalProviders.map((provider) => (\n <Card key={provider.providerRef}>\n <CardHeader>\n {/* The provider ref verbatim. There is no authored label for an open vocabulary of\n vendors, and deriving words from the identifier would invent display text no\n translator can reach. */}\n <CardTitle>{provider.providerRef}</CardTitle>\n </CardHeader>\n <CardContent className=\"flex flex-col gap-group\">\n {provider.scopes !== undefined && provider.scopes.length > 0 && (\n <Text className=\"text-xs text-muted-foreground\">\n {t('scopesPrefix')} {provider.scopes.join(', ')}\n </Text>\n )}\n\n {/* Which cloud, which directory, which region. Facts about the ACCOUNT being\n connected, known only to the person connecting it — and without them the\n vendor's own URL still contains a brace, so the flow would fail in the browser\n rather than at the point where the missing input could be asked for. */}\n {provider.connectionParameters !== undefined && provider.connectionParameters.length > 0 && (\n <div className=\"flex flex-col gap-item-xs\">\n <Text className=\"text-sm font-medium\">{t('parametersHeading')}</Text>\n <Text className=\"text-xs text-muted-foreground\">{t('parametersDescription')}</Text>\n {provider.connectionParameters.map((parameter) => (\n // `InputRoot`, not `Input`: the compound `Input` is the SCHEMA-DRIVEN form\n // control and requires a `name` and a Zod `schema`. These fields belong to no\n // resource — they are answers to a vendor's URL, held for the length of one\n // click — so inventing a schema for them would be inventing a model.\n <InputRoot\n key={parameter}\n // The parameter name IS the vendor's own token (`cloud`, `tenantId`), not\n // display copy — it is what the person must look up in their own account.\n aria-label={parameter}\n placeholder={parameter}\n value={answers[provider.providerRef]?.[parameter] ?? ''}\n onChange={(event) => setAnswers((previous) => ({\n ...previous,\n [provider.providerRef]: {\n ...previous[provider.providerRef],\n [parameter]: event.target.value,\n },\n }))}\n />\n ))}\n </div>\n )}\n\n <div className=\"flex justify-end\">\n <Button\n size={ButtonSize.SM}\n variant={ButtonVariants_Variant.DEFAULT}\n // Every placeholder must be answered: a half-answered set builds a URL that is\n // still not a URL.\n disabled={\n busyRef === provider.providerRef\n // No identity yet — the auth context has not settled. Pressing now would send\n // an empty owner and be refused for a reason nobody could act on.\n || selfUserId === null\n || (provider.connectionParameters ?? []).some(\n (parameter) => (answers[provider.providerRef]?.[parameter] ?? '').trim() === '',\n )\n }\n onClick={() => handleConnect(provider)}\n >\n {busyRef === provider.providerRef ? t('connectingButton') : t('connectButton')}\n </Button>\n </div>\n </CardContent>\n </Card>\n ))}\n </div>\n )}\n </div>\n );\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AppPage_ConnectedAccountsSettings.labels.d.ts","sourceRoot":"","sources":["../../../../src/components/settings/AppPage_ConnectedAccountsSettings.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,mBAAmB,EAEzB,MAAM,qCAAqC,CAAC;AAO7C,eAAO,MAAM,yCAAyC,EAAE,mBAAmB,EAiB1E,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { FrontendComponentType, LabelKind, registerComponentLabels, } from '@wildo-ai/presets-components-models';
|
|
2
|
+
// Companion-only label metadata for the Connected-accounts panel: keys + kind + per-key purpose.
|
|
3
|
+
// Statically scanned by the dev companion to generate the
|
|
4
|
+
// `components.APP_LAYOUTS_CONNECTED_ACCOUNTS_SETTINGS.*` bundle; NOT imported at runtime, so it
|
|
5
|
+
// never ships in the browser bundle. Keep in lock-step with the keys the component reads via
|
|
6
|
+
// `tComponent(APP_LAYOUTS_CONNECTED_ACCOUNTS_SETTINGS, ...)`.
|
|
7
|
+
export const AppLayoutsConnectedAccountsSettingsLabels = [
|
|
8
|
+
{ ref: 'pageTitle', kind: LabelKind.HEADING, purpose: 'Heading for the panel where a person connects their own third-party accounts' },
|
|
9
|
+
{ ref: 'pageDescription', kind: LabelKind.DESCRIPTION, purpose: 'Sub-heading explaining that connecting an account lets this application act as that account on the person’s behalf, and that they can disconnect at any time' },
|
|
10
|
+
{ ref: 'loading', kind: LabelKind.MESSAGE, purpose: 'Shown while the list of connectable providers is being loaded' },
|
|
11
|
+
{ ref: 'empty', kind: LabelKind.MESSAGE, purpose: 'Shown when this application declares no provider a person may connect individually' },
|
|
12
|
+
{ ref: 'connectButton', kind: LabelKind.BUTTON, purpose: 'Button that starts connecting the named third-party account, sending the person to that vendor to grant consent' },
|
|
13
|
+
{ ref: 'connectingButton', kind: LabelKind.BUTTON, purpose: 'Button caption while the authorization URL is being obtained, before the browser leaves for the vendor' },
|
|
14
|
+
{ ref: 'parametersHeading', kind: LabelKind.HEADING, purpose: 'Heading above the inputs a person must answer before connecting, such as which cloud or which directory their account lives in' },
|
|
15
|
+
{ ref: 'parametersDescription', kind: LabelKind.DESCRIPTION, purpose: 'Explains that these answers are facts about the account being connected and that the vendor’s own addresses cannot be built without them' },
|
|
16
|
+
{ ref: 'scopesPrefix', kind: LabelKind.LABEL, purpose: 'Prefix before the list of permissions the connection will ask the vendor for (e.g. "Requests:")' },
|
|
17
|
+
{ ref: 'connectedNotice', kind: LabelKind.MESSAGE, purpose: 'Confirmation shown after returning from a vendor where the account was connected successfully' },
|
|
18
|
+
{ ref: 'declinedNotice', kind: LabelKind.MESSAGE, purpose: 'Shown after returning from a vendor where the person chose not to grant access — a decision, not an error' },
|
|
19
|
+
{ ref: 'failedNotice', kind: LabelKind.MESSAGE, purpose: 'Shown after returning from a vendor when the connection attempt could not be completed and should be started again' },
|
|
20
|
+
{ ref: 'errorGeneric', kind: LabelKind.MESSAGE, purpose: 'Generic error shown when listing connectable providers or starting a connection fails' },
|
|
21
|
+
{ ref: 'errorNotAdmissible', kind: LabelKind.MESSAGE, purpose: 'Shown when this provider does not admit a personally-owned connection, so nobody may connect it individually' },
|
|
22
|
+
{ ref: 'errorForbidden', kind: LabelKind.MESSAGE, purpose: 'Shown when the person is not allowed to connect an account on behalf of the named owner' },
|
|
23
|
+
{ ref: 'disconnectNotice', kind: LabelKind.MESSAGE, purpose: 'Standing note explaining that removing a connection deletes this application\u2019s copy of the authorization but does not withdraw it at the provider, and that the person should also remove the application in the provider\u2019s own connected-applications settings if they want access ended there' },
|
|
24
|
+
];
|
|
25
|
+
registerComponentLabels(FrontendComponentType.APP_LAYOUTS_CONNECTED_ACCOUNTS_SETTINGS, AppLayoutsConnectedAccountsSettingsLabels);
|
|
26
|
+
//# sourceMappingURL=AppPage_ConnectedAccountsSettings.labels.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AppPage_ConnectedAccountsSettings.labels.js","sourceRoot":"","sources":["../../../../src/components/settings/AppPage_ConnectedAccountsSettings.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,SAAS,EAET,uBAAuB,GACxB,MAAM,qCAAqC,CAAC;AAE7C,iGAAiG;AACjG,0DAA0D;AAC1D,gGAAgG;AAChG,6FAA6F;AAC7F,8DAA8D;AAC9D,MAAM,CAAC,MAAM,yCAAyC,GAA0B;IAC9E,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,8EAA8E,EAAE;IACtI,EAAE,GAAG,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,8JAA8J,EAAE;IAChO,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,+DAA+D,EAAE;IACrH,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,oFAAoF,EAAE;IACxI,EAAE,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,iHAAiH,EAAE;IAC5K,EAAE,GAAG,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,wGAAwG,EAAE;IACtK,EAAE,GAAG,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,gIAAgI,EAAE;IAChM,EAAE,GAAG,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,0IAA0I,EAAE;IAClN,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,iGAAiG,EAAE;IAC1J,EAAE,GAAG,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,+FAA+F,EAAE;IAC7J,EAAE,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,2GAA2G,EAAE;IACxK,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,oHAAoH,EAAE;IAC/K,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,uFAAuF,EAAE;IAClJ,EAAE,GAAG,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,8GAA8G,EAAE;IAC/K,EAAE,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,yFAAyF,EAAE;IACtJ,EAAE,GAAG,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,2SAA2S,EAAE;CAC3W,CAAC;AAEF,uBAAuB,CAAC,qBAAqB,CAAC,uCAAuC,EAAE,yCAAyC,CAAC,CAAC","sourcesContent":["import {\n FrontendComponentType,\n LabelKind,\n type LabellingUnitaryDef,\n registerComponentLabels,\n} from '@wildo-ai/presets-components-models';\n\n// Companion-only label metadata for the Connected-accounts panel: keys + kind + per-key purpose.\n// Statically scanned by the dev companion to generate the\n// `components.APP_LAYOUTS_CONNECTED_ACCOUNTS_SETTINGS.*` bundle; NOT imported at runtime, so it\n// never ships in the browser bundle. Keep in lock-step with the keys the component reads via\n// `tComponent(APP_LAYOUTS_CONNECTED_ACCOUNTS_SETTINGS, ...)`.\nexport const AppLayoutsConnectedAccountsSettingsLabels: LabellingUnitaryDef[] = [\n { ref: 'pageTitle', kind: LabelKind.HEADING, purpose: 'Heading for the panel where a person connects their own third-party accounts' },\n { ref: 'pageDescription', kind: LabelKind.DESCRIPTION, purpose: 'Sub-heading explaining that connecting an account lets this application act as that account on the person’s behalf, and that they can disconnect at any time' },\n { ref: 'loading', kind: LabelKind.MESSAGE, purpose: 'Shown while the list of connectable providers is being loaded' },\n { ref: 'empty', kind: LabelKind.MESSAGE, purpose: 'Shown when this application declares no provider a person may connect individually' },\n { ref: 'connectButton', kind: LabelKind.BUTTON, purpose: 'Button that starts connecting the named third-party account, sending the person to that vendor to grant consent' },\n { ref: 'connectingButton', kind: LabelKind.BUTTON, purpose: 'Button caption while the authorization URL is being obtained, before the browser leaves for the vendor' },\n { ref: 'parametersHeading', kind: LabelKind.HEADING, purpose: 'Heading above the inputs a person must answer before connecting, such as which cloud or which directory their account lives in' },\n { ref: 'parametersDescription', kind: LabelKind.DESCRIPTION, purpose: 'Explains that these answers are facts about the account being connected and that the vendor’s own addresses cannot be built without them' },\n { ref: 'scopesPrefix', kind: LabelKind.LABEL, purpose: 'Prefix before the list of permissions the connection will ask the vendor for (e.g. \"Requests:\")' },\n { ref: 'connectedNotice', kind: LabelKind.MESSAGE, purpose: 'Confirmation shown after returning from a vendor where the account was connected successfully' },\n { ref: 'declinedNotice', kind: LabelKind.MESSAGE, purpose: 'Shown after returning from a vendor where the person chose not to grant access — a decision, not an error' },\n { ref: 'failedNotice', kind: LabelKind.MESSAGE, purpose: 'Shown after returning from a vendor when the connection attempt could not be completed and should be started again' },\n { ref: 'errorGeneric', kind: LabelKind.MESSAGE, purpose: 'Generic error shown when listing connectable providers or starting a connection fails' },\n { ref: 'errorNotAdmissible', kind: LabelKind.MESSAGE, purpose: 'Shown when this provider does not admit a personally-owned connection, so nobody may connect it individually' },\n { ref: 'errorForbidden', kind: LabelKind.MESSAGE, purpose: 'Shown when the person is not allowed to connect an account on behalf of the named owner' },\n { ref: 'disconnectNotice', kind: LabelKind.MESSAGE, purpose: 'Standing note explaining that removing a connection deletes this application\\u2019s copy of the authorization but does not withdraw it at the provider, and that the person should also remove the application in the provider\\u2019s own connected-applications settings if they want access ended there' },\n];\n\nregisterComponentLabels(FrontendComponentType.APP_LAYOUTS_CONNECTED_ACCOUNTS_SETTINGS, AppLayoutsConnectedAccountsSettingsLabels);\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppPage_InvitationsSettings.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"AppPage_InvitationsSettings.d.ts","sourceRoot":"","sources":["../../../../src/components/settings/AppPage_InvitationsSettings.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAA2C,MAAM,OAAO,CAAC;AAchE,eAAO,MAAM,2BAA2B,EAAE,KAAK,CAAC,EA4J/C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppPage_InvitationsSettings.js","sourceRoot":"","sources":["../../../../../src/components/settings/AppPage_InvitationsSettings.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * AppPage_InvitationsSettings — the Settings Hub \"Invitations\" panel (Approach P).\n *\n * A bespoke `ENGINE_PANEL` (not a resource surface) that lets a signed-in user act on\n * THEIR OWN pending organization invitations in-app, without opening the emailed link.\n * It lists the caller's pending invitations — their own INVITED membership rows, resolved\n * server-side by userId-ownership via `GET /auth/invitations/mine` — and offers Accept /\n * Decline per row (Accept flips the row to ACTIVE; Decline deletes it) — calling the\n * authenticated `acceptMyInvitation` / `rejectMyInvitation` endpoints (no token, no new\n * session). On accept the caller becomes a member, so the panel refreshes the user's\n * organizations via `useUserOrgs().refreshOrganizations()` and re-lists.\n *\n * i18n follows the framework convention (same shape as `AppPage_AppearanceSettings`):\n * `useI18n({ component })` requests this component's label namespace, the panel gates\n * rendering on `isReady` so it never flashes raw key paths, and a thin `t(key)` reads\n * each label. Copy is owned by the labelling pipeline (sibling `.labels.ts`) — no\n * hardcoded fallback strings here.\n */\nimport React, { useCallback, useEffect, useState } from 'react';\nimport { ButtonSize, FrontendComponentType } from '@wildo-ai/presets-components-models';\nimport { isWildoBackendError } from '@wildo-ai/saas-models';\nimport { Card, CardContent, CardHeader, CardTitle } from '~wildo-frontend-lib/components/sections/card';\nimport { Button, ButtonVariants_Variant } from '~wildo-frontend-lib/components/actions/button';\nimport { Text } from '~wildo-frontend-lib/components/typography/text';\nimport { Alert, AlertDescription } from '~wildo-frontend-lib/components/overlays/containers/alert';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { useUserOrgs } from '~wildo-frontend-lib/core/security/useUserOrgs';\nimport {\n getManualCallsHttpClient,\n type MyPendingInvitationView,\n} from '~wildo-frontend-lib/core/requests/wildo-http-client-manual-calls.frontend.service';\n\nexport const AppPage_InvitationsSettings: React.FC = () => {\n const { tComponent, isReady } = useI18n({ component: FrontendComponentType.APP_LAYOUTS_INVITATIONS_SETTINGS });\n const { refreshOrganizations } = useUserOrgs();\n\n const t = useCallback(\n (key: string) => tComponent(FrontendComponentType.APP_LAYOUTS_INVITATIONS_SETTINGS, key),\n [tComponent],\n );\n\n const [invitations, setInvitations] = useState<MyPendingInvitationView[]>([]);\n const [loading, setLoading] = useState(true);\n const [busyId, setBusyId] = useState<string | null>(null);\n const [error, setError] = useState<string | null>(null);\n const [successMsg, setSuccessMsg] = useState<string | null>(null);\n\n const refresh = useCallback(async () => {\n setLoading(true);\n setError(null);\n try {\n const res = await getManualCallsHttpClient().listMyPendingInvitations();\n setInvitations(res.invitations ?? []);\n } catch (e: unknown) {\n if (isWildoBackendError(e)) throw e;\n setError(t('errorGeneric'));\n } finally {\n setLoading(false);\n }\n }, [t]);\n\n useEffect(() => {\n refresh();\n }, [refresh]);\n\n // Auto-dismiss the success banner (same convention as AppPage_SecuritySettings).\n useEffect(() => {\n if (!successMsg) return;\n const timer = setTimeout(() => setSuccessMsg(null), 5000);\n return () => clearTimeout(timer);\n }, [successMsg]);\n\n const handleAccept = useCallback(\n async (membershipId: string) => {\n setBusyId(membershipId);\n setError(null);\n try {\n await getManualCallsHttpClient().acceptMyInvitation(membershipId);\n // The caller just became a member — refresh their org list before re-listing.\n await refreshOrganizations();\n setSuccessMsg(t('acceptSuccess'));\n await refresh();\n } catch (e: unknown) {\n if (isWildoBackendError(e)) throw e;\n setError(t('errorGeneric'));\n } finally {\n setBusyId(null);\n }\n },\n [refresh, refreshOrganizations, t],\n );\n\n const handleReject = useCallback(\n async (membershipId: string) => {\n setBusyId(membershipId);\n setError(null);\n try {\n await getManualCallsHttpClient().rejectMyInvitation(membershipId);\n setSuccessMsg(t('rejectSuccess'));\n await refresh();\n } catch (e: unknown) {\n if (isWildoBackendError(e)) throw e;\n setError(t('errorGeneric'));\n } finally {\n setBusyId(null);\n }\n },\n [refresh, t],\n );\n\n // Gate on label readiness so the panel never flashes raw key paths (Appearance convention).\n if (!isReady) return null;\n\n return (\n <div className=\"flex flex-col gap-section\">\n <div className=\"flex flex-col gap-item-xs\">\n {/* `h3`, not `h2`: the Settings Hub header owns the `h2` for this dialog,\n so a panel heading is one level below it. */}\n <h3 className=\"text-base font-semibold tracking-tight\">{t('pageTitle')}</h3>\n <Text className=\"text-sm text-muted-foreground\">{t('pageDescription')}</Text>\n </div>\n\n {error && (\n <Alert variant=\"destructive\">\n <AlertDescription>{error}</AlertDescription>\n </Alert>\n )}\n {successMsg && (\n <Alert>\n <AlertDescription>{successMsg}</AlertDescription>\n </Alert>\n )}\n\n <Card>\n <CardHeader>\n <CardTitle>{t('listHeading')}</CardTitle>\n </CardHeader>\n <CardContent>\n {loading ? (\n <Text className=\"text-sm text-muted-foreground\">{t('loading')}</Text>\n ) : invitations.length === 0 ? (\n <Text className=\"text-sm text-muted-foreground\">{t('empty')}</Text>\n ) : (\n /* Flush divided list — same settings-list geometry as the\n SETTINGS_ROW field chrome (label/meta inline-start, actions\n inline-end, `py-group` rhythm, `divide-y` hairline dividers) so\n this bespoke action panel reads as the same family as the\n decorator-driven settings surfaces. (Was per-row bordered boxes\n with `space-y-2`, a visually divergent pattern.) */\n <ul className=\"divide-y divide-border\">\n {invitations.map((invitation) => (\n <li\n key={invitation.membershipId}\n className=\"flex items-center justify-between gap-section py-group\"\n >\n <div className=\"flex min-w-0 flex-col gap-item-xs\">\n <Text className=\"font-medium\">{invitation.organizationName ?? t('unknownOrganization')}</Text>\n {invitation.roles.length > 0 && (\n <Text className=\"text-xs text-muted-foreground\">\n {t('rolesPrefix')} {invitation.roles.join(', ')}\n </Text>\n )}\n </div>\n <div className=\"flex shrink-0 gap-element\">\n <Button\n variant={ButtonVariants_Variant.OUTLINE}\n size={ButtonSize.SM}\n disabled={busyId === invitation.membershipId}\n onClick={() => handleReject(invitation.membershipId)}\n >\n {t('rejectButton')}\n </Button>\n <Button\n size={ButtonSize.SM}\n disabled={busyId === invitation.membershipId}\n onClick={() => handleAccept(invitation.membershipId)}\n >\n {t('acceptButton')}\n </Button>\n </div>\n </li>\n ))}\n </ul>\n )}\n </CardContent>\n </Card>\n </div>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"AppPage_InvitationsSettings.js","sourceRoot":"","sources":["../../../../src/components/settings/AppPage_InvitationsSettings.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * AppPage_InvitationsSettings — the Settings Hub \"Invitations\" panel (Approach P).\n *\n * A bespoke `ENGINE_PANEL` (not a resource surface) that lets a signed-in user act on\n * THEIR OWN pending organization invitations in-app, without opening the emailed link.\n * It lists the caller's pending invitations — their own INVITED membership rows, resolved\n * server-side by userId-ownership via `GET /auth/invitations/mine` — and offers Accept /\n * Decline per row (Accept flips the row to ACTIVE; Decline deletes it) — calling the\n * authenticated `acceptMyInvitation` / `rejectMyInvitation` endpoints (no token, no new\n * session). On accept the caller becomes a member, so the panel refreshes the user's\n * organizations via `useUserOrgs().refreshOrganizations()` and re-lists.\n *\n * i18n follows the framework convention (same shape as `AppPage_AppearanceSettings`):\n * `useI18n({ component })` requests this component's label namespace, the panel gates\n * rendering on `isReady` so it never flashes raw key paths, and a thin `t(key)` reads\n * each label. Copy is owned by the labelling pipeline (sibling `.labels.ts`) — no\n * hardcoded fallback strings here.\n */\nimport React, { useCallback, useEffect, useState } from 'react';\nimport { ButtonSize, FrontendComponentType } from '@wildo-ai/presets-components-models';\nimport { isWildoBackendError } from '@wildo-ai/saas-models';\nimport { Card, CardContent, CardHeader, CardTitle } from '~wildo-frontend-lib/components/sections/card';\nimport { Button, ButtonVariants_Variant } from '~wildo-frontend-lib/components/actions/button';\nimport { Text } from '~wildo-frontend-lib/components/typography/text';\nimport { Alert, AlertDescription } from '~wildo-frontend-lib/components/overlays/containers/alert';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { useUserOrgs } from '~wildo-frontend-lib/core/security/useUserOrgs';\nimport {\n getManualCallsHttpClient,\n type MyPendingInvitationView,\n} from '~wildo-frontend-lib/core/requests/wildo-http-client-manual-calls.frontend.service';\n\nexport const AppPage_InvitationsSettings: React.FC = () => {\n const { tComponent, isReady } = useI18n({ component: FrontendComponentType.APP_LAYOUTS_INVITATIONS_SETTINGS });\n const { refreshOrganizations } = useUserOrgs();\n\n const t = useCallback(\n (key: string) => tComponent(FrontendComponentType.APP_LAYOUTS_INVITATIONS_SETTINGS, key),\n [tComponent],\n );\n\n const [invitations, setInvitations] = useState<MyPendingInvitationView[]>([]);\n const [loading, setLoading] = useState(true);\n const [busyId, setBusyId] = useState<string | null>(null);\n const [error, setError] = useState<string | null>(null);\n const [successMsg, setSuccessMsg] = useState<string | null>(null);\n\n const refresh = useCallback(async () => {\n setLoading(true);\n setError(null);\n try {\n const res = await getManualCallsHttpClient().listMyPendingInvitations();\n setInvitations(res.invitations ?? []);\n } catch (e: unknown) {\n if (isWildoBackendError(e)) throw e;\n setError(t('errorGeneric'));\n } finally {\n setLoading(false);\n }\n }, [t]);\n\n useEffect(() => {\n refresh();\n }, [refresh]);\n\n // Auto-dismiss the success banner (same convention as AppPage_SecuritySettings).\n useEffect(() => {\n if (!successMsg) return;\n const timer = setTimeout(() => setSuccessMsg(null), 5000);\n return () => clearTimeout(timer);\n }, [successMsg]);\n\n const handleAccept = useCallback(\n async (membershipId: string) => {\n setBusyId(membershipId);\n setError(null);\n try {\n await getManualCallsHttpClient().acceptMyInvitation(membershipId);\n // The caller just became a member — refresh their org list before re-listing.\n await refreshOrganizations();\n setSuccessMsg(t('acceptSuccess'));\n await refresh();\n } catch (e: unknown) {\n if (isWildoBackendError(e)) throw e;\n setError(t('errorGeneric'));\n } finally {\n setBusyId(null);\n }\n },\n [refresh, refreshOrganizations, t],\n );\n\n const handleReject = useCallback(\n async (membershipId: string) => {\n setBusyId(membershipId);\n setError(null);\n try {\n await getManualCallsHttpClient().rejectMyInvitation(membershipId);\n setSuccessMsg(t('rejectSuccess'));\n await refresh();\n } catch (e: unknown) {\n if (isWildoBackendError(e)) throw e;\n setError(t('errorGeneric'));\n } finally {\n setBusyId(null);\n }\n },\n [refresh, t],\n );\n\n // Gate on label readiness so the panel never flashes raw key paths (Appearance convention).\n if (!isReady) return null;\n\n return (\n <div className=\"flex flex-col gap-section\">\n <div className=\"flex flex-col gap-item-xs\">\n {/* `h3`, not `h2`: the Settings Hub header owns the `h2` for this dialog,\n so a panel heading is one level below it. */}\n <h3 className=\"text-base font-semibold tracking-tight\">{t('pageTitle')}</h3>\n <Text className=\"text-sm text-muted-foreground\">{t('pageDescription')}</Text>\n </div>\n\n {error && (\n <Alert variant=\"destructive\">\n <AlertDescription>{error}</AlertDescription>\n </Alert>\n )}\n {successMsg && (\n <Alert>\n <AlertDescription>{successMsg}</AlertDescription>\n </Alert>\n )}\n\n <Card>\n <CardHeader>\n <CardTitle>{t('listHeading')}</CardTitle>\n </CardHeader>\n <CardContent>\n {loading ? (\n <Text className=\"text-sm text-muted-foreground\">{t('loading')}</Text>\n ) : invitations.length === 0 ? (\n <Text className=\"text-sm text-muted-foreground\">{t('empty')}</Text>\n ) : (\n /* Flush divided list — same settings-list geometry as the\n SETTINGS_ROW field chrome (label/meta inline-start, actions\n inline-end, `py-group` rhythm, `divide-y` hairline dividers) so\n this bespoke action panel reads as the same family as the\n decorator-driven settings surfaces. (Was per-row bordered boxes\n with `space-y-2`, a visually divergent pattern.) */\n <ul className=\"divide-y divide-border\">\n {invitations.map((invitation) => (\n <li\n key={invitation.membershipId}\n className=\"flex items-center justify-between gap-section py-group\"\n >\n <div className=\"flex min-w-0 flex-col gap-item-xs\">\n <Text className=\"font-medium\">{invitation.organizationName ?? t('unknownOrganization')}</Text>\n {invitation.roles.length > 0 && (\n <Text className=\"text-xs text-muted-foreground\">\n {t('rolesPrefix')} {invitation.roles.join(', ')}\n </Text>\n )}\n </div>\n <div className=\"flex shrink-0 gap-element\">\n <Button\n variant={ButtonVariants_Variant.OUTLINE}\n size={ButtonSize.SM}\n disabled={busyId === invitation.membershipId}\n onClick={() => handleReject(invitation.membershipId)}\n >\n {t('rejectButton')}\n </Button>\n <Button\n size={ButtonSize.SM}\n disabled={busyId === invitation.membershipId}\n onClick={() => handleAccept(invitation.membershipId)}\n >\n {t('acceptButton')}\n </Button>\n </div>\n </li>\n ))}\n </ul>\n )}\n </CardContent>\n </Card>\n </div>\n );\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppPage_InvitationsSettings.labels.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"AppPage_InvitationsSettings.labels.d.ts","sourceRoot":"","sources":["../../../../src/components/settings/AppPage_InvitationsSettings.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,mBAAmB,EAEzB,MAAM,qCAAqC,CAAC;AAO7C,eAAO,MAAM,mCAAmC,EAAE,mBAAmB,EAapE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppPage_InvitationsSettings.labels.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"AppPage_InvitationsSettings.labels.js","sourceRoot":"","sources":["../../../../src/components/settings/AppPage_InvitationsSettings.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,SAAS,EAET,uBAAuB,GACxB,MAAM,qCAAqC,CAAC;AAE7C,gFAAgF;AAChF,6EAA6E;AAC7E,mFAAmF;AACnF,+EAA+E;AAC/E,2EAA2E;AAC3E,MAAM,CAAC,MAAM,mCAAmC,GAA0B;IACxE,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,qFAAqF,EAAE;IAC7I,EAAE,GAAG,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,mGAAmG,EAAE;IACrK,EAAE,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,qDAAqD,EAAE;IAC/G,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,sDAAsD,EAAE;IAC5G,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,gDAAgD,EAAE;IACpG,EAAE,GAAG,EAAE,qBAAqB,EAAE,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,gFAAgF,EAAE;IAChJ,EAAE,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,uEAAuE,EAAE;IAC/H,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,+DAA+D,EAAE;IACzH,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,qCAAqC,EAAE;IAC/F,EAAE,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,yDAAyD,EAAE;IACrH,EAAE,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,0DAA0D,EAAE;IACtH,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,0EAA0E,EAAE;CACtI,CAAC;AAEF,uBAAuB,CAAC,qBAAqB,CAAC,gCAAgC,EAAE,mCAAmC,CAAC,CAAC","sourcesContent":["import {\n FrontendComponentType,\n LabelKind,\n type LabellingUnitaryDef,\n registerComponentLabels,\n} from '@wildo-ai/presets-components-models';\n\n// Companion-only label metadata for the Invitations settings panel: keys + kind\n// + per-key purpose. Statically scanned by the dev companion to generate the\n// `components.APP_LAYOUTS_INVITATIONS_SETTINGS.*` bundle; NOT imported at runtime,\n// so it never ships in the browser bundle. Keep in lock-step with the keys the\n// component reads via `tComponent(APP_LAYOUTS_INVITATIONS_SETTINGS, ...)`.\nexport const AppLayoutsInvitationsSettingsLabels: LabellingUnitaryDef[] = [\n { ref: 'pageTitle', kind: LabelKind.HEADING, purpose: 'Heading for the Invitations settings panel (the user’s own pending org invitations)' },\n { ref: 'pageDescription', kind: LabelKind.DESCRIPTION, purpose: 'Sub-heading explaining the panel lists organizations that invited this user, to accept or decline' },\n { ref: 'listHeading', kind: LabelKind.HEADING, purpose: 'Section title above the list of pending invitations' },\n { ref: 'loading', kind: LabelKind.MESSAGE, purpose: 'Shown while the pending invitations are being loaded' },\n { ref: 'empty', kind: LabelKind.MESSAGE, purpose: 'Shown when the user has no pending invitations' },\n { ref: 'unknownOrganization', kind: LabelKind.LABEL, purpose: 'Fallback label for an invitation whose organization name could not be resolved' },\n { ref: 'rolesPrefix', kind: LabelKind.LABEL, purpose: 'Prefix before the list of roles the invitation grants (e.g. \"Roles:\")' },\n { ref: 'acceptButton', kind: LabelKind.BUTTON, purpose: 'Button that accepts the invitation and joins the organization' },\n { ref: 'rejectButton', kind: LabelKind.BUTTON, purpose: 'Button that declines the invitation' },\n { ref: 'acceptSuccess', kind: LabelKind.MESSAGE, purpose: 'Confirmation shown after the user accepts an invitation' },\n { ref: 'rejectSuccess', kind: LabelKind.MESSAGE, purpose: 'Confirmation shown after the user declines an invitation' },\n { ref: 'errorGeneric', kind: LabelKind.MESSAGE, purpose: 'Generic error shown when listing/accepting/declining an invitation fails' },\n];\n\nregisterComponentLabels(FrontendComponentType.APP_LAYOUTS_INVITATIONS_SETTINGS, AppLayoutsInvitationsSettingsLabels);\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingsHub.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"SettingsHub.d.ts","sourceRoot":"","sources":["../../../../src/components/settings/SettingsHub.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,KAAoD,MAAM,OAAO,CAAC;AA+IzE,MAAM,WAAW,gBAAgB;IAC/B,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,WAAW,CAAC,EAAE,UAAU,EAAE,EAAE,gBAAgB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CA+F/E"}
|
|
@@ -23,6 +23,7 @@ import { AppPage_SecuritySettings } from '../../components/auth/admin-config/App
|
|
|
23
23
|
import { AppPage_AppearanceSettings } from './AppPage_AppearanceSettings.js';
|
|
24
24
|
import { AppPage_InvitationsSettings } from './AppPage_InvitationsSettings.js';
|
|
25
25
|
import { AppPage_BillingSettings } from './AppPage_BillingSettings.js';
|
|
26
|
+
import { AppPage_ConnectedAccountsSettings } from './AppPage_ConnectedAccountsSettings.js';
|
|
26
27
|
import { ComponentRegistryService } from '../../core/components-registry/component-registry.frontend.service.js';
|
|
27
28
|
import { ComponentNotInjected } from '../../core/components-registry/ComponentNotInjected.js';
|
|
28
29
|
import { SettingsPanelRef, SettingsSectionTargetKind } from '../../core/config/settings-hub.frontend.schemas.js';
|
|
@@ -64,6 +65,8 @@ function SettingsEnginePanel({ panelRef }) {
|
|
|
64
65
|
return _jsx(AppPage_InvitationsSettings, {});
|
|
65
66
|
case SettingsPanelRef.BILLING:
|
|
66
67
|
return _jsx(AppPage_BillingSettings, {});
|
|
68
|
+
case SettingsPanelRef.CONNECTED_ACCOUNTS:
|
|
69
|
+
return _jsx(AppPage_ConnectedAccountsSettings, {});
|
|
67
70
|
}
|
|
68
71
|
}
|
|
69
72
|
function SettingsTargetRenderer({ target, resolveSubTabLabel, }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingsHub.js","sourceRoot":"","sources":["../../../../../src/components/settings/SettingsHub.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * SettingsHub — the unified settings surface.\n *\n * Renders the declarative `ResolvedSettingsHubConfig` as a vertical `Tabs` rail beside a\n * content panel. Categories become labelled groups + separators rendered INSIDE\n * the `TabsList` (per the BetterStack reference) — the `Tabs` primitive stays the\n * section mechanism, so section state, keyboard roving, and `value`/\n * `onValueChange` all live on the primitive rather than a hand-rolled rail. A\n * section's `target` resolves to a framework panel, an auto-rendered resource\n * surface, a custom component, or a set of horizontal sub-tabs.\n *\n * Mounted by `NavigationContentRenderer` for `NavigationContentType.SETTINGS_HUB`\n * (always in the overlay zone). The `sectionRef` prop pre-selects the open\n * section and is kept in sync so URL-driven section changes re-select the rail.\n */\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { DisplayDirection } from '@wildo-ai/zod-decorators';\nimport { CorePresetNames, FrontendComponentType } from '@wildo-ai/presets-components-models';\nimport { Tabs, TabsList, TabsTrigger, TabsContent } from '~wildo-frontend-lib/components/sections/tabs';\nimport { Separator } from '~wildo-frontend-lib/components/layout/separator';\nimport { AppPage_SecuritySettings } from '~wildo-frontend-lib/components/auth/admin-config/AppPage_SecuritySettings';\nimport { AppPage_AppearanceSettings } from './AppPage_AppearanceSettings';\nimport { AppPage_InvitationsSettings } from './AppPage_InvitationsSettings';\nimport { AppPage_BillingSettings } from './AppPage_BillingSettings';\nimport { ComponentRegistryService } from '~wildo-frontend-lib/core/components-registry/component-registry.frontend.service';\nimport { ComponentNotInjected } from '~wildo-frontend-lib/core/components-registry/ComponentNotInjected';\nimport { SettingsPanelRef, SettingsSectionTargetKind } from '~wildo-frontend-lib/core/config/settings-hub.frontend.schemas';\nimport type {\n ResolvedSettingsHubConfig,\n SettingsCategory,\n SettingsSection,\n SettingsSectionTarget,\n SettingsSubTabsTarget,\n} from '~wildo-frontend-lib/core/config/settings-hub.frontend.schemas';\nimport { useVisibleSettingsHubConfig } from '~wildo-frontend-lib/core/config/useVisibleSettingsHubConfig';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { FeatureGate } from '~wildo-frontend-lib/core/features/FeatureGate';\nimport { SettingsResourceOperationPanel } from './SettingsResourceOperationPanel';\n\n// ──────────────────────────────────────────────────────────────\n// Config helpers\n// ──────────────────────────────────────────────────────────────\n\nfunction orderedCategories(config: ResolvedSettingsHubConfig): SettingsCategory[] {\n return [...config.categories].sort((a, b) => (a.order ?? 0) - (b.order ?? 0));\n}\n\nfunction sectionsForCategory(config: ResolvedSettingsHubConfig, categoryRef: string): SettingsSection[] {\n return config.sections\n .filter(section => section.categoryRef === categoryRef)\n .sort((a, b) => (a.order ?? 0) - (b.order ?? 0));\n}\n\n/** Resolve the section to open: requested → config default → first section. */\nfunction resolveActiveSection(config: ResolvedSettingsHubConfig, sectionRef?: string): string | undefined {\n if (sectionRef && config.sections.some(section => section.ref === sectionRef)) return sectionRef;\n if (config.defaultSectionRef && config.sections.some(section => section.ref === config.defaultSectionRef)) {\n return config.defaultSectionRef;\n }\n return config.sections[0]?.ref;\n}\n\n// ──────────────────────────────────────────────────────────────\n// Target rendering (function declarations → hoisted for mutual recursion\n// between a SUB_TABS target and its leaf targets)\n// ──────────────────────────────────────────────────────────────\n\nfunction SettingsEnginePanel({ panelRef }: { panelRef: SettingsPanelRef }): React.JSX.Element {\n switch (panelRef) {\n case SettingsPanelRef.SECURITY:\n return <AppPage_SecuritySettings />;\n case SettingsPanelRef.APPEARANCE:\n return <AppPage_AppearanceSettings />;\n case SettingsPanelRef.INVITATIONS:\n return <AppPage_InvitationsSettings />;\n case SettingsPanelRef.BILLING:\n return <AppPage_BillingSettings />;\n }\n}\n\n/** Resolves a display label for a section/sub-tab ref, falling back to the authored label. */\ntype SettingsLabelResolver = (ref: string, fallbackLabel: string) => string;\n\nfunction SettingsTargetRenderer({\n target,\n resolveSubTabLabel,\n}: {\n target: SettingsSectionTarget;\n resolveSubTabLabel: SettingsLabelResolver;\n}): React.JSX.Element {\n switch (target.kind) {\n case SettingsSectionTargetKind.ENGINE_PANEL:\n return <SettingsEnginePanel panelRef={target.panelRef} />;\n case SettingsSectionTargetKind.CUSTOM_COMPONENT: {\n const CustomComponent = ComponentRegistryService.resolve(\n target.componentRef as unknown as FrontendComponentType,\n CorePresetNames.DEFAULT,\n );\n if (!CustomComponent) {\n return <ComponentNotInjected componentType={target.componentRef} componentName={target.componentRef} />;\n }\n return (\n <React.Suspense fallback={<div className=\"h-8 animate-pulse motion-reduce:animate-none bg-muted rounded\" aria-hidden=\"true\" />}>\n <CustomComponent />\n </React.Suspense>\n );\n }\n case SettingsSectionTargetKind.RESOURCE_OPERATION:\n return (\n <SettingsResourceOperationPanel\n resourceType={target.resourceType}\n operation={target.operation}\n operationVariant={target.operationVariant}\n />\n );\n case SettingsSectionTargetKind.SUB_TABS:\n return <SettingsSubTabs target={target} resolveSubTabLabel={resolveSubTabLabel} />;\n }\n}\n\nfunction SettingsSubTabs({\n target,\n resolveSubTabLabel,\n}: {\n target: SettingsSubTabsTarget;\n resolveSubTabLabel: SettingsLabelResolver;\n}): React.JSX.Element | null {\n const [active, setActive] = useState<string | undefined>(target.subTabs[0]?.ref);\n if (target.subTabs.length === 0) return null;\n return (\n <Tabs value={active} onValueChange={setActive}>\n <TabsList>\n {target.subTabs.map(subTab => (\n // `data-ref` is the i18n-independent automation hook (labels are\n // runtime-translated; e2e drives must never key off them).\n <TabsTrigger key={subTab.ref} value={subTab.ref} data-ref={subTab.ref}>\n {resolveSubTabLabel(subTab.ref, subTab.label)}\n </TabsTrigger>\n ))}\n </TabsList>\n {target.subTabs.map(subTab => (\n <TabsContent key={subTab.ref} value={subTab.ref}>\n {/* Leaf targets only (schema forbids nested sub-tabs); the resolver is\n still threaded to satisfy the shared renderer signature. */}\n <SettingsTargetRenderer target={subTab.target} resolveSubTabLabel={resolveSubTabLabel} />\n </TabsContent>\n ))}\n </Tabs>\n );\n}\n\n// ──────────────────────────────────────────────────────────────\n// Hub\n// ──────────────────────────────────────────────────────────────\n\nexport interface SettingsHubProps {\n /** Section to pre-open; falls back to the config default. */\n sectionRef?: string;\n}\n\nexport function SettingsHub({ sectionRef }: SettingsHubProps): React.JSX.Element {\n const config = useVisibleSettingsHubConfig();\n const categories = useMemo(() => orderedCategories(config), [config]);\n const [active, setActive] = useState<string | undefined>(() => resolveActiveSection(config, sectionRef));\n\n const { tComponent, tSettingsHubCategory, tSettingsHubSection, isReady } = useI18n({\n component: FrontendComponentType.APP_LAYOUTS_SETTINGS_HUB,\n });\n // Hub chrome labels (title, rail aria-label) read from the scoped component\n // namespace. Copy is owned by the labelling pipeline (declared in the sibling\n // `.labels.ts`), so there are deliberately no inline fallback strings — the\n // hub gates on `isReady` below, the same convention as the panels it hosts\n // (`AppPage_SecuritySettings` / `AppPage_AppearanceSettings`). The dynamic\n // category/section labels keep their config-authored `fallbackLabel` (the\n // required contract of `tSettingsHubCategory` / `tSettingsHubSection`).\n const t = useCallback(\n (key: string) => tComponent(FrontendComponentType.APP_LAYOUTS_SETTINGS_HUB, key),\n [tComponent],\n );\n\n // Keep the rail in sync with URL-driven section changes (deep-link / browser\n // nav). setState bails out on an unchanged value, so this cannot loop.\n useEffect(() => {\n const next = resolveActiveSection(config, sectionRef);\n if (next) setActive(next);\n }, [config, sectionRef]);\n\n // Gate on label readiness so the hub chrome never flashes raw key paths —\n // copy is pipeline-owned with no inline fallback, matching the hosted panels.\n if (!isReady) return null;\n\n return (\n // `min-w-0` is REQUIRED: this is the grid item of the (fixed-width) dialog surface.\n // Without it the item keeps its default `min-width: auto` and cannot shrink below its\n // content's min-content width — a wide field row (e.g. a file card with a long\n // filename, or a text input) then pushes the whole two-pane body past the dialog edge,\n // and the dialog's `overflow-x: hidden` clips the right side of every field. `min-w-0`\n // lets the item fit the track so the content pane (and its form) reflow within it.\n <div className=\"flex h-full min-h-0 flex-col min-w-0\">\n <header className=\"flex h-14 shrink-0 items-center border-b px-card-lg\">\n <h2 className=\"text-base font-semibold tracking-tight\">{t('title')}</h2>\n </header>\n <Tabs\n orientation={DisplayDirection.VERTICAL}\n value={active}\n onValueChange={setActive}\n className=\"flex min-h-0 flex-1\"\n >\n <TabsList\n aria-label={t('sectionsNavLabel')}\n className=\"w-60 shrink-0 overflow-y-auto border-e px-card-sm py-card\"\n >\n {categories.map((category, index) => {\n const sections = sectionsForCategory(config, category.ref);\n if (sections.length === 0) return null;\n return (\n <React.Fragment key={category.ref}>\n {index > 0 && <Separator className=\"my-item\" />}\n <div\n role=\"presentation\"\n className=\"px-card-sm py-card-sm text-xs font-medium uppercase tracking-wider text-muted-foreground\"\n >\n {tSettingsHubCategory(category.ref, category.label)}\n </div>\n {sections.map(section => (\n // `data-ref` = i18n-independent automation hook (see sub-tabs above).\n <TabsTrigger key={section.ref} value={section.ref} data-ref={section.ref}>\n {tSettingsHubSection(section.ref, section.label)}\n </TabsTrigger>\n ))}\n </React.Fragment>\n );\n })}\n </TabsList>\n <div className=\"min-w-0 flex-1 overflow-y-auto p-card-lg\">\n {config.sections.map(section => (\n <TabsContent key={section.ref} value={section.ref} className=\"mt-0\">\n {section.entitlementFeatureId ? (\n // Section SURVIVED because the app OFFERS this feature\n // (`runtimeAvailability` capability = plan-independent\n // `isFeatureOffered`). Render its body through the entitlement gate:\n // entitled → the config surface; offered-but-not-entitled → the\n // policy-driven upgrade/add-on prompt (never a silent disappearance).\n <FeatureGate featureId={section.entitlementFeatureId}>\n <SettingsTargetRenderer target={section.target} resolveSubTabLabel={tSettingsHubSection} />\n </FeatureGate>\n ) : (\n <SettingsTargetRenderer target={section.target} resolveSubTabLabel={tSettingsHubSection} />\n )}\n </TabsContent>\n ))}\n </div>\n </Tabs>\n </div>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SettingsHub.js","sourceRoot":"","sources":["../../../../src/components/settings/SettingsHub.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * SettingsHub — the unified settings surface.\n *\n * Renders the declarative `ResolvedSettingsHubConfig` as a vertical `Tabs` rail beside a\n * content panel. Categories become labelled groups + separators rendered INSIDE\n * the `TabsList` (per the BetterStack reference) — the `Tabs` primitive stays the\n * section mechanism, so section state, keyboard roving, and `value`/\n * `onValueChange` all live on the primitive rather than a hand-rolled rail. A\n * section's `target` resolves to a framework panel, an auto-rendered resource\n * surface, a custom component, or a set of horizontal sub-tabs.\n *\n * Mounted by `NavigationContentRenderer` for `NavigationContentType.SETTINGS_HUB`\n * (always in the overlay zone). The `sectionRef` prop pre-selects the open\n * section and is kept in sync so URL-driven section changes re-select the rail.\n */\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { DisplayDirection } from '@wildo-ai/zod-decorators';\nimport { CorePresetNames, FrontendComponentType } from '@wildo-ai/presets-components-models';\nimport { Tabs, TabsList, TabsTrigger, TabsContent } from '~wildo-frontend-lib/components/sections/tabs';\nimport { Separator } from '~wildo-frontend-lib/components/layout/separator';\nimport { AppPage_SecuritySettings } from '~wildo-frontend-lib/components/auth/admin-config/AppPage_SecuritySettings';\nimport { AppPage_AppearanceSettings } from './AppPage_AppearanceSettings';\nimport { AppPage_InvitationsSettings } from './AppPage_InvitationsSettings';\nimport { AppPage_BillingSettings } from './AppPage_BillingSettings';\nimport { AppPage_ConnectedAccountsSettings } from './AppPage_ConnectedAccountsSettings';\nimport { ComponentRegistryService } from '~wildo-frontend-lib/core/components-registry/component-registry.frontend.service';\nimport { ComponentNotInjected } from '~wildo-frontend-lib/core/components-registry/ComponentNotInjected';\nimport { SettingsPanelRef, SettingsSectionTargetKind } from '~wildo-frontend-lib/core/config/settings-hub.frontend.schemas';\nimport type {\n ResolvedSettingsHubConfig,\n SettingsCategory,\n SettingsSection,\n SettingsSectionTarget,\n SettingsSubTabsTarget,\n} from '~wildo-frontend-lib/core/config/settings-hub.frontend.schemas';\nimport { useVisibleSettingsHubConfig } from '~wildo-frontend-lib/core/config/useVisibleSettingsHubConfig';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { FeatureGate } from '~wildo-frontend-lib/core/features/FeatureGate';\nimport { SettingsResourceOperationPanel } from './SettingsResourceOperationPanel';\n\n// ──────────────────────────────────────────────────────────────\n// Config helpers\n// ──────────────────────────────────────────────────────────────\n\nfunction orderedCategories(config: ResolvedSettingsHubConfig): SettingsCategory[] {\n return [...config.categories].sort((a, b) => (a.order ?? 0) - (b.order ?? 0));\n}\n\nfunction sectionsForCategory(config: ResolvedSettingsHubConfig, categoryRef: string): SettingsSection[] {\n return config.sections\n .filter(section => section.categoryRef === categoryRef)\n .sort((a, b) => (a.order ?? 0) - (b.order ?? 0));\n}\n\n/** Resolve the section to open: requested → config default → first section. */\nfunction resolveActiveSection(config: ResolvedSettingsHubConfig, sectionRef?: string): string | undefined {\n if (sectionRef && config.sections.some(section => section.ref === sectionRef)) return sectionRef;\n if (config.defaultSectionRef && config.sections.some(section => section.ref === config.defaultSectionRef)) {\n return config.defaultSectionRef;\n }\n return config.sections[0]?.ref;\n}\n\n// ──────────────────────────────────────────────────────────────\n// Target rendering (function declarations → hoisted for mutual recursion\n// between a SUB_TABS target and its leaf targets)\n// ──────────────────────────────────────────────────────────────\n\nfunction SettingsEnginePanel({ panelRef }: { panelRef: SettingsPanelRef }): React.JSX.Element {\n switch (panelRef) {\n case SettingsPanelRef.SECURITY:\n return <AppPage_SecuritySettings />;\n case SettingsPanelRef.APPEARANCE:\n return <AppPage_AppearanceSettings />;\n case SettingsPanelRef.INVITATIONS:\n return <AppPage_InvitationsSettings />;\n case SettingsPanelRef.BILLING:\n return <AppPage_BillingSettings />;\n case SettingsPanelRef.CONNECTED_ACCOUNTS:\n return <AppPage_ConnectedAccountsSettings />;\n }\n}\n\n/** Resolves a display label for a section/sub-tab ref, falling back to the authored label. */\ntype SettingsLabelResolver = (ref: string, fallbackLabel: string) => string;\n\nfunction SettingsTargetRenderer({\n target,\n resolveSubTabLabel,\n}: {\n target: SettingsSectionTarget;\n resolveSubTabLabel: SettingsLabelResolver;\n}): React.JSX.Element {\n switch (target.kind) {\n case SettingsSectionTargetKind.ENGINE_PANEL:\n return <SettingsEnginePanel panelRef={target.panelRef} />;\n case SettingsSectionTargetKind.CUSTOM_COMPONENT: {\n const CustomComponent = ComponentRegistryService.resolve(\n target.componentRef as unknown as FrontendComponentType,\n CorePresetNames.DEFAULT,\n );\n if (!CustomComponent) {\n return <ComponentNotInjected componentType={target.componentRef} componentName={target.componentRef} />;\n }\n return (\n <React.Suspense fallback={<div className=\"h-8 animate-pulse motion-reduce:animate-none bg-muted rounded\" aria-hidden=\"true\" />}>\n <CustomComponent />\n </React.Suspense>\n );\n }\n case SettingsSectionTargetKind.RESOURCE_OPERATION:\n return (\n <SettingsResourceOperationPanel\n resourceType={target.resourceType}\n operation={target.operation}\n operationVariant={target.operationVariant}\n />\n );\n case SettingsSectionTargetKind.SUB_TABS:\n return <SettingsSubTabs target={target} resolveSubTabLabel={resolveSubTabLabel} />;\n }\n}\n\nfunction SettingsSubTabs({\n target,\n resolveSubTabLabel,\n}: {\n target: SettingsSubTabsTarget;\n resolveSubTabLabel: SettingsLabelResolver;\n}): React.JSX.Element | null {\n const [active, setActive] = useState<string | undefined>(target.subTabs[0]?.ref);\n if (target.subTabs.length === 0) return null;\n return (\n <Tabs value={active} onValueChange={setActive}>\n <TabsList>\n {target.subTabs.map(subTab => (\n // `data-ref` is the i18n-independent automation hook (labels are\n // runtime-translated; e2e drives must never key off them).\n <TabsTrigger key={subTab.ref} value={subTab.ref} data-ref={subTab.ref}>\n {resolveSubTabLabel(subTab.ref, subTab.label)}\n </TabsTrigger>\n ))}\n </TabsList>\n {target.subTabs.map(subTab => (\n <TabsContent key={subTab.ref} value={subTab.ref}>\n {/* Leaf targets only (schema forbids nested sub-tabs); the resolver is\n still threaded to satisfy the shared renderer signature. */}\n <SettingsTargetRenderer target={subTab.target} resolveSubTabLabel={resolveSubTabLabel} />\n </TabsContent>\n ))}\n </Tabs>\n );\n}\n\n// ──────────────────────────────────────────────────────────────\n// Hub\n// ──────────────────────────────────────────────────────────────\n\nexport interface SettingsHubProps {\n /** Section to pre-open; falls back to the config default. */\n sectionRef?: string;\n}\n\nexport function SettingsHub({ sectionRef }: SettingsHubProps): React.JSX.Element {\n const config = useVisibleSettingsHubConfig();\n const categories = useMemo(() => orderedCategories(config), [config]);\n const [active, setActive] = useState<string | undefined>(() => resolveActiveSection(config, sectionRef));\n\n const { tComponent, tSettingsHubCategory, tSettingsHubSection, isReady } = useI18n({\n component: FrontendComponentType.APP_LAYOUTS_SETTINGS_HUB,\n });\n // Hub chrome labels (title, rail aria-label) read from the scoped component\n // namespace. Copy is owned by the labelling pipeline (declared in the sibling\n // `.labels.ts`), so there are deliberately no inline fallback strings — the\n // hub gates on `isReady` below, the same convention as the panels it hosts\n // (`AppPage_SecuritySettings` / `AppPage_AppearanceSettings`). The dynamic\n // category/section labels keep their config-authored `fallbackLabel` (the\n // required contract of `tSettingsHubCategory` / `tSettingsHubSection`).\n const t = useCallback(\n (key: string) => tComponent(FrontendComponentType.APP_LAYOUTS_SETTINGS_HUB, key),\n [tComponent],\n );\n\n // Keep the rail in sync with URL-driven section changes (deep-link / browser\n // nav). setState bails out on an unchanged value, so this cannot loop.\n useEffect(() => {\n const next = resolveActiveSection(config, sectionRef);\n if (next) setActive(next);\n }, [config, sectionRef]);\n\n // Gate on label readiness so the hub chrome never flashes raw key paths —\n // copy is pipeline-owned with no inline fallback, matching the hosted panels.\n if (!isReady) return null;\n\n return (\n // `min-w-0` is REQUIRED: this is the grid item of the (fixed-width) dialog surface.\n // Without it the item keeps its default `min-width: auto` and cannot shrink below its\n // content's min-content width — a wide field row (e.g. a file card with a long\n // filename, or a text input) then pushes the whole two-pane body past the dialog edge,\n // and the dialog's `overflow-x: hidden` clips the right side of every field. `min-w-0`\n // lets the item fit the track so the content pane (and its form) reflow within it.\n <div className=\"flex h-full min-h-0 flex-col min-w-0\">\n <header className=\"flex h-14 shrink-0 items-center border-b px-card-lg\">\n <h2 className=\"text-base font-semibold tracking-tight\">{t('title')}</h2>\n </header>\n <Tabs\n orientation={DisplayDirection.VERTICAL}\n value={active}\n onValueChange={setActive}\n className=\"flex min-h-0 flex-1\"\n >\n <TabsList\n aria-label={t('sectionsNavLabel')}\n className=\"w-60 shrink-0 overflow-y-auto border-e px-card-sm py-card\"\n >\n {categories.map((category, index) => {\n const sections = sectionsForCategory(config, category.ref);\n if (sections.length === 0) return null;\n return (\n <React.Fragment key={category.ref}>\n {index > 0 && <Separator className=\"my-item\" />}\n <div\n role=\"presentation\"\n className=\"px-card-sm py-card-sm text-xs font-medium uppercase tracking-wider text-muted-foreground\"\n >\n {tSettingsHubCategory(category.ref, category.label)}\n </div>\n {sections.map(section => (\n // `data-ref` = i18n-independent automation hook (see sub-tabs above).\n <TabsTrigger key={section.ref} value={section.ref} data-ref={section.ref}>\n {tSettingsHubSection(section.ref, section.label)}\n </TabsTrigger>\n ))}\n </React.Fragment>\n );\n })}\n </TabsList>\n <div className=\"min-w-0 flex-1 overflow-y-auto p-card-lg\">\n {config.sections.map(section => (\n <TabsContent key={section.ref} value={section.ref} className=\"mt-0\">\n {section.entitlementFeatureId ? (\n // Section SURVIVED because the app OFFERS this feature\n // (`runtimeAvailability` capability = plan-independent\n // `isFeatureOffered`). Render its body through the entitlement gate:\n // entitled → the config surface; offered-but-not-entitled → the\n // policy-driven upgrade/add-on prompt (never a silent disappearance).\n <FeatureGate featureId={section.entitlementFeatureId}>\n <SettingsTargetRenderer target={section.target} resolveSubTabLabel={tSettingsHubSection} />\n </FeatureGate>\n ) : (\n <SettingsTargetRenderer target={section.target} resolveSubTabLabel={tSettingsHubSection} />\n )}\n </TabsContent>\n ))}\n </div>\n </Tabs>\n </div>\n );\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingsHub.labels.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"SettingsHub.labels.d.ts","sourceRoot":"","sources":["../../../../src/components/settings/SettingsHub.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,mBAAmB,EAEzB,MAAM,qCAAqC,CAAC;AAO7C,eAAO,MAAM,2BAA2B,EAAE,mBAAmB,EAG5D,CAAC"}
|