@wildo-ai/saas-frontend-lib 1.1.9 → 1.1.11
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/companion-exports.d.ts +2 -1
- package/dist/esm/companion-exports.d.ts.map +1 -1
- package/dist/esm/companion-exports.js +2 -1
- package/dist/esm/companion-exports.js.map +1 -1
- package/dist/esm/components/actions/action-bar.d.ts +45 -1
- package/dist/esm/components/actions/action-bar.d.ts.map +1 -1
- package/dist/esm/components/actions/action-bar.js +84 -0
- package/dist/esm/components/actions/action-bar.js.map +1 -1
- package/dist/esm/components/actions/button.d.ts +22 -0
- package/dist/esm/components/actions/button.d.ts.map +1 -1
- package/dist/esm/components/actions/button.js +45 -0
- package/dist/esm/components/actions/button.js.map +1 -1
- package/dist/esm/components/ai-elements/chat/conversation-thread.d.ts +109 -0
- package/dist/esm/components/ai-elements/chat/conversation-thread.d.ts.map +1 -0
- package/dist/esm/components/ai-elements/chat/conversation-thread.js +22 -0
- package/dist/esm/components/ai-elements/chat/conversation-thread.js.map +1 -0
- package/dist/esm/components/ai-elements/decision/approval.d.ts +103 -7
- 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/tool.d.ts +6 -0
- 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 +60 -1
- package/dist/esm/components/ai-elements/graph/canvas.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/canvas.js +26 -0
- package/dist/esm/components/ai-elements/graph/canvas.js.map +1 -1
- package/dist/esm/components/ai-elements/graph/node.d.ts +39 -4
- package/dist/esm/components/ai-elements/graph/node.d.ts.map +1 -1
- package/dist/esm/components/ai-elements/graph/node.js +18 -0
- package/dist/esm/components/ai-elements/graph/node.js.map +1 -1
- package/dist/esm/components/app/AppLayout_AuthenticatedRoute.d.ts +6 -0
- package/dist/esm/components/app/AppLayout_AuthenticatedRoute.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_AuthenticatedRoute.js +29 -8
- package/dist/esm/components/app/AppLayout_AuthenticatedRoute.js.map +1 -1
- package/dist/esm/components/app/AppLayout_DecisionInbox.d.ts +17 -0
- package/dist/esm/components/app/AppLayout_DecisionInbox.d.ts.map +1 -0
- package/dist/esm/components/app/AppLayout_DecisionInbox.js +24 -0
- package/dist/esm/components/app/AppLayout_DecisionInbox.js.map +1 -0
- package/dist/esm/components/app/AppLayout_MainContainer.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_MainContainer.js +3 -0
- package/dist/esm/components/app/AppLayout_MainContainer.js.map +1 -1
- package/dist/esm/components/app/PublicLayout_LegalNotice.d.ts +18 -0
- package/dist/esm/components/app/PublicLayout_LegalNotice.d.ts.map +1 -0
- package/dist/esm/components/app/PublicLayout_LegalNotice.js +8 -0
- package/dist/esm/components/app/PublicLayout_LegalNotice.js.map +1 -0
- package/dist/esm/components/app/PublicLayout_LegalNotice.labels.d.ts +3 -0
- package/dist/esm/components/app/PublicLayout_LegalNotice.labels.d.ts.map +1 -0
- package/dist/esm/components/app/PublicLayout_LegalNotice.labels.js +38 -0
- package/dist/esm/components/app/PublicLayout_LegalNotice.labels.js.map +1 -0
- package/dist/esm/components/auth/Auth_ChatIdentityLink.d.ts +15 -0
- package/dist/esm/components/auth/Auth_ChatIdentityLink.d.ts.map +1 -0
- package/dist/esm/components/auth/Auth_ChatIdentityLink.js +219 -0
- package/dist/esm/components/auth/Auth_ChatIdentityLink.js.map +1 -0
- package/dist/esm/components/auth/Auth_ChatIdentityLink.labels.d.ts +3 -0
- package/dist/esm/components/auth/Auth_ChatIdentityLink.labels.d.ts.map +1 -0
- package/dist/esm/components/auth/Auth_ChatIdentityLink.labels.js +49 -0
- package/dist/esm/components/auth/Auth_ChatIdentityLink.labels.js.map +1 -0
- package/dist/esm/components/auth/Auth_Invitation.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_Invitation.js +3 -2
- package/dist/esm/components/auth/Auth_Invitation.js.map +1 -1
- package/dist/esm/components/auth/Auth_Invitation.labels.js +2 -2
- package/dist/esm/components/auth/Auth_Invitation.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 +40 -7
- 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 +9 -0
- package/dist/esm/components/auth/Auth_Main.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 +3 -2
- package/dist/esm/components/auth/Auth_OAuthConsent.js.map +1 -1
- package/dist/esm/components/auth/Auth_PasswordLost.labels.js +2 -2
- 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 +8 -1
- package/dist/esm/components/auth/Auth_Register.js.map +1 -1
- package/dist/esm/components/auth/Auth_Register.labels.js +2 -2
- package/dist/esm/components/auth/Auth_Register.labels.js.map +1 -1
- package/dist/esm/components/auth/StepUpAuthDialog.d.ts +1 -1
- package/dist/esm/components/auth/StepUpAuthDialog.js +3 -3
- 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 +94 -6
- 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 +21 -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 +16 -13
- package/dist/esm/components/auth/admin-config/ResourceLayoutPreset_Create_SamlWizard.js.map +1 -1
- package/dist/esm/components/auth/admin-config/SsoConnectionSamlReadSection.js +3 -3
- 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 +1 -1
- package/dist/esm/components/auth/enrollment/PasskeyEnrollmentMethod.js.map +1 -1
- package/dist/esm/components/auth/methods/OrgSamlAuthMethod.d.ts +1 -1
- package/dist/esm/components/auth/methods/OrgSamlAuthMethod.d.ts.map +1 -1
- package/dist/esm/components/auth/methods/OrgSamlAuthMethod.js +3 -4
- package/dist/esm/components/auth/methods/OrgSamlAuthMethod.js.map +1 -1
- package/dist/esm/components/auth/pages/AuthPage_ChatIdentityLink.d.ts +11 -0
- package/dist/esm/components/auth/pages/AuthPage_ChatIdentityLink.d.ts.map +1 -0
- package/dist/esm/components/auth/pages/AuthPage_ChatIdentityLink.js +25 -0
- package/dist/esm/components/auth/pages/AuthPage_ChatIdentityLink.js.map +1 -0
- package/dist/esm/components/auth/utils/AuthPrivacyNoticeLink.d.ts +39 -0
- package/dist/esm/components/auth/utils/AuthPrivacyNoticeLink.d.ts.map +1 -0
- package/dist/esm/components/auth/utils/AuthPrivacyNoticeLink.js +45 -0
- package/dist/esm/components/auth/utils/AuthPrivacyNoticeLink.js.map +1 -0
- package/dist/esm/components/auth/utils/PasswordStrengthIndicator.js +1 -1
- package/dist/esm/components/auth/utils/PasswordStrengthIndicator.js.map +1 -1
- package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.d.ts.map +1 -1
- package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.js +2 -1
- package/dist/esm/components/compliance/GovernedDocumentAcceptanceControl.js.map +1 -1
- package/dist/esm/components/data-display/AutomaticDisplayer.d.ts.map +1 -1
- package/dist/esm/components/data-display/AutomaticDisplayer.js +21 -35
- package/dist/esm/components/data-display/AutomaticDisplayer.js.map +1 -1
- package/dist/esm/components/data-display/DisplayField.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayField.js +98 -70
- package/dist/esm/components/data-display/DisplayField.js.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldEditable.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldEditable.js +48 -8
- package/dist/esm/components/data-display/DisplayFieldEditable.js.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldEditableArray.d.ts +3 -1
- package/dist/esm/components/data-display/DisplayFieldEditableArray.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldEditableArray.js +30 -4
- 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 +2 -2
- package/dist/esm/components/data-display/DisplayFieldReadOnly.js.map +1 -1
- package/dist/esm/components/data-display/DisplayValueDispatcher.d.ts +1 -1
- package/dist/esm/components/data-display/DisplayValueDispatcher.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayValueDispatcher.js +45 -94
- 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 +14 -8
- package/dist/esm/components/data-display/ResourceAutomaticDisplayer.js.map +1 -1
- package/dist/esm/components/data-display/ResourceSummaryDisplayer.d.ts +41 -3
- package/dist/esm/components/data-display/ResourceSummaryDisplayer.d.ts.map +1 -1
- package/dist/esm/components/data-display/ResourceSummaryDisplayer.js +49 -5
- package/dist/esm/components/data-display/ResourceSummaryDisplayer.js.map +1 -1
- package/dist/esm/components/data-display/SummaryContext.d.ts +2 -2
- package/dist/esm/components/data-display/SummaryContext.js.map +1 -1
- package/dist/esm/components/data-display/automatic-displayer.utils.d.ts +22 -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 +29 -0
- package/dist/esm/components/data-display/automatic-displayer.utils.js.map +1 -1
- package/dist/esm/components/data-display/badge.d.ts +9 -0
- package/dist/esm/components/data-display/badge.d.ts.map +1 -1
- package/dist/esm/components/data-display/badge.js.map +1 -1
- package/dist/esm/components/data-display/chromes/DisplayFieldChrome.d.ts +14 -2
- package/dist/esm/components/data-display/chromes/DisplayFieldChrome.d.ts.map +1 -1
- package/dist/esm/components/data-display/chromes/DisplayFieldChrome.js +42 -12
- package/dist/esm/components/data-display/chromes/DisplayFieldChrome.js.map +1 -1
- package/dist/esm/components/data-display/chromes/display-chrome-mode-resolution.d.ts +10 -0
- package/dist/esm/components/data-display/chromes/display-chrome-mode-resolution.d.ts.map +1 -0
- package/dist/esm/components/data-display/chromes/display-chrome-mode-resolution.js +18 -0
- package/dist/esm/components/data-display/chromes/display-chrome-mode-resolution.js.map +1 -0
- package/dist/esm/components/data-display/chromes/field-tile-boundaries.d.ts +38 -0
- package/dist/esm/components/data-display/chromes/field-tile-boundaries.d.ts.map +1 -0
- package/dist/esm/components/data-display/chromes/field-tile-boundaries.js +30 -0
- package/dist/esm/components/data-display/chromes/field-tile-boundaries.js.map +1 -0
- package/dist/esm/components/data-display/chromes/field-tiles.utils.d.ts +22 -0
- package/dist/esm/components/data-display/chromes/field-tiles.utils.d.ts.map +1 -0
- package/dist/esm/components/data-display/chromes/field-tiles.utils.js +52 -0
- package/dist/esm/components/data-display/chromes/field-tiles.utils.js.map +1 -0
- package/dist/esm/components/data-display/display-field-resolved-props.d.ts +4 -0
- 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-layout-template.utils.d.ts +18 -0
- package/dist/esm/components/data-display/display-layout-template.utils.d.ts.map +1 -0
- package/dist/esm/components/data-display/display-layout-template.utils.js +18 -0
- package/dist/esm/components/data-display/display-layout-template.utils.js.map +1 -0
- package/dist/esm/components/data-display/display-value-emptiness.utils.d.ts +44 -0
- package/dist/esm/components/data-display/display-value-emptiness.utils.d.ts.map +1 -0
- package/dist/esm/components/data-display/display-value-emptiness.utils.js +61 -0
- package/dist/esm/components/data-display/display-value-emptiness.utils.js.map +1 -0
- package/dist/esm/components/data-display/empty-value-mark.d.ts +31 -0
- package/dist/esm/components/data-display/empty-value-mark.d.ts.map +1 -0
- package/dist/esm/components/data-display/empty-value-mark.js +49 -0
- package/dist/esm/components/data-display/empty-value-mark.js.map +1 -0
- package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.d.ts +3 -2
- package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.d.ts.map +1 -1
- package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.js +4 -4
- package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.js.map +1 -1
- package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.d.ts +6 -3
- package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.d.ts.map +1 -1
- package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.js +22 -12
- package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.js.map +1 -1
- package/dist/esm/components/data-display/external-data-provenance/useExternalDataFieldProvenance.js +2 -2
- package/dist/esm/components/data-display/external-data-provenance/useExternalDataFieldProvenance.js.map +1 -1
- package/dist/esm/components/data-display/reference-display-target.d.ts +98 -0
- package/dist/esm/components/data-display/reference-display-target.d.ts.map +1 -0
- package/dist/esm/components/data-display/reference-display-target.js +154 -0
- package/dist/esm/components/data-display/reference-display-target.js.map +1 -0
- package/dist/esm/components/data-display/summary-value-naming.context.d.ts +15 -0
- package/dist/esm/components/data-display/summary-value-naming.context.d.ts.map +1 -0
- package/dist/esm/components/data-display/summary-value-naming.context.js +18 -0
- package/dist/esm/components/data-display/summary-value-naming.context.js.map +1 -0
- package/dist/esm/components/data-display/tone-marker.d.ts +38 -0
- package/dist/esm/components/data-display/tone-marker.d.ts.map +1 -0
- package/dist/esm/components/data-display/tone-marker.js +56 -0
- package/dist/esm/components/data-display/tone-marker.js.map +1 -0
- package/dist/esm/components/data-display/useFileActivation.d.ts.map +1 -1
- package/dist/esm/components/data-display/useFileActivation.js +2 -9
- package/dist/esm/components/data-display/useFileActivation.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 +12 -4
- package/dist/esm/components/feedback/features/feature-limit-indicator.js.map +1 -1
- package/dist/esm/components/feedback/operations-confirm-critical.d.ts +8 -0
- package/dist/esm/components/feedback/operations-confirm-critical.d.ts.map +1 -1
- package/dist/esm/components/feedback/operations-confirm-critical.js.map +1 -1
- package/dist/esm/components/files/Files_UploadGrantDrop.d.ts +0 -5
- package/dist/esm/components/files/Files_UploadGrantDrop.d.ts.map +1 -1
- package/dist/esm/components/files/Files_UploadGrantDrop.js +5 -17
- package/dist/esm/components/files/Files_UploadGrantDrop.js.map +1 -1
- package/dist/esm/components/flows-actors/actor.d.ts +21 -4
- package/dist/esm/components/flows-actors/actor.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/actor.js +114 -192
- 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 +5 -10
- package/dist/esm/components/flows-actors/actor.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/agent-config.labels.js +1 -1
- package/dist/esm/components/flows-actors/agent-config.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/approval-modification-refusal.utils.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/approval-modification-refusal.utils.js +1 -0
- package/dist/esm/components/flows-actors/approval-modification-refusal.utils.js.map +1 -1
- package/dist/esm/components/flows-actors/approval.d.ts +26 -16
- package/dist/esm/components/flows-actors/approval.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/approval.js +208 -70
- 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 +67 -22
- package/dist/esm/components/flows-actors/approval.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/artifact-browser.labels.js +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 +19 -7
- package/dist/esm/components/flows-actors/execution-plan.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/execution-plan.js +55 -41
- 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 +25 -8
- package/dist/esm/components/flows-actors/execution-plan.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/execution-usage.d.ts +69 -0
- package/dist/esm/components/flows-actors/execution-usage.d.ts.map +1 -0
- package/dist/esm/components/flows-actors/execution-usage.js +189 -0
- package/dist/esm/components/flows-actors/execution-usage.js.map +1 -0
- package/dist/esm/components/flows-actors/execution-usage.labels.d.ts +3 -0
- package/dist/esm/components/flows-actors/execution-usage.labels.d.ts.map +1 -0
- package/dist/esm/components/flows-actors/execution-usage.labels.js +27 -0
- package/dist/esm/components/flows-actors/execution-usage.labels.js.map +1 -0
- package/dist/esm/components/flows-actors/flow-execution.d.ts +23 -6
- package/dist/esm/components/flows-actors/flow-execution.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/flow-execution.js +56 -208
- 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 +3 -10
- package/dist/esm/components/flows-actors/flow-execution.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/flow-node-badges.d.ts +54 -21
- package/dist/esm/components/flows-actors/flow-node-badges.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/flow-node-badges.js +80 -6
- package/dist/esm/components/flows-actors/flow-node-badges.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 +0 -8
- package/dist/esm/components/flows-actors/flow-node.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/flow-step-visuals.d.ts +31 -0
- package/dist/esm/components/flows-actors/flow-step-visuals.d.ts.map +1 -0
- package/dist/esm/components/flows-actors/flow-step-visuals.js +98 -0
- package/dist/esm/components/flows-actors/flow-step-visuals.js.map +1 -0
- package/dist/esm/components/flows-actors/flows-actors-graph-runtime.d.ts +18 -19
- 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 +18 -19
- 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 +27 -42
- 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 +28 -43
- 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 +15 -10
- 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 +16 -42
- package/dist/esm/components/flows-actors/flows-actors-ui.utils.js.map +1 -1
- package/dist/esm/components/flows-actors/graph-viewer.d.ts +112 -0
- package/dist/esm/components/flows-actors/graph-viewer.d.ts.map +1 -0
- package/dist/esm/components/flows-actors/graph-viewer.js +431 -0
- package/dist/esm/components/flows-actors/graph-viewer.js.map +1 -0
- package/dist/esm/components/flows-actors/graph-viewer.labels.d.ts +3 -0
- package/dist/esm/components/flows-actors/graph-viewer.labels.d.ts.map +1 -0
- package/dist/esm/components/flows-actors/graph-viewer.labels.js +67 -0
- package/dist/esm/components/flows-actors/graph-viewer.labels.js.map +1 -0
- package/dist/esm/components/flows-actors/graph-viewer.models.d.ts +16 -0
- package/dist/esm/components/flows-actors/graph-viewer.models.d.ts.map +1 -0
- package/dist/esm/components/flows-actors/graph-viewer.models.js +18 -0
- package/dist/esm/components/flows-actors/graph-viewer.models.js.map +1 -0
- package/dist/esm/components/flows-actors/human-decision-form.d.ts +57 -0
- package/dist/esm/components/flows-actors/human-decision-form.d.ts.map +1 -0
- package/dist/esm/components/flows-actors/human-decision-form.js +128 -0
- package/dist/esm/components/flows-actors/human-decision-form.js.map +1 -0
- package/dist/esm/components/flows-actors/system-catalog.d.ts +6 -1
- package/dist/esm/components/flows-actors/system-catalog.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/system-catalog.js +22 -20
- 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 +3 -2
- package/dist/esm/components/flows-actors/system-catalog.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/task-detail.d.ts +17 -3
- package/dist/esm/components/flows-actors/task-detail.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/task-detail.js +32 -25
- package/dist/esm/components/flows-actors/task-detail.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 +3 -2
- package/dist/esm/components/flows-actors/task-memory.js.map +1 -1
- package/dist/esm/components/form/Form.d.ts +2 -0
- package/dist/esm/components/form/Form.d.ts.map +1 -1
- package/dist/esm/components/form/Form.js +4 -0
- package/dist/esm/components/form/Form.js.map +1 -1
- package/dist/esm/components/form/automated/AutomatedArrayField.d.ts +16 -1
- package/dist/esm/components/form/automated/AutomatedArrayField.d.ts.map +1 -1
- package/dist/esm/components/form/automated/AutomatedArrayField.js +101 -21
- package/dist/esm/components/form/automated/AutomatedArrayField.js.map +1 -1
- package/dist/esm/components/form/automated/AutomatedForm.d.ts +19 -2
- package/dist/esm/components/form/automated/AutomatedForm.d.ts.map +1 -1
- package/dist/esm/components/form/automated/AutomatedForm.js +40 -6
- package/dist/esm/components/form/automated/AutomatedForm.js.map +1 -1
- package/dist/esm/components/form/automated/AutosaveContext.d.ts +22 -1
- package/dist/esm/components/form/automated/AutosaveContext.d.ts.map +1 -1
- package/dist/esm/components/form/automated/AutosaveContext.js +53 -0
- package/dist/esm/components/form/automated/AutosaveContext.js.map +1 -1
- package/dist/esm/components/form/automated/FormField.d.ts +1 -1
- package/dist/esm/components/form/automated/FormField.d.ts.map +1 -1
- package/dist/esm/components/form/automated/FormField.js +127 -53
- package/dist/esm/components/form/automated/FormField.js.map +1 -1
- package/dist/esm/components/form/automated/FormFieldComposite.d.ts.map +1 -1
- package/dist/esm/components/form/automated/FormFieldComposite.js +12 -10
- 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 +16 -7
- package/dist/esm/components/form/automated/FormFieldRecord.js.map +1 -1
- package/dist/esm/components/form/automated/FormTemplateContext.d.ts +27 -0
- package/dist/esm/components/form/automated/FormTemplateContext.d.ts.map +1 -1
- package/dist/esm/components/form/automated/FormTemplateContext.js +0 -48
- package/dist/esm/components/form/automated/FormTemplateContext.js.map +1 -1
- package/dist/esm/components/form/automated/ResourceAutomatedForm.d.ts +4 -3
- package/dist/esm/components/form/automated/ResourceAutomatedForm.d.ts.map +1 -1
- package/dist/esm/components/form/automated/ResourceAutomatedForm.js +616 -149
- package/dist/esm/components/form/automated/ResourceAutomatedForm.js.map +1 -1
- package/dist/esm/components/form/automated/automated-form-submit.utils.d.ts +105 -5
- 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 +225 -6
- package/dist/esm/components/form/automated/automated-form-submit.utils.js.map +1 -1
- package/dist/esm/components/form/automated/bulk-field-clear-context.d.ts +59 -0
- package/dist/esm/components/form/automated/bulk-field-clear-context.d.ts.map +1 -0
- package/dist/esm/components/form/automated/bulk-field-clear-context.js +77 -0
- package/dist/esm/components/form/automated/bulk-field-clear-context.js.map +1 -0
- package/dist/esm/components/form/automated/generated-relationship-field.hooks.d.ts +1 -1
- package/dist/esm/components/form/automated/unplaced-request-fields.context.d.ts +19 -0
- package/dist/esm/components/form/automated/unplaced-request-fields.context.d.ts.map +1 -0
- package/dist/esm/components/form/automated/unplaced-request-fields.context.js +13 -0
- package/dist/esm/components/form/automated/unplaced-request-fields.context.js.map +1 -0
- package/dist/esm/components/form/automated/useArrayItemAutosaveField.d.ts +7 -0
- package/dist/esm/components/form/automated/useArrayItemAutosaveField.d.ts.map +1 -1
- package/dist/esm/components/form/automated/useArrayItemAutosaveField.js +10 -2
- package/dist/esm/components/form/automated/useArrayItemAutosaveField.js.map +1 -1
- package/dist/esm/components/form/automated/useReferenceRecordLabels.d.ts +16 -0
- package/dist/esm/components/form/automated/useReferenceRecordLabels.d.ts.map +1 -0
- package/dist/esm/components/form/automated/useReferenceRecordLabels.js +66 -0
- package/dist/esm/components/form/automated/useReferenceRecordLabels.js.map +1 -0
- package/dist/esm/components/form/automated/useRequestFieldOffer.d.ts +18 -0
- package/dist/esm/components/form/automated/useRequestFieldOffer.d.ts.map +1 -0
- package/dist/esm/components/form/automated/useRequestFieldOffer.js +107 -0
- package/dist/esm/components/form/automated/useRequestFieldOffer.js.map +1 -0
- package/dist/esm/components/form/chromes/FormFieldChrome.d.ts +7 -1
- package/dist/esm/components/form/chromes/FormFieldChrome.d.ts.map +1 -1
- package/dist/esm/components/form/chromes/FormFieldChrome.js +6 -3
- package/dist/esm/components/form/chromes/FormFieldChrome.js.map +1 -1
- package/dist/esm/components/form/controls/date-time/date-range-picker.d.ts +11 -0
- 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 +21 -0
- 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 +9 -0
- 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 +9 -0
- 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-range-picker.d.ts +1 -0
- 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 +10 -0
- 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/toggle-group.d.ts +14 -10
- package/dist/esm/components/form/controls/enum/toggle-group.d.ts.map +1 -1
- package/dist/esm/components/form/controls/enum/toggle-group.js +14 -6
- package/dist/esm/components/form/controls/enum/toggle-group.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 +7 -3
- package/dist/esm/components/form/controls/form-field-checkbox-group.js.map +1 -1
- package/dist/esm/components/form/controls/string/chips-input.d.ts +65 -0
- package/dist/esm/components/form/controls/string/chips-input.d.ts.map +1 -0
- package/dist/esm/components/form/controls/string/chips-input.js +9 -0
- package/dist/esm/components/form/controls/string/chips-input.js.map +1 -0
- package/dist/esm/components/form/fields/form-field-address.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-address.js +7 -5
- package/dist/esm/components/form/fields/form-field-address.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-address.labels.js +1 -1
- package/dist/esm/components/form/fields/form-field-address.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-bigdecimal.js +2 -2
- package/dist/esm/components/form/fields/form-field-bigdecimal.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-boolean.js +2 -2
- package/dist/esm/components/form/fields/form-field-boolean.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-code.labels.js +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 +16 -11
- package/dist/esm/components/form/fields/form-field-date.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 +10 -5
- package/dist/esm/components/form/fields/form-field-datetime.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-duration.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-duration.js +5 -7
- package/dist/esm/components/form/fields/form-field-duration.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-duration.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-duration.labels.js +8 -2
- 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 +31 -31
- package/dist/esm/components/form/fields/form-field-enum.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 +13 -12
- package/dist/esm/components/form/fields/form-field-file.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-file.labels.js +6 -6
- 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 +5 -4
- 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 +8 -2
- package/dist/esm/components/form/fields/form-field-money.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-number.js +2 -2
- package/dist/esm/components/form/fields/form-field-number.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-bigdecimal.js +2 -2
- package/dist/esm/components/form/fields/form-field-range-bigdecimal.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 +7 -2
- package/dist/esm/components/form/fields/form-field-range-date.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 +5 -2
- package/dist/esm/components/form/fields/form-field-range-datetime.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 +6 -19
- 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 +8 -2
- 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.js +2 -2
- package/dist/esm/components/form/fields/form-field-range-number.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-range-time.js +2 -2
- package/dist/esm/components/form/fields/form-field-range-time.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-resource-reference.d.ts +56 -0
- package/dist/esm/components/form/fields/form-field-resource-reference.d.ts.map +1 -0
- package/dist/esm/components/form/fields/form-field-resource-reference.js +51 -0
- package/dist/esm/components/form/fields/form-field-resource-reference.js.map +1 -0
- package/dist/esm/components/form/fields/form-field-string-organization-role.d.ts +36 -6
- package/dist/esm/components/form/fields/form-field-string-organization-role.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-string-organization-role.js +30 -11
- package/dist/esm/components/form/fields/form-field-string-organization-role.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-string.d.ts +5 -0
- package/dist/esm/components/form/fields/form-field-string.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-string.js +9 -7
- package/dist/esm/components/form/fields/form-field-string.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 +6 -3
- package/dist/esm/components/form/fields/form-field-time.js.map +1 -1
- package/dist/esm/components/form/fields/themed-native-select.d.ts +29 -0
- package/dist/esm/components/form/fields/themed-native-select.d.ts.map +1 -0
- package/dist/esm/components/form/fields/themed-native-select.js +36 -0
- package/dist/esm/components/form/fields/themed-native-select.js.map +1 -0
- package/dist/esm/components/form/form-context.d.ts +11 -0
- package/dist/esm/components/form/form-context.d.ts.map +1 -1
- package/dist/esm/components/form/form-context.js +11 -0
- package/dist/esm/components/form/form-context.js.map +1 -1
- package/dist/esm/components/form/form-context.utils.d.ts +2 -0
- package/dist/esm/components/form/form-context.utils.d.ts.map +1 -1
- package/dist/esm/components/form/form-context.utils.js +6 -2
- package/dist/esm/components/form/form-context.utils.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 +17 -15
- package/dist/esm/components/form/validation-errors/FormErrorSummary.js.map +1 -1
- package/dist/esm/components/form/validation-errors/field-reveal.d.ts +41 -0
- package/dist/esm/components/form/validation-errors/field-reveal.d.ts.map +1 -0
- package/dist/esm/components/form/validation-errors/field-reveal.js +108 -0
- package/dist/esm/components/form/validation-errors/field-reveal.js.map +1 -0
- package/dist/esm/components/form/validation-errors/form-level-error-recheck.d.ts +3 -0
- package/dist/esm/components/form/validation-errors/form-level-error-recheck.d.ts.map +1 -0
- package/dist/esm/components/form/validation-errors/form-level-error-recheck.js +37 -0
- package/dist/esm/components/form/validation-errors/form-level-error-recheck.js.map +1 -0
- package/dist/esm/components/form/validation-errors/getFieldError.d.ts +6 -0
- package/dist/esm/components/form/validation-errors/getFieldError.d.ts.map +1 -1
- package/dist/esm/components/form/validation-errors/getFieldError.js +9 -2
- 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 +8 -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 +46 -3
- package/dist/esm/components/form/validation-errors/scroll-to-first-error.utils.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 +8 -3
- package/dist/esm/components/form/validation-errors/useServerErrorInjection.js.map +1 -1
- package/dist/esm/components/form/validation-errors/validate-fields-and-show-errors.d.ts +32 -0
- package/dist/esm/components/form/validation-errors/validate-fields-and-show-errors.d.ts.map +1 -0
- package/dist/esm/components/form/validation-errors/validate-fields-and-show-errors.js +60 -0
- package/dist/esm/components/form/validation-errors/validate-fields-and-show-errors.js.map +1 -0
- package/dist/esm/components/form/validation-errors/zod-issue-resolver.d.ts +10 -0
- package/dist/esm/components/form/validation-errors/zod-issue-resolver.d.ts.map +1 -1
- package/dist/esm/components/form/validation-errors/zod-issue-resolver.js +12 -3
- package/dist/esm/components/form/validation-errors/zod-issue-resolver.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_QuickActionButton.d.ts +7 -0
- 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_UtilityPanel.d.ts +6 -0
- 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/SidebarResourceBrowser.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.js +11 -28
- package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.js.map +1 -1
- package/dist/esm/components/navigation/app-level/engine-launcher-entries.d.ts +46 -0
- package/dist/esm/components/navigation/app-level/engine-launcher-entries.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/engine-launcher-entries.js +165 -0
- package/dist/esm/components/navigation/app-level/engine-launcher-entries.js.map +1 -0
- package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.js +8 -3
- package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.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 +41 -20
- package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useNavigationBehaviors.d.ts +1 -2
- package/dist/esm/components/navigation/app-level/useNavigationBehaviors.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useNavigationBehaviors.js +1 -15
- package/dist/esm/components/navigation/app-level/useNavigationBehaviors.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useOwnOrganizationSearch.d.ts +32 -0
- package/dist/esm/components/navigation/app-level/useOwnOrganizationSearch.d.ts.map +1 -0
- package/dist/esm/components/navigation/app-level/useOwnOrganizationSearch.js +91 -0
- package/dist/esm/components/navigation/app-level/useOwnOrganizationSearch.js.map +1 -0
- package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.js +3 -1
- package/dist/esm/components/navigation/app-level/useQuickSwitcherBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useSidebarBehavior.d.ts +18 -1
- package/dist/esm/components/navigation/app-level/useSidebarBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useSidebarBehavior.js +66 -9
- package/dist/esm/components/navigation/app-level/useSidebarBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.d.ts +15 -10
- package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.js +89 -12
- package/dist/esm/components/navigation/app-level/useUtilityPanelBehavior.js.map +1 -1
- package/dist/esm/components/progression/ProgressionMilestoneTracker.labels.js +2 -2
- package/dist/esm/components/progression/ProgressionMilestoneTracker.labels.js.map +1 -1
- package/dist/esm/components/resources/CollectionSelectAllCheckbox.d.ts +39 -0
- package/dist/esm/components/resources/CollectionSelectAllCheckbox.d.ts.map +1 -0
- package/dist/esm/components/resources/CollectionSelectAllCheckbox.js +21 -0
- package/dist/esm/components/resources/CollectionSelectAllCheckbox.js.map +1 -0
- package/dist/esm/components/resources/CollectionSelectionControls.d.ts +4 -3
- 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/ResourceCollectionBody_Table.d.ts +7 -2
- package/dist/esm/components/resources/ResourceCollectionBody_Table.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionBody_Table.js +38 -14
- package/dist/esm/components/resources/ResourceCollectionBody_Table.js.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionFilterPresets.d.ts +4 -4
- package/dist/esm/components/resources/ResourceCollectionFilterPresets.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionFilterPresets.js +20 -13
- package/dist/esm/components/resources/ResourceCollectionFilterPresets.js.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.d.ts +4 -3
- package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.js +40 -6
- package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.js.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionToolbar.d.ts +65 -23
- package/dist/esm/components/resources/ResourceCollectionToolbar.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionToolbar.js +73 -10
- package/dist/esm/components/resources/ResourceCollectionToolbar.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 +5 -0
- package/dist/esm/components/resources/ResourceLayout_Action.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Breadcrumb.d.ts +18 -0
- package/dist/esm/components/resources/ResourceLayout_Breadcrumb.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Breadcrumb.js +57 -48
- package/dist/esm/components/resources/ResourceLayout_Breadcrumb.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_CollectionActions.d.ts +1 -1
- package/dist/esm/components/resources/ResourceLayout_CollectionActions.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_CollectionActions.js +1 -1
- package/dist/esm/components/resources/ResourceLayout_CollectionActions.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ContainerNested.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ContainerNested.js +7 -1
- package/dist/esm/components/resources/ResourceLayout_ContainerNested.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Create.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Create.js +3 -4
- 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 +10 -0
- package/dist/esm/components/resources/ResourceLayout_Create.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_DangerZone.d.ts +5 -3
- package/dist/esm/components/resources/ResourceLayout_DangerZone.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_DangerZone.js +4 -3
- package/dist/esm/components/resources/ResourceLayout_DangerZone.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_FilterChips.d.ts +8 -1
- package/dist/esm/components/resources/ResourceLayout_FilterChips.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_FilterChips.js +83 -11
- package/dist/esm/components/resources/ResourceLayout_FilterChips.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Filters.labels.js +1 -1
- package/dist/esm/components/resources/ResourceLayout_Filters.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_FiltersControl.d.ts +5 -8
- package/dist/esm/components/resources/ResourceLayout_FiltersControl.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_FiltersControl.js +68 -19
- 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 +150 -44
- package/dist/esm/components/resources/ResourceLayout_Header.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_InsertedViews.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_InsertedViews.js +62 -40
- 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 +68 -70
- 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 +4 -10
- package/dist/esm/components/resources/ResourceLayout_List.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_OperationBulk.d.ts +8 -9
- package/dist/esm/components/resources/ResourceLayout_OperationBulk.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_OperationBulk.js +67 -25
- package/dist/esm/components/resources/ResourceLayout_OperationBulk.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_OperationBulk.labels.js +8 -8
- package/dist/esm/components/resources/ResourceLayout_OperationBulk.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_OperationsItems.d.ts +8 -2
- package/dist/esm/components/resources/ResourceLayout_OperationsItems.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_OperationsItems.js +12 -7
- 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 +11 -6
- package/dist/esm/components/resources/ResourceLayout_OperationsItems.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Read.d.ts +2 -0
- package/dist/esm/components/resources/ResourceLayout_Read.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Read.js +23 -5
- package/dist/esm/components/resources/ResourceLayout_Read.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ReadSummary.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ReadSummary.js +5 -3
- package/dist/esm/components/resources/ResourceLayout_ReadSummary.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 +18 -7
- package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_RecordSharing.d.ts +56 -0
- package/dist/esm/components/resources/ResourceLayout_RecordSharing.d.ts.map +1 -0
- package/dist/esm/components/resources/ResourceLayout_RecordSharing.js +184 -0
- package/dist/esm/components/resources/ResourceLayout_RecordSharing.js.map +1 -0
- package/dist/esm/components/resources/ResourceLayout_RecordSharing.labels.d.ts +3 -0
- package/dist/esm/components/resources/ResourceLayout_RecordSharing.labels.d.ts.map +1 -0
- package/dist/esm/components/resources/ResourceLayout_RecordSharing.labels.js +106 -0
- package/dist/esm/components/resources/ResourceLayout_RecordSharing.labels.js.map +1 -0
- package/dist/esm/components/resources/ResourceLayout_Search.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Search.js +55 -42
- 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 +0 -6
- package/dist/esm/components/resources/ResourceLayout_Search.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.d.ts +8 -0
- package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.js +2 -3
- 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 +3 -2
- package/dist/esm/components/resources/ResourceLayout_SortControl.js.map +1 -1
- package/dist/esm/components/resources/ResourceListItemRenderer.d.ts +29 -5
- package/dist/esm/components/resources/ResourceListItemRenderer.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceListItemRenderer.js +123 -41
- package/dist/esm/components/resources/ResourceListItemRenderer.js.map +1 -1
- package/dist/esm/components/resources/ResourceViewModeToggle.d.ts +6 -1
- package/dist/esm/components/resources/ResourceViewModeToggle.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceViewModeToggle.js +9 -7
- package/dist/esm/components/resources/ResourceViewModeToggle.js.map +1 -1
- package/dist/esm/components/resources/collection-card-layout.utils.d.ts +37 -15
- package/dist/esm/components/resources/collection-card-layout.utils.d.ts.map +1 -1
- package/dist/esm/components/resources/collection-card-layout.utils.js +37 -15
- package/dist/esm/components/resources/collection-card-layout.utils.js.map +1 -1
- package/dist/esm/components/resources/collection-selection-bar-density.d.ts +113 -0
- package/dist/esm/components/resources/collection-selection-bar-density.d.ts.map +1 -0
- package/dist/esm/components/resources/collection-selection-bar-density.js +175 -0
- package/dist/esm/components/resources/collection-selection-bar-density.js.map +1 -0
- package/dist/esm/components/resources/embeds/EmbeddedResourceDescent.d.ts +2 -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/RelatedResourceSections.d.ts.map +1 -1
- package/dist/esm/components/resources/embeds/RelatedResourceSections.js +14 -2
- package/dist/esm/components/resources/embeds/RelatedResourceSections.js.map +1 -1
- package/dist/esm/components/resources/embeds/ResourceEmbeds.d.ts +61 -1
- package/dist/esm/components/resources/embeds/ResourceEmbeds.d.ts.map +1 -1
- package/dist/esm/components/resources/embeds/ResourceEmbeds.js +151 -15
- package/dist/esm/components/resources/embeds/ResourceEmbeds.js.map +1 -1
- package/dist/esm/components/resources/embeds/child-operation-addressability.utils.d.ts +11 -0
- 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 +13 -0
- package/dist/esm/components/resources/embeds/child-operation-addressability.utils.js.map +1 -1
- package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.d.ts +24 -1
- package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.d.ts.map +1 -1
- package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.js +47 -3
- package/dist/esm/components/resources/embeds/useEmbeddedResourceContext.js.map +1 -1
- package/dist/esm/components/resources/resource-filter-field-type.frontend.schemas.d.ts +35 -0
- package/dist/esm/components/resources/resource-filter-field-type.frontend.schemas.d.ts.map +1 -0
- package/dist/esm/components/resources/resource-filter-field-type.frontend.schemas.js +36 -0
- package/dist/esm/components/resources/resource-filter-field-type.frontend.schemas.js.map +1 -0
- package/dist/esm/components/resources/resource-header-geometry.d.ts +19 -0
- package/dist/esm/components/resources/resource-header-geometry.d.ts.map +1 -0
- package/dist/esm/components/resources/resource-header-geometry.js +19 -0
- package/dist/esm/components/resources/resource-header-geometry.js.map +1 -0
- package/dist/esm/components/resources/resourceLayout.utils.d.ts +28 -2
- package/dist/esm/components/resources/resourceLayout.utils.d.ts.map +1 -1
- package/dist/esm/components/resources/resourceLayout.utils.js +45 -12
- 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 +10 -0
- package/dist/esm/components/resources/skeleton/ArrayField.js.map +1 -1
- package/dist/esm/components/resources/skeleton/DisplayLayout.d.ts +20 -4
- package/dist/esm/components/resources/skeleton/DisplayLayout.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/DisplayLayout.js +19 -2
- package/dist/esm/components/resources/skeleton/DisplayLayout.js.map +1 -1
- package/dist/esm/components/resources/skeleton/FieldTiles.d.ts +48 -0
- package/dist/esm/components/resources/skeleton/FieldTiles.d.ts.map +1 -0
- package/dist/esm/components/resources/skeleton/FieldTiles.js +51 -0
- package/dist/esm/components/resources/skeleton/FieldTiles.js.map +1 -0
- package/dist/esm/components/resources/skeleton/FormLayout.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/FormLayout.js +2 -1
- package/dist/esm/components/resources/skeleton/FormLayout.js.map +1 -1
- package/dist/esm/components/resources/skeleton/Group.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/Group.js +5 -2
- package/dist/esm/components/resources/skeleton/Group.js.map +1 -1
- package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.d.ts +77 -14
- package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.js +98 -25
- package/dist/esm/components/resources/skeleton/ResourceHeaderTitle.js.map +1 -1
- package/dist/esm/components/resources/skeleton/Section.d.ts +7 -0
- package/dist/esm/components/resources/skeleton/Section.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/Section.js +9 -3
- package/dist/esm/components/resources/skeleton/Section.js.map +1 -1
- package/dist/esm/components/resources/skeleton/SummaryLayout.d.ts +3 -3
- package/dist/esm/components/resources/skeleton/SummaryLayout.js +3 -3
- package/dist/esm/components/resources/skeleton/SummaryLayout.js.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardLayout.d.ts +7 -5
- package/dist/esm/components/resources/skeleton/WizardLayout.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardLayout.js +176 -65
- package/dist/esm/components/resources/skeleton/WizardLayout.js.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardLayoutContext.d.ts +9 -1
- package/dist/esm/components/resources/skeleton/WizardLayoutContext.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardLayoutContext.js +7 -0
- package/dist/esm/components/resources/skeleton/WizardLayoutContext.js.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardStep.d.ts +1 -1
- package/dist/esm/components/resources/skeleton/WizardStep.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardStep.js +9 -5
- package/dist/esm/components/resources/skeleton/WizardStep.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 +31 -2
- package/dist/esm/components/resources/skeleton/section-consolidation.utils.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 +176 -61
- 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 +14 -7
- 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 +18 -1
- package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldEditPreset_ResourceReference_Default.labels.js.map +1 -1
- package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.d.ts +8 -0
- 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 +3 -0
- 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 +48 -17
- 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 +226 -74
- 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 +2 -3
- package/dist/esm/components/sections/ContentSectionContainer.labels.js.map +1 -1
- package/dist/esm/components/sections/content-section.d.ts +2 -2
- package/dist/esm/components/sections/content-section.js.map +1 -1
- package/dist/esm/components/sections/section-grouping.shared.d.ts +19 -0
- package/dist/esm/components/sections/section-grouping.shared.d.ts.map +1 -1
- package/dist/esm/components/sections/section-grouping.shared.js +24 -0
- package/dist/esm/components/sections/section-grouping.shared.js.map +1 -1
- package/dist/esm/components/sections/section-legend-voice.context.d.ts +19 -0
- package/dist/esm/components/sections/section-legend-voice.context.d.ts.map +1 -0
- package/dist/esm/components/sections/section-legend-voice.context.js +21 -0
- package/dist/esm/components/sections/section-legend-voice.context.js.map +1 -0
- package/dist/esm/components/sections/section-legend-voice.d.ts +41 -0
- package/dist/esm/components/sections/section-legend-voice.d.ts.map +1 -0
- package/dist/esm/components/sections/section-legend-voice.js +67 -0
- package/dist/esm/components/sections/section-legend-voice.js.map +1 -0
- package/dist/esm/components/sections/stepper.d.ts +14 -0
- 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 +10 -2
- package/dist/esm/components/sections/surface.js.map +1 -1
- package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.d.ts +39 -0
- package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.d.ts.map +1 -0
- package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.js +187 -0
- package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.js.map +1 -0
- package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.labels.d.ts +3 -0
- package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.labels.d.ts.map +1 -0
- package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.labels.js +34 -0
- package/dist/esm/components/settings/AppPage_AgentWorkEvaluationExportSettings.labels.js.map +1 -0
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.d.ts +1 -1
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.js +1 -1
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.js.map +1 -1
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.labels.js +8 -8
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.labels.js.map +1 -1
- package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.d.ts +43 -0
- package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.d.ts.map +1 -0
- package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.js +142 -0
- package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.js.map +1 -0
- package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.labels.d.ts +3 -0
- package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.labels.d.ts.map +1 -0
- package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.labels.js +62 -0
- package/dist/esm/components/settings/AppPage_AutonomousAgentsSettings.labels.js.map +1 -0
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts +25 -8
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.js +275 -71
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.js.map +1 -1
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.js +91 -14
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.js.map +1 -1
- package/dist/esm/components/settings/AppPage_InvitationsSettings.d.ts +13 -8
- package/dist/esm/components/settings/AppPage_InvitationsSettings.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_InvitationsSettings.js +95 -23
- 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 +25 -2
- package/dist/esm/components/settings/AppPage_InvitationsSettings.labels.js.map +1 -1
- package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.d.ts +67 -0
- package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.d.ts.map +1 -0
- package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.js +177 -0
- package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.js.map +1 -0
- package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.labels.d.ts +3 -0
- package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.labels.d.ts.map +1 -0
- package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.labels.js +45 -0
- package/dist/esm/components/settings/AppPage_ModelCostBreakdownSettings.labels.js.map +1 -0
- package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.d.ts +35 -0
- package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.d.ts.map +1 -0
- package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.js +137 -0
- package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.js.map +1 -0
- package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.labels.d.ts +3 -0
- package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.labels.d.ts.map +1 -0
- package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.labels.js +38 -0
- package/dist/esm/components/settings/AppPage_RepresentativeActivitySettings.labels.js.map +1 -0
- package/dist/esm/components/settings/SettingsHub.d.ts +3 -3
- package/dist/esm/components/settings/SettingsHub.d.ts.map +1 -1
- package/dist/esm/components/settings/SettingsHub.js +98 -48
- 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 +2 -0
- package/dist/esm/components/settings/SettingsHub.labels.js.map +1 -1
- package/dist/esm/components/settings/SettingsResourceOperationPanel.d.ts.map +1 -1
- package/dist/esm/components/settings/SettingsResourceOperationPanel.js +21 -1
- package/dist/esm/components/settings/SettingsResourceOperationPanel.js.map +1 -1
- package/dist/esm/components/settings/useOwnerProviderConnections.d.ts +24 -5
- package/dist/esm/components/settings/useOwnerProviderConnections.d.ts.map +1 -1
- package/dist/esm/components/settings/useOwnerProviderConnections.js +67 -9
- package/dist/esm/components/settings/useOwnerProviderConnections.js.map +1 -1
- package/dist/esm/components/views/chart-view/ChartView.js +3 -3
- package/dist/esm/components/views/chart-view/ChartView.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 +2 -9
- package/dist/esm/components/views/chart-view/chart-export.utils.js.map +1 -1
- package/dist/esm/components/views/chart-view/enum-color-bridge.d.ts +1 -0
- 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 +10 -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 +8 -6
- 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 +10 -8
- 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.js +2 -2
- 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.js +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/composed.builder.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/line-family.builder.js +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/scatter-family.builder.js +1 -1
- package/dist/esm/components/views/chart-view/option-builder/builders/scatter-family.builder.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.d.ts +6 -0
- package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/chart-type-builder.interface.js.map +1 -1
- package/dist/esm/components/views/chart-view/option-builder/echarts-option-builder.d.ts +3 -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 +4 -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 +0 -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/useCompositeResourceOperationContextBuilder.d.ts.map +1 -1
- package/dist/esm/components/views/composite-view/useCompositeResourceOperationContextBuilder.js +24 -1
- package/dist/esm/components/views/composite-view/useCompositeResourceOperationContextBuilder.js.map +1 -1
- package/dist/esm/components/views/flows-actors-view/AgentReplyReportAction.d.ts +29 -0
- package/dist/esm/components/views/flows-actors-view/AgentReplyReportAction.d.ts.map +1 -0
- package/dist/esm/components/views/flows-actors-view/AgentReplyReportAction.js +104 -0
- package/dist/esm/components/views/flows-actors-view/AgentReplyReportAction.js.map +1 -0
- package/dist/esm/components/views/flows-actors-view/FlowsActorsView.d.ts +16 -5
- package/dist/esm/components/views/flows-actors-view/FlowsActorsView.d.ts.map +1 -1
- package/dist/esm/components/views/flows-actors-view/FlowsActorsView.js +219 -230
- 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 +5 -0
- 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 +15 -13
- package/dist/esm/components/views/flows-actors-view/FlowsActorsView.labels.js.map +1 -1
- package/dist/esm/components/views/flows-actors-view/held-conversation-selection.d.ts +13 -0
- package/dist/esm/components/views/flows-actors-view/held-conversation-selection.d.ts.map +1 -0
- package/dist/esm/components/views/flows-actors-view/held-conversation-selection.js +44 -0
- package/dist/esm/components/views/flows-actors-view/held-conversation-selection.js.map +1 -0
- package/dist/esm/core/app-shell/AppShellBuildingBlocks.d.ts.map +1 -1
- package/dist/esm/core/app-shell/AppShellBuildingBlocks.js +6 -2
- package/dist/esm/core/app-shell/AppShellBuildingBlocks.js.map +1 -1
- package/dist/esm/core/app-shell/app-shell.schemas.d.ts +64 -9
- package/dist/esm/core/app-shell/app-shell.schemas.d.ts.map +1 -1
- package/dist/esm/core/app-shell/app-shell.schemas.js.map +1 -1
- package/dist/esm/core/app-shell/hosted-components.utils.d.ts +11 -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 +25 -0
- package/dist/esm/core/app-shell/hosted-components.utils.js.map +1 -1
- package/dist/esm/core/app-shell/shell-layout.d.ts +138 -0
- package/dist/esm/core/app-shell/shell-layout.d.ts.map +1 -0
- package/dist/esm/core/app-shell/shell-layout.js +143 -0
- package/dist/esm/core/app-shell/shell-layout.js.map +1 -0
- package/dist/esm/core/app-shell/shell-motion/shell-layout-stylesheet.d.ts +13 -0
- package/dist/esm/core/app-shell/shell-motion/shell-layout-stylesheet.d.ts.map +1 -0
- package/dist/esm/core/app-shell/shell-motion/shell-layout-stylesheet.js +49 -0
- package/dist/esm/core/app-shell/shell-motion/shell-layout-stylesheet.js.map +1 -0
- package/dist/esm/core/app-shell/shell-motion/shell-motion-origins.d.ts +95 -0
- package/dist/esm/core/app-shell/shell-motion/shell-motion-origins.d.ts.map +1 -0
- package/dist/esm/core/app-shell/shell-motion/shell-motion-origins.js +316 -0
- package/dist/esm/core/app-shell/shell-motion/shell-motion-origins.js.map +1 -0
- package/dist/esm/core/app-shell/shell-motion/shell-motion-vocabulary.d.ts +217 -0
- package/dist/esm/core/app-shell/shell-motion/shell-motion-vocabulary.d.ts.map +1 -0
- package/dist/esm/core/app-shell/shell-motion/shell-motion-vocabulary.js +197 -0
- package/dist/esm/core/app-shell/shell-motion/shell-motion-vocabulary.js.map +1 -0
- package/dist/esm/core/app-shell/shell-motion/shell-view-transition.d.ts +46 -0
- package/dist/esm/core/app-shell/shell-motion/shell-view-transition.d.ts.map +1 -0
- package/dist/esm/core/app-shell/shell-motion/shell-view-transition.js +139 -0
- package/dist/esm/core/app-shell/shell-motion/shell-view-transition.js.map +1 -0
- package/dist/esm/core/app-shell/shell-motion/use-shell-motion.d.ts +108 -0
- package/dist/esm/core/app-shell/shell-motion/use-shell-motion.d.ts.map +1 -0
- package/dist/esm/core/app-shell/shell-motion/use-shell-motion.js +423 -0
- package/dist/esm/core/app-shell/shell-motion/use-shell-motion.js.map +1 -0
- package/dist/esm/core/app-shell/useAppShellLayout.d.ts.map +1 -1
- package/dist/esm/core/app-shell/useAppShellLayout.js +6 -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 +11 -4
- package/dist/esm/core/app-shell/usePublicShellLayout.js.map +1 -1
- package/dist/esm/core/automated-layout/automated-layout.frontend.utils.d.ts +18 -1
- package/dist/esm/core/automated-layout/automated-layout.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/automated-layout/automated-layout.frontend.utils.js +26 -4
- package/dist/esm/core/automated-layout/automated-layout.frontend.utils.js.map +1 -1
- package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.js +3 -22
- package/dist/esm/core/automated-layout/composite-value-defaults.frontend.utils.js.map +1 -1
- package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.d.ts +19 -3
- 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 +100 -13
- package/dist/esm/core/automated-layout/default-layout-generator.frontend.utils.js.map +1 -1
- package/dist/esm/core/automated-layout/summary-value-naming.utils.d.ts +67 -0
- package/dist/esm/core/automated-layout/summary-value-naming.utils.d.ts.map +1 -0
- package/dist/esm/core/automated-layout/summary-value-naming.utils.js +100 -0
- package/dist/esm/core/automated-layout/summary-value-naming.utils.js.map +1 -0
- package/dist/esm/core/billing/BillingContext.d.ts +0 -17
- package/dist/esm/core/billing/BillingContext.d.ts.map +1 -1
- package/dist/esm/core/billing/BillingContext.js +6 -1
- package/dist/esm/core/billing/BillingContext.js.map +1 -1
- package/dist/esm/core/branding/OrganizationBrandingPublisher.d.ts +2 -0
- package/dist/esm/core/branding/OrganizationBrandingPublisher.d.ts.map +1 -0
- package/dist/esm/core/branding/OrganizationBrandingPublisher.js +78 -0
- package/dist/esm/core/branding/OrganizationBrandingPublisher.js.map +1 -0
- package/dist/esm/core/branding/useBrandIdentity.d.ts +21 -0
- package/dist/esm/core/branding/useBrandIdentity.d.ts.map +1 -1
- package/dist/esm/core/branding/useBrandIdentity.js +31 -5
- package/dist/esm/core/branding/useBrandIdentity.js.map +1 -1
- package/dist/esm/core/branding/useBrandPresentation.d.ts +5 -0
- package/dist/esm/core/branding/useBrandPresentation.d.ts.map +1 -1
- package/dist/esm/core/branding/useBrandPresentation.js +1 -0
- package/dist/esm/core/branding/useBrandPresentation.js.map +1 -1
- package/dist/esm/core/branding/useDisplayableImageUrl.d.ts +4 -0
- package/dist/esm/core/branding/useDisplayableImageUrl.d.ts.map +1 -0
- package/dist/esm/core/branding/useDisplayableImageUrl.js +66 -0
- package/dist/esm/core/branding/useDisplayableImageUrl.js.map +1 -0
- package/dist/esm/core/branding/useOrganizationDocumentTitle.d.ts +2 -0
- package/dist/esm/core/branding/useOrganizationDocumentTitle.d.ts.map +1 -0
- package/dist/esm/core/branding/useOrganizationDocumentTitle.js +23 -0
- package/dist/esm/core/branding/useOrganizationDocumentTitle.js.map +1 -0
- package/dist/esm/core/commons/save-blob-as-file.frontend.utils.d.ts +16 -0
- package/dist/esm/core/commons/save-blob-as-file.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/commons/save-blob-as-file.frontend.utils.js +35 -0
- package/dist/esm/core/commons/save-blob-as-file.frontend.utils.js.map +1 -0
- 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 +8 -0
- package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.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 +34 -5
- package/dist/esm/core/components-registry/component-resolver.frontend.helper.js.map +1 -1
- package/dist/esm/core/components-registry/register-framework-layouts.d.ts.map +1 -1
- package/dist/esm/core/components-registry/register-framework-layouts.js +4 -0
- package/dist/esm/core/components-registry/register-framework-layouts.js.map +1 -1
- package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts +36 -0
- package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/app-configuration-frontend.schemas.js +29 -2
- 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 +10 -16
- 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 +10 -16
- 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 +12 -8
- package/dist/esm/core/config/chart-view.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/chart-view.frontend.schemas.js +10 -0
- package/dist/esm/core/config/chart-view.frontend.schemas.js.map +1 -1
- package/dist/esm/core/config/composite-view.schemas.d.ts +2 -2
- package/dist/esm/core/config/config-merge-utilities.d.ts +31 -3
- package/dist/esm/core/config/config-merge-utilities.d.ts.map +1 -1
- package/dist/esm/core/config/config-merge-utilities.js +61 -7
- package/dist/esm/core/config/config-merge-utilities.js.map +1 -1
- package/dist/esm/core/config/decision-inbox-capability.frontend.utils.d.ts +83 -0
- package/dist/esm/core/config/decision-inbox-capability.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/config/decision-inbox-capability.frontend.utils.js +100 -0
- package/dist/esm/core/config/decision-inbox-capability.frontend.utils.js.map +1 -0
- package/dist/esm/core/config/directory-provisioning-capabilities.frontend.utils.d.ts +69 -0
- package/dist/esm/core/config/directory-provisioning-capabilities.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/config/directory-provisioning-capabilities.frontend.utils.js +65 -0
- package/dist/esm/core/config/directory-provisioning-capabilities.frontend.utils.js.map +1 -0
- package/dist/esm/core/config/engine-settings-destinations.d.ts +13 -1
- package/dist/esm/core/config/engine-settings-destinations.d.ts.map +1 -1
- package/dist/esm/core/config/engine-settings-destinations.js +588 -155
- package/dist/esm/core/config/engine-settings-destinations.js.map +1 -1
- package/dist/esm/core/config/execution-view.schemas.d.ts +17 -3
- package/dist/esm/core/config/execution-view.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/execution-view.schemas.js +1 -1
- package/dist/esm/core/config/execution-view.schemas.js.map +1 -1
- package/dist/esm/core/config/flows-actors-view.schemas.d.ts +12 -2
- package/dist/esm/core/config/flows-actors-view.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/flows-actors-view.schemas.js +13 -1
- package/dist/esm/core/config/flows-actors-view.schemas.js.map +1 -1
- package/dist/esm/core/config/inserted-view-launcher.schemas.d.ts +12 -11
- package/dist/esm/core/config/inserted-view-launcher.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/inserted-view-launcher.schemas.js +14 -13
- package/dist/esm/core/config/inserted-view-launcher.schemas.js.map +1 -1
- package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts +77 -27
- package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/launcher-items.frontend.schemas.js +18 -13
- package/dist/esm/core/config/launcher-items.frontend.schemas.js.map +1 -1
- package/dist/esm/core/config/relationship-side-capabilities.frontend.utils.d.ts +79 -0
- package/dist/esm/core/config/relationship-side-capabilities.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/config/relationship-side-capabilities.frontend.utils.js +95 -0
- package/dist/esm/core/config/relationship-side-capabilities.frontend.utils.js.map +1 -0
- package/dist/esm/core/config/settings-hub-gating.frontend.utils.d.ts +19 -7
- 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 +45 -10
- package/dist/esm/core/config/settings-hub-gating.frontend.utils.js.map +1 -1
- package/dist/esm/core/config/settings-hub-presentation.frontend.utils.d.ts +2 -2
- package/dist/esm/core/config/settings-hub-presentation.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/config/settings-hub-presentation.frontend.utils.js +38 -5
- package/dist/esm/core/config/settings-hub-presentation.frontend.utils.js.map +1 -1
- package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts +94 -10
- package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/settings-hub.frontend.schemas.js +40 -3
- 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 +4 -1
- package/dist/esm/core/config/useSettingsHubConfig.js.map +1 -1
- package/dist/esm/core/config/useVisibleSettingsHubConfig.d.ts +2 -2
- package/dist/esm/core/config/useVisibleSettingsHubConfig.d.ts.map +1 -1
- package/dist/esm/core/config/useVisibleSettingsHubConfig.js +7 -8
- package/dist/esm/core/config/useVisibleSettingsHubConfig.js.map +1 -1
- package/dist/esm/core/config/verify-launcher-content.d.ts +16 -2
- package/dist/esm/core/config/verify-launcher-content.d.ts.map +1 -1
- package/dist/esm/core/config/verify-launcher-content.js +64 -4
- package/dist/esm/core/config/verify-launcher-content.js.map +1 -1
- package/dist/esm/core/config/verify-settings-hub-content.d.ts +4 -0
- package/dist/esm/core/config/verify-settings-hub-content.d.ts.map +1 -1
- package/dist/esm/core/config/verify-settings-hub-content.js +34 -0
- package/dist/esm/core/config/verify-settings-hub-content.js.map +1 -1
- package/dist/esm/core/enums/common-enum-registry.d.ts +16 -23
- package/dist/esm/core/enums/common-enum-registry.d.ts.map +1 -1
- package/dist/esm/core/enums/common-enum-registry.js +26 -29
- package/dist/esm/core/enums/common-enum-registry.js.map +1 -1
- package/dist/esm/core/errors/GlobalErrorHandler.d.ts.map +1 -1
- package/dist/esm/core/errors/GlobalErrorHandler.js +71 -9
- package/dist/esm/core/errors/GlobalErrorHandler.js.map +1 -1
- package/dist/esm/core/errors/error-management.frontend.service.d.ts +0 -4
- package/dist/esm/core/errors/error-management.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/errors/error-management.frontend.service.js +5 -8
- package/dist/esm/core/errors/error-management.frontend.service.js.map +1 -1
- package/dist/esm/core/errors/errors.frontend.schemas.d.ts +21 -10
- 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/user-facing-error-message.frontend.utils.d.ts +35 -0
- package/dist/esm/core/errors/user-facing-error-message.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/errors/user-facing-error-message.frontend.utils.js +44 -5
- package/dist/esm/core/errors/user-facing-error-message.frontend.utils.js.map +1 -1
- package/dist/esm/core/events/EventBusContext.js.map +1 -1
- package/dist/esm/core/events/NotificationContext.d.ts +13 -1
- package/dist/esm/core/events/NotificationContext.d.ts.map +1 -1
- package/dist/esm/core/events/NotificationContext.js +89 -22
- package/dist/esm/core/events/NotificationContext.js.map +1 -1
- package/dist/esm/core/events/events.frontend.schemas.d.ts +68 -4
- package/dist/esm/core/events/events.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/events/events.frontend.schemas.js +67 -3
- package/dist/esm/core/events/events.frontend.schemas.js.map +1 -1
- package/dist/esm/core/events/useNotificationPreferenceKinds.d.ts +9 -0
- package/dist/esm/core/events/useNotificationPreferenceKinds.d.ts.map +1 -0
- package/dist/esm/core/events/useNotificationPreferenceKinds.js +50 -0
- package/dist/esm/core/events/useNotificationPreferenceKinds.js.map +1 -0
- package/dist/esm/core/execution/useExecution.js +1 -1
- package/dist/esm/core/execution/useExecution.js.map +1 -1
- package/dist/esm/core/execution/useExecutionParticipationRMM.d.ts.map +1 -1
- package/dist/esm/core/execution/useExecutionParticipationRMM.js +4 -0
- package/dist/esm/core/execution/useExecutionParticipationRMM.js.map +1 -1
- package/dist/esm/core/execution/useExecutionResourceOperationSurface.d.ts.map +1 -1
- package/dist/esm/core/execution/useExecutionResourceOperationSurface.js +3 -3
- package/dist/esm/core/execution/useExecutionResourceOperationSurface.js.map +1 -1
- package/dist/esm/core/external-providers/chat-sign-in-completion.frontend.d.ts +52 -0
- package/dist/esm/core/external-providers/chat-sign-in-completion.frontend.d.ts.map +1 -0
- package/dist/esm/core/external-providers/chat-sign-in-completion.frontend.js +88 -0
- package/dist/esm/core/external-providers/chat-sign-in-completion.frontend.js.map +1 -0
- package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.d.ts +20 -2
- package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.js +18 -1
- package/dist/esm/core/external-providers/frontend-provider-registry.frontend.service.js.map +1 -1
- package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.d.ts +7 -5
- package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.d.ts.map +1 -1
- package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.js +9 -6
- package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.js.map +1 -1
- package/dist/esm/core/features/FeaturesContext.d.ts +9 -1
- package/dist/esm/core/features/FeaturesContext.d.ts.map +1 -1
- package/dist/esm/core/features/FeaturesContext.js +38 -12
- package/dist/esm/core/features/FeaturesContext.js.map +1 -1
- package/dist/esm/core/features/useOperationFeatureAvailability.d.ts.map +1 -1
- package/dist/esm/core/features/useOperationFeatureAvailability.js +4 -0
- package/dist/esm/core/features/useOperationFeatureAvailability.js.map +1 -1
- package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts +90 -33
- package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts.map +1 -1
- package/dist/esm/core/flows-actors/FlowsActorsContext.js +153 -100
- package/dist/esm/core/flows-actors/FlowsActorsContext.js.map +1 -1
- package/dist/esm/core/flows-actors/conversation-history.model.d.ts +41 -0
- package/dist/esm/core/flows-actors/conversation-history.model.d.ts.map +1 -0
- package/dist/esm/core/flows-actors/conversation-history.model.js +65 -0
- package/dist/esm/core/flows-actors/conversation-history.model.js.map +1 -0
- package/dist/esm/core/flows-actors/conversation-thread.model.d.ts +144 -0
- package/dist/esm/core/flows-actors/conversation-thread.model.d.ts.map +1 -0
- package/dist/esm/core/flows-actors/conversation-thread.model.js +315 -0
- package/dist/esm/core/flows-actors/conversation-thread.model.js.map +1 -0
- package/dist/esm/core/flows-actors/execution-usages-batch.frontend.utils.d.ts +29 -0
- package/dist/esm/core/flows-actors/execution-usages-batch.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/flows-actors/execution-usages-batch.frontend.utils.js +67 -0
- package/dist/esm/core/flows-actors/execution-usages-batch.frontend.utils.js.map +1 -0
- package/dist/esm/core/flows-actors/graph-view.layout.d.ts +77 -0
- package/dist/esm/core/flows-actors/graph-view.layout.d.ts.map +1 -0
- package/dist/esm/core/flows-actors/graph-view.layout.js +169 -0
- package/dist/esm/core/flows-actors/graph-view.layout.js.map +1 -0
- package/dist/esm/core/flows-actors/graph-view.model.d.ts +245 -0
- package/dist/esm/core/flows-actors/graph-view.model.d.ts.map +1 -0
- package/dist/esm/core/flows-actors/graph-view.model.js +414 -0
- package/dist/esm/core/flows-actors/graph-view.model.js.map +1 -0
- package/dist/esm/core/flows-actors/model-cost-money.frontend.utils.d.ts +12 -0
- package/dist/esm/core/flows-actors/model-cost-money.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/flows-actors/model-cost-money.frontend.utils.js +20 -0
- package/dist/esm/core/flows-actors/model-cost-money.frontend.utils.js.map +1 -0
- package/dist/esm/core/flows-actors/usePendingDecisions.d.ts +36 -11
- package/dist/esm/core/flows-actors/usePendingDecisions.d.ts.map +1 -1
- package/dist/esm/core/flows-actors/usePendingDecisions.js +114 -29
- package/dist/esm/core/flows-actors/usePendingDecisions.js.map +1 -1
- package/dist/esm/core/guidance/GuidanceContext.d.ts.map +1 -1
- package/dist/esm/core/guidance/GuidanceContext.js +1 -2
- package/dist/esm/core/guidance/GuidanceContext.js.map +1 -1
- package/dist/esm/core/guidance/renderers/GuidanceChecklist.labels.js +2 -2
- package/dist/esm/core/guidance/renderers/GuidanceChecklist.labels.js.map +1 -1
- package/dist/esm/core/hotkey/DefaultHotkeyHandler.d.ts +3 -9
- package/dist/esm/core/hotkey/DefaultHotkeyHandler.d.ts.map +1 -1
- package/dist/esm/core/hotkey/DefaultHotkeyHandler.js +3 -15
- package/dist/esm/core/hotkey/DefaultHotkeyHandler.js.map +1 -1
- package/dist/esm/core/hotkey/merge-hotkey-emit-shortcuts.d.ts +2 -2
- package/dist/esm/core/hotkey/merge-hotkey-emit-shortcuts.js +2 -2
- package/dist/esm/core/hotkey/merge-hotkey-emit-shortcuts.js.map +1 -1
- package/dist/esm/core/i18n/I18nContext.d.ts +52 -3
- package/dist/esm/core/i18n/I18nContext.d.ts.map +1 -1
- package/dist/esm/core/i18n/I18nContext.js +80 -7
- package/dist/esm/core/i18n/I18nContext.js.map +1 -1
- package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.d.ts +82 -1
- package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.js +121 -6
- package/dist/esm/core/i18n/regional-preference-resolution.frontend.utils.js.map +1 -1
- package/dist/esm/core/i18n/useI18n.d.ts +3 -1
- package/dist/esm/core/i18n/useI18n.d.ts.map +1 -1
- package/dist/esm/core/i18n/useI18n.js +3 -1
- package/dist/esm/core/i18n/useI18n.js.map +1 -1
- package/dist/esm/core/icons/IconRegistryBridge.d.ts +38 -4
- package/dist/esm/core/icons/IconRegistryBridge.d.ts.map +1 -1
- package/dist/esm/core/icons/IconRegistryBridge.js +103 -63
- 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 +41 -0
- package/dist/esm/core/icons/IconRegistryContext.js.map +1 -1
- package/dist/esm/core/icons/icon-registry.frontend.schemas.d.ts +44 -0
- package/dist/esm/core/icons/icon-registry.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/icons/icon-registry.frontend.schemas.js +46 -0
- package/dist/esm/core/icons/icon-registry.frontend.schemas.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.js +2 -2
- package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.js.map +1 -1
- package/dist/esm/core/navigation/NavigationContentAreas.d.ts +64 -20
- package/dist/esm/core/navigation/NavigationContentAreas.d.ts.map +1 -1
- package/dist/esm/core/navigation/NavigationContentAreas.js +82 -51
- package/dist/esm/core/navigation/NavigationContentAreas.js.map +1 -1
- package/dist/esm/core/navigation/NavigationContext.d.ts.map +1 -1
- package/dist/esm/core/navigation/NavigationContext.js +130 -23
- package/dist/esm/core/navigation/NavigationContext.js.map +1 -1
- package/dist/esm/core/navigation/NavigationRequestBridge.d.ts +4 -0
- package/dist/esm/core/navigation/NavigationRequestBridge.d.ts.map +1 -1
- package/dist/esm/core/navigation/NavigationRequestBridge.js +17 -1
- package/dist/esm/core/navigation/NavigationRequestBridge.js.map +1 -1
- package/dist/esm/core/navigation/ZoneChromeContext.d.ts +80 -0
- package/dist/esm/core/navigation/ZoneChromeContext.d.ts.map +1 -0
- package/dist/esm/core/navigation/ZoneChromeContext.js +130 -0
- package/dist/esm/core/navigation/ZoneChromeContext.js.map +1 -0
- package/dist/esm/core/navigation/launcher-resolution.d.ts +102 -2
- package/dist/esm/core/navigation/launcher-resolution.d.ts.map +1 -1
- package/dist/esm/core/navigation/launcher-resolution.js +194 -9
- package/dist/esm/core/navigation/launcher-resolution.js.map +1 -1
- package/dist/esm/core/navigation/launcher-runtime-availability.d.ts +35 -5
- package/dist/esm/core/navigation/launcher-runtime-availability.d.ts.map +1 -1
- package/dist/esm/core/navigation/launcher-runtime-availability.js +147 -18
- package/dist/esm/core/navigation/launcher-runtime-availability.js.map +1 -1
- package/dist/esm/core/navigation/navigation-cascade.d.ts +44 -14
- package/dist/esm/core/navigation/navigation-cascade.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation-cascade.js +87 -19
- package/dist/esm/core/navigation/navigation-cascade.js.map +1 -1
- package/dist/esm/core/navigation/navigation-commit.d.ts +45 -0
- package/dist/esm/core/navigation/navigation-commit.d.ts.map +1 -0
- package/dist/esm/core/navigation/navigation-commit.js +68 -0
- package/dist/esm/core/navigation/navigation-commit.js.map +1 -0
- package/dist/esm/core/navigation/navigation-controller-internals.d.ts +54 -3
- package/dist/esm/core/navigation/navigation-controller-internals.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation-controller-internals.js +91 -3
- package/dist/esm/core/navigation/navigation-controller-internals.js.map +1 -1
- package/dist/esm/core/navigation/navigation-policy-resolver.service.d.ts +3 -3
- package/dist/esm/core/navigation/navigation-policy-resolver.service.js +3 -3
- package/dist/esm/core/navigation/navigation-policy-resolver.service.js.map +1 -1
- package/dist/esm/core/navigation/navigation.utils.d.ts +95 -22
- package/dist/esm/core/navigation/navigation.utils.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation.utils.js +190 -63
- package/dist/esm/core/navigation/navigation.utils.js.map +1 -1
- package/dist/esm/core/navigation/sidebar-resource-browser-operation.d.ts +8 -0
- package/dist/esm/core/navigation/sidebar-resource-browser-operation.d.ts.map +1 -0
- package/dist/esm/core/navigation/sidebar-resource-browser-operation.js +27 -0
- package/dist/esm/core/navigation/sidebar-resource-browser-operation.js.map +1 -0
- package/dist/esm/core/navigation/useCurrentOrganizationHoldsUnrevokedScimToken.d.ts +64 -0
- package/dist/esm/core/navigation/useCurrentOrganizationHoldsUnrevokedScimToken.d.ts.map +1 -0
- package/dist/esm/core/navigation/useCurrentOrganizationHoldsUnrevokedScimToken.js +212 -0
- package/dist/esm/core/navigation/useCurrentOrganizationHoldsUnrevokedScimToken.js.map +1 -0
- package/dist/esm/core/navigation/useLauncherResolutionContext.d.ts +1 -1
- package/dist/esm/core/navigation/useLauncherResolutionContext.d.ts.map +1 -1
- package/dist/esm/core/navigation/useLauncherResolutionContext.js +17 -2
- package/dist/esm/core/navigation/useLauncherResolutionContext.js.map +1 -1
- package/dist/esm/core/navigation/useNavigationController.d.ts +1 -0
- package/dist/esm/core/navigation/useNavigationController.d.ts.map +1 -1
- package/dist/esm/core/navigation/useNavigationController.js +51 -67
- package/dist/esm/core/navigation/useNavigationController.js.map +1 -1
- package/dist/esm/core/navigation/useNavigationRouterSync.d.ts.map +1 -1
- package/dist/esm/core/navigation/useNavigationRouterSync.js +17 -1
- package/dist/esm/core/navigation/useNavigationRouterSync.js.map +1 -1
- package/dist/esm/core/navigation/useZoneEntryOrganizationHold.d.ts +17 -0
- package/dist/esm/core/navigation/useZoneEntryOrganizationHold.d.ts.map +1 -0
- package/dist/esm/core/navigation/useZoneEntryOrganizationHold.js +32 -0
- package/dist/esm/core/navigation/useZoneEntryOrganizationHold.js.map +1 -0
- package/dist/esm/core/navigation/zone-collapse.d.ts +2 -1
- package/dist/esm/core/navigation/zone-collapse.d.ts.map +1 -1
- package/dist/esm/core/navigation/zone-collapse.js +2 -1
- package/dist/esm/core/navigation/zone-collapse.js.map +1 -1
- package/dist/esm/core/navigation/zone-entry-organization.d.ts +34 -0
- package/dist/esm/core/navigation/zone-entry-organization.d.ts.map +1 -0
- package/dist/esm/core/navigation/zone-entry-organization.js +77 -0
- package/dist/esm/core/navigation/zone-entry-organization.js.map +1 -0
- package/dist/esm/core/requests/auth-refresh-resilience.frontend.d.ts +15 -0
- package/dist/esm/core/requests/auth-refresh-resilience.frontend.d.ts.map +1 -1
- package/dist/esm/core/requests/auth-refresh-resilience.frontend.js +24 -0
- package/dist/esm/core/requests/auth-refresh-resilience.frontend.js.map +1 -1
- package/dist/esm/core/requests/automatic-resend-safety.frontend.d.ts +74 -0
- package/dist/esm/core/requests/automatic-resend-safety.frontend.d.ts.map +1 -0
- package/dist/esm/core/requests/automatic-resend-safety.frontend.js +52 -0
- package/dist/esm/core/requests/automatic-resend-safety.frontend.js.map +1 -0
- package/dist/esm/core/requests/websockets/WebSocketContext.d.ts.map +1 -1
- package/dist/esm/core/requests/websockets/WebSocketContext.js +31 -0
- 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 +2 -0
- package/dist/esm/core/requests/websockets/WebSocketEventBridge.js.map +1 -1
- package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.d.ts +162 -98
- 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 +283 -157
- 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 +9 -13
- 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 +45 -97
- 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 +25 -5
- 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 +56 -11
- package/dist/esm/core/requests/wildo-http-client.frontend.service.js.map +1 -1
- package/dist/esm/core/resources/ScopedResourceRegistryProvider.d.ts.map +1 -1
- package/dist/esm/core/resources/ScopedResourceRegistryProvider.js +1 -2
- package/dist/esm/core/resources/ScopedResourceRegistryProvider.js.map +1 -1
- package/dist/esm/core/resources/calendar-date-fields.frontend.utils.d.ts +14 -0
- package/dist/esm/core/resources/calendar-date-fields.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/resources/calendar-date-fields.frontend.utils.js +29 -0
- package/dist/esm/core/resources/calendar-date-fields.frontend.utils.js.map +1 -0
- package/dist/esm/core/resources/caller-identity-record.frontend.utils.d.ts +23 -0
- package/dist/esm/core/resources/caller-identity-record.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/resources/caller-identity-record.frontend.utils.js +26 -0
- package/dist/esm/core/resources/caller-identity-record.frontend.utils.js.map +1 -0
- package/dist/esm/core/resources/collection-export-url.frontend.utils.d.ts +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 +34 -16
- package/dist/esm/core/resources/collection-export-url.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/collection-filter-presets.frontend.utils.d.ts +54 -11
- package/dist/esm/core/resources/collection-filter-presets.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/collection-filter-presets.frontend.utils.js +131 -63
- package/dist/esm/core/resources/collection-filter-presets.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/date-filter-window.frontend.utils.d.ts +58 -0
- package/dist/esm/core/resources/date-filter-window.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/resources/date-filter-window.frontend.utils.js +70 -0
- package/dist/esm/core/resources/date-filter-window.frontend.utils.js.map +1 -0
- package/dist/esm/core/resources/frontend-resource.utils.d.ts +146 -7
- package/dist/esm/core/resources/frontend-resource.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/frontend-resource.utils.js +194 -22
- package/dist/esm/core/resources/frontend-resource.utils.js.map +1 -1
- package/dist/esm/core/resources/hooks/useOperationEnabled.d.ts +18 -4
- package/dist/esm/core/resources/hooks/useOperationEnabled.d.ts.map +1 -1
- package/dist/esm/core/resources/hooks/useOperationEnabled.js +26 -6
- package/dist/esm/core/resources/hooks/useOperationEnabled.js.map +1 -1
- package/dist/esm/core/resources/operation-semantics.frontend.utils.d.ts +95 -2
- package/dist/esm/core/resources/operation-semantics.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/operation-semantics.frontend.utils.js +126 -13
- package/dist/esm/core/resources/operation-semantics.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/read-through-organization-unit.frontend.utils.d.ts +45 -0
- package/dist/esm/core/resources/read-through-organization-unit.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/resources/read-through-organization-unit.frontend.utils.js +46 -0
- package/dist/esm/core/resources/read-through-organization-unit.frontend.utils.js.map +1 -0
- package/dist/esm/core/resources/referenced-record-scope.frontend.utils.d.ts +46 -0
- package/dist/esm/core/resources/referenced-record-scope.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/resources/referenced-record-scope.frontend.utils.js +86 -0
- package/dist/esm/core/resources/referenced-record-scope.frontend.utils.js.map +1 -0
- 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 +5 -1
- package/dist/esm/core/resources/relationship-quick-create.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/resource-addressability.frontend.utils.d.ts +28 -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 +43 -3
- package/dist/esm/core/resources/resource-addressability.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/resource-discriminators.frontend.utils.d.ts +26 -0
- package/dist/esm/core/resources/resource-discriminators.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/resources/resource-discriminators.frontend.utils.js +37 -0
- package/dist/esm/core/resources/resource-discriminators.frontend.utils.js.map +1 -0
- package/dist/esm/core/resources/resources-repository.frontend.service.d.ts +40 -8
- package/dist/esm/core/resources/resources-repository.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/resources/resources-repository.frontend.service.js +333 -73
- package/dist/esm/core/resources/resources-repository.frontend.service.js.map +1 -1
- package/dist/esm/core/resources/resources.frontend.schemas.d.ts +175 -65
- package/dist/esm/core/resources/resources.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/resources/resources.frontend.schemas.js +245 -75
- package/dist/esm/core/resources/resources.frontend.schemas.js.map +1 -1
- package/dist/esm/core/resources/rmm/HttpTransportAdapter.d.ts +9 -1
- package/dist/esm/core/resources/rmm/HttpTransportAdapter.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/HttpTransportAdapter.js +57 -22
- 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 +1 -0
- package/dist/esm/core/resources/rmm/RMMRegistry.js.map +1 -1
- package/dist/esm/core/resources/rmm/ResourceMutationManager.d.ts +3 -0
- package/dist/esm/core/resources/rmm/ResourceMutationManager.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/ResourceMutationManager.js +94 -35
- package/dist/esm/core/resources/rmm/ResourceMutationManager.js.map +1 -1
- package/dist/esm/core/resources/rmm/types.d.ts +58 -6
- package/dist/esm/core/resources/rmm/types.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/types.js +17 -0
- package/dist/esm/core/resources/rmm/types.js.map +1 -1
- package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.d.ts +43 -6
- 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 +49 -6
- package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.js.map +1 -1
- package/dist/esm/core/resources/rmm/useResourceMutationManager.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/useResourceMutationManager.js +2 -0
- package/dist/esm/core/resources/rmm/useResourceMutationManager.js.map +1 -1
- package/dist/esm/core/resources/rmm/useResourceRMM.d.ts +2 -0
- package/dist/esm/core/resources/rmm/useResourceRMM.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/useResourceRMM.js +10 -3
- package/dist/esm/core/resources/rmm/useResourceRMM.js.map +1 -1
- package/dist/esm/core/resources/temporal-day-groups.frontend.utils.d.ts +22 -0
- package/dist/esm/core/resources/temporal-day-groups.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/resources/temporal-day-groups.frontend.utils.js +31 -0
- package/dist/esm/core/resources/temporal-day-groups.frontend.utils.js.map +1 -0
- package/dist/esm/core/resources/ui-behavior-presentation.frontend.utils.d.ts +36 -0
- package/dist/esm/core/resources/ui-behavior-presentation.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/resources/ui-behavior-presentation.frontend.utils.js +88 -0
- package/dist/esm/core/resources/ui-behavior-presentation.frontend.utils.js.map +1 -0
- package/dist/esm/core/resources/useBulkJobProgress.d.ts +6 -0
- package/dist/esm/core/resources/useBulkJobProgress.d.ts.map +1 -1
- package/dist/esm/core/resources/useBulkJobProgress.js +1 -0
- package/dist/esm/core/resources/useBulkJobProgress.js.map +1 -1
- package/dist/esm/core/resources/useCollectionFilterPresetScope.d.ts +14 -0
- package/dist/esm/core/resources/useCollectionFilterPresetScope.d.ts.map +1 -0
- package/dist/esm/core/resources/useCollectionFilterPresetScope.js +29 -0
- package/dist/esm/core/resources/useCollectionFilterPresetScope.js.map +1 -0
- package/dist/esm/core/resources/useHostlessResourceNavigation.d.ts +7 -6
- package/dist/esm/core/resources/useHostlessResourceNavigation.d.ts.map +1 -1
- package/dist/esm/core/resources/useHostlessResourceNavigation.js +35 -21
- package/dist/esm/core/resources/useHostlessResourceNavigation.js.map +1 -1
- package/dist/esm/core/resources/useOperationDirectExecution.d.ts.map +1 -1
- package/dist/esm/core/resources/useOperationDirectExecution.js +25 -10
- package/dist/esm/core/resources/useOperationDirectExecution.js.map +1 -1
- package/dist/esm/core/resources/useRecordSharing.d.ts +58 -0
- package/dist/esm/core/resources/useRecordSharing.d.ts.map +1 -0
- package/dist/esm/core/resources/useRecordSharing.js +220 -0
- package/dist/esm/core/resources/useRecordSharing.js.map +1 -0
- package/dist/esm/core/resources/useResourceLabels.d.ts +4 -1
- package/dist/esm/core/resources/useResourceLabels.d.ts.map +1 -1
- package/dist/esm/core/resources/useResourceLabels.js +31 -32
- package/dist/esm/core/resources/useResourceLabels.js.map +1 -1
- package/dist/esm/core/resources/useResourceOperationActions.d.ts +23 -4
- package/dist/esm/core/resources/useResourceOperationActions.d.ts.map +1 -1
- package/dist/esm/core/resources/useResourceOperationActions.js +219 -51
- package/dist/esm/core/resources/useResourceOperationActions.js.map +1 -1
- package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.d.ts +10 -1
- package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.d.ts.map +1 -1
- package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.js +7 -2
- package/dist/esm/core/resources/useResourceOperationOutcomeEmitter.js.map +1 -1
- package/dist/esm/core/resources/useResourceOperationSurface.d.ts +5 -5
- package/dist/esm/core/resources/useResourceOperationSurface.d.ts.map +1 -1
- package/dist/esm/core/resources/useResourceOperationSurface.js +5 -4
- package/dist/esm/core/resources/useResourceOperationSurface.js.map +1 -1
- package/dist/esm/core/resources/useResourceSelection.d.ts +6 -0
- 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 +47 -0
- 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 +117 -4
- 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 +5 -2
- package/dist/esm/core/runtime/AppRouter.js.map +1 -1
- package/dist/esm/core/runtime/ApplicationMainContext.d.ts +10 -1
- package/dist/esm/core/runtime/ApplicationMainContext.d.ts.map +1 -1
- package/dist/esm/core/runtime/ApplicationMainContext.js +17 -2
- package/dist/esm/core/runtime/ApplicationMainContext.js.map +1 -1
- package/dist/esm/core/runtime/domain-module.frontend.definitions.d.ts +5 -0
- package/dist/esm/core/runtime/domain-module.frontend.definitions.d.ts.map +1 -1
- package/dist/esm/core/runtime/domain-module.frontend.definitions.js +4 -2
- package/dist/esm/core/runtime/domain-module.frontend.definitions.js.map +1 -1
- package/dist/esm/core/runtime/routes.frontend.definitions.d.ts +19 -3
- package/dist/esm/core/runtime/routes.frontend.definitions.d.ts.map +1 -1
- package/dist/esm/core/runtime/routes.frontend.definitions.js +23 -7
- package/dist/esm/core/runtime/routes.frontend.definitions.js.map +1 -1
- package/dist/esm/core/runtime/start-application.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/runtime/start-application.frontend.service.js +3 -1
- package/dist/esm/core/runtime/start-application.frontend.service.js.map +1 -1
- package/dist/esm/core/scope/AppScopeContext.d.ts +7 -2
- package/dist/esm/core/scope/AppScopeContext.d.ts.map +1 -1
- package/dist/esm/core/scope/AppScopeContext.js +56 -10
- package/dist/esm/core/scope/AppScopeContext.js.map +1 -1
- package/dist/esm/core/security/ApplicationRoleTablesContext.d.ts +23 -0
- package/dist/esm/core/security/ApplicationRoleTablesContext.d.ts.map +1 -0
- package/dist/esm/core/security/ApplicationRoleTablesContext.js +27 -0
- package/dist/esm/core/security/ApplicationRoleTablesContext.js.map +1 -0
- package/dist/esm/core/security/AuthSessionContext.d.ts +26 -8
- package/dist/esm/core/security/AuthSessionContext.d.ts.map +1 -1
- package/dist/esm/core/security/AuthSessionContext.js +81 -17
- package/dist/esm/core/security/AuthSessionContext.js.map +1 -1
- package/dist/esm/core/security/RouteOrganizationDecisionContext.d.ts +13 -0
- package/dist/esm/core/security/RouteOrganizationDecisionContext.d.ts.map +1 -0
- package/dist/esm/core/security/RouteOrganizationDecisionContext.js +12 -0
- package/dist/esm/core/security/RouteOrganizationDecisionContext.js.map +1 -0
- package/dist/esm/core/security/StepUpAuthContext.js +5 -5
- package/dist/esm/core/security/StepUpAuthContext.js.map +1 -1
- package/dist/esm/core/security/UserOrgsContext.d.ts +13 -0
- package/dist/esm/core/security/UserOrgsContext.d.ts.map +1 -1
- package/dist/esm/core/security/UserOrgsContext.js +272 -103
- package/dist/esm/core/security/UserOrgsContext.js.map +1 -1
- package/dist/esm/core/security/auth-redirect.frontend.utils.d.ts +1 -0
- package/dist/esm/core/security/auth-redirect.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/security/auth-redirect.frontend.utils.js +3 -2
- package/dist/esm/core/security/auth-redirect.frontend.utils.js.map +1 -1
- package/dist/esm/core/security/effective-permissions.frontend.utils.d.ts +43 -0
- package/dist/esm/core/security/effective-permissions.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/security/effective-permissions.frontend.utils.js +73 -0
- package/dist/esm/core/security/effective-permissions.frontend.utils.js.map +1 -0
- package/dist/esm/core/security/route-organization-access.frontend.utils.d.ts +175 -5
- package/dist/esm/core/security/route-organization-access.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/security/route-organization-access.frontend.utils.js +147 -6
- package/dist/esm/core/security/route-organization-access.frontend.utils.js.map +1 -1
- package/dist/esm/core/security/security.frontend.schemas.d.ts +17 -5
- package/dist/esm/core/security/security.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/security/security.frontend.schemas.js +0 -5
- package/dist/esm/core/security/security.frontend.schemas.js.map +1 -1
- package/dist/esm/core/security/useApplicationRoleTables.d.ts +3 -0
- package/dist/esm/core/security/useApplicationRoleTables.d.ts.map +1 -0
- package/dist/esm/core/security/useApplicationRoleTables.js +11 -0
- package/dist/esm/core/security/useApplicationRoleTables.js.map +1 -0
- package/dist/esm/core/security/useRouteOrganizationAccess.d.ts +9 -0
- package/dist/esm/core/security/useRouteOrganizationAccess.d.ts.map +1 -1
- package/dist/esm/core/security/useRouteOrganizationAccess.js +31 -10
- package/dist/esm/core/security/useRouteOrganizationAccess.js.map +1 -1
- package/dist/esm/core/security/useRouteOrganizationFollow.d.ts +24 -0
- package/dist/esm/core/security/useRouteOrganizationFollow.d.ts.map +1 -0
- package/dist/esm/core/security/useRouteOrganizationFollow.js +76 -0
- package/dist/esm/core/security/useRouteOrganizationFollow.js.map +1 -0
- package/dist/esm/core/ui/UIContext.d.ts +25 -2
- package/dist/esm/core/ui/UIContext.d.ts.map +1 -1
- package/dist/esm/core/ui/UIContext.js +49 -37
- package/dist/esm/core/ui/UIContext.js.map +1 -1
- package/dist/esm/core/ui/design-token.utils.d.ts +0 -11
- package/dist/esm/core/ui/design-token.utils.d.ts.map +1 -1
- package/dist/esm/core/ui/design-token.utils.js +51 -83
- package/dist/esm/core/ui/design-token.utils.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 +151 -59
- package/dist/esm/core/ui/themes/default.theme.js.map +1 -1
- package/dist/esm/core/ui/themes/focus-indicator.d.ts +221 -0
- package/dist/esm/core/ui/themes/focus-indicator.d.ts.map +1 -0
- package/dist/esm/core/ui/themes/focus-indicator.js +229 -0
- package/dist/esm/core/ui/themes/focus-indicator.js.map +1 -0
- package/dist/esm/core/ui/ui.frontend.schemas.d.ts +7 -0
- package/dist/esm/core/ui/ui.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/ui/useThemePreferenceControl.d.ts.map +1 -1
- package/dist/esm/core/ui/useThemePreferenceControl.js +1 -2
- package/dist/esm/core/ui/useThemePreferenceControl.js.map +1 -1
- package/dist/esm/index.d.ts +34 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +45 -7
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/tailwind/index.d.ts.map +1 -1
- package/dist/esm/tailwind/index.js +3 -0
- package/dist/esm/tailwind/index.js.map +1 -1
- package/dist/esm/testing/app-shell-placement-coverage.d.ts.map +1 -1
- package/dist/esm/testing/app-shell-placement-coverage.js +6 -2
- package/dist/esm/testing/app-shell-placement-coverage.js.map +1 -1
- package/dist/esm/testing/mock-builders.d.ts +13 -1
- package/dist/esm/testing/mock-builders.d.ts.map +1 -1
- package/dist/esm/testing/mock-builders.js +35 -1
- package/dist/esm/testing/mock-builders.js.map +1 -1
- package/dist/esm/testing/rmm-helpers.d.ts +5 -3
- package/dist/esm/testing/rmm-helpers.d.ts.map +1 -1
- package/dist/esm/testing/rmm-helpers.js +3 -0
- 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 +3 -0
- package/dist/esm/testing/test-providers.js.map +1 -1
- package/package.json +7 -6
- package/dist/esm/components/flows-actors/flow-node.d.ts +0 -28
- package/dist/esm/components/flows-actors/flow-node.d.ts.map +0 -1
- package/dist/esm/components/flows-actors/flow-node.js +0 -115
- package/dist/esm/components/flows-actors/flow-node.js.map +0 -1
- package/dist/esm/components/resources/CollectionSelectionHeaderRail.d.ts +0 -30
- package/dist/esm/components/resources/CollectionSelectionHeaderRail.d.ts.map +0 -1
- package/dist/esm/components/resources/CollectionSelectionHeaderRail.js +0 -17
- package/dist/esm/components/resources/CollectionSelectionHeaderRail.js.map +0 -1
- package/dist/tsconfig.build.tsbuildinfo +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-context.js","sourceRoot":"","sources":["../../../../../src/components/form/form-context.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAc,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEtD,OAAO,EAAiB,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAI9D,OAAO,EAAE,cAAc,EAAuB,MAAM,oBAAoB,CAAC;AAkDzE;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAgD,aAAa,CAA+B,IAAI,CAAC,CAAC;AA0BhI,MAAM,UAAU,kBAAkB,CAAC,EACjC,MAAM,EACN,UAAU,GAAG,cAAc,CAAC,WAAW,EACvC,IAAI,EACJ,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,0BAA0B,EAC1B,2BAA2B,EAC3B,cAAc,EACd,QAAQ,GACgB;IACxB,6DAA6D;IAC7D,6EAA6E;IAC7E,8DAA8D;IAE9D,yFAAyF;IACzF,kFAAkF;IAClF,MAAM,6BAA6B,GAAG,0BAA0B;QAC9D,CAAC,CAAC,IAAI,CAAC,SAAS,CACZ,MAAM,CAAC,OAAO,CAAC,0BAA0B,CAAC;aACvC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAC1C;QACH,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,8BAA8B,GAAG,2BAA2B;QAChE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,2BAA2B,CAAC;QAC7C,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CAAC,CAAC;QACL,MAAM;QACN,UAAU;QACV,IAAI;QACJ,YAAY;QACZ,cAAc;QACd,gBAAgB;QAChB,UAAU;QACV,aAAa;QACb,0BAA0B;QAC1B,2BAA2B;QAC3B,cAAc;KACf,CAAC;IACF,gGAAgG;IAChG,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAAE,6BAA6B,EAAE,8BAA8B,EAAE,cAAc,CAAC,CACrL,CAAC;IAEF,OAAO,CACL,KAAC,iBAAiB,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,YAC7C,KAAC,YAAY,OAAK,IAAI,YACnB,QAAQ,GACI,GACY,CAC9B,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,iCAAiC;AACjC,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,QAAiB,CAAC;AAEnD;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,eAAwB,CAAC;AAE1D;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,sBAA+B,CAAC","sourcesContent":["/**\n * Form Context\n * \n * Provides schema access to child form components.\n */\n\nimport React, { createContext, useMemo } from 'react';\nimport { z } from 'zod';\nimport { UseFormReturn, FormProvider } from 'react-hook-form';\nimport type { NavigationZone } from '~wildo-frontend-lib/core/navigation/navigation.schemas';\nimport type { FrontendResource_ParentResourceRequirement } from '~wildo-frontend-lib/core/resources/resource-path.frontend.schemas';\n\nimport { FormSchemaKind, type ValidationMode } from './form-field-types';\n\nexport interface FormSchemaContextType {\n schema: z.ZodTypeAny;\n /**\n * Which KIND of schema `schema` is. Decides how field clearability is answered — see\n * {@link FormSchemaKind}. Defaults to REQUEST_DTO, which is what every resource form supplies.\n */\n schemaKind: FormSchemaKind;\n form: UseFormReturn<any>;\n /** Resource type for i18n field label lookup (optional) */\n resourceType?: string;\n /** Form-level validation mode - applies to all fields unless overridden */\n validationMode?: ValidationMode;\n /** \n * Base URL for the validate-field endpoint (e.g., \"/api/v1/todos/validate-field\").\n * When present, fields with isUnique() decorator will trigger server-side uniqueness checks on blur.\n */\n validateFieldUrl?: string;\n /**\n * Resource ID for UPDATE operations. Used as excludeId in uniqueness checks\n * to avoid false conflicts with the resource's own current values.\n */\n resourceId?: string;\n /**\n * Current operation type (e.g., 'create', 'update', or custom operation names).\n * Used by operation-aware decorators like isNotEditable({ operations: ['update'] })\n * to determine field editability based on the current form operation.\n */\n operationType?: string;\n /**\n * Resource context identifiers map: ResourceType → resourceId | { fieldIdentifier, resourceId }.\n * Propagated from FrontendResourceOperationContext so that nested field components\n * (e.g., FK display/edit) can build correct scoped URLs and context-aware searches.\n */\n contextResourceIdentifiers?: Record<string, string | { fieldIdentifier: string; resourceId: string }>;\n /**\n * Route parent evidence supplied by the resource surface. Generated relationship\n * fields use it when the current context has no serializable identifiers yet.\n */\n parentResourcesRequirements?: FrontendResource_ParentResourceRequirement[];\n /**\n * Current navigation zone hosting this form surface.\n *\n * Quick-create workflows need the source zone so they can open a temporary\n * create surface without replacing the form currently being edited.\n */\n navigationZone?: NavigationZone;\n}\n\n/**\n * Form Schema Context\n * Exported for use in separate hook file (Fast Refresh compatibility)\n * @internal - Use useFormSchemaContext() hook instead of accessing this directly\n */\nexport const FormSchemaContext: React.Context<FormSchemaContextType | null> = createContext<FormSchemaContextType | null>(null);\n\nexport interface FormSchemaProviderProps {\n schema: z.ZodTypeAny;\n /** Which kind of schema is being validated — see {@link FormSchemaKind}. @default REQUEST_DTO */\n schemaKind?: FormSchemaKind;\n form: UseFormReturn<any>;\n /** Resource type for i18n field label lookup (optional) */\n resourceType?: string;\n /** Form-level validation mode - applies to all fields unless overridden by decorator or prop */\n validationMode?: ValidationMode;\n /** Base URL for validate-field endpoint (enables uniqueness pre-validation on blur) */\n validateFieldUrl?: string;\n /** Resource ID for UPDATE operations (used as excludeId in uniqueness checks) */\n resourceId?: string;\n /** Current operation type for operation-aware decorators (e.g., isNotEditable) */\n operationType?: string;\n /** Resource context identifiers for FK context propagation */\n contextResourceIdentifiers?: Record<string, string | { fieldIdentifier: string; resourceId: string }>;\n /** Route parent evidence for generated relationship mutation surfaces */\n parentResourcesRequirements?: FrontendResource_ParentResourceRequirement[];\n /** Current navigation zone for quick-create-aware field controls */\n navigationZone?: NavigationZone;\n children: React.ReactNode;\n}\n\nexport function FormSchemaProvider({\n schema,\n schemaKind = FormSchemaKind.REQUEST_DTO,\n form,\n resourceType,\n validationMode,\n validateFieldUrl,\n resourceId,\n operationType,\n contextResourceIdentifiers,\n parentResourcesRequirements,\n navigationZone,\n children,\n}: FormSchemaProviderProps): React.JSX.Element {\n // Memoize the context value to prevent cascading re-renders.\n // Without this, every render of the provider creates a new object reference,\n // forcing every useFormSchemaContext() consumer to re-render.\n \n // Stabilize contextResourceIdentifiers — object reference changes on every parent render\n // but we only care about value changes. Use a sorted JSON key for dep comparison.\n const contextResourceIdentifiersKey = contextResourceIdentifiers\n ? JSON.stringify(\n Object.entries(contextResourceIdentifiers)\n .sort(([a], [b]) => a.localeCompare(b))\n )\n : undefined;\n const parentResourcesRequirementsKey = parentResourcesRequirements\n ? JSON.stringify(parentResourcesRequirements)\n : undefined;\n \n const contextValue = useMemo(\n () => ({\n schema,\n schemaKind,\n form,\n resourceType,\n validationMode,\n validateFieldUrl,\n resourceId,\n operationType,\n contextResourceIdentifiers,\n parentResourcesRequirements,\n navigationZone,\n }),\n // eslint-disable-next-line react-hooks/exhaustive-deps -- using stable keys for context objects\n [schema, schemaKind, form, resourceType, validationMode, validateFieldUrl, resourceId, operationType, contextResourceIdentifiersKey, parentResourcesRequirementsKey, navigationZone]\n );\n \n return (\n <FormSchemaContext.Provider value={contextValue}>\n <FormProvider {...form}>\n {children}\n </FormProvider>\n </FormSchemaContext.Provider>\n );\n}\n\n// =============================================================================\n// ERROR CATEGORIZATION CONSTANTS\n// =============================================================================\n\n/**\n * Error type set by ResourceAutomatedForm when injecting server-side validation errors.\n * Used to distinguish server errors from client-side Zod validation errors.\n */\nexport const SERVER_ERROR_TYPE = 'server' as const;\n\n/**\n * Error type set by the uniqueness pre-validation hook when a field value\n * conflicts with an existing resource. Distinguished from SERVER_ERROR_TYPE\n * (which is set post-submission) to allow targeted UI treatment (e.g., checking spinner).\n */\nexport const UNIQUE_ERROR_TYPE = 'server-unique' as const;\n\n/**\n * Error type set by FormFieldRecord when duplicate keys are detected in a record field.\n * Uses a namespaced value to avoid collision with Zod's 'custom' issue code from .refine().\n */\nexport const DUPLICATE_KEY_ERROR_TYPE = 'record-duplicate-key' as const;\n\n/** Flattened error entry with optional type from RHF */\nexport interface FlattenedError {\n path: string;\n message: string;\n /** Error type (e.g., 'server' for server validation errors, 'required', 'pattern', etc.) */\n type?: string;\n}\n\n/**\n * Categorized errors result.\n * Separates field-level errors from cross-field (schema-level) errors\n * and server-side validation errors.\n */\nexport interface CategorizedErrors {\n /** Client-side errors with a specific field path (display inline under fields) */\n fieldErrors: Array<FlattenedError>;\n /** Errors without a specific path or from schema-level refinements (display in summary) */\n crossFieldErrors: Array<FlattenedError>;\n /** Server-side validation errors (type: 'server') that should be shown in summary banner */\n serverErrors: Array<FlattenedError>;\n}"]}
|
|
1
|
+
{"version":3,"file":"form-context.js","sourceRoot":"","sources":["../../../../../src/components/form/form-context.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAc,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEtD,OAAO,EAAiB,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAI9D,OAAO,EAAE,cAAc,EAAuB,MAAM,oBAAoB,CAAC;AAkDzE;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAgD,aAAa,CAA+B,IAAI,CAAC,CAAC;AA0BhI,MAAM,UAAU,kBAAkB,CAAC,EACjC,MAAM,EACN,UAAU,GAAG,cAAc,CAAC,WAAW,EACvC,IAAI,EACJ,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,0BAA0B,EAC1B,2BAA2B,EAC3B,cAAc,EACd,QAAQ,GACgB;IACxB,6DAA6D;IAC7D,6EAA6E;IAC7E,8DAA8D;IAE9D,yFAAyF;IACzF,kFAAkF;IAClF,MAAM,6BAA6B,GAAG,0BAA0B;QAC9D,CAAC,CAAC,IAAI,CAAC,SAAS,CACZ,MAAM,CAAC,OAAO,CAAC,0BAA0B,CAAC;aACvC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAC1C;QACH,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,8BAA8B,GAAG,2BAA2B;QAChE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,2BAA2B,CAAC;QAC7C,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CAAC,CAAC;QACL,MAAM;QACN,UAAU;QACV,IAAI;QACJ,YAAY;QACZ,cAAc;QACd,gBAAgB;QAChB,UAAU;QACV,aAAa;QACb,0BAA0B;QAC1B,2BAA2B;QAC3B,cAAc;KACf,CAAC;IACF,gGAAgG;IAChG,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAAE,6BAA6B,EAAE,8BAA8B,EAAE,cAAc,CAAC,CACrL,CAAC;IAEF,OAAO,CACL,KAAC,iBAAiB,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,YAC7C,KAAC,YAAY,OAAK,IAAI,YACnB,QAAQ,GACI,GACY,CAC9B,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,iCAAiC;AACjC,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,QAAiB,CAAC;AAEnD;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,eAAwB,CAAC;AAE1D;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,OAAgB,CAAC;AAEtD;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,sBAA+B,CAAC","sourcesContent":["/**\n * Form Context\n * \n * Provides schema access to child form components.\n */\n\nimport React, { createContext, useMemo } from 'react';\nimport { z } from 'zod';\nimport { UseFormReturn, FormProvider } from 'react-hook-form';\nimport type { NavigationZone } from '~wildo-frontend-lib/core/navigation/navigation.schemas';\nimport type { FrontendResource_ParentResourceRequirement } from '~wildo-frontend-lib/core/resources/resource-path.frontend.schemas';\n\nimport { FormSchemaKind, type ValidationMode } from './form-field-types';\n\nexport interface FormSchemaContextType {\n schema: z.ZodTypeAny;\n /**\n * Which KIND of schema `schema` is. Decides how field clearability is answered — see\n * {@link FormSchemaKind}. Defaults to REQUEST_DTO, which is what every resource form supplies.\n */\n schemaKind: FormSchemaKind;\n form: UseFormReturn<any>;\n /** Resource type for i18n field label lookup (optional) */\n resourceType?: string;\n /** Form-level validation mode - applies to all fields unless overridden */\n validationMode?: ValidationMode;\n /** \n * Base URL for the validate-field endpoint (e.g., \"/api/v1/todos/validate-field\").\n * When present, fields with isUnique() decorator will trigger server-side uniqueness checks on blur.\n */\n validateFieldUrl?: string;\n /**\n * Resource ID for UPDATE operations. Used as excludeId in uniqueness checks\n * to avoid false conflicts with the resource's own current values.\n */\n resourceId?: string;\n /**\n * Current operation type (e.g., 'create', 'update', or custom operation names).\n * Used by operation-aware decorators like isNotEditable({ operations: ['update'] })\n * to determine field editability based on the current form operation.\n */\n operationType?: string;\n /**\n * Resource context identifiers map: ResourceType → resourceId | { fieldIdentifier, resourceId }.\n * Propagated from FrontendResourceOperationContext so that nested field components\n * (e.g., FK display/edit) can build correct scoped URLs and context-aware searches.\n */\n contextResourceIdentifiers?: Record<string, string | { fieldIdentifier: string; resourceId: string }>;\n /**\n * Route parent evidence supplied by the resource surface. Generated relationship\n * fields use it when the current context has no serializable identifiers yet.\n */\n parentResourcesRequirements?: FrontendResource_ParentResourceRequirement[];\n /**\n * Current navigation zone hosting this form surface.\n *\n * Quick-create workflows need the source zone so they can open a temporary\n * create surface without replacing the form currently being edited.\n */\n navigationZone?: NavigationZone;\n}\n\n/**\n * Form Schema Context\n * Exported for use in separate hook file (Fast Refresh compatibility)\n * @internal - Use useFormSchemaContext() hook instead of accessing this directly\n */\nexport const FormSchemaContext: React.Context<FormSchemaContextType | null> = createContext<FormSchemaContextType | null>(null);\n\nexport interface FormSchemaProviderProps {\n schema: z.ZodTypeAny;\n /** Which kind of schema is being validated — see {@link FormSchemaKind}. @default REQUEST_DTO */\n schemaKind?: FormSchemaKind;\n form: UseFormReturn<any>;\n /** Resource type for i18n field label lookup (optional) */\n resourceType?: string;\n /** Form-level validation mode - applies to all fields unless overridden by decorator or prop */\n validationMode?: ValidationMode;\n /** Base URL for validate-field endpoint (enables uniqueness pre-validation on blur) */\n validateFieldUrl?: string;\n /** Resource ID for UPDATE operations (used as excludeId in uniqueness checks) */\n resourceId?: string;\n /** Current operation type for operation-aware decorators (e.g., isNotEditable) */\n operationType?: string;\n /** Resource context identifiers for FK context propagation */\n contextResourceIdentifiers?: Record<string, string | { fieldIdentifier: string; resourceId: string }>;\n /** Route parent evidence for generated relationship mutation surfaces */\n parentResourcesRequirements?: FrontendResource_ParentResourceRequirement[];\n /** Current navigation zone for quick-create-aware field controls */\n navigationZone?: NavigationZone;\n children: React.ReactNode;\n}\n\nexport function FormSchemaProvider({\n schema,\n schemaKind = FormSchemaKind.REQUEST_DTO,\n form,\n resourceType,\n validationMode,\n validateFieldUrl,\n resourceId,\n operationType,\n contextResourceIdentifiers,\n parentResourcesRequirements,\n navigationZone,\n children,\n}: FormSchemaProviderProps): React.JSX.Element {\n // Memoize the context value to prevent cascading re-renders.\n // Without this, every render of the provider creates a new object reference,\n // forcing every useFormSchemaContext() consumer to re-render.\n \n // Stabilize contextResourceIdentifiers — object reference changes on every parent render\n // but we only care about value changes. Use a sorted JSON key for dep comparison.\n const contextResourceIdentifiersKey = contextResourceIdentifiers\n ? JSON.stringify(\n Object.entries(contextResourceIdentifiers)\n .sort(([a], [b]) => a.localeCompare(b))\n )\n : undefined;\n const parentResourcesRequirementsKey = parentResourcesRequirements\n ? JSON.stringify(parentResourcesRequirements)\n : undefined;\n \n const contextValue = useMemo(\n () => ({\n schema,\n schemaKind,\n form,\n resourceType,\n validationMode,\n validateFieldUrl,\n resourceId,\n operationType,\n contextResourceIdentifiers,\n parentResourcesRequirements,\n navigationZone,\n }),\n // eslint-disable-next-line react-hooks/exhaustive-deps -- using stable keys for context objects\n [schema, schemaKind, form, resourceType, validationMode, validateFieldUrl, resourceId, operationType, contextResourceIdentifiersKey, parentResourcesRequirementsKey, navigationZone]\n );\n \n return (\n <FormSchemaContext.Provider value={contextValue}>\n <FormProvider {...form}>\n {children}\n </FormProvider>\n </FormSchemaContext.Provider>\n );\n}\n\n// =============================================================================\n// ERROR CATEGORIZATION CONSTANTS\n// =============================================================================\n\n/**\n * Error type set by ResourceAutomatedForm when injecting server-side validation errors.\n * Used to distinguish server errors from client-side Zod validation errors.\n */\nexport const SERVER_ERROR_TYPE = 'server' as const;\n\n/**\n * Error type set by the uniqueness pre-validation hook when a field value\n * conflicts with an existing resource. Distinguished from SERVER_ERROR_TYPE\n * (which is set post-submission) to allow targeted UI treatment (e.g., checking spinner).\n */\nexport const UNIQUE_ERROR_TYPE = 'server-unique' as const;\n\n/**\n * The error key a FORM-LEVEL issue is recorded under: a refinement on the whole object (`.refine(fn, { message })`\n * with no `path`), whose issue therefore names no field.\n *\n * Not react-hook-form's own `root`: `handleSubmit` deletes `errors.root` before deciding whether the form is valid\n * (it reserves `root` for server errors, which live until the next submit), so a client issue recorded there would\n * still let the form submit — with the empty `values` the resolver returns on failure. A key RHF does not reserve\n * blocks the submit like any field error. `FormContextUtils.categorizeErrors` counts it, and every `_root…` path,\n * as cross-field, which is how the error summary lists it.\n */\nexport const FORM_LEVEL_ERROR_PATH = '_root' as const;\n\n/**\n * Error type set by FormFieldRecord when duplicate keys are detected in a record field.\n * Uses a namespaced value to avoid collision with Zod's 'custom' issue code from .refine().\n */\nexport const DUPLICATE_KEY_ERROR_TYPE = 'record-duplicate-key' as const;\n\n/** Flattened error entry with optional type from RHF */\nexport interface FlattenedError {\n path: string;\n message: string;\n /** Error type (e.g., 'server' for server validation errors, 'required', 'pattern', etc.) */\n type?: string;\n}\n\n/**\n * Categorized errors result.\n * Separates field-level errors from cross-field (schema-level) errors\n * and server-side validation errors.\n */\nexport interface CategorizedErrors {\n /** Client-side errors with a specific field path (display inline under fields) */\n fieldErrors: Array<FlattenedError>;\n /** Errors without a specific path or from schema-level refinements (display in summary) */\n crossFieldErrors: Array<FlattenedError>;\n /** Server-side validation errors (type: 'server') that should be shown in summary banner */\n serverErrors: Array<FlattenedError>;\n}"]}
|
|
@@ -8,6 +8,8 @@ export declare class FormContextUtils {
|
|
|
8
8
|
private static readonly ROOT_ERROR_PATHS;
|
|
9
9
|
private static readonly ROOT_ERROR_PREFIX;
|
|
10
10
|
private static isCrossFieldErrorPath;
|
|
11
|
+
/** Whether an error path names no field: it belongs to the record as a whole (a form-level rule, a refusal with no field). */
|
|
12
|
+
static isFormLevelErrorPath(path: string | undefined): boolean;
|
|
11
13
|
private static flattenErrors;
|
|
12
14
|
/**
|
|
13
15
|
* Categorize form errors into field-level, cross-field, and server errors.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-context.utils.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/form-context.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,OAAO,
|
|
1
|
+
{"version":3,"file":"form-context.utils.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/form-context.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,OAAO,EAAoF,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAK1I;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO;IAEP,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAA8B;IACtE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAyB;IAElE,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAIpC,8HAA8H;IAC9H,MAAM,CAAC,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO;IAK9D,OAAO,CAAC,MAAM,CAAC,aAAa;IAmB5B;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,GAAG,iBAAiB;CAgChE"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { LoggerFrontendService } from '../../core/monitoring/logger.frontend.service.js';
|
|
2
|
-
import { SERVER_ERROR_TYPE, UNIQUE_ERROR_TYPE } from './form-context.js';
|
|
2
|
+
import { FORM_LEVEL_ERROR_PATH, SERVER_ERROR_TYPE, UNIQUE_ERROR_TYPE } from './form-context.js';
|
|
3
3
|
const logger = LoggerFrontendService.getLogger();
|
|
4
4
|
const logDebug = logger.debugByType('FormErrorCategorization');
|
|
5
5
|
/**
|
|
@@ -8,8 +8,12 @@ const logDebug = logger.debugByType('FormErrorCategorization');
|
|
|
8
8
|
export class FormContextUtils {
|
|
9
9
|
constructor() { }
|
|
10
10
|
static ROOT_ERROR_PATHS = new Set(['', 'root', '_']);
|
|
11
|
-
static ROOT_ERROR_PREFIX =
|
|
11
|
+
static ROOT_ERROR_PREFIX = FORM_LEVEL_ERROR_PATH;
|
|
12
12
|
static isCrossFieldErrorPath(path) {
|
|
13
|
+
return FormContextUtils.isFormLevelErrorPath(path);
|
|
14
|
+
}
|
|
15
|
+
/** Whether an error path names no field: it belongs to the record as a whole (a form-level rule, a refusal with no field). */
|
|
16
|
+
static isFormLevelErrorPath(path) {
|
|
13
17
|
if (!path)
|
|
14
18
|
return true;
|
|
15
19
|
return FormContextUtils.ROOT_ERROR_PATHS.has(path) || path.startsWith(FormContextUtils.ROOT_ERROR_PREFIX);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-context.utils.js","sourceRoot":"","sources":["../../../../../src/components/form/form-context.utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,6DAA6D,CAAC;AACpG,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAA+C,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"form-context.utils.js","sourceRoot":"","sources":["../../../../../src/components/form/form-context.utils.ts"],"names":[],"mappings":"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","sourcesContent":["import type { FieldErrors } from 'react-hook-form';\nimport { LoggerFrontendService } from '~wildo-frontend-lib/core/monitoring/logger.frontend.service';\nimport { FORM_LEVEL_ERROR_PATH, SERVER_ERROR_TYPE, UNIQUE_ERROR_TYPE, type FlattenedError, type CategorizedErrors } from './form-context';\n\nconst logger = LoggerFrontendService.getLogger();\nconst logDebug = logger.debugByType('FormErrorCategorization');\n\n/**\n * Static utility class for form error categorisation.\n */\nexport class FormContextUtils {\n private constructor() {}\n\n private static readonly ROOT_ERROR_PATHS = new Set(['', 'root', '_']);\n private static readonly ROOT_ERROR_PREFIX = FORM_LEVEL_ERROR_PATH;\n\n private static isCrossFieldErrorPath(path: string | undefined): boolean {\n return FormContextUtils.isFormLevelErrorPath(path);\n }\n\n /** Whether an error path names no field: it belongs to the record as a whole (a form-level rule, a refusal with no field). */\n static isFormLevelErrorPath(path: string | undefined): boolean {\n if (!path) return true;\n return FormContextUtils.ROOT_ERROR_PATHS.has(path) || path.startsWith(FormContextUtils.ROOT_ERROR_PREFIX);\n }\n\n private static flattenErrors(\n errors: FieldErrors,\n prefix: string = ''\n ): Array<FlattenedError> {\n const result: Array<FlattenedError> = [];\n\n for (const [key, value] of Object.entries(errors)) {\n const path = prefix ? `${prefix}.${key}` : key;\n\n if (value?.message && typeof value.message === 'string') {\n result.push({ path, message: value.message, type: value.type as string | undefined });\n } else if (typeof value === 'object' && value !== null) {\n result.push(...FormContextUtils.flattenErrors(value as FieldErrors, path));\n }\n }\n\n return result;\n }\n\n /**\n * Categorize form errors into field-level, cross-field, and server errors.\n */\n static categorizeErrors(errors: FieldErrors): CategorizedErrors {\n const allErrors = FormContextUtils.flattenErrors(errors);\n\n const fieldErrors: Array<FlattenedError> = [];\n const crossFieldErrors: Array<FlattenedError> = [];\n const serverErrors: Array<FlattenedError> = [];\n\n for (const error of allErrors) {\n const isServerError = error.type === SERVER_ERROR_TYPE || error.type === UNIQUE_ERROR_TYPE;\n if (isServerError) {\n serverErrors.push(error);\n continue;\n }\n\n if (FormContextUtils.isCrossFieldErrorPath(error.path)) {\n crossFieldErrors.push(error);\n } else {\n fieldErrors.push(error);\n }\n }\n\n logDebug('categorizeErrors', {\n totalErrors: allErrors.length,\n fieldErrors: fieldErrors.length,\n crossFieldErrors: crossFieldErrors.length,\n serverErrors: serverErrors.length,\n serverFields: serverErrors.map(e => e.path),\n crossFieldPaths: crossFieldErrors.map(e => e.path),\n });\n\n return { fieldErrors, crossFieldErrors, serverErrors };\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormErrorSummary.d.ts","sourceRoot":"","sources":["../../../../../../src/components/form/validation-errors/FormErrorSummary.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"FormErrorSummary.d.ts","sourceRoot":"","sources":["../../../../../../src/components/form/validation-errors/FormErrorSummary.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAsBvC,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,iBAAS,yBAAyB,CAAC,EACjC,KAAK,EACL,SAAS,EACT,SAAc,EACd,cAAc,GACf,EAAE,qBAAqB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAsGlD;kBA3GQ,yBAAyB;;;AA+GlC,eAAO,MAAM,gBAAgB,EAAE,OAAO,yBAAyB,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAA8B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { useMemo } from 'react';
|
|
3
3
|
import { useFormContext } from 'react-hook-form';
|
|
4
4
|
import { Alert, AlertTitle, AlertDescription } from '../../../components/overlays/containers/alert.js';
|
|
@@ -12,6 +12,7 @@ import { useI18n } from '../../../core/i18n/useI18n.js';
|
|
|
12
12
|
import { AutomatedLayoutFrontendUtils } from '../../../core/automated-layout/automated-layout.frontend.utils.js';
|
|
13
13
|
import { LoggerFrontendService } from '../../../core/monitoring/logger.frontend.service.js';
|
|
14
14
|
import { useSurfacePolicy } from '../../../core/ui/SurfacePolicyContext.js';
|
|
15
|
+
import { FORM_ERROR_SUMMARY_ATTRIBUTE } from './scroll-to-first-error.utils.js';
|
|
15
16
|
const logger = LoggerFrontendService.getLogger();
|
|
16
17
|
const logDebug = logger.debugByType('FormErrorSummary');
|
|
17
18
|
logger.setDebugTypeLogging('FormErrorSummary', false);
|
|
@@ -30,22 +31,23 @@ function FormErrorSummaryComponent({ title, className, maxErrors = 10, stepField
|
|
|
30
31
|
// field-level errors into this summary and FormField suppresses inline copies.
|
|
31
32
|
const { fieldErrors, crossFieldErrors, serverErrors } = FormContextUtils.categorizeErrors(formState.errors);
|
|
32
33
|
const shouldIncludeFieldErrors = surfacePolicy.autoRender?.autoErrorPlacement === 'summary-at-surface-top';
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
34
|
+
/*
|
|
35
|
+
* In wizard mode, a field's error is listed on the step that holds the field. Two errors used to fall through:
|
|
36
|
+
* a server refusal that names NO field (it belongs to the record, so it is listed on every step, like a cross-field
|
|
37
|
+
* error), and one on a nested path (`address.city`) when the step registered its parent (`address`), which an exact
|
|
38
|
+
* match never found. Cross-field errors are always shown: they cannot be attributed to a step.
|
|
39
|
+
*/
|
|
40
|
+
const isOnThisStep = useMemo(() => {
|
|
36
41
|
if (!stepFieldNames)
|
|
37
|
-
return
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
42
|
+
return () => true;
|
|
43
|
+
return (path) => stepFieldNames.some((field) => path === field || path.startsWith(`${field}.`));
|
|
44
|
+
}, [stepFieldNames]);
|
|
45
|
+
const filteredServerErrors = useMemo(() => serverErrors.filter((e) => FormContextUtils.isFormLevelErrorPath(e.path) || isOnThisStep(e.path)), [serverErrors, isOnThisStep]);
|
|
41
46
|
const filteredFieldErrors = useMemo(() => {
|
|
42
47
|
if (!shouldIncludeFieldErrors)
|
|
43
48
|
return [];
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
const stepFields = new Set(stepFieldNames);
|
|
47
|
-
return fieldErrors.filter(e => stepFields.has(e.path));
|
|
48
|
-
}, [fieldErrors, shouldIncludeFieldErrors, stepFieldNames]);
|
|
49
|
+
return fieldErrors.filter((e) => isOnThisStep(e.path));
|
|
50
|
+
}, [fieldErrors, shouldIncludeFieldErrors, isOnThisStep]);
|
|
49
51
|
const errorsToShow = [...crossFieldErrors, ...filteredServerErrors, ...filteredFieldErrors];
|
|
50
52
|
const formatFieldLabel = useMemo(() => AutomatedLayoutFrontendUtils.createFieldLabelResolver(resourceType, tResourceFieldEdit, schemaContext?.schema), [resourceType, tResourceFieldEdit, schemaContext?.schema]);
|
|
51
53
|
if (errorsToShow.length === 0) {
|
|
@@ -63,10 +65,10 @@ function FormErrorSummaryComponent({ title, className, maxErrors = 10, stepField
|
|
|
63
65
|
});
|
|
64
66
|
const displayErrors = errorsToShow.slice(0, maxErrors);
|
|
65
67
|
const hasMoreErrors = errorsToShow.length > maxErrors;
|
|
66
|
-
return (_jsx(Alert, { variant: "destructive", className: cn(className), role: "alert", "data-testid": "form-error-summary", children: _jsxs("div", { className: "flex items-start gap-element", children: [renderIcon(StandardIconReference.ERROR, {
|
|
68
|
+
return (_jsx(Alert, { variant: "destructive", className: cn(className), role: "alert", "data-testid": "form-error-summary", [FORM_ERROR_SUMMARY_ATTRIBUTE]: '', tabIndex: -1, children: _jsxs("div", { className: "flex items-start gap-element", children: [renderIcon(StandardIconReference.ERROR, {
|
|
67
69
|
size: IconSize.SM,
|
|
68
70
|
className: 'mt-0.5'
|
|
69
|
-
}), _jsxs("div", { className: "flex-1", children: [_jsx(AlertTitle, { className: "mb-element", children: effectiveTitle }), _jsxs(AlertDescription, { children: [_jsx("ul", { className: "list-disc list-inside space-y-item-xs text-sm", children: displayErrors.map(({ path, message }, index) => (_jsxs("li", { children: [_jsxs("span", { className: "font-medium", children: [formatFieldLabel(path), ":"] }), ' ', message] }, `${path}-${index}`))) }), hasMoreErrors && (_jsx("p", { className: "mt-item text-sm opacity-[var(--opacity-hover)]", children: tComponent(FrontendComponentType.LOW_LEVEL_FORM_MESSAGE, 'moreErrors', { count: errorsToShow.length - maxErrors }) }))] })] })] }) }));
|
|
71
|
+
}), _jsxs("div", { className: "flex-1", children: [_jsx(AlertTitle, { className: "mb-element", children: effectiveTitle }), _jsxs(AlertDescription, { children: [_jsx("ul", { className: "list-disc list-inside space-y-item-xs text-sm", children: displayErrors.map(({ path, message }, index) => (_jsxs("li", { children: [FormContextUtils.isFormLevelErrorPath(path) ? null : _jsxs(_Fragment, { children: [_jsxs("span", { className: "font-medium", children: [formatFieldLabel(path), ":"] }), ' '] }), message] }, `${path}-${index}`))) }), hasMoreErrors && (_jsx("p", { className: "mt-item text-sm opacity-[var(--opacity-hover)]", children: tComponent(FrontendComponentType.LOW_LEVEL_FORM_MESSAGE, 'moreErrors', { count: errorsToShow.length - maxErrors }) }))] })] })] }) }));
|
|
70
72
|
}
|
|
71
73
|
FormErrorSummaryComponent.displayName = 'FormErrorSummary';
|
|
72
74
|
export const FormErrorSummary = FormErrorSummaryComponent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormErrorSummary.js","sourceRoot":"","sources":["../../../../../../src/components/form/validation-errors/FormErrorSummary.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useMemo } from 'react';\nimport { useFormContext } from 'react-hook-form';\n\nimport { Alert, AlertTitle, AlertDescription } from '~wildo-frontend-lib/components/overlays/containers/alert';\nimport { useIconRegistry } from '~wildo-frontend-lib/core/icons/useIconRegistry';\nimport { IconSize, StandardIconReference } from '~wildo-frontend-lib/core/icons/icon-registry.frontend.schemas';\n\nimport { FrontendComponentType } from '@wildo-ai/presets-components-models';\n\nimport { cn } from '~wildo-frontend-lib/core/ui/cn';\nimport { useOptionalFormSchemaContext } from '../useFormSchemaContext';\nimport { FormContextUtils } from '../form-context.utils';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { AutomatedLayoutFrontendUtils } from '~wildo-frontend-lib/core/automated-layout/automated-layout.frontend.utils';\nimport { LoggerFrontendService } from '~wildo-frontend-lib/core/monitoring/logger.frontend.service';\nimport { useSurfacePolicy } from '~wildo-frontend-lib/core/ui/SurfacePolicyContext';\n\nconst logger = LoggerFrontendService.getLogger();\nconst logDebug = logger.debugByType('FormErrorSummary');\nlogger.setDebugTypeLogging('FormErrorSummary', false);\n\nexport interface FormErrorSummaryProps {\n title?: string;\n className?: string;\n maxErrors?: number;\n /**\n * When provided (wizard mode), filters error display to only show errors\n * for fields in the current step. Cross-field/root errors are always shown.\n * When omitted, all errors are shown (non-wizard mode).\n */\n stepFieldNames?: string[];\n}\n\nfunction FormErrorSummaryComponent({\n title,\n className,\n maxErrors = 10,\n stepFieldNames,\n}: FormErrorSummaryProps): React.JSX.Element | null {\n const { formState } = useFormContext();\n const { renderIcon } = useIconRegistry();\n const surfacePolicy = useSurfacePolicy();\n const schemaContext = useOptionalFormSchemaContext();\n const resourceType = schemaContext?.resourceType;\n const { tResourceFieldEdit, tComponent, isReady } = useI18n({\n component: FrontendComponentType.LOW_LEVEL_FORM_MESSAGE,\n ...(resourceType ? { resource: resourceType } : {}),\n });\n \n const effectiveTitle = title ?? tComponent(FrontendComponentType.LOW_LEVEL_FORM_MESSAGE, 'formErrorsTitle');\n \n // Show cross-field + server errors by default. Surface policy can promote\n // field-level errors into this summary and FormField suppresses inline copies.\n const { fieldErrors, crossFieldErrors, serverErrors } = FormContextUtils.categorizeErrors(formState.errors);\n const shouldIncludeFieldErrors = surfacePolicy.autoRender?.autoErrorPlacement === 'summary-at-surface-top';\n \n // In wizard mode, filter server errors to only show those for the current step.\n // Cross-field errors (root-level) are always shown — they can't be attributed to a step.\n const filteredServerErrors = useMemo(() => {\n if (!stepFieldNames) return serverErrors;\n const stepFields = new Set(stepFieldNames);\n return serverErrors.filter(e => stepFields.has(e.path));\n }, [serverErrors, stepFieldNames]);\n\n const filteredFieldErrors = useMemo(() => {\n if (!shouldIncludeFieldErrors) return [];\n if (!stepFieldNames) return fieldErrors;\n const stepFields = new Set(stepFieldNames);\n return fieldErrors.filter(e => stepFields.has(e.path));\n }, [fieldErrors, shouldIncludeFieldErrors, stepFieldNames]);\n \n const errorsToShow = [...crossFieldErrors, ...filteredServerErrors, ...filteredFieldErrors];\n \n const formatFieldLabel = useMemo(\n () => AutomatedLayoutFrontendUtils.createFieldLabelResolver(resourceType, tResourceFieldEdit, schemaContext?.schema),\n [resourceType, tResourceFieldEdit, schemaContext?.schema]\n );\n \n if (errorsToShow.length === 0) {\n return null;\n }\n\n if (!isReady) return null;\n\n logDebug('rendering error summary', {\n fieldCount: filteredFieldErrors.length,\n crossFieldCount: crossFieldErrors.length,\n serverCount: filteredServerErrors.length,\n totalServerErrors: serverErrors.length,\n isWizardFiltered: !!stepFieldNames,\n errors: errorsToShow.map(e => ({ path: e.path, type: e.type, message: e.message })),\n });\n \n const displayErrors = errorsToShow.slice(0, maxErrors);\n const hasMoreErrors = errorsToShow.length > maxErrors;\n \n return (\n <Alert \n variant=\"destructive\" \n className={cn(className)}\n role=\"alert\"\n data-testid=\"form-error-summary\"\n >\n <div className=\"flex items-start gap-element\">\n {renderIcon(StandardIconReference.ERROR, { \n size: IconSize.SM, \n className: 'mt-0.5' \n })}\n <div className=\"flex-1\">\n <AlertTitle className=\"mb-element\">{effectiveTitle}</AlertTitle>\n <AlertDescription>\n <ul className=\"list-disc list-inside space-y-item-xs text-sm\">\n {displayErrors.map(({ path, message }, index) => (\n <li key={`${path}-${index}`}>\n <span className=\"font-medium\">{formatFieldLabel(path)}:</span>{' '}\n {message}\n </li>\n ))}\n </ul>\n \n {hasMoreErrors && (\n <p className=\"mt-item text-sm opacity-[var(--opacity-hover)]\">\n {tComponent(FrontendComponentType.LOW_LEVEL_FORM_MESSAGE, 'moreErrors', { count: errorsToShow.length - maxErrors })}\n </p>\n )}\n </AlertDescription>\n </div>\n </div>\n </Alert>\n );\n}\n\nFormErrorSummaryComponent.displayName = 'FormErrorSummary';\n\nexport const FormErrorSummary: typeof FormErrorSummaryComponent & { displayName: string } = FormErrorSummaryComponent;\n"]}
|
|
1
|
+
{"version":3,"file":"FormErrorSummary.js","sourceRoot":"","sources":["../../../../../../src/components/form/validation-errors/FormErrorSummary.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useMemo } from 'react';\nimport { useFormContext } from 'react-hook-form';\n\nimport { Alert, AlertTitle, AlertDescription } from '~wildo-frontend-lib/components/overlays/containers/alert';\nimport { useIconRegistry } from '~wildo-frontend-lib/core/icons/useIconRegistry';\nimport { IconSize, StandardIconReference } from '~wildo-frontend-lib/core/icons/icon-registry.frontend.schemas';\n\nimport { FrontendComponentType } from '@wildo-ai/presets-components-models';\n\nimport { cn } from '~wildo-frontend-lib/core/ui/cn';\nimport { useOptionalFormSchemaContext } from '../useFormSchemaContext';\nimport { FormContextUtils } from '../form-context.utils';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { AutomatedLayoutFrontendUtils } from '~wildo-frontend-lib/core/automated-layout/automated-layout.frontend.utils';\nimport { LoggerFrontendService } from '~wildo-frontend-lib/core/monitoring/logger.frontend.service';\nimport { useSurfacePolicy } from '~wildo-frontend-lib/core/ui/SurfacePolicyContext';\nimport { FORM_ERROR_SUMMARY_ATTRIBUTE } from './scroll-to-first-error.utils';\n\nconst logger = LoggerFrontendService.getLogger();\nconst logDebug = logger.debugByType('FormErrorSummary');\nlogger.setDebugTypeLogging('FormErrorSummary', false);\n\nexport interface FormErrorSummaryProps {\n title?: string;\n className?: string;\n maxErrors?: number;\n /**\n * When provided (wizard mode), filters error display to only show errors\n * for fields in the current step. Cross-field/root errors are always shown.\n * When omitted, all errors are shown (non-wizard mode).\n */\n stepFieldNames?: string[];\n}\n\nfunction FormErrorSummaryComponent({\n title,\n className,\n maxErrors = 10,\n stepFieldNames,\n}: FormErrorSummaryProps): React.JSX.Element | null {\n const { formState } = useFormContext();\n const { renderIcon } = useIconRegistry();\n const surfacePolicy = useSurfacePolicy();\n const schemaContext = useOptionalFormSchemaContext();\n const resourceType = schemaContext?.resourceType;\n const { tResourceFieldEdit, tComponent, isReady } = useI18n({\n component: FrontendComponentType.LOW_LEVEL_FORM_MESSAGE,\n ...(resourceType ? { resource: resourceType } : {}),\n });\n \n const effectiveTitle = title ?? tComponent(FrontendComponentType.LOW_LEVEL_FORM_MESSAGE, 'formErrorsTitle');\n \n // Show cross-field + server errors by default. Surface policy can promote\n // field-level errors into this summary and FormField suppresses inline copies.\n const { fieldErrors, crossFieldErrors, serverErrors } = FormContextUtils.categorizeErrors(formState.errors);\n const shouldIncludeFieldErrors = surfacePolicy.autoRender?.autoErrorPlacement === 'summary-at-surface-top';\n \n /*\n * In wizard mode, a field's error is listed on the step that holds the field. Two errors used to fall through:\n * a server refusal that names NO field (it belongs to the record, so it is listed on every step, like a cross-field\n * error), and one on a nested path (`address.city`) when the step registered its parent (`address`), which an exact\n * match never found. Cross-field errors are always shown: they cannot be attributed to a step.\n */\n const isOnThisStep = useMemo(() => {\n if (!stepFieldNames) return () => true;\n return (path: string) => stepFieldNames.some((field) => path === field || path.startsWith(`${field}.`));\n }, [stepFieldNames]);\n\n const filteredServerErrors = useMemo(\n () => serverErrors.filter((e) => FormContextUtils.isFormLevelErrorPath(e.path) || isOnThisStep(e.path)),\n [serverErrors, isOnThisStep],\n );\n\n const filteredFieldErrors = useMemo(() => {\n if (!shouldIncludeFieldErrors) return [];\n return fieldErrors.filter((e) => isOnThisStep(e.path));\n }, [fieldErrors, shouldIncludeFieldErrors, isOnThisStep]);\n \n const errorsToShow = [...crossFieldErrors, ...filteredServerErrors, ...filteredFieldErrors];\n \n const formatFieldLabel = useMemo(\n () => AutomatedLayoutFrontendUtils.createFieldLabelResolver(resourceType, tResourceFieldEdit, schemaContext?.schema),\n [resourceType, tResourceFieldEdit, schemaContext?.schema]\n );\n \n if (errorsToShow.length === 0) {\n return null;\n }\n\n if (!isReady) return null;\n\n logDebug('rendering error summary', {\n fieldCount: filteredFieldErrors.length,\n crossFieldCount: crossFieldErrors.length,\n serverCount: filteredServerErrors.length,\n totalServerErrors: serverErrors.length,\n isWizardFiltered: !!stepFieldNames,\n errors: errorsToShow.map(e => ({ path: e.path, type: e.type, message: e.message })),\n });\n \n const displayErrors = errorsToShow.slice(0, maxErrors);\n const hasMoreErrors = errorsToShow.length > maxErrors;\n \n return (\n <Alert \n variant=\"destructive\" \n className={cn(className)}\n role=\"alert\"\n data-testid=\"form-error-summary\"\n // Focused by the error scroll when the error belongs to no field (`scroll-to-first-error.utils.ts`).\n {...{ [FORM_ERROR_SUMMARY_ATTRIBUTE]: '' }}\n tabIndex={-1}\n >\n <div className=\"flex items-start gap-element\">\n {renderIcon(StandardIconReference.ERROR, { \n size: IconSize.SM, \n className: 'mt-0.5' \n })}\n <div className=\"flex-1\">\n <AlertTitle className=\"mb-element\">{effectiveTitle}</AlertTitle>\n <AlertDescription>\n <ul className=\"list-disc list-inside space-y-item-xs text-sm\">\n {displayErrors.map(({ path, message }, index) => (\n <li key={`${path}-${index}`}>\n {/* An error that names no field belongs to the record, so it is listed without a field label. */}\n {FormContextUtils.isFormLevelErrorPath(path) ? null : <><span className=\"font-medium\">{formatFieldLabel(path)}:</span>{' '}</>}\n {message}\n </li>\n ))}\n </ul>\n \n {hasMoreErrors && (\n <p className=\"mt-item text-sm opacity-[var(--opacity-hover)]\">\n {tComponent(FrontendComponentType.LOW_LEVEL_FORM_MESSAGE, 'moreErrors', { count: errorsToShow.length - maxErrors })}\n </p>\n )}\n </AlertDescription>\n </div>\n </div>\n </Alert>\n );\n}\n\nFormErrorSummaryComponent.displayName = 'FormErrorSummary';\n\nexport const FormErrorSummary: typeof FormErrorSummaryComponent & { displayName: string } = FormErrorSummaryComponent;\n"]}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/** The DOM event a hidden panel answers by showing itself. Bubbles from the field that must be shown. */
|
|
2
|
+
export declare const REVEAL_FIELD_EVENT = "wildo:reveal-field";
|
|
3
|
+
/**
|
|
4
|
+
* Asks every container enclosing `element` to show the panel it sits in.
|
|
5
|
+
*
|
|
6
|
+
* @returns whether any panel was hidden and is now being shown. The panel appears on a later render, so a caller that
|
|
7
|
+
* scrolls or focuses must wait for it ({@link whenRendered}).
|
|
8
|
+
*/
|
|
9
|
+
export declare function requestFieldReveal(element: Element): boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Runs `callback` once `element` is rendered (it has a layout box), polling one animation frame at a time.
|
|
12
|
+
*
|
|
13
|
+
* Gives up after `maxFrames` and runs `callback` anyway: a panel whose owner declined to switch (a controlled tab set
|
|
14
|
+
* that ignores the request) must not leave the caller waiting, and a scroll that does nothing is no worse than before.
|
|
15
|
+
*/
|
|
16
|
+
export declare function whenRendered(element: Element, callback: () => void, maxFrames?: number): void;
|
|
17
|
+
/**
|
|
18
|
+
* Listens for reveal requests on behalf of one container.
|
|
19
|
+
*
|
|
20
|
+
* @param reveal shows the panel with the given id, and returns `true` when that panel was hidden.
|
|
21
|
+
* @returns the container's id, to pass to {@link fieldRevealPanelAttributes} for each of its panels.
|
|
22
|
+
*/
|
|
23
|
+
export declare function useFieldRevealRequests(reveal: (panelId: string) => boolean): string;
|
|
24
|
+
/** The attributes that make an element a panel of the container `containerId`, identified by `panelId`. */
|
|
25
|
+
export declare function fieldRevealPanelAttributes(containerId: string, panelId: string): Record<string, string>;
|
|
26
|
+
/**
|
|
27
|
+
* Whether a container's hidden panels must stay MOUNTED: true inside a form.
|
|
28
|
+
*
|
|
29
|
+
* A form field is bound through a `Controller` that unregisters on unmount, and React Hook Form's unregister deletes
|
|
30
|
+
* the field's value AND its default. So a container that showed one panel at a time by unmounting the others (a tab
|
|
31
|
+
* not selected, an accordion row closed, a collapsed section, sections past "show more", a step not current) erased
|
|
32
|
+
* the edits in every panel the person left, and a submit from another panel sent the record without them. Inside a
|
|
33
|
+
* form those panels stay mounted and are hidden with the `hidden` attribute, and each answers a reveal request
|
|
34
|
+
* ({@link useFieldRevealRequests}) so the error scroll can show the one holding the first error.
|
|
35
|
+
*
|
|
36
|
+
* Outside a form nothing is lost by unmounting, while mounting every panel would load every embedded view at once,
|
|
37
|
+
* so display layouts keep unmounting. A container an application writes itself, inside a form, needs the same three
|
|
38
|
+
* things: this hook, {@link useFieldRevealRequests} and {@link fieldRevealPanelAttributes}.
|
|
39
|
+
*/
|
|
40
|
+
export declare function useKeepsHiddenPanelsMounted(): boolean;
|
|
41
|
+
//# sourceMappingURL=field-reveal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field-reveal.d.ts","sourceRoot":"","sources":["../../../../../../src/components/form/validation-errors/field-reveal.ts"],"names":[],"mappings":"AAoBA,yGAAyG;AACzG,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AAUvD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAI5D;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,EAAE,SAAS,SAAK,GAAG,IAAI,CAYzF;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,GAAG,MAAM,CAwBnF;AAED,2GAA2G;AAC3G,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAEvG;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,2BAA2B,IAAI,OAAO,CAGrD"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bringing a field that sits in a hidden panel back on screen.
|
|
3
|
+
*
|
|
4
|
+
* Inside a form, a section container keeps every panel MOUNTED and hides the ones not on screen (a tab not selected,
|
|
5
|
+
* an accordion row closed, a step not current), because an unmounted field loses its value. So the field holding the
|
|
6
|
+
* first error after a failed submit can be in the DOM and invisible: scrolling to it moves nothing and focusing it does
|
|
7
|
+
* nothing, and the click on Save reads as having done nothing.
|
|
8
|
+
*
|
|
9
|
+
* The containers cannot be asked by name — the scroll helper only has the field's element — so the request travels the
|
|
10
|
+
* DOM instead. {@link requestFieldReveal} dispatches {@link REVEAL_FIELD_EVENT} from the field's element; every
|
|
11
|
+
* container that hides panels listens through {@link useFieldRevealRequests} and, when the field is inside one of ITS
|
|
12
|
+
* panels, shows that panel. Containers nest (a tab inside an accordion row), and each one reveals its own level, so the
|
|
13
|
+
* field ends up visible however deep it is.
|
|
14
|
+
*
|
|
15
|
+
* A panel is recognised by the two attributes {@link fieldRevealPanelAttributes} stamps on it: the container's own id
|
|
16
|
+
* (so a container never claims a nested container's panel) and the panel's id.
|
|
17
|
+
*/
|
|
18
|
+
import { useEffect, useId, useRef } from 'react';
|
|
19
|
+
import { useFormContext } from 'react-hook-form';
|
|
20
|
+
/** The DOM event a hidden panel answers by showing itself. Bubbles from the field that must be shown. */
|
|
21
|
+
export const REVEAL_FIELD_EVENT = 'wildo:reveal-field';
|
|
22
|
+
const REVEAL_CONTAINER_ATTRIBUTE = 'data-reveal-container';
|
|
23
|
+
const REVEAL_PANEL_ATTRIBUTE = 'data-reveal-panel';
|
|
24
|
+
/**
|
|
25
|
+
* Asks every container enclosing `element` to show the panel it sits in.
|
|
26
|
+
*
|
|
27
|
+
* @returns whether any panel was hidden and is now being shown. The panel appears on a later render, so a caller that
|
|
28
|
+
* scrolls or focuses must wait for it ({@link whenRendered}).
|
|
29
|
+
*/
|
|
30
|
+
export function requestFieldReveal(element) {
|
|
31
|
+
const detail = { revealed: false };
|
|
32
|
+
element.dispatchEvent(new CustomEvent(REVEAL_FIELD_EVENT, { bubbles: true, detail }));
|
|
33
|
+
return detail.revealed;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Runs `callback` once `element` is rendered (it has a layout box), polling one animation frame at a time.
|
|
37
|
+
*
|
|
38
|
+
* Gives up after `maxFrames` and runs `callback` anyway: a panel whose owner declined to switch (a controlled tab set
|
|
39
|
+
* that ignores the request) must not leave the caller waiting, and a scroll that does nothing is no worse than before.
|
|
40
|
+
*/
|
|
41
|
+
export function whenRendered(element, callback, maxFrames = 20) {
|
|
42
|
+
const schedule = typeof requestAnimationFrame === 'function' ? requestAnimationFrame : (step) => setTimeout(step, 16);
|
|
43
|
+
let frames = 0;
|
|
44
|
+
const step = () => {
|
|
45
|
+
if (element.getClientRects().length > 0 || frames >= maxFrames) {
|
|
46
|
+
callback();
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
frames += 1;
|
|
50
|
+
schedule(step);
|
|
51
|
+
};
|
|
52
|
+
schedule(step);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Listens for reveal requests on behalf of one container.
|
|
56
|
+
*
|
|
57
|
+
* @param reveal shows the panel with the given id, and returns `true` when that panel was hidden.
|
|
58
|
+
* @returns the container's id, to pass to {@link fieldRevealPanelAttributes} for each of its panels.
|
|
59
|
+
*/
|
|
60
|
+
export function useFieldRevealRequests(reveal) {
|
|
61
|
+
const containerId = useId();
|
|
62
|
+
const revealRef = useRef(reveal);
|
|
63
|
+
useEffect(() => {
|
|
64
|
+
revealRef.current = reveal;
|
|
65
|
+
});
|
|
66
|
+
useEffect(() => {
|
|
67
|
+
if (typeof document === 'undefined')
|
|
68
|
+
return undefined;
|
|
69
|
+
const listener = (event) => {
|
|
70
|
+
const detail = event.detail;
|
|
71
|
+
// The NEAREST panel of this container, walking up from the field: a nested container's panels carry their own id.
|
|
72
|
+
for (let node = event.target instanceof Element ? event.target : null; node; node = node.parentElement) {
|
|
73
|
+
if (node.getAttribute(REVEAL_CONTAINER_ATTRIBUTE) !== containerId)
|
|
74
|
+
continue;
|
|
75
|
+
const panelId = node.getAttribute(REVEAL_PANEL_ATTRIBUTE);
|
|
76
|
+
if (panelId !== null && revealRef.current(panelId) && detail)
|
|
77
|
+
detail.revealed = true;
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
document.addEventListener(REVEAL_FIELD_EVENT, listener);
|
|
82
|
+
return () => document.removeEventListener(REVEAL_FIELD_EVENT, listener);
|
|
83
|
+
}, [containerId]);
|
|
84
|
+
return containerId;
|
|
85
|
+
}
|
|
86
|
+
/** The attributes that make an element a panel of the container `containerId`, identified by `panelId`. */
|
|
87
|
+
export function fieldRevealPanelAttributes(containerId, panelId) {
|
|
88
|
+
return { [REVEAL_CONTAINER_ATTRIBUTE]: containerId, [REVEAL_PANEL_ATTRIBUTE]: panelId };
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Whether a container's hidden panels must stay MOUNTED: true inside a form.
|
|
92
|
+
*
|
|
93
|
+
* A form field is bound through a `Controller` that unregisters on unmount, and React Hook Form's unregister deletes
|
|
94
|
+
* the field's value AND its default. So a container that showed one panel at a time by unmounting the others (a tab
|
|
95
|
+
* not selected, an accordion row closed, a collapsed section, sections past "show more", a step not current) erased
|
|
96
|
+
* the edits in every panel the person left, and a submit from another panel sent the record without them. Inside a
|
|
97
|
+
* form those panels stay mounted and are hidden with the `hidden` attribute, and each answers a reveal request
|
|
98
|
+
* ({@link useFieldRevealRequests}) so the error scroll can show the one holding the first error.
|
|
99
|
+
*
|
|
100
|
+
* Outside a form nothing is lost by unmounting, while mounting every panel would load every embedded view at once,
|
|
101
|
+
* so display layouts keep unmounting. A container an application writes itself, inside a form, needs the same three
|
|
102
|
+
* things: this hook, {@link useFieldRevealRequests} and {@link fieldRevealPanelAttributes}.
|
|
103
|
+
*/
|
|
104
|
+
export function useKeepsHiddenPanelsMounted() {
|
|
105
|
+
// `useFormContext` is typed non-null, but answers null outside a FormProvider.
|
|
106
|
+
return useFormContext() != null;
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=field-reveal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field-reveal.js","sourceRoot":"","sources":["../../../../../../src/components/form/validation-errors/field-reveal.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Bringing a field that sits in a hidden panel back on screen.\n *\n * Inside a form, a section container keeps every panel MOUNTED and hides the ones not on screen (a tab not selected,\n * an accordion row closed, a step not current), because an unmounted field loses its value. So the field holding the\n * first error after a failed submit can be in the DOM and invisible: scrolling to it moves nothing and focusing it does\n * nothing, and the click on Save reads as having done nothing.\n *\n * The containers cannot be asked by name — the scroll helper only has the field's element — so the request travels the\n * DOM instead. {@link requestFieldReveal} dispatches {@link REVEAL_FIELD_EVENT} from the field's element; every\n * container that hides panels listens through {@link useFieldRevealRequests} and, when the field is inside one of ITS\n * panels, shows that panel. Containers nest (a tab inside an accordion row), and each one reveals its own level, so the\n * field ends up visible however deep it is.\n *\n * A panel is recognised by the two attributes {@link fieldRevealPanelAttributes} stamps on it: the container's own id\n * (so a container never claims a nested container's panel) and the panel's id.\n */\nimport { useEffect, useId, useRef } from 'react';\nimport { useFormContext, type UseFormReturn } from 'react-hook-form';\n\n/** The DOM event a hidden panel answers by showing itself. Bubbles from the field that must be shown. */\nexport const REVEAL_FIELD_EVENT = 'wildo:reveal-field';\n\nconst REVEAL_CONTAINER_ATTRIBUTE = 'data-reveal-container';\nconst REVEAL_PANEL_ATTRIBUTE = 'data-reveal-panel';\n\ninterface FieldRevealEventDetail {\n /** Set by any container that had to SHOW a panel, so the caller knows to wait for the next render before scrolling. */\n revealed: boolean;\n}\n\n/**\n * Asks every container enclosing `element` to show the panel it sits in.\n *\n * @returns whether any panel was hidden and is now being shown. The panel appears on a later render, so a caller that\n * scrolls or focuses must wait for it ({@link whenRendered}).\n */\nexport function requestFieldReveal(element: Element): boolean {\n const detail: FieldRevealEventDetail = { revealed: false };\n element.dispatchEvent(new CustomEvent<FieldRevealEventDetail>(REVEAL_FIELD_EVENT, { bubbles: true, detail }));\n return detail.revealed;\n}\n\n/**\n * Runs `callback` once `element` is rendered (it has a layout box), polling one animation frame at a time.\n *\n * Gives up after `maxFrames` and runs `callback` anyway: a panel whose owner declined to switch (a controlled tab set\n * that ignores the request) must not leave the caller waiting, and a scroll that does nothing is no worse than before.\n */\nexport function whenRendered(element: Element, callback: () => void, maxFrames = 20): void {\n const schedule = typeof requestAnimationFrame === 'function' ? requestAnimationFrame : (step: () => void) => setTimeout(step, 16);\n let frames = 0;\n const step = (): void => {\n if (element.getClientRects().length > 0 || frames >= maxFrames) {\n callback();\n return;\n }\n frames += 1;\n schedule(step);\n };\n schedule(step);\n}\n\n/**\n * Listens for reveal requests on behalf of one container.\n *\n * @param reveal shows the panel with the given id, and returns `true` when that panel was hidden.\n * @returns the container's id, to pass to {@link fieldRevealPanelAttributes} for each of its panels.\n */\nexport function useFieldRevealRequests(reveal: (panelId: string) => boolean): string {\n const containerId = useId();\n const revealRef = useRef(reveal);\n useEffect(() => {\n revealRef.current = reveal;\n });\n\n useEffect(() => {\n if (typeof document === 'undefined') return undefined;\n const listener = (event: Event): void => {\n const detail = (event as CustomEvent<FieldRevealEventDetail>).detail;\n // The NEAREST panel of this container, walking up from the field: a nested container's panels carry their own id.\n for (let node = event.target instanceof Element ? event.target : null; node; node = node.parentElement) {\n if (node.getAttribute(REVEAL_CONTAINER_ATTRIBUTE) !== containerId) continue;\n const panelId = node.getAttribute(REVEAL_PANEL_ATTRIBUTE);\n if (panelId !== null && revealRef.current(panelId) && detail) detail.revealed = true;\n return;\n }\n };\n document.addEventListener(REVEAL_FIELD_EVENT, listener);\n return () => document.removeEventListener(REVEAL_FIELD_EVENT, listener);\n }, [containerId]);\n\n return containerId;\n}\n\n/** The attributes that make an element a panel of the container `containerId`, identified by `panelId`. */\nexport function fieldRevealPanelAttributes(containerId: string, panelId: string): Record<string, string> {\n return { [REVEAL_CONTAINER_ATTRIBUTE]: containerId, [REVEAL_PANEL_ATTRIBUTE]: panelId };\n}\n\n/**\n * Whether a container's hidden panels must stay MOUNTED: true inside a form.\n *\n * A form field is bound through a `Controller` that unregisters on unmount, and React Hook Form's unregister deletes\n * the field's value AND its default. So a container that showed one panel at a time by unmounting the others (a tab\n * not selected, an accordion row closed, a collapsed section, sections past \"show more\", a step not current) erased\n * the edits in every panel the person left, and a submit from another panel sent the record without them. Inside a\n * form those panels stay mounted and are hidden with the `hidden` attribute, and each answers a reveal request\n * ({@link useFieldRevealRequests}) so the error scroll can show the one holding the first error.\n *\n * Outside a form nothing is lost by unmounting, while mounting every panel would load every embedded view at once,\n * so display layouts keep unmounting. A container an application writes itself, inside a form, needs the same three\n * things: this hook, {@link useFieldRevealRequests} and {@link fieldRevealPanelAttributes}.\n */\nexport function useKeepsHiddenPanelsMounted(): boolean {\n // `useFormContext` is typed non-null, but answers null outside a FormProvider.\n return (useFormContext() as UseFormReturn | null) != null;\n}\n\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-level-error-recheck.d.ts","sourceRoot":"","sources":["../../../../../../src/components/form/validation-errors/form-level-error-recheck.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGlE,wBAAgB,wBAAwB,CAAC,OAAO,SAAS,WAAW,EAAE,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,IAAI,CAUxG"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Clearing a form-level error once the person has fixed it.
|
|
3
|
+
*
|
|
4
|
+
* A rule on the whole object (`.refine(fn, { message })` with no `path`) is recorded at {@link FORM_LEVEL_ERROR_PATH}
|
|
5
|
+
* (`zod-issue-resolver.ts`). React Hook Form re-validates only the field that changed or blurred: it runs the schema
|
|
6
|
+
* and updates the error AT THAT FIELD'S NAME, so the form-level error, which sits at no field's name, was never
|
|
7
|
+
* re-read. Fixing the dates that broke "the end must not be before the start" left the message on screen until the
|
|
8
|
+
* next submit, telling the person the form was still wrong when it no longer was.
|
|
9
|
+
*
|
|
10
|
+
* So while a form-level CLIENT error stands, every edit the person makes re-checks it, and it goes away as soon as the
|
|
11
|
+
* rule holds. Two limits, both deliberate:
|
|
12
|
+
*
|
|
13
|
+
* - **It never RAISES one.** With no form-level error standing, nothing runs: a rule across fields is reported on
|
|
14
|
+
* submit, not while the person is half-way through filling the fields it compares.
|
|
15
|
+
* - **Any change of a value counts**, not only typing: a rule fixed by adding an item to a list, or by a control that
|
|
16
|
+
* writes its value with `setValue`, is cleared too. Only an update that names no field (the form's own state, as
|
|
17
|
+
* the re-check itself publishes) is ignored.
|
|
18
|
+
* - **A server's refusal is left alone.** The client schema cannot tell whether the server would now accept the
|
|
19
|
+
* record, so re-reading the client rule would erase a refusal it knows nothing about. Server errors are cleared by
|
|
20
|
+
* the next submit (`useServerErrorInjection`).
|
|
21
|
+
*/
|
|
22
|
+
import { useEffect } from 'react';
|
|
23
|
+
import { FORM_LEVEL_ERROR_PATH, SERVER_ERROR_TYPE, UNIQUE_ERROR_TYPE } from '../form-context.js';
|
|
24
|
+
export function useFormLevelErrorRecheck(form) {
|
|
25
|
+
useEffect(() => {
|
|
26
|
+
const subscription = form.watch((_values, { name, type }) => {
|
|
27
|
+
if (type !== 'change' && name === undefined)
|
|
28
|
+
return;
|
|
29
|
+
const standing = form.getFieldState(FORM_LEVEL_ERROR_PATH).error;
|
|
30
|
+
if (!standing || standing.type === SERVER_ERROR_TYPE || standing.type === UNIQUE_ERROR_TYPE)
|
|
31
|
+
return;
|
|
32
|
+
void form.trigger(FORM_LEVEL_ERROR_PATH);
|
|
33
|
+
});
|
|
34
|
+
return () => subscription.unsubscribe();
|
|
35
|
+
}, [form]);
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=form-level-error-recheck.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-level-error-recheck.js","sourceRoot":"","sources":["../../../../../../src/components/form/validation-errors/form-level-error-recheck.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAE9F,MAAM,UAAU,wBAAwB,CAA8B,IAA4B;IAChG,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;YAC1D,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO;YACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,qBAA8B,CAAC,CAAC,KAAK,CAAC;YAC1E,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,iBAAiB,IAAI,QAAQ,CAAC,IAAI,KAAK,iBAAiB;gBAAE,OAAO;YACpG,KAAK,IAAI,CAAC,OAAO,CAAC,qBAA8B,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IAC1C,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AACb,CAAC","sourcesContent":["/**\n * Clearing a form-level error once the person has fixed it.\n *\n * A rule on the whole object (`.refine(fn, { message })` with no `path`) is recorded at {@link FORM_LEVEL_ERROR_PATH}\n * (`zod-issue-resolver.ts`). React Hook Form re-validates only the field that changed or blurred: it runs the schema\n * and updates the error AT THAT FIELD'S NAME, so the form-level error, which sits at no field's name, was never\n * re-read. Fixing the dates that broke \"the end must not be before the start\" left the message on screen until the\n * next submit, telling the person the form was still wrong when it no longer was.\n *\n * So while a form-level CLIENT error stands, every edit the person makes re-checks it, and it goes away as soon as the\n * rule holds. Two limits, both deliberate:\n *\n * - **It never RAISES one.** With no form-level error standing, nothing runs: a rule across fields is reported on\n * submit, not while the person is half-way through filling the fields it compares.\n * - **Any change of a value counts**, not only typing: a rule fixed by adding an item to a list, or by a control that\n * writes its value with `setValue`, is cleared too. Only an update that names no field (the form's own state, as\n * the re-check itself publishes) is ignored.\n * - **A server's refusal is left alone.** The client schema cannot tell whether the server would now accept the\n * record, so re-reading the client rule would erase a refusal it knows nothing about. Server errors are cleared by\n * the next submit (`useServerErrorInjection`).\n */\nimport { useEffect } from 'react';\nimport type { FieldValues, UseFormReturn } from 'react-hook-form';\nimport { FORM_LEVEL_ERROR_PATH, SERVER_ERROR_TYPE, UNIQUE_ERROR_TYPE } from '../form-context';\n\nexport function useFormLevelErrorRecheck<TValues extends FieldValues>(form: UseFormReturn<TValues>): void {\n useEffect(() => {\n const subscription = form.watch((_values, { name, type }) => {\n if (type !== 'change' && name === undefined) return;\n const standing = form.getFieldState(FORM_LEVEL_ERROR_PATH as never).error;\n if (!standing || standing.type === SERVER_ERROR_TYPE || standing.type === UNIQUE_ERROR_TYPE) return;\n void form.trigger(FORM_LEVEL_ERROR_PATH as never);\n });\n return () => subscription.unsubscribe();\n }, [form]);\n}\n"]}
|
|
@@ -20,6 +20,12 @@ declare function isRequiredFieldError(errorMessage: string): boolean;
|
|
|
20
20
|
* 2. Form has been submitted at least once
|
|
21
21
|
* This prevents showing errors on initial render with invalid defaultValues.
|
|
22
22
|
*
|
|
23
|
+
* A SERVER error (a refusal the server returned, a uniqueness conflict) is shown whatever the touch state. The gate
|
|
24
|
+
* exists to hide what the client schema says about values nobody has entered yet, and a server error is never that:
|
|
25
|
+
* it answers a save, a submit or a uniqueness check somebody started. Gated, a refusal on a field the person never
|
|
26
|
+
* visited (the server rejecting a value carried from the stored record, a section saved without a form submit) was
|
|
27
|
+
* recorded and never shown.
|
|
28
|
+
*
|
|
23
29
|
* @param fieldState - RHF field state containing isTouched and error
|
|
24
30
|
* @param isFormSubmitted - Whether the form has been submitted at least once
|
|
25
31
|
* @param tErrorValidation - Translation function for error messages
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getFieldError.d.ts","sourceRoot":"","sources":["../../../../../../src/components/form/validation-errors/getFieldError.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG1D,QAAA,MAAM,0BAA0B,EAAG,iBAA0B,CAAC;AAK9D,iBAAS,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED
|
|
1
|
+
{"version":3,"file":"getFieldError.d.ts","sourceRoot":"","sources":["../../../../../../src/components/form/validation-errors/getFieldError.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG1D,QAAA,MAAM,0BAA0B,EAAG,iBAA0B,CAAC;AAK9D,iBAAS,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,aAAa,CAC3B,UAAU,EAAE;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAA;CAAE,EACnI,eAAe,EAAE,OAAO,EACxB,cAAc,EAAE,cAAc,EAC9B,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,GAC3F,MAAM,GAAG,SAAS,CAmDpB;AAED,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,CAAC"}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* message.
|
|
10
10
|
*/
|
|
11
11
|
import { ValidationMode } from '@wildo-ai/zod-decorators';
|
|
12
|
-
import { UNIQUE_ERROR_TYPE } from '../form-context.js';
|
|
12
|
+
import { SERVER_ERROR_TYPE, UNIQUE_ERROR_TYPE } from '../form-context.js';
|
|
13
13
|
const FILE_VALIDATION_ERROR_TYPE = 'file-validation';
|
|
14
14
|
const REQUIRED_FIELD_PATTERN = /received (undefined|null)\b/i;
|
|
15
15
|
const REQUIRED_FIELD_PATTERN_EXTENDED = /expected .+, received (undefined|null)/i;
|
|
@@ -25,13 +25,20 @@ function isRequiredFieldError(errorMessage) {
|
|
|
25
25
|
* 2. Form has been submitted at least once
|
|
26
26
|
* This prevents showing errors on initial render with invalid defaultValues.
|
|
27
27
|
*
|
|
28
|
+
* A SERVER error (a refusal the server returned, a uniqueness conflict) is shown whatever the touch state. The gate
|
|
29
|
+
* exists to hide what the client schema says about values nobody has entered yet, and a server error is never that:
|
|
30
|
+
* it answers a save, a submit or a uniqueness check somebody started. Gated, a refusal on a field the person never
|
|
31
|
+
* visited (the server rejecting a value carried from the stored record, a section saved without a form submit) was
|
|
32
|
+
* recorded and never shown.
|
|
33
|
+
*
|
|
28
34
|
* @param fieldState - RHF field state containing isTouched and error
|
|
29
35
|
* @param isFormSubmitted - Whether the form has been submitted at least once
|
|
30
36
|
* @param tErrorValidation - Translation function for error messages
|
|
31
37
|
* @returns Translated error message or undefined if no error should be shown
|
|
32
38
|
*/
|
|
33
39
|
export function getFieldError(fieldState, isFormSubmitted, validationMode, tErrorValidation) {
|
|
34
|
-
const
|
|
40
|
+
const isServerError = fieldState.error?.type === SERVER_ERROR_TYPE || fieldState.error?.type === UNIQUE_ERROR_TYPE;
|
|
41
|
+
const shouldShowError = isServerError || fieldState.isTouched || isFormSubmitted || ((validationMode === ValidationMode.ON_CHANGE || validationMode === ValidationMode.ON_TOUCHED) && !!fieldState.isDirty);
|
|
35
42
|
if (!shouldShowError || !fieldState.error) {
|
|
36
43
|
return undefined;
|
|
37
44
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getFieldError.js","sourceRoot":"","sources":["../../../../../../src/components/form/validation-errors/getFieldError.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"getFieldError.js","sourceRoot":"","sources":["../../../../../../src/components/form/validation-errors/getFieldError.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * getFieldError utility\n *\n * Separated from FormField.tsx for React Fast Refresh compatibility.\n *\n * Translates through `errors_validation.<type>.msg`, where `type` is the Zod issue code the form's\n * resolver kept (`zodIssueResolver`, issue #995) and `params` are the issue's own fields. A field\n * error with no type — a Standard Schema that is not Zod, or an error set by hand — still shows its\n * message.\n */\n\nimport { ValidationMode } from '@wildo-ai/zod-decorators';\nimport { SERVER_ERROR_TYPE, UNIQUE_ERROR_TYPE } from '../form-context';\n\nconst FILE_VALIDATION_ERROR_TYPE = 'file-validation' as const;\n\nconst REQUIRED_FIELD_PATTERN = /received (undefined|null)\\b/i;\nconst REQUIRED_FIELD_PATTERN_EXTENDED = /expected .+, received (undefined|null)/i;\n\nfunction isRequiredFieldError(errorMessage: string): boolean {\n return REQUIRED_FIELD_PATTERN.test(errorMessage) || REQUIRED_FIELD_PATTERN_EXTENDED.test(errorMessage);\n}\n\n/**\n * Calculate translated error message based on field state and touch behavior.\n * \n * Touch State Behavior\n * Only show validation errors if:\n * 1. Field has been touched (user interacted and blurred), OR\n * 2. Form has been submitted at least once\n * This prevents showing errors on initial render with invalid defaultValues.\n *\n * A SERVER error (a refusal the server returned, a uniqueness conflict) is shown whatever the touch state. The gate\n * exists to hide what the client schema says about values nobody has entered yet, and a server error is never that:\n * it answers a save, a submit or a uniqueness check somebody started. Gated, a refusal on a field the person never\n * visited (the server rejecting a value carried from the stored record, a section saved without a form submit) was\n * recorded and never shown.\n * \n * @param fieldState - RHF field state containing isTouched and error\n * @param isFormSubmitted - Whether the form has been submitted at least once\n * @param tErrorValidation - Translation function for error messages\n * @returns Translated error message or undefined if no error should be shown\n */\nexport function getFieldError(\n fieldState: { isTouched: boolean; isDirty?: boolean; error?: { type: string; message?: string; params?: Record<string, unknown> } },\n isFormSubmitted: boolean,\n validationMode: ValidationMode,\n tErrorValidation: (code: string, suffix: string, params?: Record<string, unknown>) => string\n): string | undefined {\n const isServerError = fieldState.error?.type === SERVER_ERROR_TYPE || fieldState.error?.type === UNIQUE_ERROR_TYPE;\n const shouldShowError = isServerError || fieldState.isTouched || isFormSubmitted || (\n (validationMode === ValidationMode.ON_CHANGE || validationMode === ValidationMode.ON_TOUCHED) && !!fieldState.isDirty\n );\n if (!shouldShowError || !fieldState.error) {\n return undefined;\n }\n \n const rawMessage = fieldState.error.message || '';\n if (isRequiredFieldError(rawMessage)) {\n return tErrorValidation('required', 'msg');\n }\n \n const errorType = fieldState.error.type;\n \n if (!errorType || errorType.trim() === '') {\n if (fieldState.error.message) {\n return fieldState.error.message;\n }\n return tErrorValidation('custom', 'msg');\n }\n \n if (errorType === FILE_VALIDATION_ERROR_TYPE) {\n return fieldState.error.message || tErrorValidation('custom', 'msg');\n }\n \n if (errorType === UNIQUE_ERROR_TYPE) {\n return fieldState.error.message || tErrorValidation('custom', 'msg');\n }\n \n // The issue's own fields (`minimum`, `origin`, `format`, …) are the parameters the catalog is\n // planned with (issue #995); the schema's message rides along as `message` for a catalog that\n // chooses to show it.\n const translated = tErrorValidation(\n errorType,\n 'msg',\n {\n ...(fieldState.error.params ?? {}),\n ...(fieldState.error.message ? { message: fieldState.error.message } : {}),\n }\n );\n \n if (translated === `errors_validation.${errorType}.msg` || translated.includes('..')) {\n if (fieldState.error.message) {\n return fieldState.error.message;\n }\n return tErrorValidation('custom', 'msg');\n }\n \n return translated;\n}\n\nexport { FILE_VALIDATION_ERROR_TYPE, isRequiredFieldError };\n"]}
|
|
@@ -22,12 +22,19 @@
|
|
|
22
22
|
* insertion order, not visual order) and pick the first element whose
|
|
23
23
|
* `data-field` equals an errored path or is a structural ancestor of one
|
|
24
24
|
* (e.g. the `checklist` array section for a `checklist.0.label` error).
|
|
25
|
-
* 3.
|
|
25
|
+
* 3. Ask every section panel enclosing it to show itself ({@link requestFieldReveal}): inside a form, a tab not
|
|
26
|
+
* selected, an accordion row closed or a step not current keeps its fields mounted but hidden, and a hidden field
|
|
27
|
+
* cannot be scrolled to or focused. When a panel had to be shown, the scroll waits for it to render.
|
|
28
|
+
* 4. Scroll it into view (centered, smooth) and focus the first focusable
|
|
26
29
|
* control inside it, so keyboard users land where the repair happens.
|
|
27
30
|
*
|
|
28
31
|
* The `[name="..."]` fallback covers controls rendered outside a chrome wrapper.
|
|
29
32
|
*/
|
|
30
33
|
import type { FieldErrors } from 'react-hook-form';
|
|
34
|
+
/**
|
|
35
|
+
* The attribute the form error summary carries, so the scroll can reach it when the error belongs to no field.
|
|
36
|
+
*/
|
|
37
|
+
export declare const FORM_ERROR_SUMMARY_ATTRIBUTE = "data-form-error-summary";
|
|
31
38
|
/**
|
|
32
39
|
* Flatten a react-hook-form `FieldErrors` tree into dotted field paths.
|
|
33
40
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scroll-to-first-error.utils.d.ts","sourceRoot":"","sources":["../../../../../../src/components/form/validation-errors/scroll-to-first-error.utils.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"scroll-to-first-error.utils.d.ts","sourceRoot":"","sources":["../../../../../../src/components/form/validation-errors/scroll-to-first-error.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAInD;;GAEG;AACH,eAAO,MAAM,4BAA4B,4BAA4B,CAAC;AAEtE;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAyBhG;AAWD;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CA2C/E"}
|