@eifi1/ui-kit 0.31.1 → 0.32.1
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 +51 -28
- package/dist/account/delete-account-setting.d.ts +8 -3
- package/dist/admin/admin-action-confirm.d.ts +8 -3
- package/dist/admin/admin-action-log.d.ts +1 -1
- package/dist/admin/admin-action-log.js +4 -2
- package/dist/admin/admin-action-log.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/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 +76 -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/chart.js.map +1 -1
- 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 +5 -4
- 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 +38 -0
- package/dist/components/appearance-labels.js +19 -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/button-group.js +7 -1
- package/dist/components/button-group.js.map +1 -1
- 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 +54 -23
- package/dist/components/chip.js.map +1 -1
- package/dist/components/choice-card.d.ts +1 -1
- package/dist/components/choice-card.js +9 -8
- 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/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 +3 -2
- package/dist/components/data-table-pagination.js +15 -6
- package/dist/components/data-table-pagination.js.map +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 +18 -6
- 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 +10 -4
- 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 +50 -39
- 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 +4 -4
- 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 +231 -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 +57 -8
- package/dist/components/settings-fields.js +39 -1
- package/dist/components/settings-fields.js.map +1 -1
- package/dist/components/share-card.d.ts +11 -6
- package/dist/components/share-card.js +8 -2
- 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/status-dot.js +9 -2
- package/dist/components/status-dot.js.map +1 -1
- package/dist/components/swipeable-row.js +10 -2
- 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 +25 -3
- 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-editor.js +1 -1
- package/dist/components/translation-review-editor.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 +207 -119
- 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/components/wizard-stepper.js +20 -14
- package/dist/components/wizard-stepper.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-CpIhzxxZ.d.ts → delete-account-setting-FLyJf-kZ.d.ts} +642 -60
- 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 +88 -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 +94 -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 +89 -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 +91 -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 +91 -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 +92 -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 +89 -3
- package/dist/i18n/locales/zh.js.map +1 -1
- package/dist/i18n/review.d.ts +8 -3
- package/dist/i18n/review.js +15 -1
- package/dist/i18n/review.js.map +1 -1
- package/dist/index.d.ts +27 -11
- package/dist/index.js +77 -4
- package/dist/index.js.map +1 -1
- package/dist/landing/landing-actions.d.ts +8 -3
- package/dist/landing/landing-sections.d.ts +8 -3
- package/dist/landing/landing-sections.js +7 -3
- package/dist/landing/landing-sections.js.map +1 -1
- 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 +8 -3
- 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-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 +9 -5
- 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 +110 -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 +173 -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/wizard-summary.js +1 -1
- package/dist/wizard/wizard-summary.js.map +1 -1
- package/dist/wizard.d.ts +8 -3
- package/package.json +1 -1
- package/src/admin/admin-action-log.tsx +6 -1
- 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/billing/billing-banner.tsx +205 -0
- package/src/billing/billing-labels.ts +240 -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/chart.ts +2 -0
- package/src/components/account-chips.tsx +36 -10
- package/src/components/alert-banner.tsx +16 -7
- package/src/components/amount-input.tsx +5 -5
- package/src/components/appearance-labels.ts +47 -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/button-group.tsx +21 -0
- 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 +139 -30
- package/src/components/choice-card.tsx +16 -11
- 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/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-pagination.tsx +60 -31
- package/src/components/data-table.tsx +164 -43
- package/src/components/date-picker.tsx +44 -10
- 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 +26 -4
- 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 +15 -6
- 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 +9 -4
- package/src/components/pie-chart.tsx +19 -9
- package/src/components/popover.tsx +22 -5
- package/src/components/row-actions.tsx +450 -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 +89 -5
- package/src/components/share-card.tsx +31 -2
- 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/status-dot.tsx +25 -2
- package/src/components/swipeable-row.tsx +10 -2
- 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 +115 -14
- package/src/components/toggle-legend.tsx +53 -8
- package/src/components/translation-review-editor.tsx +1 -1
- package/src/components/translation-review.tsx +11 -5
- package/src/components/tree-view.tsx +3 -2
- package/src/components/treemap.tsx +27 -10
- package/src/components/ui.tsx +353 -153
- package/src/components/user-avatar.tsx +1 -1
- package/src/components/wizard-stepper.tsx +5 -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 +132 -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 +107 -0
- package/src/i18n/kit-labels.tsx +12 -0
- package/src/i18n/locales/es.ts +98 -0
- package/src/i18n/locales/fr.ts +102 -0
- package/src/i18n/locales/hu.ts +100 -0
- package/src/i18n/locales/it.ts +103 -0
- package/src/i18n/locales/zh.ts +94 -0
- package/src/i18n/review.ts +14 -0
- package/src/index.ts +76 -6
- package/src/landing/landing-sections.tsx +7 -3
- package/src/landing/public-header.tsx +4 -4
- 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-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/theme/contrast-tokens.ts +112 -0
- package/src/theme/contrast.ts +225 -0
- package/src/theme/palette-presets.ts +24 -4
- package/src/theme/palette-store.ts +6 -1
- package/src/theme/text-size.ts +283 -0
- package/src/wizard/wizard-summary.tsx +4 -2
- package/tokens.css +158 -8
|
@@ -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
|
|
@@ -2920,11 +2923,28 @@ type FormActionsAlign = "start" | "center" | "end" | "between";
|
|
|
2920
2923
|
* FullBleedDialog's `footer`), which already pads and rules it.
|
|
2921
2924
|
*/
|
|
2922
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";
|
|
2923
2942
|
/**
|
|
2924
2943
|
* A placement per breakpoint, mobile first — `{ base: "sticky", md: "inline" }` is a
|
|
2925
2944
|
* Save row stuck to the bottom of a phone's long form and in the flow under the last
|
|
2926
|
-
* field from 768px up, where the form fits. The breakpoints are
|
|
2927
|
-
* 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
|
|
2928
2948
|
* resolved the same way, in JS: the sticky row is positioned by inline style, which a
|
|
2929
2949
|
* `md:` class cannot reach. keksdose switched `placement` on its own media query at
|
|
2930
2950
|
* every long form for want of this. The breakpoints are the VIEWPORT's, not the
|
|
@@ -3122,6 +3142,9 @@ interface FormActionsProps extends Omit<ComponentPropsWithoutRef<"div">, "childr
|
|
|
3122
3142
|
* `form.submitShortcut` label), dimmed. Hidden on a touch-only device, which has no
|
|
3123
3143
|
* keyboard to press it on. Default `false`. */
|
|
3124
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;
|
|
3125
3148
|
/** Extra actions, placed before Cancel. */
|
|
3126
3149
|
children?: ReactNode;
|
|
3127
3150
|
}
|
|
@@ -3140,7 +3163,7 @@ interface FormActionsProps extends Omit<ComponentPropsWithoutRef<"div">, "childr
|
|
|
3140
3163
|
* The spinner is the kit's {@link Spinner}, drawn inside the button with `label={null}`
|
|
3141
3164
|
* so the button's name stays its text; `aria-busy` is what says it is working.
|
|
3142
3165
|
*/
|
|
3143
|
-
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;
|
|
3144
3167
|
|
|
3145
3168
|
/**
|
|
3146
3169
|
* The legal pages — Imprint, Privacy Policy, Terms — for every app.
|
|
@@ -3219,6 +3242,20 @@ interface LegalTextSectionLabels {
|
|
|
3219
3242
|
title: string;
|
|
3220
3243
|
body: string;
|
|
3221
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
|
+
}
|
|
3222
3259
|
/** A kit section whose text names the operator (§4.3 `{name}`, `{email}`, …). */
|
|
3223
3260
|
interface LegalOperatorSectionLabels {
|
|
3224
3261
|
title: string;
|
|
@@ -3282,7 +3319,8 @@ interface LegalLabels {
|
|
|
3282
3319
|
impressum: {
|
|
3283
3320
|
operator: LegalOperatorSectionLabels;
|
|
3284
3321
|
contact: LegalOperatorSectionLabels;
|
|
3285
|
-
|
|
3322
|
+
/** `body` is the default, non-commercial text; `commercial` the 0.32 variant. */
|
|
3323
|
+
disclaimer: LegalDisclaimerSectionLabels;
|
|
3286
3324
|
};
|
|
3287
3325
|
privacy: {
|
|
3288
3326
|
controller: LegalOperatorSectionLabels;
|
|
@@ -3846,6 +3884,172 @@ interface RegisterFormProps extends Omit<ComponentPropsWithoutRef<"div">, "onSub
|
|
|
3846
3884
|
*/
|
|
3847
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;
|
|
3848
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
|
+
/**
|
|
3908
|
+
* Runs it. The kit sends nothing — the app opens its confirmation or calls its API.
|
|
3909
|
+
* Optional only beside `href`; an action has one or the other (or both: `onSelect`
|
|
3910
|
+
* then runs as the link is followed).
|
|
3911
|
+
*/
|
|
3912
|
+
onSelect?: () => void;
|
|
3913
|
+
/**
|
|
3914
|
+
* The action NAVIGATES — an edit page, a mail to compose (0.32.1, kastlan's 0.32
|
|
3915
|
+
* report): a real link inline and in the menu, so open in a new tab, a middle click
|
|
3916
|
+
* and the URL on hover work, which `onSelect` + `navigate` lost. The kit's link rule
|
|
3917
|
+
* applies ({@link Button}'s `href`): in-app through the provider's `linkComponent`, an
|
|
3918
|
+
* external or `#anchor` one a plain `<a>`, `mailto:` included.
|
|
3919
|
+
*
|
|
3920
|
+
* A link cannot carry a reason or a spinner, so an action with a `disabledReason`
|
|
3921
|
+
* (or under a write lock, with `commit`) or `pending` stays a button and says why.
|
|
3922
|
+
*/
|
|
3923
|
+
href?: string;
|
|
3924
|
+
/** With `href`: leaves the app — a new tab, and a screen reader is told so. */
|
|
3925
|
+
external?: boolean;
|
|
3926
|
+
/**
|
|
3927
|
+
* The glyph: a Lucide icon (`Pencil`), or an element (`<Pencil />`, an app's own
|
|
3928
|
+
* svg) — DataTable's `rowActions` hand their `icon` node through. Inline, an action
|
|
3929
|
+
* without one is a small text button; in the menu it is the words alone.
|
|
3930
|
+
*/
|
|
3931
|
+
icon?: LucideIcon | ReactElement;
|
|
3932
|
+
/** `danger` for delete, revoke, erase: the quiet red of IconButton's `tone="danger"`
|
|
3933
|
+
* inline, the danger text tone in the menu. */
|
|
3934
|
+
tone?: "default" | "danger";
|
|
3935
|
+
/** Why it is not available for this row. It stays listed, focusable, and says so — an
|
|
3936
|
+
* action that silently vanished would leave the reader looking for it. */
|
|
3937
|
+
disabledReason?: ReactNode;
|
|
3938
|
+
/**
|
|
3939
|
+
* This action COMMITS — it saves, sends, deletes: under a locked
|
|
3940
|
+
* {@link WriteLockProvider} it is refused with the lock's reason, as {@link Button}'s
|
|
3941
|
+
* `commit` is, inline and in the menu alike. No provider, or an unlocked one: no effect.
|
|
3942
|
+
*/
|
|
3943
|
+
commit?: boolean;
|
|
3944
|
+
/**
|
|
3945
|
+
* In flight — the request it started has not answered. Inline, the icon turns into
|
|
3946
|
+
* IconButton's spinner (`pending`); collapsed, the "⋯" button does, since the menu
|
|
3947
|
+
* closed when the action was chosen. Either way nothing in the row can be pressed again
|
|
3948
|
+
* until it settles: the "⋯" opens no menu while busy.
|
|
3949
|
+
*/
|
|
3950
|
+
pending?: boolean;
|
|
3951
|
+
/**
|
|
3952
|
+
* Not available for a moment, with nothing to explain — another action of the list
|
|
3953
|
+
* is in flight (an admin panel's `busy`). The plain `disabled`; a lasting refusal is a
|
|
3954
|
+
* `disabledReason`, which says why.
|
|
3955
|
+
*/
|
|
3956
|
+
disabled?: boolean;
|
|
3957
|
+
/** Leave it out for this row. */
|
|
3958
|
+
hidden?: boolean;
|
|
3959
|
+
}
|
|
3960
|
+
/** What a row's actions may be: entries, and `false` / `null` / `undefined` for the ones
|
|
3961
|
+
* a condition left out. */
|
|
3962
|
+
type RowActionList = readonly (RowAction | false | null | undefined)[];
|
|
3963
|
+
interface RowActionsLabels {
|
|
3964
|
+
/** The menu button's name when the row has no name of its own; also the actions
|
|
3965
|
+
* column's (hidden) header in {@link rowActionsColumn}. */
|
|
3966
|
+
actions: string;
|
|
3967
|
+
/** The menu button's name, given the row's: "Actions for Ada Example". */
|
|
3968
|
+
actionsFor: (name: string) => string;
|
|
3969
|
+
}
|
|
3970
|
+
declare const DEFAULT_ROW_ACTIONS_LABELS: RowActionsLabels;
|
|
3971
|
+
/**
|
|
3972
|
+
* - `"auto"` (default): the icons inline at Normal; the "⋯" menu at Large and Extra
|
|
3973
|
+
* large once there are two or more (§10.8). A single action stays inline at every
|
|
3974
|
+
* size, with its label as text at Large — one label fits a row, and a menu of one is
|
|
3975
|
+
* a detour.
|
|
3976
|
+
* - `"menu"`: the menu at every size — the roster's choice, whose actions grow (§2.4
|
|
3977
|
+
* there) and do not fit a phone card as a strip.
|
|
3978
|
+
* - `"inline"`: the icons at every size — for a row the app knows has room; at Large
|
|
3979
|
+
* each then shows its label (IconButton's `labelVisible`).
|
|
3980
|
+
*/
|
|
3981
|
+
type RowActionsCollapse = "auto" | "menu" | "inline";
|
|
3982
|
+
/** The sizes a row action comes in: IconButton's row steps. `2xs` is DataTable's
|
|
3983
|
+
* compact density. At Large every one is at least a 48 px target (IconButton). */
|
|
3984
|
+
type RowActionsSize = Extract<IconButtonSize, "md" | "sm" | "xs" | "2xs">;
|
|
3985
|
+
interface RowActionsProps {
|
|
3986
|
+
actions: RowActionList;
|
|
3987
|
+
/** The row's name, for the menu button's name — "Actions for Ada Example". Without it
|
|
3988
|
+
* (or `null`, as API fields often are) the button is "Actions". */
|
|
3989
|
+
name?: string | null;
|
|
3990
|
+
/** When the actions collapse into the menu — see {@link RowActionsCollapse}. */
|
|
3991
|
+
collapse?: RowActionsCollapse;
|
|
3992
|
+
/** The inline icons' and the "⋯" button's size. Default `xs`, a list row's action. */
|
|
3993
|
+
size?: RowActionsSize;
|
|
3994
|
+
/** The menu's width. Default `"15rem"`, in rem so it grows with the words (§3.2). */
|
|
3995
|
+
menuWidth?: `${number}rem`;
|
|
3996
|
+
/** On the wrapper: the inline strip, or the "⋯" button's box. */
|
|
3997
|
+
className?: string;
|
|
3998
|
+
labels?: Partial<RowActionsLabels>;
|
|
3999
|
+
}
|
|
4000
|
+
/**
|
|
4001
|
+
* A row's actions, inline or as a "⋯" menu — see {@link RowActionsCollapse}. Every
|
|
4002
|
+
* control stops its click (and the Enter/Space it stands for) from reaching the row, so
|
|
4003
|
+
* a clickable row or a DataTable `rowLink` does not open as well; in a DataTable column
|
|
4004
|
+
* also set `noRowLink: true`, as {@link rowActionsColumn} does.
|
|
4005
|
+
*
|
|
4006
|
+
* Inline, the icons sit in a {@link CompactControls} region at Normal: their labels
|
|
4007
|
+
* stay the names and the tooltips, and a locked one keeps its reason in the tooltip — a
|
|
4008
|
+
* line under one icon of a row would break the row. In the menu a locked action's
|
|
4009
|
+
* reason is a line under its words at Large and on touch (Button's
|
|
4010
|
+
* `disabledReasonDisplay`).
|
|
4011
|
+
*
|
|
4012
|
+
* The menu is portalled, so a table's scroller cannot clip it; Escape and an outside
|
|
4013
|
+
* press close it, and focus goes back to the "⋯" button, which is where a confirmation
|
|
4014
|
+
* dialog then returns it.
|
|
4015
|
+
*/
|
|
4016
|
+
declare function RowActions({ actions, name, collapse, size, menuWidth, className, labels: labelsProp, }: RowActionsProps): react.JSX.Element | null;
|
|
4017
|
+
interface RowActionsColumnOptions<T> {
|
|
4018
|
+
/** The column's key. Default `"actions"`. */
|
|
4019
|
+
key?: string;
|
|
4020
|
+
/** The row's actions — `false` / `null` for the ones a condition leaves out. */
|
|
4021
|
+
actions: (row: T) => RowActionList;
|
|
4022
|
+
/** The row's name, for the "⋯" button's name ("Actions for Ada Example"). `null` and
|
|
4023
|
+
* `undefined` both mean "Actions". */
|
|
4024
|
+
name?: (row: T) => string | null | undefined;
|
|
4025
|
+
collapse?: RowActionsCollapse;
|
|
4026
|
+
/** Default `xs`. */
|
|
4027
|
+
size?: RowActionsSize;
|
|
4028
|
+
/**
|
|
4029
|
+
* The column's name as plain text — the column-settings checklist and the phone
|
|
4030
|
+
* card's label read it (`DataTableColumn.headerText`). Pass the app's own word; left
|
|
4031
|
+
* out, the header shows the provider's `rowActions.actions` to a screen reader and
|
|
4032
|
+
* the plain-text places fall back to the column's `key`.
|
|
4033
|
+
*/
|
|
4034
|
+
headerText?: string;
|
|
4035
|
+
labels?: Partial<RowActionsLabels>;
|
|
4036
|
+
/** Anything else for the column (`mobileHidden`, `cellProps`…), merged last. */
|
|
4037
|
+
column?: Partial<DataTableColumn<T>>;
|
|
4038
|
+
}
|
|
4039
|
+
/**
|
|
4040
|
+
* A DataTable column of {@link RowActions} — an app's action column in one line
|
|
4041
|
+
* (§10.8): inline icons at Normal, the "⋯" menu at Large with two or more actions.
|
|
4042
|
+
*
|
|
4043
|
+
* columns={[...columns, rowActionsColumn({ actions: (r) => [...], name: (r) => r.name })]}
|
|
4044
|
+
*
|
|
4045
|
+
* The header is visually hidden (the icons say what the column is), the column hugs its
|
|
4046
|
+
* content at the row's end, and `noRowLink` keeps a `rowHref` anchor off it, so the
|
|
4047
|
+
* buttons keep their own clicks. On a phone it is a line of the card like any column;
|
|
4048
|
+
* set `column: { mobileHidden: true }` to drop it there (with `mobileDetailsInRow` it
|
|
4049
|
+
* then shows in the opened row instead).
|
|
4050
|
+
*/
|
|
4051
|
+
declare function rowActionsColumn<T>({ key, actions, name, collapse, size, headerText, labels, column, }: RowActionsColumnOptions<T>): DataTableColumn<T>;
|
|
4052
|
+
|
|
3849
4053
|
/**
|
|
3850
4054
|
* The role of an account, chosen by an admin (docs/user-admin-harmonization.md §3.3,
|
|
3851
4055
|
* §4.1, §7): {@link RoleSelect} for the apps where an account has ONE role (keksdose,
|
|
@@ -4102,26 +4306,12 @@ interface UserIdentityCellProps {
|
|
|
4102
4306
|
* Both lines carry `data-private`, so keksdose's demo blur reaches them.
|
|
4103
4307
|
*/
|
|
4104
4308
|
declare function UserIdentityCell({ person, name, email, avatar, badge, locale: localeProp, className, }: UserIdentityCellProps): react.JSX.Element;
|
|
4105
|
-
/** One entry of a row's action menu (§4).
|
|
4106
|
-
|
|
4107
|
-
|
|
4108
|
-
key?: string;
|
|
4109
|
-
label: string;
|
|
4110
|
-
/** Runs it — usually opens `AdminActionConfirm` with the level the server states. */
|
|
4111
|
-
onSelect: () => void;
|
|
4112
|
-
icon?: LucideIcon;
|
|
4113
|
-
/** `danger` for deactivate, transfer, erase. */
|
|
4114
|
-
tone?: "default" | "danger";
|
|
4115
|
-
/** Why it is not available for this row ("You can’t deactivate yourself"). The entry
|
|
4116
|
-
* stays in the menu, focusable, and says so — an action that silently vanished
|
|
4117
|
-
* would leave the admin looking for it. */
|
|
4118
|
-
disabledReason?: ReactNode;
|
|
4119
|
-
/** Leave it out for this row. */
|
|
4120
|
-
hidden?: boolean;
|
|
4121
|
-
}
|
|
4309
|
+
/** One entry of a row's action menu (§4) — the kit's {@link RowAction} since 0.32,
|
|
4310
|
+
* which generalised it for every dense row (docs/text-size-harmonization.md §10.8). */
|
|
4311
|
+
type UserRowAction = RowAction;
|
|
4122
4312
|
/** What `actions(row)` may return: entries, and `false` / `null` for the ones a
|
|
4123
4313
|
* condition left out (`row.is_active && {…}`). */
|
|
4124
|
-
type UserRowActionList =
|
|
4314
|
+
type UserRowActionList = RowActionList;
|
|
4125
4315
|
interface UserRowActionsProps {
|
|
4126
4316
|
actions: UserRowActionList;
|
|
4127
4317
|
/** The account's name, for the menu's name — "Actions for Ada Example". */
|
|
@@ -4134,8 +4324,11 @@ interface UserRowActionsProps {
|
|
|
4134
4324
|
* a phone card, and both grow with every action §2.4 adds. The menu is portalled, so a
|
|
4135
4325
|
* table's scroller cannot clip it; Escape and an outside press close it, and focus goes
|
|
4136
4326
|
* back to the button, which is where a confirmation dialog then returns it.
|
|
4327
|
+
*
|
|
4328
|
+
* Since 0.32 this is {@link RowActions} with `collapse="menu"` — the menu at every size —
|
|
4329
|
+
* named by the roster's own `actionsFor`.
|
|
4137
4330
|
*/
|
|
4138
|
-
declare function UserRowActions({ actions, name, labels: labelsProp }: UserRowActionsProps): react.JSX.Element
|
|
4331
|
+
declare function UserRowActions({ actions, name, labels: labelsProp }: UserRowActionsProps): react.JSX.Element;
|
|
4139
4332
|
/** How a row's role may be changed inline: `true`, or with reasons. */
|
|
4140
4333
|
interface RoleEditing<R extends string> {
|
|
4141
4334
|
/** Why the whole select is locked for this row — `"self"`, `"last_admin"`, or words. */
|
|
@@ -4654,6 +4847,350 @@ interface InvitationsPanelProps<R extends string = string> {
|
|
|
4654
4847
|
}
|
|
4655
4848
|
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;
|
|
4656
4849
|
|
|
4850
|
+
/**
|
|
4851
|
+
* The subscription's status vocabulary (docs/billing-harmonization.md §3.2) — server-kit's
|
|
4852
|
+
* `SubscriptionStatus`, value for value:
|
|
4853
|
+
*
|
|
4854
|
+
* - `trialing` — the 30-day trial without a card (§2.7), or a pure guest's row whose trial
|
|
4855
|
+
* has not started (§12.9, `trial_ends_at` empty);
|
|
4856
|
+
* - `active` — paid;
|
|
4857
|
+
* - `past_due` — a payment failed; in good standing during the provider's retries (§3.3);
|
|
4858
|
+
* - `canceled` — the payer cancelled; the American spelling is the wire's, the word shown
|
|
4859
|
+
* is "Cancelled";
|
|
4860
|
+
* - `expired` — a trial, a grant or a failed subscription ran out: read-only (§2.3);
|
|
4861
|
+
* - `comped` — free by the operator's grant or as a beta user (§3.2, `comped_until`).
|
|
4862
|
+
*/
|
|
4863
|
+
type SubscriptionStatus = "trialing" | "active" | "past_due" | "canceled" | "expired" | "comped";
|
|
4864
|
+
/** Every status, in the order a lifecycle reads: trial, paid, trouble, ended, granted. */
|
|
4865
|
+
declare const SUBSCRIPTION_STATUSES: readonly SubscriptionStatus[];
|
|
4866
|
+
/**
|
|
4867
|
+
* The words of the subscription parts — the `billing` namespace of `<UiKitProvider labels>`
|
|
4868
|
+
* (docs/billing-harmonization.md §7, §10; ui-kit 0.32.0).
|
|
4869
|
+
*
|
|
4870
|
+
* WORDING (§12.24): the English group is "Subscription", never "Plan" — keksdose's "plan"
|
|
4871
|
+
* is the month's budget plan ("One plan per month"), and two meanings of one word on one
|
|
4872
|
+
* settings page is the clash the review found. "Plan" stays the word for WHAT is bought
|
|
4873
|
+
* (Free, Pro), "subscription" for the standing arrangement. German says "Tarif" for the
|
|
4874
|
+
* plan and "Abonnement" for the subscription (§10).
|
|
4875
|
+
*
|
|
4876
|
+
* Prices are GROSS (§12.17): Swiss consumer law (PBV) wants a consumer price with the
|
|
4877
|
+
* MWST in it, so the cards say so (`vatIncluded`).
|
|
4878
|
+
*/
|
|
4879
|
+
interface BillingLabels {
|
|
4880
|
+
/** The settings group or admin section the parts live on (§7, §12.24): "Subscription". */
|
|
4881
|
+
group: string;
|
|
4882
|
+
/** The picker's name when it has no visible `legend`: "Plans". */
|
|
4883
|
+
plans: string;
|
|
4884
|
+
/** The name of the billing-period switch: "Billing period". */
|
|
4885
|
+
interval: string;
|
|
4886
|
+
/** The switch's two options — yearly first (§12.17). */
|
|
4887
|
+
yearly: string;
|
|
4888
|
+
monthly: string;
|
|
4889
|
+
/** The name of the currency switch: "Currency". */
|
|
4890
|
+
currency: string;
|
|
4891
|
+
/** After a price: "per year", "per month". */
|
|
4892
|
+
perYear: string;
|
|
4893
|
+
perMonth: string;
|
|
4894
|
+
/** Under a price (§12.17): "VAT included". German: "inkl. MWST". */
|
|
4895
|
+
vatIncluded: string;
|
|
4896
|
+
/** A plan with no price, or a price of 0: "Free". */
|
|
4897
|
+
free: string;
|
|
4898
|
+
/** A plan with prices, but none for this currency and period. */
|
|
4899
|
+
notOffered: string;
|
|
4900
|
+
/** A limit of `null` (§3.1): "Unlimited". */
|
|
4901
|
+
unlimited: string;
|
|
4902
|
+
/** The accessible names of a card's two lists. */
|
|
4903
|
+
limits: string;
|
|
4904
|
+
features: string;
|
|
4905
|
+
/** The chip on the payer's current plan. */
|
|
4906
|
+
current: string;
|
|
4907
|
+
/** The picker's button for `plan` (the plan's display name) with no current plan —
|
|
4908
|
+
* during a trial, or after a plan ended: "Choose Pro". */
|
|
4909
|
+
choose: (plan: string) => string;
|
|
4910
|
+
/** …for a plan after the current one in the catalogue's order: "Upgrade to Pro". */
|
|
4911
|
+
upgrade: (plan: string) => string;
|
|
4912
|
+
/** …for a plan before it: "Switch to Free". */
|
|
4913
|
+
downgrade: (plan: string) => string;
|
|
4914
|
+
/** Why the button is off while the current plan is the one picked. */
|
|
4915
|
+
isCurrent: string;
|
|
4916
|
+
/** Why it is off while nothing is picked. */
|
|
4917
|
+
pickFirst: string;
|
|
4918
|
+
/** One word per status. */
|
|
4919
|
+
status: Record<SubscriptionStatus, string>;
|
|
4920
|
+
/** A trial ends in `days` calendar days — 0 is today, 1 tomorrow. */
|
|
4921
|
+
trialEnding: (days: number) => string;
|
|
4922
|
+
/** A free grant (`comped_until`: a beta user's 12 months, an operator's grant) ends in
|
|
4923
|
+
* `days` calendar days. */
|
|
4924
|
+
grantEnding: (days: number) => string;
|
|
4925
|
+
/** The first failed payment (`past_due`), while the provider retries. */
|
|
4926
|
+
paymentFailed: string;
|
|
4927
|
+
/** Out of good standing: read-only, never locked (§2.3). */
|
|
4928
|
+
planEnded: string;
|
|
4929
|
+
/**
|
|
4930
|
+
* A guest in someone else's item that is read-only for billing (§12.6). It never says
|
|
4931
|
+
* WHY beyond "for now": the owner's payment status is the owner's personal data.
|
|
4932
|
+
* `item` is the item's own name ("Household 2026"), shown in quotes — or `undefined`.
|
|
4933
|
+
*/
|
|
4934
|
+
guestReadOnly: (item?: string) => string;
|
|
4935
|
+
/** Back from checkout before the provider's webhook landed (§12.21). */
|
|
4936
|
+
processing: string;
|
|
4937
|
+
/** The action of the trial, grant and plan-ended banners, and of `PlanLimitNotice`'s
|
|
4938
|
+
* `upgrade` mode: "Choose a plan". */
|
|
4939
|
+
choosePlan: string;
|
|
4940
|
+
/** The payment-failed banner's action, to the provider's portal: "Update payment method". */
|
|
4941
|
+
updatePayment: string;
|
|
4942
|
+
/** The processing banner's action, when the app gives one: "Check again". */
|
|
4943
|
+
checkAgain: string;
|
|
4944
|
+
/** The `WriteLockProvider` reason for the payer (§3.3, verbatim). A guest's reason is
|
|
4945
|
+
* {@link guestReadOnly}. */
|
|
4946
|
+
lockReason: string;
|
|
4947
|
+
/** The notice's first line: "Plan limit reached". */
|
|
4948
|
+
limitReached: string;
|
|
4949
|
+
/** Mode `upgrade`: what the action does. */
|
|
4950
|
+
limitUpgrade: string;
|
|
4951
|
+
/** Mode `contact` (the operator grants plans by hand, keksdose's today). */
|
|
4952
|
+
limitContact: string;
|
|
4953
|
+
/** Mode `contact`'s action, a mail to support: "Ask for more". */
|
|
4954
|
+
askForMore: string;
|
|
4955
|
+
/** The meter's value: "3 of 3". Both figures are formatted already. */
|
|
4956
|
+
usage: (used: string, limit: string) => string;
|
|
4957
|
+
/** The subject of the `contact` mail; `dimension` is the app's name for it ("Budgets"). */
|
|
4958
|
+
contactSubject: (dimension: string) => string;
|
|
4959
|
+
/** The portal: payment method and invoices (§2.8, the provider hosts both). */
|
|
4960
|
+
manage: string;
|
|
4961
|
+
/**
|
|
4962
|
+
* The visible cancel link on the app's subscription page (§12.26). German: §312k BGB
|
|
4963
|
+
* wants the button that leads to the cancellation labelled "Verträge hier kündigen" or
|
|
4964
|
+
* as unambiguously — a translator should use exactly that.
|
|
4965
|
+
*/
|
|
4966
|
+
cancel: string;
|
|
4967
|
+
/** Changes refused as `billing_read_only` inside a sync reply, kept queued and sent
|
|
4968
|
+
* after payment: "3 changes waiting for a plan". */
|
|
4969
|
+
waitingChanges: (count: number) => string;
|
|
4970
|
+
/** The sign-out guard's way out for someone who will not pay. */
|
|
4971
|
+
discardWaiting: string;
|
|
4972
|
+
/**
|
|
4973
|
+
* `billing_not_configured`: billing is on but the provider's settings are missing — the
|
|
4974
|
+
* operator's mistake, so the words ask the payer to wait, not to act. For the toast or
|
|
4975
|
+
* alert after "Choose a plan" or "Payment and invoices" (`isBillingError(err,
|
|
4976
|
+
* "billing_not_configured")`). `billing_read_only` and `plan_limit` need none: the
|
|
4977
|
+
* write lock, the banner and `PlanLimitNotice` say them.
|
|
4978
|
+
*/
|
|
4979
|
+
notConfigured: string;
|
|
4980
|
+
/** `billing_disabled`: billing is switched off on this server (§2.9), for a page or a
|
|
4981
|
+
* link that reached it anyway. */
|
|
4982
|
+
disabled: string;
|
|
4983
|
+
}
|
|
4984
|
+
declare const DEFAULT_BILLING_LABELS: BillingLabels;
|
|
4985
|
+
/** The `billing` namespace, resolved: English, then the provider, then `labels` — which
|
|
4986
|
+
* may be partial at every depth (`{ status: { comped: "Beta" } }`). */
|
|
4987
|
+
declare function useBillingLabels(labels?: LabelOverride<BillingLabels>): BillingLabels;
|
|
4988
|
+
|
|
4989
|
+
interface AppShellSubItem {
|
|
4990
|
+
to: string;
|
|
4991
|
+
label: string;
|
|
4992
|
+
icon: LucideIcon;
|
|
4993
|
+
/** Passed to NavLink's `end` (exact match). Defaults to true. */
|
|
4994
|
+
end?: boolean;
|
|
4995
|
+
}
|
|
4996
|
+
interface AppShellNavItem {
|
|
4997
|
+
to: string;
|
|
4998
|
+
label: string;
|
|
4999
|
+
/** Optional shorter label for the MOBILE BOTTOM BAR only (the sidebar, its
|
|
5000
|
+
* tooltips and any palette built on this list keep `label`).
|
|
5001
|
+
*
|
|
5002
|
+
* The bar divides the viewport into `nav.length` equal cells, so a label's room
|
|
5003
|
+
* shrinks with every entry added — at six entries on a 406 px phone that is ~67 px,
|
|
5004
|
+
* and "Import & Export" wrapped to two lines and pushed the row taller than its
|
|
5005
|
+
* neighbours (keksdose feedback live #210). A per-item override is better than
|
|
5006
|
+
* shortening the real label, which the sidebar has ample room for and which is the
|
|
5007
|
+
* name the rest of the product uses. */
|
|
5008
|
+
shortLabel?: string;
|
|
5009
|
+
/** 0.31.0: leave this entry out of the MOBILE BOTTOM BAR; the sidebar keeps it.
|
|
5010
|
+
* For an entry a phone reaches another way — the brand link to the start page —
|
|
5011
|
+
* when one cell fewer is what keeps the others' labels whole (the bar divides its
|
|
5012
|
+
* width evenly, see `shortLabel`). Its group's sub-row still shows while one of its
|
|
5013
|
+
* pages is open. Named like `DataTable`'s column `mobileHidden`. */
|
|
5014
|
+
mobileHidden?: boolean;
|
|
5015
|
+
icon: LucideIcon;
|
|
5016
|
+
/** Passed to NavLink's `end` (exact match). Defaults to true. */
|
|
5017
|
+
end?: boolean;
|
|
5018
|
+
/** Optional `data-tour` value rendered on this item's link (both the desktop
|
|
5019
|
+
* sidebar and the mobile bottom bar), so a guided tour can spotlight ONE nav
|
|
5020
|
+
* entry precisely instead of matching by href (feedback #338). */
|
|
5021
|
+
dataTour?: string;
|
|
5022
|
+
/** Optional sub-items. When present, hovering (or focusing) the item opens a
|
|
5023
|
+
* flyout to the right of the sidebar with a header (this item's label) and the
|
|
5024
|
+
* sub-items as icon + title links. Works collapsed or expanded; the mobile
|
|
5025
|
+
* bottom bar ignores sub-items and links to `to`. */
|
|
5026
|
+
items?: AppShellSubItem[];
|
|
5027
|
+
}
|
|
5028
|
+
/**
|
|
5029
|
+
* One entry of the sidebar's bottom area ({@link AppShellProps.sidebarFooterItems}) —
|
|
5030
|
+
* the version link and the legal links kastlan hand-built in `sidebarFooter`.
|
|
5031
|
+
*
|
|
5032
|
+
* - `link` (default): one link. Expanded it shows `icon` + `text` (default `label`),
|
|
5033
|
+
* with `hint` as a tooltip if given; collapsed it is the icon alone, named and
|
|
5034
|
+
* tooltipped by `label`.
|
|
5035
|
+
* - `links`: a small group — the legal links. Expanded, a `<nav>` named `label` holding
|
|
5036
|
+
* the links as a wrapping row of small text; collapsed, ONE icon link to `to` (default
|
|
5037
|
+
* the first link's), named and tooltipped by `label`, since a column of icons for
|
|
5038
|
+
* "Imprint", "Privacy" and "Terms" would say nothing an icon can.
|
|
5039
|
+
*/
|
|
5040
|
+
type AppShellSidebarFooterItem = {
|
|
5041
|
+
kind?: "link";
|
|
5042
|
+
key: string;
|
|
5043
|
+
to: string;
|
|
5044
|
+
icon: LucideIcon;
|
|
5045
|
+
/** The link's name, and the tooltip when collapsed ("What's new · v1.4.0"). */
|
|
5046
|
+
label: string;
|
|
5047
|
+
/** Visible text when expanded ("Kastlan v1.4.0"). Default `label`. */
|
|
5048
|
+
text?: ReactNode;
|
|
5049
|
+
/** A tooltip on the expanded link ("What's new"). */
|
|
5050
|
+
hint?: string;
|
|
5051
|
+
/** Leaves the app: a plain `<a target="_blank" rel="noopener noreferrer">`. */
|
|
5052
|
+
external?: boolean;
|
|
5053
|
+
} | {
|
|
5054
|
+
kind: "links";
|
|
5055
|
+
key: string;
|
|
5056
|
+
icon: LucideIcon;
|
|
5057
|
+
/** The group's name — its `<nav>` label, and the collapsed icon's name ("Legal"). */
|
|
5058
|
+
label: string;
|
|
5059
|
+
/** The collapsed icon's target. Default the first link's `to`. */
|
|
5060
|
+
to?: string;
|
|
5061
|
+
links: {
|
|
5062
|
+
to: string;
|
|
5063
|
+
label: string;
|
|
5064
|
+
external?: boolean;
|
|
5065
|
+
}[];
|
|
5066
|
+
};
|
|
5067
|
+
/**
|
|
5068
|
+
* The words of the phone bar's "More" cell and its sheet (0.32,
|
|
5069
|
+
* docs/text-size-harmonization.md §4 Navigation, §10.7) — the `appShellMore` namespace of
|
|
5070
|
+
* `<UiKitProvider labels>`, overridable per shell through `moreLabels`.
|
|
5071
|
+
*/
|
|
5072
|
+
interface AppShellMoreLabels {
|
|
5073
|
+
/** The cell's visible label, under its icon — one short word. */
|
|
5074
|
+
more: string;
|
|
5075
|
+
/** The sheet's heading, and so its accessible name. */
|
|
5076
|
+
moreTitle: string;
|
|
5077
|
+
}
|
|
5078
|
+
declare const DEFAULT_APP_SHELL_MORE_LABELS: AppShellMoreLabels;
|
|
5079
|
+
/**
|
|
5080
|
+
* The most entries the phone bar shows before the rest go under "More", per text size
|
|
5081
|
+
* (§10.7): every entry at Normal, four at Large, three at Extra large. A fifth of a
|
|
5082
|
+
* 360 px phone at 150 % is 48 px of Normal-sized room, and the cells hold a word each.
|
|
5083
|
+
*/
|
|
5084
|
+
declare const DEFAULT_MOBILE_BAR_MAX: Readonly<Record<TextSize, number>>;
|
|
5085
|
+
/**
|
|
5086
|
+
* Split the bar's entries into the cells shown and the ones under "More", in the app's
|
|
5087
|
+
* order (§10.7: the app puts its four most used first, or orders by role). One hidden
|
|
5088
|
+
* entry is no saving — the More cell would take its place — so the bar then shows them
|
|
5089
|
+
* all: the cell count is the same either way, and a real entry beats a detour.
|
|
5090
|
+
*/
|
|
5091
|
+
declare function splitMobileBar<T>(entries: readonly T[], max: number): {
|
|
5092
|
+
shown: T[];
|
|
5093
|
+
hidden: T[];
|
|
5094
|
+
};
|
|
5095
|
+
/**
|
|
5096
|
+
* Exported and `<div>`-shaped. This is the outermost element of every consuming app, so
|
|
5097
|
+
* there is nothing above it to hang an id, a landmark label or a `data-tour` anchor on —
|
|
5098
|
+
* and nothing a consumer can wrap it in either, since the root owns the `h-dvh` and
|
|
5099
|
+
* `overflow-hidden` the whole layout is built on (audit §api-design).
|
|
5100
|
+
*/
|
|
5101
|
+
interface AppShellProps extends ComponentPropsWithoutRef<"div"> {
|
|
5102
|
+
/** Navigation entries — shared by the desktop sidebar and mobile bottom bar. */
|
|
5103
|
+
nav: AppShellNavItem[];
|
|
5104
|
+
/** The composed top bar (e.g. the shared TopBar with app-owned actions). */
|
|
5105
|
+
topBar: ReactNode;
|
|
5106
|
+
/** Main content — typically the router `<Outlet />`. */
|
|
5107
|
+
children: ReactNode;
|
|
5108
|
+
/** Desktop-only footer rendered below the content (hidden on mobile). */
|
|
5109
|
+
footer?: ReactNode;
|
|
5110
|
+
/** Extra sidebar content above the collapse toggle (e.g. a version link).
|
|
5111
|
+
* Receives the collapsed state so it can render compact vs. full. */
|
|
5112
|
+
sidebarFooter?: (collapsed: boolean) => ReactNode;
|
|
5113
|
+
/** The sidebar's bottom area as data — a version link, the legal links — drawn full
|
|
5114
|
+
* when expanded and as icon + tooltip when collapsed. Rendered above
|
|
5115
|
+
* `sidebarFooter`, which stays for anything the data cannot describe. */
|
|
5116
|
+
sidebarFooterItems?: AppShellSidebarFooterItem[];
|
|
5117
|
+
/** The router link for `sidebarFooterItems`. Default: the provider's
|
|
5118
|
+
* `linkComponent`, else react-router's `Link`. */
|
|
5119
|
+
renderLink?: KitLinkComponent;
|
|
5120
|
+
/** localStorage key for the persisted collapse state. */
|
|
5121
|
+
collapseStorageKey?: string;
|
|
5122
|
+
/** Default: `appShell.collapse` from the {@link UiKitProvider}, else English. */
|
|
5123
|
+
collapseLabel?: string;
|
|
5124
|
+
/** Default: `appShell.expand` from the {@link UiKitProvider}, else English. */
|
|
5125
|
+
expandLabel?: string;
|
|
5126
|
+
/** How an entry's `items` are revealed in the EXPANDED desktop sidebar.
|
|
5127
|
+
*
|
|
5128
|
+
* - `"flyout"` (default) — a panel beside the sidebar on hover/focus. Compact: the
|
|
5129
|
+
* sidebar stays one row per group however many pages a group holds.
|
|
5130
|
+
* - `"inline"` — a disclosure under the entry, the pattern of MUI's nested List and
|
|
5131
|
+
* most documentation sites. Every page is visible at once, and the group holding
|
|
5132
|
+
* the current page opens on its own, so the reader can see where they are without
|
|
5133
|
+
* hovering anything.
|
|
5134
|
+
*
|
|
5135
|
+
* The icon-only (collapsed) sidebar always uses the flyout: an indented list has no
|
|
5136
|
+
* room there. The mobile bottom bar ignores `items` in both modes. */
|
|
5137
|
+
subNav?: "flyout" | "inline";
|
|
5138
|
+
/** Accessible name of the inline disclosure button, given the group's label.
|
|
5139
|
+
* Only used with `subNav="inline"`. Its expanded state is carried by
|
|
5140
|
+
* `aria-expanded`, so one wording serves both directions. Default:
|
|
5141
|
+
* `appShell.toggleGroup` from the {@link UiKitProvider}, else English. */
|
|
5142
|
+
toggleGroupLabel?: (groupLabel: string) => string;
|
|
5143
|
+
/** Below `md`: show the current group's `items` as a scrollable row above the
|
|
5144
|
+
* bottom bar — the phone's counterpart of the sidebar's second level. Default true;
|
|
5145
|
+
* `false` keeps the single bar, where a group entry only links to its own `to`. */
|
|
5146
|
+
mobileSubNav?: boolean;
|
|
5147
|
+
/**
|
|
5148
|
+
* How the phone sub-nav lays out a group with more pages than fit on one row.
|
|
5149
|
+
* `"wrap"` (default): every page in view, on as many rows as it takes — the bar
|
|
5150
|
+
* grows. `"scroll"`: one row that scrolls sideways, faded at a cut edge, with the
|
|
5151
|
+
* current page scrolled into view. A long group took four rows (~130px) of a 390px
|
|
5152
|
+
* screen above the bottom bar (showcase audit); scrolling gives that back at the
|
|
5153
|
+
* price of pages hidden past the edge, so it is the app's call, per shell.
|
|
5154
|
+
*/
|
|
5155
|
+
mobileSubNavLayout?: "wrap" | "scroll";
|
|
5156
|
+
/**
|
|
5157
|
+
* The most entries the phone bar shows; the rest move into a "More" cell that opens a
|
|
5158
|
+
* sheet listing them, each group with its pages (0.32, docs/text-size-harmonization.md
|
|
5159
|
+
* §4, §10.7). The bar takes `nav` in the app's order — after `mobileHidden` — so the
|
|
5160
|
+
* app puts its most used entries first (or orders by role: kastlan's manager and
|
|
5161
|
+
* accountant see different firsts).
|
|
5162
|
+
*
|
|
5163
|
+
* Default {@link DEFAULT_MOBILE_BAR_MAX}: unlimited at Normal, 4 at Large, 3 at Extra
|
|
5164
|
+
* large, because the cells' words grow with the text and the phone does not. A number
|
|
5165
|
+
* replaces the default at every size; `{ large: 5 }` replaces it at one size only.
|
|
5166
|
+
* Never fewer than one entry; and one entry over the limit shows in full rather than
|
|
5167
|
+
* behind a More that would take the same cell.
|
|
5168
|
+
*/
|
|
5169
|
+
mobileBarMax?: number | Partial<Record<TextSize, number>>;
|
|
5170
|
+
/** The More cell's words over the provider's `appShellMore`. */
|
|
5171
|
+
moreLabels?: Partial<AppShellMoreLabels>;
|
|
5172
|
+
/**
|
|
5173
|
+
* Lay the shell out inside its PARENT'S box instead of the viewport: `h-full` rather
|
|
5174
|
+
* than `h-dvh`, its own scroll container at every width, a bottom bar pinned to the
|
|
5175
|
+
* shell rather than the window, `--app-nav-h` published on the shell alone, and no
|
|
5176
|
+
* persisted collapse state unless `collapseStorageKey` is passed. For an app preview,
|
|
5177
|
+
* a device frame, a docs example.
|
|
5178
|
+
*
|
|
5179
|
+
* Implied for a shell rendered inside another AppShell, which is the case this
|
|
5180
|
+
* exists for: the inner one used to publish its own nav height on `<html>`, fight
|
|
5181
|
+
* the outer one over it, and remove it on unmount from under the outer app.
|
|
5182
|
+
*/
|
|
5183
|
+
embedded?: boolean;
|
|
5184
|
+
}
|
|
5185
|
+
/**
|
|
5186
|
+
* The responsive application shell: a top bar, a collapsible desktop sidebar
|
|
5187
|
+
* (icon-only when collapsed, with tooltips), a mobile bottom nav bar, the main
|
|
5188
|
+
* content area, and an optional desktop footer. Router-aware via react-router
|
|
5189
|
+
* `NavLink`; domain-free — nav items, brand, footer and the top bar's actions
|
|
5190
|
+
* are all supplied by the app.
|
|
5191
|
+
*/
|
|
5192
|
+
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;
|
|
5193
|
+
|
|
4657
5194
|
/**
|
|
4658
5195
|
* Who holds one record, and the owner's every way of changing that — Kurvenschmiede's
|
|
4659
5196
|
* `features/sharing/share-dialog.tsx` and keksdose's `features/budgets/budget-share-card.tsx`,
|
|
@@ -5261,6 +5798,14 @@ interface UiKitLabels {
|
|
|
5261
5798
|
landing: LandingLabels;
|
|
5262
5799
|
/** 0.31.0: the demo's start, banner and end (§5). */
|
|
5263
5800
|
demo: DemoLabels;
|
|
5801
|
+
/** 0.32.0: plans, standing, banners and the limit notice (docs/billing-harmonization.md §7). */
|
|
5802
|
+
billing: BillingLabels;
|
|
5803
|
+
/** 0.32.0: the text-size and contrast settings (docs/text-size-harmonization.md §6). */
|
|
5804
|
+
appearance: AppearanceLabels;
|
|
5805
|
+
/** 0.32.0: a row's actions folded into a "⋯" menu at Large (text size §10.8). */
|
|
5806
|
+
rowActions: RowActionsLabels;
|
|
5807
|
+
/** 0.32.0: the phone bar's "More" cell and sheet (text size §10.7). */
|
|
5808
|
+
appShellMore: AppShellMoreLabels;
|
|
5264
5809
|
/** 0.22.0: the screen-reader words of `Input` / `Textarea`'s `showCount` counter. */
|
|
5265
5810
|
characterCount: CharacterCountLabels;
|
|
5266
5811
|
/** 0.22.0: `CountrySelect`. Its list's "no results" and counts are `combobox`'s. */
|
|
@@ -5471,6 +6016,14 @@ declare function useKitFileLabels(prop?: Partial<FileLabels>): FileLabels;
|
|
|
5471
6016
|
declare function missingKitLabels(labels: UiKitLabelOverrides | undefined, reference: UiKitLabels): string[];
|
|
5472
6017
|
|
|
5473
6018
|
type ButtonVariant = "primary" | "secondary" | "ghost" | "danger" | "brand" | "link";
|
|
6019
|
+
/**
|
|
6020
|
+
* The touch target at Large and Extra large (docs/text-size-harmonization.md §4): at
|
|
6021
|
+
* least 48 px, the size a finger needs whatever the type. In px on purpose, like the
|
|
6022
|
+
* field floor ({@link FIELD_TOUCH_TEXT}): it is a physical threshold, not a size that
|
|
6023
|
+
* follows the text. Normal keeps the kit's own heights; a `large:` variant, so it costs
|
|
6024
|
+
* no render and is right on the first paint.
|
|
6025
|
+
*/
|
|
6026
|
+
declare const TOUCH_TARGET_LARGE = "large:min-h-[48px] large:min-w-[48px]";
|
|
5474
6027
|
type ButtonSize = "sm" | "md";
|
|
5475
6028
|
/**
|
|
5476
6029
|
* The text colour of a `link` or `ghost` button, over the variant's own.
|
|
@@ -5572,6 +6125,12 @@ interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
|
5572
6125
|
* DangerConfirm keeps its own.
|
|
5573
6126
|
*/
|
|
5574
6127
|
disabledReason?: ReactNode;
|
|
6128
|
+
/**
|
|
6129
|
+
* Where `disabledReason` shows (0.32, §4 "No fact only in a tooltip"): by default a
|
|
6130
|
+
* line under the button at Large and on a touch screen, the tooltip otherwise. See
|
|
6131
|
+
* {@link DisabledReasonDisplay}.
|
|
6132
|
+
*/
|
|
6133
|
+
disabledReasonDisplay?: DisabledReasonDisplay;
|
|
5575
6134
|
/**
|
|
5576
6135
|
* This button COMMITS — it saves, creates, deletes. Under a locked
|
|
5577
6136
|
* {@link WriteLockProvider} it is disabled the `disabledReason` way, with the lock's
|
|
@@ -5653,8 +6212,10 @@ interface ButtonLinkProps extends Omit<AnchorHTMLAttributes<HTMLAnchorElement>,
|
|
|
5653
6212
|
pending?: never;
|
|
5654
6213
|
pressed?: never;
|
|
5655
6214
|
disabledReason?: never;
|
|
6215
|
+
disabledReasonDisplay?: never;
|
|
5656
6216
|
commit?: never;
|
|
5657
6217
|
}
|
|
6218
|
+
|
|
5658
6219
|
declare function Button(props: ButtonLinkProps): ReactElement;
|
|
5659
6220
|
declare function Button(props: ButtonProps): ReactElement;
|
|
5660
6221
|
type IconButtonSize = "2xl" | "xl" | "lg" | "md" | "sm" | "xs" | "2xs";
|
|
@@ -5804,9 +6365,25 @@ interface IconButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
|
5804
6365
|
* unless `tooltipPortal` says otherwise.
|
|
5805
6366
|
*/
|
|
5806
6367
|
label?: string;
|
|
6368
|
+
/**
|
|
6369
|
+
* Show `label` as visible text beside the icon at Large and Extra large (0.32,
|
|
6370
|
+
* docs/text-size-harmonization.md §4, §10.8). A reader who asked for bigger type is
|
|
6371
|
+
* the one an unlabelled glyph fails, and on touch the tooltip never opens. Then there
|
|
6372
|
+
* is no tooltip: the words are on the button.
|
|
6373
|
+
*
|
|
6374
|
+
* Default `true` — except for `variant="overlay"` and `"shutter"`, which sit ON a
|
|
6375
|
+
* picture, and inside {@link CompactControls} (AppShell's top bar, `RowActions`'
|
|
6376
|
+
* inline icons). `false`: the icon alone at every size, for an icon on content — a
|
|
6377
|
+
* receipt overlay, a map's zoom, a viewfinder, a photo thumbnail. That must be rare;
|
|
6378
|
+
* a dense row's actions belong in `RowActions`, which collapses them into a "⋯" menu
|
|
6379
|
+
* at Large instead (§10.8). Normal never shows it. `tooltip={false}` (a universally
|
|
6380
|
+
* read glyph, a dialog's ✕) keeps the icon alone too.
|
|
6381
|
+
*/
|
|
6382
|
+
labelVisible?: boolean;
|
|
5807
6383
|
/** Show `label` as a tooltip. Default `true`; `false` keeps `label` as the
|
|
5808
6384
|
* accessible name only — for a button whose glyph is universally read (a close ✕ in
|
|
5809
|
-
* a dialog header) or that already sits under a tooltip of its own.
|
|
6385
|
+
* a dialog header) or that already sits under a tooltip of its own. It also keeps the
|
|
6386
|
+
* label from showing as text at Large (see `labelVisible`). */
|
|
5810
6387
|
tooltip?: boolean;
|
|
5811
6388
|
/** Where the `label` tooltip opens. See {@link Tooltip}'s `side`. */
|
|
5812
6389
|
tooltipSide?: TooltipSide;
|
|
@@ -5860,8 +6437,13 @@ interface IconButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
|
5860
6437
|
* bubble shows the reason in place of the label, since the glyph already says what
|
|
5861
6438
|
* the button is and the reason is the news. Shown even with `tooltip={false}`: a
|
|
5862
6439
|
* reason nobody can see is not one. Wins over `disabled`, as on Button.
|
|
6440
|
+
*
|
|
6441
|
+
* 0.32: at Large and on a touch screen the reason is a line under the button rather
|
|
6442
|
+
* than a bubble — see `disabledReasonDisplay`.
|
|
5863
6443
|
*/
|
|
5864
6444
|
disabledReason?: ReactNode;
|
|
6445
|
+
/** Where `disabledReason` shows — {@link Button}'s `disabledReasonDisplay`. */
|
|
6446
|
+
disabledReasonDisplay?: DisabledReasonDisplay;
|
|
5865
6447
|
/** This action COMMITS — {@link Button}'s `commit`: under a locked
|
|
5866
6448
|
* {@link WriteLockProvider} it takes the `disabledReason` path with the lock's
|
|
5867
6449
|
* reason. No effect without a lock. */
|
|
@@ -5892,7 +6474,7 @@ interface IconButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
|
5892
6474
|
* `disabledStyle` are a button's and are typed out: a link is not a toggle, and a link
|
|
5893
6475
|
* that explains why it cannot be followed is a job for a disabled BUTTON.
|
|
5894
6476
|
*/
|
|
5895
|
-
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"> {
|
|
6477
|
+
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"> {
|
|
5896
6478
|
href: string;
|
|
5897
6479
|
/** See {@link ButtonLinkProps.renderLink}. */
|
|
5898
6480
|
renderLink?: KitLinkComponent;
|
|
@@ -5909,6 +6491,7 @@ interface IconButtonLinkProps extends Omit<AnchorHTMLAttributes<HTMLAnchorElemen
|
|
|
5909
6491
|
form?: never;
|
|
5910
6492
|
pressed?: never;
|
|
5911
6493
|
disabledReason?: never;
|
|
6494
|
+
disabledReasonDisplay?: never;
|
|
5912
6495
|
commit?: never;
|
|
5913
6496
|
disabledStyle?: never;
|
|
5914
6497
|
pending?: never;
|
|
@@ -5932,6 +6515,19 @@ declare function IconButton(props: IconButtonProps): ReactElement;
|
|
|
5932
6515
|
declare namespace IconButton {
|
|
5933
6516
|
var displayName: string;
|
|
5934
6517
|
}
|
|
6518
|
+
/**
|
|
6519
|
+
* The 16 px floor on touch (docs/text-size-harmonization.md §10.1). iOS zooms the page
|
|
6520
|
+
* when a field under 16 px takes focus, and keksdose's `maximum-scale=1` — which stopped
|
|
6521
|
+
* it — goes so pinch zoom works again (WCAG 1.4.4). A zoomed page drops the keyboard
|
|
6522
|
+
* inset to 0 (§10.2), so the zoom would put a pinned editor footer behind the keyboard
|
|
6523
|
+
* (keksdose #154). So on a coarse pointer a field is at least 16 px, at every text size:
|
|
6524
|
+
* `max()` leaves Large and Extra large alone, where `text-sm` is already 17.5 / 21 px.
|
|
6525
|
+
*
|
|
6526
|
+
* In px on purpose: the threshold is the browser's, in CSS px, whatever the root size.
|
|
6527
|
+
* Font size only — the line height keeps `text-sm`'s ratio. Part of {@link FIELD_BASE};
|
|
6528
|
+
* add it to any other text-entry control whose type is below 16 px.
|
|
6529
|
+
*/
|
|
6530
|
+
declare const FIELD_TOUCH_TEXT = "pointer-coarse:text-[length:max(0.875rem,16px)]";
|
|
5935
6531
|
declare const FIELD_BASE: string;
|
|
5936
6532
|
/** Cancels FIELD_BASE's read-only treatment for a field that is `readOnly` for a
|
|
5937
6533
|
* reason other than "you may not edit this". Attribute-scoped for the same reason
|
|
@@ -5941,8 +6537,12 @@ declare const FIELD_WRITABLE_LOOK = "[&[readonly]]:bg-[var(--bg-surface)] [&[rea
|
|
|
5941
6537
|
declare const FIELD_FLOATING_PAD = "pt-4 pb-1";
|
|
5942
6538
|
declare const FIELD_INVALID = "border-[var(--danger-border-strong)] ring-1 ring-[var(--danger-border-strong)] focus:border-[var(--danger)] focus:ring-[var(--danger)]";
|
|
5943
6539
|
declare const FLOATING_INPUT_CLASS: string;
|
|
5944
|
-
/** The phone breakpoint
|
|
5945
|
-
*
|
|
6540
|
+
/** The phone breakpoint at Normal text size, as a media query.
|
|
6541
|
+
*
|
|
6542
|
+
* @deprecated since 0.32 — it does not follow the text size (§3.3): at Large the CSS
|
|
6543
|
+
* `max-md:` reaches 959 px and this still stops at 767. Use `usePhoneLayout()`, which
|
|
6544
|
+
* agrees with `max-md:` at every size, or `breakpointQuery("max-md", scale)` where a
|
|
6545
|
+
* query string is needed. Kept exported, unchanged, for the apps that import it. */
|
|
5946
6546
|
declare const PHONE_QUERY = "(max-width: 767px)";
|
|
5947
6547
|
/**
|
|
5948
6548
|
* The PHONE display treatment (Keksdose feedback #176, carried across the entry
|
|
@@ -5950,8 +6550,9 @@ declare const PHONE_QUERY = "(max-width: 767px)";
|
|
|
5950
6550
|
* about reads as the thing itself, not as another boxed row in a stack.
|
|
5951
6551
|
*
|
|
5952
6552
|
* Every control that takes `variant="display"` — {@link Input}, `NumberInput`,
|
|
5953
|
-
* `AmountInput` — means exactly the same thing by it: the treatment applies
|
|
5954
|
-
*
|
|
6553
|
+
* `AmountInput` — means exactly the same thing by it: the treatment applies in the
|
|
6554
|
+
* phone layout (`usePhoneLayout()`, `max-md:` at the text size in force) and the field
|
|
6555
|
+
* is untouched above it, so a caller never has
|
|
5955
6556
|
* to ask the viewport, and a form can't end up half-treated across breakpoints.
|
|
5956
6557
|
*
|
|
5957
6558
|
* What stays, deliberately:
|
|
@@ -6017,31 +6618,6 @@ interface FloatingFieldProps extends ComponentPropsWithoutRef<"div"> {
|
|
|
6017
6618
|
children: ReactNode;
|
|
6018
6619
|
}
|
|
6019
6620
|
declare function FloatingField({ className, htmlFor, label, staticLabel, srOnlyLabel, hint, children, ...rest }: FloatingFieldProps): react.JSX.Element;
|
|
6020
|
-
/**
|
|
6021
|
-
* The "?" that explains a field, on the field's own label line (dev#468).
|
|
6022
|
-
*
|
|
6023
|
-
* Pass it to a labelled {@link Select} / {@link Input} as `hint`. It exists as a
|
|
6024
|
-
* component rather than as a snippet each form repeats because the previous
|
|
6025
|
-
* version was exactly that snippet — an absolutely-positioned button whose
|
|
6026
|
-
* `top-1.5` was one guess at where an 11px label sits — and the reporter's
|
|
6027
|
-
* follow-up was *"question mark is not centered. Is it part of the hoc?
|
|
6028
|
-
* positioning problems seem quite frequently."* It was not part of the HOC. Now
|
|
6029
|
-
* it is, and there is one place left where the answer can be wrong.
|
|
6030
|
-
*
|
|
6031
|
-
* A `<button>` rather than a bare icon: hover alone puts the explanation out of
|
|
6032
|
-
* reach of a keyboard and of every touch device, and the tooltip shows on focus
|
|
6033
|
-
* too. The text is also its accessible name, so a screen reader gets it without
|
|
6034
|
-
* the bubble ever opening.
|
|
6035
|
-
*/
|
|
6036
|
-
interface FieldHintProps extends Omit<ComponentPropsWithoutRef<"button">, "children"> {
|
|
6037
|
-
/** The explanation. It is both the tooltip's text and, by default, the button's
|
|
6038
|
-
* accessible name, so a screen reader gets it without the bubble ever opening. */
|
|
6039
|
-
label: string;
|
|
6040
|
-
/** Default `"start"`: before the hint in the reading direction (the left in LTR, the
|
|
6041
|
-
* right in RTL). `left` / `right` stay physical. */
|
|
6042
|
-
side?: TooltipSide;
|
|
6043
|
-
}
|
|
6044
|
-
declare function FieldHint({ label, side, className, "aria-label": ariaLabel, ...rest }: FieldHintProps): react.JSX.Element;
|
|
6045
6621
|
interface LabelProps extends ComponentPropsWithoutRef<"label"> {
|
|
6046
6622
|
/** Draw the required mark after the text. The mark is `aria-hidden`: what a
|
|
6047
6623
|
* screen reader hears is the control's own `required` / `aria-required`, which
|
|
@@ -6329,8 +6905,14 @@ interface CardHeaderProps extends ComponentPropsWithoutRef<"div"> {
|
|
|
6329
6905
|
* description instead of beside them. For an action that is wider than an icon —
|
|
6330
6906
|
* a "Set up two-factor" button, a checkbox and a filter — which, kept in the
|
|
6331
6907
|
* top-end column on a 390px phone, squeezed the title into a ribbon two words wide
|
|
6332
|
-
* (keksdose's settings cards). Off by default: an icon action (the wizard
|
|
6333
|
-
* pencil) is narrow enough to stay beside the title at every width.
|
|
6908
|
+
* (keksdose's settings cards). Off by default at Normal: an icon action (the wizard
|
|
6909
|
+
* summary's pencil) is narrow enough to stay beside the title at every width.
|
|
6910
|
+
*
|
|
6911
|
+
* Unset, it stacks at Large and Extra large only (0.32.1, the 360 px Extra-large
|
|
6912
|
+
* sweep; docs/text-size-harmonization.md §4): there an IconButton shows its label as
|
|
6913
|
+
* text, so the "icon" action is a word-wide pill, and "Refresh sessions" beside
|
|
6914
|
+
* "Sessions" ran 47 px past a 360 px phone. `false` keeps the action beside the title
|
|
6915
|
+
* at every size, for an action the caller knows stays narrow (`labelVisible={false}`).
|
|
6334
6916
|
*/
|
|
6335
6917
|
stackAction?: boolean;
|
|
6336
6918
|
}
|
|
@@ -6632,7 +7214,7 @@ interface TabsProps<T extends string> extends Omit<ComponentPropsWithoutRef<"div
|
|
|
6632
7214
|
* `onRemove`, `onAdd` — means exactly what it means on the horizontal strip; the
|
|
6633
7215
|
* badge moves to the row's end.
|
|
6634
7216
|
*
|
|
6635
|
-
* **On a phone (
|
|
7217
|
+
* **On a phone (`usePhoneLayout()`) it becomes the horizontal strip**, `wrap` and
|
|
6636
7218
|
* all, rather than staying a column. A side nav only works beside its content; on
|
|
6637
7219
|
* a phone it has to go ABOVE it, and eight full-width rows there push the panel
|
|
6638
7220
|
* the user picked below the fold on every visit — the two keksdose pages both
|
|
@@ -7227,4 +7809,4 @@ interface DeleteAccountSettingProps extends Omit<ComponentPropsWithoutRef<"div">
|
|
|
7227
7809
|
*/
|
|
7228
7810
|
declare function DeleteAccountSetting({ email, mode, days, consequences, handOverCount, onRequest, describeError, labels: labelsProp, className, ...rest }: DeleteAccountSettingProps): react.JSX.Element;
|
|
7229
7811
|
|
|
7230
|
-
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 };
|
|
7812
|
+
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 };
|