@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":"chart-view.frontend.schemas.js","sourceRoot":"","sources":["../../../../../src/core/config/chart-view.frontend.schemas.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport { CoreResourceOperation, ResourcePrimaryScope } from '@wildo-ai/saas-models';\nimport type {\n ChartDefinition,\n ChartSeriesDefinition,\n ChartAccessControl,\n ChartAppearance,\n ChartTypeConfig,\n ChartInputDefinition,\n ChartInputValues,\n AggregationQuery,\n FrontendChartRegistrationRef,\n} from '@wildo-ai/saas-models';\nimport { ChartDefinitionSchema, ChartInputValuesSchema } from '@wildo-ai/saas-models';\nimport { FrontendView_ScopeMode } from './views-frontend.schemas';\nimport { HOSTED_PANE_QUERY_PARAM } from '~wildo-frontend-lib/core/navigation/hosted-pane.constants';\nimport type { FrontendResource_ParentResourceRequirement } from '~wildo-frontend-lib/core/resources/resource-path.frontend.schemas';\nimport { FrontendResource_ParentResourceRequirementSchema } from '~wildo-frontend-lib/core/resources/resource-path.frontend.schemas';\nimport type { FrontendResourcesRegistry, ResourceUIBehavior } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport {\n InsertedViewInputBindingSchema,\n FrontendInsertedViewIdentitySchema,\n createFrontendInsertedViewIdentity,\n FrontendInsertedViewHostKind,\n FrontendInsertedViewKind,\n parseFrontendInsertedViewRef,\n type FrontendInsertedViewIdentity,\n type InsertedViewInputBinding,\n} from './inserted-view.frontend.schemas';\n\n/**\n * @wildo_source:part:start saas.frontend.chart-view.inserted-declaration facet:layer:frontend facet:family:chart-view\n *\n * Host-owned inserted chart declaration — the **only** chart authoring surface.\n *\n * Design decision (framework mindset): chart views are intentionally\n * **resource-scoped only**. The former app-level `ChartViewDefinition` /\n * `ChartViewDefinitionSchema` and the `AppConfiguration_Frontend.charts`\n * authoring seam were removed because an application-scoped chart has no\n * meaningful operation host to be rendered inside of, and keeping a separate\n * app-level authoring contract for the same runtime concept created drift\n * between authoring sites and specification extraction.\n *\n * Operation surfacing is declared exclusively via `operationLike`:\n *\n * - `operationLike` names the single resource operation host this chart is\n * rendered inside of (defaulting to `CoreResourceOperation.READ`).\n * - At render time, `ResourceLayout_InsertedViews` filters the resource's\n * `chartViews` directly by the current operation host against `operationLike`.\n * There is no operation-level view-ref list and no compiled derivation —\n * the chart declaration itself carries the link.\n * - There is no list analogue (`surfaceInOperations`) for charts — charts\n * are always rendered in exactly one operation host. The list-typed\n * authoring field is reserved for execution views, which legitimately\n * surface in multiple operation hosts.\n */\nexport const InsertedChartDeclarationSchema = z.object({\n /**\n * Charts are resource-owned inserted surfaces only.\n *\n * The scope is a Zod literal (rather than the open `FrontendView_ScopeMode`\n * enum) so that an app-scoped chart is impossible by construction — the\n * schema refuses to parse one at authoring time, and the TS type refuses\n * to let a caller construct one at compile time.\n */\n scope: z.literal(FrontendView_ScopeMode.RESOURCE),\n parentResourcesRequirements: FrontendResource_ParentResourceRequirementSchema.array().optional(),\n additionalResourceRequirements: FrontendResource_ParentResourceRequirementSchema.array().optional(),\n\n ref: z.string().min(1),\n chartDefinition: ChartDefinitionSchema,\n isAddressable: z.boolean().default(false),\n\n /**\n * Operation host this chart is rendered inside of.\n *\n * Also serves as the **single** declarative source of truth for which\n * resource operation surface the chart is surfaced in. `ResourceLayout_InsertedViews`\n * filters `chartViews` directly against this field at render time, and the\n * specification layer uses `collectOperationLikeViewRefs` with the same\n * default to mirror per-operation linked view refs. If this default is ever\n * changed, the matching runtime default at both call sites MUST be updated\n * in lockstep, otherwise host rendering and spec output disagree.\n */\n operationLike: z.enum(CoreResourceOperation).default(CoreResourceOperation.READ),\n primaryScope: z.enum(ResourcePrimaryScope).default(ResourcePrimaryScope.ORGANIZATIONS),\n inputBindings: z.array(InsertedViewInputBindingSchema).optional(),\n});\n\nexport interface InsertedChartDeclaration {\n ref: string;\n chartDefinition: ChartDefinition;\n scope: FrontendView_ScopeMode.RESOURCE;\n parentResourcesRequirements?: FrontendResource_ParentResourceRequirement[];\n additionalResourceRequirements?: FrontendResource_ParentResourceRequirement[];\n isAddressable: boolean;\n operationLike: CoreResourceOperation;\n primaryScope: ResourcePrimaryScope;\n inputBindings?: InsertedViewInputBinding[];\n}\n/** @wildo_source:part:end saas.frontend.chart-view.inserted-declaration */\n\nexport function isStandaloneRoutableInsertedChartView(\n chartView: InsertedChartDeclaration | undefined,\n): boolean {\n if (!chartView || chartView.isAddressable !== true) {\n return false;\n }\n\n return true;\n}\n\nexport const ResolvedInsertedChartDescriptorSchema = z.object({\n identity: FrontendInsertedViewIdentitySchema,\n executionChartRef: z.string().min(1),\n chartDefinition: ChartDefinitionSchema,\n contextResourceIdentifiers: z.record(z.string(), z.string()),\n resolvedInputs: ChartInputValuesSchema.optional(),\n});\n\nexport interface ResolvedInsertedChartDescriptor {\n identity: FrontendInsertedViewIdentity;\n executionChartRef: string;\n chartDefinition: ChartDefinition;\n contextResourceIdentifiers: Record<string, string>;\n resolvedInputs?: ChartInputValues;\n}\n\nexport interface ResolvedInsertedChartView {\n identity: FrontendInsertedViewIdentity;\n chartView: InsertedChartDeclaration;\n}\n\nexport const CHART_ROUTE_CONTEXT_QUERY_PARAM_PREFIX = 'chart_ctx_';\n/** The chart route's path prefix (`/chart/:viewRef`) — named once so the URL identity rules can recognise it. */\nexport const CHART_ROUTE_PATH_PREFIX = '/chart/';\n\nexport function buildResourceInsertedChartIdentity(\n resourceType: string,\n chartView: Pick<InsertedChartDeclaration, 'ref'>,\n): FrontendInsertedViewIdentity {\n return createFrontendInsertedViewIdentity({\n hostKind: FrontendInsertedViewHostKind.RESOURCE,\n hostRef: resourceType,\n viewKind: FrontendInsertedViewKind.CHART_VIEW,\n localRef: chartView.ref,\n });\n}\n\nexport function buildResolvedInsertedChartDescriptor(params: {\n identity: FrontendInsertedViewIdentity;\n chartView: InsertedChartDeclaration;\n contextResourceIdentifiers: Record<string, string>;\n resolvedInputs?: ChartInputValues;\n}): ResolvedInsertedChartDescriptor {\n return {\n identity: params.identity,\n executionChartRef: params.chartView.chartDefinition.ref,\n chartDefinition: params.chartView.chartDefinition,\n contextResourceIdentifiers: params.contextResourceIdentifiers,\n resolvedInputs: params.resolvedInputs,\n };\n}\n\nexport function resolveInsertedChartView(params: {\n viewRef: string | undefined;\n registry?: FrontendResourcesRegistry;\n}): ResolvedInsertedChartView | undefined {\n const { viewRef, registry } = params;\n const insertedIdentity = parseFrontendInsertedViewRef(viewRef);\n if (\n !insertedIdentity\n || insertedIdentity.hostKind !== FrontendInsertedViewHostKind.RESOURCE\n || insertedIdentity.viewKind !== FrontendInsertedViewKind.CHART_VIEW\n ) {\n return undefined;\n }\n\n const chartView = registry?.resourceConfigurations[insertedIdentity.hostRef]\n ?.frontendConfiguration\n ?.chartViews\n ?.find((candidate) => candidate.ref === insertedIdentity.localRef);\n if (!chartView) {\n return undefined;\n }\n\n return {\n identity: insertedIdentity,\n chartView,\n };\n}\n\n/**\n * Collect every frontend chartView's registration identity across all resources,\n * for the chart-registration drift guard (compared against the backend\n * `ChartRegistry.getRegisteredChartRefs()`). Each entry carries the\n * `chartDefinition.ref` (the backend registry JOIN KEY — not the outer\n * `chartView.ref`), plus the owning `resourceType` and `chartView.ref` for a\n * locatable drift error.\n *\n * Reads the MERGED `resourceConfigurations` (shared base + ui-behavior overlay).\n * IMPORTANT for the companion integration: pass the FULL merged registry — a\n * subprocess that materializes only shared-base resources would miss\n * engine-resource-owned chartViews that live purely in the ui-behavior overlay,\n * silently narrowing the guard's frontend set.\n */\nexport function collectFrontendChartRegistrationRefs(\n registry: FrontendResourcesRegistry,\n): FrontendChartRegistrationRef[] {\n const refs: FrontendChartRegistrationRef[] = [];\n const configurations = registry.resourceConfigurations ?? {};\n for (const [resourceType, configuration] of Object.entries(configurations)) {\n pushChartRegistrationRefs(refs, resourceType, configuration?.frontendConfiguration?.chartViews);\n }\n return refs;\n}\n\n/**\n * Collect chart-registration refs directly from the ui-behavior OVERLAY\n * (`ResourceUIBehavior` — the map `buildFrontendCompanionResourceUIBehavior`\n * produces), rather than the materialized `resourceConfigurations`.\n *\n * The overlay covers EVERY resource in the frontend module chain — including\n * engine resources (e.g. `organizations`) that have no materialized shared base\n * in a companion subprocess and are therefore dropped from\n * `resourceConfigurations`. This is the complete, drift-guard-truthful source\n * for the companion introspection: an engine-resource-owned chartView that is\n * overlay-only would be silently missed by\n * {@link collectFrontendChartRegistrationRefs}. `chartViews` is the SAME field\n * on both shapes (`frontendConfiguration` IS a `ResourceUIBehaviorConfig`), just\n * un-nested here.\n */\nexport function collectFrontendChartRegistrationRefsFromUIBehavior(\n uiBehavior: ResourceUIBehavior,\n): FrontendChartRegistrationRef[] {\n const refs: FrontendChartRegistrationRef[] = [];\n for (const [resourceType, configuration] of Object.entries(uiBehavior ?? {})) {\n pushChartRegistrationRefs(refs, resourceType, configuration?.chartViews);\n }\n return refs;\n}\n\n/** Shared per-resource chartView → registration-ref projection (join key = `chartDefinition.ref`). */\nfunction pushChartRegistrationRefs(\n acc: FrontendChartRegistrationRef[],\n resourceType: string,\n chartViews: InsertedChartDeclaration[] | undefined,\n): void {\n if (!chartViews) {\n return;\n }\n for (const chartView of chartViews) {\n acc.push({\n chartDefinitionRef: chartView.chartDefinition.ref,\n resourceType,\n chartViewRef: chartView.ref,\n });\n }\n}\n\nexport function buildChartRouteUrlPath(\n viewRef: string,\n contextResourceIdentifiers?: Record<string, string>,\n urlParamValues?: Record<string, string>,\n): string {\n const params = new URLSearchParams();\n for (const [key, value] of Object.entries(contextResourceIdentifiers ?? {})) {\n if (!value) {\n continue;\n }\n params.set(`${CHART_ROUTE_CONTEXT_QUERY_PARAM_PREFIX}${key}`, value);\n }\n\n for (const [key, value] of Object.entries(urlParamValues ?? {})) {\n if (!value || key.startsWith(CHART_ROUTE_CONTEXT_QUERY_PARAM_PREFIX)) {\n continue;\n }\n params.set(key, value);\n }\n\n const search = params.toString();\n return search.length > 0 ? `${CHART_ROUTE_PATH_PREFIX}${viewRef}?${search}` : `${CHART_ROUTE_PATH_PREFIX}${viewRef}`;\n}\n\nexport function extractChartRouteContextResourceIdentifiers(\n searchParams: URLSearchParams,\n): Record<string, string> | undefined {\n const contextResourceIdentifiers: Record<string, string> = {};\n\n for (const [key, value] of searchParams.entries()) {\n if (!key.startsWith(CHART_ROUTE_CONTEXT_QUERY_PARAM_PREFIX) || !value) {\n continue;\n }\n contextResourceIdentifiers[key.slice(CHART_ROUTE_CONTEXT_QUERY_PARAM_PREFIX.length)] = value;\n }\n\n return Object.keys(contextResourceIdentifiers).length > 0 ? contextResourceIdentifiers : undefined;\n}\n\nexport function extractChartRouteUrlParamValues(\n searchParams: URLSearchParams,\n): Record<string, string> | undefined {\n const urlParamValues: Record<string, string> = {};\n\n for (const [key, value] of searchParams.entries()) {\n // A hosted pane beside the chart rides on the chart's URL (`?pane=`); it is a navigation\n // address, never a chart url-param value.\n if (!value || key.startsWith(CHART_ROUTE_CONTEXT_QUERY_PARAM_PREFIX) || key === HOSTED_PANE_QUERY_PARAM) {\n continue;\n }\n\n urlParamValues[key] = value;\n }\n\n return Object.keys(urlParamValues).length > 0 ? urlParamValues : undefined;\n}\n\nexport type {\n ChartSeriesDefinition,\n ChartAccessControl,\n ChartAppearance,\n ChartTypeConfig,\n ChartInputDefinition,\n AggregationQuery,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"chart-view.frontend.schemas.js","sourceRoot":"","sources":["../../../../../src/core/config/chart-view.frontend.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAYpF,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAEtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2DAA2D,CAAC;AAEpG,OAAO,EAAE,gDAAgD,EAAE,MAAM,mEAAmE,CAAC;AAErI,OAAO,EACL,8BAA8B,EAC9B,kCAAkC,EAClC,kCAAkC,EAClC,4BAA4B,EAC5B,wBAAwB,EACxB,4BAA4B,GAG7B,MAAM,kCAAkC,CAAC;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD;;;;;;;OAOG;IACH,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,QAAQ,CAAC;IACjD,2BAA2B,EAAE,gDAAgD,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;IAChG,8BAA8B,EAAE,gDAAgD,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;IAEnG,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACtB,eAAe,EAAE,qBAAqB;IACtC,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAEzC;;;;;;;;;;OAUG;IACH,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC;IAChF,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,aAAa,CAAC;IACtF,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,QAAQ,EAAE;IAEjE;;;;;;;;OAQG;IACH,IAAI,EAAE,CAAC,CAAC,MAAM,EAAY,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAeH,2EAA2E;AAE3E,MAAM,UAAU,qCAAqC,CACnD,SAA+C;IAE/C,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;QACnD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5D,QAAQ,EAAE,kCAAkC;IAC5C,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,eAAe,EAAE,qBAAqB;IACtC,0BAA0B,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;IAC5D,cAAc,EAAE,sBAAsB,CAAC,QAAQ,EAAE;CAClD,CAAC,CAAC;AAeH,MAAM,CAAC,MAAM,sCAAsC,GAAG,YAAY,CAAC;AACnE,iHAAiH;AACjH,MAAM,CAAC,MAAM,uBAAuB,GAAG,SAAS,CAAC;AAEjD,MAAM,UAAU,kCAAkC,CAChD,YAAoB,EACpB,SAAgD;IAEhD,OAAO,kCAAkC,CAAC;QACxC,QAAQ,EAAE,4BAA4B,CAAC,QAAQ;QAC/C,OAAO,EAAE,YAAY;QACrB,QAAQ,EAAE,wBAAwB,CAAC,UAAU;QAC7C,QAAQ,EAAE,SAAS,CAAC,GAAG;KACxB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,oCAAoC,CAAC,MAKpD;IACC,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,iBAAiB,EAAE,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,GAAG;QACvD,eAAe,EAAE,MAAM,CAAC,SAAS,CAAC,eAAe;QACjD,0BAA0B,EAAE,MAAM,CAAC,0BAA0B;QAC7D,cAAc,EAAE,MAAM,CAAC,cAAc;KACtC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAGxC;IACC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IACrC,MAAM,gBAAgB,GAAG,4BAA4B,CAAC,OAAO,CAAC,CAAC;IAC/D,IACE,CAAC,gBAAgB;WACd,gBAAgB,CAAC,QAAQ,KAAK,4BAA4B,CAAC,QAAQ;WACnE,gBAAgB,CAAC,QAAQ,KAAK,wBAAwB,CAAC,UAAU,EACpE,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,SAAS,GAAG,QAAQ,EAAE,sBAAsB,CAAC,gBAAgB,CAAC,OAAO,CAAC;QAC1E,EAAE,qBAAqB;QACvB,EAAE,UAAU;QACZ,EAAE,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,KAAK,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACrE,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,gBAAgB;QAC1B,SAAS;KACV,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,oCAAoC,CAClD,QAAmC;IAEnC,MAAM,IAAI,GAAmC,EAAE,CAAC;IAChD,MAAM,cAAc,GAAG,QAAQ,CAAC,sBAAsB,IAAI,EAAE,CAAC;IAC7D,KAAK,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;QAC3E,yBAAyB,CAAC,IAAI,EAAE,YAAY,EAAE,aAAa,EAAE,qBAAqB,EAAE,UAAU,CAAC,CAAC;IAClG,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,kDAAkD,CAChE,UAA8B;IAE9B,MAAM,IAAI,GAAmC,EAAE,CAAC;IAChD,KAAK,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC;QAC7E,yBAAyB,CAAC,IAAI,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,sGAAsG;AACtG,SAAS,yBAAyB,CAChC,GAAmC,EACnC,YAAoB,EACpB,UAAkD;IAElD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO;IACT,CAAC;IACD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,GAAG,CAAC,IAAI,CAAC;YACP,kBAAkB,EAAE,SAAS,CAAC,eAAe,CAAC,GAAG;YACjD,YAAY;YACZ,YAAY,EAAE,SAAS,CAAC,GAAG;SAC5B,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,OAAe,EACf,0BAAmD,EACnD,cAAuC;IAEvC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,0BAA0B,IAAI,EAAE,CAAC,EAAE,CAAC;QAC5E,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,SAAS;QACX,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,GAAG,sCAAsC,GAAG,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;IACvE,CAAC;IAED,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC,EAAE,CAAC;QAChE,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,UAAU,CAAC,sCAAsC,CAAC,EAAE,CAAC;YACrE,SAAS;QACX,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IACjC,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,uBAAuB,GAAG,OAAO,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,uBAAuB,GAAG,OAAO,EAAE,CAAC;AACvH,CAAC;AAED,MAAM,UAAU,2CAA2C,CACzD,YAA6B;IAE7B,MAAM,0BAA0B,GAA2B,EAAE,CAAC;IAE9D,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC;QAClD,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,sCAAsC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACtE,SAAS;QACX,CAAC;QACD,0BAA0B,CAAC,GAAG,CAAC,KAAK,CAAC,sCAAsC,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC;IAC/F,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,SAAS,CAAC;AACrG,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,YAA6B;IAE7B,MAAM,cAAc,GAA2B,EAAE,CAAC;IAElD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC;QAClD,yFAAyF;QACzF,0CAA0C;QAC1C,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,UAAU,CAAC,sCAAsC,CAAC,IAAI,GAAG,KAAK,uBAAuB,EAAE,CAAC;YACxG,SAAS;QACX,CAAC;QAED,cAAc,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC9B,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7E,CAAC","sourcesContent":["import { z } from 'zod';\nimport { CoreResourceOperation, ResourcePrimaryScope } from '@wildo-ai/saas-models';\nimport type {\n ChartDefinition,\n ChartSeriesDefinition,\n ChartAccessControl,\n ChartAppearance,\n ChartTypeConfig,\n ChartInputDefinition,\n ChartInputValues,\n AggregationQuery,\n FrontendChartRegistrationRef,\n} from '@wildo-ai/saas-models';\nimport { ChartDefinitionSchema, ChartInputValuesSchema } from '@wildo-ai/saas-models';\nimport type { IconLike } from '@wildo-ai/zod-decorators';\nimport { FrontendView_ScopeMode } from './views-frontend.schemas';\nimport { HOSTED_PANE_QUERY_PARAM } from '~wildo-frontend-lib/core/navigation/hosted-pane.constants';\nimport type { FrontendResource_ParentResourceRequirement } from '~wildo-frontend-lib/core/resources/resource-path.frontend.schemas';\nimport { FrontendResource_ParentResourceRequirementSchema } from '~wildo-frontend-lib/core/resources/resource-path.frontend.schemas';\nimport type { FrontendResourcesRegistry, ResourceUIBehavior } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport {\n InsertedViewInputBindingSchema,\n FrontendInsertedViewIdentitySchema,\n createFrontendInsertedViewIdentity,\n FrontendInsertedViewHostKind,\n FrontendInsertedViewKind,\n parseFrontendInsertedViewRef,\n type FrontendInsertedViewIdentity,\n type InsertedViewInputBinding,\n} from './inserted-view.frontend.schemas';\n\n/**\n * @wildo_source:part:start saas.frontend.chart-view.inserted-declaration facet:layer:frontend facet:family:chart-view\n *\n * Host-owned inserted chart declaration — the **only** chart authoring surface.\n *\n * Design decision (framework mindset): chart views are intentionally\n * **resource-scoped only**. The former app-level `ChartViewDefinition` /\n * `ChartViewDefinitionSchema` and the `AppConfiguration_Frontend.charts`\n * authoring seam were removed because an application-scoped chart has no\n * meaningful operation host to be rendered inside of, and keeping a separate\n * app-level authoring contract for the same runtime concept created drift\n * between authoring sites and specification extraction.\n *\n * Operation surfacing is declared exclusively via `operationLike`:\n *\n * - `operationLike` names the single resource operation host this chart is\n * rendered inside of (defaulting to `CoreResourceOperation.READ`).\n * - At render time, `ResourceLayout_InsertedViews` filters the resource's\n * `chartViews` directly by the current operation host against `operationLike`.\n * There is no operation-level view-ref list and no compiled derivation —\n * the chart declaration itself carries the link.\n * - There is no list analogue (`surfaceInOperations`) for charts — charts\n * are always rendered in exactly one operation host. The list-typed\n * authoring field is reserved for execution views, which legitimately\n * surface in multiple operation hosts.\n */\nexport const InsertedChartDeclarationSchema = z.object({\n /**\n * Charts are resource-owned inserted surfaces only.\n *\n * The scope is a Zod literal (rather than the open `FrontendView_ScopeMode`\n * enum) so that an app-scoped chart is impossible by construction — the\n * schema refuses to parse one at authoring time, and the TS type refuses\n * to let a caller construct one at compile time.\n */\n scope: z.literal(FrontendView_ScopeMode.RESOURCE),\n parentResourcesRequirements: FrontendResource_ParentResourceRequirementSchema.array().optional(),\n additionalResourceRequirements: FrontendResource_ParentResourceRequirementSchema.array().optional(),\n\n ref: z.string().min(1),\n chartDefinition: ChartDefinitionSchema,\n isAddressable: z.boolean().default(false),\n\n /**\n * Operation host this chart is rendered inside of.\n *\n * Also serves as the **single** declarative source of truth for which\n * resource operation surface the chart is surfaced in. `ResourceLayout_InsertedViews`\n * filters `chartViews` directly against this field at render time, and the\n * specification layer uses `collectOperationLikeViewRefs` with the same\n * default to mirror per-operation linked view refs. If this default is ever\n * changed, the matching runtime default at both call sites MUST be updated\n * in lockstep, otherwise host rendering and spec output disagree.\n */\n operationLike: z.enum(CoreResourceOperation).default(CoreResourceOperation.READ),\n primaryScope: z.enum(ResourcePrimaryScope).default(ResourcePrimaryScope.ORGANIZATIONS),\n inputBindings: z.array(InsertedViewInputBindingSchema).optional(),\n\n /**\n * Chart icon — lucide component reference (not `<JSX />`) or a StandardIconReference string.\n * Surfaces on every launcher that targets this chart (a `RESOURCE_VIEW` sidebar or command-menu\n * entry); without it that launcher renders the icon registry's alert-circle placeholder, which\n * reads as a warning (#2281). Optional because a chart is first inline CONTENT of its operation\n * host and is often never launched at all. Registered by the `IconRegistryBridge` under the\n * `view-chart-{ref}` custom-icon key, the key `resolveConcreteResourceViewTarget` asks for.\n * Declared in BOTH the schema and the interface — this object is Zod-parsed and strips unknown keys.\n */\n icon: z.custom<IconLike>().optional(),\n});\n\nexport interface InsertedChartDeclaration {\n ref: string;\n chartDefinition: ChartDefinition;\n scope: FrontendView_ScopeMode.RESOURCE;\n parentResourcesRequirements?: FrontendResource_ParentResourceRequirement[];\n additionalResourceRequirements?: FrontendResource_ParentResourceRequirement[];\n isAddressable: boolean;\n operationLike: CoreResourceOperation;\n primaryScope: ResourcePrimaryScope;\n inputBindings?: InsertedViewInputBinding[];\n /** Chart icon (lucide component reference or StandardIconReference string) for launcher surfaces. */\n icon?: IconLike;\n}\n/** @wildo_source:part:end saas.frontend.chart-view.inserted-declaration */\n\nexport function isStandaloneRoutableInsertedChartView(\n chartView: InsertedChartDeclaration | undefined,\n): boolean {\n if (!chartView || chartView.isAddressable !== true) {\n return false;\n }\n\n return true;\n}\n\nexport const ResolvedInsertedChartDescriptorSchema = z.object({\n identity: FrontendInsertedViewIdentitySchema,\n executionChartRef: z.string().min(1),\n chartDefinition: ChartDefinitionSchema,\n contextResourceIdentifiers: z.record(z.string(), z.string()),\n resolvedInputs: ChartInputValuesSchema.optional(),\n});\n\nexport interface ResolvedInsertedChartDescriptor {\n identity: FrontendInsertedViewIdentity;\n executionChartRef: string;\n chartDefinition: ChartDefinition;\n contextResourceIdentifiers: Record<string, string>;\n resolvedInputs?: ChartInputValues;\n}\n\nexport interface ResolvedInsertedChartView {\n identity: FrontendInsertedViewIdentity;\n chartView: InsertedChartDeclaration;\n}\n\nexport const CHART_ROUTE_CONTEXT_QUERY_PARAM_PREFIX = 'chart_ctx_';\n/** The chart route's path prefix (`/chart/:viewRef`) — named once so the URL identity rules can recognise it. */\nexport const CHART_ROUTE_PATH_PREFIX = '/chart/';\n\nexport function buildResourceInsertedChartIdentity(\n resourceType: string,\n chartView: Pick<InsertedChartDeclaration, 'ref'>,\n): FrontendInsertedViewIdentity {\n return createFrontendInsertedViewIdentity({\n hostKind: FrontendInsertedViewHostKind.RESOURCE,\n hostRef: resourceType,\n viewKind: FrontendInsertedViewKind.CHART_VIEW,\n localRef: chartView.ref,\n });\n}\n\nexport function buildResolvedInsertedChartDescriptor(params: {\n identity: FrontendInsertedViewIdentity;\n chartView: InsertedChartDeclaration;\n contextResourceIdentifiers: Record<string, string>;\n resolvedInputs?: ChartInputValues;\n}): ResolvedInsertedChartDescriptor {\n return {\n identity: params.identity,\n executionChartRef: params.chartView.chartDefinition.ref,\n chartDefinition: params.chartView.chartDefinition,\n contextResourceIdentifiers: params.contextResourceIdentifiers,\n resolvedInputs: params.resolvedInputs,\n };\n}\n\nexport function resolveInsertedChartView(params: {\n viewRef: string | undefined;\n registry?: FrontendResourcesRegistry;\n}): ResolvedInsertedChartView | undefined {\n const { viewRef, registry } = params;\n const insertedIdentity = parseFrontendInsertedViewRef(viewRef);\n if (\n !insertedIdentity\n || insertedIdentity.hostKind !== FrontendInsertedViewHostKind.RESOURCE\n || insertedIdentity.viewKind !== FrontendInsertedViewKind.CHART_VIEW\n ) {\n return undefined;\n }\n\n const chartView = registry?.resourceConfigurations[insertedIdentity.hostRef]\n ?.frontendConfiguration\n ?.chartViews\n ?.find((candidate) => candidate.ref === insertedIdentity.localRef);\n if (!chartView) {\n return undefined;\n }\n\n return {\n identity: insertedIdentity,\n chartView,\n };\n}\n\n/**\n * Collect every frontend chartView's registration identity across all resources,\n * for the chart-registration drift guard (compared against the backend\n * `ChartRegistry.getRegisteredChartRefs()`). Each entry carries the\n * `chartDefinition.ref` (the backend registry JOIN KEY — not the outer\n * `chartView.ref`), plus the owning `resourceType` and `chartView.ref` for a\n * locatable drift error.\n *\n * Reads the MERGED `resourceConfigurations` (shared base + ui-behavior overlay).\n * IMPORTANT for the companion integration: pass the FULL merged registry — a\n * subprocess that materializes only shared-base resources would miss\n * engine-resource-owned chartViews that live purely in the ui-behavior overlay,\n * silently narrowing the guard's frontend set.\n */\nexport function collectFrontendChartRegistrationRefs(\n registry: FrontendResourcesRegistry,\n): FrontendChartRegistrationRef[] {\n const refs: FrontendChartRegistrationRef[] = [];\n const configurations = registry.resourceConfigurations ?? {};\n for (const [resourceType, configuration] of Object.entries(configurations)) {\n pushChartRegistrationRefs(refs, resourceType, configuration?.frontendConfiguration?.chartViews);\n }\n return refs;\n}\n\n/**\n * Collect chart-registration refs directly from the ui-behavior OVERLAY\n * (`ResourceUIBehavior` — the map `buildFrontendCompanionResourceUIBehavior`\n * produces), rather than the materialized `resourceConfigurations`.\n *\n * The overlay covers EVERY resource in the frontend module chain — including\n * engine resources (e.g. `organizations`) that have no materialized shared base\n * in a companion subprocess and are therefore dropped from\n * `resourceConfigurations`. This is the complete, drift-guard-truthful source\n * for the companion introspection: an engine-resource-owned chartView that is\n * overlay-only would be silently missed by\n * {@link collectFrontendChartRegistrationRefs}. `chartViews` is the SAME field\n * on both shapes (`frontendConfiguration` IS a `ResourceUIBehaviorConfig`), just\n * un-nested here.\n */\nexport function collectFrontendChartRegistrationRefsFromUIBehavior(\n uiBehavior: ResourceUIBehavior,\n): FrontendChartRegistrationRef[] {\n const refs: FrontendChartRegistrationRef[] = [];\n for (const [resourceType, configuration] of Object.entries(uiBehavior ?? {})) {\n pushChartRegistrationRefs(refs, resourceType, configuration?.chartViews);\n }\n return refs;\n}\n\n/** Shared per-resource chartView → registration-ref projection (join key = `chartDefinition.ref`). */\nfunction pushChartRegistrationRefs(\n acc: FrontendChartRegistrationRef[],\n resourceType: string,\n chartViews: InsertedChartDeclaration[] | undefined,\n): void {\n if (!chartViews) {\n return;\n }\n for (const chartView of chartViews) {\n acc.push({\n chartDefinitionRef: chartView.chartDefinition.ref,\n resourceType,\n chartViewRef: chartView.ref,\n });\n }\n}\n\nexport function buildChartRouteUrlPath(\n viewRef: string,\n contextResourceIdentifiers?: Record<string, string>,\n urlParamValues?: Record<string, string>,\n): string {\n const params = new URLSearchParams();\n for (const [key, value] of Object.entries(contextResourceIdentifiers ?? {})) {\n if (!value) {\n continue;\n }\n params.set(`${CHART_ROUTE_CONTEXT_QUERY_PARAM_PREFIX}${key}`, value);\n }\n\n for (const [key, value] of Object.entries(urlParamValues ?? {})) {\n if (!value || key.startsWith(CHART_ROUTE_CONTEXT_QUERY_PARAM_PREFIX)) {\n continue;\n }\n params.set(key, value);\n }\n\n const search = params.toString();\n return search.length > 0 ? `${CHART_ROUTE_PATH_PREFIX}${viewRef}?${search}` : `${CHART_ROUTE_PATH_PREFIX}${viewRef}`;\n}\n\nexport function extractChartRouteContextResourceIdentifiers(\n searchParams: URLSearchParams,\n): Record<string, string> | undefined {\n const contextResourceIdentifiers: Record<string, string> = {};\n\n for (const [key, value] of searchParams.entries()) {\n if (!key.startsWith(CHART_ROUTE_CONTEXT_QUERY_PARAM_PREFIX) || !value) {\n continue;\n }\n contextResourceIdentifiers[key.slice(CHART_ROUTE_CONTEXT_QUERY_PARAM_PREFIX.length)] = value;\n }\n\n return Object.keys(contextResourceIdentifiers).length > 0 ? contextResourceIdentifiers : undefined;\n}\n\nexport function extractChartRouteUrlParamValues(\n searchParams: URLSearchParams,\n): Record<string, string> | undefined {\n const urlParamValues: Record<string, string> = {};\n\n for (const [key, value] of searchParams.entries()) {\n // A hosted pane beside the chart rides on the chart's URL (`?pane=`); it is a navigation\n // address, never a chart url-param value.\n if (!value || key.startsWith(CHART_ROUTE_CONTEXT_QUERY_PARAM_PREFIX) || key === HOSTED_PANE_QUERY_PARAM) {\n continue;\n }\n\n urlParamValues[key] = value;\n }\n\n return Object.keys(urlParamValues).length > 0 ? urlParamValues : undefined;\n}\n\nexport type {\n ChartSeriesDefinition,\n ChartAccessControl,\n ChartAppearance,\n ChartTypeConfig,\n ChartInputDefinition,\n AggregationQuery,\n};\n"]}
|
|
@@ -235,11 +235,11 @@ export declare const CompositeView_BaseFieldsSchema: z.ZodObject<{
|
|
|
235
235
|
zoneContentMaxWidth: z.ZodOptional<z.ZodEnum<{
|
|
236
236
|
none: "none";
|
|
237
237
|
content: "content";
|
|
238
|
-
full: "full";
|
|
239
238
|
sm: "sm";
|
|
240
239
|
md: "md";
|
|
241
240
|
lg: "lg";
|
|
242
241
|
xl: "xl";
|
|
242
|
+
full: "full";
|
|
243
243
|
measure: "measure";
|
|
244
244
|
"centered-readable": "centered-readable";
|
|
245
245
|
}>>;
|
|
@@ -302,11 +302,11 @@ export declare const CompositeViewDefinitionBaseSchema: z.ZodIntersection<z.ZodD
|
|
|
302
302
|
zoneContentMaxWidth: z.ZodOptional<z.ZodEnum<{
|
|
303
303
|
none: "none";
|
|
304
304
|
content: "content";
|
|
305
|
-
full: "full";
|
|
306
305
|
sm: "sm";
|
|
307
306
|
md: "md";
|
|
308
307
|
lg: "lg";
|
|
309
308
|
xl: "xl";
|
|
309
|
+
full: "full";
|
|
310
310
|
measure: "measure";
|
|
311
311
|
"centered-readable": "centered-readable";
|
|
312
312
|
}>>;
|
|
@@ -35,9 +35,6 @@
|
|
|
35
35
|
* },
|
|
36
36
|
* };
|
|
37
37
|
* ```
|
|
38
|
-
*
|
|
39
|
-
* @see component-taxonomy-deep-review.md §7.8
|
|
40
|
-
* @see app-shell-implementation-plan.md Step 8
|
|
41
38
|
*/
|
|
42
39
|
import type { QuickSwitcherScopeField } from './app-configuration-frontend.schemas';
|
|
43
40
|
import type { FullCustomViewDefinition } from './full-custom-view.schemas';
|
|
@@ -68,6 +65,8 @@ export declare function mergeAppScope(base: AppScopeConfig | undefined, override
|
|
|
68
65
|
*/
|
|
69
66
|
export declare function mergeAppModes(base: AppModeDefinition[] | undefined, override: AppModeDefinition[] | undefined): AppModeDefinition[];
|
|
70
67
|
/**
|
|
68
|
+
* @wildo_source:part:start saas.frontend.launcher.merge-rules facet:layer:frontend facet:family:app-shell facet:audience:app-developer
|
|
69
|
+
*
|
|
71
70
|
* Merges two `contentSections` arrays.
|
|
72
71
|
*
|
|
73
72
|
* **Merge key:** `ref`
|
|
@@ -80,9 +79,37 @@ export declare function mergeAppModes(base: AppModeDefinition[] | undefined, ove
|
|
|
80
79
|
* @returns Merged sections array
|
|
81
80
|
*/
|
|
82
81
|
export declare function mergeSidebarSections(base: SidebarSection[] | undefined, override: SidebarSection[] | undefined): SidebarSection[];
|
|
82
|
+
/** @wildo_source:part:end saas.frontend.launcher.merge-rules */
|
|
83
|
+
/**
|
|
84
|
+
* Combines the sidebar sections of PEER frontend modules — the fold that assembles an application's module registry.
|
|
85
|
+
*
|
|
86
|
+
* Modules are peers: none is a base the next one overrides. Every module scaffolded by `wildo init` and `add-module`
|
|
87
|
+
* declares the primary `main` navigation section and `add-resource` appends its launcher items to that section's
|
|
88
|
+
* children, so the same section is declared by every module, each with its own entries. Folding them with
|
|
89
|
+
* {@link mergeSidebarSections} (whole-section replace) kept only the LAST module's entries, in module order: measured
|
|
90
|
+
* 2026-10-05 in Wonder Procurement (a member's sidebar came out empty), Wonder CRM and Wonder Ledger.
|
|
91
|
+
*
|
|
92
|
+
* - A NAVIGATION section declared by several modules keeps the FIRST declaration's properties and gathers every
|
|
93
|
+
* module's children in module order, through {@link appendNavChildrenToSidebarSection} (an item already present by
|
|
94
|
+
* its launcher target is not added twice).
|
|
95
|
+
* - A section of any other kind holds ONE content (a resource browser, a widget, a component), which two
|
|
96
|
+
* declarations cannot share: the later one stands, as {@link mergeSidebarSections} decides.
|
|
97
|
+
*
|
|
98
|
+
* An application's own shell configuration still overrides the combined result through {@link mergeSidebarSections}:
|
|
99
|
+
* that is a base and an override, and replacing is what an override means.
|
|
100
|
+
*/
|
|
101
|
+
export declare function combineModuleSidebarSections(sections: SidebarSection[], moduleSections: SidebarSection[] | undefined): SidebarSection[];
|
|
83
102
|
export declare function mergeQuickSwitcherFields(base: QuickSwitcherScopeField[], extra: QuickSwitcherScopeField[]): QuickSwitcherScopeField[];
|
|
103
|
+
/** @wildo_source:part:start saas.frontend.launcher.merge-rules facet:layer:frontend facet:family:app-shell facet:audience:app-developer */
|
|
84
104
|
/**
|
|
85
105
|
* Stable key for deduping launcher rows (sidebar children, command list, etc.).
|
|
106
|
+
*
|
|
107
|
+
* Two entries with the same key open the same target, so they are one entry. Every `kind` has its own key, and a
|
|
108
|
+
* settings command keys on its `sectionRef`, so commands opening different settings sections never collapse.
|
|
109
|
+
*
|
|
110
|
+
* Exhaustive over `LauncherItemTargetKind` on purpose. It used to end in a `default` that answered `'unknown'`, and
|
|
111
|
+
* `SETTINGS_SECTION` fell into it: every settings command then shared one key, so an application's `members` command
|
|
112
|
+
* collapsed into the engine's billing command and disappeared. A kind added to the enum is now a compile error here.
|
|
86
113
|
*/
|
|
87
114
|
export declare function launcherItemRefKey(item: LauncherItemRef): string;
|
|
88
115
|
/**
|
|
@@ -94,6 +121,7 @@ export declare function appendNavChildrenToSidebarSection(sections: SidebarSecti
|
|
|
94
121
|
* Merges command menu command arrays by `launcherItemRefKey` — override wins on collision.
|
|
95
122
|
*/
|
|
96
123
|
export declare function mergeCommandMenuCommandLists(base: CommandMenuCommand[] | undefined, extra: CommandMenuCommand[] | undefined): CommandMenuCommand[];
|
|
124
|
+
/** @wildo_source:part:end saas.frontend.launcher.merge-rules */
|
|
97
125
|
/**
|
|
98
126
|
* Merges menubar launcher rows by launcher identity + menubar group.
|
|
99
127
|
* Override wins on collision.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-merge-utilities.d.ts","sourceRoot":"","sources":["../../../../../src/core/config/config-merge-utilities.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"config-merge-utilities.d.ts","sourceRoot":"","sources":["../../../../../src/core/config/config-merge-utilities.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAIH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,WAAW,EACX,cAAc,EACf,MAAM,mCAAmC,CAAC;AAyD3C,UAAU,cAAc;IACtB,MAAM,CAAC,EAAE,uBAAuB,EAAE,CAAC;CACpC;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,cAAc,GAAG,SAAS,EAChC,QAAQ,EAAE,cAAc,GAAG,SAAS,GACnC,cAAc,CAehB;AAMD;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,iBAAiB,EAAE,GAAG,SAAS,EACrC,QAAQ,EAAE,iBAAiB,EAAE,GAAG,SAAS,GACxC,iBAAiB,EAAE,CAMrB;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,cAAc,EAAE,GAAG,SAAS,EAClC,QAAQ,EAAE,cAAc,EAAE,GAAG,SAAS,GACrC,cAAc,EAAE,CAMlB;AACD,gEAAgE;AAEhE;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,cAAc,EAAE,EAC1B,cAAc,EAAE,cAAc,EAAE,GAAG,SAAS,GAC3C,cAAc,EAAE,CAiBlB;AAyDD,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,uBAAuB,EAAE,EAC/B,KAAK,EAAE,uBAAuB,EAAE,GAC/B,uBAAuB,EAAE,CAc3B;AAMD,2IAA2I;AAC3I;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAuBhE;AAED;;;GAGG;AACH,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,cAAc,EAAE,GAAG,SAAS,EACtC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,WAAW,EAAE,GACnB,cAAc,EAAE,CAclB;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,kBAAkB,EAAE,GAAG,SAAS,EACtC,KAAK,EAAE,kBAAkB,EAAE,GAAG,SAAS,GACtC,kBAAkB,EAAE,CAItB;AACD,gEAAgE;AAEhE;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,mBAAmB,EAAE,GAAG,SAAS,EACvC,KAAK,EAAE,mBAAmB,EAAE,GAAG,SAAS,GACvC,mBAAmB,EAAE,CAQvB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,wBAAwB,EAAE,GAAG,SAAS,EAC5C,KAAK,EAAE,wBAAwB,EAAE,GAAG,SAAS,GAC5C,wBAAwB,EAAE,CAI5B"}
|
|
@@ -35,9 +35,6 @@
|
|
|
35
35
|
* },
|
|
36
36
|
* };
|
|
37
37
|
* ```
|
|
38
|
-
*
|
|
39
|
-
* @see component-taxonomy-deep-review.md §7.8
|
|
40
|
-
* @see app-shell-implementation-plan.md Step 8
|
|
41
38
|
*/
|
|
42
39
|
import { envLoader } from '../../core/runtime/env-variable-loader.frontend.service.js';
|
|
43
40
|
import { LauncherItemTargetKind, SidebarSectionContentKind } from './launcher-items.frontend.schemas.js';
|
|
@@ -134,6 +131,8 @@ export function mergeAppModes(base, override) {
|
|
|
134
131
|
// mergeSidebarSections
|
|
135
132
|
// ════════════════════════════════════════════════════════════════
|
|
136
133
|
/**
|
|
134
|
+
* @wildo_source:part:start saas.frontend.launcher.merge-rules facet:layer:frontend facet:family:app-shell facet:audience:app-developer
|
|
135
|
+
*
|
|
137
136
|
* Merges two `contentSections` arrays.
|
|
138
137
|
*
|
|
139
138
|
* **Merge key:** `ref`
|
|
@@ -154,6 +153,44 @@ export function mergeSidebarSections(base, override) {
|
|
|
154
153
|
return warnOnDuplicateLauncherTargets([...(base ?? [])]);
|
|
155
154
|
return warnOnDuplicateLauncherTargets(mergeByKey(base, override, s => s.ref));
|
|
156
155
|
}
|
|
156
|
+
/** @wildo_source:part:end saas.frontend.launcher.merge-rules */
|
|
157
|
+
/**
|
|
158
|
+
* Combines the sidebar sections of PEER frontend modules — the fold that assembles an application's module registry.
|
|
159
|
+
*
|
|
160
|
+
* Modules are peers: none is a base the next one overrides. Every module scaffolded by `wildo init` and `add-module`
|
|
161
|
+
* declares the primary `main` navigation section and `add-resource` appends its launcher items to that section's
|
|
162
|
+
* children, so the same section is declared by every module, each with its own entries. Folding them with
|
|
163
|
+
* {@link mergeSidebarSections} (whole-section replace) kept only the LAST module's entries, in module order: measured
|
|
164
|
+
* 2026-10-05 in Wonder Procurement (a member's sidebar came out empty), Wonder CRM and Wonder Ledger.
|
|
165
|
+
*
|
|
166
|
+
* - A NAVIGATION section declared by several modules keeps the FIRST declaration's properties and gathers every
|
|
167
|
+
* module's children in module order, through {@link appendNavChildrenToSidebarSection} (an item already present by
|
|
168
|
+
* its launcher target is not added twice).
|
|
169
|
+
* - A section of any other kind holds ONE content (a resource browser, a widget, a component), which two
|
|
170
|
+
* declarations cannot share: the later one stands, as {@link mergeSidebarSections} decides.
|
|
171
|
+
*
|
|
172
|
+
* An application's own shell configuration still overrides the combined result through {@link mergeSidebarSections}:
|
|
173
|
+
* that is a base and an override, and replacing is what an override means.
|
|
174
|
+
*/
|
|
175
|
+
export function combineModuleSidebarSections(sections, moduleSections) {
|
|
176
|
+
if (!moduleSections?.length)
|
|
177
|
+
return sections;
|
|
178
|
+
let combined = [...sections];
|
|
179
|
+
for (const section of moduleSections) {
|
|
180
|
+
const index = combined.findIndex((existing) => existing.ref === section.ref);
|
|
181
|
+
if (index === -1) {
|
|
182
|
+
combined.push(section);
|
|
183
|
+
}
|
|
184
|
+
else if (combined[index].contentKind === SidebarSectionContentKind.NAVIGATION_LIST
|
|
185
|
+
&& section.contentKind === SidebarSectionContentKind.NAVIGATION_LIST) {
|
|
186
|
+
combined = appendNavChildrenToSidebarSection(combined, section.ref, section.children);
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
189
|
+
combined[index] = section;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
return warnOnDuplicateLauncherTargets(combined);
|
|
193
|
+
}
|
|
157
194
|
/**
|
|
158
195
|
* DEV-only diagnostic: report launcher items that resolve to the SAME navigation
|
|
159
196
|
* target from more than one place in the merged sidebar (across sections and
|
|
@@ -165,7 +202,7 @@ export function mergeSidebarSections(base, override) {
|
|
|
165
202
|
* a merge accident worth surfacing to the app author.
|
|
166
203
|
*/
|
|
167
204
|
function warnOnDuplicateLauncherTargets(sections) {
|
|
168
|
-
// `mergeSidebarSections` legitimately
|
|
205
|
+
// `mergeSidebarSections` and `combineModuleSidebarSections` legitimately run at MODULE SCOPE (apps compose their
|
|
169
206
|
// module registry at import time, before `ApplicationMainProvider` injects the
|
|
170
207
|
// env source), where `envLoader.isDevelopment()` THROWS "No environment source
|
|
171
208
|
// available". A diagnostic must never crash the surface it guards: treat "env
|
|
@@ -197,7 +234,7 @@ function warnOnDuplicateLauncherTargets(sections) {
|
|
|
197
234
|
}
|
|
198
235
|
for (const [key, locations] of keyLocations) {
|
|
199
236
|
if (locations.length > 1) {
|
|
200
|
-
console.warn(`[
|
|
237
|
+
console.warn(`[sidebar sections] Launcher target "${key}" appears ${locations.length} times in the merged sidebar `
|
|
201
238
|
+ `(sections: ${locations.join(', ')}). Only one occurrence will highlight as active. `
|
|
202
239
|
+ `If this duplication is unintentional, remove the extra item from one of the contributing configs.`);
|
|
203
240
|
}
|
|
@@ -219,8 +256,16 @@ export function mergeQuickSwitcherFields(base, extra) {
|
|
|
219
256
|
// ════════════════════════════════════════════════════════════════
|
|
220
257
|
// Launcher item keys & command / sidebar append helpers
|
|
221
258
|
// ════════════════════════════════════════════════════════════════
|
|
259
|
+
/** @wildo_source:part:start saas.frontend.launcher.merge-rules facet:layer:frontend facet:family:app-shell facet:audience:app-developer */
|
|
222
260
|
/**
|
|
223
261
|
* Stable key for deduping launcher rows (sidebar children, command list, etc.).
|
|
262
|
+
*
|
|
263
|
+
* Two entries with the same key open the same target, so they are one entry. Every `kind` has its own key, and a
|
|
264
|
+
* settings command keys on its `sectionRef`, so commands opening different settings sections never collapse.
|
|
265
|
+
*
|
|
266
|
+
* Exhaustive over `LauncherItemTargetKind` on purpose. It used to end in a `default` that answered `'unknown'`, and
|
|
267
|
+
* `SETTINGS_SECTION` fell into it: every settings command then shared one key, so an application's `members` command
|
|
268
|
+
* collapsed into the engine's billing command and disappeared. A kind added to the enum is now a compile error here.
|
|
224
269
|
*/
|
|
225
270
|
export function launcherItemRefKey(item) {
|
|
226
271
|
switch (item.kind) {
|
|
@@ -234,8 +279,16 @@ export function launcherItemRefKey(item) {
|
|
|
234
279
|
return `engine_page:${item.pageRef}`;
|
|
235
280
|
case LauncherItemTargetKind.CUSTOM_COMPONENT:
|
|
236
281
|
return `custom_component:${item.componentRef}`;
|
|
237
|
-
|
|
238
|
-
|
|
282
|
+
// Keyed by the section it opens. The hub's own entry names no section: that is one destination, so it is one
|
|
283
|
+
// key, `settings_section:default`.
|
|
284
|
+
case LauncherItemTargetKind.SETTINGS_SECTION:
|
|
285
|
+
return `settings_section:${item.sectionRef ?? 'default'}`;
|
|
286
|
+
default: {
|
|
287
|
+
// Total over the kinds (see the JSDoc above): a kind added to `LauncherItemRef` without a key here is a
|
|
288
|
+
// compile error.
|
|
289
|
+
const unkeyed = item;
|
|
290
|
+
throw new Error(`launcherItemRefKey: no key for launcher item kind ${unkeyed.kind}`);
|
|
291
|
+
}
|
|
239
292
|
}
|
|
240
293
|
}
|
|
241
294
|
/**
|
|
@@ -269,6 +322,7 @@ export function mergeCommandMenuCommandLists(base, extra) {
|
|
|
269
322
|
return [...base];
|
|
270
323
|
return mergeByKey(base, extra, launcherItemRefKey);
|
|
271
324
|
}
|
|
325
|
+
/** @wildo_source:part:end saas.frontend.launcher.merge-rules */
|
|
272
326
|
/**
|
|
273
327
|
* Merges menubar launcher rows by launcher identity + menubar group.
|
|
274
328
|
* Override wins on collision.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-merge-utilities.js","sourceRoot":"","sources":["../../../../../src/core/config/config-merge-utilities.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,uEAAuE,CAAC;AAYlG,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAEtG,mEAAmE;AACnE,8BAA8B;AAC9B,mEAAmE;AAEnE;;;;;;;;;GASG;AACH,SAAS,UAAU,CACjB,IAAS,EACT,QAAa,EACb,KAA0B;IAE1B,MAAM,WAAW,GAAG,IAAI,GAAG,EAAa,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,MAAM,GAAQ,EAAE,CAAC;IACvB,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IAEtC,KAAK,MAAM,QAAQ,IAAI,IAAI,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC5B,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QACnC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAErB,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,CAAC;QACrC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED,KAAK,MAAM,YAAY,IAAI,QAAQ,EAAE,CAAC;QACpC,MAAM,GAAG,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;QAChC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACrB,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAUD;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAgC,EAChC,QAAoC;IAEpC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAC;IAClC,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,GAAG,QAAQ,EAAE,CAAC;IAClC,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;IAElC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;IACrC,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC;IAE7C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3D,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO;QACL,MAAM,EAAE,UAAU,CAAC,UAAU,EAAE,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC;KACvE,CAAC;AACJ,CAAC;AAED,mEAAmE;AACnE,gBAAgB;AAChB,mEAAmE;AAEnE;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAqC,EACrC,QAAyC;IAEzC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAC;IAClC,IAAI,CAAC,IAAI;QAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;IACxC,IAAI,CAAC,QAAQ;QAAE,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;IAExC,OAAO,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAChD,CAAC;AAED,mEAAmE;AACnE,uBAAuB;AACvB,mEAAmE;AAEnE;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAClC,IAAkC,EAClC,QAAsC;IAEtC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAC;IAClC,IAAI,CAAC,IAAI;QAAE,OAAO,8BAA8B,CAAC,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACxE,IAAI,CAAC,QAAQ;QAAE,OAAO,8BAA8B,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAExE,OAAO,8BAA8B,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAChF,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,8BAA8B,CAAC,QAA0B;IAChE,+EAA+E;IAC/E,+EAA+E;IAC/E,+EAA+E;IAC/E,8EAA8E;IAC9E,4EAA4E;IAC5E,IAAI,aAAsB,CAAC;IAC3B,IAAI,CAAC;QACH,aAAa,GAAG,SAAS,CAAC,aAAa,EAAE,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,aAAa,GAAG,KAAK,CAAC;IACxB,CAAC;IACD,IAAI,CAAC,aAAa;QAAE,OAAO,QAAQ,CAAC;IAEpC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAoB,CAAC;IACjD,MAAM,OAAO,GAAG,CAAC,KAAgC,EAAE,UAAkB,EAAQ,EAAE;QAC7E,KAAK,MAAM,IAAI,IAAI,KAAK,IAAI,EAAE,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACrC,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YAC9C,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC3B,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,CAAC;IACF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,WAAW,KAAK,yBAAyB,CAAC,eAAe,EAAE,CAAC;YACtE,MAAM,GAAG,GAAG,OAA8F,CAAC;YAC3G,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,KAAK,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,YAAY,EAAE,CAAC;QAC5C,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CACV,2CAA2C,GAAG,aAAa,SAAS,CAAC,MAAM,+BAA+B;kBACxG,cAAc,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,mDAAmD;kBACrF,mGAAmG,CACtG,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAGD,MAAM,UAAU,wBAAwB,CACtC,IAA+B,EAC/B,KAAgC;IAEhC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,MAAM,GAA8B,EAAE,CAAC;IAE7C,KAAK,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;QACxC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;YACpC,SAAS;QACX,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAChC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,mEAAmE;AACnE,wDAAwD;AACxD,mEAAmE;AAEnE;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAqB;IACtD,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,sBAAsB,CAAC,kBAAkB;YAC5C,OAAO,sBAAsB,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,gBAAgB,IAAI,SAAS,EAAE,CAAC;QAC3G,KAAK,sBAAsB,CAAC,IAAI;YAC9B,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACxC,KAAK,sBAAsB,CAAC,aAAa;YACvC,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QAC7D,KAAK,sBAAsB,CAAC,WAAW;YACrC,OAAO,eAAe,IAAI,CAAC,OAAO,EAAE,CAAC;QACvC,KAAK,sBAAsB,CAAC,gBAAgB;YAC1C,OAAO,oBAAoB,IAAI,CAAC,YAAY,EAAE,CAAC;QACjD;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iCAAiC,CAC/C,QAAsC,EACtC,UAAkB,EAClB,KAAoB;IAEpB,IAAI,CAAC,QAAQ,EAAE,MAAM;QAAE,OAAO,QAAQ,IAAI,EAAE,CAAC;IAC7C,IAAI,CAAC,KAAK,CAAC,MAAM;QAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC;IAExC,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAI,OAAO,CAAC,GAAG,KAAK,UAAU,IAAI,OAAO,CAAC,WAAW,KAAK,yBAAyB,CAAC,eAAe,EAAE,CAAC;YACpG,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,MAAM,GAAG,GAAG,OAA8F,CAAC;QAC3G,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC/D,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,OAAO,CAAC;QACvC,OAAO,EAAE,GAAG,GAAG,EAAE,QAAQ,EAAE,CAAC,GAAG,GAAG,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;IAC3D,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,4BAA4B,CAC1C,IAAsC,EACtC,KAAuC;IAEvC,IAAI,CAAC,IAAI,EAAE,MAAM;QAAE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7C,IAAI,CAAC,KAAK,EAAE,MAAM;QAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;IACrC,OAAO,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC;AACrD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CACvC,IAAuC,EACvC,KAAwC;IAExC,IAAI,CAAC,IAAI,EAAE,MAAM;QAAE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7C,IAAI,CAAC,KAAK,EAAE,MAAM;QAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;IACrC,OAAO,UAAU,CACf,IAAI,EACJ,KAAK,EACL,IAAI,CAAC,EAAE,CAAC,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,IAAI,SAAS,EAAE,CACjE,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACvC,IAA4C,EAC5C,KAA6C;IAE7C,IAAI,CAAC,IAAI,EAAE,MAAM;QAAE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7C,IAAI,CAAC,KAAK,EAAE,MAAM;QAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;IACrC,OAAO,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAC7C,CAAC","sourcesContent":["/**\n * Configuration Merge Utilities\n *\n * Explicit merge functions for composing preset + app config. The engine\n * never merges implicitly — these are functions the app calls at config\n * time to produce a single flat configuration.\n *\n * All utilities follow the same semantic: **replace-by-ref on collision,\n * append new.** The `app` argument always wins over the `base` argument\n * on key collisions.\n *\n * @example\n * ```typescript\n * import {\n * mergeAppScope, mergeAppModes, mergeSidebarSections,\n * ApplicationLevelComponentType,\n * } from '@wildo-ai/saas-frontend-lib';\n *\n * // Compose a kit preset with app-specific overrides.\n * // Each merge utility produces a flat array/object — pass the result\n * // directly into the AppConfiguration_Frontend config object.\n * const frontendConfig: AppConfiguration_Frontend = {\n * // ...other config...\n * appScope: mergeAppScope(kitPreset.appScope, { fields: myAppScopeFields }),\n * appModes: mergeAppModes(kitPreset.appModes, myAppModes),\n * appComponentsConfiguration: {\n * ...kitPreset.appComponentsConfiguration,\n * [ApplicationLevelComponentType.SIDEBAR]: {\n * ...kitPreset.appComponentsConfiguration.sidebar,\n * contentSections: mergeSidebarSections(\n * kitPreset.sidebarSections,\n * myAppSections,\n * ),\n * },\n * },\n * };\n * ```\n *\n * @see component-taxonomy-deep-review.md §7.8\n * @see app-shell-implementation-plan.md Step 8\n */\n\nimport { envLoader } from '~wildo-frontend-lib/core/runtime/env-variable-loader.frontend.service';\n\nimport type { QuickSwitcherScopeField } from './app-configuration-frontend.schemas';\nimport type { FullCustomViewDefinition } from './full-custom-view.schemas';\nimport type {\n AppModeDefinition,\n CommandMenuCommand,\n LauncherItemRef,\n MenubarLauncherItem,\n SidebarItem,\n SidebarSection,\n} from './launcher-items.frontend.schemas';\nimport { LauncherItemTargetKind, SidebarSectionContentKind } from './launcher-items.frontend.schemas';\n\n// ════════════════════════════════════════════════════════════════\n// Generic merge-by-key helper\n// ════════════════════════════════════════════════════════════════\n\n/**\n * Merges two arrays by a key field. Items from `override` replace items\n * from `base` on key collision. Items unique to either array are preserved.\n * Order: base items first (with overrides applied in-place), then\n * override-only items appended at the end.\n *\n * **Invariant:** Keys must be unique within each input array. If duplicates\n * exist in `base`, only the first occurrence is kept. If duplicates exist\n * in `override`, only the last occurrence wins (Map semantics).\n */\nfunction mergeByKey<T>(\n base: T[],\n override: T[],\n keyFn: (item: T) => string,\n): T[] {\n const overrideMap = new Map<string, T>();\n for (const item of override) {\n overrideMap.set(keyFn(item), item);\n }\n\n const result: T[] = [];\n const emittedKeys = new Set<string>();\n\n for (const baseItem of base) {\n const key = keyFn(baseItem);\n if (emittedKeys.has(key)) continue;\n emittedKeys.add(key);\n\n if (overrideMap.has(key)) {\n result.push(overrideMap.get(key)!);\n } else {\n result.push(baseItem);\n }\n }\n\n for (const overrideItem of override) {\n const key = keyFn(overrideItem);\n if (!emittedKeys.has(key)) {\n emittedKeys.add(key);\n result.push(overrideItem);\n }\n }\n\n return result;\n}\n\n// ════════════════════════════════════════════════════════════════\n// mergeAppScope\n// ════════════════════════════════════════════════════════════════\n\ninterface AppScopeConfig {\n fields?: QuickSwitcherScopeField[];\n}\n\n/**\n * Merges two `appScope` configurations.\n *\n * **Merge key:** `fieldIdentifier`\n * **Semantics:** App fields win on collision. Base-only fields preserved.\n *\n * @param base - Base scope config (e.g., from a kit preset)\n * @param override - App-specific scope config (wins on collision)\n * @returns Merged scope config\n */\nexport function mergeAppScope(\n base: AppScopeConfig | undefined,\n override: AppScopeConfig | undefined,\n): AppScopeConfig {\n if (!base && !override) return {};\n if (!base) return { ...override };\n if (!override) return { ...base };\n\n const baseFields = base.fields ?? [];\n const overrideFields = override.fields ?? [];\n\n if (baseFields.length === 0 && overrideFields.length === 0) {\n return {};\n }\n\n return {\n fields: mergeByKey(baseFields, overrideFields, f => f.fieldIdentifier),\n };\n}\n\n// ════════════════════════════════════════════════════════════════\n// mergeAppModes\n// ════════════════════════════════════════════════════════════════\n\n/**\n * Merges two `appModes` arrays.\n *\n * **Merge key:** `ref`\n * **Semantics:** App modes win on collision. Base-only modes preserved.\n *\n * @param base - Base modes array (e.g., from a kit preset)\n * @param override - App-specific modes array (wins on collision)\n * @returns Merged modes array\n */\nexport function mergeAppModes(\n base: AppModeDefinition[] | undefined,\n override: AppModeDefinition[] | undefined,\n): AppModeDefinition[] {\n if (!base && !override) return [];\n if (!base) return [...(override ?? [])];\n if (!override) return [...(base ?? [])];\n\n return mergeByKey(base, override, m => m.ref);\n}\n\n// ════════════════════════════════════════════════════════════════\n// mergeSidebarSections\n// ════════════════════════════════════════════════════════════════\n\n/**\n * Merges two `contentSections` arrays.\n *\n * **Merge key:** `ref`\n * **Semantics:** App sections **replace** base sections on collision\n * (full section replace, no item-level deep merge). Base-only sections\n * preserved.\n *\n * @param base - Base sections array (e.g., from a kit preset)\n * @param override - App-specific sections array (wins on collision)\n * @returns Merged sections array\n */\nexport function mergeSidebarSections(\n base: SidebarSection[] | undefined,\n override: SidebarSection[] | undefined,\n): SidebarSection[] {\n if (!base && !override) return [];\n if (!base) return warnOnDuplicateLauncherTargets([...(override ?? [])]);\n if (!override) return warnOnDuplicateLauncherTargets([...(base ?? [])]);\n\n return warnOnDuplicateLauncherTargets(mergeByKey(base, override, s => s.ref));\n}\n\n/**\n * DEV-only diagnostic: report launcher items that resolve to the SAME navigation\n * target from more than one place in the merged sidebar (across sections and\n * nesting levels). The merge dedupes by section `ref` only — two sections each\n * carrying a `todoLists LIST` item are structurally valid and the app may WANT\n * that IA, so this warns and never auto-dedupes. It exists because duplicate\n * targets used to double-highlight in the sidebar (frontend-ux-quality-audit E2);\n * the active-state election now picks one, but the duplication itself is usually\n * a merge accident worth surfacing to the app author.\n */\nfunction warnOnDuplicateLauncherTargets(sections: SidebarSection[]): SidebarSection[] {\n // `mergeSidebarSections` legitimately runs at MODULE SCOPE (apps compose their\n // module registry at import time, before `ApplicationMainProvider` injects the\n // env source), where `envLoader.isDevelopment()` THROWS \"No environment source\n // available\". A diagnostic must never crash the surface it guards: treat \"env\n // not yet resolvable\" as \"skip the warning\" — the merge itself is env-free.\n let isDevelopment: boolean;\n try {\n isDevelopment = envLoader.isDevelopment();\n } catch {\n isDevelopment = false;\n }\n if (!isDevelopment) return sections;\n\n const keyLocations = new Map<string, string[]>();\n const collect = (items: SidebarItem[] | undefined, sectionRef: string): void => {\n for (const item of items ?? []) {\n const key = launcherItemRefKey(item);\n const locations = keyLocations.get(key) ?? [];\n locations.push(sectionRef);\n keyLocations.set(key, locations);\n collect(item.children, sectionRef);\n }\n };\n for (const section of sections) {\n if (section.contentKind === SidebarSectionContentKind.NAVIGATION_LIST) {\n const nav = section as Extract<SidebarSection, { contentKind: SidebarSectionContentKind.NAVIGATION_LIST }>;\n collect(nav.children, section.ref);\n }\n }\n\n for (const [key, locations] of keyLocations) {\n if (locations.length > 1) {\n console.warn(\n `[mergeSidebarSections] Launcher target \"${key}\" appears ${locations.length} times in the merged sidebar `\n + `(sections: ${locations.join(', ')}). Only one occurrence will highlight as active. `\n + `If this duplication is unintentional, remove the extra item from one of the contributing configs.`,\n );\n }\n }\n\n return sections;\n}\n\n\nexport function mergeQuickSwitcherFields(\n base: QuickSwitcherScopeField[],\n extra: QuickSwitcherScopeField[],\n): QuickSwitcherScopeField[] {\n const seen = new Set<string>();\n const merged: QuickSwitcherScopeField[] = [];\n\n for (const field of [...base, ...extra]) {\n if (seen.has(field.fieldIdentifier)) {\n continue;\n }\n\n seen.add(field.fieldIdentifier);\n merged.push(field);\n }\n\n return merged;\n}\n\n// ════════════════════════════════════════════════════════════════\n// Launcher item keys & command / sidebar append helpers\n// ════════════════════════════════════════════════════════════════\n\n/**\n * Stable key for deduping launcher rows (sidebar children, command list, etc.).\n */\nexport function launcherItemRefKey(item: LauncherItemRef): string {\n switch (item.kind) {\n case LauncherItemTargetKind.RESOURCE_OPERATION:\n return `resource_operation:${item.resourceType}:${item.operation}:${item.operationVariant ?? 'default'}`;\n case LauncherItemTargetKind.VIEW:\n return `${item.kind}:${item.viewRef}`;\n case LauncherItemTargetKind.RESOURCE_VIEW:\n return `${item.kind}:${item.resourceType}:${item.viewRef}`;\n case LauncherItemTargetKind.ENGINE_PAGE:\n return `engine_page:${item.pageRef}`;\n case LauncherItemTargetKind.CUSTOM_COMPONENT:\n return `custom_component:${item.componentRef}`;\n default:\n return 'unknown';\n }\n}\n\n/**\n * Appends sidebar navigation children to the `NAVIGATION_LIST` section with `sectionRef`.\n * Skips items whose `launcherItemRefKey` already exists under that section (idempotent).\n */\nexport function appendNavChildrenToSidebarSection(\n sections: SidebarSection[] | undefined,\n sectionRef: string,\n items: SidebarItem[],\n): SidebarSection[] {\n if (!sections?.length) return sections ?? [];\n if (!items.length) return [...sections];\n\n return sections.map(section => {\n if (section.ref !== sectionRef || section.contentKind !== SidebarSectionContentKind.NAVIGATION_LIST) {\n return section;\n }\n const nav = section as Extract<SidebarSection, { contentKind: SidebarSectionContentKind.NAVIGATION_LIST }>;\n const existing = new Set(nav.children.map(launcherItemRefKey));\n const toAdd = items.filter(i => !existing.has(launcherItemRefKey(i)));\n if (toAdd.length === 0) return section;\n return { ...nav, children: [...nav.children, ...toAdd] };\n });\n}\n\n/**\n * Merges command menu command arrays by `launcherItemRefKey` — override wins on collision.\n */\nexport function mergeCommandMenuCommandLists(\n base: CommandMenuCommand[] | undefined,\n extra: CommandMenuCommand[] | undefined,\n): CommandMenuCommand[] {\n if (!base?.length) return [...(extra ?? [])];\n if (!extra?.length) return [...base];\n return mergeByKey(base, extra, launcherItemRefKey);\n}\n\n/**\n * Merges menubar launcher rows by launcher identity + menubar group.\n * Override wins on collision.\n */\nexport function mergeMenubarLauncherItems(\n base: MenubarLauncherItem[] | undefined,\n extra: MenubarLauncherItem[] | undefined,\n): MenubarLauncherItem[] {\n if (!base?.length) return [...(extra ?? [])];\n if (!extra?.length) return [...base];\n return mergeByKey(\n base,\n extra,\n item => `${launcherItemRefKey(item)}:${item.group ?? 'default'}`,\n );\n}\n\n/**\n * Merges `fullCustomViews` by `ref` — override wins on collision.\n */\nexport function mergeFullCustomViewsByRef(\n base: FullCustomViewDefinition[] | undefined,\n extra: FullCustomViewDefinition[] | undefined,\n): FullCustomViewDefinition[] {\n if (!base?.length) return [...(extra ?? [])];\n if (!extra?.length) return [...base];\n return mergeByKey(base, extra, v => v.ref);\n}\n"]}
|
|
1
|
+
{"version":3,"file":"config-merge-utilities.js","sourceRoot":"","sources":["../../../../../src/core/config/config-merge-utilities.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Configuration Merge Utilities\n *\n * Explicit merge functions for composing preset + app config. The engine\n * never merges implicitly — these are functions the app calls at config\n * time to produce a single flat configuration.\n *\n * All utilities follow the same semantic: **replace-by-ref on collision,\n * append new.** The `app` argument always wins over the `base` argument\n * on key collisions.\n *\n * @example\n * ```typescript\n * import {\n * mergeAppScope, mergeAppModes, mergeSidebarSections,\n * ApplicationLevelComponentType,\n * } from '@wildo-ai/saas-frontend-lib';\n *\n * // Compose a kit preset with app-specific overrides.\n * // Each merge utility produces a flat array/object — pass the result\n * // directly into the AppConfiguration_Frontend config object.\n * const frontendConfig: AppConfiguration_Frontend = {\n * // ...other config...\n * appScope: mergeAppScope(kitPreset.appScope, { fields: myAppScopeFields }),\n * appModes: mergeAppModes(kitPreset.appModes, myAppModes),\n * appComponentsConfiguration: {\n * ...kitPreset.appComponentsConfiguration,\n * [ApplicationLevelComponentType.SIDEBAR]: {\n * ...kitPreset.appComponentsConfiguration.sidebar,\n * contentSections: mergeSidebarSections(\n * kitPreset.sidebarSections,\n * myAppSections,\n * ),\n * },\n * },\n * };\n * ```\n */\n\nimport { envLoader } from '~wildo-frontend-lib/core/runtime/env-variable-loader.frontend.service';\n\nimport type { QuickSwitcherScopeField } from './app-configuration-frontend.schemas';\nimport type { FullCustomViewDefinition } from './full-custom-view.schemas';\nimport type {\n AppModeDefinition,\n CommandMenuCommand,\n LauncherItemRef,\n MenubarLauncherItem,\n SidebarItem,\n SidebarSection,\n} from './launcher-items.frontend.schemas';\nimport { LauncherItemTargetKind, SidebarSectionContentKind } from './launcher-items.frontend.schemas';\n\n// ════════════════════════════════════════════════════════════════\n// Generic merge-by-key helper\n// ════════════════════════════════════════════════════════════════\n\n/**\n * Merges two arrays by a key field. Items from `override` replace items\n * from `base` on key collision. Items unique to either array are preserved.\n * Order: base items first (with overrides applied in-place), then\n * override-only items appended at the end.\n *\n * **Invariant:** Keys must be unique within each input array. If duplicates\n * exist in `base`, only the first occurrence is kept. If duplicates exist\n * in `override`, only the last occurrence wins (Map semantics).\n */\nfunction mergeByKey<T>(\n base: T[],\n override: T[],\n keyFn: (item: T) => string,\n): T[] {\n const overrideMap = new Map<string, T>();\n for (const item of override) {\n overrideMap.set(keyFn(item), item);\n }\n\n const result: T[] = [];\n const emittedKeys = new Set<string>();\n\n for (const baseItem of base) {\n const key = keyFn(baseItem);\n if (emittedKeys.has(key)) continue;\n emittedKeys.add(key);\n\n if (overrideMap.has(key)) {\n result.push(overrideMap.get(key)!);\n } else {\n result.push(baseItem);\n }\n }\n\n for (const overrideItem of override) {\n const key = keyFn(overrideItem);\n if (!emittedKeys.has(key)) {\n emittedKeys.add(key);\n result.push(overrideItem);\n }\n }\n\n return result;\n}\n\n// ════════════════════════════════════════════════════════════════\n// mergeAppScope\n// ════════════════════════════════════════════════════════════════\n\ninterface AppScopeConfig {\n fields?: QuickSwitcherScopeField[];\n}\n\n/**\n * Merges two `appScope` configurations.\n *\n * **Merge key:** `fieldIdentifier`\n * **Semantics:** App fields win on collision. Base-only fields preserved.\n *\n * @param base - Base scope config (e.g., from a kit preset)\n * @param override - App-specific scope config (wins on collision)\n * @returns Merged scope config\n */\nexport function mergeAppScope(\n base: AppScopeConfig | undefined,\n override: AppScopeConfig | undefined,\n): AppScopeConfig {\n if (!base && !override) return {};\n if (!base) return { ...override };\n if (!override) return { ...base };\n\n const baseFields = base.fields ?? [];\n const overrideFields = override.fields ?? [];\n\n if (baseFields.length === 0 && overrideFields.length === 0) {\n return {};\n }\n\n return {\n fields: mergeByKey(baseFields, overrideFields, f => f.fieldIdentifier),\n };\n}\n\n// ════════════════════════════════════════════════════════════════\n// mergeAppModes\n// ════════════════════════════════════════════════════════════════\n\n/**\n * Merges two `appModes` arrays.\n *\n * **Merge key:** `ref`\n * **Semantics:** App modes win on collision. Base-only modes preserved.\n *\n * @param base - Base modes array (e.g., from a kit preset)\n * @param override - App-specific modes array (wins on collision)\n * @returns Merged modes array\n */\nexport function mergeAppModes(\n base: AppModeDefinition[] | undefined,\n override: AppModeDefinition[] | undefined,\n): AppModeDefinition[] {\n if (!base && !override) return [];\n if (!base) return [...(override ?? [])];\n if (!override) return [...(base ?? [])];\n\n return mergeByKey(base, override, m => m.ref);\n}\n\n// ════════════════════════════════════════════════════════════════\n// mergeSidebarSections\n// ════════════════════════════════════════════════════════════════\n\n/**\n * @wildo_source:part:start saas.frontend.launcher.merge-rules facet:layer:frontend facet:family:app-shell facet:audience:app-developer\n *\n * Merges two `contentSections` arrays.\n *\n * **Merge key:** `ref`\n * **Semantics:** App sections **replace** base sections on collision\n * (full section replace, no item-level deep merge). Base-only sections\n * preserved.\n *\n * @param base - Base sections array (e.g., from a kit preset)\n * @param override - App-specific sections array (wins on collision)\n * @returns Merged sections array\n */\nexport function mergeSidebarSections(\n base: SidebarSection[] | undefined,\n override: SidebarSection[] | undefined,\n): SidebarSection[] {\n if (!base && !override) return [];\n if (!base) return warnOnDuplicateLauncherTargets([...(override ?? [])]);\n if (!override) return warnOnDuplicateLauncherTargets([...(base ?? [])]);\n\n return warnOnDuplicateLauncherTargets(mergeByKey(base, override, s => s.ref));\n}\n/** @wildo_source:part:end saas.frontend.launcher.merge-rules */\n\n/**\n * Combines the sidebar sections of PEER frontend modules — the fold that assembles an application's module registry.\n *\n * Modules are peers: none is a base the next one overrides. Every module scaffolded by `wildo init` and `add-module`\n * declares the primary `main` navigation section and `add-resource` appends its launcher items to that section's\n * children, so the same section is declared by every module, each with its own entries. Folding them with\n * {@link mergeSidebarSections} (whole-section replace) kept only the LAST module's entries, in module order: measured\n * 2026-10-05 in Wonder Procurement (a member's sidebar came out empty), Wonder CRM and Wonder Ledger.\n *\n * - A NAVIGATION section declared by several modules keeps the FIRST declaration's properties and gathers every\n * module's children in module order, through {@link appendNavChildrenToSidebarSection} (an item already present by\n * its launcher target is not added twice).\n * - A section of any other kind holds ONE content (a resource browser, a widget, a component), which two\n * declarations cannot share: the later one stands, as {@link mergeSidebarSections} decides.\n *\n * An application's own shell configuration still overrides the combined result through {@link mergeSidebarSections}:\n * that is a base and an override, and replacing is what an override means.\n */\nexport function combineModuleSidebarSections(\n sections: SidebarSection[],\n moduleSections: SidebarSection[] | undefined,\n): SidebarSection[] {\n if (!moduleSections?.length) return sections;\n let combined = [...sections];\n for (const section of moduleSections) {\n const index = combined.findIndex((existing) => existing.ref === section.ref);\n if (index === -1) {\n combined.push(section);\n } else if (\n combined[index]!.contentKind === SidebarSectionContentKind.NAVIGATION_LIST\n && section.contentKind === SidebarSectionContentKind.NAVIGATION_LIST\n ) {\n combined = appendNavChildrenToSidebarSection(combined, section.ref, section.children);\n } else {\n combined[index] = section;\n }\n }\n return warnOnDuplicateLauncherTargets(combined);\n}\n\n/**\n * DEV-only diagnostic: report launcher items that resolve to the SAME navigation\n * target from more than one place in the merged sidebar (across sections and\n * nesting levels). The merge dedupes by section `ref` only — two sections each\n * carrying a `todoLists LIST` item are structurally valid and the app may WANT\n * that IA, so this warns and never auto-dedupes. It exists because duplicate\n * targets used to double-highlight in the sidebar (frontend-ux-quality-audit E2);\n * the active-state election now picks one, but the duplication itself is usually\n * a merge accident worth surfacing to the app author.\n */\nfunction warnOnDuplicateLauncherTargets(sections: SidebarSection[]): SidebarSection[] {\n // `mergeSidebarSections` and `combineModuleSidebarSections` legitimately run at MODULE SCOPE (apps compose their\n // module registry at import time, before `ApplicationMainProvider` injects the\n // env source), where `envLoader.isDevelopment()` THROWS \"No environment source\n // available\". A diagnostic must never crash the surface it guards: treat \"env\n // not yet resolvable\" as \"skip the warning\" — the merge itself is env-free.\n let isDevelopment: boolean;\n try {\n isDevelopment = envLoader.isDevelopment();\n } catch {\n isDevelopment = false;\n }\n if (!isDevelopment) return sections;\n\n const keyLocations = new Map<string, string[]>();\n const collect = (items: SidebarItem[] | undefined, sectionRef: string): void => {\n for (const item of items ?? []) {\n const key = launcherItemRefKey(item);\n const locations = keyLocations.get(key) ?? [];\n locations.push(sectionRef);\n keyLocations.set(key, locations);\n collect(item.children, sectionRef);\n }\n };\n for (const section of sections) {\n if (section.contentKind === SidebarSectionContentKind.NAVIGATION_LIST) {\n const nav = section as Extract<SidebarSection, { contentKind: SidebarSectionContentKind.NAVIGATION_LIST }>;\n collect(nav.children, section.ref);\n }\n }\n\n for (const [key, locations] of keyLocations) {\n if (locations.length > 1) {\n console.warn(\n `[sidebar sections] Launcher target \"${key}\" appears ${locations.length} times in the merged sidebar `\n + `(sections: ${locations.join(', ')}). Only one occurrence will highlight as active. `\n + `If this duplication is unintentional, remove the extra item from one of the contributing configs.`,\n );\n }\n }\n\n return sections;\n}\n\n\nexport function mergeQuickSwitcherFields(\n base: QuickSwitcherScopeField[],\n extra: QuickSwitcherScopeField[],\n): QuickSwitcherScopeField[] {\n const seen = new Set<string>();\n const merged: QuickSwitcherScopeField[] = [];\n\n for (const field of [...base, ...extra]) {\n if (seen.has(field.fieldIdentifier)) {\n continue;\n }\n\n seen.add(field.fieldIdentifier);\n merged.push(field);\n }\n\n return merged;\n}\n\n// ════════════════════════════════════════════════════════════════\n// Launcher item keys & command / sidebar append helpers\n// ════════════════════════════════════════════════════════════════\n\n/** @wildo_source:part:start saas.frontend.launcher.merge-rules facet:layer:frontend facet:family:app-shell facet:audience:app-developer */\n/**\n * Stable key for deduping launcher rows (sidebar children, command list, etc.).\n *\n * Two entries with the same key open the same target, so they are one entry. Every `kind` has its own key, and a\n * settings command keys on its `sectionRef`, so commands opening different settings sections never collapse.\n *\n * Exhaustive over `LauncherItemTargetKind` on purpose. It used to end in a `default` that answered `'unknown'`, and\n * `SETTINGS_SECTION` fell into it: every settings command then shared one key, so an application's `members` command\n * collapsed into the engine's billing command and disappeared. A kind added to the enum is now a compile error here.\n */\nexport function launcherItemRefKey(item: LauncherItemRef): string {\n switch (item.kind) {\n case LauncherItemTargetKind.RESOURCE_OPERATION:\n return `resource_operation:${item.resourceType}:${item.operation}:${item.operationVariant ?? 'default'}`;\n case LauncherItemTargetKind.VIEW:\n return `${item.kind}:${item.viewRef}`;\n case LauncherItemTargetKind.RESOURCE_VIEW:\n return `${item.kind}:${item.resourceType}:${item.viewRef}`;\n case LauncherItemTargetKind.ENGINE_PAGE:\n return `engine_page:${item.pageRef}`;\n case LauncherItemTargetKind.CUSTOM_COMPONENT:\n return `custom_component:${item.componentRef}`;\n // Keyed by the section it opens. The hub's own entry names no section: that is one destination, so it is one\n // key, `settings_section:default`.\n case LauncherItemTargetKind.SETTINGS_SECTION:\n return `settings_section:${item.sectionRef ?? 'default'}`;\n default: {\n // Total over the kinds (see the JSDoc above): a kind added to `LauncherItemRef` without a key here is a\n // compile error.\n const unkeyed: never = item;\n throw new Error(`launcherItemRefKey: no key for launcher item kind ${(unkeyed as { kind: string }).kind}`);\n }\n }\n}\n\n/**\n * Appends sidebar navigation children to the `NAVIGATION_LIST` section with `sectionRef`.\n * Skips items whose `launcherItemRefKey` already exists under that section (idempotent).\n */\nexport function appendNavChildrenToSidebarSection(\n sections: SidebarSection[] | undefined,\n sectionRef: string,\n items: SidebarItem[],\n): SidebarSection[] {\n if (!sections?.length) return sections ?? [];\n if (!items.length) return [...sections];\n\n return sections.map(section => {\n if (section.ref !== sectionRef || section.contentKind !== SidebarSectionContentKind.NAVIGATION_LIST) {\n return section;\n }\n const nav = section as Extract<SidebarSection, { contentKind: SidebarSectionContentKind.NAVIGATION_LIST }>;\n const existing = new Set(nav.children.map(launcherItemRefKey));\n const toAdd = items.filter(i => !existing.has(launcherItemRefKey(i)));\n if (toAdd.length === 0) return section;\n return { ...nav, children: [...nav.children, ...toAdd] };\n });\n}\n\n/**\n * Merges command menu command arrays by `launcherItemRefKey` — override wins on collision.\n */\nexport function mergeCommandMenuCommandLists(\n base: CommandMenuCommand[] | undefined,\n extra: CommandMenuCommand[] | undefined,\n): CommandMenuCommand[] {\n if (!base?.length) return [...(extra ?? [])];\n if (!extra?.length) return [...base];\n return mergeByKey(base, extra, launcherItemRefKey);\n}\n/** @wildo_source:part:end saas.frontend.launcher.merge-rules */\n\n/**\n * Merges menubar launcher rows by launcher identity + menubar group.\n * Override wins on collision.\n */\nexport function mergeMenubarLauncherItems(\n base: MenubarLauncherItem[] | undefined,\n extra: MenubarLauncherItem[] | undefined,\n): MenubarLauncherItem[] {\n if (!base?.length) return [...(extra ?? [])];\n if (!extra?.length) return [...base];\n return mergeByKey(\n base,\n extra,\n item => `${launcherItemRefKey(item)}:${item.group ?? 'default'}`,\n );\n}\n\n/**\n * Merges `fullCustomViews` by `ref` — override wins on collision.\n */\nexport function mergeFullCustomViewsByRef(\n base: FullCustomViewDefinition[] | undefined,\n extra: FullCustomViewDefinition[] | undefined,\n): FullCustomViewDefinition[] {\n if (!base?.length) return [...(extra ?? [])];\n if (!extra?.length) return [...base];\n return mergeByKey(base, extra, v => v.ref);\n}\n"]}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The runtime capability that decides who is offered the engine's Decisions row (#2527, #2577).
|
|
3
|
+
*
|
|
4
|
+
* ## Why the row does not use `requiredRoles`
|
|
5
|
+
*
|
|
6
|
+
* `runtimeAvailability.requiredRoles` is evaluated against the viewer's application roles and their ORGANIZATION-WIDE
|
|
7
|
+
* roles in the CURRENT organization (`viewerHoldsOneOfRoles`). That is right for every other role-gated launcher entry,
|
|
8
|
+
* because each of them opens something acting in the current organization: a settings section, a view, an operation.
|
|
9
|
+
*
|
|
10
|
+
* The decision inbox is not about the current organization. The server lists a person's decisions from every
|
|
11
|
+
* organization, whatever the current one (`listPendingDecisions`, and each `HumanDecisionHost.listCards`): the
|
|
12
|
+
* decisions assigned to them, the OWNER decisions they raised, and the ROLE decisions of each organization they hold a
|
|
13
|
+
* role entry in, an organization reached through a live relationship included (#2792: read through the same role build
|
|
14
|
+
* as the access profile, `organizationIdsWithRoleEntries`). It then admits each one through the decision organization's
|
|
15
|
+
* role facts, re-read now (`resolveHumanDecisionRoleFacts`): the eligible role held organization-wide, OR in an
|
|
16
|
+
* organization unit that contains the decision's unit, OR through an organization relationship (an assigned decision
|
|
17
|
+
* is admitted that way: the reassignment candidates are the organization's active members, representatives included).
|
|
18
|
+
* Gated on `requiredRoles`, the row was hidden from two people the server answers decisions for:
|
|
19
|
+
* - a unit-only reviewer (a finance approver of one unit), who holds no organization-wide role;
|
|
20
|
+
* - a firm's expert whose current organization is the firm, while the decision waits in a client organization where
|
|
21
|
+
* the expert stands through the service relationship.
|
|
22
|
+
*
|
|
23
|
+
* Both are LISTED what they may answer, not only offered the row (#2792): the listing used to select ROLE decisions from
|
|
24
|
+
* the organizations of the request's own roles, which a manual controller builds without relationship entries, so the
|
|
25
|
+
* expert was answerable and never listed. It now selects from the same role build the answer path re-reads.
|
|
26
|
+
*
|
|
27
|
+
* ## The decision
|
|
28
|
+
*
|
|
29
|
+
* The row is offered when the viewer holds one of the answering roles in an entry the server reads an answerer from:
|
|
30
|
+
* the application entry (an OWNER route's `APP_USER`), or ANY organization entry of the backend's access profile
|
|
31
|
+
* (`user-self | access_profile`): organization-wide, unit-scoped or relationship, in any organization. The access
|
|
32
|
+
* profile is built by the same role build a decision's role facts are re-read through, so the row follows the server's
|
|
33
|
+
* own facts rather than a second account of them.
|
|
34
|
+
*
|
|
35
|
+
* It is never wider than that: every decision the server lists needs one of those entries to hold the decision's
|
|
36
|
+
* eligible role (or the person to be the OWNER decision's requester, who holds `APP_USER`). It is not narrower than the
|
|
37
|
+
* population either, which a row cannot be without listing: whether a decision is actually waiting in the unit the
|
|
38
|
+
* reviewer covers is the page's question, and the page asks the server.
|
|
39
|
+
*
|
|
40
|
+
* ## Rejected alternatives
|
|
41
|
+
*
|
|
42
|
+
* - **Widen `requiredRoles` for every row** (the issue's option a, applied to the launcher). It would change what every
|
|
43
|
+
* other role-gated entry means: an `office-manager` section would be offered in an organization where the viewer is
|
|
44
|
+
* only a member, because they manage another one, and it would open screens the backend then refuses. The decision
|
|
45
|
+
* inbox gets its own evaluation instead, as a capability, and `requiredRoles` keeps its meaning.
|
|
46
|
+
* - **Offer the row when a decision is pending** (option b's second half). That needs a server read on every shell load
|
|
47
|
+
* to decide a navigation entry, and the row would come and go as decisions are answered. A reviewer who has answered
|
|
48
|
+
* everything still has an inbox; its empty state says so.
|
|
49
|
+
*
|
|
50
|
+
* ## Without the access profile
|
|
51
|
+
*
|
|
52
|
+
* When the profile could not be loaded, the shell's documented degradation applies: the roles of the current
|
|
53
|
+
* organization decide, as they did before #2577. A standing elsewhere is then unknown, and the row stays hidden for it
|
|
54
|
+
* rather than being offered on a guess.
|
|
55
|
+
*
|
|
56
|
+
* Presentation, never authorization: the server decides every card on the decision's own route.
|
|
57
|
+
*/
|
|
58
|
+
import { type ApplicationDecisionInbox } from '@wildo-ai/saas-models';
|
|
59
|
+
import { type LauncherEffectiveRoles } from '../../core/navigation/launcher-resolution';
|
|
60
|
+
/** The runtime capability key the Decisions row requires (`runtimeAvailability.requiredCapabilities`). */
|
|
61
|
+
export declare enum DecisionInboxCapability {
|
|
62
|
+
/**
|
|
63
|
+
* The viewer holds a role a decision can wait on, in an entry the server reads an answerer from: the application
|
|
64
|
+
* entry, or any organization entry (organization-wide, unit-scoped or relationship) in any organization. Gates the
|
|
65
|
+
* engine's Decisions row and its command. An application that places the page itself may require it too.
|
|
66
|
+
*/
|
|
67
|
+
ANSWERER = "decisionInboxAnswerer"
|
|
68
|
+
}
|
|
69
|
+
/** What the derivation reads: the application's answering roles, and the viewer's roles with the access profile. */
|
|
70
|
+
export interface DecisionInboxCapabilityInputs {
|
|
71
|
+
/** `appConfig.decisionInbox`, the roles a decision can wait on. Absent when the application declares none. */
|
|
72
|
+
readonly offer: ApplicationDecisionInbox | undefined;
|
|
73
|
+
/** The viewer's roles (`useViewerEffectiveRoles`), carrying the role tables and the backend's access profile. */
|
|
74
|
+
readonly effectiveRoles: LauncherEffectiveRoles;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Whether the viewer may have decisions waiting in the inbox: one of `offer.answeringRoles`, through the role
|
|
78
|
+
* hierarchy, held in the application entry or in any organization entry of the access profile. See the module comment.
|
|
79
|
+
*/
|
|
80
|
+
export declare function viewerMayHaveDecisionsWaiting(input: DecisionInboxCapabilityInputs): boolean;
|
|
81
|
+
/** The capability. Pure, so the shell hook stays a call and the decision is pinned without providers. */
|
|
82
|
+
export declare function deriveDecisionInboxCapabilities(input: DecisionInboxCapabilityInputs): Record<DecisionInboxCapability, boolean>;
|
|
83
|
+
//# sourceMappingURL=decision-inbox-capability.frontend.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decision-inbox-capability.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/core/config/decision-inbox-capability.frontend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,OAAO,EAAwB,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EAAyB,KAAK,sBAAsB,EAAE,MAAM,yDAAyD,CAAC;AAE7H,0GAA0G;AAC1G,oBAAY,uBAAuB;IACjC;;;;OAIG;IACH,QAAQ,0BAA0B;CACnC;AAED,oHAAoH;AACpH,MAAM,WAAW,6BAA6B;IAC5C,8GAA8G;IAC9G,QAAQ,CAAC,KAAK,EAAE,wBAAwB,GAAG,SAAS,CAAC;IACrD,iHAAiH;IACjH,QAAQ,CAAC,cAAc,EAAE,sBAAsB,CAAC;CACjD;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,6BAA6B,GAAG,OAAO,CAiB3F;AAED,yGAAyG;AACzG,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,6BAA6B,GAAG,MAAM,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAE9H"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The runtime capability that decides who is offered the engine's Decisions row (#2527, #2577).
|
|
3
|
+
*
|
|
4
|
+
* ## Why the row does not use `requiredRoles`
|
|
5
|
+
*
|
|
6
|
+
* `runtimeAvailability.requiredRoles` is evaluated against the viewer's application roles and their ORGANIZATION-WIDE
|
|
7
|
+
* roles in the CURRENT organization (`viewerHoldsOneOfRoles`). That is right for every other role-gated launcher entry,
|
|
8
|
+
* because each of them opens something acting in the current organization: a settings section, a view, an operation.
|
|
9
|
+
*
|
|
10
|
+
* The decision inbox is not about the current organization. The server lists a person's decisions from every
|
|
11
|
+
* organization, whatever the current one (`listPendingDecisions`, and each `HumanDecisionHost.listCards`): the
|
|
12
|
+
* decisions assigned to them, the OWNER decisions they raised, and the ROLE decisions of each organization they hold a
|
|
13
|
+
* role entry in, an organization reached through a live relationship included (#2792: read through the same role build
|
|
14
|
+
* as the access profile, `organizationIdsWithRoleEntries`). It then admits each one through the decision organization's
|
|
15
|
+
* role facts, re-read now (`resolveHumanDecisionRoleFacts`): the eligible role held organization-wide, OR in an
|
|
16
|
+
* organization unit that contains the decision's unit, OR through an organization relationship (an assigned decision
|
|
17
|
+
* is admitted that way: the reassignment candidates are the organization's active members, representatives included).
|
|
18
|
+
* Gated on `requiredRoles`, the row was hidden from two people the server answers decisions for:
|
|
19
|
+
* - a unit-only reviewer (a finance approver of one unit), who holds no organization-wide role;
|
|
20
|
+
* - a firm's expert whose current organization is the firm, while the decision waits in a client organization where
|
|
21
|
+
* the expert stands through the service relationship.
|
|
22
|
+
*
|
|
23
|
+
* Both are LISTED what they may answer, not only offered the row (#2792): the listing used to select ROLE decisions from
|
|
24
|
+
* the organizations of the request's own roles, which a manual controller builds without relationship entries, so the
|
|
25
|
+
* expert was answerable and never listed. It now selects from the same role build the answer path re-reads.
|
|
26
|
+
*
|
|
27
|
+
* ## The decision
|
|
28
|
+
*
|
|
29
|
+
* The row is offered when the viewer holds one of the answering roles in an entry the server reads an answerer from:
|
|
30
|
+
* the application entry (an OWNER route's `APP_USER`), or ANY organization entry of the backend's access profile
|
|
31
|
+
* (`user-self | access_profile`): organization-wide, unit-scoped or relationship, in any organization. The access
|
|
32
|
+
* profile is built by the same role build a decision's role facts are re-read through, so the row follows the server's
|
|
33
|
+
* own facts rather than a second account of them.
|
|
34
|
+
*
|
|
35
|
+
* It is never wider than that: every decision the server lists needs one of those entries to hold the decision's
|
|
36
|
+
* eligible role (or the person to be the OWNER decision's requester, who holds `APP_USER`). It is not narrower than the
|
|
37
|
+
* population either, which a row cannot be without listing: whether a decision is actually waiting in the unit the
|
|
38
|
+
* reviewer covers is the page's question, and the page asks the server.
|
|
39
|
+
*
|
|
40
|
+
* ## Rejected alternatives
|
|
41
|
+
*
|
|
42
|
+
* - **Widen `requiredRoles` for every row** (the issue's option a, applied to the launcher). It would change what every
|
|
43
|
+
* other role-gated entry means: an `office-manager` section would be offered in an organization where the viewer is
|
|
44
|
+
* only a member, because they manage another one, and it would open screens the backend then refuses. The decision
|
|
45
|
+
* inbox gets its own evaluation instead, as a capability, and `requiredRoles` keeps its meaning.
|
|
46
|
+
* - **Offer the row when a decision is pending** (option b's second half). That needs a server read on every shell load
|
|
47
|
+
* to decide a navigation entry, and the row would come and go as decisions are answered. A reviewer who has answered
|
|
48
|
+
* everything still has an inbox; its empty state says so.
|
|
49
|
+
*
|
|
50
|
+
* ## Without the access profile
|
|
51
|
+
*
|
|
52
|
+
* When the profile could not be loaded, the shell's documented degradation applies: the roles of the current
|
|
53
|
+
* organization decide, as they did before #2577. A standing elsewhere is then unknown, and the row stays hidden for it
|
|
54
|
+
* rather than being offered on a guess.
|
|
55
|
+
*
|
|
56
|
+
* Presentation, never authorization: the server decides every card on the decision's own route.
|
|
57
|
+
*/
|
|
58
|
+
import { ResourcePrimaryScope } from '@wildo-ai/saas-models';
|
|
59
|
+
import { viewerHoldsOneOfRoles } from '../../core/navigation/launcher-resolution.js';
|
|
60
|
+
/** The runtime capability key the Decisions row requires (`runtimeAvailability.requiredCapabilities`). */
|
|
61
|
+
export var DecisionInboxCapability;
|
|
62
|
+
(function (DecisionInboxCapability) {
|
|
63
|
+
/**
|
|
64
|
+
* The viewer holds a role a decision can wait on, in an entry the server reads an answerer from: the application
|
|
65
|
+
* entry, or any organization entry (organization-wide, unit-scoped or relationship) in any organization. Gates the
|
|
66
|
+
* engine's Decisions row and its command. An application that places the page itself may require it too.
|
|
67
|
+
*/
|
|
68
|
+
DecisionInboxCapability["ANSWERER"] = "decisionInboxAnswerer";
|
|
69
|
+
})(DecisionInboxCapability || (DecisionInboxCapability = {}));
|
|
70
|
+
/**
|
|
71
|
+
* Whether the viewer may have decisions waiting in the inbox: one of `offer.answeringRoles`, through the role
|
|
72
|
+
* hierarchy, held in the application entry or in any organization entry of the access profile. See the module comment.
|
|
73
|
+
*/
|
|
74
|
+
export function viewerMayHaveDecisionsWaiting(input) {
|
|
75
|
+
const answeringRoles = input.offer?.answeringRoles ?? [];
|
|
76
|
+
// No answering role: the application declares nothing a decision can wait on, and no row exists.
|
|
77
|
+
if (answeringRoles.length === 0)
|
|
78
|
+
return false;
|
|
79
|
+
const viewer = input.effectiveRoles;
|
|
80
|
+
const profile = viewer.accessProfile;
|
|
81
|
+
if (!profile)
|
|
82
|
+
return viewerHoldsOneOfRoles(answeringRoles, viewer);
|
|
83
|
+
const organizationRolesAnywhere = new Set();
|
|
84
|
+
for (const entry of profile.roleEntries) {
|
|
85
|
+
// Every organization entry the server can read an answerer from: organization-wide, unit-scoped (`organizationUnitId`)
|
|
86
|
+
// and relationship entries alike, in every organization. An application entry is read from `applicationRoles`.
|
|
87
|
+
if (entry.relatedPrimaryScope !== ResourcePrimaryScope.ORGANIZATIONS || !entry.relatedResourceId)
|
|
88
|
+
continue;
|
|
89
|
+
for (const role of entry.roles)
|
|
90
|
+
organizationRolesAnywhere.add(role);
|
|
91
|
+
}
|
|
92
|
+
// OR semantics through the organization role table, as `resolveHumanDecisionRoleFacts` expands a held role. One held
|
|
93
|
+
// role covering one answering role in one entry is enough, so pooling the entries' roles answers the same question.
|
|
94
|
+
return viewerHoldsOneOfRoles(answeringRoles, { ...viewer, organizationRoles: [...organizationRolesAnywhere] });
|
|
95
|
+
}
|
|
96
|
+
/** The capability. Pure, so the shell hook stays a call and the decision is pinned without providers. */
|
|
97
|
+
export function deriveDecisionInboxCapabilities(input) {
|
|
98
|
+
return { [DecisionInboxCapability.ANSWERER]: viewerMayHaveDecisionsWaiting(input) };
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=decision-inbox-capability.frontend.utils.js.map
|