@wildo-ai/saas-frontend-lib 1.1.5 → 1.1.6
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/components/actions/action-bar.d.ts +15 -0
- package/dist/esm/components/actions/action-bar.d.ts.map +1 -1
- package/dist/esm/components/actions/action-bar.js +15 -0
- package/dist/esm/components/actions/action-bar.js.map +1 -1
- package/dist/esm/components/ai-elements/decision/approval.d.ts +97 -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/app/AppLayout_AuthenticatedRoute.d.ts.map +1 -1
- package/dist/esm/components/app/AppLayout_AuthenticatedRoute.js +8 -3
- package/dist/esm/components/app/AppLayout_AuthenticatedRoute.js.map +1 -1
- package/dist/esm/components/auth/Auth_EnrollmentRequired.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_EnrollmentRequired.js +5 -1
- package/dist/esm/components/auth/Auth_EnrollmentRequired.js.map +1 -1
- package/dist/esm/components/auth/Auth_Main.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_Main.js +1 -4
- package/dist/esm/components/auth/Auth_Main.js.map +1 -1
- package/dist/esm/components/auth/Auth_Register.d.ts.map +1 -1
- package/dist/esm/components/auth/Auth_Register.js +1 -3
- package/dist/esm/components/auth/Auth_Register.js.map +1 -1
- package/dist/esm/components/auth/StepUpAuthDialog.d.ts +7 -0
- package/dist/esm/components/auth/StepUpAuthDialog.d.ts.map +1 -1
- package/dist/esm/components/auth/StepUpAuthDialog.js +13 -7
- 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 +32 -33
- 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 +18 -20
- package/dist/esm/components/auth/admin-config/AppPage_SecuritySettings.labels.js.map +1 -1
- package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.d.ts.map +1 -1
- package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.js +2 -3
- package/dist/esm/components/auth/methods/ExternalOAuth2AuthMethod.js.map +1 -1
- package/dist/esm/components/auth/utils/oauth-provider-display-label.frontend.utils.d.ts +13 -16
- package/dist/esm/components/auth/utils/oauth-provider-display-label.frontend.utils.d.ts.map +1 -1
- package/dist/esm/components/auth/utils/oauth-provider-display-label.frontend.utils.js +18 -15
- package/dist/esm/components/auth/utils/oauth-provider-display-label.frontend.utils.js.map +1 -1
- package/dist/esm/components/billing/billing-invoice-history.js +2 -2
- package/dist/esm/components/billing/billing-invoice-history.js.map +1 -1
- package/dist/esm/components/billing/billing-portal-link.js +2 -2
- package/dist/esm/components/billing/billing-portal-link.js.map +1 -1
- package/dist/esm/components/billing/billing-pricing-table.d.ts +33 -1
- package/dist/esm/components/billing/billing-pricing-table.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-pricing-table.js +34 -5
- package/dist/esm/components/billing/billing-pricing-table.js.map +1 -1
- package/dist/esm/components/billing/billing-subscription-status.js +2 -2
- package/dist/esm/components/billing/billing-subscription-status.js.map +1 -1
- package/dist/esm/components/billing/billing-usage-dashboard.d.ts +2 -0
- package/dist/esm/components/billing/billing-usage-dashboard.d.ts.map +1 -1
- package/dist/esm/components/billing/billing-usage-dashboard.js +1 -0
- package/dist/esm/components/billing/billing-usage-dashboard.js.map +1 -1
- package/dist/esm/components/data-display/DisplayField.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayField.js +15 -1
- package/dist/esm/components/data-display/DisplayField.js.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldArray.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldArray.js +11 -0
- package/dist/esm/components/data-display/DisplayFieldArray.js.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldEditable.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldEditable.js +2 -2
- package/dist/esm/components/data-display/DisplayFieldEditable.js.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldEditableArray.d.ts +12 -2
- package/dist/esm/components/data-display/DisplayFieldEditableArray.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldEditableArray.js +3 -2
- 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/DisplayFieldReadOnlyArraySection.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayFieldReadOnlyArraySection.js +8 -2
- package/dist/esm/components/data-display/DisplayFieldReadOnlyArraySection.js.map +1 -1
- package/dist/esm/components/data-display/DisplayValueDispatcher.d.ts.map +1 -1
- package/dist/esm/components/data-display/DisplayValueDispatcher.js +18 -4
- 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 +61 -3
- package/dist/esm/components/data-display/ResourceAutomaticDisplayer.js.map +1 -1
- package/dist/esm/components/data-display/ResourceSummaryDisplayer.d.ts +7 -5
- package/dist/esm/components/data-display/ResourceSummaryDisplayer.d.ts.map +1 -1
- package/dist/esm/components/data-display/ResourceSummaryDisplayer.js.map +1 -1
- package/dist/esm/components/data-display/chromes/DisplayFieldChrome.d.ts +11 -1
- package/dist/esm/components/data-display/chromes/DisplayFieldChrome.d.ts.map +1 -1
- package/dist/esm/components/data-display/chromes/DisplayFieldChrome.js +36 -11
- package/dist/esm/components/data-display/chromes/DisplayFieldChrome.js.map +1 -1
- package/dist/esm/components/data-display/display-field-resolved-props.d.ts +6 -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/external-data-provenance/DisplayFieldProvenanceNote.d.ts +23 -0
- package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.d.ts.map +1 -0
- package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.js +35 -0
- package/dist/esm/components/data-display/external-data-provenance/DisplayFieldProvenanceNote.js.map +1 -0
- package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.d.ts +47 -0
- package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.d.ts.map +1 -0
- package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.js +124 -0
- package/dist/esm/components/data-display/external-data-provenance/external-data-provenance.frontend.js.map +1 -0
- package/dist/esm/components/data-display/external-data-provenance/useExternalDataFieldProvenance.d.ts +8 -0
- package/dist/esm/components/data-display/external-data-provenance/useExternalDataFieldProvenance.d.ts.map +1 -0
- package/dist/esm/components/data-display/external-data-provenance/useExternalDataFieldProvenance.js +46 -0
- package/dist/esm/components/data-display/external-data-provenance/useExternalDataFieldProvenance.js.map +1 -0
- package/dist/esm/components/feedback/resource-empty-state.d.ts +21 -8
- package/dist/esm/components/feedback/resource-empty-state.d.ts.map +1 -1
- package/dist/esm/components/feedback/resource-empty-state.js +56 -26
- package/dist/esm/components/feedback/resource-empty-state.js.map +1 -1
- package/dist/esm/components/flows-actors/approval.d.ts +29 -7
- package/dist/esm/components/flows-actors/approval.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/approval.js +231 -101
- 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 +57 -0
- package/dist/esm/components/flows-actors/approval.labels.js.map +1 -1
- package/dist/esm/components/flows-actors/system-catalog.d.ts.map +1 -1
- package/dist/esm/components/flows-actors/system-catalog.js +4 -4
- 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 +0 -5
- package/dist/esm/components/flows-actors/system-catalog.labels.js.map +1 -1
- package/dist/esm/components/form/Form.d.ts +2 -2
- package/dist/esm/components/form/Form.js +2 -2
- package/dist/esm/components/form/Form.js.map +1 -1
- package/dist/esm/components/form/automated/AutomatedArrayField.d.ts +28 -3
- package/dist/esm/components/form/automated/AutomatedArrayField.d.ts.map +1 -1
- package/dist/esm/components/form/automated/AutomatedArrayField.js +43 -14
- package/dist/esm/components/form/automated/AutomatedArrayField.js.map +1 -1
- package/dist/esm/components/form/automated/FormField.d.ts +3 -0
- package/dist/esm/components/form/automated/FormField.d.ts.map +1 -1
- package/dist/esm/components/form/automated/FormField.js +60 -21
- package/dist/esm/components/form/automated/FormField.js.map +1 -1
- package/dist/esm/components/form/automated/FormFieldArray.d.ts +6 -3
- package/dist/esm/components/form/automated/FormFieldArray.d.ts.map +1 -1
- package/dist/esm/components/form/automated/FormFieldArray.js +3 -2
- package/dist/esm/components/form/automated/FormFieldArray.js.map +1 -1
- package/dist/esm/components/form/automated/ResourceAutomatedForm.d.ts +5 -4
- package/dist/esm/components/form/automated/ResourceAutomatedForm.d.ts.map +1 -1
- package/dist/esm/components/form/automated/ResourceAutomatedForm.js +148 -55
- package/dist/esm/components/form/automated/ResourceAutomatedForm.js.map +1 -1
- package/dist/esm/components/form/automated/ResourceFormActionsContext.d.ts +30 -0
- package/dist/esm/components/form/automated/ResourceFormActionsContext.d.ts.map +1 -1
- package/dist/esm/components/form/automated/ResourceFormActionsContext.js +30 -1
- package/dist/esm/components/form/automated/ResourceFormActionsContext.js.map +1 -1
- package/dist/esm/components/form/automated/TemplatePlacedFieldsContext.d.ts +79 -0
- package/dist/esm/components/form/automated/TemplatePlacedFieldsContext.d.ts.map +1 -0
- package/dist/esm/components/form/automated/TemplatePlacedFieldsContext.js +203 -0
- package/dist/esm/components/form/automated/TemplatePlacedFieldsContext.js.map +1 -0
- package/dist/esm/components/form/automated/automated-form-submit.utils.d.ts +12 -0
- 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 +11 -0
- package/dist/esm/components/form/automated/automated-form-submit.utils.js.map +1 -1
- package/dist/esm/components/form/chromes/FormFieldChrome.d.ts.map +1 -1
- package/dist/esm/components/form/chromes/FormFieldChrome.js +2 -2
- package/dist/esm/components/form/chromes/FormFieldChrome.js.map +1 -1
- package/dist/esm/components/form/combobox.d.ts +7 -0
- package/dist/esm/components/form/combobox.d.ts.map +1 -1
- package/dist/esm/components/form/combobox.js.map +1 -1
- package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts.map +1 -1
- package/dist/esm/components/form/controls/form-field-checkbox-group.js +13 -0
- package/dist/esm/components/form/controls/form-field-checkbox-group.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-address.d.ts +58 -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 +34 -6
- package/dist/esm/components/form/fields/form-field-address.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-address.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-address.labels.js +60 -1
- package/dist/esm/components/form/fields/form-field-address.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-file.d.ts +0 -12
- package/dist/esm/components/form/fields/form-field-file.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-file.js +34 -13
- package/dist/esm/components/form/fields/form-field-file.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-file.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-file.labels.js +46 -0
- package/dist/esm/components/form/fields/form-field-file.labels.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-string-organization-role.d.ts +73 -0
- package/dist/esm/components/form/fields/form-field-string-organization-role.d.ts.map +1 -0
- package/dist/esm/components/form/fields/form-field-string-organization-role.js +64 -0
- package/dist/esm/components/form/fields/form-field-string-organization-role.js.map +1 -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 +8 -1
- package/dist/esm/components/form/fields/form-field-string.js.map +1 -1
- package/dist/esm/components/form/fields/form-field-string.labels.d.ts.map +1 -1
- package/dist/esm/components/form/fields/form-field-string.labels.js +4 -0
- package/dist/esm/components/form/fields/form-field-string.labels.js.map +1 -1
- package/dist/esm/components/form/validation-errors/FormErrorSummary.js +1 -1
- package/dist/esm/components/form/validation-errors/FormErrorSummary.js.map +1 -1
- package/dist/esm/components/form/validation-errors/resolver-error-nesting.d.ts +31 -0
- package/dist/esm/components/form/validation-errors/resolver-error-nesting.d.ts.map +1 -0
- package/dist/esm/components/form/validation-errors/resolver-error-nesting.js +81 -0
- package/dist/esm/components/form/validation-errors/resolver-error-nesting.js.map +1 -0
- package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.d.ts +14 -1
- package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.d.ts.map +1 -1
- package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.js +14 -0
- package/dist/esm/components/form/validation-errors/resource-error-notification-context.utils.js.map +1 -1
- package/dist/esm/components/form/validation-errors/zod-issue-resolver.d.ts +22 -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 +1 -22
- package/dist/esm/components/form/validation-errors/zod-issue-resolver.js.map +1 -1
- package/dist/esm/components/layout/resizable.d.ts +11 -0
- package/dist/esm/components/layout/resizable.d.ts.map +1 -1
- package/dist/esm/components/layout/resizable.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_NavigationBack.d.ts +11 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_NavigationBack.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_NavigationBack.js +15 -3
- package/dist/esm/components/navigation/app-level/ApplicationLevel_NavigationBack.js.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_StatusBar.d.ts +2 -2
- package/dist/esm/components/navigation/app-level/ApplicationLevel_StatusBar.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/ApplicationLevel_StatusBar.js.map +1 -1
- package/dist/esm/components/navigation/app-level/HostedComponentInteractionsProvider.d.ts +2 -2
- package/dist/esm/components/navigation/app-level/HostedComponentInteractionsProvider.js +2 -2
- package/dist/esm/components/navigation/app-level/HostedComponentInteractionsProvider.js.map +1 -1
- package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.js +18 -20
- package/dist/esm/components/navigation/app-level/SidebarResourceBrowser.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.js +7 -1
- package/dist/esm/components/navigation/app-level/useCommandMenuBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useMenuBarBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useMenuBarBehavior.js +4 -1
- package/dist/esm/components/navigation/app-level/useMenuBarBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.js +18 -2
- package/dist/esm/components/navigation/app-level/useMenuUserOrgBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useSidebarBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useSidebarBehavior.js +82 -10
- package/dist/esm/components/navigation/app-level/useSidebarBehavior.js.map +1 -1
- package/dist/esm/components/navigation/app-level/useStatusBarBehavior.d.ts +2 -2
- package/dist/esm/components/navigation/app-level/useStatusBarBehavior.d.ts.map +1 -1
- package/dist/esm/components/navigation/app-level/useStatusBarBehavior.js.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.js +8 -1
- package/dist/esm/components/resources/ResourceCollectionQuickFilterTabs.js.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionToolbar.d.ts +8 -2
- package/dist/esm/components/resources/ResourceCollectionToolbar.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceCollectionToolbar.js +6 -2
- package/dist/esm/components/resources/ResourceCollectionToolbar.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Breadcrumb.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Breadcrumb.js +31 -16
- package/dist/esm/components/resources/ResourceLayout_Breadcrumb.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.js +23 -8
- package/dist/esm/components/resources/ResourceLayout_ContainerDialogs.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_ContainerNested.js +2 -2
- package/dist/esm/components/resources/ResourceLayout_ContainerNested.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Header.d.ts +13 -0
- package/dist/esm/components/resources/ResourceLayout_Header.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Header.js +55 -28
- package/dist/esm/components/resources/ResourceLayout_Header.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_List.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_List.js +41 -20
- 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 +1 -2
- package/dist/esm/components/resources/ResourceLayout_List.labels.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Read.d.ts +9 -4
- package/dist/esm/components/resources/ResourceLayout_Read.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Read.js +30 -11
- 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 +4 -2
- 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 +6 -2
- package/dist/esm/components/resources/ResourceLayout_ReadSummary_TableRow.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Search.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Search.js +30 -14
- package/dist/esm/components/resources/ResourceLayout_Search.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.js +14 -198
- package/dist/esm/components/resources/ResourceLayout_SemanticOperationFallback.js.map +1 -1
- package/dist/esm/components/resources/ResourceLayout_Update.d.ts +2 -2
- package/dist/esm/components/resources/ResourceLayout_Update.js +2 -2
- package/dist/esm/components/resources/ResourceLayout_Update.js.map +1 -1
- package/dist/esm/components/resources/ResourceListItemRenderer.d.ts.map +1 -1
- package/dist/esm/components/resources/ResourceListItemRenderer.js +69 -39
- package/dist/esm/components/resources/ResourceListItemRenderer.js.map +1 -1
- package/dist/esm/components/resources/ResourceOperationActionDropdown.d.ts +32 -0
- package/dist/esm/components/resources/ResourceOperationActionDropdown.d.ts.map +1 -0
- package/dist/esm/components/resources/ResourceOperationActionDropdown.js +130 -0
- package/dist/esm/components/resources/ResourceOperationActionDropdown.js.map +1 -0
- package/dist/esm/components/resources/collection-create-placement.utils.d.ts +32 -0
- package/dist/esm/components/resources/collection-create-placement.utils.d.ts.map +1 -0
- package/dist/esm/components/resources/collection-create-placement.utils.js +37 -0
- package/dist/esm/components/resources/collection-create-placement.utils.js.map +1 -0
- package/dist/esm/components/resources/embeds/RelatedResourcePreview.d.ts.map +1 -1
- package/dist/esm/components/resources/embeds/RelatedResourcePreview.js +5 -1
- package/dist/esm/components/resources/embeds/RelatedResourcePreview.js.map +1 -1
- package/dist/esm/components/resources/embeds/RelatedResourceSections.d.ts +8 -1
- package/dist/esm/components/resources/embeds/RelatedResourceSections.d.ts.map +1 -1
- package/dist/esm/components/resources/embeds/RelatedResourceSections.js +49 -2
- package/dist/esm/components/resources/embeds/RelatedResourceSections.js.map +1 -1
- package/dist/esm/components/resources/embeds/ResourceEmbeds.d.ts +22 -0
- package/dist/esm/components/resources/embeds/ResourceEmbeds.d.ts.map +1 -1
- package/dist/esm/components/resources/embeds/ResourceEmbeds.js +85 -2
- package/dist/esm/components/resources/embeds/ResourceEmbeds.js.map +1 -1
- package/dist/esm/components/resources/resourceLayout.utils.d.ts +14 -0
- package/dist/esm/components/resources/resourceLayout.utils.d.ts.map +1 -1
- package/dist/esm/components/resources/resourceLayout.utils.js +22 -0
- 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 +3 -0
- package/dist/esm/components/resources/skeleton/ArrayField.js.map +1 -1
- package/dist/esm/components/resources/skeleton/FormLayout.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/FormLayout.js +33 -1
- package/dist/esm/components/resources/skeleton/FormLayout.js.map +1 -1
- package/dist/esm/components/resources/skeleton/ObjectScope.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/ObjectScope.js +3 -0
- package/dist/esm/components/resources/skeleton/ObjectScope.js.map +1 -1
- package/dist/esm/components/resources/skeleton/Section.d.ts +12 -0
- package/dist/esm/components/resources/skeleton/Section.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/Section.js +28 -2
- package/dist/esm/components/resources/skeleton/Section.js.map +1 -1
- package/dist/esm/components/resources/skeleton/SectionFieldsContext.d.ts +70 -0
- package/dist/esm/components/resources/skeleton/SectionFieldsContext.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/SectionFieldsContext.js +157 -1
- package/dist/esm/components/resources/skeleton/SectionFieldsContext.js.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardLayout.d.ts +6 -0
- package/dist/esm/components/resources/skeleton/WizardLayout.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardLayout.js +13 -2
- package/dist/esm/components/resources/skeleton/WizardLayout.js.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardStep.d.ts.map +1 -1
- package/dist/esm/components/resources/skeleton/WizardStep.js +2 -1
- package/dist/esm/components/resources/skeleton/WizardStep.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 +61 -15
- package/dist/esm/components/resources-fields/_presets/resource-reference/ResourceFieldDisplayPreset_ResourceReference_Default.js.map +1 -1
- package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.d.ts +24 -2
- 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 +69 -1
- package/dist/esm/components/resources-fields/resource-reference/resource-reference.shared.utils.js.map +1 -1
- package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.d.ts.map +1 -1
- package/dist/esm/components/resources-fields/resource-reference/useResourceSearch.js +18 -19
- 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 +5 -4
- package/dist/esm/components/sections/ContentSectionContainer.js.map +1 -1
- package/dist/esm/components/sections/stepper.d.ts +5 -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 +12 -3
- package/dist/esm/components/sections/surface.js.map +1 -1
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.d.ts +43 -0
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.d.ts.map +1 -0
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.js +129 -0
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.js.map +1 -0
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.labels.d.ts +3 -0
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.labels.d.ts.map +1 -0
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.labels.js +34 -0
- package/dist/esm/components/settings/AppPage_AgentWorkOverrideRateSettings.labels.js.map +1 -0
- package/dist/esm/components/settings/AppPage_AppearanceSettings.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_AppearanceSettings.js +9 -11
- package/dist/esm/components/settings/AppPage_AppearanceSettings.js.map +1 -1
- package/dist/esm/components/settings/AppPage_AppearanceSettings.labels.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_AppearanceSettings.labels.js +3 -2
- package/dist/esm/components/settings/AppPage_AppearanceSettings.labels.js.map +1 -1
- package/dist/esm/components/settings/AppPage_BillingSettings.d.ts +4 -2
- package/dist/esm/components/settings/AppPage_BillingSettings.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_BillingSettings.js +21 -3
- package/dist/esm/components/settings/AppPage_BillingSettings.js.map +1 -1
- package/dist/esm/components/settings/AppPage_BillingSettings.labels.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_BillingSettings.labels.js +5 -10
- package/dist/esm/components/settings/AppPage_BillingSettings.labels.js.map +1 -1
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts +58 -0
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.js +243 -40
- 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 +67 -6
- package/dist/esm/components/settings/AppPage_ConnectedAccountsSettings.labels.js.map +1 -1
- package/dist/esm/components/settings/AppPage_InvitationsSettings.d.ts.map +1 -1
- package/dist/esm/components/settings/AppPage_InvitationsSettings.js +19 -11
- 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 +4 -2
- package/dist/esm/components/settings/AppPage_InvitationsSettings.labels.js.map +1 -1
- package/dist/esm/components/settings/SettingsHub.d.ts.map +1 -1
- package/dist/esm/components/settings/SettingsHub.js +3 -0
- package/dist/esm/components/settings/SettingsHub.js.map +1 -1
- package/dist/esm/components/settings/SettingsResourceOperationPanel.d.ts.map +1 -1
- package/dist/esm/components/settings/SettingsResourceOperationPanel.js +16 -1
- package/dist/esm/components/settings/SettingsResourceOperationPanel.js.map +1 -1
- package/dist/esm/components/settings/useOwnerProviderConnections.d.ts +59 -0
- package/dist/esm/components/settings/useOwnerProviderConnections.d.ts.map +1 -0
- package/dist/esm/components/settings/useOwnerProviderConnections.js +136 -0
- package/dist/esm/components/settings/useOwnerProviderConnections.js.map +1 -0
- package/dist/esm/components/views/chart-view/chart-view.utils.d.ts +5 -0
- package/dist/esm/components/views/chart-view/chart-view.utils.d.ts.map +1 -1
- package/dist/esm/components/views/chart-view/chart-view.utils.js +5 -0
- package/dist/esm/components/views/chart-view/chart-view.utils.js.map +1 -1
- package/dist/esm/components/views/chart-view/useResourceChartData.d.ts +50 -0
- package/dist/esm/components/views/chart-view/useResourceChartData.d.ts.map +1 -0
- package/dist/esm/components/views/chart-view/useResourceChartData.js +72 -0
- package/dist/esm/components/views/chart-view/useResourceChartData.js.map +1 -0
- package/dist/esm/components/views/composite-view/CompositeLayout.d.ts.map +1 -1
- package/dist/esm/components/views/composite-view/CompositeLayout.js +2 -1
- package/dist/esm/components/views/composite-view/CompositeLayout.js.map +1 -1
- package/dist/esm/core/app-shell/AppShellBuildingBlocks.d.ts +86 -0
- package/dist/esm/core/app-shell/AppShellBuildingBlocks.d.ts.map +1 -0
- package/dist/esm/core/app-shell/AppShellBuildingBlocks.js +187 -0
- package/dist/esm/core/app-shell/AppShellBuildingBlocks.js.map +1 -0
- package/dist/esm/core/app-shell/PortalContainerContext.d.ts +5 -2
- package/dist/esm/core/app-shell/PortalContainerContext.d.ts.map +1 -1
- package/dist/esm/core/app-shell/PortalContainerContext.js +5 -2
- package/dist/esm/core/app-shell/PortalContainerContext.js.map +1 -1
- package/dist/esm/core/app-shell/app-shell.schemas.d.ts +18 -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 +1 -0
- package/dist/esm/core/app-shell/app-shell.schemas.js.map +1 -1
- package/dist/esm/core/app-shell/useAppShellLayout.d.ts +10 -0
- package/dist/esm/core/app-shell/useAppShellLayout.d.ts.map +1 -1
- package/dist/esm/core/app-shell/useAppShellLayout.js +28 -5
- 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 +38 -0
- package/dist/esm/core/app-shell/usePublicShellLayout.js.map +1 -1
- package/dist/esm/core/automated-layout/automated-layout.frontend.utils.d.ts +15 -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 +47 -13
- package/dist/esm/core/automated-layout/automated-layout.frontend.utils.js.map +1 -1
- package/dist/esm/core/billing/BillingContext.d.ts +25 -2
- package/dist/esm/core/billing/BillingContext.d.ts.map +1 -1
- package/dist/esm/core/billing/BillingContext.js +16 -25
- package/dist/esm/core/billing/BillingContext.js.map +1 -1
- package/dist/esm/core/billing/billing-provider-display.frontend.utils.d.ts +11 -3
- package/dist/esm/core/billing/billing-provider-display.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/billing/billing-provider-display.frontend.utils.js +14 -8
- package/dist/esm/core/billing/billing-provider-display.frontend.utils.js.map +1 -1
- package/dist/esm/core/billing/useBillingPlanChange.d.ts.map +1 -1
- package/dist/esm/core/billing/useBillingPlanChange.js +2 -0
- package/dist/esm/core/billing/useBillingPlanChange.js.map +1 -1
- package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.d.ts.map +1 -1
- package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.js +1 -0
- package/dist/esm/core/components-registry/assert-registry-completeness.frontend.helper.js.map +1 -1
- package/dist/esm/core/components-registry/provider-component-registry.frontend.service.d.ts +29 -229
- package/dist/esm/core/components-registry/provider-component-registry.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/components-registry/provider-component-registry.frontend.service.js +29 -327
- package/dist/esm/core/components-registry/provider-component-registry.frontend.service.js.map +1 -1
- package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.d.ts +17 -27
- package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.d.ts.map +1 -1
- package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.js +28 -48
- package/dist/esm/core/components-registry/useProviderComponent.frontend.hooks.js.map +1 -1
- package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts +21 -11
- package/dist/esm/core/config/app-configuration-frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/app-configuration-frontend.schemas.js +4 -4
- 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 +17 -0
- 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 +17 -0
- 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 +10 -10
- package/dist/esm/core/config/engine-settings-destinations.d.ts.map +1 -1
- package/dist/esm/core/config/engine-settings-destinations.js +221 -6
- package/dist/esm/core/config/engine-settings-destinations.js.map +1 -1
- package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts +8 -0
- package/dist/esm/core/config/launcher-items.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/launcher-items.frontend.schemas.js +1 -0
- package/dist/esm/core/config/launcher-items.frontend.schemas.js.map +1 -1
- package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts +10 -1
- package/dist/esm/core/config/settings-hub.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/config/settings-hub.frontend.schemas.js +9 -0
- package/dist/esm/core/config/settings-hub.frontend.schemas.js.map +1 -1
- package/dist/esm/core/config/verify-launcher-content.d.ts.map +1 -1
- package/dist/esm/core/config/verify-launcher-content.js +30 -19
- package/dist/esm/core/config/verify-launcher-content.js.map +1 -1
- package/dist/esm/core/errors/ErrorContext.d.ts.map +1 -1
- package/dist/esm/core/errors/ErrorContext.js +9 -1
- package/dist/esm/core/errors/ErrorContext.js.map +1 -1
- package/dist/esm/core/errors/GlobalErrorHandler.d.ts.map +1 -1
- package/dist/esm/core/errors/GlobalErrorHandler.js +5 -4
- package/dist/esm/core/errors/GlobalErrorHandler.js.map +1 -1
- package/dist/esm/core/errors/RouterErrorBoundary.js +1 -1
- package/dist/esm/core/errors/RouterErrorBoundary.js.map +1 -1
- package/dist/esm/core/errors/errors-builder.frontend.services.d.ts +2 -2
- package/dist/esm/core/errors/errors-builder.frontend.services.d.ts.map +1 -1
- package/dist/esm/core/errors/errors-builder.frontend.services.js +4 -4
- package/dist/esm/core/errors/errors-builder.frontend.services.js.map +1 -1
- package/dist/esm/core/errors/user-facing-error-message.frontend.utils.js +1 -1
- package/dist/esm/core/errors/user-facing-error-message.frontend.utils.js.map +1 -1
- package/dist/esm/core/events/NotificationContext.d.ts.map +1 -1
- package/dist/esm/core/events/NotificationContext.js +23 -5
- package/dist/esm/core/events/NotificationContext.js.map +1 -1
- package/dist/esm/core/events/events.frontend.schemas.d.ts +110 -43
- package/dist/esm/core/events/events.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/events/events.frontend.schemas.js +89 -15
- package/dist/esm/core/events/events.frontend.schemas.js.map +1 -1
- package/dist/esm/core/execution/useExecutionParticipationRMM.d.ts +2 -0
- package/dist/esm/core/execution/useExecutionParticipationRMM.d.ts.map +1 -1
- package/dist/esm/core/execution/useExecutionParticipationRMM.js +2 -1
- package/dist/esm/core/execution/useExecutionParticipationRMM.js.map +1 -1
- package/dist/esm/core/execution/useExecutionResourceOperationSurface.d.ts +1 -1
- package/dist/esm/core/execution/useExecutionResourceOperationSurface.d.ts.map +1 -1
- package/dist/esm/core/execution/useExecutionResourceOperationSurface.js +5 -2
- package/dist/esm/core/execution/useExecutionResourceOperationSurface.js.map +1 -1
- package/dist/esm/core/external-providers/ConsentBasedProviderSdks.d.ts +63 -0
- package/dist/esm/core/external-providers/ConsentBasedProviderSdks.d.ts.map +1 -0
- package/dist/esm/core/external-providers/ConsentBasedProviderSdks.js +131 -0
- package/dist/esm/core/external-providers/ConsentBasedProviderSdks.js.map +1 -0
- package/dist/esm/core/external-providers/ProviderAddressLookupCombobox.d.ts +61 -0
- package/dist/esm/core/external-providers/ProviderAddressLookupCombobox.d.ts.map +1 -0
- package/dist/esm/core/external-providers/ProviderAddressLookupCombobox.js +178 -0
- package/dist/esm/core/external-providers/ProviderAddressLookupCombobox.js.map +1 -0
- package/dist/esm/core/external-providers/ProviderAddressLookupHost.d.ts +52 -0
- package/dist/esm/core/external-providers/ProviderAddressLookupHost.d.ts.map +1 -0
- package/dist/esm/core/external-providers/ProviderAddressLookupHost.js +144 -0
- package/dist/esm/core/external-providers/ProviderAddressLookupHost.js.map +1 -0
- package/dist/esm/core/external-providers/ProviderFilePickerHost.d.ts +22 -1
- package/dist/esm/core/external-providers/ProviderFilePickerHost.d.ts.map +1 -1
- package/dist/esm/core/external-providers/ProviderFilePickerHost.js +23 -3
- package/dist/esm/core/external-providers/ProviderFilePickerHost.js.map +1 -1
- package/dist/esm/core/external-providers/provider-address-lookup-selection.frontend.utils.d.ts +55 -0
- package/dist/esm/core/external-providers/provider-address-lookup-selection.frontend.utils.d.ts.map +1 -0
- package/dist/esm/core/external-providers/provider-address-lookup-selection.frontend.utils.js +65 -0
- package/dist/esm/core/external-providers/provider-address-lookup-selection.frontend.utils.js.map +1 -0
- package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.d.ts +63 -0
- package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.d.ts.map +1 -0
- package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.js +100 -0
- package/dist/esm/core/external-providers/provider-scope-reauthorization-offers.frontend.js.map +1 -0
- package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts +45 -7
- package/dist/esm/core/flows-actors/FlowsActorsContext.d.ts.map +1 -1
- package/dist/esm/core/flows-actors/FlowsActorsContext.js +112 -28
- package/dist/esm/core/flows-actors/FlowsActorsContext.js.map +1 -1
- package/dist/esm/core/flows-actors/usePendingDecisions.d.ts +32 -0
- package/dist/esm/core/flows-actors/usePendingDecisions.d.ts.map +1 -0
- package/dist/esm/core/flows-actors/usePendingDecisions.js +91 -0
- package/dist/esm/core/flows-actors/usePendingDecisions.js.map +1 -0
- package/dist/esm/core/guidance/GuidanceRenderer.d.ts.map +1 -1
- package/dist/esm/core/guidance/GuidanceRenderer.js +3 -2
- package/dist/esm/core/guidance/GuidanceRenderer.js.map +1 -1
- package/dist/esm/core/i18n/I18nContext.d.ts +22 -8
- package/dist/esm/core/i18n/I18nContext.d.ts.map +1 -1
- package/dist/esm/core/i18n/I18nContext.js +21 -9
- package/dist/esm/core/i18n/I18nContext.js.map +1 -1
- package/dist/esm/core/i18n/component-label-resolution.utils.d.ts +5 -3
- package/dist/esm/core/i18n/component-label-resolution.utils.d.ts.map +1 -1
- package/dist/esm/core/i18n/component-label-resolution.utils.js +5 -3
- package/dist/esm/core/i18n/component-label-resolution.utils.js.map +1 -1
- package/dist/esm/core/i18n/useI18n.d.ts +2 -1
- package/dist/esm/core/i18n/useI18n.d.ts.map +1 -1
- package/dist/esm/core/i18n/useI18n.js +2 -1
- package/dist/esm/core/i18n/useI18n.js.map +1 -1
- package/dist/esm/core/loading/LoadingContext.d.ts.map +1 -1
- package/dist/esm/core/loading/LoadingContext.js +7 -1
- package/dist/esm/core/loading/LoadingContext.js.map +1 -1
- package/dist/esm/core/loading/LoadingGate.d.ts.map +1 -1
- package/dist/esm/core/loading/LoadingGate.js +19 -1
- package/dist/esm/core/loading/LoadingGate.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/AnalyticsContext.d.ts +15 -2
- package/dist/esm/core/monitoring/analytics/AnalyticsContext.d.ts.map +1 -1
- package/dist/esm/core/monitoring/analytics/AnalyticsContext.js +183 -20
- package/dist/esm/core/monitoring/analytics/AnalyticsContext.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.js +2 -2
- package/dist/esm/core/monitoring/analytics/AnalyticsEventBridge.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/analytics-provider-registry.frontend.service.d.ts +7 -15
- package/dist/esm/core/monitoring/analytics/analytics-provider-registry.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/monitoring/analytics/analytics-provider-registry.frontend.service.js +8 -26
- package/dist/esm/core/monitoring/analytics/analytics-provider-registry.frontend.service.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/analytics-provider.frontend.interface.d.ts +12 -3
- package/dist/esm/core/monitoring/analytics/analytics-provider.frontend.interface.d.ts.map +1 -1
- package/dist/esm/core/monitoring/analytics/analytics-provider.frontend.interface.js +3 -2
- package/dist/esm/core/monitoring/analytics/analytics-provider.frontend.interface.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.d.ts +42 -0
- package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.d.ts.map +1 -1
- package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.js +89 -5
- package/dist/esm/core/monitoring/analytics/providers/backend-proxy-analytics.provider.js.map +1 -1
- package/dist/esm/core/monitoring/analytics/providers/console-analytics.provider.d.ts +2 -0
- package/dist/esm/core/monitoring/analytics/providers/console-analytics.provider.d.ts.map +1 -1
- package/dist/esm/core/monitoring/analytics/providers/console-analytics.provider.js +2 -0
- package/dist/esm/core/monitoring/analytics/providers/console-analytics.provider.js.map +1 -1
- package/dist/esm/core/navigation/NavigationContentAreas.d.ts +78 -0
- package/dist/esm/core/navigation/NavigationContentAreas.d.ts.map +1 -1
- package/dist/esm/core/navigation/NavigationContentAreas.js +264 -16
- package/dist/esm/core/navigation/NavigationContentAreas.js.map +1 -1
- package/dist/esm/core/navigation/NavigationContext.d.ts +8 -0
- package/dist/esm/core/navigation/NavigationContext.d.ts.map +1 -1
- package/dist/esm/core/navigation/NavigationContext.js +137 -30
- package/dist/esm/core/navigation/NavigationContext.js.map +1 -1
- package/dist/esm/core/navigation/launcher-resolution.d.ts +2 -0
- package/dist/esm/core/navigation/launcher-resolution.d.ts.map +1 -1
- package/dist/esm/core/navigation/launcher-resolution.js +1 -0
- package/dist/esm/core/navigation/launcher-resolution.js.map +1 -1
- package/dist/esm/core/navigation/navigation-cascade.d.ts +46 -0
- package/dist/esm/core/navigation/navigation-cascade.d.ts.map +1 -0
- package/dist/esm/core/navigation/navigation-cascade.js +222 -0
- package/dist/esm/core/navigation/navigation-cascade.js.map +1 -0
- package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.js +21 -2
- package/dist/esm/core/navigation/navigation-clean-break.frontend.utils.js.map +1 -1
- package/dist/esm/core/navigation/navigation-controller-internals.d.ts +71 -0
- package/dist/esm/core/navigation/navigation-controller-internals.d.ts.map +1 -0
- package/dist/esm/core/navigation/navigation-controller-internals.js +84 -0
- package/dist/esm/core/navigation/navigation-controller-internals.js.map +1 -0
- package/dist/esm/core/navigation/navigation-policy-resolver.service.d.ts +86 -2
- package/dist/esm/core/navigation/navigation-policy-resolver.service.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation-policy-resolver.service.js +242 -124
- package/dist/esm/core/navigation/navigation-policy-resolver.service.js.map +1 -1
- package/dist/esm/core/navigation/navigation.schemas.d.ts +170 -8
- package/dist/esm/core/navigation/navigation.schemas.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation.schemas.js +121 -2
- package/dist/esm/core/navigation/navigation.schemas.js.map +1 -1
- package/dist/esm/core/navigation/navigation.utils.d.ts +102 -6
- package/dist/esm/core/navigation/navigation.utils.d.ts.map +1 -1
- package/dist/esm/core/navigation/navigation.utils.js +283 -34
- package/dist/esm/core/navigation/navigation.utils.js.map +1 -1
- package/dist/esm/core/navigation/useIsStackEntryActive.d.ts +0 -10
- package/dist/esm/core/navigation/useIsStackEntryActive.d.ts.map +0 -1
- package/dist/esm/core/navigation/useIsStackEntryActive.js.map +0 -1
- package/dist/esm/core/navigation/useNavigationController.d.ts +28 -157
- package/dist/esm/core/navigation/useNavigationController.d.ts.map +1 -1
- package/dist/esm/core/navigation/useNavigationController.js +211 -1189
- package/dist/esm/core/navigation/useNavigationController.js.map +1 -1
- package/dist/esm/core/navigation/useNavigationRouterSync.d.ts +174 -0
- package/dist/esm/core/navigation/useNavigationRouterSync.d.ts.map +1 -0
- package/dist/esm/core/navigation/useNavigationRouterSync.js +977 -0
- package/dist/esm/core/navigation/useNavigationRouterSync.js.map +1 -0
- package/dist/esm/core/navigation/useOverlayTitle.d.ts +13 -1
- package/dist/esm/core/navigation/useOverlayTitle.d.ts.map +1 -1
- package/dist/esm/core/navigation/useOverlayTitle.js +15 -10
- package/dist/esm/core/navigation/useOverlayTitle.js.map +1 -1
- package/dist/esm/core/navigation/useResponsiveZoneMigration.d.ts +43 -0
- package/dist/esm/core/navigation/useResponsiveZoneMigration.d.ts.map +1 -0
- package/dist/esm/core/navigation/useResponsiveZoneMigration.js +44 -0
- package/dist/esm/core/navigation/useResponsiveZoneMigration.js.map +1 -0
- package/dist/esm/core/navigation/zone-collapse-migration.d.ts +83 -0
- package/dist/esm/core/navigation/zone-collapse-migration.d.ts.map +1 -0
- package/dist/esm/core/navigation/zone-collapse-migration.js +116 -0
- package/dist/esm/core/navigation/zone-collapse-migration.js.map +1 -0
- package/dist/esm/core/navigation/zone-collapse.d.ts +51 -0
- package/dist/esm/core/navigation/zone-collapse.d.ts.map +1 -0
- package/dist/esm/core/navigation/zone-collapse.js +59 -0
- package/dist/esm/core/navigation/zone-collapse.js.map +1 -0
- package/dist/esm/core/navigation/zone-emphasis.d.ts +3 -0
- package/dist/esm/core/navigation/zone-emphasis.d.ts.map +1 -1
- package/dist/esm/core/navigation/zone-emphasis.js +26 -4
- package/dist/esm/core/navigation/zone-emphasis.js.map +1 -1
- package/dist/esm/core/navigation/zone-visible-entry.d.ts +22 -0
- package/dist/esm/core/navigation/zone-visible-entry.d.ts.map +1 -1
- package/dist/esm/core/navigation/zone-visible-entry.js +25 -0
- package/dist/esm/core/navigation/zone-visible-entry.js.map +1 -1
- package/dist/esm/core/requests/websockets/WebSocketContext.d.ts.map +1 -1
- package/dist/esm/core/requests/websockets/WebSocketContext.js +53 -18
- 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 +3 -1
- package/dist/esm/core/requests/websockets/WebSocketEventBridge.js.map +1 -1
- package/dist/esm/core/requests/websockets/useNotificationBadges.d.ts +22 -0
- package/dist/esm/core/requests/websockets/useNotificationBadges.d.ts.map +1 -1
- package/dist/esm/core/requests/websockets/useNotificationBadges.js +72 -3
- package/dist/esm/core/requests/websockets/useNotificationBadges.js.map +1 -1
- package/dist/esm/core/requests/websockets/usePublishNotificationBadgeCount.d.ts +28 -0
- package/dist/esm/core/requests/websockets/usePublishNotificationBadgeCount.d.ts.map +1 -0
- package/dist/esm/core/requests/websockets/usePublishNotificationBadgeCount.js +86 -0
- package/dist/esm/core/requests/websockets/usePublishNotificationBadgeCount.js.map +1 -0
- package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.d.ts +38 -3
- 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 +57 -2
- package/dist/esm/core/requests/wildo-http-client-manual-calls.frontend.service.js.map +1 -1
- package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/requests/wildo-http-client-resources.frontend.service.js +4 -2
- 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 +30 -1
- package/dist/esm/core/requests/wildo-http-client.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/requests/wildo-http-client.frontend.service.js +47 -4
- package/dist/esm/core/requests/wildo-http-client.frontend.service.js.map +1 -1
- package/dist/esm/core/resources/ResourceRegistryContext.d.ts.map +1 -1
- package/dist/esm/core/resources/ResourceRegistryContext.js +22 -1
- package/dist/esm/core/resources/ResourceRegistryContext.js.map +1 -1
- package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.js +1 -1
- package/dist/esm/core/resources/context-resource-identifiers.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/frontend-resource.utils.d.ts +22 -1
- package/dist/esm/core/resources/frontend-resource.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/frontend-resource.utils.js +25 -2
- package/dist/esm/core/resources/frontend-resource.utils.js.map +1 -1
- package/dist/esm/core/resources/operation-semantics.frontend.utils.d.ts +113 -13
- package/dist/esm/core/resources/operation-semantics.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/operation-semantics.frontend.utils.js +173 -20
- package/dist/esm/core/resources/operation-semantics.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/relationship-surface-runtime.frontend.utils.d.ts +11 -0
- package/dist/esm/core/resources/relationship-surface-runtime.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/relationship-surface-runtime.frontend.utils.js +7 -0
- package/dist/esm/core/resources/relationship-surface-runtime.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.d.ts +3 -2
- package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.d.ts.map +1 -1
- package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.js +13 -5
- package/dist/esm/core/resources/resource-label-field-paths.frontend.utils.js.map +1 -1
- package/dist/esm/core/resources/resources-repository.frontend.service.d.ts +6 -0
- package/dist/esm/core/resources/resources-repository.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/resources/resources-repository.frontend.service.js +90 -1
- package/dist/esm/core/resources/resources-repository.frontend.service.js.map +1 -1
- package/dist/esm/core/resources/resources.frontend.schemas.d.ts +139 -16
- package/dist/esm/core/resources/resources.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/resources/resources.frontend.schemas.js +110 -11
- package/dist/esm/core/resources/resources.frontend.schemas.js.map +1 -1
- package/dist/esm/core/resources/rmm/ResourceMutationManager.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/ResourceMutationManager.js +3 -1
- package/dist/esm/core/resources/rmm/ResourceMutationManager.js.map +1 -1
- package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.d.ts +10 -0
- 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 +8 -0
- package/dist/esm/core/resources/rmm/update-like-mutation-fallback.frontend.js.map +1 -1
- package/dist/esm/core/resources/rmm/useResourceRMM.d.ts +7 -0
- package/dist/esm/core/resources/rmm/useResourceRMM.d.ts.map +1 -1
- package/dist/esm/core/resources/rmm/useResourceRMM.js +9 -2
- package/dist/esm/core/resources/rmm/useResourceRMM.js.map +1 -1
- package/dist/esm/core/resources/useOperationDirectExecution.d.ts +59 -0
- package/dist/esm/core/resources/useOperationDirectExecution.d.ts.map +1 -0
- package/dist/esm/core/resources/useOperationDirectExecution.js +278 -0
- package/dist/esm/core/resources/useOperationDirectExecution.js.map +1 -0
- package/dist/esm/core/resources/useResourceOperationActions.d.ts +1 -1
- package/dist/esm/core/resources/useResourceOperationActions.d.ts.map +1 -1
- package/dist/esm/core/resources/useResourceOperationActions.js +69 -22
- package/dist/esm/core/resources/useResourceOperationActions.js.map +1 -1
- package/dist/esm/core/resources/useResourceOperationSurface.d.ts +8 -6
- package/dist/esm/core/resources/useResourceOperationSurface.d.ts.map +1 -1
- package/dist/esm/core/resources/useResourceOperationSurface.js +3 -2
- package/dist/esm/core/resources/useResourceOperationSurface.js.map +1 -1
- package/dist/esm/core/runtime/AppRouter.d.ts.map +1 -1
- package/dist/esm/core/runtime/AppRouter.js +23 -2
- package/dist/esm/core/runtime/AppRouter.js.map +1 -1
- package/dist/esm/core/runtime/ApplicationContext.shared.d.ts +4 -2
- package/dist/esm/core/runtime/ApplicationContext.shared.d.ts.map +1 -1
- package/dist/esm/core/runtime/ApplicationContext.shared.js.map +1 -1
- package/dist/esm/core/runtime/ApplicationMainContext.d.ts +12 -2
- package/dist/esm/core/runtime/ApplicationMainContext.d.ts.map +1 -1
- package/dist/esm/core/runtime/ApplicationMainContext.js +5 -2
- package/dist/esm/core/runtime/ApplicationMainContext.js.map +1 -1
- package/dist/esm/core/runtime/domain-module.frontend.definitions.d.ts +25 -1
- package/dist/esm/core/runtime/domain-module.frontend.definitions.d.ts.map +1 -1
- package/dist/esm/core/runtime/domain-module.frontend.definitions.js +37 -1
- package/dist/esm/core/runtime/domain-module.frontend.definitions.js.map +1 -1
- package/dist/esm/core/runtime/start-application.frontend.service.d.ts +21 -2
- package/dist/esm/core/runtime/start-application.frontend.service.d.ts.map +1 -1
- package/dist/esm/core/runtime/start-application.frontend.service.js +51 -4
- package/dist/esm/core/runtime/start-application.frontend.service.js.map +1 -1
- package/dist/esm/core/security/AuthSessionContext.d.ts +11 -0
- package/dist/esm/core/security/AuthSessionContext.d.ts.map +1 -1
- package/dist/esm/core/security/AuthSessionContext.js +70 -22
- package/dist/esm/core/security/AuthSessionContext.js.map +1 -1
- package/dist/esm/core/security/StepUpAuthContext.d.ts.map +1 -1
- package/dist/esm/core/security/StepUpAuthContext.js +10 -2
- package/dist/esm/core/security/StepUpAuthContext.js.map +1 -1
- package/dist/esm/core/security/UserOrgsContext.d.ts.map +1 -1
- package/dist/esm/core/security/UserOrgsContext.js +72 -8
- package/dist/esm/core/security/UserOrgsContext.js.map +1 -1
- package/dist/esm/core/security/route-organization-access.frontend.utils.d.ts +7 -0
- 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 +8 -2
- package/dist/esm/core/security/route-organization-access.frontend.utils.js.map +1 -1
- package/dist/esm/core/security/useGrantedConsentPurposes.d.ts +30 -0
- package/dist/esm/core/security/useGrantedConsentPurposes.d.ts.map +1 -0
- package/dist/esm/core/security/useGrantedConsentPurposes.js +38 -0
- package/dist/esm/core/security/useGrantedConsentPurposes.js.map +1 -0
- package/dist/esm/core/ui/UIContext.d.ts.map +1 -1
- package/dist/esm/core/ui/UIContext.js +10 -6
- package/dist/esm/core/ui/UIContext.js.map +1 -1
- package/dist/esm/core/ui/color-conversion.utils.d.ts +20 -0
- package/dist/esm/core/ui/color-conversion.utils.d.ts.map +1 -1
- package/dist/esm/core/ui/color-conversion.utils.js +39 -5
- package/dist/esm/core/ui/color-conversion.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 +22 -2
- package/dist/esm/core/ui/themes/default.theme.js.map +1 -1
- package/dist/esm/core/ui/ui.frontend.schemas.d.ts +6 -6
- package/dist/esm/core/ui/ui.frontend.schemas.d.ts.map +1 -1
- package/dist/esm/core/ui/ui.frontend.schemas.js +3 -3
- package/dist/esm/core/ui/ui.frontend.schemas.js.map +1 -1
- package/dist/esm/index.d.ts +10 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +19 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/testing/app-shell-placement-coverage.d.ts +43 -0
- package/dist/esm/testing/app-shell-placement-coverage.d.ts.map +1 -0
- package/dist/esm/testing/app-shell-placement-coverage.js +114 -0
- package/dist/esm/testing/app-shell-placement-coverage.js.map +1 -0
- package/dist/esm/testing/mock-builders.d.ts.map +1 -1
- package/dist/esm/testing/mock-builders.js +5 -0
- package/dist/esm/testing/mock-builders.js.map +1 -1
- package/dist/esm/testing.d.ts +1 -0
- package/dist/esm/testing.d.ts.map +1 -1
- package/dist/esm/testing.js +1 -0
- package/dist/esm/testing.js.map +1 -1
- package/package.json +9 -7
- package/dist/esm/core/navigation/useIsStackEntryActive.js +0 -15
- package/dist/tsconfig.build.tsbuildinfo +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceRegistryContext.js","sourceRoot":"","sources":["../../../../../src/core/resources/ResourceRegistryContext.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { ResourceReadCacheFrontendService } from '~wildo-frontend-lib/core/resources/resource-read-cache.frontend.service';\nimport {\n CoreResourceOperation,\n ResourceConfiguration_OperationPath,\n ResourcesConfig_OperationPathUtils,\n validateRequiredForeignKeyFillability,\n ForeignKeyFillabilityViolationSeverity,\n} from '@wildo-ai/saas-models';\n\nimport React, { createContext, ReactNode, useCallback, useEffect, useMemo } from 'react';\nimport { envLoader } from '~wildo-frontend-lib/core/runtime/env-variable-loader.frontend.service';\nimport {\n ResourceOperationCallParameters,\n ResourceSearchCallParameters\n} from '~wildo-frontend-lib/core/requests/wildo-http-client-resources.frontend.service';\nimport { RequestOptions, TokenRenewalHandler, StepUpAuthHandler } from '~wildo-frontend-lib/core/requests/wildo-http-client.frontend.service';\nimport { ResourcesRepositoryFrontendService } from './resources-repository.frontend.service';\nimport type { AnyFrontendResourceConfiguration, FrontendResourceConfiguration_Operation, FrontendResourcesRegistry } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport { resolveEffectiveCoreOperationFromOperation } from '~wildo-frontend-lib/core/resources/operation-semantics.frontend.utils';\nimport { OperationEnabledConditionUtils, type EvaluateEnabledConditionParams } from '~wildo-frontend-lib/core/resources/utils/operation-enabled-condition.frontend.utils';\n\n/**\n * Resource Registry Context\n * Manages resource configurations and operations\n *\n * ARCHITECTURE NOTE (Scopes):\n * - The base provider is `ResourceRegistryProvider`, which exposes `doOperation()` and the registry.\n * - The app can optionally wrap it with `ScopedResourceRegistryProvider` (in `core/resources/ScopedResourceRegistryProvider.tsx`).\n * That wrapper **overrides `doOperation()`** to automatically inject the current `AppScope` into\n * `parameters.contextualParameters` for nested callers (strictly relevant-only).\n * - This means `useResourceRegistry().doOperation(...)` may be the base implementation OR a scoped override,\n * depending on provider hierarchy.\n */\n\nexport type OperationPathKey = string;\nexport type OperationPathIdentifier = ResourceConfiguration_OperationPath<any, any> | OperationPathKey;\n\nexport interface ResourceRegistryContextType {\n // State\n registry: FrontendResourcesRegistry;\n\n // Main execution method\n /**\n * Execute a resource operation (API_CALL or SEARCH).\n *\n * IMPORTANT:\n * This function can be transparently overridden by a nested provider (see note above),\n * so callers usually should NOT manually inject global scope/context unless they are intentionally\n * overriding/adding to the contextual parameters for a specific call.\n *\n * Merge semantics (when scoped):\n * - scoped provider injects relevant AppScope fields\n * - explicit `parameters.contextualParameters` passed by the caller override injected values\n */\n doOperation: <TResponse = any>(\n operationPath: OperationPathIdentifier,\n parameters: ResourceOperationCallParameters | ResourceSearchCallParameters,\n options?: RequestOptions\n ) => Promise<TResponse>;\n\n // EnabledCondition helpers\n /**\n * Evaluate `operation.enabledCondition()` with the current registry + doOperation.\n * This is used by UI to decide whether an operation should be shown/enabled.\n */\n evaluateOperationEnabled: <TMainSchema = any>(\n params: Omit<EvaluateEnabledConditionParams<TMainSchema>, 'resourcesRegistry' | 'doOperation'>\n ) => Promise<boolean>;\n\n /**\n * Static context-needs extraction for an operation (enabledCondition + prefix ops).\n */\n getOperationContextNeeds: (\n operation: FrontendResourceConfiguration_Operation<any, any, any>\n ) => { needsObjectContext: boolean; needsUserContext: boolean };\n\n // Helpers\n hasResource: (resourceName: string) => boolean;\n getResourceConfiguration: (resourceName: string) => AnyFrontendResourceConfiguration | undefined;\n getResourcesRegistry: () => FrontendResourcesRegistry;\n getAvailableResourceTypes: () => string[];\n getAvailableOperationPaths: () => string[];\n\n /**\n * The engine-wide resource READ cache.\n *\n * Exposed so the WebSocket layer can install its coverage authority and invalidate through it.\n * The CACHE is exposed rather than the HTTP client that owns it: a consumer of this context has no\n * business reaching the transport, and narrowing the surface keeps it that way.\n */\n getReadCache: () => ResourceReadCacheFrontendService;\n \n // Auth token management\n setAuthToken: (token: string | null) => void;\n setTokenRenewalHandler: (handler: TokenRenewalHandler) => void;\n setStepUpAuthHandler: (handler: StepUpAuthHandler | null) => void;\n setConsumableToken: (token: string | null) => void;\n}\n\nexport interface ResourceRegistryProviderProps {\n children: ReactNode;\n resourcesRepository: ResourcesRepositoryFrontendService;\n}\n\n/**\n * Resource Registry Context\n * Exported for use in separate hook file (Fast Refresh compatibility)\n * @internal - Use useResourceRegistry() hook instead of accessing this directly\n */\nexport const ResourceRegistryContext: React.Context<ResourceRegistryContextType | undefined> = createContext<ResourceRegistryContextType | undefined>(undefined);\n\n/**\n * ResourceRegistryProvider - Simplified version without location dependency\n * isActive computation is now handled by NavigationProvider which is more appropriate\n */\nexport const ResourceRegistryProvider: React.FC<ResourceRegistryProviderProps> = ({ children, resourcesRepository }) => {\n // Get the registry and resources HTTP client from the repository service\n const registry = resourcesRepository.getResourcesRegistry();\n const resourcesHttpClient = resourcesRepository.getResourcesHttpClient();\n // The base application HTTP client (exposed app-wide as `useApplication().httpClient`)\n // is a SEPARATE instance from the resources client above. Resource-integrated file\n // operations (`FormFieldFile` upload / metadata / delete) run through it, so it must\n // receive the SAME auth token / renewal handler / step-up handler / consumable token\n // that the resources client gets — otherwise those file requests go out unauthenticated\n // (401). File upload was the first authenticated consumer of this base client, so this\n // wiring gap was previously invisible.\n const applicationHttpClient = resourcesRepository.getApplicationHttpClient();\n\n // Dev-only mirror of the backend startup guardrail: surface required-FK\n // fillability violations in the browser console so a frontend-focused dev sees\n // them where the create form actually lives. The backend is the AUTHORITATIVE\n // gate (it hard-fails on FAIL severity), so here we only warn — never throw,\n // and always fail-open so a validator edge case can't affect app load.\n useEffect(() => {\n if (!envLoader.isDevelopment()) {\n return;\n }\n try {\n const violations = validateRequiredForeignKeyFillability(registry.resourceConfigurations as any);\n for (const violation of violations) {\n const label = violation.severity === ForeignKeyFillabilityViolationSeverity.FAIL ? 'FAIL' : 'WARN';\n // eslint-disable-next-line no-console\n console.warn(`[required-fk-fillability:${label}] ${violation.kind}: ${violation.message}`);\n }\n } catch {\n // Fail-open — never let the guardrail affect app load.\n }\n }, [registry]);\n\n /**\n * Main operation execution method - handles both regular and search operations\n */\n const doOperation = useCallback(async <TResponse = any>(\n operationPath: OperationPathIdentifier,\n parameters: ResourceOperationCallParameters | ResourceSearchCallParameters,\n options?: RequestOptions\n ): Promise<TResponse> => {\n // Convert OperationPath object to string key if needed\n const operationPathKey = typeof operationPath === 'string' \n ? operationPath \n : ResourcesConfig_OperationPathUtils.createOperationPathKey(operationPath);\n\n const operation = resourcesHttpClient.getOperationDetails(operationPathKey);\n const isSearchOperation = operation\n ? resolveEffectiveCoreOperationFromOperation(operation) === CoreResourceOperation.SEARCH\n : ResourcesConfig_OperationPathUtils.parseOperationPathKey(operationPathKey).operationIdentifier === CoreResourceOperation.SEARCH;\n\n if (isSearchOperation) {\n // Call search-specific method\n return resourcesHttpClient.executeSearchOperation<TResponse>(\n operationPathKey,\n parameters as ResourceSearchCallParameters,\n options\n );\n } else {\n // Call regular operation method\n return resourcesHttpClient.doOperation<TResponse>(\n operationPathKey,\n parameters as ResourceOperationCallParameters,\n options\n );\n }\n }, [resourcesHttpClient]);\n\n /**\n * Evaluate if an operation is enabled (enabledCondition).\n * Centralized here so all consumers automatically benefit from any doOperation overrides\n * (e.g. ScopedResourceRegistryProvider injecting AppScope).\n */\n const evaluateOperationEnabled = useCallback(\n async <TMainSchema = any>(\n params: Omit<EvaluateEnabledConditionParams<TMainSchema>, 'resourcesRegistry' | 'doOperation'>\n ): Promise<boolean> => {\n return OperationEnabledConditionUtils.evaluateEnabledCondition({\n ...(params as any),\n resourcesRegistry: registry,\n doOperation,\n });\n },\n [registry, doOperation]\n );\n\n const getOperationContextNeeds = useCallback((\n operation: FrontendResourceConfiguration_Operation<any, any, any>\n ) => {\n return OperationEnabledConditionUtils.getOperationContextNeeds(operation);\n }, []);\n\n /**\n * Check if resource is available\n */\n const hasResource = useCallback((resourceName: string): boolean => {\n return resourceName in registry.resourceConfigurations;\n }, [registry]);\n\n /**\n * Get resource configuration\n */\n const getResourceConfiguration = useCallback((resourceName: string): AnyFrontendResourceConfiguration | undefined => {\n return registry.resourceConfigurations[resourceName];\n }, [registry]);\n\n /**\n * Get the full resources registry\n */\n const getResourcesRegistry = useCallback((): FrontendResourcesRegistry => {\n return registry;\n }, [registry]);\n\n /**\n * Get available resource types\n */\n const getAvailableResourceTypes = useCallback((): string[] => {\n return Object.keys(registry.resourceConfigurations);\n }, [registry]);\n\n /**\n * Get available operation paths\n */\n const getAvailableOperationPaths = useCallback((): string[] => {\n return resourcesHttpClient.getAvailableOperationPaths();\n }, [resourcesHttpClient]);\n \n /**\n * Set authentication token for resource operations\n */\n const setAuthToken = useCallback((token: string | null): void => {\n if (token) {\n resourcesHttpClient.setAuthToken(token);\n applicationHttpClient.setAuthToken(token);\n } else {\n resourcesHttpClient.clearAuthToken();\n applicationHttpClient.clearAuthToken();\n }\n }, [resourcesHttpClient, applicationHttpClient]);\n\n /**\n * Set token renewal handler for resource operations.\n * Called by AuthSessionContext to enable automatic token refresh on 401s\n * from the resources HTTP client (not just the manual calls client).\n */\n const setTokenRenewalHandler = useCallback((handler: TokenRenewalHandler): void => {\n resourcesHttpClient.setTokenRenewalHandler(handler);\n applicationHttpClient.setTokenRenewalHandler(handler);\n }, [resourcesHttpClient, applicationHttpClient]);\n\n const setStepUpAuthHandler = useCallback((handler: StepUpAuthHandler | null): void => {\n resourcesHttpClient.setStepUpAuthHandler(handler);\n applicationHttpClient.setStepUpAuthHandler(handler);\n }, [resourcesHttpClient, applicationHttpClient]);\n\n const setConsumableToken = useCallback((token: string | null): void => {\n resourcesHttpClient.setConsumableToken(token);\n applicationHttpClient.setConsumableToken(token);\n }, [resourcesHttpClient, applicationHttpClient]);\n\n /*\n * Stable across renders, like every other member below.\n *\n * It used to be an inline arrow in the value object, which made it a NEW identity every render.\n * `ResourceReadCacheBridge` depended on it in an effect whose job includes installing the cache's\n * coverage authority — and installing an authority CLEARS the cache — so the read cache was emptied\n * on essentially every render and could never do its job (issue #248).\n */\n const getReadCache = useCallback(\n (): ResourceReadCacheFrontendService => resourcesHttpClient.getReadCache(),\n [resourcesHttpClient],\n );\n\n /*\n * MEMOIZED, and that is load-bearing rather than tidy.\n *\n * This value reaches 75 consumer files through `useResourceRegistry()`. Rebuilt every render, it\n * re-rendered all of them and handed each a NEW identity for every function on it — so any consumer\n * placing one in a dependency array got an effect that fired on every render. That is not\n * hypothetical: it emptied the resource read cache continuously until #248 was fixed, and it\n * defeated `ScopedResourceRegistryProvider`'s own `useMemo`, which depends on this object as\n * `base`.\n *\n * Every member is itself a `useCallback` over the repository's stable service instances, so this\n * memo only changes when the registry or a client actually does.\n */\n const value: ResourceRegistryContextType = useMemo(() => ({\n // State\n registry,\n\n // Main execution method\n doOperation,\n\n // EnabledCondition helpers\n evaluateOperationEnabled,\n getOperationContextNeeds,\n\n // Helpers\n hasResource,\n getResourceConfiguration,\n getResourcesRegistry,\n getAvailableResourceTypes,\n getAvailableOperationPaths,\n getReadCache,\n\n // Auth\n setAuthToken,\n setTokenRenewalHandler,\n setStepUpAuthHandler,\n setConsumableToken,\n }), [\n registry,\n doOperation,\n evaluateOperationEnabled,\n getOperationContextNeeds,\n hasResource,\n getResourceConfiguration,\n getResourcesRegistry,\n getAvailableResourceTypes,\n getAvailableOperationPaths,\n getReadCache,\n setAuthToken,\n setTokenRenewalHandler,\n setStepUpAuthHandler,\n setConsumableToken,\n ]);\n\n return <ResourceRegistryContext.Provider value={value}>{children}</ResourceRegistryContext.Provider>;\n};\n\n// useResourceRegistry hook is now in separate file: ./useResourceRegistry.ts\n// This separation is required for React Fast Refresh compatibility\n"]}
|
|
1
|
+
{"version":3,"file":"ResourceRegistryContext.js","sourceRoot":"","sources":["../../../../../src/core/resources/ResourceRegistryContext.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { ResourceReadCacheFrontendService } from '~wildo-frontend-lib/core/resources/resource-read-cache.frontend.service';\nimport {\n CoreResourceOperation,\n ResourceConfiguration_OperationPath,\n ResourcesConfig_OperationPathUtils,\n validateRequiredForeignKeyFillability,\n ForeignKeyFillabilityViolationSeverity,\n} from '@wildo-ai/saas-models';\n\nimport React, { createContext, ReactNode, useCallback, useContext, useEffect, useMemo } from 'react';\nimport { envLoader } from '~wildo-frontend-lib/core/runtime/env-variable-loader.frontend.service';\nimport {\n ResourceOperationCallParameters,\n ResourceSearchCallParameters\n} from '~wildo-frontend-lib/core/requests/wildo-http-client-resources.frontend.service';\nimport { RequestOptions, TokenRenewalHandler, StepUpAuthHandler } from '~wildo-frontend-lib/core/requests/wildo-http-client.frontend.service';\nimport { ResourcesRepositoryFrontendService } from './resources-repository.frontend.service';\nimport { FrontendResourceUtils } from './frontend-resource.utils';\nimport { I18nContext } from '~wildo-frontend-lib/core/i18n/I18nContext';\nimport type { AnyFrontendResourceConfiguration, FrontendResourceConfiguration_Operation, FrontendResourcesRegistry } from '~wildo-frontend-lib/core/resources/resources.frontend.schemas';\nimport { resolveEffectiveCoreOperationFromOperation } from '~wildo-frontend-lib/core/resources/operation-semantics.frontend.utils';\nimport { OperationEnabledConditionUtils, type EvaluateEnabledConditionParams } from '~wildo-frontend-lib/core/resources/utils/operation-enabled-condition.frontend.utils';\n\n/**\n * Resource Registry Context\n * Manages resource configurations and operations\n *\n * ARCHITECTURE NOTE (Scopes):\n * - The base provider is `ResourceRegistryProvider`, which exposes `doOperation()` and the registry.\n * - The app can optionally wrap it with `ScopedResourceRegistryProvider` (in `core/resources/ScopedResourceRegistryProvider.tsx`).\n * That wrapper **overrides `doOperation()`** to automatically inject the current `AppScope` into\n * `parameters.contextualParameters` for nested callers (strictly relevant-only).\n * - This means `useResourceRegistry().doOperation(...)` may be the base implementation OR a scoped override,\n * depending on provider hierarchy.\n */\n\nexport type OperationPathKey = string;\nexport type OperationPathIdentifier = ResourceConfiguration_OperationPath<any, any> | OperationPathKey;\n\nexport interface ResourceRegistryContextType {\n // State\n registry: FrontendResourcesRegistry;\n\n // Main execution method\n /**\n * Execute a resource operation (API_CALL or SEARCH).\n *\n * IMPORTANT:\n * This function can be transparently overridden by a nested provider (see note above),\n * so callers usually should NOT manually inject global scope/context unless they are intentionally\n * overriding/adding to the contextual parameters for a specific call.\n *\n * Merge semantics (when scoped):\n * - scoped provider injects relevant AppScope fields\n * - explicit `parameters.contextualParameters` passed by the caller override injected values\n */\n doOperation: <TResponse = any>(\n operationPath: OperationPathIdentifier,\n parameters: ResourceOperationCallParameters | ResourceSearchCallParameters,\n options?: RequestOptions\n ) => Promise<TResponse>;\n\n // EnabledCondition helpers\n /**\n * Evaluate `operation.enabledCondition()` with the current registry + doOperation.\n * This is used by UI to decide whether an operation should be shown/enabled.\n */\n evaluateOperationEnabled: <TMainSchema = any>(\n params: Omit<EvaluateEnabledConditionParams<TMainSchema>, 'resourcesRegistry' | 'doOperation'>\n ) => Promise<boolean>;\n\n /**\n * Static context-needs extraction for an operation (enabledCondition + prefix ops).\n */\n getOperationContextNeeds: (\n operation: FrontendResourceConfiguration_Operation<any, any, any>\n ) => { needsObjectContext: boolean; needsUserContext: boolean };\n\n // Helpers\n hasResource: (resourceName: string) => boolean;\n getResourceConfiguration: (resourceName: string) => AnyFrontendResourceConfiguration | undefined;\n getResourcesRegistry: () => FrontendResourcesRegistry;\n getAvailableResourceTypes: () => string[];\n getAvailableOperationPaths: () => string[];\n\n /**\n * The engine-wide resource READ cache.\n *\n * Exposed so the WebSocket layer can install its coverage authority and invalidate through it.\n * The CACHE is exposed rather than the HTTP client that owns it: a consumer of this context has no\n * business reaching the transport, and narrowing the surface keeps it that way.\n */\n getReadCache: () => ResourceReadCacheFrontendService;\n \n // Auth token management\n setAuthToken: (token: string | null) => void;\n setTokenRenewalHandler: (handler: TokenRenewalHandler) => void;\n setStepUpAuthHandler: (handler: StepUpAuthHandler | null) => void;\n setConsumableToken: (token: string | null) => void;\n}\n\nexport interface ResourceRegistryProviderProps {\n children: ReactNode;\n resourcesRepository: ResourcesRepositoryFrontendService;\n}\n\n/**\n * Resource Registry Context\n * Exported for use in separate hook file (Fast Refresh compatibility)\n * @internal - Use useResourceRegistry() hook instead of accessing this directly\n */\nexport const ResourceRegistryContext: React.Context<ResourceRegistryContextType | undefined> = createContext<ResourceRegistryContextType | undefined>(undefined);\n\n/**\n * ResourceRegistryProvider - Simplified version without location dependency\n * isActive computation is now handled by NavigationProvider which is more appropriate\n */\nexport const ResourceRegistryProvider: React.FC<ResourceRegistryProviderProps> = ({ children, resourcesRepository }) => {\n // Get the registry and resources HTTP client from the repository service\n const registry = resourcesRepository.getResourcesRegistry();\n const resourcesHttpClient = resourcesRepository.getResourcesHttpClient();\n // The base application HTTP client (exposed app-wide as `useApplication().httpClient`)\n // is a SEPARATE instance from the resources client above. Resource-integrated file\n // operations (`FormFieldFile` upload / metadata / delete) run through it, so it must\n // receive the SAME auth token / renewal handler / step-up handler / consumable token\n // that the resources client gets — otherwise those file requests go out unauthenticated\n // (401). File upload was the first authenticated consumer of this base client, so this\n // wiring gap was previously invisible.\n const applicationHttpClient = resourcesRepository.getApplicationHttpClient();\n\n // Dev-only mirror of the backend startup guardrail: surface required-FK\n // fillability violations in the browser console so a frontend-focused dev sees\n // them where the create form actually lives. The backend is the AUTHORITATIVE\n // gate (it hard-fails on FAIL severity), so here we only warn — never throw,\n // and always fail-open so a validator edge case can't affect app load.\n useEffect(() => {\n if (!envLoader.isDevelopment()) {\n return;\n }\n try {\n const violations = validateRequiredForeignKeyFillability(registry.resourceConfigurations as any);\n for (const violation of violations) {\n const label = violation.severity === ForeignKeyFillabilityViolationSeverity.FAIL ? 'FAIL' : 'WARN';\n // eslint-disable-next-line no-console\n console.warn(`[required-fk-fillability:${label}] ${violation.kind}: ${violation.message}`);\n }\n } catch {\n // Fail-open — never let the guardrail affect app load.\n }\n }, [registry]);\n\n /*\n * The words some resource's instance NAME reads outside its own section (`instanceLabelSections`, #1851) — a billing\n * product named by `billing_products.<key>.name`. Requested here, once per registry, rather than by each of the ten\n * places that compute a record's name, so none of them can forget it. The sections are small (one entry per\n * catalogue item) and only resources that declare one contribute.\n *\n * Read through the context rather than `useI18n`, which throws without a provider: the registry does not need\n * words to work, and a host (or a test) mounting it without an `I18nProvider` must keep working. In the\n * application the provider always sits above it (`ApplicationMainContext`). A failed fetch is already reported\n * by the provider; the names then show their keys, which is a missing label looking missing.\n */\n const i18nContext = useContext(I18nContext);\n const requestLabelKeys = i18nContext?.requestKeys;\n const instanceLabelSectionKeys = useMemo(() => FrontendResourceUtils.collectInstanceLabelSectionKeys(registry), [registry]);\n useEffect(() => {\n if (!requestLabelKeys || instanceLabelSectionKeys.length === 0) return;\n void requestLabelKeys(instanceLabelSectionKeys).catch(() => undefined);\n }, [requestLabelKeys, instanceLabelSectionKeys]);\n\n /**\n * Main operation execution method - handles both regular and search operations\n */\n const doOperation = useCallback(async <TResponse = any>(\n operationPath: OperationPathIdentifier,\n parameters: ResourceOperationCallParameters | ResourceSearchCallParameters,\n options?: RequestOptions\n ): Promise<TResponse> => {\n // Convert OperationPath object to string key if needed\n const operationPathKey = typeof operationPath === 'string' \n ? operationPath \n : ResourcesConfig_OperationPathUtils.createOperationPathKey(operationPath);\n\n const operation = resourcesHttpClient.getOperationDetails(operationPathKey);\n const isSearchOperation = operation\n ? resolveEffectiveCoreOperationFromOperation(operation) === CoreResourceOperation.SEARCH\n : ResourcesConfig_OperationPathUtils.parseOperationPathKey(operationPathKey).operationIdentifier === CoreResourceOperation.SEARCH;\n\n if (isSearchOperation) {\n // Call search-specific method\n return resourcesHttpClient.executeSearchOperation<TResponse>(\n operationPathKey,\n parameters as ResourceSearchCallParameters,\n options\n );\n } else {\n // Call regular operation method\n return resourcesHttpClient.doOperation<TResponse>(\n operationPathKey,\n parameters as ResourceOperationCallParameters,\n options\n );\n }\n }, [resourcesHttpClient]);\n\n /**\n * Evaluate if an operation is enabled (enabledCondition).\n * Centralized here so all consumers automatically benefit from any doOperation overrides\n * (e.g. ScopedResourceRegistryProvider injecting AppScope).\n */\n const evaluateOperationEnabled = useCallback(\n async <TMainSchema = any>(\n params: Omit<EvaluateEnabledConditionParams<TMainSchema>, 'resourcesRegistry' | 'doOperation'>\n ): Promise<boolean> => {\n return OperationEnabledConditionUtils.evaluateEnabledCondition({\n ...(params as any),\n resourcesRegistry: registry,\n doOperation,\n });\n },\n [registry, doOperation]\n );\n\n const getOperationContextNeeds = useCallback((\n operation: FrontendResourceConfiguration_Operation<any, any, any>\n ) => {\n return OperationEnabledConditionUtils.getOperationContextNeeds(operation);\n }, []);\n\n /**\n * Check if resource is available\n */\n const hasResource = useCallback((resourceName: string): boolean => {\n return resourceName in registry.resourceConfigurations;\n }, [registry]);\n\n /**\n * Get resource configuration\n */\n const getResourceConfiguration = useCallback((resourceName: string): AnyFrontendResourceConfiguration | undefined => {\n return registry.resourceConfigurations[resourceName];\n }, [registry]);\n\n /**\n * Get the full resources registry\n */\n const getResourcesRegistry = useCallback((): FrontendResourcesRegistry => {\n return registry;\n }, [registry]);\n\n /**\n * Get available resource types\n */\n const getAvailableResourceTypes = useCallback((): string[] => {\n return Object.keys(registry.resourceConfigurations);\n }, [registry]);\n\n /**\n * Get available operation paths\n */\n const getAvailableOperationPaths = useCallback((): string[] => {\n return resourcesHttpClient.getAvailableOperationPaths();\n }, [resourcesHttpClient]);\n \n /**\n * Set authentication token for resource operations\n */\n const setAuthToken = useCallback((token: string | null): void => {\n if (token) {\n resourcesHttpClient.setAuthToken(token);\n applicationHttpClient.setAuthToken(token);\n } else {\n resourcesHttpClient.clearAuthToken();\n applicationHttpClient.clearAuthToken();\n }\n }, [resourcesHttpClient, applicationHttpClient]);\n\n /**\n * Set token renewal handler for resource operations.\n * Called by AuthSessionContext to enable automatic token refresh on 401s\n * from the resources HTTP client (not just the manual calls client).\n */\n const setTokenRenewalHandler = useCallback((handler: TokenRenewalHandler): void => {\n resourcesHttpClient.setTokenRenewalHandler(handler);\n applicationHttpClient.setTokenRenewalHandler(handler);\n }, [resourcesHttpClient, applicationHttpClient]);\n\n const setStepUpAuthHandler = useCallback((handler: StepUpAuthHandler | null): void => {\n resourcesHttpClient.setStepUpAuthHandler(handler);\n applicationHttpClient.setStepUpAuthHandler(handler);\n }, [resourcesHttpClient, applicationHttpClient]);\n\n const setConsumableToken = useCallback((token: string | null): void => {\n resourcesHttpClient.setConsumableToken(token);\n applicationHttpClient.setConsumableToken(token);\n }, [resourcesHttpClient, applicationHttpClient]);\n\n /*\n * Stable across renders, like every other member below.\n *\n * It used to be an inline arrow in the value object, which made it a NEW identity every render.\n * `ResourceReadCacheBridge` depended on it in an effect whose job includes installing the cache's\n * coverage authority — and installing an authority CLEARS the cache — so the read cache was emptied\n * on essentially every render and could never do its job (issue #248).\n */\n const getReadCache = useCallback(\n (): ResourceReadCacheFrontendService => resourcesHttpClient.getReadCache(),\n [resourcesHttpClient],\n );\n\n /*\n * MEMOIZED, and that is load-bearing rather than tidy.\n *\n * This value reaches 75 consumer files through `useResourceRegistry()`. Rebuilt every render, it\n * re-rendered all of them and handed each a NEW identity for every function on it — so any consumer\n * placing one in a dependency array got an effect that fired on every render. That is not\n * hypothetical: it emptied the resource read cache continuously until #248 was fixed, and it\n * defeated `ScopedResourceRegistryProvider`'s own `useMemo`, which depends on this object as\n * `base`.\n *\n * Every member is itself a `useCallback` over the repository's stable service instances, so this\n * memo only changes when the registry or a client actually does.\n */\n const value: ResourceRegistryContextType = useMemo(() => ({\n // State\n registry,\n\n // Main execution method\n doOperation,\n\n // EnabledCondition helpers\n evaluateOperationEnabled,\n getOperationContextNeeds,\n\n // Helpers\n hasResource,\n getResourceConfiguration,\n getResourcesRegistry,\n getAvailableResourceTypes,\n getAvailableOperationPaths,\n getReadCache,\n\n // Auth\n setAuthToken,\n setTokenRenewalHandler,\n setStepUpAuthHandler,\n setConsumableToken,\n }), [\n registry,\n doOperation,\n evaluateOperationEnabled,\n getOperationContextNeeds,\n hasResource,\n getResourceConfiguration,\n getResourcesRegistry,\n getAvailableResourceTypes,\n getAvailableOperationPaths,\n getReadCache,\n setAuthToken,\n setTokenRenewalHandler,\n setStepUpAuthHandler,\n setConsumableToken,\n ]);\n\n return <ResourceRegistryContext.Provider value={value}>{children}</ResourceRegistryContext.Provider>;\n};\n\n// useResourceRegistry hook is now in separate file: ./useResourceRegistry.ts\n// This separation is required for React Fast Refresh compatibility\n"]}
|
|
@@ -38,7 +38,7 @@ function readPersistedResourceIdFromResult(result) {
|
|
|
38
38
|
* `id` is read here DELIBERATELY, and it is not an adapter fallback.
|
|
39
39
|
*
|
|
40
40
|
* Resource rows carry `_id` on every adapter. The one operation result that names the identity
|
|
41
|
-
* `id` is the DELETE response (`DefaultDeleteResponseSchema` = `{ id
|
|
41
|
+
* `id` is the DELETE response (`DefaultDeleteResponseSchema` = `{ id }`), which is a
|
|
42
42
|
* REST wire convention rather than a storage detail — so this reads a documented contract, not
|
|
43
43
|
* "whatever the database happened to attach".
|
|
44
44
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-resource-identifiers.frontend.utils.js","sourceRoot":"","sources":["../../../../../src/core/resources/context-resource-identifiers.frontend.utils.ts"],"names":[],"mappings":"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","sourcesContent":["import type { FrontendResourceOperationContext } from './resources.frontend.schemas';\nimport { frontendResourceUtils } from './frontend-resource.utils';\n\nexport type ContextResourceIdentifiersInput =\n | Map<string, string>\n | FrontendResourceOperationContext['contextResourceIdentifiers']\n | Record<string, string | { fieldIdentifier?: string; resourceId?: string }>\n | undefined;\n\n/**\n * Flattens runtime context identifiers into the string-only shape expected by\n * event payloads, websocket room claims, and backend execution-context builders.\n * Object-shaped identifiers keep both the original key and their explicit FK\n * alias so resource-type and relationship-field subscribers compare equally.\n */\nexport function normalizeContextResourceIdentifiersForTransport(\n contextResourceIdentifiers: ContextResourceIdentifiersInput,\n): Record<string, string> {\n if (!contextResourceIdentifiers) {\n return {};\n }\n\n if (contextResourceIdentifiers instanceof Map) {\n return Object.fromEntries(contextResourceIdentifiers.entries());\n }\n\n const normalized: Record<string, string> = {};\n for (const [key, value] of Object.entries(contextResourceIdentifiers)) {\n const resourceId = frontendResourceUtils.getResourceId(value);\n if (resourceId.length === 0) {\n continue;\n }\n\n normalized[key] = resourceId;\n const fieldIdentifier = frontendResourceUtils.getFieldIdentifier(value);\n if (fieldIdentifier) {\n normalized[fieldIdentifier] = resourceId;\n }\n }\n\n return normalized;\n}\n\nfunction readPersistedResourceIdFromResult(result: unknown): string | undefined {\n if (typeof result === 'string' && result.length > 0) {\n return result;\n }\n\n if (!result || typeof result !== 'object') {\n return undefined;\n }\n\n const resultRecord = result as Record<string, unknown>;\n /**\n * `id` is read here DELIBERATELY, and it is not an adapter fallback.\n *\n * Resource rows carry `_id` on every adapter. The one operation result that names the identity\n * `id` is the DELETE response (`DefaultDeleteResponseSchema` = `{ id
|
|
1
|
+
{"version":3,"file":"context-resource-identifiers.frontend.utils.js","sourceRoot":"","sources":["../../../../../src/core/resources/context-resource-identifiers.frontend.utils.ts"],"names":[],"mappings":"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","sourcesContent":["import type { FrontendResourceOperationContext } from './resources.frontend.schemas';\nimport { frontendResourceUtils } from './frontend-resource.utils';\n\nexport type ContextResourceIdentifiersInput =\n | Map<string, string>\n | FrontendResourceOperationContext['contextResourceIdentifiers']\n | Record<string, string | { fieldIdentifier?: string; resourceId?: string }>\n | undefined;\n\n/**\n * Flattens runtime context identifiers into the string-only shape expected by\n * event payloads, websocket room claims, and backend execution-context builders.\n * Object-shaped identifiers keep both the original key and their explicit FK\n * alias so resource-type and relationship-field subscribers compare equally.\n */\nexport function normalizeContextResourceIdentifiersForTransport(\n contextResourceIdentifiers: ContextResourceIdentifiersInput,\n): Record<string, string> {\n if (!contextResourceIdentifiers) {\n return {};\n }\n\n if (contextResourceIdentifiers instanceof Map) {\n return Object.fromEntries(contextResourceIdentifiers.entries());\n }\n\n const normalized: Record<string, string> = {};\n for (const [key, value] of Object.entries(contextResourceIdentifiers)) {\n const resourceId = frontendResourceUtils.getResourceId(value);\n if (resourceId.length === 0) {\n continue;\n }\n\n normalized[key] = resourceId;\n const fieldIdentifier = frontendResourceUtils.getFieldIdentifier(value);\n if (fieldIdentifier) {\n normalized[fieldIdentifier] = resourceId;\n }\n }\n\n return normalized;\n}\n\nfunction readPersistedResourceIdFromResult(result: unknown): string | undefined {\n if (typeof result === 'string' && result.length > 0) {\n return result;\n }\n\n if (!result || typeof result !== 'object') {\n return undefined;\n }\n\n const resultRecord = result as Record<string, unknown>;\n /**\n * `id` is read here DELIBERATELY, and it is not an adapter fallback.\n *\n * Resource rows carry `_id` on every adapter. The one operation result that names the identity\n * `id` is the DELETE response (`DefaultDeleteResponseSchema` = `{ id }`), which is a\n * REST wire convention rather than a storage detail — so this reads a documented contract, not\n * \"whatever the database happened to attach\".\n *\n * The distinction matters because the sibling fallbacks elsewhere were the other thing: `id` is\n * also Mongoose's built-in virtual, present only on surrogate-primary-key resources and never on\n * PostgreSQL. Those arms were removed; this one is kept because a delete result genuinely has no\n * `_id`.\n */\n const directId = resultRecord._id ?? resultRecord.id;\n if (typeof directId === 'string' && directId.length > 0) {\n return directId;\n }\n\n for (const nestedKey of ['responseData', 'data', 'result']) {\n const nestedId = readPersistedResourceIdFromResult(resultRecord[nestedKey]);\n if (nestedId) {\n return nestedId;\n }\n }\n\n return undefined;\n}\n\n/**\n * Outcome events need the real child-row id when a context-addressed mutation\n * returns it. Add that identity without discarding the parent/FK identifiers\n * used to route the operation.\n *\n * A BULK operation's result names no single subject, even when it is one row: a one-row\n * selection answers with that row, and naming it here turned the outcome's context from \"this\n * collection\" into \"this todo\". The bulk bar matches its outcome on the collection's context, so\n * it never cleared the selection after a one-row bulk action. Pass `isBulkOperation` and the\n * result is not read.\n */\nexport function normalizeContextResourceIdentifiersForOutcome(\n params: {\n contextResourceIdentifiers: ContextResourceIdentifiersInput;\n resourceType: string;\n result?: unknown;\n isBulkOperation?: boolean;\n },\n): Record<string, string> {\n const normalized = normalizeContextResourceIdentifiersForTransport(params.contextResourceIdentifiers);\n const resultResourceId = params.isBulkOperation === true ? undefined : readPersistedResourceIdFromResult(params.result);\n if (resultResourceId) {\n normalized[params.resourceType] = resultResourceId;\n if (\n params.contextResourceIdentifiers\n && !(params.contextResourceIdentifiers instanceof Map)\n ) {\n const resourceIdentifier = params.contextResourceIdentifiers[params.resourceType];\n const fieldIdentifier = frontendResourceUtils.getFieldIdentifier(resourceIdentifier);\n if (fieldIdentifier) {\n normalized[fieldIdentifier] = resultResourceId;\n }\n }\n }\n\n return normalized;\n}\n"]}
|
|
@@ -259,6 +259,14 @@ export declare class FrontendResourceUtils {
|
|
|
259
259
|
static buildForeignKeySearchParams(query?: string, limit?: number): {
|
|
260
260
|
queryParameters: Record<string, string | number>;
|
|
261
261
|
};
|
|
262
|
+
/**
|
|
263
|
+
* Every label section some resource's instance name reads beyond its own words (`instanceLabelSections`, #1851),
|
|
264
|
+
* as the i18n keys to request: unique and sorted, so the result is stable for one registry. Requested once by
|
|
265
|
+
* `ResourceRegistryProvider`, which is what lets each caller of {@link computeFrontendResourceLabel} stay unaware
|
|
266
|
+
* of which resource needs which section. A backend-only section (`BACKEND_ONLY_I18N_SECTIONS`) is left out: the
|
|
267
|
+
* browser is never served one.
|
|
268
|
+
*/
|
|
269
|
+
static collectInstanceLabelSectionKeys(registry: FrontendResourcesRegistry | undefined): string[];
|
|
262
270
|
/**
|
|
263
271
|
* Compute a resource label using the canonical resource configuration contract:
|
|
264
272
|
* `resourceConfig.frontendConfiguration.getFrontendResourceLabel`.
|
|
@@ -277,9 +285,22 @@ export declare class FrontendResourceUtils {
|
|
|
277
285
|
resourceType: ResourceType;
|
|
278
286
|
registry: FrontendResourcesRegistry;
|
|
279
287
|
currentObject: unknown;
|
|
280
|
-
|
|
288
|
+
/**
|
|
289
|
+
* REQUIRED (#1454 review). It was optional with an identity fallback, and three callers omitted
|
|
290
|
+
* it, so a label callback that words its row through the label tree rendered the key — then its
|
|
291
|
+
* own fallback, a ref — in every list card while the page header read correctly. Required, the
|
|
292
|
+
* next caller cannot repeat that without a compile error.
|
|
293
|
+
*/
|
|
294
|
+
t: (toTranslate: string, translateParams?: {
|
|
281
295
|
[key: string]: any;
|
|
282
296
|
}) => string;
|
|
297
|
+
/**
|
|
298
|
+
* REQUIRED for the same reason as `t`: a label callback that formats a date gets the viewer's regional
|
|
299
|
+
* format only if every caller hands it over, and an optional one would be forgotten by the next caller.
|
|
300
|
+
*/
|
|
301
|
+
formatDate: (value: Date | string | number) => string;
|
|
302
|
+
/** REQUIRED beside `formatDate`, for a name that is an instant rather than a day. */
|
|
303
|
+
formatDateTime: (value: Date | string | number) => string;
|
|
283
304
|
objectContext?: any;
|
|
284
305
|
initiatorUserContext?: any;
|
|
285
306
|
}): string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend-resource.utils.d.ts","sourceRoot":"","sources":["../../../../../src/core/resources/frontend-resource.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,qBAAqB,EACrB,YAAY,EACZ,gDAAgD,EAChD,gDAAgD,EAGhD,2BAA2B,EAC3B,QAAQ,EAKR,qBAAqB,EAKtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,6BAA6B,EAAE,0CAA0C,EAAE,MAAM,kCAAkC,CAAC;AAClI,OAAO,KAAK,EACV,yBAAyB,EACzB,gCAAgC,EAChC,uCAAuC,EACxC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,gCAAgC,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"frontend-resource.utils.d.ts","sourceRoot":"","sources":["../../../../../src/core/resources/frontend-resource.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import { envLoader } from '../../core/runtime/env-variable-loader.frontend.servi
|
|
|
4
4
|
import { pickPreferredOperationForCoreSemantic, resolveEffectiveCoreOperationFromOperation, } from './operation-semantics.frontend.utils.js';
|
|
5
5
|
import { AutomatedLayoutFrontendUtils } from '../../core/automated-layout/automated-layout.frontend.utils.js';
|
|
6
6
|
import { isSummaryField, isHiddenForDisplay } from '@wildo-ai/zod-decorators';
|
|
7
|
+
import { BACKEND_ONLY_I18N_SECTIONS } from '@wildo-ai/presets-components-models';
|
|
7
8
|
import { describeCaughtError } from '@wildo-ai/saas-models';
|
|
8
9
|
/**
|
|
9
10
|
* Singleton utility class for frontend resource operations
|
|
@@ -556,6 +557,26 @@ export class FrontendResourceUtils {
|
|
|
556
557
|
}
|
|
557
558
|
return { queryParameters: params };
|
|
558
559
|
}
|
|
560
|
+
/**
|
|
561
|
+
* Every label section some resource's instance name reads beyond its own words (`instanceLabelSections`, #1851),
|
|
562
|
+
* as the i18n keys to request: unique and sorted, so the result is stable for one registry. Requested once by
|
|
563
|
+
* `ResourceRegistryProvider`, which is what lets each caller of {@link computeFrontendResourceLabel} stay unaware
|
|
564
|
+
* of which resource needs which section. A backend-only section (`BACKEND_ONLY_I18N_SECTIONS`) is left out: the
|
|
565
|
+
* browser is never served one.
|
|
566
|
+
*/
|
|
567
|
+
static collectInstanceLabelSectionKeys(registry) {
|
|
568
|
+
const sections = new Set();
|
|
569
|
+
for (const config of Object.values(registry?.resourceConfigurations ?? {})) {
|
|
570
|
+
const declared = config?.frontendConfiguration?.instanceLabelSections;
|
|
571
|
+
for (const section of declared ?? []) {
|
|
572
|
+
// A backend-only section is refused by the i18n route, so declaring one could never load a word. Skipped
|
|
573
|
+
// against the same list the provider and the route use, rather than a second copy of it.
|
|
574
|
+
if (!BACKEND_ONLY_I18N_SECTIONS.includes(section))
|
|
575
|
+
sections.add(section);
|
|
576
|
+
}
|
|
577
|
+
}
|
|
578
|
+
return [...sections].sort();
|
|
579
|
+
}
|
|
559
580
|
/**
|
|
560
581
|
* Compute a resource label using the canonical resource configuration contract:
|
|
561
582
|
* `resourceConfig.frontendConfiguration.getFrontendResourceLabel`.
|
|
@@ -577,8 +598,7 @@ export class FrontendResourceUtils {
|
|
|
577
598
|
const obj = currentObject;
|
|
578
599
|
const config = registry.resourceConfigurations?.[resourceType];
|
|
579
600
|
const labelDef = config?.frontendConfiguration?.getFrontendResourceLabel;
|
|
580
|
-
const t = params
|
|
581
|
-
((toTranslate) => toTranslate);
|
|
601
|
+
const { t } = params;
|
|
582
602
|
try {
|
|
583
603
|
if (Array.isArray(labelDef)) {
|
|
584
604
|
const parts = labelDef
|
|
@@ -595,6 +615,9 @@ export class FrontendResourceUtils {
|
|
|
595
615
|
objectContext: params.objectContext ?? {},
|
|
596
616
|
initiatorUserContext: params.initiatorUserContext,
|
|
597
617
|
t,
|
|
618
|
+
formatDate: params.formatDate,
|
|
619
|
+
formatDateTime: params.formatDateTime,
|
|
620
|
+
resourceType,
|
|
598
621
|
});
|
|
599
622
|
if (typeof label === 'string' && label.trim().length > 0)
|
|
600
623
|
return label;
|