@geomak/ui 5.5.1 → 5.5.3
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/index.cjs +92 -112
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +23 -33
- package/dist/index.d.ts +23 -33
- package/dist/index.js +92 -111
- package/dist/index.js.map +1 -1
- package/dist/styles.css +17 -54
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -788,34 +788,6 @@ interface TreeProps {
|
|
|
788
788
|
*/
|
|
789
789
|
declare function Tree({ nodes, onNodeClick, defaultExpandAll, defaultExpandedKeys, }: TreeProps): react_jsx_runtime.JSX.Element;
|
|
790
790
|
|
|
791
|
-
interface ToggleItem {
|
|
792
|
-
key: string;
|
|
793
|
-
label?: React$1.ReactNode;
|
|
794
|
-
icon?: React$1.ReactNode;
|
|
795
|
-
}
|
|
796
|
-
interface ToggleButtonProps {
|
|
797
|
-
items: ToggleItem[];
|
|
798
|
-
onChange: (key: string) => void;
|
|
799
|
-
activeKey: string;
|
|
800
|
-
}
|
|
801
|
-
/**
|
|
802
|
-
* Segmented toggle-button group powered by Radix ToggleGroup.
|
|
803
|
-
*
|
|
804
|
-
* Radix handles keyboard navigation (arrow keys), focus ring, and
|
|
805
|
-
* `role="group"` / `aria-pressed` ARIA attributes.
|
|
806
|
-
*
|
|
807
|
-
* @example
|
|
808
|
-
* <ToggleButton
|
|
809
|
-
* items={[
|
|
810
|
-
* { key: 'grid', icon: <Icon.Grid /> },
|
|
811
|
-
* { key: 'list', icon: <Icon.List /> },
|
|
812
|
-
* ]}
|
|
813
|
-
* activeKey={view}
|
|
814
|
-
* onChange={setView}
|
|
815
|
-
* />
|
|
816
|
-
*/
|
|
817
|
-
declare function ToggleButton({ items, onChange, activeKey }: ToggleButtonProps): react_jsx_runtime.JSX.Element;
|
|
818
|
-
|
|
819
791
|
/** ─────────────────── types ─────────────────── */
|
|
820
792
|
type NotificationType = 'info' | 'success' | 'warning' | 'danger';
|
|
821
793
|
type NotificationPosition = 'top-right' | 'top-left' | 'top-center' | 'bottom-right' | 'bottom-left' | 'bottom-center';
|
|
@@ -1032,6 +1004,15 @@ interface ScalableContainerProps {
|
|
|
1032
1004
|
width?: React$1.CSSProperties['width'];
|
|
1033
1005
|
/** Resting height. Any CSS length / percent. Default `'auto'`. */
|
|
1034
1006
|
height?: React$1.CSSProperties['height'];
|
|
1007
|
+
/** Width when expanded. Default `'100%'` (fills parent). */
|
|
1008
|
+
expandedWidth?: React$1.CSSProperties['width'];
|
|
1009
|
+
/** Height when expanded. Default `'100%'`. Set a concrete value (e.g. 420)
|
|
1010
|
+
* when the container lives in normal flow and should push siblings down. */
|
|
1011
|
+
expandedHeight?: React$1.CSSProperties['height'];
|
|
1012
|
+
/** Controlled expanded state. */
|
|
1013
|
+
expanded?: boolean;
|
|
1014
|
+
/** Fires when the user toggles. */
|
|
1015
|
+
onExpandedChange?: (expanded: boolean) => void;
|
|
1035
1016
|
/** Content to render inside. */
|
|
1036
1017
|
children?: React$1.ReactNode;
|
|
1037
1018
|
/** CSS class appended to the expanded children wrapper. */
|
|
@@ -1071,7 +1052,7 @@ interface ScalableContainerProps {
|
|
|
1071
1052
|
* </ScalableContainer>
|
|
1072
1053
|
* ```
|
|
1073
1054
|
*/
|
|
1074
|
-
declare function ScalableContainer({ width, height, children, assignClassOnClick, expandIcon, collapseIcon, togglePosition, }: ScalableContainerProps): react_jsx_runtime.JSX.Element;
|
|
1055
|
+
declare function ScalableContainer({ width, height, expandedWidth, expandedHeight, expanded, onExpandedChange, children, assignClassOnClick, expandIcon, collapseIcon, togglePosition, }: ScalableContainerProps): react_jsx_runtime.JSX.Element;
|
|
1075
1056
|
|
|
1076
1057
|
interface GridCardItem {
|
|
1077
1058
|
key: string | number;
|
|
@@ -2153,8 +2134,17 @@ interface RadioGroupProps {
|
|
|
2153
2134
|
onChange?: (value: string) => void;
|
|
2154
2135
|
name?: string;
|
|
2155
2136
|
label?: React$1.ReactNode;
|
|
2156
|
-
/**
|
|
2157
|
-
|
|
2137
|
+
/**
|
|
2138
|
+
* Option arrangement. `'vertical'` (default) stacks options in a column;
|
|
2139
|
+
* `'horizontal'` lays them in a row. Named `layout` for consistency with
|
|
2140
|
+
* the other inputs.
|
|
2141
|
+
*/
|
|
2142
|
+
layout?: 'vertical' | 'horizontal';
|
|
2143
|
+
/**
|
|
2144
|
+
* Where each option's label sits relative to its radio dot.
|
|
2145
|
+
* `'right'` (default) → dot then label; `'left'` → label then dot.
|
|
2146
|
+
*/
|
|
2147
|
+
labelPosition?: 'left' | 'right';
|
|
2158
2148
|
/** Size preset — controls the dot + text size. Default `'md'`. */
|
|
2159
2149
|
size?: FieldSize;
|
|
2160
2150
|
disabled?: boolean;
|
|
@@ -2184,7 +2174,7 @@ interface RadioGroupProps {
|
|
|
2184
2174
|
* />
|
|
2185
2175
|
* ```
|
|
2186
2176
|
*/
|
|
2187
|
-
declare function RadioGroup({ options, value, defaultValue, onChange, name, label,
|
|
2177
|
+
declare function RadioGroup({ options, value, defaultValue, onChange, name, label, layout, labelPosition, size, disabled, required, errorMessage, }: RadioGroupProps): react_jsx_runtime.JSX.Element;
|
|
2188
2178
|
|
|
2189
2179
|
interface SwitchInputProps {
|
|
2190
2180
|
checked?: boolean;
|
|
@@ -2929,4 +2919,4 @@ interface ColorPickerProps {
|
|
|
2929
2919
|
*/
|
|
2930
2920
|
declare function ColorPicker({ value, onChange, label, htmlFor, name, layout, size, swatches, allowCustom, disabled, errorMessage, required, placeholder, }: ColorPickerProps): react_jsx_runtime.JSX.Element;
|
|
2931
2921
|
|
|
2932
|
-
export { AppShell, type AppShellProps, AutoComplete, type AutoCompleteProps, Avatar, type AvatarProps, type AvatarShape, type AvatarSize, type AvatarStatus, Box, type BoxBackground, type BoxBorder, type BoxProps, type BoxRadius, type BoxShadow, Button, type ButtonProps, Catalog, CatalogCarousel, type CatalogCarouselProps, CatalogGrid, type CatalogGridProps, type CatalogProps, Checkbox, type CheckboxProps, ColorPicker, type ColorPickerProps, ContextMenu, type ContextMenuActionItem, type ContextMenuPosition, type ContextMenuProps, type DatePickerProps, type DateRange, DateRangePicker, type DateRangePickerProps, type DateRangePreset, Drawer, type DrawerProps, Dropdown, type DropdownItem, type DropdownProps, type ExpandRowOptions, FadingBase, type FadingBaseProps, Field, type FieldProps, type FieldShellOptions, type FieldSize, FileInput, type FileInputProps, Flex, type FlexAlign, type FlexDirection, type FlexJustify, type FlexProps, type FlexWrap, Grid, GridCard, type GridCardItem, type GridCardProps, type GridProps, Icon, IconButton, type IconButtonProps, List, type ListItem, type ListProps, LoadingSpinner, type LoadingSpinnerProps, Modal, type ModalProps, type NotificationPayload, NotificationProvider, NumberInput, type NumberInputProps, OpaqueGridCard, type OpaqueGridCardProps, OtpInput, type OtpInputProps, type PaginationOptions, Password, type PasswordProps, Portal, type PortalProps, RadioGroup, type RadioGroupProps, type RadioOption, Rating, type RatingProps, ScalableContainer, type ScalableContainerProps, SearchInput, type SearchInputProps, SegmentedControl, type SegmentedControlProps, type SegmentedOption, Sidebar, type SidebarItem, type SidebarProps, type SidebarSection, SkeletonBox, type SkeletonBoxProps, SkeletonCard, type SkeletonCardProps, SkeletonCircle, type SkeletonCircleProps, SkeletonText, type SkeletonTextProps, Slider, type SliderMark, type SliderProps, type SliderValue, type Spacing, Switch, type SwitchInputProps, type TabItem, Table, type TableColumn, type TableProps, Tabs, type TabsProps, TagsInput, type TagsInputProps, DatePicker as Temporal, type TemporalPickerProps, TextArea, type TextAreaProps, TextInput, type TextInputProps, type ThemeColors, type ThemeConfig, type ThemeDensity, type ThemeMotion, ThemeProvider, type ThemeProviderProps, type ThemeRadius, type ThemeShadows, ThemeSwitch, type ThemeSwitchProps, type ThemeTypography, TimePicker, type TimePickerProps,
|
|
2922
|
+
export { AppShell, type AppShellProps, AutoComplete, type AutoCompleteProps, Avatar, type AvatarProps, type AvatarShape, type AvatarSize, type AvatarStatus, Box, type BoxBackground, type BoxBorder, type BoxProps, type BoxRadius, type BoxShadow, Button, type ButtonProps, Catalog, CatalogCarousel, type CatalogCarouselProps, CatalogGrid, type CatalogGridProps, type CatalogProps, Checkbox, type CheckboxProps, ColorPicker, type ColorPickerProps, ContextMenu, type ContextMenuActionItem, type ContextMenuPosition, type ContextMenuProps, type DatePickerProps, type DateRange, DateRangePicker, type DateRangePickerProps, type DateRangePreset, Drawer, type DrawerProps, Dropdown, type DropdownItem, type DropdownProps, type ExpandRowOptions, FadingBase, type FadingBaseProps, Field, type FieldProps, type FieldShellOptions, type FieldSize, FileInput, type FileInputProps, Flex, type FlexAlign, type FlexDirection, type FlexJustify, type FlexProps, type FlexWrap, Grid, GridCard, type GridCardItem, type GridCardProps, type GridProps, Icon, IconButton, type IconButtonProps, List, type ListItem, type ListProps, LoadingSpinner, type LoadingSpinnerProps, Modal, type ModalProps, type NotificationPayload, NotificationProvider, NumberInput, type NumberInputProps, OpaqueGridCard, type OpaqueGridCardProps, OtpInput, type OtpInputProps, type PaginationOptions, Password, type PasswordProps, Portal, type PortalProps, RadioGroup, type RadioGroupProps, type RadioOption, Rating, type RatingProps, ScalableContainer, type ScalableContainerProps, SearchInput, type SearchInputProps, SegmentedControl, type SegmentedControlProps, type SegmentedOption, Sidebar, type SidebarItem, type SidebarProps, type SidebarSection, SkeletonBox, type SkeletonBoxProps, SkeletonCard, type SkeletonCardProps, SkeletonCircle, type SkeletonCircleProps, SkeletonText, type SkeletonTextProps, Slider, type SliderMark, type SliderProps, type SliderValue, type Spacing, Switch, type SwitchInputProps, type TabItem, Table, type TableColumn, type TableProps, Tabs, type TabsProps, TagsInput, type TagsInputProps, DatePicker as Temporal, type TemporalPickerProps, TextArea, type TextAreaProps, TextInput, type TextInputProps, type ThemeColors, type ThemeConfig, type ThemeDensity, type ThemeMotion, ThemeProvider, type ThemeProviderProps, type ThemeRadius, type ThemeShadows, ThemeSwitch, type ThemeSwitchProps, type ThemeTypography, TimePicker, type TimePickerProps, Tooltip, type TooltipProps, TooltipProvider, TopBar, type TopBarProps, Tree, type TreeItemClickPayload, type TreeNode, type TreeProps, TreeSelect, type TreeSelectProps, Typography, type TypographyAlign, type TypographyColor, type TypographyProps, type TypographyVariant, type TypographyWeight, Wizard, type WizardProps, type WizardStep, fieldShell, useNotification };
|
package/dist/index.d.ts
CHANGED
|
@@ -788,34 +788,6 @@ interface TreeProps {
|
|
|
788
788
|
*/
|
|
789
789
|
declare function Tree({ nodes, onNodeClick, defaultExpandAll, defaultExpandedKeys, }: TreeProps): react_jsx_runtime.JSX.Element;
|
|
790
790
|
|
|
791
|
-
interface ToggleItem {
|
|
792
|
-
key: string;
|
|
793
|
-
label?: React$1.ReactNode;
|
|
794
|
-
icon?: React$1.ReactNode;
|
|
795
|
-
}
|
|
796
|
-
interface ToggleButtonProps {
|
|
797
|
-
items: ToggleItem[];
|
|
798
|
-
onChange: (key: string) => void;
|
|
799
|
-
activeKey: string;
|
|
800
|
-
}
|
|
801
|
-
/**
|
|
802
|
-
* Segmented toggle-button group powered by Radix ToggleGroup.
|
|
803
|
-
*
|
|
804
|
-
* Radix handles keyboard navigation (arrow keys), focus ring, and
|
|
805
|
-
* `role="group"` / `aria-pressed` ARIA attributes.
|
|
806
|
-
*
|
|
807
|
-
* @example
|
|
808
|
-
* <ToggleButton
|
|
809
|
-
* items={[
|
|
810
|
-
* { key: 'grid', icon: <Icon.Grid /> },
|
|
811
|
-
* { key: 'list', icon: <Icon.List /> },
|
|
812
|
-
* ]}
|
|
813
|
-
* activeKey={view}
|
|
814
|
-
* onChange={setView}
|
|
815
|
-
* />
|
|
816
|
-
*/
|
|
817
|
-
declare function ToggleButton({ items, onChange, activeKey }: ToggleButtonProps): react_jsx_runtime.JSX.Element;
|
|
818
|
-
|
|
819
791
|
/** ─────────────────── types ─────────────────── */
|
|
820
792
|
type NotificationType = 'info' | 'success' | 'warning' | 'danger';
|
|
821
793
|
type NotificationPosition = 'top-right' | 'top-left' | 'top-center' | 'bottom-right' | 'bottom-left' | 'bottom-center';
|
|
@@ -1032,6 +1004,15 @@ interface ScalableContainerProps {
|
|
|
1032
1004
|
width?: React$1.CSSProperties['width'];
|
|
1033
1005
|
/** Resting height. Any CSS length / percent. Default `'auto'`. */
|
|
1034
1006
|
height?: React$1.CSSProperties['height'];
|
|
1007
|
+
/** Width when expanded. Default `'100%'` (fills parent). */
|
|
1008
|
+
expandedWidth?: React$1.CSSProperties['width'];
|
|
1009
|
+
/** Height when expanded. Default `'100%'`. Set a concrete value (e.g. 420)
|
|
1010
|
+
* when the container lives in normal flow and should push siblings down. */
|
|
1011
|
+
expandedHeight?: React$1.CSSProperties['height'];
|
|
1012
|
+
/** Controlled expanded state. */
|
|
1013
|
+
expanded?: boolean;
|
|
1014
|
+
/** Fires when the user toggles. */
|
|
1015
|
+
onExpandedChange?: (expanded: boolean) => void;
|
|
1035
1016
|
/** Content to render inside. */
|
|
1036
1017
|
children?: React$1.ReactNode;
|
|
1037
1018
|
/** CSS class appended to the expanded children wrapper. */
|
|
@@ -1071,7 +1052,7 @@ interface ScalableContainerProps {
|
|
|
1071
1052
|
* </ScalableContainer>
|
|
1072
1053
|
* ```
|
|
1073
1054
|
*/
|
|
1074
|
-
declare function ScalableContainer({ width, height, children, assignClassOnClick, expandIcon, collapseIcon, togglePosition, }: ScalableContainerProps): react_jsx_runtime.JSX.Element;
|
|
1055
|
+
declare function ScalableContainer({ width, height, expandedWidth, expandedHeight, expanded, onExpandedChange, children, assignClassOnClick, expandIcon, collapseIcon, togglePosition, }: ScalableContainerProps): react_jsx_runtime.JSX.Element;
|
|
1075
1056
|
|
|
1076
1057
|
interface GridCardItem {
|
|
1077
1058
|
key: string | number;
|
|
@@ -2153,8 +2134,17 @@ interface RadioGroupProps {
|
|
|
2153
2134
|
onChange?: (value: string) => void;
|
|
2154
2135
|
name?: string;
|
|
2155
2136
|
label?: React$1.ReactNode;
|
|
2156
|
-
/**
|
|
2157
|
-
|
|
2137
|
+
/**
|
|
2138
|
+
* Option arrangement. `'vertical'` (default) stacks options in a column;
|
|
2139
|
+
* `'horizontal'` lays them in a row. Named `layout` for consistency with
|
|
2140
|
+
* the other inputs.
|
|
2141
|
+
*/
|
|
2142
|
+
layout?: 'vertical' | 'horizontal';
|
|
2143
|
+
/**
|
|
2144
|
+
* Where each option's label sits relative to its radio dot.
|
|
2145
|
+
* `'right'` (default) → dot then label; `'left'` → label then dot.
|
|
2146
|
+
*/
|
|
2147
|
+
labelPosition?: 'left' | 'right';
|
|
2158
2148
|
/** Size preset — controls the dot + text size. Default `'md'`. */
|
|
2159
2149
|
size?: FieldSize;
|
|
2160
2150
|
disabled?: boolean;
|
|
@@ -2184,7 +2174,7 @@ interface RadioGroupProps {
|
|
|
2184
2174
|
* />
|
|
2185
2175
|
* ```
|
|
2186
2176
|
*/
|
|
2187
|
-
declare function RadioGroup({ options, value, defaultValue, onChange, name, label,
|
|
2177
|
+
declare function RadioGroup({ options, value, defaultValue, onChange, name, label, layout, labelPosition, size, disabled, required, errorMessage, }: RadioGroupProps): react_jsx_runtime.JSX.Element;
|
|
2188
2178
|
|
|
2189
2179
|
interface SwitchInputProps {
|
|
2190
2180
|
checked?: boolean;
|
|
@@ -2929,4 +2919,4 @@ interface ColorPickerProps {
|
|
|
2929
2919
|
*/
|
|
2930
2920
|
declare function ColorPicker({ value, onChange, label, htmlFor, name, layout, size, swatches, allowCustom, disabled, errorMessage, required, placeholder, }: ColorPickerProps): react_jsx_runtime.JSX.Element;
|
|
2931
2921
|
|
|
2932
|
-
export { AppShell, type AppShellProps, AutoComplete, type AutoCompleteProps, Avatar, type AvatarProps, type AvatarShape, type AvatarSize, type AvatarStatus, Box, type BoxBackground, type BoxBorder, type BoxProps, type BoxRadius, type BoxShadow, Button, type ButtonProps, Catalog, CatalogCarousel, type CatalogCarouselProps, CatalogGrid, type CatalogGridProps, type CatalogProps, Checkbox, type CheckboxProps, ColorPicker, type ColorPickerProps, ContextMenu, type ContextMenuActionItem, type ContextMenuPosition, type ContextMenuProps, type DatePickerProps, type DateRange, DateRangePicker, type DateRangePickerProps, type DateRangePreset, Drawer, type DrawerProps, Dropdown, type DropdownItem, type DropdownProps, type ExpandRowOptions, FadingBase, type FadingBaseProps, Field, type FieldProps, type FieldShellOptions, type FieldSize, FileInput, type FileInputProps, Flex, type FlexAlign, type FlexDirection, type FlexJustify, type FlexProps, type FlexWrap, Grid, GridCard, type GridCardItem, type GridCardProps, type GridProps, Icon, IconButton, type IconButtonProps, List, type ListItem, type ListProps, LoadingSpinner, type LoadingSpinnerProps, Modal, type ModalProps, type NotificationPayload, NotificationProvider, NumberInput, type NumberInputProps, OpaqueGridCard, type OpaqueGridCardProps, OtpInput, type OtpInputProps, type PaginationOptions, Password, type PasswordProps, Portal, type PortalProps, RadioGroup, type RadioGroupProps, type RadioOption, Rating, type RatingProps, ScalableContainer, type ScalableContainerProps, SearchInput, type SearchInputProps, SegmentedControl, type SegmentedControlProps, type SegmentedOption, Sidebar, type SidebarItem, type SidebarProps, type SidebarSection, SkeletonBox, type SkeletonBoxProps, SkeletonCard, type SkeletonCardProps, SkeletonCircle, type SkeletonCircleProps, SkeletonText, type SkeletonTextProps, Slider, type SliderMark, type SliderProps, type SliderValue, type Spacing, Switch, type SwitchInputProps, type TabItem, Table, type TableColumn, type TableProps, Tabs, type TabsProps, TagsInput, type TagsInputProps, DatePicker as Temporal, type TemporalPickerProps, TextArea, type TextAreaProps, TextInput, type TextInputProps, type ThemeColors, type ThemeConfig, type ThemeDensity, type ThemeMotion, ThemeProvider, type ThemeProviderProps, type ThemeRadius, type ThemeShadows, ThemeSwitch, type ThemeSwitchProps, type ThemeTypography, TimePicker, type TimePickerProps,
|
|
2922
|
+
export { AppShell, type AppShellProps, AutoComplete, type AutoCompleteProps, Avatar, type AvatarProps, type AvatarShape, type AvatarSize, type AvatarStatus, Box, type BoxBackground, type BoxBorder, type BoxProps, type BoxRadius, type BoxShadow, Button, type ButtonProps, Catalog, CatalogCarousel, type CatalogCarouselProps, CatalogGrid, type CatalogGridProps, type CatalogProps, Checkbox, type CheckboxProps, ColorPicker, type ColorPickerProps, ContextMenu, type ContextMenuActionItem, type ContextMenuPosition, type ContextMenuProps, type DatePickerProps, type DateRange, DateRangePicker, type DateRangePickerProps, type DateRangePreset, Drawer, type DrawerProps, Dropdown, type DropdownItem, type DropdownProps, type ExpandRowOptions, FadingBase, type FadingBaseProps, Field, type FieldProps, type FieldShellOptions, type FieldSize, FileInput, type FileInputProps, Flex, type FlexAlign, type FlexDirection, type FlexJustify, type FlexProps, type FlexWrap, Grid, GridCard, type GridCardItem, type GridCardProps, type GridProps, Icon, IconButton, type IconButtonProps, List, type ListItem, type ListProps, LoadingSpinner, type LoadingSpinnerProps, Modal, type ModalProps, type NotificationPayload, NotificationProvider, NumberInput, type NumberInputProps, OpaqueGridCard, type OpaqueGridCardProps, OtpInput, type OtpInputProps, type PaginationOptions, Password, type PasswordProps, Portal, type PortalProps, RadioGroup, type RadioGroupProps, type RadioOption, Rating, type RatingProps, ScalableContainer, type ScalableContainerProps, SearchInput, type SearchInputProps, SegmentedControl, type SegmentedControlProps, type SegmentedOption, Sidebar, type SidebarItem, type SidebarProps, type SidebarSection, SkeletonBox, type SkeletonBoxProps, SkeletonCard, type SkeletonCardProps, SkeletonCircle, type SkeletonCircleProps, SkeletonText, type SkeletonTextProps, Slider, type SliderMark, type SliderProps, type SliderValue, type Spacing, Switch, type SwitchInputProps, type TabItem, Table, type TableColumn, type TableProps, Tabs, type TabsProps, TagsInput, type TagsInputProps, DatePicker as Temporal, type TemporalPickerProps, TextArea, type TextAreaProps, TextInput, type TextInputProps, type ThemeColors, type ThemeConfig, type ThemeDensity, type ThemeMotion, ThemeProvider, type ThemeProviderProps, type ThemeRadius, type ThemeShadows, ThemeSwitch, type ThemeSwitchProps, type ThemeTypography, TimePicker, type TimePickerProps, Tooltip, type TooltipProps, TooltipProvider, TopBar, type TopBarProps, Tree, type TreeItemClickPayload, type TreeNode, type TreeProps, TreeSelect, type TreeSelectProps, Typography, type TypographyAlign, type TypographyColor, type TypographyProps, type TypographyVariant, type TypographyWeight, Wizard, type WizardProps, type WizardStep, fieldShell, useNotification };
|
package/dist/index.js
CHANGED
|
@@ -9,12 +9,12 @@ import { useReducedMotion, AnimatePresence, motion } from 'framer-motion';
|
|
|
9
9
|
import * as TooltipPrimitive from '@radix-ui/react-tooltip';
|
|
10
10
|
import * as TabsPrimitive from '@radix-ui/react-tabs';
|
|
11
11
|
import * as Accordion from '@radix-ui/react-accordion';
|
|
12
|
-
import * as ToggleGroup from '@radix-ui/react-toggle-group';
|
|
13
12
|
import * as ContextMenuPrimitive from '@radix-ui/react-context-menu';
|
|
14
13
|
import * as Popover from '@radix-ui/react-popover';
|
|
15
14
|
import * as SwitchPrimitive from '@radix-ui/react-switch';
|
|
16
15
|
import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
|
|
17
16
|
import * as RadioGroupPrimitive from '@radix-ui/react-radio-group';
|
|
17
|
+
import * as ToggleGroup from '@radix-ui/react-toggle-group';
|
|
18
18
|
import * as SliderPrimitive from '@radix-ui/react-slider';
|
|
19
19
|
|
|
20
20
|
var Moon = ({ color = "gray" }) => /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.org/2000/svg", fill: color, viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: color, className: "w-8 h-8", children: /* @__PURE__ */ jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M21.752 15.002A9.718 9.718 0 0118 15.75c-5.385 0-9.75-4.365-9.75-9.75 0-1.33.266-2.597.748-3.752A9.753 9.753 0 003 11.25C3 16.635 7.365 21 12.75 21a9.753 9.753 0 009.002-5.998z" }) });
|
|
@@ -1143,38 +1143,6 @@ function Tree({
|
|
|
1143
1143
|
item.key
|
|
1144
1144
|
)) });
|
|
1145
1145
|
}
|
|
1146
|
-
function ToggleButton({ items, onChange, activeKey }) {
|
|
1147
|
-
return /* @__PURE__ */ jsx(
|
|
1148
|
-
ToggleGroup.Root,
|
|
1149
|
-
{
|
|
1150
|
-
type: "single",
|
|
1151
|
-
value: activeKey,
|
|
1152
|
-
onValueChange: (val) => {
|
|
1153
|
-
if (val) onChange(val);
|
|
1154
|
-
},
|
|
1155
|
-
className: "flex items-center",
|
|
1156
|
-
children: items.map((item, index) => /* @__PURE__ */ jsx(
|
|
1157
|
-
ToggleGroup.Item,
|
|
1158
|
-
{
|
|
1159
|
-
value: item.key,
|
|
1160
|
-
"aria-label": typeof item.label === "string" ? item.label : item.key,
|
|
1161
|
-
className: [
|
|
1162
|
-
// Semantic tokens handle both light and dark modes via
|
|
1163
|
-
// CSS vars — no `dark:` variants needed.
|
|
1164
|
-
index === 0 && "rounded-l-lg border-r border-border",
|
|
1165
|
-
index === items.length - 1 && "rounded-r-lg border-l border-border",
|
|
1166
|
-
"p-2 cursor-pointer transition-colors duration-150 text-foreground-secondary",
|
|
1167
|
-
"focus:outline-none focus-visible:ring-2 focus-visible:ring-accent",
|
|
1168
|
-
"bg-surface hover:bg-surface-raised",
|
|
1169
|
-
"data-[state=on]:bg-accent data-[state=on]:text-accent-fg"
|
|
1170
|
-
].filter(Boolean).join(" "),
|
|
1171
|
-
children: item.icon ?? item.label
|
|
1172
|
-
},
|
|
1173
|
-
item.key
|
|
1174
|
-
))
|
|
1175
|
-
}
|
|
1176
|
-
);
|
|
1177
|
-
}
|
|
1178
1146
|
var NotificationContext = createContext({
|
|
1179
1147
|
open: () => void 0,
|
|
1180
1148
|
close: () => void 0
|
|
@@ -1576,6 +1544,10 @@ var TOGGLE_POSITION_CLASS = {
|
|
|
1576
1544
|
function ScalableContainer({
|
|
1577
1545
|
width = "100%",
|
|
1578
1546
|
height = "auto",
|
|
1547
|
+
expandedWidth = "100%",
|
|
1548
|
+
expandedHeight = "100%",
|
|
1549
|
+
expanded,
|
|
1550
|
+
onExpandedChange,
|
|
1579
1551
|
children,
|
|
1580
1552
|
assignClassOnClick,
|
|
1581
1553
|
expandIcon,
|
|
@@ -1583,27 +1555,32 @@ function ScalableContainer({
|
|
|
1583
1555
|
togglePosition = "top-right"
|
|
1584
1556
|
}) {
|
|
1585
1557
|
const containerRef = useRef(null);
|
|
1586
|
-
const [
|
|
1558
|
+
const [internalScaled, setInternalScaled] = useState(false);
|
|
1559
|
+
const isScaled = expanded ?? internalScaled;
|
|
1587
1560
|
const reduced = useReducedMotion();
|
|
1588
1561
|
const onToggle = () => {
|
|
1589
1562
|
const next = !isScaled;
|
|
1590
|
-
|
|
1591
|
-
|
|
1563
|
+
if (expanded === void 0) setInternalScaled(next);
|
|
1564
|
+
onExpandedChange?.(next);
|
|
1565
|
+
if (next) {
|
|
1566
|
+
window.setTimeout(
|
|
1567
|
+
() => containerRef.current?.scrollIntoView({ behavior: "smooth", block: "nearest" }),
|
|
1568
|
+
reduced ? 0 : 340
|
|
1569
|
+
);
|
|
1570
|
+
}
|
|
1592
1571
|
};
|
|
1593
1572
|
const wrapperClass = isScaled ? assignClassOnClick : void 0;
|
|
1594
1573
|
return /* @__PURE__ */ jsxs(
|
|
1595
1574
|
motion.div,
|
|
1596
1575
|
{
|
|
1597
1576
|
ref: containerRef,
|
|
1598
|
-
layout: true,
|
|
1599
1577
|
animate: {
|
|
1600
|
-
width: isScaled ?
|
|
1601
|
-
height: isScaled ?
|
|
1578
|
+
width: isScaled ? expandedWidth : width,
|
|
1579
|
+
height: isScaled ? expandedHeight : height
|
|
1602
1580
|
},
|
|
1603
1581
|
transition: reduced ? { duration: 0 } : {
|
|
1604
1582
|
width: { type: "tween", duration: 0.32, ease: [0.16, 1, 0.3, 1] },
|
|
1605
|
-
height: { type: "tween", duration: 0.32, ease: [0.16, 1, 0.3, 1] }
|
|
1606
|
-
layout: { duration: 0.32, ease: [0.16, 1, 0.3, 1] }
|
|
1583
|
+
height: { type: "tween", duration: 0.32, ease: [0.16, 1, 0.3, 1] }
|
|
1607
1584
|
},
|
|
1608
1585
|
className: [
|
|
1609
1586
|
"relative rounded-lg overflow-hidden",
|
|
@@ -2139,10 +2116,10 @@ var FIELD_SIZE = {
|
|
|
2139
2116
|
md: { control: "h-control-md", text: "text-sm", padX: "px-3", gap: "gap-2" },
|
|
2140
2117
|
lg: { control: "h-control-lg", text: "text-sm", padX: "px-3.5", gap: "gap-2.5" }
|
|
2141
2118
|
};
|
|
2142
|
-
var FOCUS_WITHIN = "focus-within:outline-none focus-within:border-accent
|
|
2143
|
-
var FOCUS_ELEMENT = "focus:outline-none focus:border-accent
|
|
2144
|
-
var FOCUS_WITHIN_ERROR = "focus-within:border-status-error
|
|
2145
|
-
var FOCUS_ELEMENT_ERROR = "focus:border-status-error
|
|
2119
|
+
var FOCUS_WITHIN = "focus-within:outline-none focus-within:border-accent";
|
|
2120
|
+
var FOCUS_ELEMENT = "focus:outline-none focus:border-accent data-[state=open]:border-accent";
|
|
2121
|
+
var FOCUS_WITHIN_ERROR = "focus-within:border-status-error";
|
|
2122
|
+
var FOCUS_ELEMENT_ERROR = "focus:border-status-error data-[state=open]:border-status-error";
|
|
2146
2123
|
function fieldShell({
|
|
2147
2124
|
size = "md",
|
|
2148
2125
|
hasError = false,
|
|
@@ -2353,7 +2330,7 @@ function Dropdown({
|
|
|
2353
2330
|
"aria-invalid": hasError || void 0,
|
|
2354
2331
|
"aria-describedby": hasError ? errorId : void 0,
|
|
2355
2332
|
style,
|
|
2356
|
-
className: `flex items-center justify-between gap-
|
|
2333
|
+
className: `flex items-center justify-between gap-2 cursor-pointer select-none min-h-[36px] px-3 py-1.5 ${!style?.width ? "min-w-[200px]" : ""} ${fieldShell({ size, hasError, disabled, sized: false })}`,
|
|
2357
2334
|
tabIndex: disabled ? -1 : 0,
|
|
2358
2335
|
onKeyDown: (e) => {
|
|
2359
2336
|
if (disabled) return;
|
|
@@ -2363,31 +2340,25 @@ function Dropdown({
|
|
|
2363
2340
|
}
|
|
2364
2341
|
},
|
|
2365
2342
|
children: [
|
|
2366
|
-
/* @__PURE__ */ jsx(
|
|
2367
|
-
|
|
2343
|
+
/* @__PURE__ */ jsx("div", { className: "flex-1 min-w-0 flex flex-wrap items-center gap-1.5", children: !value || Array.isArray(value) && value.length === 0 ? /* @__PURE__ */ jsx("span", { className: "text-foreground-muted text-sm", children: placeholder }) : Array.isArray(value) ? value.map((val) => /* @__PURE__ */ jsx(
|
|
2344
|
+
Tag,
|
|
2368
2345
|
{
|
|
2369
|
-
|
|
2370
|
-
|
|
2371
|
-
|
|
2372
|
-
|
|
2373
|
-
|
|
2374
|
-
|
|
2375
|
-
|
|
2376
|
-
|
|
2377
|
-
|
|
2378
|
-
|
|
2379
|
-
|
|
2380
|
-
|
|
2381
|
-
|
|
2382
|
-
disabled,
|
|
2383
|
-
removeLabel: `Remove ${labelFor(value)}`,
|
|
2384
|
-
onRemove: () => removeSelected(value),
|
|
2385
|
-
children: labelFor(value)
|
|
2386
|
-
}
|
|
2387
|
-
)
|
|
2346
|
+
disabled,
|
|
2347
|
+
removeLabel: `Remove ${labelFor(val)}`,
|
|
2348
|
+
onRemove: () => removeSelected(val),
|
|
2349
|
+
children: labelFor(val)
|
|
2350
|
+
},
|
|
2351
|
+
String(val)
|
|
2352
|
+
)) : /* @__PURE__ */ jsx(
|
|
2353
|
+
Tag,
|
|
2354
|
+
{
|
|
2355
|
+
disabled,
|
|
2356
|
+
removeLabel: `Remove ${labelFor(value)}`,
|
|
2357
|
+
onRemove: () => removeSelected(value),
|
|
2358
|
+
children: labelFor(value)
|
|
2388
2359
|
}
|
|
2389
|
-
),
|
|
2390
|
-
/* @__PURE__ */ jsx("div", { className: `flex-shrink-0
|
|
2360
|
+
) }),
|
|
2361
|
+
/* @__PURE__ */ jsx("div", { className: `flex-shrink-0 text-foreground-muted transition-transform duration-200 ${open ? "rotate-180" : "rotate-0"}`, "aria-hidden": "true", children: /* @__PURE__ */ jsx("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 2, className: "h-4 w-4", children: /* @__PURE__ */ jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M19 9l-7 7-7-7" }) }) })
|
|
2391
2362
|
]
|
|
2392
2363
|
}
|
|
2393
2364
|
) }),
|
|
@@ -3645,7 +3616,8 @@ function RadioGroup({
|
|
|
3645
3616
|
onChange,
|
|
3646
3617
|
name,
|
|
3647
3618
|
label,
|
|
3648
|
-
|
|
3619
|
+
layout = "vertical",
|
|
3620
|
+
labelPosition = "right",
|
|
3649
3621
|
size = "md",
|
|
3650
3622
|
disabled,
|
|
3651
3623
|
required,
|
|
@@ -3654,6 +3626,7 @@ function RadioGroup({
|
|
|
3654
3626
|
const errorId = useId();
|
|
3655
3627
|
const groupId = useId();
|
|
3656
3628
|
const hasError = errorMessage != null;
|
|
3629
|
+
const labelFirst = labelPosition === "left";
|
|
3657
3630
|
return /* @__PURE__ */ jsx(
|
|
3658
3631
|
Field,
|
|
3659
3632
|
{
|
|
@@ -3674,44 +3647,51 @@ function RadioGroup({
|
|
|
3674
3647
|
required,
|
|
3675
3648
|
"aria-invalid": hasError || void 0,
|
|
3676
3649
|
"aria-describedby": hasError ? errorId : void 0,
|
|
3677
|
-
orientation,
|
|
3678
|
-
className:
|
|
3650
|
+
orientation: layout,
|
|
3651
|
+
className: layout === "horizontal" ? "flex flex-row flex-wrap gap-5" : "flex flex-col gap-3",
|
|
3679
3652
|
children: options.map((opt) => {
|
|
3680
3653
|
const itemId = `${groupId}-${opt.value}`;
|
|
3681
|
-
|
|
3682
|
-
|
|
3683
|
-
|
|
3684
|
-
|
|
3685
|
-
|
|
3686
|
-
|
|
3687
|
-
|
|
3688
|
-
|
|
3689
|
-
|
|
3690
|
-
|
|
3691
|
-
|
|
3692
|
-
|
|
3693
|
-
|
|
3694
|
-
|
|
3695
|
-
|
|
3696
|
-
|
|
3697
|
-
|
|
3698
|
-
|
|
3699
|
-
|
|
3700
|
-
|
|
3701
|
-
|
|
3702
|
-
|
|
3703
|
-
|
|
3704
|
-
|
|
3705
|
-
|
|
3706
|
-
|
|
3707
|
-
|
|
3708
|
-
|
|
3709
|
-
|
|
3710
|
-
|
|
3711
|
-
|
|
3712
|
-
|
|
3713
|
-
|
|
3714
|
-
|
|
3654
|
+
const dot = /* @__PURE__ */ jsx(
|
|
3655
|
+
RadioGroupPrimitive.Item,
|
|
3656
|
+
{
|
|
3657
|
+
id: itemId,
|
|
3658
|
+
value: opt.value,
|
|
3659
|
+
disabled: opt.disabled,
|
|
3660
|
+
className: [
|
|
3661
|
+
DOT_SIZE[size],
|
|
3662
|
+
"mt-0.5 flex-shrink-0 rounded-full border bg-surface transition-colors duration-150",
|
|
3663
|
+
"border-border-strong",
|
|
3664
|
+
"hover:border-accent",
|
|
3665
|
+
"data-[state=checked]:border-accent",
|
|
3666
|
+
// Border-only focus, consistent with the fields.
|
|
3667
|
+
"focus:outline-none focus-visible:border-accent",
|
|
3668
|
+
"disabled:cursor-not-allowed disabled:opacity-50"
|
|
3669
|
+
].join(" "),
|
|
3670
|
+
children: /* @__PURE__ */ jsx(RadioGroupPrimitive.Indicator, { className: "flex h-full w-full items-center justify-center", children: /* @__PURE__ */ jsx("span", { className: "block h-1/2 w-1/2 rounded-full bg-accent" }) })
|
|
3671
|
+
}
|
|
3672
|
+
);
|
|
3673
|
+
const labelEl = /* @__PURE__ */ jsxs(
|
|
3674
|
+
"label",
|
|
3675
|
+
{
|
|
3676
|
+
htmlFor: itemId,
|
|
3677
|
+
className: [
|
|
3678
|
+
"select-none",
|
|
3679
|
+
opt.disabled ? "cursor-not-allowed opacity-50" : "cursor-pointer",
|
|
3680
|
+
labelFirst ? "text-right" : ""
|
|
3681
|
+
].filter(Boolean).join(" "),
|
|
3682
|
+
children: [
|
|
3683
|
+
/* @__PURE__ */ jsx("span", { className: `block ${TEXT_SIZE[size]} text-foreground`, children: opt.label }),
|
|
3684
|
+
opt.description && /* @__PURE__ */ jsx("span", { className: "block text-xs text-foreground-secondary mt-0.5", children: opt.description })
|
|
3685
|
+
]
|
|
3686
|
+
}
|
|
3687
|
+
);
|
|
3688
|
+
return /* @__PURE__ */ jsx("div", { className: "flex items-start gap-2.5", children: labelFirst ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
3689
|
+
labelEl,
|
|
3690
|
+
dot
|
|
3691
|
+
] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
3692
|
+
dot,
|
|
3693
|
+
labelEl
|
|
3694
|
+
] }) }, opt.value);
|
|
3715
3695
|
})
|
|
3716
3696
|
}
|
|
3717
3697
|
)
|
|
@@ -4442,11 +4422,11 @@ function DatePicker({
|
|
|
4442
4422
|
};
|
|
4443
4423
|
const displayValue = value ? format(value) : "";
|
|
4444
4424
|
return /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1", children: [
|
|
4445
|
-
/* @__PURE__ */ jsxs("div", { className: `flex ${layout === "vertical" ? "flex-col gap-1" : "flex-row items-
|
|
4425
|
+
/* @__PURE__ */ jsxs("div", { className: `flex ${layout === "vertical" ? "flex-col gap-1.5" : "flex-row items-start gap-3"}`, children: [
|
|
4446
4426
|
label && /* @__PURE__ */ jsx(
|
|
4447
4427
|
"label",
|
|
4448
4428
|
{
|
|
4449
|
-
className:
|
|
4429
|
+
className: `text-sm font-medium select-none text-foreground ${layout === "horizontal" ? "mt-2 flex-shrink-0 whitespace-nowrap" : ""}`,
|
|
4450
4430
|
htmlFor,
|
|
4451
4431
|
children: label
|
|
4452
4432
|
}
|
|
@@ -5102,10 +5082,11 @@ function OtpInput({
|
|
|
5102
5082
|
className: [
|
|
5103
5083
|
BOX_SIZE[size],
|
|
5104
5084
|
"text-center font-medium rounded-lg border bg-surface text-foreground",
|
|
5105
|
-
"transition-[border-color
|
|
5085
|
+
"transition-[border-color] duration-150",
|
|
5106
5086
|
hasError ? "border-status-error" : "border-border",
|
|
5107
5087
|
"hover:border-border-strong",
|
|
5108
|
-
|
|
5088
|
+
// Border-only focus, consistent with every field (no clip-prone ring).
|
|
5089
|
+
"focus:outline-none focus:border-accent",
|
|
5109
5090
|
"disabled:bg-surface-raised disabled:text-foreground-muted disabled:cursor-not-allowed"
|
|
5110
5091
|
].join(" ")
|
|
5111
5092
|
}
|
|
@@ -5646,6 +5627,6 @@ function ColorPicker({
|
|
|
5646
5627
|
] });
|
|
5647
5628
|
}
|
|
5648
5629
|
|
|
5649
|
-
export { AppShell, AutoComplete, Avatar, Box, Button, Catalog, CatalogCarousel, CatalogGrid, Checkbox, ColorPicker, ContextMenu, DateRangePicker, Drawer, Dropdown, FadingBase, Field, FileInput, Flex, Grid2 as Grid, GridCard, icons_default as Icon, IconButton, List2 as List, LoadingSpinner, Modal, NotificationProvider, NumberInput, OpaqueGridCard, OtpInput, Password, Portal, RadioGroup, Rating, ScalableContainer, SearchInput_default as SearchInput, SegmentedControl, Sidebar, SkeletonBox, SkeletonCard, SkeletonCircle, SkeletonText, Slider, Switch, Table, Tabs, TagsInput, DatePicker as Temporal, TextArea, TextInput, ThemeProvider, ThemeSwitch, TimePicker,
|
|
5630
|
+
export { AppShell, AutoComplete, Avatar, Box, Button, Catalog, CatalogCarousel, CatalogGrid, Checkbox, ColorPicker, ContextMenu, DateRangePicker, Drawer, Dropdown, FadingBase, Field, FileInput, Flex, Grid2 as Grid, GridCard, icons_default as Icon, IconButton, List2 as List, LoadingSpinner, Modal, NotificationProvider, NumberInput, OpaqueGridCard, OtpInput, Password, Portal, RadioGroup, Rating, ScalableContainer, SearchInput_default as SearchInput, SegmentedControl, Sidebar, SkeletonBox, SkeletonCard, SkeletonCircle, SkeletonText, Slider, Switch, Table, Tabs, TagsInput, DatePicker as Temporal, TextArea, TextInput, ThemeProvider, ThemeSwitch, TimePicker, Tooltip, TooltipProvider, TopBar, Tree, TreeSelect, Typography, Wizard, fieldShell, useNotification };
|
|
5650
5631
|
//# sourceMappingURL=index.js.map
|
|
5651
5632
|
//# sourceMappingURL=index.js.map
|