@vertz/ui-primitives 0.2.15 → 0.2.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/dist/shared/chunk-0mcr52hc.js +78 -0
  2. package/dist/shared/chunk-2h5qpc00.js +98 -0
  3. package/dist/shared/chunk-31yptvbf.js +151 -0
  4. package/dist/shared/chunk-34yfm2b0.js +182 -0
  5. package/dist/shared/chunk-3pantb0p.js +108 -0
  6. package/dist/shared/chunk-3s6s6f06.js +61 -0
  7. package/dist/shared/chunk-48v8j0vh.js +267 -0
  8. package/dist/shared/chunk-6dmt4513.js +78 -0
  9. package/dist/shared/chunk-6pnjrst7.js +108 -0
  10. package/dist/shared/chunk-6sqwjfg8.js +169 -0
  11. package/dist/shared/chunk-8qfeqrrz.js +179 -0
  12. package/dist/shared/chunk-8y1jf6xr.js +17 -0
  13. package/dist/shared/chunk-9cqe2q6e.js +56 -0
  14. package/dist/shared/chunk-a6wp8c32.js +32 -0
  15. package/dist/shared/chunk-bcfzteh0.js +148 -0
  16. package/dist/shared/chunk-cr9sbwns.js +235 -0
  17. package/dist/shared/chunk-cvbf1js1.js +52 -0
  18. package/dist/shared/chunk-dkhst4wv.js +97 -0
  19. package/dist/shared/chunk-e2v1c9ex.js +62 -0
  20. package/dist/shared/chunk-e3aj5yw4.js +115 -0
  21. package/dist/shared/chunk-fv1y77tn.js +225 -0
  22. package/dist/shared/chunk-h42bk324.js +58 -0
  23. package/dist/shared/chunk-h9m9x5my.js +119 -0
  24. package/dist/shared/chunk-jctqs9m4.js +60 -0
  25. package/dist/shared/chunk-n92bvn5d.js +149 -0
  26. package/dist/shared/chunk-qpfqyrc5.js +19 -0
  27. package/dist/shared/chunk-qq0e0gym.js +73 -0
  28. package/dist/shared/chunk-t1vkvsz2.js +175 -0
  29. package/dist/shared/chunk-tk1k1bet.js +93 -0
  30. package/dist/shared/chunk-tvpgeswh.js +216 -0
  31. package/dist/shared/chunk-vcp10kne.js +175 -0
  32. package/dist/shared/chunk-ve006hmy.js +51 -0
  33. package/dist/shared/chunk-vq9tfzh8.js +30 -0
  34. package/dist/shared/chunk-vvjyx7fe.js +62 -0
  35. package/dist/shared/chunk-vx1ajy2z.js +115 -0
  36. package/dist/shared/chunk-w06tst6x.js +57 -0
  37. package/dist/shared/chunk-wnttq0gv.js +49 -0
  38. package/dist/shared/chunk-x6qzr3g6.js +100 -0
  39. package/dist/src/accordion/accordion.d.ts +23 -0
  40. package/dist/src/accordion/accordion.js +9 -0
  41. package/dist/src/alert-dialog/alert-dialog.d.ts +26 -0
  42. package/dist/src/alert-dialog/alert-dialog.js +9 -0
  43. package/dist/src/badge/badge.d.ts +10 -0
  44. package/dist/src/badge/badge.js +7 -0
  45. package/dist/src/button/button.d.ts +18 -0
  46. package/dist/src/button/button.js +8 -0
  47. package/dist/src/calendar/calendar.d.ts +40 -0
  48. package/dist/src/calendar/calendar.js +6 -0
  49. package/dist/src/carousel/carousel.d.ts +27 -0
  50. package/dist/src/carousel/carousel.js +8 -0
  51. package/dist/src/checkbox/checkbox.d.ts +20 -0
  52. package/dist/src/checkbox/checkbox.js +9 -0
  53. package/dist/src/collapsible/collapsible.d.ts +21 -0
  54. package/dist/src/collapsible/collapsible.js +8 -0
  55. package/dist/src/combobox/combobox.d.ts +23 -0
  56. package/dist/src/combobox/combobox.js +9 -0
  57. package/dist/src/command/command.d.ts +29 -0
  58. package/dist/src/command/command.js +9 -0
  59. package/dist/src/context-menu/context-menu.d.ts +39 -0
  60. package/dist/src/context-menu/context-menu.js +11 -0
  61. package/dist/src/date-picker/date-picker.d.ts +47 -0
  62. package/dist/src/date-picker/date-picker.js +14 -0
  63. package/dist/src/dialog/dialog.d.ts +24 -0
  64. package/dist/src/dialog/dialog.js +10 -0
  65. package/dist/src/dropdown-menu/dropdown-menu.d.ts +42 -0
  66. package/dist/src/dropdown-menu/dropdown-menu.js +12 -0
  67. package/dist/src/hover-card/hover-card.d.ts +33 -0
  68. package/dist/src/hover-card/hover-card.js +10 -0
  69. package/dist/src/index.js +136 -0
  70. package/dist/src/menu/menu.d.ts +39 -0
  71. package/dist/src/menu/menu.js +11 -0
  72. package/dist/src/menubar/menubar.d.ts +40 -0
  73. package/dist/src/menubar/menubar.js +12 -0
  74. package/dist/src/navigation-menu/navigation-menu.d.ts +25 -0
  75. package/dist/src/navigation-menu/navigation-menu.js +10 -0
  76. package/dist/src/popover/popover.d.ts +32 -0
  77. package/dist/src/popover/popover.js +12 -0
  78. package/dist/src/progress/progress.d.ts +20 -0
  79. package/dist/src/progress/progress.js +8 -0
  80. package/dist/src/radio/radio.d.ts +18 -0
  81. package/dist/src/radio/radio.js +10 -0
  82. package/dist/src/resizable-panel/resizable-panel.d.ts +24 -0
  83. package/dist/src/resizable-panel/resizable-panel.js +8 -0
  84. package/dist/src/scroll-area/scroll-area.d.ts +25 -0
  85. package/dist/src/scroll-area/scroll-area.js +6 -0
  86. package/dist/src/select/select.d.ts +41 -0
  87. package/dist/src/select/select.js +11 -0
  88. package/dist/src/sheet/sheet.d.ts +24 -0
  89. package/dist/src/sheet/sheet.js +10 -0
  90. package/dist/src/slider/slider.d.ts +24 -0
  91. package/dist/src/slider/slider.js +9 -0
  92. package/dist/src/switch/switch.d.ts +9 -0
  93. package/dist/src/switch/switch.js +8 -0
  94. package/dist/src/tabs/tabs.d.ts +23 -0
  95. package/dist/src/tabs/tabs.js +10 -0
  96. package/dist/src/toast/toast.d.ts +24 -0
  97. package/dist/src/toast/toast.js +8 -0
  98. package/dist/src/toggle/toggle.d.ts +9 -0
  99. package/dist/src/toggle/toggle.js +8 -0
  100. package/dist/src/toggle-group/toggle-group.d.ts +22 -0
  101. package/dist/src/toggle-group/toggle-group.js +9 -0
  102. package/dist/src/tooltip/tooltip.d.ts +32 -0
  103. package/dist/src/tooltip/tooltip.js +10 -0
  104. package/dist/src/utils.d.ts +176 -0
  105. package/dist/src/utils.js +72 -0
  106. package/package.json +12 -10
  107. package/dist/index.js +0 -3675
  108. /package/dist/{index.d.ts → src/index.d.ts} +0 -0
@@ -0,0 +1,57 @@
1
+ import {
2
+ Keys,
3
+ isKey
4
+ } from "./chunk-jctqs9m4.js";
5
+ import {
6
+ uniqueId
7
+ } from "./chunk-8y1jf6xr.js";
8
+
9
+ // src/switch/switch.tsx
10
+ import { signal } from "@vertz/ui";
11
+ import { __attr, __element, __on } from "@vertz/ui/internals";
12
+ function SwitchRoot(options = {}) {
13
+ const { defaultChecked = false, disabled = false, onCheckedChange } = options;
14
+ const checked = signal(defaultChecked, "checked");
15
+ function toggle() {
16
+ if (disabled)
17
+ return;
18
+ checked.value = !checked.value;
19
+ onCheckedChange?.(checked.value);
20
+ }
21
+ return (() => {
22
+ const __el0 = __element("button");
23
+ __el0.setAttribute("data-v-id", "SwitchRoot");
24
+ __el0.setAttribute("type", "button");
25
+ __el0.setAttribute("role", "switch");
26
+ {
27
+ const __v = uniqueId("switch");
28
+ if (__v != null && __v !== false)
29
+ __el0.setAttribute("id", __v === true ? "" : __v);
30
+ }
31
+ __attr(__el0, "aria-checked", () => checked.value ? "true" : "false");
32
+ __attr(__el0, "data-state", () => checked.value ? "checked" : "unchecked");
33
+ {
34
+ const __v = disabled;
35
+ if (__v != null && __v !== false)
36
+ __el0.setAttribute("disabled", __v === true ? "" : __v);
37
+ }
38
+ {
39
+ const __v = disabled ? "true" : undefined;
40
+ if (__v != null && __v !== false)
41
+ __el0.setAttribute("aria-disabled", __v === true ? "" : __v);
42
+ }
43
+ __on(__el0, "click", toggle);
44
+ __on(__el0, "keydown", (e) => {
45
+ if (isKey(e, Keys.Space)) {
46
+ e.preventDefault();
47
+ toggle();
48
+ }
49
+ });
50
+ return __el0;
51
+ })();
52
+ }
53
+ var Switch = {
54
+ Root: SwitchRoot
55
+ };
56
+
57
+ export { Switch };
@@ -0,0 +1,49 @@
1
+ import {
2
+ setDataState,
3
+ setValueRange
4
+ } from "./chunk-vvjyx7fe.js";
5
+ import {
6
+ uniqueId
7
+ } from "./chunk-8y1jf6xr.js";
8
+
9
+ // src/progress/progress.ts
10
+ import { signal } from "@vertz/ui";
11
+ var Progress = {
12
+ Root(options = {}) {
13
+ const { defaultValue = 0, min = 0, max = 100 } = options;
14
+ const state = { value: signal(defaultValue) };
15
+ const root = document.createElement("div");
16
+ root.setAttribute("role", "progressbar");
17
+ root.id = uniqueId("progress");
18
+ setValueRange(root, defaultValue, min, max);
19
+ const pct = (defaultValue - min) / (max - min) * 100;
20
+ if (pct >= 100) {
21
+ setDataState(root, "complete");
22
+ } else if (pct > 0) {
23
+ setDataState(root, "loading");
24
+ } else {
25
+ setDataState(root, "idle");
26
+ }
27
+ const indicator = document.createElement("div");
28
+ indicator.setAttribute("data-part", "indicator");
29
+ indicator.style.width = `${pct}%`;
30
+ root.appendChild(indicator);
31
+ function setValue(val) {
32
+ const clamped = Math.min(max, Math.max(min, val));
33
+ state.value.value = clamped;
34
+ setValueRange(root, clamped, min, max);
35
+ const p = (clamped - min) / (max - min) * 100;
36
+ indicator.style.width = `${p}%`;
37
+ if (p >= 100) {
38
+ setDataState(root, "complete");
39
+ } else if (p > 0) {
40
+ setDataState(root, "loading");
41
+ } else {
42
+ setDataState(root, "idle");
43
+ }
44
+ }
45
+ return { root, indicator, state, setValue };
46
+ }
47
+ };
48
+
49
+ export { Progress };
@@ -0,0 +1,100 @@
1
+ import {
2
+ Keys,
3
+ isKey
4
+ } from "./chunk-jctqs9m4.js";
5
+ import {
6
+ setDataState
7
+ } from "./chunk-vvjyx7fe.js";
8
+
9
+ // src/carousel/carousel.ts
10
+ import { signal } from "@vertz/ui";
11
+ var Carousel = {
12
+ Root(options = {}) {
13
+ const { orientation = "horizontal", loop = false, defaultIndex = 0, onSlideChange } = options;
14
+ const state = {
15
+ currentIndex: signal(defaultIndex),
16
+ slideCount: signal(0)
17
+ };
18
+ const slides = [];
19
+ const root = document.createElement("div");
20
+ root.setAttribute("role", "region");
21
+ root.setAttribute("aria-roledescription", "carousel");
22
+ root.setAttribute("data-orientation", orientation);
23
+ const viewport = document.createElement("div");
24
+ viewport.style.overflow = "hidden";
25
+ const prevButton = document.createElement("button");
26
+ prevButton.setAttribute("type", "button");
27
+ prevButton.setAttribute("aria-label", "Previous slide");
28
+ const nextButton = document.createElement("button");
29
+ nextButton.setAttribute("type", "button");
30
+ nextButton.setAttribute("aria-label", "Next slide");
31
+ function updateSlideVisibility() {
32
+ const current = state.currentIndex.peek();
33
+ for (let i = 0;i < slides.length; i++) {
34
+ const slide = slides[i];
35
+ if (!slide)
36
+ continue;
37
+ slide.setAttribute("aria-hidden", String(i !== current));
38
+ slide.setAttribute("aria-label", `Slide ${i + 1} of ${slides.length}`);
39
+ setDataState(slide, i === current ? "active" : "inactive");
40
+ }
41
+ if (!loop) {
42
+ prevButton.disabled = current <= 0;
43
+ nextButton.disabled = current >= slides.length - 1;
44
+ }
45
+ const translateProp = orientation === "horizontal" ? "translateX" : "translateY";
46
+ viewport.style.transform = `${translateProp}(-${current * 100}%)`;
47
+ }
48
+ function goTo(index) {
49
+ const total = slides.length;
50
+ if (total === 0)
51
+ return;
52
+ let next = index;
53
+ if (loop) {
54
+ next = (index % total + total) % total;
55
+ } else {
56
+ next = Math.max(0, Math.min(total - 1, index));
57
+ }
58
+ if (next === state.currentIndex.peek())
59
+ return;
60
+ state.currentIndex.value = next;
61
+ updateSlideVisibility();
62
+ onSlideChange?.(next);
63
+ }
64
+ function goNext() {
65
+ goTo(state.currentIndex.peek() + 1);
66
+ }
67
+ function goPrev() {
68
+ goTo(state.currentIndex.peek() - 1);
69
+ }
70
+ prevButton.addEventListener("click", goPrev);
71
+ nextButton.addEventListener("click", goNext);
72
+ root.addEventListener("keydown", (event) => {
73
+ const prevKey = orientation === "horizontal" ? Keys.ArrowLeft : Keys.ArrowUp;
74
+ const nextKey = orientation === "horizontal" ? Keys.ArrowRight : Keys.ArrowDown;
75
+ if (isKey(event, prevKey)) {
76
+ event.preventDefault();
77
+ goPrev();
78
+ }
79
+ if (isKey(event, nextKey)) {
80
+ event.preventDefault();
81
+ goNext();
82
+ }
83
+ });
84
+ function Slide() {
85
+ const slide = document.createElement("div");
86
+ slide.setAttribute("role", "group");
87
+ slide.setAttribute("aria-roledescription", "slide");
88
+ slides.push(slide);
89
+ state.slideCount.value = slides.length;
90
+ viewport.appendChild(slide);
91
+ updateSlideVisibility();
92
+ return slide;
93
+ }
94
+ root.appendChild(viewport);
95
+ updateSlideVisibility();
96
+ return { root, viewport, prevButton, nextButton, state, Slide, goTo, goNext, goPrev };
97
+ }
98
+ };
99
+
100
+ export { Carousel };
@@ -0,0 +1,23 @@
1
+ import { Signal } from "@vertz/ui";
2
+ interface AccordionOptions {
3
+ multiple?: boolean;
4
+ defaultValue?: string[];
5
+ onValueChange?: (value: string[]) => void;
6
+ }
7
+ interface AccordionState {
8
+ value: Signal<string[]>;
9
+ }
10
+ interface AccordionElements {
11
+ root: HTMLDivElement;
12
+ }
13
+ declare const Accordion: {
14
+ Root(options?: AccordionOptions): AccordionElements & {
15
+ state: AccordionState;
16
+ Item: (value: string) => {
17
+ item: HTMLDivElement;
18
+ trigger: HTMLButtonElement;
19
+ content: HTMLDivElement;
20
+ };
21
+ };
22
+ };
23
+ export { AccordionState, AccordionOptions, AccordionElements, Accordion };
@@ -0,0 +1,9 @@
1
+ import {
2
+ Accordion
3
+ } from "../../shared/chunk-e3aj5yw4.js";
4
+ import"../../shared/chunk-jctqs9m4.js";
5
+ import"../../shared/chunk-vvjyx7fe.js";
6
+ import"../../shared/chunk-8y1jf6xr.js";
7
+ export {
8
+ Accordion
9
+ };
@@ -0,0 +1,26 @@
1
+ import { Signal } from "@vertz/ui";
2
+ interface AlertDialogOptions {
3
+ defaultOpen?: boolean;
4
+ onOpenChange?: (open: boolean) => void;
5
+ onAction?: () => void;
6
+ }
7
+ interface AlertDialogState {
8
+ open: Signal<boolean>;
9
+ }
10
+ interface AlertDialogElements {
11
+ trigger: HTMLButtonElement;
12
+ overlay: HTMLDivElement;
13
+ content: HTMLDivElement;
14
+ title: HTMLHeadingElement;
15
+ description: HTMLParagraphElement;
16
+ cancel: HTMLButtonElement;
17
+ action: HTMLButtonElement;
18
+ show: () => void;
19
+ hide: () => void;
20
+ }
21
+ declare const AlertDialog: {
22
+ Root: (options?: AlertDialogOptions) => AlertDialogElements & {
23
+ state: AlertDialogState;
24
+ };
25
+ };
26
+ export { AlertDialogState, AlertDialogOptions, AlertDialogElements, AlertDialog };
@@ -0,0 +1,9 @@
1
+ import {
2
+ AlertDialog
3
+ } from "../../shared/chunk-34yfm2b0.js";
4
+ import"../../shared/chunk-e2v1c9ex.js";
5
+ import"../../shared/chunk-vvjyx7fe.js";
6
+ import"../../shared/chunk-8y1jf6xr.js";
7
+ export {
8
+ AlertDialog
9
+ };
@@ -0,0 +1,10 @@
1
+ interface BadgeOptions {
2
+ variant?: "default" | "secondary" | "outline" | "destructive";
3
+ }
4
+ interface BadgeElements {
5
+ badge: HTMLSpanElement;
6
+ }
7
+ declare const Badge: {
8
+ Root: (options?: BadgeOptions) => BadgeElements;
9
+ };
10
+ export { BadgeOptions, BadgeElements, Badge };
@@ -0,0 +1,7 @@
1
+ import {
2
+ Badge
3
+ } from "../../shared/chunk-vq9tfzh8.js";
4
+ import"../../shared/chunk-8y1jf6xr.js";
5
+ export {
6
+ Badge
7
+ };
@@ -0,0 +1,18 @@
1
+ import { Signal } from "@vertz/ui";
2
+ interface ButtonOptions {
3
+ disabled?: boolean;
4
+ onPress?: () => void;
5
+ }
6
+ interface ButtonElements {
7
+ root: HTMLButtonElement;
8
+ }
9
+ interface ButtonState {
10
+ disabled: Signal<boolean>;
11
+ pressed: Signal<boolean>;
12
+ }
13
+ declare const Button: {
14
+ Root(options?: ButtonOptions): ButtonElements & {
15
+ state: ButtonState;
16
+ };
17
+ };
18
+ export { ButtonState, ButtonOptions, ButtonElements, Button };
@@ -0,0 +1,8 @@
1
+ import {
2
+ Button
3
+ } from "../../shared/chunk-ve006hmy.js";
4
+ import"../../shared/chunk-jctqs9m4.js";
5
+ import"../../shared/chunk-vvjyx7fe.js";
6
+ export {
7
+ Button
8
+ };
@@ -0,0 +1,40 @@
1
+ import { Signal } from "@vertz/ui";
2
+ interface CalendarOptions {
3
+ mode?: "single" | "range" | "multiple";
4
+ defaultValue?: Date | Date[] | {
5
+ from: Date;
6
+ to: Date;
7
+ };
8
+ defaultMonth?: Date;
9
+ minDate?: Date;
10
+ maxDate?: Date;
11
+ disabled?: (date: Date) => boolean;
12
+ weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6;
13
+ onValueChange?: (value: Date | Date[] | {
14
+ from: Date;
15
+ to: Date;
16
+ } | null) => void;
17
+ onMonthChange?: (month: Date) => void;
18
+ }
19
+ interface CalendarState {
20
+ value: Signal<Date | Date[] | {
21
+ from: Date;
22
+ to: Date;
23
+ } | null>;
24
+ focusedDate: Signal<Date>;
25
+ displayMonth: Signal<Date>;
26
+ }
27
+ interface CalendarElements {
28
+ root: HTMLDivElement;
29
+ header: HTMLDivElement;
30
+ title: HTMLDivElement;
31
+ prevButton: HTMLButtonElement;
32
+ nextButton: HTMLButtonElement;
33
+ grid: HTMLTableElement;
34
+ }
35
+ declare const Calendar: {
36
+ Root(options?: CalendarOptions): CalendarElements & {
37
+ state: CalendarState;
38
+ };
39
+ };
40
+ export { CalendarState, CalendarOptions, CalendarElements, Calendar };
@@ -0,0 +1,6 @@
1
+ import {
2
+ Calendar
3
+ } from "../../shared/chunk-48v8j0vh.js";
4
+ export {
5
+ Calendar
6
+ };
@@ -0,0 +1,27 @@
1
+ import { Signal } from "@vertz/ui";
2
+ interface CarouselOptions {
3
+ orientation?: "horizontal" | "vertical";
4
+ loop?: boolean;
5
+ defaultIndex?: number;
6
+ onSlideChange?: (index: number) => void;
7
+ }
8
+ interface CarouselState {
9
+ currentIndex: Signal<number>;
10
+ slideCount: Signal<number>;
11
+ }
12
+ interface CarouselElements {
13
+ root: HTMLDivElement;
14
+ viewport: HTMLDivElement;
15
+ prevButton: HTMLButtonElement;
16
+ nextButton: HTMLButtonElement;
17
+ }
18
+ declare const Carousel: {
19
+ Root(options?: CarouselOptions): CarouselElements & {
20
+ state: CarouselState;
21
+ Slide: () => HTMLDivElement;
22
+ goTo: (index: number) => void;
23
+ goNext: () => void;
24
+ goPrev: () => void;
25
+ };
26
+ };
27
+ export { CarouselState, CarouselOptions, CarouselElements, Carousel };
@@ -0,0 +1,8 @@
1
+ import {
2
+ Carousel
3
+ } from "../../shared/chunk-x6qzr3g6.js";
4
+ import"../../shared/chunk-jctqs9m4.js";
5
+ import"../../shared/chunk-vvjyx7fe.js";
6
+ export {
7
+ Carousel
8
+ };
@@ -0,0 +1,20 @@
1
+ import { Signal } from "@vertz/ui";
2
+ type CheckedState = boolean | "mixed";
3
+ interface CheckboxOptions {
4
+ defaultChecked?: CheckedState;
5
+ disabled?: boolean;
6
+ onCheckedChange?: (checked: CheckedState) => void;
7
+ }
8
+ interface CheckboxState {
9
+ checked: Signal<CheckedState>;
10
+ disabled: Signal<boolean>;
11
+ }
12
+ interface CheckboxElements {
13
+ root: HTMLButtonElement;
14
+ }
15
+ declare const Checkbox: {
16
+ Root(options?: CheckboxOptions): CheckboxElements & {
17
+ state: CheckboxState;
18
+ };
19
+ };
20
+ export { CheckedState, CheckboxState, CheckboxOptions, CheckboxElements, Checkbox };
@@ -0,0 +1,9 @@
1
+ import {
2
+ Checkbox
3
+ } from "../../shared/chunk-h42bk324.js";
4
+ import"../../shared/chunk-jctqs9m4.js";
5
+ import"../../shared/chunk-vvjyx7fe.js";
6
+ import"../../shared/chunk-8y1jf6xr.js";
7
+ export {
8
+ Checkbox
9
+ };
@@ -0,0 +1,21 @@
1
+ import { Signal } from "@vertz/ui";
2
+ interface CollapsibleOptions {
3
+ defaultOpen?: boolean;
4
+ disabled?: boolean;
5
+ onOpenChange?: (open: boolean) => void;
6
+ }
7
+ interface CollapsibleState {
8
+ open: Signal<boolean>;
9
+ disabled: Signal<boolean>;
10
+ }
11
+ interface CollapsibleElements {
12
+ root: HTMLDivElement;
13
+ trigger: HTMLButtonElement;
14
+ content: HTMLDivElement;
15
+ }
16
+ declare const Collapsible: {
17
+ Root(options?: CollapsibleOptions): CollapsibleElements & {
18
+ state: CollapsibleState;
19
+ };
20
+ };
21
+ export { CollapsibleState, CollapsibleOptions, CollapsibleElements, Collapsible };
@@ -0,0 +1,8 @@
1
+ import {
2
+ Collapsible
3
+ } from "../../shared/chunk-3s6s6f06.js";
4
+ import"../../shared/chunk-vvjyx7fe.js";
5
+ import"../../shared/chunk-8y1jf6xr.js";
6
+ export {
7
+ Collapsible
8
+ };
@@ -0,0 +1,23 @@
1
+ import { Signal } from "@vertz/ui";
2
+ interface ComboboxOptions {
3
+ defaultValue?: string;
4
+ onValueChange?: (value: string) => void;
5
+ onInputChange?: (input: string) => void;
6
+ }
7
+ interface ComboboxState {
8
+ open: Signal<boolean>;
9
+ value: Signal<string>;
10
+ inputValue: Signal<string>;
11
+ activeIndex: Signal<number>;
12
+ }
13
+ interface ComboboxElements {
14
+ input: HTMLInputElement;
15
+ listbox: HTMLDivElement;
16
+ }
17
+ declare const Combobox: {
18
+ Root(options?: ComboboxOptions): ComboboxElements & {
19
+ state: ComboboxState;
20
+ Option: (value: string, label?: string) => HTMLDivElement;
21
+ };
22
+ };
23
+ export { ComboboxState, ComboboxOptions, ComboboxElements, Combobox };
@@ -0,0 +1,9 @@
1
+ import {
2
+ Combobox
3
+ } from "../../shared/chunk-bcfzteh0.js";
4
+ import"../../shared/chunk-jctqs9m4.js";
5
+ import"../../shared/chunk-vvjyx7fe.js";
6
+ import"../../shared/chunk-8y1jf6xr.js";
7
+ export {
8
+ Combobox
9
+ };
@@ -0,0 +1,29 @@
1
+ import { Signal } from "@vertz/ui";
2
+ interface CommandOptions {
3
+ filter?: (value: string, search: string) => boolean;
4
+ onSelect?: (value: string) => void;
5
+ onInputChange?: (value: string) => void;
6
+ placeholder?: string;
7
+ }
8
+ interface CommandState {
9
+ inputValue: Signal<string>;
10
+ activeIndex: Signal<number>;
11
+ }
12
+ interface CommandElements {
13
+ root: HTMLDivElement;
14
+ input: HTMLInputElement;
15
+ list: HTMLDivElement;
16
+ empty: HTMLDivElement;
17
+ }
18
+ declare const Command: {
19
+ Root(options?: CommandOptions): CommandElements & {
20
+ state: CommandState;
21
+ Item: (value: string, label?: string, keywords?: string[]) => HTMLDivElement;
22
+ Group: (label: string) => {
23
+ el: HTMLDivElement;
24
+ Item: (value: string, label?: string, keywords?: string[]) => HTMLDivElement;
25
+ };
26
+ Separator: () => HTMLHRElement;
27
+ };
28
+ };
29
+ export { CommandState, CommandOptions, CommandElements, Command };
@@ -0,0 +1,9 @@
1
+ import {
2
+ Command
3
+ } from "../../shared/chunk-vcp10kne.js";
4
+ import"../../shared/chunk-jctqs9m4.js";
5
+ import"../../shared/chunk-vvjyx7fe.js";
6
+ import"../../shared/chunk-8y1jf6xr.js";
7
+ export {
8
+ Command
9
+ };
@@ -0,0 +1,39 @@
1
+ import { Signal } from "@vertz/ui";
2
+ import { Middleware, Placement, Strategy } from "@floating-ui/dom";
3
+ interface FloatingOptions {
4
+ placement?: Placement;
5
+ strategy?: Strategy;
6
+ offset?: number;
7
+ flip?: boolean;
8
+ shift?: boolean;
9
+ middleware?: Middleware[];
10
+ matchReferenceWidth?: boolean;
11
+ portal?: boolean;
12
+ /** Override the reference element used for positioning (e.g., a custom trigger wrapping the primitive trigger). */
13
+ referenceElement?: HTMLElement;
14
+ }
15
+ interface ContextMenuOptions {
16
+ onSelect?: (value: string) => void;
17
+ positioning?: FloatingOptions;
18
+ }
19
+ interface ContextMenuState {
20
+ open: Signal<boolean>;
21
+ activeIndex: Signal<number>;
22
+ }
23
+ interface ContextMenuElements {
24
+ trigger: HTMLDivElement;
25
+ content: HTMLDivElement;
26
+ }
27
+ declare const ContextMenu: {
28
+ Root(options?: ContextMenuOptions): ContextMenuElements & {
29
+ state: ContextMenuState;
30
+ Item: (value: string, label?: string) => HTMLDivElement;
31
+ Group: (label: string) => {
32
+ el: HTMLDivElement;
33
+ Item: (value: string, label?: string) => HTMLDivElement;
34
+ };
35
+ Separator: () => HTMLHRElement;
36
+ Label: (text: string) => HTMLDivElement;
37
+ };
38
+ };
39
+ export { ContextMenuState, ContextMenuOptions, ContextMenuElements, ContextMenu };
@@ -0,0 +1,11 @@
1
+ import {
2
+ ContextMenu
3
+ } from "../../shared/chunk-8qfeqrrz.js";
4
+ import"../../shared/chunk-a6wp8c32.js";
5
+ import"../../shared/chunk-0mcr52hc.js";
6
+ import"../../shared/chunk-jctqs9m4.js";
7
+ import"../../shared/chunk-vvjyx7fe.js";
8
+ import"../../shared/chunk-8y1jf6xr.js";
9
+ export {
10
+ ContextMenu
11
+ };
@@ -0,0 +1,47 @@
1
+ import { Signal } from "@vertz/ui";
2
+ interface DatePickerOptions {
3
+ mode?: "single" | "range";
4
+ defaultValue?: Date | {
5
+ from: Date;
6
+ to: Date;
7
+ };
8
+ defaultMonth?: Date;
9
+ minDate?: Date;
10
+ maxDate?: Date;
11
+ disabled?: (date: Date) => boolean;
12
+ formatDate?: (date: Date) => string;
13
+ placeholder?: string;
14
+ onValueChange?: (value: Date | {
15
+ from: Date;
16
+ to: Date;
17
+ } | null) => void;
18
+ onOpenChange?: (open: boolean) => void;
19
+ }
20
+ interface DatePickerState {
21
+ open: Signal<boolean>;
22
+ value: Signal<Date | {
23
+ from: Date;
24
+ to: Date;
25
+ } | null>;
26
+ displayMonth: Signal<Date>;
27
+ }
28
+ interface DatePickerElements {
29
+ trigger: HTMLButtonElement;
30
+ content: HTMLDivElement;
31
+ calendar: {
32
+ root: HTMLDivElement;
33
+ header: HTMLDivElement;
34
+ title: HTMLDivElement;
35
+ prevButton: HTMLButtonElement;
36
+ nextButton: HTMLButtonElement;
37
+ grid: HTMLTableElement;
38
+ };
39
+ }
40
+ declare const DatePicker: {
41
+ Root(options?: DatePickerOptions): DatePickerElements & {
42
+ state: DatePickerState;
43
+ show: () => void;
44
+ hide: () => void;
45
+ };
46
+ };
47
+ export { DatePickerState, DatePickerOptions, DatePickerElements, DatePicker };
@@ -0,0 +1,14 @@
1
+ import {
2
+ DatePicker
3
+ } from "../../shared/chunk-6pnjrst7.js";
4
+ import"../../shared/chunk-48v8j0vh.js";
5
+ import"../../shared/chunk-dkhst4wv.js";
6
+ import"../../shared/chunk-a6wp8c32.js";
7
+ import"../../shared/chunk-e2v1c9ex.js";
8
+ import"../../shared/chunk-0mcr52hc.js";
9
+ import"../../shared/chunk-jctqs9m4.js";
10
+ import"../../shared/chunk-vvjyx7fe.js";
11
+ import"../../shared/chunk-8y1jf6xr.js";
12
+ export {
13
+ DatePicker
14
+ };