@eifi1/ui-kit 0.31.0 → 0.32.0
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/README.md +53 -30
- package/dist/account/delete-account-setting.d.ts +8 -3
- package/dist/admin/admin-action-confirm.d.ts +8 -3
- package/dist/admin/admin-parts.d.ts +8 -1
- package/dist/admin/admin-parts.js +1 -1
- package/dist/admin/admin-parts.js.map +1 -1
- package/dist/admin/invitations-panel.d.ts +8 -3
- package/dist/admin/invitations-panel.js +29 -26
- package/dist/admin/invitations-panel.js.map +1 -1
- package/dist/admin/reviewer-scope-editor.d.ts +8 -3
- package/dist/admin/role-select.d.ts +10 -5
- package/dist/admin/transfer-ownership-dialog.d.ts +8 -3
- package/dist/admin/user-roster.d.ts +10 -5
- package/dist/admin/user-roster.js +8 -47
- package/dist/admin/user-roster.js.map +1 -1
- package/dist/auth/auth-errors.d.ts +43 -8
- package/dist/auth/auth-errors.js +24 -1
- package/dist/auth/auth-errors.js.map +1 -1
- package/dist/auth/register-form.d.ts +8 -3
- package/dist/auth/reset-password-form.d.ts +1 -1
- package/dist/auth/reset-password-form.js +2 -1
- package/dist/auth/reset-password-form.js.map +1 -1
- package/dist/auth/verify-email.d.ts +4 -0
- package/dist/auth/verify-email.js +3 -2
- package/dist/auth/verify-email.js.map +1 -1
- package/dist/billing/billing-banner.d.ts +184 -0
- package/dist/billing/billing-banner.js +98 -0
- package/dist/billing/billing-banner.js.map +1 -0
- package/dist/billing/billing-labels.d.ts +100 -0
- package/dist/billing/billing-labels.js +74 -0
- package/dist/billing/billing-labels.js.map +1 -0
- package/dist/billing/billing-lock.d.ts +158 -0
- package/dist/billing/billing-lock.js +17 -0
- package/dist/billing/billing-lock.js.map +1 -0
- package/dist/billing/billing-standing.d.ts +149 -0
- package/dist/billing/billing-standing.js +28 -0
- package/dist/billing/billing-standing.js.map +1 -0
- package/dist/billing/plan-card.d.ts +248 -0
- package/dist/billing/plan-card.js +248 -0
- package/dist/billing/plan-card.js.map +1 -0
- package/dist/billing/plan-limit-notice.d.ts +156 -0
- package/dist/billing/plan-limit-notice.js +76 -0
- package/dist/billing/plan-limit-notice.js.map +1 -0
- package/dist/billing/plan-limit.d.ts +34 -0
- package/dist/billing/plan-limit.js +20 -0
- package/dist/billing/plan-limit.js.map +1 -0
- package/dist/billing/plan-price.d.ts +61 -0
- package/dist/billing/plan-price.js +45 -0
- package/dist/billing/plan-price.js.map +1 -0
- package/dist/billing/subscription-actions.d.ts +133 -0
- package/dist/billing/subscription-actions.js +28 -0
- package/dist/billing/subscription-actions.js.map +1 -0
- package/dist/billing/subscription-status-chip.d.ts +149 -0
- package/dist/billing/subscription-status-chip.js +48 -0
- package/dist/billing/subscription-status-chip.js.map +1 -0
- package/dist/chart.d.ts +9 -3
- package/dist/components/account-chips.d.ts +16 -4
- package/dist/components/account-chips.js +21 -3
- package/dist/components/account-chips.js.map +1 -1
- package/dist/components/alert-banner.d.ts +6 -1
- package/dist/components/alert-banner.js +4 -3
- package/dist/components/alert-banner.js.map +1 -1
- package/dist/components/amount-input.d.ts +8 -3
- package/dist/components/amount-input.js +5 -5
- package/dist/components/amount-input.js.map +1 -1
- package/dist/components/appearance-labels.d.ts +32 -0
- package/dist/components/appearance-labels.js +18 -0
- package/dist/components/appearance-labels.js.map +1 -0
- package/dist/components/autocomplete.js +2 -2
- package/dist/components/autocomplete.js.map +1 -1
- package/dist/components/breadcrumbs.js +3 -2
- package/dist/components/breadcrumbs.js.map +1 -1
- package/dist/components/bulk-action-bar.d.ts +2 -2
- package/dist/components/bulk-action-bar.js +7 -12
- package/dist/components/bulk-action-bar.js.map +1 -1
- package/dist/components/button-group.d.ts +8 -3
- package/dist/components/calculator.d.ts +8 -3
- package/dist/components/calculator.js +4 -3
- package/dist/components/calculator.js.map +1 -1
- package/dist/components/calendar-heatmap.js +5 -5
- package/dist/components/calendar-heatmap.js.map +1 -1
- package/dist/components/chart-height.d.ts +23 -0
- package/dist/components/chart-height.js +15 -0
- package/dist/components/chart-height.js.map +1 -0
- package/dist/components/chart-zoom.js +6 -1
- package/dist/components/chart-zoom.js.map +1 -1
- package/dist/components/checkbox-group.js +2 -2
- package/dist/components/checkbox-group.js.map +1 -1
- package/dist/components/checkbox.d.ts +10 -0
- package/dist/components/checkbox.js +25 -10
- package/dist/components/checkbox.js.map +1 -1
- package/dist/components/chip.d.ts +19 -3
- package/dist/components/chip.js +47 -21
- package/dist/components/chip.js.map +1 -1
- package/dist/components/choice-card.d.ts +1 -1
- package/dist/components/choice-card.js +8 -7
- package/dist/components/choice-card.js.map +1 -1
- package/dist/components/column-mapper.js +1 -1
- package/dist/components/column-mapper.js.map +1 -1
- package/dist/components/combobox-core.js +8 -7
- package/dist/components/combobox-core.js.map +1 -1
- package/dist/components/combobox.js +8 -8
- package/dist/components/combobox.js.map +1 -1
- package/dist/components/confirm-dialog.d.ts +8 -3
- package/dist/components/confirm-dialog.js +7 -1
- package/dist/components/confirm-dialog.js.map +1 -1
- package/dist/components/copy-button.d.ts +10 -5
- package/dist/components/country-select.js +1 -1
- package/dist/components/country-select.js.map +1 -1
- package/dist/components/currency-select.js +3 -3
- package/dist/components/currency-select.js.map +1 -1
- package/dist/components/danger-confirm.d.ts +8 -3
- package/dist/components/data-table-cells.d.ts +1 -1
- package/dist/components/data-table-filter-popover.d.ts +1 -1
- package/dist/components/data-table-filter-popover.js +4 -1
- package/dist/components/data-table-filter-popover.js.map +1 -1
- package/dist/components/data-table-filters.d.ts +1 -1
- package/dist/components/data-table-labels.d.ts +1 -1
- package/dist/components/data-table-pagination.d.ts +1 -1
- package/dist/components/data-table.d.ts +1 -1
- package/dist/components/data-table.js +123 -52
- package/dist/components/data-table.js.map +1 -1
- package/dist/components/date-picker.d.ts +1 -1
- package/dist/components/date-picker.js +7 -5
- package/dist/components/date-picker.js.map +1 -1
- package/dist/components/description-list.js +2 -2
- package/dist/components/description-list.js.map +1 -1
- package/dist/components/dialog-frame.js +2 -1
- package/dist/components/dialog-frame.js.map +1 -1
- package/dist/components/disclosure.js +3 -2
- package/dist/components/disclosure.js.map +1 -1
- package/dist/components/dropdown.d.ts +1 -1
- package/dist/components/dropdown.js +7 -1
- package/dist/components/dropdown.js.map +1 -1
- package/dist/components/facing-pair.d.ts +19 -6
- package/dist/components/facing-pair.js +3 -2
- package/dist/components/facing-pair.js.map +1 -1
- package/dist/components/field-parts.d.ts +102 -6
- package/dist/components/field-parts.js +81 -6
- package/dist/components/field-parts.js.map +1 -1
- package/dist/components/field-sync.d.ts +4 -1
- package/dist/components/field-sync.js +12 -2
- package/dist/components/field-sync.js.map +1 -1
- package/dist/components/field.js +2 -2
- package/dist/components/field.js.map +1 -1
- package/dist/components/file-button.d.ts +8 -3
- package/dist/components/file-dropzone.d.ts +8 -3
- package/dist/components/floating-panel.js +7 -4
- package/dist/components/floating-panel.js.map +1 -1
- package/dist/components/focus-ring.d.ts +12 -0
- package/dist/components/focus-ring.js +8 -0
- package/dist/components/focus-ring.js.map +1 -0
- package/dist/components/form-actions.d.ts +8 -3
- package/dist/components/form-actions.js +33 -19
- package/dist/components/form-actions.js.map +1 -1
- package/dist/components/full-bleed-dialog.d.ts +11 -1
- package/dist/components/full-bleed-dialog.js +3 -1
- package/dist/components/full-bleed-dialog.js.map +1 -1
- package/dist/components/iban-input.d.ts +8 -3
- package/dist/components/image-grid.js +1 -1
- package/dist/components/image-grid.js.map +1 -1
- package/dist/components/inline-edit-field.js +6 -3
- package/dist/components/inline-edit-field.js.map +1 -1
- package/dist/components/language-select.d.ts +8 -3
- package/dist/components/legal-page.d.ts +26 -5
- package/dist/components/legal-page.js +3 -1
- package/dist/components/legal-page.js.map +1 -1
- package/dist/components/legal.d.ts +8 -3
- package/dist/components/legal.js +2 -1
- package/dist/components/legal.js.map +1 -1
- package/dist/components/lightbox.js +24 -2
- package/dist/components/lightbox.js.map +1 -1
- package/dist/components/line-items.js +2 -1
- package/dist/components/line-items.js.map +1 -1
- package/dist/components/list.d.ts +5 -0
- package/dist/components/list.js +13 -9
- package/dist/components/list.js.map +1 -1
- package/dist/components/measured-grid.d.ts +3 -1
- package/dist/components/measured-grid.js +38 -20
- package/dist/components/measured-grid.js.map +1 -1
- package/dist/components/menu-item.js +2 -1
- package/dist/components/menu-item.js.map +1 -1
- package/dist/components/mini-calendar.js +8 -4
- package/dist/components/mini-calendar.js.map +1 -1
- package/dist/components/money-field.d.ts +8 -3
- package/dist/components/month-picker.js +9 -5
- package/dist/components/month-picker.js.map +1 -1
- package/dist/components/nav-pills.js +1 -1
- package/dist/components/nav-pills.js.map +1 -1
- package/dist/components/number-field.d.ts +8 -3
- package/dist/components/number-input.d.ts +11 -4
- package/dist/components/number-input.js +8 -6
- package/dist/components/number-input.js.map +1 -1
- package/dist/components/numpad-sheet.d.ts +8 -3
- package/dist/components/numpad-sheet.js +2 -1
- package/dist/components/numpad-sheet.js.map +1 -1
- package/dist/components/one-time-code-input.js +2 -2
- package/dist/components/one-time-code-input.js.map +1 -1
- package/dist/components/page-contents.js +2 -2
- package/dist/components/page-contents.js.map +1 -1
- package/dist/components/phone-input.d.ts +8 -3
- package/dist/components/phone-input.js +2 -2
- package/dist/components/phone-input.js.map +1 -1
- package/dist/components/pie-chart.d.ts +8 -2
- package/dist/components/pie-chart.js +11 -7
- package/dist/components/pie-chart.js.map +1 -1
- package/dist/components/popover.d.ts +9 -1
- package/dist/components/popover.js +8 -4
- package/dist/components/popover.js.map +1 -1
- package/dist/components/row-actions.d.ts +100 -0
- package/dist/components/row-actions.js +165 -0
- package/dist/components/row-actions.js.map +1 -0
- package/dist/components/scroll-area.js +1 -1
- package/dist/components/scroll-area.js.map +1 -1
- package/dist/components/search-field.js +3 -2
- package/dist/components/search-field.js.map +1 -1
- package/dist/components/series-chart-budget.d.ts +30 -7
- package/dist/components/series-chart-budget.js +12 -4
- package/dist/components/series-chart-budget.js.map +1 -1
- package/dist/components/series-chart-ticks.d.ts +7 -1
- package/dist/components/series-chart-ticks.js +6 -0
- package/dist/components/series-chart-ticks.js.map +1 -1
- package/dist/components/series-chart.d.ts +58 -28
- package/dist/components/series-chart.js +42 -32
- package/dist/components/series-chart.js.map +1 -1
- package/dist/components/settings-fields.d.ts +51 -6
- package/dist/components/settings-fields.js +37 -0
- package/dist/components/settings-fields.js.map +1 -1
- package/dist/components/share-card.d.ts +11 -6
- package/dist/components/share-card.js +2 -0
- package/dist/components/share-card.js.map +1 -1
- package/dist/components/sign-chip.d.ts +4 -0
- package/dist/components/sign-chip.js +17 -4
- package/dist/components/sign-chip.js.map +1 -1
- package/dist/components/signature-pad.d.ts +3 -1
- package/dist/components/signature-pad.js +8 -5
- package/dist/components/signature-pad.js.map +1 -1
- package/dist/components/slider.js +7 -6
- package/dist/components/slider.js.map +1 -1
- package/dist/components/sparkline.d.ts +5 -1
- package/dist/components/sparkline.js +4 -2
- package/dist/components/sparkline.js.map +1 -1
- package/dist/components/stat-tile.d.ts +17 -1
- package/dist/components/stat-tile.js +48 -20
- package/dist/components/stat-tile.js.map +1 -1
- package/dist/components/status-dot.d.ts +4 -0
- package/dist/components/swipeable-row.js +2 -1
- package/dist/components/swipeable-row.js.map +1 -1
- package/dist/components/switch.d.ts +21 -7
- package/dist/components/switch.js +24 -11
- package/dist/components/switch.js.map +1 -1
- package/dist/components/table.js +2 -2
- package/dist/components/table.js.map +1 -1
- package/dist/components/text-link.d.ts +8 -3
- package/dist/components/text-link.js +1 -1
- package/dist/components/text-link.js.map +1 -1
- package/dist/components/text.d.ts +7 -2
- package/dist/components/text.js +5 -5
- package/dist/components/text.js.map +1 -1
- package/dist/components/tile-radio.js +2 -1
- package/dist/components/tile-radio.js.map +1 -1
- package/dist/components/time-input.d.ts +8 -3
- package/dist/components/toast.d.ts +18 -2
- package/dist/components/toast.js +8 -5
- package/dist/components/toast.js.map +1 -1
- package/dist/components/toggle-group.d.ts +16 -1
- package/dist/components/toggle-group.js +40 -11
- package/dist/components/toggle-group.js.map +1 -1
- package/dist/components/toggle-legend.d.ts +10 -1
- package/dist/components/toggle-legend.js +21 -7
- package/dist/components/toggle-legend.js.map +1 -1
- package/dist/components/translation-review-parts.d.ts +4 -0
- package/dist/components/translation-review.d.ts +4 -0
- package/dist/components/translation-review.js +3 -3
- package/dist/components/translation-review.js.map +1 -1
- package/dist/components/tree-view.js +3 -2
- package/dist/components/tree-view.js.map +1 -1
- package/dist/components/treemap.d.ts +5 -2
- package/dist/components/treemap.js +33 -16
- package/dist/components/treemap.js.map +1 -1
- package/dist/components/ui.d.ts +8 -3
- package/dist/components/ui.js +202 -114
- package/dist/components/ui.js.map +1 -1
- package/dist/components/use-table-state.d.ts +1 -1
- package/dist/components/user-avatar.d.ts +5 -1
- package/dist/components/user-avatar.js +1 -1
- package/dist/components/user-avatar.js.map +1 -1
- package/dist/{data-table-labels-DUELeXpa.d.ts → data-table-labels-kpAAVi6g.d.ts} +26 -2
- package/dist/data-table.d.ts +1 -1
- package/dist/{delete-account-setting-DCFS5Vof.d.ts → delete-account-setting-BvdQdbv3.d.ts} +613 -58
- package/dist/demo/demo-banner.js +1 -0
- package/dist/demo/demo-banner.js.map +1 -1
- package/dist/feedback/feedback-attachment.d.ts +8 -3
- package/dist/feedback/feedback-context.d.ts +8 -3
- package/dist/feedback/feedback-crash.d.ts +8 -3
- package/dist/feedback/feedback-dialog.d.ts +8 -3
- package/dist/feedback/feedback-dialog.js +3 -3
- package/dist/feedback/feedback-dialog.js.map +1 -1
- package/dist/feedback/feedback-inbox.d.ts +8 -3
- package/dist/feedback/feedback-inbox.js +2 -2
- package/dist/feedback/feedback-inbox.js.map +1 -1
- package/dist/feedback/feedback-labels.d.ts +8 -3
- package/dist/feedback/feedback-menu.d.ts +9 -4
- package/dist/feedback/feedback-record.d.ts +8 -3
- package/dist/feedback/feedback-row-detail.d.ts +8 -3
- package/dist/feedback/feedback-status-undo.d.ts +8 -3
- package/dist/feedback/feedback-submit.d.ts +8 -3
- package/dist/feedback/feedback-swipe.d.ts +8 -3
- package/dist/feedback/feedback-table.d.ts +8 -3
- package/dist/feedback/feedback-thread.d.ts +8 -3
- package/dist/feedback/feedback-thread.js +3 -3
- package/dist/feedback/feedback-thread.js.map +1 -1
- package/dist/feedback.d.ts +8 -3
- package/dist/hooks/use-anchored-panel.d.ts +32 -3
- package/dist/hooks/use-anchored-panel.js +21 -3
- package/dist/hooks/use-anchored-panel.js.map +1 -1
- package/dist/hooks/use-breakpoint.d.ts +77 -0
- package/dist/hooks/use-breakpoint.js +50 -0
- package/dist/hooks/use-breakpoint.js.map +1 -0
- package/dist/hooks/use-file-drop.d.ts +8 -3
- package/dist/hooks/use-large-text.d.ts +29 -0
- package/dist/hooks/use-large-text.js +20 -0
- package/dist/hooks/use-large-text.js.map +1 -0
- package/dist/hooks/use-windowed-rows.d.ts +52 -8
- package/dist/hooks/use-windowed-rows.js +94 -5
- package/dist/hooks/use-windowed-rows.js.map +1 -1
- package/dist/i18n/defaults.d.ts +8 -3
- package/dist/i18n/defaults.js +8 -0
- package/dist/i18n/defaults.js.map +1 -1
- package/dist/i18n/german.d.ts +8 -3
- package/dist/i18n/german.js +91 -3
- package/dist/i18n/german.js.map +1 -1
- package/dist/i18n/kit-labels.d.ts +8 -3
- package/dist/i18n/kit-labels.js.map +1 -1
- package/dist/i18n/languages.d.ts +10 -5
- package/dist/i18n/locales/de-CH.d.ts +8 -3
- package/dist/i18n/locales/en.d.ts +8 -3
- package/dist/i18n/locales/es.d.ts +8 -3
- package/dist/i18n/locales/es.js +86 -3
- package/dist/i18n/locales/es.js.map +1 -1
- package/dist/i18n/locales/fr.d.ts +8 -3
- package/dist/i18n/locales/fr.js +88 -3
- package/dist/i18n/locales/fr.js.map +1 -1
- package/dist/i18n/locales/hu.d.ts +8 -3
- package/dist/i18n/locales/hu.js +88 -3
- package/dist/i18n/locales/hu.js.map +1 -1
- package/dist/i18n/locales/it.d.ts +8 -3
- package/dist/i18n/locales/it.js +89 -3
- package/dist/i18n/locales/it.js.map +1 -1
- package/dist/i18n/locales/zh.d.ts +8 -3
- package/dist/i18n/locales/zh.js +86 -3
- package/dist/i18n/locales/zh.js.map +1 -1
- package/dist/i18n/review.d.ts +8 -3
- package/dist/i18n/review.js +16 -1
- package/dist/i18n/review.js.map +1 -1
- package/dist/index.d.ts +29 -13
- package/dist/index.js +77 -5
- package/dist/index.js.map +1 -1
- package/dist/landing/landing-actions.d.ts +12 -5
- package/dist/landing/landing-actions.js +1 -1
- package/dist/landing/landing-actions.js.map +1 -1
- package/dist/landing/landing-sections.d.ts +8 -3
- package/dist/landing/public-header.d.ts +9 -4
- package/dist/landing/public-header.js +3 -3
- package/dist/landing/public-header.js.map +1 -1
- package/dist/landing/routing.d.ts +27 -9
- package/dist/landing/routing.js +5 -2
- package/dist/landing/routing.js.map +1 -1
- package/dist/lib/cn.js +3 -2
- package/dist/lib/cn.js.map +1 -1
- package/dist/rhf/fields.d.ts +8 -3
- package/dist/rhf/fields.js +1 -1
- package/dist/rhf/fields.js.map +1 -1
- package/dist/rhf/form.d.ts +8 -3
- package/dist/rhf/form.js +2 -2
- package/dist/rhf/form.js.map +1 -1
- package/dist/rhf.d.ts +8 -3
- package/dist/search/command-palette.d.ts +1 -1
- package/dist/search/command-palette.js +9 -8
- package/dist/search/command-palette.js.map +1 -1
- package/dist/settings/settings-labels.d.ts +8 -1
- package/dist/settings/settings-labels.js +7 -2
- package/dist/settings/settings-labels.js.map +1 -1
- package/dist/settings/settings-layout.js +2 -1
- package/dist/settings/settings-layout.js.map +1 -1
- package/dist/settings/settings-section.d.ts +8 -3
- package/dist/settings/use-account-appearance.d.ts +92 -0
- package/dist/settings/use-account-appearance.js +63 -0
- package/dist/settings/use-account-appearance.js.map +1 -0
- package/dist/settings/use-settings-route.d.ts +1 -1
- package/dist/settings/use-settings-route.js +2 -3
- package/dist/settings/use-settings-route.js.map +1 -1
- package/dist/shell/app-shell.d.ts +12 -171
- package/dist/shell/app-shell.js +144 -28
- package/dist/shell/app-shell.js.map +1 -1
- package/dist/shell/auth-layout.js +1 -1
- package/dist/shell/auth-layout.js.map +1 -1
- package/dist/shell/option-switcher-menu.js +1 -1
- package/dist/shell/option-switcher-menu.js.map +1 -1
- package/dist/shell/top-bar-brand.d.ts +8 -3
- package/dist/shell/top-bar-brand.js +3 -1
- package/dist/shell/top-bar-brand.js.map +1 -1
- package/dist/shell/topbar-action-menu.d.ts +4 -0
- package/dist/shell/topbar-action-menu.js +3 -3
- package/dist/shell/topbar-action-menu.js.map +1 -1
- package/dist/shell/topbar-controls.js +4 -4
- package/dist/shell/topbar-controls.js.map +1 -1
- package/dist/shell.d.ts +10 -6
- package/dist/shell.js.map +1 -1
- package/dist/theme/contrast-tokens.d.ts +41 -0
- package/dist/theme/contrast-tokens.js +59 -0
- package/dist/theme/contrast-tokens.js.map +1 -0
- package/dist/theme/contrast.d.ts +109 -0
- package/dist/theme/contrast.js +128 -0
- package/dist/theme/contrast.js.map +1 -0
- package/dist/theme/palette-presets.d.ts +12 -1
- package/dist/theme/palette-presets.js +9 -4
- package/dist/theme/palette-presets.js.map +1 -1
- package/dist/theme/palette-store.js.map +1 -1
- package/dist/theme/text-size.d.ts +157 -0
- package/dist/theme/text-size.js +121 -0
- package/dist/theme/text-size.js.map +1 -0
- package/dist/wizard/stepper-nav.d.ts +8 -3
- package/dist/wizard.d.ts +8 -3
- package/package.json +1 -1
- package/src/admin/admin-parts.ts +9 -2
- package/src/admin/invitations-panel.tsx +36 -29
- package/src/admin/user-roster.tsx +17 -72
- package/src/auth/auth-errors.ts +68 -7
- package/src/auth/reset-password-form.tsx +6 -2
- package/src/auth/verify-email.tsx +14 -2
- package/src/billing/billing-banner.tsx +205 -0
- package/src/billing/billing-labels.ts +224 -0
- package/src/billing/billing-lock.ts +75 -0
- package/src/billing/billing-standing.ts +72 -0
- package/src/billing/plan-card.tsx +458 -0
- package/src/billing/plan-limit-notice.tsx +145 -0
- package/src/billing/plan-limit.ts +53 -0
- package/src/billing/plan-price.ts +101 -0
- package/src/billing/subscription-actions.tsx +76 -0
- package/src/billing/subscription-status-chip.tsx +95 -0
- package/src/components/account-chips.tsx +36 -10
- package/src/components/alert-banner.tsx +11 -6
- package/src/components/amount-input.tsx +5 -5
- package/src/components/appearance-labels.ts +40 -0
- package/src/components/autocomplete.tsx +2 -2
- package/src/components/breadcrumbs.tsx +3 -3
- package/src/components/bulk-action-bar.tsx +11 -14
- package/src/components/calculator.tsx +4 -3
- package/src/components/calendar-heatmap.tsx +5 -5
- package/src/components/chart-height.ts +30 -0
- package/src/components/chart-zoom.tsx +6 -1
- package/src/components/checkbox-group.tsx +2 -2
- package/src/components/checkbox.tsx +62 -20
- package/src/components/chip.tsx +105 -24
- package/src/components/choice-card.tsx +15 -10
- package/src/components/column-mapper.tsx +1 -1
- package/src/components/combobox-core.tsx +8 -7
- package/src/components/combobox.tsx +8 -8
- package/src/components/confirm-dialog.tsx +20 -1
- package/src/components/country-select.tsx +1 -1
- package/src/components/currency-select.tsx +3 -3
- package/src/components/data-table-filter-popover.tsx +7 -1
- package/src/components/data-table.tsx +160 -43
- package/src/components/date-picker.tsx +12 -9
- package/src/components/description-list.tsx +2 -2
- package/src/components/dialog-frame.tsx +2 -1
- package/src/components/disclosure.tsx +3 -2
- package/src/components/dropdown.tsx +10 -2
- package/src/components/facing-pair.ts +12 -5
- package/src/components/field-parts.tsx +190 -7
- package/src/components/field-sync.tsx +17 -3
- package/src/components/field.tsx +2 -2
- package/src/components/floating-panel.tsx +7 -4
- package/src/components/focus-ring.ts +12 -0
- package/src/components/form-actions.tsx +55 -18
- package/src/components/full-bleed-dialog.tsx +18 -4
- package/src/components/image-grid.tsx +1 -1
- package/src/components/inline-edit-field.tsx +6 -3
- package/src/components/legal-page.tsx +28 -2
- package/src/components/legal.tsx +19 -1
- package/src/components/lightbox.tsx +24 -2
- package/src/components/line-items.tsx +7 -1
- package/src/components/list.tsx +36 -10
- package/src/components/measured-grid.tsx +49 -24
- package/src/components/menu-item.tsx +2 -2
- package/src/components/mini-calendar.tsx +8 -4
- package/src/components/month-picker.tsx +9 -5
- package/src/components/nav-pills.tsx +1 -1
- package/src/components/number-input.tsx +14 -7
- package/src/components/numpad-sheet.tsx +2 -2
- package/src/components/one-time-code-input.tsx +2 -2
- package/src/components/page-contents.tsx +2 -2
- package/src/components/phone-input.tsx +2 -2
- package/src/components/pie-chart.tsx +19 -9
- package/src/components/popover.tsx +22 -5
- package/src/components/row-actions.tsx +344 -0
- package/src/components/scroll-area.tsx +1 -1
- package/src/components/search-field.tsx +4 -2
- package/src/components/series-chart-budget.ts +40 -8
- package/src/components/series-chart-ticks.ts +10 -0
- package/src/components/series-chart.tsx +123 -72
- package/src/components/settings-fields.tsx +81 -2
- package/src/components/share-card.tsx +10 -0
- package/src/components/sign-chip.tsx +28 -4
- package/src/components/signature-pad.tsx +13 -7
- package/src/components/slider.tsx +22 -9
- package/src/components/sparkline.tsx +11 -3
- package/src/components/stat-tile.tsx +70 -14
- package/src/components/swipeable-row.tsx +2 -1
- package/src/components/switch.tsx +57 -23
- package/src/components/table.tsx +2 -2
- package/src/components/text-link.tsx +1 -1
- package/src/components/text.tsx +11 -6
- package/src/components/tile-radio.tsx +4 -1
- package/src/components/toast.tsx +27 -7
- package/src/components/toggle-group.tsx +99 -12
- package/src/components/toggle-legend.tsx +53 -8
- package/src/components/translation-review.tsx +10 -5
- package/src/components/tree-view.tsx +3 -2
- package/src/components/treemap.tsx +27 -10
- package/src/components/ui.tsx +331 -145
- package/src/components/user-avatar.tsx +1 -1
- package/src/demo/demo-banner.tsx +5 -0
- package/src/feedback/feedback-dialog.tsx +3 -3
- package/src/feedback/feedback-inbox.tsx +2 -2
- package/src/feedback/feedback-thread.tsx +3 -3
- package/src/hooks/use-anchored-panel.ts +67 -5
- package/src/hooks/use-breakpoint.ts +121 -0
- package/src/hooks/use-large-text.ts +41 -0
- package/src/hooks/use-windowed-rows.ts +168 -12
- package/src/i18n/defaults.ts +8 -0
- package/src/i18n/german.ts +105 -1
- package/src/i18n/kit-labels.tsx +12 -0
- package/src/i18n/locales/es.ts +96 -1
- package/src/i18n/locales/fr.ts +100 -1
- package/src/i18n/locales/hu.ts +98 -1
- package/src/i18n/locales/it.ts +101 -1
- package/src/i18n/locales/zh.ts +92 -1
- package/src/i18n/review.ts +15 -0
- package/src/index.ts +82 -8
- package/src/landing/landing-actions.tsx +9 -5
- package/src/landing/public-header.tsx +4 -4
- package/src/landing/routing.tsx +22 -5
- package/src/lib/cn.ts +13 -2
- package/src/rhf/fields.tsx +1 -1
- package/src/rhf/form.tsx +2 -2
- package/src/search/command-palette.tsx +10 -9
- package/src/settings/settings-labels.ts +13 -1
- package/src/settings/settings-layout.tsx +2 -1
- package/src/settings/use-account-appearance.ts +148 -0
- package/src/settings/use-settings-route.ts +3 -4
- package/src/shell/app-shell.tsx +278 -54
- package/src/shell/auth-layout.tsx +1 -1
- package/src/shell/option-switcher-menu.tsx +1 -1
- package/src/shell/top-bar-brand.tsx +3 -1
- package/src/shell/topbar-action-menu.tsx +3 -3
- package/src/shell/topbar-controls.tsx +4 -4
- package/src/shell.ts +7 -1
- package/src/theme/contrast-tokens.ts +112 -0
- package/src/theme/contrast.ts +224 -0
- package/src/theme/palette-presets.ts +24 -4
- package/src/theme/palette-store.ts +6 -1
- package/src/theme/text-size.ts +267 -0
- package/tokens.css +143 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
2
|
import { ComponentPropsWithoutRef, ReactNode, ReactElement, RefObject, Ref, ButtonHTMLAttributes, MouseEvent, AnchorHTMLAttributes, SelectHTMLAttributes, InputHTMLAttributes, TextareaHTMLAttributes } from 'react';
|
|
3
3
|
import { TooltipSide } from './components/tooltip.js';
|
|
4
|
-
import { d as DataTableColumn, f as DataTableLabels } from './data-table-labels-
|
|
4
|
+
import { d as DataTableColumn, f as DataTableLabels } from './data-table-labels-kpAAVi6g.js';
|
|
5
5
|
import { MiniCalendarLabels, WeekDay } from './components/mini-calendar.js';
|
|
6
6
|
import { CalendarHeatmapLabels } from './components/calendar-heatmap.js';
|
|
7
7
|
import { PopoverLabels } from './components/popover.js';
|
|
@@ -63,6 +63,8 @@ import { AdminActionLogLabels } from './admin/admin-action-log.js';
|
|
|
63
63
|
import { SettingsLabels } from './settings/settings-labels.js';
|
|
64
64
|
import { LandingLabels } from './landing/landing-labels.js';
|
|
65
65
|
import { DemoLabels } from './demo/demo-labels.js';
|
|
66
|
+
import { AppearanceLabels } from './components/appearance-labels.js';
|
|
67
|
+
import { TextSize } from './theme/text-size.js';
|
|
66
68
|
import { ReauthDialogLabels } from './components/reauth-dialog.js';
|
|
67
69
|
import { ServerWakeLabels } from './components/server-wake.js';
|
|
68
70
|
import { TranslationReviewLabels } from './components/translation-review-labels.js';
|
|
@@ -72,7 +74,8 @@ import { IbanKind } from './lib/iban.js';
|
|
|
72
74
|
import { PhoneCountry, PhoneCountryCode } from './lib/phone.js';
|
|
73
75
|
import { SignChipLabels } from './components/sign-chip.js';
|
|
74
76
|
import { ColumnMapperLabels } from './components/column-mapper.js';
|
|
75
|
-
import './components/field-parts.js';
|
|
77
|
+
import { DisabledReasonDisplay } from './components/field-parts.js';
|
|
78
|
+
import './components/focus-ring.js';
|
|
76
79
|
|
|
77
80
|
/**
|
|
78
81
|
* A button that opens the file picker — the shape all three apps kept writing by hand
|
|
@@ -2731,6 +2734,14 @@ interface ConfirmOptions {
|
|
|
2731
2734
|
* keeps spaces too — for a phrase like "DELETE" whose contract is "exactly this".
|
|
2732
2735
|
*/
|
|
2733
2736
|
typedMatch?: TypedMatch;
|
|
2737
|
+
/**
|
|
2738
|
+
* 0.31.1: the confirm button COMMITS, as `Button`'s `commit` does. Under a locked
|
|
2739
|
+
* `WriteLockProvider` — read where `useConfirm` was called, not where the one dialog
|
|
2740
|
+
* host sits — it is `aria-disabled` with the lock's reason, so a read-only page (a
|
|
2741
|
+
* demo, a viewer's budget) can't confirm a delete through a dialog. One prop for the
|
|
2742
|
+
* many confirm sites an app has (kastlan's 0.31 adoption counted ~23).
|
|
2743
|
+
*/
|
|
2744
|
+
commit?: boolean;
|
|
2734
2745
|
}
|
|
2735
2746
|
type ConfirmFn = (options: ConfirmOptions) => Promise<boolean>;
|
|
2736
2747
|
/**
|
|
@@ -2912,11 +2923,28 @@ type FormActionsAlign = "start" | "center" | "end" | "between";
|
|
|
2912
2923
|
* FullBleedDialog's `footer`), which already pads and rules it.
|
|
2913
2924
|
*/
|
|
2914
2925
|
type FormActionsPlacement = "inline" | "sticky" | "dialog";
|
|
2926
|
+
/**
|
|
2927
|
+
* When the row's buttons STACK, one per line at the row's full width (0.32,
|
|
2928
|
+
* docs/text-size-harmonization.md §4 "FormActions stack full width on a phone layout"):
|
|
2929
|
+
*
|
|
2930
|
+
* - `"auto"` (default): on the phone layout (`usePhoneLayout()`, `max-md:` at the text
|
|
2931
|
+
* size in force) at Large and Extra large. There a phone is 312 or 260 px of text
|
|
2932
|
+
* wide, and Cancel and a "Save changes" side by side wrap into a ragged pair with
|
|
2933
|
+
* one 48 px target squeezed against the other. Normal keeps the row the apps tuned.
|
|
2934
|
+
* - `"phone"`: on the phone layout at every text size.
|
|
2935
|
+
* - `"never"`: always the row.
|
|
2936
|
+
*
|
|
2937
|
+
* Stacked, the order is the DOM's — the start group (the destructive action), the extra
|
|
2938
|
+
* actions, Cancel, then Save at the bottom, under the thumb — so the visual order and
|
|
2939
|
+
* the tab order stay one.
|
|
2940
|
+
*/
|
|
2941
|
+
type FormActionsStack = "auto" | "phone" | "never";
|
|
2915
2942
|
/**
|
|
2916
2943
|
* A placement per breakpoint, mobile first — `{ base: "sticky", md: "inline" }` is a
|
|
2917
2944
|
* Save row stuck to the bottom of a phone's long form and in the flow under the last
|
|
2918
|
-
* field from 768px up, where the form fits. The breakpoints are
|
|
2919
|
-
* md 768, lg 1024, xl 1280px
|
|
2945
|
+
* field from 768px up, where the form fits. The breakpoints are the classes' (sm 640,
|
|
2946
|
+
* md 768, lg 1024, xl 1280px at Normal text size, and 1.25 / 1.5 times that at Large /
|
|
2947
|
+
* Extra large, as `md:` is since 0.32), as `BulkActionBar`'s `variant` breakpoints are, and
|
|
2920
2948
|
* resolved the same way, in JS: the sticky row is positioned by inline style, which a
|
|
2921
2949
|
* `md:` class cannot reach. keksdose switched `placement` on its own media query at
|
|
2922
2950
|
* every long form for want of this. The breakpoints are the VIEWPORT's, not the
|
|
@@ -3114,6 +3142,9 @@ interface FormActionsProps extends Omit<ComponentPropsWithoutRef<"div">, "childr
|
|
|
3114
3142
|
* `form.submitShortcut` label), dimmed. Hidden on a touch-only device, which has no
|
|
3115
3143
|
* keyboard to press it on. Default `false`. */
|
|
3116
3144
|
submitShortcutHint?: boolean;
|
|
3145
|
+
/** When the buttons stack full width — see {@link FormActionsStack}. Default `auto`:
|
|
3146
|
+
* on the phone layout at Large and Extra large. */
|
|
3147
|
+
stack?: FormActionsStack;
|
|
3117
3148
|
/** Extra actions, placed before Cancel. */
|
|
3118
3149
|
children?: ReactNode;
|
|
3119
3150
|
}
|
|
@@ -3132,7 +3163,7 @@ interface FormActionsProps extends Omit<ComponentPropsWithoutRef<"div">, "childr
|
|
|
3132
3163
|
* The spinner is the kit's {@link Spinner}, drawn inside the button with `label={null}`
|
|
3133
3164
|
* so the button's name stays its text; `aria-busy` is what says it is working.
|
|
3134
3165
|
*/
|
|
3135
|
-
declare function FormActions({ onCancel, onSubmit, submitLabel, cancelLabel, pendingLabel, submitIcon: SubmitIcon, submitProps, pending, submitDisabled, submitDisabledReason, commit, submitVariant, cancelVariant, size, destructive, start: startSlot, align, placement: placementProp, stickyWithin, bleed, form, submitShortcut, submitShortcutHint, children, className, style, ...rest }: FormActionsProps): react.JSX.Element;
|
|
3166
|
+
declare function FormActions({ onCancel, onSubmit, submitLabel, cancelLabel, pendingLabel, submitIcon: SubmitIcon, submitProps, pending, submitDisabled, submitDisabledReason, commit, submitVariant, cancelVariant, size, destructive, start: startSlot, align, placement: placementProp, stickyWithin, bleed, form, submitShortcut, submitShortcutHint, stack, children, className, style, ...rest }: FormActionsProps): react.JSX.Element;
|
|
3136
3167
|
|
|
3137
3168
|
/**
|
|
3138
3169
|
* The legal pages — Imprint, Privacy Policy, Terms — for every app.
|
|
@@ -3211,6 +3242,20 @@ interface LegalTextSectionLabels {
|
|
|
3211
3242
|
title: string;
|
|
3212
3243
|
body: string;
|
|
3213
3244
|
}
|
|
3245
|
+
/**
|
|
3246
|
+
* 0.32.0: the imprint's disclaimer, with the body of its COMMERCIAL variant
|
|
3247
|
+
* (docs/billing-harmonization.md §8; legal decision 7). The title is the same in both:
|
|
3248
|
+
* liability for content and links is the subject either way.
|
|
3249
|
+
*/
|
|
3250
|
+
interface LegalDisclaimerSectionLabels extends LegalTextSectionLabels {
|
|
3251
|
+
/**
|
|
3252
|
+
* The body for `<LegalKitSection section="disclaimer" variant="commercial">`: a paid
|
|
3253
|
+
* service sold through a Merchant of Record, which sells in its own name (§2.2), so the
|
|
3254
|
+
* "private, non-commercial … closed beta" of `body` would be untrue. OPTIONAL, as every
|
|
3255
|
+
* key added to a namespace an app may annotate: left out, the provider's, then English.
|
|
3256
|
+
*/
|
|
3257
|
+
commercial?: string;
|
|
3258
|
+
}
|
|
3214
3259
|
/** A kit section whose text names the operator (§4.3 `{name}`, `{email}`, …). */
|
|
3215
3260
|
interface LegalOperatorSectionLabels {
|
|
3216
3261
|
title: string;
|
|
@@ -3274,7 +3319,8 @@ interface LegalLabels {
|
|
|
3274
3319
|
impressum: {
|
|
3275
3320
|
operator: LegalOperatorSectionLabels;
|
|
3276
3321
|
contact: LegalOperatorSectionLabels;
|
|
3277
|
-
|
|
3322
|
+
/** `body` is the default, non-commercial text; `commercial` the 0.32 variant. */
|
|
3323
|
+
disclaimer: LegalDisclaimerSectionLabels;
|
|
3278
3324
|
};
|
|
3279
3325
|
privacy: {
|
|
3280
3326
|
controller: LegalOperatorSectionLabels;
|
|
@@ -3838,6 +3884,154 @@ interface RegisterFormProps extends Omit<ComponentPropsWithoutRef<"div">, "onSub
|
|
|
3838
3884
|
*/
|
|
3839
3885
|
declare function RegisterForm({ onSubmit, emailTag, invitedEmail, defaultEmail, locale: localeProp, defaultLocale, onLocaleChange, languages, languageField, aboveForm, underEmail, appFields, afterFields, appFieldsComplete, termsHref, privacyHref, signInHref, describeError, labels: labelsProp, className, ...rest }: RegisterFormProps): react.JSX.Element;
|
|
3840
3886
|
|
|
3887
|
+
/**
|
|
3888
|
+
* A row's actions — inline icons at Normal, one "⋯" menu at Large and above
|
|
3889
|
+
* (docs/text-size-harmonization.md §10.8).
|
|
3890
|
+
*
|
|
3891
|
+
* At Large an IconButton shows its label as text (§4). In a dense row — a register's
|
|
3892
|
+
* action column, a list row's end — every label at once does not fit: Kurvenschmiede
|
|
3893
|
+
* has 44 IconButtons in rows, kastlan 119. So a row's actions collapse instead, into
|
|
3894
|
+
* the menu the user roster has used since 0.31 (`UserRowActions`, now built on this):
|
|
3895
|
+
* one "⋯" button, and a menu with each action's icon AND words, where a locked one stays
|
|
3896
|
+
* listed and says why.
|
|
3897
|
+
*
|
|
3898
|
+
* The data is the roster's `UserRowActionList`, generalised: entries, and `false` /
|
|
3899
|
+
* `null` for the ones a condition left out (`row.locked || {…}`).
|
|
3900
|
+
*/
|
|
3901
|
+
/** One action of a row. */
|
|
3902
|
+
interface RowAction {
|
|
3903
|
+
/** React key. Default: the label. */
|
|
3904
|
+
key?: string;
|
|
3905
|
+
/** The action's name: the inline icon's name and tooltip, the menu entry's words. */
|
|
3906
|
+
label: string;
|
|
3907
|
+
/** Runs it. The kit sends nothing — the app opens its confirmation or calls its API. */
|
|
3908
|
+
onSelect: () => void;
|
|
3909
|
+
/**
|
|
3910
|
+
* The glyph: a Lucide icon (`Pencil`), or an element (`<Pencil />`, an app's own
|
|
3911
|
+
* svg) — DataTable's `rowActions` hand their `icon` node through. Inline, an action
|
|
3912
|
+
* without one is a small text button; in the menu it is the words alone.
|
|
3913
|
+
*/
|
|
3914
|
+
icon?: LucideIcon | ReactElement;
|
|
3915
|
+
/** `danger` for delete, revoke, erase: the quiet red of IconButton's `tone="danger"`
|
|
3916
|
+
* inline, the danger text tone in the menu. */
|
|
3917
|
+
tone?: "default" | "danger";
|
|
3918
|
+
/** Why it is not available for this row. It stays listed, focusable, and says so — an
|
|
3919
|
+
* action that silently vanished would leave the reader looking for it. */
|
|
3920
|
+
disabledReason?: ReactNode;
|
|
3921
|
+
/**
|
|
3922
|
+
* This action COMMITS — it saves, sends, deletes: under a locked
|
|
3923
|
+
* {@link WriteLockProvider} it is refused with the lock's reason, as {@link Button}'s
|
|
3924
|
+
* `commit` is, inline and in the menu alike. No provider, or an unlocked one: no effect.
|
|
3925
|
+
*/
|
|
3926
|
+
commit?: boolean;
|
|
3927
|
+
/**
|
|
3928
|
+
* In flight — the request it started has not answered. Inline, the icon turns into
|
|
3929
|
+
* IconButton's spinner (`pending`); collapsed, the "⋯" button does, since the menu
|
|
3930
|
+
* closed when the action was chosen. Either way nothing in the row can be pressed again
|
|
3931
|
+
* until it settles: the "⋯" opens no menu while busy.
|
|
3932
|
+
*/
|
|
3933
|
+
pending?: boolean;
|
|
3934
|
+
/**
|
|
3935
|
+
* Not available for a moment, with nothing to explain — another action of the list
|
|
3936
|
+
* is in flight (an admin panel's `busy`). The plain `disabled`; a lasting refusal is a
|
|
3937
|
+
* `disabledReason`, which says why.
|
|
3938
|
+
*/
|
|
3939
|
+
disabled?: boolean;
|
|
3940
|
+
/** Leave it out for this row. */
|
|
3941
|
+
hidden?: boolean;
|
|
3942
|
+
}
|
|
3943
|
+
/** What a row's actions may be: entries, and `false` / `null` / `undefined` for the ones
|
|
3944
|
+
* a condition left out. */
|
|
3945
|
+
type RowActionList = readonly (RowAction | false | null | undefined)[];
|
|
3946
|
+
interface RowActionsLabels {
|
|
3947
|
+
/** The menu button's name when the row has no name of its own; also the actions
|
|
3948
|
+
* column's (hidden) header in {@link rowActionsColumn}. */
|
|
3949
|
+
actions: string;
|
|
3950
|
+
/** The menu button's name, given the row's: "Actions for Ada Example". */
|
|
3951
|
+
actionsFor: (name: string) => string;
|
|
3952
|
+
}
|
|
3953
|
+
declare const DEFAULT_ROW_ACTIONS_LABELS: RowActionsLabels;
|
|
3954
|
+
/**
|
|
3955
|
+
* - `"auto"` (default): the icons inline at Normal; the "⋯" menu at Large and Extra
|
|
3956
|
+
* large once there are two or more (§10.8). A single action stays inline at every
|
|
3957
|
+
* size, with its label as text at Large — one label fits a row, and a menu of one is
|
|
3958
|
+
* a detour.
|
|
3959
|
+
* - `"menu"`: the menu at every size — the roster's choice, whose actions grow (§2.4
|
|
3960
|
+
* there) and do not fit a phone card as a strip.
|
|
3961
|
+
* - `"inline"`: the icons at every size — for a row the app knows has room; at Large
|
|
3962
|
+
* each then shows its label (IconButton's `labelVisible`).
|
|
3963
|
+
*/
|
|
3964
|
+
type RowActionsCollapse = "auto" | "menu" | "inline";
|
|
3965
|
+
/** The sizes a row action comes in: IconButton's row steps. `2xs` is DataTable's
|
|
3966
|
+
* compact density. At Large every one is at least a 48 px target (IconButton). */
|
|
3967
|
+
type RowActionsSize = Extract<IconButtonSize, "md" | "sm" | "xs" | "2xs">;
|
|
3968
|
+
interface RowActionsProps {
|
|
3969
|
+
actions: RowActionList;
|
|
3970
|
+
/** The row's name, for the menu button's name — "Actions for Ada Example". Without it
|
|
3971
|
+
* the button is "Actions". */
|
|
3972
|
+
name?: string;
|
|
3973
|
+
/** When the actions collapse into the menu — see {@link RowActionsCollapse}. */
|
|
3974
|
+
collapse?: RowActionsCollapse;
|
|
3975
|
+
/** The inline icons' and the "⋯" button's size. Default `xs`, a list row's action. */
|
|
3976
|
+
size?: RowActionsSize;
|
|
3977
|
+
/** The menu's width. Default `"15rem"`, in rem so it grows with the words (§3.2). */
|
|
3978
|
+
menuWidth?: `${number}rem`;
|
|
3979
|
+
/** On the wrapper: the inline strip, or the "⋯" button's box. */
|
|
3980
|
+
className?: string;
|
|
3981
|
+
labels?: Partial<RowActionsLabels>;
|
|
3982
|
+
}
|
|
3983
|
+
/**
|
|
3984
|
+
* A row's actions, inline or as a "⋯" menu — see {@link RowActionsCollapse}. Every
|
|
3985
|
+
* control stops its click (and the Enter/Space it stands for) from reaching the row, so
|
|
3986
|
+
* a clickable row or a DataTable `rowLink` does not open as well; in a DataTable column
|
|
3987
|
+
* also set `noRowLink: true`, as {@link rowActionsColumn} does.
|
|
3988
|
+
*
|
|
3989
|
+
* Inline, the icons sit in a {@link CompactControls} region at Normal: their labels
|
|
3990
|
+
* stay the names and the tooltips, and a locked one keeps its reason in the tooltip — a
|
|
3991
|
+
* line under one icon of a row would break the row. In the menu a locked action's
|
|
3992
|
+
* reason is a line under its words at Large and on touch (Button's
|
|
3993
|
+
* `disabledReasonDisplay`).
|
|
3994
|
+
*
|
|
3995
|
+
* The menu is portalled, so a table's scroller cannot clip it; Escape and an outside
|
|
3996
|
+
* press close it, and focus goes back to the "⋯" button, which is where a confirmation
|
|
3997
|
+
* dialog then returns it.
|
|
3998
|
+
*/
|
|
3999
|
+
declare function RowActions({ actions, name, collapse, size, menuWidth, className, labels: labelsProp, }: RowActionsProps): react.JSX.Element | null;
|
|
4000
|
+
interface RowActionsColumnOptions<T> {
|
|
4001
|
+
/** The column's key. Default `"actions"`. */
|
|
4002
|
+
key?: string;
|
|
4003
|
+
/** The row's actions — `false` / `null` for the ones a condition leaves out. */
|
|
4004
|
+
actions: (row: T) => RowActionList;
|
|
4005
|
+
/** The row's name, for the "⋯" button's name ("Actions for Ada Example"). */
|
|
4006
|
+
name?: (row: T) => string | undefined;
|
|
4007
|
+
collapse?: RowActionsCollapse;
|
|
4008
|
+
/** Default `xs`. */
|
|
4009
|
+
size?: RowActionsSize;
|
|
4010
|
+
/**
|
|
4011
|
+
* The column's name as plain text — the column-settings checklist and the phone
|
|
4012
|
+
* card's label read it (`DataTableColumn.headerText`). Pass the app's own word; left
|
|
4013
|
+
* out, the header shows the provider's `rowActions.actions` to a screen reader and
|
|
4014
|
+
* the plain-text places fall back to the column's `key`.
|
|
4015
|
+
*/
|
|
4016
|
+
headerText?: string;
|
|
4017
|
+
labels?: Partial<RowActionsLabels>;
|
|
4018
|
+
/** Anything else for the column (`mobileHidden`, `cellProps`…), merged last. */
|
|
4019
|
+
column?: Partial<DataTableColumn<T>>;
|
|
4020
|
+
}
|
|
4021
|
+
/**
|
|
4022
|
+
* A DataTable column of {@link RowActions} — an app's action column in one line
|
|
4023
|
+
* (§10.8): inline icons at Normal, the "⋯" menu at Large with two or more actions.
|
|
4024
|
+
*
|
|
4025
|
+
* columns={[...columns, rowActionsColumn({ actions: (r) => [...], name: (r) => r.name })]}
|
|
4026
|
+
*
|
|
4027
|
+
* The header is visually hidden (the icons say what the column is), the column hugs its
|
|
4028
|
+
* content at the row's end, and `noRowLink` keeps a `rowHref` anchor off it, so the
|
|
4029
|
+
* buttons keep their own clicks. On a phone it is a line of the card like any column;
|
|
4030
|
+
* set `column: { mobileHidden: true }` to drop it there (with `mobileDetailsInRow` it
|
|
4031
|
+
* then shows in the opened row instead).
|
|
4032
|
+
*/
|
|
4033
|
+
declare function rowActionsColumn<T>({ key, actions, name, collapse, size, headerText, labels, column, }: RowActionsColumnOptions<T>): DataTableColumn<T>;
|
|
4034
|
+
|
|
3841
4035
|
/**
|
|
3842
4036
|
* The role of an account, chosen by an admin (docs/user-admin-harmonization.md §3.3,
|
|
3843
4037
|
* §4.1, §7): {@link RoleSelect} for the apps where an account has ONE role (keksdose,
|
|
@@ -4094,26 +4288,12 @@ interface UserIdentityCellProps {
|
|
|
4094
4288
|
* Both lines carry `data-private`, so keksdose's demo blur reaches them.
|
|
4095
4289
|
*/
|
|
4096
4290
|
declare function UserIdentityCell({ person, name, email, avatar, badge, locale: localeProp, className, }: UserIdentityCellProps): react.JSX.Element;
|
|
4097
|
-
/** One entry of a row's action menu (§4).
|
|
4098
|
-
|
|
4099
|
-
|
|
4100
|
-
key?: string;
|
|
4101
|
-
label: string;
|
|
4102
|
-
/** Runs it — usually opens `AdminActionConfirm` with the level the server states. */
|
|
4103
|
-
onSelect: () => void;
|
|
4104
|
-
icon?: LucideIcon;
|
|
4105
|
-
/** `danger` for deactivate, transfer, erase. */
|
|
4106
|
-
tone?: "default" | "danger";
|
|
4107
|
-
/** Why it is not available for this row ("You can’t deactivate yourself"). The entry
|
|
4108
|
-
* stays in the menu, focusable, and says so — an action that silently vanished
|
|
4109
|
-
* would leave the admin looking for it. */
|
|
4110
|
-
disabledReason?: ReactNode;
|
|
4111
|
-
/** Leave it out for this row. */
|
|
4112
|
-
hidden?: boolean;
|
|
4113
|
-
}
|
|
4291
|
+
/** One entry of a row's action menu (§4) — the kit's {@link RowAction} since 0.32,
|
|
4292
|
+
* which generalised it for every dense row (docs/text-size-harmonization.md §10.8). */
|
|
4293
|
+
type UserRowAction = RowAction;
|
|
4114
4294
|
/** What `actions(row)` may return: entries, and `false` / `null` for the ones a
|
|
4115
4295
|
* condition left out (`row.is_active && {…}`). */
|
|
4116
|
-
type UserRowActionList =
|
|
4296
|
+
type UserRowActionList = RowActionList;
|
|
4117
4297
|
interface UserRowActionsProps {
|
|
4118
4298
|
actions: UserRowActionList;
|
|
4119
4299
|
/** The account's name, for the menu's name — "Actions for Ada Example". */
|
|
@@ -4126,8 +4306,11 @@ interface UserRowActionsProps {
|
|
|
4126
4306
|
* a phone card, and both grow with every action §2.4 adds. The menu is portalled, so a
|
|
4127
4307
|
* table's scroller cannot clip it; Escape and an outside press close it, and focus goes
|
|
4128
4308
|
* back to the button, which is where a confirmation dialog then returns it.
|
|
4309
|
+
*
|
|
4310
|
+
* Since 0.32 this is {@link RowActions} with `collapse="menu"` — the menu at every size —
|
|
4311
|
+
* named by the roster's own `actionsFor`.
|
|
4129
4312
|
*/
|
|
4130
|
-
declare function UserRowActions({ actions, name, labels: labelsProp }: UserRowActionsProps): react.JSX.Element
|
|
4313
|
+
declare function UserRowActions({ actions, name, labels: labelsProp }: UserRowActionsProps): react.JSX.Element;
|
|
4131
4314
|
/** How a row's role may be changed inline: `true`, or with reasons. */
|
|
4132
4315
|
interface RoleEditing<R extends string> {
|
|
4133
4316
|
/** Why the whole select is locked for this row — `"self"`, `"last_admin"`, or words. */
|
|
@@ -4646,6 +4829,339 @@ interface InvitationsPanelProps<R extends string = string> {
|
|
|
4646
4829
|
}
|
|
4647
4830
|
declare function InvitationsPanel<R extends string = string>({ invitations, roles, invitableRoles, defaultRole, scopes, scopeRequired, languages, defaultLocale, mailBackend, onInvite, onResend, onRevoke, loading, describeError, intro, listTitle, className, labels: labelsProp, }: InvitationsPanelProps<R>): react.JSX.Element;
|
|
4648
4831
|
|
|
4832
|
+
/**
|
|
4833
|
+
* The subscription's status vocabulary (docs/billing-harmonization.md §3.2) — server-kit's
|
|
4834
|
+
* `SubscriptionStatus`, value for value:
|
|
4835
|
+
*
|
|
4836
|
+
* - `trialing` — the 30-day trial without a card (§2.7), or a pure guest's row whose trial
|
|
4837
|
+
* has not started (§12.9, `trial_ends_at` empty);
|
|
4838
|
+
* - `active` — paid;
|
|
4839
|
+
* - `past_due` — a payment failed; in good standing during the provider's retries (§3.3);
|
|
4840
|
+
* - `canceled` — the payer cancelled; the American spelling is the wire's, the word shown
|
|
4841
|
+
* is "Cancelled";
|
|
4842
|
+
* - `expired` — a trial, a grant or a failed subscription ran out: read-only (§2.3);
|
|
4843
|
+
* - `comped` — free by the operator's grant or as a beta user (§3.2, `comped_until`).
|
|
4844
|
+
*/
|
|
4845
|
+
type SubscriptionStatus = "trialing" | "active" | "past_due" | "canceled" | "expired" | "comped";
|
|
4846
|
+
/** Every status, in the order a lifecycle reads: trial, paid, trouble, ended, granted. */
|
|
4847
|
+
declare const SUBSCRIPTION_STATUSES: readonly SubscriptionStatus[];
|
|
4848
|
+
/**
|
|
4849
|
+
* The words of the subscription parts — the `billing` namespace of `<UiKitProvider labels>`
|
|
4850
|
+
* (docs/billing-harmonization.md §7, §10; ui-kit 0.32.0).
|
|
4851
|
+
*
|
|
4852
|
+
* WORDING (§12.24): the English group is "Subscription", never "Plan" — keksdose's "plan"
|
|
4853
|
+
* is the month's budget plan ("One plan per month"), and two meanings of one word on one
|
|
4854
|
+
* settings page is the clash the review found. "Plan" stays the word for WHAT is bought
|
|
4855
|
+
* (Free, Pro), "subscription" for the standing arrangement. German says "Tarif" for the
|
|
4856
|
+
* plan and "Abonnement" for the subscription (§10).
|
|
4857
|
+
*
|
|
4858
|
+
* Prices are GROSS (§12.17): Swiss consumer law (PBV) wants a consumer price with the
|
|
4859
|
+
* MWST in it, so the cards say so (`vatIncluded`).
|
|
4860
|
+
*/
|
|
4861
|
+
interface BillingLabels {
|
|
4862
|
+
/** The settings group or admin section the parts live on (§7, §12.24): "Subscription". */
|
|
4863
|
+
group: string;
|
|
4864
|
+
/** The picker's name when it has no visible `legend`: "Plans". */
|
|
4865
|
+
plans: string;
|
|
4866
|
+
/** The name of the billing-period switch: "Billing period". */
|
|
4867
|
+
interval: string;
|
|
4868
|
+
/** The switch's two options — yearly first (§12.17). */
|
|
4869
|
+
yearly: string;
|
|
4870
|
+
monthly: string;
|
|
4871
|
+
/** The name of the currency switch: "Currency". */
|
|
4872
|
+
currency: string;
|
|
4873
|
+
/** After a price: "per year", "per month". */
|
|
4874
|
+
perYear: string;
|
|
4875
|
+
perMonth: string;
|
|
4876
|
+
/** Under a price (§12.17): "VAT included". German: "inkl. MWST". */
|
|
4877
|
+
vatIncluded: string;
|
|
4878
|
+
/** A plan with no price, or a price of 0: "Free". */
|
|
4879
|
+
free: string;
|
|
4880
|
+
/** A plan with prices, but none for this currency and period. */
|
|
4881
|
+
notOffered: string;
|
|
4882
|
+
/** A limit of `null` (§3.1): "Unlimited". */
|
|
4883
|
+
unlimited: string;
|
|
4884
|
+
/** The accessible names of a card's two lists. */
|
|
4885
|
+
limits: string;
|
|
4886
|
+
features: string;
|
|
4887
|
+
/** The chip on the payer's current plan. */
|
|
4888
|
+
current: string;
|
|
4889
|
+
/** The picker's button for `plan` (the plan's display name) with no current plan —
|
|
4890
|
+
* during a trial, or after a plan ended: "Choose Pro". */
|
|
4891
|
+
choose: (plan: string) => string;
|
|
4892
|
+
/** …for a plan after the current one in the catalogue's order: "Upgrade to Pro". */
|
|
4893
|
+
upgrade: (plan: string) => string;
|
|
4894
|
+
/** …for a plan before it: "Switch to Free". */
|
|
4895
|
+
downgrade: (plan: string) => string;
|
|
4896
|
+
/** Why the button is off while the current plan is the one picked. */
|
|
4897
|
+
isCurrent: string;
|
|
4898
|
+
/** Why it is off while nothing is picked. */
|
|
4899
|
+
pickFirst: string;
|
|
4900
|
+
/** One word per status. */
|
|
4901
|
+
status: Record<SubscriptionStatus, string>;
|
|
4902
|
+
/** A trial ends in `days` calendar days — 0 is today, 1 tomorrow. */
|
|
4903
|
+
trialEnding: (days: number) => string;
|
|
4904
|
+
/** A free grant (`comped_until`: a beta user's 12 months, an operator's grant) ends in
|
|
4905
|
+
* `days` calendar days. */
|
|
4906
|
+
grantEnding: (days: number) => string;
|
|
4907
|
+
/** The first failed payment (`past_due`), while the provider retries. */
|
|
4908
|
+
paymentFailed: string;
|
|
4909
|
+
/** Out of good standing: read-only, never locked (§2.3). */
|
|
4910
|
+
planEnded: string;
|
|
4911
|
+
/**
|
|
4912
|
+
* A guest in someone else's item that is read-only for billing (§12.6). It never says
|
|
4913
|
+
* WHY beyond "for now": the owner's payment status is the owner's personal data.
|
|
4914
|
+
* `item` is the item's own name ("Household 2026"), shown in quotes — or `undefined`.
|
|
4915
|
+
*/
|
|
4916
|
+
guestReadOnly: (item?: string) => string;
|
|
4917
|
+
/** Back from checkout before the provider's webhook landed (§12.21). */
|
|
4918
|
+
processing: string;
|
|
4919
|
+
/** The action of the trial, grant and plan-ended banners, and of `PlanLimitNotice`'s
|
|
4920
|
+
* `upgrade` mode: "Choose a plan". */
|
|
4921
|
+
choosePlan: string;
|
|
4922
|
+
/** The payment-failed banner's action, to the provider's portal: "Update payment method". */
|
|
4923
|
+
updatePayment: string;
|
|
4924
|
+
/** The processing banner's action, when the app gives one: "Check again". */
|
|
4925
|
+
checkAgain: string;
|
|
4926
|
+
/** The `WriteLockProvider` reason for the payer (§3.3, verbatim). A guest's reason is
|
|
4927
|
+
* {@link guestReadOnly}. */
|
|
4928
|
+
lockReason: string;
|
|
4929
|
+
/** The notice's first line: "Plan limit reached". */
|
|
4930
|
+
limitReached: string;
|
|
4931
|
+
/** Mode `upgrade`: what the action does. */
|
|
4932
|
+
limitUpgrade: string;
|
|
4933
|
+
/** Mode `contact` (the operator grants plans by hand, keksdose's today). */
|
|
4934
|
+
limitContact: string;
|
|
4935
|
+
/** Mode `contact`'s action, a mail to support: "Ask for more". */
|
|
4936
|
+
askForMore: string;
|
|
4937
|
+
/** The meter's value: "3 of 3". Both figures are formatted already. */
|
|
4938
|
+
usage: (used: string, limit: string) => string;
|
|
4939
|
+
/** The subject of the `contact` mail; `dimension` is the app's name for it ("Budgets"). */
|
|
4940
|
+
contactSubject: (dimension: string) => string;
|
|
4941
|
+
/** The portal: payment method and invoices (§2.8, the provider hosts both). */
|
|
4942
|
+
manage: string;
|
|
4943
|
+
/**
|
|
4944
|
+
* The visible cancel link on the app's subscription page (§12.26). German: §312k BGB
|
|
4945
|
+
* wants the button that leads to the cancellation labelled "Verträge hier kündigen" or
|
|
4946
|
+
* as unambiguously — a translator should use exactly that.
|
|
4947
|
+
*/
|
|
4948
|
+
cancel: string;
|
|
4949
|
+
/** Changes refused as `billing_read_only` inside a sync reply, kept queued and sent
|
|
4950
|
+
* after payment: "3 changes waiting for a plan". */
|
|
4951
|
+
waitingChanges: (count: number) => string;
|
|
4952
|
+
/** The sign-out guard's way out for someone who will not pay. */
|
|
4953
|
+
discardWaiting: string;
|
|
4954
|
+
}
|
|
4955
|
+
declare const DEFAULT_BILLING_LABELS: BillingLabels;
|
|
4956
|
+
/** The `billing` namespace, resolved: English, then the provider, then `labels` — which
|
|
4957
|
+
* may be partial at every depth (`{ status: { comped: "Beta" } }`). */
|
|
4958
|
+
declare function useBillingLabels(labels?: LabelOverride<BillingLabels>): BillingLabels;
|
|
4959
|
+
|
|
4960
|
+
interface AppShellSubItem {
|
|
4961
|
+
to: string;
|
|
4962
|
+
label: string;
|
|
4963
|
+
icon: LucideIcon;
|
|
4964
|
+
/** Passed to NavLink's `end` (exact match). Defaults to true. */
|
|
4965
|
+
end?: boolean;
|
|
4966
|
+
}
|
|
4967
|
+
interface AppShellNavItem {
|
|
4968
|
+
to: string;
|
|
4969
|
+
label: string;
|
|
4970
|
+
/** Optional shorter label for the MOBILE BOTTOM BAR only (the sidebar, its
|
|
4971
|
+
* tooltips and any palette built on this list keep `label`).
|
|
4972
|
+
*
|
|
4973
|
+
* The bar divides the viewport into `nav.length` equal cells, so a label's room
|
|
4974
|
+
* shrinks with every entry added — at six entries on a 406 px phone that is ~67 px,
|
|
4975
|
+
* and "Import & Export" wrapped to two lines and pushed the row taller than its
|
|
4976
|
+
* neighbours (keksdose feedback live #210). A per-item override is better than
|
|
4977
|
+
* shortening the real label, which the sidebar has ample room for and which is the
|
|
4978
|
+
* name the rest of the product uses. */
|
|
4979
|
+
shortLabel?: string;
|
|
4980
|
+
/** 0.31.0: leave this entry out of the MOBILE BOTTOM BAR; the sidebar keeps it.
|
|
4981
|
+
* For an entry a phone reaches another way — the brand link to the start page —
|
|
4982
|
+
* when one cell fewer is what keeps the others' labels whole (the bar divides its
|
|
4983
|
+
* width evenly, see `shortLabel`). Its group's sub-row still shows while one of its
|
|
4984
|
+
* pages is open. Named like `DataTable`'s column `mobileHidden`. */
|
|
4985
|
+
mobileHidden?: boolean;
|
|
4986
|
+
icon: LucideIcon;
|
|
4987
|
+
/** Passed to NavLink's `end` (exact match). Defaults to true. */
|
|
4988
|
+
end?: boolean;
|
|
4989
|
+
/** Optional `data-tour` value rendered on this item's link (both the desktop
|
|
4990
|
+
* sidebar and the mobile bottom bar), so a guided tour can spotlight ONE nav
|
|
4991
|
+
* entry precisely instead of matching by href (feedback #338). */
|
|
4992
|
+
dataTour?: string;
|
|
4993
|
+
/** Optional sub-items. When present, hovering (or focusing) the item opens a
|
|
4994
|
+
* flyout to the right of the sidebar with a header (this item's label) and the
|
|
4995
|
+
* sub-items as icon + title links. Works collapsed or expanded; the mobile
|
|
4996
|
+
* bottom bar ignores sub-items and links to `to`. */
|
|
4997
|
+
items?: AppShellSubItem[];
|
|
4998
|
+
}
|
|
4999
|
+
/**
|
|
5000
|
+
* One entry of the sidebar's bottom area ({@link AppShellProps.sidebarFooterItems}) —
|
|
5001
|
+
* the version link and the legal links kastlan hand-built in `sidebarFooter`.
|
|
5002
|
+
*
|
|
5003
|
+
* - `link` (default): one link. Expanded it shows `icon` + `text` (default `label`),
|
|
5004
|
+
* with `hint` as a tooltip if given; collapsed it is the icon alone, named and
|
|
5005
|
+
* tooltipped by `label`.
|
|
5006
|
+
* - `links`: a small group — the legal links. Expanded, a `<nav>` named `label` holding
|
|
5007
|
+
* the links as a wrapping row of small text; collapsed, ONE icon link to `to` (default
|
|
5008
|
+
* the first link's), named and tooltipped by `label`, since a column of icons for
|
|
5009
|
+
* "Imprint", "Privacy" and "Terms" would say nothing an icon can.
|
|
5010
|
+
*/
|
|
5011
|
+
type AppShellSidebarFooterItem = {
|
|
5012
|
+
kind?: "link";
|
|
5013
|
+
key: string;
|
|
5014
|
+
to: string;
|
|
5015
|
+
icon: LucideIcon;
|
|
5016
|
+
/** The link's name, and the tooltip when collapsed ("What's new · v1.4.0"). */
|
|
5017
|
+
label: string;
|
|
5018
|
+
/** Visible text when expanded ("Kastlan v1.4.0"). Default `label`. */
|
|
5019
|
+
text?: ReactNode;
|
|
5020
|
+
/** A tooltip on the expanded link ("What's new"). */
|
|
5021
|
+
hint?: string;
|
|
5022
|
+
/** Leaves the app: a plain `<a target="_blank" rel="noopener noreferrer">`. */
|
|
5023
|
+
external?: boolean;
|
|
5024
|
+
} | {
|
|
5025
|
+
kind: "links";
|
|
5026
|
+
key: string;
|
|
5027
|
+
icon: LucideIcon;
|
|
5028
|
+
/** The group's name — its `<nav>` label, and the collapsed icon's name ("Legal"). */
|
|
5029
|
+
label: string;
|
|
5030
|
+
/** The collapsed icon's target. Default the first link's `to`. */
|
|
5031
|
+
to?: string;
|
|
5032
|
+
links: {
|
|
5033
|
+
to: string;
|
|
5034
|
+
label: string;
|
|
5035
|
+
external?: boolean;
|
|
5036
|
+
}[];
|
|
5037
|
+
};
|
|
5038
|
+
/**
|
|
5039
|
+
* The words of the phone bar's "More" cell and its sheet (0.32,
|
|
5040
|
+
* docs/text-size-harmonization.md §4 Navigation, §10.7) — the `appShellMore` namespace of
|
|
5041
|
+
* `<UiKitProvider labels>`, overridable per shell through `moreLabels`.
|
|
5042
|
+
*/
|
|
5043
|
+
interface AppShellMoreLabels {
|
|
5044
|
+
/** The cell's visible label, under its icon — one short word. */
|
|
5045
|
+
more: string;
|
|
5046
|
+
/** The sheet's heading, and so its accessible name. */
|
|
5047
|
+
moreTitle: string;
|
|
5048
|
+
}
|
|
5049
|
+
declare const DEFAULT_APP_SHELL_MORE_LABELS: AppShellMoreLabels;
|
|
5050
|
+
/**
|
|
5051
|
+
* The most entries the phone bar shows before the rest go under "More", per text size
|
|
5052
|
+
* (§10.7): every entry at Normal, four at Large, three at Extra large. A fifth of a
|
|
5053
|
+
* 360 px phone at 150 % is 48 px of Normal-sized room, and the cells hold a word each.
|
|
5054
|
+
*/
|
|
5055
|
+
declare const DEFAULT_MOBILE_BAR_MAX: Readonly<Record<TextSize, number>>;
|
|
5056
|
+
/**
|
|
5057
|
+
* Split the bar's entries into the cells shown and the ones under "More", in the app's
|
|
5058
|
+
* order (§10.7: the app puts its four most used first, or orders by role). One hidden
|
|
5059
|
+
* entry is no saving — the More cell would take its place — so the bar then shows them
|
|
5060
|
+
* all: the cell count is the same either way, and a real entry beats a detour.
|
|
5061
|
+
*/
|
|
5062
|
+
declare function splitMobileBar<T>(entries: readonly T[], max: number): {
|
|
5063
|
+
shown: T[];
|
|
5064
|
+
hidden: T[];
|
|
5065
|
+
};
|
|
5066
|
+
/**
|
|
5067
|
+
* Exported and `<div>`-shaped. This is the outermost element of every consuming app, so
|
|
5068
|
+
* there is nothing above it to hang an id, a landmark label or a `data-tour` anchor on —
|
|
5069
|
+
* and nothing a consumer can wrap it in either, since the root owns the `h-dvh` and
|
|
5070
|
+
* `overflow-hidden` the whole layout is built on (audit §api-design).
|
|
5071
|
+
*/
|
|
5072
|
+
interface AppShellProps extends ComponentPropsWithoutRef<"div"> {
|
|
5073
|
+
/** Navigation entries — shared by the desktop sidebar and mobile bottom bar. */
|
|
5074
|
+
nav: AppShellNavItem[];
|
|
5075
|
+
/** The composed top bar (e.g. the shared TopBar with app-owned actions). */
|
|
5076
|
+
topBar: ReactNode;
|
|
5077
|
+
/** Main content — typically the router `<Outlet />`. */
|
|
5078
|
+
children: ReactNode;
|
|
5079
|
+
/** Desktop-only footer rendered below the content (hidden on mobile). */
|
|
5080
|
+
footer?: ReactNode;
|
|
5081
|
+
/** Extra sidebar content above the collapse toggle (e.g. a version link).
|
|
5082
|
+
* Receives the collapsed state so it can render compact vs. full. */
|
|
5083
|
+
sidebarFooter?: (collapsed: boolean) => ReactNode;
|
|
5084
|
+
/** The sidebar's bottom area as data — a version link, the legal links — drawn full
|
|
5085
|
+
* when expanded and as icon + tooltip when collapsed. Rendered above
|
|
5086
|
+
* `sidebarFooter`, which stays for anything the data cannot describe. */
|
|
5087
|
+
sidebarFooterItems?: AppShellSidebarFooterItem[];
|
|
5088
|
+
/** The router link for `sidebarFooterItems`. Default: the provider's
|
|
5089
|
+
* `linkComponent`, else react-router's `Link`. */
|
|
5090
|
+
renderLink?: KitLinkComponent;
|
|
5091
|
+
/** localStorage key for the persisted collapse state. */
|
|
5092
|
+
collapseStorageKey?: string;
|
|
5093
|
+
/** Default: `appShell.collapse` from the {@link UiKitProvider}, else English. */
|
|
5094
|
+
collapseLabel?: string;
|
|
5095
|
+
/** Default: `appShell.expand` from the {@link UiKitProvider}, else English. */
|
|
5096
|
+
expandLabel?: string;
|
|
5097
|
+
/** How an entry's `items` are revealed in the EXPANDED desktop sidebar.
|
|
5098
|
+
*
|
|
5099
|
+
* - `"flyout"` (default) — a panel beside the sidebar on hover/focus. Compact: the
|
|
5100
|
+
* sidebar stays one row per group however many pages a group holds.
|
|
5101
|
+
* - `"inline"` — a disclosure under the entry, the pattern of MUI's nested List and
|
|
5102
|
+
* most documentation sites. Every page is visible at once, and the group holding
|
|
5103
|
+
* the current page opens on its own, so the reader can see where they are without
|
|
5104
|
+
* hovering anything.
|
|
5105
|
+
*
|
|
5106
|
+
* The icon-only (collapsed) sidebar always uses the flyout: an indented list has no
|
|
5107
|
+
* room there. The mobile bottom bar ignores `items` in both modes. */
|
|
5108
|
+
subNav?: "flyout" | "inline";
|
|
5109
|
+
/** Accessible name of the inline disclosure button, given the group's label.
|
|
5110
|
+
* Only used with `subNav="inline"`. Its expanded state is carried by
|
|
5111
|
+
* `aria-expanded`, so one wording serves both directions. Default:
|
|
5112
|
+
* `appShell.toggleGroup` from the {@link UiKitProvider}, else English. */
|
|
5113
|
+
toggleGroupLabel?: (groupLabel: string) => string;
|
|
5114
|
+
/** Below `md`: show the current group's `items` as a scrollable row above the
|
|
5115
|
+
* bottom bar — the phone's counterpart of the sidebar's second level. Default true;
|
|
5116
|
+
* `false` keeps the single bar, where a group entry only links to its own `to`. */
|
|
5117
|
+
mobileSubNav?: boolean;
|
|
5118
|
+
/**
|
|
5119
|
+
* How the phone sub-nav lays out a group with more pages than fit on one row.
|
|
5120
|
+
* `"wrap"` (default): every page in view, on as many rows as it takes — the bar
|
|
5121
|
+
* grows. `"scroll"`: one row that scrolls sideways, faded at a cut edge, with the
|
|
5122
|
+
* current page scrolled into view. A long group took four rows (~130px) of a 390px
|
|
5123
|
+
* screen above the bottom bar (showcase audit); scrolling gives that back at the
|
|
5124
|
+
* price of pages hidden past the edge, so it is the app's call, per shell.
|
|
5125
|
+
*/
|
|
5126
|
+
mobileSubNavLayout?: "wrap" | "scroll";
|
|
5127
|
+
/**
|
|
5128
|
+
* The most entries the phone bar shows; the rest move into a "More" cell that opens a
|
|
5129
|
+
* sheet listing them, each group with its pages (0.32, docs/text-size-harmonization.md
|
|
5130
|
+
* §4, §10.7). The bar takes `nav` in the app's order — after `mobileHidden` — so the
|
|
5131
|
+
* app puts its most used entries first (or orders by role: kastlan's manager and
|
|
5132
|
+
* accountant see different firsts).
|
|
5133
|
+
*
|
|
5134
|
+
* Default {@link DEFAULT_MOBILE_BAR_MAX}: unlimited at Normal, 4 at Large, 3 at Extra
|
|
5135
|
+
* large, because the cells' words grow with the text and the phone does not. A number
|
|
5136
|
+
* replaces the default at every size; `{ large: 5 }` replaces it at one size only.
|
|
5137
|
+
* Never fewer than one entry; and one entry over the limit shows in full rather than
|
|
5138
|
+
* behind a More that would take the same cell.
|
|
5139
|
+
*/
|
|
5140
|
+
mobileBarMax?: number | Partial<Record<TextSize, number>>;
|
|
5141
|
+
/** The More cell's words over the provider's `appShellMore`. */
|
|
5142
|
+
moreLabels?: Partial<AppShellMoreLabels>;
|
|
5143
|
+
/**
|
|
5144
|
+
* Lay the shell out inside its PARENT'S box instead of the viewport: `h-full` rather
|
|
5145
|
+
* than `h-dvh`, its own scroll container at every width, a bottom bar pinned to the
|
|
5146
|
+
* shell rather than the window, `--app-nav-h` published on the shell alone, and no
|
|
5147
|
+
* persisted collapse state unless `collapseStorageKey` is passed. For an app preview,
|
|
5148
|
+
* a device frame, a docs example.
|
|
5149
|
+
*
|
|
5150
|
+
* Implied for a shell rendered inside another AppShell, which is the case this
|
|
5151
|
+
* exists for: the inner one used to publish its own nav height on `<html>`, fight
|
|
5152
|
+
* the outer one over it, and remove it on unmount from under the outer app.
|
|
5153
|
+
*/
|
|
5154
|
+
embedded?: boolean;
|
|
5155
|
+
}
|
|
5156
|
+
/**
|
|
5157
|
+
* The responsive application shell: a top bar, a collapsible desktop sidebar
|
|
5158
|
+
* (icon-only when collapsed, with tooltips), a mobile bottom nav bar, the main
|
|
5159
|
+
* content area, and an optional desktop footer. Router-aware via react-router
|
|
5160
|
+
* `NavLink`; domain-free — nav items, brand, footer and the top bar's actions
|
|
5161
|
+
* are all supplied by the app.
|
|
5162
|
+
*/
|
|
5163
|
+
declare function AppShell({ nav, topBar, children, footer, sidebarFooter, sidebarFooterItems, renderLink, collapseStorageKey: collapseStorageKeyProp, collapseLabel, expandLabel, subNav, mobileSubNav, mobileSubNavLayout, mobileBarMax, moreLabels, toggleGroupLabel, embedded: embeddedProp, className, ...rest }: AppShellProps): react.JSX.Element;
|
|
5164
|
+
|
|
4649
5165
|
/**
|
|
4650
5166
|
* Who holds one record, and the owner's every way of changing that — Kurvenschmiede's
|
|
4651
5167
|
* `features/sharing/share-dialog.tsx` and keksdose's `features/budgets/budget-share-card.tsx`,
|
|
@@ -5253,6 +5769,14 @@ interface UiKitLabels {
|
|
|
5253
5769
|
landing: LandingLabels;
|
|
5254
5770
|
/** 0.31.0: the demo's start, banner and end (§5). */
|
|
5255
5771
|
demo: DemoLabels;
|
|
5772
|
+
/** 0.32.0: plans, standing, banners and the limit notice (docs/billing-harmonization.md §7). */
|
|
5773
|
+
billing: BillingLabels;
|
|
5774
|
+
/** 0.32.0: the text-size and contrast settings (docs/text-size-harmonization.md §6). */
|
|
5775
|
+
appearance: AppearanceLabels;
|
|
5776
|
+
/** 0.32.0: a row's actions folded into a "⋯" menu at Large (text size §10.8). */
|
|
5777
|
+
rowActions: RowActionsLabels;
|
|
5778
|
+
/** 0.32.0: the phone bar's "More" cell and sheet (text size §10.7). */
|
|
5779
|
+
appShellMore: AppShellMoreLabels;
|
|
5256
5780
|
/** 0.22.0: the screen-reader words of `Input` / `Textarea`'s `showCount` counter. */
|
|
5257
5781
|
characterCount: CharacterCountLabels;
|
|
5258
5782
|
/** 0.22.0: `CountrySelect`. Its list's "no results" and counts are `combobox`'s. */
|
|
@@ -5463,6 +5987,14 @@ declare function useKitFileLabels(prop?: Partial<FileLabels>): FileLabels;
|
|
|
5463
5987
|
declare function missingKitLabels(labels: UiKitLabelOverrides | undefined, reference: UiKitLabels): string[];
|
|
5464
5988
|
|
|
5465
5989
|
type ButtonVariant = "primary" | "secondary" | "ghost" | "danger" | "brand" | "link";
|
|
5990
|
+
/**
|
|
5991
|
+
* The touch target at Large and Extra large (docs/text-size-harmonization.md §4): at
|
|
5992
|
+
* least 48 px, the size a finger needs whatever the type. In px on purpose, like the
|
|
5993
|
+
* field floor ({@link FIELD_TOUCH_TEXT}): it is a physical threshold, not a size that
|
|
5994
|
+
* follows the text. Normal keeps the kit's own heights; a `large:` variant, so it costs
|
|
5995
|
+
* no render and is right on the first paint.
|
|
5996
|
+
*/
|
|
5997
|
+
declare const TOUCH_TARGET_LARGE = "large:min-h-[48px] large:min-w-[48px]";
|
|
5466
5998
|
type ButtonSize = "sm" | "md";
|
|
5467
5999
|
/**
|
|
5468
6000
|
* The text colour of a `link` or `ghost` button, over the variant's own.
|
|
@@ -5564,6 +6096,12 @@ interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
|
5564
6096
|
* DangerConfirm keeps its own.
|
|
5565
6097
|
*/
|
|
5566
6098
|
disabledReason?: ReactNode;
|
|
6099
|
+
/**
|
|
6100
|
+
* Where `disabledReason` shows (0.32, §4 "No fact only in a tooltip"): by default a
|
|
6101
|
+
* line under the button at Large and on a touch screen, the tooltip otherwise. See
|
|
6102
|
+
* {@link DisabledReasonDisplay}.
|
|
6103
|
+
*/
|
|
6104
|
+
disabledReasonDisplay?: DisabledReasonDisplay;
|
|
5567
6105
|
/**
|
|
5568
6106
|
* This button COMMITS — it saves, creates, deletes. Under a locked
|
|
5569
6107
|
* {@link WriteLockProvider} it is disabled the `disabledReason` way, with the lock's
|
|
@@ -5645,8 +6183,10 @@ interface ButtonLinkProps extends Omit<AnchorHTMLAttributes<HTMLAnchorElement>,
|
|
|
5645
6183
|
pending?: never;
|
|
5646
6184
|
pressed?: never;
|
|
5647
6185
|
disabledReason?: never;
|
|
6186
|
+
disabledReasonDisplay?: never;
|
|
5648
6187
|
commit?: never;
|
|
5649
6188
|
}
|
|
6189
|
+
|
|
5650
6190
|
declare function Button(props: ButtonLinkProps): ReactElement;
|
|
5651
6191
|
declare function Button(props: ButtonProps): ReactElement;
|
|
5652
6192
|
type IconButtonSize = "2xl" | "xl" | "lg" | "md" | "sm" | "xs" | "2xs";
|
|
@@ -5796,9 +6336,25 @@ interface IconButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
|
5796
6336
|
* unless `tooltipPortal` says otherwise.
|
|
5797
6337
|
*/
|
|
5798
6338
|
label?: string;
|
|
6339
|
+
/**
|
|
6340
|
+
* Show `label` as visible text beside the icon at Large and Extra large (0.32,
|
|
6341
|
+
* docs/text-size-harmonization.md §4, §10.8). A reader who asked for bigger type is
|
|
6342
|
+
* the one an unlabelled glyph fails, and on touch the tooltip never opens. Then there
|
|
6343
|
+
* is no tooltip: the words are on the button.
|
|
6344
|
+
*
|
|
6345
|
+
* Default `true` — except for `variant="overlay"` and `"shutter"`, which sit ON a
|
|
6346
|
+
* picture, and inside {@link CompactControls} (AppShell's top bar, `RowActions`'
|
|
6347
|
+
* inline icons). `false`: the icon alone at every size, for an icon on content — a
|
|
6348
|
+
* receipt overlay, a map's zoom, a viewfinder, a photo thumbnail. That must be rare;
|
|
6349
|
+
* a dense row's actions belong in `RowActions`, which collapses them into a "⋯" menu
|
|
6350
|
+
* at Large instead (§10.8). Normal never shows it. `tooltip={false}` (a universally
|
|
6351
|
+
* read glyph, a dialog's ✕) keeps the icon alone too.
|
|
6352
|
+
*/
|
|
6353
|
+
labelVisible?: boolean;
|
|
5799
6354
|
/** Show `label` as a tooltip. Default `true`; `false` keeps `label` as the
|
|
5800
6355
|
* accessible name only — for a button whose glyph is universally read (a close ✕ in
|
|
5801
|
-
* a dialog header) or that already sits under a tooltip of its own.
|
|
6356
|
+
* a dialog header) or that already sits under a tooltip of its own. It also keeps the
|
|
6357
|
+
* label from showing as text at Large (see `labelVisible`). */
|
|
5802
6358
|
tooltip?: boolean;
|
|
5803
6359
|
/** Where the `label` tooltip opens. See {@link Tooltip}'s `side`. */
|
|
5804
6360
|
tooltipSide?: TooltipSide;
|
|
@@ -5852,8 +6408,13 @@ interface IconButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
|
5852
6408
|
* bubble shows the reason in place of the label, since the glyph already says what
|
|
5853
6409
|
* the button is and the reason is the news. Shown even with `tooltip={false}`: a
|
|
5854
6410
|
* reason nobody can see is not one. Wins over `disabled`, as on Button.
|
|
6411
|
+
*
|
|
6412
|
+
* 0.32: at Large and on a touch screen the reason is a line under the button rather
|
|
6413
|
+
* than a bubble — see `disabledReasonDisplay`.
|
|
5855
6414
|
*/
|
|
5856
6415
|
disabledReason?: ReactNode;
|
|
6416
|
+
/** Where `disabledReason` shows — {@link Button}'s `disabledReasonDisplay`. */
|
|
6417
|
+
disabledReasonDisplay?: DisabledReasonDisplay;
|
|
5857
6418
|
/** This action COMMITS — {@link Button}'s `commit`: under a locked
|
|
5858
6419
|
* {@link WriteLockProvider} it takes the `disabledReason` path with the lock's
|
|
5859
6420
|
* reason. No effect without a lock. */
|
|
@@ -5884,7 +6445,7 @@ interface IconButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
|
5884
6445
|
* `disabledStyle` are a button's and are typed out: a link is not a toggle, and a link
|
|
5885
6446
|
* that explains why it cannot be followed is a job for a disabled BUTTON.
|
|
5886
6447
|
*/
|
|
5887
|
-
interface IconButtonLinkProps extends Omit<AnchorHTMLAttributes<HTMLAnchorElement>, "type" | "href">, Pick<IconButtonProps, "variant" | "size" | "glyphSize" | "badge" | "stretch" | "shape" | "toneColor" | "tone" | "quiet" | "stopPropagation" | "label" | "tooltip" | "tooltipSide" | "tooltipPortal" | "tooltipLazy"> {
|
|
6448
|
+
interface IconButtonLinkProps extends Omit<AnchorHTMLAttributes<HTMLAnchorElement>, "type" | "href">, Pick<IconButtonProps, "variant" | "size" | "glyphSize" | "badge" | "stretch" | "shape" | "toneColor" | "tone" | "quiet" | "stopPropagation" | "label" | "labelVisible" | "tooltip" | "tooltipSide" | "tooltipPortal" | "tooltipLazy"> {
|
|
5888
6449
|
href: string;
|
|
5889
6450
|
/** See {@link ButtonLinkProps.renderLink}. */
|
|
5890
6451
|
renderLink?: KitLinkComponent;
|
|
@@ -5901,6 +6462,7 @@ interface IconButtonLinkProps extends Omit<AnchorHTMLAttributes<HTMLAnchorElemen
|
|
|
5901
6462
|
form?: never;
|
|
5902
6463
|
pressed?: never;
|
|
5903
6464
|
disabledReason?: never;
|
|
6465
|
+
disabledReasonDisplay?: never;
|
|
5904
6466
|
commit?: never;
|
|
5905
6467
|
disabledStyle?: never;
|
|
5906
6468
|
pending?: never;
|
|
@@ -5924,6 +6486,19 @@ declare function IconButton(props: IconButtonProps): ReactElement;
|
|
|
5924
6486
|
declare namespace IconButton {
|
|
5925
6487
|
var displayName: string;
|
|
5926
6488
|
}
|
|
6489
|
+
/**
|
|
6490
|
+
* The 16 px floor on touch (docs/text-size-harmonization.md §10.1). iOS zooms the page
|
|
6491
|
+
* when a field under 16 px takes focus, and keksdose's `maximum-scale=1` — which stopped
|
|
6492
|
+
* it — goes so pinch zoom works again (WCAG 1.4.4). A zoomed page drops the keyboard
|
|
6493
|
+
* inset to 0 (§10.2), so the zoom would put a pinned editor footer behind the keyboard
|
|
6494
|
+
* (keksdose #154). So on a coarse pointer a field is at least 16 px, at every text size:
|
|
6495
|
+
* `max()` leaves Large and Extra large alone, where `text-sm` is already 17.5 / 21 px.
|
|
6496
|
+
*
|
|
6497
|
+
* In px on purpose: the threshold is the browser's, in CSS px, whatever the root size.
|
|
6498
|
+
* Font size only — the line height keeps `text-sm`'s ratio. Part of {@link FIELD_BASE};
|
|
6499
|
+
* add it to any other text-entry control whose type is below 16 px.
|
|
6500
|
+
*/
|
|
6501
|
+
declare const FIELD_TOUCH_TEXT = "pointer-coarse:text-[length:max(0.875rem,16px)]";
|
|
5927
6502
|
declare const FIELD_BASE: string;
|
|
5928
6503
|
/** Cancels FIELD_BASE's read-only treatment for a field that is `readOnly` for a
|
|
5929
6504
|
* reason other than "you may not edit this". Attribute-scoped for the same reason
|
|
@@ -5933,8 +6508,12 @@ declare const FIELD_WRITABLE_LOOK = "[&[readonly]]:bg-[var(--bg-surface)] [&[rea
|
|
|
5933
6508
|
declare const FIELD_FLOATING_PAD = "pt-4 pb-1";
|
|
5934
6509
|
declare const FIELD_INVALID = "border-[var(--danger-border-strong)] ring-1 ring-[var(--danger-border-strong)] focus:border-[var(--danger)] focus:ring-[var(--danger)]";
|
|
5935
6510
|
declare const FLOATING_INPUT_CLASS: string;
|
|
5936
|
-
/** The phone breakpoint
|
|
5937
|
-
*
|
|
6511
|
+
/** The phone breakpoint at Normal text size, as a media query.
|
|
6512
|
+
*
|
|
6513
|
+
* @deprecated since 0.32 — it does not follow the text size (§3.3): at Large the CSS
|
|
6514
|
+
* `max-md:` reaches 959 px and this still stops at 767. Use `usePhoneLayout()`, which
|
|
6515
|
+
* agrees with `max-md:` at every size, or `breakpointQuery("max-md", scale)` where a
|
|
6516
|
+
* query string is needed. Kept exported, unchanged, for the apps that import it. */
|
|
5938
6517
|
declare const PHONE_QUERY = "(max-width: 767px)";
|
|
5939
6518
|
/**
|
|
5940
6519
|
* The PHONE display treatment (Keksdose feedback #176, carried across the entry
|
|
@@ -5942,8 +6521,9 @@ declare const PHONE_QUERY = "(max-width: 767px)";
|
|
|
5942
6521
|
* about reads as the thing itself, not as another boxed row in a stack.
|
|
5943
6522
|
*
|
|
5944
6523
|
* Every control that takes `variant="display"` — {@link Input}, `NumberInput`,
|
|
5945
|
-
* `AmountInput` — means exactly the same thing by it: the treatment applies
|
|
5946
|
-
*
|
|
6524
|
+
* `AmountInput` — means exactly the same thing by it: the treatment applies in the
|
|
6525
|
+
* phone layout (`usePhoneLayout()`, `max-md:` at the text size in force) and the field
|
|
6526
|
+
* is untouched above it, so a caller never has
|
|
5947
6527
|
* to ask the viewport, and a form can't end up half-treated across breakpoints.
|
|
5948
6528
|
*
|
|
5949
6529
|
* What stays, deliberately:
|
|
@@ -6009,31 +6589,6 @@ interface FloatingFieldProps extends ComponentPropsWithoutRef<"div"> {
|
|
|
6009
6589
|
children: ReactNode;
|
|
6010
6590
|
}
|
|
6011
6591
|
declare function FloatingField({ className, htmlFor, label, staticLabel, srOnlyLabel, hint, children, ...rest }: FloatingFieldProps): react.JSX.Element;
|
|
6012
|
-
/**
|
|
6013
|
-
* The "?" that explains a field, on the field's own label line (dev#468).
|
|
6014
|
-
*
|
|
6015
|
-
* Pass it to a labelled {@link Select} / {@link Input} as `hint`. It exists as a
|
|
6016
|
-
* component rather than as a snippet each form repeats because the previous
|
|
6017
|
-
* version was exactly that snippet — an absolutely-positioned button whose
|
|
6018
|
-
* `top-1.5` was one guess at where an 11px label sits — and the reporter's
|
|
6019
|
-
* follow-up was *"question mark is not centered. Is it part of the hoc?
|
|
6020
|
-
* positioning problems seem quite frequently."* It was not part of the HOC. Now
|
|
6021
|
-
* it is, and there is one place left where the answer can be wrong.
|
|
6022
|
-
*
|
|
6023
|
-
* A `<button>` rather than a bare icon: hover alone puts the explanation out of
|
|
6024
|
-
* reach of a keyboard and of every touch device, and the tooltip shows on focus
|
|
6025
|
-
* too. The text is also its accessible name, so a screen reader gets it without
|
|
6026
|
-
* the bubble ever opening.
|
|
6027
|
-
*/
|
|
6028
|
-
interface FieldHintProps extends Omit<ComponentPropsWithoutRef<"button">, "children"> {
|
|
6029
|
-
/** The explanation. It is both the tooltip's text and, by default, the button's
|
|
6030
|
-
* accessible name, so a screen reader gets it without the bubble ever opening. */
|
|
6031
|
-
label: string;
|
|
6032
|
-
/** Default `"start"`: before the hint in the reading direction (the left in LTR, the
|
|
6033
|
-
* right in RTL). `left` / `right` stay physical. */
|
|
6034
|
-
side?: TooltipSide;
|
|
6035
|
-
}
|
|
6036
|
-
declare function FieldHint({ label, side, className, "aria-label": ariaLabel, ...rest }: FieldHintProps): react.JSX.Element;
|
|
6037
6592
|
interface LabelProps extends ComponentPropsWithoutRef<"label"> {
|
|
6038
6593
|
/** Draw the required mark after the text. The mark is `aria-hidden`: what a
|
|
6039
6594
|
* screen reader hears is the control's own `required` / `aria-required`, which
|
|
@@ -6624,7 +7179,7 @@ interface TabsProps<T extends string> extends Omit<ComponentPropsWithoutRef<"div
|
|
|
6624
7179
|
* `onRemove`, `onAdd` — means exactly what it means on the horizontal strip; the
|
|
6625
7180
|
* badge moves to the row's end.
|
|
6626
7181
|
*
|
|
6627
|
-
* **On a phone (
|
|
7182
|
+
* **On a phone (`usePhoneLayout()`) it becomes the horizontal strip**, `wrap` and
|
|
6628
7183
|
* all, rather than staying a column. A side nav only works beside its content; on
|
|
6629
7184
|
* a phone it has to go ABOVE it, and eight full-width rows there push the panel
|
|
6630
7185
|
* the user picked below the fold on every visit — the two keksdose pages both
|
|
@@ -7219,4 +7774,4 @@ interface DeleteAccountSettingProps extends Omit<ComponentPropsWithoutRef<"div">
|
|
|
7219
7774
|
*/
|
|
7220
7775
|
declare function DeleteAccountSetting({ email, mode, days, consequences, handOverCount, onRequest, describeError, labels: labelsProp, className, ...rest }: DeleteAccountSettingProps): react.JSX.Element;
|
|
7221
7776
|
|
|
7222
|
-
export { type FeedbackContext as $, type FeedbackAttachmentError as A, type FeedbackAttachmentErrorInfo as B, ChatComposer as C, DEFAULT_ATTACHMENT_ACCEPT as D, FeedbackAttachmentField as E, FEEDBACK_ATTACHMENT_ACCEPT as F, type FeedbackAttachmentFieldLabels as G, type FeedbackAttachmentFieldMultipleProps as H, type FeedbackAttachmentFieldProps as I, type FeedbackAttachmentFieldRefsProps as J, type FeedbackAttachmentFieldSingleProps as K, type FeedbackAttachmentLabels as L, type FeedbackAttachmentRef as M, type FeedbackAttachmentRefsError as N, FeedbackAwaitingToggle as O, type FeedbackAwaitingToggleProps as P, type FeedbackCategory as Q, FeedbackCategoryBadge as R, type FeedbackCategoryLabels as S, type FeedbackCategoryOption as T, type FeedbackColumnsOptions as U, FeedbackComposer as V, type FeedbackComposerAttachment as W, type FeedbackComposerHandle as X, type FeedbackComposerLabels as Y, type FeedbackComposerProps as Z, type FeedbackComposerSlotContext as _, type ChatComposerHandle as a, feedbackAttachmentUrls as a$, FeedbackContextBox as a0, type FeedbackContextBoxProps as a1, type FeedbackContextInput as a2, type FeedbackContextLabels as a3, FeedbackDetail as a4, type FeedbackDetailLabels as a5, type FeedbackDetailPatch as a6, FeedbackDetailSection as a7, type FeedbackDetailUpdate as a8, FeedbackDialog as a9, FeedbackStatusBadge as aA, type FeedbackStatusChange as aB, type FeedbackStatusLabels as aC, type FeedbackStatusMutate as aD, type FeedbackStatusPatch as aE, type FeedbackStatusRow as aF, FeedbackStatusTransitions as aG, type FeedbackStatusUndoOptions as aH, FeedbackSubject as aI, type FeedbackSubjectProps as aJ, type FeedbackSubmission as aK, type FeedbackSubmitHint as aL, type FeedbackSubmitter as aM, type FeedbackTableRow as aN, FeedbackThread as aO, type FeedbackThreadAttachment as aP, type FeedbackThreadEvent as aQ, type FeedbackThreadItem as aR, type FeedbackThreadLabels as aS, type FeedbackThreadMessage as aT, type FeedbackThreadProps as aU, type FeedbackToastLabels as aV, type FeedbackUpload as aW, type UseFeedbackColumnsOptions as aX, appendRework as aY, attachmentName as aZ, feedbackAttachmentLine as a_, type FeedbackDialogLabels as aa, type FeedbackDialogMultipleProps as ab, type FeedbackDialogProps as ac, type FeedbackDialogSingleProps as ad, type FeedbackDialogTextLabels as ae, FeedbackEmptyState as af, type FeedbackEmptyStateProps as ag, type FeedbackEnvironment as ah, FeedbackMenu as ai, type FeedbackMenuLabels as aj, type FeedbackMenuProps as ak, FeedbackMobileCard as al, type FeedbackMobileCardProps as am, type FeedbackMultipleSubmission as an, type FeedbackNoteAttachment as ao, FeedbackNoteEditor as ap, type FeedbackPageLabels as aq, FeedbackProse as ar, type FeedbackRecord as as, type FeedbackRenderDate as at, FeedbackReworkSection as au, type FeedbackReworkSectionProps as av, type FeedbackRowAccess as aw, FeedbackRowDetail as ax, type FeedbackRowDetailProps as ay, type FeedbackStatus as az, type ChatComposerLabels as b, type ChartTooltipPlacement as b$, feedbackCategoryRank as b0, feedbackColumns as b1, feedbackContext as b2, feedbackEnvironment as b3, feedbackMobileGroupBy as b4, feedbackPageHref as b5, feedbackPagePath as b6, feedbackPageUrl as b7, feedbackRowAccess as b8, feedbackSubmitter as b9, type AppShellLabels as bA, Button as bB, type ButtonClassesOptions as bC, type ButtonLinkProps as bD, type ButtonProps as bE, type ButtonSize as bF, type ButtonTone as bG, type ButtonVariant as bH, type CalculatorLabels as bI, Card as bJ, CardAction as bK, type CardActionProps as bL, CardContent as bM, type CardContentProps as bN, type CardDensity as bO, CardDescription as bP, type CardDescriptionProps as bQ, CardFooter as bR, type CardFooterProps as bS, CardHeader as bT, type CardHeaderProps as bU, type CardProps as bV, CardTitle as bW, type CardTitleLevel as bX, type CardTitleProps as bY, type CardTone as bZ, type CharacterCountLabels as b_, feedbackSubmitterEmail as ba, isFeedbackAwaiting as bb, isImageAttachment as bc, nextFeedbackStatus as bd, pastedName as be, replaceDescription as bf, reworkCount as bg, selectableFeedbackStatuses as bh, splitBodyAttachments as bi, splitDescription as bj, useFeedbackCategoryLabels as bk, useFeedbackColumns as bl, useFeedbackDetailLabels as bm, useFeedbackPageLabels as bn, useFeedbackRenderDate as bo, useFeedbackStatusLabels as bp, useFeedbackStatusUndo as bq, useFeedbackToastLabels as br, visibleFeedbackStatuses as bs, AdminActionConfirm as bt, type AdminActionConfirmProps as bu, type AdminActionConfirmValues as bv, type AdminActionLabels as bw, type AdminActionTarget as bx, type AdminConfirmLevel as by, type AdminUserStateFields as bz, type ChatComposerProps as c, FIELD_INVALID as c$, type ComboboxLabels as c0, type CommonLabels as c1, type ConfirmDialogLabels as c2, type ConfirmFn as c3, type ConfirmOptions as c4, ConfirmProvider as c5, type ConfirmProviderProps as c6, type ConfirmTone as c7, CopyButton as c8, type CopyButtonLabels as c9, DEFAULT_PICKER_SHEET_LABELS as cA, DEFAULT_REGISTER_LABELS as cB, DEFAULT_REVIEWER_SCOPE_LABELS as cC, DEFAULT_ROLE_SELECT_LABELS as cD, DEFAULT_SHARE_CARD_LABELS as cE, DEFAULT_SWIPEABLE_ROW_LABELS as cF, DEFAULT_TABS_LABELS as cG, DEFAULT_TOP_BAR_LABELS as cH, DEFAULT_TRANSFER_OWNERSHIP_LABELS as cI, DEFAULT_USER_ROSTER_LABELS as cJ, DangerConfirm as cK, type DangerConfirmLabels as cL, type DangerConfirmProps as cM, type DangerConfirmValues as cN, type DangerConsequence as cO, type DatePickerLabels as cP, type DeleteAccountConsequence as cQ, type DeleteAccountLabels as cR, DeleteAccountSetting as cS, type DeleteAccountSettingProps as cT, type DeleteAccountValues as cU, type DeletionMode as cV, EmptyState as cW, type EmptyStateProps as cX, FIELD_BASE as cY, FIELD_DISPLAY as cZ, FIELD_FLOATING_PAD as c_, type CopyButtonProps as ca, type CurrencyLabels as cb, CurrentPasswordInput as cc, type CurrentPasswordInputLabels as cd, type CurrentPasswordInputProps as ce, DEFAULT_ADMIN_ACTION_LABELS as cf, DEFAULT_APP_SHELL_LABELS as cg, DEFAULT_CALCULATOR_LABELS as ch, DEFAULT_CHARACTER_COUNT_LABELS as ci, DEFAULT_COMBOBOX_LABELS as cj, DEFAULT_COMMON_LABELS as ck, DEFAULT_CONFIRM_DIALOG_LABELS as cl, DEFAULT_COPY_BUTTON_LABELS as cm, DEFAULT_CURRENCY_LABELS as cn, DEFAULT_DANGER_CONFIRM_LABELS as co, DEFAULT_DATE_PICKER_LABELS as cp, DEFAULT_DELETE_ACCOUNT_LABELS as cq, DEFAULT_FILE_LABELS as cr, DEFAULT_FILE_PICKER_LABELS as cs, DEFAULT_FORM_ACTIONS_LABELS as ct, DEFAULT_IBAN_INPUT_LABELS as cu, DEFAULT_INVITATIONS_LABELS as cv, DEFAULT_LEGAL_LABELS as cw, DEFAULT_MULTI_SELECT_LABELS as cx, DEFAULT_PASSWORD_REVEAL_LABELS as cy, DEFAULT_PHONE_INPUT_LABELS as cz, type ChatComposerSlotContext as d, LegalLayout as d$, FIELD_TRIGGER as d0, FIELD_WRITABLE_LOOK as d1, FLOATING_INPUT_CLASS as d2, FLOATING_LABEL_CLASS as d3, FieldChevron as d4, type FieldChevronProps as d5, FieldHint as d6, type FieldHintProps as d7, FileButton as d8, type FileButtonProps as d9, type IconButtonToneColor as dA, type IconButtonVariant as dB, Input as dC, type InputProps as dD, type InvitationDraft as dE, type InvitationRow as dF, type InvitationScope as dG, type InvitationSentAnswer as dH, type InvitationStatus as dI, type InvitationsLabels as dJ, InvitationsPanel as dK, type InvitationsPanelProps as dL, KIT_LANGUAGES as dM, type KitDateFormatContext as dN, type KitDateFormatter as dO, type KitLanguage as dP, type KitLanguageCode as dQ, type KitLinkComponent as dR, type KitLinkProps as dS, LEGAL_HREFS as dT, Label as dU, type LabelOverride as dV, type LabelProps as dW, LegalFooter as dX, type LegalFooterProps as dY, type LegalFramedSectionLabels as dZ, type LegalLabels as d_, type FileLabels as da, type FilePickerLabels as db, type FileRejection as dc, type FileRejectionReason as dd, type FileScreenOptions as de, FloatingField as df, type FloatingFieldProps as dg, FormActions as dh, type FormActionsAlign as di, type FormActionsDestructive as dj, type FormActionsLabels as dk, type FormActionsPlacement as dl, type FormActionsProps as dm, type FormActionsStickyWithin as dn, type FormActionsSubmitProps as dp, type FormActionsSubmitShortcut as dq, IbanInput as dr, type IbanInputLabels as ds, type IbanInputProps as dt, IconButton as du, type IconButtonGlyphSize as dv, type IconButtonLinkProps as dw, type IconButtonProps as dx, type IconButtonSize as dy, type IconButtonTone as dz, DEFAULT_FEEDBACK_ATTACHMENT_LABELS as e, TransferOwnershipDialog as e$, type LegalLayoutProps as e0, type LegalLink as e1, LegalLinks as e2, type LegalLinksProps as e3, type LegalOperator as e4, type LegalOperatorSectionLabels as e5, type LegalOperatorText as e6, type LegalPageKey as e7, LegalSection as e8, type LegalSectionProps as e9, type RolesEditorProps as eA, type RosterState as eB, Select as eC, type SelectProps as eD, type ShareAddRequest as eE, type ShareCandidate as eF, ShareCard as eG, type ShareCardLabels as eH, type ShareCardProps as eI, ShareDialog as eJ, type ShareDialogProps as eK, type ShareGrantee as eL, SharePanel as eM, type SharePanelProps as eN, type SharePendingGrant as eO, type ShareRole as eP, Spinner as eQ, type SpinnerProps as eR, type SwipeableRowLabels as eS, type TabItem as eT, Tabs as eU, type TabsLabels as eV, type TabsProps as eW, Textarea as eX, type TextareaProps as eY, type TopBarLabels as eZ, type TransferCandidate as e_, type LegalTextSectionLabels as ea, type MultiSelectLabels as eb, PHONE_QUERY as ec, type PasswordRevealLabels as ed, PhoneInput as ee, type PhoneInputLabels as ef, type PhoneInputProps as eg, type PickerSheetLabels as eh, RegisterForm as ei, type RegisterFormProps as ej, type RegisterLabels as ek, type RegisterValues as el, type ResponsiveFormActionsPlacement as em, type ReviewerScope as en, type ReviewerScopeArea as eo, ReviewerScopeEditor as ep, type ReviewerScopeEditorProps as eq, type ReviewerScopeLabels as er, type ReviewerScopeLanguage as es, type RoleEditing as et, type RoleLock as eu, type RoleLockCode as ev, RoleSelect as ew, type RoleSelectLabels as ex, type RoleSelectProps as ey, RolesEditor as ez, DEFAULT_FEEDBACK_CATEGORY_LABELS as f, LegalText as f$, type TransferOwnershipDialogProps as f0, type TransferOwnershipLabels as f1, type TransferUnavailable as f2, type TransferValues as f3, TypedConfirmField as f4, type TypedConfirmFieldLabels as f5, type TypedConfirmFieldProps as f6, type TypedMatch as f7, USER_ROSTER_SORT_KEYS as f8, type UiKitLabelOverrides as f9, resolvePasswordRevealLabels as fA, typedMatches as fB, useConfirm as fC, useFilePicker as fD, useKitChartTooltipPlacement as fE, useKitDateFormatter as fF, useKitFileLabels as fG, useKitLabelOverrides as fH, useKitLabels as fI, useKitLink as fJ, useKitLocale as fK, useKitWeekStart as fL, useLegalLabels as fM, useUiKitLabels as fN, useUserRosterColumns as fO, userRosterColumns as fP, userRosterSort as fQ, type FilePickHandler as fR, formatAccept as fS, judgePick as fT, screenFiles as fU, summariseRejections as fV, LegalPageContext as fW, type LegalPageContextValue as fX, type LegalRefTarget as fY, type LegalSectionSlot as fZ, LegalSlotContext as f_, type UiKitLabels as fa, UiKitProvider as fb, type UiKitProviderProps as fc, type UseFilePickerOptions as fd, type UseFilePickerReturn as fe, UserIdentityCell as ff, type UserIdentityCellProps as fg, type UserRosterColumnsOptions as fh, type UserRosterLabels as fi, type UserRosterRow as fj, type UserRosterSortKey as fk, type UserRowAction as fl, type UserRowActionList as fm, UserRowActions as fn, type UserRowActionsProps as fo, adminUserStates as fp, buttonClasses as fq, formatFileSize as fr, formatLocaleOf as fs, languageOptions as ft, legalOperatorText as fu, loadUiKitLabels as fv, matchesAccept as fw, missingKitLabels as fx, peekUiKitLabels as fy, resolveLanguage as fz, DEFAULT_FEEDBACK_COMPOSER_LABELS as g, baseLanguage as g0, resolveLegalRefs as g1, warnLegalOnce as g2, usePromisePending as g3, DEFAULT_FEEDBACK_CONTEXT_LABELS as h, DEFAULT_FEEDBACK_DETAIL_LABELS as i, DEFAULT_FEEDBACK_DIALOG_LABELS as j, DEFAULT_FEEDBACK_MENU_LABELS as k, DEFAULT_FEEDBACK_PAGE_LABELS as l, DEFAULT_FEEDBACK_STATUS_LABELS as m, DEFAULT_FEEDBACK_THREAD_LABELS as n, DEFAULT_FEEDBACK_TOAST_LABELS as o, DEFAULT_MAX_ATTACHMENTS as p, DEFAULT_MAX_ATTACHMENT_BYTES as q, FEEDBACK_AUTHOR_EDITABLE_STATUSES as r, FEEDBACK_AWAITING_STATUSES as s, FEEDBACK_CATEGORY_META as t, FEEDBACK_CATEGORY_ORDER as u, FEEDBACK_PICKABLE_CATEGORIES as v, FEEDBACK_REWORKABLE_STATUSES as w, FEEDBACK_STATUS_META as x, FEEDBACK_STATUS_ORDER as y, FEEDBACK_UNDO_DURATION as z };
|
|
7777
|
+
export { type FeedbackContext as $, type FeedbackAttachmentError as A, type FeedbackAttachmentErrorInfo as B, ChatComposer as C, DEFAULT_ATTACHMENT_ACCEPT as D, FeedbackAttachmentField as E, FEEDBACK_ATTACHMENT_ACCEPT as F, type FeedbackAttachmentFieldLabels as G, type FeedbackAttachmentFieldMultipleProps as H, type FeedbackAttachmentFieldProps as I, type FeedbackAttachmentFieldRefsProps as J, type FeedbackAttachmentFieldSingleProps as K, type FeedbackAttachmentLabels as L, type FeedbackAttachmentRef as M, type FeedbackAttachmentRefsError as N, FeedbackAwaitingToggle as O, type FeedbackAwaitingToggleProps as P, type FeedbackCategory as Q, FeedbackCategoryBadge as R, type FeedbackCategoryLabels as S, type FeedbackCategoryOption as T, type FeedbackColumnsOptions as U, FeedbackComposer as V, type FeedbackComposerAttachment as W, type FeedbackComposerHandle as X, type FeedbackComposerLabels as Y, type FeedbackComposerProps as Z, type FeedbackComposerSlotContext as _, type ChatComposerHandle as a, feedbackAttachmentUrls as a$, FeedbackContextBox as a0, type FeedbackContextBoxProps as a1, type FeedbackContextInput as a2, type FeedbackContextLabels as a3, FeedbackDetail as a4, type FeedbackDetailLabels as a5, type FeedbackDetailPatch as a6, FeedbackDetailSection as a7, type FeedbackDetailUpdate as a8, FeedbackDialog as a9, FeedbackStatusBadge as aA, type FeedbackStatusChange as aB, type FeedbackStatusLabels as aC, type FeedbackStatusMutate as aD, type FeedbackStatusPatch as aE, type FeedbackStatusRow as aF, FeedbackStatusTransitions as aG, type FeedbackStatusUndoOptions as aH, FeedbackSubject as aI, type FeedbackSubjectProps as aJ, type FeedbackSubmission as aK, type FeedbackSubmitHint as aL, type FeedbackSubmitter as aM, type FeedbackTableRow as aN, FeedbackThread as aO, type FeedbackThreadAttachment as aP, type FeedbackThreadEvent as aQ, type FeedbackThreadItem as aR, type FeedbackThreadLabels as aS, type FeedbackThreadMessage as aT, type FeedbackThreadProps as aU, type FeedbackToastLabels as aV, type FeedbackUpload as aW, type UseFeedbackColumnsOptions as aX, appendRework as aY, attachmentName as aZ, feedbackAttachmentLine as a_, type FeedbackDialogLabels as aa, type FeedbackDialogMultipleProps as ab, type FeedbackDialogProps as ac, type FeedbackDialogSingleProps as ad, type FeedbackDialogTextLabels as ae, FeedbackEmptyState as af, type FeedbackEmptyStateProps as ag, type FeedbackEnvironment as ah, FeedbackMenu as ai, type FeedbackMenuLabels as aj, type FeedbackMenuProps as ak, FeedbackMobileCard as al, type FeedbackMobileCardProps as am, type FeedbackMultipleSubmission as an, type FeedbackNoteAttachment as ao, FeedbackNoteEditor as ap, type FeedbackPageLabels as aq, FeedbackProse as ar, type FeedbackRecord as as, type FeedbackRenderDate as at, FeedbackReworkSection as au, type FeedbackReworkSectionProps as av, type FeedbackRowAccess as aw, FeedbackRowDetail as ax, type FeedbackRowDetailProps as ay, type FeedbackStatus as az, type ChatComposerLabels as b, type CardHeaderProps as b$, feedbackCategoryRank as b0, feedbackColumns as b1, feedbackContext as b2, feedbackEnvironment as b3, feedbackMobileGroupBy as b4, feedbackPageHref as b5, feedbackPagePath as b6, feedbackPageUrl as b7, feedbackRowAccess as b8, feedbackSubmitter as b9, AppShell as bA, type AppShellLabels as bB, type AppShellMoreLabels as bC, type AppShellNavItem as bD, type AppShellProps as bE, type AppShellSidebarFooterItem as bF, type AppShellSubItem as bG, type BillingLabels as bH, Button as bI, type ButtonClassesOptions as bJ, type ButtonLinkProps as bK, type ButtonProps as bL, type ButtonSize as bM, type ButtonTone as bN, type ButtonVariant as bO, type CalculatorLabels as bP, Card as bQ, CardAction as bR, type CardActionProps as bS, CardContent as bT, type CardContentProps as bU, type CardDensity as bV, CardDescription as bW, type CardDescriptionProps as bX, CardFooter as bY, type CardFooterProps as bZ, CardHeader as b_, feedbackSubmitterEmail as ba, isFeedbackAwaiting as bb, isImageAttachment as bc, nextFeedbackStatus as bd, pastedName as be, replaceDescription as bf, reworkCount as bg, selectableFeedbackStatuses as bh, splitBodyAttachments as bi, splitDescription as bj, useFeedbackCategoryLabels as bk, useFeedbackColumns as bl, useFeedbackDetailLabels as bm, useFeedbackPageLabels as bn, useFeedbackRenderDate as bo, useFeedbackStatusLabels as bp, useFeedbackStatusUndo as bq, useFeedbackToastLabels as br, visibleFeedbackStatuses as bs, AdminActionConfirm as bt, type AdminActionConfirmProps as bu, type AdminActionConfirmValues as bv, type AdminActionLabels as bw, type AdminActionTarget as bx, type AdminConfirmLevel as by, type AdminUserStateFields as bz, type ChatComposerProps as c, type DeleteAccountConsequence as c$, type CardProps as c0, CardTitle as c1, type CardTitleLevel as c2, type CardTitleProps as c3, type CardTone as c4, type CharacterCountLabels as c5, type ChartTooltipPlacement as c6, type ComboboxLabels as c7, type CommonLabels as c8, type ConfirmDialogLabels as c9, DEFAULT_FILE_LABELS as cA, DEFAULT_FILE_PICKER_LABELS as cB, DEFAULT_FORM_ACTIONS_LABELS as cC, DEFAULT_IBAN_INPUT_LABELS as cD, DEFAULT_INVITATIONS_LABELS as cE, DEFAULT_LEGAL_LABELS as cF, DEFAULT_MOBILE_BAR_MAX as cG, DEFAULT_MULTI_SELECT_LABELS as cH, DEFAULT_PASSWORD_REVEAL_LABELS as cI, DEFAULT_PHONE_INPUT_LABELS as cJ, DEFAULT_PICKER_SHEET_LABELS as cK, DEFAULT_REGISTER_LABELS as cL, DEFAULT_REVIEWER_SCOPE_LABELS as cM, DEFAULT_ROLE_SELECT_LABELS as cN, DEFAULT_ROW_ACTIONS_LABELS as cO, DEFAULT_SHARE_CARD_LABELS as cP, DEFAULT_SWIPEABLE_ROW_LABELS as cQ, DEFAULT_TABS_LABELS as cR, DEFAULT_TOP_BAR_LABELS as cS, DEFAULT_TRANSFER_OWNERSHIP_LABELS as cT, DEFAULT_USER_ROSTER_LABELS as cU, DangerConfirm as cV, type DangerConfirmLabels as cW, type DangerConfirmProps as cX, type DangerConfirmValues as cY, type DangerConsequence as cZ, type DatePickerLabels as c_, type ConfirmFn as ca, type ConfirmOptions as cb, ConfirmProvider as cc, type ConfirmProviderProps as cd, type ConfirmTone as ce, CopyButton as cf, type CopyButtonLabels as cg, type CopyButtonProps as ch, type CurrencyLabels as ci, CurrentPasswordInput as cj, type CurrentPasswordInputLabels as ck, type CurrentPasswordInputProps as cl, DEFAULT_ADMIN_ACTION_LABELS as cm, DEFAULT_APP_SHELL_LABELS as cn, DEFAULT_APP_SHELL_MORE_LABELS as co, DEFAULT_BILLING_LABELS as cp, DEFAULT_CALCULATOR_LABELS as cq, DEFAULT_CHARACTER_COUNT_LABELS as cr, DEFAULT_COMBOBOX_LABELS as cs, DEFAULT_COMMON_LABELS as ct, DEFAULT_CONFIRM_DIALOG_LABELS as cu, DEFAULT_COPY_BUTTON_LABELS as cv, DEFAULT_CURRENCY_LABELS as cw, DEFAULT_DANGER_CONFIRM_LABELS as cx, DEFAULT_DATE_PICKER_LABELS as cy, DEFAULT_DELETE_ACCOUNT_LABELS as cz, type ChatComposerSlotContext as d, type KitLanguageCode as d$, type DeleteAccountLabels as d0, DeleteAccountSetting as d1, type DeleteAccountSettingProps as d2, type DeleteAccountValues as d3, type DeletionMode as d4, EmptyState as d5, type EmptyStateProps as d6, FIELD_BASE as d7, FIELD_DISPLAY as d8, FIELD_FLOATING_PAD as d9, type FormActionsSubmitProps as dA, type FormActionsSubmitShortcut as dB, IbanInput as dC, type IbanInputLabels as dD, type IbanInputProps as dE, IconButton as dF, type IconButtonGlyphSize as dG, type IconButtonLinkProps as dH, type IconButtonProps as dI, type IconButtonSize as dJ, type IconButtonTone as dK, type IconButtonToneColor as dL, type IconButtonVariant as dM, Input as dN, type InputProps as dO, type InvitationDraft as dP, type InvitationRow as dQ, type InvitationScope as dR, type InvitationSentAnswer as dS, type InvitationStatus as dT, type InvitationsLabels as dU, InvitationsPanel as dV, type InvitationsPanelProps as dW, KIT_LANGUAGES as dX, type KitDateFormatContext as dY, type KitDateFormatter as dZ, type KitLanguage as d_, FIELD_INVALID as da, FIELD_TOUCH_TEXT as db, FIELD_TRIGGER as dc, FIELD_WRITABLE_LOOK as dd, FLOATING_INPUT_CLASS as de, FLOATING_LABEL_CLASS as df, FieldChevron as dg, type FieldChevronProps as dh, FileButton as di, type FileButtonProps as dj, type FileLabels as dk, type FilePickerLabels as dl, type FileRejection as dm, type FileRejectionReason as dn, type FileScreenOptions as dp, FloatingField as dq, type FloatingFieldProps as dr, FormActions as ds, type FormActionsAlign as dt, type FormActionsDestructive as du, type FormActionsLabels as dv, type FormActionsPlacement as dw, type FormActionsProps as dx, type FormActionsStack as dy, type FormActionsStickyWithin as dz, DEFAULT_FEEDBACK_ATTACHMENT_LABELS as e, ShareCard as e$, type KitLinkComponent as e0, type KitLinkProps as e1, LEGAL_HREFS as e2, Label as e3, type LabelOverride as e4, type LabelProps as e5, type LegalDisclaimerSectionLabels as e6, LegalFooter as e7, type LegalFooterProps as e8, type LegalFramedSectionLabels as e9, type ReviewerScopeArea as eA, ReviewerScopeEditor as eB, type ReviewerScopeEditorProps as eC, type ReviewerScopeLabels as eD, type ReviewerScopeLanguage as eE, type RoleEditing as eF, type RoleLock as eG, type RoleLockCode as eH, RoleSelect as eI, type RoleSelectLabels as eJ, type RoleSelectProps as eK, RolesEditor as eL, type RolesEditorProps as eM, type RosterState as eN, type RowAction as eO, type RowActionList as eP, RowActions as eQ, type RowActionsCollapse as eR, type RowActionsColumnOptions as eS, type RowActionsLabels as eT, type RowActionsProps as eU, type RowActionsSize as eV, SUBSCRIPTION_STATUSES as eW, Select as eX, type SelectProps as eY, type ShareAddRequest as eZ, type ShareCandidate as e_, type LegalLabels as ea, LegalLayout as eb, type LegalLayoutProps as ec, type LegalLink as ed, LegalLinks as ee, type LegalLinksProps as ef, type LegalOperator as eg, type LegalOperatorSectionLabels as eh, type LegalOperatorText as ei, type LegalPageKey as ej, LegalSection as ek, type LegalSectionProps as el, type LegalTextSectionLabels as em, type MultiSelectLabels as en, PHONE_QUERY as eo, type PasswordRevealLabels as ep, PhoneInput as eq, type PhoneInputLabels as er, type PhoneInputProps as es, type PickerSheetLabels as et, RegisterForm as eu, type RegisterFormProps as ev, type RegisterLabels as ew, type RegisterValues as ex, type ResponsiveFormActionsPlacement as ey, type ReviewerScope as ez, DEFAULT_FEEDBACK_CATEGORY_LABELS as f, useBillingLabels as f$, type ShareCardLabels as f0, type ShareCardProps as f1, ShareDialog as f2, type ShareDialogProps as f3, type ShareGrantee as f4, SharePanel as f5, type SharePanelProps as f6, type SharePendingGrant as f7, type ShareRole as f8, Spinner as f9, type UseFilePickerOptions as fA, type UseFilePickerReturn as fB, UserIdentityCell as fC, type UserIdentityCellProps as fD, type UserRosterColumnsOptions as fE, type UserRosterLabels as fF, type UserRosterRow as fG, type UserRosterSortKey as fH, type UserRowAction as fI, type UserRowActionList as fJ, UserRowActions as fK, type UserRowActionsProps as fL, adminUserStates as fM, buttonClasses as fN, formatFileSize as fO, formatLocaleOf as fP, languageOptions as fQ, legalOperatorText as fR, loadUiKitLabels as fS, matchesAccept as fT, missingKitLabels as fU, peekUiKitLabels as fV, resolveLanguage as fW, resolvePasswordRevealLabels as fX, rowActionsColumn as fY, splitMobileBar as fZ, typedMatches as f_, type SpinnerProps as fa, type SubscriptionStatus as fb, type SwipeableRowLabels as fc, TOUCH_TARGET_LARGE as fd, type TabItem as fe, Tabs as ff, type TabsLabels as fg, type TabsProps as fh, Textarea as fi, type TextareaProps as fj, type TopBarLabels as fk, type TransferCandidate as fl, TransferOwnershipDialog as fm, type TransferOwnershipDialogProps as fn, type TransferOwnershipLabels as fo, type TransferUnavailable as fp, type TransferValues as fq, TypedConfirmField as fr, type TypedConfirmFieldLabels as fs, type TypedConfirmFieldProps as ft, type TypedMatch as fu, USER_ROSTER_SORT_KEYS as fv, type UiKitLabelOverrides as fw, type UiKitLabels as fx, UiKitProvider as fy, type UiKitProviderProps as fz, DEFAULT_FEEDBACK_COMPOSER_LABELS as g, useConfirm as g0, useFilePicker as g1, useKitChartTooltipPlacement as g2, useKitDateFormatter as g3, useKitFileLabels as g4, useKitLabelOverrides as g5, useKitLabels as g6, useKitLink as g7, useKitLocale as g8, useKitWeekStart as g9, useLegalLabels as ga, useUiKitLabels as gb, useUserRosterColumns as gc, userRosterColumns as gd, userRosterSort as ge, type FilePickHandler as gf, formatAccept as gg, judgePick as gh, screenFiles as gi, summariseRejections as gj, LegalPageContext as gk, type LegalPageContextValue as gl, type LegalRefTarget as gm, type LegalSectionSlot as gn, LegalSlotContext as go, LegalText as gp, baseLanguage as gq, resolveLegalRefs as gr, warnLegalOnce as gs, usePromisePending as gt, DEFAULT_FEEDBACK_CONTEXT_LABELS as h, DEFAULT_FEEDBACK_DETAIL_LABELS as i, DEFAULT_FEEDBACK_DIALOG_LABELS as j, DEFAULT_FEEDBACK_MENU_LABELS as k, DEFAULT_FEEDBACK_PAGE_LABELS as l, DEFAULT_FEEDBACK_STATUS_LABELS as m, DEFAULT_FEEDBACK_THREAD_LABELS as n, DEFAULT_FEEDBACK_TOAST_LABELS as o, DEFAULT_MAX_ATTACHMENTS as p, DEFAULT_MAX_ATTACHMENT_BYTES as q, FEEDBACK_AUTHOR_EDITABLE_STATUSES as r, FEEDBACK_AWAITING_STATUSES as s, FEEDBACK_CATEGORY_META as t, FEEDBACK_CATEGORY_ORDER as u, FEEDBACK_PICKABLE_CATEGORIES as v, FEEDBACK_REWORKABLE_STATUSES as w, FEEDBACK_STATUS_META as x, FEEDBACK_STATUS_ORDER as y, FEEDBACK_UNDO_DURATION as z };
|