@reopt-ai/opt-ui 1.5.0 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/COMPONENT_CATALOG.md +178 -50
- package/README.md +28 -7
- package/dist/app.css +170 -0
- package/dist/core/index.cjs +164 -324
- package/dist/core/index.d.cts +3 -6
- package/dist/core/index.d.ts +3 -6
- package/dist/core/index.js +3 -323
- package/dist/docs/01-getting-started.md +25 -5
- package/dist/docs/02-components/01-core.md +36 -28
- package/dist/docs/02-components/02-visuals.md +1 -1
- package/dist/docs/02-components/03-shells.md +144 -23
- package/dist/docs/02-components/04-surfaces.md +1 -1
- package/dist/docs/02-components/index.md +4 -4
- package/dist/docs/03-recipes/03-layouts.md +16 -12
- package/dist/docs/05-migration/01-breaking-changes.md +46 -1
- package/dist/field-sidebar-BTZCBviA.d.cts +1031 -0
- package/dist/field-sidebar-BTZCBviA.d.cts.map +1 -0
- package/dist/field-sidebar-CB8vjvUM.d.ts +1031 -0
- package/dist/field-sidebar-CB8vjvUM.d.ts.map +1 -0
- package/dist/field-sidebar-Cs-J-5VE.js +4233 -0
- package/dist/field-sidebar-Cs-J-5VE.js.map +1 -0
- package/dist/field-sidebar-CzIQX70-.cjs +4561 -0
- package/dist/id-registry.cjs +1939 -1872
- package/dist/id-registry.d.cts +14 -11
- package/dist/id-registry.d.cts.map +1 -0
- package/dist/id-registry.d.ts +14 -11
- package/dist/id-registry.d.ts.map +1 -0
- package/dist/id-registry.js +1937 -1871
- package/dist/id-registry.js.map +1 -0
- package/dist/id-registry.json +113 -28
- package/dist/index.cjs +8380 -9790
- package/dist/index.d.cts +1555 -1442
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.ts +1555 -1442
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7996 -9778
- package/dist/index.js.map +1 -0
- package/dist/meta.cjs +7753 -6875
- package/dist/meta.d.cts.map +1 -0
- package/dist/meta.d.ts.map +1 -0
- package/dist/meta.js +7752 -6846
- package/dist/meta.js.map +1 -0
- package/dist/pagination-DWbvACuN.js +3850 -0
- package/dist/pagination-DWbvACuN.js.map +1 -0
- package/dist/pagination-DjfxBcjX.cjs +4739 -0
- package/dist/query.cjs +386 -0
- package/dist/query.d.cts +141 -0
- package/dist/query.d.cts.map +1 -0
- package/dist/query.d.ts +141 -0
- package/dist/query.d.ts.map +1 -0
- package/dist/query.js +371 -0
- package/dist/query.js.map +1 -0
- package/dist/shader-surface-BUPZ0P-n.js +3654 -0
- package/dist/shader-surface-BUPZ0P-n.js.map +1 -0
- package/dist/shader-surface-BfTP9c1Q.d.ts +1788 -0
- package/dist/shader-surface-BfTP9c1Q.d.ts.map +1 -0
- package/dist/shader-surface-DRrcLrWf.d.cts +1788 -0
- package/dist/shader-surface-DRrcLrWf.d.cts.map +1 -0
- package/dist/shader-surface-Fav5K9UC.cjs +4041 -0
- package/dist/shells/index.cjs +58 -65
- package/dist/shells/index.d.cts +4 -5
- package/dist/shells/index.d.ts +4 -5
- package/dist/shells/index.js +4 -64
- package/dist/tailwind.css +49 -0
- package/dist/theme/presets/default.css +2 -2
- package/dist/theme/presets/minimal.css +2 -2
- package/dist/theme/presets/mono-dark.css +2 -2
- package/dist/theme/presets/natural.css +1 -1
- package/dist/theme/presets/pro.css +2 -2
- package/dist/theme/server.cjs +257 -228
- package/dist/theme/server.d.cts +48 -60
- package/dist/theme/server.d.cts.map +1 -0
- package/dist/theme/server.d.ts +48 -60
- package/dist/theme/server.d.ts.map +1 -0
- package/dist/theme/server.js +234 -189
- package/dist/theme/server.js.map +1 -0
- package/dist/types-D0FlcYnM.d.cts +301 -0
- package/dist/types-D0FlcYnM.d.cts.map +1 -0
- package/dist/types-D0FlcYnM.d.ts +301 -0
- package/dist/types-D0FlcYnM.d.ts.map +1 -0
- package/dist/visuals/index.cjs +10 -4
- package/dist/visuals/index.d.cts +2 -1
- package/dist/visuals/index.d.ts +2 -1
- package/dist/visuals/index.js +1 -2
- package/package.json +27 -11
- package/dist/chunk-3GWWZKX7.js +0 -38
- package/dist/chunk-3QFYBBL6.cjs +0 -4759
- package/dist/chunk-3XD4HIFL.js +0 -3241
- package/dist/chunk-AFF2HPE5.cjs +0 -5008
- package/dist/chunk-NXZJIHEZ.cjs +0 -3241
- package/dist/chunk-ONE3C5RV.cjs +0 -38
- package/dist/chunk-RBM2RNC2.js +0 -5008
- package/dist/chunk-VBGPEW45.js +0 -4759
- package/dist/index-BZ_lBlO1.d.ts +0 -474
- package/dist/index-BuvxoWHf.d.cts +0 -474
- package/dist/index-DWyqDIkH.d.cts +0 -1689
- package/dist/index-Uyijm14M.d.ts +0 -1689
- package/dist/types-D4-0lwaE.d.cts +0 -298
- package/dist/types-D4-0lwaE.d.ts +0 -298
package/dist/core/index.js
CHANGED
|
@@ -1,324 +1,4 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
AccordionRoot,
|
|
6
|
-
AccordionTrigger,
|
|
7
|
-
Avatar,
|
|
8
|
-
AvatarGroup,
|
|
9
|
-
BlockLayout,
|
|
10
|
-
Breadcrumb,
|
|
11
|
-
Card,
|
|
12
|
-
CardContent,
|
|
13
|
-
CardDescription,
|
|
14
|
-
CardFooter,
|
|
15
|
-
CardHeader,
|
|
16
|
-
CardTitle,
|
|
17
|
-
CircularProgress,
|
|
18
|
-
ConditionBuilder,
|
|
19
|
-
Container,
|
|
20
|
-
DrawerClose,
|
|
21
|
-
DrawerPanel,
|
|
22
|
-
DrawerRoot,
|
|
23
|
-
DropdownContent,
|
|
24
|
-
DropdownItem,
|
|
25
|
-
DropdownMenu,
|
|
26
|
-
DropdownSeparator,
|
|
27
|
-
DropdownTrigger,
|
|
28
|
-
Heading,
|
|
29
|
-
Input,
|
|
30
|
-
Logo,
|
|
31
|
-
Meter,
|
|
32
|
-
OtpField,
|
|
33
|
-
PageHeader,
|
|
34
|
-
Progress,
|
|
35
|
-
Radio,
|
|
36
|
-
RadioGroup,
|
|
37
|
-
ResizableHandle,
|
|
38
|
-
ResizablePanel,
|
|
39
|
-
ResizablePanelGroup,
|
|
40
|
-
SHADER_OVERLAY_PARAM_KEYS,
|
|
41
|
-
SHADER_PARAM_FALLBACK,
|
|
42
|
-
SHADER_PARAM_KEYS,
|
|
43
|
-
SHADER_PRESETS,
|
|
44
|
-
SHADER_PRESET_IDS,
|
|
45
|
-
ScrollArea,
|
|
46
|
-
Section,
|
|
47
|
-
Separator,
|
|
48
|
-
ShaderSurface,
|
|
49
|
-
Skeleton,
|
|
50
|
-
SkeletonAvatar,
|
|
51
|
-
SkeletonCard,
|
|
52
|
-
SkeletonTable,
|
|
53
|
-
SkeletonText,
|
|
54
|
-
StepBuilder,
|
|
55
|
-
Switch,
|
|
56
|
-
Text,
|
|
57
|
-
Textarea,
|
|
58
|
-
Toggle,
|
|
59
|
-
ToggleGroup,
|
|
60
|
-
VirtualList,
|
|
61
|
-
createBlock,
|
|
62
|
-
getShaderFragment,
|
|
63
|
-
getShaderPreset
|
|
64
|
-
} from "../chunk-VBGPEW45.js";
|
|
65
|
-
import {
|
|
66
|
-
Alert,
|
|
67
|
-
AlertDialogPanel,
|
|
68
|
-
Badge,
|
|
69
|
-
Button,
|
|
70
|
-
Checkbox,
|
|
71
|
-
CheckboxGroup,
|
|
72
|
-
ColorPicker,
|
|
73
|
-
ComboboxEmpty,
|
|
74
|
-
ComboboxGroup,
|
|
75
|
-
ComboboxGroupLabel,
|
|
76
|
-
ComboboxInput,
|
|
77
|
-
ComboboxItem,
|
|
78
|
-
ComboboxPopover,
|
|
79
|
-
ComboboxRoot,
|
|
80
|
-
Composite,
|
|
81
|
-
CompositeItem,
|
|
82
|
-
CompositeProvider,
|
|
83
|
-
CompositeRow,
|
|
84
|
-
CompositeZone,
|
|
85
|
-
DEFAULT_PRESETS,
|
|
86
|
-
DateRangePicker,
|
|
87
|
-
DialogBody,
|
|
88
|
-
DialogDescription,
|
|
89
|
-
DialogDisclosure,
|
|
90
|
-
DialogDismiss,
|
|
91
|
-
DialogFooter,
|
|
92
|
-
DialogHeader,
|
|
93
|
-
DialogHeading,
|
|
94
|
-
DialogPanel,
|
|
95
|
-
DialogRoot,
|
|
96
|
-
DisclosureContent,
|
|
97
|
-
DisclosureRoot,
|
|
98
|
-
DisclosureTrigger,
|
|
99
|
-
EmptyState,
|
|
100
|
-
FormCheckbox,
|
|
101
|
-
FormControl,
|
|
102
|
-
FormDescription,
|
|
103
|
-
FormError,
|
|
104
|
-
FormField,
|
|
105
|
-
FormGroup,
|
|
106
|
-
FormGroupLabel,
|
|
107
|
-
FormInput,
|
|
108
|
-
FormLabel,
|
|
109
|
-
FormProvider,
|
|
110
|
-
FormPush,
|
|
111
|
-
FormRadio,
|
|
112
|
-
FormRadioGroup,
|
|
113
|
-
FormRemove,
|
|
114
|
-
FormReset,
|
|
115
|
-
FormRoot,
|
|
116
|
-
FormSelect,
|
|
117
|
-
FormSelectItem,
|
|
118
|
-
FormSelectPopover,
|
|
119
|
-
FormSubmit,
|
|
120
|
-
FormSwitch,
|
|
121
|
-
FormTextarea,
|
|
122
|
-
IconPicker,
|
|
123
|
-
Kbd,
|
|
124
|
-
MenuButtonArrow,
|
|
125
|
-
MenuItem,
|
|
126
|
-
MenuItemCheckbox,
|
|
127
|
-
MenuItemRadio,
|
|
128
|
-
MenuPopover,
|
|
129
|
-
MenuRoot,
|
|
130
|
-
MenuSeparator,
|
|
131
|
-
MenuTrigger,
|
|
132
|
-
MenubarContainer,
|
|
133
|
-
MenubarRoot,
|
|
134
|
-
NumberInput,
|
|
135
|
-
Pagination,
|
|
136
|
-
PopoverClose,
|
|
137
|
-
PopoverContent,
|
|
138
|
-
PopoverRoot,
|
|
139
|
-
PopoverTrigger,
|
|
140
|
-
SelectItem,
|
|
141
|
-
SelectLabel,
|
|
142
|
-
SelectPopover,
|
|
143
|
-
SelectRoot,
|
|
144
|
-
SelectTrigger,
|
|
145
|
-
Slider,
|
|
146
|
-
Spinner,
|
|
147
|
-
StatCard,
|
|
148
|
-
Tab,
|
|
149
|
-
TabList,
|
|
150
|
-
TabPanel,
|
|
151
|
-
TabsRoot,
|
|
152
|
-
TagInput,
|
|
153
|
-
ToolbarButton,
|
|
154
|
-
ToolbarContainer,
|
|
155
|
-
ToolbarRoot,
|
|
156
|
-
ToolbarSeparator,
|
|
157
|
-
Tooltip,
|
|
158
|
-
TooltipAnchor,
|
|
159
|
-
TooltipProvider,
|
|
160
|
-
useFormContext,
|
|
161
|
-
useFormStore
|
|
162
|
-
} from "../chunk-RBM2RNC2.js";
|
|
163
|
-
import "../chunk-3GWWZKX7.js";
|
|
164
|
-
export {
|
|
165
|
-
AccordionContent,
|
|
166
|
-
AccordionItem,
|
|
167
|
-
AccordionRoot,
|
|
168
|
-
AccordionTrigger,
|
|
169
|
-
Alert,
|
|
170
|
-
AlertDialogPanel,
|
|
171
|
-
Avatar,
|
|
172
|
-
AvatarGroup,
|
|
173
|
-
Badge,
|
|
174
|
-
BlockLayout,
|
|
175
|
-
Breadcrumb,
|
|
176
|
-
Button,
|
|
177
|
-
Card,
|
|
178
|
-
CardContent,
|
|
179
|
-
CardDescription,
|
|
180
|
-
CardFooter,
|
|
181
|
-
CardHeader,
|
|
182
|
-
CardTitle,
|
|
183
|
-
Checkbox,
|
|
184
|
-
CheckboxGroup,
|
|
185
|
-
CircularProgress,
|
|
186
|
-
ColorPicker,
|
|
187
|
-
ComboboxEmpty,
|
|
188
|
-
ComboboxGroup,
|
|
189
|
-
ComboboxGroupLabel,
|
|
190
|
-
ComboboxInput,
|
|
191
|
-
ComboboxItem,
|
|
192
|
-
ComboboxPopover,
|
|
193
|
-
ComboboxRoot,
|
|
194
|
-
Composite,
|
|
195
|
-
CompositeItem,
|
|
196
|
-
CompositeProvider,
|
|
197
|
-
CompositeRow,
|
|
198
|
-
CompositeZone,
|
|
199
|
-
ConditionBuilder,
|
|
200
|
-
Container,
|
|
201
|
-
DEFAULT_PRESETS,
|
|
202
|
-
DateRangePicker,
|
|
203
|
-
DialogBody,
|
|
204
|
-
DialogDescription,
|
|
205
|
-
DialogDisclosure,
|
|
206
|
-
DialogDismiss,
|
|
207
|
-
DialogFooter,
|
|
208
|
-
DialogHeader,
|
|
209
|
-
DialogHeading,
|
|
210
|
-
DialogPanel,
|
|
211
|
-
DialogRoot,
|
|
212
|
-
DisclosureContent,
|
|
213
|
-
DisclosureRoot,
|
|
214
|
-
DisclosureTrigger,
|
|
215
|
-
DrawerClose,
|
|
216
|
-
DrawerPanel,
|
|
217
|
-
DrawerRoot,
|
|
218
|
-
DropdownContent,
|
|
219
|
-
DropdownItem,
|
|
220
|
-
DropdownMenu,
|
|
221
|
-
DropdownSeparator,
|
|
222
|
-
DropdownTrigger,
|
|
223
|
-
EmptyState,
|
|
224
|
-
FormCheckbox,
|
|
225
|
-
FormControl,
|
|
226
|
-
FormDescription,
|
|
227
|
-
FormError,
|
|
228
|
-
FormField,
|
|
229
|
-
FormGroup,
|
|
230
|
-
FormGroupLabel,
|
|
231
|
-
FormInput,
|
|
232
|
-
FormLabel,
|
|
233
|
-
FormProvider,
|
|
234
|
-
FormPush,
|
|
235
|
-
FormRadio,
|
|
236
|
-
FormRadioGroup,
|
|
237
|
-
FormRemove,
|
|
238
|
-
FormReset,
|
|
239
|
-
FormRoot,
|
|
240
|
-
FormSelect,
|
|
241
|
-
FormSelectItem,
|
|
242
|
-
FormSelectPopover,
|
|
243
|
-
FormSubmit,
|
|
244
|
-
FormSwitch,
|
|
245
|
-
FormTextarea,
|
|
246
|
-
Heading,
|
|
247
|
-
IconPicker,
|
|
248
|
-
Input,
|
|
249
|
-
Kbd,
|
|
250
|
-
Logo,
|
|
251
|
-
MenuButtonArrow,
|
|
252
|
-
MenuItem,
|
|
253
|
-
MenuItemCheckbox,
|
|
254
|
-
MenuItemRadio,
|
|
255
|
-
MenuPopover,
|
|
256
|
-
MenuRoot,
|
|
257
|
-
MenuSeparator,
|
|
258
|
-
MenuTrigger,
|
|
259
|
-
MenubarContainer,
|
|
260
|
-
MenubarRoot,
|
|
261
|
-
Meter,
|
|
262
|
-
NumberInput,
|
|
263
|
-
OtpField,
|
|
264
|
-
PageHeader,
|
|
265
|
-
Pagination,
|
|
266
|
-
PopoverClose,
|
|
267
|
-
PopoverContent,
|
|
268
|
-
PopoverRoot,
|
|
269
|
-
PopoverTrigger,
|
|
270
|
-
Progress,
|
|
271
|
-
Radio,
|
|
272
|
-
RadioGroup,
|
|
273
|
-
ResizableHandle,
|
|
274
|
-
ResizablePanel,
|
|
275
|
-
ResizablePanelGroup,
|
|
276
|
-
SHADER_OVERLAY_PARAM_KEYS,
|
|
277
|
-
SHADER_PARAM_FALLBACK,
|
|
278
|
-
SHADER_PARAM_KEYS,
|
|
279
|
-
SHADER_PRESETS,
|
|
280
|
-
SHADER_PRESET_IDS,
|
|
281
|
-
ScrollArea,
|
|
282
|
-
Section,
|
|
283
|
-
SelectItem,
|
|
284
|
-
SelectLabel,
|
|
285
|
-
SelectPopover,
|
|
286
|
-
SelectRoot,
|
|
287
|
-
SelectTrigger,
|
|
288
|
-
Separator,
|
|
289
|
-
ShaderSurface,
|
|
290
|
-
Skeleton,
|
|
291
|
-
SkeletonAvatar,
|
|
292
|
-
SkeletonCard,
|
|
293
|
-
SkeletonTable,
|
|
294
|
-
SkeletonText,
|
|
295
|
-
Slider,
|
|
296
|
-
Spinner,
|
|
297
|
-
StatCard,
|
|
298
|
-
StepBuilder,
|
|
299
|
-
BlockLayout as SurfaceLayout,
|
|
300
|
-
Switch,
|
|
301
|
-
Tab,
|
|
302
|
-
TabList,
|
|
303
|
-
TabPanel,
|
|
304
|
-
TabsRoot,
|
|
305
|
-
TagInput,
|
|
306
|
-
Text,
|
|
307
|
-
Textarea,
|
|
308
|
-
Toggle,
|
|
309
|
-
ToggleGroup,
|
|
310
|
-
ToolbarButton,
|
|
311
|
-
ToolbarContainer,
|
|
312
|
-
ToolbarRoot,
|
|
313
|
-
ToolbarSeparator,
|
|
314
|
-
Tooltip,
|
|
315
|
-
TooltipAnchor,
|
|
316
|
-
TooltipProvider,
|
|
317
|
-
VirtualList,
|
|
318
|
-
createBlock,
|
|
319
|
-
createBlock as createSurface,
|
|
320
|
-
getShaderFragment,
|
|
321
|
-
getShaderPreset,
|
|
322
|
-
useFormContext,
|
|
323
|
-
useFormStore
|
|
324
|
-
};
|
|
2
|
+
import { $ as TooltipAnchor, A as FormSwitch, At as SelectPopover, Bt as Composite, C as FormRoot, Ct as DialogFooter, Dt as DialogRoot, E as FormSelectPopover, Et as DialogPanel, F as useFormStore, Ft as TabPanel, G as PopoverTrigger, H as PopoverClose, Hn as Kbd, Ht as CompositeProvider, I as DEFAULT_PRESETS, It as TabsRoot, J as ToolbarButton, Jt as Alert, K as Slider, Kt as Input, L as DateRangePicker, Lt as DisclosureContent, M as FormTextarea, Mt as SelectTrigger, Nt as Tab, Ot as SelectItem, P as useFormContext, Pt as TabList, Q as Tooltip, Qt as Button, R as TagInput, Rt as DisclosureRoot, S as FormReset, St as DialogDismiss, T as FormSelectItem, Tt as DialogHeading, U as PopoverContent, Ut as CompositeRow, V as ColorPicker, Vt as CompositeItem, W as PopoverRoot, Wt as CompositeZone, X as ToolbarRoot, Xt as Badge, Y as ToolbarContainer, Yt as Spinner, Z as ToolbarSeparator, Zt as EmptyState, _ as FormProvider, _t as ComboboxRoot, at as MenuPopover, b as FormRadioGroup, bt as DialogDescription, c as FormDescription, ct as MenuTrigger, d as FormGroup, dt as ComboboxEmpty, et as TooltipProvider, f as FormGroupLabel, ft as ComboboxGroup, gt as ComboboxPopover, h as FormLabel, ht as ComboboxItem, i as FormCheckbox, it as MenuItemRadio, jt as SelectRoot, k as FormSubmit, kt as SelectLabel, l as FormError, lt as MenubarContainer, m as FormInput, mt as ComboboxInput, n as Checkbox, nn as StatCard, nt as MenuItem, o as FormControl, ot as MenuRoot, pt as ComboboxGroupLabel, q as NumberInput, r as CheckboxGroup, rt as MenuItemCheckbox, st as MenuSeparator, t as Pagination, tt as MenuButtonArrow, u as FormField, ut as MenubarRoot, v as FormPush, vt as AlertDialogPanel, w as FormSelect, wt as DialogHeader, x as FormRemove, xt as DialogDisclosure, y as FormRadio, yt as DialogBody, z as IconPicker, zt as DisclosureTrigger } from "../pagination-DWbvACuN.js";
|
|
3
|
+
import { $ as CardHeader, A as DropdownTrigger, B as Avatar, D as DropdownItem, E as DropdownContent, G as SkeletonCard, H as Textarea, I as StepBuilder, J as Switch, K as SkeletonTable, L as Meter, O as DropdownMenu, Q as CardFooter, R as CircularProgress, S as BlockLayout, T as RadioGroup, U as Skeleton, V as AvatarGroup, W as SkeletonAvatar, X as CardContent, Y as Card, Z as CardDescription, _ as Section, a as SHADER_PRESETS, at as AccordionTrigger, b as PageHeader, c as getShaderPreset, ct as OtpField, d as DrawerPanel, dt as Text, et as CardTitle, f as DrawerRoot, g as ResizablePanelGroup, h as ResizablePanel, i as SHADER_PARAM_KEYS, it as AccordionRoot, j as ConditionBuilder, k as DropdownSeparator, l as VirtualList, lt as Separator, m as ResizableHandle, n as SHADER_OVERLAY_PARAM_KEYS, nt as AccordionContent, o as SHADER_PRESET_IDS, ot as Toggle, p as Logo, q as SkeletonText, r as SHADER_PARAM_FALLBACK, rt as AccordionItem, s as getShaderFragment, st as ToggleGroup, t as ShaderSurface, tt as Breadcrumb, u as DrawerClose, ut as Heading, v as Container, w as Radio, x as createBlock, y as ScrollArea, z as Progress } from "../shader-surface-BUPZ0P-n.js";
|
|
4
|
+
export { AccordionContent, AccordionItem, AccordionRoot, AccordionTrigger, Alert, AlertDialogPanel, Avatar, AvatarGroup, Badge, BlockLayout, BlockLayout as SurfaceLayout, Breadcrumb, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, CheckboxGroup, CircularProgress, ColorPicker, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxPopover, ComboboxRoot, Composite, CompositeItem, CompositeProvider, CompositeRow, CompositeZone, ConditionBuilder, Container, DEFAULT_PRESETS, DateRangePicker, DialogBody, DialogDescription, DialogDisclosure, DialogDismiss, DialogFooter, DialogHeader, DialogHeading, DialogPanel, DialogRoot, DisclosureContent, DisclosureRoot, DisclosureTrigger, DrawerClose, DrawerPanel, DrawerRoot, DropdownContent, DropdownItem, DropdownMenu, DropdownSeparator, DropdownTrigger, EmptyState, FormCheckbox, FormControl, FormDescription, FormError, FormField, FormGroup, FormGroupLabel, FormInput, FormLabel, FormProvider, FormPush, FormRadio, FormRadioGroup, FormRemove, FormReset, FormRoot, FormSelect, FormSelectItem, FormSelectPopover, FormSubmit, FormSwitch, FormTextarea, Heading, IconPicker, Input, Kbd, Logo, MenuButtonArrow, MenuItem, MenuItemCheckbox, MenuItemRadio, MenuPopover, MenuRoot, MenuSeparator, MenuTrigger, MenubarContainer, MenubarRoot, Meter, NumberInput, OtpField, PageHeader, Pagination, PopoverClose, PopoverContent, PopoverRoot, PopoverTrigger, Progress, Radio, RadioGroup, ResizableHandle, ResizablePanel, ResizablePanelGroup, SHADER_OVERLAY_PARAM_KEYS, SHADER_PARAM_FALLBACK, SHADER_PARAM_KEYS, SHADER_PRESETS, SHADER_PRESET_IDS, ScrollArea, Section, SelectItem, SelectLabel, SelectPopover, SelectRoot, SelectTrigger, Separator, ShaderSurface, Skeleton, SkeletonAvatar, SkeletonCard, SkeletonTable, SkeletonText, Slider, Spinner, StatCard, StepBuilder, Switch, Tab, TabList, TabPanel, TabsRoot, TagInput, Text, Textarea, Toggle, ToggleGroup, ToolbarButton, ToolbarContainer, ToolbarRoot, ToolbarSeparator, Tooltip, TooltipAnchor, TooltipProvider, VirtualList, createBlock, createBlock as createSurface, getShaderFragment, getShaderPreset, useFormContext, useFormStore };
|
|
@@ -17,14 +17,34 @@ related:
|
|
|
17
17
|
- React 19+
|
|
18
18
|
- Tailwind CSS v4
|
|
19
19
|
|
|
20
|
-
## 1.
|
|
20
|
+
## 1. Agent skill setup (recommended)
|
|
21
|
+
|
|
22
|
+
Run from the consumer project root:
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
npx skills add reopt-ai/reopt-skills/opt-ui-install
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Then ask your agent:
|
|
29
|
+
|
|
30
|
+
```text
|
|
31
|
+
Use the opt-ui-install skill to set up @reopt-ai/opt-ui in this project and verify the result.
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
The skill auto-detects install versus upgrade, idempotently updates the reopt
|
|
35
|
+
marker block in `AGENTS.md` (or `CLAUDE.md`), follows the docs shipped in this
|
|
36
|
+
`dist/docs/` directory, wires Tailwind v4 and `OptThemeProvider`, and runs
|
|
37
|
+
`opt doctor`. Source:
|
|
38
|
+
[`reopt-ai/reopt-skills`](https://github.com/reopt-ai/reopt-skills/tree/main/skills/opt-ui-install).
|
|
39
|
+
|
|
40
|
+
## 2. Manual install
|
|
21
41
|
|
|
22
42
|
```bash
|
|
23
43
|
bun add @reopt-ai/opt-ui @reopt-ai/opt-ui-primitives
|
|
24
44
|
bun add -d tailwindcss @tailwindcss/postcss postcss
|
|
25
45
|
```
|
|
26
46
|
|
|
27
|
-
##
|
|
47
|
+
## 3. Global CSS
|
|
28
48
|
|
|
29
49
|
### `app/globals.css` (Next.js App Router)
|
|
30
50
|
|
|
@@ -47,7 +67,7 @@ bun add -d tailwindcss @tailwindcss/postcss postcss
|
|
|
47
67
|
> `@source` 경로는 CSS 파일 위치 기준 상대 경로입니다.
|
|
48
68
|
> `@reopt-ai/opt-ui/tailwind.css`에 테마 프리셋, dark variant, 토큰 매핑, 기본값이 포함되어 있습니다.
|
|
49
69
|
|
|
50
|
-
##
|
|
70
|
+
## 4. PostCSS
|
|
51
71
|
|
|
52
72
|
`postcss.config.mjs`:
|
|
53
73
|
|
|
@@ -59,7 +79,7 @@ export default {
|
|
|
59
79
|
};
|
|
60
80
|
```
|
|
61
81
|
|
|
62
|
-
##
|
|
82
|
+
## 5. Root Layout (Next.js App Router)
|
|
63
83
|
|
|
64
84
|
```tsx
|
|
65
85
|
import { OptThemeProvider } from "@reopt-ai/opt-ui";
|
|
@@ -80,7 +100,7 @@ export default function RootLayout({
|
|
|
80
100
|
}
|
|
81
101
|
```
|
|
82
102
|
|
|
83
|
-
##
|
|
103
|
+
## 6. Optional: next.config.ts
|
|
84
104
|
|
|
85
105
|
Next.js에서 ESM 또는 패키지 트랜스파일 이슈가 발생하면 추가합니다:
|
|
86
106
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "Core Components"
|
|
3
3
|
description: "59 Core layer components — props, examples, keyboard shortcuts."
|
|
4
|
-
version: "1.
|
|
4
|
+
version: "1.6.0"
|
|
5
5
|
generated: true
|
|
6
6
|
---
|
|
7
7
|
|
|
@@ -745,9 +745,11 @@ const store = useFormStore({
|
|
|
745
745
|
|
|
746
746
|
**Import:** `import { Kbd } from "@reopt-ai/opt-ui"`
|
|
747
747
|
|
|
748
|
-
| Prop
|
|
749
|
-
|
|
|
750
|
-
| `children`
|
|
748
|
+
| Prop | Type | Required | Default | Description |
|
|
749
|
+
| ----------- | ----------- | -------- | ------- | ------------------------------------------------------------------------------- |
|
|
750
|
+
| `children` | `ReactNode` | Yes | | 표시할 단축키 텍스트 |
|
|
751
|
+
| `hint` | `boolean` | | | 인라인 힌트 배지로 표시. `data-shortcut-hints="hidden"`일 때 숨겨진다 (app.css) |
|
|
752
|
+
| `className` | `string` | | | 기본 스타일 오버라이드 |
|
|
751
753
|
|
|
752
754
|
### Button
|
|
753
755
|
|
|
@@ -1198,26 +1200,31 @@ import {
|
|
|
1198
1200
|
|
|
1199
1201
|
**TabsRoot:**
|
|
1200
1202
|
|
|
1201
|
-
| Prop | Type | Required | Default | Description
|
|
1202
|
-
| ------------------- | ------------------------------ | -------- | ------- |
|
|
1203
|
-
| `
|
|
1204
|
-
| `
|
|
1205
|
-
| `
|
|
1203
|
+
| Prop | Type | Required | Default | Description |
|
|
1204
|
+
| ------------------- | ------------------------------ | -------- | ------- | -------------------------------------------------------------------------------------- |
|
|
1205
|
+
| `variant` | `"underline" \| "workspace"` | | | 탭 프레임 형태. workspace는 편집기 탭(문서/쿼리처럼 열고 닫히며 상태를 갖는 작업 단위) |
|
|
1206
|
+
| `defaultSelectedId` | `string` | | | 초기 선택된 탭 ID |
|
|
1207
|
+
| `selectedId` | `string \| null` | | | 제어 모드: 선택된 탭 ID |
|
|
1208
|
+
| `setSelectedId` | `(id: string \| null) => void` | | | 제어 모드: 탭 변경 핸들러 |
|
|
1206
1209
|
|
|
1207
1210
|
**TabList:**
|
|
1208
1211
|
|
|
1209
|
-
| Prop | Type | Required | Default | Description
|
|
1210
|
-
| ----------- | ----------- | -------- | ------- |
|
|
1211
|
-
| `children` | `ReactNode` | Yes | | Tab 요소들
|
|
1212
|
-
| `
|
|
1212
|
+
| Prop | Type | Required | Default | Description |
|
|
1213
|
+
| ----------- | ----------- | -------- | ------- | -------------------------------------------------------------------------------------- |
|
|
1214
|
+
| `children` | `ReactNode` | Yes | | Tab 요소들 |
|
|
1215
|
+
| `actions` | `ReactNode` | | | 탭 줄 오른쪽 액션 영역 (새 탭, 닫기 등). tablist 바깥에 렌더돼 탭 순회에 끼어들지 않음 |
|
|
1216
|
+
| `className` | `string` | | | 기본 스타일 오버라이드 |
|
|
1213
1217
|
|
|
1214
1218
|
**Tab:**
|
|
1215
1219
|
|
|
1216
|
-
| Prop
|
|
1217
|
-
|
|
|
1218
|
-
| `id`
|
|
1219
|
-
| `children`
|
|
1220
|
-
| `
|
|
1220
|
+
| Prop | Type | Required | Default | Description |
|
|
1221
|
+
| ------------- | ---------------------- | -------- | ------- | ------------------------------------------------- |
|
|
1222
|
+
| `id` | `string` | Yes | | 탭 고유 ID (TabPanel의 tabId와 매칭) |
|
|
1223
|
+
| `children` | `ReactNode` | Yes | | 탭 레이블 |
|
|
1224
|
+
| `icon` | `ReactNode` | | | 탭 이름 앞 아이콘. 활성 탭에서 accent 색으로 전환 |
|
|
1225
|
+
| `status` | `"dirty" \| "running"` | | | 저장되지 않은 변경 / 실행 중 인디케이터 |
|
|
1226
|
+
| `statusLabel` | `string` | | | status 인디케이터의 접근성 레이블 |
|
|
1227
|
+
| `className` | `string` | | | 기본 스타일 오버라이드 |
|
|
1221
1228
|
|
|
1222
1229
|
**TabPanel:**
|
|
1223
1230
|
|
|
@@ -1664,7 +1671,7 @@ import {
|
|
|
1664
1671
|
| Toggle | 눌림(pressed) 두 상태 버튼. 단독 사용하거나 ToggleGroup으로 묶어 단일/다중 선택을 만든다. | `Toggle`, `ToggleGroup` |
|
|
1665
1672
|
| Accordion | 수직으로 쌓인 펼침/접힘 패널. single(한 개)/multiple(여러 개) 모드와 collapsible 지원. | `AccordionRoot`, `AccordionItem`, `AccordionTrigger`, `AccordionContent` |
|
|
1666
1673
|
| Meter | 범위 내 스칼라 측정값 게이지 (디스크 사용량·점수·용량 등). role=meter로 작업 진행률(Progress)과 구분된다. | `Meter` |
|
|
1667
|
-
| BlockLayout | Block 루트 레이아웃.
|
|
1674
|
+
| BlockLayout | Block 루트 레이아웃. 자식 간 section spacing과 선택적 시맨틱 inset을 제공하고 loading prop으로 LoadingOverlay를 자동 래핑합니다. | `BlockLayout` |
|
|
1668
1675
|
| createBlock | Block 팩토리 함수. BlockLayout 래핑을 구조적으로 강제하여 loading/className 처리를 자동화합니다. | `createBlock` |
|
|
1669
1676
|
| StarRating | 1~N점 별점을 선택하는 인터랙티브 레이팅 입력. 읽기 전용 표시도 지원. | `StarRating` |
|
|
1670
1677
|
| ErrorBoundary | React 에러 바운더리. 자식 컴포넌트 렌더 에러를 잡아 fallback UI를 표시합니다. | `ErrorBoundary` |
|
|
@@ -1818,17 +1825,18 @@ import {
|
|
|
1818
1825
|
|
|
1819
1826
|
### BlockLayout
|
|
1820
1827
|
|
|
1821
|
-
> Block 루트 레이아웃.
|
|
1828
|
+
> Block 루트 레이아웃. 자식 간 section spacing과 선택적 시맨틱 inset을 제공하고 loading prop으로 LoadingOverlay를 자동 래핑합니다.
|
|
1822
1829
|
|
|
1823
1830
|
**Import:** `import { BlockLayout } from "@reopt-ai/opt-ui"`
|
|
1824
1831
|
|
|
1825
|
-
| Prop | Type | Required | Default | Description
|
|
1826
|
-
| -------------- | --------------------------------------------- | -------- | --------- |
|
|
1827
|
-
| `children` | `ReactNode` | Yes | | Block 콘텐츠
|
|
1828
|
-
| `loading` | `boolean` | | | 로딩 상태. 설정 시 LoadingOverlay로 자동 래핑
|
|
1829
|
-
| `loadingLabel` | `string` | | | LoadingOverlay 접근성 레이블
|
|
1830
|
-
| `spacing` | `"section" \| "group" \| "element" \| "none"` | | "section" | Block 최상위 자식 사이 간격. 데이터 밀도가 높은 Block는 group/element로 낮출 수 있음
|
|
1831
|
-
| `
|
|
1832
|
+
| Prop | Type | Required | Default | Description |
|
|
1833
|
+
| -------------- | --------------------------------------------- | -------- | --------- | ---------------------------------------------------------------------------------------------------- |
|
|
1834
|
+
| `children` | `ReactNode` | Yes | | Block 콘텐츠 |
|
|
1835
|
+
| `loading` | `boolean` | | | 로딩 상태. 설정 시 LoadingOverlay로 자동 래핑 |
|
|
1836
|
+
| `loadingLabel` | `string` | | | LoadingOverlay 접근성 레이블 |
|
|
1837
|
+
| `spacing` | `"section" \| "group" \| "element" \| "none"` | | "section" | Block 최상위 자식 사이 간격. 데이터 밀도가 높은 Block는 group/element로 낮출 수 있음 |
|
|
1838
|
+
| `inset` | `"section" \| "group" \| "element" \| "none"` | | | Block 안쪽 여백. 페이지 콘텐츠 경계에는 section을 사용하고, 이미 여백을 제공하는 Shell 안에서는 생략 |
|
|
1839
|
+
| `className` | `string` | | | 기본 스타일 오버라이드 |
|
|
1832
1840
|
|
|
1833
1841
|
**Examples:**
|
|
1834
1842
|
|
|
@@ -1837,7 +1845,7 @@ _Block 루트:_
|
|
|
1837
1845
|
```tsx
|
|
1838
1846
|
import { BlockLayout, PageHeader } from "@reopt-ai/opt-ui";
|
|
1839
1847
|
|
|
1840
|
-
<BlockLayout loading={isLoading} spacing="section">
|
|
1848
|
+
<BlockLayout loading={isLoading} spacing="section" inset="section">
|
|
1841
1849
|
<PageHeader title="대시보드" description="프로젝트 현황" />
|
|
1842
1850
|
<section>콘텐츠 영역</section>
|
|
1843
1851
|
</BlockLayout>;
|