@eifi1/ui-kit 0.51.6 → 0.52.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +146 -26
- package/dist/account/account-parts.d.ts +10 -8
- package/dist/account/account-parts.js +1 -18
- package/dist/account/account-parts.js.map +1 -1
- package/dist/account/data-export-setting-labels.js +1 -1
- package/dist/account/data-export-setting-labels.js.map +1 -1
- package/dist/account/delete-account-setting-labels.js +1 -1
- package/dist/account/delete-account-setting-labels.js.map +1 -1
- package/dist/account/email-change-setting-labels.js +1 -1
- package/dist/account/email-change-setting-labels.js.map +1 -1
- package/dist/account/passkeys-setting.d.ts +9 -2
- package/dist/account/passkeys-setting.js +41 -29
- package/dist/account/passkeys-setting.js.map +1 -1
- package/dist/account/sessions-setting.d.ts +3 -2
- package/dist/account/sessions-setting.js +10 -8
- package/dist/account/sessions-setting.js.map +1 -1
- package/dist/admin/admin-action-confirm.js +3 -7
- package/dist/admin/admin-action-confirm.js.map +1 -1
- package/dist/admin/admin-parts.d.ts +6 -3
- package/dist/admin/admin-parts.js +6 -21
- package/dist/admin/admin-parts.js.map +1 -1
- package/dist/admin/mail-test-card-labels.js +1 -1
- package/dist/admin/mail-test-card-labels.js.map +1 -1
- package/dist/admin/plan-change-labels.d.ts +2 -2
- package/dist/admin/plan-change-labels.js +1 -17
- package/dist/admin/plan-change-labels.js.map +1 -1
- package/dist/admin/plan-change.d.ts +3 -42
- package/dist/admin/plan-change.js +1 -1
- package/dist/admin/plan-change.js.map +1 -1
- package/dist/admin/reviewer-scope-editor.js +3 -3
- package/dist/admin/reviewer-scope-editor.js.map +1 -1
- package/dist/auth/auth-errors-labels.d.ts +11 -0
- package/dist/auth/auth-errors-labels.js +13 -0
- package/dist/auth/auth-errors-labels.js.map +1 -0
- package/dist/auth/auth-errors.d.ts +7 -23
- package/dist/auth/auth-errors.js +2 -15
- package/dist/auth/auth-errors.js.map +1 -1
- package/dist/auth/complete-name-dialog.d.ts +3 -2
- package/dist/auth/complete-name-dialog.js +3 -5
- package/dist/auth/complete-name-dialog.js.map +1 -1
- package/dist/auth/forgot-password-form-labels.js +1 -1
- package/dist/auth/forgot-password-form-labels.js.map +1 -1
- package/dist/auth/forgot-password-form.js +7 -2
- package/dist/auth/forgot-password-form.js.map +1 -1
- package/dist/auth/register-form-labels.js +1 -1
- package/dist/auth/register-form-labels.js.map +1 -1
- package/dist/auth/reset-password-form-labels.js +1 -1
- package/dist/auth/reset-password-form-labels.js.map +1 -1
- package/dist/auth/reset-password-form.js +5 -1
- package/dist/auth/reset-password-form.js.map +1 -1
- package/dist/auth/sign-in-form-labels.js +1 -1
- package/dist/auth/sign-in-form-labels.js.map +1 -1
- package/dist/auth/status-parts.d.ts +0 -3
- package/dist/auth/status-parts.js +0 -4
- package/dist/auth/status-parts.js.map +1 -1
- package/dist/auth/verify-email-labels.js +1 -1
- package/dist/auth/verify-email-labels.js.map +1 -1
- package/dist/auth/verify-email.js +7 -2
- package/dist/auth/verify-email.js.map +1 -1
- package/dist/billing/cancel-request.d.ts +11 -2
- package/dist/billing/cancel-request.js +15 -3
- package/dist/billing/cancel-request.js.map +1 -1
- package/dist/billing/cancel-subscription.d.ts +22 -10
- package/dist/billing/cancel-subscription.js +8 -11
- package/dist/billing/cancel-subscription.js.map +1 -1
- package/dist/billing/dialog-close.d.ts +29 -0
- package/dist/billing/dialog-close.js +8 -0
- package/dist/billing/dialog-close.js.map +1 -0
- package/dist/billing/plan-card.d.ts +14 -4
- package/dist/billing/plan-card.js +15 -8
- package/dist/billing/plan-card.js.map +1 -1
- package/dist/billing/plan-change-labels.d.ts +42 -0
- package/dist/billing/plan-change-labels.js +22 -0
- package/dist/billing/plan-change-labels.js.map +1 -0
- package/dist/billing/plan-switch.d.ts +21 -9
- package/dist/billing/plan-switch.js +10 -8
- package/dist/billing/plan-switch.js.map +1 -1
- package/dist/chart.d.ts +12 -0
- package/dist/chart.js +16 -1
- package/dist/chart.js.map +1 -1
- package/dist/components/account-chips.d.ts +5 -5
- package/dist/components/account-chips.js +11 -13
- package/dist/components/account-chips.js.map +1 -1
- package/dist/components/alert-banner.d.ts +16 -5
- package/dist/components/alert-banner.js +46 -1
- package/dist/components/alert-banner.js.map +1 -1
- package/dist/components/amount-input.d.ts +22 -4
- package/dist/components/amount-input.js +3 -3
- package/dist/components/amount-input.js.map +1 -1
- package/dist/components/autocomplete.js +57 -65
- package/dist/components/autocomplete.js.map +1 -1
- package/dist/components/bulk-action-bar.d.ts +12 -2
- package/dist/components/bulk-action-bar.js +65 -21
- package/dist/components/bulk-action-bar.js.map +1 -1
- package/dist/components/button-look.d.ts +5 -5
- package/dist/components/button-look.js.map +1 -1
- package/dist/components/button.d.ts +2 -2
- package/dist/components/button.js.map +1 -1
- package/dist/components/calculator.d.ts +21 -2
- package/dist/components/calculator.js +53 -14
- package/dist/components/calculator.js.map +1 -1
- package/dist/components/chart-edge.d.ts +16 -0
- package/dist/components/chart-edge.js +14 -1
- package/dist/components/chart-edge.js.map +1 -1
- package/dist/components/chart-figure.d.ts +13 -0
- package/dist/components/chart-figure.js +15 -0
- package/dist/components/chart-figure.js.map +1 -0
- package/dist/components/chart-zoom-core.js +1 -4
- package/dist/components/chart-zoom-core.js.map +1 -1
- package/dist/components/chart.d.ts +8 -1
- package/dist/components/chart.js +19 -10
- package/dist/components/chart.js.map +1 -1
- package/dist/components/combobox-core.d.ts +119 -7
- package/dist/components/combobox-core.js +151 -46
- package/dist/components/combobox-core.js.map +1 -1
- package/dist/components/combobox.d.ts +1 -1
- package/dist/components/combobox.js +142 -131
- package/dist/components/combobox.js.map +1 -1
- package/dist/components/copy-button.d.ts +6 -5
- package/dist/components/copy-button.js +5 -3
- package/dist/components/copy-button.js.map +1 -1
- package/dist/components/country-select.js +2 -2
- package/dist/components/country-select.js.map +1 -1
- package/dist/components/data-table-column-settings.d.ts +1 -1
- package/dist/components/data-table-column-settings.js +33 -7
- package/dist/components/data-table-column-settings.js.map +1 -1
- package/dist/components/data-table-filters.d.ts +4 -2
- package/dist/components/data-table-filters.js +2 -2
- package/dist/components/data-table-filters.js.map +1 -1
- package/dist/components/data-table-fit.d.ts +6 -4
- package/dist/components/data-table-fit.js +4 -1
- package/dist/components/data-table-fit.js.map +1 -1
- package/dist/components/data-table-groups.d.ts +1 -1
- package/dist/components/data-table-groups.js.map +1 -1
- package/dist/components/data-table-head.d.ts +1 -1
- package/dist/components/data-table-head.js +15 -12
- package/dist/components/data-table-head.js.map +1 -1
- package/dist/components/data-table-mobile.d.ts +36 -7
- package/dist/components/data-table-mobile.js +63 -31
- package/dist/components/data-table-mobile.js.map +1 -1
- package/dist/components/data-table-pagination.js +11 -6
- package/dist/components/data-table-pagination.js.map +1 -1
- package/dist/components/data-table-resize.d.ts +1 -1
- package/dist/components/data-table-resize.js.map +1 -1
- package/dist/components/data-table-row-actions.d.ts +2 -2
- package/dist/components/data-table-row-actions.js.map +1 -1
- package/dist/components/data-table-row.d.ts +6 -2
- package/dist/components/data-table-row.js +17 -10
- package/dist/components/data-table-row.js.map +1 -1
- package/dist/components/data-table-selection.d.ts +1 -1
- package/dist/components/data-table-selection.js.map +1 -1
- package/dist/components/data-table-shared.d.ts +10 -2
- package/dist/components/data-table-shared.js +18 -0
- package/dist/components/data-table-shared.js.map +1 -1
- package/dist/components/data-table-sort.d.ts +21 -2
- package/dist/components/data-table-sort.js +24 -0
- package/dist/components/data-table-sort.js.map +1 -1
- package/dist/components/data-table-virtual.d.ts +1 -1
- package/dist/components/data-table-virtual.js +18 -6
- package/dist/components/data-table-virtual.js.map +1 -1
- package/dist/components/data-table.d.ts +25 -8
- package/dist/components/data-table.js +154 -25
- package/dist/components/data-table.js.map +1 -1
- package/dist/components/date-field.d.ts +24 -2
- package/dist/components/date-field.js +33 -8
- package/dist/components/date-field.js.map +1 -1
- package/dist/components/date-picker.d.ts +15 -2
- package/dist/components/date-picker.js +55 -26
- package/dist/components/date-picker.js.map +1 -1
- package/dist/components/date-range-picker.d.ts +47 -20
- package/dist/components/date-range-picker.js +23 -7
- package/dist/components/date-range-picker.js.map +1 -1
- package/dist/components/dialog-frame.d.ts +2 -1
- package/dist/components/dialog-frame.js.map +1 -1
- package/dist/components/entity-combobox.js +4 -2
- package/dist/components/entity-combobox.js.map +1 -1
- package/dist/components/error-boundary.js +37 -30
- package/dist/components/error-boundary.js.map +1 -1
- package/dist/components/{ui-labels.d.ts → field-base-labels.d.ts} +0 -2
- package/dist/components/{ui-labels.js → field-base-labels.js} +2 -9
- package/dist/components/field-base-labels.js.map +1 -0
- package/dist/components/field-base.d.ts +4 -3
- package/dist/components/field-base.js +3 -3
- package/dist/components/field-base.js.map +1 -1
- package/dist/components/field-sync-labels.d.ts +1 -0
- package/dist/components/field-sync-labels.js.map +1 -1
- package/dist/components/field-sync.d.ts +23 -1
- package/dist/components/field-sync.js.map +1 -1
- package/dist/components/form-actions.js +11 -5
- package/dist/components/form-actions.js.map +1 -1
- package/dist/components/hover-menu.d.ts +3 -0
- package/dist/components/hover-menu.js +5 -3
- package/dist/components/hover-menu.js.map +1 -1
- package/dist/components/icon-button.js +14 -9
- package/dist/components/icon-button.js.map +1 -1
- package/dist/components/inline-confirm.d.ts +43 -0
- package/dist/components/inline-confirm.js +67 -0
- package/dist/components/inline-confirm.js.map +1 -0
- package/dist/components/inline-entity-combobox.d.ts +4 -3
- package/dist/components/inline-entity-combobox.js +150 -141
- package/dist/components/inline-entity-combobox.js.map +1 -1
- package/dist/components/input.js +1 -1
- package/dist/components/input.js.map +1 -1
- package/dist/components/jump-calendar.js +28 -112
- package/dist/components/jump-calendar.js.map +1 -1
- package/dist/components/legal-page.d.ts +3 -1
- package/dist/components/legal-page.js +3 -2
- package/dist/components/legal-page.js.map +1 -1
- package/dist/components/legal.d.ts +4 -2
- package/dist/components/legal.js.map +1 -1
- package/dist/components/lightbox.d.ts +2 -2
- package/dist/components/lightbox.js +17 -6
- package/dist/components/lightbox.js.map +1 -1
- package/dist/components/list.d.ts +6 -2
- package/dist/components/list.js +4 -3
- package/dist/components/list.js.map +1 -1
- package/dist/components/measured-grid.d.ts +1 -1
- package/dist/components/measured-grid.js +2 -1
- package/dist/components/measured-grid.js.map +1 -1
- package/dist/components/mini-calendar.js +3 -5
- package/dist/components/mini-calendar.js.map +1 -1
- package/dist/components/modal.d.ts +24 -0
- package/dist/components/modal.js +12 -4
- package/dist/components/modal.js.map +1 -1
- package/dist/components/money-draft.js +7 -5
- package/dist/components/money-draft.js.map +1 -1
- package/dist/components/money-field.d.ts +2 -2
- package/dist/components/money-field.js.map +1 -1
- package/dist/components/month-grid.d.ts +55 -0
- package/dist/components/month-grid.js +148 -0
- package/dist/components/month-grid.js.map +1 -0
- package/dist/components/month-picker.d.ts +36 -4
- package/dist/components/month-picker.js +123 -146
- package/dist/components/month-picker.js.map +1 -1
- package/dist/components/multi-entity-combobox.js +2 -1
- package/dist/components/multi-entity-combobox.js.map +1 -1
- package/dist/components/multi-select.d.ts +2 -2
- package/dist/components/multi-select.js +11 -6
- package/dist/components/multi-select.js.map +1 -1
- package/dist/components/number-field.d.ts +6 -4
- package/dist/components/number-field.js +3 -2
- package/dist/components/number-field.js.map +1 -1
- package/dist/components/number-input.d.ts +4 -1
- package/dist/components/number-input.js +3 -2
- package/dist/components/number-input.js.map +1 -1
- package/dist/components/numpad-sheet.js.map +1 -1
- package/dist/components/picker-sheet.js +2 -1
- package/dist/components/picker-sheet.js.map +1 -1
- package/dist/components/pie-chart-labels.d.ts +7 -0
- package/dist/components/pie-chart-labels.js +1 -0
- package/dist/components/pie-chart-labels.js.map +1 -1
- package/dist/components/pie-chart.d.ts +5 -3
- package/dist/components/pie-chart.js +7 -22
- package/dist/components/pie-chart.js.map +1 -1
- package/dist/components/popover.d.ts +3 -0
- package/dist/components/popover.js +7 -1
- package/dist/components/popover.js.map +1 -1
- package/dist/components/reauth-dialog.d.ts +4 -5
- package/dist/components/reauth-dialog.js +1 -4
- package/dist/components/reauth-dialog.js.map +1 -1
- package/dist/components/row-actions.js +2 -1
- package/dist/components/row-actions.js.map +1 -1
- package/dist/components/section-nav.d.ts +7 -0
- package/dist/components/section-nav.js.map +1 -1
- package/dist/components/series-chart-axes.d.ts +10 -3
- package/dist/components/series-chart-axes.js +1 -0
- package/dist/components/series-chart-axes.js.map +1 -1
- package/dist/components/series-chart-labels.d.ts +7 -4
- package/dist/components/series-chart-labels.js.map +1 -1
- package/dist/components/series-chart.d.ts +31 -7
- package/dist/components/series-chart.js +72 -29
- package/dist/components/series-chart.js.map +1 -1
- package/dist/components/share-card.js +3 -3
- package/dist/components/share-card.js.map +1 -1
- package/dist/components/sign-chip-labels.d.ts +1 -0
- package/dist/components/sign-chip-labels.js.map +1 -1
- package/dist/components/sign-chip.d.ts +10 -1
- package/dist/components/sign-chip.js.map +1 -1
- package/dist/components/tabs-labels.d.ts +2 -0
- package/dist/components/tabs-labels.js +11 -0
- package/dist/components/tabs-labels.js.map +1 -0
- package/dist/components/tabs.d.ts +1 -1
- package/dist/components/tabs.js +13 -11
- package/dist/components/tabs.js.map +1 -1
- package/dist/components/toggle-legend.d.ts +2 -2
- package/dist/components/toggle-legend.js +6 -6
- package/dist/components/toggle-legend.js.map +1 -1
- package/dist/components/translation-review-editor.d.ts +4 -2
- package/dist/components/translation-review-editor.js +2 -3
- package/dist/components/translation-review-editor.js.map +1 -1
- package/dist/components/translation-review.d.ts +2 -1
- package/dist/components/translation-review.js +2 -2
- package/dist/components/translation-review.js.map +1 -1
- package/dist/components/treemap-labels.d.ts +26 -0
- package/dist/components/treemap-labels.js +10 -0
- package/dist/components/treemap-labels.js.map +1 -0
- package/dist/components/treemap-layout.d.ts +62 -0
- package/dist/components/treemap-layout.js +126 -0
- package/dist/components/treemap-layout.js.map +1 -0
- package/dist/components/treemap.d.ts +140 -17
- package/dist/components/treemap.js +324 -97
- package/dist/components/treemap.js.map +1 -1
- package/dist/components/use-table-state.d.ts +5 -5
- package/dist/components/use-table-state.js +4 -1
- package/dist/components/use-table-state.js.map +1 -1
- package/dist/data-table.d.ts +6 -2
- package/dist/data-table.js +7 -2
- package/dist/data-table.js.map +1 -1
- package/dist/eslint/index.js +1 -1
- package/dist/eslint/role-utilities.d.ts +36 -7
- package/dist/eslint/role-utilities.js +42 -9
- package/dist/eslint/role-utilities.js.map +1 -1
- package/dist/feedback/feedback-dialog.d.ts +25 -16
- package/dist/feedback/feedback-dialog.js +6 -2
- package/dist/feedback/feedback-dialog.js.map +1 -1
- package/dist/feedback/feedback-mutation.d.ts +30 -0
- package/dist/feedback/feedback-mutation.js +16 -0
- package/dist/feedback/feedback-mutation.js.map +1 -0
- package/dist/feedback/feedback-page-link.d.ts +53 -0
- package/dist/feedback/feedback-page-link.js +37 -0
- package/dist/feedback/feedback-page-link.js.map +1 -0
- package/dist/feedback/feedback-public-list.d.ts +12 -3
- package/dist/feedback/feedback-public-list.js +2 -1
- package/dist/feedback/feedback-public-list.js.map +1 -1
- package/dist/feedback/feedback-replies.d.ts +3 -1
- package/dist/feedback/feedback-replies.js +5 -4
- package/dist/feedback/feedback-replies.js.map +1 -1
- package/dist/feedback/feedback-row-detail-labels.js +5 -0
- package/dist/feedback/feedback-row-detail-labels.js.map +1 -1
- package/dist/feedback/feedback-row-detail.d.ts +64 -28
- package/dist/feedback/feedback-row-detail.js +30 -28
- package/dist/feedback/feedback-row-detail.js.map +1 -1
- package/dist/feedback/feedback-status-undo.d.ts +30 -11
- package/dist/feedback/feedback-status-undo.js +10 -15
- package/dist/feedback/feedback-status-undo.js.map +1 -1
- package/dist/feedback/feedback-submit-dialog.d.ts +1 -1
- package/dist/feedback/feedback-submit-dialog.js +1 -1
- package/dist/feedback/feedback-submit-dialog.js.map +1 -1
- package/dist/feedback/feedback-submit.js +9 -3
- package/dist/feedback/feedback-submit.js.map +1 -1
- package/dist/feedback/feedback-swipe.d.ts +1 -1
- package/dist/feedback/feedback-swipe.js.map +1 -1
- package/dist/feedback/feedback-table.d.ts +21 -9
- package/dist/feedback/feedback-table.js +45 -25
- package/dist/feedback/feedback-table.js.map +1 -1
- package/dist/feedback/feedback-thread-labels.d.ts +2 -2
- package/dist/feedback/feedback-thread-labels.js.map +1 -1
- package/dist/feedback/feedback-thread.d.ts +24 -23
- package/dist/feedback/feedback-thread.js +2 -1
- package/dist/feedback/feedback-thread.js.map +1 -1
- package/dist/feedback.d.ts +34 -0
- package/dist/feedback.js +42 -0
- package/dist/feedback.js.map +1 -1
- package/dist/hooks/use-dismiss.js.map +1 -1
- package/dist/hooks/use-focus-trap.d.ts +35 -0
- package/dist/hooks/use-focus-trap.js +6 -4
- package/dist/hooks/use-focus-trap.js.map +1 -1
- package/dist/hooks/use-hotkey.d.ts +5 -2
- package/dist/hooks/use-hotkey.js +5 -4
- package/dist/hooks/use-hotkey.js.map +1 -1
- package/dist/hooks/use-long-press.d.ts +7 -4
- package/dist/hooks/use-long-press.js +3 -0
- package/dist/hooks/use-long-press.js.map +1 -1
- package/dist/hooks/use-media-query.js +12 -4
- package/dist/hooks/use-media-query.js.map +1 -1
- package/dist/hooks/use-mounted.d.ts +22 -0
- package/dist/hooks/use-mounted.js +24 -0
- package/dist/hooks/use-mounted.js.map +1 -0
- package/dist/hooks/use-overlay-history.d.ts +7 -1
- package/dist/hooks/use-overlay-history.js +35 -5
- package/dist/hooks/use-overlay-history.js.map +1 -1
- package/dist/i18n/defaults.js +4 -5
- package/dist/i18n/defaults.js.map +1 -1
- package/dist/i18n/german.js +7 -1
- package/dist/i18n/german.js.map +1 -1
- package/dist/i18n/kit-labels.d.ts +9 -2
- package/dist/i18n/kit-labels.js.map +1 -1
- package/dist/i18n/locales/en.js +20 -41
- package/dist/i18n/locales/en.js.map +3 -3
- package/dist/i18n/locales/es.js +7 -1
- package/dist/i18n/locales/es.js.map +1 -1
- package/dist/i18n/locales/fr.js +20 -10
- package/dist/i18n/locales/fr.js.map +1 -1
- package/dist/i18n/locales/hu.js +9 -1
- package/dist/i18n/locales/hu.js.map +1 -1
- package/dist/i18n/locales/it.js +7 -1
- package/dist/i18n/locales/it.js.map +1 -1
- package/dist/i18n/locales/zh.js +8 -1
- package/dist/i18n/locales/zh.js.map +1 -1
- package/dist/i18n/review.js +5 -0
- package/dist/i18n/review.js.map +1 -1
- package/dist/index.d.ts +64 -17
- package/dist/index.js +77 -12
- package/dist/index.js.map +1 -1
- package/dist/landing/routing.d.ts +3 -1
- package/dist/landing/routing.js +4 -7
- package/dist/landing/routing.js.map +1 -1
- package/dist/lib/broadcast.d.ts +17 -0
- package/dist/lib/broadcast.js +30 -0
- package/dist/lib/broadcast.js.map +1 -0
- package/dist/lib/calc.d.ts +7 -1
- package/dist/lib/calc.js +3 -1
- package/dist/lib/calc.js.map +1 -1
- package/dist/lib/clipboard-minus.d.ts +2 -2
- package/dist/lib/clipboard-minus.js +1 -1
- package/dist/lib/clipboard-minus.js.map +1 -1
- package/dist/lib/date-format.d.ts +37 -2
- package/dist/lib/date-format.js +34 -8
- package/dist/lib/date-format.js.map +1 -1
- package/dist/lib/day-format.d.ts +46 -0
- package/dist/lib/day-format.js +46 -0
- package/dist/lib/day-format.js.map +1 -0
- package/dist/lib/decimal-marks.d.ts +7 -1
- package/dist/lib/decimal-marks.js +5 -2
- package/dist/lib/decimal-marks.js.map +1 -1
- package/dist/lib/describe-failure.d.ts +14 -0
- package/dist/lib/describe-failure.js +9 -0
- package/dist/lib/describe-failure.js.map +1 -0
- package/dist/lib/direction.d.ts +16 -0
- package/dist/lib/direction.js +9 -1
- package/dist/lib/direction.js.map +1 -1
- package/dist/lib/focus-left.d.ts +63 -0
- package/dist/lib/focus-left.js +67 -0
- package/dist/lib/focus-left.js.map +1 -0
- package/dist/lib/format.d.ts +5 -3
- package/dist/lib/format.js +16 -13
- package/dist/lib/format.js.map +1 -1
- package/dist/lib/http-status.d.ts +24 -0
- package/dist/lib/http-status.js +14 -0
- package/dist/lib/http-status.js.map +1 -0
- package/dist/lib/intl-cache.d.ts +14 -0
- package/dist/lib/intl-cache.js +15 -0
- package/dist/lib/intl-cache.js.map +1 -0
- package/dist/lib/isin.d.ts +10 -0
- package/dist/lib/isin.js.map +1 -1
- package/dist/lib/iso-day.d.ts +11 -0
- package/dist/lib/iso-day.js +8 -0
- package/dist/lib/iso-day.js.map +1 -0
- package/dist/lib/lazy-with-fallback.d.ts +31 -0
- package/dist/lib/lazy-with-fallback.js +40 -0
- package/dist/lib/lazy-with-fallback.js.map +1 -0
- package/dist/lib/path-pattern.d.ts +34 -0
- package/dist/lib/path-pattern.js +24 -0
- package/dist/lib/path-pattern.js.map +1 -0
- package/dist/lib/reduced-motion.d.ts +2 -1
- package/dist/lib/reduced-motion.js.map +1 -1
- package/dist/lib/round.d.ts +2 -1
- package/dist/lib/round.js +2 -1
- package/dist/lib/round.js.map +1 -1
- package/dist/lib/safe-storage.d.ts +24 -5
- package/dist/lib/safe-storage.js +27 -2
- package/dist/lib/safe-storage.js.map +1 -1
- package/dist/lib/session-refresh.js +1 -1
- package/dist/lib/session-refresh.js.map +1 -1
- package/dist/lib/share-format.d.ts +13 -0
- package/dist/lib/share-format.js +10 -0
- package/dist/lib/share-format.js.map +1 -0
- package/dist/lib/text-case.d.ts +17 -0
- package/dist/lib/text-case.js +8 -0
- package/dist/lib/text-case.js.map +1 -0
- package/dist/lib/text-match.d.ts +38 -0
- package/dist/lib/text-match.js +24 -2
- package/dist/lib/text-match.js.map +1 -1
- package/dist/lib/thenable.d.ts +13 -0
- package/dist/lib/thenable.js +8 -0
- package/dist/lib/thenable.js.map +1 -0
- package/dist/lib/translation-review.d.ts +7 -2
- package/dist/lib/translation-review.js +4 -4
- package/dist/lib/translation-review.js.map +1 -1
- package/dist/notifications/device-zone-report.js +1 -1
- package/dist/notifications/device-zone-report.js.map +1 -1
- package/dist/notifications/notification-bell.d.ts +2 -1
- package/dist/notifications/notification-bell.js +3 -3
- package/dist/notifications/notification-bell.js.map +1 -1
- package/dist/notifications/notification-inbox.d.ts +10 -6
- package/dist/notifications/notification-inbox.js +26 -48
- package/dist/notifications/notification-inbox.js.map +1 -1
- package/dist/notifications/notification-parts.d.ts +3 -2
- package/dist/notifications/notification-parts.js +1 -3
- package/dist/notifications/notification-parts.js.map +1 -1
- package/dist/notifications/notification-types-setting.js +1 -1
- package/dist/notifications/notification-types-setting.js.map +1 -1
- package/dist/notifications/notifications-labels.d.ts +6 -0
- package/dist/notifications/notifications-labels.js +1 -0
- package/dist/notifications/notifications-labels.js.map +1 -1
- package/dist/notifications/push-device-setting.js +1 -1
- package/dist/notifications/push-device-setting.js.map +1 -1
- package/dist/notifications/push-devices-setting.d.ts +2 -1
- package/dist/notifications/push-devices-setting.js +27 -49
- package/dist/notifications/push-devices-setting.js.map +1 -1
- package/dist/notifications/quiet-hours-setting.d.ts +10 -3
- package/dist/notifications/quiet-hours-setting.js +65 -26
- package/dist/notifications/quiet-hours-setting.js.map +1 -1
- package/dist/notifications/unsubscribe-panel.js +4 -7
- package/dist/notifications/unsubscribe-panel.js.map +1 -1
- package/dist/notifications/use-push-device.d.ts +39 -1
- package/dist/notifications/use-push-device.js +28 -7
- package/dist/notifications/use-push-device.js.map +1 -1
- package/dist/offline/query-persistence.d.ts +3 -1
- package/dist/offline/query-persistence.js +19 -2
- package/dist/offline/query-persistence.js.map +1 -1
- package/dist/rhf/fields.d.ts +11 -4
- package/dist/rhf/fields.js.map +1 -1
- package/dist/search/command-palette.js +1 -1
- package/dist/search/command-palette.js.map +1 -1
- package/dist/search/global-search.js +19 -9
- package/dist/search/global-search.js.map +1 -1
- package/dist/search/use-command-key.d.ts +12 -1
- package/dist/search/use-command-key.js +3 -12
- package/dist/search/use-command-key.js.map +1 -1
- package/dist/search.d.ts +7 -0
- package/dist/search.js +10 -0
- package/dist/search.js.map +1 -1
- package/dist/settings/use-settings-focus.js +1 -0
- package/dist/settings/use-settings-focus.js.map +1 -1
- package/dist/shell/account-menu-language.d.ts +21 -5
- package/dist/shell/account-menu-language.js +3 -1
- package/dist/shell/account-menu-language.js.map +1 -1
- package/dist/shell/account-menu-text-size.d.ts +26 -9
- package/dist/shell/account-menu-text-size.js +3 -2
- package/dist/shell/account-menu-text-size.js.map +1 -1
- package/dist/shell/dev-menu.js +5 -18
- package/dist/shell/dev-menu.js.map +1 -1
- package/dist/shell/role-switcher.d.ts +7 -0
- package/dist/shell/role-switcher.js.map +1 -1
- package/dist/shell/top-bar-actions.d.ts +1 -1
- package/dist/shell/top-bar-actions.js.map +1 -1
- package/dist/shell/top-bar-parts-labels.d.ts +0 -2
- package/dist/shell/top-bar-parts-labels.js +0 -1
- package/dist/shell/top-bar-parts-labels.js.map +1 -1
- package/dist/shell.d.ts +27 -8
- package/dist/shell.js +28 -7
- package/dist/shell.js.map +1 -1
- package/dist/sync/engine.d.ts +30 -4
- package/dist/sync/engine.js +172 -52
- package/dist/sync/engine.js.map +1 -1
- package/dist/sync.d.ts +6 -2
- package/dist/sync.js +6 -1
- package/dist/sync.js.map +1 -1
- package/dist/testing/css-variables.js +3 -8
- package/dist/testing/css-variables.js.map +1 -1
- package/dist/theme/contrast.d.ts +2 -1
- package/dist/theme/contrast.js +3 -8
- package/dist/theme/contrast.js.map +1 -1
- package/dist/theme/palette-store.js +6 -6
- package/dist/theme/palette-store.js.map +1 -1
- package/dist/theme/text-size.js +3 -8
- package/dist/theme/text-size.js.map +1 -1
- package/dist/theme/theme-store.js +3 -6
- package/dist/theme/theme-store.js.map +1 -1
- package/dist/tour/tour-catalogue.d.ts +7 -4
- package/dist/tour/tour-catalogue.js +12 -10
- package/dist/tour/tour-catalogue.js.map +1 -1
- package/dist/tour/tour-dock.d.ts +0 -2
- package/dist/tour/tour-dock.js +0 -2
- package/dist/tour/tour-dock.js.map +1 -1
- package/dist/tour/tour-gates.d.ts +4 -0
- package/dist/tour/tour-gates.js +14 -0
- package/dist/tour/tour-gates.js.map +1 -1
- package/dist/tour/tour-overlay.d.ts +27 -0
- package/dist/tour/tour-overlay.js +741 -0
- package/dist/tour/tour-overlay.js.map +1 -0
- package/dist/tour/tour.d.ts +16 -4
- package/dist/tour/tour.js +62 -778
- package/dist/tour/tour.js.map +1 -1
- package/dist/tour/use-tour-progress.js +1 -1
- package/dist/tour/use-tour-progress.js.map +1 -1
- package/dist/tour/use-tour-url-sync.js +2 -2
- package/dist/tour/use-tour-url-sync.js.map +1 -1
- package/dist/wizard/stepper-nav.d.ts +5 -1
- package/dist/wizard/stepper-nav.js.map +1 -1
- package/dist/wizard/types.d.ts +6 -2
- package/dist/wizard/types.js.map +1 -1
- package/dist/wizard/use-wizard.d.ts +3 -1
- package/dist/wizard/use-wizard.js.map +1 -1
- package/dist/wizard/validation.d.ts +3 -1
- package/dist/wizard/validation.js.map +1 -1
- package/package.json +12 -8
- package/src/account/account-parts.ts +5 -25
- package/src/account/data-export-setting-labels.ts +1 -1
- package/src/account/delete-account-setting-labels.ts +1 -1
- package/src/account/email-change-setting-labels.ts +1 -1
- package/src/account/passkeys-setting.tsx +60 -38
- package/src/account/sessions-setting.tsx +18 -12
- package/src/admin/admin-action-confirm.tsx +5 -10
- package/src/admin/admin-parts.ts +11 -25
- package/src/admin/mail-test-card-labels.ts +1 -1
- package/src/admin/plan-change-labels.ts +5 -23
- package/src/admin/plan-change.tsx +7 -44
- package/src/admin/reviewer-scope-editor.tsx +3 -3
- package/src/auth/auth-errors-labels.ts +23 -0
- package/src/auth/auth-errors.ts +11 -38
- package/src/auth/complete-name-dialog.tsx +9 -8
- package/src/auth/forgot-password-form-labels.ts +1 -1
- package/src/auth/forgot-password-form.tsx +11 -6
- package/src/auth/register-form-labels.ts +1 -1
- package/src/auth/reset-password-form-labels.ts +1 -1
- package/src/auth/reset-password-form.tsx +8 -4
- package/src/auth/sign-in-form-labels.ts +1 -1
- package/src/auth/status-parts.tsx +0 -6
- package/src/auth/verify-email-labels.ts +1 -1
- package/src/auth/verify-email.tsx +11 -6
- package/src/billing/cancel-request.ts +28 -6
- package/src/billing/cancel-subscription.tsx +29 -22
- package/src/billing/dialog-close.ts +34 -0
- package/src/billing/plan-card.tsx +36 -11
- package/src/billing/plan-change-labels.ts +66 -0
- package/src/billing/plan-switch.tsx +31 -20
- package/src/chart.ts +21 -3
- package/src/components/account-chips.tsx +20 -23
- package/src/components/alert-banner.tsx +82 -5
- package/src/components/amount-input.tsx +32 -14
- package/src/components/autocomplete.tsx +64 -70
- package/src/components/bulk-action-bar.tsx +70 -2
- package/src/components/button-look.ts +5 -5
- package/src/components/button.tsx +2 -2
- package/src/components/calculator.tsx +98 -17
- package/src/components/chart-edge.ts +34 -1
- package/src/components/chart-figure.tsx +35 -0
- package/src/components/chart-zoom-core.tsx +6 -5
- package/src/components/chart.tsx +26 -5
- package/src/components/combobox-core.tsx +303 -69
- package/src/components/combobox.tsx +184 -155
- package/src/components/copy-button.tsx +34 -23
- package/src/components/country-select.tsx +16 -11
- package/src/components/data-table-column-settings.tsx +52 -10
- package/src/components/data-table-filters.ts +6 -4
- package/src/components/data-table-fit.ts +19 -5
- package/src/components/data-table-groups.tsx +1 -1
- package/src/components/data-table-head.tsx +32 -22
- package/src/components/data-table-mobile.tsx +110 -27
- package/src/components/data-table-pagination.tsx +21 -6
- package/src/components/data-table-resize.ts +1 -1
- package/src/components/data-table-row-actions.tsx +3 -3
- package/src/components/data-table-row.tsx +25 -14
- package/src/components/data-table-selection.ts +1 -1
- package/src/components/data-table-shared.tsx +33 -1
- package/src/components/data-table-sort.ts +57 -2
- package/src/components/data-table-virtual.ts +32 -8
- package/src/components/data-table.tsx +267 -41
- package/src/components/date-field.tsx +65 -8
- package/src/components/date-picker.tsx +125 -48
- package/src/components/date-range-picker.tsx +82 -31
- package/src/components/dialog-frame.tsx +2 -1
- package/src/components/entity-combobox.tsx +4 -1
- package/src/components/error-boundary.tsx +53 -39
- package/src/components/field-base-labels.ts +20 -0
- package/src/components/field-base.tsx +13 -7
- package/src/components/field-sync-labels.ts +1 -0
- package/src/components/field-sync.tsx +23 -1
- package/src/components/form-actions.tsx +20 -5
- package/src/components/hover-menu.tsx +18 -8
- package/src/components/icon-button.tsx +14 -9
- package/src/components/inline-confirm.tsx +116 -0
- package/src/components/inline-entity-combobox.tsx +198 -152
- package/src/components/input.tsx +1 -1
- package/src/components/jump-calendar.tsx +30 -146
- package/src/components/legal-page.tsx +10 -7
- package/src/components/legal.tsx +4 -2
- package/src/components/lightbox.tsx +21 -8
- package/src/components/list.tsx +14 -5
- package/src/components/measured-grid.tsx +8 -4
- package/src/components/mini-calendar.tsx +6 -5
- package/src/components/modal.tsx +45 -4
- package/src/components/money-draft.ts +16 -5
- package/src/components/money-field.tsx +2 -2
- package/src/components/month-grid.tsx +229 -0
- package/src/components/month-picker.tsx +192 -200
- package/src/components/multi-entity-combobox.tsx +1 -0
- package/src/components/multi-select.tsx +21 -9
- package/src/components/number-field.tsx +14 -7
- package/src/components/number-input.tsx +9 -3
- package/src/components/numpad-sheet.tsx +4 -3
- package/src/components/picker-sheet.tsx +12 -9
- package/src/components/pie-chart-labels.ts +8 -0
- package/src/components/pie-chart.tsx +22 -28
- package/src/components/popover.tsx +18 -1
- package/src/components/reauth-dialog.tsx +6 -10
- package/src/components/row-actions.tsx +2 -1
- package/src/components/section-nav.tsx +7 -0
- package/src/components/series-chart-axes.ts +11 -3
- package/src/components/series-chart-labels.ts +7 -4
- package/src/components/series-chart.tsx +178 -69
- package/src/components/share-card.tsx +6 -6
- package/src/components/sign-chip-labels.ts +1 -0
- package/src/components/sign-chip.tsx +10 -1
- package/src/components/tabs-labels.ts +13 -0
- package/src/components/tabs.tsx +35 -19
- package/src/components/toggle-legend.tsx +16 -11
- package/src/components/translation-review-editor.tsx +6 -5
- package/src/components/translation-review.tsx +4 -3
- package/src/components/treemap-labels.ts +39 -0
- package/src/components/treemap-layout.ts +210 -0
- package/src/components/treemap.tsx +722 -133
- package/src/components/use-table-state.ts +12 -9
- package/src/data-table.ts +9 -2
- package/src/eslint/role-utilities.ts +97 -19
- package/src/feedback/feedback-dialog.tsx +30 -19
- package/src/feedback/feedback-mutation.ts +41 -0
- package/src/feedback/feedback-page-link.ts +90 -0
- package/src/feedback/feedback-public-list.tsx +17 -5
- package/src/feedback/feedback-replies.tsx +13 -6
- package/src/feedback/feedback-row-detail-labels.ts +5 -0
- package/src/feedback/feedback-row-detail.tsx +103 -67
- package/src/feedback/feedback-status-undo.ts +41 -27
- package/src/feedback/feedback-submit-dialog.tsx +2 -2
- package/src/feedback/feedback-submit.tsx +21 -7
- package/src/feedback/feedback-swipe.tsx +1 -1
- package/src/feedback/feedback-table.tsx +86 -38
- package/src/feedback/feedback-thread-labels.ts +2 -2
- package/src/feedback/feedback-thread.tsx +27 -25
- package/src/feedback.ts +42 -0
- package/src/hooks/use-dismiss.ts +3 -2
- package/src/hooks/use-focus-trap.ts +8 -24
- package/src/hooks/use-hotkey.ts +24 -7
- package/src/hooks/use-long-press.ts +16 -2
- package/src/hooks/use-media-query.ts +20 -4
- package/src/hooks/use-mounted.ts +39 -0
- package/src/hooks/use-overlay-history.ts +70 -5
- package/src/i18n/defaults.ts +4 -5
- package/src/i18n/german.ts +8 -2
- package/src/i18n/kit-labels.tsx +9 -2
- package/src/i18n/locales/es.ts +8 -2
- package/src/i18n/locales/fr.ts +21 -13
- package/src/i18n/locales/hu.ts +10 -2
- package/src/i18n/locales/it.ts +8 -2
- package/src/i18n/locales/zh.ts +9 -2
- package/src/i18n/review.ts +5 -0
- package/src/index.ts +103 -13
- package/src/landing/routing.tsx +14 -10
- package/src/lib/broadcast.ts +52 -0
- package/src/lib/calc.ts +13 -2
- package/src/lib/clipboard-minus.ts +14 -4
- package/src/lib/date-format.ts +89 -13
- package/src/lib/day-format.ts +96 -0
- package/src/lib/decimal-marks.ts +12 -3
- package/src/lib/describe-failure.ts +18 -0
- package/src/lib/direction.ts +39 -0
- package/src/lib/focus-left.ts +156 -0
- package/src/lib/format.ts +34 -19
- package/src/lib/http-status.ts +38 -0
- package/src/lib/intl-cache.ts +25 -0
- package/src/lib/isin.ts +10 -0
- package/src/lib/iso-day.ts +13 -0
- package/src/lib/lazy-with-fallback.ts +82 -0
- package/src/lib/path-pattern.ts +55 -0
- package/src/lib/reduced-motion.ts +2 -1
- package/src/lib/round.ts +7 -2
- package/src/lib/safe-storage.ts +48 -6
- package/src/lib/session-refresh.ts +1 -1
- package/src/lib/share-format.ts +18 -0
- package/src/lib/text-case.ts +19 -0
- package/src/lib/text-match.ts +69 -2
- package/src/lib/thenable.ts +19 -0
- package/src/lib/translation-review.ts +13 -5
- package/src/notifications/device-zone-report.ts +1 -1
- package/src/notifications/notification-bell.tsx +7 -4
- package/src/notifications/notification-inbox.tsx +40 -58
- package/src/notifications/notification-parts.tsx +3 -4
- package/src/notifications/notification-types-setting.tsx +1 -1
- package/src/notifications/notifications-labels.ts +7 -0
- package/src/notifications/push-device-setting.tsx +1 -1
- package/src/notifications/push-devices-setting.tsx +30 -55
- package/src/notifications/quiet-hours-setting.tsx +93 -31
- package/src/notifications/unsubscribe-panel.tsx +4 -7
- package/src/notifications/use-push-device.ts +76 -10
- package/src/offline/query-persistence.ts +35 -3
- package/src/rhf/fields.tsx +11 -4
- package/src/search/command-palette.tsx +2 -4
- package/src/search/global-search.tsx +36 -15
- package/src/search/use-command-key.ts +13 -12
- package/src/search.ts +9 -0
- package/src/settings/use-settings-focus.ts +3 -0
- package/src/shell/account-menu-language.tsx +27 -5
- package/src/shell/account-menu-text-size.tsx +32 -10
- package/src/shell/dev-menu.tsx +7 -21
- package/src/shell/role-switcher.tsx +7 -0
- package/src/shell/top-bar-actions.tsx +1 -1
- package/src/shell/top-bar-parts-labels.ts +0 -3
- package/src/shell.ts +40 -9
- package/src/sync/engine.ts +339 -61
- package/src/sync.ts +8 -1
- package/src/testing/css-variables.ts +8 -9
- package/src/theme/contrast.ts +8 -9
- package/src/theme/palette-store.ts +9 -9
- package/src/theme/text-size.ts +6 -8
- package/src/theme/theme-store.ts +7 -9
- package/src/tour/tour-catalogue.tsx +26 -15
- package/src/tour/tour-dock.ts +0 -2
- package/src/tour/tour-gates.ts +23 -0
- package/src/tour/tour-overlay.tsx +1170 -0
- package/src/tour/tour.tsx +116 -1193
- package/src/tour/use-tour-progress.ts +1 -1
- package/src/tour/use-tour-url-sync.ts +7 -3
- package/src/wizard/stepper-nav.tsx +3 -1
- package/src/wizard/types.ts +11 -2
- package/src/wizard/use-wizard.ts +2 -1
- package/src/wizard/validation.ts +8 -2
- package/tokens.css +2 -1
- package/dist/components/ui-labels.js.map +0 -1
- package/dist/shell/dev-switchers.d.ts +0 -6
- package/dist/shell/dev-switchers.js +0 -12
- package/dist/shell/dev-switchers.js.map +0 -1
- package/src/components/ui-labels.ts +0 -24
- package/src/shell/dev-switchers.tsx +0 -18
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type { ReactNode } from "react";
|
|
1
|
+
import { Suspense, useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState } from "react";
|
|
2
|
+
import type { ComponentProps, ReactNode } from "react";
|
|
3
3
|
import { useHref, useInRouterContext, useNavigate } from "react-router";
|
|
4
4
|
import { AlertCircle, Loader2, Search } from "lucide-react";
|
|
5
5
|
import { Tooltip } from "../components/tooltip";
|
|
6
6
|
import { TOPBAR_TRIGGER_CLASS } from "../shell/topbar-controls";
|
|
7
7
|
import { cn } from "../lib/cn";
|
|
8
|
+
import { lazyWithFallback, type LazyFallbackProps } from "../lib/lazy-with-fallback";
|
|
9
|
+
import { isApplePlatform } from "../hooks/use-hotkey";
|
|
8
10
|
import { useKitLabels, type LabelOverride } from "../i18n/kit-labels";
|
|
9
11
|
// Types only from ./command-palette, gone from the built module: the palette loads late.
|
|
10
|
-
import type { CommandItem, CommandPaletteDensity, CommandPaletteLabels } from "./command-palette";
|
|
12
|
+
import type { CommandItem, CommandPalette, CommandPaletteDensity, CommandPaletteLabels } from "./command-palette";
|
|
11
13
|
import { DEFAULT_COMMAND_PALETTE_LABELS } from "./command-palette-labels";
|
|
12
14
|
import { useCommandKey } from "./use-command-key";
|
|
13
15
|
import { createSearchIndex } from "./search-index";
|
|
@@ -20,11 +22,32 @@ import { DEFAULT_GLOBAL_SEARCH_LABELS } from "./global-search-labels";
|
|
|
20
22
|
* entry chunks, for a dialog drawn only once somebody searches. A LITERAL relative
|
|
21
23
|
* `import()`, as the catalogue loaders are (i18n/languages.ts), so the library build keeps
|
|
22
24
|
* the module its own and an app's bundler splits it off.
|
|
25
|
+
*
|
|
26
|
+
* A fetch that fails — a tab left open across a deploy, offline — closes the search rather
|
|
27
|
+
* than throwing (0.52 code review, tour.tsx): the top bar sits above the routes' error
|
|
28
|
+
* boundaries in these apps, so the rejected import took the whole shell down on ⌘K.
|
|
23
29
|
*/
|
|
24
|
-
const LazyCommandPalette =
|
|
25
|
-
import("./command-palette").then((module) =>
|
|
30
|
+
const LazyCommandPalette = lazyWithFallback(
|
|
31
|
+
() => import("./command-palette").then((module) => module.CommandPalette),
|
|
32
|
+
PaletteUnavailable,
|
|
26
33
|
);
|
|
27
34
|
|
|
35
|
+
/**
|
|
36
|
+
* Stands in for a palette whose chunk did not arrive. Mounted open — this attempt's fetch
|
|
37
|
+
* failed — it closes the search, so the trigger and ⌘K work again; opened after that, it
|
|
38
|
+
* fetches again, and the palette appears if it comes. Never both in one open: offline, a
|
|
39
|
+
* retry on the open it closes would fetch in a loop.
|
|
40
|
+
*/
|
|
41
|
+
function PaletteUnavailable({ open, onClose, retry }: ComponentProps<typeof CommandPalette> & LazyFallbackProps) {
|
|
42
|
+
const failedOpen = useRef(open);
|
|
43
|
+
useLayoutEffect(() => {
|
|
44
|
+
if (!open) failedOpen.current = false;
|
|
45
|
+
else if (failedOpen.current) onClose();
|
|
46
|
+
else retry();
|
|
47
|
+
}, [open, onClose, retry]);
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
|
|
28
51
|
export interface GlobalSearchLabels {
|
|
29
52
|
/** The trigger's accessible name, and the dialog's. */
|
|
30
53
|
trigger: string;
|
|
@@ -193,12 +216,6 @@ export interface GlobalSearchProps {
|
|
|
193
216
|
[key: `data-${string}`]: string | number | boolean | undefined;
|
|
194
217
|
}
|
|
195
218
|
|
|
196
|
-
function isApplePlatform(): boolean {
|
|
197
|
-
if (typeof navigator === "undefined") return false;
|
|
198
|
-
const nav = navigator as Navigator & { userAgentData?: { platform?: string } };
|
|
199
|
-
return /mac|iphone|ipad|ipod/i.test(nav.userAgentData?.platform || nav.platform || nav.userAgent);
|
|
200
|
-
}
|
|
201
|
-
|
|
202
219
|
const pageLoad = (href: string) => window.location.assign(href);
|
|
203
220
|
const identity = (href: string) => href;
|
|
204
221
|
|
|
@@ -347,7 +364,8 @@ function GlobalSearchImpl({
|
|
|
347
364
|
|
|
348
365
|
const openSearch = useCallback(() => setOpen(true), [setOpen]);
|
|
349
366
|
const noop = useCallback(() => {}, []);
|
|
350
|
-
|
|
367
|
+
// Off, not a no-op: a no-op still cancelled every Mod+K (0.52 code review, global-search.tsx).
|
|
368
|
+
useCommandKey(openSearch, { enabled: shortcut });
|
|
351
369
|
|
|
352
370
|
/* ── the static index ─────────────────────────────────────────────────── */
|
|
353
371
|
|
|
@@ -572,6 +590,7 @@ function GlobalSearchImpl({
|
|
|
572
590
|
[l.trigger, l.placeholder, paletteLabels],
|
|
573
591
|
);
|
|
574
592
|
|
|
593
|
+
// `useHotkey`'s own platform check, so the label and the chord it answers never disagree.
|
|
575
594
|
const apple = useMemo(() => isApplePlatform(), []);
|
|
576
595
|
const keys = apple ? "⌘K" : "Ctrl K";
|
|
577
596
|
const triggerLabel = triggerName === "withShortcut" ? l.shortcut(keys) : l.trigger;
|
|
@@ -580,7 +599,10 @@ function GlobalSearchImpl({
|
|
|
580
599
|
label: triggerLabel,
|
|
581
600
|
tooltip: l.shortcut(keys),
|
|
582
601
|
keys,
|
|
583
|
-
|
|
602
|
+
// The one chord that opens it here: Mod+K since 0.52 (DUP-12). Both were announced,
|
|
603
|
+
// and on every platform one of them did nothing — Control+K is a Mac text field's
|
|
604
|
+
// kill-line (0.52 code review, global-search.tsx).
|
|
605
|
+
ariaKeyShortcuts: apple ? "Meta+K" : "Control+K",
|
|
584
606
|
};
|
|
585
607
|
|
|
586
608
|
return (
|
|
@@ -613,8 +635,7 @@ function GlobalSearchImpl({
|
|
|
613
635
|
</Tooltip>
|
|
614
636
|
)}
|
|
615
637
|
{/* Nothing is drawn while the palette's module is on its way (a few milliseconds,
|
|
616
|
-
once per page load). A failed load
|
|
617
|
-
boundary, as a lazy route's is. */}
|
|
638
|
+
once per page load). A failed load closes the search (`PaletteUnavailable`). */}
|
|
618
639
|
{paletteMounted && (
|
|
619
640
|
<Suspense fallback={null}>
|
|
620
641
|
<LazyCommandPalette
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { useHotkey, type UseHotkeyOptions } from "../hooks/use-hotkey";
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* Registers a global ⌘K / Ctrl-K shortcut that calls `onOpen`.
|
|
@@ -7,16 +7,17 @@ import { useEffect } from "react";
|
|
|
7
7
|
* the shortcut from the moment the top bar mounts but loads the palette only when it is
|
|
8
8
|
* first opened, and a hook imported from command-palette.tsx would have brought the
|
|
9
9
|
* palette along with it. Still exported from command-palette.tsx, where it always was.
|
|
10
|
+
*
|
|
11
|
+
* `useHotkey("Mod+K")` since 0.52 (refactor audit 2026-10-30, DUP-12): Cmd+K on a Mac,
|
|
12
|
+
* Ctrl+K elsewhere, with no other modifier, once per press. Hand-rolled, it took Ctrl+K
|
|
13
|
+
* on a Mac as well — a text field's kill-line there — and Ctrl+Shift+K, Cmd+Alt+K and
|
|
14
|
+
* every repeat of a held key. It still fires from inside a text field: the palette is
|
|
15
|
+
* where a search starts, whatever has focus.
|
|
16
|
+
*
|
|
17
|
+
* `enabled: false` lets Mod+K go (0.52 code review, global-search.tsx): `GlobalSearch
|
|
18
|
+
* shortcut={false}` passed a no-op, and the listener still cancelled every Mod+K — the
|
|
19
|
+
* browser's own Ctrl+K and any other handler on the page that checks `defaultPrevented`.
|
|
10
20
|
*/
|
|
11
|
-
export function useCommandKey(onOpen: () => void): void {
|
|
12
|
-
|
|
13
|
-
const handler = (e: KeyboardEvent) => {
|
|
14
|
-
if ((e.metaKey || e.ctrlKey) && (e.key === "k" || e.key === "K")) {
|
|
15
|
-
e.preventDefault();
|
|
16
|
-
onOpen();
|
|
17
|
-
}
|
|
18
|
-
};
|
|
19
|
-
document.addEventListener("keydown", handler);
|
|
20
|
-
return () => document.removeEventListener("keydown", handler);
|
|
21
|
-
}, [onOpen]);
|
|
21
|
+
export function useCommandKey(onOpen: () => void, options: Pick<UseHotkeyOptions, "enabled"> = {}): void {
|
|
22
|
+
useHotkey("Mod+K", () => onOpen(), { allowInInputs: true, enabled: options.enabled });
|
|
22
23
|
}
|
package/src/search.ts
CHANGED
|
@@ -2,4 +2,13 @@
|
|
|
2
2
|
// A re-slicing of the main barrel, not a new API.
|
|
3
3
|
export * from "./search/command-palette";
|
|
4
4
|
export * from "./search/search-index";
|
|
5
|
+
// 0.52: the slice's share of the 55 names no app reads (refactor audit 2026-10-30, API-4).
|
|
6
|
+
export {
|
|
7
|
+
/** @deprecated 0.52 — `createSearchIndex`, whose ranking tiers it spaces (API-4); removed in 0.53 */
|
|
8
|
+
SEARCH_TIER_POINTS,
|
|
9
|
+
/** @deprecated 0.52 — `createSearchIndex(entries).search(query)`, the same match (API-4); removed in 0.53 */
|
|
10
|
+
matchEntries,
|
|
11
|
+
/** @deprecated 0.52 — `foldForSearch`, the list fold it builds on (API-4); removed in 0.53 */
|
|
12
|
+
normalizeSearchText,
|
|
13
|
+
} from "./search/search-index";
|
|
5
14
|
export * from "./search/global-search";
|
|
@@ -59,6 +59,9 @@ export function useSettingsFocus(anchor?: string | null): void {
|
|
|
59
59
|
if (ring.current) {
|
|
60
60
|
window.clearTimeout(ring.current.timer);
|
|
61
61
|
ring.current.el.classList.remove(...SETTINGS_FOCUS_RING);
|
|
62
|
+
// The mark goes with the ring, as the timer's own end takes both: left behind, the
|
|
63
|
+
// first card stayed "focused" for good (keksdose's matching-tab test reads it).
|
|
64
|
+
ring.current.el.removeAttribute("data-settings-focus");
|
|
62
65
|
}
|
|
63
66
|
el.classList.add(...SETTINGS_FOCUS_RING);
|
|
64
67
|
el.setAttribute("data-settings-focus", "");
|
|
@@ -39,13 +39,11 @@ function flagOf(lang: AccountMenuLanguageOption): ReactNode {
|
|
|
39
39
|
);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
|
|
42
|
+
/** {@link AccountMenuLanguageProps} but the handler. */
|
|
43
|
+
interface AccountMenuLanguageBaseProps {
|
|
43
44
|
languages: readonly AccountMenuLanguageOption[];
|
|
44
45
|
/** The active language's code. */
|
|
45
46
|
value: string | undefined;
|
|
46
|
-
/** A pick: the app sets the device's language and, signed in, the account's
|
|
47
|
-
* (settings §6.2). */
|
|
48
|
-
onPick: (code: string) => void;
|
|
49
47
|
/** The account menu's `close` (from `TopBarActionMenu`'s `children`): a pick shuts it. */
|
|
50
48
|
close?: () => void;
|
|
51
49
|
/** The row's name. Default: `topBar.language` ("Language"). */
|
|
@@ -54,6 +52,28 @@ export interface AccountMenuLanguageProps {
|
|
|
54
52
|
defaultOpen?: boolean;
|
|
55
53
|
}
|
|
56
54
|
|
|
55
|
+
/**
|
|
56
|
+
* `onChange`, or the deprecated `onPick`, is required: with both optional, a row an app
|
|
57
|
+
* moved off `onPick` without adding `onChange` — or with it misspelt — compiled, and a
|
|
58
|
+
* pick only closed the menu (0.52 code review, account-menu-language.tsx).
|
|
59
|
+
*/
|
|
60
|
+
export type AccountMenuLanguageProps = AccountMenuLanguageBaseProps &
|
|
61
|
+
(
|
|
62
|
+
| {
|
|
63
|
+
/** A pick: the app sets the device's language and, signed in, the account's
|
|
64
|
+
* (settings §6.2). `value` + `onChange`, as every kit control pairs them
|
|
65
|
+
* (CONTRIBUTING §4; refactor audit 2026-10-30, API-5). */
|
|
66
|
+
onChange: (code: string) => void;
|
|
67
|
+
/** @deprecated 0.52 — `onChange` (the same call); removed in 0.53. */
|
|
68
|
+
onPick?: (code: string) => void;
|
|
69
|
+
}
|
|
70
|
+
| {
|
|
71
|
+
onChange?: undefined;
|
|
72
|
+
/** @deprecated 0.52 — `onChange` (the same call); removed in 0.53. */
|
|
73
|
+
onPick: (code: string) => void;
|
|
74
|
+
}
|
|
75
|
+
);
|
|
76
|
+
|
|
57
77
|
/**
|
|
58
78
|
* The language choice INSIDE the account menu (docs/top-bar-harmonization.md §2.3),
|
|
59
79
|
* keksdose's sub-list: a `Disclosure variant="menu"` row — the globe, "Language", the
|
|
@@ -68,11 +88,13 @@ export interface AccountMenuLanguageProps {
|
|
|
68
88
|
export function AccountMenuLanguage({
|
|
69
89
|
languages,
|
|
70
90
|
value,
|
|
91
|
+
onChange,
|
|
71
92
|
onPick,
|
|
72
93
|
close,
|
|
73
94
|
label,
|
|
74
95
|
defaultOpen = false,
|
|
75
96
|
}: AccountMenuLanguageProps) {
|
|
97
|
+
const change = onChange ?? onPick;
|
|
76
98
|
const words = useKitLabels("topBar", DEFAULT_TOP_BAR_LABELS);
|
|
77
99
|
const [open, setOpen] = useState(defaultOpen);
|
|
78
100
|
const active = languages.find((l) => l.code === value);
|
|
@@ -109,7 +131,7 @@ export function AccountMenuLanguage({
|
|
|
109
131
|
<MenuItem
|
|
110
132
|
checked={lang.code === value}
|
|
111
133
|
onClick={() => {
|
|
112
|
-
|
|
134
|
+
change?.(lang.code);
|
|
113
135
|
setOpen(false);
|
|
114
136
|
close?.();
|
|
115
137
|
}}
|
|
@@ -4,23 +4,44 @@ import { useAppearanceLabels, type AppearanceLabels } from "../components/appear
|
|
|
4
4
|
import type { LabelOverride } from "../i18n/kit-labels";
|
|
5
5
|
import { TEXT_SIZES, useTextSize, type TextSize } from "../theme/text-size";
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
/** {@link AccountMenuTextSizeProps} but the handler. */
|
|
8
|
+
interface AccountMenuTextSizeBaseProps {
|
|
8
9
|
/** The size in force. Default: the one on `<html>` ({@link useTextSize}), which is the
|
|
9
10
|
* size whoever applied it put there. */
|
|
10
11
|
value?: TextSize;
|
|
11
|
-
/**
|
|
12
|
-
* A step: the next size down or up. The app applies it and keeps it as its Settings ▸
|
|
13
|
-
* Appearance does — `useAccountAppearance`'s `pickTextSize` (this device, and the
|
|
14
|
-
* account when signed in), with `appearance.saveFailed` as the toast when the account
|
|
15
|
-
* refused. The kit does not apply it itself, so the two places can never disagree.
|
|
16
|
-
*/
|
|
17
|
-
onPick: (size: TextSize) => void;
|
|
18
12
|
/** The row's name. Default: `appearance.textSize` ("Text size"). */
|
|
19
13
|
label?: string;
|
|
20
14
|
/** The `appearance` words (`textSize`, `textSizes`, `textSmaller`, `textLarger`). */
|
|
21
15
|
labels?: LabelOverride<AppearanceLabels>;
|
|
22
16
|
}
|
|
23
17
|
|
|
18
|
+
/**
|
|
19
|
+
* `onChange`, or the deprecated `onPick`, is required: with both optional, a row an app
|
|
20
|
+
* moved off `onPick` without adding `onChange` — or with it misspelt — compiled, and A− /
|
|
21
|
+
* A+ stayed enabled and changed nothing (0.52 code review, account-menu-language.tsx).
|
|
22
|
+
*/
|
|
23
|
+
export type AccountMenuTextSizeProps = AccountMenuTextSizeBaseProps &
|
|
24
|
+
(
|
|
25
|
+
| {
|
|
26
|
+
/**
|
|
27
|
+
* A step: the next size down or up. The app applies it and keeps it as its
|
|
28
|
+
* Settings ▸ Appearance does — `useAccountAppearance`'s `pickTextSize` (this
|
|
29
|
+
* device, and the account when signed in), with `appearance.saveFailed` as the
|
|
30
|
+
* toast when the account refused. The kit does not apply it itself, so the two
|
|
31
|
+
* places can never disagree. `value` + `onChange`, as every kit control pairs them
|
|
32
|
+
* (CONTRIBUTING §4; refactor audit 2026-10-30, API-5).
|
|
33
|
+
*/
|
|
34
|
+
onChange: (size: TextSize) => void;
|
|
35
|
+
/** @deprecated 0.52 — `onChange` (the same call); removed in 0.53. */
|
|
36
|
+
onPick?: (size: TextSize) => void;
|
|
37
|
+
}
|
|
38
|
+
| {
|
|
39
|
+
onChange?: undefined;
|
|
40
|
+
/** @deprecated 0.52 — `onChange` (the same call); removed in 0.53. */
|
|
41
|
+
onPick: (size: TextSize) => void;
|
|
42
|
+
}
|
|
43
|
+
);
|
|
44
|
+
|
|
24
45
|
/**
|
|
25
46
|
* The text size one tap away, INSIDE the account menu (0.46, keksdose live #426, its
|
|
26
47
|
* `TextSizeRow`): the row's icon and name, the size in force, and A− / A+, which step
|
|
@@ -34,14 +55,15 @@ export interface AccountMenuTextSizeProps {
|
|
|
34
55
|
* behind it and can step again. The size's name is a polite live region, so a step is
|
|
35
56
|
* announced.
|
|
36
57
|
*/
|
|
37
|
-
export function AccountMenuTextSize({ value, onPick, label, labels: labelsProp }: AccountMenuTextSizeProps) {
|
|
58
|
+
export function AccountMenuTextSize({ value, onChange, onPick, label, labels: labelsProp }: AccountMenuTextSizeProps) {
|
|
59
|
+
const change = onChange ?? onPick;
|
|
38
60
|
const labels = useAppearanceLabels(labelsProp);
|
|
39
61
|
const onHtml = useTextSize().size;
|
|
40
62
|
const size = value ?? onHtml;
|
|
41
63
|
const index = TEXT_SIZES.indexOf(size);
|
|
42
64
|
const step = (by: -1 | 1) => {
|
|
43
65
|
const next = TEXT_SIZES[index + by];
|
|
44
|
-
if (next)
|
|
66
|
+
if (next) change?.(next);
|
|
45
67
|
};
|
|
46
68
|
return (
|
|
47
69
|
<li data-account-menu-text-size="" className="flex items-center gap-2 px-3 py-1.5 text-sm">
|
package/src/shell/dev-menu.tsx
CHANGED
|
@@ -4,27 +4,13 @@ import { FlaskConical, Undo2 } from "lucide-react";
|
|
|
4
4
|
import { DEFAULT_TOP_BAR_LABELS, useKitLabels, type LabelOverride } from "../i18n/kit-labels";
|
|
5
5
|
import { TopBarActionMenu, type TopBarMenuEntry } from "./topbar-action-menu";
|
|
6
6
|
import { useTopBarPartsLabels, type DevSwitchersLabels } from "./top-bar-parts-labels";
|
|
7
|
+
// The kit's one storage guard, which 0.51 wrote here again by hand (DUP-8, refactor audit
|
|
8
|
+
// 2026-10-30). Storage blocked, "Back to" lasts as long as this page.
|
|
9
|
+
import { readSessionStored, writeSessionStored } from "../lib/safe-storage";
|
|
7
10
|
|
|
8
11
|
/** Where the role the session started with is kept, unless the app names its own key. */
|
|
9
12
|
export const DEV_ORIGINAL_ROLE_KEY = "ui-kit:dev-original-role";
|
|
10
13
|
|
|
11
|
-
function readKey(key: string): string | null {
|
|
12
|
-
try {
|
|
13
|
-
return sessionStorage.getItem(key);
|
|
14
|
-
} catch {
|
|
15
|
-
return null;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
function writeKey(key: string, value: string | null): void {
|
|
20
|
-
try {
|
|
21
|
-
if (value === null) sessionStorage.removeItem(key);
|
|
22
|
-
else sessionStorage.setItem(key, value);
|
|
23
|
-
} catch {
|
|
24
|
-
/* storage blocked: "Back to" lasts as long as this page */
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
|
|
28
14
|
/**
|
|
29
15
|
* One of the app's own groups in the {@link DevMenu} (docs/top-bar-harmonization.md
|
|
30
16
|
* §2.7.1): keksdose's budget role, its "today" override, its resets.
|
|
@@ -151,14 +137,14 @@ export function DevMenu<R extends string, P extends string>({
|
|
|
151
137
|
}: DevMenuProps<R, P>) {
|
|
152
138
|
const bar = useKitLabels("topBar", DEFAULT_TOP_BAR_LABELS);
|
|
153
139
|
const words = useTopBarPartsLabels(labelsProp ? { dev: labelsProp } : undefined).dev;
|
|
154
|
-
const [kept, setKept] = useState<string | null>(() => (enabled ?
|
|
140
|
+
const [kept, setKept] = useState<string | null>(() => (enabled ? readSessionStored(storageKey) : null));
|
|
155
141
|
// 0.43 (keksdose): `enabled` may start false and turn true — an app's GET probe of the
|
|
156
142
|
// dev route — so the kept role is read again then, or "Back to {role}" is lost after a
|
|
157
143
|
// reload. Adjusted during render, React's pattern for state that follows a prop.
|
|
158
144
|
const [wasEnabled, setWasEnabled] = useState(enabled);
|
|
159
145
|
if (wasEnabled !== enabled) {
|
|
160
146
|
setWasEnabled(enabled);
|
|
161
|
-
if (enabled) setKept(
|
|
147
|
+
if (enabled) setKept(readSessionStored(storageKey));
|
|
162
148
|
}
|
|
163
149
|
if (!enabled) return null;
|
|
164
150
|
|
|
@@ -168,10 +154,10 @@ export function DevMenu<R extends string, P extends string>({
|
|
|
168
154
|
if (originalRole === undefined) {
|
|
169
155
|
if (next === original) {
|
|
170
156
|
// Back where the session began: nothing left to go back to.
|
|
171
|
-
|
|
157
|
+
writeSessionStored(storageKey, null);
|
|
172
158
|
setKept(null);
|
|
173
159
|
} else if (kept === null && role !== undefined && next !== role) {
|
|
174
|
-
|
|
160
|
+
writeSessionStored(storageKey, role);
|
|
175
161
|
setKept(role);
|
|
176
162
|
}
|
|
177
163
|
}
|
|
@@ -2,6 +2,7 @@ import { FlaskConical } from "lucide-react";
|
|
|
2
2
|
import { OptionSwitcherMenu } from "./option-switcher-menu";
|
|
3
3
|
import { DEFAULT_TOP_BAR_LABELS, useKitLabels } from "../i18n/kit-labels";
|
|
4
4
|
|
|
5
|
+
/** @deprecated 0.52 — `DevMenuProps` (`roles`, `currentRole`, `onRole`) (MOD-5); removed in 0.53. */
|
|
5
6
|
export interface RoleSwitcherProps<R extends string> {
|
|
6
7
|
roles: readonly R[];
|
|
7
8
|
value: R;
|
|
@@ -22,6 +23,12 @@ export interface RoleSwitcherProps<R extends string> {
|
|
|
22
23
|
* The flask wears `--warning` rather than a fixed `amber-500`: it is a caution
|
|
23
24
|
* marker — the app is not showing you your own role — and the token carries that
|
|
24
25
|
* amber across both themes instead of pinning one hue onto every palette.
|
|
26
|
+
*
|
|
27
|
+
* Deprecated in 0.52, removed in 0.53 (decision 4 of the refactor audit 2026-10-30,
|
|
28
|
+
* MOD-5): the role switch every app draws is `DevMenu`'s Account section (0.51), and no
|
|
29
|
+
* app renders this one.
|
|
30
|
+
*
|
|
31
|
+
* @deprecated 0.52 — `DevMenu` with `roles`, `currentRole` and `onRole` (MOD-5); removed in 0.53.
|
|
25
32
|
*/
|
|
26
33
|
export function RoleSwitcher<R extends string>({
|
|
27
34
|
roles,
|
|
@@ -23,7 +23,7 @@ export interface TopBarActionsProps {
|
|
|
23
23
|
/** `DevMenu` (0.51, docs/top-bar-harmonization.md §2.7.1): the one flask — the role,
|
|
24
24
|
* the plan, then the app's own dev sections. Fill it only behind
|
|
25
25
|
* `import.meta.env.DEV`, so a production build drops the branch. (0.42's
|
|
26
|
-
* `DevSwitchers
|
|
26
|
+
* `DevSwitchers` was a DevMenu with no sections; removed in 0.52.) */
|
|
27
27
|
dev?: ReactNode;
|
|
28
28
|
/** kastlan's platform button. */
|
|
29
29
|
platform?: ReactNode;
|
|
@@ -82,8 +82,6 @@ export interface DevSwitchersLabels {
|
|
|
82
82
|
overridesOn: string;
|
|
83
83
|
/** The heading of the role group. */
|
|
84
84
|
roleHeading: string;
|
|
85
|
-
/** @deprecated 0.51 — DevMenu's one flask is named by `menu`; removed in 0.52. */
|
|
86
|
-
switchPlan: string;
|
|
87
85
|
/** The plan in the flask's name, given the active plan. */
|
|
88
86
|
plan: (value: string) => string;
|
|
89
87
|
/** The heading of the plan group. */
|
|
@@ -137,7 +135,6 @@ export const DEFAULT_TOP_BAR_PARTS_LABELS: TopBarPartsLabels = {
|
|
|
137
135
|
menu: "Dev tools",
|
|
138
136
|
overridesOn: "Overrides on",
|
|
139
137
|
roleHeading: "Dev · role",
|
|
140
|
-
switchPlan: "Switch plan",
|
|
141
138
|
plan: (value) => `Plan: ${value}`,
|
|
142
139
|
planHeading: "Dev · plan",
|
|
143
140
|
backTo: (role) => `Back to ${role}`,
|
package/src/shell.ts
CHANGED
|
@@ -5,6 +5,14 @@
|
|
|
5
5
|
export * from "./shell/topbar-controls";
|
|
6
6
|
export * from "./shell/top-bar";
|
|
7
7
|
export * from "./shell/app-shell";
|
|
8
|
+
// 0.52: the slice's share of the 55 names no app reads (refactor audit 2026-10-30, API-4,
|
|
9
|
+
// decision 4), tagged on their specifiers as the barrel's are — the modules keep them.
|
|
10
|
+
export {
|
|
11
|
+
/** @deprecated 0.52 — `AppShell`, which picks its phone bar with it (API-4); removed in 0.53 */
|
|
12
|
+
pickMobileBar,
|
|
13
|
+
/** @deprecated 0.52 — `AppShell`, which splits its phone bar with it (API-4); removed in 0.53 */
|
|
14
|
+
splitMobileBar,
|
|
15
|
+
} from "./shell/app-shell";
|
|
8
16
|
export * from "./shell/option-switcher-menu";
|
|
9
17
|
export * from "./shell/role-switcher";
|
|
10
18
|
export * from "./shell/topbar-action-menu";
|
|
@@ -25,12 +33,18 @@ export type { UseAdminMenuEntryOptions } from "./shell/admin-menu";
|
|
|
25
33
|
export { AdminWaitingBadge } from "./shell/admin-menu";
|
|
26
34
|
export type { AdminWaitingBadgeProps } from "./shell/admin-menu";
|
|
27
35
|
// 0.31.0: the settings and admin pages' shell (docs/settings-harmonization.md §3, §5).
|
|
28
|
-
export {
|
|
36
|
+
export {
|
|
37
|
+
SettingsLayout,
|
|
38
|
+
/** @deprecated 0.52 — `SettingsLayout`, which shows its search past that many entries (API-4); removed in 0.53 */
|
|
39
|
+
SETTINGS_SEARCH_THRESHOLD,
|
|
40
|
+
} from "./settings/settings-layout";
|
|
29
41
|
export type { SettingsLayoutProps, SettingsLayoutWidth, SettingsDocumentTitleParts } from "./settings/settings-layout";
|
|
30
42
|
export {
|
|
31
43
|
useSettingsRoute,
|
|
44
|
+
/** @deprecated 0.52 — `useSettingsRoute`, which resolves the location with it (API-4); removed in 0.53 */
|
|
32
45
|
resolveSettingsLocation,
|
|
33
46
|
settingsFromListState,
|
|
47
|
+
/** @deprecated 0.52 — `settingsFromListState` and `useSettingsRoute`, which write and read it (API-4); removed in 0.53 */
|
|
34
48
|
SETTINGS_FROM_LIST_STATE,
|
|
35
49
|
} from "./settings/use-settings-route";
|
|
36
50
|
export type {
|
|
@@ -41,7 +55,14 @@ export type {
|
|
|
41
55
|
SettingsLocationRules,
|
|
42
56
|
SettingsLocationResult,
|
|
43
57
|
} from "./settings/use-settings-route";
|
|
44
|
-
export {
|
|
58
|
+
export {
|
|
59
|
+
useSettingsFocus,
|
|
60
|
+
useFocusParam,
|
|
61
|
+
/** @deprecated 0.52 — `useSettingsFocus` / `useFocusParam`, which ring the card with it (API-4); removed in 0.53 */
|
|
62
|
+
SETTINGS_FOCUS_RING,
|
|
63
|
+
/** @deprecated 0.52 — `useSettingsFocus` / `useFocusParam`, which hold the ring that long (API-4); removed in 0.53 */
|
|
64
|
+
SETTINGS_FOCUS_MS,
|
|
65
|
+
} from "./settings/use-settings-focus";
|
|
45
66
|
export { SettingsSection } from "./settings/settings-section";
|
|
46
67
|
export type { SettingsSectionProps } from "./settings/settings-section";
|
|
47
68
|
export { useSettingsLayout } from "./settings/settings-context";
|
|
@@ -77,8 +98,12 @@ export { PublicHeader } from "./landing/public-header";
|
|
|
77
98
|
export type { PublicHeaderProps, PublicHeaderBrand } from "./landing/public-header";
|
|
78
99
|
// 0.42.0: the top bar's shared parts (docs/top-bar-harmonization.md §3.1) — the slots in
|
|
79
100
|
// §2.1's order, the account menu's language sub-list, the tours menu, the sync status, the
|
|
80
|
-
// local-dev
|
|
81
|
-
export {
|
|
101
|
+
// local-dev menu, and their words.
|
|
102
|
+
export {
|
|
103
|
+
TopBarActions,
|
|
104
|
+
/** @deprecated 0.52 — `TopBarActions`, which puts its slots in that order (API-4); removed in 0.53 */
|
|
105
|
+
TOP_BAR_ACTION_ORDER,
|
|
106
|
+
} from "./shell/top-bar-actions";
|
|
82
107
|
export type { TopBarActionsProps } from "./shell/top-bar-actions";
|
|
83
108
|
export { AccountMenuLanguage } from "./shell/account-menu-language";
|
|
84
109
|
export type { AccountMenuLanguageProps, AccountMenuLanguageOption } from "./shell/account-menu-language";
|
|
@@ -87,14 +112,20 @@ export { AccountMenuTextSize } from "./shell/account-menu-text-size";
|
|
|
87
112
|
export type { AccountMenuTextSizeProps } from "./shell/account-menu-text-size";
|
|
88
113
|
export { TourMenu } from "./shell/tour-menu";
|
|
89
114
|
export type { TourMenuProps, TourMenuTour } from "./shell/tour-menu";
|
|
90
|
-
export {
|
|
115
|
+
export {
|
|
116
|
+
SyncStatusIndicator,
|
|
117
|
+
/** @deprecated 0.52 — `SyncStatusIndicator`, which derives its state with it (API-4); removed in 0.53 */
|
|
118
|
+
syncState,
|
|
119
|
+
} from "./shell/sync-status-indicator";
|
|
91
120
|
export type { SyncStatus, SyncState, SyncStatusScope, SyncStatusIndicatorProps } from "./shell/sync-status-indicator";
|
|
92
121
|
// 0.51 (§2.7.1, keksdose): one flask, the kit's Account section and the app's own dev
|
|
93
|
-
// sections
|
|
94
|
-
export {
|
|
122
|
+
// sections. 0.42's `DevSwitchers`, a DevMenu with no sections since 0.51, went in 0.52.
|
|
123
|
+
export {
|
|
124
|
+
DevMenu,
|
|
125
|
+
/** @deprecated 0.52 — `DevMenu`, which keeps the role there unless `storageKey` names another key (API-4); removed in 0.53 */
|
|
126
|
+
DEV_ORIGINAL_ROLE_KEY,
|
|
127
|
+
} from "./shell/dev-menu";
|
|
95
128
|
export type { DevMenuProps, DevMenuSection } from "./shell/dev-menu";
|
|
96
|
-
export { DevSwitchers } from "./shell/dev-switchers";
|
|
97
|
-
export type { DevSwitchersProps } from "./shell/dev-switchers";
|
|
98
129
|
export { DEFAULT_TOP_BAR_PARTS_LABELS, useTopBarPartsLabels } from "./shell/top-bar-parts-labels";
|
|
99
130
|
export type {
|
|
100
131
|
TopBarPartsLabels,
|