@youcan/celeste 0.10.1 → 0.10.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.
@@ -0,0 +1,3200 @@
1
+ # Celeste Component Registry
2
+
3
+ > Generated from source for `@youcan/celeste@0.10.3`. Do not edit.
4
+ > Regenerate with `pnpm --filter @youcan/celeste codegen:registry`.
5
+
6
+ Every component below is imported from `@youcan/celeste`:
7
+
8
+ ```ts
9
+ import { Badge, Button } from '@youcan/celeste';
10
+ ```
11
+
12
+ **146 components** in 39 groups.
13
+
14
+ This file describes what each component _accepts_. For which component to
15
+ reach for when several look similar, see the `celeste-ui` skill.
16
+
17
+ ---
18
+
19
+ ## alert
20
+
21
+ ### Alert
22
+
23
+ **Props**
24
+
25
+ - `class`: `ClassValue`
26
+ - `dismissable`: `boolean` — default `false`
27
+ - `size`: `xs` | `sm` | `lg` — default `"xs"`
28
+ - `state`: `information` | `success` | `warning` | `error` | `feature` — default `"information"`
29
+ - `variant`: `fill` | `light` | `lighter` | `stroke` — default `"fill"`
30
+
31
+ **Events**
32
+
33
+ - `dismiss`: `any[]`
34
+
35
+ **Slots**
36
+
37
+ - `default`
38
+ - `title`
39
+ - `description`
40
+ - `primary`
41
+ - `secondary`
42
+
43
+ **Example:** `src/components/alert/stories/alert.stories.ts`
44
+
45
+ ---
46
+
47
+ ## badge
48
+
49
+ ### Badge
50
+
51
+ **Props**
52
+
53
+ - `class`: `ClassValue`
54
+ - `disabled`: `boolean`
55
+ - `icon`: `string`
56
+ - `label`: `string`
57
+ - `size`: `sm` | `md` — default `"md"`
58
+ - `state`: `information` | `success` | `warning` | `error` | `feature` | `faded` | `away` | `verified` | `highlighted` | `stable`
59
+ - `type`: `basic` | `dot` | `leading-icon` | `trailing-icon` — default `"basic"`
60
+ - `variant`: `fill` | `light` | `lighter` | `stroke` — default `"fill"`
61
+
62
+ **Composes with:** `StatusBadge`
63
+
64
+ **Example:** `src/components/badge/stories/badge.stories.ts`
65
+
66
+ ### StatusBadge
67
+
68
+ **Props**
69
+
70
+ - `label`: `string` **(required)**
71
+ - `class`: `ClassValue`
72
+ - `dotted`: `boolean`
73
+ - `state`: `success` | `warning` | `error` | `faded` — default `"faded"`
74
+ - `variant`: `light` | `stroke` — default `"light"`
75
+
76
+ **Composes with:** `Badge`
77
+
78
+ **Example:** `src/components/badge/stories/status-badge.stories.ts`
79
+
80
+ ---
81
+
82
+ ## button
83
+
84
+ ### Button
85
+
86
+ **Props**
87
+
88
+ - `as`: `AsTag | Component` — default `"button"` — Element or component to render as.
89
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
90
+ - `class`: `ClassValue`
91
+ - `intent`: `error` | `primary` | `neutral` — default `"primary"`
92
+ - `size`: `xs` | `sm` | `md` | `xxs` — default `"md"`
93
+ - `variant`: `fill` | `lighter` | `stroke` | `ghost` — default `"fill"`
94
+
95
+ **Slots**
96
+
97
+ - `default`
98
+
99
+ **Composes with:** `CompactButton`, `FancyButton`, `LinkButton`, `SocialButton`
100
+
101
+ **Example:** `src/components/button/stories/button.stories.ts`
102
+
103
+ ### CompactButton
104
+
105
+ **Props**
106
+
107
+ - `icon`: `string` **(required)**
108
+ - `as`: `AsTag | Component` — default `"button"` — Element or component to render as.
109
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
110
+ - `class`: `ClassValue`
111
+ - `rounded`: `boolean`
112
+ - `size`: `lg` | `md` — default `"lg"`
113
+ - `variant`: `stroke` | `ghost` | `white` — default `"stroke"`
114
+
115
+ **Composes with:** `Button`, `FancyButton`, `LinkButton`, `SocialButton`
116
+
117
+ **Example:** `src/components/button/stories/compact-button.stories.ts`
118
+
119
+ ### FancyButton
120
+
121
+ **Props**
122
+
123
+ - `as`: `AsTag | Component` — default `"button"` — Element or component to render as.
124
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
125
+ - `class`: `ClassValue`
126
+ - `intent`: `error` | `basic` | `primary` | `neutral` — default `"primary"`
127
+ - `size`: `xs` | `sm` | `md` — default `"md"`
128
+
129
+ **Slots**
130
+
131
+ - `default`
132
+
133
+ **Composes with:** `Button`, `CompactButton`, `LinkButton`, `SocialButton`
134
+
135
+ **Example:** `src/components/button/stories/fancy-button.stories.ts`
136
+
137
+ ### LinkButton
138
+
139
+ **Props**
140
+
141
+ - `as`: `AsTag | Component` — default `"a"` — Element or component to render as.
142
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
143
+ - `class`: `ClassValue`
144
+ - `disabled`: `boolean`
145
+ - `intent`: `error` | `primary` | `black` | `gray` — default `"primary"`
146
+ - `size`: `sm` | `md` — default `"md"`
147
+ - `underline`: `boolean`
148
+
149
+ **Slots**
150
+
151
+ - `default`
152
+
153
+ **Composes with:** `Button`, `CompactButton`, `FancyButton`, `SocialButton`
154
+
155
+ **Example:** `src/components/button/stories/link-button.stories.ts`
156
+
157
+ ### SocialButton
158
+
159
+ **Props**
160
+
161
+ - `brand`: `apple` | `twitter` | `google` | `facebook` | `linkedin` | `github` **(required)**
162
+ - `class`: `string`
163
+ - `label`: `string`
164
+ - `variant`: `fill` | `stroke` — default `"stroke"`
165
+
166
+ **Composes with:** `Button`, `CompactButton`, `FancyButton`, `LinkButton`
167
+
168
+ **Example:** `src/components/button/stories/social-button.stories.ts`
169
+
170
+ ---
171
+
172
+ ## calendar
173
+
174
+ ### Calendar
175
+
176
+ **Props**
177
+
178
+ - `as`: `AsTag | Component` — Element or component to render as.
179
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
180
+ - `calendarLabel`: `string` — The accessible label for the calendar
181
+ - `class`: `ClassValue`
182
+ - `defaultPlaceholder`: `DateValue` — The default placeholder date
183
+ - `defaultValue`: `DateValue` — The default value for the calendar
184
+ - `dir`: `Direction` — The reading direction of the calendar when applicable. <br> If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
185
+ - `disabled`: `boolean` — Whether the calendar is disabled
186
+ - `disableDaysOutsideCurrentView`: `boolean` — Whether or not to disable days outside the current view.
187
+ - `fixedWeeks`: `boolean` — default `true` — Whether or not to always display 6 weeks in the calendar
188
+ - `initialFocus`: `boolean` — If true, the calendar will focus the selected day, today, or the first day of the month depending on what is visible when the calendar is mounted
189
+ - `isDateDisabled`: `Matcher` — A function that returns whether or not a date is disabled
190
+ - `isDateUnavailable`: `Matcher` — A function that returns whether or not a date is unavailable
191
+ - `locale`: `string` — The locale to use for formatting dates
192
+ - `markedDates`: `DateValue[]`
193
+ - `maxValue`: `DateValue` — The maximum date that can be selected
194
+ - `minValue`: `DateValue` — The minimum date that can be selected
195
+ - `modelValue`: `DateValue | DateValue[] | null` — The controlled selected date value of the calendar. Can be bound as `v-model`.
196
+ - `multiple`: `boolean` — Whether multiple dates can be selected
197
+ - `nextPage`: `((placeholder: DateValue) => DateValue)` — A function that returns the next page of the calendar. It receives the current placeholder as an argument inside the component.
198
+ - `numberOfMonths`: `number` — The number of months to display at once
199
+ - `pagedNavigation`: `boolean` — This property causes the previous and next buttons to navigate by the number of months displayed at once, rather than one month
200
+ - `placeholder`: `DateValue` — The placeholder date, which is used to determine what month to display when no date is selected
201
+ - `preventDeselect`: `boolean` — Whether or not to prevent the user from deselecting a date without selecting another date first
202
+ - `prevPage`: `((placeholder: DateValue) => DateValue)` — A function that returns the previous page of the calendar. It receives the current placeholder as an argument inside the component.
203
+ - `readonly`: `boolean` — Whether the calendar is readonly
204
+ - `weekdayFormat`: `WeekDayFormat` — default `"short"` — The format to use for the weekday strings provided via the weekdays slot prop
205
+ - `weekStartsOn`: `WeekStartsOn` — default `1` — The day of the week to start the calendar on
206
+
207
+ **Events**
208
+
209
+ - `update:modelValue`: `[date: DateValue | undefined]`
210
+ - `update:placeholder`: `[date: DateValue]`
211
+
212
+ **Example:** `src/components/calendar/stories/calendar.stories.ts`
213
+
214
+ ---
215
+
216
+ ## chart
217
+
218
+ ### BarChart
219
+
220
+ **Props**
221
+
222
+ - `category`: `string` **(required)**
223
+ - `data`: `BarDatum[]` **(required)**
224
+ - `series`: `BarSeries[]` **(required)**
225
+ - `ariaLabel`: `string`
226
+ - `class`: `unknown`
227
+ - `dense`: `boolean`
228
+ - `description`: `string`
229
+ - `format`: `ChartFormat` — default `formatNumber`
230
+ - `layout`: `stacked` | `grouped` — default `"stacked"`
231
+ - `legend`: `inline` | `chip` | `table` | `none`
232
+ - `radius`: `number` — default `5`
233
+ - `size`: `default` | `compact`
234
+ - `state`: `error` | `ready` | `loading` | `empty`
235
+ - `tableVisible`: `boolean`
236
+ - `tickFormat`: `ChartFormat` — default `formatCompact`
237
+ - `ticks`: `number` — default `4`
238
+ - `title`: `string`
239
+ - `total`: `boolean` — default `true`
240
+ - `totalLabel`: `string` — default `"Total"`
241
+
242
+ **Composes with:** `ChartCard`, `ChartLegend`, `ChartPlot`
243
+
244
+ **Example:** `src/components/chart/stories/bar-chart.stories.ts`
245
+
246
+ ### ChartCard
247
+
248
+ **Props**
249
+
250
+ - `title`: `string` **(required)**
251
+ - `caption`: `string`
252
+ - `class`: `ClassValue`
253
+ - `delta`: `{ value: string; direction: "up" | "down"; }`
254
+ - `value`: `string`
255
+
256
+ **Slots**
257
+
258
+ - `toolbar`
259
+ - `default`
260
+
261
+ **Composes with:** `BarChart`, `ChartLegend`, `ChartPlot`
262
+
263
+ **Example:** none — this component has no story.
264
+
265
+ ### ChartLegend
266
+
267
+ **Props**
268
+
269
+ - `items`: `ChartLegendItem[]` **(required)**
270
+ - `class`: `ClassValue`
271
+ - `modelValue`: `string[]` — default `[]`
272
+ - `toggle`: `boolean` — default `true`
273
+ - `variant`: `inline` | `chip` | `table` — default `"inline"`
274
+
275
+ **Events**
276
+
277
+ - `update:modelValue`: `[value: string[]]`
278
+
279
+ **Composes with:** `BarChart`, `ChartCard`, `ChartPlot`
280
+
281
+ **Example:** none — this component has no story.
282
+
283
+ ### ChartPlot
284
+
285
+ **Props**
286
+
287
+ - `ariaLabel`: `string` **(required)**
288
+ - `class`: `ClassValue`
289
+ - `description`: `string`
290
+ - `size`: `default` | `compact` | `spark` — default `"default"`
291
+ - `state`: `error` | `ready` | `loading` | `empty` — default `"ready"`
292
+ - `table`: `ChartTable`
293
+ - `tableVisible`: `boolean`
294
+ - `title`: `string`
295
+
296
+ **Slots**
297
+
298
+ - `default`
299
+ - `action`
300
+ - `footer`
301
+
302
+ **Composes with:** `BarChart`, `ChartCard`, `ChartLegend`
303
+
304
+ **Example:** none — this component has no story.
305
+
306
+ ---
307
+
308
+ ## checkbox
309
+
310
+ ### Checkbox
311
+
312
+ **Props**
313
+
314
+ - `as`: `AsTag | Component` — Element or component to render as.
315
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
316
+ - `class`: `ClassValue`
317
+ - `defaultValue`: `boolean | "indeterminate"` — The value of the checkbox when it is initially rendered. Use when you do not need to control its value.
318
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with the checkbox
319
+ - `falseValue`: `boolean` — The value used when the checkbox is unchecked. Defaults to `false`.
320
+ - `id`: `string` — Id of the element
321
+ - `modelValue`: `boolean | "indeterminate" | null` — The controlled value of the checkbox. Can be binded with v-model.
322
+ - `name`: `string` — The name of the field. Submitted with its owning form as part of a name/value pair.
323
+ - `required`: `boolean` — When `true`, indicates that the user must set the value before the owning form can be submitted.
324
+ - `trueValue`: `boolean` — The value used when the checkbox is checked. Defaults to `true`.
325
+ - `value`: `AcceptableValue` — The value given as data when submitted with a `name`.
326
+
327
+ **Events**
328
+
329
+ - `update:modelValue`: `[value: boolean | "indeterminate"]`
330
+
331
+ **Composes with:** `CheckboxCard`, `CheckboxLabel`
332
+
333
+ **Example:** `src/components/checkbox/stories/checkbox.stories.ts`
334
+
335
+ ### CheckboxCard
336
+
337
+ **Props**
338
+
339
+ - `as`: `AsTag | Component` — Element or component to render as.
340
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
341
+ - `class`: `ClassValue`
342
+ - `disabled`: `boolean`
343
+ - `for`: `string` — The id of the element the label is associated with.
344
+ - `required`: `boolean`
345
+
346
+ **Slots**
347
+
348
+ - `image` — scope `{ class: string; }`
349
+ - `icon`
350
+ - `label`
351
+ - `sublabel`
352
+ - `badge` — scope `{ disabled: boolean; }`
353
+ - `description`
354
+ - `default`
355
+
356
+ **Composes with:** `Checkbox`, `CheckboxLabel`
357
+
358
+ **Example:** `src/components/checkbox/stories/checkbox-card.stories.ts`
359
+
360
+ ### CheckboxLabel
361
+
362
+ **Props**
363
+
364
+ - `as`: `AsTag | Component` — Element or component to render as.
365
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
366
+ - `class`: `ClassValue`
367
+ - `disabled`: `boolean`
368
+ - `for`: `string` — The id of the element the label is associated with.
369
+ - `required`: `boolean`
370
+
371
+ **Slots**
372
+
373
+ - `default`
374
+ - `label`
375
+ - `sublabel`
376
+ - `badge`
377
+ - `description`
378
+ - `linkButton`
379
+
380
+ **Composes with:** `Checkbox`, `CheckboxCard`
381
+
382
+ **Example:** none — this component has no story.
383
+
384
+ ---
385
+
386
+ ## collapsible
387
+
388
+ ### Collapsible
389
+
390
+ **Props**
391
+
392
+ - `as`: `AsTag | Component` — Element or component to render as.
393
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
394
+ - `class`: `unknown`
395
+ - `defaultOpen`: `boolean` — The open state of the collapsible when it is initially rendered. <br> Use when you do not need to control its open state.
396
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with the collapsible.
397
+ - `open`: `boolean` — The controlled open state of the collapsible. Can be binded with `v-model`.
398
+ - `unmountOnHide`: `boolean` — When `true`, the element will be unmounted on closed state.
399
+
400
+ **Events**
401
+
402
+ - `update:open`: `[value: boolean]`
403
+
404
+ **Slots**
405
+
406
+ - `default` — scope `{ open: boolean; }`
407
+
408
+ **Composes with:** `CollapsibleContent`, `CollapsibleTrigger`
409
+
410
+ **Example:** `src/components/collapsible/stories/collapsible.stories.ts`
411
+
412
+ ### CollapsibleContent
413
+
414
+ **Props**
415
+
416
+ - `as`: `AsTag | Component` — Element or component to render as.
417
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
418
+ - `class`: `ClassValue`
419
+ - `forceMount`: `boolean` — Used to force mounting when more control is needed. Useful when controlling animation with Vue animation libraries.
420
+
421
+ **Slots**
422
+
423
+ - `default`
424
+
425
+ **Composes with:** `Collapsible`, `CollapsibleTrigger`
426
+
427
+ **Example:** none — this component has no story.
428
+
429
+ ### CollapsibleTrigger
430
+
431
+ **Props**
432
+
433
+ - `as`: `AsTag | Component` — Element or component to render as.
434
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
435
+ - `class`: `unknown`
436
+
437
+ **Slots**
438
+
439
+ - `default`
440
+
441
+ **Composes with:** `Collapsible`, `CollapsibleContent`
442
+
443
+ **Example:** none — this component has no story.
444
+
445
+ ---
446
+
447
+ ## color-picker
448
+
449
+ ### AlphaSlider
450
+
451
+ **Props**
452
+
453
+ - `modelValue`: `tinycolor.Instance` **(required)**
454
+ - `class`: `unknown`
455
+
456
+ **Events**
457
+
458
+ - `update:modelValue`: `[value: string]`
459
+
460
+ **Composes with:** `ColorArea`, `ColorPicker`, `ColorSwatch`, `HueSlider`
461
+
462
+ **Example:** none — this component has no story.
463
+
464
+ ### ColorArea
465
+
466
+ **Props**
467
+
468
+ - `hue`: `number` **(required)**
469
+ - `modelValue`: `tinycolor.Instance` **(required)**
470
+ - `class`: `unknown`
471
+
472
+ **Composes with:** `AlphaSlider`, `ColorPicker`, `ColorSwatch`, `HueSlider`
473
+
474
+ **Example:** none — this component has no story.
475
+
476
+ ### ColorPicker
477
+
478
+ **Props**
479
+
480
+ - `class`: `ClassValue`
481
+ - `colorSwatchLabel`: `string` — default `"Recommended Colors"`
482
+ - `defaultFormat`: `ColorFormat`
483
+ - `formats`: `ColorFormat[]` — default `["hex", "rgb", "hsl", "hsb"]`
484
+ - `label`: `string` — default `"Pick Color"`
485
+ - `modelValue`: `tinycolor.ColorInput` — default `"hsl(240, 100%, 50%)"`
486
+
487
+ **Events**
488
+
489
+ - `update:modelValue`: `[value: string]`
490
+
491
+ **Slots**
492
+
493
+ - `swatches`
494
+
495
+ **Composes with:** `AlphaSlider`, `ColorArea`, `ColorSwatch`, `HueSlider`
496
+
497
+ **Example:** `src/components/color-picker/stories/color-picker.stories.ts`
498
+
499
+ ### ColorSwatch
500
+
501
+ **Props**
502
+
503
+ - `label`: `string` **(required)**
504
+ - `modelValue`: `tinycolor.Instance` **(required)**
505
+ - `class`: `unknown`
506
+ - `defaultColor`: `string`
507
+ - `swatch`: `string[]` — default `DEFAULT_SWATCH`
508
+
509
+ **Events**
510
+
511
+ - `update:modelValue`: `[value: string]`
512
+
513
+ **Composes with:** `AlphaSlider`, `ColorArea`, `ColorPicker`, `HueSlider`
514
+
515
+ **Example:** none — this component has no story.
516
+
517
+ ### HueSlider
518
+
519
+ **Props**
520
+
521
+ - `class`: `unknown`
522
+ - `modelValue`: `number` — default `0`
523
+
524
+ **Events**
525
+
526
+ - `update:modelValue`: `[value: number]`
527
+
528
+ **Composes with:** `AlphaSlider`, `ColorArea`, `ColorPicker`, `ColorSwatch`
529
+
530
+ **Example:** none — this component has no story.
531
+
532
+ ---
533
+
534
+ ## combobox
535
+
536
+ ### Combobox
537
+
538
+ **Props**
539
+
540
+ - `options`: `ComboboxItemPropsType[]` **(required)**
541
+ - `as`: `AsTag | Component` — Element or component to render as.
542
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
543
+ - `badgeProps`: `BadgeProps`
544
+ - `by`: `string | ((a: AcceptableValue, b: AcceptableValue) => boolean)` — Use this to compare objects by a particular field, or pass your own comparison function for complete control over how objects are compared.
545
+ - `class`: `string`
546
+ - `defaultOpen`: `boolean` — The open state of the combobox when it is initially rendered. <br> Use when you do not need to control its open state.
547
+ - `defaultValue`: `AcceptableValue | AcceptableValue[]` — The value of the listbox when initially rendered. Use when you do not need to control the state of the Listbox
548
+ - `dir`: `Direction` — The reading direction of the listbox when applicable. <br> If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
549
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with listbox
550
+ - `emptyLabel`: `string`
551
+ - `highlightOnHover`: `boolean` — When `true`, hover over item will trigger highlight
552
+ - `ignoreFilter`: `boolean` — When `true`, disable the default filters
553
+ - `labelBy`: `string`
554
+ - `modelValue`: `AcceptableValue | AcceptableValue[]` — The controlled value of the listbox. Can be binded with `v-model`.
555
+ - `multiple`: `boolean` — Whether multiple options can be selected or not.
556
+ - `name`: `string` — The name of the field. Submitted with its owning form as part of a name/value pair.
557
+ - `open`: `boolean` — The controlled open state of the Combobox. Can be binded with `v-model:open`.
558
+ - `openOnClick`: `boolean` — Whether to open the combobox when the input is clicked
559
+ - `openOnFocus`: `boolean` — Whether to open the combobox when the input is focused
560
+ - `placeholder`: `string` — default `"Select"`
561
+ - `required`: `boolean` — When `true`, indicates that the user must set the value before the owning form can be submitted.
562
+ - `resetModelValueOnClear`: `boolean` — When `true` the `modelValue` will be reset to `null` (or `[]` if `multiple`)
563
+ - `resetSearchTermOnBlur`: `boolean` — Whether to reset the searchTerm when the Combobox input blurred
564
+ - `resetSearchTermOnSelect`: `boolean` — Whether to reset the searchTerm when the Combobox value is selected
565
+ - `searchable`: `boolean`
566
+ - `searchPlaceholder`: `string`
567
+ - `size`: `xs` | `sm` | `md` — default `"md"`
568
+ - `type`: `compact` | `inline` | `normal` | `compact-input`
569
+ - `valueBy`: `string`
570
+
571
+ **Events**
572
+
573
+ - `update:modelValue`: `[value: AcceptableValue]`
574
+ - `update:open`: `[value: boolean]`
575
+ - `highlight`: `[payload: { ref: HTMLElement; value: AcceptableValue; } | undefined]`
576
+
577
+ **Slots**
578
+
579
+ - `image` — scope `{ selected: ComboboxItemPropsType; }`
580
+ - `prefix` — scope `{ class: string; }`
581
+
582
+ **Composes with:** `ComboboxAnchor`, `ComboboxEmpty`, `ComboboxGroup`, `ComboboxInput`, `ComboboxItem`, `ComboboxList`, `ComboboxRoot`, `ComboboxSeparator`, `ComboboxTrigger`
583
+
584
+ **Example:** `src/components/combobox/stories/combobox.stories.ts`
585
+
586
+ ### ComboboxAnchor
587
+
588
+ **Props**
589
+
590
+ - `as`: `AsTag | Component` — Element or component to render as.
591
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
592
+ - `class`: `ClassValue`
593
+ - `reference`: `ReferenceElement` — The reference (or anchor) element that is being referred to for positioning. If not provided will use the current component as anchor.
594
+
595
+ **Slots**
596
+
597
+ - `default`
598
+
599
+ **Composes with:** `Combobox`, `ComboboxEmpty`, `ComboboxGroup`, `ComboboxInput`, `ComboboxItem`, `ComboboxList`, `ComboboxRoot`, `ComboboxSeparator`, `ComboboxTrigger`
600
+
601
+ **Example:** none — this component has no story.
602
+
603
+ ### ComboboxEmpty
604
+
605
+ **Props**
606
+
607
+ - `as`: `AsTag | Component` — Element or component to render as.
608
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
609
+ - `class`: `ClassValue`
610
+
611
+ **Slots**
612
+
613
+ - `default`
614
+
615
+ **Composes with:** `Combobox`, `ComboboxAnchor`, `ComboboxGroup`, `ComboboxInput`, `ComboboxItem`, `ComboboxList`, `ComboboxRoot`, `ComboboxSeparator`, `ComboboxTrigger`
616
+
617
+ **Example:** none — this component has no story.
618
+
619
+ ### ComboboxGroup
620
+
621
+ **Props**
622
+
623
+ - `as`: `AsTag | Component` — Element or component to render as.
624
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
625
+ - `class`: `ClassValue`
626
+ - `heading`: `string`
627
+
628
+ **Slots**
629
+
630
+ - `default`
631
+
632
+ **Composes with:** `Combobox`, `ComboboxAnchor`, `ComboboxEmpty`, `ComboboxInput`, `ComboboxItem`, `ComboboxList`, `ComboboxRoot`, `ComboboxSeparator`, `ComboboxTrigger`
633
+
634
+ **Example:** none — this component has no story.
635
+
636
+ ### ComboboxInput
637
+
638
+ **Props**
639
+
640
+ - `as`: `AsTag | Component` — Element or component to render as.
641
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
642
+ - `autoFocus`: `boolean` — Focus on element when mounted.
643
+ - `class`: `ClassValue`
644
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with item
645
+ - `displayValue`: `((val: any) => string)` — The display value of input for selected item. Does not work with `multiple`.
646
+ - `modelValue`: `string` — The controlled value of the filter. Can be binded with v-model.
647
+ - `placeholder`: `string`
648
+ - `searchable`: `boolean`
649
+ - `textInputProps`: `Partial<TextInputProps>`
650
+
651
+ **Events**
652
+
653
+ - `update:modelValue`: `[value: string | undefined]`
654
+
655
+ **Composes with:** `Combobox`, `ComboboxAnchor`, `ComboboxEmpty`, `ComboboxGroup`, `ComboboxItem`, `ComboboxList`, `ComboboxRoot`, `ComboboxSeparator`, `ComboboxTrigger`
656
+
657
+ **Example:** none — this component has no story.
658
+
659
+ ### ComboboxItem
660
+
661
+ **Props**
662
+
663
+ - `label`: `string` **(required)**
664
+ - `value`: `string | number | boolean | Record<string, any>` **(required)**
665
+ - `checkbox`: `boolean`
666
+ - `class`: `ClassValue`
667
+ - `description`: `string`
668
+ - `disabled`: `boolean`
669
+ - `focused`: `boolean`
670
+ - `icon`: `string`
671
+ - `image`: `string`
672
+ - `selected`: `boolean | "indeterminate"`
673
+ - `size`: `sm` | `lg` — default `"sm"`
674
+ - `sublabel`: `string`
675
+
676
+ **Events**
677
+
678
+ - `select`: `[event: SelectEvent$3<AcceptableValue>]`
679
+
680
+ **Slots**
681
+
682
+ - `prefix`
683
+ - `suffix`
684
+
685
+ **Composes with:** `Combobox`, `ComboboxAnchor`, `ComboboxEmpty`, `ComboboxGroup`, `ComboboxInput`, `ComboboxList`, `ComboboxRoot`, `ComboboxSeparator`, `ComboboxTrigger`
686
+
687
+ **Example:** none — this component has no story.
688
+
689
+ ### ComboboxList
690
+
691
+ **Props**
692
+
693
+ - `align`: `start` | `center` | `end` — default `"start"` — The preferred alignment against the trigger. May change when collisions occur.
694
+ - `alignFlip`: `boolean` — Flip alignment when colliding with boundary. May only occur when `prioritizePosition` is true.
695
+ - `alignOffset`: `number` — An offset in pixels from the `start` or `end` alignment options.
696
+ - `arrowPadding`: `number` — The padding between the arrow and the edges of the content. If your content has border-radius, this will prevent it from overflowing the corners.
697
+ - `as`: `AsTag | Component` — Element or component to render as.
698
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
699
+ - `avoidCollisions`: `boolean` — When `true`, overrides the side and align preferences to prevent collisions with boundary edges.
700
+ - `bodyLock`: `boolean` — The document.body will be lock, and scrolling will be disabled.
701
+ - `class`: `ClassValue`
702
+ - `collisionBoundary`: `Element | (Element | null)[] | null` — The element used as the collision boundary. By default this is the viewport, though you can provide additional element(s) to be included in this check.
703
+ - `collisionPadding`: `number | Partial<Record<"top" | "right" | "bottom" | "left", number>>` — The distance in pixels from the boundary edges where collision detection should occur. Accepts a number (same for all sides), or a partial padding object, for example: { top: 20, left: 20 }.
704
+ - `dir`: `Direction` — The reading direction of the popper content when applicable. <br> If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
705
+ - `disableOutsidePointerEvents`: `boolean` — When `true`, hover/focus/click interactions will be disabled on elements outside the `DismissableLayer`. Users will need to click twice on outside elements to interact with them: once to close the `DismissableLayer`, and again to trigger the element.
706
+ - `disableUpdateOnLayoutShift`: `boolean` — Whether to disable the update position for the content when the layout shifted.
707
+ - `forceMount`: `boolean` — Used to force mounting when more control is needed. Useful when controlling animation with Vue animation libraries.
708
+ - `hideShiftedArrow`: `boolean` — When `true`, hides the arrow when it cannot be centered to the reference element.
709
+ - `hideWhenDetached`: `boolean` — Whether to hide the content when the trigger becomes fully occluded.
710
+ - `hideWhenEmpty`: `boolean` — When `true`, hides the content when there are no items matching the filter.
711
+ - `memoDependencies`: `unknown[]` — Reactive dependencies that should invalidate the memoized content subtree.
712
+ - `position`: `inline` | `popper` — default `"popper"` — The positioning mode to use, <br> `inline` is the default and you can control the position using CSS. <br> `popper` positions content in the same way as our other primitives, for example `Popover` or `DropdownMenu`.
713
+ - `positionStrategy`: `fixed` | `absolute` — The type of CSS position property to use.
714
+ - `prioritizePosition`: `boolean` — Force content to be position within the viewport. Might overlap the reference element, which may not be desired.
715
+ - `reference`: `ReferenceElement` — The custom element or virtual element that will be set as the reference to position the floating element. If provided, it will replace the default anchor element.
716
+ - `side`: `top` | `right` | `bottom` | `left` — The preferred side of the trigger to render against when open. Will be reversed when collisions occur and avoidCollisions is enabled.
717
+ - `sideFlip`: `boolean` — Flip to the opposite side when colliding with boundary.
718
+ - `sideOffset`: `number` — default `4` — The distance in pixels from the trigger.
719
+ - `sticky`: `partial` | `always` — The sticky behavior on the align axis. `partial` will keep the content in the boundary as long as the trigger is at least partially in the boundary whilst "always" will keep the content in the boundary regardless.
720
+ - `updatePositionStrategy`: `always` | `optimized` — Strategy to update the position of the floating element on every animation frame.
721
+
722
+ **Events**
723
+
724
+ - `escapeKeyDown`: `[event: KeyboardEvent]`
725
+ - `pointerDownOutside`: `[event: PointerDownOutsideEvent]`
726
+ - `focusOutside`: `[event: FocusOutsideEvent]`
727
+ - `interactOutside`: `[event: PointerDownOutsideEvent | FocusOutsideEvent]`
728
+
729
+ **Slots**
730
+
731
+ - `default`
732
+
733
+ **Composes with:** `Combobox`, `ComboboxAnchor`, `ComboboxEmpty`, `ComboboxGroup`, `ComboboxInput`, `ComboboxItem`, `ComboboxRoot`, `ComboboxSeparator`, `ComboboxTrigger`
734
+
735
+ **Example:** none — this component has no story.
736
+
737
+ ### ComboboxRoot
738
+
739
+ **Props**
740
+
741
+ - `as`: `AsTag | Component` — Element or component to render as.
742
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
743
+ - `by`: `string | ((a: AcceptableValue, b: AcceptableValue) => boolean)` — Use this to compare objects by a particular field, or pass your own comparison function for complete control over how objects are compared.
744
+ - `class`: `unknown`
745
+ - `defaultOpen`: `boolean` — The open state of the combobox when it is initially rendered. <br> Use when you do not need to control its open state.
746
+ - `defaultValue`: `AcceptableValue | AcceptableValue[]` — The value of the listbox when initially rendered. Use when you do not need to control the state of the Listbox
747
+ - `dir`: `Direction` — The reading direction of the listbox when applicable. <br> If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
748
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with listbox
749
+ - `highlightOnHover`: `boolean` — When `true`, hover over item will trigger highlight
750
+ - `ignoreFilter`: `boolean` — When `true`, disable the default filters
751
+ - `modelValue`: `AcceptableValue | AcceptableValue[]` — The controlled value of the listbox. Can be binded with `v-model`.
752
+ - `multiple`: `boolean` — Whether multiple options can be selected or not.
753
+ - `name`: `string` — The name of the field. Submitted with its owning form as part of a name/value pair.
754
+ - `open`: `boolean` — The controlled open state of the Combobox. Can be binded with `v-model:open`.
755
+ - `openOnClick`: `boolean` — Whether to open the combobox when the input is clicked
756
+ - `openOnFocus`: `boolean` — Whether to open the combobox when the input is focused
757
+ - `required`: `boolean` — When `true`, indicates that the user must set the value before the owning form can be submitted.
758
+ - `resetModelValueOnClear`: `boolean` — When `true` the `modelValue` will be reset to `null` (or `[]` if `multiple`)
759
+ - `resetSearchTermOnBlur`: `boolean` — Whether to reset the searchTerm when the Combobox input blurred
760
+ - `resetSearchTermOnSelect`: `boolean` — Whether to reset the searchTerm when the Combobox value is selected
761
+
762
+ **Events**
763
+
764
+ - `update:modelValue`: `[value: AcceptableValue]`
765
+ - `update:open`: `[value: boolean]`
766
+ - `highlight`: `[payload: { ref: HTMLElement; value: AcceptableValue; } | undefined]`
767
+
768
+ **Slots**
769
+
770
+ - `default`
771
+
772
+ **Composes with:** `Combobox`, `ComboboxAnchor`, `ComboboxEmpty`, `ComboboxGroup`, `ComboboxInput`, `ComboboxItem`, `ComboboxList`, `ComboboxSeparator`, `ComboboxTrigger`
773
+
774
+ **Example:** none — this component has no story.
775
+
776
+ ### ComboboxSeparator
777
+
778
+ **Props**
779
+
780
+ - `as`: `AsTag | Component` — Element or component to render as.
781
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
782
+ - `class`: `ClassValue`
783
+
784
+ **Slots**
785
+
786
+ - `default`
787
+
788
+ **Composes with:** `Combobox`, `ComboboxAnchor`, `ComboboxEmpty`, `ComboboxGroup`, `ComboboxInput`, `ComboboxItem`, `ComboboxList`, `ComboboxRoot`, `ComboboxTrigger`
789
+
790
+ **Example:** none — this component has no story.
791
+
792
+ ### ComboboxTrigger
793
+
794
+ **Props**
795
+
796
+ - `as`: `AsTag | Component` — Element or component to render as.
797
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
798
+ - `class`: `ClassValue`
799
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with item
800
+ - `error`: `boolean`
801
+ - `filled`: `boolean`
802
+ - `size`: `xs` | `sm` | `md`
803
+ - `type`: `compact` | `inline` | `normal` | `compact-input` — default `"normal"`
804
+
805
+ **Slots**
806
+
807
+ - `default`
808
+
809
+ **Composes with:** `Combobox`, `ComboboxAnchor`, `ComboboxEmpty`, `ComboboxGroup`, `ComboboxInput`, `ComboboxItem`, `ComboboxList`, `ComboboxRoot`, `ComboboxSeparator`
810
+
811
+ **Example:** none — this component has no story.
812
+
813
+ ---
814
+
815
+ ## content-divider
816
+
817
+ ### ContentDivider
818
+
819
+ **Props**
820
+
821
+ - `class`: `ClassValue`
822
+ - `text`: `string`
823
+ - `type`: `line` | `text` | `text-line` | `solid-text` — default `"line"`
824
+
825
+ **Example:** `src/components/content-divider/stories/content-divider.stories.ts`
826
+
827
+ ---
828
+
829
+ ## counter-input
830
+
831
+ ### CounterInput
832
+
833
+ **Props**
834
+
835
+ - `as`: `AsTag | Component` — Element or component to render as.
836
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
837
+ - `class`: `ClassValue`
838
+ - `defaultValue`: `number` — default `0`
839
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with the Number Field.
840
+ - `disableWheelChange`: `boolean` — When `true`, prevents the value from changing on wheel scroll.
841
+ - `focusOnChange`: `boolean` — When `true`, the input will be focused when the value changes.
842
+ - `formatOptions`: `Intl.NumberFormatOptions` — Formatting options for the value displayed in the number field. This also affects what characters are allowed to be typed by the user.
843
+ - `hasError`: `boolean` — default `false`
844
+ - `id`: `string` — Id of the element
845
+ - `invertWheelChange`: `boolean` — When `true`, inverts the direction of the wheel change.
846
+ - `locale`: `string` — The locale to use for formatting and currencies
847
+ - `max`: `number` — The largest value allowed for the input.
848
+ - `min`: `number` — The smallest value allowed for the input.
849
+ - `modelValue`: `number | null`
850
+ - `name`: `string` — The name of the field. Submitted with its owning form as part of a name/value pair.
851
+ - `readonly`: `boolean` — When `true`, the Number Field is read-only.
852
+ - `required`: `boolean` — When `true`, indicates that the user must set the value before the owning form can be submitted.
853
+ - `size`: `xs` | `sm` | `md` — default `"md"`
854
+ - `step`: `number` — The amount that the input value changes with each increment or decrement "tick".
855
+ - `stepSnapping`: `boolean` — When `false`, prevents the value from snapping to the nearest increment of the step value
856
+
857
+ **Events**
858
+
859
+ - `update:modelValue`: `[val: number]`
860
+
861
+ **Example:** `src/components/counter-input/stories/counter-input.stories.ts`
862
+
863
+ ---
864
+
865
+ ## date-picker
866
+
867
+ ### DatePicker
868
+
869
+ **Props**
870
+
871
+ - `applyLabel`: `string` — default `"Apply"`
872
+ - `as`: `AsTag | Component` — Element or component to render as.
873
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
874
+ - `calendarLabel`: `string` — The accessible label for the calendar
875
+ - `cancelLabel`: `string` — default `"Cancel"`
876
+ - `class`: `ClassValue`
877
+ - `defaultPlaceholder`: `DateValue` — The default placeholder date
878
+ - `defaultValue`: `DateValue` — The default value for the calendar
879
+ - `dir`: `Direction` — The reading direction of the calendar when applicable. <br> If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
880
+ - `disabled`: `boolean` — Whether the calendar is disabled
881
+ - `disableDaysOutsideCurrentView`: `boolean` — Whether or not to disable days outside the current view.
882
+ - `fixedWeeks`: `boolean` — Whether or not to always display 6 weeks in the calendar
883
+ - `footer`: `boolean` — default `true`
884
+ - `initialFocus`: `boolean` — If true, the calendar will focus the selected day, today, or the first day of the month depending on what is visible when the calendar is mounted
885
+ - `isDateDisabled`: `Matcher` — A function that returns whether or not a date is disabled
886
+ - `isDateUnavailable`: `Matcher` — A function that returns whether or not a date is unavailable
887
+ - `locale`: `string` — The locale to use for formatting dates
888
+ - `markedDates`: `DateValue[]`
889
+ - `maxValue`: `DateValue` — The maximum date that can be selected
890
+ - `minValue`: `DateValue` — The minimum date that can be selected
891
+ - `modelValue`: `DateValue`
892
+ - `multiple`: `boolean` — Whether multiple dates can be selected
893
+ - `nextPage`: `((placeholder: DateValue) => DateValue)` — A function that returns the next page of the calendar. It receives the current placeholder as an argument inside the component.
894
+ - `numberOfMonths`: `number` — The number of months to display at once
895
+ - `pagedNavigation`: `boolean` — This property causes the previous and next buttons to navigate by the number of months displayed at once, rather than one month
896
+ - `placeholder`: `DateValue` — The placeholder date, which is used to determine what month to display when no date is selected
897
+ - `preventDeselect`: `boolean` — Whether or not to prevent the user from deselecting a date without selecting another date first
898
+ - `prevPage`: `((placeholder: DateValue) => DateValue)` — A function that returns the previous page of the calendar. It receives the current placeholder as an argument inside the component.
899
+ - `readonly`: `boolean` — Whether the calendar is readonly
900
+ - `weekdayFormat`: `WeekDayFormat` — The format to use for the weekday strings provided via the weekdays slot prop
901
+ - `weekStartsOn`: `WeekStartsOn` — The day of the week to start the calendar on
902
+
903
+ **Events**
904
+
905
+ - `update:modelValue`: `[value: DateValue | undefined]`
906
+ - `apply`: `[value: DateValue | undefined]`
907
+ - `cancel`: `[]`
908
+
909
+ **Example:** `src/components/date-picker/stories/date-picker.stories.ts`
910
+
911
+ ---
912
+
913
+ ## digit-input
914
+
915
+ ### DigitInput
916
+
917
+ **Props**
918
+
919
+ - `as`: `AsTag | Component` — Element or component to render as.
920
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
921
+ - `class`: `ClassValue`
922
+ - `defaultValue`: `PinInputValue<Type>` — The default value of the pin inputs when it is initially rendered. Use when you do not need to control its checked state.
923
+ - `dir`: `Direction` — The reading direction of the combobox when applicable. <br> If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
924
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with the pin input
925
+ - `hasError`: `boolean` — default `false`
926
+ - `id`: `string` — Id of the element
927
+ - `mask`: `boolean` — When `true`, pin inputs will be treated as password.
928
+ - `modelValue`: `PinInputValue<Type> | null` — default `[] as any` — The controlled checked state of the pin input. Can be binded as `v-model`.
929
+ - `name`: `string` — The name of the field. Submitted with its owning form as part of a name/value pair.
930
+ - `otp`: `boolean` — When `true`, mobile devices will autodetect the OTP from messages or clipboard, and enable the autocomplete field.
931
+ - `placeholder`: `string` — The placeholder character to use for empty pin-inputs.
932
+ - `required`: `boolean` — When `true`, indicates that the user must set the value before the owning form can be submitted.
933
+ - `type`: `Type` — Input type for the inputs.
934
+
935
+ **Events**
936
+
937
+ - `update:modelValue`: `[value: PinInputValue<Type>]`
938
+ - `complete`: `[value: PinInputValue<Type>]`
939
+
940
+ **Slots**
941
+
942
+ - `default`
943
+
944
+ **Composes with:** `DigitInputGroup`, `DigitInputSlot`
945
+
946
+ **Example:** `src/components/digit-input/stories/digit-input.stories.ts`
947
+
948
+ ### DigitInputGroup
949
+
950
+ **Props**
951
+
952
+ - `as`: `AsTag | Component` — Element or component to render as.
953
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
954
+ - `class`: `ClassValue`
955
+
956
+ **Slots**
957
+
958
+ - `default`
959
+
960
+ **Composes with:** `DigitInput`, `DigitInputSlot`
961
+
962
+ **Example:** none — this component has no story.
963
+
964
+ ### DigitInputSlot
965
+
966
+ **Props**
967
+
968
+ - `index`: `number` **(required)** — Position of the value this input binds to.
969
+ - `as`: `AsTag | Component` — Element or component to render as.
970
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
971
+ - `class`: `ClassValue`
972
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with the pin input
973
+
974
+ **Composes with:** `DigitInput`, `DigitInputGroup`
975
+
976
+ **Example:** none — this component has no story.
977
+
978
+ ---
979
+
980
+ ## dropdown-menu
981
+
982
+ ### DropdownMenu
983
+
984
+ **Props**
985
+
986
+ - `class`: `ClassValue`
987
+ - `defaultOpen`: `boolean` — The open state of the dropdown menu when it is initially rendered. Use when you do not need to control its open state.
988
+ - `dir`: `Direction$4` — The reading direction of the combobox when applicable. If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
989
+ - `modal`: `boolean` — The modality of the dropdown menu. When set to `true`, interaction with outside elements will be disabled and only menu content will be visible to screen readers.
990
+ - `open`: `boolean` — The controlled open state of the menu. Can be used as `v-model:open`.
991
+
992
+ **Events**
993
+
994
+ - `update:open`: `[payload: boolean]`
995
+
996
+ **Slots**
997
+
998
+ - `default`
999
+
1000
+ **Composes with:** `DropdownMenuContent`, `DropdownMenuGroup`, `DropdownMenuItem`, `DropdownMenuLabel`, `DropdownMenuSeparator`, `DropdownMenuSub`, `DropdownMenuSubContent`, `DropdownMenuSubTrigger`, `DropdownMenuTrigger`
1001
+
1002
+ **Example:** `src/components/dropdown-menu/stories/dropdown-menu.stories.ts`
1003
+
1004
+ ### DropdownMenuContent
1005
+
1006
+ **Props**
1007
+
1008
+ - `align`: `start` | `center` | `end` — The preferred alignment against the trigger. May change when collisions occur.
1009
+ - `alignFlip`: `boolean` — Flip alignment when colliding with boundary. May only occur when `prioritizePosition` is true.
1010
+ - `alignOffset`: `number` — An offset in pixels from the `start` or `end` alignment options.
1011
+ - `arrowPadding`: `number` — The padding between the arrow and the edges of the content. If your content has border-radius, this will prevent it from overflowing the corners.
1012
+ - `as`: `AsTag | Component` — Element or component to render as.
1013
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1014
+ - `avoidCollisions`: `boolean` — When `true`, overrides the side and align preferences to prevent collisions with boundary edges.
1015
+ - `class`: `ClassValue`
1016
+ - `collisionBoundary`: `Element | (Element | null)[] | null` — The element used as the collision boundary. By default this is the viewport, though you can provide additional element(s) to be included in this check.
1017
+ - `collisionPadding`: `number | Partial<Record<"top" | "right" | "bottom" | "left", number>>` — The distance in pixels from the boundary edges where collision detection should occur. Accepts a number (same for all sides), or a partial padding object, for example: { top: 20, left: 20 }.
1018
+ - `disableUpdateOnLayoutShift`: `boolean` — Whether to disable the update position for the content when the layout shifted.
1019
+ - `forceMount`: `boolean` — Used to force mounting when more control is needed. Useful when controlling animation with Vue animation libraries.
1020
+ - `hideShiftedArrow`: `boolean` — When `true`, hides the arrow when it cannot be centered to the reference element.
1021
+ - `hideWhenDetached`: `boolean` — Whether to hide the content when the trigger becomes fully occluded.
1022
+ - `loop`: `boolean` — When `true`, keyboard navigation will loop from last item to first, and vice versa.
1023
+ - `memoDependencies`: `unknown[]` — Reactive dependencies that should invalidate the memoized content subtree.
1024
+ - `positionStrategy`: `fixed` | `absolute` — The type of CSS position property to use.
1025
+ - `prioritizePosition`: `boolean` — Force content to be position within the viewport. Might overlap the reference element, which may not be desired.
1026
+ - `reference`: `ReferenceElement` — The custom element or virtual element that will be set as the reference to position the floating element. If provided, it will replace the default anchor element.
1027
+ - `side`: `top` | `right` | `bottom` | `left` — The preferred side of the trigger to render against when open. Will be reversed when collisions occur and avoidCollisions is enabled.
1028
+ - `sideFlip`: `boolean` — Flip to the opposite side when colliding with boundary.
1029
+ - `sideOffset`: `number` — default `4` — The distance in pixels from the trigger.
1030
+ - `sticky`: `partial` | `always` — The sticky behavior on the align axis. `partial` will keep the content in the boundary as long as the trigger is at least partially in the boundary whilst "always" will keep the content in the boundary regardless.
1031
+ - `updatePositionStrategy`: `always` | `optimized` — Strategy to update the position of the floating element on every animation frame.
1032
+
1033
+ **Events**
1034
+
1035
+ - `escapeKeyDown`: `[event: KeyboardEvent]`
1036
+ - `pointerDownOutside`: `[event: PointerDownOutsideEvent]`
1037
+ - `focusOutside`: `[event: FocusOutsideEvent]`
1038
+ - `interactOutside`: `[event: PointerDownOutsideEvent | FocusOutsideEvent]`
1039
+ - `closeAutoFocus`: `[event: Event]`
1040
+
1041
+ **Slots**
1042
+
1043
+ - `default`
1044
+
1045
+ **Composes with:** `DropdownMenu`, `DropdownMenuGroup`, `DropdownMenuItem`, `DropdownMenuLabel`, `DropdownMenuSeparator`, `DropdownMenuSub`, `DropdownMenuSubContent`, `DropdownMenuSubTrigger`, `DropdownMenuTrigger`
1046
+
1047
+ **Example:** none — this component has no story.
1048
+
1049
+ ### DropdownMenuGroup
1050
+
1051
+ **Props**
1052
+
1053
+ - `as`: `AsTag | Component` — Element or component to render as.
1054
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1055
+ - `class`: `unknown`
1056
+
1057
+ **Slots**
1058
+
1059
+ - `default`
1060
+
1061
+ **Composes with:** `DropdownMenu`, `DropdownMenuContent`, `DropdownMenuItem`, `DropdownMenuLabel`, `DropdownMenuSeparator`, `DropdownMenuSub`, `DropdownMenuSubContent`, `DropdownMenuSubTrigger`, `DropdownMenuTrigger`
1062
+
1063
+ **Example:** none — this component has no story.
1064
+
1065
+ ### DropdownMenuItem
1066
+
1067
+ **Props**
1068
+
1069
+ - `as`: `AsTag | Component` — Element or component to render as.
1070
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1071
+ - `class`: `ClassValue`
1072
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with the item.
1073
+ - `textValue`: `string` — Optional text used for typeahead purposes. By default the typeahead behavior will use the `.textContent` of the item. <br> Use this when the content is complex, or you have non-textual content inside.
1074
+
1075
+ **Slots**
1076
+
1077
+ - `prefix`
1078
+ - `default`
1079
+ - `suffix`
1080
+
1081
+ **Composes with:** `DropdownMenu`, `DropdownMenuContent`, `DropdownMenuGroup`, `DropdownMenuLabel`, `DropdownMenuSeparator`, `DropdownMenuSub`, `DropdownMenuSubContent`, `DropdownMenuSubTrigger`, `DropdownMenuTrigger`
1082
+
1083
+ **Example:** none — this component has no story.
1084
+
1085
+ ### DropdownMenuLabel
1086
+
1087
+ **Props**
1088
+
1089
+ - `as`: `AsTag | Component` — Element or component to render as.
1090
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1091
+ - `class`: `ClassValue`
1092
+
1093
+ **Slots**
1094
+
1095
+ - `default`
1096
+
1097
+ **Composes with:** `DropdownMenu`, `DropdownMenuContent`, `DropdownMenuGroup`, `DropdownMenuItem`, `DropdownMenuSeparator`, `DropdownMenuSub`, `DropdownMenuSubContent`, `DropdownMenuSubTrigger`, `DropdownMenuTrigger`
1098
+
1099
+ **Example:** none — this component has no story.
1100
+
1101
+ ### DropdownMenuSeparator
1102
+
1103
+ **Props**
1104
+
1105
+ - `as`: `AsTag | Component` — Element or component to render as.
1106
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1107
+ - `class`: `ClassValue`
1108
+
1109
+ **Composes with:** `DropdownMenu`, `DropdownMenuContent`, `DropdownMenuGroup`, `DropdownMenuItem`, `DropdownMenuLabel`, `DropdownMenuSub`, `DropdownMenuSubContent`, `DropdownMenuSubTrigger`, `DropdownMenuTrigger`
1110
+
1111
+ **Example:** none — this component has no story.
1112
+
1113
+ ### DropdownMenuSub
1114
+
1115
+ **Props**
1116
+
1117
+ - `class`: `unknown`
1118
+ - `defaultOpen`: `boolean` — The open state of the dropdown menu when it is initially rendered. Use when you do not need to control its open state.
1119
+ - `open`: `boolean` — The controlled open state of the menu. Can be used as `v-model:open`.
1120
+
1121
+ **Events**
1122
+
1123
+ - `update:open`: `[payload: boolean]`
1124
+
1125
+ **Slots**
1126
+
1127
+ - `default`
1128
+
1129
+ **Composes with:** `DropdownMenu`, `DropdownMenuContent`, `DropdownMenuGroup`, `DropdownMenuItem`, `DropdownMenuLabel`, `DropdownMenuSeparator`, `DropdownMenuSubContent`, `DropdownMenuSubTrigger`, `DropdownMenuTrigger`
1130
+
1131
+ **Example:** none — this component has no story.
1132
+
1133
+ ### DropdownMenuSubContent
1134
+
1135
+ **Props**
1136
+
1137
+ - `alignFlip`: `boolean` — Flip alignment when colliding with boundary. May only occur when `prioritizePosition` is true.
1138
+ - `alignOffset`: `number` — An offset in pixels from the `start` or `end` alignment options.
1139
+ - `arrowPadding`: `number` — The padding between the arrow and the edges of the content. If your content has border-radius, this will prevent it from overflowing the corners.
1140
+ - `as`: `AsTag | Component` — Element or component to render as.
1141
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1142
+ - `avoidCollisions`: `boolean` — When `true`, overrides the side and align preferences to prevent collisions with boundary edges.
1143
+ - `class`: `ClassValue`
1144
+ - `collisionBoundary`: `Element | (Element | null)[] | null` — The element used as the collision boundary. By default this is the viewport, though you can provide additional element(s) to be included in this check.
1145
+ - `collisionPadding`: `number | Partial<Record<"top" | "right" | "bottom" | "left", number>>` — The distance in pixels from the boundary edges where collision detection should occur. Accepts a number (same for all sides), or a partial padding object, for example: { top: 20, left: 20 }.
1146
+ - `disableUpdateOnLayoutShift`: `boolean` — Whether to disable the update position for the content when the layout shifted.
1147
+ - `forceMount`: `boolean` — Used to force mounting when more control is needed. Useful when controlling animation with Vue animation libraries.
1148
+ - `hideShiftedArrow`: `boolean` — When `true`, hides the arrow when it cannot be centered to the reference element.
1149
+ - `hideWhenDetached`: `boolean` — Whether to hide the content when the trigger becomes fully occluded.
1150
+ - `loop`: `boolean` — When `true`, keyboard navigation will loop from last item to first, and vice versa.
1151
+ - `memoDependencies`: `unknown[]` — Reactive dependencies that should invalidate the memoized content subtree.
1152
+ - `positionStrategy`: `fixed` | `absolute` — The type of CSS position property to use.
1153
+ - `prioritizePosition`: `boolean` — Force content to be position within the viewport. Might overlap the reference element, which may not be desired.
1154
+ - `reference`: `ReferenceElement` — The custom element or virtual element that will be set as the reference to position the floating element. If provided, it will replace the default anchor element.
1155
+ - `sideFlip`: `boolean` — Flip to the opposite side when colliding with boundary.
1156
+ - `sideOffset`: `number` — The distance in pixels from the trigger.
1157
+ - `sticky`: `partial` | `always` — The sticky behavior on the align axis. `partial` will keep the content in the boundary as long as the trigger is at least partially in the boundary whilst "always" will keep the content in the boundary regardless.
1158
+ - `updatePositionStrategy`: `always` | `optimized` — Strategy to update the position of the floating element on every animation frame.
1159
+
1160
+ **Events**
1161
+
1162
+ - `escapeKeyDown`: `[event: KeyboardEvent]`
1163
+ - `pointerDownOutside`: `[event: PointerDownOutsideEvent]`
1164
+ - `focusOutside`: `[event: FocusOutsideEvent]`
1165
+ - `interactOutside`: `[event: PointerDownOutsideEvent | FocusOutsideEvent]`
1166
+ - `entryFocus`: `[event: Event]`
1167
+ - `openAutoFocus`: `[event: Event]`
1168
+ - `closeAutoFocus`: `[event: Event]`
1169
+
1170
+ **Slots**
1171
+
1172
+ - `default`
1173
+
1174
+ **Composes with:** `DropdownMenu`, `DropdownMenuContent`, `DropdownMenuGroup`, `DropdownMenuItem`, `DropdownMenuLabel`, `DropdownMenuSeparator`, `DropdownMenuSub`, `DropdownMenuSubTrigger`, `DropdownMenuTrigger`
1175
+
1176
+ **Example:** none — this component has no story.
1177
+
1178
+ ### DropdownMenuSubTrigger
1179
+
1180
+ **Props**
1181
+
1182
+ - `as`: `AsTag | Component` — Element or component to render as.
1183
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1184
+ - `class`: `ClassValue`
1185
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with the item.
1186
+ - `textValue`: `string` — Optional text used for typeahead purposes. By default the typeahead behavior will use the `.textContent` of the item. <br> Use this when the content is complex, or you have non-textual content inside.
1187
+
1188
+ **Slots**
1189
+
1190
+ - `prefix`
1191
+ - `default`
1192
+
1193
+ **Composes with:** `DropdownMenu`, `DropdownMenuContent`, `DropdownMenuGroup`, `DropdownMenuItem`, `DropdownMenuLabel`, `DropdownMenuSeparator`, `DropdownMenuSub`, `DropdownMenuSubContent`, `DropdownMenuTrigger`
1194
+
1195
+ **Example:** none — this component has no story.
1196
+
1197
+ ### DropdownMenuTrigger
1198
+
1199
+ **Props**
1200
+
1201
+ - `as`: `AsTag | Component` — Element or component to render as.
1202
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1203
+ - `class`: `unknown`
1204
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with item
1205
+
1206
+ **Slots**
1207
+
1208
+ - `default`
1209
+
1210
+ **Composes with:** `DropdownMenu`, `DropdownMenuContent`, `DropdownMenuGroup`, `DropdownMenuItem`, `DropdownMenuLabel`, `DropdownMenuSeparator`, `DropdownMenuSub`, `DropdownMenuSubContent`, `DropdownMenuSubTrigger`
1211
+
1212
+ **Example:** none — this component has no story.
1213
+
1214
+ ---
1215
+
1216
+ ## file-upload
1217
+
1218
+ ### FileUploadArea
1219
+
1220
+ **Props**
1221
+
1222
+ - `accept`: `string`
1223
+ - `class`: `ClassValue`
1224
+ - `description`: `string` — default `"JPEG, PNG, PDF, and MP4 formats, up to 50 MB."`
1225
+ - `icon`: `string` — default `"i-celeste-upload-cloud-2-line"`
1226
+ - `label`: `string` — default `"Choose a file or drag & drop it here."`
1227
+ - `labelOnDrop`: `string` — default `"Drop file to upload"`
1228
+ - `maxFiles`: `number` — default `5`
1229
+ - `maxSize`: `number` — default `2000`
1230
+ - `modelValue`: `File[]` — default `[]`
1231
+ - `multiple`: `boolean` — default `false`
1232
+ - `onTriggerClick`: `(() => void)`
1233
+ - `triggerLabel`: `string` — default `"Browse Files"`
1234
+
1235
+ **Events**
1236
+
1237
+ - `error`: `[error: FileError]`
1238
+ - `update:modelValue`: `[value: File[]]`
1239
+
1240
+ **Example:** `src/components/file-upload/stories/file-upload-area.stories.ts`
1241
+
1242
+ ---
1243
+
1244
+ ## hint-text
1245
+
1246
+ ### HintText
1247
+
1248
+ **Props**
1249
+
1250
+ - `class`: `ClassValue`
1251
+ - `icon`: `string`
1252
+ - `state`: `default` | `error` | `disabled` — default `"default"`
1253
+ - `text`: `string`
1254
+
1255
+ **Example:** `src/components/hint-text/stories/hint-text.stories.ts`
1256
+
1257
+ ---
1258
+
1259
+ ## label
1260
+
1261
+ ### Label
1262
+
1263
+ **Props**
1264
+
1265
+ - `as`: `AsTag | Component` — Element or component to render as.
1266
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1267
+ - `class`: `ClassValue`
1268
+ - `disabled`: `boolean`
1269
+ - `for`: `string` — The id of the element the label is associated with.
1270
+ - `information`: `string`
1271
+ - `required`: `boolean`
1272
+ - `sublabel`: `string`
1273
+
1274
+ **Slots**
1275
+
1276
+ - `default`
1277
+ - `button`
1278
+
1279
+ **Example:** `src/components/label/stories/label.stories.ts`
1280
+
1281
+ ---
1282
+
1283
+ ## modal
1284
+
1285
+ ### Modal
1286
+
1287
+ **Props**
1288
+
1289
+ - `class`: `unknown`
1290
+ - `defaultOpen`: `boolean` — The open state of the dialog when it is initially rendered. Use when you do not need to control its open state.
1291
+ - `modal`: `boolean` — The modality of the dialog When set to `true`, <br> interaction with outside elements will be disabled and only dialog content will be visible to screen readers.
1292
+ - `open`: `boolean` — The controlled open state of the dialog. Can be binded as `v-model:open`.
1293
+ - `unmountOnHide`: `boolean` — When set to `false`, the dialog content will not be unmounted when closed, but instead hidden with CSS. <br> Useful for SEO or when you want to improve performance by not remounting the component on every open.
1294
+
1295
+ **Events**
1296
+
1297
+ - `update:open`: `[value: boolean]`
1298
+
1299
+ **Slots**
1300
+
1301
+ - `default`
1302
+
1303
+ **Composes with:** `ModalBody`, `ModalClose`, `ModalContent`, `ModalFooter`, `ModalHeader`, `ModalTrigger`
1304
+
1305
+ **Example:** `src/components/modal/stories/modal.stories.ts`
1306
+
1307
+ ### ModalBody
1308
+
1309
+ **Props**
1310
+
1311
+ - `class`: `ClassValue`
1312
+
1313
+ **Slots**
1314
+
1315
+ - `default`
1316
+
1317
+ **Composes with:** `Modal`, `ModalClose`, `ModalContent`, `ModalFooter`, `ModalHeader`, `ModalTrigger`
1318
+
1319
+ **Example:** none — this component has no story.
1320
+
1321
+ ### ModalClose
1322
+
1323
+ **Props**
1324
+
1325
+ - `as`: `AsTag | Component` — Element or component to render as.
1326
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1327
+ - `class`: `unknown`
1328
+
1329
+ **Slots**
1330
+
1331
+ - `default`
1332
+
1333
+ **Composes with:** `Modal`, `ModalBody`, `ModalContent`, `ModalFooter`, `ModalHeader`, `ModalTrigger`
1334
+
1335
+ **Example:** none — this component has no story.
1336
+
1337
+ ### ModalContent
1338
+
1339
+ **Props**
1340
+
1341
+ - `as`: `AsTag | Component` — Element or component to render as.
1342
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1343
+ - `class`: `ClassValue`
1344
+ - `disableOutsidePointerEvents`: `boolean` — When `true`, hover/focus/click interactions will be disabled on elements outside the `DismissableLayer`. Users will need to click twice on outside elements to interact with them: once to close the `DismissableLayer`, and again to trigger the element.
1345
+ - `forceMount`: `boolean` — Used to force mounting when more control is needed. Useful when controlling animation with Vue animation libraries.
1346
+
1347
+ **Events**
1348
+
1349
+ - `escapeKeyDown`: `[event: KeyboardEvent]`
1350
+ - `pointerDownOutside`: `[event: PointerDownOutsideEvent]`
1351
+ - `focusOutside`: `[event: FocusOutsideEvent]`
1352
+ - `interactOutside`: `[event: PointerDownOutsideEvent | FocusOutsideEvent]`
1353
+ - `openAutoFocus`: `[event: Event]`
1354
+ - `closeAutoFocus`: `[event: Event]`
1355
+
1356
+ **Slots**
1357
+
1358
+ - `default`
1359
+
1360
+ **Composes with:** `Modal`, `ModalBody`, `ModalClose`, `ModalFooter`, `ModalHeader`, `ModalTrigger`
1361
+
1362
+ **Example:** none — this component has no story.
1363
+
1364
+ ### ModalFooter
1365
+
1366
+ **Props**
1367
+
1368
+ - `class`: `ClassValue`
1369
+
1370
+ **Slots**
1371
+
1372
+ - `default`
1373
+
1374
+ **Composes with:** `Modal`, `ModalBody`, `ModalClose`, `ModalContent`, `ModalHeader`, `ModalTrigger`
1375
+
1376
+ **Example:** none — this component has no story.
1377
+
1378
+ ### ModalHeader
1379
+
1380
+ **Props**
1381
+
1382
+ - `title`: `string` **(required)**
1383
+ - `alignment`: `horizontal` | `vertical` — default `"horizontal"`
1384
+ - `class`: `ClassValue`
1385
+ - `description`: `string`
1386
+ - `dismissible`: `boolean` — default `true`
1387
+ - `icon`: `string`
1388
+ - `type`: `information` | `default` | `success` | `warning` | `error` — default `"default"`
1389
+
1390
+ **Composes with:** `Modal`, `ModalBody`, `ModalClose`, `ModalContent`, `ModalFooter`, `ModalTrigger`
1391
+
1392
+ **Example:** none — this component has no story.
1393
+
1394
+ ### ModalTrigger
1395
+
1396
+ **Props**
1397
+
1398
+ - `as`: `AsTag | Component` — Element or component to render as.
1399
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1400
+ - `class`: `unknown`
1401
+
1402
+ **Slots**
1403
+
1404
+ - `default`
1405
+
1406
+ **Composes with:** `Modal`, `ModalBody`, `ModalClose`, `ModalContent`, `ModalFooter`, `ModalHeader`
1407
+
1408
+ **Example:** none — this component has no story.
1409
+
1410
+ ---
1411
+
1412
+ ## pagination
1413
+
1414
+ ### Pagination
1415
+
1416
+ **Props**
1417
+
1418
+ - `itemsPerPage`: `number` **(required)** — Number of items per page
1419
+ - `as`: `AsTag | Component` — Element or component to render as.
1420
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1421
+ - `class`: `ClassValue`
1422
+ - `defaultPage`: `number` — The value of the page that should be active when initially rendered. Use when you do not need to control the value state.
1423
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with item
1424
+ - `page`: `number` — The controlled value of the current page. Can be binded as `v-model:page`.
1425
+ - `showEdges`: `boolean` — When `true`, always show first page, last page, and ellipsis
1426
+ - `siblingCount`: `number` — Number of sibling should be shown around the current page
1427
+ - `total`: `number` — Number of items in your list
1428
+ - `variant`: `basic` | `rounded` | `group` — default `"basic"`
1429
+
1430
+ **Events**
1431
+
1432
+ - `update:page`: `[value: number]`
1433
+
1434
+ **Slots**
1435
+
1436
+ - `leading` — scope `{ page: number; pageCount: number; }`
1437
+ - `default` — scope `{ page: number; pageCount: number; }`
1438
+ - `trailing` — scope `{ page: number; pageCount: number; }`
1439
+
1440
+ **Composes with:** `PaginationContent`, `PaginationEllipsis`, `PaginationFirst`, `PaginationItem`, `PaginationLast`, `PaginationNext`, `PaginationPrevious`
1441
+
1442
+ **Example:** `src/components/pagination/stories/pagination.stories.ts`
1443
+
1444
+ ### PaginationContent
1445
+
1446
+ **Props**
1447
+
1448
+ - `as`: `AsTag | Component` — Element or component to render as.
1449
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1450
+ - `class`: `ClassValue`
1451
+
1452
+ **Slots**
1453
+
1454
+ - `default` — scope `{ items: ({ type: "ellipsis"; } | { type: "page"; value: number; })[]; }`
1455
+
1456
+ **Composes with:** `Pagination`, `PaginationEllipsis`, `PaginationFirst`, `PaginationItem`, `PaginationLast`, `PaginationNext`, `PaginationPrevious`
1457
+
1458
+ **Example:** none — this component has no story.
1459
+
1460
+ ### PaginationEllipsis
1461
+
1462
+ **Props**
1463
+
1464
+ - `as`: `AsTag | Component` — Element or component to render as.
1465
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1466
+ - `class`: `ClassValue`
1467
+
1468
+ **Slots**
1469
+
1470
+ - `default`
1471
+
1472
+ **Composes with:** `Pagination`, `PaginationContent`, `PaginationFirst`, `PaginationItem`, `PaginationLast`, `PaginationNext`, `PaginationPrevious`
1473
+
1474
+ **Example:** none — this component has no story.
1475
+
1476
+ ### PaginationFirst
1477
+
1478
+ **Props**
1479
+
1480
+ - `as`: `AsTag | Component` — Element or component to render as.
1481
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1482
+ - `class`: `ClassValue`
1483
+
1484
+ **Slots**
1485
+
1486
+ - `default`
1487
+
1488
+ **Composes with:** `Pagination`, `PaginationContent`, `PaginationEllipsis`, `PaginationItem`, `PaginationLast`, `PaginationNext`, `PaginationPrevious`
1489
+
1490
+ **Example:** none — this component has no story.
1491
+
1492
+ ### PaginationItem
1493
+
1494
+ **Props**
1495
+
1496
+ - `value`: `number` **(required)** — Value for the page
1497
+ - `as`: `AsTag | Component` — Element or component to render as.
1498
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1499
+ - `class`: `ClassValue`
1500
+ - `disabled`: `boolean`
1501
+ - `isActive`: `boolean`
1502
+
1503
+ **Slots**
1504
+
1505
+ - `default`
1506
+
1507
+ **Composes with:** `Pagination`, `PaginationContent`, `PaginationEllipsis`, `PaginationFirst`, `PaginationLast`, `PaginationNext`, `PaginationPrevious`
1508
+
1509
+ **Example:** none — this component has no story.
1510
+
1511
+ ### PaginationLast
1512
+
1513
+ **Props**
1514
+
1515
+ - `as`: `AsTag | Component` — Element or component to render as.
1516
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1517
+ - `class`: `ClassValue`
1518
+
1519
+ **Slots**
1520
+
1521
+ - `default`
1522
+
1523
+ **Composes with:** `Pagination`, `PaginationContent`, `PaginationEllipsis`, `PaginationFirst`, `PaginationItem`, `PaginationNext`, `PaginationPrevious`
1524
+
1525
+ **Example:** none — this component has no story.
1526
+
1527
+ ### PaginationNext
1528
+
1529
+ **Props**
1530
+
1531
+ - `as`: `AsTag | Component` — Element or component to render as.
1532
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1533
+ - `class`: `ClassValue`
1534
+
1535
+ **Slots**
1536
+
1537
+ - `default`
1538
+
1539
+ **Composes with:** `Pagination`, `PaginationContent`, `PaginationEllipsis`, `PaginationFirst`, `PaginationItem`, `PaginationLast`, `PaginationPrevious`
1540
+
1541
+ **Example:** none — this component has no story.
1542
+
1543
+ ### PaginationPrevious
1544
+
1545
+ **Props**
1546
+
1547
+ - `as`: `AsTag | Component` — Element or component to render as.
1548
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1549
+ - `class`: `ClassValue`
1550
+
1551
+ **Slots**
1552
+
1553
+ - `default`
1554
+
1555
+ **Composes with:** `Pagination`, `PaginationContent`, `PaginationEllipsis`, `PaginationFirst`, `PaginationItem`, `PaginationLast`, `PaginationNext`
1556
+
1557
+ **Example:** none — this component has no story.
1558
+
1559
+ ---
1560
+
1561
+ ## popover
1562
+
1563
+ ### Popover
1564
+
1565
+ **Props**
1566
+
1567
+ - `class`: `unknown`
1568
+ - `defaultOpen`: `boolean` — The open state of the popover when it is initially rendered. Use when you do not need to control its open state.
1569
+ - `modal`: `boolean` — The modality of the popover. When set to true, interaction with outside elements will be disabled and only popover content will be visible to screen readers.
1570
+ - `open`: `boolean` — The controlled open state of the popover.
1571
+
1572
+ **Events**
1573
+
1574
+ - `update:open`: `[value: boolean]`
1575
+
1576
+ **Slots**
1577
+
1578
+ - `default`
1579
+
1580
+ **Composes with:** `PopoverContent`, `PopoverTrigger`
1581
+
1582
+ **Example:** `src/components/popover/stories/popover.stories.ts`
1583
+
1584
+ ### PopoverContent
1585
+
1586
+ **Props**
1587
+
1588
+ - `align`: `start` | `center` | `end`
1589
+ - `alignOffset`: `number`
1590
+ - `class`: `ClassValue`
1591
+ - `description`: `string`
1592
+ - `dismissible`: `boolean` — default `true`
1593
+ - `icon`: `string`
1594
+ - `iconSize`: `sm` | `lg` | `md` | `xl` | `xxl` — default `"lg"`
1595
+ - `showTail`: `boolean` — default `true`
1596
+ - `side`: `top` | `right` | `bottom` | `left` — default `"bottom"`
1597
+ - `sideOffset`: `number`
1598
+ - `title`: `string`
1599
+
1600
+ **Events**
1601
+
1602
+ - `escapeKeyDown`: `[event: KeyboardEvent]`
1603
+ - `pointerDownOutside`: `[event: PointerDownOutsideEvent]`
1604
+ - `focusOutside`: `[event: FocusOutsideEvent]`
1605
+ - `interactOutside`: `[event: PointerDownOutsideEvent | FocusOutsideEvent]`
1606
+ - `openAutoFocus`: `[event: Event]`
1607
+ - `closeAutoFocus`: `[event: Event]`
1608
+
1609
+ **Slots**
1610
+
1611
+ - `default`
1612
+ - `footer`
1613
+
1614
+ **Composes with:** `Popover`, `PopoverTrigger`
1615
+
1616
+ **Example:** none — this component has no story.
1617
+
1618
+ ### PopoverTrigger
1619
+
1620
+ **Props**
1621
+
1622
+ - `as`: `AsTag | Component` — Element or component to render as.
1623
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1624
+ - `class`: `unknown`
1625
+
1626
+ **Slots**
1627
+
1628
+ - `default`
1629
+
1630
+ **Composes with:** `Popover`, `PopoverContent`
1631
+
1632
+ **Example:** none — this component has no story.
1633
+
1634
+ ---
1635
+
1636
+ ## progress
1637
+
1638
+ ### ProgressBar
1639
+
1640
+ **Props**
1641
+
1642
+ - `as`: `AsTag | Component` — Element or component to render as.
1643
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1644
+ - `class`: `ClassValue`
1645
+ - `color`: `primary` | `blue` | `red` | `orange` | `green` — default `"primary"`
1646
+ - `getValueLabel`: `((value: number | null | undefined, max: number) => string | undefined)` — A function to get the accessible label text in a human-readable format. If not provided, the value label will be read as the numeric value as a percentage of the max value.
1647
+ - `getValueText`: `((value: number | null | undefined, max: number) => string | undefined)` — A function to get the accessible value text representing the current value in a human-readable format.
1648
+ - `layout`: `default` | `inline` | `bare` | `no-description` — default `"bare"`
1649
+ - `max`: `number` — default `100` — The maximum progress value.
1650
+ - `modelValue`: `number | null` — default `0` — The progress value. Can be bind as `v-model`.
1651
+ - `title`: `string`
1652
+
1653
+ **Slots**
1654
+
1655
+ - `label`
1656
+ - `description`
1657
+
1658
+ **Composes with:** `ProgressCircle`
1659
+
1660
+ **Example:** `src/components/progress/stories/progress-bar.stories.ts`
1661
+
1662
+ ### ProgressCircle
1663
+
1664
+ **Props**
1665
+
1666
+ - `as`: `AsTag | Component` — Element or component to render as.
1667
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1668
+ - `class`: `ClassValue`
1669
+ - `getValueLabel`: `((value: number | null | undefined, max: number) => string | undefined)` — A function to get the accessible label text in a human-readable format. If not provided, the value label will be read as the numeric value as a percentage of the max value.
1670
+ - `getValueText`: `((value: number | null | undefined, max: number) => string | undefined)` — A function to get the accessible value text representing the current value in a human-readable format.
1671
+ - `max`: `number` — default `100` — The maximum progress value.
1672
+ - `modelValue`: `number | null` — default `0` — The progress value. Can be bind as `v-model`.
1673
+ - `size`: `80 | 72 | 64 | 56 | 48` — default `80`
1674
+
1675
+ **Slots**
1676
+
1677
+ - `default`
1678
+
1679
+ **Composes with:** `ProgressBar`
1680
+
1681
+ **Example:** none — this component has no story.
1682
+
1683
+ ---
1684
+
1685
+ ## radio-group
1686
+
1687
+ ### RadioGroup
1688
+
1689
+ **Props**
1690
+
1691
+ - `as`: `AsTag | Component` — Element or component to render as.
1692
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1693
+ - `class`: `ClassValue`
1694
+ - `defaultValue`: `AcceptableValue` — The value of the radio item that should be checked when initially rendered. Use when you do not need to control the state of the radio items.
1695
+ - `dir`: `Direction` — The reading direction of the combobox when applicable. <br> If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
1696
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with radio items.
1697
+ - `loop`: `boolean` — When `true`, keyboard navigation will loop from last item to first, and vice versa.
1698
+ - `modelValue`: `AcceptableValue` — The controlled value of the radio item to check. Can be binded as `v-model`.
1699
+ - `name`: `string` — The name of the field. Submitted with its owning form as part of a name/value pair.
1700
+ - `orientation`: `DataOrientation` — The orientation of the component.
1701
+ - `required`: `boolean` — When `true`, indicates that the user must set the value before the owning form can be submitted.
1702
+
1703
+ **Events**
1704
+
1705
+ - `update:modelValue`: `[payload: AcceptableValue]`
1706
+
1707
+ **Slots**
1708
+
1709
+ - `default`
1710
+
1711
+ **Composes with:** `RadioGroupCard`, `RadioGroupItem`, `RadioGroupLabel`
1712
+
1713
+ **Example:** `src/components/radio-group/stories/radio-group.stories.ts`
1714
+
1715
+ ### RadioGroupCard
1716
+
1717
+ **Props**
1718
+
1719
+ - `as`: `AsTag | Component` — Element or component to render as.
1720
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1721
+ - `class`: `ClassValue`
1722
+ - `disabled`: `boolean`
1723
+ - `for`: `string` — The id of the element the label is associated with.
1724
+ - `required`: `boolean`
1725
+
1726
+ **Slots**
1727
+
1728
+ - `image` — scope `{ class: string; }`
1729
+ - `icon`
1730
+ - `label`
1731
+ - `sublabel`
1732
+ - `badge` — scope `{ disabled: boolean; }`
1733
+ - `description`
1734
+ - `default`
1735
+
1736
+ **Composes with:** `RadioGroup`, `RadioGroupItem`, `RadioGroupLabel`
1737
+
1738
+ **Example:** `src/components/radio-group/stories/radio-group-card.stories.ts`
1739
+
1740
+ ### RadioGroupItem
1741
+
1742
+ **Props**
1743
+
1744
+ - `as`: `AsTag | Component` — Element or component to render as.
1745
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1746
+ - `class`: `ClassValue`
1747
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with the radio item.
1748
+ - `id`: `string`
1749
+ - `name`: `string` — The name of the field. Submitted with its owning form as part of a name/value pair.
1750
+ - `required`: `boolean` — When `true`, indicates that the user must set the value before the owning form can be submitted.
1751
+ - `value`: `AcceptableValue` — The value given as data when submitted with a `name`.
1752
+
1753
+ **Composes with:** `RadioGroup`, `RadioGroupCard`, `RadioGroupLabel`
1754
+
1755
+ **Example:** none — this component has no story.
1756
+
1757
+ ### RadioGroupLabel
1758
+
1759
+ **Props**
1760
+
1761
+ - `as`: `AsTag | Component` — Element or component to render as.
1762
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1763
+ - `class`: `ClassValue`
1764
+ - `disabled`: `boolean`
1765
+ - `for`: `string` — The id of the element the label is associated with.
1766
+ - `required`: `boolean`
1767
+
1768
+ **Slots**
1769
+
1770
+ - `default`
1771
+ - `label`
1772
+ - `sublabel`
1773
+ - `badge`
1774
+ - `description`
1775
+ - `linkButton`
1776
+
1777
+ **Composes with:** `RadioGroup`, `RadioGroupCard`, `RadioGroupItem`
1778
+
1779
+ **Example:** none — this component has no story.
1780
+
1781
+ ---
1782
+
1783
+ ## range-calendar
1784
+
1785
+ ### RangeCalendar
1786
+
1787
+ **Props**
1788
+
1789
+ - `allowNonContiguousRanges`: `boolean` — When combined with `isDateUnavailable`, determines whether non-contiguous ranges, i.e. ranges containing unavailable dates, may be selected.
1790
+ - `as`: `AsTag | Component` — Element or component to render as.
1791
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1792
+ - `calendarLabel`: `string` — The accessible label for the calendar
1793
+ - `class`: `ClassValue`
1794
+ - `defaultPlaceholder`: `DateValue` — The default placeholder date
1795
+ - `defaultValue`: `DateRange` — The default value for the calendar
1796
+ - `dir`: `Direction` — The reading direction of the calendar when applicable. <br> If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
1797
+ - `disabled`: `boolean` — Whether or not the calendar is disabled
1798
+ - `disableDaysOutsideCurrentView`: `boolean` — Whether or not to disable days outside the current view.
1799
+ - `fixedDate`: `start` | `end` — Which part of the range should be fixed
1800
+ - `fixedWeeks`: `boolean` — default `true` — Whether or not to always display 6 weeks in the calendar
1801
+ - `initialFocus`: `boolean` — If true, the calendar will focus the selected day, today, or the first day of the month depending on what is visible when the calendar is mounted
1802
+ - `isDateDisabled`: `Matcher` — A function that returns whether or not a date is disabled
1803
+ - `isDateHighlightable`: `Matcher` — A function that returns whether or not a date is hightable
1804
+ - `isDateUnavailable`: `Matcher` — A function that returns whether or not a date is unavailable
1805
+ - `locale`: `string` — The locale to use for formatting dates
1806
+ - `markedDates`: `DateValue[]`
1807
+ - `maximumDays`: `number` — The maximum number of days that can be selected in a range
1808
+ - `maxValue`: `DateValue` — The maximum date that can be selected
1809
+ - `minValue`: `DateValue` — The minimum date that can be selected
1810
+ - `modelValue`: `DateRange | null` — The controlled selected date range of the calendar. Can be bound as `v-model`.
1811
+ - `nextPage`: `((placeholder: DateValue) => DateValue)` — A function that returns the next page of the calendar. It receives the current placeholder as an argument inside the component.
1812
+ - `numberOfMonths`: `number` — default `2` — The number of months to display at once
1813
+ - `pagedNavigation`: `boolean` — This property causes the previous and next buttons to navigate by the number of months displayed at once, rather than one month
1814
+ - `placeholder`: `DateValue` — The placeholder date, which is used to determine what month to display when no date is selected. This updates as the user navigates the calendar and can be used to programmatically control the calendar view
1815
+ - `preventDeselect`: `boolean` — Whether or not to prevent the user from deselecting a date without selecting another date first
1816
+ - `prevPage`: `((placeholder: DateValue) => DateValue)` — A function that returns the previous page of the calendar. It receives the current placeholder as an argument inside the component.
1817
+ - `readonly`: `boolean` — Whether or not the calendar is readonly
1818
+ - `weekdayFormat`: `WeekDayFormat` — default `"short"` — The format to use for the weekday strings provided via the weekdays slot prop
1819
+ - `weekStartsOn`: `WeekStartsOn` — default `1` — The day of the week to start the calendar on
1820
+
1821
+ **Events**
1822
+
1823
+ - `update:modelValue`: `[date: DateRange]`
1824
+ - `update:placeholder`: `[date: DateValue]`
1825
+ - `update:validModelValue`: `[date: DateRange]`
1826
+ - `update:startValue`: `[date: DateValue | undefined]`
1827
+
1828
+ **Example:** `src/components/range-calendar/stories/range-calendar.stories.ts`
1829
+
1830
+ ---
1831
+
1832
+ ## range-picker
1833
+
1834
+ ### RangePicker
1835
+
1836
+ **Props**
1837
+
1838
+ - `allowNonContiguousRanges`: `boolean` — When combined with `isDateUnavailable`, determines whether non-contiguous ranges, i.e. ranges containing unavailable dates, may be selected.
1839
+ - `applyLabel`: `string` — default `"Apply"`
1840
+ - `as`: `AsTag | Component` — Element or component to render as.
1841
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1842
+ - `calendarLabel`: `string` — The accessible label for the calendar
1843
+ - `cancelLabel`: `string` — default `"Cancel"`
1844
+ - `class`: `ClassValue`
1845
+ - `defaultPlaceholder`: `DateValue` — The default placeholder date
1846
+ - `defaultValue`: `DateRange` — The default value for the calendar
1847
+ - `dir`: `Direction` — The reading direction of the calendar when applicable. <br> If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
1848
+ - `disabled`: `boolean` — Whether or not the calendar is disabled
1849
+ - `disableDaysOutsideCurrentView`: `boolean` — Whether or not to disable days outside the current view.
1850
+ - `fixedDate`: `start` | `end` — Which part of the range should be fixed
1851
+ - `fixedWeeks`: `boolean` — Whether or not to always display 6 weeks in the calendar
1852
+ - `footer`: `boolean` — default `true`
1853
+ - `initialFocus`: `boolean` — If true, the calendar will focus the selected day, today, or the first day of the month depending on what is visible when the calendar is mounted
1854
+ - `isDateDisabled`: `Matcher` — A function that returns whether or not a date is disabled
1855
+ - `isDateHighlightable`: `Matcher` — A function that returns whether or not a date is hightable
1856
+ - `isDateUnavailable`: `Matcher` — A function that returns whether or not a date is unavailable
1857
+ - `locale`: `string` — The locale to use for formatting dates
1858
+ - `markedDates`: `DateValue[]`
1859
+ - `maximumDays`: `number` — The maximum number of days that can be selected in a range
1860
+ - `maxValue`: `DateValue` — The maximum date that can be selected
1861
+ - `minValue`: `DateValue` — The minimum date that can be selected
1862
+ - `modelValue`: `DateRange` — default `{ start: undefined, end: undefined }`
1863
+ - `nextPage`: `((placeholder: DateValue) => DateValue)` — A function that returns the next page of the calendar. It receives the current placeholder as an argument inside the component.
1864
+ - `numberOfMonths`: `number` — The number of months to display at once
1865
+ - `pagedNavigation`: `boolean` — This property causes the previous and next buttons to navigate by the number of months displayed at once, rather than one month
1866
+ - `placeholder`: `DateValue` — The placeholder date, which is used to determine what month to display when no date is selected. This updates as the user navigates the calendar and can be used to programmatically control the calendar view
1867
+ - `placeholderLabel`: `string` — default `"Select a range"`
1868
+ - `presets`: `RangePickerPreset[]`
1869
+ - `preventDeselect`: `boolean` — Whether or not to prevent the user from deselecting a date without selecting another date first
1870
+ - `prevPage`: `((placeholder: DateValue) => DateValue)` — A function that returns the previous page of the calendar. It receives the current placeholder as an argument inside the component.
1871
+ - `rangeLabel`: `string` — default `"Range:"`
1872
+ - `readonly`: `boolean` — Whether or not the calendar is readonly
1873
+ - `showPresets`: `boolean` — default `true`
1874
+ - `weekdayFormat`: `WeekDayFormat` — The format to use for the weekday strings provided via the weekdays slot prop
1875
+ - `weekStartsOn`: `WeekStartsOn` — The day of the week to start the calendar on
1876
+
1877
+ **Events**
1878
+
1879
+ - `update:modelValue`: `[value: DateRange]`
1880
+ - `apply`: `[value: DateRange]`
1881
+ - `cancel`: `[]`
1882
+
1883
+ **Example:** `src/components/range-picker/stories/range-picker.stories.ts`
1884
+
1885
+ ---
1886
+
1887
+ ## rich-editor
1888
+
1889
+ ### RichEditor
1890
+
1891
+ **Props**
1892
+
1893
+ - `class`: `unknown`
1894
+ - `customToolbar`: `string[]` — default `[]`
1895
+ - `maxLimit`: `number` — default `null`
1896
+ - `modelValue`: `string` — default `''`
1897
+ - `placeholder`: `string` — default `''`
1898
+ - `showExtraSettings`: `boolean` — default `true`
1899
+
1900
+ **Events**
1901
+
1902
+ - `update:modelValue`: `any[]`
1903
+
1904
+ **Example:** `src/components/rich-editor/stories/rich-editor.stories.ts`
1905
+
1906
+ ---
1907
+
1908
+ ## scroll-area
1909
+
1910
+ ### ScrollArea
1911
+
1912
+ **Props**
1913
+
1914
+ - `as`: `AsTag | Component` — Element or component to render as.
1915
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1916
+ - `class`: `ClassValue`
1917
+ - `dir`: `Direction$2` — The reading direction of the combobox when applicable. <br> If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
1918
+ - `scrollHideDelay`: `number` — If type is set to either `scroll` or `hover`, this prop determines the length of time, in milliseconds, <br> before the scrollbars are hidden after the user stops interacting with scrollbars.
1919
+ - `type`: `ScrollType` — Describes the nature of scrollbar visibility, similar to how the scrollbar preferences in MacOS control visibility of native scrollbars. `auto` - means that scrollbars are visible when content is overflowing on the corresponding orientation. <br> `always` - means that scrollbars are always visible regardless of whether the content is overflowing.<br> `scroll` - means that scrollbars are visible when the user is scrolling along its corresponding orientation.<br> `hover` - when the user is scrolling along its corresponding orientation and when the user is hovering over the scroll area.<br> `glimpse` - a hybrid approach that briefly shows scrollbars when the user enters the scroll area, then hides them until further interaction.
1920
+
1921
+ **Slots**
1922
+
1923
+ - `default`
1924
+
1925
+ **Example:** `src/components/scroll-area/stories/scroll-area.stories.ts`
1926
+
1927
+ ---
1928
+
1929
+ ## segmented-control
1930
+
1931
+ ### SegmentedControl
1932
+
1933
+ **Props**
1934
+
1935
+ - `as`: `AsTag | Component` — Element or component to render as.
1936
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1937
+ - `class`: `ClassValue`
1938
+ - `defaultValue`: `AcceptableValue | AcceptableValue[]` — The default active value of the item(s). Use when you do not need to control the state of the item(s).
1939
+ - `dir`: `Direction` — The reading direction of the combobox when applicable. <br> If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
1940
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with the toggle group and all its items.
1941
+ - `loop`: `boolean` — When `loop` and `rovingFocus` is `true`, keyboard navigation will loop from last item to first, and vice versa.
1942
+ - `modelValue`: `AcceptableValue | AcceptableValue[]` — The controlled value of the active item(s). Use this when you need to control the state of the items. Can be binded with `v-model`
1943
+ - `name`: `string` — The name of the field. Submitted with its owning form as part of a name/value pair.
1944
+ - `orientation`: `DataOrientation` — The orientation of the component, which determines how focus moves: `horizontal` for left/right arrows and `vertical` for up/down arrows.
1945
+ - `required`: `boolean` — When `true`, indicates that the user must set the value before the owning form can be submitted.
1946
+ - `rovingFocus`: `boolean` — When `false`, navigating through the items using arrow keys will be disabled.
1947
+
1948
+ **Events**
1949
+
1950
+ - `update:modelValue`: `[payload: AcceptableValue | AcceptableValue[]]`
1951
+
1952
+ **Slots**
1953
+
1954
+ - `default`
1955
+
1956
+ **Composes with:** `SegmentedControlItem`
1957
+
1958
+ **Example:** `src/components/segmented-control/stories/segmented-control.stories.ts`
1959
+
1960
+ ### SegmentedControlItem
1961
+
1962
+ **Props**
1963
+
1964
+ - `value`: `AcceptableValue` **(required)** — A string value for the toggle group item. All items within a toggle group should use a unique value.
1965
+ - `as`: `AsTag | Component` — Element or component to render as.
1966
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
1967
+ - `class`: `ClassValue`
1968
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with the toggle.
1969
+
1970
+ **Slots**
1971
+
1972
+ - `default`
1973
+
1974
+ **Composes with:** `SegmentedControl`
1975
+
1976
+ **Example:** none — this component has no story.
1977
+
1978
+ ---
1979
+
1980
+ ## select
1981
+
1982
+ ### Select
1983
+
1984
+ **Props**
1985
+
1986
+ - `autocomplete`: `string` — Native html input `autocomplete` attribute.
1987
+ - `by`: `string | ((a: AcceptableValue, b: AcceptableValue) => boolean)` — Use this to compare objects by a particular field, or pass your own comparison function for complete control over how objects are compared.
1988
+ - `class`: `ClassValue`
1989
+ - `defaultOpen`: `boolean` — The open state of the select when it is initially rendered. Use when you do not need to control its open state.
1990
+ - `defaultValue`: `AcceptableValue | AcceptableValue[]` — The value of the select when initially rendered. Use when you do not need to control the state of the Select
1991
+ - `dir`: `Direction` — The reading direction of the combobox when applicable. <br> If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
1992
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with Select
1993
+ - `modelValue`: `AcceptableValue | AcceptableValue[]` — The controlled value of the Select. Can be bind as `v-model`.
1994
+ - `multiple`: `boolean` — Whether multiple options can be selected or not.
1995
+ - `name`: `string` — The name of the field. Submitted with its owning form as part of a name/value pair.
1996
+ - `nullableValue`: `string` — The value of the hidden native select option when the model value is nullish.
1997
+ - `open`: `boolean` — The controlled open state of the Select. Can be bind as `v-model:open`.
1998
+ - `required`: `boolean` — When `true`, indicates that the user must set the value before the owning form can be submitted.
1999
+
2000
+ **Events**
2001
+
2002
+ - `update:modelValue`: `[value: AcceptableValue]`
2003
+ - `update:open`: `[value: boolean]`
2004
+
2005
+ **Slots**
2006
+
2007
+ - `default`
2008
+
2009
+ **Composes with:** `SelectContent`, `SelectGroup`, `SelectIcon`, `SelectItem`, `SelectLabel`, `SelectSeparator`, `SelectTrigger`, `SelectValue`
2010
+
2011
+ **Example:** `src/components/select/stories/select.stories.ts`
2012
+
2013
+ ### SelectContent
2014
+
2015
+ **Props**
2016
+
2017
+ - `align`: `start` | `center` | `end` — The preferred alignment against the trigger. May change when collisions occur.
2018
+ - `alignFlip`: `boolean` — Flip alignment when colliding with boundary. May only occur when `prioritizePosition` is true.
2019
+ - `alignOffset`: `number` — An offset in pixels from the `start` or `end` alignment options.
2020
+ - `arrowPadding`: `number` — The padding between the arrow and the edges of the content. If your content has border-radius, this will prevent it from overflowing the corners.
2021
+ - `as`: `AsTag | Component` — Element or component to render as.
2022
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2023
+ - `avoidCollisions`: `boolean` — When `true`, overrides the side and align preferences to prevent collisions with boundary edges.
2024
+ - `bodyLock`: `boolean` — The document.body will be lock, and scrolling will be disabled.
2025
+ - `class`: `ClassValue`
2026
+ - `collisionBoundary`: `Element | (Element | null)[] | null` — The element used as the collision boundary. By default this is the viewport, though you can provide additional element(s) to be included in this check.
2027
+ - `collisionPadding`: `number | Partial<Record<"top" | "right" | "bottom" | "left", number>>` — The distance in pixels from the boundary edges where collision detection should occur. Accepts a number (same for all sides), or a partial padding object, for example: { top: 20, left: 20 }.
2028
+ - `dir`: `Direction` — The reading direction of the popper content when applicable. <br> If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
2029
+ - `disableOutsidePointerEvents`: `boolean` — When `true`, hover/focus/click interactions will be disabled on elements outside the `DismissableLayer`. Users will need to click twice on outside elements to interact with them: once to close the `DismissableLayer`, and again to trigger the element.
2030
+ - `disableUpdateOnLayoutShift`: `boolean` — Whether to disable the update position for the content when the layout shifted.
2031
+ - `forceMount`: `boolean` — Used to force mounting when more control is needed. Useful when controlling animation with Vue animation libraries.
2032
+ - `hideShiftedArrow`: `boolean` — When `true`, hides the arrow when it cannot be centered to the reference element.
2033
+ - `hideWhenDetached`: `boolean` — Whether to hide the content when the trigger becomes fully occluded.
2034
+ - `memoDependencies`: `unknown[]` — Reactive dependencies that should invalidate the memoized content subtree.
2035
+ - `position`: `popper` | `item-aligned` — The positioning mode to use `item-aligned (default)` - behaves similarly to a native MacOS menu by positioning content relative to the active item. <br> `popper` - positions content in the same way as our other primitives, for example `Popover` or `DropdownMenu`.
2036
+ - `positionStrategy`: `fixed` | `absolute` — The type of CSS position property to use.
2037
+ - `prioritizePosition`: `boolean` — Force content to be position within the viewport. Might overlap the reference element, which may not be desired.
2038
+ - `reference`: `ReferenceElement` — The custom element or virtual element that will be set as the reference to position the floating element. If provided, it will replace the default anchor element.
2039
+ - `side`: `top` | `right` | `bottom` | `left` — The preferred side of the trigger to render against when open. Will be reversed when collisions occur and avoidCollisions is enabled.
2040
+ - `sideFlip`: `boolean` — Flip to the opposite side when colliding with boundary.
2041
+ - `sideOffset`: `number` — The distance in pixels from the trigger.
2042
+ - `sticky`: `partial` | `always` — The sticky behavior on the align axis. `partial` will keep the content in the boundary as long as the trigger is at least partially in the boundary whilst "always" will keep the content in the boundary regardless.
2043
+ - `updatePositionStrategy`: `always` | `optimized` — Strategy to update the position of the floating element on every animation frame.
2044
+ - `width`: `full` | `fit` — default `"full"`
2045
+
2046
+ **Events**
2047
+
2048
+ - `escapeKeyDown`: `[event: KeyboardEvent]`
2049
+ - `pointerDownOutside`: `[event: PointerDownOutsideEvent]`
2050
+ - `closeAutoFocus`: `[event: Event]`
2051
+
2052
+ **Slots**
2053
+
2054
+ - `default`
2055
+
2056
+ **Composes with:** `Select`, `SelectGroup`, `SelectIcon`, `SelectItem`, `SelectLabel`, `SelectSeparator`, `SelectTrigger`, `SelectValue`
2057
+
2058
+ **Example:** none — this component has no story.
2059
+
2060
+ ### SelectGroup
2061
+
2062
+ **Props**
2063
+
2064
+ - `as`: `AsTag | Component` — Element or component to render as.
2065
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2066
+ - `class`: `unknown`
2067
+
2068
+ **Slots**
2069
+
2070
+ - `default`
2071
+
2072
+ **Composes with:** `Select`, `SelectContent`, `SelectIcon`, `SelectItem`, `SelectLabel`, `SelectSeparator`, `SelectTrigger`, `SelectValue`
2073
+
2074
+ **Example:** none — this component has no story.
2075
+
2076
+ ### SelectIcon
2077
+
2078
+ **Props**
2079
+
2080
+ - `class`: `ClassValue`
2081
+
2082
+ **Slots**
2083
+
2084
+ - `default`
2085
+
2086
+ **Composes with:** `Select`, `SelectContent`, `SelectGroup`, `SelectItem`, `SelectLabel`, `SelectSeparator`, `SelectTrigger`, `SelectValue`
2087
+
2088
+ **Example:** none — this component has no story.
2089
+
2090
+ ### SelectItem
2091
+
2092
+ **Props**
2093
+
2094
+ - `value`: `AcceptableValue` **(required)** — The value given as data when submitted with a `name`.
2095
+ - `as`: `AsTag | Component` — Element or component to render as.
2096
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2097
+ - `class`: `ClassValue`
2098
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with the item.
2099
+ - `textValue`: `string` — Optional text used for typeahead purposes. By default the typeahead behavior will use the `.textContent` of the `SelectItemText` part. Use this when the content is complex, or you have non-textual content inside.
2100
+
2101
+ **Slots**
2102
+
2103
+ - `default`
2104
+
2105
+ **Composes with:** `Select`, `SelectContent`, `SelectGroup`, `SelectIcon`, `SelectLabel`, `SelectSeparator`, `SelectTrigger`, `SelectValue`
2106
+
2107
+ **Example:** none — this component has no story.
2108
+
2109
+ ### SelectLabel
2110
+
2111
+ **Props**
2112
+
2113
+ - `as`: `AsTag | Component` — Element or component to render as.
2114
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2115
+ - `class`: `ClassValue`
2116
+ - `for`: `string`
2117
+
2118
+ **Slots**
2119
+
2120
+ - `default`
2121
+
2122
+ **Composes with:** `Select`, `SelectContent`, `SelectGroup`, `SelectIcon`, `SelectItem`, `SelectSeparator`, `SelectTrigger`, `SelectValue`
2123
+
2124
+ **Example:** none — this component has no story.
2125
+
2126
+ ### SelectSeparator
2127
+
2128
+ **Props**
2129
+
2130
+ - `as`: `AsTag | Component` — Element or component to render as.
2131
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2132
+ - `class`: `ClassValue`
2133
+
2134
+ **Composes with:** `Select`, `SelectContent`, `SelectGroup`, `SelectIcon`, `SelectItem`, `SelectLabel`, `SelectTrigger`, `SelectValue`
2135
+
2136
+ **Example:** none — this component has no story.
2137
+
2138
+ ### SelectTrigger
2139
+
2140
+ **Props**
2141
+
2142
+ - `as`: `AsTag | Component` — Element or component to render as.
2143
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2144
+ - `class`: `ClassValue`
2145
+ - `disabled`: `boolean`
2146
+ - `hasError`: `boolean`
2147
+ - `reference`: `ReferenceElement` — The reference (or anchor) element that is being referred to for positioning. If not provided will use the current component as anchor.
2148
+ - `size`: `xs` | `sm` | `md` — default `"md"`
2149
+ - `variant`: `default` | `compact` | `inline` — default `"default"`
2150
+
2151
+ **Slots**
2152
+
2153
+ - `default`
2154
+
2155
+ **Composes with:** `Select`, `SelectContent`, `SelectGroup`, `SelectIcon`, `SelectItem`, `SelectLabel`, `SelectSeparator`, `SelectValue`
2156
+
2157
+ **Example:** none — this component has no story.
2158
+
2159
+ ### SelectValue
2160
+
2161
+ **Props**
2162
+
2163
+ - `as`: `AsTag | Component` — Element or component to render as.
2164
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2165
+ - `class`: `ClassValue`
2166
+ - `placeholder`: `string` — The content that will be rendered inside the `SelectValue` when no `value` or `defaultValue` is set.
2167
+
2168
+ **Slots**
2169
+
2170
+ - `default`
2171
+
2172
+ **Composes with:** `Select`, `SelectContent`, `SelectGroup`, `SelectIcon`, `SelectItem`, `SelectLabel`, `SelectSeparator`, `SelectTrigger`
2173
+
2174
+ **Example:** none — this component has no story.
2175
+
2176
+ ---
2177
+
2178
+ ## sheet
2179
+
2180
+ ### Sheet
2181
+
2182
+ **Props**
2183
+
2184
+ - `class`: `unknown`
2185
+ - `defaultOpen`: `boolean` — The open state of the dialog when it is initially rendered. Use when you do not need to control its open state.
2186
+ - `modal`: `boolean` — The modality of the dialog When set to `true`, <br> interaction with outside elements will be disabled and only dialog content will be visible to screen readers.
2187
+ - `open`: `boolean` — The controlled open state of the dialog. Can be binded as `v-model:open`.
2188
+ - `unmountOnHide`: `boolean` — When set to `false`, the dialog content will not be unmounted when closed, but instead hidden with CSS. <br> Useful for SEO or when you want to improve performance by not remounting the component on every open.
2189
+
2190
+ **Events**
2191
+
2192
+ - `update:open`: `[value: boolean]`
2193
+
2194
+ **Slots**
2195
+
2196
+ - `default`
2197
+
2198
+ **Composes with:** `SheetClose`, `SheetContent`, `SheetDescription`, `SheetFooter`, `SheetHeader`, `SheetTitle`, `SheetTrigger`
2199
+
2200
+ **Example:** `src/components/sheet/stories/sheet.stories.ts`
2201
+
2202
+ ### SheetClose
2203
+
2204
+ **Props**
2205
+
2206
+ - `as`: `AsTag | Component` — Element or component to render as.
2207
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2208
+ - `class`: `ClassValue`
2209
+
2210
+ **Slots**
2211
+
2212
+ - `default`
2213
+
2214
+ **Composes with:** `Sheet`, `SheetContent`, `SheetDescription`, `SheetFooter`, `SheetHeader`, `SheetTitle`, `SheetTrigger`
2215
+
2216
+ **Example:** none — this component has no story.
2217
+
2218
+ ### SheetContent
2219
+
2220
+ **Props**
2221
+
2222
+ - `as`: `AsTag | Component` — Element or component to render as.
2223
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2224
+ - `class`: `ClassValue`
2225
+ - `disableOutsidePointerEvents`: `boolean` — When `true`, hover/focus/click interactions will be disabled on elements outside the `DismissableLayer`. Users will need to click twice on outside elements to interact with them: once to close the `DismissableLayer`, and again to trigger the element.
2226
+ - `forceMount`: `boolean` — Used to force mounting when more control is needed. Useful when controlling animation with Vue animation libraries.
2227
+ - `side`: `top` | `right` | `bottom` | `left` — default `"right"`
2228
+
2229
+ **Events**
2230
+
2231
+ - `escapeKeyDown`: `[event: KeyboardEvent]`
2232
+ - `pointerDownOutside`: `[event: PointerDownOutsideEvent]`
2233
+ - `focusOutside`: `[event: FocusOutsideEvent]`
2234
+ - `interactOutside`: `[event: PointerDownOutsideEvent | FocusOutsideEvent]`
2235
+ - `openAutoFocus`: `[event: Event]`
2236
+ - `closeAutoFocus`: `[event: Event]`
2237
+
2238
+ **Slots**
2239
+
2240
+ - `default`
2241
+
2242
+ **Composes with:** `Sheet`, `SheetClose`, `SheetDescription`, `SheetFooter`, `SheetHeader`, `SheetTitle`, `SheetTrigger`
2243
+
2244
+ **Example:** none — this component has no story.
2245
+
2246
+ ### SheetDescription
2247
+
2248
+ **Props**
2249
+
2250
+ - `as`: `AsTag | Component` — Element or component to render as.
2251
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2252
+ - `class`: `ClassValue`
2253
+
2254
+ **Slots**
2255
+
2256
+ - `default`
2257
+
2258
+ **Composes with:** `Sheet`, `SheetClose`, `SheetContent`, `SheetFooter`, `SheetHeader`, `SheetTitle`, `SheetTrigger`
2259
+
2260
+ **Example:** none — this component has no story.
2261
+
2262
+ ### SheetFooter
2263
+
2264
+ **Props**
2265
+
2266
+ - `class`: `ClassValue`
2267
+
2268
+ **Slots**
2269
+
2270
+ - `default`
2271
+
2272
+ **Composes with:** `Sheet`, `SheetClose`, `SheetContent`, `SheetDescription`, `SheetHeader`, `SheetTitle`, `SheetTrigger`
2273
+
2274
+ **Example:** none — this component has no story.
2275
+
2276
+ ### SheetHeader
2277
+
2278
+ **Props**
2279
+
2280
+ - `class`: `ClassValue`
2281
+
2282
+ **Slots**
2283
+
2284
+ - `default`
2285
+
2286
+ **Composes with:** `Sheet`, `SheetClose`, `SheetContent`, `SheetDescription`, `SheetFooter`, `SheetTitle`, `SheetTrigger`
2287
+
2288
+ **Example:** none — this component has no story.
2289
+
2290
+ ### SheetTitle
2291
+
2292
+ **Props**
2293
+
2294
+ - `as`: `AsTag | Component` — Element or component to render as.
2295
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2296
+ - `class`: `ClassValue`
2297
+
2298
+ **Slots**
2299
+
2300
+ - `default`
2301
+
2302
+ **Composes with:** `Sheet`, `SheetClose`, `SheetContent`, `SheetDescription`, `SheetFooter`, `SheetHeader`, `SheetTrigger`
2303
+
2304
+ **Example:** none — this component has no story.
2305
+
2306
+ ### SheetTrigger
2307
+
2308
+ **Props**
2309
+
2310
+ - `as`: `AsTag | Component` — Element or component to render as.
2311
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2312
+ - `class`: `unknown`
2313
+
2314
+ **Slots**
2315
+
2316
+ - `default`
2317
+
2318
+ **Composes with:** `Sheet`, `SheetClose`, `SheetContent`, `SheetDescription`, `SheetFooter`, `SheetHeader`, `SheetTitle`
2319
+
2320
+ **Example:** none — this component has no story.
2321
+
2322
+ ---
2323
+
2324
+ ## sidebar
2325
+
2326
+ ### Sidebar
2327
+
2328
+ **Props**
2329
+
2330
+ - `class`: `ClassValue`
2331
+ - `collapsible`: `icon` | `none` | `offcanvas` — default `"offcanvas"`
2332
+ - `variant`: `sidebar` | `floating` | `inset` — default `"sidebar"`
2333
+
2334
+ **Slots**
2335
+
2336
+ - `default`
2337
+
2338
+ **Composes with:** `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2339
+
2340
+ **Example:** `src/components/sidebar/stories/sidebar.stories.ts`
2341
+
2342
+ ### SidebarContent
2343
+
2344
+ **Props**
2345
+
2346
+ - `class`: `ClassValue`
2347
+
2348
+ **Slots**
2349
+
2350
+ - `default`
2351
+
2352
+ **Composes with:** `Sidebar`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2353
+
2354
+ **Example:** none — this component has no story.
2355
+
2356
+ ### SidebarElement
2357
+
2358
+ **Props**
2359
+
2360
+ - `as`: `AsTag | Component` — default `"div"` — Element or component to render as.
2361
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2362
+ - `class`: `ClassValue`
2363
+
2364
+ **Slots**
2365
+
2366
+ - `default`
2367
+
2368
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2369
+
2370
+ **Example:** none — this component has no story.
2371
+
2372
+ ### SidebarFooter
2373
+
2374
+ **Props**
2375
+
2376
+ - `class`: `ClassValue`
2377
+
2378
+ **Slots**
2379
+
2380
+ - `default`
2381
+
2382
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2383
+
2384
+ **Example:** none — this component has no story.
2385
+
2386
+ ### SidebarGroup
2387
+
2388
+ **Props**
2389
+
2390
+ - `class`: `ClassValue`
2391
+
2392
+ **Slots**
2393
+
2394
+ - `default`
2395
+
2396
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2397
+
2398
+ **Example:** none — this component has no story.
2399
+
2400
+ ### SidebarGroupContent
2401
+
2402
+ **Props**
2403
+
2404
+ - `class`: `ClassValue`
2405
+
2406
+ **Slots**
2407
+
2408
+ - `default`
2409
+
2410
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2411
+
2412
+ **Example:** none — this component has no story.
2413
+
2414
+ ### SidebarGroupLabel
2415
+
2416
+ **Props**
2417
+
2418
+ - `as`: `AsTag | Component` — Element or component to render as.
2419
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2420
+ - `class`: `ClassValue`
2421
+
2422
+ **Slots**
2423
+
2424
+ - `default`
2425
+
2426
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2427
+
2428
+ **Example:** none — this component has no story.
2429
+
2430
+ ### SidebarHeader
2431
+
2432
+ **Props**
2433
+
2434
+ - `class`: `ClassValue`
2435
+
2436
+ **Slots**
2437
+
2438
+ - `default`
2439
+
2440
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2441
+
2442
+ **Example:** none — this component has no story.
2443
+
2444
+ ### SidebarMenu
2445
+
2446
+ **Props**
2447
+
2448
+ - `class`: `ClassValue`
2449
+
2450
+ **Slots**
2451
+
2452
+ - `default`
2453
+
2454
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2455
+
2456
+ **Example:** none — this component has no story.
2457
+
2458
+ ### SidebarMenuAction
2459
+
2460
+ **Props**
2461
+
2462
+ - `as`: `AsTag | Component` — default `"button"` — Element or component to render as.
2463
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2464
+ - `class`: `ClassValue`
2465
+ - `showOnHover`: `boolean`
2466
+
2467
+ **Slots**
2468
+
2469
+ - `default`
2470
+
2471
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2472
+
2473
+ **Example:** none — this component has no story.
2474
+
2475
+ ### SidebarMenuBadge
2476
+
2477
+ **Props**
2478
+
2479
+ - `class`: `ClassValue`
2480
+ - `label`: `string`
2481
+ - `size`: `sm` | `md` — default `"sm"`
2482
+ - `state`: `information` | `success` | `warning` | `error` | `feature` | `faded` | `away` | `verified` | `highlighted` | `stable` — default `"faded"`
2483
+ - `variant`: `fill` | `light` | `lighter` | `stroke` — default `"lighter"`
2484
+
2485
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2486
+
2487
+ **Example:** none — this component has no story.
2488
+
2489
+ ### SidebarMenuButton
2490
+
2491
+ **Props**
2492
+
2493
+ - `as`: `AsTag | Component` — default `"button"` — Element or component to render as.
2494
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2495
+ - `class`: `ClassValue`
2496
+ - `isActive`: `boolean` — default `false`
2497
+ - `variant`: `default` | `outline` — default `"default"`
2498
+
2499
+ **Slots**
2500
+
2501
+ - `default`
2502
+
2503
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2504
+
2505
+ **Example:** none — this component has no story.
2506
+
2507
+ ### SidebarMenuItem
2508
+
2509
+ **Props**
2510
+
2511
+ - `class`: `ClassValue`
2512
+
2513
+ **Slots**
2514
+
2515
+ - `default`
2516
+
2517
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2518
+
2519
+ **Example:** none — this component has no story.
2520
+
2521
+ ### SidebarMenuSub
2522
+
2523
+ **Props**
2524
+
2525
+ - `class`: `ClassValue`
2526
+
2527
+ **Slots**
2528
+
2529
+ - `default`
2530
+
2531
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2532
+
2533
+ **Example:** none — this component has no story.
2534
+
2535
+ ### SidebarMenuSubButton
2536
+
2537
+ **Props**
2538
+
2539
+ - `as`: `AsTag | Component` — default `"a"` — Element or component to render as.
2540
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2541
+ - `class`: `ClassValue`
2542
+ - `isActive`: `boolean` — default `false`
2543
+ - `size`: `sm` | `md` — default `"md"`
2544
+
2545
+ **Slots**
2546
+
2547
+ - `default`
2548
+
2549
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2550
+
2551
+ **Example:** none — this component has no story.
2552
+
2553
+ ### SidebarMenuSubItem
2554
+
2555
+ **Props**
2556
+
2557
+ - `class`: `ClassValue`
2558
+
2559
+ **Slots**
2560
+
2561
+ - `default`
2562
+
2563
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarProvider`, `SidebarSeparator`, `SidebarTrigger`
2564
+
2565
+ **Example:** none — this component has no story.
2566
+
2567
+ ### SidebarProvider
2568
+
2569
+ **Props**
2570
+
2571
+ - `class`: `ClassValue`
2572
+ - `defaultOpen`: `boolean` — default `!defaultDocument?.cookie.includes(`${SIDEBAR_COOKIE_NAME}=false`)`
2573
+ - `open`: `boolean` — default `undefined`
2574
+
2575
+ **Events**
2576
+
2577
+ - `update:open`: `[open: boolean]`
2578
+
2579
+ **Slots**
2580
+
2581
+ - `default`
2582
+
2583
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarSeparator`, `SidebarTrigger`
2584
+
2585
+ **Example:** none — this component has no story.
2586
+
2587
+ ### SidebarSeparator
2588
+
2589
+ **Props**
2590
+
2591
+ - `class`: `ClassValue`
2592
+
2593
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarTrigger`
2594
+
2595
+ **Example:** none — this component has no story.
2596
+
2597
+ ### SidebarTrigger
2598
+
2599
+ **Props**
2600
+
2601
+ - `class`: `ClassValue`
2602
+
2603
+ **Composes with:** `Sidebar`, `SidebarContent`, `SidebarElement`, `SidebarFooter`, `SidebarGroup`, `SidebarGroupContent`, `SidebarGroupLabel`, `SidebarHeader`, `SidebarMenu`, `SidebarMenuAction`, `SidebarMenuBadge`, `SidebarMenuButton`, `SidebarMenuItem`, `SidebarMenuSub`, `SidebarMenuSubButton`, `SidebarMenuSubItem`, `SidebarProvider`, `SidebarSeparator`
2604
+
2605
+ **Example:** none — this component has no story.
2606
+
2607
+ ---
2608
+
2609
+ ## slider
2610
+
2611
+ ### Slider
2612
+
2613
+ **Props**
2614
+
2615
+ - `as`: `AsTag | Component` — Element or component to render as.
2616
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2617
+ - `class`: `ClassValue`
2618
+ - `defaultValue`: `number[]` — The value of the slider when initially rendered. Use when you do not need to control the state of the slider.
2619
+ - `dir`: `Direction` — The reading direction of the combobox when applicable. <br> If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
2620
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with the slider.
2621
+ - `inverted`: `boolean` — Whether the slider is visually inverted.
2622
+ - `max`: `number` — The maximum value for the range.
2623
+ - `min`: `number` — The minimum value for the range.
2624
+ - `minStepsBetweenThumbs`: `number` — The minimum permitted steps between multiple thumbs.
2625
+ - `modelValue`: `number[] | null` — The controlled value of the slider. Can be bind as `v-model`.
2626
+ - `name`: `string` — The name of the field. Submitted with its owning form as part of a name/value pair.
2627
+ - `required`: `boolean` — When `true`, indicates that the user must set the value before the owning form can be submitted.
2628
+ - `step`: `number` — The stepping interval.
2629
+ - `thumbAlignment`: `ThumbAlignment` — The alignment of the slider thumb. - `contain`: thumbs will be contained within the bounds of the track. - `overflow`: thumbs will not be bound by the track. No extra offset will be added.
2630
+
2631
+ **Events**
2632
+
2633
+ - `update:modelValue`: `[payload: number[] | undefined]`
2634
+ - `valueCommit`: `[payload: number[]]`
2635
+
2636
+ **Example:** `src/components/slider/stories/slider.stories.ts`
2637
+
2638
+ ---
2639
+
2640
+ ## sonner
2641
+
2642
+ ### Sonner
2643
+
2644
+ **Props**
2645
+
2646
+ - `class`: `string`
2647
+ - `closeButton`: `boolean`
2648
+ - `closeButtonPosition`: `CloseButtonPosition`
2649
+ - `containerAriaLabel`: `string`
2650
+ - `dir`: `ltr` | `rtl` | `auto`
2651
+ - `duration`: `number`
2652
+ - `expand`: `boolean`
2653
+ - `gap`: `number`
2654
+ - `hotkey`: `string[]`
2655
+ - `icons`: `ToastIcons`
2656
+ - `id`: `string`
2657
+ - `invert`: `boolean`
2658
+ - `mobileOffset`: `Offset`
2659
+ - `offset`: `Offset`
2660
+ - `position`: `Position`
2661
+ - `richColors`: `boolean`
2662
+ - `swipeDirections`: `SwipeDirection[]`
2663
+ - `theme`: `Theme`
2664
+ - `toastOptions`: `ToastOptions`
2665
+ - `visibleToasts`: `number`
2666
+
2667
+ **Composes with:** `SonnerAlert`
2668
+
2669
+ **Example:** `src/components/sonner/stories/sonner.stories.ts`
2670
+
2671
+ ### SonnerAlert
2672
+
2673
+ **Props**
2674
+
2675
+ - `title`: `string` **(required)**
2676
+ - `class`: `ClassValue`
2677
+ - `description`: `string`
2678
+ - `dismissable`: `boolean` — default `true`
2679
+ - `onDismiss`: `(() => void)`
2680
+ - `size`: `xs` | `sm` | `lg` — default `"lg"`
2681
+ - `state`: `information` | `success` | `warning` | `error` | `feature` — default `"success"`
2682
+ - `variant`: `fill` | `light` | `lighter` | `stroke` — default `"stroke"`
2683
+
2684
+ **Composes with:** `Sonner`
2685
+
2686
+ **Example:** none — this component has no story.
2687
+
2688
+ ---
2689
+
2690
+ ## switch
2691
+
2692
+ ### Switch
2693
+
2694
+ **Props**
2695
+
2696
+ - `as`: `AsTag | Component` — Element or component to render as.
2697
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2698
+ - `class`: `ClassValue`
2699
+ - `defaultValue`: `boolean` — The state of the switch when it is initially rendered. Use when you do not need to control its state.
2700
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with the switch.
2701
+ - `falseValue`: `boolean` — The value used when the switch is off. Defaults to `false`.
2702
+ - `id`: `string`
2703
+ - `modelValue`: `boolean | null` — The controlled state of the switch. Can be bind as `v-model`.
2704
+ - `name`: `string` — The name of the field. Submitted with its owning form as part of a name/value pair.
2705
+ - `required`: `boolean` — When `true`, indicates that the user must set the value before the owning form can be submitted.
2706
+ - `trueValue`: `boolean` — The value used when the switch is on. Defaults to `true`.
2707
+ - `value`: `string` — The value given as data when submitted with a `name`.
2708
+
2709
+ **Events**
2710
+
2711
+ - `update:modelValue`: `[payload: boolean]`
2712
+
2713
+ **Example:** `src/components/switch/stories/switch.stories.ts`
2714
+
2715
+ ---
2716
+
2717
+ ## tab-menu
2718
+
2719
+ ### TabMenu
2720
+
2721
+ **Props**
2722
+
2723
+ - `activationMode`: `automatic` | `manual` — Whether a tab is activated automatically (on focus) or manually (on click).
2724
+ - `as`: `AsTag | Component` — Element or component to render as.
2725
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2726
+ - `class`: `unknown`
2727
+ - `defaultValue`: `StringOrNumber` — The value of the tab that should be active when initially rendered. Use when you do not need to control the state of the tabs
2728
+ - `dir`: `Direction` — The reading direction of the combobox when applicable. <br> If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.
2729
+ - `modelValue`: `StringOrNumber` — The controlled value of the tab to activate. Can be bind as `v-model`.
2730
+ - `orientation`: `DataOrientation` — The orientation the tabs are laid out. Mainly so arrow navigation is done accordingly (left & right vs. up & down)
2731
+ - `unmountOnHide`: `boolean` — When `true`, the element will be unmounted on closed state.
2732
+
2733
+ **Events**
2734
+
2735
+ - `update:modelValue`: `[payload: StringOrNumber]`
2736
+
2737
+ **Slots**
2738
+
2739
+ - `default`
2740
+
2741
+ **Composes with:** `TabMenuContent`, `TabMenuItem`, `TabMenuList`
2742
+
2743
+ **Example:** `src/components/tab-menu/stories/tab-menu.stories.ts`
2744
+
2745
+ ### TabMenuContent
2746
+
2747
+ **Props**
2748
+
2749
+ - `value`: `StringOrNumber` **(required)** — A unique value that associates the content with a trigger.
2750
+ - `as`: `AsTag | Component` — Element or component to render as.
2751
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2752
+ - `class`: `ClassValue`
2753
+ - `forceMount`: `boolean` — Used to force mounting when more control is needed. Useful when controlling animation with Vue animation libraries.
2754
+
2755
+ **Slots**
2756
+
2757
+ - `default`
2758
+
2759
+ **Composes with:** `TabMenu`, `TabMenuItem`, `TabMenuList`
2760
+
2761
+ **Example:** none — this component has no story.
2762
+
2763
+ ### TabMenuItem
2764
+
2765
+ **Props**
2766
+
2767
+ - `value`: `StringOrNumber` **(required)** — A unique value that associates the trigger with a content.
2768
+ - `as`: `AsTag | Component` — Element or component to render as.
2769
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2770
+ - `class`: `ClassValue`
2771
+ - `disabled`: `boolean` — When `true`, prevents the user from interacting with the tab.
2772
+
2773
+ **Slots**
2774
+
2775
+ - `prefix`
2776
+ - `default`
2777
+ - `postfix`
2778
+
2779
+ **Composes with:** `TabMenu`, `TabMenuContent`, `TabMenuList`
2780
+
2781
+ **Example:** none — this component has no story.
2782
+
2783
+ ### TabMenuList
2784
+
2785
+ **Props**
2786
+
2787
+ - `as`: `AsTag | Component` — Element or component to render as.
2788
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2789
+ - `class`: `ClassValue`
2790
+ - `loop`: `boolean` — When `true`, keyboard navigation will loop from last tab to first, and vice versa.
2791
+
2792
+ **Slots**
2793
+
2794
+ - `default`
2795
+
2796
+ **Composes with:** `TabMenu`, `TabMenuContent`, `TabMenuItem`
2797
+
2798
+ **Example:** none — this component has no story.
2799
+
2800
+ ---
2801
+
2802
+ ## table
2803
+
2804
+ ### Table
2805
+
2806
+ **Props**
2807
+
2808
+ - `class`: `ClassValue`
2809
+
2810
+ **Slots**
2811
+
2812
+ - `default`
2813
+
2814
+ **Composes with:** `TableBody`, `TableCaption`, `TableCell`, `TableEmpty`, `TableFooter`, `TableHead`, `TableHeader`, `TableRow`
2815
+
2816
+ **Example:** `src/components/table/stories/table.stories.ts`
2817
+
2818
+ ### TableBody
2819
+
2820
+ **Props**
2821
+
2822
+ - `class`: `ClassValue`
2823
+
2824
+ **Slots**
2825
+
2826
+ - `default`
2827
+
2828
+ **Composes with:** `Table`, `TableCaption`, `TableCell`, `TableEmpty`, `TableFooter`, `TableHead`, `TableHeader`, `TableRow`
2829
+
2830
+ **Example:** none — this component has no story.
2831
+
2832
+ ### TableCaption
2833
+
2834
+ **Props**
2835
+
2836
+ - `class`: `ClassValue`
2837
+
2838
+ **Slots**
2839
+
2840
+ - `default`
2841
+
2842
+ **Composes with:** `Table`, `TableBody`, `TableCell`, `TableEmpty`, `TableFooter`, `TableHead`, `TableHeader`, `TableRow`
2843
+
2844
+ **Example:** none — this component has no story.
2845
+
2846
+ ### TableCell
2847
+
2848
+ **Props**
2849
+
2850
+ - `class`: `ClassValue`
2851
+ - `end`: `boolean` — default `false`
2852
+
2853
+ **Slots**
2854
+
2855
+ - `default`
2856
+
2857
+ **Composes with:** `Table`, `TableBody`, `TableCaption`, `TableEmpty`, `TableFooter`, `TableHead`, `TableHeader`, `TableRow`
2858
+
2859
+ **Example:** none — this component has no story.
2860
+
2861
+ ### TableEmpty
2862
+
2863
+ **Props**
2864
+
2865
+ - `class`: `ClassValue`
2866
+ - `colspan`: `number` — default `1`
2867
+
2868
+ **Slots**
2869
+
2870
+ - `default`
2871
+
2872
+ **Composes with:** `Table`, `TableBody`, `TableCaption`, `TableCell`, `TableFooter`, `TableHead`, `TableHeader`, `TableRow`
2873
+
2874
+ **Example:** none — this component has no story.
2875
+
2876
+ ### TableFooter
2877
+
2878
+ **Props**
2879
+
2880
+ - `class`: `ClassValue`
2881
+
2882
+ **Slots**
2883
+
2884
+ - `default`
2885
+
2886
+ **Composes with:** `Table`, `TableBody`, `TableCaption`, `TableCell`, `TableEmpty`, `TableHead`, `TableHeader`, `TableRow`
2887
+
2888
+ **Example:** none — this component has no story.
2889
+
2890
+ ### TableHead
2891
+
2892
+ **Props**
2893
+
2894
+ - `class`: `ClassValue`
2895
+ - `end`: `boolean` — default `false`
2896
+
2897
+ **Slots**
2898
+
2899
+ - `default`
2900
+
2901
+ **Composes with:** `Table`, `TableBody`, `TableCaption`, `TableCell`, `TableEmpty`, `TableFooter`, `TableHeader`, `TableRow`
2902
+
2903
+ **Example:** none — this component has no story.
2904
+
2905
+ ### TableHeader
2906
+
2907
+ **Props**
2908
+
2909
+ - `class`: `ClassValue`
2910
+
2911
+ **Slots**
2912
+
2913
+ - `default`
2914
+
2915
+ **Composes with:** `Table`, `TableBody`, `TableCaption`, `TableCell`, `TableEmpty`, `TableFooter`, `TableHead`, `TableRow`
2916
+
2917
+ **Example:** none — this component has no story.
2918
+
2919
+ ### TableRow
2920
+
2921
+ **Props**
2922
+
2923
+ - `class`: `ClassValue`
2924
+ - `hoverable`: `boolean` — default `true`
2925
+
2926
+ **Slots**
2927
+
2928
+ - `default`
2929
+
2930
+ **Composes with:** `Table`, `TableBody`, `TableCaption`, `TableCell`, `TableEmpty`, `TableFooter`, `TableHead`, `TableHeader`
2931
+
2932
+ **Example:** none — this component has no story.
2933
+
2934
+ ---
2935
+
2936
+ ## tag
2937
+
2938
+ ### Tag
2939
+
2940
+ **Props**
2941
+
2942
+ - `as`: `AsTag | Component` — default `"div"` — Element or component to render as.
2943
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
2944
+ - `class`: `ClassValue`
2945
+ - `disabled`: `boolean`
2946
+ - `dismissable`: `boolean` — default `false`
2947
+ - `variant`: `stroke` | `gray` — default `"stroke"`
2948
+
2949
+ **Events**
2950
+
2951
+ - `dismiss`: `[]`
2952
+
2953
+ **Slots**
2954
+
2955
+ - `default`
2956
+
2957
+ **Example:** `src/components/tag/stories/tag.stories.ts`
2958
+
2959
+ ---
2960
+
2961
+ ## text-input
2962
+
2963
+ ### TextInput
2964
+
2965
+ **Props**
2966
+
2967
+ - `autocomplete`: `string`
2968
+ - `class`: `ClassValue`
2969
+ - `hasError`: `boolean` — default `false`
2970
+ - `modelValue`: `string | number`
2971
+ - `size`: `xs` | `sm` | `md` — default `"md"`
2972
+ - `type`: `search` | `text` | `email` | `password` | `tel` | `url` | `date` — default `"text"`
2973
+
2974
+ **Events**
2975
+
2976
+ - `update:modelValue`: `[value: string | number | undefined]`
2977
+
2978
+ **Slots**
2979
+
2980
+ - `leadingIcon`
2981
+ - `leadingNode`
2982
+ - `leadingInlineNode`
2983
+ - `trailingIcon`
2984
+ - `trailingNode`
2985
+ - `trailingInlineNode`
2986
+
2987
+ **Composes with:** `TextInputAffix`, `TextInputButton`
2988
+
2989
+ **Example:** `src/components/text-input/stories/text-input.stories.ts`
2990
+
2991
+ ### TextInputAffix
2992
+
2993
+ **Props**
2994
+
2995
+ - `asKbd`: `boolean`
2996
+ - `class`: `ClassValue`
2997
+ - `inline`: `boolean`
2998
+
2999
+ **Slots**
3000
+
3001
+ - `default`
3002
+
3003
+ **Composes with:** `TextInput`, `TextInputButton`
3004
+
3005
+ **Example:** none — this component has no story.
3006
+
3007
+ ### TextInputButton
3008
+
3009
+ **Props**
3010
+
3011
+ - `as`: `AsTag | Component` — Element or component to render as.
3012
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
3013
+ - `class`: `ClassValue`
3014
+ - `inline`: `boolean` — default `false`
3015
+ - `intent`: `error` | `primary` | `neutral`
3016
+
3017
+ **Slots**
3018
+
3019
+ - `default`
3020
+
3021
+ **Composes with:** `TextInput`, `TextInputAffix`
3022
+
3023
+ **Example:** none — this component has no story.
3024
+
3025
+ ---
3026
+
3027
+ ## textarea
3028
+
3029
+ ### Textarea
3030
+
3031
+ **Props**
3032
+
3033
+ - `class`: `ClassValue`
3034
+ - `disabled`: `boolean` — default `false`
3035
+ - `maxLength`: `Numberish`
3036
+ - `modelValue`: `string`
3037
+ - `placeholder`: `string` — default `"Placeholder"`
3038
+ - `showCount`: `boolean` — default `true`
3039
+
3040
+ **Events**
3041
+
3042
+ - `update:modelValue`: `[value: string | undefined]`
3043
+
3044
+ **Example:** `src/components/textarea/stories/textarea.stories.ts`
3045
+
3046
+ ---
3047
+
3048
+ ## tooltip
3049
+
3050
+ ### Tooltip
3051
+
3052
+ **Props**
3053
+
3054
+ - `align`: `start` | `center` | `end` — The preferred alignment against the trigger. May change when collisions occur.
3055
+ - `alignOffset`: `number` — An offset in pixels from the `start` or `end` alignment options.
3056
+ - `ariaLabel`: `string` — By default, screenreaders will announce the content inside the component. If this is not descriptive enough, or you have content that cannot be announced, use aria-label as a more descriptive label.
3057
+ - `arrowPadding`: `number` — The padding between the arrow and the edges of the content. If your content has border-radius, this will prevent it from overflowing the corners.
3058
+ - `as`: `AsTag | Component` — Element or component to render as.
3059
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
3060
+ - `avoidCollisions`: `boolean` — When `true`, overrides the side and align preferences to prevent collisions with boundary edges.
3061
+ - `class`: `ClassValue`
3062
+ - `collisionBoundary`: `Element | (Element | null)[] | null` — The element used as the collision boundary. By default this is the viewport, though you can provide additional element(s) to be included in this check.
3063
+ - `collisionPadding`: `number | Partial<Record<"top" | "right" | "bottom" | "left", number>>` — The distance in pixels from the boundary edges where collision detection should occur. Accepts a number (same for all sides), or a partial padding object, for example: { top: 20, left: 20 }.
3064
+ - `defaultOpen`: `boolean` — The open state of the tooltip when it is initially rendered. Use when you do not need to control its open state.
3065
+ - `delayDuration`: `number` — default `0` — Override the duration given to the `Provider` to customise the open delay for a specific tooltip.
3066
+ - `description`: `string`
3067
+ - `disableClosingTrigger`: `boolean` — When `true`, clicking on trigger will not close the content.
3068
+ - `disabled`: `boolean` — When `true`, disable tooltip
3069
+ - `disableHoverableContent`: `boolean` — Prevents Tooltip.Content from remaining open when hovering. Disabling this has accessibility consequences. Inherits from Tooltip.Provider.
3070
+ - `dismissible`: `boolean`
3071
+ - `forceMount`: `boolean` — Used to force mounting when more control is needed. Useful when controlling animation with Vue animation libraries.
3072
+ - `hideWhenDetached`: `boolean` — Whether to hide the content when the trigger becomes fully occluded.
3073
+ - `icon`: `string`
3074
+ - `ignoreNonKeyboardFocus`: `boolean` — Prevent the tooltip from opening if the focus did not come from the keyboard by matching against the `:focus-visible` selector. This is useful if you want to avoid opening it when switching browser tabs or closing a dialog.
3075
+ - `open`: `boolean` — The controlled open state of the tooltip.
3076
+ - `positionStrategy`: `fixed` | `absolute` — The type of CSS position property to use.
3077
+ - `side`: `top` | `right` | `bottom` | `left` — The preferred side of the trigger to render against when open. Will be reversed when collisions occur and avoidCollisions is enabled.
3078
+ - `sideOffset`: `number` — default `12` — The distance in pixels from the trigger.
3079
+ - `size`: `xs` | `sm` | `md` — default `"sm"`
3080
+ - `sticky`: `partial` | `always` — The sticky behavior on the align axis. `partial` will keep the content in the boundary as long as the trigger is at least partially in the boundary whilst "always" will keep the content in the boundary regardless.
3081
+ - `title`: `string`
3082
+ - `updatePositionStrategy`: `always` | `optimized` — Strategy to update the position of the floating element on every animation frame.
3083
+ - `variant`: `light` | `dark` — default `"light"`
3084
+
3085
+ **Events**
3086
+
3087
+ - `update:open`: `[value: boolean]`
3088
+
3089
+ **Slots**
3090
+
3091
+ - `default`
3092
+
3093
+ **Composes with:** `TooltipContent`, `TooltipProvider`, `TooltipRoot`, `TooltipTrigger`
3094
+
3095
+ **Example:** `src/components/tooltip/stories/tooltip.stories.ts`
3096
+
3097
+ ### TooltipContent
3098
+
3099
+ **Props**
3100
+
3101
+ - `align`: `start` | `center` | `end` — The preferred alignment against the trigger. May change when collisions occur.
3102
+ - `alignOffset`: `number` — An offset in pixels from the `start` or `end` alignment options.
3103
+ - `ariaLabel`: `string` — By default, screenreaders will announce the content inside the component. If this is not descriptive enough, or you have content that cannot be announced, use aria-label as a more descriptive label.
3104
+ - `arrowPadding`: `number` — The padding between the arrow and the edges of the content. If your content has border-radius, this will prevent it from overflowing the corners.
3105
+ - `as`: `AsTag | Component` — Element or component to render as.
3106
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
3107
+ - `avoidCollisions`: `boolean` — When `true`, overrides the side and align preferences to prevent collisions with boundary edges.
3108
+ - `class`: `ClassValue`
3109
+ - `collisionBoundary`: `Element | (Element | null)[] | null` — The element used as the collision boundary. By default this is the viewport, though you can provide additional element(s) to be included in this check.
3110
+ - `collisionPadding`: `number | Partial<Record<"top" | "right" | "bottom" | "left", number>>` — The distance in pixels from the boundary edges where collision detection should occur. Accepts a number (same for all sides), or a partial padding object, for example: { top: 20, left: 20 }.
3111
+ - `description`: `string`
3112
+ - `dismissible`: `boolean`
3113
+ - `forceMount`: `boolean` — Used to force mounting when more control is needed. Useful when controlling animation with Vue animation libraries.
3114
+ - `hideWhenDetached`: `boolean` — Whether to hide the content when the trigger becomes fully occluded.
3115
+ - `icon`: `string`
3116
+ - `onDismiss`: `(() => void)`
3117
+ - `positionStrategy`: `fixed` | `absolute` — The type of CSS position property to use.
3118
+ - `side`: `top` | `right` | `bottom` | `left` — The preferred side of the trigger to render against when open. Will be reversed when collisions occur and avoidCollisions is enabled.
3119
+ - `sideOffset`: `number` — default `12` — The distance in pixels from the trigger.
3120
+ - `size`: `xs` | `sm` | `md` — default `"sm"`
3121
+ - `sticky`: `partial` | `always` — The sticky behavior on the align axis. `partial` will keep the content in the boundary as long as the trigger is at least partially in the boundary whilst "always" will keep the content in the boundary regardless.
3122
+ - `title`: `string`
3123
+ - `updatePositionStrategy`: `always` | `optimized` — Strategy to update the position of the floating element on every animation frame.
3124
+ - `variant`: `light` | `dark` — default `"light"`
3125
+
3126
+ **Events**
3127
+
3128
+ - `escapeKeyDown`: `[event: KeyboardEvent]`
3129
+ - `pointerDownOutside`: `[event: Event]`
3130
+
3131
+ **Slots**
3132
+
3133
+ - `default`
3134
+
3135
+ **Composes with:** `Tooltip`, `TooltipProvider`, `TooltipRoot`, `TooltipTrigger`
3136
+
3137
+ **Example:** none — this component has no story.
3138
+
3139
+ ### TooltipProvider
3140
+
3141
+ **Props**
3142
+
3143
+ - `class`: `unknown`
3144
+ - `content`: `TooltipContentProps` — Default settings that will be used by all tooltip components.
3145
+ - `delayDuration`: `number` — default `0` — The duration from when the pointer enters the trigger until the tooltip gets opened.
3146
+ - `disableClosingTrigger`: `boolean` — When `true`, clicking on trigger will not close the content.
3147
+ - `disabled`: `boolean` — When `true`, disable tooltip
3148
+ - `disableHoverableContent`: `boolean` — When `true`, trying to hover the content will result in the tooltip closing as the pointer leaves the trigger.
3149
+ - `ignoreNonKeyboardFocus`: `boolean` — Prevent the tooltip from opening if the focus did not come from the keyboard by matching against the `:focus-visible` selector. This is useful if you want to avoid opening it when switching browser tabs or closing a dialog.
3150
+ - `skipDelayDuration`: `number` — How much time a user has to enter another trigger without incurring a delay again.
3151
+
3152
+ **Slots**
3153
+
3154
+ - `default`
3155
+
3156
+ **Composes with:** `Tooltip`, `TooltipContent`, `TooltipRoot`, `TooltipTrigger`
3157
+
3158
+ **Example:** none — this component has no story.
3159
+
3160
+ ### TooltipRoot
3161
+
3162
+ **Props**
3163
+
3164
+ - `class`: `unknown`
3165
+ - `defaultOpen`: `boolean` — The open state of the tooltip when it is initially rendered. Use when you do not need to control its open state.
3166
+ - `delayDuration`: `number` — Override the duration given to the `Provider` to customise the open delay for a specific tooltip.
3167
+ - `disableClosingTrigger`: `boolean` — When `true`, clicking on trigger will not close the content.
3168
+ - `disabled`: `boolean` — When `true`, disable tooltip
3169
+ - `disableHoverableContent`: `boolean` — Prevents Tooltip.Content from remaining open when hovering. Disabling this has accessibility consequences. Inherits from Tooltip.Provider.
3170
+ - `ignoreNonKeyboardFocus`: `boolean` — Prevent the tooltip from opening if the focus did not come from the keyboard by matching against the `:focus-visible` selector. This is useful if you want to avoid opening it when switching browser tabs or closing a dialog.
3171
+ - `open`: `boolean` — The controlled open state of the tooltip.
3172
+
3173
+ **Events**
3174
+
3175
+ - `update:open`: `[value: boolean]`
3176
+
3177
+ **Slots**
3178
+
3179
+ - `default`
3180
+
3181
+ **Composes with:** `Tooltip`, `TooltipContent`, `TooltipProvider`, `TooltipTrigger`
3182
+
3183
+ **Example:** none — this component has no story.
3184
+
3185
+ ### TooltipTrigger
3186
+
3187
+ **Props**
3188
+
3189
+ - `as`: `AsTag | Component` — Element or component to render as.
3190
+ - `asChild`: `boolean` — Render the child element instead of this component's own, merging props onto it.
3191
+ - `class`: `unknown`
3192
+ - `reference`: `ReferenceElement` — The reference (or anchor) element that is being referred to for positioning. If not provided will use the current component as anchor.
3193
+
3194
+ **Slots**
3195
+
3196
+ - `default`
3197
+
3198
+ **Composes with:** `Tooltip`, `TooltipContent`, `TooltipProvider`, `TooltipRoot`
3199
+
3200
+ **Example:** none — this component has no story.