@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":"AppPage_SecuritySettings.labels.js","sourceRoot":"","sources":["../../../../../../src/components/auth/admin-config/AppPage_SecuritySettings.labels.ts"],"names":[],"mappings":"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","sourcesContent":["import { FrontendComponentType, LabelKind, type LabellingUnitaryDef, registerComponentLabels } from '@wildo-ai/presets-components-models';\n\n// Companion-only label metadata for this component: keys + params + per-key\n// purpose / kind / variable meaning. Statically scanned by the dev companion;\n// NOT imported at runtime, so it never ships in the bundle.\n\nexport const AppLayoutsSecuritySettingsLabels: LabellingUnitaryDef[] = [\n { ref: 'pageTitle', kind: LabelKind.HEADING, purpose: 'Page heading for the account security-settings screen' },\n { ref: 'accountComplete', kind: LabelKind.MESSAGE, purpose: 'Status line shown when the account meets all required security factors' },\n { ref: 'accountIncomplete', kind: LabelKind.MESSAGE, purpose: 'Status line shown when the account is missing a required security factor' },\n { ref: 'sectionPasskeys', kind: LabelKind.HEADING, purpose: 'Section title for the passkeys management card' },\n { ref: 'sectionTotp', kind: LabelKind.HEADING, purpose: 'Section title for the authenticator-app (TOTP) management card' },\n { ref: 'sectionPhone', kind: LabelKind.HEADING, purpose: 'Section title for the phone / SMS management card' },\n { ref: 'sectionPassword', kind: LabelKind.HEADING, purpose: 'Section title for the password management card' },\n { ref: 'sectionIdentityLinks', kind: LabelKind.HEADING, purpose: 'Section title for the linked social-identity providers card' },\n { ref: 'passkeyAdd', kind: LabelKind.BUTTON, purpose: 'Button that registers a new passkey' },\n { ref: 'passkeyEmpty', kind: LabelKind.EMPTY_STATE, purpose: 'Empty state shown when the user has no passkeys registered' },\n { ref: 'passkeyUnsupported', kind: LabelKind.MESSAGE, purpose: 'Notice shown when the device or browser does not support passkeys' },\n { ref: 'passkeyRemove', kind: LabelKind.BUTTON, purpose: 'Button that removes an individual passkey' },\n { ref: 'passkeyRename', kind: LabelKind.BUTTON, purpose: 'Button that renames an individual passkey' },\n { ref: 'totpEnabled', kind: LabelKind.MESSAGE, purpose: 'Status line shown when an authenticator app is already set up' },\n { ref: 'totpNotSetup', kind: LabelKind.MESSAGE, purpose: 'Status line shown when no authenticator app is configured' },\n { ref: 'totpSetup', kind: LabelKind.BUTTON, purpose: 'Button that starts authenticator-app setup' },\n { ref: 'totpDisable', kind: LabelKind.BUTTON, purpose: 'Button that disables the authenticator app' },\n { ref: 'totpOnlyMfaWarning', kind: LabelKind.MESSAGE, purpose: 'Warning that the authenticator app is the only enrolled second factor' },\n { ref: 'phoneVerified', kind: LabelKind.MESSAGE, purpose: 'Status line shown when a phone number is verified (masked number appended)' },\n { ref: 'phoneNotVerified', kind: LabelKind.MESSAGE, purpose: 'Status line shown when no phone number is verified' },\n { ref: 'phoneChange', kind: LabelKind.BUTTON, purpose: 'Button that changes the verified phone number' },\n { ref: 'passwordChange', kind: LabelKind.BUTTON, purpose: 'Submit button that changes the existing password' },\n { ref: 'passwordSet', kind: LabelKind.BUTTON, purpose: 'Submit button that sets a password for an account that has none' },\n { ref: 'passwordCurrent', kind: LabelKind.LABEL, purpose: 'Field label for the current-password input' },\n { ref: 'passwordNew', kind: LabelKind.LABEL, purpose: 'Field label for the new-password input' },\n { ref: 'passwordConfirm', kind: LabelKind.LABEL, purpose: 'Field label for the confirm-new-password input' },\n { ref: 'identityLinksEmpty', kind: LabelKind.EMPTY_STATE, purpose: 'Empty state shown when no social identities are linked' },\n { ref: 'identityLinksUnlink', kind: LabelKind.BUTTON, purpose: 'Button that unlinks a connected social identity' },\n { ref: 'reauthTitle', kind: LabelKind.HEADING, purpose: 'Title of the re-authentication confirmation dialog' },\n { ref: 'reauthDescription', kind: LabelKind.DESCRIPTION, purpose: 'Explains that the person must confirm it is really them before this sensitive change goes through. Must not name a method: they may confirm with a password, a passkey or an authenticator code' },\n { ref: 'reauthPassword', kind: LabelKind.LABEL, purpose: 'Field label for the re-authentication password input' },\n { ref: 'confirm', kind: LabelKind.BUTTON, purpose: 'Confirm button for the re-authentication dialog' },\n { ref: 'cancel', kind: LabelKind.BUTTON, purpose: 'Cancel button for the re-authentication dialog' },\n { ref: 'success', kind: LabelKind.MESSAGE, purpose: 'Generic confirmation shown after a successful security change' },\n { ref: 'error', kind: LabelKind.MESSAGE, purpose: 'Generic error shown when a security operation fails' },\n { ref: 'passkeyCancelled', kind: LabelKind.MESSAGE, purpose: 'Notice shown when the user cancels passkey registration' },\n { ref: 'passkeyAdding', kind: LabelKind.MESSAGE, purpose: 'In-progress status while a passkey is being registered' },\n { ref: 'loading', kind: LabelKind.MESSAGE, purpose: 'Loading status while the security settings are being fetched' },\n { ref: 'passwordMismatch', kind: LabelKind.MESSAGE, purpose: 'Validation error when the new password and confirmation do not match' },\n { ref: 'reauthPasswordPlaceholder', kind: LabelKind.PLACEHOLDER, purpose: 'Placeholder inside the re-authentication password input' },\n { ref: 'reauthWithPassword', kind: LabelKind.BUTTON, purpose: 'Choice in the re-authentication dialog: confirm identity by typing the account password' },\n { ref: 'reauthWithPasskey', kind: LabelKind.BUTTON, purpose: 'Choice in the re-authentication dialog: confirm identity with a registered passkey' },\n { ref: 'reauthWithTotp', kind: LabelKind.BUTTON, purpose: 'Choice in the re-authentication dialog: confirm identity with a code from an authenticator app' },\n { ref: 'reauthPasskeyPrompt', kind: LabelKind.MESSAGE, purpose: 'Explains that confirming will ask the browser or device to use a registered passkey' },\n { ref: 'reauthTotpCode', kind: LabelKind.LABEL, purpose: 'Field label for the authenticator-app code input in the re-authentication dialog' },\n { ref: 'reauthTotpCodePlaceholder', kind: LabelKind.PLACEHOLDER, purpose: 'Placeholder inside the authenticator-app code input, which takes the current one-time code' },\n { ref: 'reauthNoAcceptedMethod', kind: LabelKind.MESSAGE, purpose: 'Shown in the re-authentication dialog when none of the account\\'s sign-in methods is accepted for this confirmation, because the account\\'s security policy requires a method it has not added yet. Tells the person to add that method (for example a passkey) in their security settings first' },\n {\n ref: 'reauthWithProvider',\n kind: LabelKind.BUTTON,\n purpose: 'Choice in the re-authentication dialog: confirm it is you by signing in again at a linked identity provider, such as Google or the company\\'s sign-in',\n params: [{ key: 'provider', meaning: 'display name of the linked identity provider' }],\n },\n {\n ref: 'reauthProviderPrompt',\n kind: LabelKind.MESSAGE,\n purpose: 'Shown in the re-authentication dialog when a linked identity provider is chosen: confirming opens a window at that provider, where the person signs in again',\n params: [{ key: 'provider', meaning: 'display name of the linked identity provider' }],\n },\n { ref: 'reauthProviderPopupBlocked', kind: LabelKind.MESSAGE, purpose: 'Error in the re-authentication dialog when the browser blocked the sign-in window from opening; asks the person to allow pop-ups for this site and try again' },\n { ref: 'reauthProviderTimedOut', kind: LabelKind.MESSAGE, purpose: 'Error in the re-authentication dialog when signing in again at the identity provider was not finished in time (the sign-in window was left open or closed without finishing); they can try again or choose another method' },\n { ref: 'reauthProviderFailed', kind: LabelKind.MESSAGE, purpose: 'Error in the re-authentication dialog when signing in again at the identity provider did not confirm the person; they can try again or choose another method' },\n { ref: 'phoneVerify', kind: LabelKind.BUTTON, purpose: 'Button that starts phone-number verification' },\n\n // Posture summary + per-factor descriptive copy. The panel presents each\n // authentication factor as a scannable row (icon · name · what it is · live\n // status), so every factor owns a short plain-language description and every\n // state owns an explicit status word.\n { ref: 'pageDescription', kind: LabelKind.DESCRIPTION, purpose: 'Sub-heading explaining that this screen manages how the user signs in and protects their account' },\n { ref: 'statusActive', kind: LabelKind.MESSAGE, purpose: 'Short status word on a factor the user has configured' },\n { ref: 'statusNotConfigured', kind: LabelKind.MESSAGE, purpose: 'Short status word on a factor the user has not configured yet' },\n { ref: 'statusUnavailable', kind: LabelKind.MESSAGE, purpose: 'Short status word on a factor unavailable on the current device or browser' },\n { ref: 'passkeysDescription', kind: LabelKind.DESCRIPTION, purpose: 'Plain-language explanation of what a passkey is and why it is the strongest sign-in method' },\n { ref: 'totpDescription', kind: LabelKind.DESCRIPTION, purpose: 'Plain-language explanation of authenticator-app one-time codes as a second factor' },\n { ref: 'phoneDescription', kind: LabelKind.DESCRIPTION, purpose: 'Plain-language explanation of SMS one-time codes to a verified phone number' },\n { ref: 'passwordDescription', kind: LabelKind.DESCRIPTION, purpose: 'Plain-language explanation of the account password as a sign-in credential' },\n { ref: 'identityLinksDescription', kind: LabelKind.DESCRIPTION, purpose: 'Plain-language explanation of external identity accounts linked for sign-in' },\n { ref: 'passkeyCount', kind: LabelKind.MESSAGE, purpose: 'Number of passkeys currently registered on the account', params: ['count'] },\n { ref: 'passkeyAdded', kind: LabelKind.MESSAGE, purpose: 'Registration date shown under an individual passkey entry', params: ['date'] },\n { ref: 'passwordSetStatus', kind: LabelKind.MESSAGE, purpose: 'Status line shown when the account has a password set' },\n { ref: 'passwordNotSetStatus', kind: LabelKind.MESSAGE, purpose: 'Status line shown when the account has no password set' },\n { ref: 'identityLinksCount', kind: LabelKind.MESSAGE, purpose: 'Number of external identities currently linked to the account', params: ['count'] },\n];\nregisterComponentLabels(FrontendComponentType.APP_LAYOUTS_SECURITY_SETTINGS, AppLayoutsSecuritySettingsLabels);\n"]}
|
|
1
|
+
{"version":3,"file":"AppPage_SecuritySettings.labels.js","sourceRoot":"","sources":["../../../../../../src/components/auth/admin-config/AppPage_SecuritySettings.labels.ts"],"names":[],"mappings":"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","sourcesContent":["import { FrontendComponentType, LabelKind, type LabellingUnitaryDef, registerComponentLabels } from '@wildo-ai/presets-components-models';\n\n// Companion-only label metadata for this component: keys + params + per-key\n// purpose / kind / variable meaning. Statically scanned by the dev companion;\n// NOT imported at runtime, so it never ships in the bundle.\n\nexport const AppLayoutsSecuritySettingsLabels: LabellingUnitaryDef[] = [\n { ref: 'pageTitle', kind: LabelKind.HEADING, purpose: 'Page heading for the account security-settings screen' },\n { ref: 'sectionPasskeys', kind: LabelKind.HEADING, purpose: 'Section title for the passkeys management card' },\n { ref: 'sectionTotp', kind: LabelKind.HEADING, purpose: 'Section title for the authenticator-app (TOTP) management card' },\n { ref: 'sectionPhone', kind: LabelKind.HEADING, purpose: 'Section title for the phone / SMS management card' },\n { ref: 'sectionPassword', kind: LabelKind.HEADING, purpose: 'Section title for the password management card' },\n { ref: 'sectionIdentityLinks', kind: LabelKind.HEADING, purpose: 'Section title for the linked social-identity providers card' },\n { ref: 'passkeyAdd', kind: LabelKind.BUTTON, purpose: 'Button that registers a new passkey' },\n { ref: 'passkeyUnsupported', kind: LabelKind.MESSAGE, purpose: 'Notice shown when the device or browser does not support passkeys' },\n { ref: 'passkeyRemove', kind: LabelKind.BUTTON, purpose: 'Button that removes an individual passkey' },\n { ref: 'totpSetup', kind: LabelKind.BUTTON, purpose: 'Button that starts authenticator-app setup' },\n { ref: 'totpDisable', kind: LabelKind.BUTTON, purpose: 'Button that disables the authenticator app' },\n { ref: 'totpOnlyMfaWarning', kind: LabelKind.MESSAGE, purpose: 'Warning that the authenticator app is the only enrolled second factor' },\n { ref: 'phoneChange', kind: LabelKind.BUTTON, purpose: 'Button that changes the verified phone number' },\n { ref: 'passwordChange', kind: LabelKind.BUTTON, purpose: 'Submit button that changes the existing password' },\n { ref: 'passwordSet', kind: LabelKind.BUTTON, purpose: 'Submit button that sets a password for an account that has none' },\n { ref: 'passwordCurrent', kind: LabelKind.LABEL, purpose: 'Field label for the current-password input' },\n { ref: 'passwordNew', kind: LabelKind.LABEL, purpose: 'Field label for the new-password input' },\n { ref: 'passwordConfirm', kind: LabelKind.LABEL, purpose: 'Field label for the confirm-new-password input' },\n { ref: 'identityLinksUnlink', kind: LabelKind.BUTTON, purpose: 'Button that unlinks a connected social identity' },\n { ref: 'reauthTitle', kind: LabelKind.HEADING, purpose: 'Title of the re-authentication confirmation dialog' },\n { ref: 'reauthDescription', kind: LabelKind.DESCRIPTION, purpose: 'Explains that the person must confirm it is really them before this sensitive change goes through. Must not name a method: they may confirm with a password, a passkey or an authenticator code' },\n { ref: 'reauthPassword', kind: LabelKind.LABEL, purpose: 'Field label for the re-authentication password input' },\n { ref: 'cancel', kind: LabelKind.BUTTON, purpose: 'Button that closes the password change or set-password form without saving' },\n { ref: 'success', kind: LabelKind.MESSAGE, purpose: 'Generic confirmation shown after a successful security change' },\n { ref: 'error', kind: LabelKind.MESSAGE, purpose: 'Generic error shown when a security operation fails' },\n { ref: 'passkeyCancelled', kind: LabelKind.MESSAGE, purpose: 'Notice shown when the user cancels passkey registration' },\n { ref: 'passkeyAdding', kind: LabelKind.MESSAGE, purpose: 'In-progress status while a passkey is being registered' },\n { ref: 'loading', kind: LabelKind.MESSAGE, purpose: 'Loading status while the security settings are being fetched' },\n { ref: 'passwordMismatch', kind: LabelKind.MESSAGE, purpose: 'Validation error when the new password and confirmation do not match' },\n { ref: 'reauthPasswordPlaceholder', kind: LabelKind.PLACEHOLDER, purpose: 'Placeholder inside the re-authentication password input' },\n { ref: 'reauthWithPassword', kind: LabelKind.BUTTON, purpose: 'Choice in the re-authentication dialog: confirm identity by typing the account password' },\n { ref: 'reauthWithPasskey', kind: LabelKind.BUTTON, purpose: 'Choice in the re-authentication dialog: confirm identity with a registered passkey' },\n { ref: 'reauthWithTotp', kind: LabelKind.BUTTON, purpose: 'Choice in the re-authentication dialog: confirm identity with a code from an authenticator app' },\n { ref: 'reauthPasskeyPrompt', kind: LabelKind.MESSAGE, purpose: 'Explains that confirming will ask the browser or device to use a registered passkey' },\n { ref: 'reauthTotpCode', kind: LabelKind.LABEL, purpose: 'Field label for the authenticator-app code input in the re-authentication dialog' },\n { ref: 'reauthTotpCodePlaceholder', kind: LabelKind.PLACEHOLDER, purpose: 'Placeholder inside the authenticator-app code input, which takes the current one-time code' },\n { ref: 'reauthNoAcceptedMethod', kind: LabelKind.MESSAGE, purpose: 'Shown in the re-authentication dialog when none of the account\\'s sign-in methods is accepted for this confirmation, because the account\\'s security policy requires a method it has not added yet. Tells the person to add that method (for example a passkey) in their security settings first' },\n { ref: 'reauthClientOrganizationDescription', kind: LabelKind.DESCRIPTION, purpose: 'Shown in the re-authentication dialog to an expert from a service firm who has just opened a client organization\\'s workspace: that organization asks people working in it on behalf of a service firm to confirm with a second factor (an authenticator code or a passkey) before continuing, and this confirmation counts for that organization only. Must not name a specific organization' },\n {\n ref: 'reauthWithProvider',\n kind: LabelKind.BUTTON,\n purpose: 'Choice in the re-authentication dialog: confirm it is you by signing in again at a linked identity provider, such as Google or the company\\'s sign-in',\n params: [{ key: 'provider', meaning: 'display name of the linked identity provider' }],\n },\n {\n ref: 'reauthProviderPrompt',\n kind: LabelKind.MESSAGE,\n purpose: 'Shown in the re-authentication dialog when a linked identity provider is chosen: confirming opens a window at that provider, where the person signs in again',\n params: [{ key: 'provider', meaning: 'display name of the linked identity provider' }],\n },\n { ref: 'reauthProviderPopupBlocked', kind: LabelKind.MESSAGE, purpose: 'Error in the re-authentication dialog when the browser blocked the sign-in window from opening; asks the person to allow pop-ups for this site and try again' },\n { ref: 'reauthProviderTimedOut', kind: LabelKind.MESSAGE, purpose: 'Error in the re-authentication dialog when signing in again at the identity provider was not finished in time (the sign-in window was left open or closed without finishing); they can try again or choose another method' },\n { ref: 'reauthProviderFailed', kind: LabelKind.MESSAGE, purpose: 'Error in the re-authentication dialog when signing in again at the identity provider did not confirm the person; they can try again or choose another method' },\n { ref: 'phoneVerify', kind: LabelKind.BUTTON, purpose: 'Button that starts phone-number verification' },\n\n // Per-factor descriptive copy. The panel presents each authentication factor\n // as a scannable row (icon · name · status badge), so every state owns an\n // explicit status word, and every factor owns a short plain-language\n // description that is shown only while the factor is NOT active — it is the\n // prompt for a decision not yet taken.\n //\n // Removed with the text they rendered, because each restated something else on\n // the same row: the panel sub-heading (`pageDescription`), the status lines\n // under a badge saying the same (`totpEnabled`, `totpNotSetup`,\n // `phoneNotVerified`, `passwordSetStatus`, `passwordNotSetStatus`), the empty\n // sentences under a \"Not configured\" badge (`passkeyEmpty`,\n // `identityLinksEmpty`), the counts above the lists they count (`passkeyCount`,\n // `identityLinksCount`) and the \"Verified:\" in front of the masked phone number\n // (`phoneVerified`). Their `SecuritySettingsLabel` members went with them, as did\n // `accountComplete` / `accountIncomplete`, `passkeyRename` and a `confirm` the\n // re-authentication dialog never read (its confirm button is the critical-confirm's own).\n { ref: 'statusActive', kind: LabelKind.MESSAGE, purpose: 'Short status word on a factor the user has configured' },\n { ref: 'statusNotConfigured', kind: LabelKind.MESSAGE, purpose: 'Short status word on a factor the user has not configured yet' },\n { ref: 'statusUnavailable', kind: LabelKind.MESSAGE, purpose: 'Short status word on a factor unavailable on the current device or browser' },\n { ref: 'passkeysDescription', kind: LabelKind.DESCRIPTION, purpose: 'Plain-language explanation of what a passkey is and why it is the strongest sign-in method' },\n { ref: 'totpDescription', kind: LabelKind.DESCRIPTION, purpose: 'Plain-language explanation of authenticator-app one-time codes as a second factor' },\n { ref: 'phoneDescription', kind: LabelKind.DESCRIPTION, purpose: 'Plain-language explanation of SMS one-time codes to a verified phone number' },\n { ref: 'passwordDescription', kind: LabelKind.DESCRIPTION, purpose: 'Plain-language explanation of the account password as a sign-in credential' },\n { ref: 'identityLinksDescription', kind: LabelKind.DESCRIPTION, purpose: 'Plain-language explanation of external identity accounts linked for sign-in' },\n { ref: 'passkeyAdded', kind: LabelKind.MESSAGE, purpose: 'Registration date shown under an individual passkey entry', params: ['date'] },\n];\nregisterComponentLabels(FrontendComponentType.APP_LAYOUTS_SECURITY_SETTINGS, AppLayoutsSecuritySettingsLabels);\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExternalOAuth2AuthMethod.d.ts","sourceRoot":"","sources":["../../../../../../src/components/auth/methods/ExternalOAuth2AuthMethod.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAS9D,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,oEAAoE,CAAC;AAKnH;;;;;;;;;;;;;GAaG;AACH,QAAA,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,
|
|
1
|
+
{"version":3,"file":"ExternalOAuth2AuthMethod.d.ts","sourceRoot":"","sources":["../../../../../../src/components/auth/methods/ExternalOAuth2AuthMethod.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAS9D,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,oEAAoE,CAAC;AAKnH;;;;;;;;;;;;;GAaG;AACH,QAAA,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAiEhE,CAAC;AAEF,OAAO,EAAE,wBAAwB,EAAE,CAAC"}
|
|
@@ -27,7 +27,7 @@ import { resolvePublicOAuthProviderEntries } from '../../../components/auth/util
|
|
|
27
27
|
*/
|
|
28
28
|
const ExternalOAuth2AuthMethod = ({ methodConfig, isLoading, t }) => {
|
|
29
29
|
const { initiateOAuth2Login } = useUserOrgs();
|
|
30
|
-
const { appConfig
|
|
30
|
+
const { appConfig } = useApplication();
|
|
31
31
|
const location = useLocation();
|
|
32
32
|
const [error, setError] = useState(null);
|
|
33
33
|
const toUserFacingErrorMessage = useUserFacingErrorMessage();
|
|
@@ -37,8 +37,7 @@ const ExternalOAuth2AuthMethod = ({ methodConfig, isLoading, t }) => {
|
|
|
37
37
|
providerRef,
|
|
38
38
|
appConfig.auth?.socialOAuth2Providers?.[providerRef] ?? {},
|
|
39
39
|
])),
|
|
40
|
-
|
|
41
|
-
}), [appConfig.auth?.socialOAuth2Providers, frontendProviderRegistry, providerRefs]);
|
|
40
|
+
}), [appConfig.auth?.socialOAuth2Providers, providerRefs]);
|
|
42
41
|
const providerLabelKeys = useMemo(() => collectFrontendProviderDisplayLabelKeys(providerDefinitions.map((provider) => provider.displayNameLabelKey)), [providerDefinitions]);
|
|
43
42
|
const { t: translate } = useI18n({ keys: providerLabelKeys });
|
|
44
43
|
// Return to the CURRENT auth page and let its post-auth `accessToken` guard forward
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExternalOAuth2AuthMethod.js","sourceRoot":"","sources":["../../../../../../src/components/auth/methods/ExternalOAuth2AuthMethod.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,0DAA0D,CAAC;AACnG,OAAO,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,iDAAiD,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,gEAAgE,CAAC;AACzG,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,2DAA2D,CAAC;AAEtG,OAAO,EAAE,qBAAqB,EAAE,MAAM,iEAAiE,CAAC;AACxG,OAAO,EAAE,uCAAuC,EAAE,MAAM,4FAA4F,CAAC;AACrJ,OAAO,EAAE,iCAAiC,EAAE,MAAM,uFAAuF,CAAC;AAE1I;;;;;;;;;;;;;GAaG;AACH,MAAM,wBAAwB,GAAuC,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE;IACtG,MAAM,EAAE,mBAAmB,EAAE,GAAG,WAAW,EAAE,CAAC;IAC9C,MAAM,EAAE,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"ExternalOAuth2AuthMethod.js","sourceRoot":"","sources":["../../../../../../src/components/auth/methods/ExternalOAuth2AuthMethod.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useCallback, useMemo, useState } from 'react';\nimport { useLocation } from 'react-router-dom';\nimport { UserAuthLabel } from '@wildo-ai/presets-components-models';\nimport { Alert, AlertDescription } from '~wildo-frontend-lib/components/overlays/containers/alert';\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n';\nimport { useApplication } from '~wildo-frontend-lib/core/runtime/useApplication';\nimport { buildAuthRedirectTarget } from '~wildo-frontend-lib/core/security/auth-redirect.frontend.utils';\nimport { useUserOrgs } from '~wildo-frontend-lib/core/security/useUserOrgs';\nimport { useUserFacingErrorMessage } from '~wildo-frontend-lib/core/errors/useUserFacingErrorMessage';\nimport { type AuthMethodComponentProps } from '~wildo-frontend-lib/components/auth/methods/auth-method-components';\nimport { OAuthProvidersSection } from '~wildo-frontend-lib/components/auth/utils/OAuthProvidersSection';\nimport { collectFrontendProviderDisplayLabelKeys } from '~wildo-frontend-lib/core/external-providers/frontend-provider-display-label.frontend.utils';\nimport { resolvePublicOAuthProviderEntries } from '~wildo-frontend-lib/components/auth/utils/oauth-provider-display-label.frontend.utils';\n\n/**\n * ExternalOAuth2AuthMethod — renders OAuth2 provider buttons\n * from the methodConfig.oauth2ProviderRefs returned by identify().\n *\n * This is the post-identification counterpart to OAuthProvidersSection.\n * After identify(), the backend may filter providers (e.g., org-level restrictions),\n * so the set of providers here may differ from the pre-identification set.\n *\n * Reuses SSO_PROVIDER_BRAND_META for branded button styling.\n *\n * Browser-only flow. The framework targets web stacks exclusively, so the\n * provider authorization URL is opened via `initiateOAuth2Login` (full-page\n * redirect) — no native-SDK / Capacitor variants.\n */\nconst ExternalOAuth2AuthMethod: React.FC<AuthMethodComponentProps> = ({ methodConfig, isLoading, t }) => {\n const { initiateOAuth2Login } = useUserOrgs();\n const { appConfig } = useApplication();\n const location = useLocation();\n const [error, setError] = useState<string | null>(null);\n const toUserFacingErrorMessage = useUserFacingErrorMessage();\n\n const providerRefs = methodConfig.oauth2ProviderRefs || [];\n const providerDefinitions = useMemo(\n () => resolvePublicOAuthProviderEntries({\n publicProviders: Object.fromEntries(\n providerRefs.map((providerRef) => [\n providerRef,\n appConfig.auth?.socialOAuth2Providers?.[providerRef] ?? {},\n ]),\n ),\n }),\n [appConfig.auth?.socialOAuth2Providers, providerRefs],\n );\n const providerLabelKeys = useMemo(\n () => collectFrontendProviderDisplayLabelKeys(\n providerDefinitions.map((provider) => provider.displayNameLabelKey),\n ),\n [providerDefinitions],\n );\n const { t: translate } = useI18n({ keys: providerLabelKeys });\n // Return to the CURRENT auth page and let its post-auth `accessToken` guard forward\n // via `resolvePostAuthRedirect` — the same return-to-self pattern the SSO method\n // components (`OrgSaml`/`OrgOidc`) and `Auth_Main` use. Unifies returnUrl derivation\n // across all reused method components: on the login page this still lands the caller at\n // their original `?redirect=` target (the guard re-resolves it); on the invitation page\n // it lands the invitee in-app after the JIT consumes the invite (there is no `redirect`\n // param there, so the previous `extractAuthRedirectFromSearch` yielded `undefined`).\n const returnUrl = useMemo(\n () => buildAuthRedirectTarget(location),\n [location],\n );\n\n const handleClick = useCallback(async (providerRef: string) => {\n setError(null);\n try {\n await initiateOAuth2Login(providerRef, returnUrl);\n } catch (e: unknown) {\n setError(toUserFacingErrorMessage(e));\n }\n }, [initiateOAuth2Login, returnUrl, toUserFacingErrorMessage]);\n\n if (providerRefs.length === 0) return null;\n\n return (\n <div className=\"space-y-item\">\n <OAuthProvidersSection\n providers={providerDefinitions}\n onProviderClick={handleClick}\n isLoading={isLoading}\n continueWithLabel={t(UserAuthLabel.CONTINUE_WITH)}\n translate={translate}\n />\n {error && (\n <Alert variant=\"destructive\">\n <AlertDescription>{error}</AlertDescription>\n </Alert>\n )}\n </div>\n );\n};\n\nexport { ExternalOAuth2AuthMethod };\n"]}
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
interface FrontendProviderMetadataLike {
|
|
2
|
-
displayName?: string;
|
|
3
|
-
displayNameLabelKey?: string;
|
|
4
|
-
}
|
|
5
|
-
interface FrontendProviderRegistryLike {
|
|
6
|
-
getProviderByRef(ref: string): {
|
|
7
|
-
metadata?: FrontendProviderMetadataLike;
|
|
8
|
-
} | undefined;
|
|
9
|
-
}
|
|
10
1
|
export interface ResolveOAuthProviderDisplayLabelInput {
|
|
11
2
|
providerRef: string;
|
|
12
3
|
displayName?: string;
|
|
@@ -18,7 +9,8 @@ export interface PublicOAuthProviderEntry {
|
|
|
18
9
|
key: string;
|
|
19
10
|
providerRef: string;
|
|
20
11
|
displayName?: string;
|
|
21
|
-
|
|
12
|
+
/** `providers.<ref>.displayName` — always present, derived from the ref (#1701). */
|
|
13
|
+
displayNameLabelKey: string;
|
|
22
14
|
}
|
|
23
15
|
interface PublicOAuthProviderConfig {
|
|
24
16
|
displayName?: string;
|
|
@@ -30,18 +22,23 @@ interface PublicOAuthProviderConfig {
|
|
|
30
22
|
* Order of preference:
|
|
31
23
|
* 1. Translation resolved from the provider label key.
|
|
32
24
|
* 2. App-authored public auth `displayName` when present.
|
|
33
|
-
* 3.
|
|
34
|
-
* 4.
|
|
35
|
-
* 5. Raw provider ref as the last-resort technical fallback.
|
|
25
|
+
* 3. Brand metadata fallback for well-known providers.
|
|
26
|
+
* 4. Raw provider ref as the last-resort technical fallback.
|
|
36
27
|
*/
|
|
37
28
|
export declare function resolveOAuthProviderDisplayLabel(input: ResolveOAuthProviderDisplayLabelInput): string;
|
|
38
29
|
/**
|
|
39
|
-
*
|
|
40
|
-
*
|
|
30
|
+
* The sign-in buttons' provider entries, from the ONE list that decides which buttons exist: the
|
|
31
|
+
* application's `auth.socialOAuth2Providers` (the frontend-safe projection of its sign-in providers).
|
|
32
|
+
*
|
|
33
|
+
* The label key is derived from the ref, never read off a frontend provider module (#1701). A provider's
|
|
34
|
+
* name is `providers.<ref>.displayName`, planned and generated for every declared provider ref (#1895),
|
|
35
|
+
* so it needs no browser module to carry it — and the engine ships none for sign-in, since a redirect
|
|
36
|
+
* sign-in runs no vendor code on the page. Reading it from the frontend registry used to make a module
|
|
37
|
+
* that loaded nothing the precondition for a translated button, and a button with no module rendered
|
|
38
|
+
* its raw ref. `displayName` stays the application's own authored override.
|
|
41
39
|
*/
|
|
42
40
|
export declare function resolvePublicOAuthProviderEntries(input: {
|
|
43
41
|
publicProviders?: Record<string, PublicOAuthProviderConfig>;
|
|
44
|
-
frontendProviderRegistry?: FrontendProviderRegistryLike;
|
|
45
42
|
}): PublicOAuthProviderEntry[];
|
|
46
43
|
export {};
|
|
47
44
|
//# sourceMappingURL=oauth-provider-display-label.frontend.utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth-provider-display-label.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../../../src/components/auth/utils/oauth-provider-display-label.frontend.utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"oauth-provider-display-label.frontend.utils.d.ts","sourceRoot":"","sources":["../../../../../../src/components/auth/utils/oauth-provider-display-label.frontend.utils.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,qCAAqC;IACpD,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;CACrC;AAED,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oFAAoF;IACpF,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,UAAU,yBAAyB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;GASG;AACH,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,qCAAqC,GAC3C,MAAM,CAQR;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IACvD,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;CAC7D,GAAG,wBAAwB,EAAE,CAY7B"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { buildProviderDisplayNameLabelKey } from '@wildo-ai/saas-models/public-runtime';
|
|
1
2
|
import { resolveFrontendProviderDisplayLabel } from '../../../core/external-providers/frontend-provider-display-label.frontend.utils.js';
|
|
2
3
|
/**
|
|
3
4
|
* Resolve the user-facing OAuth provider label without freezing raw copy into
|
|
@@ -6,9 +7,8 @@ import { resolveFrontendProviderDisplayLabel } from '../../../core/external-prov
|
|
|
6
7
|
* Order of preference:
|
|
7
8
|
* 1. Translation resolved from the provider label key.
|
|
8
9
|
* 2. App-authored public auth `displayName` when present.
|
|
9
|
-
* 3.
|
|
10
|
-
* 4.
|
|
11
|
-
* 5. Raw provider ref as the last-resort technical fallback.
|
|
10
|
+
* 3. Brand metadata fallback for well-known providers.
|
|
11
|
+
* 4. Raw provider ref as the last-resort technical fallback.
|
|
12
12
|
*/
|
|
13
13
|
export function resolveOAuthProviderDisplayLabel(input) {
|
|
14
14
|
return resolveFrontendProviderDisplayLabel({
|
|
@@ -20,23 +20,26 @@ export function resolveOAuthProviderDisplayLabel(input) {
|
|
|
20
20
|
});
|
|
21
21
|
}
|
|
22
22
|
/**
|
|
23
|
-
*
|
|
24
|
-
*
|
|
23
|
+
* The sign-in buttons' provider entries, from the ONE list that decides which buttons exist: the
|
|
24
|
+
* application's `auth.socialOAuth2Providers` (the frontend-safe projection of its sign-in providers).
|
|
25
|
+
*
|
|
26
|
+
* The label key is derived from the ref, never read off a frontend provider module (#1701). A provider's
|
|
27
|
+
* name is `providers.<ref>.displayName`, planned and generated for every declared provider ref (#1895),
|
|
28
|
+
* so it needs no browser module to carry it — and the engine ships none for sign-in, since a redirect
|
|
29
|
+
* sign-in runs no vendor code on the page. Reading it from the frontend registry used to make a module
|
|
30
|
+
* that loaded nothing the precondition for a translated button, and a button with no module rendered
|
|
31
|
+
* its raw ref. `displayName` stays the application's own authored override.
|
|
25
32
|
*/
|
|
26
33
|
export function resolvePublicOAuthProviderEntries(input) {
|
|
27
34
|
const publicProviders = input.publicProviders;
|
|
28
35
|
if (!publicProviders) {
|
|
29
36
|
return [];
|
|
30
37
|
}
|
|
31
|
-
return Object.entries(publicProviders)
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
displayName: config.displayName ?? providerModule?.metadata?.displayName,
|
|
38
|
-
displayNameLabelKey: providerModule?.metadata?.displayNameLabelKey,
|
|
39
|
-
};
|
|
40
|
-
});
|
|
38
|
+
return Object.entries(publicProviders).map(([providerRef, config]) => ({
|
|
39
|
+
key: providerRef,
|
|
40
|
+
providerRef,
|
|
41
|
+
displayName: config.displayName,
|
|
42
|
+
displayNameLabelKey: buildProviderDisplayNameLabelKey(providerRef),
|
|
43
|
+
}));
|
|
41
44
|
}
|
|
42
45
|
//# sourceMappingURL=oauth-provider-display-label.frontend.utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth-provider-display-label.frontend.utils.js","sourceRoot":"","sources":["../../../../../../src/components/auth/utils/oauth-provider-display-label.frontend.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mCAAmC,EAAE,MAAM,4FAA4F,CAAC;
|
|
1
|
+
{"version":3,"file":"oauth-provider-display-label.frontend.utils.js","sourceRoot":"","sources":["../../../../../../src/components/auth/utils/oauth-provider-display-label.frontend.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,sCAAsC,CAAC;AACxF,OAAO,EAAE,mCAAmC,EAAE,MAAM,4FAA4F,CAAC;AAsBjJ;;;;;;;;;GASG;AACH,MAAM,UAAU,gCAAgC,CAC9C,KAA4C;IAE5C,OAAO,mCAAmC,CAAC;QACzC,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;QAC9C,aAAa,EAAE,KAAK,CAAC,UAAU;QAC/B,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iCAAiC,CAAC,KAEjD;IACC,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;IAC9C,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QACrE,GAAG,EAAE,WAAW;QAChB,WAAW;QACX,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,mBAAmB,EAAE,gCAAgC,CAAC,WAAW,CAAC;KACnE,CAAC,CAAC,CAAC;AACN,CAAC","sourcesContent":["import { buildProviderDisplayNameLabelKey } from '@wildo-ai/saas-models/public-runtime';\nimport { resolveFrontendProviderDisplayLabel } from '~wildo-frontend-lib/core/external-providers/frontend-provider-display-label.frontend.utils';\n\nexport interface ResolveOAuthProviderDisplayLabelInput {\n providerRef: string;\n displayName?: string;\n displayNameLabelKey?: string;\n brandLabel?: string;\n translate?: (key: string) => string;\n}\n\nexport interface PublicOAuthProviderEntry {\n key: string;\n providerRef: string;\n displayName?: string;\n /** `providers.<ref>.displayName` — always present, derived from the ref (#1701). */\n displayNameLabelKey: string;\n}\n\ninterface PublicOAuthProviderConfig {\n displayName?: string;\n}\n\n/**\n * Resolve the user-facing OAuth provider label without freezing raw copy into\n * the provider contract.\n *\n * Order of preference:\n * 1. Translation resolved from the provider label key.\n * 2. App-authored public auth `displayName` when present.\n * 3. Brand metadata fallback for well-known providers.\n * 4. Raw provider ref as the last-resort technical fallback.\n */\nexport function resolveOAuthProviderDisplayLabel(\n input: ResolveOAuthProviderDisplayLabelInput,\n): string {\n return resolveFrontendProviderDisplayLabel({\n providerRef: input.providerRef,\n displayName: input.displayName,\n displayNameLabelKey: input.displayNameLabelKey,\n fallbackLabel: input.brandLabel,\n translate: input.translate,\n });\n}\n\n/**\n * The sign-in buttons' provider entries, from the ONE list that decides which buttons exist: the\n * application's `auth.socialOAuth2Providers` (the frontend-safe projection of its sign-in providers).\n *\n * The label key is derived from the ref, never read off a frontend provider module (#1701). A provider's\n * name is `providers.<ref>.displayName`, planned and generated for every declared provider ref (#1895),\n * so it needs no browser module to carry it — and the engine ships none for sign-in, since a redirect\n * sign-in runs no vendor code on the page. Reading it from the frontend registry used to make a module\n * that loaded nothing the precondition for a translated button, and a button with no module rendered\n * its raw ref. `displayName` stays the application's own authored override.\n */\nexport function resolvePublicOAuthProviderEntries(input: {\n publicProviders?: Record<string, PublicOAuthProviderConfig>;\n}): PublicOAuthProviderEntry[] {\n const publicProviders = input.publicProviders;\n if (!publicProviders) {\n return [];\n }\n\n return Object.entries(publicProviders).map(([providerRef, config]) => ({\n key: providerRef,\n providerRef,\n displayName: config.displayName,\n displayNameLabelKey: buildProviderDisplayNameLabelKey(providerRef),\n }));\n}\n"]}
|
|
@@ -12,7 +12,7 @@ export function InvoiceHistory({ preset = CorePresetNames.DEFAULT, ...props }) {
|
|
|
12
12
|
const billing = useBillingSafe();
|
|
13
13
|
const toUserFacingErrorMessage = useUserFacingErrorMessage();
|
|
14
14
|
const runBillingActionSafely = useSafeBillingActionExecutor();
|
|
15
|
-
const billingProviderLabelKeys = React.useMemo(() => collectBillingProviderLabelKeys(billing?.
|
|
15
|
+
const billingProviderLabelKeys = React.useMemo(() => collectBillingProviderLabelKeys(billing?.billingProviderRef), [billing?.billingProviderRef]);
|
|
16
16
|
const { t: translateProvider } = useI18n({ keys: billingProviderLabelKeys });
|
|
17
17
|
const Component = createComponentResolver(FrontendComponentType.LOW_LEVEL_BILLING_INVOICE_HISTORY, 'InvoiceHistory')(preset);
|
|
18
18
|
const invoices = props.invoices ?? billing?.invoices ?? [];
|
|
@@ -20,7 +20,7 @@ export function InvoiceHistory({ preset = CorePresetNames.DEFAULT, ...props }) {
|
|
|
20
20
|
runBillingActionSafely(() => billing.openCustomerPortal());
|
|
21
21
|
} : undefined);
|
|
22
22
|
const providerName = props.providerName ?? resolveBillingProviderDisplayName({
|
|
23
|
-
|
|
23
|
+
providerRef: billing?.billingProviderRef,
|
|
24
24
|
translate: translateProvider,
|
|
25
25
|
});
|
|
26
26
|
const unavailable = props.unavailable ?? (!!billing?.isEnabled && !(props.invoices !== undefined) && [BillingStateSlice.INVOICES].some(slice => !billing.isSliceAvailable(slice)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"billing-invoice-history.js","sourceRoot":"","sources":["../../../../../src/components/billing/billing-invoice-history.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,iFAAiF,CAAA;AACzH,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AAE5F,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAA;AAC5E,OAAO,EAAE,4BAA4B,EAAE,MAAM,+DAA+D,CAAA;AAC5G,OAAO,EAAE,yBAAyB,EAAE,MAAM,2DAA2D,CAAA;AACrG,OAAO,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAA;AAC/D,OAAO,EACL,+BAA+B,EAC/B,iCAAiC,GAClC,MAAM,0EAA0E,CAAA;AAqCjF,MAAM,UAAU,cAAc,CAAC,EAAE,MAAM,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,KAAK,EAA8B;IACvG,MAAM,OAAO,GAAG,cAAc,EAAE,CAAA;IAChC,MAAM,wBAAwB,GAAG,yBAAyB,EAAE,CAAA;IAC5D,MAAM,sBAAsB,GAAG,4BAA4B,EAAE,CAAA;IAC7D,MAAM,wBAAwB,GAAG,KAAK,CAAC,OAAO,CAC5C,GAAG,EAAE,CAAC,+BAA+B,CAAC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"billing-invoice-history.js","sourceRoot":"","sources":["../../../../../src/components/billing/billing-invoice-history.tsx"],"names":[],"mappings":"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","sourcesContent":["import { BillingStateSlice } from '@wildo-ai/saas-models'\nimport React from 'react'\nimport { createComponentResolver } from '~wildo-frontend-lib/core/components-registry/component-resolver.frontend.helper'\nimport { FrontendComponentType, CorePresetNames } from '@wildo-ai/presets-components-models'\nimport type { ComponentPresetProps } from '~wildo-frontend-lib/core/components-registry/component-registry.frontend.schemas'\nimport { useBillingSafe } from '~wildo-frontend-lib/core/billing/useBilling'\nimport { useSafeBillingActionExecutor } from '~wildo-frontend-lib/core/billing/useSafeBillingActionExecutor'\nimport { useUserFacingErrorMessage } from '~wildo-frontend-lib/core/errors/useUserFacingErrorMessage'\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n'\nimport {\n collectBillingProviderLabelKeys,\n resolveBillingProviderDisplayName,\n} from '~wildo-frontend-lib/core/billing/billing-provider-display.frontend.utils'\n\n// --- Contract ---\n\nexport interface InvoiceHistoryItem {\n _id: string\n status: string\n total: { amount: bigint; decimals: number; currency: string }\n createdAt: Date | string\n // NOTE: no `hostedInvoiceUrl` / `invoicePdfUrl`. Those are `.isBackendOnly()` on the invoice\n // schema and never reach a client — a provider-hosted invoice URL is an unauthenticated\n // capability link to a document that legally carries the customer's name and address. Invoice\n // DOCUMENTS are reached through the provider's customer portal (`openCustomerPortal()`, already\n // wired below as the \"view all\" action), which authenticates the viewer provider-side.\n}\n\nexport interface InvoiceHistoryProps {\n invoices: InvoiceHistoryItem[]\n providerName?: string\n isLoading?: boolean\n unavailable?: boolean\n error?: string | null\n onViewAll?: () => void\n limit?: number\n}\n\n// --- Wrapper ---\n\n/**\n * Wrapper props: `invoices` is OPTIONAL here — the wrapper reads the billing\n * state's invoice list when omitted. The PRESET contract above keeps it\n * required: the wrapper always materializes it before resolving the preset.\n */\nexport type InvoiceHistoryWrapperProps = Omit<InvoiceHistoryProps, 'invoices'> &\n Partial<Pick<InvoiceHistoryProps, 'invoices'>> &\n ComponentPresetProps\n\nexport function InvoiceHistory({ preset = CorePresetNames.DEFAULT, ...props }: InvoiceHistoryWrapperProps): React.JSX.Element {\n const billing = useBillingSafe()\n const toUserFacingErrorMessage = useUserFacingErrorMessage()\n const runBillingActionSafely = useSafeBillingActionExecutor()\n const billingProviderLabelKeys = React.useMemo(\n () => collectBillingProviderLabelKeys(billing?.billingProviderRef),\n [billing?.billingProviderRef],\n )\n const { t: translateProvider } = useI18n({ keys: billingProviderLabelKeys })\n const Component = createComponentResolver<InvoiceHistoryProps>(FrontendComponentType.LOW_LEVEL_BILLING_INVOICE_HISTORY, 'InvoiceHistory')(preset)\n\n const invoices = props.invoices ?? (billing?.invoices as InvoiceHistoryItem[]) ?? []\n const onViewAll = props.onViewAll ?? (billing?.isSliceAvailable(BillingStateSlice.BILLING_ACCOUNT) ? () => {\n runBillingActionSafely(() => billing.openCustomerPortal())\n } : undefined)\n const providerName = props.providerName ?? resolveBillingProviderDisplayName({\n providerRef: billing?.billingProviderRef,\n translate: translateProvider,\n })\n const unavailable = props.unavailable ?? (!!billing?.isEnabled && !(props.invoices !== undefined) && [BillingStateSlice.INVOICES].some(slice => !billing.isSliceAvailable(slice)))\n const isLoading = props.isLoading ?? billing?.isLoading\n const error = props.error !== undefined ? props.error : (billing?.error ? toUserFacingErrorMessage(billing.error) : null)\n\n return (\n <Component\n {...props}\n invoices={invoices}\n providerName={providerName}\n onViewAll={onViewAll}\n isLoading={isLoading}\n error={error}\n unavailable={unavailable}\n />\n )\n}\n"]}
|
|
@@ -12,7 +12,7 @@ export function BillingPortalLink({ preset = CorePresetNames.DEFAULT, ...props }
|
|
|
12
12
|
const billing = useBillingSafe();
|
|
13
13
|
const toUserFacingErrorMessage = useUserFacingErrorMessage();
|
|
14
14
|
const runBillingActionSafely = useSafeBillingActionExecutor();
|
|
15
|
-
const billingProviderLabelKeys = React.useMemo(() => collectBillingProviderLabelKeys(billing?.
|
|
15
|
+
const billingProviderLabelKeys = React.useMemo(() => collectBillingProviderLabelKeys(billing?.billingProviderRef), [billing?.billingProviderRef]);
|
|
16
16
|
const { t: translateProvider } = useI18n({ keys: billingProviderLabelKeys });
|
|
17
17
|
const Component = createComponentResolver(FrontendComponentType.LOW_LEVEL_BILLING_PORTAL_LINK, 'BillingPortalLink')(preset);
|
|
18
18
|
const onOpenPortal = props.onOpenPortal ?? (() => {
|
|
@@ -21,7 +21,7 @@ export function BillingPortalLink({ preset = CorePresetNames.DEFAULT, ...props }
|
|
|
21
21
|
runBillingActionSafely(() => billing.openCustomerPortal());
|
|
22
22
|
});
|
|
23
23
|
const providerName = props.providerName ?? resolveBillingProviderDisplayName({
|
|
24
|
-
|
|
24
|
+
providerRef: billing?.billingProviderRef,
|
|
25
25
|
translate: translateProvider,
|
|
26
26
|
});
|
|
27
27
|
const unavailable = props.unavailable ?? (!!billing?.isEnabled && !(props.onOpenPortal !== undefined) && [BillingStateSlice.BILLING_ACCOUNT].some(slice => !billing.isSliceAvailable(slice)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"billing-portal-link.js","sourceRoot":"","sources":["../../../../../src/components/billing/billing-portal-link.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,iFAAiF,CAAA;AACzH,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AAE5F,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAA;AAC5E,OAAO,EAAE,4BAA4B,EAAE,MAAM,+DAA+D,CAAA;AAC5G,OAAO,EAAE,yBAAyB,EAAE,MAAM,2DAA2D,CAAA;AACrG,OAAO,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAA;AAC/D,OAAO,EACL,+BAA+B,EAC/B,iCAAiC,GAClC,MAAM,0EAA0E,CAAA;AAwBjF,MAAM,UAAU,iBAAiB,CAAC,EAAE,MAAM,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,KAAK,EAAiC;IAC7G,MAAM,OAAO,GAAG,cAAc,EAAE,CAAA;IAChC,MAAM,wBAAwB,GAAG,yBAAyB,EAAE,CAAA;IAC5D,MAAM,sBAAsB,GAAG,4BAA4B,EAAE,CAAA;IAC7D,MAAM,wBAAwB,GAAG,KAAK,CAAC,OAAO,CAC5C,GAAG,EAAE,CAAC,+BAA+B,CAAC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"billing-portal-link.js","sourceRoot":"","sources":["../../../../../src/components/billing/billing-portal-link.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,iFAAiF,CAAA;AACzH,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AAE5F,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAA;AAC5E,OAAO,EAAE,4BAA4B,EAAE,MAAM,+DAA+D,CAAA;AAC5G,OAAO,EAAE,yBAAyB,EAAE,MAAM,2DAA2D,CAAA;AACrG,OAAO,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAA;AAC/D,OAAO,EACL,+BAA+B,EAC/B,iCAAiC,GAClC,MAAM,0EAA0E,CAAA;AAwBjF,MAAM,UAAU,iBAAiB,CAAC,EAAE,MAAM,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,KAAK,EAAiC;IAC7G,MAAM,OAAO,GAAG,cAAc,EAAE,CAAA;IAChC,MAAM,wBAAwB,GAAG,yBAAyB,EAAE,CAAA;IAC5D,MAAM,sBAAsB,GAAG,4BAA4B,EAAE,CAAA;IAC7D,MAAM,wBAAwB,GAAG,KAAK,CAAC,OAAO,CAC5C,GAAG,EAAE,CAAC,+BAA+B,CAAC,OAAO,EAAE,kBAAkB,CAAC,EAClE,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAC9B,CAAA;IACD,MAAM,EAAE,CAAC,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC,CAAA;IAC5E,MAAM,SAAS,GAAG,uBAAuB,CAAyB,qBAAqB,CAAC,6BAA6B,EAAE,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAA;IACnJ,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,IAAI,CAAC,GAAG,EAAE;QAC/C,IAAI,CAAC,OAAO;YAAE,OAAM;QACpB,sBAAsB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAA;IAC5D,CAAC,CAAC,CAAA;IACF,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,IAAI,iCAAiC,CAAC;QAC3E,WAAW,EAAE,OAAO,EAAE,kBAAkB;QACxC,SAAS,EAAE,iBAAiB;KAC7B,CAAC,CAAA;IACF,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC7L,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,OAAO,EAAE,SAAS,CAAA;IACvD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,wBAAwB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IACzH,OAAO,CACL,KAAC,SAAS,OACJ,KAAK,EACT,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,GACxB,CACH,CAAA;AACH,CAAC","sourcesContent":["import { BillingStateSlice } from '@wildo-ai/saas-models'\nimport React from 'react'\nimport { createComponentResolver } from '~wildo-frontend-lib/core/components-registry/component-resolver.frontend.helper'\nimport { FrontendComponentType, CorePresetNames } from '@wildo-ai/presets-components-models'\nimport type { ComponentPresetProps } from '~wildo-frontend-lib/core/components-registry/component-registry.frontend.schemas'\nimport { useBillingSafe } from '~wildo-frontend-lib/core/billing/useBilling'\nimport { useSafeBillingActionExecutor } from '~wildo-frontend-lib/core/billing/useSafeBillingActionExecutor'\nimport { useUserFacingErrorMessage } from '~wildo-frontend-lib/core/errors/useUserFacingErrorMessage'\nimport { useI18n } from '~wildo-frontend-lib/core/i18n/useI18n'\nimport {\n collectBillingProviderLabelKeys,\n resolveBillingProviderDisplayName,\n} from '~wildo-frontend-lib/core/billing/billing-provider-display.frontend.utils'\n\n// --- Contract ---\n\nexport interface BillingPortalLinkProps {\n onOpenPortal: () => void\n providerName?: string\n isLoading?: boolean\n unavailable?: boolean\n error?: string | null\n}\n\n// --- Wrapper ---\n\n/**\n * Wrapper props: `onOpenPortal` is OPTIONAL here — the wrapper defaults it to\n * safe `openCustomerPortal()` execution when omitted. The PRESET contract above\n * keeps it required: the wrapper always materializes it before resolving the\n * preset.\n */\nexport type BillingPortalLinkWrapperProps = Omit<BillingPortalLinkProps, 'onOpenPortal'> &\n Partial<Pick<BillingPortalLinkProps, 'onOpenPortal'>> &\n ComponentPresetProps\n\nexport function BillingPortalLink({ preset = CorePresetNames.DEFAULT, ...props }: BillingPortalLinkWrapperProps): React.JSX.Element {\n const billing = useBillingSafe()\n const toUserFacingErrorMessage = useUserFacingErrorMessage()\n const runBillingActionSafely = useSafeBillingActionExecutor()\n const billingProviderLabelKeys = React.useMemo(\n () => collectBillingProviderLabelKeys(billing?.billingProviderRef),\n [billing?.billingProviderRef],\n )\n const { t: translateProvider } = useI18n({ keys: billingProviderLabelKeys })\n const Component = createComponentResolver<BillingPortalLinkProps>(FrontendComponentType.LOW_LEVEL_BILLING_PORTAL_LINK, 'BillingPortalLink')(preset)\n const onOpenPortal = props.onOpenPortal ?? (() => {\n if (!billing) return\n runBillingActionSafely(() => billing.openCustomerPortal())\n })\n const providerName = props.providerName ?? resolveBillingProviderDisplayName({\n providerRef: billing?.billingProviderRef,\n translate: translateProvider,\n })\n const unavailable = props.unavailable ?? (!!billing?.isEnabled && !(props.onOpenPortal !== undefined) && [BillingStateSlice.BILLING_ACCOUNT].some(slice => !billing.isSliceAvailable(slice)))\n const isLoading = props.isLoading ?? billing?.isLoading\n const error = props.error !== undefined ? props.error : (billing?.error ? toUserFacingErrorMessage(billing.error) : null)\n return (\n <Component\n {...props}\n onOpenPortal={onOpenPortal}\n providerName={providerName}\n isLoading={isLoading}\n error={error}\n unavailable={unavailable}\n />\n )\n}\n"]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { MoneyValue } from '@wildo-ai/zod-decorators';
|
|
3
|
+
import { ProductPriceDisclosure } from '@wildo-ai/saas-models';
|
|
3
4
|
import type { ComponentPresetProps } from '../../core/components-registry/component-registry.frontend.schemas';
|
|
4
5
|
export interface PricingTableFeature {
|
|
5
6
|
id: string;
|
|
@@ -25,7 +26,21 @@ export interface PricingTablePlan {
|
|
|
25
26
|
interval?: string;
|
|
26
27
|
isDefault: boolean;
|
|
27
28
|
}>;
|
|
28
|
-
|
|
29
|
+
/**
|
|
30
|
+
* The plan the catalogue recommends (`Product.isRecommended`), emphasised in the grid. A
|
|
31
|
+
* recommendation, never a popularity claim. Until #1835 this was `isPopular`, derived from
|
|
32
|
+
* `sortOrder === 1` — so whichever plan happened to sort second was badged "most popular" on a
|
|
33
|
+
* product nobody had measured.
|
|
34
|
+
*/
|
|
35
|
+
isRecommended?: boolean;
|
|
36
|
+
/** How much of the price the tile may state (`Product.priceDisclosure`). Omitted = listed. */
|
|
37
|
+
priceDisclosure?: ProductPriceDisclosure;
|
|
38
|
+
/**
|
|
39
|
+
* Whether the plan can be bought right now. `false` for an announced-but-upcoming plan: the tile
|
|
40
|
+
* is shown so the plan can be seen, and its selection is disabled because the backend refuses it.
|
|
41
|
+
* Omitted = acquirable, for a caller supplying its own `plans`.
|
|
42
|
+
*/
|
|
43
|
+
isAcquirable?: boolean;
|
|
29
44
|
isFree?: boolean;
|
|
30
45
|
trialDays?: number;
|
|
31
46
|
}
|
|
@@ -34,8 +49,25 @@ export interface PricingTableProps {
|
|
|
34
49
|
currentPlanKey?: string | null;
|
|
35
50
|
onSelectPlan: (planKey: string, priceId: string) => void;
|
|
36
51
|
showIntervalToggle?: boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Where an on-request plan's "contact sales" action leads. Without it, an on-request plan shows no
|
|
54
|
+
* action: a button that goes nowhere is worse than none.
|
|
55
|
+
*/
|
|
56
|
+
contactSalesHref?: string;
|
|
37
57
|
/** Freeze plan selection while a confirmed mutation is in flight. */
|
|
38
58
|
isSelectionDisabled?: boolean;
|
|
59
|
+
/**
|
|
60
|
+
* A plan change pending at the end of the period (#1868): the plan the subscription moves to, and when. Shown above the grid; plan
|
|
61
|
+
* selection is disabled while it is pending, because another change is refused until it is withdrawn.
|
|
62
|
+
*/
|
|
63
|
+
pendingPlanChange?: {
|
|
64
|
+
targetPlanName: string;
|
|
65
|
+
effectiveAt: Date;
|
|
66
|
+
} | null;
|
|
67
|
+
/** Withdraw the pending change and keep the current plan. Absent when nothing is pending. */
|
|
68
|
+
onKeepCurrentPlan?: () => void;
|
|
69
|
+
/** The withdrawal is in progress. */
|
|
70
|
+
isKeepingCurrentPlan?: boolean;
|
|
39
71
|
isLoading?: boolean;
|
|
40
72
|
unavailable?: boolean;
|
|
41
73
|
error?: string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"billing-pricing-table.d.ts","sourceRoot":"","sources":["../../../../../src/components/billing/billing-pricing-table.tsx"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"billing-pricing-table.d.ts","sourceRoot":"","sources":["../../../../../src/components/billing/billing-pricing-table.tsx"],"names":[],"mappings":"AAGA,OAAO,KAA4D,MAAM,OAAO,CAAA;AAChF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAe,sBAAsB,EAAmC,MAAM,uBAAuB,CAAA;AAG5G,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kFAAkF,CAAA;AAQ5H,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,mBAAmB,EAAE,CAAA;IACtC,aAAa,EAAE,iBAAiB,EAAE,CAAA;IAClC,SAAS,EAAE,OAAO,CAAA;IAClB,MAAM,EAAE,KAAK,CAAC;QACZ,OAAO,EAAE,MAAM,CAAA;QACf,KAAK,EAAE,UAAU,CAAA;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,SAAS,EAAE,OAAO,CAAA;KACnB,CAAC,CAAA;IACF;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,8FAA8F;IAC9F,eAAe,CAAC,EAAE,sBAAsB,CAAA;IACxC;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,gBAAgB,EAAE,CAAA;IACzB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACxD,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,qEAAqE;IACrE,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B;;;OAGG;IACH,iBAAiB,CAAC,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,IAAI,CAAA;KAAE,GAAG,IAAI,CAAA;IACxE,6FAA6F;IAC7F,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAA;IAC9B,qCAAqC;IACrC,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACtB;AAID;;;;;;;GAOG;AACH,MAAM,MAAM,wBAAwB,GAAG,IAAI,CAAC,iBAAiB,EAAE,OAAO,GAAG,cAAc,CAAC,GACtF,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO,GAAG,cAAc,CAAC,CAAC,GAC1D,oBAAoB,CAAA;AAEtB,wBAAgB,YAAY,CAAC,EAAE,MAAgC,EAAE,GAAG,KAAK,EAAE,EAAE,wBAAwB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CA2I/H"}
|
|
@@ -2,8 +2,8 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
|
|
|
2
2
|
import { BillingPlanChangePhase, useBillingPlanChange } from '../../core/billing/useBillingPlanChange.js';
|
|
3
3
|
import { PlanChangePreview } from './billing-plan-change-preview.js';
|
|
4
4
|
import { BillingStateSlice } from '@wildo-ai/saas-models';
|
|
5
|
-
import { useMemo, useCallback, useEffect, useRef } from 'react';
|
|
6
|
-
import { ProductType } from '@wildo-ai/saas-models';
|
|
5
|
+
import { useMemo, useCallback, useEffect, useRef, useState } from 'react';
|
|
6
|
+
import { ProductType, isPendingPlanChangeWithdrawable } from '@wildo-ai/saas-models';
|
|
7
7
|
import { createComponentResolver } from '../../core/components-registry/component-resolver.frontend.helper.js';
|
|
8
8
|
import { FrontendComponentType, CorePresetNames } from '@wildo-ai/presets-components-models';
|
|
9
9
|
import { useI18n } from '../../core/i18n/useI18n.js';
|
|
@@ -35,6 +35,9 @@ export function PricingTable({ preset = CorePresetNames.DEFAULT, ...props }) {
|
|
|
35
35
|
if (!billing?.products)
|
|
36
36
|
return [];
|
|
37
37
|
return billing.products
|
|
38
|
+
// VISIBILITY, not acquirability: public and not retired. An UPCOMING plan stays listed — the
|
|
39
|
+
// grid announces it — and its selection is gated by `isAcquirable` below, which reads the
|
|
40
|
+
// backend's own answer rather than re-deriving it.
|
|
38
41
|
.filter(p => p.type === ProductType.PLAN && p.isPublic && p.isActive)
|
|
39
42
|
.filter(p => !billing.currentScope || !p.targetScopes || p.targetScopes.includes(billing.currentScope))
|
|
40
43
|
.map(product => {
|
|
@@ -63,13 +66,39 @@ export function PricingTable({ preset = CorePresetNames.DEFAULT, ...props }) {
|
|
|
63
66
|
interval: price.interval,
|
|
64
67
|
isDefault: price.isDefault ?? true,
|
|
65
68
|
})),
|
|
66
|
-
|
|
69
|
+
isRecommended: product.isRecommended === true,
|
|
70
|
+
priceDisclosure: product.priceDisclosure,
|
|
71
|
+
isAcquirable: billing.isProductAcquirable(product.key),
|
|
67
72
|
isFree: productPrices.length > 0 && productPrices.every(price => price.unitPrice?.amount === 0n),
|
|
68
73
|
trialDays: product.behaviorPolicy?.trial?.days,
|
|
69
74
|
};
|
|
70
75
|
});
|
|
71
|
-
}, [props.plans, billing?.products, billing?.currentScope, billing?.currentPlanKey, billing?.getPricesForProduct, tBillingProduct, tBillingFeature, tBillingLimit]);
|
|
76
|
+
}, [props.plans, billing?.products, billing?.currentScope, billing?.currentPlanKey, billing?.getPricesForProduct, billing?.isProductAcquirable, tBillingProduct, tBillingFeature, tBillingLimit]);
|
|
72
77
|
const currentPlanKey = props.currentPlanKey !== undefined ? props.currentPlanKey : (billing?.currentPlanKey ?? null);
|
|
78
|
+
// A plan change pending at the end of the period (#1868). The plan is named from the catalogue; a product the catalogue no longer
|
|
79
|
+
// lists shows its id, so a missing name looks missing instead of being invented.
|
|
80
|
+
const storedPendingChange = billing?.subscription?.pendingPlanChange;
|
|
81
|
+
const pendingPlanChange = props.pendingPlanChange !== undefined ? props.pendingPlanChange : (storedPendingChange ? {
|
|
82
|
+
targetPlanName: (() => {
|
|
83
|
+
const key = billing?.products?.find(product => product._id === storedPendingChange.productId)?.key;
|
|
84
|
+
return key ? tBillingProduct(key, 'name') : storedPendingChange.productId;
|
|
85
|
+
})(),
|
|
86
|
+
effectiveAt: new Date(storedPendingChange.effectiveAt),
|
|
87
|
+
} : null);
|
|
88
|
+
const [isKeepingCurrentPlan, setIsKeepingCurrentPlan] = useState(false);
|
|
89
|
+
// Offered only while the change can still be withdrawn: minutes from renewal the operation refuses it, so the action is withheld
|
|
90
|
+
// rather than shown to fail (#1868, `PLAN_CHANGE_WITHDRAWAL_CUTOFF_MS`).
|
|
91
|
+
const onKeepCurrentPlan = props.onKeepCurrentPlan ?? (storedPendingChange && billing && isPendingPlanChangeWithdrawable(storedPendingChange) ? () => {
|
|
92
|
+
setIsKeepingCurrentPlan(true);
|
|
93
|
+
runBillingActionSafely(async () => {
|
|
94
|
+
try {
|
|
95
|
+
await billing.cancelPendingPlanChange();
|
|
96
|
+
}
|
|
97
|
+
finally {
|
|
98
|
+
setIsKeepingCurrentPlan(false);
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
} : undefined);
|
|
73
102
|
const onSelectPlan = useCallback((planKey, priceId) => {
|
|
74
103
|
if (props.onSelectPlan) {
|
|
75
104
|
props.onSelectPlan(planKey, priceId);
|
|
@@ -91,7 +120,7 @@ export function PricingTable({ preset = CorePresetNames.DEFAULT, ...props }) {
|
|
|
91
120
|
const error = props.error !== undefined ? props.error : (billing?.error ? toUserFacingErrorMessage(billing.error) : null);
|
|
92
121
|
if (!isReady)
|
|
93
122
|
return null;
|
|
94
|
-
return (_jsxs(_Fragment, { children: [_jsx(Component, { ...props, plans: plans, currentPlanKey: currentPlanKey, onSelectPlan: onSelectPlan, isLoading: isLoading, error: error, unavailable: unavailable, isSelectionDisabled: props.isSelectionDisabled || planChange.state.phase === BillingPlanChangePhase.CONFIRMING }), planChange.state.phase !== BillingPlanChangePhase.IDLE && (_jsx(PlanChangePreview, { targetPlanName: tBillingProduct(planChange.state.target.newProductKey, 'name'), preview: 'preview' in planChange.state ? planChange.state.preview : null, isLoading: planChange.state.phase === BillingPlanChangePhase.PREVIEWING, isConfirming: planChange.state.phase === BillingPlanChangePhase.CONFIRMING, hasError: planChange.state.phase === BillingPlanChangePhase.FAILED || ('hasError' in planChange.state && planChange.state.hasError), onCancel: planChange.cancel, onConfirm: planChange.state.phase === BillingPlanChangePhase.READY || planChange.state.phase === BillingPlanChangePhase.CONFIRMING ? () => { void planChange.confirm(); } : undefined, onRetry: planChange.state.phase === BillingPlanChangePhase.FAILED ? () => {
|
|
123
|
+
return (_jsxs(_Fragment, { children: [_jsx(Component, { ...props, plans: plans, currentPlanKey: currentPlanKey, onSelectPlan: onSelectPlan, isLoading: isLoading, error: error, unavailable: unavailable, isSelectionDisabled: props.isSelectionDisabled || planChange.state.phase === BillingPlanChangePhase.CONFIRMING || !!pendingPlanChange, pendingPlanChange: pendingPlanChange, onKeepCurrentPlan: onKeepCurrentPlan, isKeepingCurrentPlan: props.isKeepingCurrentPlan ?? isKeepingCurrentPlan }), planChange.state.phase !== BillingPlanChangePhase.IDLE && (_jsx(PlanChangePreview, { targetPlanName: tBillingProduct(planChange.state.target.newProductKey, 'name'), preview: 'preview' in planChange.state ? planChange.state.preview : null, isLoading: planChange.state.phase === BillingPlanChangePhase.PREVIEWING, isConfirming: planChange.state.phase === BillingPlanChangePhase.CONFIRMING, hasError: planChange.state.phase === BillingPlanChangePhase.FAILED || ('hasError' in planChange.state && planChange.state.hasError), onCancel: planChange.cancel, onConfirm: planChange.state.phase === BillingPlanChangePhase.READY || planChange.state.phase === BillingPlanChangePhase.CONFIRMING ? () => { void planChange.confirm(); } : undefined, onRetry: planChange.state.phase === BillingPlanChangePhase.FAILED ? () => {
|
|
95
124
|
if (planChange.state.phase === BillingPlanChangePhase.FAILED)
|
|
96
125
|
void planChange.select(planChange.state.target);
|
|
97
126
|
} : undefined }))] }));
|