zabi-components 8.0.0 → 8.1.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/CHANGELOG.md +1924 -0
- package/README.md +243 -10
- package/THEME.md +149 -332
- package/THEMING.md +1192 -266
- package/dist/atoms/ActionPanel.svelte +15 -5
- package/dist/atoms/Avatar.svelte +104 -0
- package/dist/atoms/Avatar.svelte.d.ts +34 -0
- package/dist/atoms/Badge.svelte +36 -7
- package/dist/atoms/Badge.svelte.d.ts +2 -2
- package/dist/atoms/Button.svelte +177 -27
- package/dist/atoms/Button.svelte.d.ts +30 -2
- package/dist/atoms/Card.svelte +4 -4
- package/dist/atoms/CardHeader.svelte +16 -4
- package/dist/atoms/Checkbox.svelte +48 -21
- package/dist/atoms/Checkbox.svelte.d.ts +4 -2
- package/dist/atoms/CodeBlock.svelte +20 -2
- package/dist/atoms/CodeBlock.svelte.d.ts +4 -0
- package/dist/atoms/ColorPicker.svelte +259 -49
- package/dist/atoms/ColorPicker.svelte.d.ts +3 -0
- package/dist/atoms/Container.svelte +16 -8
- package/dist/atoms/DateField.svelte +107 -0
- package/dist/atoms/DateField.svelte.d.ts +53 -0
- package/dist/atoms/FieldMessages.svelte +69 -0
- package/dist/atoms/FieldMessages.svelte.d.ts +23 -0
- package/dist/atoms/FloatingActionButton.svelte +174 -0
- package/dist/atoms/FloatingActionButton.svelte.d.ts +51 -0
- package/dist/atoms/Heading.svelte +37 -5
- package/dist/atoms/Heading.svelte.d.ts +7 -0
- package/dist/atoms/IconButton.svelte +220 -24
- package/dist/atoms/IconButton.svelte.d.ts +49 -4
- package/dist/atoms/Input.svelte +253 -52
- package/dist/atoms/Input.svelte.d.ts +32 -2
- package/dist/atoms/List.svelte +4 -1
- package/dist/atoms/ListItem.svelte +44 -11
- package/dist/atoms/ListItem.svelte.d.ts +5 -0
- package/dist/atoms/Progress.svelte +27 -8
- package/dist/atoms/Progress.svelte.d.ts +4 -0
- package/dist/atoms/Radio.svelte +19 -3
- package/dist/atoms/Radio.svelte.d.ts +4 -2
- package/dist/atoms/Rating.svelte +494 -0
- package/dist/atoms/Rating.svelte.d.ts +56 -0
- package/dist/atoms/Select.svelte +433 -91
- package/dist/atoms/Select.svelte.d.ts +49 -3
- package/dist/atoms/SelectionControl.svelte +94 -17
- package/dist/atoms/SelectionControl.svelte.d.ts +4 -3
- package/dist/atoms/Skeleton.svelte +1 -1
- package/dist/atoms/Slider.svelte +309 -0
- package/dist/atoms/Slider.svelte.d.ts +40 -0
- package/dist/atoms/Spinner.svelte +57 -0
- package/dist/atoms/Spinner.svelte.d.ts +19 -0
- package/dist/atoms/Table.svelte +151 -6
- package/dist/atoms/Table.svelte.d.ts +15 -3
- package/dist/atoms/TemporalField.svelte +140 -0
- package/dist/atoms/TemporalField.svelte.d.ts +32 -0
- package/dist/atoms/Text.svelte +23 -11
- package/dist/atoms/Text.svelte.d.ts +6 -3
- package/dist/atoms/Textarea.svelte +55 -44
- package/dist/atoms/Textarea.svelte.d.ts +14 -2
- package/dist/atoms/ThemeToggle.svelte +223 -44
- package/dist/atoms/ThemeToggle.svelte.d.ts +26 -3
- package/dist/atoms/TimeField.svelte +108 -0
- package/dist/atoms/TimeField.svelte.d.ts +54 -0
- package/dist/atoms/Toast.svelte +17 -4
- package/dist/atoms/Toast.svelte.d.ts +2 -0
- package/dist/atoms/Toggle.svelte +41 -8
- package/dist/atoms/Toggle.svelte.d.ts +11 -2
- package/dist/atoms/Tooltip.svelte +508 -23
- package/dist/atoms/Tooltip.svelte.d.ts +11 -0
- package/dist/atoms/ZabiStringsProvider.svelte +45 -0
- package/dist/atoms/ZabiStringsProvider.svelte.d.ts +27 -0
- package/dist/atoms/index.d.ts +17 -0
- package/dist/atoms/index.js +12 -0
- package/dist/atoms/selection-control.styles.d.ts +36 -5
- package/dist/atoms/selection-control.styles.js +40 -9
- package/dist/components/atoms/index.d.ts +17 -0
- package/dist/components/atoms/index.d.ts.map +1 -1
- package/dist/components/atoms/selection-control.styles.d.ts +36 -5
- package/dist/components/atoms/selection-control.styles.d.ts.map +1 -1
- package/dist/components/index.d.ts +80 -2
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/molecules/index.d.ts +46 -0
- package/dist/components/molecules/index.d.ts.map +1 -1
- package/dist/components/molecules/toast-store.d.ts +53 -7
- package/dist/components/molecules/toast-store.d.ts.map +1 -1
- package/dist/components/organisms/index.d.ts +5 -0
- package/dist/components/organisms/index.d.ts.map +1 -1
- package/dist/components/types/variants.d.ts +15 -1
- package/dist/components/types/variants.d.ts.map +1 -1
- package/dist/components/util/app-shell.d.ts +28 -0
- package/dist/components/util/app-shell.d.ts.map +1 -0
- package/dist/components/util/avatar.d.ts +36 -0
- package/dist/components/util/avatar.d.ts.map +1 -0
- package/dist/components/util/bottom-sheet.d.ts +30 -0
- package/dist/components/util/bottom-sheet.d.ts.map +1 -0
- package/dist/components/util/bottom-tab-bar.d.ts +35 -0
- package/dist/components/util/bottom-tab-bar.d.ts.map +1 -0
- package/dist/components/util/calendar.d.ts +56 -0
- package/dist/components/util/calendar.d.ts.map +1 -0
- package/dist/components/util/collapsible.d.ts +58 -0
- package/dist/components/util/collapsible.d.ts.map +1 -0
- package/dist/components/util/confirm-dialog.d.ts +12 -0
- package/dist/components/util/confirm-dialog.d.ts.map +1 -0
- package/dist/components/util/date.d.ts +96 -0
- package/dist/components/util/date.d.ts.map +1 -0
- package/dist/components/util/drawer.d.ts +13 -0
- package/dist/components/util/drawer.d.ts.map +1 -0
- package/dist/components/util/dropdown.d.ts +47 -0
- package/dist/components/util/dropdown.d.ts.map +1 -0
- package/dist/components/util/field.d.ts +39 -0
- package/dist/components/util/field.d.ts.map +1 -0
- package/dist/components/util/fit-in-viewport.d.ts +201 -0
- package/dist/components/util/fit-in-viewport.d.ts.map +1 -0
- package/dist/components/util/focus-utils.d.ts +75 -2
- package/dist/components/util/focus-utils.d.ts.map +1 -1
- package/dist/components/util/hydration.d.ts +45 -0
- package/dist/components/util/hydration.d.ts.map +1 -0
- package/dist/components/util/keyboard-inset.d.ts +18 -0
- package/dist/components/util/keyboard-inset.d.ts.map +1 -0
- package/dist/components/util/media-grid.d.ts +51 -0
- package/dist/components/util/media-grid.d.ts.map +1 -0
- package/dist/components/util/media.d.ts +6 -0
- package/dist/components/util/media.d.ts.map +1 -0
- package/dist/components/util/overlay-chrome.d.ts +53 -0
- package/dist/components/util/overlay-chrome.d.ts.map +1 -0
- package/dist/components/util/overlay.d.ts +72 -0
- package/dist/components/util/overlay.d.ts.map +1 -0
- package/dist/components/util/photo.d.ts +215 -0
- package/dist/components/util/photo.d.ts.map +1 -0
- package/dist/components/util/portal.d.ts +23 -0
- package/dist/components/util/portal.d.ts.map +1 -0
- package/dist/components/util/pull-to-refresh.d.ts +27 -0
- package/dist/components/util/pull-to-refresh.d.ts.map +1 -0
- package/dist/components/util/radio-keys.d.ts +25 -0
- package/dist/components/util/radio-keys.d.ts.map +1 -0
- package/dist/components/util/rating.d.ts +23 -0
- package/dist/components/util/rating.d.ts.map +1 -0
- package/dist/components/util/ready-made-strings.d.ts +77 -0
- package/dist/components/util/ready-made-strings.d.ts.map +1 -0
- package/dist/components/util/scroll-padding.d.ts +20 -0
- package/dist/components/util/scroll-padding.d.ts.map +1 -0
- package/dist/components/util/segmented-control.d.ts +16 -0
- package/dist/components/util/segmented-control.d.ts.map +1 -0
- package/dist/components/util/select.d.ts +41 -0
- package/dist/components/util/select.d.ts.map +1 -0
- package/dist/components/util/sheet-drag.d.ts +60 -0
- package/dist/components/util/sheet-drag.d.ts.map +1 -0
- package/dist/components/util/sidebar.d.ts +63 -0
- package/dist/components/util/sidebar.d.ts.map +1 -0
- package/dist/components/util/sortable-list.d.ts +65 -0
- package/dist/components/util/sortable-list.d.ts.map +1 -0
- package/dist/components/util/stepper.d.ts +40 -0
- package/dist/components/util/stepper.d.ts.map +1 -0
- package/dist/components/util/swipeable-list-item.d.ts +36 -0
- package/dist/components/util/swipeable-list-item.d.ts.map +1 -0
- package/dist/components/util/theme-mode.d.ts +80 -0
- package/dist/components/util/theme-mode.d.ts.map +1 -0
- package/dist/components/util/toaster.d.ts +93 -0
- package/dist/components/util/toaster.d.ts.map +1 -0
- package/dist/components/util/tooltip.d.ts +10 -0
- package/dist/components/util/tooltip.d.ts.map +1 -0
- package/dist/components/util/top-navbar.d.ts +11 -0
- package/dist/components/util/top-navbar.d.ts.map +1 -0
- package/dist/components/util/touch-target.d.ts +31 -0
- package/dist/components/util/touch-target.d.ts.map +1 -0
- package/dist/components/util/zabi-strings.d.ts +133 -0
- package/dist/components/util/zabi-strings.d.ts.map +1 -0
- package/dist/create-theme/cli.js +169 -0
- package/dist/create-theme/index.d.ts +176 -0
- package/dist/create-theme/index.js +817 -0
- package/dist/create-theme/lib/ramp-math.js +128 -0
- package/dist/create-theme/lib/resolve.js +141 -0
- package/dist/create-theme/theme-data.js +1116 -0
- package/dist/index.d.ts +80 -2
- package/dist/index.js +57 -2
- package/dist/molecules/Alert.svelte +33 -5
- package/dist/molecules/Alert.svelte.d.ts +2 -0
- package/dist/molecules/AppBar.svelte +415 -0
- package/dist/molecules/AppBar.svelte.d.ts +69 -0
- package/dist/molecules/AvatarGroup.svelte +116 -0
- package/dist/molecules/AvatarGroup.svelte.d.ts +40 -0
- package/dist/molecules/BottomSheet.svelte +540 -0
- package/dist/molecules/BottomSheet.svelte.d.ts +93 -0
- package/dist/molecules/BottomTabBar.svelte +297 -0
- package/dist/molecules/BottomTabBar.svelte.d.ts +64 -0
- package/dist/molecules/Calendar.svelte +597 -0
- package/dist/molecules/Calendar.svelte.d.ts +72 -0
- package/dist/molecules/Collapsible.svelte +243 -0
- package/dist/molecules/Collapsible.svelte.d.ts +44 -0
- package/dist/molecules/CollapsibleGroup.svelte +126 -0
- package/dist/molecules/CollapsibleGroup.svelte.d.ts +14 -0
- package/dist/molecules/ComponentDemo.svelte +16 -4
- package/dist/molecules/ComponentDemo.svelte.d.ts +3 -0
- package/dist/molecules/ConfirmDialog.svelte +253 -0
- package/dist/molecules/ConfirmDialog.svelte.d.ts +55 -0
- package/dist/molecules/ContactForm.svelte +34 -17
- package/dist/molecules/ContactForm.svelte.d.ts +8 -0
- package/dist/molecules/Drawer.svelte +394 -0
- package/dist/molecules/Drawer.svelte.d.ts +55 -0
- package/dist/molecules/Dropdown.svelte +509 -48
- package/dist/molecules/Dropdown.svelte.d.ts +45 -6
- package/dist/molecules/DropdownItem.svelte +122 -0
- package/dist/molecules/DropdownItem.svelte.d.ts +28 -0
- package/dist/molecules/EmptyState.svelte +55 -10
- package/dist/molecules/EmptyState.svelte.d.ts +8 -0
- package/dist/molecules/FormField.svelte +9 -1
- package/dist/molecules/FormField.svelte.d.ts +2 -0
- package/dist/molecules/Header.svelte +1 -1
- package/dist/molecules/ImageUpload.svelte +383 -70
- package/dist/molecules/ImageUpload.svelte.d.ts +47 -2
- package/dist/molecules/MediaGrid.svelte +527 -0
- package/dist/molecules/MediaGrid.svelte.d.ts +77 -0
- package/dist/molecules/Modal.svelte +288 -72
- package/dist/molecules/Modal.svelte.d.ts +51 -2
- package/dist/molecules/NavigationMenuContent.svelte +58 -1
- package/dist/molecules/NavigationMenuItem.svelte +0 -1
- package/dist/molecules/NavigationMenuLink.svelte +1 -1
- package/dist/molecules/NavigationMenuList.svelte +10 -3
- package/dist/molecules/NavigationMenuTrigger.svelte +2 -2
- package/dist/molecules/Page.svelte +32 -2
- package/dist/molecules/Page.svelte.d.ts +11 -0
- package/dist/molecules/PhotoGrid.svelte +433 -0
- package/dist/molecules/PhotoGrid.svelte.d.ts +62 -0
- package/dist/molecules/PhotoViewer.svelte +1116 -0
- package/dist/molecules/PhotoViewer.svelte.d.ts +56 -0
- package/dist/molecules/PropsTable.svelte +22 -10
- package/dist/molecules/PropsTable.svelte.d.ts +3 -0
- package/dist/molecules/PullToRefresh.svelte +263 -0
- package/dist/molecules/PullToRefresh.svelte.d.ts +52 -0
- package/dist/molecules/RadioGroup.svelte +52 -14
- package/dist/molecules/RadioGroup.svelte.d.ts +14 -3
- package/dist/molecules/Section.svelte +1 -1
- package/dist/molecules/SegmentedControl.svelte +323 -0
- package/dist/molecules/SegmentedControl.svelte.d.ts +34 -0
- package/dist/molecules/SidebarBrandHeader.svelte +11 -1
- package/dist/molecules/SidebarBrandHeader.svelte.d.ts +3 -0
- package/dist/molecules/SidebarFooter.svelte +29 -6
- package/dist/molecules/SidebarFooter.svelte.d.ts +3 -0
- package/dist/molecules/SlideUp.svelte +220 -61
- package/dist/molecules/SlideUp.svelte.d.ts +26 -0
- package/dist/molecules/SortableList.svelte +632 -0
- package/dist/molecules/SortableList.svelte.d.ts +69 -0
- package/dist/molecules/Stepper.svelte +548 -0
- package/dist/molecules/Stepper.svelte.d.ts +39 -0
- package/dist/molecules/StickyActionBar.svelte +191 -0
- package/dist/molecules/StickyActionBar.svelte.d.ts +65 -0
- package/dist/molecules/SwipeableListItem.svelte +334 -0
- package/dist/molecules/SwipeableListItem.svelte.d.ts +54 -0
- package/dist/molecules/Tabs.svelte +233 -9
- package/dist/molecules/Tabs.svelte.d.ts +7 -0
- package/dist/molecules/Toaster.svelte +350 -5
- package/dist/molecules/Toaster.svelte.d.ts +95 -2
- package/dist/molecules/ToasterToast.svelte +253 -67
- package/dist/molecules/ToasterToast.svelte.d.ts +9 -0
- package/dist/molecules/UnsavedChangesBar.svelte +212 -0
- package/dist/molecules/UnsavedChangesBar.svelte.d.ts +43 -0
- package/dist/molecules/index.d.ts +46 -0
- package/dist/molecules/index.js +27 -0
- package/dist/molecules/toast-store.d.ts +53 -7
- package/dist/molecules/toast-store.js +21 -0
- package/dist/organisms/AppShell.svelte +196 -0
- package/dist/organisms/AppShell.svelte.d.ts +61 -0
- package/dist/organisms/SidebarAccountPanel.svelte +107 -12
- package/dist/organisms/SidebarAccountPanel.svelte.d.ts +19 -0
- package/dist/organisms/SidebarNavigation.svelte +96 -15
- package/dist/organisms/SidebarNavigation.svelte.d.ts +29 -1
- package/dist/organisms/SidebarPanel.svelte +31 -10
- package/dist/organisms/SidebarShell.svelte +162 -11
- package/dist/organisms/SidebarShell.svelte.d.ts +56 -2
- package/dist/organisms/TopNavbar.svelte +256 -31
- package/dist/organisms/TopNavbar.svelte.d.ts +26 -0
- package/dist/organisms/index.d.ts +5 -0
- package/dist/organisms/index.js +3 -0
- package/dist/types/components.d.ts +4 -0
- package/dist/types/components.d.ts.map +1 -1
- package/dist/types/index.d.ts +605 -25
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/variants.ts +17 -1
- package/dist/util/app-shell.d.ts +27 -0
- package/dist/util/app-shell.js +72 -0
- package/dist/util/avatar.d.ts +35 -0
- package/dist/util/avatar.js +52 -0
- package/dist/util/bottom-sheet.d.ts +29 -0
- package/dist/util/bottom-sheet.js +43 -0
- package/dist/util/bottom-tab-bar.d.ts +34 -0
- package/dist/util/bottom-tab-bar.js +54 -0
- package/dist/util/calendar.d.ts +55 -0
- package/dist/util/calendar.js +74 -0
- package/dist/util/collapsible.d.ts +57 -0
- package/dist/util/collapsible.js +23 -0
- package/dist/util/confirm-dialog.d.ts +11 -0
- package/dist/util/confirm-dialog.js +2 -0
- package/dist/util/date.d.ts +95 -0
- package/dist/util/date.js +237 -0
- package/dist/util/drawer.d.ts +12 -0
- package/dist/util/drawer.js +7 -0
- package/dist/util/dropdown.d.ts +46 -0
- package/dist/util/dropdown.js +21 -0
- package/dist/util/field.d.ts +38 -0
- package/dist/util/field.js +38 -0
- package/dist/util/fit-in-viewport.d.ts +200 -0
- package/dist/util/fit-in-viewport.js +399 -0
- package/dist/util/focus-utils.d.ts +75 -2
- package/dist/util/focus-utils.js +182 -9
- package/dist/util/hydration.d.ts +44 -0
- package/dist/util/hydration.js +58 -0
- package/dist/util/keyboard-inset.d.ts +17 -0
- package/dist/util/keyboard-inset.js +53 -0
- package/dist/util/media-grid.d.ts +50 -0
- package/dist/util/media-grid.js +81 -0
- package/dist/util/media.d.ts +5 -0
- package/dist/util/media.js +10 -0
- package/dist/util/overlay-chrome.d.ts +52 -0
- package/dist/util/overlay-chrome.js +56 -0
- package/dist/util/overlay.d.ts +71 -0
- package/dist/util/overlay.js +240 -0
- package/dist/util/photo.d.ts +214 -0
- package/dist/util/photo.js +206 -0
- package/dist/util/portal.d.ts +22 -0
- package/dist/util/portal.js +50 -0
- package/dist/util/pull-to-refresh.d.ts +26 -0
- package/dist/util/pull-to-refresh.js +30 -0
- package/dist/util/radio-keys.d.ts +24 -0
- package/dist/util/radio-keys.js +49 -0
- package/dist/util/rating.d.ts +22 -0
- package/dist/util/rating.js +26 -0
- package/dist/util/ready-made-strings.d.ts +76 -0
- package/dist/util/ready-made-strings.js +67 -0
- package/dist/util/scroll-padding.d.ts +19 -0
- package/dist/util/scroll-padding.js +44 -0
- package/dist/util/segmented-control.d.ts +15 -0
- package/dist/util/segmented-control.js +1 -0
- package/dist/util/select.d.ts +40 -0
- package/dist/util/select.js +63 -0
- package/dist/util/sheet-drag.d.ts +59 -0
- package/dist/util/sheet-drag.js +241 -0
- package/dist/util/sidebar.d.ts +62 -0
- package/dist/util/sidebar.js +38 -0
- package/dist/util/sortable-list.d.ts +64 -0
- package/dist/util/sortable-list.js +53 -0
- package/dist/util/stepper.d.ts +39 -0
- package/dist/util/stepper.js +38 -0
- package/dist/util/swipeable-list-item.d.ts +35 -0
- package/dist/util/swipeable-list-item.js +32 -0
- package/dist/util/theme-mode.d.ts +79 -0
- package/dist/util/theme-mode.js +121 -0
- package/dist/util/toaster.d.ts +92 -0
- package/dist/util/toaster.js +75 -0
- package/dist/util/tooltip.d.ts +9 -0
- package/dist/util/tooltip.js +18 -0
- package/dist/util/top-navbar.d.ts +10 -0
- package/dist/util/top-navbar.js +5 -0
- package/dist/util/touch-target.d.ts +30 -0
- package/dist/util/touch-target.js +30 -0
- package/dist/util/zabi-strings.d.ts +132 -0
- package/dist/util/zabi-strings.js +105 -0
- package/dist/zabi-components-colors.css +5 -2
- package/dist/zabi-components-theme-dark-only.css +543 -241
- package/dist/zabi-components-theme-dark.css +543 -241
- package/dist/zabi-components-theme-only.css +1584 -367
- package/dist/zabi-components-theme.css +1584 -367
- package/dist/zabi-components.css +3885 -518
- package/docs/lucide-icons.md +40 -17
- package/docs/theme-imports.md +81 -11
- package/package.json +35 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types/variants.ts
CHANGED
|
@@ -21,7 +21,23 @@ export type ExtendedSemanticVariant = SemanticVariant | 'neutral' | 'energetic';
|
|
|
21
21
|
* Button style variants - used for different button styles
|
|
22
22
|
* These are style-based variants, not semantic color variants
|
|
23
23
|
*/
|
|
24
|
-
export type ButtonVariant = 'primary' | 'secondary' | 'danger' | 'ghost' | 'outline' | 'link';
|
|
24
|
+
export type ButtonVariant = 'primary' | 'secondary' | 'danger' | 'ghost' | 'outline' | 'link' | 'accent';
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Badge variants: the semantic families, and `accent`, the app's second brand
|
|
28
|
+
* colour (`--color-accent`). `energetic` is a family of its own and stays on
|
|
29
|
+
* the library's citron when an app changes its accent.
|
|
30
|
+
*/
|
|
31
|
+
export type BadgeVariant = ExtendedSemanticVariant | 'accent';
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Text colour of a Heading or Text that sits on a filled block.
|
|
35
|
+
* - `inherit`: the block's own text colour (`currentColor`), for a block that
|
|
36
|
+
* sets one, such as `class="bg-action-primary text-on-brand"`.
|
|
37
|
+
* - `on-brand` / `on-accent`: the label colour of the primary and of the solid
|
|
38
|
+
* accent fill (`--color-on-brand`, `--color-on-accent`).
|
|
39
|
+
*/
|
|
40
|
+
export type OnFillTone = 'inherit' | 'on-brand' | 'on-accent';
|
|
25
41
|
|
|
26
42
|
/**
|
|
27
43
|
* Card style variants - used for different card appearances
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/** Shared by `AppShell` and the bars that go in it (`AppBar`, `BottomTabBar`). */
|
|
2
|
+
/** Called by `AppShell`, so the bars inside it know the shell lays them out. */
|
|
3
|
+
export declare function markAppShell(): void;
|
|
4
|
+
/** True for a component rendered inside an `AppShell`. */
|
|
5
|
+
export declare function isInsideAppShell(): boolean;
|
|
6
|
+
/**
|
|
7
|
+
* The nearest ancestor that scrolls vertically, or null when that is the
|
|
8
|
+
* window. `AppShell` scrolls a container of its own; a page without it
|
|
9
|
+
* scrolls the window.
|
|
10
|
+
*/
|
|
11
|
+
export declare function findScrollParent(element: HTMLElement): HTMLElement | null;
|
|
12
|
+
/** True in a development build of a Vite app; false wherever that cannot be told. */
|
|
13
|
+
export declare function isDevBuild(): boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Mirrors a shell's two inset properties onto `<html>` while it is mounted,
|
|
16
|
+
* so what is rendered outside the shell (an overlay moved to `document.body`,
|
|
17
|
+
* a toast) can stay clear of its bars too. With several shells mounted the
|
|
18
|
+
* one mounted last is the one mirrored; when it goes, the one before it is
|
|
19
|
+
* again, and with none left the properties are removed.
|
|
20
|
+
*
|
|
21
|
+
* Call it in the browser when the shell mounts. `update` reports new values;
|
|
22
|
+
* `leave` is for when the shell is destroyed.
|
|
23
|
+
*/
|
|
24
|
+
export declare function publishAppShellInsets(top: string, bottom: string): {
|
|
25
|
+
update: (top: string, bottom: string) => void;
|
|
26
|
+
leave: () => void;
|
|
27
|
+
};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/** Shared by `AppShell` and the bars that go in it (`AppBar`, `BottomTabBar`). */
|
|
2
|
+
import { getContext, setContext } from "svelte";
|
|
3
|
+
const APP_SHELL_CONTEXT = Symbol.for("zabi-components.app-shell");
|
|
4
|
+
/** Called by `AppShell`, so the bars inside it know the shell lays them out. */
|
|
5
|
+
export function markAppShell() {
|
|
6
|
+
setContext(APP_SHELL_CONTEXT, true);
|
|
7
|
+
}
|
|
8
|
+
/** True for a component rendered inside an `AppShell`. */
|
|
9
|
+
export function isInsideAppShell() {
|
|
10
|
+
return getContext(APP_SHELL_CONTEXT) === true;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* The nearest ancestor that scrolls vertically, or null when that is the
|
|
14
|
+
* window. `AppShell` scrolls a container of its own; a page without it
|
|
15
|
+
* scrolls the window.
|
|
16
|
+
*/
|
|
17
|
+
export function findScrollParent(element) {
|
|
18
|
+
for (let node = element.parentElement; node; node = node.parentElement) {
|
|
19
|
+
if (node === document.body || node === document.documentElement)
|
|
20
|
+
return null;
|
|
21
|
+
const overflow = getComputedStyle(node).overflowY;
|
|
22
|
+
if (overflow === "auto" || overflow === "scroll" || overflow === "overlay")
|
|
23
|
+
return node;
|
|
24
|
+
}
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
/** True in a development build of a Vite app; false wherever that cannot be told. */
|
|
28
|
+
export function isDevBuild() {
|
|
29
|
+
return Boolean(import.meta.env?.DEV);
|
|
30
|
+
}
|
|
31
|
+
/** The shells that are mounted, oldest first, with the insets each last reported. */
|
|
32
|
+
const mountedShells = [];
|
|
33
|
+
function applyRootInsets() {
|
|
34
|
+
const root = document.documentElement;
|
|
35
|
+
const current = mountedShells[mountedShells.length - 1];
|
|
36
|
+
if (current) {
|
|
37
|
+
root.style.setProperty("--app-shell-top-inset", current.top);
|
|
38
|
+
root.style.setProperty("--app-shell-bottom-inset", current.bottom);
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
root.style.removeProperty("--app-shell-top-inset");
|
|
42
|
+
root.style.removeProperty("--app-shell-bottom-inset");
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Mirrors a shell's two inset properties onto `<html>` while it is mounted,
|
|
47
|
+
* so what is rendered outside the shell (an overlay moved to `document.body`,
|
|
48
|
+
* a toast) can stay clear of its bars too. With several shells mounted the
|
|
49
|
+
* one mounted last is the one mirrored; when it goes, the one before it is
|
|
50
|
+
* again, and with none left the properties are removed.
|
|
51
|
+
*
|
|
52
|
+
* Call it in the browser when the shell mounts. `update` reports new values;
|
|
53
|
+
* `leave` is for when the shell is destroyed.
|
|
54
|
+
*/
|
|
55
|
+
export function publishAppShellInsets(top, bottom) {
|
|
56
|
+
const entry = { top, bottom };
|
|
57
|
+
mountedShells.push(entry);
|
|
58
|
+
applyRootInsets();
|
|
59
|
+
return {
|
|
60
|
+
update(nextTop, nextBottom) {
|
|
61
|
+
entry.top = nextTop;
|
|
62
|
+
entry.bottom = nextBottom;
|
|
63
|
+
applyRootInsets();
|
|
64
|
+
},
|
|
65
|
+
leave() {
|
|
66
|
+
const index = mountedShells.indexOf(entry);
|
|
67
|
+
if (index !== -1)
|
|
68
|
+
mountedShells.splice(index, 1);
|
|
69
|
+
applyRootInsets();
|
|
70
|
+
},
|
|
71
|
+
};
|
|
72
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/** Types and pure helpers for `Avatar` and `AvatarGroup`. Kept out of the components so they can be tested without a DOM. */
|
|
2
|
+
/** Diameter of the circle: 24, 32 and 48px. */
|
|
3
|
+
export type AvatarSize = "sm" | "md" | "lg";
|
|
4
|
+
/** One person in an `AvatarGroup`. */
|
|
5
|
+
export interface AvatarPerson {
|
|
6
|
+
name: string;
|
|
7
|
+
/** Address of the picture. Without it, or when it fails to load, the initials show. */
|
|
8
|
+
src?: string;
|
|
9
|
+
}
|
|
10
|
+
/** Every built-in string of `AvatarGroup`. Pass a partial object to `strings` to translate. */
|
|
11
|
+
export interface AvatarGroupStrings {
|
|
12
|
+
/**
|
|
13
|
+
* Accessible name of the "+3" at the end: how many people are not shown,
|
|
14
|
+
* and their names, for an app that wants to read them out.
|
|
15
|
+
*/
|
|
16
|
+
more: (count: number, names: string[]) => string;
|
|
17
|
+
}
|
|
18
|
+
export declare const DEFAULT_AVATAR_GROUP_STRINGS: AvatarGroupStrings;
|
|
19
|
+
/**
|
|
20
|
+
* The initials shown for `name`: the first letter of its first word and of
|
|
21
|
+
* its last, upper-cased for `locale`; one letter for a name of one word; `""`
|
|
22
|
+
* for a name with no words, which is drawn as an icon and never as "?".
|
|
23
|
+
*/
|
|
24
|
+
export declare function initialsOf(name: string | null | undefined, locale?: string): string;
|
|
25
|
+
/**
|
|
26
|
+
* How an `AvatarGroup` of `total` people splits at `max`: how many are
|
|
27
|
+
* shown, and how many stand behind the "+N".
|
|
28
|
+
*
|
|
29
|
+
* `max` below 1 is 1. One person too many is shown and not counted: a "+1"
|
|
30
|
+
* takes the room of the person it hides.
|
|
31
|
+
*/
|
|
32
|
+
export declare function splitGroup(total: number, max: number): {
|
|
33
|
+
shown: number;
|
|
34
|
+
hidden: number;
|
|
35
|
+
};
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/** Types and pure helpers for `Avatar` and `AvatarGroup`. Kept out of the components so they can be tested without a DOM. */
|
|
2
|
+
export const DEFAULT_AVATAR_GROUP_STRINGS = {
|
|
3
|
+
more: (count) => `and ${count} more`,
|
|
4
|
+
};
|
|
5
|
+
/** `locale` when the runtime takes it as a language tag; otherwise `undefined`, which is the runtime's own. */
|
|
6
|
+
function knownLocale(locale) {
|
|
7
|
+
if (!locale)
|
|
8
|
+
return undefined;
|
|
9
|
+
try {
|
|
10
|
+
return Intl.getCanonicalLocales(locale)[0];
|
|
11
|
+
}
|
|
12
|
+
catch {
|
|
13
|
+
return undefined;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
/** The first user-perceived character of `word`: a letter with its accents, or an emoji, whole. */
|
|
17
|
+
function firstGrapheme(word, locale) {
|
|
18
|
+
if (typeof Intl !== "undefined" && "Segmenter" in Intl) {
|
|
19
|
+
const segments = new Intl.Segmenter(locale, { granularity: "grapheme" }).segment(word);
|
|
20
|
+
for (const { segment } of segments)
|
|
21
|
+
return segment;
|
|
22
|
+
return "";
|
|
23
|
+
}
|
|
24
|
+
// Code points, at least: a surrogate pair is not cut in half.
|
|
25
|
+
return Array.from(word)[0] ?? "";
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* The initials shown for `name`: the first letter of its first word and of
|
|
29
|
+
* its last, upper-cased for `locale`; one letter for a name of one word; `""`
|
|
30
|
+
* for a name with no words, which is drawn as an icon and never as "?".
|
|
31
|
+
*/
|
|
32
|
+
export function initialsOf(name, locale) {
|
|
33
|
+
const words = (name ?? "").trim().split(/\s+/).filter(Boolean);
|
|
34
|
+
if (words.length === 0)
|
|
35
|
+
return "";
|
|
36
|
+
const picked = words.length === 1 ? [words[0]] : [words[0], words[words.length - 1]];
|
|
37
|
+
const language = knownLocale(locale);
|
|
38
|
+
return picked.map((word) => firstGrapheme(word, language).toLocaleUpperCase(language)).join("");
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* How an `AvatarGroup` of `total` people splits at `max`: how many are
|
|
42
|
+
* shown, and how many stand behind the "+N".
|
|
43
|
+
*
|
|
44
|
+
* `max` below 1 is 1. One person too many is shown and not counted: a "+1"
|
|
45
|
+
* takes the room of the person it hides.
|
|
46
|
+
*/
|
|
47
|
+
export function splitGroup(total, max) {
|
|
48
|
+
const limit = Number.isFinite(max) ? Math.max(1, Math.floor(max)) : 4;
|
|
49
|
+
if (total <= limit + 1)
|
|
50
|
+
return { shown: total, hidden: 0 };
|
|
51
|
+
return { shown: limit, hidden: total - limit };
|
|
52
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/** Public types and pure helpers for `BottomSheet`. */
|
|
2
|
+
/** A height the sheet rests at: half the screen, or all of it below the status bar. */
|
|
3
|
+
export type BottomSheetSnap = "half" | "full";
|
|
4
|
+
/** What the user did to close the sheet. `swipe` is a drag or flick downwards. */
|
|
5
|
+
export type BottomSheetCloseReason = "escape" | "backdrop" | "close-button" | "swipe";
|
|
6
|
+
/** The snap points in use, lowest first, without repeats or unknown values. */
|
|
7
|
+
export declare function normaliseSnapPoints(points: readonly BottomSheetSnap[] | undefined): BottomSheetSnap[];
|
|
8
|
+
/**
|
|
9
|
+
* Where the grip's button takes the sheet: up a step, and from the top back
|
|
10
|
+
* down. Null when there is only one snap point, so nowhere to go.
|
|
11
|
+
*/
|
|
12
|
+
export declare function nextSnap(points: readonly BottomSheetSnap[], current: BottomSheetSnap): BottomSheetSnap | null;
|
|
13
|
+
/**
|
|
14
|
+
* Where a released sheet settles. `heights` are the px heights of the snap
|
|
15
|
+
* points, lowest first; `height` is how much of the sheet shows at release.
|
|
16
|
+
* A flick goes one step in its direction from where the drag began; a slow
|
|
17
|
+
* release goes to whatever is nearest, with "closed" at height 0.
|
|
18
|
+
*
|
|
19
|
+
* Returns the index into `heights`, or -1 for closed.
|
|
20
|
+
*/
|
|
21
|
+
export declare function settleSnap(options: {
|
|
22
|
+
heights: readonly number[];
|
|
23
|
+
startIndex: number;
|
|
24
|
+
height: number;
|
|
25
|
+
/** px per ms, positive is down. */
|
|
26
|
+
velocity: number;
|
|
27
|
+
flick: number;
|
|
28
|
+
canClose: boolean;
|
|
29
|
+
}): number;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/** Public types and pure helpers for `BottomSheet`. */
|
|
2
|
+
const ORDER = ["half", "full"];
|
|
3
|
+
/** The snap points in use, lowest first, without repeats or unknown values. */
|
|
4
|
+
export function normaliseSnapPoints(points) {
|
|
5
|
+
const wanted = ORDER.filter((point) => points?.includes(point));
|
|
6
|
+
return wanted.length > 0 ? wanted : [...ORDER];
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Where the grip's button takes the sheet: up a step, and from the top back
|
|
10
|
+
* down. Null when there is only one snap point, so nowhere to go.
|
|
11
|
+
*/
|
|
12
|
+
export function nextSnap(points, current) {
|
|
13
|
+
if (points.length < 2)
|
|
14
|
+
return null;
|
|
15
|
+
const index = points.indexOf(current);
|
|
16
|
+
return index === points.length - 1 ? points[index - 1] : points[index + 1];
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Where a released sheet settles. `heights` are the px heights of the snap
|
|
20
|
+
* points, lowest first; `height` is how much of the sheet shows at release.
|
|
21
|
+
* A flick goes one step in its direction from where the drag began; a slow
|
|
22
|
+
* release goes to whatever is nearest, with "closed" at height 0.
|
|
23
|
+
*
|
|
24
|
+
* Returns the index into `heights`, or -1 for closed.
|
|
25
|
+
*/
|
|
26
|
+
export function settleSnap(options) {
|
|
27
|
+
const { heights, startIndex, height, velocity, flick, canClose } = options;
|
|
28
|
+
const lowest = canClose ? -1 : 0;
|
|
29
|
+
if (velocity >= flick)
|
|
30
|
+
return Math.max(lowest, startIndex - 1);
|
|
31
|
+
if (velocity <= -flick)
|
|
32
|
+
return Math.min(heights.length - 1, startIndex + 1);
|
|
33
|
+
let best = canClose ? -1 : 0;
|
|
34
|
+
let bestDistance = canClose ? Math.abs(height) : Math.abs(height - heights[0]);
|
|
35
|
+
heights.forEach((candidate, index) => {
|
|
36
|
+
const distance = Math.abs(height - candidate);
|
|
37
|
+
if (distance < bestDistance) {
|
|
38
|
+
best = index;
|
|
39
|
+
bestDistance = distance;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
return best;
|
|
43
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/** Public types and pure helpers for `BottomTabBar`. */
|
|
2
|
+
import type { Component } from "svelte";
|
|
3
|
+
/** An icon component, as `@lucide/svelte` icons are. */
|
|
4
|
+
export type BottomTabBarIcon = Component<{
|
|
5
|
+
size?: number;
|
|
6
|
+
class?: string;
|
|
7
|
+
}>;
|
|
8
|
+
/** One destination in the bar. */
|
|
9
|
+
export interface BottomTabBarItem {
|
|
10
|
+
/** Where the tab goes. Also its identity: `active` is compared with it. */
|
|
11
|
+
href: string;
|
|
12
|
+
/** Shown under the icon. Keep it to one short word. */
|
|
13
|
+
label: string;
|
|
14
|
+
/** Rendered above the label, at 24px. Decorative: the label names the tab. */
|
|
15
|
+
icon: BottomTabBarIcon;
|
|
16
|
+
/** A count shown on the icon. Nothing is shown for 0 or when it is left out. */
|
|
17
|
+
badge?: number;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Whether `current` is the tab's page or a page under it. The same rule as
|
|
21
|
+
* `TopNavbar`: a prefix match on whole path segments, except that `/` and
|
|
22
|
+
* absolute URLs only match exactly.
|
|
23
|
+
*/
|
|
24
|
+
export declare function tabMatchesPath(href: string, current: string): boolean;
|
|
25
|
+
/**
|
|
26
|
+
* The href of the one active tab, or undefined when none matches. When
|
|
27
|
+
* several match (`/quiz` and `/quiz/live` on `/quiz/live/3`), the most
|
|
28
|
+
* specific wins, so there is never more than one current page.
|
|
29
|
+
*/
|
|
30
|
+
export declare function activeTabHref(items: readonly BottomTabBarItem[], current: string | undefined): string | undefined;
|
|
31
|
+
/** How a badge is read out after the tab's label: "Notifications, 3 new". */
|
|
32
|
+
export declare function defaultBadgeLabel(count: number): string;
|
|
33
|
+
/** The number as shown on the badge: `99+` above the cap. */
|
|
34
|
+
export declare function badgeText(count: number, max: number): string;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/** Public types and pure helpers for `BottomTabBar`. */
|
|
2
|
+
/** The path of an href: no query, no hash, no trailing slash (except the root). */
|
|
3
|
+
function pathOf(href) {
|
|
4
|
+
const path = href.split(/[?#]/)[0];
|
|
5
|
+
return path.length > 1 && path.endsWith("/") ? path.slice(0, -1) : path;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Whether `current` is the tab's page or a page under it. The same rule as
|
|
9
|
+
* `TopNavbar`: a prefix match on whole path segments, except that `/` and
|
|
10
|
+
* absolute URLs only match exactly.
|
|
11
|
+
*/
|
|
12
|
+
export function tabMatchesPath(href, current) {
|
|
13
|
+
if (!current)
|
|
14
|
+
return false;
|
|
15
|
+
if (href === current)
|
|
16
|
+
return true;
|
|
17
|
+
if (/^https?:\/\//.test(href))
|
|
18
|
+
return false;
|
|
19
|
+
const tab = pathOf(href);
|
|
20
|
+
const path = pathOf(current);
|
|
21
|
+
// An href with no path of its own (`#top`, `?tab=2`) has no pages under it.
|
|
22
|
+
if (tab === "")
|
|
23
|
+
return false;
|
|
24
|
+
if (tab === "/")
|
|
25
|
+
return path === "/";
|
|
26
|
+
return path === tab || path.startsWith(`${tab}/`);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* The href of the one active tab, or undefined when none matches. When
|
|
30
|
+
* several match (`/quiz` and `/quiz/live` on `/quiz/live/3`), the most
|
|
31
|
+
* specific wins, so there is never more than one current page.
|
|
32
|
+
*/
|
|
33
|
+
export function activeTabHref(items, current) {
|
|
34
|
+
if (!current)
|
|
35
|
+
return undefined;
|
|
36
|
+
let best;
|
|
37
|
+
for (const item of items) {
|
|
38
|
+
if (item.href === current)
|
|
39
|
+
return item.href;
|
|
40
|
+
if (!tabMatchesPath(item.href, current))
|
|
41
|
+
continue;
|
|
42
|
+
if (!best || pathOf(item.href).length > pathOf(best.href).length)
|
|
43
|
+
best = item;
|
|
44
|
+
}
|
|
45
|
+
return best?.href;
|
|
46
|
+
}
|
|
47
|
+
/** How a badge is read out after the tab's label: "Notifications, 3 new". */
|
|
48
|
+
export function defaultBadgeLabel(count) {
|
|
49
|
+
return `${count} new`;
|
|
50
|
+
}
|
|
51
|
+
/** The number as shown on the badge: `99+` above the cap. */
|
|
52
|
+
export function badgeText(count, max) {
|
|
53
|
+
return count > max ? `${max}+` : String(count);
|
|
54
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/** Public types and pure helpers for `Calendar`. */
|
|
2
|
+
/** The colour of an event's dot. `default` is the primary action colour. */
|
|
3
|
+
export type CalendarTone = "default" | "success" | "warning" | "danger" | "accent";
|
|
4
|
+
/** Something that happens on a day. */
|
|
5
|
+
export interface CalendarEvent {
|
|
6
|
+
/** The day, as `YYYY-MM-DD`. */
|
|
7
|
+
date: string;
|
|
8
|
+
/** What it is. Not shown in the grid; read out with the day. */
|
|
9
|
+
label: string;
|
|
10
|
+
tone?: CalendarTone;
|
|
11
|
+
}
|
|
12
|
+
/** The words the calendar says. Replace any of them to translate. */
|
|
13
|
+
export interface CalendarStrings {
|
|
14
|
+
/** Accessible name of the button that goes a month back. */
|
|
15
|
+
previousMonth: string;
|
|
16
|
+
/** Accessible name of the button that goes a month forward. */
|
|
17
|
+
nextMonth: string;
|
|
18
|
+
/** Added to the name of today's date. */
|
|
19
|
+
today: string;
|
|
20
|
+
/** Added to the name of the selected date. */
|
|
21
|
+
selected: string;
|
|
22
|
+
/** Added to the name of a date that cannot be selected. */
|
|
23
|
+
unavailable: string;
|
|
24
|
+
/** The events part of a day's name. Called only for a day that has events. */
|
|
25
|
+
events: (events: CalendarEvent[]) => string;
|
|
26
|
+
}
|
|
27
|
+
export declare const DEFAULT_CALENDAR_STRINGS: CalendarStrings;
|
|
28
|
+
/** How many dots a day shows at most. The name of the day still counts every event. */
|
|
29
|
+
export declare const MAX_EVENT_DOTS = 3;
|
|
30
|
+
/**
|
|
31
|
+
* The accessible name of a day: the full date, then what is true of it, then
|
|
32
|
+
* its events. "Tuesday 6 October 2026, today, selected, 2 events: Quiz at The
|
|
33
|
+
* Crown, Music quiz".
|
|
34
|
+
*/
|
|
35
|
+
export declare function calendarDayName(fullDate: string, state: {
|
|
36
|
+
today: boolean;
|
|
37
|
+
selected: boolean;
|
|
38
|
+
disabled: boolean;
|
|
39
|
+
events: CalendarEvent[];
|
|
40
|
+
}, strings: CalendarStrings): string;
|
|
41
|
+
/**
|
|
42
|
+
* Where a key takes focus from `date`, by the date-grid pattern: the arrows by
|
|
43
|
+
* a day and a week, Home and End to the ends of the week, Page Up and Page
|
|
44
|
+
* Down by a month, and by a year with Shift. Left and Right swap in a
|
|
45
|
+
* right-to-left layout, where the next day is on the left.
|
|
46
|
+
*
|
|
47
|
+
* Returns null for a key that does not move, or a move past year 1 or 9999.
|
|
48
|
+
*/
|
|
49
|
+
export declare function calendarKeyTarget(key: string, date: string, options?: {
|
|
50
|
+
shift?: boolean;
|
|
51
|
+
rtl?: boolean;
|
|
52
|
+
weekStartsOn?: number;
|
|
53
|
+
}): string | null;
|
|
54
|
+
/** The events of each day, in the order given. */
|
|
55
|
+
export declare function groupEventsByDate(events: readonly CalendarEvent[]): Map<string, CalendarEvent[]>;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/** Public types and pure helpers for `Calendar`. */
|
|
2
|
+
import { addDays, addMonths, endOfWeek, startOfWeek } from "./date.js";
|
|
3
|
+
export const DEFAULT_CALENDAR_STRINGS = {
|
|
4
|
+
previousMonth: "Previous month",
|
|
5
|
+
nextMonth: "Next month",
|
|
6
|
+
today: "today",
|
|
7
|
+
selected: "selected",
|
|
8
|
+
unavailable: "unavailable",
|
|
9
|
+
events: (events) => `${events.length} ${events.length === 1 ? "event" : "events"}: ${events
|
|
10
|
+
.map((event) => event.label)
|
|
11
|
+
.join(", ")}`,
|
|
12
|
+
};
|
|
13
|
+
/** How many dots a day shows at most. The name of the day still counts every event. */
|
|
14
|
+
export const MAX_EVENT_DOTS = 3;
|
|
15
|
+
/**
|
|
16
|
+
* The accessible name of a day: the full date, then what is true of it, then
|
|
17
|
+
* its events. "Tuesday 6 October 2026, today, selected, 2 events: Quiz at The
|
|
18
|
+
* Crown, Music quiz".
|
|
19
|
+
*/
|
|
20
|
+
export function calendarDayName(fullDate, state, strings) {
|
|
21
|
+
const parts = [fullDate];
|
|
22
|
+
if (state.today)
|
|
23
|
+
parts.push(strings.today);
|
|
24
|
+
if (state.selected)
|
|
25
|
+
parts.push(strings.selected);
|
|
26
|
+
if (state.disabled)
|
|
27
|
+
parts.push(strings.unavailable);
|
|
28
|
+
if (state.events.length > 0)
|
|
29
|
+
parts.push(strings.events(state.events));
|
|
30
|
+
return parts.join(", ");
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Where a key takes focus from `date`, by the date-grid pattern: the arrows by
|
|
34
|
+
* a day and a week, Home and End to the ends of the week, Page Up and Page
|
|
35
|
+
* Down by a month, and by a year with Shift. Left and Right swap in a
|
|
36
|
+
* right-to-left layout, where the next day is on the left.
|
|
37
|
+
*
|
|
38
|
+
* Returns null for a key that does not move, or a move past year 1 or 9999.
|
|
39
|
+
*/
|
|
40
|
+
export function calendarKeyTarget(key, date, options = {}) {
|
|
41
|
+
const { shift = false, rtl = false, weekStartsOn = 1 } = options;
|
|
42
|
+
switch (key) {
|
|
43
|
+
case "ArrowLeft":
|
|
44
|
+
return addDays(date, rtl ? 1 : -1);
|
|
45
|
+
case "ArrowRight":
|
|
46
|
+
return addDays(date, rtl ? -1 : 1);
|
|
47
|
+
case "ArrowUp":
|
|
48
|
+
return addDays(date, -7);
|
|
49
|
+
case "ArrowDown":
|
|
50
|
+
return addDays(date, 7);
|
|
51
|
+
case "Home":
|
|
52
|
+
return startOfWeek(date, weekStartsOn);
|
|
53
|
+
case "End":
|
|
54
|
+
return endOfWeek(date, weekStartsOn);
|
|
55
|
+
case "PageUp":
|
|
56
|
+
return addMonths(date, shift ? -12 : -1);
|
|
57
|
+
case "PageDown":
|
|
58
|
+
return addMonths(date, shift ? 12 : 1);
|
|
59
|
+
default:
|
|
60
|
+
return null;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
/** The events of each day, in the order given. */
|
|
64
|
+
export function groupEventsByDate(events) {
|
|
65
|
+
const byDate = new Map();
|
|
66
|
+
for (const event of events) {
|
|
67
|
+
const list = byDate.get(event.date);
|
|
68
|
+
if (list)
|
|
69
|
+
list.push(event);
|
|
70
|
+
else
|
|
71
|
+
byDate.set(event.date, [event]);
|
|
72
|
+
}
|
|
73
|
+
return byDate;
|
|
74
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/** Types and pure helpers for `Collapsible` and `CollapsibleGroup`. Kept out of the components so they can be tested without a DOM. */
|
|
2
|
+
/** Heading element the default trigger is wrapped in. */
|
|
3
|
+
export type CollapsibleHeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;
|
|
4
|
+
/**
|
|
5
|
+
* First argument of the `trigger` snippet. Spread it on your own `<button>`:
|
|
6
|
+
* it carries the whole wiring, so the button needs nothing else to work.
|
|
7
|
+
*/
|
|
8
|
+
export type CollapsibleTriggerProps = {
|
|
9
|
+
id: string;
|
|
10
|
+
/** Keeps a trigger inside a `<form>` from submitting it. */
|
|
11
|
+
type: "button";
|
|
12
|
+
"aria-expanded": boolean;
|
|
13
|
+
"aria-controls": string;
|
|
14
|
+
disabled: boolean;
|
|
15
|
+
onclick: (event: MouseEvent) => void;
|
|
16
|
+
/** How a `CollapsibleGroup` finds its header buttons for the arrow keys. */
|
|
17
|
+
"data-collapsible-trigger": "";
|
|
18
|
+
};
|
|
19
|
+
/** Second argument of the `trigger` snippet. */
|
|
20
|
+
export interface CollapsibleTriggerState {
|
|
21
|
+
open: boolean;
|
|
22
|
+
disabled: boolean;
|
|
23
|
+
}
|
|
24
|
+
/** What a `Collapsible` hands its group. */
|
|
25
|
+
export interface CollapsibleGroupMember {
|
|
26
|
+
triggerId: string;
|
|
27
|
+
isOpen: () => boolean;
|
|
28
|
+
/** A disabled member keeps its state: the group neither closes it nor counts it. */
|
|
29
|
+
isDisabled: () => boolean;
|
|
30
|
+
close: () => void;
|
|
31
|
+
}
|
|
32
|
+
/** What a member gets back when it joins a group. */
|
|
33
|
+
export interface CollapsibleGroupRegistration {
|
|
34
|
+
/** Removes the member again. */
|
|
35
|
+
unregister: () => void;
|
|
36
|
+
/**
|
|
37
|
+
* True when the member asked to start open in a single-open group that
|
|
38
|
+
* already has an open panel. The member then renders closed from the
|
|
39
|
+
* start, on the server too, instead of opening and being closed again.
|
|
40
|
+
*/
|
|
41
|
+
startClosed: boolean;
|
|
42
|
+
}
|
|
43
|
+
/** What a `CollapsibleGroup` offers the Collapsibles inside it, through context. */
|
|
44
|
+
export interface CollapsibleGroupContext {
|
|
45
|
+
/** False when opening one panel closes the others. */
|
|
46
|
+
readonly multiple: boolean;
|
|
47
|
+
register: (member: CollapsibleGroupMember) => CollapsibleGroupRegistration;
|
|
48
|
+
/** Called whenever a member is open, however it got there. */
|
|
49
|
+
opened: (member: CollapsibleGroupMember) => void;
|
|
50
|
+
}
|
|
51
|
+
/** Context key shared by the two components. */
|
|
52
|
+
export declare const COLLAPSIBLE_GROUP: unique symbol;
|
|
53
|
+
/**
|
|
54
|
+
* Index of the header button an accordion key moves focus to, or `null` when
|
|
55
|
+
* the key is not one of them. Arrow keys wrap, as they do in Tabs and Dropdown.
|
|
56
|
+
*/
|
|
57
|
+
export declare function nextTriggerIndex(key: string, current: number, count: number): number | null;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** Types and pure helpers for `Collapsible` and `CollapsibleGroup`. Kept out of the components so they can be tested without a DOM. */
|
|
2
|
+
/** Context key shared by the two components. */
|
|
3
|
+
export const COLLAPSIBLE_GROUP = Symbol("zabi-collapsible-group");
|
|
4
|
+
/**
|
|
5
|
+
* Index of the header button an accordion key moves focus to, or `null` when
|
|
6
|
+
* the key is not one of them. Arrow keys wrap, as they do in Tabs and Dropdown.
|
|
7
|
+
*/
|
|
8
|
+
export function nextTriggerIndex(key, current, count) {
|
|
9
|
+
if (count === 0)
|
|
10
|
+
return null;
|
|
11
|
+
switch (key) {
|
|
12
|
+
case "ArrowDown":
|
|
13
|
+
return (current + 1) % count;
|
|
14
|
+
case "ArrowUp":
|
|
15
|
+
return (current - 1 + count) % count;
|
|
16
|
+
case "Home":
|
|
17
|
+
return 0;
|
|
18
|
+
case "End":
|
|
19
|
+
return count - 1;
|
|
20
|
+
default:
|
|
21
|
+
return null;
|
|
22
|
+
}
|
|
23
|
+
}
|