@wow-two-beta/ui 0.0.59 → 0.0.61
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/dist/actions/index.js +2 -2
- package/dist/{chunk-XDATW7NF.js → chunk-3SWPYYRQ.js} +3 -3
- package/dist/{chunk-XDATW7NF.js.map → chunk-3SWPYYRQ.js.map} +1 -1
- package/dist/{chunk-MTD4RTGO.js → chunk-5LFMQORR.js} +5 -5
- package/dist/{chunk-MTD4RTGO.js.map → chunk-5LFMQORR.js.map} +1 -1
- package/dist/{chunk-NR5DYKSJ.js → chunk-7ZDLUNAY.js} +3 -3
- package/dist/{chunk-NR5DYKSJ.js.map → chunk-7ZDLUNAY.js.map} +1 -1
- package/dist/{chunk-MTE5E6OQ.js → chunk-BMSE2X2G.js} +5 -5
- package/dist/{chunk-MTE5E6OQ.js.map → chunk-BMSE2X2G.js.map} +1 -1
- package/dist/{chunk-HG7NX6GP.js → chunk-DUWEP5T3.js} +6 -6
- package/dist/{chunk-HG7NX6GP.js.map → chunk-DUWEP5T3.js.map} +1 -1
- package/dist/{chunk-JYGC5SRP.js → chunk-DX7FYAKY.js} +8 -2
- package/dist/chunk-DX7FYAKY.js.map +1 -0
- package/dist/{chunk-EEHJHPAP.js → chunk-FHMZM3CE.js} +5 -5
- package/dist/{chunk-EEHJHPAP.js.map → chunk-FHMZM3CE.js.map} +1 -1
- package/dist/{chunk-577JZ2A2.js → chunk-FMTBJJP6.js} +3 -3
- package/dist/{chunk-577JZ2A2.js.map → chunk-FMTBJJP6.js.map} +1 -1
- package/dist/{chunk-Y5GS4CLT.js → chunk-GDJMPYPU.js} +206 -5
- package/dist/chunk-GDJMPYPU.js.map +1 -0
- package/dist/{chunk-OBW7JUNL.js → chunk-QDECMXNB.js} +3 -3
- package/dist/{chunk-OBW7JUNL.js.map → chunk-QDECMXNB.js.map} +1 -1
- package/dist/{chunk-EX4AOJCN.js → chunk-QGHQDFQN.js} +4 -4
- package/dist/{chunk-EX4AOJCN.js.map → chunk-QGHQDFQN.js.map} +1 -1
- package/dist/{chunk-EJCO7AWR.js → chunk-VQF4QTBD.js} +3 -3
- package/dist/{chunk-EJCO7AWR.js.map → chunk-VQF4QTBD.js.map} +1 -1
- package/dist/{chunk-GSAOM2ZR.js → chunk-XN5B3B6Z.js} +3 -3
- package/dist/{chunk-GSAOM2ZR.js.map → chunk-XN5B3B6Z.js.map} +1 -1
- package/dist/display/featureCard/FeatureCard.d.ts +16 -0
- package/dist/display/featureCard/index.d.ts +1 -0
- package/dist/display/index.d.ts +4 -0
- package/dist/display/index.js +3 -3
- package/dist/display/pricingCard/PricingCard.d.ts +25 -0
- package/dist/display/pricingCard/index.d.ts +1 -0
- package/dist/display/sortable/Sortable.d.ts +15 -0
- package/dist/display/sortable/index.d.ts +2 -0
- package/dist/display/stepCard/StepCard.d.ts +18 -0
- package/dist/display/stepCard/index.d.ts +1 -0
- package/dist/feedback/index.js +3 -3
- package/dist/forms/index.js +7 -7
- package/dist/icons/index.js +1 -1
- package/dist/index.css +33 -0
- package/dist/index.js +13 -13
- package/dist/layout/index.js +4 -4
- package/dist/nav/index.js +4 -4
- package/dist/overlays/index.js +4 -4
- package/dist/utils/SurfaceStyles.d.ts +37 -0
- package/dist/utils/index.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-JYGC5SRP.js.map +0 -1
- package/dist/chunk-Y5GS4CLT.js.map +0 -1
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type ComponentPropsWithoutRef } from 'react';
|
|
2
|
+
export interface SortableProps extends ComponentPropsWithoutRef<'div'> {
|
|
3
|
+
/** Fired when a drag or keyboard move completes — move the item at `from` to `to`. Indices are raw; clamp in the handler. */
|
|
4
|
+
onReorder: (from: number, to: number) => void;
|
|
5
|
+
}
|
|
6
|
+
export interface SortableItemProps extends ComponentPropsWithoutRef<'div'> {
|
|
7
|
+
/** Zero-based position of this item in the list. */
|
|
8
|
+
index: number;
|
|
9
|
+
}
|
|
10
|
+
export type SortableHandleProps = ComponentPropsWithoutRef<'button'>;
|
|
11
|
+
/** Provides a compound drag-to-reorder list — `Sortable` root + `Sortable.Item` + `Sortable.Handle`. */
|
|
12
|
+
export declare const Sortable: import("react").ForwardRefExoticComponent<SortableProps & import("react").RefAttributes<HTMLDivElement>> & {
|
|
13
|
+
Item: import("react").ForwardRefExoticComponent<SortableItemProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
14
|
+
Handle: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
|
|
15
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type ComponentPropsWithoutRef, type ReactNode } from 'react';
|
|
2
|
+
export interface StepCardProps extends Omit<ComponentPropsWithoutRef<'div'>, 'title'> {
|
|
3
|
+
/** Step number — rendered as a large faint overlay top-right. */
|
|
4
|
+
step: number;
|
|
5
|
+
/** Icon node rendered inside a tinted badge (`bg-primary-soft text-primary`). Size it yourself. */
|
|
6
|
+
icon?: ReactNode;
|
|
7
|
+
/** Step title. */
|
|
8
|
+
title: ReactNode;
|
|
9
|
+
/** Optional supporting copy below the title. Falls back to `children` when omitted. */
|
|
10
|
+
description?: ReactNode;
|
|
11
|
+
/** Body content — used when `description` is not provided. */
|
|
12
|
+
children?: ReactNode;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Numbered "how it works" step — large faint step number overlay + tinted icon
|
|
16
|
+
* badge + title + description. Outlined card; content-only (no baked routing).
|
|
17
|
+
*/
|
|
18
|
+
export declare const StepCard: import("react").ForwardRefExoticComponent<StepCardProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { StepCard, type StepCardProps } from './StepCard';
|
package/dist/feedback/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export { Alert, AlertSimple, Banner, BannerSimple, Callout, InlineSpinner, LiveCursor, LoadingOverlay, LoadingState, MeterBar, NotificationCenter, NotificationItem, OnboardingChecklist, OnboardingChecklistTask, PresenceIndicator, ProgressBar, ProgressCircle, ProgressSteps, Skeleton, StatusIndicator, Toast, ToastSimple, Toaster, Tour, TrendIndicator, TypingIndicator, UndoBar, alertSimpleVariants, bannerSimpleVariants, progressFillVariants, progressTrackVariants, skeletonVariants, toastSimpleVariants, toaster, useOnboardingChecklist, useToaster } from '../chunk-
|
|
2
|
-
export { Spinner, spinnerVariants } from '../chunk-
|
|
1
|
+
export { Alert, AlertSimple, Banner, BannerSimple, Callout, InlineSpinner, LiveCursor, LoadingOverlay, LoadingState, MeterBar, NotificationCenter, NotificationItem, OnboardingChecklist, OnboardingChecklistTask, PresenceIndicator, ProgressBar, ProgressCircle, ProgressSteps, Skeleton, StatusIndicator, Toast, ToastSimple, Toaster, Tour, TrendIndicator, TypingIndicator, UndoBar, alertSimpleVariants, bannerSimpleVariants, progressFillVariants, progressTrackVariants, skeletonVariants, toastSimpleVariants, toaster, useOnboardingChecklist, useToaster } from '../chunk-QGHQDFQN.js';
|
|
2
|
+
export { Spinner, spinnerVariants } from '../chunk-7ZDLUNAY.js';
|
|
3
3
|
import '../chunk-DJJOQWOG.js';
|
|
4
4
|
import '../chunk-V267IMBH.js';
|
|
5
5
|
import '../chunk-MVMDDGW7.js';
|
|
6
|
-
import '../chunk-
|
|
6
|
+
import '../chunk-DX7FYAKY.js';
|
|
7
7
|
import '../chunk-TTSJZEL7.js';
|
|
8
8
|
import '../chunk-LGTGZ3RW.js';
|
|
9
9
|
import '../chunk-X2MYOHOB.js';
|
package/dist/forms/index.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
export { ADDRESS_COUNTRIES, AddressForm, BUILT_IN_EMOJI, BUILT_IN_FONTS, Calendar, CharacterCount, ChatComposer, Checkbox, CheckboxField, CheckboxGroup, ChoiceCard, CodeEditor, ColorArea, ColorField, ColorPicker, ColorSlider, ColorSwatch, ColorSwatchPicker, ColorWheel, Combobox, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxSeparator, CronInput, CurrencyInput, DateField, DatePicker, DateRangePicker, Editable, EditableCancel, EditableInput, EditablePreview, EditableSubmit, EmailInput, EmojiPicker, Fieldset, FilePicker, FileUpload, FontPicker, FormErrorMessage, FormField, FormHelperText, GradientPicker, IconPicker, InputAddon, InputGroup, JSONEditor, KeyboardShortcutPicker, Knob, Label, LabeledInput, Legend, Listbox, ListboxEmpty, ListboxGroup, ListboxItem, ListboxSeparator, MarkdownEditor, MaskedInput, MultiSelect, MultiSelectContent, MultiSelectItem, MultiSelectTags, MultiSelectTrigger, NumberInput, PHONE_COUNTRIES, PasswordInput, PasswordStrength, PercentInput, PhoneInput, PinInput, Radio, RadioField, RadioGroup, RangeCalendar, ReactionPicker, RecurrenceEditor, SearchInput, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Slider, Stepper, StepperList, StepperPanel, StepperStep, Switch, SwitchField, TagsInput, TelInput, TextInput, Textarea, TimeField, TimePicker, UrlInput, Wizard, WizardFooter, WizardStep, WizardSteps, colorSwatchVariants, gradientToCss, useWizard } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
1
|
+
export { ADDRESS_COUNTRIES, AddressForm, BUILT_IN_EMOJI, BUILT_IN_FONTS, Calendar, CharacterCount, ChatComposer, Checkbox, CheckboxField, CheckboxGroup, ChoiceCard, CodeEditor, ColorArea, ColorField, ColorPicker, ColorSlider, ColorSwatch, ColorSwatchPicker, ColorWheel, Combobox, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxSeparator, CronInput, CurrencyInput, DateField, DatePicker, DateRangePicker, Editable, EditableCancel, EditableInput, EditablePreview, EditableSubmit, EmailInput, EmojiPicker, Fieldset, FilePicker, FileUpload, FontPicker, FormErrorMessage, FormField, FormHelperText, GradientPicker, IconPicker, InputAddon, InputGroup, JSONEditor, KeyboardShortcutPicker, Knob, Label, LabeledInput, Legend, Listbox, ListboxEmpty, ListboxGroup, ListboxItem, ListboxSeparator, MarkdownEditor, MaskedInput, MultiSelect, MultiSelectContent, MultiSelectItem, MultiSelectTags, MultiSelectTrigger, NumberInput, PHONE_COUNTRIES, PasswordInput, PasswordStrength, PercentInput, PhoneInput, PinInput, Radio, RadioField, RadioGroup, RangeCalendar, ReactionPicker, RecurrenceEditor, SearchInput, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Slider, Stepper, StepperList, StepperPanel, StepperStep, Switch, SwitchField, TagsInput, TelInput, TextInput, Textarea, TimeField, TimePicker, UrlInput, Wizard, WizardFooter, WizardStep, WizardSteps, colorSwatchVariants, gradientToCss, useWizard } from '../chunk-DUWEP5T3.js';
|
|
2
|
+
import '../chunk-FMTBJJP6.js';
|
|
3
|
+
import '../chunk-5LFMQORR.js';
|
|
4
|
+
import '../chunk-QDECMXNB.js';
|
|
5
|
+
import '../chunk-VQF4QTBD.js';
|
|
6
6
|
import '../chunk-FNSC4LAL.js';
|
|
7
|
-
import '../chunk-
|
|
7
|
+
import '../chunk-3SWPYYRQ.js';
|
|
8
8
|
import '../chunk-DJJOQWOG.js';
|
|
9
9
|
import '../chunk-V267IMBH.js';
|
|
10
10
|
import '../chunk-MVMDDGW7.js';
|
|
11
|
-
import '../chunk-
|
|
11
|
+
import '../chunk-DX7FYAKY.js';
|
|
12
12
|
import '../chunk-TTSJZEL7.js';
|
|
13
13
|
import '../chunk-LGTGZ3RW.js';
|
|
14
14
|
import '../chunk-X2MYOHOB.js';
|
package/dist/icons/index.js
CHANGED
package/dist/index.css
CHANGED
|
@@ -58,6 +58,18 @@
|
|
|
58
58
|
--color-info-700: #0e7490;
|
|
59
59
|
--color-info-900: #164e63;
|
|
60
60
|
|
|
61
|
+
--color-accent-50: #f0fdfa;
|
|
62
|
+
--color-accent-100: #ccfbf1;
|
|
63
|
+
--color-accent-200: #99f6e4;
|
|
64
|
+
--color-accent-300: #5eead4;
|
|
65
|
+
--color-accent-400: #2dd4bf;
|
|
66
|
+
--color-accent-500: #14b8a6;
|
|
67
|
+
--color-accent-600: #0d9488;
|
|
68
|
+
--color-accent-700: #0f766e;
|
|
69
|
+
--color-accent-800: #115e59;
|
|
70
|
+
--color-accent-900: #134e4a;
|
|
71
|
+
--color-accent-950: #042f2e;
|
|
72
|
+
|
|
61
73
|
/* ---------- semantic tokens (light mode defaults) ---------- */
|
|
62
74
|
|
|
63
75
|
/* Surfaces */
|
|
@@ -106,6 +118,12 @@
|
|
|
106
118
|
--color-info-soft: #ecfeff;
|
|
107
119
|
--color-info-soft-foreground: #0e7490;
|
|
108
120
|
|
|
121
|
+
/* Accent (secondary "pop" — teal). Emphasis distinct from primary: active/On, highlights, badges. */
|
|
122
|
+
--color-accent: #0d9488;
|
|
123
|
+
--color-accent-foreground: #ffffff;
|
|
124
|
+
--color-accent-soft: #ccfbf1;
|
|
125
|
+
--color-accent-soft-foreground: #115e59;
|
|
126
|
+
|
|
109
127
|
/* Radii — preserve our pre-v4 scale (some values shift in v4 defaults) */
|
|
110
128
|
--radius-md: 0.5rem;
|
|
111
129
|
--radius-lg: 0.75rem;
|
|
@@ -181,6 +199,11 @@
|
|
|
181
199
|
--color-info-foreground: #ffffff;
|
|
182
200
|
--color-info-soft: #164e63;
|
|
183
201
|
--color-info-soft-foreground: #cffafe;
|
|
202
|
+
|
|
203
|
+
--color-accent: #2dd4bf;
|
|
204
|
+
--color-accent-foreground: #042f2e;
|
|
205
|
+
--color-accent-soft: #134e4a;
|
|
206
|
+
--color-accent-soft-foreground: #5eead4;
|
|
184
207
|
}
|
|
185
208
|
|
|
186
209
|
/* Body defaults so consumers get sane page colors out of the box. */
|
|
@@ -189,6 +212,16 @@ html, body {
|
|
|
189
212
|
color: var(--color-foreground);
|
|
190
213
|
}
|
|
191
214
|
|
|
215
|
+
/* Ambient surface treatments — opt-in via Card `ambient="sheen|glow"`. Layer a gradient over the
|
|
216
|
+
* surface's bg-color. `sheen` lifts the top edge (visible on dark, ~invisible on light); `glow` adds a
|
|
217
|
+
* primary-tinted corner wash for expressive / hero surfaces. */
|
|
218
|
+
.surface-sheen {
|
|
219
|
+
background-image: linear-gradient(180deg, rgb(255 255 255 / 0.05), transparent 55%);
|
|
220
|
+
}
|
|
221
|
+
.surface-glow {
|
|
222
|
+
background-image: radial-gradient(135% 135% at 100% 112%, color-mix(in srgb, var(--color-primary) 14%, transparent), transparent 52%);
|
|
223
|
+
}
|
|
224
|
+
|
|
192
225
|
@keyframes indeterminate {
|
|
193
226
|
0% {
|
|
194
227
|
transform: translateX(-100%);
|
package/dist/index.js
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
export { ADDRESS_COUNTRIES, AddressForm, BUILT_IN_EMOJI, BUILT_IN_FONTS, Calendar, CharacterCount, ChatComposer, Checkbox, CheckboxField, CheckboxGroup, ChoiceCard, CodeEditor, ColorArea, ColorField, ColorPicker, ColorSlider, ColorSwatch, ColorSwatchPicker, ColorWheel, Combobox, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxSeparator, CronInput, CurrencyInput, DateField, DatePicker, DateRangePicker, Editable, EditableCancel, EditableInput, EditablePreview, EditableSubmit, EmailInput, EmojiPicker, Fieldset, FilePicker, FileUpload, FontPicker, FormErrorMessage, FormField, FormHelperText, GradientPicker, IconPicker, InputAddon, InputGroup, JSONEditor, KeyboardShortcutPicker, Knob, Label, LabeledInput, Legend, Listbox, ListboxEmpty, ListboxGroup, ListboxItem, ListboxSeparator, MarkdownEditor, MaskedInput, MultiSelect, MultiSelectContent, MultiSelectItem, MultiSelectTags, MultiSelectTrigger, NumberInput, PHONE_COUNTRIES, PasswordInput, PasswordStrength, PercentInput, PhoneInput, PinInput, Radio, RadioField, RadioGroup, RangeCalendar, ReactionPicker, RecurrenceEditor, SearchInput, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Slider, Stepper, StepperList, StepperPanel, StepperStep, Switch, SwitchField, TagsInput, TelInput, TextInput, Textarea, TimeField, TimePicker, UrlInput, Wizard, WizardFooter, WizardStep, WizardSteps, colorSwatchVariants, gradientToCss, useWizard } from './chunk-
|
|
2
|
-
export { AppShell, AppShellAside, AppShellContent, AppShellFooter, AppShellHeader, AppShellMain, AppShellSidebar, AspectRatio, Box, Center, Cluster, Container, Divider, Flex, Frame, Grid, HStack, Navbar, Overlay, PullToRefresh, ResizablePanel, ResizablePanels, ResizableSeparator, ScrollArea, Section, Spacer, Stack, Surface, TwoColumn, VStack, containerVariants, dividerVariants, gridVariants, navbarVariants, resolveGridColumns, resolveGridGap, sectionVariants, stackVariants, useAppShell } from './chunk-
|
|
3
|
-
export { Breadcrumb, CommandPalette, CommandPaletteContent, CommandPaletteEmpty, CommandPaletteGroup, CommandPaletteInput, CommandPaletteItem, CommandPaletteList, CommandPaletteSeparator, ContextMenu, ContextMenuContent, ContextMenuTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuTrigger, Menu, MenuGroup, MenuItem, MenuLabel, MenuSeparator, Menubar, MenubarContent, MenubarMenu, MenubarTrigger, NavItem, NavigationMenu, NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, Pagination, ScrollSpy, TableOfContents, menuItemVariants, menuLabelVariants, menuSeparatorVariants, menuVariants, useScrollSpy } from './chunk-
|
|
4
|
-
import './chunk-
|
|
5
|
-
export { ActionSheet, ActionSheetAction, ActionSheetCancel, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, BottomSheet, BottomSheetDescription, BottomSheetTitle, HoverCard, HoverCardArrow, HoverCardContent, HoverCardTrigger, Popover, PopoverArrow, PopoverContent, PopoverTrigger, useBottomSheet } from './chunk-
|
|
6
|
-
export { Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger } from './chunk-
|
|
7
|
-
export { Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger } from './chunk-
|
|
1
|
+
export { ADDRESS_COUNTRIES, AddressForm, BUILT_IN_EMOJI, BUILT_IN_FONTS, Calendar, CharacterCount, ChatComposer, Checkbox, CheckboxField, CheckboxGroup, ChoiceCard, CodeEditor, ColorArea, ColorField, ColorPicker, ColorSlider, ColorSwatch, ColorSwatchPicker, ColorWheel, Combobox, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxSeparator, CronInput, CurrencyInput, DateField, DatePicker, DateRangePicker, Editable, EditableCancel, EditableInput, EditablePreview, EditableSubmit, EmailInput, EmojiPicker, Fieldset, FilePicker, FileUpload, FontPicker, FormErrorMessage, FormField, FormHelperText, GradientPicker, IconPicker, InputAddon, InputGroup, JSONEditor, KeyboardShortcutPicker, Knob, Label, LabeledInput, Legend, Listbox, ListboxEmpty, ListboxGroup, ListboxItem, ListboxSeparator, MarkdownEditor, MaskedInput, MultiSelect, MultiSelectContent, MultiSelectItem, MultiSelectTags, MultiSelectTrigger, NumberInput, PHONE_COUNTRIES, PasswordInput, PasswordStrength, PercentInput, PhoneInput, PinInput, Radio, RadioField, RadioGroup, RangeCalendar, ReactionPicker, RecurrenceEditor, SearchInput, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Slider, Stepper, StepperList, StepperPanel, StepperStep, Switch, SwitchField, TagsInput, TelInput, TextInput, Textarea, TimeField, TimePicker, UrlInput, Wizard, WizardFooter, WizardStep, WizardSteps, colorSwatchVariants, gradientToCss, useWizard } from './chunk-DUWEP5T3.js';
|
|
2
|
+
export { AppShell, AppShellAside, AppShellContent, AppShellFooter, AppShellHeader, AppShellMain, AppShellSidebar, AspectRatio, Box, Center, Cluster, Container, Divider, Flex, Frame, Grid, HStack, Navbar, Overlay, PullToRefresh, ResizablePanel, ResizablePanels, ResizableSeparator, ScrollArea, Section, Spacer, Stack, Surface, TwoColumn, VStack, containerVariants, dividerVariants, gridVariants, navbarVariants, resolveGridColumns, resolveGridGap, sectionVariants, stackVariants, useAppShell } from './chunk-BMSE2X2G.js';
|
|
3
|
+
export { Breadcrumb, CommandPalette, CommandPaletteContent, CommandPaletteEmpty, CommandPaletteGroup, CommandPaletteInput, CommandPaletteItem, CommandPaletteList, CommandPaletteSeparator, ContextMenu, ContextMenuContent, ContextMenuTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuTrigger, Menu, MenuGroup, MenuItem, MenuLabel, MenuSeparator, Menubar, MenubarContent, MenubarMenu, MenubarTrigger, NavItem, NavigationMenu, NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, Pagination, ScrollSpy, TableOfContents, menuItemVariants, menuLabelVariants, menuSeparatorVariants, menuVariants, useScrollSpy } from './chunk-FHMZM3CE.js';
|
|
4
|
+
import './chunk-FMTBJJP6.js';
|
|
5
|
+
export { ActionSheet, ActionSheetAction, ActionSheetCancel, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, BottomSheet, BottomSheetDescription, BottomSheetTitle, HoverCard, HoverCardArrow, HoverCardContent, HoverCardTrigger, Popover, PopoverArrow, PopoverContent, PopoverTrigger, useBottomSheet } from './chunk-5LFMQORR.js';
|
|
6
|
+
export { Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger } from './chunk-QDECMXNB.js';
|
|
7
|
+
export { Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger } from './chunk-VQF4QTBD.js';
|
|
8
8
|
import './chunk-FNSC4LAL.js';
|
|
9
|
-
export { BackToTopButton, Button, ButtonGroup, CopyButton, DisclosureButton, FAB, Link, SegmentedControl, SpeedDial, SpeedDialAction, SpeedDialTrigger, ToggleButton, ToggleButtonGroup, Toolbar, ToolbarButton, ToolbarLink, ToolbarSeparator, buttonVariants, fabVariants, linkVariants, toggleButtonVariants } from './chunk-
|
|
10
|
-
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, ActivityFeed, ActivityItem, AnimatedNumber, AnnotationMarker, AudioPlayer, AudioWaveform, Avatar, AvatarGroup, Badge, BadgeOverlay, Card, Carousel, CarouselDot, CarouselDots, CarouselNext, CarouselPrev, CarouselSlide, CarouselSlides, CarouselViewport, ChatBubble, Code, Collapsible, CollapsibleContent, CollapsibleTrigger, Comment, CommentThread, Confetti, CountBadge, CountUp, DataGrid, DataTable, DaySeparator, DescriptionList, DiffViewer, EmptyState, EventCalendar, Eyebrow, Gantt, GradientText, Heading, HeatmapCalendar, Highlight, Image, InfoRow, KeyboardShortcut, List, ListItem, Mark, Marquee, MessageList, MetaInline, MetricChip, NodeEditor, NotificationDot, PDFViewer, Quote, ReactionBar, ScheduleView, ScrollReveal, SectionHeader, Separator, Snippet, Sparkline, Stat, Status, SwipeActions, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeaderCell, TableRow, Tabs, TabsList, TabsPanel, TabsTab, Text, ThreadView, Tilt, Timeline, TimelineDescription, TimelineItem, TimelineTitle, Tooltip, Tree, TreeGroup, TreeItem, Typewriter, VideoPlayer, avatarVariants, badgeVariants, codeVariants, headingVariants, textVariants } from './chunk-
|
|
11
|
-
export { Kbd, Tag, tagVariants } from './chunk-
|
|
9
|
+
export { BackToTopButton, Button, ButtonGroup, CopyButton, DisclosureButton, FAB, Link, SegmentedControl, SpeedDial, SpeedDialAction, SpeedDialTrigger, ToggleButton, ToggleButtonGroup, Toolbar, ToolbarButton, ToolbarLink, ToolbarSeparator, buttonVariants, fabVariants, linkVariants, toggleButtonVariants } from './chunk-XN5B3B6Z.js';
|
|
10
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, ActivityFeed, ActivityItem, AnimatedNumber, AnnotationMarker, AudioPlayer, AudioWaveform, Avatar, AvatarGroup, Badge, BadgeOverlay, Card, Carousel, CarouselDot, CarouselDots, CarouselNext, CarouselPrev, CarouselSlide, CarouselSlides, CarouselViewport, ChatBubble, Code, Collapsible, CollapsibleContent, CollapsibleTrigger, Comment, CommentThread, Confetti, CountBadge, CountUp, DataGrid, DataTable, DaySeparator, DescriptionList, DiffViewer, EmptyState, EventCalendar, Eyebrow, FeatureCard, Gantt, GradientText, Heading, HeatmapCalendar, Highlight, Image, InfoRow, KeyboardShortcut, List, ListItem, Mark, Marquee, MessageList, MetaInline, MetricChip, NodeEditor, NotificationDot, PDFViewer, PricingCard, Quote, ReactionBar, ScheduleView, ScrollReveal, SectionHeader, Separator, Snippet, Sortable, Sparkline, Stat, Status, StepCard, SwipeActions, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeaderCell, TableRow, Tabs, TabsList, TabsPanel, TabsTab, Text, ThreadView, Tilt, Timeline, TimelineDescription, TimelineItem, TimelineTitle, Tooltip, Tree, TreeGroup, TreeItem, Typewriter, VideoPlayer, avatarVariants, badgeVariants, codeVariants, headingVariants, textVariants } from './chunk-GDJMPYPU.js';
|
|
11
|
+
export { Kbd, Tag, tagVariants } from './chunk-3SWPYYRQ.js';
|
|
12
12
|
export { Inline } from './chunk-4XWLEKH2.js';
|
|
13
|
-
export { Alert, AlertSimple, Banner, BannerSimple, Callout, InlineSpinner, LiveCursor, LoadingOverlay, LoadingState, MeterBar, NotificationCenter, NotificationItem, OnboardingChecklist, OnboardingChecklistTask, PresenceIndicator, ProgressBar, ProgressCircle, ProgressSteps, Skeleton, StatusIndicator, Toast, ToastSimple, Toaster, Tour, TrendIndicator, TypingIndicator, UndoBar, alertSimpleVariants, bannerSimpleVariants, progressFillVariants, progressTrackVariants, skeletonVariants, toastSimpleVariants, toaster, useOnboardingChecklist, useToaster } from './chunk-
|
|
14
|
-
export { Spinner, spinnerVariants } from './chunk-
|
|
13
|
+
export { Alert, AlertSimple, Banner, BannerSimple, Callout, InlineSpinner, LiveCursor, LoadingOverlay, LoadingState, MeterBar, NotificationCenter, NotificationItem, OnboardingChecklist, OnboardingChecklistTask, PresenceIndicator, ProgressBar, ProgressCircle, ProgressSteps, Skeleton, StatusIndicator, Toast, ToastSimple, Toaster, Tour, TrendIndicator, TypingIndicator, UndoBar, alertSimpleVariants, bannerSimpleVariants, progressFillVariants, progressTrackVariants, skeletonVariants, toastSimpleVariants, toaster, useOnboardingChecklist, useToaster } from './chunk-QGHQDFQN.js';
|
|
14
|
+
export { Spinner, spinnerVariants } from './chunk-7ZDLUNAY.js';
|
|
15
15
|
export { Backdrop } from './chunk-DJJOQWOG.js';
|
|
16
16
|
export { hooks_exports as hooks } from './chunk-V267IMBH.js';
|
|
17
17
|
export { icons_exports as icons } from './chunk-MVMDDGW7.js';
|
|
18
|
-
export { utils_exports as utils } from './chunk-
|
|
18
|
+
export { utils_exports as utils } from './chunk-DX7FYAKY.js';
|
|
19
19
|
export { primitives_exports as primitives } from './chunk-TTSJZEL7.js';
|
|
20
20
|
import './chunk-LGTGZ3RW.js';
|
|
21
21
|
import './chunk-X2MYOHOB.js';
|
package/dist/layout/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
export { AppShell, AppShellAside, AppShellContent, AppShellFooter, AppShellHeader, AppShellMain, AppShellSidebar, AspectRatio, Box, Center, Cluster, Container, Divider, Flex, Frame, Grid, HStack, Navbar, Overlay, PullToRefresh, ResizablePanel, ResizablePanels, ResizableSeparator, ScrollArea, Section, Spacer, Stack, Surface, TwoColumn, VStack, containerVariants, dividerVariants, gridVariants, navbarVariants, resolveGridColumns, resolveGridGap, sectionVariants, stackVariants, useAppShell } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { AppShell, AppShellAside, AppShellContent, AppShellFooter, AppShellHeader, AppShellMain, AppShellSidebar, AspectRatio, Box, Center, Cluster, Container, Divider, Flex, Frame, Grid, HStack, Navbar, Overlay, PullToRefresh, ResizablePanel, ResizablePanels, ResizableSeparator, ScrollArea, Section, Spacer, Stack, Surface, TwoColumn, VStack, containerVariants, dividerVariants, gridVariants, navbarVariants, resolveGridColumns, resolveGridGap, sectionVariants, stackVariants, useAppShell } from '../chunk-BMSE2X2G.js';
|
|
2
|
+
import '../chunk-QDECMXNB.js';
|
|
3
3
|
import '../chunk-FNSC4LAL.js';
|
|
4
4
|
export { Inline } from '../chunk-4XWLEKH2.js';
|
|
5
|
-
import '../chunk-
|
|
5
|
+
import '../chunk-7ZDLUNAY.js';
|
|
6
6
|
import '../chunk-DJJOQWOG.js';
|
|
7
7
|
import '../chunk-V267IMBH.js';
|
|
8
|
-
import '../chunk-
|
|
8
|
+
import '../chunk-DX7FYAKY.js';
|
|
9
9
|
import '../chunk-TTSJZEL7.js';
|
|
10
10
|
import '../chunk-LGTGZ3RW.js';
|
|
11
11
|
import '../chunk-X2MYOHOB.js';
|
package/dist/nav/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
export { Breadcrumb, CommandPalette, CommandPaletteContent, CommandPaletteEmpty, CommandPaletteGroup, CommandPaletteInput, CommandPaletteItem, CommandPaletteList, CommandPaletteSeparator, ContextMenu, ContextMenuContent, ContextMenuTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuTrigger, Menu, MenuGroup, MenuItem, MenuLabel, MenuSeparator, Menubar, MenubarContent, MenubarMenu, MenubarTrigger, NavItem, NavigationMenu, NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, Pagination, ScrollSpy, TableOfContents, menuItemVariants, menuLabelVariants, menuSeparatorVariants, menuVariants, useScrollSpy } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
export { Breadcrumb, CommandPalette, CommandPaletteContent, CommandPaletteEmpty, CommandPaletteGroup, CommandPaletteInput, CommandPaletteItem, CommandPaletteList, CommandPaletteSeparator, ContextMenu, ContextMenuContent, ContextMenuTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuTrigger, Menu, MenuGroup, MenuItem, MenuLabel, MenuSeparator, Menubar, MenubarContent, MenubarMenu, MenubarTrigger, NavItem, NavigationMenu, NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, Pagination, ScrollSpy, TableOfContents, menuItemVariants, menuLabelVariants, menuSeparatorVariants, menuVariants, useScrollSpy } from '../chunk-FHMZM3CE.js';
|
|
2
|
+
import '../chunk-FMTBJJP6.js';
|
|
3
|
+
import '../chunk-VQF4QTBD.js';
|
|
4
4
|
import '../chunk-FNSC4LAL.js';
|
|
5
5
|
import '../chunk-DJJOQWOG.js';
|
|
6
6
|
import '../chunk-V267IMBH.js';
|
|
7
7
|
import '../chunk-MVMDDGW7.js';
|
|
8
|
-
import '../chunk-
|
|
8
|
+
import '../chunk-DX7FYAKY.js';
|
|
9
9
|
import '../chunk-TTSJZEL7.js';
|
|
10
10
|
import '../chunk-LGTGZ3RW.js';
|
|
11
11
|
import '../chunk-X2MYOHOB.js';
|
package/dist/overlays/index.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
export { ActionSheet, ActionSheetAction, ActionSheetCancel, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, BottomSheet, BottomSheetDescription, BottomSheetTitle, HoverCard, HoverCardArrow, HoverCardContent, HoverCardTrigger, Popover, PopoverArrow, PopoverContent, PopoverTrigger, useBottomSheet } from '../chunk-
|
|
2
|
-
export { Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger } from '../chunk-
|
|
3
|
-
export { Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger } from '../chunk-
|
|
1
|
+
export { ActionSheet, ActionSheetAction, ActionSheetCancel, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, BottomSheet, BottomSheetDescription, BottomSheetTitle, HoverCard, HoverCardArrow, HoverCardContent, HoverCardTrigger, Popover, PopoverArrow, PopoverContent, PopoverTrigger, useBottomSheet } from '../chunk-5LFMQORR.js';
|
|
2
|
+
export { Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger } from '../chunk-QDECMXNB.js';
|
|
3
|
+
export { Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger } from '../chunk-VQF4QTBD.js';
|
|
4
4
|
import '../chunk-FNSC4LAL.js';
|
|
5
5
|
export { Backdrop } from '../chunk-DJJOQWOG.js';
|
|
6
6
|
import '../chunk-V267IMBH.js';
|
|
7
|
-
import '../chunk-
|
|
7
|
+
import '../chunk-DX7FYAKY.js';
|
|
8
8
|
import '../chunk-TTSJZEL7.js';
|
|
9
9
|
import '../chunk-LGTGZ3RW.js';
|
|
10
10
|
import '../chunk-X2MYOHOB.js';
|
|
@@ -46,6 +46,11 @@ export declare const surfaceVariants: import("tailwind-variants").TVReturnType<{
|
|
|
46
46
|
4: string;
|
|
47
47
|
5: string;
|
|
48
48
|
};
|
|
49
|
+
ambient: {
|
|
50
|
+
none: string;
|
|
51
|
+
sheen: string;
|
|
52
|
+
glow: string;
|
|
53
|
+
};
|
|
49
54
|
}, undefined, "outline-none transition-colors", import("tailwind-variants/dist/config.js").TVConfig<{
|
|
50
55
|
variant: {
|
|
51
56
|
solid: string;
|
|
@@ -92,6 +97,11 @@ export declare const surfaceVariants: import("tailwind-variants").TVReturnType<{
|
|
|
92
97
|
4: string;
|
|
93
98
|
5: string;
|
|
94
99
|
};
|
|
100
|
+
ambient: {
|
|
101
|
+
none: string;
|
|
102
|
+
sheen: string;
|
|
103
|
+
glow: string;
|
|
104
|
+
};
|
|
95
105
|
}, {
|
|
96
106
|
variant: {
|
|
97
107
|
solid: string;
|
|
@@ -138,6 +148,11 @@ export declare const surfaceVariants: import("tailwind-variants").TVReturnType<{
|
|
|
138
148
|
4: string;
|
|
139
149
|
5: string;
|
|
140
150
|
};
|
|
151
|
+
ambient: {
|
|
152
|
+
none: string;
|
|
153
|
+
sheen: string;
|
|
154
|
+
glow: string;
|
|
155
|
+
};
|
|
141
156
|
}>, {
|
|
142
157
|
variant: {
|
|
143
158
|
solid: string;
|
|
@@ -184,6 +199,11 @@ export declare const surfaceVariants: import("tailwind-variants").TVReturnType<{
|
|
|
184
199
|
4: string;
|
|
185
200
|
5: string;
|
|
186
201
|
};
|
|
202
|
+
ambient: {
|
|
203
|
+
none: string;
|
|
204
|
+
sheen: string;
|
|
205
|
+
glow: string;
|
|
206
|
+
};
|
|
187
207
|
}, undefined, import("tailwind-variants").TVReturnType<{
|
|
188
208
|
variant: {
|
|
189
209
|
solid: string;
|
|
@@ -230,6 +250,11 @@ export declare const surfaceVariants: import("tailwind-variants").TVReturnType<{
|
|
|
230
250
|
4: string;
|
|
231
251
|
5: string;
|
|
232
252
|
};
|
|
253
|
+
ambient: {
|
|
254
|
+
none: string;
|
|
255
|
+
sheen: string;
|
|
256
|
+
glow: string;
|
|
257
|
+
};
|
|
233
258
|
}, undefined, "outline-none transition-colors", import("tailwind-variants/dist/config.js").TVConfig<{
|
|
234
259
|
variant: {
|
|
235
260
|
solid: string;
|
|
@@ -276,6 +301,11 @@ export declare const surfaceVariants: import("tailwind-variants").TVReturnType<{
|
|
|
276
301
|
4: string;
|
|
277
302
|
5: string;
|
|
278
303
|
};
|
|
304
|
+
ambient: {
|
|
305
|
+
none: string;
|
|
306
|
+
sheen: string;
|
|
307
|
+
glow: string;
|
|
308
|
+
};
|
|
279
309
|
}, {
|
|
280
310
|
variant: {
|
|
281
311
|
solid: string;
|
|
@@ -322,6 +352,11 @@ export declare const surfaceVariants: import("tailwind-variants").TVReturnType<{
|
|
|
322
352
|
4: string;
|
|
323
353
|
5: string;
|
|
324
354
|
};
|
|
355
|
+
ambient: {
|
|
356
|
+
none: string;
|
|
357
|
+
sheen: string;
|
|
358
|
+
glow: string;
|
|
359
|
+
};
|
|
325
360
|
}>, unknown, unknown, undefined>>;
|
|
326
361
|
/** Represents the union of every surface variant prop. */
|
|
327
362
|
export type SurfaceVariants = VariantProps<typeof surfaceVariants>;
|
|
@@ -335,3 +370,5 @@ export type SurfaceRadius = NonNullable<SurfaceVariants['radius']>;
|
|
|
335
370
|
export type SurfacePadding = NonNullable<SurfaceVariants['padding']>;
|
|
336
371
|
/** Represents the shadow-depth override (0–5); omitted means the variant decides. */
|
|
337
372
|
export type SurfaceElevation = NonNullable<SurfaceVariants['elevation']>;
|
|
373
|
+
/** Represents the optional ambient gradient overlay (none · sheen · glow); omitted = none. */
|
|
374
|
+
export type SurfaceAmbient = NonNullable<SurfaceVariants['ambient']>;
|
package/dist/utils/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ButtonType, ColorExtensions, CssExtensions, Environment, Equality, HtmlElement, IS_DEV, IS_PRODUCTION, Key, Layer, OptionalExtensions, PressExtensions, Tones, TransitionExtensions, composeEventHandlers, dataAttr, layerStyle, surfaceVariants, tv } from '../chunk-
|
|
1
|
+
export { ButtonType, ColorExtensions, CssExtensions, Environment, Equality, HtmlElement, IS_DEV, IS_PRODUCTION, Key, Layer, OptionalExtensions, PressExtensions, Tones, TransitionExtensions, composeEventHandlers, dataAttr, layerStyle, surfaceVariants, tv } from '../chunk-DX7FYAKY.js';
|
|
2
2
|
export { cn, composeRefs } from '../chunk-X2MYOHOB.js';
|
|
3
3
|
import '../chunk-DCHYNTHI.js';
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/utils/index.ts","../src/utils/composeEventHandlers.ts","../src/utils/dataAttr.ts","../src/utils/CssExtensions.ts","../src/utils/ColorExtensions.ts","../src/utils/OptionalExtensions.ts","../src/utils/PressExtensions.ts","../src/utils/HtmlExtensions.ts","../src/utils/KeyboardExtensions.ts","../src/utils/Environment.ts","../src/utils/TransitionExtensions.ts","../src/utils/Tones.ts","../src/utils/SurfaceStyles.ts","../src/utils/Layers.ts","../src/utils/Equality.ts"],"names":[],"mappings":"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","file":"chunk-JYGC5SRP.js","sourcesContent":["export { cn } from './cn';\nexport { composeRefs } from './composeRefs';\nexport { composeEventHandlers } from './composeEventHandlers';\nexport { dataAttr } from './dataAttr';\nexport { tv, type VariantProps } from './tv';\nexport type {\n PolymorphicProps,\n PolymorphicPropsWithoutRef,\n PolymorphicRef,\n} from './polymorphic';\nexport { CssExtensions } from './CssExtensions';\nexport type {\n PaddingToken,\n RadiusToken,\n SizeValue,\n PaddingProp,\n RadiusProp,\n BoxSizeOverrides,\n SizeUnion,\n SizePreset,\n AbsolutePositionPreset,\n AbsoluteInsetOverrides,\n AbsolutePosition,\n} from './CssExtensions';\nexport { ColorExtensions } from './ColorExtensions';\nexport type { ColorTone, ColorOverride, ColorProp } from './ColorExtensions';\nexport { OptionalExtensions } from './OptionalExtensions';\nexport { PressExtensions, type PressEvent } from './PressExtensions';\nexport { HtmlElement, ButtonType } from './HtmlExtensions';\nexport { Key } from './KeyboardExtensions';\nexport { Environment, IS_DEV, IS_PRODUCTION } from './Environment';\nexport { TransitionExtensions } from './TransitionExtensions';\nexport type {\n PresenceAnimationDurationProp,\n PresenceAnimationDuration,\n} from './TransitionExtensions';\nexport { surfaceVariants } from './SurfaceStyles';\nexport type {\n SurfaceVariants,\n SurfaceVariant,\n SurfaceTone,\n SurfaceRadius,\n SurfacePadding,\n SurfaceElevation,\n} from './SurfaceStyles';\nexport { Layer, layerStyle, type LayerName } from './Layers';\nexport { Equality, type EqualityComparer } from './Equality';\nexport type { Tone, Size, Radius, Padding, Elevation } from './StyleTokens';\nexport { Tones, type ToneFamily } from './Tones';\n","import type { SyntheticEvent } from 'react';\n\n/**\n * Chain two event handlers. The first handler runs, then the second — unless\n * the first called `event.preventDefault()`, in which case the second is skipped.\n * Use when overriding a default handler from a parent while still allowing\n * the consumer to provide their own.\n */\nexport function composeEventHandlers<E extends SyntheticEvent>(\n theirHandler: ((event: E) => void) | undefined,\n ourHandler: (event: E) => void,\n { checkForDefaultPrevented = true }: { checkForDefaultPrevented?: boolean } = {},\n): (event: E) => void {\n return (event) => {\n theirHandler?.(event);\n if (!checkForDefaultPrevented || !event.defaultPrevented) {\n ourHandler(event);\n }\n };\n}\n","/**\n * Returns `\"\"` when the condition is true, `undefined` otherwise.\n * Use for boolean `data-*` attributes — React strips the attr when value is undefined,\n * so the DOM cleanly toggles `data-state` rather than `data-state=\"false\"`.\n */\nexport function dataAttr(condition: boolean | undefined): '' | undefined {\n return condition ? '' : undefined;\n}\n","import type { CSSProperties } from 'react';\n\n/** CSS-value extensions — types, token maps, resolvers. Call as `CssExtensions.x(...)`. */\n\n// =============================================================================\n// Tokens (types — individually exported; types are erased, no shaking concern)\n// =============================================================================\n\nexport type PaddingToken = 'none' | 'xs' | 'sm' | 'md' | 'lg' | 'xl';\nexport type RadiusToken = 'none' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'full';\nexport type SizeValue = string | number;\nexport type PaddingProp = PaddingToken | { x?: SizeValue; y?: SizeValue };\nexport type RadiusProp = RadiusToken | SizeValue;\nexport interface BoxSizeOverrides {\n width?: SizeValue;\n height?: SizeValue;\n minWidth?: SizeValue;\n minHeight?: SizeValue;\n maxWidth?: SizeValue;\n maxHeight?: SizeValue;\n /** Shorthand for square boxes — applied as fallback for both `width` and `height`. Explicit `width`/`height` win when both are set. */\n boxSize?: SizeValue;\n /** CSS `aspect-ratio`. String like `'16/9'` or number like `1.5`. Pairs naturally with a single width/height. */\n aspectRatio?: string | number;\n}\n\n/** Canonical size preset vocabulary — shared across components. Each component picks the subset it supports via `Extract<SizePreset, ...>` and owns its internal dimension mapping. */\nexport type SizePreset = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';\n\n/* Absolute-positioning tokens — preset 9-anchor enum + raw inset overrides. */\n\nexport type AbsolutePositionPreset =\n | 'top-right'\n | 'top-left'\n | 'bottom-right'\n | 'bottom-left'\n | 'top'\n | 'bottom'\n | 'left'\n | 'right'\n | 'center';\n\nexport interface AbsoluteInsetOverrides {\n top?: SizeValue;\n right?: SizeValue;\n bottom?: SizeValue;\n left?: SizeValue;\n}\n\nexport type AbsolutePosition = AbsolutePositionPreset | AbsoluteInsetOverrides;\n\n// =============================================================================\n// Token → CSS maps\n// =============================================================================\n\nconst PADDING_TOKEN_TO_CSS: Record<Exclude<PaddingToken, 'none'>, string> = {\n xs: '0.5rem',\n sm: '0.75rem',\n md: '1rem',\n lg: '1.5rem',\n xl: '2rem',\n};\n\nconst RADIUS_TOKEN_TO_CSS: Record<Exclude<RadiusToken, 'none' | 'full'>, string> = {\n xs: '0.125rem',\n sm: '0.25rem',\n md: '0.5rem',\n lg: '0.75rem',\n xl: '1rem',\n};\n\n// =============================================================================\n// Internal resolvers\n// =============================================================================\n\nfunction toCss(v: SizeValue): string {\n return typeof v === 'number' ? `${v}px` : v;\n}\n\nfunction resolvePadding(padding: PaddingProp | undefined): CSSProperties | undefined {\n if (!padding) return undefined;\n if (typeof padding === 'string') {\n if (padding === 'none') {\n return { paddingLeft: 0, paddingRight: 0, paddingTop: 0, paddingBottom: 0 };\n }\n const v = PADDING_TOKEN_TO_CSS[padding];\n return { paddingLeft: v, paddingRight: v, paddingTop: v, paddingBottom: v };\n }\n const style: CSSProperties = {};\n if (padding.x !== undefined) {\n const v = toCss(padding.x);\n style.paddingLeft = v;\n style.paddingRight = v;\n }\n if (padding.y !== undefined) {\n const v = toCss(padding.y);\n style.paddingTop = v;\n style.paddingBottom = v;\n }\n return style;\n}\n\nfunction resolveRadius(radius: RadiusProp | undefined): CSSProperties | undefined {\n if (radius === undefined || radius === null) return undefined;\n if (typeof radius === 'number') return { borderRadius: `${radius}px` };\n if (radius === 'none') return { borderRadius: 0 };\n if (radius === 'full') return { borderRadius: '9999px' };\n if (radius in RADIUS_TOKEN_TO_CSS) {\n return {\n borderRadius:\n RADIUS_TOKEN_TO_CSS[radius as Exclude<RadiusToken, 'none' | 'full'>],\n };\n }\n return { borderRadius: radius };\n}\n\nfunction resolveBoxSize(overrides: BoxSizeOverrides): CSSProperties | undefined {\n const style: CSSProperties = {};\n let hasAny = false;\n // boxSize is the fallback for width AND height — explicit dims win.\n const effectiveWidth = overrides.width ?? overrides.boxSize;\n const effectiveHeight = overrides.height ?? overrides.boxSize;\n if (effectiveWidth !== undefined) {\n style.width = toCss(effectiveWidth);\n hasAny = true;\n }\n if (effectiveHeight !== undefined) {\n style.height = toCss(effectiveHeight);\n hasAny = true;\n }\n if (overrides.minWidth !== undefined) {\n style.minWidth = toCss(overrides.minWidth);\n hasAny = true;\n }\n if (overrides.minHeight !== undefined) {\n style.minHeight = toCss(overrides.minHeight);\n hasAny = true;\n }\n if (overrides.maxWidth !== undefined) {\n style.maxWidth = toCss(overrides.maxWidth);\n hasAny = true;\n }\n if (overrides.maxHeight !== undefined) {\n style.maxHeight = toCss(overrides.maxHeight);\n hasAny = true;\n }\n if (overrides.aspectRatio !== undefined) {\n style.aspectRatio = String(overrides.aspectRatio);\n hasAny = true;\n }\n return hasAny ? style : undefined;\n}\n\n/** Union type for size props that accept either a named preset, a raw value (applied as `boxSize`), or an explicit dim object. */\nexport type SizeUnion<P extends string> =\n | P\n | (string & {}) // keeps preset literals in autocomplete while accepting any CSS unit string\n | number\n | BoxSizeOverrides;\n\n/**\n * Parse a union-style size prop into (a) a preset name (if matched), or (b) a `BoxSizeOverrides` payload.\n *\n * Resolution order:\n * - `undefined` → `{}`\n * - object → `{ box: input }`\n * - preset string → `{ preset: input }`\n * - any other string → `{ box: { boxSize: input } }`\n * - number → `{ box: { boxSize: input } }`\n */\nfunction parseSizeUnion<P extends string>(\n input: SizeUnion<P> | undefined,\n presets: ReadonlySet<string>,\n): { preset?: P; box?: BoxSizeOverrides } {\n if (input === undefined) return {};\n if (typeof input === 'object' && input !== null) return { box: input };\n if (typeof input === 'string' && presets.has(input)) return { preset: input as P };\n if (typeof input === 'number' || typeof input === 'string') {\n return { box: { boxSize: input } };\n }\n return {};\n}\n\n// =============================================================================\n// Grouped namespace export\n// =============================================================================\n\nexport const CssExtensions = {\n toCss,\n resolvePadding,\n resolveRadius,\n resolveBoxSize,\n parseSizeUnion,\n PADDING_TOKEN_TO_CSS,\n RADIUS_TOKEN_TO_CSS,\n} as const;\n","import type { CSSProperties } from 'react';\n\n/* Tone vocabulary shared by tone-aware components (Button, Checkbox, ToggleButton, Tag, Alert, etc.). */\nexport type ColorTone = 'primary' | 'neutral' | 'danger' | 'success' | 'warning';\n\n/* Explicit color overrides for the active tone's slot set. Pair with a base `tone` prop on the component. */\nexport interface ColorOverride {\n /* Main background / fill color. Drives `bg-{tone}`, `hover:bg-{tone}/X`, `active:bg-{tone}/X`, `border-{tone}`, `ring-{tone}`. */\n bg?: string;\n\n /* Text/icon color on top of `bg`. Drives `text-{tone}-foreground`. */\n text?: string;\n\n /* Light tinted background for soft variants. Drives `bg-{tone}-soft`. */\n soft?: string;\n\n /* Text on top of `soft` background. Drives `text-{tone}-soft-foreground`. */\n softText?: string;\n\n /* Focus ring color override (else inherits the component's tone). */\n ring?: string;\n}\n\n/* Accepted shapes for the `color` prop: a single seed string (lib derives rest) OR an explicit slot override object. */\nexport type ColorProp = string | ColorOverride;\n\n/* Per-tone CSS variable name suffixes (after `--color-`). */\nconst TONE_TOKEN_MAP: Record<\n ColorTone,\n { main: string; fg: string; soft: string; softFg: string }\n> = {\n primary: { main: 'primary', fg: 'primary-foreground', soft: 'primary-soft', softFg: 'primary-soft-foreground' },\n neutral: { main: 'foreground', fg: 'background', soft: 'muted', softFg: 'foreground' },\n danger: { main: 'destructive', fg: 'destructive-foreground', soft: 'destructive-soft', softFg: 'destructive-soft-foreground' },\n success: { main: 'success', fg: 'success-foreground', soft: 'success-soft', softFg: 'success-soft-foreground' },\n warning: { main: 'warning', fg: 'warning-foreground', soft: 'warning-soft', softFg: 'warning-soft-foreground' },\n};\n\n/**\n * Convert a `color` / `colors` prop into a CSS-variable override style for\n * the active tone's slot set. Returned style overrides the component's theme\n * tokens locally — every Tailwind utility (`bg-{tone}`, `hover:bg-{tone}/X`,\n * `text-{tone}-foreground`, etc.) that references the var picks it up\n * automatically. No variant config refactor required.\n *\n * Single-seed mode (`input` is a string):\n * - `bg` ← seed\n * - `text` ← white (default contrast; override via `colors.text`)\n * - `soft` ← seed mixed 12% over white via `color-mix(in oklch, ...)`\n * - `softText` ← seed\n * - `ring` ← seed\n *\n * Object mode (`input` is a `ColorOverride`):\n * - Each slot independently overridable; unset slots retain the theme default.\n */\nfunction toneColorOverride(\n input: ColorProp | undefined,\n tone: ColorTone | undefined,\n): CSSProperties | undefined {\n if (input === undefined || input === null) return undefined;\n const activeTone = tone ?? 'primary';\n const tokens = TONE_TOKEN_MAP[activeTone];\n const out: Record<string, string> = {};\n\n if (typeof input === 'string') {\n out[`--color-${tokens.main}`] = input;\n out[`--color-${tokens.fg}`] = '#ffffff';\n out[`--color-${tokens.soft}`] = `color-mix(in oklch, ${input} 12%, white)`;\n out[`--color-${tokens.softFg}`] = input;\n out['--color-ring'] = input;\n } else {\n if (input.bg !== undefined) out[`--color-${tokens.main}`] = input.bg;\n if (input.text !== undefined) out[`--color-${tokens.fg}`] = input.text;\n if (input.soft !== undefined) out[`--color-${tokens.soft}`] = input.soft;\n if (input.softText !== undefined) out[`--color-${tokens.softFg}`] = input.softText;\n if (input.ring !== undefined) out['--color-ring'] = input.ring;\n }\n\n return Object.keys(out).length > 0 ? (out as CSSProperties) : undefined;\n}\n\n// =============================================================================\n// Grouped namespace export\n// =============================================================================\n\nexport const ColorExtensions = {\n toneColorOverride,\n TONE_TOKEN_MAP,\n} as const;\n","/** Optional value extensions — call as `OptionalExtensions.x(...)`. */\n\n/**\n * Construct an optional from a `(condition, value)` pair: returns `value` when\n * `condition` is truthy, otherwise `undefined`. Use to keep DOM attributes\n * absent when their default/false meaning is what we want (e.g. `aria-busy`,\n * `tabIndex`, `disabled`).\n */\nfunction from<T>(condition: unknown, value: T): T | undefined {\n return condition ? value : undefined;\n}\n\nexport const OptionalExtensions = {\n from,\n} as const;\n","import type { KeyboardEvent, PointerEvent } from 'react';\n\n/** Press-interaction extensions — types + constants shared by interactive components. */\n\n/** Unified press event — pointer OR keyboard activation on any HTML element. */\nexport type PressEvent<T extends HTMLElement = HTMLElement> =\n | PointerEvent<T>\n | KeyboardEvent<T>;\n\nexport const PressExtensions = {\n /**\n * Bounds for `longPressDelay` props. Below `min`: overlaps with normal\n * click latency, too easy to trigger accidentally. Above `max`: clearly a\n * developer error (5-min hold). `default` is the conventional 500ms.\n */\n longPressDelay: {\n min: 200,\n max: 300_000,\n default: 500,\n },\n} as const;\n","/* HTML attribute & element value enums (const + type pairs). */\n\n/* HTML element tag names — for JSX intrinsics and polymorphic `Comp` variables. */\nexport const HtmlElement = {\n Button: 'button',\n Anchor: 'a',\n Span: 'span',\n Div: 'div',\n} as const;\nexport type HtmlElement = (typeof HtmlElement)[keyof typeof HtmlElement];\n\n/* HTML `<button type=\"\">` attribute. */\nexport const ButtonType = {\n Button: 'button',\n Submit: 'submit',\n Reset: 'reset',\n} as const;\nexport type ButtonType = (typeof ButtonType)[keyof typeof ButtonType];\n","/* Keyboard key values from `KeyboardEvent.key`. Add new entries as components need them. */\nexport const Key = {\n Space: ' ',\n Enter: 'Enter',\n Escape: 'Escape',\n Tab: 'Tab',\n Backspace: 'Backspace',\n Delete: 'Delete',\n Home: 'Home',\n End: 'End',\n PageUp: 'PageUp',\n PageDown: 'PageDown',\n ArrowUp: 'ArrowUp',\n ArrowDown: 'ArrowDown',\n ArrowLeft: 'ArrowLeft',\n ArrowRight: 'ArrowRight',\n} as const;\nexport type Key = (typeof Key)[keyof typeof Key];\n","/* Build-environment value set + derived flags. Follows the library's const-object\n enum pattern (cf. HtmlElement, ButtonType, Key) — not a domain enum. */\n\nexport const Environment = {\n Development: 'development',\n Production: 'production',\n Test: 'test',\n} as const;\nexport type Environment = (typeof Environment)[keyof typeof Environment];\n\n/* Gate dev-only warnings/affordances on these. The literal `'production'` is kept\n inline so the consumer's bundler folds it and dev branches dead-code-eliminate. */\nexport const IS_DEV = process.env.NODE_ENV !== 'production';\nexport const IS_PRODUCTION = !IS_DEV;\n","/* Transition / animation utility extensions — duration normalization, defaults. Call as `TransitionExtensions.x(...)`. */\n\n// =============================================================================\n// Types — presence-style asymmetric durations (enter/exit). Not every animation\n// has an enter/exit phase (loops, one-shots, springs); this shape applies\n// specifically to mount/unmount or appear/disappear transitions.\n// =============================================================================\n\n/** Input prop — symmetric number OR asymmetric `{ enter, exit }`. */\nexport type PresenceAnimationDurationProp =\n | number\n | { enter?: number; exit?: number };\n\n/** Resolved (canonical) — both sides always present. */\nexport interface PresenceAnimationDuration {\n enter: number;\n exit: number;\n}\n\n// =============================================================================\n// Defaults\n// =============================================================================\n\nconst DEFAULT_DURATION_MS = 200;\n\n// =============================================================================\n// Internal resolvers\n// =============================================================================\n\nfunction resolveDuration(\n d: PresenceAnimationDurationProp | undefined,\n): PresenceAnimationDuration {\n if (typeof d === 'number') return { enter: d, exit: d };\n if (d && typeof d === 'object') {\n return {\n enter: d.enter ?? DEFAULT_DURATION_MS,\n exit: d.exit ?? DEFAULT_DURATION_MS,\n };\n }\n return { enter: DEFAULT_DURATION_MS, exit: DEFAULT_DURATION_MS };\n}\n\n// =============================================================================\n// Grouped namespace export\n// =============================================================================\n\nexport const TransitionExtensions = {\n resolveDuration,\n duration: { default: DEFAULT_DURATION_MS },\n} as const;\n","import type { Tone } from './StyleTokens';\n\n/* Contains the (variant-family × tone) → Tailwind class lookup shared between\n `surfaceVariants` and `buttonVariants` (and any future variant config). */\n\n/** Represents a tone-family — the variant group that picks the same bg/border/text palette. */\nexport type ToneFamily =\n | 'solid'\n | 'soft'\n | 'surface'\n | 'outline'\n | 'glass'\n | 'glassOutline'\n | 'subtle';\n\n/** Contains the cross-engine palette: bg / text (+ border where applicable) per tone-family × tone. */\nexport const Tones: Record<ToneFamily, Record<Tone, string>> = {\n /** Opaque tone bg + foreground. Used by `solid`, `elevated`, `flat`, button defaults. */\n solid: {\n neutral: 'bg-popover text-popover-foreground',\n primary: 'bg-primary text-primary-foreground',\n danger: 'bg-destructive text-destructive-foreground',\n success: 'bg-success text-success-foreground',\n warning: 'bg-warning text-warning-foreground',\n info: 'bg-info text-info-foreground',\n },\n /** Muted/tinted bg + tone-readable foreground. */\n soft: {\n neutral: 'bg-muted text-foreground',\n primary: 'bg-primary-soft text-primary',\n danger: 'bg-destructive-soft text-destructive',\n success: 'bg-success-soft text-success',\n warning: 'bg-warning-soft text-warning',\n info: 'bg-info-soft text-info',\n },\n /** Popover bg + tone-accent border. The \"default\" subtle look. */\n surface: {\n neutral: 'border-border bg-popover text-popover-foreground',\n primary: 'border-primary/40 bg-popover text-popover-foreground',\n danger: 'border-destructive/40 bg-popover text-popover-foreground',\n success: 'border-success/40 bg-popover text-popover-foreground',\n warning: 'border-warning/40 bg-popover text-popover-foreground',\n info: 'border-info/40 bg-popover text-popover-foreground',\n },\n /** Transparent bg, tone border + tone text. */\n outline: {\n neutral: 'border-border text-foreground',\n primary: 'border-primary text-primary',\n danger: 'border-destructive text-destructive',\n success: 'border-success text-success',\n warning: 'border-warning text-warning',\n info: 'border-info text-info',\n },\n /** Translucent tone bg + blur — used by `glass`. */\n glass: {\n neutral: 'bg-popover/70 text-popover-foreground',\n primary: 'bg-primary/30 text-primary-foreground',\n danger: 'bg-destructive/30 text-destructive-foreground',\n success: 'bg-success/30 text-success-foreground',\n warning: 'bg-warning/30 text-warning-foreground',\n info: 'bg-info/30 text-info-foreground',\n },\n /** Glass + tone-accent border at 50% alpha. */\n glassOutline: {\n neutral: 'border-border/50 bg-popover/70 text-popover-foreground',\n primary: 'border-primary/50 bg-primary/30 text-primary-foreground',\n danger: 'border-destructive/50 bg-destructive/30 text-destructive-foreground',\n success: 'border-success/50 bg-success/30 text-success-foreground',\n warning: 'border-warning/50 bg-warning/30 text-warning-foreground',\n info: 'border-info/50 bg-info/30 text-info-foreground',\n },\n /**\n * Low-alpha tinted fill + neutral `border-border`, no shadow. The understated\n * \"tinted panel / section band\" look — quieter than `soft`, flatter than `surface`.\n * Neutral fills from the muted token; coloured tones tint their `-soft` token at low alpha.\n */\n subtle: {\n neutral: 'border-border bg-muted/30 text-foreground',\n primary: 'border-primary/20 bg-primary-soft/60 text-foreground',\n danger: 'border-destructive/20 bg-destructive-soft/60 text-foreground',\n success: 'border-success/20 bg-success-soft/60 text-foreground',\n warning: 'border-warning/20 bg-warning-soft/60 text-foreground',\n info: 'border-info/20 bg-info-soft/60 text-foreground',\n },\n};\n","/* Provides the cross-domain surface style engine — variant × tone × radius × padding × elevation. */\n\nimport { tv, type VariantProps } from './tv';\nimport { Tones } from './Tones';\n\n/** Provides the tailwind-variants config for every \"block with a visual treatment\" surface. */\nexport const surfaceVariants = tv({\n base: 'outline-none transition-colors',\n variants: {\n variant: {\n /* Opaque fill, no border, light shadow — tooltips, chips, inline pills. */\n solid: 'shadow-sm',\n /* Muted/tinted fill, no border, light shadow — chat bubbles, inline groups. */\n soft: 'shadow-sm',\n /* Opaque fill + visible border + medium shadow — default for popovers/menus. */\n surface: 'border shadow-md',\n /* Transparent fill + visible border — static cards, embedded info blocks. */\n outline: 'border bg-transparent',\n /* Translucent + blur, no border, medium shadow — image overlays. */\n glass: 'backdrop-blur-md shadow-md',\n /* Translucent + blur + subtle border — premium / hero overlays. */\n 'glass-outline': 'border backdrop-blur-md shadow-md',\n /* Opaque fill, no border, heavy shadow — modals, drawers, command palette. */\n elevated: 'shadow-xl',\n /* Opaque fill, no border, no shadow — embedded sub-panels inside another surface. */\n flat: '',\n /* Low-alpha tinted fill + neutral border, no shadow — section bands, tinted panels. */\n subtle: 'border',\n },\n\n tone: { neutral: '', primary: '', danger: '', success: '', warning: '', info: '' },\n\n radius: {\n none: 'rounded-none',\n sm: 'rounded-sm',\n md: 'rounded-md',\n lg: 'rounded-lg',\n xl: 'rounded-xl',\n '2xl': 'rounded-2xl',\n full: 'rounded-full',\n },\n\n padding: {\n none: 'p-0',\n xs: 'p-1',\n sm: 'p-2',\n md: 'p-3',\n lg: 'p-4',\n xl: 'p-6',\n '2xl': 'p-8',\n },\n\n /* Optional shadow override — beats variant's default shadow via tailwind-merge precedence. */\n elevation: {\n 0: 'shadow-none',\n 1: 'shadow-sm',\n 2: 'shadow-md',\n 3: 'shadow-lg',\n 4: 'shadow-xl',\n 5: 'shadow-2xl',\n },\n },\n\n compoundVariants: [\n /* solid / elevated / flat share the same palette — opaque tone bg + tone foreground. */\n { variant: ['solid', 'elevated', 'flat'], tone: 'neutral', class: Tones.solid.neutral },\n { variant: ['solid', 'elevated', 'flat'], tone: 'primary', class: Tones.solid.primary },\n { variant: ['solid', 'elevated', 'flat'], tone: 'danger', class: Tones.solid.danger },\n { variant: ['solid', 'elevated', 'flat'], tone: 'success', class: Tones.solid.success },\n { variant: ['solid', 'elevated', 'flat'], tone: 'warning', class: Tones.solid.warning },\n { variant: ['solid', 'elevated', 'flat'], tone: 'info', class: Tones.solid.info },\n\n /* soft — muted/tinted bg, tone-readable text. */\n { variant: 'soft', tone: 'neutral', class: Tones.soft.neutral },\n { variant: 'soft', tone: 'primary', class: Tones.soft.primary },\n { variant: 'soft', tone: 'danger', class: Tones.soft.danger },\n { variant: 'soft', tone: 'success', class: Tones.soft.success },\n { variant: 'soft', tone: 'warning', class: Tones.soft.warning },\n { variant: 'soft', tone: 'info', class: Tones.soft.info },\n\n /* surface — popover bg + tone-accent border. */\n { variant: 'surface', tone: 'neutral', class: Tones.surface.neutral },\n { variant: 'surface', tone: 'primary', class: Tones.surface.primary },\n { variant: 'surface', tone: 'danger', class: Tones.surface.danger },\n { variant: 'surface', tone: 'success', class: Tones.surface.success },\n { variant: 'surface', tone: 'warning', class: Tones.surface.warning },\n { variant: 'surface', tone: 'info', class: Tones.surface.info },\n\n /* outline — transparent fill, tone border + tone text. */\n { variant: 'outline', tone: 'neutral', class: Tones.outline.neutral },\n { variant: 'outline', tone: 'primary', class: Tones.outline.primary },\n { variant: 'outline', tone: 'danger', class: Tones.outline.danger },\n { variant: 'outline', tone: 'success', class: Tones.outline.success },\n { variant: 'outline', tone: 'warning', class: Tones.outline.warning },\n { variant: 'outline', tone: 'info', class: Tones.outline.info },\n\n /* glass — translucent tinted fill + blur. */\n { variant: 'glass', tone: 'neutral', class: Tones.glass.neutral },\n { variant: 'glass', tone: 'primary', class: Tones.glass.primary },\n { variant: 'glass', tone: 'danger', class: Tones.glass.danger },\n { variant: 'glass', tone: 'success', class: Tones.glass.success },\n { variant: 'glass', tone: 'warning', class: Tones.glass.warning },\n { variant: 'glass', tone: 'info', class: Tones.glass.info },\n\n /* glass-outline — glass + tone border at 50% alpha. */\n { variant: 'glass-outline', tone: 'neutral', class: Tones.glassOutline.neutral },\n { variant: 'glass-outline', tone: 'primary', class: Tones.glassOutline.primary },\n { variant: 'glass-outline', tone: 'danger', class: Tones.glassOutline.danger },\n { variant: 'glass-outline', tone: 'success', class: Tones.glassOutline.success },\n { variant: 'glass-outline', tone: 'warning', class: Tones.glassOutline.warning },\n { variant: 'glass-outline', tone: 'info', class: Tones.glassOutline.info },\n\n /* subtle — low-alpha tinted fill + neutral border, no shadow. */\n { variant: 'subtle', tone: 'neutral', class: Tones.subtle.neutral },\n { variant: 'subtle', tone: 'primary', class: Tones.subtle.primary },\n { variant: 'subtle', tone: 'danger', class: Tones.subtle.danger },\n { variant: 'subtle', tone: 'success', class: Tones.subtle.success },\n { variant: 'subtle', tone: 'warning', class: Tones.subtle.warning },\n { variant: 'subtle', tone: 'info', class: Tones.subtle.info },\n ],\n\n defaultVariants: {\n variant: 'surface',\n tone: 'neutral',\n radius: 'md',\n padding: 'none',\n },\n});\n\n/** Represents the union of every surface variant prop. */\nexport type SurfaceVariants = VariantProps<typeof surfaceVariants>;\n\n/** Represents the visual-recipe axis (solid · soft · surface · outline · glass · etc.). */\nexport type SurfaceVariant = NonNullable<SurfaceVariants['variant']>;\n\n/** Represents the semantic colour axis (neutral · primary · danger · success · warning · info). */\nexport type SurfaceTone = NonNullable<SurfaceVariants['tone']>;\n\n/** Represents the corner-roundness axis (none · sm · md · lg · xl · 2xl · full). */\nexport type SurfaceRadius = NonNullable<SurfaceVariants['radius']>;\n\n/** Represents the interior-padding axis (none · xs · sm · md · lg · xl · 2xl). */\nexport type SurfacePadding = NonNullable<SurfaceVariants['padding']>;\n\n/** Represents the shadow-depth override (0–5); omitted means the variant decides. */\nexport type SurfaceElevation = NonNullable<SurfaceVariants['elevation']>;\n","/* Provides semantic z-index tiers — the single source of truth for stacking order. */\n\n/** Contains the semantic z-index tiers; matching `z-{name}` utilities ship via @theme. */\nexport const Layer = {\n /** Slips under the base layer; visually hidden. */\n Hide: -1,\n /** Sits in the default DOM flow with no z-index applied. */\n Base: 0,\n /** Slightly elevates over siblings — badges, sticky list items, in-grid overlays. */\n Raised: 10,\n /** Pins widgets inside a section — panels, inline overlays. */\n Docked: 20,\n /** Anchors a page-level sticky header or footer. */\n Sticky: 30,\n /** Hosts system banners — cookie notice, status banner, persistent FAB. */\n Banner: 40,\n /** Hosts dropdowns, popovers, comboboxes, menus, hover-cards anchored to a trigger. */\n Dropdown: 50,\n /** Dims the page behind a modal — backdrop / scrim layer. */\n Overlay: 60,\n /** Hosts modal / dialog / drawer / sheet content above its backdrop. */\n Modal: 70,\n /** Hosts popovers / menus opened FROM inside a modal — must beat Modal. */\n Popover: 80,\n /** Hosts toasts, snackbars, undo bars — survives above modals. */\n Toast: 90,\n /** Hosts tooltips and live-cursors — highest functional layer. */\n Tooltip: 100,\n /** Hosts DevTools / design-system inspector overlays — always wins. */\n Debug: 9999,\n} as const;\n\n/** Represents the name of a semantic z-index tier. */\nexport type LayerName = keyof typeof Layer;\n\n/** Provides an inline `style` object for programmatic z-index assignment. */\nexport function layerStyle(layer: LayerName): { zIndex: number } {\n return { zIndex: Layer[layer] };\n}\n","/* Provides reusable equality comparers for selection components and diff checks. */\n\n/** Represents a function that decides whether two values are equal. */\nexport type EqualityComparer<T> = (a: T, b: T) => boolean;\n\n/** Contains the standard equality comparers. */\nexport const Equality = {\n /** Checks NaN-safe strict equality (Object.is) — fits primitives + reference equality for objects. */\n strictEquals: <T>(a: T, b: T): boolean => Object.is(a, b),\n\n /** Checks plain `===` equality (NaN !== NaN). */\n referenceEquals: <T>(a: T, b: T): boolean => a === b,\n\n /** Provides a comparer that compares two objects by an extracted scalar key. */\n byKey:\n <T, K = unknown>(extract: (item: T) => K): EqualityComparer<T> =>\n (a, b) =>\n Object.is(extract(a), extract(b)),\n\n /** Checks shallow object equality — equal iff every key has identical (Object.is) value. */\n shallowEquals: <T extends Record<string, unknown>>(a: T, b: T): boolean => {\n if (Object.is(a, b)) return true;\n if (a == null || b == null) return false;\n const ak = Object.keys(a);\n const bk = Object.keys(b);\n if (ak.length !== bk.length) return false;\n return ak.every((k) => Object.prototype.hasOwnProperty.call(b, k) && Object.is(a[k], b[k]));\n },\n} as const;\n"]}
|