@a-type/ui 4.1.2 → 4.1.4

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.
Files changed (63) hide show
  1. package/dist/cjs/components/collapsible/Collapsible.js +1 -1
  2. package/dist/cjs/components/collapsible/Collapsible.js.map +1 -1
  3. package/dist/cjs/components/contextMenu/contextMenu.js +2 -2
  4. package/dist/cjs/components/contextMenu/contextMenu.js.map +1 -1
  5. package/dist/cjs/components/dialog/Dialog.js +3 -3
  6. package/dist/cjs/components/dialog/Dialog.js.map +1 -1
  7. package/dist/cjs/components/quickAction/QuickAction.d.ts +9 -6
  8. package/dist/cjs/components/quickAction/QuickAction.js +45 -25
  9. package/dist/cjs/components/quickAction/QuickAction.js.map +1 -1
  10. package/dist/cjs/components/select/Select.js +3 -3
  11. package/dist/cjs/components/tooltip/Tooltip.js +1 -1
  12. package/dist/cjs/components/tooltip/Tooltip.js.map +1 -1
  13. package/dist/cjs/systems/ValueMonitor.d.ts +8 -0
  14. package/dist/cjs/systems/ValueMonitor.js +40 -0
  15. package/dist/cjs/systems/ValueMonitor.js.map +1 -0
  16. package/dist/cjs/uno/rules/clipPath.d.ts +2 -0
  17. package/dist/cjs/uno/rules/clipPath.js +49 -0
  18. package/dist/cjs/uno/rules/clipPath.js.map +1 -0
  19. package/dist/cjs/uno/rules/index.js +2 -0
  20. package/dist/cjs/uno/rules/index.js.map +1 -1
  21. package/dist/cjs/uno/variants/baseUi.d.ts +2 -0
  22. package/dist/cjs/uno/variants/baseUi.js +16 -0
  23. package/dist/cjs/uno/variants/baseUi.js.map +1 -0
  24. package/dist/cjs/uno/variants/index.js +2 -0
  25. package/dist/cjs/uno/variants/index.js.map +1 -1
  26. package/dist/css/main.css +5 -5
  27. package/dist/esm/components/collapsible/Collapsible.js +1 -1
  28. package/dist/esm/components/collapsible/Collapsible.js.map +1 -1
  29. package/dist/esm/components/contextMenu/contextMenu.js +2 -2
  30. package/dist/esm/components/contextMenu/contextMenu.js.map +1 -1
  31. package/dist/esm/components/dialog/Dialog.js +3 -3
  32. package/dist/esm/components/dialog/Dialog.js.map +1 -1
  33. package/dist/esm/components/quickAction/QuickAction.d.ts +9 -6
  34. package/dist/esm/components/quickAction/QuickAction.js +41 -21
  35. package/dist/esm/components/quickAction/QuickAction.js.map +1 -1
  36. package/dist/esm/components/select/Select.js +3 -3
  37. package/dist/esm/components/tooltip/Tooltip.js +1 -1
  38. package/dist/esm/components/tooltip/Tooltip.js.map +1 -1
  39. package/dist/esm/systems/ValueMonitor.d.ts +8 -0
  40. package/dist/esm/systems/ValueMonitor.js +34 -0
  41. package/dist/esm/systems/ValueMonitor.js.map +1 -0
  42. package/dist/esm/uno/rules/clipPath.d.ts +2 -0
  43. package/dist/esm/uno/rules/clipPath.js +46 -0
  44. package/dist/esm/uno/rules/clipPath.js.map +1 -0
  45. package/dist/esm/uno/rules/index.js +2 -0
  46. package/dist/esm/uno/rules/index.js.map +1 -1
  47. package/dist/esm/uno/variants/baseUi.d.ts +2 -0
  48. package/dist/esm/uno/variants/baseUi.js +13 -0
  49. package/dist/esm/uno/variants/baseUi.js.map +1 -0
  50. package/dist/esm/uno/variants/index.js +2 -0
  51. package/dist/esm/uno/variants/index.js.map +1 -1
  52. package/package.json +1 -1
  53. package/src/components/collapsible/Collapsible.tsx +71 -74
  54. package/src/components/contextMenu/contextMenu.tsx +66 -67
  55. package/src/components/dialog/Dialog.tsx +3 -6
  56. package/src/components/quickAction/QuickAction.tsx +77 -42
  57. package/src/components/select/Select.tsx +241 -241
  58. package/src/components/tooltip/Tooltip.tsx +134 -135
  59. package/src/systems/ValueMonitor.ts +41 -0
  60. package/src/uno/rules/clipPath.ts +44 -0
  61. package/src/uno/rules/index.ts +2 -0
  62. package/src/uno/variants/baseUi.ts +13 -0
  63. package/src/uno/variants/index.ts +3 -0
@@ -1,241 +1,241 @@
1
- import {
2
- Select as BaseSelect,
3
- SelectArrowProps,
4
- SelectIconProps,
5
- SelectItemIndicatorProps,
6
- SelectItemProps,
7
- SelectPopupProps,
8
- SelectPositionerProps,
9
- SelectRootProps,
10
- } from '@base-ui/react/select';
11
- import classNames, { clsx } from 'clsx';
12
- import { Ref } from 'react';
13
- import { withClassName } from '../../hooks/withClassName.js';
14
- import { GroupScaleReset } from '../../systems/GroupScale.js';
15
- import { Button, ButtonProps } from '../button/Button.js';
16
- import { getButtonClassName } from '../button/classes.js';
17
- import { Icon } from '../icon/index.js';
18
- import { ArrowSvg } from '../utility/ArrowSvg.js';
19
-
20
- export const SelectItem = ({
21
- ref: forwardedRef,
22
- children,
23
- className,
24
- ...props
25
- }: SelectItemProps & {
26
- ref?: React.Ref<HTMLDivElement>;
27
- }) => {
28
- return (
29
- <SelectItemRoot className={className} {...props} ref={forwardedRef}>
30
- <SelectItemText>{children}</SelectItemText>
31
- <SelectItemIndicator />
32
- </SelectItemRoot>
33
- );
34
- };
35
-
36
- export const SelectItemRoot = withClassName(
37
- BaseSelect.Item,
38
- 'layer-components:(text-md leading-4 color-black flex items-center flex-row h-36px pr-4 pl-35px min-h-touch-large relative select-none)',
39
- 'layer-components:[&[data-disabled]]:(color-gray pointer-events-none) [&[data-highlighted]]:(outline-none bg-gray-light color-black)',
40
- );
41
- export const SelectItemIndicatorRoot = withClassName(
42
- BaseSelect.ItemIndicator,
43
- 'layer-components:(absolute left-0 w-25px inline-flex items-center justify-center)',
44
- );
45
- export const SelectItemIndicator = (props: SelectItemIndicatorProps) => (
46
- <SelectItemIndicatorRoot {...props}>
47
- <Icon name="check" />
48
- </SelectItemIndicatorRoot>
49
- );
50
- export const SelectItemText = withClassName(BaseSelect.ItemText, '');
51
- export const SelectGroup = BaseSelect.Group;
52
-
53
- export const SelectRoot = BaseSelect.Root;
54
- export const selectTriggerClassName = classNames(
55
- getButtonClassName({}),
56
- 'layer-components:([all:unset] inline-flex data-[placeholder]:color-gray-dark)',
57
- );
58
- export const SelectTriggerBase = withClassName(
59
- BaseSelect.Trigger,
60
- selectTriggerClassName,
61
- );
62
- export const UnstyledSelectTrigger = BaseSelect.Trigger;
63
-
64
- export type SelectTriggerProps = ButtonProps;
65
- export const SelectTrigger = function SelectTrigger({
66
- ref,
67
- children,
68
- render,
69
- ...props
70
- }: SelectTriggerProps & {
71
- ref?: React.Ref<HTMLButtonElement>;
72
- }) {
73
- return (
74
- <UnstyledSelectTrigger
75
- {...props}
76
- className="layer-components:(font-normal)"
77
- ref={ref}
78
- render={render || <Button className="gap-2 font-normal" />}
79
- >
80
- {children || (
81
- <>
82
- <SelectValue />
83
- <SelectIcon />
84
- </>
85
- )}
86
- </UnstyledSelectTrigger>
87
- );
88
- };
89
-
90
- export const SelectValue = withClassName(BaseSelect.Value, 'flex flex-row');
91
- export const SelectGroupLabel = withClassName(
92
- BaseSelect.GroupLabel,
93
- 'px-25px text-xs leading-6 color-black select-none',
94
- );
95
- export const SelectSeparator = withClassName(
96
- BaseSelect.Separator,
97
- 'h-1px bg-gray-light m-1',
98
- );
99
- export const SelectIcon = ({
100
- ref: forwardedRef,
101
- className,
102
- ...props
103
- }: SelectIconProps & {
104
- ref?: React.Ref<HTMLDivElement>;
105
- }) => {
106
- return (
107
- <BaseSelect.Icon
108
- className={classNames('ml-auto color-inherit', className)}
109
- {...props}
110
- ref={forwardedRef}
111
- >
112
- <Icon name="chevron" className="relative top-1px h-[12px] w-[12px]" />
113
- </BaseSelect.Icon>
114
- );
115
- };
116
-
117
- export const SelectArrow = ({ className, ...props }: SelectArrowProps) => (
118
- <BaseSelect.Arrow
119
- className={clsx('layer-components:arrow', className)}
120
- {...props}
121
- >
122
- <ArrowSvg />
123
- </BaseSelect.Arrow>
124
- );
125
-
126
- const scrollArrowClass = clsx(
127
- 'layer-components:(z-1 h-1rem w-full flex cursor-default select-none items-center justify-center rounded-sm text-center text-xs bg-white)',
128
- 'layer-components:before:(absolute left-0 h-full w-full content-empty)',
129
- 'layer-components:data-[direction=up]:data-[side=none]:before:(-top-full)',
130
- 'layer-components:data-[direction=down]:(bottom-0 data-[side=none]:before:-bottom-full)',
131
- );
132
-
133
- const contentStyle = {
134
- zIndex: 1001,
135
- '--local-corner-scale': '1',
136
- } as React.CSSProperties;
137
- const viewportStyle = { '--local-corner-scale': '0.9' } as React.CSSProperties;
138
- export const SelectContent = ({
139
- ref: forwardedRef,
140
- children,
141
- className,
142
- side,
143
- sideOffset = 8,
144
- align,
145
- alignOffset,
146
- alignItemWithTrigger = true,
147
- disableAnchorTracking,
148
- arrowPadding,
149
- anchor,
150
- collisionAvoidance,
151
- collisionBoundary,
152
- collisionPadding,
153
- sticky,
154
- positionMethod,
155
- ...props
156
- }: SelectPopupProps &
157
- SelectPositionerProps & { ref?: Ref<HTMLDivElement> }) => {
158
- return (
159
- <BaseSelect.Portal>
160
- <GroupScaleReset>
161
- <BaseSelect.Backdrop />
162
- <BaseSelect.Positioner
163
- side={side}
164
- sideOffset={sideOffset}
165
- align={align}
166
- alignOffset={alignOffset}
167
- alignItemWithTrigger={alignItemWithTrigger}
168
- disableAnchorTracking={disableAnchorTracking}
169
- arrowPadding={arrowPadding}
170
- anchor={anchor}
171
- collisionAvoidance={collisionAvoidance}
172
- collisionBoundary={collisionBoundary}
173
- collisionPadding={collisionPadding}
174
- sticky={sticky}
175
- positionMethod={positionMethod}
176
- className={classNames(
177
- 'layer-components:(z-1 select-none outline-none)',
178
- 'layer-components:(transform-origin-[--transform-origin])',
179
- )}
180
- >
181
- <SelectArrow
182
- className={clsx(
183
- 'layer-components:(transform transition border-black)',
184
- 'layer-components:data-[closed]:(scale-0 opacity-0)',
185
- 'layer-components:data-[open]:(scale-100 opacity-100)',
186
- )}
187
- />
188
- <BaseSelect.Popup
189
- className={classNames(
190
- 'layer-components:(overflow-hidden border border rounded-md border-solid bg-clip-padding shadow-lg transition bg-white border-black)',
191
- 'layer-components:transform-origin-[var(--transform-origin)]',
192
- 'layer-components:data-[starting-style]:data-[side=bottom]:(translate-y-4px opacity-0)',
193
- 'layer-components:data-[ending-style]:data-[side=bottom]:(translate-y-4px opacity-0)',
194
- 'layer-components:data-[starting-style]:data-[side=top]:(translate-y--4px opacity-0)',
195
- 'layer-components:data-[ending-style]:data-[side=top]:(translate-y-0 opacity-0)',
196
- 'layer-components:data-[starting-style]:data-[side=right]:(translate-x-4px opacity-0)',
197
- 'layer-components:data-[ending-style]:data-[side=right]:(translate-x-0 opacity-0)',
198
- 'layer-components:data-[starting-style]:data-[side=left]:(translate-x--4px opacity-0)',
199
- 'layer-components:data-[ending-style]:data-[side=left]:(translate-x-0 opacity-0)',
200
- 'important:motion-reduce:animate-none',
201
- 'layer-components:data-[side=none]:(min-w-[calc(var(--anchor-width)+2rem)] translate-y-0px)',
202
- 'layer-components:(max-h-[var(--available-height)] min-w-[var(--anchor-width)])',
203
- className,
204
- )}
205
- style={contentStyle}
206
- {...props}
207
- ref={forwardedRef}
208
- >
209
- <BaseSelect.ScrollUpArrow className={scrollArrowClass}>
210
- <Icon name="chevron" className="rotate-180" />
211
- </BaseSelect.ScrollUpArrow>
212
- <BaseSelect.List style={viewportStyle}>{children}</BaseSelect.List>
213
- <BaseSelect.ScrollDownArrow className={scrollArrowClass}>
214
- <Icon name="chevron" />
215
- </BaseSelect.ScrollDownArrow>
216
- </BaseSelect.Popup>
217
- </BaseSelect.Positioner>
218
- </GroupScaleReset>
219
- </BaseSelect.Portal>
220
- );
221
- };
222
-
223
- export interface SelectProps<T extends string = string>
224
- extends SelectRootProps<T> {}
225
- const SelectBase = SelectRoot;
226
-
227
- export const Select = Object.assign(SelectBase, {
228
- Root: SelectRoot,
229
- Item: SelectItem,
230
- Group: SelectGroup,
231
- Trigger: SelectTrigger,
232
- Value: SelectValue,
233
- GroupLabel: SelectGroupLabel,
234
- Separator: SelectSeparator,
235
- Icon: SelectIcon,
236
- Content: SelectContent,
237
- Arrow: SelectArrow,
238
- ItemRoot: SelectItemRoot,
239
- ItemText: SelectItemText,
240
- ItemIndicator: SelectItemIndicator,
241
- });
1
+ import {
2
+ Select as BaseSelect,
3
+ SelectArrowProps,
4
+ SelectIconProps,
5
+ SelectItemIndicatorProps,
6
+ SelectItemProps,
7
+ SelectPopupProps,
8
+ SelectPositionerProps,
9
+ SelectRootProps,
10
+ } from '@base-ui/react/select';
11
+ import classNames, { clsx } from 'clsx';
12
+ import { Ref } from 'react';
13
+ import { withClassName } from '../../hooks/withClassName.js';
14
+ import { GroupScaleReset } from '../../systems/GroupScale.js';
15
+ import { Button, ButtonProps } from '../button/Button.js';
16
+ import { getButtonClassName } from '../button/classes.js';
17
+ import { Icon } from '../icon/index.js';
18
+ import { ArrowSvg } from '../utility/ArrowSvg.js';
19
+
20
+ export const SelectItem = ({
21
+ ref: forwardedRef,
22
+ children,
23
+ className,
24
+ ...props
25
+ }: SelectItemProps & {
26
+ ref?: React.Ref<HTMLDivElement>;
27
+ }) => {
28
+ return (
29
+ <SelectItemRoot className={className} {...props} ref={forwardedRef}>
30
+ <SelectItemText>{children}</SelectItemText>
31
+ <SelectItemIndicator />
32
+ </SelectItemRoot>
33
+ );
34
+ };
35
+
36
+ export const SelectItemRoot = withClassName(
37
+ BaseSelect.Item,
38
+ 'layer-components:(relative h-36px min-h-touch-large flex flex-row select-none items-center pl-35px pr-4 text-md leading-4 color-black)',
39
+ '[&[data-highlighted]]:(outline-none color-black bg-gray-light) layer-components:[&[data-disabled]]:(pointer-events-none color-gray)',
40
+ );
41
+ export const SelectItemIndicatorRoot = withClassName(
42
+ BaseSelect.ItemIndicator,
43
+ 'layer-components:(absolute left-0 w-25px inline-flex items-center justify-center)',
44
+ );
45
+ export const SelectItemIndicator = (props: SelectItemIndicatorProps) => (
46
+ <SelectItemIndicatorRoot {...props}>
47
+ <Icon name="check" />
48
+ </SelectItemIndicatorRoot>
49
+ );
50
+ export const SelectItemText = withClassName(BaseSelect.ItemText, '');
51
+ export const SelectGroup = BaseSelect.Group;
52
+
53
+ export const SelectRoot = BaseSelect.Root;
54
+ export const selectTriggerClassName = classNames(
55
+ getButtonClassName({}),
56
+ 'layer-components:([all:unset] inline-flex data-[placeholder]:color-gray-dark)',
57
+ );
58
+ export const SelectTriggerBase = withClassName(
59
+ BaseSelect.Trigger,
60
+ selectTriggerClassName,
61
+ );
62
+ export const UnstyledSelectTrigger = BaseSelect.Trigger;
63
+
64
+ export type SelectTriggerProps = ButtonProps;
65
+ export const SelectTrigger = function SelectTrigger({
66
+ ref,
67
+ children,
68
+ render,
69
+ ...props
70
+ }: SelectTriggerProps & {
71
+ ref?: React.Ref<HTMLButtonElement>;
72
+ }) {
73
+ return (
74
+ <UnstyledSelectTrigger
75
+ {...props}
76
+ className="layer-components:(font-normal)"
77
+ ref={ref}
78
+ render={render || <Button className="gap-2 font-normal" />}
79
+ >
80
+ {children || (
81
+ <>
82
+ <SelectValue />
83
+ <SelectIcon />
84
+ </>
85
+ )}
86
+ </UnstyledSelectTrigger>
87
+ );
88
+ };
89
+
90
+ export const SelectValue = withClassName(BaseSelect.Value, 'flex flex-row');
91
+ export const SelectGroupLabel = withClassName(
92
+ BaseSelect.GroupLabel,
93
+ 'select-none px-25px text-xs leading-6 color-black',
94
+ );
95
+ export const SelectSeparator = withClassName(
96
+ BaseSelect.Separator,
97
+ 'm-1 h-1px bg-gray-light',
98
+ );
99
+ export const SelectIcon = ({
100
+ ref: forwardedRef,
101
+ className,
102
+ ...props
103
+ }: SelectIconProps & {
104
+ ref?: React.Ref<HTMLDivElement>;
105
+ }) => {
106
+ return (
107
+ <BaseSelect.Icon
108
+ className={classNames('ml-auto color-inherit', className)}
109
+ {...props}
110
+ ref={forwardedRef}
111
+ >
112
+ <Icon name="chevron" className="relative top-1px h-[12px] w-[12px]" />
113
+ </BaseSelect.Icon>
114
+ );
115
+ };
116
+
117
+ export const SelectArrow = ({ className, ...props }: SelectArrowProps) => (
118
+ <BaseSelect.Arrow
119
+ className={clsx('layer-components:arrow', className)}
120
+ {...props}
121
+ >
122
+ <ArrowSvg />
123
+ </BaseSelect.Arrow>
124
+ );
125
+
126
+ const scrollArrowClass = clsx(
127
+ 'layer-components:(z-1 h-1rem w-full flex cursor-default select-none items-center justify-center rounded-sm text-center text-xs bg-white)',
128
+ 'layer-components:before:(absolute left-0 h-full w-full content-empty)',
129
+ 'layer-components:data-[direction=up]:data-[side=none]:before:(-top-full)',
130
+ 'layer-components:data-[direction=down]:(bottom-0 data-[side=none]:before:-bottom-full)',
131
+ );
132
+
133
+ const contentStyle = {
134
+ zIndex: 1001,
135
+ '--local-corner-scale': '1',
136
+ } as React.CSSProperties;
137
+ const viewportStyle = { '--local-corner-scale': '0.9' } as React.CSSProperties;
138
+ export const SelectContent = ({
139
+ ref: forwardedRef,
140
+ children,
141
+ className,
142
+ side,
143
+ sideOffset = 8,
144
+ align,
145
+ alignOffset,
146
+ alignItemWithTrigger = true,
147
+ disableAnchorTracking,
148
+ arrowPadding,
149
+ anchor,
150
+ collisionAvoidance,
151
+ collisionBoundary,
152
+ collisionPadding,
153
+ sticky,
154
+ positionMethod,
155
+ ...props
156
+ }: SelectPopupProps &
157
+ SelectPositionerProps & { ref?: Ref<HTMLDivElement> }) => {
158
+ return (
159
+ <BaseSelect.Portal>
160
+ <GroupScaleReset>
161
+ <BaseSelect.Backdrop />
162
+ <BaseSelect.Positioner
163
+ side={side}
164
+ sideOffset={sideOffset}
165
+ align={align}
166
+ alignOffset={alignOffset}
167
+ alignItemWithTrigger={alignItemWithTrigger}
168
+ disableAnchorTracking={disableAnchorTracking}
169
+ arrowPadding={arrowPadding}
170
+ anchor={anchor}
171
+ collisionAvoidance={collisionAvoidance}
172
+ collisionBoundary={collisionBoundary}
173
+ collisionPadding={collisionPadding}
174
+ sticky={sticky}
175
+ positionMethod={positionMethod}
176
+ className={classNames(
177
+ 'layer-components:(z-1 select-none outline-none)',
178
+ 'layer-components:(transform-origin-[--transform-origin])',
179
+ )}
180
+ >
181
+ <SelectArrow
182
+ className={clsx(
183
+ 'layer-components:(transform transition border-black)',
184
+ 'layer-components:data-[closed]:(scale-0 opacity-0)',
185
+ 'layer-components:data-[open]:(scale-100 opacity-100)',
186
+ )}
187
+ />
188
+ <BaseSelect.Popup
189
+ className={classNames(
190
+ 'layer-components:(overflow-hidden border border rounded-md border-solid bg-clip-padding shadow-lg transition bg-white border-black)',
191
+ 'layer-components:transform-origin-[var(--transform-origin)]',
192
+ 'layer-components:data-[starting-style]:data-[side=bottom]:(translate-y-4px opacity-0)',
193
+ 'layer-components:data-[ending-style]:data-[side=bottom]:(translate-y-4px opacity-0)',
194
+ 'layer-components:data-[starting-style]:data-[side=top]:(translate-y--4px opacity-0)',
195
+ 'layer-components:data-[ending-style]:data-[side=top]:(translate-y-0 opacity-0)',
196
+ 'layer-components:data-[starting-style]:data-[side=right]:(translate-x-4px opacity-0)',
197
+ 'layer-components:data-[ending-style]:data-[side=right]:(translate-x-0 opacity-0)',
198
+ 'layer-components:data-[starting-style]:data-[side=left]:(translate-x--4px opacity-0)',
199
+ 'layer-components:data-[ending-style]:data-[side=left]:(translate-x-0 opacity-0)',
200
+ 'important:motion-reduce:animate-none',
201
+ 'layer-components:data-[side=none]:(min-w-[calc(var(--anchor-width)+2rem)] translate-y-0px)',
202
+ 'layer-components:(max-h-[var(--available-height)] min-w-[var(--anchor-width)])',
203
+ className,
204
+ )}
205
+ style={contentStyle}
206
+ {...props}
207
+ ref={forwardedRef}
208
+ >
209
+ <BaseSelect.ScrollUpArrow className={scrollArrowClass}>
210
+ <Icon name="chevron" className="rotate-180" />
211
+ </BaseSelect.ScrollUpArrow>
212
+ <BaseSelect.List style={viewportStyle}>{children}</BaseSelect.List>
213
+ <BaseSelect.ScrollDownArrow className={scrollArrowClass}>
214
+ <Icon name="chevron" />
215
+ </BaseSelect.ScrollDownArrow>
216
+ </BaseSelect.Popup>
217
+ </BaseSelect.Positioner>
218
+ </GroupScaleReset>
219
+ </BaseSelect.Portal>
220
+ );
221
+ };
222
+
223
+ export interface SelectProps<T extends string = string>
224
+ extends SelectRootProps<T> {}
225
+ const SelectBase = SelectRoot;
226
+
227
+ export const Select = Object.assign(SelectBase, {
228
+ Root: SelectRoot,
229
+ Item: SelectItem,
230
+ Group: SelectGroup,
231
+ Trigger: SelectTrigger,
232
+ Value: SelectValue,
233
+ GroupLabel: SelectGroupLabel,
234
+ Separator: SelectSeparator,
235
+ Icon: SelectIcon,
236
+ Content: SelectContent,
237
+ Arrow: SelectArrow,
238
+ ItemRoot: SelectItemRoot,
239
+ ItemText: SelectItemText,
240
+ ItemIndicator: SelectItemIndicator,
241
+ });