@eifi1/ui-kit 0.52.0 → 0.53.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 +47 -54
- package/dist/billing/cancel-subscription.d.ts +5 -14
- package/dist/billing/cancel-subscription.js +1 -3
- package/dist/billing/cancel-subscription.js.map +1 -1
- package/dist/billing/plan-card.d.ts +5 -13
- package/dist/billing/plan-card.js +3 -11
- package/dist/billing/plan-card.js.map +1 -1
- package/dist/billing/plan-switch.d.ts +5 -14
- package/dist/billing/plan-switch.js +1 -3
- package/dist/billing/plan-switch.js.map +1 -1
- package/dist/chart.d.ts +3 -14
- package/dist/chart.js +64 -11
- package/dist/chart.js.map +1 -1
- package/dist/components/date-field.d.ts +1 -1
- package/dist/components/date-field.js.map +1 -1
- package/dist/components/date-picker.d.ts +1 -1
- package/dist/components/date-picker.js.map +1 -1
- package/dist/components/date-range-picker.d.ts +4 -17
- package/dist/components/date-range-picker.js +2 -2
- package/dist/components/date-range-picker.js.map +1 -1
- package/dist/components/nav-pills.d.ts +1 -1
- package/dist/components/nav-pills.js.map +1 -1
- package/dist/components/series-chart-axes.d.ts +1 -1
- package/dist/components/series-chart-axes.js.map +1 -1
- package/dist/components/series-chart.d.ts +64 -19
- package/dist/components/series-chart.js +2 -1
- package/dist/components/series-chart.js.map +1 -1
- package/dist/components/treemap-labels.d.ts +6 -1
- package/dist/components/treemap-labels.js +2 -2
- package/dist/components/treemap-labels.js.map +1 -1
- package/dist/components/treemap.d.ts +29 -4
- package/dist/components/treemap.js +22 -9
- package/dist/components/treemap.js.map +1 -1
- package/dist/data-table.d.ts +1 -6
- package/dist/data-table.js +1 -9
- package/dist/data-table.js.map +1 -1
- package/dist/demo/demo-countdown.d.ts +0 -5
- package/dist/demo/demo-countdown.js +0 -4
- package/dist/demo/demo-countdown.js.map +1 -1
- package/dist/eslint/index.js +1 -1
- package/dist/feedback/feedback-mutation.d.ts +11 -23
- package/dist/feedback/feedback-mutation.js +1 -9
- package/dist/feedback/feedback-mutation.js.map +1 -1
- package/dist/feedback/feedback-public-list.d.ts +1 -6
- package/dist/feedback/feedback-public-list.js +1 -2
- package/dist/feedback/feedback-public-list.js.map +1 -1
- package/dist/feedback/feedback-row-detail-labels.js +0 -8
- package/dist/feedback/feedback-row-detail-labels.js.map +1 -1
- package/dist/feedback/feedback-row-detail.d.ts +3 -50
- package/dist/feedback/feedback-row-detail.js +0 -8
- package/dist/feedback/feedback-row-detail.js.map +1 -1
- package/dist/feedback/feedback-status-undo.d.ts +3 -19
- package/dist/feedback/feedback-status-undo.js.map +1 -1
- package/dist/feedback/feedback-thread.d.ts +0 -9
- package/dist/feedback/feedback-thread.js.map +1 -1
- package/dist/feedback.d.ts +6 -40
- package/dist/feedback.js +88 -46
- package/dist/feedback.js.map +1 -1
- package/dist/i18n/defaults.js +0 -4
- package/dist/i18n/defaults.js.map +1 -1
- package/dist/i18n/german.js +2 -19
- package/dist/i18n/german.js.map +1 -1
- package/dist/i18n/kit-labels.d.ts +5 -14
- package/dist/i18n/kit-labels.js.map +1 -1
- package/dist/i18n/locales/en.js +2 -30
- package/dist/i18n/locales/en.js.map +3 -3
- package/dist/i18n/locales/es.js +2 -19
- package/dist/i18n/locales/es.js.map +1 -1
- package/dist/i18n/locales/fr.js +2 -19
- package/dist/i18n/locales/fr.js.map +1 -1
- package/dist/i18n/locales/hu.js +2 -19
- package/dist/i18n/locales/hu.js.map +1 -1
- package/dist/i18n/locales/it.js +2 -20
- package/dist/i18n/locales/it.js.map +1 -1
- package/dist/i18n/locales/zh.js +2 -19
- package/dist/i18n/locales/zh.js.map +1 -1
- package/dist/i18n/review.js +9 -4
- package/dist/i18n/review.js.map +1 -1
- package/dist/i18n/shared-labels.js +0 -1
- package/dist/i18n/shared-labels.js.map +1 -1
- package/dist/index.d.ts +15 -64
- package/dist/index.js +22 -102
- package/dist/index.js.map +1 -1
- package/dist/rhf/fields.d.ts +2 -2
- package/dist/rhf/fields.js.map +1 -1
- package/dist/search/search-index.d.ts +0 -6
- package/dist/search/search-index.js +0 -4
- package/dist/search/search-index.js.map +1 -1
- package/dist/search.d.ts +1 -8
- package/dist/search.js +2 -7
- package/dist/search.js.map +1 -1
- package/dist/shell/account-menu-language.d.ts +7 -21
- package/dist/shell/account-menu-language.js +1 -3
- package/dist/shell/account-menu-language.js.map +1 -1
- package/dist/shell/account-menu-text-size.d.ts +9 -23
- package/dist/shell/account-menu-text-size.js +2 -3
- package/dist/shell/account-menu-text-size.js.map +1 -1
- package/dist/shell/app-shell.d.ts +0 -10
- package/dist/shell/app-shell.js +1 -7
- package/dist/shell/app-shell.js.map +1 -1
- package/dist/shell/company-switcher.d.ts +1 -1
- package/dist/shell/company-switcher.js.map +1 -1
- package/dist/shell/dev-menu.d.ts +1 -1
- package/dist/shell/dev-menu.js.map +1 -1
- package/dist/shell/top-bar-parts-labels.d.ts +1 -1
- package/dist/shell/top-bar-parts-labels.js.map +1 -1
- package/dist/shell.d.ts +7 -29
- package/dist/shell.js +12 -42
- package/dist/shell.js.map +1 -1
- package/dist/sync.d.ts +2 -6
- package/dist/sync.js +2 -15
- package/dist/sync.js.map +1 -1
- package/dist/theme/chart-palette.d.ts +0 -5
- package/dist/theme/chart-palette.js +0 -2
- package/dist/theme/chart-palette.js.map +1 -1
- package/package.json +1 -1
- package/src/billing/cancel-subscription.tsx +5 -16
- package/src/billing/plan-card.tsx +7 -24
- package/src/billing/plan-switch.tsx +5 -16
- package/src/chart.ts +62 -13
- package/src/components/date-field.tsx +1 -1
- package/src/components/date-picker.tsx +0 -1
- package/src/components/date-range-picker.tsx +6 -22
- package/src/components/nav-pills.tsx +1 -1
- package/src/components/series-chart-axes.ts +6 -1
- package/src/components/series-chart.tsx +78 -21
- package/src/components/treemap-labels.ts +11 -3
- package/src/components/treemap.tsx +65 -12
- package/src/data-table.ts +1 -11
- package/src/demo/demo-countdown.ts +3 -8
- package/src/feedback/feedback-mutation.ts +12 -33
- package/src/feedback/feedback-public-list.tsx +1 -7
- package/src/feedback/feedback-row-detail-labels.ts +0 -8
- package/src/feedback/feedback-row-detail.tsx +8 -58
- package/src/feedback/feedback-status-undo.ts +4 -18
- package/src/feedback/feedback-thread.tsx +0 -10
- package/src/feedback.ts +89 -48
- package/src/i18n/defaults.ts +0 -4
- package/src/i18n/german.ts +2 -19
- package/src/i18n/kit-labels.tsx +5 -14
- package/src/i18n/locales/es.ts +2 -19
- package/src/i18n/locales/fr.ts +2 -19
- package/src/i18n/locales/hu.ts +2 -19
- package/src/i18n/locales/it.ts +2 -20
- package/src/i18n/locales/zh.ts +2 -19
- package/src/i18n/review.ts +9 -4
- package/src/i18n/shared-labels.ts +0 -1
- package/src/index.ts +30 -112
- package/src/rhf/fields.tsx +2 -2
- package/src/search/search-index.ts +0 -15
- package/src/search.ts +8 -8
- package/src/shell/account-menu-language.tsx +7 -27
- package/src/shell/account-menu-text-size.tsx +13 -32
- package/src/shell/app-shell.tsx +0 -13
- package/src/shell/company-switcher.tsx +1 -1
- package/src/shell/dev-menu.tsx +1 -1
- package/src/shell/top-bar-parts-labels.ts +1 -1
- package/src/shell.ts +17 -44
- package/src/sync.ts +2 -15
- package/src/theme/chart-palette.ts +0 -2
- package/tokens.css +4 -4
- package/dist/billing/dialog-close.d.ts +0 -29
- package/dist/billing/dialog-close.js +0 -8
- package/dist/billing/dialog-close.js.map +0 -1
- package/dist/components/field-sync-labels.d.ts +0 -3
- package/dist/components/field-sync-labels.js +0 -12
- package/dist/components/field-sync-labels.js.map +0 -1
- package/dist/components/field-sync.d.ts +0 -186
- package/dist/components/field-sync.js +0 -269
- package/dist/components/field-sync.js.map +0 -1
- package/dist/components/section-nav.d.ts +0 -44
- package/dist/components/section-nav.js +0 -33
- package/dist/components/section-nav.js.map +0 -1
- package/dist/components/sign-chip-labels.d.ts +0 -3
- package/dist/components/sign-chip-labels.js +0 -11
- package/dist/components/sign-chip-labels.js.map +0 -1
- package/dist/components/sign-chip.d.ts +0 -77
- package/dist/components/sign-chip.js +0 -47
- package/dist/components/sign-chip.js.map +0 -1
- package/dist/lib/isin.d.ts +0 -38
- package/dist/lib/isin.js +0 -36
- package/dist/lib/isin.js.map +0 -1
- package/dist/shell/role-switcher.d.ts +0 -28
- package/dist/shell/role-switcher.js +0 -31
- package/dist/shell/role-switcher.js.map +0 -1
- package/src/billing/dialog-close.ts +0 -34
- package/src/components/field-sync-labels.ts +0 -14
- package/src/components/field-sync.tsx +0 -504
- package/src/components/section-nav.tsx +0 -72
- package/src/components/sign-chip-labels.ts +0 -13
- package/src/components/sign-chip.tsx +0 -133
- package/src/lib/isin.ts +0 -72
- package/src/shell/role-switcher.tsx +0 -53
package/src/index.ts
CHANGED
|
@@ -122,13 +122,11 @@ export type {
|
|
|
122
122
|
TranslationReviewSwipeAction,
|
|
123
123
|
TranslationReviewSwipeBinding,
|
|
124
124
|
} from "./lib/translation-review";
|
|
125
|
-
// 0.22.0, the inputs round: the country list and the IBAN
|
|
125
|
+
// 0.22.0, the inputs round: the country list and the IBAN and phone helpers that
|
|
126
126
|
// CountrySelect, IbanInput and PhoneInput are built on.
|
|
127
127
|
export { COUNTRY_CODES, countryName } from "./lib/countries";
|
|
128
128
|
export { IBAN_LENGTHS, compactIban, formatIban, ibanCheckDigits, ibanProblem, isValidIban, isQrIban } from "./lib/iban";
|
|
129
129
|
export type { IbanKind, IbanProblem } from "./lib/iban";
|
|
130
|
-
// 0.52: deprecated, removed in 0.53 (MOD-5; tagged in lib/isin).
|
|
131
|
-
export { formatIsin, isinCheckDigit, isValidIsin } from "./lib/isin";
|
|
132
130
|
export { PHONE_DIAL_CODES, PHONE_COUNTRIES, parsePhone, formatNationalPhone, formatPhone, isE164 } from "./lib/phone";
|
|
133
131
|
export type { PhoneCountryCode, PhoneCountry, ParsedPhone } from "./lib/phone";
|
|
134
132
|
// 0.23.0: ColumnMapper's pure half (Kurvenschmiede's columns input, keksdose's import map).
|
|
@@ -177,14 +175,9 @@ export type { LongPressOptions, LongPressResult } from "./hooks/use-long-press";
|
|
|
177
175
|
export { useNoIndex } from "./hooks/use-noindex";
|
|
178
176
|
// 0.49 KIT-9: the window's title from page, section and app, in the provider's format.
|
|
179
177
|
export { useDocumentTitle } from "./hooks/use-document-title";
|
|
180
|
-
// 0.
|
|
181
|
-
//
|
|
182
|
-
//
|
|
183
|
-
// declaration: the module keeps it for the kit's own use, only the barrel lets it go.
|
|
184
|
-
export {
|
|
185
|
-
/** @deprecated 0.52 — a formatter's `minus: "ascii"`, where the figure is made (API-4); removed in 0.53 */
|
|
186
|
-
asciiMinusInNumbers,
|
|
187
|
-
} from "./lib/clipboard-minus";
|
|
178
|
+
// 0.53: the 55 names no app reads left the entry points (deprecated in 0.52, refactor audit
|
|
179
|
+
// 2026-10-30, API-4, decision 4) — here 0.49 KIT-1b's `asciiMinusInNumbers`, the copy
|
|
180
|
+
// handler's rule, among them. Their modules keep the ones the kit itself uses.
|
|
188
181
|
export { DEFAULT_DOCUMENT_TITLE_FORMAT, formatDocumentTitle } from "./lib/document-title";
|
|
189
182
|
export type { DocumentTitleParts } from "./lib/document-title";
|
|
190
183
|
export type { SwipeStage, RowSwipeOptions, RowSwipeReturn } from "./hooks/use-row-swipe";
|
|
@@ -344,11 +337,6 @@ export * from "./components/multi-select";
|
|
|
344
337
|
export * from "./components/tooltip";
|
|
345
338
|
export * from "./components/user-avatar";
|
|
346
339
|
export * from "./components/settings-fields";
|
|
347
|
-
// Sync state for a database-backed field: the engine (`useFieldSync`) and the
|
|
348
|
-
// affordance (`FieldSyncIndicator`), kept separate because the state is useful
|
|
349
|
-
// without the dot — a form can gate its submit on any field being `pending`.
|
|
350
|
-
// 0.52: deprecated as a whole, removed in 0.53 (MOD-5; tagged in the module).
|
|
351
|
-
export * from "./components/field-sync";
|
|
352
340
|
export * from "./components/month-picker";
|
|
353
341
|
export * from "./components/checkbox";
|
|
354
342
|
export * from "./components/switch";
|
|
@@ -422,9 +410,6 @@ export * from "./components/alert-banner";
|
|
|
422
410
|
export * from "./components/toggle-group";
|
|
423
411
|
// A wrapping set of links/buttons marked `aria-current` — Tabs-like looks, not tabs.
|
|
424
412
|
export * from "./components/nav-pills";
|
|
425
|
-
// 0.49.0 (KIT-6): a section's pages on the phone, one scrolling row of pills. 0.52:
|
|
426
|
-
// deprecated, removed in 0.53 (MOD-5; tagged in the module).
|
|
427
|
-
export * from "./components/section-nav";
|
|
428
413
|
// A pill carrying one VALUE — inert, a link, or a toggle, depending on which prop it is
|
|
429
414
|
// given — and the list field built from it. Distinct from Button on purpose: a row of
|
|
430
415
|
// buttons reads as "choose an action", a row of chips as "here are the things".
|
|
@@ -441,10 +426,15 @@ export * from "./components/full-bleed-dialog";
|
|
|
441
426
|
export * from "./components/grouped-picker";
|
|
442
427
|
export * from "./components/file-dropzone";
|
|
443
428
|
export * from "./components/mini-calendar";
|
|
444
|
-
|
|
429
|
+
// Named, not `*`: `heatmapLevel` is CalendarHeatmap's own since 0.53 (API-4).
|
|
445
430
|
export {
|
|
446
|
-
|
|
447
|
-
|
|
431
|
+
CalendarHeatmap,
|
|
432
|
+
DEFAULT_CALENDAR_HEATMAP_LABELS,
|
|
433
|
+
heatmapWindowEnd,
|
|
434
|
+
type CalendarHeatmapLabels,
|
|
435
|
+
type CalendarHeatmapDatum,
|
|
436
|
+
type CalendarHeatmapDay,
|
|
437
|
+
type CalendarHeatmapProps,
|
|
448
438
|
} from "./components/calendar-heatmap";
|
|
449
439
|
export * from "./components/date-picker";
|
|
450
440
|
export * from "./components/tree-view";
|
|
@@ -465,13 +455,9 @@ export {
|
|
|
465
455
|
COMMIT_EXCEPT_BILLING,
|
|
466
456
|
DEFAULT_WRITE_LOCK_LABELS,
|
|
467
457
|
} from "./components/write-lock";
|
|
468
|
-
// 0.46 (kastlan K4): the offline lock
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
OFFLINE_LOCK,
|
|
472
|
-
COMMIT_EXCEPT_OFFLINE,
|
|
473
|
-
useOfflineWriteLock,
|
|
474
|
-
} from "./components/write-lock";
|
|
458
|
+
// 0.46 (kastlan K4): the offline lock's scope and its source (the kind, `OFFLINE_LOCK`, left
|
|
459
|
+
// the surface in 0.53: it is the string "offline").
|
|
460
|
+
export { COMMIT_EXCEPT_OFFLINE, useOfflineWriteLock } from "./components/write-lock";
|
|
475
461
|
export type {
|
|
476
462
|
WriteLock,
|
|
477
463
|
WriteLockLabels,
|
|
@@ -535,10 +521,12 @@ export * from "./components/error-boundary";
|
|
|
535
521
|
export * from "./components/copy-button";
|
|
536
522
|
export { AuthedImage, DEFAULT_AUTHED_IMAGE_LABELS } from "./components/authed-image";
|
|
537
523
|
export type { AuthedImageProps, AuthedImageLabels } from "./components/authed-image";
|
|
538
|
-
|
|
524
|
+
// Named, not `*`: `splitFileName` is ImageGrid's own since 0.53 (API-4).
|
|
539
525
|
export {
|
|
540
|
-
|
|
541
|
-
|
|
526
|
+
ImageGrid,
|
|
527
|
+
DEFAULT_IMAGE_GRID_LABELS,
|
|
528
|
+
type ImageGridLabels,
|
|
529
|
+
type ImageGridProps,
|
|
542
530
|
} from "./components/image-grid";
|
|
543
531
|
export * from "./components/lightbox";
|
|
544
532
|
export * from "./components/button-group";
|
|
@@ -567,17 +555,7 @@ export type {
|
|
|
567
555
|
// The toast layer over sonner (an OPTIONAL peer, loaded lazily): `toast` mirrors sonner's
|
|
568
556
|
// API so apps migrate by swapping the import; `<Toaster>` carries the placement, theme,
|
|
569
557
|
// tones and z-index both apps had wired by hand.
|
|
570
|
-
export {
|
|
571
|
-
toast,
|
|
572
|
-
Toaster,
|
|
573
|
-
DEFAULT_TOAST_LABELS,
|
|
574
|
-
/** @deprecated 0.52 — `toast()`, which times a toast with an action by it (API-4); removed in 0.53 */
|
|
575
|
-
TOAST_ACTION_DURATION,
|
|
576
|
-
/** @deprecated 0.52 — `<Toaster>`, whose default `offset` it is (API-4); removed in 0.53 */
|
|
577
|
-
TOASTER_OFFSET_TOP,
|
|
578
|
-
/** @deprecated 0.52 — `<Toaster>`, whose default `offset` it is (API-4); removed in 0.53 */
|
|
579
|
-
TOASTER_OFFSET_BOTTOM,
|
|
580
|
-
} from "./components/toast";
|
|
558
|
+
export { toast, Toaster, DEFAULT_TOAST_LABELS } from "./components/toast";
|
|
581
559
|
export type {
|
|
582
560
|
ToastId,
|
|
583
561
|
ToastAction,
|
|
@@ -682,8 +660,6 @@ export {
|
|
|
682
660
|
// 0.47.0 (keksdose N17): a hand-built table's actions heading and cell.
|
|
683
661
|
RowActionsHead,
|
|
684
662
|
ROW_ACTIONS_CELL_CLASS,
|
|
685
|
-
/** @deprecated 0.52 — `RowActionsHead`, which draws it (API-4); removed in 0.53 */
|
|
686
|
-
ROW_ACTIONS_HEAD_CLASS,
|
|
687
663
|
} from "./components/row-actions";
|
|
688
664
|
export type {
|
|
689
665
|
RowAction,
|
|
@@ -704,8 +680,6 @@ export * from "./components/one-time-code-input";
|
|
|
704
680
|
export * from "./components/language-select";
|
|
705
681
|
export * from "./components/tile-radio";
|
|
706
682
|
export * from "./components/inline-edit-field";
|
|
707
|
-
// 0.52: deprecated, removed in 0.53 (MOD-5; tagged in the module).
|
|
708
|
-
export * from "./components/sign-chip";
|
|
709
683
|
export * from "./components/country-select";
|
|
710
684
|
export * from "./components/iban-input";
|
|
711
685
|
export * from "./components/phone-input";
|
|
@@ -859,13 +833,9 @@ export type { DataExportSettingProps, DataExportLabels, DataExportFile } from ".
|
|
|
859
833
|
// 0.30.0 (docs/user-admin-harmonization.md): the admin user list and its actions, and the
|
|
860
834
|
// invitations panel. Callbacks only; the confirmation level is the server's.
|
|
861
835
|
export {
|
|
862
|
-
/** @deprecated 0.52 — `useUserRosterColumns`, the same columns in the provider's words (API-4); removed in 0.53 */
|
|
863
|
-
userRosterColumns,
|
|
864
836
|
useUserRosterColumns,
|
|
865
837
|
UserIdentityCell,
|
|
866
838
|
UserRowActions,
|
|
867
|
-
/** @deprecated 0.52 — `useUserRosterColumns`, whose state cell reads it (API-4); removed in 0.53 */
|
|
868
|
-
adminUserStates,
|
|
869
839
|
userRosterSort,
|
|
870
840
|
USER_ROSTER_SORT_KEYS,
|
|
871
841
|
DEFAULT_USER_ROSTER_LABELS,
|
|
@@ -945,13 +915,7 @@ export { adminSectionOrder } from "./admin/admin-sections";
|
|
|
945
915
|
export type { AdminSectionPlace, AdminSectionOrderOptions, AdminKeptSection } from "./admin/admin-sections";
|
|
946
916
|
export { AdminForbidden } from "./admin/admin-forbidden";
|
|
947
917
|
export type { AdminForbiddenProps } from "./admin/admin-forbidden";
|
|
948
|
-
export {
|
|
949
|
-
AdminOverview,
|
|
950
|
-
AttentionTile,
|
|
951
|
-
adminWaitingCount,
|
|
952
|
-
/** @deprecated 0.52 — `AdminOverview`, which links its tiles there unless told otherwise (API-4); removed in 0.53 */
|
|
953
|
-
DEFAULT_ADMIN_ATTENTION_HREFS,
|
|
954
|
-
} from "./admin/admin-overview";
|
|
918
|
+
export { AdminOverview, AttentionTile, adminWaitingCount } from "./admin/admin-overview";
|
|
955
919
|
export type {
|
|
956
920
|
AdminAttention,
|
|
957
921
|
AdminAttentionTile,
|
|
@@ -966,23 +930,10 @@ export type {
|
|
|
966
930
|
export { AdminToolLinks } from "./admin/admin-tool-links";
|
|
967
931
|
export type { AdminToolLink, AdminToolLinksProps } from "./admin/admin-tool-links";
|
|
968
932
|
// 0.45.0 (docs/admin-harmonization.md §9.2.4): "Send a test mail to me".
|
|
969
|
-
export {
|
|
970
|
-
MailTestCard,
|
|
971
|
-
DEFAULT_MAIL_TEST_CARD_LABELS,
|
|
972
|
-
MAIL_TEST_ANCHOR,
|
|
973
|
-
/** @deprecated 0.52 — `MailTestCard`, which masks the address itself (API-4); removed in 0.53 */
|
|
974
|
-
maskMailAddress,
|
|
975
|
-
} from "./admin/mail-test-card";
|
|
933
|
+
export { MailTestCard, DEFAULT_MAIL_TEST_CARD_LABELS, MAIL_TEST_ANCHOR } from "./admin/mail-test-card";
|
|
976
934
|
export type { MailTestCardProps, MailTestCardLabels, MailTestAnswer } from "./admin/mail-test-card";
|
|
977
935
|
// 0.33.0: the operator's plan parts (docs/billing-harmonization.md §14.12).
|
|
978
|
-
export {
|
|
979
|
-
/** @deprecated 0.52 — `usePlanColumn`, the same column in the provider's words (API-4); removed in 0.53 */
|
|
980
|
-
planColumn,
|
|
981
|
-
usePlanColumn,
|
|
982
|
-
PlanChangeConfirm,
|
|
983
|
-
usePlanChangeResult,
|
|
984
|
-
DEFAULT_PLAN_CHANGE_LABELS,
|
|
985
|
-
} from "./admin/plan-change";
|
|
936
|
+
export { usePlanColumn, PlanChangeConfirm, usePlanChangeResult, DEFAULT_PLAN_CHANGE_LABELS } from "./admin/plan-change";
|
|
986
937
|
export type {
|
|
987
938
|
PlanChangeLabels,
|
|
988
939
|
PlanColumnOptions,
|
|
@@ -1007,13 +958,7 @@ export type {
|
|
|
1007
958
|
PlanPrices,
|
|
1008
959
|
PlanPriceAnswer,
|
|
1009
960
|
} from "./billing/plan-price";
|
|
1010
|
-
export {
|
|
1011
|
-
PlanCard,
|
|
1012
|
-
PlanPicker,
|
|
1013
|
-
GrantWarningConfirm,
|
|
1014
|
-
/** @deprecated 0.52 — `PlanPicker`, which marks each card's relation itself (API-4); removed in 0.53 */
|
|
1015
|
-
planRelation,
|
|
1016
|
-
} from "./billing/plan-card";
|
|
961
|
+
export { PlanCard, PlanPicker, GrantWarningConfirm } from "./billing/plan-card";
|
|
1017
962
|
export type {
|
|
1018
963
|
BillingPlan,
|
|
1019
964
|
PlanRelation,
|
|
@@ -1047,21 +992,10 @@ export {
|
|
|
1047
992
|
withoutCheckoutReturn,
|
|
1048
993
|
checkoutReturnUrl,
|
|
1049
994
|
} from "./billing/checkout-return";
|
|
1050
|
-
export {
|
|
1051
|
-
checkoutFingerprint,
|
|
1052
|
-
/** @deprecated 0.52 — `useCheckoutProcessing`, which asks it (API-4); removed in 0.53 */
|
|
1053
|
-
checkoutLanded,
|
|
1054
|
-
noteCheckoutStarted,
|
|
1055
|
-
useCheckoutProcessing,
|
|
1056
|
-
} from "./billing/checkout-processing";
|
|
995
|
+
export { checkoutFingerprint, noteCheckoutStarted, useCheckoutProcessing } from "./billing/checkout-processing";
|
|
1057
996
|
export type { CheckoutOverview, CheckoutProcessingOptions } from "./billing/checkout-processing";
|
|
1058
997
|
// The link to the pay page and Paddle's locale (§14.4); the page itself ships as dist/pay/.
|
|
1059
|
-
export {
|
|
1060
|
-
/** @deprecated 0.52 — `payPageUrl`, which writes it (API-4); removed in 0.53 */
|
|
1061
|
-
PAY_PAGE_LANG_PARAM,
|
|
1062
|
-
paddleLocale,
|
|
1063
|
-
payPageUrl,
|
|
1064
|
-
} from "./billing/pay-page";
|
|
998
|
+
export { paddleLocale, payPageUrl } from "./billing/pay-page";
|
|
1065
999
|
export type { PaddleEnvironment } from "./billing/pay-page";
|
|
1066
1000
|
// 0.39 (§15.2.6): the apps every pay page serves, by their `billing_app` tag.
|
|
1067
1001
|
export { PAY_PAGE_APPS } from "./billing/pay-page";
|
|
@@ -1111,11 +1045,7 @@ export type {
|
|
|
1111
1045
|
ResolveAccountLanguageInput,
|
|
1112
1046
|
ResolvedAccountLanguage,
|
|
1113
1047
|
} from "./settings/use-account-language";
|
|
1114
|
-
export {
|
|
1115
|
-
useAccountAppearance,
|
|
1116
|
-
/** @deprecated 0.52 — `useAccountAppearance`, which resolves the same three values (API-4); removed in 0.53 */
|
|
1117
|
-
resolveAccountAppearance,
|
|
1118
|
-
} from "./settings/use-account-appearance";
|
|
1048
|
+
export { useAccountAppearance } from "./settings/use-account-appearance";
|
|
1119
1049
|
export type {
|
|
1120
1050
|
AppearanceSource,
|
|
1121
1051
|
AccountAppearanceFields,
|
|
@@ -1192,11 +1122,7 @@ export type {
|
|
|
1192
1122
|
} from "./notifications/push-worker";
|
|
1193
1123
|
export { PushDeviceSetting } from "./notifications/push-device-setting";
|
|
1194
1124
|
export type { PushDeviceSettingProps, PushDeviceAction } from "./notifications/push-device-setting";
|
|
1195
|
-
export {
|
|
1196
|
-
PushDevicesSetting,
|
|
1197
|
-
/** @deprecated 0.52 — `PushDevicesSetting`, which names each device with it (API-4); removed in 0.53 */
|
|
1198
|
-
describeUserAgent,
|
|
1199
|
-
} from "./notifications/push-devices-setting";
|
|
1125
|
+
export { PushDevicesSetting } from "./notifications/push-devices-setting";
|
|
1200
1126
|
export type { PushDevicesSettingProps } from "./notifications/push-devices-setting";
|
|
1201
1127
|
export { UnsubscribePanel, unsubscribeTokenType } from "./notifications/unsubscribe-panel";
|
|
1202
1128
|
export type { UnsubscribePanelProps } from "./notifications/unsubscribe-panel";
|
|
@@ -1243,15 +1169,7 @@ export { DEFAULT_DEMO_LABELS, useDemoLabels } from "./demo/demo-labels";
|
|
|
1243
1169
|
export type { DemoLabels } from "./demo/demo-labels";
|
|
1244
1170
|
export { isDemoSession } from "./demo/demo-session";
|
|
1245
1171
|
export type { DemoModel, DemoSessionUser } from "./demo/demo-session";
|
|
1246
|
-
export {
|
|
1247
|
-
useDemoCountdown,
|
|
1248
|
-
/** @deprecated 0.52 — `useDemoCountdown`, the same countdown; its `now` option for a test (API-4); removed in 0.53 */
|
|
1249
|
-
demoCountdown,
|
|
1250
|
-
/** @deprecated 0.52 — `useDemoCountdown`, whose `warning` turns on then (API-4); removed in 0.53 */
|
|
1251
|
-
DEMO_WARNING_MINUTES,
|
|
1252
|
-
/** @deprecated 0.52 — `useDemoCountdown`, whose `lastHour` turns on then (API-4); removed in 0.53 */
|
|
1253
|
-
DEMO_MINUTES_ONLY,
|
|
1254
|
-
} from "./demo/demo-countdown";
|
|
1172
|
+
export { useDemoCountdown } from "./demo/demo-countdown";
|
|
1255
1173
|
export type { DemoCountdown, DemoCountdownOptions, DemoExpiry } from "./demo/demo-countdown";
|
|
1256
1174
|
export { DemoStart } from "./demo/demo-start";
|
|
1257
1175
|
export type { DemoStartProps } from "./demo/demo-start";
|
package/src/rhf/fields.tsx
CHANGED
|
@@ -899,8 +899,8 @@ export type RhfDateRangePickerProps<
|
|
|
899
899
|
*
|
|
900
900
|
* Without `apply` (the picker's default) the first calendar click is reported on its
|
|
901
901
|
* own, so the form holds `(from, emptyValue)` until the second; with `apply` nothing
|
|
902
|
-
* reaches the form until Apply. `apply` was `commit="apply"` until 0.52 (
|
|
903
|
-
*
|
|
902
|
+
* reaches the form until Apply. `apply` was `commit="apply"` until 0.52 (gone in 0.53):
|
|
903
|
+
* `commit` is now the write lock's, as on every other binding — with
|
|
904
904
|
* `disabledReason`, the picker's own (refactor audit 2026-10-30, API-3).
|
|
905
905
|
*
|
|
906
906
|
* The common props (`label`, `hint`, `required`, `disabled`, `excludeWhenDisabled`,
|
|
@@ -281,18 +281,3 @@ function capByGroup<E extends SearchEntry>(hits: SearchHit<E>[], groupLimit: num
|
|
|
281
281
|
}
|
|
282
282
|
return out;
|
|
283
283
|
}
|
|
284
|
-
|
|
285
|
-
/**
|
|
286
|
-
* One-shot form of {@link createSearchIndex}: the matching entries, best first. For a
|
|
287
|
-
* list that changes on every call (a server response, a store selector); build an index
|
|
288
|
-
* once when the entries are stable.
|
|
289
|
-
*/
|
|
290
|
-
export function matchEntries<E extends SearchEntry>(
|
|
291
|
-
entries: readonly E[],
|
|
292
|
-
query: string,
|
|
293
|
-
options?: SearchIndexOptions,
|
|
294
|
-
): E[] {
|
|
295
|
-
return createSearchIndex(entries, options)
|
|
296
|
-
.search(query)
|
|
297
|
-
.map((hit) => hit.entry);
|
|
298
|
-
}
|
package/src/search.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
// `@eifi1/ui-kit/search` — the command palette / global search.
|
|
2
2
|
// A re-slicing of the main barrel, not a new API.
|
|
3
3
|
export * from "./search/command-palette";
|
|
4
|
-
|
|
5
|
-
// 0.52
|
|
4
|
+
// Named, not `*`: 0.53 took `SEARCH_TIER_POINTS` and `normalizeSearchText` off the surface
|
|
5
|
+
// (deprecated in 0.52, refactor audit 2026-10-30, API-4); the index keeps them.
|
|
6
6
|
export {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
7
|
+
createSearchIndex,
|
|
8
|
+
type SearchEntry,
|
|
9
|
+
type SearchMatchField,
|
|
10
|
+
type SearchHit,
|
|
11
|
+
type SearchIndexOptions,
|
|
12
|
+
type SearchIndex,
|
|
13
13
|
} from "./search/search-index";
|
|
14
14
|
export * from "./search/global-search";
|
|
@@ -39,11 +39,15 @@ function flagOf(lang: AccountMenuLanguageOption): ReactNode {
|
|
|
39
39
|
);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
|
|
43
|
-
interface AccountMenuLanguageBaseProps {
|
|
42
|
+
export interface AccountMenuLanguageProps {
|
|
44
43
|
languages: readonly AccountMenuLanguageOption[];
|
|
45
44
|
/** The active language's code. */
|
|
46
45
|
value: string | undefined;
|
|
46
|
+
/** A pick: the app sets the device's language and, signed in, the account's
|
|
47
|
+
* (settings §6.2). `value` + `onChange`, as every kit control pairs them
|
|
48
|
+
* (CONTRIBUTING §4; refactor audit 2026-10-30, API-5). Required: 0.53 removed the
|
|
49
|
+
* deprecated `onPick`. */
|
|
50
|
+
onChange: (code: string) => void;
|
|
47
51
|
/** The account menu's `close` (from `TopBarActionMenu`'s `children`): a pick shuts it. */
|
|
48
52
|
close?: () => void;
|
|
49
53
|
/** The row's name. Default: `topBar.language` ("Language"). */
|
|
@@ -52,28 +56,6 @@ interface AccountMenuLanguageBaseProps {
|
|
|
52
56
|
defaultOpen?: boolean;
|
|
53
57
|
}
|
|
54
58
|
|
|
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
|
-
|
|
77
59
|
/**
|
|
78
60
|
* The language choice INSIDE the account menu (docs/top-bar-harmonization.md §2.3),
|
|
79
61
|
* keksdose's sub-list: a `Disclosure variant="menu"` row — the globe, "Language", the
|
|
@@ -89,12 +71,10 @@ export function AccountMenuLanguage({
|
|
|
89
71
|
languages,
|
|
90
72
|
value,
|
|
91
73
|
onChange,
|
|
92
|
-
onPick,
|
|
93
74
|
close,
|
|
94
75
|
label,
|
|
95
76
|
defaultOpen = false,
|
|
96
77
|
}: AccountMenuLanguageProps) {
|
|
97
|
-
const change = onChange ?? onPick;
|
|
98
78
|
const words = useKitLabels("topBar", DEFAULT_TOP_BAR_LABELS);
|
|
99
79
|
const [open, setOpen] = useState(defaultOpen);
|
|
100
80
|
const active = languages.find((l) => l.code === value);
|
|
@@ -131,7 +111,7 @@ export function AccountMenuLanguage({
|
|
|
131
111
|
<MenuItem
|
|
132
112
|
checked={lang.code === value}
|
|
133
113
|
onClick={() => {
|
|
134
|
-
|
|
114
|
+
onChange(lang.code);
|
|
135
115
|
setOpen(false);
|
|
136
116
|
close?.();
|
|
137
117
|
}}
|
|
@@ -4,44 +4,26 @@ 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
|
-
|
|
8
|
-
interface AccountMenuTextSizeBaseProps {
|
|
7
|
+
export interface AccountMenuTextSizeProps {
|
|
9
8
|
/** The size in force. Default: the one on `<html>` ({@link useTextSize}), which is the
|
|
10
9
|
* size whoever applied it put there. */
|
|
11
10
|
value?: TextSize;
|
|
11
|
+
/**
|
|
12
|
+
* A step: the next size down or up. The app applies it and keeps it as its
|
|
13
|
+
* Settings ▸ Appearance does — `useAccountAppearance`'s `pickTextSize` (this
|
|
14
|
+
* device, and the account when signed in), with `appearance.saveFailed` as the
|
|
15
|
+
* toast when the account refused. The kit does not apply it itself, so the two
|
|
16
|
+
* places can never disagree. `value` + `onChange`, as every kit control pairs them
|
|
17
|
+
* (CONTRIBUTING §4; refactor audit 2026-10-30, API-5). Required: 0.53 removed the
|
|
18
|
+
* deprecated `onPick`.
|
|
19
|
+
*/
|
|
20
|
+
onChange: (size: TextSize) => void;
|
|
12
21
|
/** The row's name. Default: `appearance.textSize` ("Text size"). */
|
|
13
22
|
label?: string;
|
|
14
23
|
/** The `appearance` words (`textSize`, `textSizes`, `textSmaller`, `textLarger`). */
|
|
15
24
|
labels?: LabelOverride<AppearanceLabels>;
|
|
16
25
|
}
|
|
17
26
|
|
|
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
|
-
|
|
45
27
|
/**
|
|
46
28
|
* The text size one tap away, INSIDE the account menu (0.46, keksdose live #426, its
|
|
47
29
|
* `TextSizeRow`): the row's icon and name, the size in force, and A− / A+, which step
|
|
@@ -55,15 +37,14 @@ export type AccountMenuTextSizeProps = AccountMenuTextSizeBaseProps &
|
|
|
55
37
|
* behind it and can step again. The size's name is a polite live region, so a step is
|
|
56
38
|
* announced.
|
|
57
39
|
*/
|
|
58
|
-
export function AccountMenuTextSize({ value, onChange,
|
|
59
|
-
const change = onChange ?? onPick;
|
|
40
|
+
export function AccountMenuTextSize({ value, onChange, label, labels: labelsProp }: AccountMenuTextSizeProps) {
|
|
60
41
|
const labels = useAppearanceLabels(labelsProp);
|
|
61
42
|
const onHtml = useTextSize().size;
|
|
62
43
|
const size = value ?? onHtml;
|
|
63
44
|
const index = TEXT_SIZES.indexOf(size);
|
|
64
45
|
const step = (by: -1 | 1) => {
|
|
65
46
|
const next = TEXT_SIZES[index + by];
|
|
66
|
-
if (next)
|
|
47
|
+
if (next) onChange(next);
|
|
67
48
|
};
|
|
68
49
|
return (
|
|
69
50
|
<li data-account-menu-text-size="" className="flex items-center gap-2 px-3 py-1.5 text-sm">
|
package/src/shell/app-shell.tsx
CHANGED
|
@@ -201,19 +201,6 @@ export function pickMobileBar<T>(
|
|
|
201
201
|
};
|
|
202
202
|
}
|
|
203
203
|
|
|
204
|
-
/**
|
|
205
|
-
* Split the bar's entries into the cells shown and the ones under "More", in the app's
|
|
206
|
-
* order (§10.7: the app puts its four most used first, or orders by role). One hidden
|
|
207
|
-
* entry is no saving — the More cell would take its place — so the bar then shows them
|
|
208
|
-
* all: the cell count is the same either way, and a real entry beats a detour.
|
|
209
|
-
*/
|
|
210
|
-
export function splitMobileBar<T>(entries: readonly T[], max: number): { shown: T[]; hidden: T[] } {
|
|
211
|
-
// Entries before More, as 0.32 counted them; {@link pickMobileBar} counts cells.
|
|
212
|
-
const limit = Math.max(1, Math.floor(max));
|
|
213
|
-
if (entries.length <= limit + 1) return { shown: [...entries], hidden: [] };
|
|
214
|
-
return { shown: entries.slice(0, limit), hidden: entries.slice(limit) };
|
|
215
|
-
}
|
|
216
|
-
|
|
217
204
|
/** The bar's cell count at `size`: `mobileMaxItems`, else the default. */
|
|
218
205
|
function mobileCells(maxItems: AppShellProps["mobileMaxItems"], size: TextSize): number {
|
|
219
206
|
if (maxItems === undefined) return DEFAULT_MOBILE_MAX_ITEMS[size];
|
|
@@ -56,7 +56,7 @@ export interface CompanySwitcherProps<Id extends string | number> {
|
|
|
56
56
|
* The company switcher in the top bar (docs/auth-harmonization.md §5.3, §8): a kastlan
|
|
57
57
|
* user may belong to several companies, and the access token carries the current one,
|
|
58
58
|
* so switching is a request for new tokens — `onSwitch`, the app's. Built on
|
|
59
|
-
* {@link OptionSwitcherMenu}
|
|
59
|
+
* {@link OptionSwitcherMenu}: the icon trigger, the current company
|
|
60
60
|
* in its tooltip, the list with a check on the current one.
|
|
61
61
|
*
|
|
62
62
|
* **Only for more than one company** — a user in one company has nothing to switch, and
|
package/src/shell/dev-menu.tsx
CHANGED
|
@@ -95,7 +95,7 @@ const isRow = (entry: TopBarMenuEntry) => entry.kind !== "heading" && entry.kind
|
|
|
95
95
|
|
|
96
96
|
/**
|
|
97
97
|
* The top bar's local-dev menu (docs/top-bar-harmonization.md §2.7, §2.7.1, §6.2, §6.3):
|
|
98
|
-
* ONE amber flask
|
|
98
|
+
* ONE amber flask over the kit's Account section and the app's own.
|
|
99
99
|
*
|
|
100
100
|
* 0.42's `DevSwitchers` drew a flask per switcher and had no place for anything else,
|
|
101
101
|
* and an app has more dev controls than a role and a plan — keksdose's budget role, a
|
|
@@ -6,7 +6,7 @@ import { useKitLabels, type LabelOverride } from "../i18n/kit-labels";
|
|
|
6
6
|
* `DevSwitchers`, whose words these still are, §2.7.1). A module
|
|
7
7
|
* of words with no component code, like every `*-labels.ts` (0.34, KS U8). The language
|
|
8
8
|
* sub-list (`AccountMenuLanguage`) names itself with `topBar.language`, and the role in the
|
|
9
|
-
* dev flask's name is `topBar.role
|
|
9
|
+
* dev flask's name is `topBar.role`.
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
12
|
/** `TourMenu`'s words (§2.4). */
|
package/src/shell.ts
CHANGED
|
@@ -4,17 +4,20 @@
|
|
|
4
4
|
// `react-router`: AppShell renders NavLink and TopBarActionMenu renders Link.
|
|
5
5
|
export * from "./shell/topbar-controls";
|
|
6
6
|
export * from "./shell/top-bar";
|
|
7
|
-
|
|
8
|
-
//
|
|
9
|
-
//
|
|
7
|
+
// Named, not `*`: 0.53 took `pickMobileBar` off the surface (deprecated in 0.52, refactor
|
|
8
|
+
// audit 2026-10-30, API-4) — AppShell's own — and removed `splitMobileBar`, which nothing
|
|
9
|
+
// called any more.
|
|
10
10
|
export {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
DEFAULT_APP_SHELL_MORE_LABELS,
|
|
12
|
+
DEFAULT_MOBILE_MAX_ITEMS,
|
|
13
|
+
AppShell,
|
|
14
|
+
type AppShellSubItem,
|
|
15
|
+
type AppShellNavItem,
|
|
16
|
+
type AppShellSidebarFooterItem,
|
|
17
|
+
type AppShellMoreLabels,
|
|
18
|
+
type AppShellProps,
|
|
15
19
|
} from "./shell/app-shell";
|
|
16
20
|
export * from "./shell/option-switcher-menu";
|
|
17
|
-
export * from "./shell/role-switcher";
|
|
18
21
|
export * from "./shell/topbar-action-menu";
|
|
19
22
|
export * from "./shell/top-bar-brand";
|
|
20
23
|
export * from "./shell/auth-layout";
|
|
@@ -33,20 +36,9 @@ export type { UseAdminMenuEntryOptions } from "./shell/admin-menu";
|
|
|
33
36
|
export { AdminWaitingBadge } from "./shell/admin-menu";
|
|
34
37
|
export type { AdminWaitingBadgeProps } from "./shell/admin-menu";
|
|
35
38
|
// 0.31.0: the settings and admin pages' shell (docs/settings-harmonization.md §3, §5).
|
|
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";
|
|
39
|
+
export { SettingsLayout } from "./settings/settings-layout";
|
|
41
40
|
export type { SettingsLayoutProps, SettingsLayoutWidth, SettingsDocumentTitleParts } from "./settings/settings-layout";
|
|
42
|
-
export {
|
|
43
|
-
useSettingsRoute,
|
|
44
|
-
/** @deprecated 0.52 — `useSettingsRoute`, which resolves the location with it (API-4); removed in 0.53 */
|
|
45
|
-
resolveSettingsLocation,
|
|
46
|
-
settingsFromListState,
|
|
47
|
-
/** @deprecated 0.52 — `settingsFromListState` and `useSettingsRoute`, which write and read it (API-4); removed in 0.53 */
|
|
48
|
-
SETTINGS_FROM_LIST_STATE,
|
|
49
|
-
} from "./settings/use-settings-route";
|
|
41
|
+
export { useSettingsRoute, settingsFromListState } from "./settings/use-settings-route";
|
|
50
42
|
export type {
|
|
51
43
|
UseSettingsRouteOptions,
|
|
52
44
|
SettingsRoute,
|
|
@@ -55,14 +47,7 @@ export type {
|
|
|
55
47
|
SettingsLocationRules,
|
|
56
48
|
SettingsLocationResult,
|
|
57
49
|
} from "./settings/use-settings-route";
|
|
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";
|
|
50
|
+
export { useSettingsFocus, useFocusParam } from "./settings/use-settings-focus";
|
|
66
51
|
export { SettingsSection } from "./settings/settings-section";
|
|
67
52
|
export type { SettingsSectionProps } from "./settings/settings-section";
|
|
68
53
|
export { useSettingsLayout } from "./settings/settings-context";
|
|
@@ -99,11 +84,7 @@ export type { PublicHeaderProps, PublicHeaderBrand } from "./landing/public-head
|
|
|
99
84
|
// 0.42.0: the top bar's shared parts (docs/top-bar-harmonization.md §3.1) — the slots in
|
|
100
85
|
// §2.1's order, the account menu's language sub-list, the tours menu, the sync status, the
|
|
101
86
|
// 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";
|
|
87
|
+
export { TopBarActions } from "./shell/top-bar-actions";
|
|
107
88
|
export type { TopBarActionsProps } from "./shell/top-bar-actions";
|
|
108
89
|
export { AccountMenuLanguage } from "./shell/account-menu-language";
|
|
109
90
|
export type { AccountMenuLanguageProps, AccountMenuLanguageOption } from "./shell/account-menu-language";
|
|
@@ -112,19 +93,11 @@ export { AccountMenuTextSize } from "./shell/account-menu-text-size";
|
|
|
112
93
|
export type { AccountMenuTextSizeProps } from "./shell/account-menu-text-size";
|
|
113
94
|
export { TourMenu } from "./shell/tour-menu";
|
|
114
95
|
export type { TourMenuProps, TourMenuTour } from "./shell/tour-menu";
|
|
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";
|
|
96
|
+
export { SyncStatusIndicator } from "./shell/sync-status-indicator";
|
|
120
97
|
export type { SyncStatus, SyncState, SyncStatusScope, SyncStatusIndicatorProps } from "./shell/sync-status-indicator";
|
|
121
98
|
// 0.51 (§2.7.1, keksdose): one flask, the kit's Account section and the app's own dev
|
|
122
99
|
// 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";
|
|
100
|
+
export { DevMenu } from "./shell/dev-menu";
|
|
128
101
|
export type { DevMenuProps, DevMenuSection } from "./shell/dev-menu";
|
|
129
102
|
export { DEFAULT_TOP_BAR_PARTS_LABELS, useTopBarPartsLabels } from "./shell/top-bar-parts-labels";
|
|
130
103
|
export type {
|